/* =========================================================
   MOM & ME KITCHEN — design system v4 (clean editorial)
   Warm white space · classic serif · rounded imagery · olive accents
   Type: Playfair Display (display) · Inter (ui/body)
   ========================================================= */

:root{
  --ink:#262a1e;
  --forest:#3c472f;      /* olive-green (buttons/accents) */
  --moss:#5b6640;
  --sage:#8b946c;
  --sage-deep:#6c744e;
  --cream:#faf7ef;       /* main warm white */
  --ivory:#f3eee1;       /* alt panel */
  --paper:#ece5d5;       /* image backing */
  --clay:#bd6440;        /* tiny accent only */
  --muted:#5f6650;
  --muted-2:#828869;
  --line:rgba(38,42,30,.14);
  --line-2:rgba(38,42,30,.07);
  --line-cream:rgba(250,247,239,.22);

  --serif:"Playfair Display",Georgia,"Times New Roman",serif;
  --sans:"Inter",system-ui,-apple-system,sans-serif;

  --wrap:1280px;
  --gut:clamp(20px,5vw,84px);
  --r:16px;
  --r-lg:26px;

  --fs-hero:clamp(2.3rem,4.6vw,4.1rem);
  --fs-h1:clamp(2rem,3.5vw,3.1rem);
  --fs-h2:clamp(1.65rem,2.7vw,2.45rem);
  --fs-h3:clamp(1.2rem,1.55vw,1.5rem);
  --fs-lede:clamp(1rem,1.12vw,1.12rem);
  --fs-body:.95rem;

  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:var(--fs-body);line-height:1.68;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
::selection{background:var(--forest);color:var(--cream)}

.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
.wrap--narrow{max-width:880px}
.wrap--wide{max-width:1460px}
.section{padding-block:clamp(58px,8vw,124px)}
.section--tight{padding-block:clamp(40px,5.5vw,80px)}

.bg-cream{background:var(--cream)}
.bg-ivory{background:var(--ivory)}
.bg-paper{background:var(--paper)}

/* ---------- type ---------- */
h1,h2,h3,.display{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.005em;margin:0;color:var(--ink)}
h1 em,h2 em,h3 em,.display em{font-style:italic;font-weight:500}
h1,.h1{font-size:var(--fs-h1)}
h2,.h2{font-size:var(--fs-h2)}
h3,.h3{font-size:var(--fs-h3);line-height:1.18}
.mega{font-size:var(--fs-hero);line-height:1.04;letter-spacing:-.01em;font-weight:500}

.eyebrow{font-family:var(--sans);font-size:.68rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--sage-deep);display:inline-flex;align-items:center;gap:.7em;margin:0 0 1.2rem}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--sage-deep)}
.eyebrow--center{justify-content:center}
.eyebrow--dot::before{width:6px;height:6px;border-radius:50%;background:var(--clay)}

.lede{font-size:var(--fs-lede);line-height:1.62;color:var(--muted);max-width:58ch}
.strong-line{color:var(--ink);font-weight:500}
p{margin:0 0 1.1em}p:last-child{margin-bottom:0}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.95em 1.7em;border-radius:100px;border:1px solid var(--forest);background:var(--forest);color:var(--cream);cursor:pointer;transition:background .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease),transform .35s var(--ease)}
.btn svg{width:13px;height:13px;transition:transform .35s var(--ease)}
.btn:hover{background:var(--ink);border-color:var(--ink);transform:translateY(-2px)}
.btn:hover svg{transform:translate(3px,-3px)}
.btn--outline{background:transparent;color:var(--ink);border-color:var(--line)}
.btn--outline:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.btn--cream{background:var(--cream);color:var(--ink);border-color:var(--cream)}
.btn--cream:hover{background:var(--forest);color:var(--cream);border-color:var(--forest)}

.textlink{font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.5em;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:.3em;transition:gap .35s var(--ease),border-color .35s,color .35s}
.textlink svg{width:12px;height:12px;transition:transform .35s var(--ease)}
.textlink:hover{gap:.85em;border-color:var(--forest);color:var(--forest)}
.textlink:hover svg{transform:translate(3px,-3px)}

