/* ==========================================================================
   Menu subpage — shared styles for any category (coffee, brunch, drinks…)
   Pairs with ../styles.css
   ========================================================================== */

.subpage { padding-top: 4rem; }

/* ===== Category hero (compact, calm) ===== */
.cat-hero {
  --hero-img: url("../assets/drinks/IMG_0282.JPEG");
  position: relative;
  isolation: isolate;
  color: var(--bg);
  padding: 9rem var(--gutter) 0;
  margin-top: -4rem;
  background-color: var(--sand);
  min-height: 64vh;
}
.cat-hero::before {
  content: "";
  position: absolute;
  inset: 15% 0;
  background-image:
    linear-gradient(180deg, rgba(20,17,12,.35) 0%, rgba(20,17,12,.65) 100%),
    var(--hero-img);
  background-size: cover, contain;
  background-position: center, center;
  background-repeat: no-repeat, no-repeat;
  background-color: var(--sand);
  z-index: -1;
}
.cat-hero--cocktails { --hero-img: url("../assets/drinks/IMG_0704.JPEG"); }
.cat-hero--brunch    { --hero-img: url("../assets/food/branch-avotoast-softboiled.jpeg"); }
.cat-hero--beverages { --hero-img: url("../assets/drinks/IMG_3824.JPEG"); }
.cat-hero--drinks    { --hero-img: url("../assets/drinks/IMG_3826.JPEG"); }
.cat-hero__inner {
  max-width: var(--max);
  width: 100%;
  margin: 0 auto;
  padding: 0 var(--gutter);
  position: absolute;
  left: 0; right: 0;
  bottom: 17%;
}
.cat-hero__crumb {
  font-size: .72rem;
  letter-spacing: .22em;
  text-transform: lowercase;
  opacity: .8;
  margin: 0 0 1.5rem;
}
.cat-hero__crumb a { text-decoration: none; opacity: .85; }
.cat-hero__crumb a:hover { opacity: 1; }
.cat-hero__title {
  font-family: "Cormorant Garamond", serif;
  font-weight: 300;
  font-size: clamp(3rem, 11vw, 6.5rem);
  letter-spacing: .04em;
  line-height: 1;
  margin: 0;
}
.cat-hero__tag {
  font-family: "Cormorant Garamond", serif;
  font-style: italic;
  font-size: clamp(1rem, 2.2vw, 1.3rem);
  margin: .75rem 0 0;
  opacity: .9;
  max-width: 30ch;
}

/* ===== Category groups ===== */
.cat {
  max-width: 880px;
  margin: 0 auto;
  padding: 5rem var(--gutter) 2rem;
}
.cat-group { margin-bottom: 4rem; }
.cat-group__head {
  display: flex; align-items: baseline; gap: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--line);
  margin-bottom: .5rem;
}
.cat-group__head .eyebrow { margin: 0; }
.cat-group__title {
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
  font-size: clamp(1.6rem, 4vw, 2.4rem);
  margin: 0;
  letter-spacing: .005em;
}

/* ===== Item list (dotted leaders) ===== */
.cat-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.cat-list li {
  display: flex; align-items: baseline; gap: .75rem;
  padding: .9rem 0;
  border-bottom: 1px dashed var(--line);
}
.cat-list li:last-child { border-bottom: 0; }
.cat-list__name {
  flex: 1;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.25rem;
  line-height: 1.3;
}
.cat-list__note {
  display: block;
  font-family: "Inter", sans-serif;
  font-size: .78rem;
  color: var(--ink-soft);
  margin-top: .15rem;
  letter-spacing: .02em;
}
.cat-list__ingredients {
  display: block;
  font-family: "Inter", sans-serif;
  font-weight: 300;
  font-size: .82rem;
  color: var(--ink-soft);
  margin-top: .25rem;
  line-height: 1.5;
  letter-spacing: .01em;
  max-width: 56ch;
}
.cat-list--detailed li { padding: 1.1rem 0; }

/* Sub-heading inside a group (e.g. White / Rosé / Red wines) */
.cat-sub {
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
  font-style: italic;
  font-size: 1.05rem;
  color: var(--ink-soft);
  margin: 1.75rem 0 .25rem;
  letter-spacing: .02em;
}
.cat-sub:first-of-type { margin-top: 1rem; }

/* Tier-pricing card (used by Spirits) */
.tier-card {
  background: var(--bg-2);
  border-radius: 6px;
  padding: 1.5rem 1.25rem;
  margin: 1rem 0 1.5rem;
}
.tier-card__caption {
  font-size: .72rem;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin: 0 0 1rem;
}
.tier-card__rows {
  list-style: none; margin: 0; padding: 0;
}
.tier-card__rows li {
  display: flex; justify-content: space-between; align-items: baseline;
  padding: .6rem 0;
  border-bottom: 1px dashed var(--line);
  font-family: "Cormorant Garamond", serif;
  font-size: 1.2rem;
}
.tier-card__rows li:last-child { border-bottom: 0; }
.tier-card__price {
  font-family: "Inter", sans-serif;
  font-size: .9rem;
  font-variant-numeric: tabular-nums;
  color: var(--ink);
  letter-spacing: .02em;
}
.tier-card__list {
  margin: 1rem 0 0;
  font-family: "Cormorant Garamond", serif;
  font-style: italic;
  font-size: 1.05rem;
  color: var(--ink-soft);
  letter-spacing: .01em;
}
.cat-list__price {
  font-family: "Inter", sans-serif;
  font-size: .95rem;
  font-variant-numeric: tabular-nums;
  color: var(--ink);
  white-space: nowrap;
}

.cat-foot {
  text-align: center;
  font-size: .85rem;
  font-style: italic;
  font-family: "Cormorant Garamond", serif;
  margin: 3rem 0 1rem;
}

/* ===== Pager / back ===== */
.cat-pager {
  display: flex; justify-content: center;
  padding: 3rem 0 1rem;
  border-top: 1px solid var(--line);
  margin-top: 2rem;
}
.cat-pager__back {
  font-size: .78rem;
  letter-spacing: .22em;
  text-transform: lowercase;
  text-decoration: none;
  color: var(--ink);
  border-bottom: 1px solid var(--ink);
  padding-bottom: 2px;
}

@media (min-width: 720px) {
  .cat-hero { min-height: 72vh; padding-top: 10rem; }
  .cat { padding-top: 6rem; }
}
