/* Millner Heritage Winery — site-specific styles. Loaded after base.css. */
body{color:var(--ink-strong);font-size:1.0625rem}
h1,h2,h3{color:var(--ink-strong);font-weight:700;letter-spacing:-.01em}
a{color:var(--brand)}
.brand img{height:54px;width:auto}
.site-header .container{min-height:76px}
.nav a{font-size:var(--fs-md);color:var(--ink-strong)}

/* Hero: the vineyard photo, then the headline and this week's hours */
.mh-hero{padding:0 0 var(--section)}
.mh-hero__photo{display:block;width:100%;height:clamp(220px,min(44vw,48vh),560px);object-fit:cover;object-position:50% 40%}
.mh-hero__body{display:grid;gap:var(--s-6);padding-top:var(--s-6)}
.mh-hero h1{font-size:clamp(2.3rem,1.6rem + 3.4vw,4.4rem);max-width:15ch;margin-bottom:var(--s-4)}
.mh-hero .lede{font-size:var(--fs-lg);max-width:54ch;color:#3c3631;margin:0}
.mh-open{background:var(--mist);border-radius:var(--radius);padding:var(--s-5) var(--s-5) var(--s-6)}
.mh-open h2{font-size:var(--fs-lg);margin-bottom:var(--s-3)}
.mh-hours{display:grid;grid-template-columns:auto 1fr;gap:.2rem 1.25rem;margin:0 0 var(--s-4)}
.mh-hours dt{font-weight:700}
.mh-hours dd{margin:0}
.mh-open p{margin:0 0 var(--s-4);font-size:var(--fs-sm)}
.mh-actions{display:flex;flex-wrap:wrap;gap:var(--s-3)}
.mh-actions .btn{min-height:48px}
@media (min-width:900px){.mh-hero__body{grid-template-columns:1.5fr 1fr;align-items:start}}

/* Wine glossary: the centrepiece */
.mh-wines{border-top:1px solid var(--line)}
.mh-wines .section-head{max-width:820px}
.mh-hdr-cta{display:none}
@media (max-width:860px){
  .mh-hdr-cta{display:inline-flex;margin-left:auto;padding:.6em 1em;min-height:44px;font-size:var(--fs-sm)}
  .site-header .container{gap:var(--s-2)}
  .brand img{height:46px}
  .mh-hero__photo{height:170px;object-position:50% 70%}
}
.mh-wines .section-head h2{font-size:clamp(2.1rem,1.5rem + 2.6vw,3.6rem)}
.mh-group{display:grid;gap:var(--s-4) var(--s-7);padding-block:var(--s-6);border-top:2px solid var(--ink-strong)}
.mh-group > h3{font-size:var(--fs-xl);margin:0}
.mh-group > p{grid-column:1;margin:0;color:#5a524b;font-size:var(--fs-sm);max-width:26ch}
.mh-list{list-style:none;margin:0;padding:0;display:grid;gap:0}
.mh-wine{display:grid;grid-template-columns:1fr auto;gap:.15rem 1.5rem;padding:var(--s-4) 0;border-bottom:1px solid var(--line)}
.mh-wine:last-child{border-bottom:0}
.mh-wine h4{font-family:var(--font-display);font-size:clamp(1.6rem,1.3rem + 1.2vw,2.3rem);font-weight:700;line-height:1.05;margin:0}
.mh-wine .mh-mean{grid-column:1;margin:.15rem 0 0;color:var(--accent);font-weight:700;font-size:var(--fs-md)}
.mh-wine .mh-note{grid-column:1;margin:.1rem 0 0;color:#4a433d;max-width:60ch}
.mh-wine .mh-price{grid-column:2;grid-row:1;align-self:baseline;font-weight:700;font-variant-numeric:tabular-nums;font-size:var(--fs-lg)}
.mh-award{display:inline-block;margin-top:.35rem;font-size:var(--fs-sm);font-weight:700;color:var(--ink-strong);border:1px solid var(--ink-strong);border-radius:999px;padding:.1em .7em}
.mh-wines__foot{margin-top:var(--s-6);max-width:62ch}
@media (min-width:900px){
  .mh-group{grid-template-columns:240px 1fr}
  .mh-group > h3{position:sticky;top:96px;align-self:start}
  .mh-group > .mh-list{grid-column:2;grid-row:1 / span 2}
}

/* Tastings: photo beside a price list */
.mh-taste{display:grid;gap:var(--s-7);align-items:start}
.mh-taste figure{margin:0}
.mh-taste img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius)}
.mh-prices{list-style:none;margin:0 0 var(--s-5);padding:0}
.mh-prices li{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-bottom:1px dotted #b9b2aa}
.mh-prices li span:last-child{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.mh-prices small{display:block;color:#5a524b;font-size:var(--fs-sm)}
.mh-taste h3{font-size:var(--fs-lg);margin:var(--s-6) 0 var(--s-2)}
@media (min-width:900px){.mh-taste{grid-template-columns:5fr 6fr}}

/* Tours */
.mh-tours{background:var(--mist)}
.mh-tours__grid{display:grid;gap:var(--s-6);align-items:center}
.mh-tours img{width:100%;height:auto;border-radius:var(--radius)}
.mh-tourprices{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--s-4);margin:var(--s-5) 0;padding:0;list-style:none}
.mh-tourprices li{background:#fff;border-radius:var(--radius);padding:var(--s-4)}
.mh-tourprices strong{display:block;font-family:var(--font-display);font-size:var(--fs-xl)}
@media (min-width:900px){.mh-tours__grid{grid-template-columns:7fr 5fr}}

/* Family */
.mh-family__text{display:grid;gap:var(--s-6)}
@media (min-width:900px){.mh-family__text{grid-template-columns:7fr 5fr;gap:var(--s-8);align-items:start}.mh-family .mh-people{grid-template-columns:1fr}}
.mh-family figure{margin:0 0 var(--s-6)}
.mh-family figure img{width:100%;max-width:940px;height:auto;filter:sepia(.15);border-radius:var(--radius)}
.mh-family figcaption{font-size:var(--fs-sm);color:#5a524b;margin-top:var(--s-2)}
.mh-people{list-style:none;padding:0;margin:var(--s-5) 0 0;display:grid;gap:var(--s-3)}
.mh-people strong{font-family:var(--font-display);font-size:var(--fs-lg)}
@media (min-width:900px){.mh-people{grid-template-columns:1fr 1fr}}

/* Weddings */
.mh-wed__photos{display:grid;gap:var(--s-3);margin-bottom:var(--s-6)}
.mh-wed__photos img{width:100%;height:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius)}
@media (min-width:700px){.mh-wed__photos{grid-template-columns:1fr 1fr}}
.mh-facts{display:grid;gap:var(--s-4) var(--s-6);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 0 var(--s-6)}
.mh-facts div{border-top:2px solid var(--ink-strong);padding-top:var(--s-3)}
.mh-facts dt{font-weight:700}
.mh-facts dd{margin:0;color:#4a433d}

/* Coming up */
.mh-events{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-5)}
.mh-event{display:grid;grid-template-columns:auto 1fr;gap:var(--s-5);align-items:start;padding-bottom:var(--s-5);border-bottom:1px solid var(--line)}
.mh-date{width:84px;text-align:center;border:2px solid var(--brand);border-radius:var(--radius);padding:.4rem 0;color:var(--brand);line-height:1.1}
.mh-date span{display:block;font-size:var(--fs-sm);font-weight:700}
.mh-date strong{display:block;font-family:var(--font-display);font-size:2rem}
.mh-event h3{font-size:var(--fs-xl);margin-bottom:var(--s-2)}
.mh-event p{margin:0 0 var(--s-2);max-width:62ch}

/* Visit */
.mh-visit{background:var(--mist)}
.mh-visit__grid{display:grid;gap:var(--s-6)}
.mh-visit .map{border-radius:var(--radius);overflow:hidden;min-height:340px;aspect-ratio:auto;align-self:stretch}
.mh-visit iframe{width:100%;height:100%;min-height:340px;border:0;display:block}
.mh-visit h3{font-size:var(--fs-lg);margin:var(--s-5) 0 var(--s-2)}
.mh-visit address{font-style:normal}
@media (min-width:900px){.mh-visit__grid{grid-template-columns:1fr 1fr}}

.site-footer .brand{font-family:var(--font-display);font-size:var(--fs-lg)}
.mh-family .pullquote{max-width:none}
.mh-tours .mh-prices{max-width:520px}
