/* Mugwoker editorial theme — mobile-first, fluid. Breakpoints: 600 / 900 / 1100 / 1400 */
:root{
  --bg:#f5f2ea; --paper:#fbf9f3; --ink:#211f19; --green:#3f5234; --green-soft:#6f7d5c;
  --rule:rgba(33,31,25,.15); --muted:rgba(33,31,25,.52);
  --serif:"Shippori Mincho","Noto Serif JP",serif;
  --sans:"Noto Sans JP","Inter",system-ui,sans-serif;
  --italic:"Cormorant Garamond","Shippori Mincho",serif;
  --pad:clamp(20px,5vw,48px);
  --sec-y:clamp(72px,10vw,150px);
  --max:1180px;
  --head-h:60px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:var(--head-h)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--serif);line-height:1.9;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:hover{color:var(--green)}
h1,h2,h3,p,ul,figure{margin:0;padding:0}
ul{list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
.wrap{width:100%;max-width:var(--max);margin-inline:auto}
.sec{padding:var(--sec-y) var(--pad)}
.sec--paper{background:var(--paper)}
.center{text-align:center}
.cover{width:100%;height:100%;object-fit:cover}

/* ── reveal ───────────────────────────────────────────── */
[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .9s cubic-bezier(.2,.7,.3,1) var(--d,0ms),transform .9s cubic-bezier(.2,.7,.3,1) var(--d,0ms)}
[data-reveal].is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* ── header ───────────────────────────────────────────── */
.hdr{position:fixed;inset:0 0 auto;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--pad);color:#fff;transition:background .3s,padding .3s,color .3s,border-color .3s;border-bottom:.5px solid transparent}
.hdr.is-solid{background:rgba(246,244,238,.93);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border-bottom-color:var(--rule);color:var(--ink)}
.hdr__bar{position:fixed;top:0;left:0;height:2px;width:0;background:var(--green);z-index:100;transition:width .12s linear}
.brand{display:flex;align-items:center;gap:10px;min-width:0}
.brand svg{flex:none;width:22px;height:22px}
.brand b{font-family:var(--serif);font-weight:500;font-size:clamp(13px,3.4vw,17px);letter-spacing:.05em;line-height:1.15;white-space:nowrap}
.brand i{display:none;font-family:var(--italic);font-size:11px;letter-spacing:.08em;opacity:.75}
.nav{display:none}
.hdr__store{display:none}
.burger{display:flex;flex-direction:column;gap:5px;background:none;border:0;padding:10px;margin:-10px;cursor:pointer}
.burger span{display:block;width:24px;height:1.5px;background:currentColor}

/* drawer */
.drawer{position:fixed;inset:0;z-index:90;background:var(--ink);color:var(--bg);display:flex;flex-direction:column;transform:translateY(-100%);transition:transform .4s cubic-bezier(.3,.7,.3,1);overscroll-behavior:contain}
.drawer.is-open{transform:none}
.drawer__top{display:flex;align-items:center;justify-content:space-between;padding:16px var(--pad);border-bottom:1px solid rgba(246,244,238,.16)}
.drawer__top span{font-family:var(--serif);font-size:15px;letter-spacing:.05em}
.drawer__close{background:none;border:0;color:inherit;font-family:var(--sans);font-size:12px;letter-spacing:.18em;cursor:pointer;padding:10px;margin:-10px}
.drawer nav{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px var(--pad) 24px}
.drawer nav a{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:16px 0;min-height:48px;border-bottom:1px solid rgba(246,244,238,.14)}
.drawer nav a em{font-family:var(--italic);font-style:italic;font-size:clamp(19px,5.6vw,24px)}
.drawer nav a small{font-family:var(--serif);font-size:14px;opacity:.72}
.drawer__cta{padding:16px var(--pad) calc(16px + env(safe-area-inset-bottom))}
.drawer__cta a{display:block;text-align:center;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:16px}

/* ── hero ─────────────────────────────────────────────── */
.hero{position:relative;overflow:hidden;min-height:520px;height:88svh;display:grid}
.hero__media{position:absolute;inset:0;will-change:transform}
.hero__media img{width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,24,16,.42),rgba(20,24,16,.1) 38%,rgba(20,24,16,.5))}
.hero__inner{position:relative;z-index:2;align-self:center;text-align:center;color:#fff;padding:var(--head-h) var(--pad) 0}
.hero__eyebrow{font-family:var(--sans);font-size:clamp(9px,2.4vw,12px);letter-spacing:.34em;text-transform:uppercase;opacity:.92;margin-bottom:clamp(18px,4vw,36px)}
.hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(28px,8.4vw,92px);line-height:1.35;letter-spacing:.05em;text-shadow:0 2px 30px rgba(0,0,0,.28);text-wrap:balance}
.hero__lead{font-family:var(--serif);font-size:clamp(13px,3.6vw,17px);line-height:2.1;letter-spacing:.04em;margin:clamp(20px,4vw,38px) auto 0;max-width:34em;opacity:.95;text-shadow:0 1px 16px rgba(0,0,0,.3)}
.hero__scroll{position:absolute;left:0;right:0;bottom:calc(20px + env(safe-area-inset-bottom));z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;color:#fff}
.hero__scroll span{font-family:var(--sans);font-size:10px;letter-spacing:.3em;text-transform:uppercase;opacity:.85}
.hero__scroll i{width:1px;height:38px;background:rgba(255,255,255,.65);animation:pulse 2s ease-in-out infinite;transform-origin:top}
@keyframes pulse{0%,100%{transform:scaleY(.4);opacity:.5}50%{transform:scaleY(1);opacity:1}}

/* ── section head ─────────────────────────────────────── */
.eh{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:clamp(24px,4vw,48px)}
.eh em{font-family:var(--italic);font-style:italic;font-size:clamp(30px,7vw,60px);color:var(--green);line-height:1}
.eh span{font-family:var(--sans);font-size:clamp(10px,2.6vw,13px);letter-spacing:.26em;color:var(--muted)}
.eh--left{justify-content:flex-start}
.eh--light em{color:rgba(245,242,234,.94)}
.eh--light span{color:rgba(245,242,234,.64)}
.lede{font-family:var(--serif);font-size:clamp(14px,3.6vw,17px);line-height:2.3;letter-spacing:.03em;max-width:34em;margin-inline:auto}
h2.big{font-family:var(--serif);font-weight:500;font-size:clamp(22px,6.2vw,50px);line-height:1.6;letter-spacing:.05em;max-width:22em;margin-inline:auto;text-wrap:balance}
.more{display:inline-flex;align-items:center;gap:12px;font-family:var(--sans);font-size:12px;letter-spacing:.24em;text-transform:uppercase;padding-bottom:8px;border-bottom:1px solid currentColor;min-height:44px}

/* ── band (full-bleed photo + caption) ────────────────── */
.band{position:relative;overflow:hidden;min-height:380px;height:62svh;max-height:700px;display:grid}
.band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,24,16,.62),rgba(20,24,16,.34))}
.band__cap{position:relative;z-index:2;align-self:center;color:#fff;padding:var(--pad);max-width:520px}
.band__cap em{display:block;font-family:var(--italic);font-style:italic;font-size:clamp(26px,6vw,44px);line-height:1.2;margin-bottom:18px}
.band__cap p{font-family:var(--serif);font-size:clamp(13px,3.3vw,15px);line-height:2.05;letter-spacing:.03em;text-shadow:0 1px 12px rgba(0,0,0,.35)}
.band__cap p+p{margin-top:12px}

/* ── generic 2-col ────────────────────────────────────── */
.two{display:grid;gap:clamp(28px,5vw,72px);align-items:center}
.two>.media{width:100%;min-width:0;min-height:0;aspect-ratio:4/3;overflow:hidden}
.two>.media img{width:100%;height:100%;object-fit:cover}
.quote{font-family:var(--serif);font-weight:500;color:var(--green);font-size:clamp(19px,4.8vw,32px);line-height:1.75;letter-spacing:.04em;margin-bottom:24px}
.body p{font-family:var(--serif);font-size:clamp(14px,3.5vw,15.5px);line-height:2.15;letter-spacing:.03em}
.body p+p{margin-top:18px}

/* ── process ──────────────────────────────────────────── */
.grid-4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,28px)}
.step .media{aspect-ratio:3/4;overflow:hidden;margin-bottom:14px}
.step .media img{width:100%;height:100%;object-fit:cover}
.step .no{font-family:var(--sans);font-size:10px;letter-spacing:.18em;color:var(--green-soft);margin-bottom:6px}
.step h3{font-family:var(--serif);font-weight:500;font-size:clamp(15px,4vw,20px);letter-spacing:.05em;margin-bottom:6px}
.step p{font-family:var(--serif);font-size:clamp(12px,3.2vw,13px);line-height:1.95;letter-spacing:.02em}