/* ---------- header ---------- */
.site-head{position:fixed;inset:0 0 auto 0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.1rem var(--gut);background:var(--cream);transition:padding .4s var(--ease),box-shadow .4s var(--ease)}
.site-head.is-solid{padding-block:.8rem;box-shadow:0 1px 0 var(--line-2)}
.brand--wrap{display:inline-grid;z-index:2}
.brand--wrap img{grid-area:1/1;height:28px;width:auto}
.brand .logo-cream{opacity:0}
.nav{display:flex;align-items:center;gap:1.9rem}
.nav a:not(.btn){font-size:.71rem;font-weight:500;letter-spacing:.11em;text-transform:uppercase;color:var(--ink);opacity:.68;position:relative;padding:.3em 0;transition:opacity .3s}
.nav a:not(.btn)::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--forest);transition:right .4s var(--ease)}
.nav a:not(.btn):hover{opacity:1}
.nav a:not(.btn):hover::after,.nav a:not(.btn).active::after{right:0}
.nav a:not(.btn).active{opacity:1}
.nav-cta{margin-left:.2rem}

.burger{display:none;z-index:70;width:42px;height:42px;border:none;background:none;cursor:pointer;position:relative}
.burger span{position:absolute;left:9px;right:9px;height:1.5px;background:var(--ink);transition:transform .4s var(--ease),opacity .3s}
.burger span:nth-child(1){top:15px}.burger span:nth-child(2){top:21px}.burger span:nth-child(3){top:27px}
body.menu-open .burger span{background:var(--cream)}
body.menu-open .burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.menu-open .burger span:nth-child(2){opacity:0}
body.menu-open .burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobile-nav{position:fixed;inset:0;z-index:55;background:var(--forest);display:flex;flex-direction:column;justify-content:center;gap:.1rem;padding:var(--gut);transform:translateY(-102%);transition:transform .6s var(--ease)}
body.menu-open .mobile-nav{transform:translateY(0)}
.mobile-nav a:not(.btn){font-family:var(--serif);font-size:clamp(1.7rem,7vw,2.6rem);color:var(--cream);padding:.24em 0;border-bottom:1px solid var(--line-cream);opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
body.menu-open .mobile-nav a:not(.btn){opacity:1;transform:none}
body.menu-open .mobile-nav a:not(.btn):nth-child(1){transition-delay:.1s}
body.menu-open .mobile-nav a:not(.btn):nth-child(2){transition-delay:.16s}
body.menu-open .mobile-nav a:not(.btn):nth-child(3){transition-delay:.22s}
body.menu-open .mobile-nav a:not(.btn):nth-child(4){transition-delay:.28s}
body.menu-open .mobile-nav a:not(.btn):nth-child(5){transition-delay:.34s}
.mobile-nav .btn{margin-top:1.8rem;align-self:flex-start;background:var(--cream);color:var(--ink);border-color:var(--cream)}

/* ---------- SHOT (uncropped, rounded) ---------- */
.shot{position:relative;overflow:hidden;border-radius:var(--r-lg);background:var(--paper);line-height:0}
.shot img{width:100%;height:auto;transition:transform 1s var(--ease-out)}
.shot:hover img{transform:scale(1.03)}
.shot__cap{position:absolute;left:0;bottom:0;z-index:2;padding:1rem 1.2rem;color:var(--cream);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;line-height:1.25;text-shadow:0 1px 16px rgba(0,0,0,.5)}
.gallery{columns:3;column-gap:clamp(.8rem,1.4vw,1.3rem)}
.gallery .shot{margin:0 0 clamp(.8rem,1.4vw,1.3rem);break-inside:avoid}
@media (max-width:900px){.gallery{columns:2}}
@media (max-width:460px){.gallery{columns:1}}

/* thumbnail + link (Eatd-style) */
.thumb-link{display:inline-flex;flex-direction:column;gap:.7rem;width:132px}
.thumb-link .shot{border-radius:var(--r);width:132px;height:96px}
.thumb-link .shot img{height:100%;object-fit:cover}

/* ---------- hero (split) ---------- */
.hero-split{padding-top:clamp(116px,15vh,170px);padding-bottom:clamp(48px,7vw,96px);position:relative}
.hero-split__grid{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.hero-kicker{font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--sage-deep);margin-bottom:1.3rem;display:inline-flex;align-items:center;gap:.7em}
.hero-kicker::before{content:"";width:26px;height:1px;background:var(--sage-deep)}
.hero-title{font-family:var(--serif);font-weight:500;font-size:var(--fs-hero);color:var(--ink);line-height:1.06;letter-spacing:-.01em}
.hero-title em{font-style:italic}
.hero-sub{color:var(--muted);font-size:var(--fs-lede);margin-top:1.3rem;max-width:42ch}
.hero-actions{margin-top:1.9rem;display:flex;gap:.8rem;flex-wrap:wrap;align-items:center}
.hero-media{position:relative;justify-self:center;width:100%}
.hero-media .shot{width:100%}

/* film reel in hero (home) */
.reel-wrap{position:relative;justify-self:center;width:100%;display:flex;justify-content:center}
.reel{position:relative;width:min(52vh,340px);aspect-ratio:9/16;max-height:70vh;border-radius:var(--r-lg);overflow:hidden;box-shadow:0 30px 60px -34px rgba(38,42,30,.45);background:var(--paper)}
.reel video{width:100%;height:100%;object-fit:cover;display:block}
.sound-btn{position:absolute;top:14px;right:14px;z-index:5;width:44px;height:44px;border-radius:50%;border:1px solid rgba(250,247,239,.5);background:rgba(38,42,30,.34);backdrop-filter:blur(6px);color:var(--cream);cursor:pointer;display:grid;place-items:center;transition:background .3s,transform .3s}
.sound-btn:hover{background:rgba(38,42,30,.6);transform:scale(1.06)}
.sound-btn svg{width:18px;height:18px}
.sound-btn .ic-on{display:none}
.sound-btn[aria-pressed="true"] .ic-on{display:block}
.sound-btn[aria-pressed="true"] .ic-off{display:none}

/* statement image band (Eatd-style) */
.statement .shot{border-radius:var(--r-lg)}
.statement__cap{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:1.4rem;flex-wrap:wrap}

/* ---------- splits / services ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center}
.split--wide-img{grid-template-columns:1.1fr .9fr}
.split--wide-text{grid-template-columns:.9fr 1.1fr}
.split__body{margin-top:1.3rem}.split__body p+p{margin-top:1em}
.split .actions,.actions.mt{margin-top:1.8rem}
.sec-intro{max-width:820px}
.sec-intro--center{margin-inline:auto;text-align:center}
.sec-intro .lede{margin-top:1.1rem}
.sec-intro--center .lede{margin-inline:auto}

.service{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center}
.service+.service{margin-top:clamp(3.5rem,7vw,7rem)}
.service:nth-child(even) .service__media{order:2}
.service__no{font-family:var(--serif);font-style:italic;font-size:1.05rem;color:var(--sage-deep);margin-bottom:.7rem}
.service .kicker-line{font-family:var(--serif);font-size:clamp(1.3rem,2.2vw,1.85rem);line-height:1.16;margin:.35rem 0 1.1rem;font-weight:500}

/* principles */
.principles{border-top:1px solid var(--line);margin-top:clamp(2.2rem,4.5vw,3.4rem)}
.principle{display:grid;grid-template-columns:auto 1fr 1.4fr;gap:clamp(1rem,3vw,3rem);align-items:baseline;padding:clamp(1.4rem,2.6vw,2.1rem) 0;border-bottom:1px solid var(--line)}
.principle__no{font-family:var(--serif);font-style:italic;font-size:1.05rem;color:var(--sage-deep)}
.principle__t{font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.7rem);color:var(--ink);line-height:1.14;font-weight:500}
.principle__d{color:var(--muted)}
@media (max-width:760px){.principle{grid-template-columns:auto 1fr;row-gap:.5rem}.principle__d{grid-column:1/-1;padding-left:2.2rem}}

