@font-face{font-family:'New Yorker';src:url('assets/fonts/New-YorkerC.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Montserrat Local';src:url('assets/fonts/Montserrat-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--cream:#E2D8CE;--navy:#022E4B;--wine:#56071D;--ink:#000;--muted:#4a4a4a;--display:'New Yorker',Georgia,serif;--sans:'Montserrat Local','Montserrat',Arial,sans-serif;--pill-h:61px;--nav-top:32px;--frame:1200px;--r-band:27px;--r-card:19px;--r-card-sm:16px;--r-nav:14px;--r-btn:9px;--r-input:4px;--r-media:19px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:var(--wine)}
a:hover{color:var(--navy)}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;text-transform:uppercase;line-height:1.06;letter-spacing:.02em;color:var(--wine)}
h1{font-size:clamp(46px,7.6vw,108px);letter-spacing:.05em}
h2{font-size:clamp(30px,4.6vw,66px)}
h3{font-size:clamp(22px,2.9vw,42px)}
h4{font-size:clamp(17px,1.9vw,26px);letter-spacing:.05em}
p{text-wrap:pretty}
.wrap{max-width:var(--frame);margin:0 auto;padding:0 48px}
.band,.band-navy.sec,.band-wine.sec,.foot,.mstrip{width:calc(100% - 32px)}
.center{text-align:center}
.lead{font-size:clamp(14px,1.35vw,18px);color:var(--ink)}

/* ===== Nav — floating cream pill ===== */
.nav{position:fixed;top:var(--nav-top);left:0;right:0;z-index:80;display:flex;justify-content:center;padding:0 24px;pointer-events:none}
.nav-in{width:100%;max-width:1200px;min-height:var(--pill-h);background:var(--cream);border-radius:var(--r-nav);display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:20px;padding:0 30px;pointer-events:auto;box-shadow:0 4px 24px rgba(2,46,75,.14)}
.nav-brand{flex-shrink:0;display:flex;align-items:center;text-decoration:none}
.nav-brand img{width:40px;height:34px;object-fit:contain}
.nav-links{grid-column:2;display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;min-width:0;gap:clamp(10px,1.7vw,30px);list-style:none}
.nav-links a{color:var(--wine);text-decoration:none;font-size:clamp(10px,1.1vw,15px);white-space:nowrap;padding-bottom:2px;border-bottom:1px solid transparent}
.nav-links a:hover,.nav-links a.is-active{border-bottom-color:var(--wine)}
.nav-toggle{display:none;background:none;border:none;color:var(--wine);font-size:20px;cursor:pointer;margin-left:auto;width:36px;height:36px}

/* ===== Buttons — pill, h38 ===== */
.btn{display:inline-flex;align-items:center;gap:12px;height:44px;padding:0 24px;border-radius:var(--r-btn);font-family:var(--sans);font-size:14px;text-decoration:none;border:none;cursor:pointer;white-space:nowrap;transition:opacity .2s,transform .2s}
.btn:hover{opacity:.86;transform:translateY(-1px)}
.btn i{width:22px;height:22px;border-radius:999px;display:grid;place-items:center;flex-shrink:0;font-style:normal;font-size:12px;line-height:1}
.b-wine{background:var(--wine);color:var(--cream)}
.b-wine i{background:var(--cream);color:var(--wine)}
.b-navy{background:var(--navy);color:var(--cream)}
.b-navy i{background:var(--cream);color:var(--navy)}
.b-cream-wine{background:var(--cream);color:var(--wine)}
.b-cream-wine i{background:var(--wine);color:var(--cream)}
.b-cream-navy{background:var(--cream);color:var(--navy)}
.b-cream-navy i{background:var(--navy);color:var(--cream)}

/* ===== Hero — photo + scrim + cream title ===== */
.hero{position:relative;width:100%;aspect-ratio:1200/730;min-height:420px;max-height:86vh;overflow:hidden;background:var(--navy)}
.hero.h-short{aspect-ratio:1200/660}
.hero.h-tall{aspect-ratio:1200/760}
.hero-bg{position:absolute;inset:0}
.hero-bg img,.hero-bg image-slot,.hero-bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-bg::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.42)}
.hero-in{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:calc(var(--pill-h) + var(--nav-top)) 48px 40px;text-align:center}
.hero-in h1,.hero-in h2,.hero-in p{color:var(--cream)}
.hero-in p{max-width:640px;font-size:clamp(14px,1.5vw,20px)}
.hero-in .sub{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;font-size:clamp(15px,1.9vw,27px);line-height:1.15}
.hero-in.to-right{align-items:center;text-align:center}