/* ── sowa ─────────────────────────────────────────────── */
.sowa{position:relative;overflow:hidden;background:var(--green);color:#fff;text-align:center}
.sowa>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.26}
.sowa::after{content:"";position:absolute;inset:0;background:rgba(45,58,37,.55)}
.sowa__in{position:relative;z-index:2;padding:clamp(80px,12vw,170px) var(--pad)}
.sowa__kicker{font-family:var(--sans);font-size:clamp(9px,2.4vw,12px);letter-spacing:.36em;text-transform:uppercase;opacity:.85;margin-bottom:clamp(14px,3vw,28px)}
.sowa__word{font-family:var(--italic);font-style:italic;font-size:clamp(76px,22vw,220px);line-height:.9;letter-spacing:-.02em}
.sowa__sub{font-family:var(--sans);font-size:clamp(9px,2.2vw,11.5px);letter-spacing:.3em;text-transform:uppercase;opacity:.82;margin:clamp(12px,3vw,26px) 0 clamp(28px,5vw,54px)}
.sowa__body{max-width:38em;margin-inline:auto}
.sowa__body p{font-family:var(--serif);font-size:clamp(14px,3.7vw,18px);line-height:2.3;letter-spacing:.04em}
.sowa__body p+p{margin-top:16px;opacity:.9;font-size:clamp(13px,3.4vw,16px)}