/* steps (numbered index) */
.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.step{padding:clamp(1.6rem,2.2vw,2.2rem) clamp(1.1rem,1.5vw,1.6rem) clamp(2rem,3.4vw,2.8rem);border-right:1px solid var(--line)}
.step:last-child{border-right:none}
.step .bignum{font-family:var(--serif);font-style:italic;font-size:2rem;color:var(--sage-deep);margin-bottom:1rem;display:block}
.step h3{font-size:1.05rem;margin-bottom:.5rem}
.step p{font-size:.9rem;color:var(--muted)}
@media (max-width:860px){.steps{grid-template-columns:1fr 1fr}.step:nth-child(2n){border-right:none}.step{border-bottom:1px solid var(--line)}}
@media (max-width:520px){.steps{grid-template-columns:1fr}.step{border-right:none}}

/* weekly menu (index) */
.menu-list{border-top:1px solid var(--line)}
.menu-day{display:grid;grid-template-columns:.5fr 1fr 1.5fr;gap:clamp(1rem,3vw,3rem);padding:clamp(1.3rem,2.4vw,2rem) 0;border-bottom:1px solid var(--line);align-items:baseline;transition:padding-left .5s var(--ease)}
.menu-day:hover{padding-left:.7rem}
.menu-day__day{font-family:var(--serif);font-style:italic;color:var(--sage-deep);font-size:1rem}
.menu-day__title{font-family:var(--serif);font-size:clamp(1.2rem,1.9vw,1.65rem);line-height:1.12;font-weight:500}
.menu-day__items{color:var(--muted);font-size:.92rem;line-height:1.5}
.menu-day__items span:not(:last-child)::after{content:" · ";color:var(--sage)}
@media (max-width:820px){.menu-day{grid-template-columns:1fr}.menu-day__items{margin-top:.4rem}}
.menu-note{margin-top:2rem;font-family:var(--serif);font-style:italic;color:var(--muted);font-size:1.05rem}