/* ===== Sections ===== */
.sec{padding:clamp(56px,7vw,96px) 0}
.band-navy.sec,.band-wine.sec{max-width:var(--frame);margin:0 auto;border-radius:var(--r-band)}
.sec-sm{padding:clamp(40px,4.6vw,64px) 0}
.sec-head{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;margin-bottom:clamp(32px,4vw,56px)}
.sec-head p{max-width:760px}

/* ===== Bands — full-width navy/wine strips holding cream cards ===== */
.band{max-width:var(--frame);margin:0 auto;padding:clamp(20px,2.2vw,26px) 0;border-radius:var(--r-band)}
.band-navy{background:var(--navy)}
.band-wine{background:var(--wine)}
.band-in{padding:0 26px;display:grid;gap:22px}
.band-3{grid-template-columns:repeat(3,1fr)}
.band-2{grid-template-columns:repeat(2,1fr)}
.bcard{background:var(--cream);border-radius:var(--r-card);padding:clamp(22px,2.4vw,30px);display:flex;flex-direction:column;gap:14px;min-height:0}
.bcard h4{color:var(--wine)}
.bcard.navy-title h4{color:var(--navy)}
.bcard p,.bcard li{font-size:clamp(13px,1.25vw,16px);color:var(--ink)}
.band-btn{display:flex;justify-content:center;padding-top:clamp(26px,3vw,42px)}
ul.list{list-style:none;display:flex;flex-direction:column;gap:10px}
ul.list li{position:relative;padding-left:16px}
ul.list li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:1px;background:currentColor;opacity:.6}

/* ===== Alternating photo + text rows (inside navy) ===== */
.rows{display:flex;flex-direction:column;gap:clamp(44px,5vw,80px)}
.row{display:grid;grid-template-columns:529fr 566fr;gap:clamp(24px,2vw,22px);align-items:center}
.row.flip{grid-template-columns:566fr 537fr}
.row.flip .row-media{order:2}
.row-media{position:relative;aspect-ratio:529/794;overflow:hidden;border-radius:var(--r-media);background:rgba(226,216,206,.14)}
.row.flip .row-media{aspect-ratio:537/715}
.row-media img,.row-media image-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.row-media.wide{aspect-ratio:695/463}
.row-body{display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center}
.row-body .role{font-size:clamp(12px,1.15vw,15px);letter-spacing:.02em}
.band-navy .row-body h2,.band-navy .row-body h3,.band-navy .row-body h4{color:var(--cream)}
.band-navy .row-body,.band-navy .row-body p,.band-navy .row-body li,.band-navy .row-body .role{color:var(--cream)}
.on-cream .row-body h2,.on-cream .row-body h3{color:var(--wine)}
.on-cream .row-body p,.on-cream .row-body li{color:var(--ink)}

/* ===== Stats — centred rows, wine ===== */
.stats{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(24px,4vw,64px) clamp(30px,6vw,96px);max-width:1000px;margin:0 auto}
.stat{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;max-width:230px}
.stat .v{font-family:var(--display);font-size:clamp(26px,3.4vw,46px);line-height:1;color:var(--wine);text-transform:uppercase}
.stat .l{font-size:clamp(12px,1.2vw,16px);color:var(--wine)}