/* ── lineup ───────────────────────────────────────────── */
.feature{display:grid;gap:clamp(20px,4vw,64px);align-items:center}
.feature .media{aspect-ratio:4/3;overflow:hidden}
.feature .media img{width:100%;height:100%;object-fit:cover}
.feature .tag{font-family:var(--sans);font-size:11px;letter-spacing:.28em;color:var(--green);margin-bottom:14px}
.feature h3{font-family:var(--serif);font-weight:500;font-size:clamp(24px,6vw,46px);line-height:1.3;letter-spacing:.04em;margin-bottom:8px}
.feature .en{font-family:var(--italic);font-style:italic;font-size:clamp(16px,4vw,19px);color:var(--muted);margin-bottom:18px}
.feature p{font-family:var(--serif);font-size:clamp(14px,3.6vw,16px);line-height:2.1;letter-spacing:.03em;margin-bottom:22px;max-width:28em}
.feature .buy{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.feature .price{font-family:var(--serif);font-size:clamp(19px,4.6vw,22px)}
.features{display:grid;gap:clamp(44px,7vw,100px)}
.rows{max-width:900px;margin:clamp(44px,7vw,96px) auto 0;border-top:1px solid var(--rule)}
.row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--rule);min-height:56px}
.row .no,.row .note{display:none}
.row .name{font-family:var(--serif);font-weight:500;font-size:clamp(15px,4.2vw,20px);letter-spacing:.03em}
.row .name i{font-family:var(--italic);font-style:italic;font-size:13px;color:var(--muted);margin-left:10px}
.row .price{font-family:var(--serif);font-size:15px;white-space:nowrap}