/* board */
.board{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,5vw,4.5rem);align-items:start}
.board:nth-child(even) .board__media{order:2}
.board__serves{font-family:var(--serif);font-style:italic;color:var(--sage-deep);font-size:1.02rem;margin:.5rem 0 1.1rem}
.board__cols{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 2.2rem;margin:1.6rem 0 2rem;border-top:1px solid var(--line);padding-top:1.6rem}
.board__group h4{font-family:var(--sans);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sage-deep);margin:0 0 .6rem;font-weight:600}
.board__group ul{list-style:none;margin:0;padding:0}
.board__group li{font-family:var(--serif);font-size:1.02rem;padding:.14em 0;line-height:1.35}
@media (max-width:520px){.board__cols{grid-template-columns:1fr}}

/* trio */
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.4rem,3vw,2.4rem);align-items:start}
.trio__item .shot{margin-bottom:1.2rem}
.trio__item h3{font-size:1.2rem;margin-bottom:.4rem}
.trio__item p{color:var(--muted);font-size:.92rem}
@media (max-width:820px){.trio{grid-template-columns:1fr;gap:2rem}.trio__item{display:grid;grid-template-columns:.75fr 1.25fr;gap:1.4rem;align-items:center}.trio__item .shot{margin-bottom:0}}
@media (max-width:520px){.trio__item{grid-template-columns:1fr}}

/* pull quote */
.pull{font-family:var(--serif);font-weight:500;font-size:clamp(1.5rem,3vw,2.6rem);line-height:1.18;letter-spacing:-.005em;max-width:26ch}
.pull em,.pull .soft{font-style:italic;color:var(--sage-deep)}

/* ---------- forms ---------- */
.form-card{background:var(--ivory);border:1px solid var(--line);padding:clamp(1.6rem,4vw,3rem);border-radius:var(--r-lg)}
.field{margin-bottom:1.3rem}
.field label{display:block;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:.55rem}
.field .req{color:var(--clay)}
.field input,.field select,.field textarea{width:100%;font-family:var(--sans);font-size:.95rem;color:var(--ink);background:transparent;border:none;border-bottom:1.5px solid var(--line);padding:.6em 0;transition:border-color .4s var(--ease)}
.field textarea{resize:vertical;min-height:100px}
.field input::placeholder,.field textarea::placeholder{color:#a9a893}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--forest)}
.field select{appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235b6640' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right .2em center/13px no-repeat;padding-right:1.5em;cursor:pointer}
.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--clay)}
.field .err{display:none;color:var(--clay);font-size:.76rem;margin-top:.45rem;text-transform:none;font-weight:500;letter-spacing:0}
.field.invalid .err{display:block}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 1.6rem}
@media (max-width:640px){.grid-2{grid-template-columns:1fr}}
.choice-row{display:flex;flex-wrap:wrap;gap:.6rem}
.choice{position:relative}
.choice input{position:absolute;opacity:0;inset:0;cursor:pointer}
.choice span{display:inline-block;padding:.65em 1.1em;border:1px solid var(--line);border-radius:100px;font-size:.8rem;color:var(--muted);transition:all .3s var(--ease);cursor:pointer}
.choice input:checked+span{background:var(--forest);color:var(--cream);border-color:var(--forest)}
.choice input:focus-visible+span{outline:2px solid var(--forest);outline-offset:2px}
.form-success{display:none;text-align:center;padding:clamp(2rem,5vw,3.6rem) 1rem}
.form-success.show{display:block;animation:fadeUp .7s var(--ease)}
.form-success .mark{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--forest);display:grid;place-items:center;margin:0 auto 1.4rem}
.form-success .mark svg{width:22px;height:22px;stroke:var(--forest)}
form.hide{display:none}