/* ===== Footer ===== */
.foot-h{padding:clamp(40px,5vw,72px) 0 clamp(24px,3vw,40px);text-align:center}
.foot{background:var(--navy);max-width:var(--frame);margin:0 auto;border-radius:var(--r-band);padding:clamp(36px,4vw,58px) 0}
.foot-in{padding:0 clamp(22px,3.4vw,44px);display:grid;grid-template-columns:1fr .92fr;gap:40px;align-items:center}
.foot-list{display:flex;flex-direction:column;gap:clamp(12px,1.5vw,18px)}
.foot-item{display:flex;flex-direction:column;gap:4px;text-decoration:none}
.foot-item .l{font-family:var(--display);font-size:clamp(15px,1.65vw,23px);text-transform:uppercase;letter-spacing:.05em;color:var(--cream);line-height:1.1}
.foot-item .v{font-size:clamp(12px,1.2vw,16px);color:var(--cream);opacity:.9;letter-spacing:.02em}
.foot-item:hover .v{text-decoration:underline;opacity:1}
.foot-media{position:relative;aspect-ratio:489/326;overflow:hidden;border-radius:var(--r-media);background:rgba(226,216,206,.12)}
.foot-media img,.foot-media image-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.foot-m{display:flex;justify-content:center;padding:clamp(34px,4.4vw,64px) 0 clamp(30px,4vw,56px)}
.foot-m img{height:clamp(96px,13vw,182px);width:auto;object-fit:contain}
.foot-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;list-style:none;padding-bottom:clamp(22px,3vw,40px)}
.foot-nav a{color:var(--wine);text-decoration:none;font-size:13px;opacity:.75}
.foot-nav a:hover{opacity:1;text-decoration:underline}

/* ===== Wine strip with M + heading ===== */
.mstrip{background:var(--navy);max-width:var(--frame);margin:0 auto;border-radius:var(--r-nav);padding:clamp(18px,2vw,26px) 0;overflow:hidden}
.mstrip-in{padding:0 clamp(22px,3.4vw,44px);display:flex;align-items:center;gap:clamp(24px,4vw,60px)}
.mstrip img{height:clamp(72px,11vw,150px);width:auto;flex-shrink:0;filter:brightness(0) invert(1);opacity:.95}
.mstrip h2{color:var(--cream)}
.mstrip.txt{padding:clamp(28px,3.4vw,48px) 0}
.mstrip-t{display:flex;flex-direction:column;gap:14px}
.mstrip-t p{color:var(--cream);font-size:clamp(13px,1.3vw,17px);max-width:760px}

/* ===== Responsive ===== */
@media (max-width:1080px){
  .nav-in{gap:16px;padding:0 22px}
  .band-3{grid-template-columns:1fr 1fr}
  .band-3>.bcard:last-child{grid-column:span 2}
}
@media (max-width:860px){
  :root{--pill-h:54px;--nav-top:16px}
  .wrap,.foot-in,.mstrip-in{padding:0 22px}
  .nav{padding:0 16px}
  .nav-in{display:flex;flex-wrap:wrap;border-radius:26px;padding:0 20px}
  .nav-toggle{display:block}
  .nav-links{grid-column:auto;flex:0 0 100%;order:3;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;margin:0;padding:2px 0 12px}
  .nav-links:not(.open){display:none}
  .nav-links li{width:100%}
  .nav-links a{display:block;padding:11px 0;font-size:15px;border-bottom:1px solid rgba(86,7,29,.18)}
  .nav-links li:last-child a{border-bottom:none}
  .hero,.hero.h-short,.hero.h-tall{aspect-ratio:auto;min-height:0;max-height:none}
  .hero-in{min-height:74vh;padding:calc(var(--pill-h) + 40px) 22px 44px}
  .band-in{padding:0 14px}
  .band-btn{padding-left:16px;padding-right:16px}
  .hero.m-bottom .hero-in{justify-content:flex-end}
  .hero.m-bottom .sub br{display:none}
  .mstrip.txt .mstrip-in{flex-direction:column;align-items:flex-start;gap:18px}
  .mstrip.txt img{height:60px}
  .band-3,.band-2{grid-template-columns:1fr}
  .band-3>.bcard:last-child{grid-column:auto}
  .row,.row.flip{grid-template-columns:1fr}
  .row.flip .row-media{order:0}
  .row{gap:22px}
  .row-media,.row.flip .row-media{aspect-ratio:3/4}
  .row-media.wide{aspect-ratio:4/3}
  .foot-in{grid-template-columns:1fr;gap:28px}
  .foot-media{order:2}
  .btn{width:100%;justify-content:center}
  .row-body .btn,.bcard .btn{width:auto}
}
@media (max-width:480px){
  .stats{gap:24px 32px}
  .btn{font-size:13px;padding:0 18px}
  .row-body .btn,.bcard .btn{width:100%}
}