/* ── taste ────────────────────────────────────────────── */
.taste{display:grid;gap:clamp(32px,5vw,72px);align-items:start}
.taste .media{aspect-ratio:4/3;overflow:hidden}
.taste .media img{width:100%;height:100%;object-fit:cover}
.taste .cap{font-family:var(--serif);font-size:13px;line-height:2;color:var(--muted);margin-top:16px;max-width:24em}
.prop{display:grid;grid-template-columns:minmax(78px,auto) minmax(0,1fr);gap:14px 20px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--rule)}
.prop:first-child{border-top:1px solid var(--rule)}
.prop .v{font-family:var(--italic);font-style:italic;font-size:clamp(24px,6vw,38px);color:var(--green);line-height:1}
.prop .u{font-family:var(--sans);font-size:10px;color:var(--muted);margin-top:5px;letter-spacing:.04em}
.prop h3{font-family:var(--serif);font-weight:500;font-size:clamp(15px,4vw,18px)}
.prop .en{font-family:var(--italic);font-style:italic;font-size:13px;color:var(--muted);margin-bottom:6px}
.prop p{font-family:var(--serif);font-size:clamp(12px,3.2vw,13px);line-height:1.95;letter-spacing:.02em}

/* ── vision ───────────────────────────────────────────── */
.pillars{display:grid;grid-template-columns:1fr;gap:clamp(28px,5vw,64px);max-width:1000px;margin:clamp(44px,7vw,88px) auto 0}
.pillar em{display:block;font-family:var(--italic);font-style:italic;font-size:clamp(19px,4.6vw,26px);color:var(--green);margin-bottom:12px}
.pillar hr{width:28px;height:1px;background:var(--rule);border:0;margin:0 auto 16px}
.pillar h3{font-family:var(--serif);font-weight:500;font-size:clamp(18px,4.6vw,22px);letter-spacing:.06em;margin-bottom:10px}
.pillar p{font-family:var(--serif);font-size:14px;line-height:2;max-width:20em;margin-inline:auto}

/* ── information / journal ────────────────────────────── */
.info{display:grid;gap:clamp(48px,7vw,96px)}
.news{border-top:1px solid var(--rule)}
.news li{display:grid;gap:4px;padding:16px 0;border-bottom:1px solid var(--rule)}
.news .date{font-family:var(--italic);font-style:italic;font-size:14px;color:var(--green)}
.news .tag{font-family:var(--sans);font-size:9px;letter-spacing:.2em;color:var(--muted)}
.news .ttl{font-family:var(--serif);font-size:clamp(13.5px,3.6vw,14.5px);line-height:1.75;letter-spacing:.02em}
.journal{display:grid;gap:clamp(18px,3vw,28px)}
.journal a{display:grid;grid-template-columns:minmax(96px,34%) minmax(0,1fr);gap:clamp(14px,3vw,28px);align-items:center}
.journal .media{aspect-ratio:4/3;overflow:hidden}
.journal .media img{width:100%;height:100%;object-fit:cover;transition:opacity .25s}
.journal a:hover .media img{opacity:.85}
.journal .meta{font-family:var(--sans);font-size:10px;letter-spacing:.16em;color:var(--muted);margin-bottom:6px}
.journal h3{font-family:var(--serif);font-weight:500;font-size:clamp(15px,4.2vw,21px);line-height:1.5;letter-spacing:.03em;margin-bottom:4px}
.journal .en{font-family:var(--italic);font-style:italic;font-size:13px;color:var(--muted)}

/* ── members ──────────────────────────────────────────── */
.members{display:grid;gap:clamp(32px,5vw,80px);align-items:center}
.members .media{width:100%;min-width:0;aspect-ratio:4/3;overflow:hidden}
.members .media img{width:100%;height:100%;object-fit:cover}
.members h2{font-family:var(--serif);font-weight:500;font-size:clamp(21px,5.4vw,38px);line-height:1.5;letter-spacing:.05em;margin-bottom:10px}
.members .lead-en{font-family:var(--italic);font-style:italic;font-size:clamp(15px,4vw,17px);color:var(--muted);margin-bottom:22px}
.people{display:grid;gap:16px;margin:26px 0 clamp(28px,5vw,44px)}
.person{border-top:1px solid var(--rule);padding-top:14px}
.person .role{font-family:var(--sans);font-size:10.5px;letter-spacing:.14em;color:var(--green-soft);margin-bottom:6px}
.person .nm{font-family:var(--serif);font-weight:500;font-size:clamp(17px,4.4vw,21px);letter-spacing:.05em}
.person .nm-en{font-family:var(--italic);font-style:italic;font-size:14px;color:var(--muted)}
.lab{background:var(--bg);border:1px solid var(--rule);padding:clamp(20px,4vw,32px)}
.lab .kicker{font-family:var(--sans);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--green);margin-bottom:12px}
.lab h3{font-family:var(--serif);font-weight:500;font-size:clamp(16px,4.2vw,18px);letter-spacing:.04em;margin-bottom:12px}
.lab dl{display:grid;gap:10px;margin:0}
.lab .r{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;font-family:var(--serif);font-size:13.5px;line-height:1.7}
.lab .r dt{font-family:var(--sans);font-size:10px;letter-spacing:.14em;color:var(--muted);padding-top:3px}
.lab .r dd{margin:0;word-break:break-word}