/* ---------- footer (light) ---------- */
.site-foot{background:var(--ivory);color:var(--ink);padding-block:clamp(3.2rem,6vw,5.4rem) 2.2rem;border-top:1px solid var(--line)}
.foot-tagline{font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(1.4rem,2.8vw,2.3rem);color:var(--ink);margin-bottom:2.4rem;max-width:22ch;line-height:1.14}
.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:2.4rem}
.foot-brand img{height:34px;margin-bottom:1.2rem}
.foot-brand p{color:var(--muted);font-size:.9rem;max-width:34ch}
.foot-col h5{font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sage-deep);margin:0 0 1rem;font-weight:600}
.foot-col a{display:block;color:var(--muted);padding:.3em 0;font-size:.9rem;transition:color .3s,padding-left .3s}
.foot-col a:hover{color:var(--ink);padding-left:.3em}
.foot-news p{color:var(--muted);font-size:.88rem;margin-bottom:.9rem}
.foot-news form{display:flex;border-bottom:1.5px solid var(--line)}
.foot-news input{flex:1;background:transparent;border:none;color:var(--ink);font-family:var(--sans);font-size:.9rem;padding:.55em 0}
.foot-news input::placeholder{color:var(--muted-2)}
.foot-news input:focus{outline:none}
.foot-news button{background:none;border:none;color:var(--sage-deep);cursor:pointer;letter-spacing:.13em;text-transform:uppercase;font-size:.68rem;font-weight:600}
.foot-news button:hover{color:var(--forest)}
.foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:clamp(2.6rem,5vw,4.4rem);padding-top:1.6rem;border-top:1px solid var(--line)}
.foot-bottom p{color:var(--muted-2);font-size:.78rem;margin:0}
.foot-bottom .fine{display:flex;gap:1.4rem}
@media (max-width:900px){.foot-top{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}}
@media (max-width:520px){.foot-top{grid-template-columns:1fr}}

/* reveal */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}
.reveal.in{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:.08s}
.reveal[data-d="2"]{transition-delay:.16s}
.reveal[data-d="3"]{transition-delay:.24s}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important;transition:none}.shot img{transition:none}}

.center{text-align:center}
.mt-cta{margin-top:2rem}

@media (max-width:960px){
  .hero-split__grid{grid-template-columns:1fr;gap:2.4rem}
  .hero-media,.reel-wrap{justify-self:start}
  .reel{width:min(66vw,300px)}
}
@media (max-width:860px){
  .split,.service,.board{grid-template-columns:1fr;gap:2rem}
  .split--wide-img,.split--wide-text{grid-template-columns:1fr}
  .service:nth-child(even) .service__media{order:0}
  .board:nth-child(even) .board__media{order:0}
  .nav,.nav-cta{display:none}.burger{display:block}
}
@media (min-width:861px){.mobile-nav{display:none}}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--forest);outline-offset:3px;border-radius:2px}

/* ---------- trust badges ---------- */
.trust-eyebrow{display:flex;justify-content:center;margin:0 0 1.5rem}
.trust{display:grid;grid-template-columns:repeat(4,1fr);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.4rem,2.4vw,2rem) clamp(.6rem,1.2vw,1.2rem)}
.trust__item{display:flex;align-items:center;gap:.95rem;padding:.5rem clamp(.9rem,1.8vw,1.7rem);position:relative}
.trust__item+.trust__item::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);height:46px;width:1px;background:var(--line)}
.trust__ic{width:48px;height:48px;flex:none;border-radius:50%;background:var(--cream);border:1px solid var(--line);display:grid;place-items:center;color:var(--forest);transition:background .35s var(--ease),color .35s var(--ease),transform .35s var(--ease)}
.trust__ic svg{width:21px;height:21px}
.trust__item:hover .trust__ic{background:var(--forest);color:var(--cream);transform:translateY(-2px)}
.trust__txt{display:flex;flex-direction:column;line-height:1.2}
.trust__txt b{font-family:var(--sans);font-size:.85rem;font-weight:600;color:var(--ink);letter-spacing:.01em}
.trust__txt small{font-size:.74rem;color:var(--muted);margin-top:.2rem}
@media (max-width:820px){
  .trust{grid-template-columns:1fr 1fr}
  .trust__item{padding-block:1rem}
  .trust__item:nth-child(3)::before{display:none}
  .trust__item:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:440px){
  .trust{grid-template-columns:1fr}
  .trust__item+.trust__item::before{display:none}
  .trust__item+.trust__item{border-top:1px solid var(--line)}
}

/* ---------- dish showcase (name + order) ---------- */
.dishes{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.4rem,2.6vw,2.2rem)}
.dish .shot{margin-bottom:1rem;aspect-ratio:4/5}
.dish .shot img{height:100%;object-fit:cover}
.dish h3{font-size:1.12rem;margin-bottom:.35rem;line-height:1.15}
.dish p{color:var(--muted);font-size:.86rem;margin-bottom:.9rem}
.dish__row{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding-top:.9rem}
.dish__row .textlink{border:none;padding:0}
.dish__tag{font-family:var(--serif);font-style:italic;color:var(--sage-deep);font-size:.95rem}
@media (max-width:860px){.dishes{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.dishes{grid-template-columns:1fr}}

/* ---------- youtube feature ---------- */
.media-play{position:absolute;inset:0;display:grid;place-items:center;z-index:3}
.media-play span{width:70px;height:70px;border-radius:50%;background:rgba(250,247,239,.92);display:grid;place-items:center;transition:transform .35s var(--ease),background .35s;box-shadow:0 10px 30px -12px rgba(0,0,0,.4)}
.media-play span svg{width:24px;height:24px;fill:var(--forest);margin-left:4px}
a.yt-media:hover .media-play span{transform:scale(1.09);background:var(--cream)}
.yt-note{display:inline-flex;align-items:center;gap:.5em;color:var(--muted);font-size:.82rem;margin-top:1rem}
.yt-note svg{width:16px;height:16px;color:#c1352b}

/* call-to-order line */
.call-line{display:inline-flex;align-items:center;gap:.5em;font-size:.86rem;color:var(--muted)}
.call-line a{color:var(--ink);font-weight:600;border-bottom:1px solid var(--line);padding-bottom:1px}
.call-line a:hover{border-color:var(--forest);color:var(--forest)}
.call-line svg{width:15px;height:15px;color:var(--forest)}

/* ---------- dish price ---------- */
.dish__price{font-family:var(--serif);font-style:italic;color:var(--ink);font-size:1rem}
.menu-cta{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;margin-top:1.4rem}

/* ---------- what's included ---------- */
.included{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--cream)}
.included__i{padding:clamp(1.2rem,2.2vw,1.8rem) clamp(.8rem,1.4vw,1.2rem);text-align:center;border-right:1px solid var(--line)}
.included__i:last-child{border-right:none}
.included__n{font-family:var(--serif);font-style:italic;color:var(--sage-deep);font-size:.95rem;display:block;margin-bottom:.5rem}
.included__t{font-family:var(--serif);font-size:clamp(1rem,1.4vw,1.2rem);color:var(--ink);line-height:1.15}
@media (max-width:760px){.included{grid-template-columns:1fr 1fr}.included__i{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.included__i:nth-child(2n){border-right:none}}
@media (max-width:440px){.included{grid-template-columns:1fr}.included__i{border-right:none}}
.incl-note{margin-top:1.2rem;font-family:var(--serif);font-style:italic;color:var(--muted);font-size:1.05rem;display:flex;align-items:center;gap:.6em}
.incl-note svg{width:18px;height:18px;color:var(--clay);flex:none}

/* ---------- cacao band ---------- */
.cacao-imgs{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(.7rem,1.4vw,1.1rem);align-items:stretch}
.cacao-imgs .shot:first-child{grid-row:span 2}
.cacao-imgs .shot{height:100%}
.cacao-imgs .shot img{height:100%;object-fit:cover}
.price-pill{display:inline-flex;align-items:center;gap:.5em;background:var(--paper);border:1px solid var(--line);border-radius:100px;padding:.5em 1em;font-size:.82rem;color:var(--ink);font-weight:500}
.price-pill b{font-family:var(--serif);font-style:italic;font-weight:500}
@media (max-width:560px){.cacao-imgs{grid-template-columns:1fr 1fr}.cacao-imgs .shot:first-child{grid-row:auto;grid-column:span 2}}