/* ── contact ──────────────────────────────────────────── */
.contact{background:var(--ink);color:#fff}
.contact .intro{max-width:36em;margin:0 auto clamp(32px,5vw,48px);text-align:center}
.contact .intro p{font-family:var(--serif);font-size:clamp(14px,3.6vw,16px);line-height:2.1;letter-spacing:.03em;opacity:.88}
.contact .intro .addr{font-family:var(--serif);font-size:14px;margin-top:20px;opacity:.8}
.form{max-width:640px;margin-inline:auto}
.form__note{font-family:var(--sans);font-size:13px;line-height:1.9;padding:14px 16px;margin-bottom:28px;border:1px solid rgba(245,242,234,.35);background:rgba(245,242,234,.06)}
.form__note.is-error{border-color:#c98b6b;color:#f0cbb8}
.form__done{text-align:center;padding:32px 0}
.form__done-en{font-family:var(--italic);font-style:italic;font-size:18px;opacity:.7;margin-bottom:12px}
.form__done p{font-family:var(--serif);font-size:clamp(17px,4.6vw,22px);line-height:1.9}
.f--hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.f .req{display:inline-block;margin-left:8px;padding:2px 6px;font-size:9px;letter-spacing:.08em;color:var(--ink);background:rgba(245,242,234,.75);vertical-align:middle}
.consent label{display:flex;align-items:flex-start;gap:12px;font-family:var(--serif);font-size:13.5px;line-height:1.8;letter-spacing:.02em;text-transform:none;color:rgba(245,242,234,.9);cursor:pointer;padding:6px 0;min-height:44px}
.consent input{flex:none;width:18px;height:18px;min-height:0;margin-top:4px;accent-color:#fff;border:0;padding:0}
.consent a{text-decoration:underline;text-underline-offset:3px}
.consent a:hover{color:#fff}
.form .pair{display:grid;gap:0}
.f{margin-bottom:22px}
.f label{display:block;font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(245,242,234,.58)}
.f input,.f select,.f textarea{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(245,242,234,.3);padding:12px 0;font-family:var(--serif);font-size:16px;color:#fff;outline:none;border-radius:0;min-height:48px}
.f textarea{min-height:110px;resize:vertical}
.f select{appearance:none}
.f select option{color:#000}
.f ::placeholder{color:rgba(245,242,234,.4)}
.send{display:block;width:100%;font-family:var(--sans);font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--ink);background:#fff;border:0;padding:17px 40px;cursor:pointer;min-height:52px}
.send:hover{opacity:.88}

/* ── footer ───────────────────────────────────────────── */
.ftr{padding:clamp(48px,7vw,80px) var(--pad) calc(32px + env(safe-area-inset-bottom));background:var(--bg);text-align:center}
.ftr__brand{margin-bottom:clamp(32px,5vw,56px)}
.ftr__brand svg{margin:0 auto 14px;display:block}
.ftr__brand b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(17px,4.4vw,20px);letter-spacing:.08em;margin-bottom:6px}
.ftr__brand i{font-family:var(--italic);font-style:italic;font-size:15px;color:var(--muted)}
.ftr__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 20px;margin-bottom:32px;font-family:var(--sans);font-size:12px;letter-spacing:.1em}
.ftr__nav a{min-height:24px}
.ftr__sns{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;margin-bottom:32px;font-family:var(--sans);font-size:11.5px;letter-spacing:.12em;color:var(--muted)}
.ftr__meta{font-family:var(--sans);font-size:10.5px;color:var(--muted);letter-spacing:.08em;line-height:2;padding-top:24px;border-top:1px solid var(--rule)}

/* ══ ≥600px : large phones / portrait tablet ═══════════ */
@media (min-width:600px){
  .hero{height:92svh}
  .band{height:66svh}
  .news li{grid-template-columns:104px 76px minmax(0,1fr);gap:16px;align-items:baseline;padding:18px 0}
  .news li .tag-inline{display:none}
  .people{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
  .form .pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
  .send{width:auto;margin-inline:auto}
  .contact .send-wrap{text-align:center}
  .pillars{grid-template-columns:repeat(3,minmax(0,1fr))}
  .journal a{grid-template-columns:150px minmax(0,1fr)}
}

/* ══ ≥900px : tablet landscape / desktop layout ════════ */
@media (min-width:900px){
  :root{--head-h:76px}
  .hero{height:100svh}
  .band{height:72svh;max-height:760px}
  .band::after{background:linear-gradient(90deg,rgba(20,24,16,.66),rgba(20,24,16,.12) 58%,rgba(20,24,16,0))}
  .band--right::after{background:linear-gradient(270deg,rgba(20,24,16,.66),rgba(20,24,16,.12) 58%,rgba(20,24,16,0))}
  .band__cap{padding-inline:clamp(32px,5vw,64px)}
  .band--right{justify-items:end}
  .two{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
  .two>.media{aspect-ratio:auto;height:100%;min-height:520px}
  .eh--md-left{justify-content:flex-start}
  .grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .feature{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature .media{aspect-ratio:1/1}
  .feature--flip .media{order:2}
  .feature .txt{text-align:left}
  .row{grid-template-columns:40px minmax(0,1.3fr) minmax(0,2fr) auto;gap:24px;padding:24px 0}
  .row .no{display:block;font-family:var(--italic);font-style:italic;font-size:16px;color:var(--green-soft)}
  .row .note{display:block;font-family:var(--serif);font-size:13.5px;color:var(--muted);line-height:1.7}
  .row:hover{background:rgba(33,31,25,.03)}
  .taste{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
  .taste .media{aspect-ratio:4/5}
  .taste .sticky{position:sticky;top:calc(var(--head-h) + 24px)}
  .info{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
  .members{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
  .members .media{aspect-ratio:auto;height:100%;min-height:480px}
  .ftr__nav{gap:0 30px}
}

/* ══ ≥1100px : full desktop nav ════════════════════════ */
@media (min-width:1100px){
  .hdr{padding:22px var(--pad)}
  .hdr.is-solid{padding:14px var(--pad)}
  .brand svg{width:26px;height:26px}
  .brand i{display:block}
  .nav{display:flex;gap:clamp(14px,1.6vw,22px);font-family:var(--sans);font-size:11.5px;letter-spacing:.08em}
  .nav a{padding-bottom:4px;border-bottom:1px solid transparent;opacity:.72;white-space:nowrap;transition:opacity .2s,border-color .2s}
  .nav a:hover,.nav a.is-active{opacity:1;border-bottom-color:currentColor;color:inherit}
  .hdr__store{display:inline-block;font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding-bottom:4px;border-bottom:1px solid currentColor}
  .hdr__store:hover{color:inherit}
  .burger,.drawer{display:none}
}

/* Short viewports (landscape phones, small laptops): keep the hero text clear
   of the scroll cue and stop the headline from filling the screen */
@media (max-height:760px){
  .hero{height:auto;min-height:100svh;padding-block:calc(var(--head-h) + 28px) 104px;align-content:center}
  .hero__inner{padding-top:0}
  .hero h1{font-size:clamp(28px,5.6vw,60px)}
  .hero__lead{line-height:1.95}
  .hero__scroll i{height:30px}
}
@media (max-height:560px){
  .hero__eyebrow{margin-bottom:14px}
  .hero__lead{margin-top:16px;font-size:13px}
}
@media print{.hdr,.drawer,.hero__scroll,.hdr__bar{display:none}}
