/* Generated from the design source by build_wp.py. Edit the source, not this file. */
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/bodoni-moda-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/bodoni-moda-latin-400-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/bodoni-moda-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/bodoni-moda-latin-500-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jost-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Jost';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jost-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Jost';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/jost-latin-400-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/bodoni-moda-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/bodoni-moda-latin-ext-400-italic.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/bodoni-moda-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/bodoni-moda-latin-ext-500-italic.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jost-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Jost';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jost-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Jost';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/jost-latin-ext-400-italic.woff2) format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* ============ TOKENS (from the Rooted Essence design system, 20 Sep 2026) ============ */
:root{
  --gold:#f8c761; --navy:#2c273e; --purple:#585081; --green:#42644b; --forest:#203822;
  --paper:#ffffff; --ink-raw:#202020;
  /* themeable roles */
  --surface:#f9f5ec; --surface-2:#f0e9dc; /* warm ivory ("newsprint") instead of pure white */ --ink:#202020; --ink-soft:rgba(32,32,32,.72);
  --hairline:rgba(32,32,32,.16); --accent:#2c273e; --accent-ink:#ffffff;
  --display:"Bodoni Moda","Playfair Display",Georgia,serif;
  --body:"Jost","Century Gothic",system-ui,sans-serif;
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--s10:144px;
  --r-sm:4px;--r-md:12px;--r-lg:24px;--r-full:999px;
  --wrap:1296px; --gutter:clamp(16px,5vw,72px); /* brandbook p.33: 12 cols, ~72px margins, 24px gutters, 4px rhythm */
  --ease:cubic-bezier(.2,.7,.1,1);
  color-scheme:light;
}
/* Single light theme by design: the brand site looks the same in every viewer theme. */

/* ============ BASE ============ */
[hidden]{display:none!important}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface);color:var(--ink);font:400 17px/1.65 var(--body);overflow-x:hidden}
img,svg{max-width:100%}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;margin:0;text-wrap:balance;letter-spacing:.005em}
p{margin:0;text-wrap:pretty}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
::selection{background:var(--gold);color:var(--navy)}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link:focus{z-index:90;top:12px;left:12px;width:auto;height:auto;clip:auto;padding:12px 18px;border-radius:var(--r-full);background:var(--gold);color:var(--navy);font:500 13px/1 var(--body);letter-spacing:.1em;text-transform:uppercase;text-decoration:none}

/* ============ TYPE SCALE ============ */
.t-hero{font-family:var(--display);font-size:clamp(48px,8.4vw,128px);line-height:.98;letter-spacing:-.01em}
.t-xl{font-family:var(--display);font-size:clamp(38px,5.2vw,76px);line-height:1.04}
.t-lg{font-family:var(--display);font-size:clamp(30px,3.6vw,48px);line-height:1.1}
.t-md{font-family:var(--display);font-size:clamp(24px,2.4vw,30px);line-height:1.2}
.t-lead{font-size:clamp(18px,1.6vw,21px);line-height:1.6;font-weight:400}
.t-sm{font-size:14.5px;line-height:1.6}
.eyebrow{font:500 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase}
.numeral{font-weight:400;font-variant-numeric:tabular-nums lining-nums;letter-spacing:.01em}
em,.ital{font-style:italic}
.measure{max-width:62ch}

/* ============ LAYOUT ============ */
.wrap{width:100%;max-width:calc(var(--wrap) + 2*var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}
.band{padding-block:clamp(64px,10vw,144px);position:relative}
.band--tight{padding-block:clamp(48px,7vw,96px)}
.stack{display:flex;flex-direction:column;gap:var(--s5)}
.rule{height:1px;background:var(--hairline);border:0;margin:0}

/* Mood fields — full-bleed grounds from the label system */
.field{--f-ink:var(--paper);--f-accent:var(--gold);--f-line:rgba(248,199,97,.32);color:var(--f-ink)}
.field--navy{background:var(--navy)}
.field--purple{background:var(--purple)}
.field--green{background:var(--green)}
.field--forest{background:var(--forest)}
.field--white{background:var(--surface);--f-ink:var(--ink);--f-accent:var(--accent);--f-line:var(--hairline)}
.field--gold{background:var(--gold);--f-ink:var(--navy);--f-accent:var(--navy);--f-line:rgba(44,39,62,.34)}
.field .accent{color:var(--f-accent)}
.field .rule{background:var(--f-line)}
/* On purple/green, gold only for display sizes ≥24px (4.2–4.6:1). Body text stays paper. */

/* Label frame — the die-cut border inset inside a field */
.frame{border:1px solid var(--f-line,var(--hairline));border-radius:var(--r-lg);padding:clamp(24px,4vw,56px)}

/* Icons: brand icon set (1.5px stroke, currentColor). Usage: <svg class="ico"><use href="#i-cup"/></svg> */
.ico{width:22px;height:22px;flex:none;display:inline-block;vertical-align:middle;color:currentColor}
.ico--sm{width:18px;height:18px}.ico--lg{width:32px;height:32px}
/* icon + text on one line: icon centred on the text, never taller than the line */
.with-ico{display:inline-flex;align-items:center;gap:.6em}
.with-ico>.ico{margin-block:-.25em}
.field .ico--accent{color:var(--f-accent)} /* gold on dark fields, navy on gold */
/* Brand marks (inline SVG symbols, currentColor) */
.logo-lockup{display:block;aspect-ratio:1660/405;height:auto}
.logo-mark{display:block;aspect-ratio:420/395;height:auto}

/* Product visuals from the Rooted Essence Brand Guidelines (p.36 cacao box, p.38 blue lotus pouch).
   Usage: <div class="prod-img prod-img--cacao" role="img" aria-label="..."></div> (aspect 3:2) */
.prod-img{display:block;width:100%;aspect-ratio:3/2;background-position:center;background-size:cover;background-repeat:no-repeat;border-radius:var(--r-lg);background-color:#e9e4dc}
.prod-img--cacao{background-color:#fff;background-image:url(../img/prod-img--cacao.jpg)}
.prod-img--lotus{background-image:url(../img/prod-img--lotus.jpg)}
/* photos are ~800px wide: never show wider than that so they stay sharp */
.prod-img{max-width:800px}
/* 4:5 crop on the front face of the box / pouch */
.prod-img--front{aspect-ratio:4/5;background-position:1% 50%}
.prod-img--cacao.prod-img--front{background-size:contain;background-position:50% 50%}
/* The Pair: two framed photos, same height, side by side */
.prod-duo{display:flex;gap:clamp(10px,1.6vw,20px);align-items:stretch;width:100%;max-width:800px}
.prod-duo>.prod-img{width:auto;min-width:0;max-width:none;box-shadow:0 0 0 1px rgba(255,255,255,.16)}
/* each tile is cropped to one pack front; flex-grow = aspect ratio, so both tiles end up the same height */
.prod-duo>.prod-img--cacao{flex:1 1 0;aspect-ratio:1/1;background-size:contain;background-position:50% 50%}
.prod-duo>.prod-img--lotus{flex:.732 1 0;aspect-ratio:366/500;background-size:auto 100%;background-position:3.1% 50%}
/* deep-green cacao box on a forest ground: a faint gold hairline keeps the photo edge readable */
.field--forest .prod-img{box-shadow:0 0 0 1px rgba(248,199,97,.26)}
/* Brandbook photography (p.39 farms/hands/preparation/cup, p.42 bowl, p.43 tote/journal). Small source files (~310-470 px wide): never display wider than their natural width.
   Usage: <div class="photo photo--farms" role="img" aria-label="..."></div> */
.photo{display:block;width:100%;background-position:center;background-size:cover;background-repeat:no-repeat;background-color:#e9e4dc;border-radius:var(--r-md)}
.photo--farms{background-image:url(../img/photo--farms.jpg)}
.photo--hands{background-image:url(../img/photo--hands.jpg)}
.photo--preparation{background-image:url(../img/photo--preparation.jpg)}
.photo--cup{background-image:url(../img/photo--cup.jpg)}
[data-page="sourcing"] .photo--tall.photo--cup, .photo--mug{background-image:url(../img/photo--mug.jpg);background-size:cover;background-position:50% 50%;max-width:none}
.photo--bowl{background-image:url(../img/photo--bowl.jpg)}
.photo--tote{background-image:url(../img/photo--tote.jpg)}
.photo--journal{background-image:url(../img/photo--journal.jpg)}
/* ============ CONTOUR — the brand's one motif (brandbook p.31–32) ============
   Thin parallel waves drawn from the emblem's arced strokes; gold at low opacity (colours frozen); dark grounds only;
   runs off the edge; always behind content, never under body text; never boxed. --left mirrors it to the left edge. */
.contour{position:relative;isolation:isolate;overflow:hidden}
.contour::before{content:"";position:absolute;z-index:-1;top:calc(76px + env(safe-area-inset-top,0px) + 32px);bottom:0;
  -webkit-mask-image:linear-gradient(to bottom,transparent,#000 22%);mask-image:linear-gradient(to bottom,transparent,#000 22%); /* clear space under the header lockup */
  right:-2%;width:min(40%,560px);pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20440%20900%22%20preserveAspectRatio%3D%22xMaxYMid%20slice%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23f8c761%22%20stroke-width%3D%221%22%20vector-effect%3D%22non-scaling-stroke%22%3E%3Cpath%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M140%20-20%20C-10%20190%20-10%20320%20140%20450%20S290%20710%20140%20920%22/%3E%3Cpath%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M180%20-20%20C30%20190%2030%20320%20180%20450%20S330%20710%20180%20920%22/%3E%3Cpath%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M220%20-20%20C70%20190%2070%20320%20220%20450%20S370%20710%20220%20920%22/%3E%3Cpath%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M260%20-20%20C110%20190%20110%20320%20260%20450%20S410%20710%20260%20920%22/%3E%3Cpath%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M300%20-20%20C150%20190%20150%20320%20300%20450%20S450%20710%20300%20920%22/%3E%3Cpath%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M340%20-20%20C190%20190%20190%20320%20340%20450%20S490%20710%20340%20920%22/%3E%3Cpath%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M380%20-20%20C230%20190%20230%20320%20380%20450%20S530%20710%20380%20920%22/%3E%3Cpath%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M420%20-20%20C270%20190%20270%20320%20420%20450%20S570%20710%20420%20920%22/%3E%3C/g%3E%3C/svg%3E") right center/100% 100% no-repeat;opacity:.42}
.contour--left::before{right:auto;left:-2%;transform:scaleX(-1);width:min(30%,420px)}
@media (max-width:700px){
  .contour::before{width:34%;opacity:.34}
  .contour--left::before{width:30%;bottom:auto;height:50%} /* keep the waves beside the headline, clear of the lead text below */
}

/* ============ PHOTOGRAPHY (brandbook p.39: real, matte, unstyled-but-considered) ============ */
.photo--farms{max-width:314px}.photo--hands{max-width:312px}.photo--preparation{max-width:313px}.photo--cup{max-width:312px}
.photo--bowl{max-width:473px}.photo--tote{max-width:417px}.photo--journal{max-width:416px}
.photo--tall{aspect-ratio:2/3}.photo--wide{aspect-ratio:3/2}.photo--card{aspect-ratio:4/5}
.photo-fig{margin:0;display:grid;gap:12px;align-content:start}
.photo-cap{font:400 12px/1.4 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
.field .photo-cap{color:inherit;opacity:.8}

/* ============ CARD (interface kit p.28): image + title + one quiet line, hairline, small radius ============ */
.card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:center;padding:16px;border:1px solid var(--hairline);border-radius:10px;background:var(--surface);color:var(--ink);text-decoration:none}
.card>.photo,.card>.prod-img{border-radius:6px;aspect-ratio:4/5}
.card__t{font:400 clamp(20px,1.7vw,24px)/1.2 var(--display)}
.card__l{margin-top:6px;font-size:14.5px;line-height:1.5;color:var(--ink-soft)}
a.card{transition:border-color .2s ease-out} a.card:hover{border-color:var(--ink)}

/* ============ QUOTE BAND (social template p.42): one line, big, on a dark ground, lots of space ============ */
.quote-band{padding-block:clamp(96px,12vw,192px)}
.quote-band blockquote em{white-space:nowrap}
.quote-band blockquote{margin:0;max-width:16ch;text-wrap:balance;font:400 clamp(38px,5.2vw,76px)/1.08 var(--display);letter-spacing:-.005em}

/* ============ PACK FACE (CSS rendition of the real label) ============ */
.pack{--p-bg:var(--gold);--p-ink:var(--navy);--p-name:var(--navy);container-type:inline-size;width:100%;aspect-ratio:2244/1417;background:var(--p-bg);color:var(--p-ink);
  border-radius:clamp(10px,2.2vw,22px);padding:4.2%;box-shadow:0 1px 0 rgba(0,0,0,.04)}
.pack--lotus{--p-bg:var(--purple);--p-ink:var(--paper);--p-name:var(--gold)}
.pack__frame{height:100%;border:1px solid currentColor;border-radius:8.5cqw;display:grid;grid-template-rows:auto 1fr auto auto;padding:3.6cqw 9cqw 4.4cqw;opacity:1}
.pack__lockup{width:82%;justify-self:center;color:var(--p-ink)}
.pack__name{align-self:end;font:400 7.2cqw/1 var(--display);letter-spacing:.01em;text-transform:uppercase;color:var(--p-name);white-space:nowrap}
.pack__line{font:400 max(2.9cqw,10px)/1.3 var(--body);margin-top:2.2cqw;margin-bottom:6cqw}
.pack__foot{display:flex;justify-content:space-between;align-items:baseline;font:400 5.4cqw/1 var(--body);letter-spacing:-.01em}
.pack--tilt{transform:rotate(-3deg)}

/* ============ BUTTONS ============ */
.btn{--b-bg:var(--navy);--b-ink:var(--paper);display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border-radius:10px;
  background:var(--b-bg);color:var(--b-ink);font:500 14px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border:1px solid var(--b-bg);cursor:pointer;
  transition:transform .25s var(--ease),background .25s,color .25s}
/* interface kit: hover darkens one step; focus = gold ring */
.btn:hover{background:color-mix(in srgb,var(--b-bg) 84%,#000);border-color:color-mix(in srgb,var(--b-bg) 84%,#000)}
.btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:10px}
/* on plain surfaces the default button follows the theme accent (navy in light, gold in dark); on colour fields it stays navy */
.btn{--b-bg:var(--accent);--b-ink:var(--accent-ink)}
.field .btn{--b-bg:var(--navy);--b-ink:var(--paper)}
.btn--gold,.field .btn--gold{--b-bg:var(--gold);--b-ink:var(--navy)}
.btn--ghost{background:transparent;color:currentColor;border-color:currentColor}
.btn--ghost:hover{background:color-mix(in srgb,currentColor 10%,transparent);border-color:currentColor}
/* white field: buttons follow theme accent, chips become plain hairline pills */
.field--white .btn{--b-bg:var(--accent);--b-ink:var(--accent-ink)}
.field--white .btn--gold{--b-bg:var(--gold);--b-ink:var(--navy)}
.link-arrow{display:inline-flex;align-items:center;gap:10px;font:500 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding-block:8px;border-bottom:1px solid currentColor}
.link-arrow::after{content:"";width:18px;height:1px;background:currentColor;transition:width .3s var(--ease)}
.link-arrow:hover::after{width:30px}

/* Chips — small solid pills (prices / weights / on-page jump links): hairline border, no fill */
.chip{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:7px 15px;border-radius:var(--r-full);font:400 14px/1 var(--body);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap;
  background:transparent;color:inherit;border:1px solid var(--f-line,var(--hairline));text-decoration:none;transition:border-color .2s}
a.chip:hover{border-color:currentColor}
.field--white .chip{color:var(--ink-soft)}

/* ============ HEADER (transparent over the hero; solid white bar once scrolled) ============ */
.site-head{position:fixed;inset:0 0 auto 0;z-index:50;padding-top:env(safe-area-inset-top,0px);transition:background .35s,box-shadow .35s}
.site-head__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--s5);height:76px}
.site-head{color:var(--paper)}
/* the ONE glass element on the site: the scrolled top menu (client, v3) */
.site-head.is-solid{background:rgba(249,245,236,.82);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);color:var(--ink);border-bottom:1px solid var(--hairline)}
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-head.is-solid{background:var(--surface)}}
.site-head[data-tone="gold"]:not(.is-solid){color:var(--navy)}
.site-head[data-tone="light"]:not(.is-solid){color:var(--ink)}
.site-head[data-tone="cacao"]:not(.is-solid){color:var(--forest)}
.site-head[data-tone="light"] .icon-btn:hover,.site-head.is-solid .icon-btn:hover{background:var(--hairline)}
.brand{display:block;width:clamp(170px,19vw,236px);color:inherit}
.nav{display:flex;align-items:center;gap:clamp(18px,2.4vw,34px)}
.nav a{font:500 12.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding-block:10px;position:relative}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:1px;background:currentColor;transition:right .3s var(--ease)}
.nav a:hover::after,.nav a[aria-current="page"]::after{right:0}
.nav-group{position:relative}
.nav-menu{position:absolute;top:100%;left:-20px;min-width:230px;padding:12px 0;background:var(--surface);color:var(--ink-raw);border:1px solid rgba(32,32,32,.12);border-radius:var(--r-md);
  display:grid;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s}
.nav-group:hover .nav-menu,.nav-group:focus-within .nav-menu{opacity:1;visibility:visible;transform:none}
.nav .nav-menu a{display:flex;align-items:center;gap:12px;padding:11px 20px;font:400 15px/1.2 var(--body);letter-spacing:.01em;text-transform:none}
.nav .nav-menu a::after{display:none}
.nav .nav-menu a:hover{background:#f6f4f0}
.nav-dot{width:10px;height:10px;border-radius:50%;flex:none}
.nav-menu__rule{height:1px;background:rgba(32,32,32,.12);margin:8px 20px}
.head-actions{display:flex;align-items:center;gap:6px}
.icon-btn{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--r-full);background:transparent;border:0;color:inherit;cursor:pointer;position:relative}
.icon-btn:hover{background:rgba(255,255,255,.12)}
.cart-count{position:absolute;top:5px;right:3px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--gold);color:var(--navy);font:500 11px/18px var(--body);text-align:center}
.cart-count[data-n="0"]{display:none}
.menu-btn{display:none}
@media (max-width:900px){
  .nav{display:none}
  .menu-btn{display:grid}
}
/* Mobile menu sheet */
.menu-sheet{position:fixed;inset:0;z-index:60;background:var(--navy);color:var(--paper);padding:calc(env(safe-area-inset-top,0px) + 96px) var(--gutter) 40px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}
.menu-sheet a{font:400 34px/1.25 var(--display);text-decoration:none;min-height:44px;display:flex;align-items:center}
.menu-sheet .eyebrow{color:var(--gold);margin-top:28px}
.menu-sheet__close{position:absolute;top:calc(env(safe-area-inset-top,0px) + 16px);right:var(--gutter)}

/* ============ PAGES ============ */
.page{display:block}
.page[hidden]{display:none!important}
.page-top{padding-top:calc(76px + env(safe-area-inset-top,0px))} /* for pages whose first band is not a full hero */

/* ============ FOOTER ============ */
.site-foot{background:var(--forest);border-top:1px solid rgba(248,199,97,.28);color:var(--paper);padding-block:clamp(64px,8vw,112px) 40px}
.foot-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:var(--s7)}
.foot-grid h3{font:500 12px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:var(--s5)}
.foot-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:15px}
.foot-grid a{text-decoration:none;opacity:.86}.foot-grid a:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}
.foot-sign{font:italic 400 clamp(26px,2.6vw,34px)/1.2 var(--display);color:var(--gold)}
.foot-base{margin-top:clamp(56px,7vw,96px);padding-top:28px;border-top:1px solid rgba(248,199,97,.24);display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;font-size:13px;opacity:.8}
@media (max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}.foot-grid>:first-child{grid-column:1/-1}}

/* ============ CART DRAWER ============ */
.scrim{position:fixed;inset:0;z-index:70;background:rgba(20,17,30,.46);opacity:0;transition:opacity .3s}
.scrim.is-open{opacity:1}
.drawer{position:fixed;z-index:71;top:0;right:0;bottom:0;width:min(440px,100%);background:var(--surface);color:var(--ink);display:flex;flex-direction:column;
  transform:translateX(100%);transition:transform .45s var(--ease);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.drawer.is-open{transform:none}
.drawer__head{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--hairline)}
.drawer__body{flex:1;overflow:auto;padding:8px 24px}
.drawer__foot{padding:24px;border-top:1px solid var(--hairline);display:grid;gap:14px}
.line{display:grid;grid-template-columns:64px 1fr auto;gap:16px;align-items:center;padding-block:18px;border-bottom:1px solid var(--hairline)}
.line__swatch{width:64px;height:80px;border-radius:10px}
.line:has(.line__swatch.prod-img){grid-template-columns:84px 1fr auto}
.line__swatch.prod-img{width:84px;max-width:84px;height:64px;aspect-ratio:auto;border-radius:10px;box-shadow:0 0 0 1px var(--hairline);background-color:#fff;background-size:contain;background-position:center}
.qty{display:inline-flex;align-items:center;border:1px solid var(--hairline);border-radius:var(--r-full)}
.qty button{width:34px;height:34px;border:0;background:none;color:inherit;cursor:pointer;font-size:17px}
.qty span{min-width:22px;text-align:center;font-variant-numeric:tabular-nums}
.remove{background:none;border:0;color:var(--ink-soft);font-size:13px;text-decoration:underline;cursor:pointer;padding:4px 0}
.drawer .btn{width:100%}
.notice{font-size:13.5px;color:var(--ink-soft)}

/* Drawer actions: View basket + Checkout */
.drawer__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.drawer__actions .btn{padding:0 14px}

/* ============ CHECKOUT CHROME (sections with data-chrome="checkout": cart → pay flow) ============
   Simplified header (logo · Secure checkout · back to basket) and a minimal footer with legal links only.
   WooCommerce: a separate block-theme template part "header-checkout" / "footer-checkout" used by the Checkout + order pages. */
.head-secure,.head-basket{display:none}
body[data-chrome="checkout"] .nav,body[data-chrome="checkout"] .menu-btn,body[data-chrome="checkout"] #cartBtn{display:none}
body[data-chrome="checkout"] .head-secure{display:block;font:500 12px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;opacity:.86;white-space:nowrap}
body[data-chrome="checkout"] .head-basket{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 4px;font:500 12px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;white-space:nowrap}
body[data-chrome="checkout"] .head-basket:hover span{text-decoration:underline;text-underline-offset:5px}
body[data-chrome="checkout"] .foot-grid{display:none}
body[data-chrome="checkout"] .site-foot{padding-block:40px 32px}
body[data-chrome="checkout"] .foot-base{margin-top:0;padding-top:24px}
.foot-legal{display:none}
body[data-chrome="checkout"] .foot-legal{display:flex;flex-wrap:wrap;gap:8px 28px;list-style:none;margin:0;padding:0;font-size:14px}
.foot-legal a{display:inline-block;padding-block:8px;text-decoration:none;opacity:.86}
.foot-legal a:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}
@media (max-width:520px){
  body[data-chrome="checkout"] .site-head__bar{gap:12px}
  body[data-chrome="checkout"] .brand{width:150px}
  body[data-chrome="checkout"] .head-secure{font-size:10.5px;letter-spacing:.12em}
  body[data-chrome="checkout"] .head-basket span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}

/* Toast */
.toast{position:fixed;z-index:80;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);opacity:0;background:var(--navy);color:var(--paper);
  padding:14px 22px;border-radius:var(--r-full);font-size:14.5px;transition:all .35s var(--ease);pointer-events:none;max-width:calc(100% - 32px);text-align:center}
.toast.is-on{opacity:1;transform:translate(-50%,0)}

/* Forms */
.field-input{width:100%;min-height:52px;padding:14px 18px;border-radius:var(--r-md);border:1px solid var(--hairline);background:var(--surface);color:var(--ink);font:400 16px/1.4 var(--body)}
textarea.field-input{min-height:150px;resize:vertical}
.field-input:focus{outline:2px solid var(--gold);outline-offset:1px}
label.lbl{display:block;font:500 12px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}

/* Motion */
/* brandbook p.34: fade and settle, 200–300ms, ease-out, ≤24px, no bounce */
.reveal{animation:settle .3s cubic-bezier(.2,.7,.2,1) both}
@keyframes settle{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}



/* Social links (Facebook) */
.social-link{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font:500 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;min-height:44px}
.social-link:hover{text-decoration:underline;text-underline-offset:5px}
.social-link--foot{color:var(--gold);align-self:start}
.social-link--foot .ico{width:22px;height:22px}
.menu-sheet a.social-link--menu{font:500 14px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;gap:12px}
.head-social{display:none}
@media (min-width:901px){.head-social{display:grid}}
body[data-chrome="checkout"] .head-social{display:none}

/* Cookie choices: a small card, never a wall; both choices equally easy */
.cookie{position:fixed;z-index:65;left:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));width:min(440px,calc(100% - 48px));display:grid;gap:12px;padding:22px 22px 20px;border:1px solid var(--hairline);border-radius:14px;background:var(--surface);color:var(--ink);box-shadow:0 18px 50px -20px rgba(20,17,30,.45)}
.cookie[hidden]{display:none}
.cookie__t{font:400 22px/1.2 var(--display)}
.cookie__x{font-size:14.5px;line-height:1.55;color:var(--ink-soft)}
.cookie__x a{color:var(--ink);text-underline-offset:3px}
.cookie__b{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}
.cookie__b .btn{min-height:44px;padding:0 12px;font-size:12.5px}
@media (max-width:560px){.cookie{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:auto;padding:18px}}
.foot-cookie{background:none;border:0;padding:0;color:inherit;font:inherit;opacity:.86;cursor:pointer;text-align:left}
.foot-cookie:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}

/* ======== PAGE CSS (from page modules) ======== */
/* ============ PAGE ANIMATIONS (22 Oct 2026) ============
   Scroll reveal: blocks fade and rise as they come into view (needs JS; html.js-anim is set in <head>).
   Hero entrance (home): headline, gold line, buttons, then the drawing fades in.
   Everything is off for visitors who ask their device for reduced motion. */
html.js-anim .rv{opacity:0;translate:0 26px;transition:opacity .9s cubic-bezier(.2,.7,.2,1),translate .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--rv-d,0ms)}
html.js-anim .rv.is-in{opacity:1;translate:0 0}
@keyframes re-rise{from{opacity:0;translate:0 30px}to{opacity:1;translate:0 0}}
@keyframes re-fade{from{opacity:0}to{opacity:1}}
[data-page="home"] .h-hero h1{animation:re-rise 1s cubic-bezier(.2,.7,.2,1) .1s both}
[data-page="home"] .h-hero__sub{animation:re-rise 1s cubic-bezier(.2,.7,.2,1) .35s both}
[data-page="home"] .h-hero__cta{animation:re-rise 1s cubic-bezier(.2,.7,.2,1) .55s both}
[data-page="home"] .h-hero__mark{animation:re-fade 1.1s ease-out .2s both}
@media (prefers-reduced-motion:reduce){html.js-anim .rv{opacity:1;translate:none}}


/* home */

/* ---------- HERO ---------- */
[data-page="home"] .h-hero{position:relative;overflow:hidden;isolation:isolate;
  padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(56px,8vw,120px));padding-bottom:clamp(64px,8vw,120px)}
[data-page="home"] .h-hero__text{position:relative;z-index:2;max-width:min(760px,62%)}
[data-page="home"] .h-hero h1{max-width:9.5ch}
[data-page="home"] .h-hero h1 em{color:var(--gold);display:inline-block;padding-right:.06em}
[data-page="home"] .h-hero__sub{margin-top:clamp(24px,2.6vw,36px);max-width:34ch;opacity:.92}
[data-page="home"] .h-hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(32px,3.6vw,48px)}
[data-page="home"] .h-hero__art{position:absolute;z-index:0;width:clamp(460px,50vw,780px);right:-7vw;bottom:-19%;pointer-events:none}
[data-page="home"] .h-hero__mark{width:100%;color:var(--gold)}

/* ---------- SECTION HEAD (shared) ---------- */
[data-page="home"] .h-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s4);align-items:start;margin-bottom:clamp(36px,4.6vw,64px)}
[data-page="home"] .h-head h2{grid-column:1/8}
[data-page="home"] .h-head h2 em{font-style:italic}
[data-page="home"] .h-head p{grid-column:1/7;max-width:46ch;color:var(--ink-soft);font-size:clamp(16px,1.3vw,18px);line-height:1.6}

/* ---------- CATEGORY TILES ---------- */
[data-page="home"] .cats{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:1fr 1fr;gap:clamp(12px,1.4vw,20px)}
[data-page="home"] .cat{position:relative;display:grid;text-decoration:none;overflow:hidden;padding:clamp(24px,3vw,44px);transition:transform .5s var(--ease)}
[data-page="home"] .cat h3{font-size:clamp(30px,3.2vw,46px);line-height:1.04}
[data-page="home"] .cat h3 em{font-style:italic}
[data-page="home"] .cat__line{margin-top:12px;font-size:15.5px;line-height:1.55;max-width:34ch}
[data-page="home"] .cat__foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:var(--s5)}
[data-page="home"] .cat .link-arrow{pointer-events:none}
[data-page="home"] .cat:hover .link-arrow::after{width:30px}
[data-page="home"] .cat .pack{transition:transform .6s var(--ease)}
[data-page="home"] .cat:focus-visible{outline-offset:4px}

[data-page="home"] .cat--cacao{grid-row:1/3;grid-template-rows:1fr auto;row-gap:clamp(32px,4vw,56px);min-height:clamp(560px,50vw,720px)}
[data-page="home"] .cat--cacao .cat__art{display:grid;place-items:center;padding-top:clamp(8px,2vw,32px)}
[data-page="home"] .cat--cacao .pack{width:min(78%,480px);transform:rotate(-3deg);box-shadow:0 0 0 1px rgba(44,39,62,.22)}
[data-page="home"] .cat--cacao:hover .pack{transform:rotate(-1.5deg) translateY(-4px)}

[data-page="home"] .cat--lotus,[data-page="home"] .cat--sets{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:var(--s5);align-items:end}
[data-page="home"] .cat--lotus .cat__art,[data-page="home"] .cat--sets .cat__art{align-self:center}
[data-page="home"] .cat--lotus .pack{transform:rotate(3deg);box-shadow:0 0 0 1px rgba(255,255,255,.22)}
[data-page="home"] .cat--lotus:hover .pack{transform:rotate(1.5deg) translateY(-3px)}
[data-page="home"] .cat--lotus h3 em,[data-page="home"] .cat--sets h3 em{color:var(--gold)}
[data-page="home"] .duo{position:relative;aspect-ratio:1/.92}
[data-page="home"] .duo .pack{position:absolute;width:86%}
[data-page="home"] .duo .pack--cacao{left:0;top:4%;transform:rotate(-5deg)}
[data-page="home"] .duo .pack--lotus{right:0;bottom:4%;transform:rotate(4deg)}
[data-page="home"] .cat--sets:hover .duo .pack--cacao{transform:rotate(-6deg) translate(-3px,-3px)}
[data-page="home"] .cat--sets:hover .duo .pack--lotus{transform:rotate(5deg) translate(3px,3px)}

/* ---------- PROMISE STRIP ---------- */
[data-page="home"] .h-promise{margin-top:clamp(40px,5vw,72px);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
[data-page="home"] .h-promise ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,auto);justify-content:space-between;align-items:center}
[data-page="home"] .h-promise li{padding:24px 0;color:var(--ink);display:flex;align-items:center;gap:clamp(20px,3vw,48px)}
[data-page="home"] .h-promise li + li::before{content:"";width:1px;height:28px;background:var(--hairline)}
[data-page="home"] .h-promise__last{font:italic 400 19px/1 var(--display);letter-spacing:.01em;text-transform:none}

/* ---------- SHOP BY MOMENT ---------- */
[data-page="home"] .h-moments-band{padding-top:clamp(48px,6vw,96px)}
[data-page="home"] .moments{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}
[data-page="home"] .moment{display:flex;flex-direction:column;padding:clamp(24px,2.6vw,36px) clamp(20px,2.4vw,36px) 4px}
[data-page="home"] .moment:first-child{padding-left:0}
[data-page="home"] .moment + .moment{border-left:1px solid var(--hairline)}
[data-page="home"] .moment__when{font:italic 400 clamp(26px,2.4vw,34px)/1.1 var(--display)}
[data-page="home"] .moment__q{margin-top:clamp(28px,3vw,44px);font:400 clamp(40px,4.2vw,60px)/1 var(--body);letter-spacing:-.02em;font-variant-numeric:lining-nums}
[data-page="home"] .moment__q small{font-size:.4em;letter-spacing:.02em;margin-left:6px}
[data-page="home"] .moment__what{margin-top:10px;font:500 12px/1.4 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
[data-page="home"] .moment p{margin-top:var(--s4);font-size:15.5px;line-height:1.6;color:var(--ink-soft);max-width:32ch}
[data-page="home"] .moment__links{margin-top:auto;padding-top:var(--s5);display:flex;flex-wrap:wrap;gap:8px 24px}
[data-page="home"] .moment .link-arrow{color:var(--ink)}

/* ---------- PHILOSOPHY (navy) ---------- */
[data-page="home"] .h-phil{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s6);align-items:end}
[data-page="home"] .h-phil h2{grid-column:1/7}
[data-page="home"] .h-phil__body{grid-column:8/13}
[data-page="home"] .h-phil__body p{font-size:clamp(18px,1.5vw,21px);line-height:1.6;max-width:38ch}
[data-page="home"] .h-phil__body .link-arrow{margin-top:var(--s6);color:var(--gold)}

/* ---------- JOURNAL ---------- */
[data-page="home"] .h-journal{display:grid;grid-template-columns:4fr 8fr;gap:clamp(40px,6vw,96px)}
[data-page="home"] .h-journal__intro h2 em{font-style:italic}
[data-page="home"] .h-journal__intro p{color:var(--ink-soft);margin-top:var(--s5);max-width:34ch}
[data-page="home"] .h-journal__intro .link-arrow{margin-top:var(--s6);color:var(--ink)}
[data-page="home"] .posts{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
[data-page="home"] .post{display:grid;grid-template-columns:1fr auto;gap:var(--s5);align-items:baseline;padding:clamp(24px,2.6vw,36px) 0;border-bottom:1px solid var(--hairline)}
[data-page="home"] .post h3{font-size:clamp(24px,2.3vw,32px);line-height:1.15}
[data-page="home"] .post p{color:var(--ink-soft);margin-top:8px;font-size:15.5px}
[data-page="home"] .post__soon{font:italic 400 16px/1 var(--display);color:var(--ink-soft);white-space:nowrap}

/* ---------- JOIN (gold) ---------- */
[data-page="home"] .h-join .frame{display:grid;grid-template-columns:5fr 6fr;gap:clamp(32px,5vw,80px);align-items:end;padding:clamp(28px,5vw,72px)}
[data-page="home"] .h-join h2{font-size:clamp(56px,8vw,112px);line-height:.95}
[data-page="home"] .h-join__lead{max-width:40ch;margin-bottom:var(--s6)}
[data-page="home"] .h-join .lbl{color:var(--navy)}
[data-page="home"] .h-join__row{display:flex;gap:10px}
[data-page="home"] .h-join__row .field-input{flex:1;min-width:0;border-radius:10px;padding-inline:22px;background:#fff;color:#202020;border-color:rgba(44,39,62,.34)}
[data-page="home"] .h-join__row .field-input::placeholder{color:rgba(32,32,32,.5)}
[data-page="home"] .h-join__row .field-input:focus{outline-color:var(--navy)}
[data-page="home"] .h-join__row .btn{min-height:52px;flex:none}
[data-page="home"] .h-join__micro{margin-top:14px;font-size:14px}
[data-page="home"] .h-join [data-form-result]{margin-top:var(--s4);font:italic 400 20px/1.35 var(--display);color:var(--navy)}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1100px){
  [data-page="home"] .h-promise ul{grid-template-columns:1fr 1fr;justify-content:stretch}
  [data-page="home"] .h-promise li{padding:18px 0}
  [data-page="home"] .h-promise li + li::before{display:none}
  [data-page="home"] .h-promise li:nth-child(2n){padding-left:var(--s5);border-left:1px solid var(--hairline)}
  [data-page="home"] .h-promise li:nth-child(n+3){border-top:1px solid var(--hairline)}
}
@media (max-width:960px){
  [data-page="home"] .cats{grid-template-columns:1fr;grid-template-rows:none}
  [data-page="home"] .cat--cacao{grid-row:auto;min-height:0}
  [data-page="home"] .moments{grid-template-columns:1fr}
  [data-page="home"] .moment,[data-page="home"] .moment:first-child{padding:28px 0 32px}
  [data-page="home"] .moment + .moment{border-left:0;border-top:1px solid var(--hairline)}
  [data-page="home"] .moment__q{margin-top:var(--s5)}
}
@media (max-width:900px){
  [data-page="home"] .h-hero__text{max-width:58%}
  [data-page="home"] .h-hero__art{width:clamp(300px,52vw,470px);right:-9vw;top:calc(76px + env(safe-area-inset-top,0px) + 24px);bottom:auto}
  [data-page="home"] .h-head h2,[data-page="home"] .h-head p{grid-column:1/-1}
  [data-page="home"] .h-phil h2,[data-page="home"] .h-phil__body{grid-column:1/-1}
  [data-page="home"] .h-journal{grid-template-columns:1fr}
  [data-page="home"] .h-join .frame{grid-template-columns:1fr;align-items:start}
}
@media (max-width:560px){
  [data-page="home"] .h-hero__text{max-width:none}
  [data-page="home"] .h-hero{padding-bottom:56px}
  [data-page="home"] .h-hero__art{display:none}
  [data-page="home"] .cat--lotus,[data-page="home"] .cat--sets{grid-template-columns:1fr;row-gap:var(--s6)}
  [data-page="home"] .cat--lotus .cat__art,[data-page="home"] .cat--sets .cat__art{order:-1;width:82%;justify-self:center}
  [data-page="home"] .cat--cacao .pack{width:86%}
  [data-page="home"] .h-promise ul{grid-template-columns:1fr}
  [data-page="home"] .h-promise li:nth-child(2n){padding-left:0;border-left:0}
  [data-page="home"] .h-promise li:nth-child(n+2){border-top:1px solid var(--hairline)}
  [data-page="home"] .post{grid-template-columns:1fr;gap:10px}
  [data-page="home"] .h-hero h1{font-size:clamp(48px,15vw,64px)}
  [data-page="home"] .h-hero__cta .btn{flex:1 1 100%}
  [data-page="home"] .h-join__row{flex-direction:column}
}

/* product photos in the category tiles */
[data-page="home"] .cat--cacao h3 em{color:var(--gold)}
[data-page="home"] .cat--cacao .prod-img{width:100%;transition:transform .6s var(--ease)}
[data-page="home"] .cat--cacao:hover .prod-img{transform:translateY(-4px)}
[data-page="home"] .cat--lotus .prod-img{transition:transform .6s var(--ease)}
[data-page="home"] .cat--lotus:hover .prod-img{transform:translateY(-3px)}
[data-page="home"] .cat--sets .prod-duo{max-width:none}

/* philosophy: headline + text on the left, the bowl on the right */
[data-page="home"] .h-phil{align-items:start}
[data-page="home"] .h-phil h2{grid-column:1/7;grid-row:1}
[data-page="home"] .h-phil__body{grid-column:1/7;grid-row:2}
[data-page="home"] .h-phil__fig{grid-column:8/13;grid-row:1/3;justify-self:end;width:100%;max-width:473px}
@media (max-width:900px){[data-page="home"] .h-phil h2,[data-page="home"] .h-phil__body,[data-page="home"] .h-phil__fig{grid-column:1/-1;grid-row:auto;justify-self:start}}
[data-page="home"] .h-hero h1{max-width:none;font-size:clamp(42px,6.6vw,104px)}
@media (min-width:901px){[data-page="home"] .h-hero__text{max-width:min(1040px,80%)}}
[data-page="home"] .h-hero__sub{font-family:var(--display);font-style:italic;color:var(--gold);font-size:clamp(28px,3.6vw,54px);line-height:1.12;max-width:none;opacity:1;margin-top:clamp(10px,1.2vw,18px)}
[data-page="home"] .h-hero__cta{margin-top:clamp(36px,5vw,72px)}
@media (min-width:561px) and (max-width:900px){[data-page="home"] .h-hero h1{font-size:5.6vw}[data-page="home"] .h-hero__text{max-width:64%}[data-page="home"] .h-hero__art{width:40vw;right:-6vw}}

/* shop */

/* ---- commerce kit (shared by shop, shop-cacao, shop-lotus, sets, cacao, blue-lotus) ---- */
[data-page="shop"]{--k-sel:var(--navy);--k-sel-ink:var(--paper)}
[data-page="shop"] .field{--k-sel:var(--f-ink);--k-sel-ink:var(--k-ground,var(--navy))}
[data-page="shop"] .k-hero{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(64px,10vw,144px));padding-bottom:clamp(56px,8vw,112px)}
[data-page="shop"] .k-hero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,6vw,96px);align-items:end}
[data-page="shop"] .k-hero__side{display:grid;gap:24px;padding-bottom:.7em;max-width:40ch}
[data-page="shop"] .k-hero__side .rule{width:120px}
[data-page="shop"] .k-hero h1 em{font-style:italic}

/* buttons in the world colours */
[data-page="shop"] .btn.k-forest{--b-bg:var(--forest);--b-ink:var(--paper)}
[data-page="shop"] .btn.k-paper{--b-bg:var(--paper);--b-ink:var(--navy)}
[data-page="shop"] .btn.k-paper-p{--b-bg:var(--paper);--b-ink:var(--purple)}
[data-page="shop"] .k-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}

/* size pills: real radios */
[data-page="shop"] .pills{border:0;margin:0;padding:0;min-width:0}
[data-page="shop"] .pills legend{padding:0;margin-bottom:12px}
[data-page="shop"] .pills__row{display:flex;gap:8px;flex-wrap:wrap}
[data-page="shop"] .pill{position:relative;display:block}
[data-page="shop"] .pill input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
[data-page="shop"] .pill span{display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:48px;padding:0 22px;border:1px solid var(--f-line,var(--hairline));border-radius:var(--r-full);font:400 15.5px/1 var(--body);font-variant-numeric:tabular-nums;letter-spacing:.02em;transition:background .2s,color .2s,border-color .2s}
[data-page="shop"] .pill:hover span{border-color:currentColor}
[data-page="shop"] .pill input:checked+span{background:var(--k-sel);border-color:var(--k-sel);color:var(--k-sel-ink)}
[data-page="shop"] .pill input:focus-visible+span{outline:2px solid currentColor;outline-offset:3px}

/* price */
[data-page="shop"] .k-price{display:flex;align-items:baseline;gap:14px;font-size:22px}
[data-page="shop"] .k-price .eyebrow{opacity:.72}

/* a dark panel that a pack sits on */
[data-page="shop"] .k-stage{border-radius:var(--r-lg);padding:clamp(20px,3vw,44px);display:grid;place-items:center}
[data-page="shop"] .k-stage--navy{background:var(--navy)}
[data-page="shop"] .k-stage--forest{background:var(--forest)}

/* The Pair: two pack faces overlapping */
[data-page="shop"] .k-pair{position:relative;width:100%;aspect-ratio:10/7}
[data-page="shop"] .k-pair .pack{position:absolute;width:66%}
[data-page="shop"] .k-pair .pack--cacao{left:1%;top:2%;transform:rotate(-3deg)}
[data-page="shop"] .k-pair .pack--lotus{right:1%;bottom:2%;transform:rotate(2deg);box-shadow:0 0 0 1px rgba(255,255,255,.08)}

/* product block on white */
[data-page="shop"] .k-prod{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
[data-page="shop"] .k-prod__visual{display:block;text-decoration:none;padding:clamp(0px,2vw,24px)}
[data-page="shop"] .k-prod__visual .pack{transition:transform .5s var(--ease)}
[data-page="shop"] .k-prod__visual:hover .pack{transform:translateY(-4px) rotate(-1deg)}
[data-page="shop"] .k-prod__info{display:grid;gap:26px;align-content:start}
[data-page="shop"] .k-name{font-size:clamp(34px,3.6vw,52px);line-height:1.04}
[data-page="shop"] .k-name small{display:inline-block;font-size:max(15px,.36em);letter-spacing:.06em;vertical-align:1.3em;margin-left:.22em}
[data-page="shop"] .k-latin{font:italic 400 clamp(20px,1.8vw,24px)/1.2 var(--display);margin-top:10px}
[data-page="shop"] .k-desc{color:var(--ink-soft);max-width:46ch}
[data-page="shop"] .field .k-desc{color:inherit;opacity:.92}
[data-page="shop"] .k-meta{display:grid;grid-template-columns:auto 1fr;margin:0;font-size:15px;border-top:1px solid var(--f-line,var(--hairline))}
[data-page="shop"] .k-meta dt,[data-page="shop"] .k-meta dd{margin:0;padding-block:12px;border-bottom:1px solid var(--f-line,var(--hairline))}
[data-page="shop"] .k-meta dt{font:500 11.5px/1.9 var(--body);letter-spacing:.16em;text-transform:uppercase;padding-top:14px;padding-right:28px}
[data-page="shop"] .k-meta em{font-style:italic}
[data-page="shop"] .k-small{font-size:14.5px;line-height:1.6;color:var(--ink-soft)}
[data-page="shop"] .field .k-small{color:inherit;opacity:.86}

/* link rows (learn more) */
[data-page="shop"] .k-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
[data-page="shop"] .k-split>header{display:grid;gap:22px;align-content:start}
[data-page="shop"] .k-links{list-style:none;margin:0;padding:0;border-top:1px solid var(--f-line,var(--hairline))}
[data-page="shop"] .k-links li{border-bottom:1px solid var(--f-line,var(--hairline))}
[data-page="shop"] .k-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;align-items:center;padding:26px 0;text-decoration:none;min-height:44px}
[data-page="shop"] .k-link b{font:400 clamp(24px,2.4vw,32px)/1.15 var(--display)}
[data-page="shop"] .k-link span{grid-column:1;opacity:.86;font-size:15.5px}
[data-page="shop"] .k-link i{grid-row:1/3;grid-column:2;display:block;width:28px;height:1px;background:currentColor;position:relative;transition:width .3s var(--ease)}
[data-page="shop"] .k-link i::after{content:"";position:absolute;right:0;top:-4px;width:9px;height:9px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);transform-origin:center}
[data-page="shop"] .k-link:hover i{width:44px}
[data-page="shop"] .k-link:focus-visible{outline-offset:4px}

/* Pair teaser */
[data-page="shop"] .k-teaser{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
[data-page="shop"] .k-teaser__text{display:grid;gap:24px;justify-items:start}
[data-page="shop"] .k-teaser__text h2 em{font-style:italic}

@media (max-width:900px){
  [data-page="shop"] .k-hero__grid,[data-page="shop"] .k-prod,[data-page="shop"] .k-split,[data-page="shop"] .k-teaser{grid-template-columns:1fr}
  [data-page="shop"] .k-prod__visual{padding:0}
}
@media (max-width:620px){
  [data-page="shop"] .k-actions .btn{flex:1 1 100%}
  [data-page="shop"] .k-link{padding:22px 0}
}
/* small, decorative pack faces: let the tagline scale like the printed label instead of wrapping */
[data-page="shop"] .k-pair .pack__line,[data-page="shop"] .st-cat .pack__line,[data-page="shop"] .x-item .pack__line{font-size:2.9cqw;white-space:nowrap}

/* ---- shop (all) ---- */
[data-page="shop"] .sh-range{padding-block:clamp(64px,9vw,128px)}
[data-page="shop"] .sh-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,112px)}
[data-page="shop"] .sh-item{display:grid;align-content:start;gap:clamp(28px,3vw,40px)}

[data-page="shop"] .sh-packlink{display:block;text-decoration:none;transition:transform .5s var(--ease)}
[data-page="shop"] .sh-packlink:hover{transform:translateY(-4px) rotate(-1deg)}
[data-page="shop"] .sh-info{display:grid;gap:22px}
[data-page="shop"] .sh-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--hairline)}
[data-page="shop"] .sh-name{font-size:clamp(30px,3.2vw,44px);line-height:1.05}
[data-page="shop"] .sh-name small{display:inline-block;font-size:max(15px,.4em);letter-spacing:.06em;vertical-align:1.05em;margin-left:.2em}
[data-page="shop"] .sh-cat{font-size:14.5px;color:var(--ink-soft);margin-top:8px}
[data-page="shop"] .sh-cat a{text-underline-offset:4px}
[data-page="shop"] .sh-price{font-size:20px;white-space:nowrap}
[data-page="shop"] .sh-buy{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:20px 28px}

/* moments (gold band) */
[data-page="shop"] .sm-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,6vw,96px);align-items:end;margin-bottom:clamp(40px,5vw,72px)}
[data-page="shop"] .sm-head h2 em{font-style:italic}
[data-page="shop"] .sm-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--navy)}
[data-page="shop"] .sm-row{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,5fr) minmax(0,3.2fr);gap:12px clamp(24px,4vw,64px);align-items:baseline;padding:clamp(28px,3vw,40px) 0;border-bottom:1px solid var(--f-line)}
[data-page="shop"] .sm-row h3{font-size:clamp(32px,3.6vw,52px);line-height:1.02}
[data-page="shop"] .sm-row h3 em{font-style:italic}
[data-page="shop"] .sm-what{display:grid;gap:6px}
[data-page="shop"] .sm-what b{font:500 12px/1.4 var(--body);letter-spacing:.16em;text-transform:uppercase}
[data-page="shop"] .sm-links{display:flex;flex-wrap:wrap;gap:14px 28px;justify-content:flex-end;align-items:center}
[data-page="shop"] .sm-note{margin-top:24px;font-size:14.5px}

/* pair + trust (white) */
[data-page="shop"] .sh-trust{list-style:none;margin:clamp(72px,9vw,128px) 0 0;padding:22px 0;border-block:1px solid var(--hairline);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;font:500 12px/1.3 var(--body);letter-spacing:.2em;text-transform:uppercase}
[data-page="shop"] .sh-trust .dot{align-self:center;width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.5}
[data-page="shop"] .sh-note{margin-top:18px}
[data-page="shop"] .sh-pairband .sh-trust{border-color:rgba(248,199,97,.32)}
[data-page="shop"] .sh-pairband .k-teaser__text h2 em{color:var(--gold)}

@media (max-width:900px){
  [data-page="shop"] .sh-grid,[data-page="shop"] .sm-head{grid-template-columns:1fr}
  [data-page="shop"] .sh-item:nth-child(2){padding-top:clamp(48px,10vw,72px);border-top:1px solid var(--hairline)}
  [data-page="shop"] .sm-row{grid-template-columns:1fr 1fr}
  [data-page="shop"] .sm-row h3{grid-column:1/-1}
  [data-page="shop"] .sm-links{justify-content:flex-start}
}
@media (max-width:620px){
  [data-page="shop"] .sm-row{grid-template-columns:1fr}
  [data-page="shop"] .sh-trust{flex-direction:column;align-items:flex-start}
  [data-page="shop"] .sh-trust .dot{display:none}
}

[data-page="shop"] .sh-packlink:hover{transform:translateY(-4px)}

/* single size (UK: cacao 250 g only) shown as a plain fact, not a selectable pill */
[data-page="shop"] .k-size{display:flex;align-items:baseline;gap:14px}
[data-page="shop"] .k-size .numeral{font-size:18px}

/* products side by side: same top line, equal columns, buy rows aligned at the bottom */
[data-page="shop"] .sh-grid{align-items:stretch}
[data-page="shop"] .sh-item{grid-template-rows:auto 1fr}
[data-page="shop"] .sh-info{display:flex;flex-direction:column;gap:22px}
[data-page="shop"] .sh-buy{margin-top:auto;min-height:96px}
[data-page="shop"] .k-hero__grid{grid-template-columns:1fr}

/* cacao */

/* ---- commerce kit (shared by shop, shop-cacao, shop-lotus, sets, cacao, blue-lotus) ---- */
[data-page="cacao"]{--k-sel:var(--navy);--k-sel-ink:var(--paper)}
[data-page="cacao"] .field{--k-sel:var(--f-ink);--k-sel-ink:var(--k-ground,var(--navy))}
[data-page="cacao"] .k-hero{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(64px,10vw,144px));padding-bottom:clamp(56px,8vw,112px)}
[data-page="cacao"] .k-hero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,6vw,96px);align-items:end}
[data-page="cacao"] .k-hero__side{display:grid;gap:24px;padding-bottom:.7em;max-width:40ch}
[data-page="cacao"] .k-hero__side .rule{width:120px}
[data-page="cacao"] .k-hero h1 em{font-style:italic}

/* buttons in the world colours */
[data-page="cacao"] .btn.k-forest{--b-bg:var(--forest);--b-ink:var(--paper)}
[data-page="cacao"] .btn.k-paper{--b-bg:var(--paper);--b-ink:var(--navy)}
[data-page="cacao"] .btn.k-paper-p{--b-bg:var(--paper);--b-ink:var(--purple)}
[data-page="cacao"] .k-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}

/* size pills: real radios */
[data-page="cacao"] .pills{border:0;margin:0;padding:0;min-width:0}
[data-page="cacao"] .pills legend{padding:0;margin-bottom:12px}
[data-page="cacao"] .pills__row{display:flex;gap:8px;flex-wrap:wrap}
[data-page="cacao"] .pill{position:relative;display:block}
[data-page="cacao"] .pill input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
[data-page="cacao"] .pill span{display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:48px;padding:0 22px;border:1px solid var(--f-line,var(--hairline));border-radius:var(--r-full);font:400 15.5px/1 var(--body);font-variant-numeric:tabular-nums;letter-spacing:.02em;transition:background .2s,color .2s,border-color .2s}
[data-page="cacao"] .pill:hover span{border-color:currentColor}
[data-page="cacao"] .pill input:checked+span{background:var(--k-sel);border-color:var(--k-sel);color:var(--k-sel-ink)}
[data-page="cacao"] .pill input:focus-visible+span{outline:2px solid currentColor;outline-offset:3px}

/* price */
[data-page="cacao"] .k-price{display:flex;align-items:baseline;gap:14px;font-size:22px}
[data-page="cacao"] .k-price .eyebrow{opacity:.72}

/* a dark panel that a pack sits on */
[data-page="cacao"] .k-stage{border-radius:var(--r-lg);padding:clamp(20px,3vw,44px);display:grid;place-items:center}
[data-page="cacao"] .k-stage--navy{background:var(--navy)}
[data-page="cacao"] .k-stage--forest{background:var(--forest)}

/* The Pair: two pack faces overlapping */
[data-page="cacao"] .k-pair{position:relative;width:100%;aspect-ratio:10/7}
[data-page="cacao"] .k-pair .pack{position:absolute;width:66%}
[data-page="cacao"] .k-pair .pack--cacao{left:1%;top:2%;transform:rotate(-3deg)}
[data-page="cacao"] .k-pair .pack--lotus{right:1%;bottom:2%;transform:rotate(2deg);box-shadow:0 0 0 1px rgba(255,255,255,.08)}

/* product block on white */
[data-page="cacao"] .k-prod{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
[data-page="cacao"] .k-prod__visual{display:block;text-decoration:none;padding:clamp(0px,2vw,24px)}
[data-page="cacao"] .k-prod__visual .pack{transition:transform .5s var(--ease)}
[data-page="cacao"] .k-prod__visual:hover .pack{transform:translateY(-4px) rotate(-1deg)}
[data-page="cacao"] .k-prod__info{display:grid;gap:26px;align-content:start}
[data-page="cacao"] .k-name{font-size:clamp(34px,3.6vw,52px);line-height:1.04}
[data-page="cacao"] .k-name small{display:inline-block;font-size:max(15px,.36em);letter-spacing:.06em;vertical-align:1.3em;margin-left:.22em}
[data-page="cacao"] .k-latin{font:italic 400 clamp(20px,1.8vw,24px)/1.2 var(--display);margin-top:10px}
[data-page="cacao"] .k-desc{color:var(--ink-soft);max-width:46ch}
[data-page="cacao"] .field .k-desc{color:inherit;opacity:.92}
[data-page="cacao"] .k-meta{display:grid;grid-template-columns:auto 1fr;margin:0;font-size:15px;border-top:1px solid var(--f-line,var(--hairline))}
[data-page="cacao"] .k-meta dt,[data-page="cacao"] .k-meta dd{margin:0;padding-block:12px;border-bottom:1px solid var(--f-line,var(--hairline))}
[data-page="cacao"] .k-meta dt{font:500 11.5px/1.9 var(--body);letter-spacing:.16em;text-transform:uppercase;padding-top:14px;padding-right:28px}
[data-page="cacao"] .k-meta em{font-style:italic}
[data-page="cacao"] .k-small{font-size:14.5px;line-height:1.6;color:var(--ink-soft)}
[data-page="cacao"] .field .k-small{color:inherit;opacity:.86}

/* link rows (learn more) */
[data-page="cacao"] .k-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
[data-page="cacao"] .k-split>header{display:grid;gap:22px;align-content:start}
[data-page="cacao"] .k-links{list-style:none;margin:0;padding:0;border-top:1px solid var(--f-line,var(--hairline))}
[data-page="cacao"] .k-links li{border-bottom:1px solid var(--f-line,var(--hairline))}
[data-page="cacao"] .k-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;align-items:center;padding:26px 0;text-decoration:none;min-height:44px}
[data-page="cacao"] .k-link b{font:400 clamp(24px,2.4vw,32px)/1.15 var(--display)}
[data-page="cacao"] .k-link span{grid-column:1;opacity:.86;font-size:15.5px}
[data-page="cacao"] .k-link i{grid-row:1/3;grid-column:2;display:block;width:28px;height:1px;background:currentColor;position:relative;transition:width .3s var(--ease)}
[data-page="cacao"] .k-link i::after{content:"";position:absolute;right:0;top:-4px;width:9px;height:9px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);transform-origin:center}
[data-page="cacao"] .k-link:hover i{width:44px}
[data-page="cacao"] .k-link:focus-visible{outline-offset:4px}

/* Pair teaser */
[data-page="cacao"] .k-teaser{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
[data-page="cacao"] .k-teaser__text{display:grid;gap:24px;justify-items:start}
[data-page="cacao"] .k-teaser__text h2 em{font-style:italic}

@media (max-width:900px){
  [data-page="cacao"] .k-hero__grid,[data-page="cacao"] .k-prod,[data-page="cacao"] .k-split,[data-page="cacao"] .k-teaser{grid-template-columns:1fr}
  [data-page="cacao"] .k-prod__visual{padding:0}
}
@media (max-width:620px){
  [data-page="cacao"] .k-actions .btn{flex:1 1 100%}
  [data-page="cacao"] .k-link{padding:22px 0}
}
/* small, decorative pack faces: let the tagline scale like the printed label instead of wrapping */
[data-page="cacao"] .k-pair .pack__line,[data-page="cacao"] .st-cat .pack__line,[data-page="cacao"] .x-item .pack__line{font-size:2.9cqw;white-space:nowrap}

/* ---- product page (shared by cacao, blue-lotus) ---- */
[data-page="cacao"] .pd-top{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(40px,5vw,64px));padding-bottom:clamp(56px,8vw,112px)}
[data-page="cacao"] .pd-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,80px);align-items:start}
[data-page="cacao"] .pd-stage{position:sticky;top:calc(76px + env(safe-area-inset-top,0px) + 24px);min-height:clamp(340px,40vw,560px);padding:clamp(24px,4vw,64px)}
[data-page="cacao"] .pd-stage .pack{width:min(100%,600px)}
[data-page="cacao"] .pd-buy{display:grid;gap:24px}
[data-page="cacao"] .pd-crumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:14.5px}
[data-page="cacao"] .pd-crumb a{text-decoration:none;border-bottom:1px solid var(--f-line);padding-block:6px}
[data-page="cacao"] .pd-crumb a:hover{border-color:currentColor}
[data-page="cacao"] .pd-crumb span{opacity:.6}
[data-page="cacao"] .pd-name{font-size:clamp(44px,5.4vw,78px);line-height:1;letter-spacing:-.01em}
[data-page="cacao"] .pd-name small{display:inline-block;font-size:.34em;letter-spacing:.06em;vertical-align:1.6em;margin-left:.25em}
[data-page="cacao"] .pd-name em{font-style:italic}
[data-page="cacao"] .pd-desc{max-width:48ch}
[data-page="cacao"] .pd-form{display:grid;gap:22px;padding-block:24px;border-block:1px solid var(--f-line)}
[data-page="cacao"] .pd-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:end}
[data-page="cacao"] .pd-cta .btn{flex:1 1 200px}
[data-page="cacao"] .pd-cta .lbl{margin-bottom:12px}
[data-page="cacao"] .pd-qty{display:inline-flex;align-items:center;height:48px;border:1px solid var(--f-line);border-radius:var(--r-full)}
[data-page="cacao"] .pd-qty button{width:46px;height:46px;border:0;background:none;color:inherit;font:400 20px/1 var(--body);cursor:pointer;border-radius:var(--r-full)}
[data-page="cacao"] .pd-qty button:focus-visible{outline:2px solid currentColor;outline-offset:-2px}
[data-page="cacao"] .pd-qty input{width:40px;height:44px;border:0;background:none;color:inherit;text-align:center;font:400 17px/1 var(--body);font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}
[data-page="cacao"] .pd-qty input::-webkit-inner-spin-button,[data-page="cacao"] .pd-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* accordions */
[data-page="cacao"] .acc{border-top:1px solid var(--ink)}
[data-page="cacao"] .acc details{border-bottom:1px solid var(--hairline)}
[data-page="cacao"] .acc summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 24px;padding:clamp(22px,2.4vw,32px) 0;min-height:44px}
[data-page="cacao"] .acc summary::-webkit-details-marker{display:none}
[data-page="cacao"] .acc summary::marker{content:""}
[data-page="cacao"] .acc summary h2{font-size:clamp(28px,3vw,42px);line-height:1.1}
[data-page="cacao"] .acc summary p{grid-column:1;color:var(--ink-soft);font-size:15px}
[data-page="cacao"] .acc summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
[data-page="cacao"] .acc__pm{grid-column:2;grid-row:1/3;position:relative;width:28px;height:28px}
[data-page="cacao"] .acc__pm::before,[data-page="cacao"] .acc__pm::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:currentColor;transition:transform .3s var(--ease)}
[data-page="cacao"] .acc__pm::after{transform:rotate(90deg)}
[data-page="cacao"] .acc details[open] .acc__pm::after{transform:rotate(0)}
[data-page="cacao"] .acc summary:hover h2{text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:1px}
[data-page="cacao"] .acc__body{padding:clamp(8px,1vw,16px) 0 clamp(44px,5vw,72px)}
[data-page="cacao"] .acc__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,80px);align-items:start}
[data-page="cacao"] .acc__cols--3{grid-template-columns:minmax(0,5fr) minmax(0,4fr) minmax(0,4fr)}
[data-page="cacao"] .acc__col{display:grid;gap:18px;align-content:start}
[data-page="cacao"] .acc__col h3{font-size:clamp(24px,2.2vw,30px);line-height:1.15}
[data-page="cacao"] .acc__col h3 em{font-style:italic}
[data-page="cacao"] .acc__col p{color:var(--ink-soft)}
[data-page="cacao"] .acc__col .lead{color:var(--ink)}
[data-page="cacao"] .acc__col a{text-underline-offset:4px}
[data-page="cacao"] .acc__col .link-arrow{justify-self:start;color:var(--ink)}
[data-page="cacao"] .acc__col+.acc__col .eyebrow,[data-page="cacao"] .acc__col .eyebrow{color:var(--ink)}
[data-page="cacao"] .acc__fact{display:grid;gap:10px}
[data-page="cacao"] .acc__fact+.acc__fact{margin-top:14px;padding-top:22px;border-top:1px solid var(--hairline)}

/* numbered preparation steps (a real sequence) */
[data-page="cacao"] .pd-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:0 clamp(20px,3vw,40px);counter-reset:step}
[data-page="cacao"] .pd-steps li{counter-increment:step;border-top:1px solid var(--ink);padding-top:18px;display:grid;gap:12px;align-content:start}
[data-page="cacao"] .pd-steps li::before{content:counter(step);font:400 clamp(40px,4vw,56px)/1 var(--display)}
[data-page="cacao"] .pd-steps b{font-weight:400}
[data-page="cacao"] .pd-tips{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);margin-top:clamp(32px,4vw,48px);padding-top:24px;border-top:1px solid var(--hairline)}
[data-page="cacao"] .pd-tips p{color:var(--ink-soft)}
[data-page="cacao"] .pd-tips .eyebrow{display:block;color:var(--ink);margin-bottom:8px}

/* base sticker */
[data-page="cacao"] .pd-sticker{display:inline-grid;gap:4px;justify-self:start;background:#fff;color:#202020;border:1px solid rgba(32,32,32,.2);border-radius:var(--r-sm);padding:12px 16px;font:400 12px/1.5 var(--body);letter-spacing:.12em;text-transform:uppercase;font-variant-numeric:tabular-nums lining-nums}
[data-page="cacao"] .pd-sticker span:first-child{border-bottom:1px solid rgba(32,32,32,.14);padding-bottom:4px}
[data-page="cacao"] .pd-base{display:grid;gap:14px;margin:0;padding:clamp(20px,2.4vw,28px);border:1px solid var(--hairline);border-radius:var(--r-lg)}
[data-page="cacao"] .pd-care{display:grid;gap:12px;padding-top:22px;border-top:1px solid var(--ink)}
[data-page="cacao"] .pd-care p{color:var(--ink)!important}

/* cross-sell band */
[data-page="cacao"] .x-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,6vw,96px);align-items:end;margin-bottom:clamp(40px,5vw,72px)}
[data-page="cacao"] .x-head h2 em{font-style:italic}
[data-page="cacao"] .x-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px)}
[data-page="cacao"] .x-item{display:grid;gap:24px;align-content:start}
[data-page="cacao"] .x-item .k-stage{aspect-ratio:4/3;text-decoration:none;padding:0}
[data-page="cacao"] .x-item .k-stage>.pack{width:76%;transition:transform .5s var(--ease)}
[data-page="cacao"] .x-item .k-stage>.k-pair{width:86%}
[data-page="cacao"] .x-item .k-stage:hover>.pack{transform:rotate(-1.5deg) translateY(-3px)}
[data-page="cacao"] .x-info{display:grid;gap:12px;justify-items:start;padding-top:20px;border-top:1px solid var(--f-line)}
[data-page="cacao"] .x-info h3{font-size:clamp(26px,2.6vw,36px);line-height:1.1}
[data-page="cacao"] .x-info h3 em{font-style:italic}
[data-page="cacao"] .x-info .k-actions{margin-top:8px}

@media (max-width:960px){
  [data-page="cacao"] .pd-grid,[data-page="cacao"] .x-head{grid-template-columns:1fr}
  [data-page="cacao"] .pd-stage{position:static;min-height:0;padding:24px}
  [data-page="cacao"] .acc__cols--3{grid-template-columns:1fr 1fr}
  [data-page="cacao"] .acc__cols--3>:first-child{grid-column:1/-1}
  [data-page="cacao"] .pd-steps{grid-template-columns:1fr 1fr;gap:32px 24px}
}
@media (max-width:700px){
  [data-page="cacao"] .acc__cols,[data-page="cacao"] .acc__cols--3,[data-page="cacao"] .pd-tips,[data-page="cacao"] .x-grid{grid-template-columns:1fr}
  [data-page="cacao"] .pd-steps{grid-template-columns:1fr;gap:24px}
  [data-page="cacao"] .pd-steps li{grid-template-columns:48px 1fr;gap:14px}
  [data-page="cacao"] .pd-steps li::before{font-size:36px}
  [data-page="cacao"] .pd-cta .btn{flex-basis:100%}
}

/* ---- cacao: cacao world (gold + forest); pack on navy; cross-sell in the lotus world ---- */
[data-page="cacao"]{--k-sel:var(--forest);--k-sel-ink:var(--paper)}
[data-page="cacao"] .field--gold{--f-ink:var(--forest);--f-accent:var(--forest);--f-line:rgba(32,56,34,.34);--k-ground:var(--gold)}
[data-page="cacao"] .field--purple{--f-line:rgba(255,255,255,.26)}

/* dose ruler (white, forest) */
[data-page="cacao"] .cc-dose__head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,5vw,72px);align-items:end;margin-bottom:clamp(40px,5vw,64px)}
[data-page="cacao"] .cc-dose__head h2 em{font-style:italic}
[data-page="cacao"] .cc-dose__head p{color:var(--ink-soft)}
[data-page="cacao"] .dose{--max:40;--dl:var(--forest);position:relative;padding:clamp(24px,3vw,44px) clamp(16px,3vw,44px) 8px;border:1px solid var(--hairline);border-radius:var(--r-lg)}
[data-page="cacao"] .dose__field{position:relative;display:grid;gap:clamp(20px,2.2vw,28px);padding:58px 0 22px;
  background-image:linear-gradient(to right,rgba(32,56,34,.14) 1px,transparent 1px);background-size:calc(100%/8) 100%;border-right:1px solid rgba(32,56,34,.14)}
[data-page="cacao"] .dose__band{--l:calc(var(--a)/var(--max)*100%);--w:calc((var(--b) - var(--a))/var(--max)*100%);margin-left:var(--l);width:var(--w);display:grid;gap:10px}
[data-page="cacao"] .dose__lbl{display:flex;flex-direction:column;white-space:nowrap;line-height:1.2}
[data-page="cacao"] .dose__lbl b{font:400 clamp(20px,2vw,26px)/1.1 var(--display);color:var(--ink)}
[data-page="cacao"] .dose__lbl span{font:400 13px/1.4 var(--body);letter-spacing:.12em;text-transform:uppercase;font-variant-numeric:tabular-nums;color:var(--ink-soft)}
[data-page="cacao"] .dose__band--end .dose__lbl{align-items:flex-end;text-align:right}
[data-page="cacao"] .dose__bar{height:18px;border:1px solid var(--dl);border-radius:2px}
[data-page="cacao"] .dose__band--2 .dose__bar{background:repeating-linear-gradient(135deg,var(--dl) 0 1.5px,transparent 1.5px 6px)}
[data-page="cacao"] .dose__band--3 .dose__bar{background:var(--dl)}
[data-page="cacao"] .dose__mark{position:absolute;top:0;bottom:0;left:calc(25/40*100%);width:0;border-left:1px dashed var(--dl)}
[data-page="cacao"] .dose__mark span{position:absolute;top:4px;left:10px;white-space:nowrap;font:500 11px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--forest)}
[data-page="cacao"] .dose__scale{position:relative;height:56px;border-top:1px solid var(--dl);
  background-image:linear-gradient(to right,var(--dl) 1px,transparent 1px),linear-gradient(to right,var(--dl) 1px,transparent 1px);
  background-size:calc(100%/40) 7px,calc(100%/8) 14px;background-repeat:repeat-x}
[data-page="cacao"] .dose__scale::after{content:"";position:absolute;right:0;top:0;width:1px;height:14px;background:var(--dl)}
[data-page="cacao"] .dose__scale span{white-space:nowrap;position:absolute;top:22px;left:calc(var(--g)/40*100%);transform:translateX(-50%);font:400 14px/1 var(--body);font-variant-numeric:tabular-nums;color:var(--ink)}
[data-page="cacao"] .dose__scale span:last-child{transform:translateX(-100%)}
[data-page="cacao"] .dose__scale span:first-child{transform:none}
[data-page="cacao"] .cc-acc{margin-top:clamp(72px,9vw,128px)}

/* taste notes */
[data-page="cacao"] .cc-notes{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(16px,2.4vw,32px)}
[data-page="cacao"] .cc-notes li{border-top:1px solid var(--hairline);padding:10px 0 12px;font:400 clamp(19px,1.7vw,22px)/1.2 var(--display);color:var(--ink)}
[data-page="cacao"] .cc-why{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:auto 1fr;gap:14px 40px;align-items:baseline;padding-block:20px;border-block:1px solid var(--hairline)}
[data-page="cacao"] .cc-why h3{font-size:clamp(22px,2vw,26px)}
[data-page="cacao"] .cc-why h3 em{font-style:italic}
[data-page="cacao"] .cc-why ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 28px;font:500 12px/1.5 var(--body);letter-spacing:.16em;text-transform:uppercase}
[data-page="cacao"] .cc-why li{display:flex;align-items:center;gap:12px}
[data-page="cacao"] .cc-why li::before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.55}

/* nutrition */
[data-page="cacao"] .cc-nut{width:100%;border-collapse:collapse;font-size:15.5px;font-variant-numeric:tabular-nums lining-nums}
[data-page="cacao"] .cc-nut caption{text-align:left;padding-bottom:14px}
[data-page="cacao"] .cc-nut th,[data-page="cacao"] .cc-nut td{padding:10px 0;border-bottom:1px solid var(--hairline);text-align:left;font-weight:400;vertical-align:baseline}
[data-page="cacao"] .cc-nut thead th{font:500 11.5px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid var(--ink)}
[data-page="cacao"] .cc-nut td{text-align:right;white-space:nowrap}
[data-page="cacao"] .cc-nut thead th:last-child{text-align:right}
[data-page="cacao"] .cc-nut .sub th{padding-left:18px;color:var(--ink-soft)}
[data-page="cacao"] .cc-nut tbody tr:last-child>*{border-bottom-color:var(--ink)}

@media (max-width:960px){
  [data-page="cacao"] .cc-dose__head,[data-page="cacao"] .cc-why{grid-template-columns:1fr}
}
@media (max-width:620px){
  [data-page="cacao"] .cc-notes{grid-template-columns:1fr 1fr}
  [data-page="cacao"] .dose{padding:20px 14px 4px}
  [data-page="cacao"] .dose__lbl b{font-size:17px}
  [data-page="cacao"] .dose__lbl span{font-size:11px;letter-spacing:.06em}
  [data-page="cacao"] .dose__scale span{font-size:12px}
  [data-page="cacao"] .dose__scale span:nth-child(even){display:none}
  [data-page="cacao"] .dose__mark span{left:auto;right:8px;text-align:right}
  [data-page="cacao"] .dose__band--end .dose__lbl{align-items:flex-start;text-align:left;padding-left:8px}
  [data-page="cacao"] .dose__field{padding-top:64px}
  [data-page="cacao"] .cc-why ul{flex-direction:column}
}

[data-page="cacao"] .k-meta dt{display:flex;align-items:center;gap:9px}
[data-page="cacao"] .k-meta dt .ico{margin-block:-4px}

[data-page="cacao"] .acc summary h2{display:flex;align-items:center;gap:14px}
[data-page="cacao"] .acc summary p{padding-left:36px}
[data-page="cacao"] .x-info h3{display:flex;align-items:center;gap:12px}

/* ---- product photos (brandbook visualisations) replace the pack faces; no stage panels ---- */
[data-page="cacao"] .pd-stage{padding:0;min-height:0;display:block}
[data-page="cacao"] .pd-stage .prod-img{width:100%}
[data-page="cacao"] .x-photo{display:block;text-decoration:none}
[data-page="cacao"] .x-photo>.prod-img,[data-page="cacao"] .x-photo>.prod-duo{transition:transform .5s var(--ease)}
[data-page="cacao"] .x-photo:hover>*{transform:translateY(-3px)}
[data-page="cacao"] .x-item .prod-duo{max-width:none}
[data-page="cacao"] .x-item .x-photo>.prod-img{aspect-ratio:4/3}
/* cacao world = deep forest ground + sunflower gold accents (brandbook) */
[data-page="cacao"] .field--forest{--k-ground:var(--forest);--f-line:rgba(248,199,97,.32)}

/* single size (UK: cacao 250 g only) shown as a plain fact, not a selectable pill */
[data-page="cacao"] .k-size{display:flex;align-items:baseline;gap:14px}
[data-page="cacao"] .k-size .numeral{font-size:18px}

/* dosage guide in colour: a forest panel, servings shaded light → full gold */
[data-page="cacao"] .dose{--dl:var(--gold);background:var(--forest);border-color:var(--forest);color:var(--paper)}
[data-page="cacao"] .dose__lbl b{color:var(--paper)}
[data-page="cacao"] .dose__lbl span{color:rgba(255,255,255,.8)}
[data-page="cacao"] .dose__bar{height:22px;border-radius:4px}
[data-page="cacao"] .dose__band--1 .dose__bar{background:rgba(248,199,97,.22)}
[data-page="cacao"] .dose__band--2 .dose__bar{background:repeating-linear-gradient(135deg,var(--gold) 0 2px,rgba(248,199,97,.25) 2px 7px)}
[data-page="cacao"] .dose__band--3 .dose__bar{background:var(--gold)}
[data-page="cacao"] .dose__scale span{color:var(--paper)}

/* blue-lotus */

/* ---- commerce kit (shared by shop, shop-cacao, shop-lotus, sets, cacao, blue-lotus) ---- */
[data-page="blue-lotus"]{--k-sel:var(--navy);--k-sel-ink:var(--paper)}
[data-page="blue-lotus"] .field{--k-sel:var(--f-ink);--k-sel-ink:var(--k-ground,var(--navy))}
[data-page="blue-lotus"] .k-hero{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(64px,10vw,144px));padding-bottom:clamp(56px,8vw,112px)}
[data-page="blue-lotus"] .k-hero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,6vw,96px);align-items:end}
[data-page="blue-lotus"] .k-hero__side{display:grid;gap:24px;padding-bottom:.7em;max-width:40ch}
[data-page="blue-lotus"] .k-hero__side .rule{width:120px}
[data-page="blue-lotus"] .k-hero h1 em{font-style:italic}

/* buttons in the world colours */
[data-page="blue-lotus"] .btn.k-forest{--b-bg:var(--forest);--b-ink:var(--paper)}
[data-page="blue-lotus"] .btn.k-paper{--b-bg:var(--paper);--b-ink:var(--navy)}
[data-page="blue-lotus"] .btn.k-paper-p{--b-bg:var(--paper);--b-ink:var(--purple)}
[data-page="blue-lotus"] .k-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}

/* size pills: real radios */
[data-page="blue-lotus"] .pills{border:0;margin:0;padding:0;min-width:0}
[data-page="blue-lotus"] .pills legend{padding:0;margin-bottom:12px}
[data-page="blue-lotus"] .pills__row{display:flex;gap:8px;flex-wrap:wrap}
[data-page="blue-lotus"] .pill{position:relative;display:block}
[data-page="blue-lotus"] .pill input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
[data-page="blue-lotus"] .pill span{display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:48px;padding:0 22px;border:1px solid var(--f-line,var(--hairline));border-radius:var(--r-full);font:400 15.5px/1 var(--body);font-variant-numeric:tabular-nums;letter-spacing:.02em;transition:background .2s,color .2s,border-color .2s}
[data-page="blue-lotus"] .pill:hover span{border-color:currentColor}
[data-page="blue-lotus"] .pill input:checked+span{background:var(--k-sel);border-color:var(--k-sel);color:var(--k-sel-ink)}
[data-page="blue-lotus"] .pill input:focus-visible+span{outline:2px solid currentColor;outline-offset:3px}

/* price */
[data-page="blue-lotus"] .k-price{display:flex;align-items:baseline;gap:14px;font-size:22px}
[data-page="blue-lotus"] .k-price .eyebrow{opacity:.72}

/* a dark panel that a pack sits on */
[data-page="blue-lotus"] .k-stage{border-radius:var(--r-lg);padding:clamp(20px,3vw,44px);display:grid;place-items:center}
[data-page="blue-lotus"] .k-stage--navy{background:var(--navy)}
[data-page="blue-lotus"] .k-stage--forest{background:var(--forest)}

/* The Pair: two pack faces overlapping */
[data-page="blue-lotus"] .k-pair{position:relative;width:100%;aspect-ratio:10/7}
[data-page="blue-lotus"] .k-pair .pack{position:absolute;width:66%}
[data-page="blue-lotus"] .k-pair .pack--cacao{left:1%;top:2%;transform:rotate(-3deg)}
[data-page="blue-lotus"] .k-pair .pack--lotus{right:1%;bottom:2%;transform:rotate(2deg);box-shadow:0 0 0 1px rgba(255,255,255,.08)}

/* product block on white */
[data-page="blue-lotus"] .k-prod{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
[data-page="blue-lotus"] .k-prod__visual{display:block;text-decoration:none;padding:clamp(0px,2vw,24px)}
[data-page="blue-lotus"] .k-prod__visual .pack{transition:transform .5s var(--ease)}
[data-page="blue-lotus"] .k-prod__visual:hover .pack{transform:translateY(-4px) rotate(-1deg)}
[data-page="blue-lotus"] .k-prod__info{display:grid;gap:26px;align-content:start}
[data-page="blue-lotus"] .k-name{font-size:clamp(34px,3.6vw,52px);line-height:1.04}
[data-page="blue-lotus"] .k-name small{display:inline-block;font-size:max(15px,.36em);letter-spacing:.06em;vertical-align:1.3em;margin-left:.22em}
[data-page="blue-lotus"] .k-latin{font:italic 400 clamp(20px,1.8vw,24px)/1.2 var(--display);margin-top:10px}
[data-page="blue-lotus"] .k-desc{color:var(--ink-soft);max-width:46ch}
[data-page="blue-lotus"] .field .k-desc{color:inherit;opacity:.92}
[data-page="blue-lotus"] .k-meta{display:grid;grid-template-columns:auto 1fr;margin:0;font-size:15px;border-top:1px solid var(--f-line,var(--hairline))}
[data-page="blue-lotus"] .k-meta dt,[data-page="blue-lotus"] .k-meta dd{margin:0;padding-block:12px;border-bottom:1px solid var(--f-line,var(--hairline))}
[data-page="blue-lotus"] .k-meta dt{font:500 11.5px/1.9 var(--body);letter-spacing:.16em;text-transform:uppercase;padding-top:14px;padding-right:28px}
[data-page="blue-lotus"] .k-meta em{font-style:italic}
[data-page="blue-lotus"] .k-small{font-size:14.5px;line-height:1.6;color:var(--ink-soft)}
[data-page="blue-lotus"] .field .k-small{color:inherit;opacity:.86}

/* link rows (learn more) */
[data-page="blue-lotus"] .k-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
[data-page="blue-lotus"] .k-split>header{display:grid;gap:22px;align-content:start}
[data-page="blue-lotus"] .k-links{list-style:none;margin:0;padding:0;border-top:1px solid var(--f-line,var(--hairline))}
[data-page="blue-lotus"] .k-links li{border-bottom:1px solid var(--f-line,var(--hairline))}
[data-page="blue-lotus"] .k-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;align-items:center;padding:26px 0;text-decoration:none;min-height:44px}
[data-page="blue-lotus"] .k-link b{font:400 clamp(24px,2.4vw,32px)/1.15 var(--display)}
[data-page="blue-lotus"] .k-link span{grid-column:1;opacity:.86;font-size:15.5px}
[data-page="blue-lotus"] .k-link i{grid-row:1/3;grid-column:2;display:block;width:28px;height:1px;background:currentColor;position:relative;transition:width .3s var(--ease)}
[data-page="blue-lotus"] .k-link i::after{content:"";position:absolute;right:0;top:-4px;width:9px;height:9px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);transform-origin:center}
[data-page="blue-lotus"] .k-link:hover i{width:44px}
[data-page="blue-lotus"] .k-link:focus-visible{outline-offset:4px}

/* Pair teaser */
[data-page="blue-lotus"] .k-teaser{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
[data-page="blue-lotus"] .k-teaser__text{display:grid;gap:24px;justify-items:start}
[data-page="blue-lotus"] .k-teaser__text h2 em{font-style:italic}

@media (max-width:900px){
  [data-page="blue-lotus"] .k-hero__grid,[data-page="blue-lotus"] .k-prod,[data-page="blue-lotus"] .k-split,[data-page="blue-lotus"] .k-teaser{grid-template-columns:1fr}
  [data-page="blue-lotus"] .k-prod__visual{padding:0}
}
@media (max-width:620px){
  [data-page="blue-lotus"] .k-actions .btn{flex:1 1 100%}
  [data-page="blue-lotus"] .k-link{padding:22px 0}
}
/* small, decorative pack faces: let the tagline scale like the printed label instead of wrapping */
[data-page="blue-lotus"] .k-pair .pack__line,[data-page="blue-lotus"] .st-cat .pack__line,[data-page="blue-lotus"] .x-item .pack__line{font-size:2.9cqw;white-space:nowrap}

/* ---- product page (shared by cacao, blue-lotus) ---- */
[data-page="blue-lotus"] .pd-top{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(40px,5vw,64px));padding-bottom:clamp(56px,8vw,112px)}
[data-page="blue-lotus"] .pd-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,80px);align-items:start}
[data-page="blue-lotus"] .pd-stage{position:sticky;top:calc(76px + env(safe-area-inset-top,0px) + 24px);min-height:clamp(340px,40vw,560px);padding:clamp(24px,4vw,64px)}
[data-page="blue-lotus"] .pd-stage .pack{width:min(100%,600px)}
[data-page="blue-lotus"] .pd-buy{display:grid;gap:24px}
[data-page="blue-lotus"] .pd-crumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:14.5px}
[data-page="blue-lotus"] .pd-crumb a{text-decoration:none;border-bottom:1px solid var(--f-line);padding-block:6px}
[data-page="blue-lotus"] .pd-crumb a:hover{border-color:currentColor}
[data-page="blue-lotus"] .pd-crumb span{opacity:.6}
[data-page="blue-lotus"] .pd-name{font-size:clamp(44px,5.4vw,78px);line-height:1;letter-spacing:-.01em}
[data-page="blue-lotus"] .pd-name small{display:inline-block;font-size:.34em;letter-spacing:.06em;vertical-align:1.6em;margin-left:.25em}
[data-page="blue-lotus"] .pd-name em{font-style:italic}
[data-page="blue-lotus"] .pd-desc{max-width:48ch}
[data-page="blue-lotus"] .pd-form{display:grid;gap:22px;padding-block:24px;border-block:1px solid var(--f-line)}
[data-page="blue-lotus"] .pd-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:end}
[data-page="blue-lotus"] .pd-cta .btn{flex:1 1 200px}
[data-page="blue-lotus"] .pd-cta .lbl{margin-bottom:12px}
[data-page="blue-lotus"] .pd-qty{display:inline-flex;align-items:center;height:48px;border:1px solid var(--f-line);border-radius:var(--r-full)}
[data-page="blue-lotus"] .pd-qty button{width:46px;height:46px;border:0;background:none;color:inherit;font:400 20px/1 var(--body);cursor:pointer;border-radius:var(--r-full)}
[data-page="blue-lotus"] .pd-qty button:focus-visible{outline:2px solid currentColor;outline-offset:-2px}
[data-page="blue-lotus"] .pd-qty input{width:40px;height:44px;border:0;background:none;color:inherit;text-align:center;font:400 17px/1 var(--body);font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}
[data-page="blue-lotus"] .pd-qty input::-webkit-inner-spin-button,[data-page="blue-lotus"] .pd-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* accordions */
[data-page="blue-lotus"] .acc{border-top:1px solid var(--ink)}
[data-page="blue-lotus"] .acc details{border-bottom:1px solid var(--hairline)}
[data-page="blue-lotus"] .acc summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 24px;padding:clamp(22px,2.4vw,32px) 0;min-height:44px}
[data-page="blue-lotus"] .acc summary::-webkit-details-marker{display:none}
[data-page="blue-lotus"] .acc summary::marker{content:""}
[data-page="blue-lotus"] .acc summary h2{font-size:clamp(28px,3vw,42px);line-height:1.1}
[data-page="blue-lotus"] .acc summary p{grid-column:1;color:var(--ink-soft);font-size:15px}
[data-page="blue-lotus"] .acc summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
[data-page="blue-lotus"] .acc__pm{grid-column:2;grid-row:1/3;position:relative;width:28px;height:28px}
[data-page="blue-lotus"] .acc__pm::before,[data-page="blue-lotus"] .acc__pm::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:currentColor;transition:transform .3s var(--ease)}
[data-page="blue-lotus"] .acc__pm::after{transform:rotate(90deg)}
[data-page="blue-lotus"] .acc details[open] .acc__pm::after{transform:rotate(0)}
[data-page="blue-lotus"] .acc summary:hover h2{text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:1px}
[data-page="blue-lotus"] .acc__body{padding:clamp(8px,1vw,16px) 0 clamp(44px,5vw,72px)}
[data-page="blue-lotus"] .acc__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,80px);align-items:start}
[data-page="blue-lotus"] .acc__cols--3{grid-template-columns:minmax(0,5fr) minmax(0,4fr) minmax(0,4fr)}
[data-page="blue-lotus"] .acc__col{display:grid;gap:18px;align-content:start}
[data-page="blue-lotus"] .acc__col h3{font-size:clamp(24px,2.2vw,30px);line-height:1.15}
[data-page="blue-lotus"] .acc__col h3 em{font-style:italic}
[data-page="blue-lotus"] .acc__col p{color:var(--ink-soft)}
[data-page="blue-lotus"] .acc__col .lead{color:var(--ink)}
[data-page="blue-lotus"] .acc__col a{text-underline-offset:4px}
[data-page="blue-lotus"] .acc__col .link-arrow{justify-self:start;color:var(--ink)}
[data-page="blue-lotus"] .acc__col+.acc__col .eyebrow,[data-page="blue-lotus"] .acc__col .eyebrow{color:var(--ink)}
[data-page="blue-lotus"] .acc__fact{display:grid;gap:10px}
[data-page="blue-lotus"] .acc__fact+.acc__fact{margin-top:14px;padding-top:22px;border-top:1px solid var(--hairline)}

/* numbered preparation steps (a real sequence) */
[data-page="blue-lotus"] .pd-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:0 clamp(20px,3vw,40px);counter-reset:step}
[data-page="blue-lotus"] .pd-steps li{counter-increment:step;border-top:1px solid var(--ink);padding-top:18px;display:grid;gap:12px;align-content:start}
[data-page="blue-lotus"] .pd-steps li::before{content:counter(step);font:400 clamp(40px,4vw,56px)/1 var(--display)}
[data-page="blue-lotus"] .pd-steps b{font-weight:400}
[data-page="blue-lotus"] .pd-tips{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);margin-top:clamp(32px,4vw,48px);padding-top:24px;border-top:1px solid var(--hairline)}
[data-page="blue-lotus"] .pd-tips p{color:var(--ink-soft)}
[data-page="blue-lotus"] .pd-tips .eyebrow{display:block;color:var(--ink);margin-bottom:8px}

/* base sticker */
[data-page="blue-lotus"] .pd-sticker{display:inline-grid;gap:4px;justify-self:start;background:#fff;color:#202020;border:1px solid rgba(32,32,32,.2);border-radius:var(--r-sm);padding:12px 16px;font:400 12px/1.5 var(--body);letter-spacing:.12em;text-transform:uppercase;font-variant-numeric:tabular-nums lining-nums}
[data-page="blue-lotus"] .pd-sticker span:first-child{border-bottom:1px solid rgba(32,32,32,.14);padding-bottom:4px}
[data-page="blue-lotus"] .pd-base{display:grid;gap:14px;margin:0;padding:clamp(20px,2.4vw,28px);border:1px solid var(--hairline);border-radius:var(--r-lg)}
[data-page="blue-lotus"] .pd-care{display:grid;gap:12px;padding-top:22px;border-top:1px solid var(--ink)}
[data-page="blue-lotus"] .pd-care p{color:var(--ink)!important}

/* cross-sell band */
[data-page="blue-lotus"] .x-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,6vw,96px);align-items:end;margin-bottom:clamp(40px,5vw,72px)}
[data-page="blue-lotus"] .x-head h2 em{font-style:italic}
[data-page="blue-lotus"] .x-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px)}
[data-page="blue-lotus"] .x-item{display:grid;gap:24px;align-content:start}
[data-page="blue-lotus"] .x-item .k-stage{aspect-ratio:4/3;text-decoration:none;padding:0}
[data-page="blue-lotus"] .x-item .k-stage>.pack{width:76%;transition:transform .5s var(--ease)}
[data-page="blue-lotus"] .x-item .k-stage>.k-pair{width:86%}
[data-page="blue-lotus"] .x-item .k-stage:hover>.pack{transform:rotate(-1.5deg) translateY(-3px)}
[data-page="blue-lotus"] .x-info{display:grid;gap:12px;justify-items:start;padding-top:20px;border-top:1px solid var(--f-line)}
[data-page="blue-lotus"] .x-info h3{font-size:clamp(26px,2.6vw,36px);line-height:1.1}
[data-page="blue-lotus"] .x-info h3 em{font-style:italic}
[data-page="blue-lotus"] .x-info .k-actions{margin-top:8px}

@media (max-width:960px){
  [data-page="blue-lotus"] .pd-grid,[data-page="blue-lotus"] .x-head{grid-template-columns:1fr}
  [data-page="blue-lotus"] .pd-stage{position:static;min-height:0;padding:24px}
  [data-page="blue-lotus"] .acc__cols--3{grid-template-columns:1fr 1fr}
  [data-page="blue-lotus"] .acc__cols--3>:first-child{grid-column:1/-1}
  [data-page="blue-lotus"] .pd-steps{grid-template-columns:1fr 1fr;gap:32px 24px}
}
@media (max-width:700px){
  [data-page="blue-lotus"] .acc__cols,[data-page="blue-lotus"] .acc__cols--3,[data-page="blue-lotus"] .pd-tips,[data-page="blue-lotus"] .x-grid{grid-template-columns:1fr}
  [data-page="blue-lotus"] .pd-steps{grid-template-columns:1fr;gap:24px}
  [data-page="blue-lotus"] .pd-steps li{grid-template-columns:48px 1fr;gap:14px}
  [data-page="blue-lotus"] .pd-steps li::before{font-size:36px}
  [data-page="blue-lotus"] .pd-cta .btn{flex-basis:100%}
}

/* ---- blue lotus: lotus world (purple + navy); cross-sell in the cacao world ---- */
[data-page="blue-lotus"]{--k-sel:var(--navy);--k-sel-ink:var(--paper)}
[data-page="blue-lotus"] .field--purple{--f-line:rgba(255,255,255,.28);--k-ground:var(--purple)}
[data-page="blue-lotus"] .field--gold{--f-ink:var(--forest);--f-accent:var(--forest);--f-line:rgba(32,56,34,.34);--k-ground:var(--gold)}
[data-page="blue-lotus"] .pd-latin{font:italic 400 clamp(22px,2vw,26px)/1.2 var(--display);margin-top:12px}

[data-page="blue-lotus"] .acc__col .bl-flavour{font:400 clamp(30px,3.2vw,44px)/1.08 var(--display);letter-spacing:-.005em;max-width:14ch;color:var(--ink)}
[data-page="blue-lotus"] .bl-flavour em{font-style:italic}
[data-page="blue-lotus"] .bl-soon{font:italic 400 18px/1.35 var(--display);color:var(--ink)!important;padding-top:14px;border-top:1px dashed var(--hairline)}
[data-page="blue-lotus"] .bl-measure{list-style:none;margin:0 0 clamp(36px,4vw,56px);padding:clamp(18px,2vw,28px) 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--hairline)}
[data-page="blue-lotus"] .bl-measure li{display:grid;gap:10px;padding-inline:clamp(12px,3vw,40px);border-left:1px solid var(--hairline)}
[data-page="blue-lotus"] .bl-measure li:first-child{border-left:0;padding-left:0}
[data-page="blue-lotus"] .bl-measure b{font:400 clamp(44px,6vw,88px)/.95 var(--body);letter-spacing:-.02em;font-variant-numeric:tabular-nums lining-nums;color:var(--purple);white-space:nowrap}
[data-page="blue-lotus"] .bl-measure span{font:500 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase}
[data-page="blue-lotus"] .bl-limit{margin-top:clamp(24px,3vw,36px);display:flex;flex-wrap:wrap;gap:12px 32px;align-items:center;justify-content:space-between;padding-top:20px;border-top:1px solid var(--hairline)}
[data-page="blue-lotus"] .bl-limit p{color:var(--ink)}
@media (max-width:620px){
  [data-page="blue-lotus"] .bl-measure{grid-template-columns:1fr;padding:0}
  [data-page="blue-lotus"] .bl-measure li{border-left:0;border-top:1px solid var(--hairline);padding:16px 0;grid-template-columns:auto 1fr;align-items:baseline;gap:18px}
  [data-page="blue-lotus"] .bl-measure li:first-child{border-top:0}
  [data-page="blue-lotus"] .bl-measure b{font-size:48px}
}

[data-page="blue-lotus"] .k-meta dt{display:flex;align-items:center;gap:9px}
[data-page="blue-lotus"] .k-meta dt .ico{margin-block:-4px}

[data-page="blue-lotus"] .acc summary h2{display:flex;align-items:center;gap:14px}
[data-page="blue-lotus"] .acc summary p{padding-left:36px}
[data-page="blue-lotus"] .x-info h3{display:flex;align-items:center;gap:12px}

/* ---- product photos (brandbook visualisations) replace the pack faces; no stage panels ---- */
[data-page="blue-lotus"] .pd-stage{padding:0;min-height:0;display:block}
[data-page="blue-lotus"] .pd-stage .prod-img{width:100%}
[data-page="blue-lotus"] .x-photo{display:block;text-decoration:none}
[data-page="blue-lotus"] .x-photo>.prod-img,[data-page="blue-lotus"] .x-photo>.prod-duo{transition:transform .5s var(--ease)}
[data-page="blue-lotus"] .x-photo:hover>*{transform:translateY(-3px)}
[data-page="blue-lotus"] .x-item .prod-duo{max-width:none}
[data-page="blue-lotus"] .x-item .x-photo>.prod-img{aspect-ratio:4/3}
[data-page="blue-lotus"] .field--forest{--k-ground:var(--forest);--f-line:rgba(248,199,97,.32)}
[data-page="blue-lotus"] .x-head h2 em{color:var(--gold)}
[data-page="blue-lotus"] .bl-end__row{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center;justify-content:space-between;padding-block:clamp(32px,4vw,48px)}
[data-page="blue-lotus"] .bl-end__row p{font-size:14.5px;color:var(--ink-soft)}

/* single size (UK: cacao 250 g only) shown as a plain fact, not a selectable pill */
[data-page="blue-lotus"] .k-size{display:flex;align-items:baseline;gap:14px}
[data-page="blue-lotus"] .k-size .numeral{font-size:18px}

/* ---- blue lotus v3: brewing guide (the lotus counterpart of the cacao dose ruler) ---- */
[data-page="blue-lotus"] .bl-brew__head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,5vw,72px);align-items:end;margin-bottom:clamp(32px,4vw,48px)}
[data-page="blue-lotus"] .bl-brew__head h2 em{font-style:italic}
[data-page="blue-lotus"] .bl-brew__head p{color:var(--ink-soft)}
[data-page="blue-lotus"] .brew{--dl:var(--purple);position:relative;padding:clamp(24px,3vw,44px) clamp(16px,3vw,44px) 8px;border:1px solid var(--hairline);border-radius:var(--r-lg)}
[data-page="blue-lotus"] .brew__field{position:relative;padding:64px 0 22px;background-image:linear-gradient(to right,rgba(88,80,129,.16) 1px,transparent 1px);background-size:calc(100%/12) 100%;border-right:1px solid rgba(88,80,129,.16)}
[data-page="blue-lotus"] .brew__band{margin-left:calc(5/12*100%);width:calc(5/12*100%);display:grid;gap:10px}
[data-page="blue-lotus"] .brew__lbl{display:flex;flex-direction:column;white-space:nowrap;line-height:1.2}
[data-page="blue-lotus"] .brew__lbl b{font:400 clamp(20px,2vw,26px)/1.1 var(--display);color:var(--ink)}
[data-page="blue-lotus"] .brew__lbl span{font:400 13px/1.4 var(--body);letter-spacing:.12em;text-transform:uppercase;font-variant-numeric:tabular-nums;color:var(--ink-soft)}
[data-page="blue-lotus"] .brew__bar{height:18px;border:1px solid var(--dl);border-radius:2px;background:repeating-linear-gradient(135deg,var(--dl) 0 1.5px,transparent 1.5px 6px)}
[data-page="blue-lotus"] .brew__mark{position:absolute;top:0;bottom:0;left:calc(var(--at)/12*100%);width:0;border-left:1px dashed var(--dl)}
[data-page="blue-lotus"] .brew__mark span{position:absolute;top:4px;left:10px;white-space:nowrap;font:500 11px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--purple)}
[data-page="blue-lotus"] .brew__mark i{font-style:normal}
[data-page="blue-lotus"] .brew__mark--end span{top:24px;left:auto;right:10px;text-align:right}
[data-page="blue-lotus"] .brew__scale{position:relative;height:56px;border-top:1px solid var(--dl);
  background-image:linear-gradient(to right,var(--dl) 1px,transparent 1px),linear-gradient(to right,var(--dl) 1px,transparent 1px);
  background-size:calc(100%/24) 7px,calc(100%/12) 14px;background-repeat:repeat-x}
[data-page="blue-lotus"] .brew__scale::after{content:"";position:absolute;right:0;top:0;width:1px;height:14px;background:var(--dl)}
[data-page="blue-lotus"] .brew__scale span{white-space:nowrap;position:absolute;top:22px;left:calc(var(--g)/12*100%);transform:translateX(-50%);font:400 14px/1 var(--body);font-variant-numeric:tabular-nums;color:var(--ink)}
[data-page="blue-lotus"] .brew__scale span:first-child{transform:none}
[data-page="blue-lotus"] .brew__scale span:last-child{transform:translateX(-100%)}
[data-page="blue-lotus"] .bl-measure{margin-bottom:clamp(24px,3vw,40px)}
[data-page="blue-lotus"] .bl-acc{margin-top:clamp(72px,9vw,128px)}
[data-page="blue-lotus"] .bl-notes{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(16px,2.4vw,32px)}
[data-page="blue-lotus"] .bl-notes li{border-top:1px solid var(--hairline);padding:10px 0 12px;font:400 clamp(19px,1.7vw,22px)/1.2 var(--display);color:var(--ink)}
@media (max-width:960px){[data-page="blue-lotus"] .bl-brew__head{grid-template-columns:1fr}}
@media (max-width:620px){
  [data-page="blue-lotus"] .brew{padding:20px 14px 4px}
  [data-page="blue-lotus"] .brew__mark i{display:none}
  [data-page="blue-lotus"] .brew__mark--end span{left:auto;right:8px;text-align:right}
  [data-page="blue-lotus"] .brew__scale span{font-size:12px}
  [data-page="blue-lotus"] .brew__lbl b{font-size:17px}
}

/* sets */

/* ---- commerce kit (shared by shop, shop-cacao, shop-lotus, sets, cacao, blue-lotus) ---- */
[data-page="sets"]{--k-sel:var(--navy);--k-sel-ink:var(--paper)}
[data-page="sets"] .field{--k-sel:var(--f-ink);--k-sel-ink:var(--k-ground,var(--navy))}
[data-page="sets"] .k-hero{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(64px,10vw,144px));padding-bottom:clamp(56px,8vw,112px)}
[data-page="sets"] .k-hero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,6vw,96px);align-items:end}
[data-page="sets"] .k-hero__side{display:grid;gap:24px;padding-bottom:.7em;max-width:40ch}
[data-page="sets"] .k-hero__side .rule{width:120px}
[data-page="sets"] .k-hero h1 em{font-style:italic}

/* buttons in the world colours */
[data-page="sets"] .btn.k-forest{--b-bg:var(--forest);--b-ink:var(--paper)}
[data-page="sets"] .btn.k-paper{--b-bg:var(--paper);--b-ink:var(--navy)}
[data-page="sets"] .btn.k-paper-p{--b-bg:var(--paper);--b-ink:var(--purple)}
[data-page="sets"] .k-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}

/* size pills: real radios */
[data-page="sets"] .pills{border:0;margin:0;padding:0;min-width:0}
[data-page="sets"] .pills legend{padding:0;margin-bottom:12px}
[data-page="sets"] .pills__row{display:flex;gap:8px;flex-wrap:wrap}
[data-page="sets"] .pill{position:relative;display:block}
[data-page="sets"] .pill input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
[data-page="sets"] .pill span{display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:48px;padding:0 22px;border:1px solid var(--f-line,var(--hairline));border-radius:var(--r-full);font:400 15.5px/1 var(--body);font-variant-numeric:tabular-nums;letter-spacing:.02em;transition:background .2s,color .2s,border-color .2s}
[data-page="sets"] .pill:hover span{border-color:currentColor}
[data-page="sets"] .pill input:checked+span{background:var(--k-sel);border-color:var(--k-sel);color:var(--k-sel-ink)}
[data-page="sets"] .pill input:focus-visible+span{outline:2px solid currentColor;outline-offset:3px}

/* price */
[data-page="sets"] .k-price{display:flex;align-items:baseline;gap:14px;font-size:22px}
[data-page="sets"] .k-price .eyebrow{opacity:.72}

/* a dark panel that a pack sits on */
[data-page="sets"] .k-stage{border-radius:var(--r-lg);padding:clamp(20px,3vw,44px);display:grid;place-items:center}
[data-page="sets"] .k-stage--navy{background:var(--navy)}
[data-page="sets"] .k-stage--forest{background:var(--forest)}

/* The Pair: two pack faces overlapping */
[data-page="sets"] .k-pair{position:relative;width:100%;aspect-ratio:10/7}
[data-page="sets"] .k-pair .pack{position:absolute;width:66%}
[data-page="sets"] .k-pair .pack--cacao{left:1%;top:2%;transform:rotate(-3deg)}
[data-page="sets"] .k-pair .pack--lotus{right:1%;bottom:2%;transform:rotate(2deg);box-shadow:0 0 0 1px rgba(255,255,255,.08)}

/* product block on white */
[data-page="sets"] .k-prod{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
[data-page="sets"] .k-prod__visual{display:block;text-decoration:none;padding:clamp(0px,2vw,24px)}
[data-page="sets"] .k-prod__visual .pack{transition:transform .5s var(--ease)}
[data-page="sets"] .k-prod__visual:hover .pack{transform:translateY(-4px) rotate(-1deg)}
[data-page="sets"] .k-prod__info{display:grid;gap:26px;align-content:start}
[data-page="sets"] .k-name{font-size:clamp(34px,3.6vw,52px);line-height:1.04}
[data-page="sets"] .k-name small{display:inline-block;font-size:max(15px,.36em);letter-spacing:.06em;vertical-align:1.3em;margin-left:.22em}
[data-page="sets"] .k-latin{font:italic 400 clamp(20px,1.8vw,24px)/1.2 var(--display);margin-top:10px}
[data-page="sets"] .k-desc{color:var(--ink-soft);max-width:46ch}
[data-page="sets"] .field .k-desc{color:inherit;opacity:.92}
[data-page="sets"] .k-meta{display:grid;grid-template-columns:auto 1fr;margin:0;font-size:15px;border-top:1px solid var(--f-line,var(--hairline))}
[data-page="sets"] .k-meta dt,[data-page="sets"] .k-meta dd{margin:0;padding-block:12px;border-bottom:1px solid var(--f-line,var(--hairline))}
[data-page="sets"] .k-meta dt{font:500 11.5px/1.9 var(--body);letter-spacing:.16em;text-transform:uppercase;padding-top:14px;padding-right:28px}
[data-page="sets"] .k-meta em{font-style:italic}
[data-page="sets"] .k-small{font-size:14.5px;line-height:1.6;color:var(--ink-soft)}
[data-page="sets"] .field .k-small{color:inherit;opacity:.86}

/* link rows (learn more) */
[data-page="sets"] .k-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
[data-page="sets"] .k-split>header{display:grid;gap:22px;align-content:start}
[data-page="sets"] .k-links{list-style:none;margin:0;padding:0;border-top:1px solid var(--f-line,var(--hairline))}
[data-page="sets"] .k-links li{border-bottom:1px solid var(--f-line,var(--hairline))}
[data-page="sets"] .k-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;align-items:center;padding:26px 0;text-decoration:none;min-height:44px}
[data-page="sets"] .k-link b{font:400 clamp(24px,2.4vw,32px)/1.15 var(--display)}
[data-page="sets"] .k-link span{grid-column:1;opacity:.86;font-size:15.5px}
[data-page="sets"] .k-link i{grid-row:1/3;grid-column:2;display:block;width:28px;height:1px;background:currentColor;position:relative;transition:width .3s var(--ease)}
[data-page="sets"] .k-link i::after{content:"";position:absolute;right:0;top:-4px;width:9px;height:9px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);transform-origin:center}
[data-page="sets"] .k-link:hover i{width:44px}
[data-page="sets"] .k-link:focus-visible{outline-offset:4px}

/* Pair teaser */
[data-page="sets"] .k-teaser{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
[data-page="sets"] .k-teaser__text{display:grid;gap:24px;justify-items:start}
[data-page="sets"] .k-teaser__text h2 em{font-style:italic}

@media (max-width:900px){
  [data-page="sets"] .k-hero__grid,[data-page="sets"] .k-prod,[data-page="sets"] .k-split,[data-page="sets"] .k-teaser{grid-template-columns:1fr}
  [data-page="sets"] .k-prod__visual{padding:0}
}
@media (max-width:620px){
  [data-page="sets"] .k-actions .btn{flex:1 1 100%}
  [data-page="sets"] .k-link{padding:22px 0}
}
/* small, decorative pack faces: let the tagline scale like the printed label instead of wrapping */
[data-page="sets"] .k-pair .pack__line,[data-page="sets"] .st-cat .pack__line,[data-page="sets"] .x-item .pack__line{font-size:2.9cqw;white-space:nowrap}

/* ---- sets & gifts: brand world (navy + gold) ---- */
[data-page="sets"] .st-pair{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(36px,6vw,96px);align-items:center}
[data-page="sets"] .st-pair .k-pair{max-width:720px}
[data-page="sets"] .st-inside{list-style:none;margin:0;padding:0;border-top:1px solid var(--hairline)}
[data-page="sets"] .st-inside li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 20px;padding:16px 0;border-bottom:1px solid var(--hairline);align-items:baseline}
[data-page="sets"] .st-inside b{font:400 22px/1.2 var(--display)}
[data-page="sets"] .st-inside .numeral{font-size:17px}
[data-page="sets"] .st-inside span:last-child{grid-column:1/-1;font-size:14.5px;color:var(--ink-soft)}
[data-page="sets"] .st-inside a{text-decoration:none}
[data-page="sets"] .st-inside a:hover b{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
[data-page="sets"] .st-qty{display:inline-flex;align-items:center;height:48px;border:1px solid var(--hairline);border-radius:var(--r-full)}
[data-page="sets"] .st-qty button{width:46px;height:46px;border:0;background:none;color:inherit;font:400 20px/1 var(--body);cursor:pointer;border-radius:var(--r-full)}
[data-page="sets"] .st-qty input{width:40px;height:44px;border:0;background:none;color:inherit;text-align:center;font:400 17px/1 var(--body);font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}
[data-page="sets"] .st-qty input::-webkit-inner-spin-button,[data-page="sets"] .st-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
[data-page="sets"] .st-buy{display:flex;flex-wrap:wrap;gap:12px;align-items:end}
[data-page="sets"] .st-buy .btn{flex:1 1 200px}
[data-page="sets"] .st-buy .lbl{margin-bottom:12px}

/* gifts (gold band) */
[data-page="sets"] .st-gift h2 em{font-style:italic}
[data-page="sets"] .st-gift-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--navy)}
[data-page="sets"] .st-gift-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 32px;align-items:baseline;padding:clamp(22px,2.6vw,32px) 0;border-bottom:1px solid var(--f-line)}
[data-page="sets"] .st-gift-list h3{font-size:clamp(26px,2.6vw,36px);line-height:1.1}
[data-page="sets"] .st-gift-list p{grid-column:1/-1;max-width:52ch}
[data-page="sets"] .st-status{font:500 11.5px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--f-line);border-radius:var(--r-full);padding:8px 14px;white-space:nowrap}
[data-page="sets"] .st-gift .k-split>div{display:grid;gap:28px}

/* choose one */
[data-page="sets"] .st-cats{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,96px)}
[data-page="sets"] .st-cat{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(20px,3vw,36px);align-items:center;text-decoration:none;padding-top:clamp(24px,3vw,36px);border-top:1px solid var(--hairline)}
[data-page="sets"] .st-cat .pack{transition:transform .5s var(--ease)}
[data-page="sets"] .st-cat:hover .pack{transform:rotate(-2deg) translateY(-3px)}
[data-page="sets"] .st-cat h3{font-size:clamp(26px,2.6vw,36px);line-height:1.08;margin-bottom:10px}
[data-page="sets"] .st-cat h3 em{font-style:italic}
[data-page="sets"] .st-cat p{color:var(--ink-soft);font-size:15.5px;margin-bottom:18px}
[data-page="sets"] .st-head{margin-bottom:clamp(36px,4vw,56px)}
[data-page="sets"] .st-head em{font-style:italic}
@media (max-width:900px){
  [data-page="sets"] .st-pair,[data-page="sets"] .st-cats{grid-template-columns:1fr}
}
@media (max-width:480px){
  [data-page="sets"] .st-cat{grid-template-columns:1fr}
  [data-page="sets"] .st-cat .pack{max-width:260px}
  [data-page="sets"] .st-gift-list li{grid-template-columns:1fr}
  [data-page="sets"] .st-status{justify-self:start}
}

[data-page="sets"] .st-cat{border:1px solid var(--hairline);border-radius:10px;padding:16px;transition:border-color .2s ease-out}
[data-page="sets"] .st-cat:hover{border-color:var(--ink)}
[data-page="sets"] .st-cat .prod-img{border-radius:6px}

/* single size (UK: cacao 250 g only) shown as a plain fact, not a selectable pill */
[data-page="sets"] .k-size{display:flex;align-items:baseline;gap:14px}
[data-page="sets"] .k-size .numeral{font-size:18px}

/* rituals */

[data-page="rituals"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(72px,10vw,150px));padding-bottom:clamp(64px,8vw,120px)}
[data-page="rituals"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s6);align-items:end}
[data-page="rituals"] .op .eyebrow{grid-column:1/-1}
[data-page="rituals"] .op h1{grid-column:1/9;font-size:clamp(48px,8.4vw,128px);line-height:.98;letter-spacing:-.01em}
[data-page="rituals"] .op__lead{grid-column:9/13;font-size:clamp(18px,1.5vw,21px);line-height:1.6}
[data-page="rituals"] .op__lead strong{font-weight:400;font-family:var(--display);font-style:italic;font-size:1.25em;display:block;margin-bottom:.5em;line-height:1.2}
[data-page="rituals"] .op__jump{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px;margin-top:var(--s4)}
[data-page="rituals"] .op__jump a{text-decoration:none;min-height:44px;padding-inline:18px}

/* shared section head */
[data-page="rituals"] .sh{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s4);align-items:end;margin-bottom:clamp(40px,6vw,80px)}
[data-page="rituals"] .sh .eyebrow{grid-column:1/-1;color:var(--ink-soft)}
[data-page="rituals"] .sh h2{grid-column:1/8}
[data-page="rituals"] .sh p{grid-column:9/13;font-size:15px;color:var(--ink-soft)}

/* cacao steps */
[data-page="rituals"] .steps{list-style:none;margin:0;padding:0}
[data-page="rituals"] .steps li{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);align-items:start;padding-block:clamp(26px,3vw,44px);border-top:1px solid var(--hairline)}
[data-page="rituals"] .steps li:last-child{border-bottom:1px solid var(--hairline)}
[data-page="rituals"] .steps__n{grid-column:1/3;font:400 clamp(56px,6vw,96px)/.8 var(--display);color:var(--accent)}
[data-page="rituals"] .steps__t{grid-column:3/11;font:400 clamp(24px,2.6vw,38px)/1.25 var(--display);letter-spacing:-.003em}
[data-page="rituals"] .steps__t em{font-style:italic}
[data-page="rituals"] .steps__end{margin-top:clamp(28px,3vw,40px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5)}
[data-page="rituals"] .steps__end p{grid-column:3/11;font:italic 400 clamp(22px,2vw,28px)/1.3 var(--display);color:var(--accent)}
[data-page="rituals"] .prep{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5)}
[data-page="rituals"] .prep>div{grid-column:3/11;font-size:15.5px;line-height:1.65;color:var(--ink-soft);max-width:60ch}
[data-page="rituals"] .prep .eyebrow{display:block;color:var(--ink);margin-bottom:10px}

/* dose strip */
[data-page="rituals"] .dose{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s5);align-items:end}
[data-page="rituals"] .dose__h{grid-column:1/4}
[data-page="rituals"] .dose__h .eyebrow{display:block;margin-bottom:8px}
[data-page="rituals"] .dose__h .link-arrow{margin-top:var(--s5)}
[data-page="rituals"] .eve__care .link-arrow{margin-top:var(--s5);opacity:1}
[data-page="rituals"] .dose__h p{font:400 clamp(24px,2.4vw,32px)/1.15 var(--display)}
[data-page="rituals"] .dose__list{grid-column:4/13;display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none}
[data-page="rituals"] .dose__list li{padding:0 20px;border-left:1px solid var(--f-line)}
[data-page="rituals"] .dose__list b{display:block;font:400 clamp(40px,4.6vw,68px)/1 var(--body);letter-spacing:-.02em;font-variant-numeric:lining-nums}
[data-page="rituals"] .dose__list b small{font-size:.42em;letter-spacing:0;margin-left:4px}
[data-page="rituals"] .dose__list span{display:block;margin-top:10px;font:500 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase}

/* sharing */
[data-page="rituals"] .share{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s7)}
[data-page="rituals"] .share__intro{grid-column:1/5}
[data-page="rituals"] .share__intro .eyebrow{display:block;color:var(--ink-soft);margin-bottom:var(--s5)}
[data-page="rituals"] .share__intro h2{margin-bottom:var(--s5)}
[data-page="rituals"] .share__intro p{font-size:clamp(17px,1.4vw,19px);line-height:1.7;max-width:36ch}
[data-page="rituals"] .share__list{grid-column:6/13;margin:0;padding:0;list-style:none}
[data-page="rituals"] .share__list li{padding-block:clamp(20px,2.4vw,30px);border-top:1px solid var(--hairline)}
[data-page="rituals"] .share__list li:last-child{border-bottom:1px solid var(--hairline)}
[data-page="rituals"] .share__list h3{font-size:clamp(24px,2.2vw,30px);line-height:1.2;margin-bottom:8px}
[data-page="rituals"] .share__list h3 em{font-style:italic}
[data-page="rituals"] .share__list p{font-size:16.5px;line-height:1.65;color:var(--ink-soft);max-width:52ch}

/* lotus evening */
[data-page="rituals"] .eve{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s7)}
[data-page="rituals"] .eve__head{grid-column:1/6}
[data-page="rituals"] .eve__head .eyebrow{display:block;margin-bottom:var(--s5);opacity:.86}
[data-page="rituals"] .eve__head h2{margin-bottom:var(--s6)}
[data-page="rituals"] .eve__meta{display:flex;flex-wrap:wrap;gap:8px}
[data-page="rituals"] .eve__steps{grid-column:7/13;list-style:none;margin:0;padding:0;counter-reset:e}
[data-page="rituals"] .eve__steps li{display:grid;grid-template-columns:56px 1fr;gap:16px;padding-block:22px;border-top:1px solid var(--f-line);font-size:clamp(18px,1.5vw,21px);line-height:1.55}
[data-page="rituals"] .eve__steps li:last-child{border-bottom:1px solid var(--f-line)}
[data-page="rituals"] .eve__steps li::before{counter-increment:e;content:counter(e);font:400 40px/1 var(--display);color:var(--gold)}
[data-page="rituals"] .eve__care{grid-column:7/13;font-size:14.5px;opacity:.86}

/* care + form */
[data-page="rituals"] .end{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s8)}
[data-page="rituals"] .care{grid-column:1/6}
[data-page="rituals"] .care h2{margin-bottom:var(--s5)}
[data-page="rituals"] .care p{color:var(--ink-soft);max-width:40ch}
[data-page="rituals"] .care .link-arrow{margin-top:var(--s6)}
[data-page="rituals"] .guide{grid-column:7/13;border-top:1px solid var(--hairline);padding-top:var(--s6)}
[data-page="rituals"] .guide h2{margin-bottom:var(--s4)}
[data-page="rituals"] .guide__row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;margin-top:var(--s6)}
[data-page="rituals"] .guide__micro{margin-top:var(--s4);font-size:14px;color:var(--ink-soft)}
[data-page="rituals"] [data-form-result]{margin-top:var(--s4);font:italic 400 20px/1.4 var(--display);color:var(--accent)}

@media (max-width:900px){
  [data-page="rituals"] .op h1,[data-page="rituals"] .op__lead{grid-column:1/-1}
  [data-page="rituals"] .sh h2,[data-page="rituals"] .sh p{grid-column:1/-1}
  [data-page="rituals"] .steps__n{grid-column:1/-1;margin-bottom:12px;font-size:52px}
  [data-page="rituals"] .steps__t,[data-page="rituals"] .steps__end p,[data-page="rituals"] .prep>div{grid-column:1/-1}
  [data-page="rituals"] .dose__h,[data-page="rituals"] .dose__list{grid-column:1/-1}
  [data-page="rituals"] .dose__list{grid-template-columns:1fr}
  [data-page="rituals"] .dose__list li{border-left:0;border-top:1px solid var(--f-line);padding:16px 0;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
  [data-page="rituals"] .dose__list span{margin:0}
  [data-page="rituals"] .share__intro,[data-page="rituals"] .share__list{grid-column:1/-1}
  [data-page="rituals"] .eve__head,[data-page="rituals"] .eve__steps,[data-page="rituals"] .eve__care{grid-column:1/-1}
  [data-page="rituals"] .care,[data-page="rituals"] .guide{grid-column:1/-1}
  [data-page="rituals"] .guide__row{grid-template-columns:1fr}
  [data-page="rituals"] .guide__row .btn{width:100%}
}

[data-page="rituals"] .prep{align-items:start;row-gap:var(--s6)}
[data-page="rituals"] .prep .prep__fig{grid-column:9/13;grid-row:1}
[data-page="rituals"] .prep>div{grid-column:3/8;grid-row:1}
[data-page="rituals"] .share__fig{max-width:300px;margin:0 0 var(--s6)}
@media (max-width:900px){[data-page="rituals"] .prep .prep__fig,[data-page="rituals"] .prep>div{grid-column:1/-1;grid-row:auto}}

/* hero after removing the intro line: title spans the grid, contour fills the right edge */
[data-page="rituals"] .op h1{grid-column:1/11}
@media (max-width:900px){[data-page="rituals"] .op h1{grid-column:1/-1}}

/* blue lotus evening: the same numbered-step treatment as the cacao ritual, on purple */
[data-page="rituals"] #r-lotus .sh{align-items:end}
[data-page="rituals"] #r-lotus .eve__meta{grid-column:9/13;justify-content:flex-end}
[data-page="rituals"] #r-lotus .steps li{border-color:var(--f-line)}
[data-page="rituals"] #r-lotus .steps__n,[data-page="rituals"] #r-lotus .steps__end p{color:var(--gold)}
[data-page="rituals"] #r-lotus .prep>div{color:var(--paper);opacity:.9}
[data-page="rituals"] #r-lotus .prep .eyebrow{color:var(--paper)}
[data-page="rituals"] #r-lotus .eve__shop{margin-top:var(--s5)}
@media (max-width:900px){[data-page="rituals"] #r-lotus .eve__meta{grid-column:1/-1;justify-content:flex-start}}

/* sourcing */

[data-page="sourcing"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(72px,10vw,150px));padding-bottom:clamp(64px,8vw,120px)}
[data-page="sourcing"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s6);align-items:end}
[data-page="sourcing"] .op .eyebrow{grid-column:1/-1;color:var(--paper)}
[data-page="sourcing"] .op h1{grid-column:1/10;font-size:clamp(48px,8.4vw,128px);line-height:.98;letter-spacing:-.01em}
[data-page="sourcing"] .op__lead{grid-column:9/13;font-size:clamp(17px,1.4vw,19px);line-height:1.6}

/* origin */
[data-page="sourcing"] .place{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s7)}
[data-page="sourcing"] .place__name{grid-column:1/-1;border-bottom:1px solid var(--hairline);padding-bottom:clamp(24px,3vw,40px)}
[data-page="sourcing"] .place__name .eyebrow{color:var(--ink-soft);display:block;margin-bottom:var(--s4)}
[data-page="sourcing"] .place__name h2{font-size:clamp(68px,15vw,232px);line-height:.86;letter-spacing:-.03em;color:var(--forest)}
[data-page="sourcing"] .place__name h2 span{display:block;font:italic 400 clamp(22px,2.8vw,40px)/1.2 var(--display);letter-spacing:0;color:var(--ink);margin-top:.4em;padding-left:.2em}
[data-page="sourcing"] .place__facts{grid-column:1/5;list-style:none;margin:0;padding:0;display:grid;gap:0;align-content:start}
[data-page="sourcing"] .place__facts li{display:flex;justify-content:space-between;gap:16px;padding-block:14px;border-bottom:1px solid var(--hairline);font-size:15px}
[data-page="sourcing"] .place__facts li span:first-child{color:var(--ink-soft)}
[data-page="sourcing"] .place__facts li span:last-child{text-align:right}
[data-page="sourcing"] .place__body{grid-column:6/13;font-size:clamp(18px,1.5vw,21px);line-height:1.7;max-width:36em}
[data-page="sourcing"] .place__body p+p{margin-top:1em}
[data-page="sourcing"] .place__body strong{font-weight:500}

/* process (gold band, forest ink: cacao world) */
[data-page="sourcing"] .src-proc .link-arrow{color:var(--gold)}
[data-page="sourcing"] .proc__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);align-items:end;margin-bottom:clamp(48px,6vw,88px)}
[data-page="sourcing"] .proc__head h2{grid-column:1/8}
[data-page="sourcing"] .proc__head p{grid-column:9/13;font-size:15px;opacity:.86}
[data-page="sourcing"] .proc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid var(--f-line)}
[data-page="sourcing"] .proc li{position:relative;padding:28px 20px 8px 0;display:grid;grid-template-rows:auto auto 1fr;gap:12px}
[data-page="sourcing"] .proc li+li{padding-left:20px;border-left:1px solid var(--f-line)}
[data-page="sourcing"] .proc li::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--gold)}
[data-page="sourcing"] .proc li+li::before{left:-4px}
[data-page="sourcing"] .proc__n{font:400 clamp(40px,4vw,60px)/1 var(--body);color:var(--gold)}
[data-page="sourcing"] .proc h3{font-size:clamp(21px,1.8vw,26px);line-height:1.15}
[data-page="sourcing"] .proc p{font-size:14.5px;line-height:1.55;opacity:.86}
[data-page="sourcing"] .proc__lot{margin-top:clamp(40px,5vw,64px);display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;font-size:14.5px}
[data-page="sourcing"] .proc__lot code span{white-space:nowrap}
[data-page="sourcing"] .proc__lot code{font:400 13px/1.6 var(--body);letter-spacing:.12em;padding:10px 14px;border:1px solid var(--f-line);border-radius:var(--r-sm)}

/* quality */
[data-page="sourcing"] .qual{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s6)}
[data-page="sourcing"] .qual h2{grid-column:1/5}
[data-page="sourcing"] .qual__body{grid-column:6/13;font-size:clamp(17px,1.4vw,19px);line-height:1.72;max-width:38em}
[data-page="sourcing"] .qual__body p+p{margin-top:1em}
[data-page="sourcing"] .qual__coda{grid-column:6/13;font:italic 400 clamp(28px,3.2vw,44px)/1.15 var(--display);color:var(--forest);padding-top:var(--s6);border-top:1px solid var(--hairline);max-width:22ch}

/* never in our cacao */
[data-page="sourcing"] .never{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s6);margin-top:clamp(72px,9vw,136px);padding-top:clamp(40px,5vw,64px);border-top:1px solid var(--ink)}
[data-page="sourcing"] .never__h{grid-column:1/5}
[data-page="sourcing"] .never__h h2 em{font-style:italic;color:var(--forest)}
[data-page="sourcing"] .never__h p{margin-top:var(--s5);font-size:15.5px;line-height:1.6;color:var(--ink-soft);max-width:30ch}
[data-page="sourcing"] .never__h .link-arrow{margin-top:var(--s6);color:var(--forest)}
[data-page="sourcing"] .never__list{grid-column:6/13;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:var(--s6)}
[data-page="sourcing"] .never__list li{display:flex;align-items:baseline;gap:16px;padding-block:clamp(18px,2vw,26px);border-bottom:1px solid var(--hairline);font:400 clamp(24px,2.4vw,34px)/1.15 var(--display)}
[data-page="sourcing"] .never__list li:nth-child(-n+2){border-top:1px solid var(--hairline)}
[data-page="sourcing"] .never__list li::before{content:"No";flex:none;font:500 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);transform:translateY(-.35em)}

/* lotus */
[data-page="sourcing"] .lotus{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s7);align-items:center}
[data-page="sourcing"] .lotus__text{grid-column:1/7}
[data-page="sourcing"] .lotus__text .eyebrow{display:block;margin-bottom:var(--s5);opacity:.86}
[data-page="sourcing"] .lotus__text h2{margin-bottom:var(--s5)}
[data-page="sourcing"] .lotus__text p{font-size:clamp(17px,1.4vw,19px);line-height:1.7;max-width:40ch}
[data-page="sourcing"] .lotus__text p i{font-style:italic}
[data-page="sourcing"] .lotus__text .link-arrow{margin-top:var(--s6);display:inline-flex}
[data-page="sourcing"] .lotus__pack{grid-column:8/13}
[data-page="sourcing"] .lotus__pack{padding:0}
[data-page="sourcing"] .lotus__pack .pack{box-shadow:0 1px 0 rgba(0,0,0,.2)}

@media (max-width:900px){
  [data-page="sourcing"] .op h1,[data-page="sourcing"] .op__lead{grid-column:1/-1}
  [data-page="sourcing"] .place__facts,[data-page="sourcing"] .place__body{grid-column:1/-1}
  [data-page="sourcing"] .proc__head h2,[data-page="sourcing"] .proc__head p{grid-column:1/-1}
  [data-page="sourcing"] .proc__head p{margin-top:var(--s4)}
  [data-page="sourcing"] .proc{grid-template-columns:1fr;border-top:0;border-left:1px solid var(--f-line);margin-left:4px}
  [data-page="sourcing"] .proc li,[data-page="sourcing"] .proc li+li{padding:0 0 32px 28px;border-left:0;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:18px;row-gap:4px}
  [data-page="sourcing"] .proc li::before,[data-page="sourcing"] .proc li+li::before{top:14px;left:-4px}
  [data-page="sourcing"] .proc__n{grid-row:1/3;font-size:40px;min-width:1.2em}
  [data-page="sourcing"] .qual h2,[data-page="sourcing"] .qual__body,[data-page="sourcing"] .qual__coda{grid-column:1/-1}
  [data-page="sourcing"] .lotus__text,[data-page="sourcing"] .lotus__pack{grid-column:1/-1}
  [data-page="sourcing"] .never__h,[data-page="sourcing"] .never__list{grid-column:1/-1}
}
@media (max-width:560px){
  [data-page="sourcing"] .never__list{grid-template-columns:1fr}
  [data-page="sourcing"] .never__list li:nth-child(2){border-top:0}
}

[data-page="sourcing"] .place__name h2 span.with-ico{display:flex}
[data-page="sourcing"] .place__name h2 span .ico{color:var(--forest)}
[data-page="sourcing"] .proc__n{display:flex;justify-content:space-between;align-items:center;padding-right:4px}
@media (max-width:900px){
  [data-page="sourcing"] .proc__n{flex-direction:column;justify-content:flex-start;align-items:center;gap:10px;padding-right:0}
}

[data-page="sourcing"] .src-real{margin-top:clamp(64px,8vw,96px);padding-top:clamp(32px,4vw,48px);border-top:1px solid var(--hairline)}
[data-page="sourcing"] .src-real__q{font:400 clamp(28px,3.2vw,44px)/1.15 var(--display);color:var(--forest);max-width:22ch;margin-bottom:clamp(32px,4vw,48px)}
[data-page="sourcing"] .src-real__q em{font-style:italic}
[data-page="sourcing"] .src-real__row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s5)}
@media (max-width:700px){[data-page="sourcing"] .src-real__row{grid-template-columns:1fr 1fr;gap:var(--s4)}}

/* hero after removing the intro line: title spans the grid, contour fills the right edge */
[data-page="sourcing"] .op h1{grid-column:1/11}
@media (max-width:900px){[data-page="sourcing"] .op h1{grid-column:1/-1}}

/* ---- blue lotus sourcing (v3): same depth as the cacao section ---- */
[data-page="sourcing"] .bl-place{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s7);align-items:start}
[data-page="sourcing"] .bl-place__name{grid-column:1/8;font-size:clamp(64px,11vw,176px);line-height:.88;letter-spacing:-.03em;color:var(--paper)}
[data-page="sourcing"] .bl-place__name span{display:flex;margin-top:.5em;font:italic 400 clamp(20px,2.4vw,34px)/1.2 var(--display);letter-spacing:0;color:var(--gold)}
[data-page="sourcing"] .bl-place__img{grid-column:8/13;align-self:end}
[data-page="sourcing"] .bl-facts{grid-column:1/5;list-style:none;margin:0;padding:0;border-top:1px solid var(--f-line)}
[data-page="sourcing"] .bl-facts li{display:flex;justify-content:space-between;gap:16px;padding-block:14px;border-bottom:1px solid var(--f-line);font-size:15px}
[data-page="sourcing"] .bl-facts li span:first-child{opacity:.8}
[data-page="sourcing"] .bl-facts li span:last-child{text-align:right}
[data-page="sourcing"] .bl-body{grid-column:6/13;font-size:clamp(17px,1.4vw,19px);line-height:1.7;max-width:40em}
[data-page="sourcing"] .bl-body p+p{margin-top:1em}
[data-page="sourcing"] .bl-body i{font-style:italic}
[data-page="sourcing"] .bl-note{font:italic 400 clamp(19px,1.6vw,22px)/1.4 var(--display);padding-top:var(--s4);border-top:1px dashed var(--f-line)}
[data-page="sourcing"] .bl-body .link-arrow{margin-top:var(--s6);color:var(--gold)}
[data-page="sourcing"] .proc--3{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(56px,7vw,96px)}
@media (max-width:900px){
  [data-page="sourcing"] .bl-place__name,[data-page="sourcing"] .bl-place__img,[data-page="sourcing"] .bl-facts,[data-page="sourcing"] .bl-body{grid-column:1/-1}
  [data-page="sourcing"] .proc--3{grid-template-columns:1fr}
}

/* story */

[data-page="story"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(72px,10vw,150px));padding-bottom:clamp(64px,8vw,120px)}
[data-page="story"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s7);align-items:end}
[data-page="story"] .op__eyebrow{grid-column:1/-1;color:var(--gold)}
[data-page="story"] .op h1{grid-column:1/11;font-size:clamp(48px,8.4vw,128px);line-height:.98;letter-spacing:-.01em}
[data-page="story"] .op h1 em{display:block;padding-left:1.1em}
[data-page="story"] .op__meta{grid-column:9/13;display:grid;gap:10px;padding-top:var(--s4);border-top:1px solid var(--f-line)}
[data-page="story"] .op__meta span{font-size:15px;opacity:.86}

/* essay */

/* beliefs */
[data-page="story"] .bel__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);align-items:end;margin-bottom:clamp(40px,6vw,88px)}
[data-page="story"] .bel__head h2{grid-column:1/8}
[data-page="story"] .bel__head p{grid-column:9/13;font-size:15px}
[data-page="story"] .bel__cta{margin-top:clamp(40px,5vw,64px);display:flex;flex-wrap:wrap;gap:var(--s5);align-items:center}

/* philosophy */
[data-page="story"] .phil{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s7);align-items:center}
[data-page="story"] .phil__text{grid-column:1/7}
[data-page="story"] .phil__text .eyebrow{color:var(--gold);margin-bottom:var(--s5);display:block}
[data-page="story"] .phil__text h2{margin-bottom:var(--s6)}
[data-page="story"] .phil__text p{font-size:clamp(17px,1.4vw,19px);line-height:1.7;max-width:46ch}
[data-page="story"] .phil__text p+p{margin-top:1em}
[data-page="story"] .phil__close{font:italic 400 clamp(24px,2.4vw,32px)/1.25 var(--display)!important;color:var(--gold);margin-top:var(--s6)!important}
[data-page="story"] .phil__mark{grid-column:8/13;justify-self:center;width:min(320px,64%);color:var(--navy)}
[data-page="story"] .phil__text h2 em{font-style:italic}
[data-page="story"] .phil__text p{color:var(--ink-soft)}
[data-page="story"] .phil__text .link-arrow{margin-top:var(--s6);color:var(--ink)}
[data-page="story"] .axis{grid-column:8/13;display:grid;grid-template-rows:auto 1fr auto 1fr auto;justify-items:center;min-height:clamp(480px,48vw,640px);text-align:center}
[data-page="story"] .axis__label .eyebrow{color:var(--gold);display:block;margin-bottom:8px}
[data-page="story"] .axis__label b{display:block;font:400 clamp(26px,2.6vw,36px)/1.1 var(--display)}
[data-page="story"] .axis__label small{display:block;margin-top:6px;font-size:14.5px;opacity:.8;max-width:26ch}
[data-page="story"] .axis__line{width:1px;background:var(--f-line);min-height:48px;margin-block:18px;position:relative}
[data-page="story"] .axis__line--up::before,[data-page="story"] .axis__line--down::after{content:"";position:absolute;left:-4px;width:9px;height:1px;background:var(--f-accent)}
[data-page="story"] .axis__line--up::before{top:0}
[data-page="story"] .axis__line--down::after{bottom:0}
[data-page="story"] .axis .logo-mark{width:clamp(120px,12vw,168px);color:var(--f-accent)}
[data-page="story"] .axis__mid{font:500 11px/1.3 var(--body);letter-spacing:.18em;text-transform:uppercase;opacity:.8;margin-top:12px}

@media (max-width:900px){
  [data-page="story"] .op h1,[data-page="story"] .op__meta{grid-column:1/-1}
  [data-page="story"] .op h1 em{padding-left:.6em}
        [data-page="story"] .bel__head h2,[data-page="story"] .bel__head p{grid-column:1/-1}
  [data-page="story"] .bel__head p{margin-top:var(--s4)}
      [data-page="story"] .phil__text,[data-page="story"] .axis,[data-page="story"] .phil__mark{grid-column:1/-1}
}

/* hero after removing the intro line: title spans the grid, contour fills the right edge */
[data-page="story"] .op h1{grid-column:1/11}
@media (max-width:900px){[data-page="story"] .op h1{grid-column:1/-1}}

/* ---- essay v3: the founding sentence as a large lead; photo and text balanced below; one continuous essay ---- */
[data-page="story"] .essay{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:clamp(48px,6vw,96px);align-items:start}
[data-page="story"] .essay__lead{grid-column:1/11;font:400 clamp(32px,3.9vw,56px)/1.14 var(--display);letter-spacing:-.008em;color:var(--ink);max-width:24ch;text-wrap:balance}
[data-page="story"] .essay__lead em{font-style:italic}
[data-page="story"] .essay__side{grid-column:1/5}
[data-page="story"] .essay__side .photo-fig{position:static;max-width:312px}
[data-page="story"] .essay__body{grid-column:6/12;font-size:clamp(18px,1.45vw,21px);line-height:1.72;max-width:58ch;color:var(--ink-soft)}
[data-page="story"] .essay__body p+p{margin-top:1.1em}
[data-page="story"] .essay__body p:first-child{color:var(--ink)}
@media (max-width:900px){
  [data-page="story"] .essay__lead,[data-page="story"] .essay__side,[data-page="story"] .essay__body{grid-column:1/-1}
  [data-page="story"] .essay__side .photo-fig{max-width:240px}
}
/* ---- beliefs v3: four equal items, same heading size, same body size, one alignment ---- */
[data-page="story"] .bel{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s7);row-gap:0;border-top:1px solid var(--f-line)}
[data-page="story"] .bel li{display:grid;gap:12px;align-content:start;padding:clamp(28px,3vw,40px) 0;border-bottom:1px solid var(--f-line)}
[data-page="story"] .bel h3{font:400 clamp(26px,2.4vw,34px)/1.15 var(--display);letter-spacing:-.003em}
[data-page="story"] .bel p{font-size:clamp(16px,1.3vw,18px);line-height:1.6;max-width:40ch}
@media (max-width:700px){[data-page="story"] .bel{grid-template-columns:1fr}}

/* What we believe — gold band, real text, uniform type */
[data-page="story"] .bel-band{padding-block:clamp(64px,8vw,112px)}
[data-page="story"] .bel-band .bel__head{margin-bottom:clamp(28px,3.5vw,48px)}
[data-page="story"] .bel-band .bel__head h2{font-size:clamp(34px,4vw,56px);line-height:1.08;color:var(--navy)}
[data-page="story"] .bel-band .bel__head p{color:var(--navy);opacity:.8;font-size:17px;align-self:end}
[data-page="story"] .bel-band .bel{border-top:1px solid rgba(44,39,62,.34);column-gap:clamp(32px,5vw,72px)}
[data-page="story"] .bel-band .bel li{border-bottom:1px solid rgba(44,39,62,.34);padding:clamp(24px,2.6vw,32px) 0;gap:8px}
[data-page="story"] .bel-band .bel h3{font:400 clamp(24px,2vw,28px)/1.2 var(--display);letter-spacing:0;color:var(--navy)}
[data-page="story"] .bel-band .bel p{font-size:17px;line-height:1.6;color:var(--navy);opacity:.85;max-width:42ch}
[data-page="story"] .bel-band .bel__head{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
[data-page="story"] .bel-band .bel__head p{align-self:flex-start;margin:0}

/* journal */

[data-page="journal"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(72px,10vw,150px));padding-bottom:clamp(64px,8vw,120px)}
[data-page="journal"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s6);align-items:end}
[data-page="journal"] .op .eyebrow{grid-column:1/-1;color:var(--gold)}
[data-page="journal"] .op h1{grid-column:1/9;font-size:clamp(48px,8.4vw,128px);line-height:.98;letter-spacing:-.01em}
[data-page="journal"] .op__lead{grid-column:9/13;font-size:clamp(18px,1.5vw,21px);line-height:1.6}

[data-page="journal"] .ix__meta{display:flex;justify-content:space-between;gap:16px;padding-bottom:14px;color:var(--ink-soft)}
[data-page="journal"] .ix{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
[data-page="journal"] .ix li{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s4);align-items:baseline;padding-block:clamp(32px,4vw,56px);border-bottom:1px solid var(--hairline)}
[data-page="journal"] .ix__cat{grid-column:1/3;color:var(--ink-soft)}
[data-page="journal"] .ix__title{grid-column:3/10;font-size:clamp(34px,4.6vw,68px);line-height:1.02;letter-spacing:-.012em}
[data-page="journal"] .ix__title em{font-style:italic}
[data-page="journal"] .ix__dek{grid-column:3/9;font-size:clamp(17px,1.4vw,19px);color:var(--ink-soft)}
[data-page="journal"] .ix__tag{grid-column:11/13;grid-row:1;justify-self:end;font:500 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;padding:9px 12px;border:1px solid var(--hairline);border-radius:var(--r-full);white-space:nowrap}
[data-page="journal"] .ix__foot{margin-top:clamp(40px,5vw,72px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s5);align-items:center}
[data-page="journal"] .ix__foot p{grid-column:3/9;font:italic 400 clamp(22px,2vw,28px)/1.3 var(--display)}
[data-page="journal"] .ix__foot a{grid-column:10/13;justify-self:end}

@media (max-width:900px){
  [data-page="journal"] .op h1,[data-page="journal"] .op__lead{grid-column:1/-1}
  [data-page="journal"] .ix__cat{grid-column:1/9}
  [data-page="journal"] .ix__tag{grid-column:9/13}
  [data-page="journal"] .ix__title,[data-page="journal"] .ix__dek{grid-column:1/-1}
  [data-page="journal"] .ix__foot p,[data-page="journal"] .ix__foot a{grid-column:1/-1;justify-self:start}
}

[data-page="journal"] .ix__ph{grid-column:1/3;grid-row:1/3;align-self:start;max-width:200px;border-radius:10px}
@media (max-width:700px){[data-page="journal"] .ix li{grid-template-columns:96px minmax(0,1fr)} [data-page="journal"] .ix__ph{grid-column:1;grid-row:1/3} [data-page="journal"] .ix__title,[data-page="journal"] .ix__dek{grid-column:2}}

/* hero after removing the intro line: title spans the grid, contour fills the right edge */
[data-page="journal"] .op h1{grid-column:1/11}
@media (max-width:900px){[data-page="journal"] .op h1{grid-column:1/-1}}

/* ---- journal cards open the articles (16 Oct) ---- */
[data-page="journal"] .ix li{position:relative}
[data-page="journal"] .ix__title a{color:inherit;text-decoration:none}
[data-page="journal"] .ix__title a::after{content:"";position:absolute;inset:0}
[data-page="journal"] .ix li:hover .ix__title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.12em}
[data-page="journal"] .ix__date{grid-column:3/9;font:500 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
@media (max-width:900px){[data-page="journal"] .ix__date{grid-column:1/-1}}
@media (max-width:700px){[data-page="journal"] .ix__date{grid-column:2}}
.posts .post{position:relative}
.posts .post h3 a{color:inherit;text-decoration:none}
.posts .post h3 a::after{content:"";position:absolute;inset:0}
.posts .post:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.12em}

/* ---- article (journal post) ---- */
.art__hero{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(48px,7vw,104px));padding-bottom:clamp(48px,6vw,96px)}
.art__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:clamp(32px,4vw,48px);align-items:end}
.art__text{grid-column:1/9}
.art__kick{margin:0 0 clamp(20px,2.4vw,32px);color:var(--gold)}
.art__kick a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}
.art__hero h1{font-size:clamp(40px,5.8vw,92px);line-height:1;letter-spacing:-.01em}
.art__dek{margin-top:clamp(20px,2.4vw,32px);font:italic 400 clamp(20px,2vw,28px)/1.35 var(--display);max-width:34ch;opacity:.9}
.art__cover{grid-column:10/13;margin:0;position:relative;z-index:1}
.art__cover .photo{width:100%;max-width:none;aspect-ratio:4/5;border-radius:var(--r-lg)}
.art__band{padding-top:clamp(48px,6vw,96px)}
.art__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5)}
.art__body{grid-column:3/11;max-width:68ch;font-size:clamp(17px,1.3vw,19px);line-height:1.72}
.art__body p,.art__body li{font-size:inherit;line-height:inherit}
.art__body>*+*{margin-top:1.1em}
.art__body .lede{font-size:clamp(20px,1.7vw,24px);line-height:1.55}
.art__body h2{font:400 clamp(26px,2.5vw,36px)/1.15 var(--display);margin-top:clamp(40px,4.4vw,64px);letter-spacing:-.005em}
.art__body h2+p{margin-top:.7em}
.art__body a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
.art__body ul:not(.doses){padding-left:1.1em}
.art__body ul:not(.doses) li+li{margin-top:.5em}
.art__body .doses{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-block:1.6em}
.art__body .doses li{border:1px solid var(--hairline);border-radius:var(--r-md);padding:18px 18px 16px;display:flex;flex-direction:column;gap:6px}
.art__body .doses b{font:400 clamp(26px,2.4vw,34px)/1 var(--display)}
.art__body .doses span{font:500 11.5px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
.art__body .art-photo{margin-block:clamp(36px,4vw,56px)}
.art__body .art-photo .photo{width:100%;max-width:340px;aspect-ratio:2/3;border-radius:var(--r-md)}
.art__body .art-note{margin-top:clamp(36px,4vw,56px);padding-top:20px;border-top:1px solid var(--hairline);font-size:15px;line-height:1.6;color:var(--ink-soft)}
.art__end{grid-column:3/11;display:flex;flex-wrap:wrap;gap:20px 32px;align-items:center;justify-content:space-between;margin-top:clamp(48px,5vw,72px);padding-top:28px;border-top:1px solid var(--ink)}
.art__more{background:var(--surface)}
.art__more h2{margin-bottom:clamp(24px,3vw,40px)}
.art__more .posts{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.art__more .post{display:grid;grid-template-columns:1fr auto;gap:var(--s5);align-items:baseline;padding:clamp(24px,2.6vw,36px) 0;border-bottom:1px solid var(--hairline)}
.art__more .post h3{font:400 clamp(24px,2.3vw,32px)/1.15 var(--display)}
.art__more .post p{color:var(--ink-soft);margin-top:8px;font-size:15.5px}
.art__more .post__soon{font:italic 400 16px/1 var(--display);color:var(--ink-soft);white-space:nowrap}
.art__join{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center;justify-content:space-between;margin-top:clamp(40px,5vw,64px)}
.art__join p{font:italic 400 clamp(22px,2vw,28px)/1.3 var(--display)}
@media (max-width:900px){
  .art__text{grid-column:1/-1}
  .art__cover{grid-column:1/8}
  .art__body,.art__end{grid-column:1/-1}
  .art__body{max-width:none}
}
@media (max-width:600px){
  .art__cover{grid-column:1/-1;max-width:300px}
  .art__body .doses{grid-template-columns:1fr}
  .art__body .doses li{flex-direction:row;align-items:baseline;justify-content:space-between}
  .art__more .post{grid-template-columns:1fr;gap:10px}
}

/* wholesale */

[data-page="wholesale"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(64px,9vw,128px));padding-bottom:clamp(56px,7vw,104px)}
[data-page="wholesale"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s6);align-items:end}
[data-page="wholesale"] .op h1{grid-column:1/9;font-size:clamp(44px,6.2vw,96px);line-height:.98;letter-spacing:-.012em}
[data-page="wholesale"] .op__lead{grid-column:9/13;font-size:clamp(17px,1.4vw,19px);line-height:1.6}
[data-page="wholesale"] .op__who{grid-column:1/-1;padding-top:var(--s5);border-top:1px solid var(--f-line);font:italic 400 clamp(20px,1.8vw,24px)/1.3 var(--display);color:var(--gold)}

[data-page="wholesale"] .ws{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s8)}
[data-page="wholesale"] .ws__info{grid-column:1/6;min-width:0}
[data-page="wholesale"] .ws__form{grid-column:7/13;min-width:0;border-top:1px solid var(--ink);padding-top:var(--s6)}
[data-page="wholesale"] .ws__info h2 em,[data-page="wholesale"] .ws__form h2 em{font-style:italic}
[data-page="wholesale"] .ws__info > p{margin-top:var(--s5);font-size:clamp(17px,1.4vw,19px);line-height:1.65;color:var(--ink-soft);max-width:40ch}

[data-page="wholesale"] .rng{list-style:none;margin:clamp(32px,4vw,48px) 0 0;padding:0;border-top:1px solid var(--hairline)}
[data-page="wholesale"] .rng li{display:grid;grid-template-columns:18px 1fr auto;gap:16px;align-items:baseline;padding-block:16px;border-bottom:1px solid var(--hairline)}
[data-page="wholesale"] .rng__sw{width:12px;height:12px;border-radius:50%;transform:translateY(1px)}
[data-page="wholesale"] .rng b{font:400 clamp(20px,1.8vw,24px)/1.2 var(--display)}
[data-page="wholesale"] .rng span:last-child{font-size:14.5px;color:var(--ink-soft);white-space:nowrap}

[data-page="wholesale"] .terms{margin:clamp(32px,4vw,48px) 0 0;display:grid;grid-template-columns:minmax(120px,auto) 1fr;border-top:1px solid var(--hairline)}
[data-page="wholesale"] .terms dt,[data-page="wholesale"] .terms dd{margin:0;padding-block:14px;border-bottom:1px solid var(--hairline)}
[data-page="wholesale"] .terms dt{font:500 12px/1.9 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);padding-right:20px}
[data-page="wholesale"] .tbc{display:inline-block;font-size:14px;padding:4px 12px;border:1px dashed var(--hairline);border-radius:var(--r-full);color:var(--ink-soft)}

[data-page="wholesale"] .ws__form h2{margin-bottom:var(--s6)}
[data-page="wholesale"] .fgrid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5)}
[data-page="wholesale"] .fgrid .full{grid-column:1/-1}
[data-page="wholesale"] .fsend{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;margin-top:var(--s6)}
[data-page="wholesale"] .fsend small{font-size:14px;color:var(--ink-soft)}
[data-page="wholesale"] [data-form-result]{margin-top:var(--s5);font:italic 400 20px/1.4 var(--display);color:var(--accent)}

[data-page="wholesale"] .direct{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s5);align-items:center}
[data-page="wholesale"] .direct h2{grid-column:1/7}
[data-page="wholesale"] .direct h2 em{font-style:italic}
[data-page="wholesale"] .direct__c{grid-column:8/13;display:grid;gap:6px}
[data-page="wholesale"] .direct__c a{font:400 clamp(22px,2.2vw,30px)/1.3 var(--display);text-decoration:none;word-break:break-word;border-bottom:1px solid var(--f-line);padding-bottom:10px;min-height:44px}
[data-page="wholesale"] .direct__c a:hover{border-color:currentColor}
[data-page="wholesale"] .direct__c p{margin-top:var(--s4);font-size:15px;max-width:44ch}
[data-page="wholesale"] .direct__c p strong{font-weight:500;white-space:nowrap}
[data-page="wholesale"] .direct__c p a{font:inherit;border:0;padding:0;text-decoration:underline;text-underline-offset:4px}

@media (max-width:900px){
  [data-page="wholesale"] .op h1,[data-page="wholesale"] .op__lead{grid-column:1/-1}
  [data-page="wholesale"] .ws__info,[data-page="wholesale"] .ws__form{grid-column:1/-1}
  [data-page="wholesale"] .fgrid{grid-template-columns:1fr}
  [data-page="wholesale"] .fsend .btn{width:100%}
  [data-page="wholesale"] .direct h2,[data-page="wholesale"] .direct__c{grid-column:1/-1}
}
@media (max-width:420px){
  [data-page="wholesale"] .rng li{grid-template-columns:18px 1fr}
  [data-page="wholesale"] .rng span:last-child{grid-column:2}
}

[data-page="wholesale"] .direct__c>a{display:flex;align-items:center;gap:.6em}
[data-page="wholesale"] .direct__c>a:not(.with-ico){padding-left:calc(22px + .6em)}

/* hero after removing the intro line: title spans the grid, contour fills the right edge */
[data-page="wholesale"] .op h1{grid-column:1/11}
@media (max-width:900px){[data-page="wholesale"] .op h1{grid-column:1/-1}}

/* faq */

[data-page="faq"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(64px,9vw,128px));padding-bottom:clamp(56px,7vw,104px)}
[data-page="faq"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s6);align-items:end}
[data-page="faq"] .op .eyebrow{grid-column:1/-1}
[data-page="faq"] .op h1{grid-column:1/9;font-size:clamp(48px,8.4vw,128px);line-height:.98;letter-spacing:-.01em}
[data-page="faq"] .op__lead{grid-column:9/13;font-size:clamp(17px,1.4vw,19px);line-height:1.6}
[data-page="faq"] .op__jump{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px}
[data-page="faq"] .op__jump a{text-decoration:none;min-height:44px;padding-inline:18px}

[data-page="faq"] .grp{scroll-margin-top:calc(96px + env(safe-area-inset-top,0px));display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s5);padding-block:clamp(40px,5vw,72px);border-top:1px solid var(--hairline)}
[data-page="faq"] .grp:first-child{border-top:0;padding-top:0}
[data-page="faq"] .grp__h{grid-column:1/4}
[data-page="faq"] .grp__h h2{position:sticky;top:110px}
[data-page="faq"] .grp__h h2 small{display:block;margin-top:10px;font:500 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}
[data-page="faq"] .grp__q{grid-column:5/13}
[data-page="faq"] details{border-top:1px solid var(--hairline)}
[data-page="faq"] details:last-child{border-bottom:1px solid var(--hairline)}
[data-page="faq"] summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr 28px;gap:24px;align-items:center;padding-block:24px;min-height:44px;font:400 clamp(21px,2vw,27px)/1.25 var(--display)}
[data-page="faq"] summary::-webkit-details-marker{display:none}
[data-page="faq"] .pm{position:relative;width:22px;height:22px;transition:transform .35s var(--ease)}
[data-page="faq"] .pm::before,[data-page="faq"] .pm::after{content:"";position:absolute;left:50%;top:50%;background:var(--ink);transition:transform .35s var(--ease)}
[data-page="faq"] .pm::before{width:22px;height:1px;transform:translate(-50%,-50%)}
[data-page="faq"] .pm::after{width:1px;height:22px;transform:translate(-50%,-50%)}
[data-page="faq"] details[open] .pm::after{transform:translate(-50%,-50%) scaleY(0)}
[data-page="faq"] details[open] summary{color:var(--accent)}
[data-page="faq"] .ans{padding:0 52px 30px 0;font-size:clamp(17px,1.35vw,18.5px);line-height:1.7;color:var(--ink-soft);max-width:62ch}
[data-page="faq"] .ans p+p{margin-top:.8em}
[data-page="faq"] .ans a{color:var(--ink);text-underline-offset:4px}
[data-page="faq"] .ans .tbc{display:inline-block;font-size:14px;padding:6px 12px;border:1px dashed var(--hairline);border-radius:var(--r-full);color:var(--ink)}
[data-page="faq"] .ans i{font-style:italic}

[data-page="faq"] .more{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s5);align-items:end;margin-top:clamp(40px,5vw,72px);padding-top:clamp(32px,4vw,56px);border-top:1px solid var(--ink)}
[data-page="faq"] .more h2{grid-column:1/8}
[data-page="faq"] .more div{grid-column:9/13;display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center}

@media (max-width:900px){
  [data-page="faq"] .op h1,[data-page="faq"] .op__lead{grid-column:1/-1}
  [data-page="faq"] .grp__h,[data-page="faq"] .grp__q{grid-column:1/-1}
  [data-page="faq"] .grp__h h2{position:static}
  [data-page="faq"] .ans{padding-right:0}
  [data-page="faq"] .more h2,[data-page="faq"] .more div{grid-column:1/-1}
}

/* hero after removing the intro line: title spans the grid, contour fills the right edge */
[data-page="faq"] .op h1{grid-column:1/11}
@media (max-width:900px){[data-page="faq"] .op h1{grid-column:1/-1}}

/* contact */

[data-page="contact"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(64px,9vw,128px));padding-bottom:clamp(56px,7vw,104px)}
[data-page="contact"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s6);align-items:end}
[data-page="contact"] .op .eyebrow{grid-column:1/-1}
[data-page="contact"] .op h1{grid-column:1/9;font-size:clamp(48px,8.4vw,128px);line-height:.98;letter-spacing:-.01em}
[data-page="contact"] .op__lead{grid-column:9/13;font-size:clamp(18px,1.5vw,21px);line-height:1.6}

[data-page="contact"] .ct{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s8)}
[data-page="contact"] .ct__info{grid-column:1/6;min-width:0}
[data-page="contact"] .ct__form{grid-column:7/13;min-width:0}

[data-page="contact"] .mail .eyebrow{display:block;color:var(--ink-soft);margin-bottom:var(--s4)}
[data-page="contact"] .mail__addr{display:block;font:400 clamp(26px,2.9vw,40px)/1.15 var(--display);color:var(--accent);word-break:break-word;user-select:all;-webkit-user-select:all;text-decoration:none}
[data-page="contact"] .mail__row{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin-top:var(--s5)}
[data-page="contact"] .copy{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px;border-radius:var(--r-full);border:1px solid var(--hairline);background:transparent;color:var(--ink);font:500 12px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:border-color .25s}
[data-page="contact"] .copy:hover{border-color:var(--ink)}
[data-page="contact"] .copy svg{width:15px;height:15px}
[data-page="contact"] .copy[data-state="done"]{border-color:var(--accent);color:var(--accent)}
[data-page="contact"] .mail__row a{font-size:15px;text-underline-offset:4px}

[data-page="contact"] .dl{margin:clamp(40px,5vw,64px) 0 0;display:grid;grid-template-columns:minmax(96px,auto) 1fr;border-top:1px solid var(--hairline)}
[data-page="contact"] .dl dt,[data-page="contact"] .dl dd{padding-block:16px;border-bottom:1px solid var(--hairline);margin:0}
[data-page="contact"] .dl dt{font:500 12px/1.9 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);padding-right:20px}
[data-page="contact"] .dl dd{font-size:16.5px;line-height:1.55}
[data-page="contact"] .dl a{text-underline-offset:4px}
[data-page="contact"] .tbc{display:inline-block;font-size:14px;padding:4px 12px;border:1px dashed var(--hairline);border-radius:var(--r-full);color:var(--ink-soft)}

[data-page="contact"] .notes{margin-top:clamp(40px,5vw,64px);display:grid;gap:var(--s5)}
[data-page="contact"] .notes p:first-child{font:italic 400 clamp(22px,2vw,28px)/1.3 var(--display)}
[data-page="contact"] .notes p:first-child a{text-underline-offset:5px;text-decoration-thickness:1px}
[data-page="contact"] .notes .lt{font-size:15px;line-height:1.65;color:var(--ink-soft);max-width:44ch}
[data-page="contact"] .notes .lt strong{font-weight:500;color:var(--ink);letter-spacing:.02em;white-space:nowrap}
[data-page="contact"] .notes .lt a{color:var(--ink);text-underline-offset:4px}

[data-page="contact"] .ct__form{border-top:1px solid var(--ink);padding-top:var(--s6)}
[data-page="contact"] .ct__form h2{margin-bottom:var(--s6)}
[data-page="contact"] .fgrid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5)}
[data-page="contact"] .fgrid .full{grid-column:1/-1}
[data-page="contact"] .fsend{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;margin-top:var(--s6)}
[data-page="contact"] .fsend small{font-size:14px;color:var(--ink-soft)}
[data-page="contact"] [data-form-result]{margin-top:var(--s5);font:italic 400 20px/1.4 var(--display);color:var(--accent)}

@media (max-width:900px){
  [data-page="contact"] .op h1,[data-page="contact"] .op__lead{grid-column:1/-1}
  [data-page="contact"] .ct__info,[data-page="contact"] .ct__form{grid-column:1/-1}
  [data-page="contact"] .fgrid{grid-template-columns:1fr}
  [data-page="contact"] .fsend .btn{width:100%}
}

[data-page="contact"] .dl dt{padding-left:calc(18px + .6em)}
[data-page="contact"] .dl dt:has(.ico){padding-left:0}

/* hero after removing the intro line: title spans the grid, contour fills the right edge */
[data-page="contact"] .op h1{grid-column:1/11}
@media (max-width:900px){[data-page="contact"] .op h1{grid-column:1/-1}}

/* shipping */

[data-page="shipping"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(48px,6vw,88px));padding-bottom:clamp(44px,5vw,72px)}
[data-page="shipping"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s5);align-items:end}
[data-page="shipping"] .op .eyebrow{grid-column:1/-1;color:var(--gold)}
[data-page="shipping"] .op h1{grid-column:1/8}
[data-page="shipping"] .op__status{grid-column:8/13;display:flex;gap:14px;align-items:baseline;font-size:16.5px;line-height:1.55;padding-top:16px;border-top:1px solid var(--f-line)}
[data-page="shipping"] .op__status::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--gold);transform:translateY(-1px)}
[data-page="shipping"] .lg{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s8)}
[data-page="shipping"] .lg__cover{grid-column:1/8}
[data-page="shipping"] .lg__cover h2{margin-bottom:var(--s6)}
[data-page="shipping"] .lg__cover h2 em{font-style:italic}
[data-page="shipping"] .lg__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hairline)}
[data-page="shipping"] .lg__list li{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s5);padding-block:18px;border-bottom:1px solid var(--hairline);align-items:baseline}
[data-page="shipping"] .lg__list b{font:400 clamp(20px,1.8vw,24px)/1.25 var(--display)}
[data-page="shipping"] .lg__list span{font-size:15.5px;line-height:1.6;color:var(--ink-soft)}
[data-page="shipping"] .lg__aside{grid-column:9/13;align-self:start;border:1px solid var(--hairline);border-radius:var(--r-lg);padding:clamp(24px,3vw,36px);display:grid;gap:var(--s5)}
[data-page="shipping"] .lg__aside .eyebrow{color:var(--ink-soft)}
[data-page="shipping"] .lg__aside p{font-size:15.5px;line-height:1.6}
[data-page="shipping"] .lg__aside a{text-underline-offset:4px}
[data-page="shipping"] .lg__aside .name{font:400 22px/1.2 var(--display)}
[data-page="shipping"] .lg__aside .small{font-size:14px;color:var(--ink-soft)}
@media (max-width:900px){
  [data-page="shipping"] .op h1,[data-page="shipping"] .op__status{grid-column:1/-1}
  [data-page="shipping"] .lg__cover,[data-page="shipping"] .lg__aside{grid-column:1/-1}
  [data-page="shipping"] .lg__list li{grid-template-columns:1fr;gap:6px}
}

/* safety */

[data-page="safety"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(48px,6vw,88px));padding-bottom:clamp(44px,5vw,72px)}
[data-page="safety"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s5);align-items:end}
[data-page="safety"] .op .eyebrow{grid-column:1/-1;color:var(--gold)}
[data-page="safety"] .op h1{grid-column:1/8}
[data-page="safety"] .op__lead{grid-column:8/13;font-size:16.5px;line-height:1.6;opacity:.9}

[data-page="safety"] .doc{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5)}
[data-page="safety"] .toc{grid-column:1/4}
[data-page="safety"] .toc nav{position:sticky;top:110px;display:grid;gap:2px}
[data-page="safety"] .toc .eyebrow{color:var(--ink-soft);margin-bottom:12px}
[data-page="safety"] .toc a{font-size:15px;text-decoration:none;padding:8px 0;border-bottom:1px solid var(--hairline);min-height:44px;display:flex;align-items:center}
[data-page="safety"] .toc a:hover{color:var(--accent)}
[data-page="safety"] .body{grid-column:4/12;min-width:0}
[data-page="safety"] .sec{scroll-margin-top:calc(80px + env(safe-area-inset-top,0px));padding-block:clamp(32px,4vw,56px);border-top:1px solid var(--hairline);display:grid;grid-template-columns:repeat(8,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s4)}
[data-page="safety"] .sec:first-child{border-top:0;padding-top:0}
[data-page="safety"] .sec h2{grid-column:1/4;font-size:clamp(26px,2.4vw,34px);line-height:1.15}
[data-page="safety"] .sec h2 em{font-style:italic}
[data-page="safety"] .sec__b{grid-column:4/9;font-size:17px;line-height:1.7}
[data-page="safety"] .sec__b p+p,[data-page="safety"] .sec__b p+ul,[data-page="safety"] .sec__b ul+p{margin-top:.9em}
[data-page="safety"] .sec__b ul{margin:0;padding:0;list-style:none}
[data-page="safety"] .sec__b li{padding:8px 0 8px 22px;position:relative}
[data-page="safety"] .sec__b li::before{content:"";position:absolute;left:0;top:1.05em;width:10px;height:1px;background:var(--ink)}
[data-page="safety"] .sec__b i{font-style:italic}
[data-page="safety"] .sec__b strong{font-weight:500}
[data-page="safety"] .sec__b a{text-underline-offset:4px}
[data-page="safety"] .base{margin-top:var(--s5);border:1px solid var(--hairline);border-radius:var(--r-lg);padding:clamp(20px,3vw,32px);display:grid;gap:14px}
[data-page="safety"] .base .eyebrow{color:var(--ink-soft)}
[data-page="safety"] .base__code{font:400 clamp(13px,1.3vw,16px)/1.5 var(--body);letter-spacing:.14em;font-variant-numeric:tabular-nums;}
[data-page="safety"] .base__code span{white-space:nowrap}
[data-page="safety"] .base__key{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:14.5px;color:var(--ink-soft)}
[data-page="safety"] .base__key b{font-weight:500;color:var(--ink);letter-spacing:.08em}
[data-page="safety"] .close{margin-top:clamp(40px,5vw,64px);padding-top:clamp(32px,4vw,48px);border-top:1px solid var(--ink)}
[data-page="safety"] .close p{font:italic 400 clamp(22px,2.2vw,30px)/1.35 var(--display);max-width:30ch}
[data-page="safety"] .close div{margin-top:var(--s5);display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center}

@media (max-width:900px){
  [data-page="safety"] .op h1,[data-page="safety"] .op__lead{grid-column:1/-1}
  [data-page="safety"] .toc{display:none}
  [data-page="safety"] .body{grid-column:1/-1}
  [data-page="safety"] .sec h2,[data-page="safety"] .sec__b{grid-column:1/-1}
}

/* hero after removing the intro line: title spans the grid, contour fills the right edge */
[data-page="safety"] .op h1{grid-column:1/11}
@media (max-width:900px){[data-page="safety"] .op h1{grid-column:1/-1}}

/* privacy */

[data-page="privacy"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(48px,6vw,88px));padding-bottom:clamp(44px,5vw,72px)}
[data-page="privacy"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s5);align-items:end}
[data-page="privacy"] .op .eyebrow{grid-column:1/-1;color:var(--gold)}
[data-page="privacy"] .op h1{grid-column:1/8}
[data-page="privacy"] .op__status{grid-column:8/13;display:flex;gap:14px;align-items:baseline;font-size:16.5px;line-height:1.55;padding-top:16px;border-top:1px solid var(--f-line)}
[data-page="privacy"] .op__status::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--gold);transform:translateY(-1px)}
[data-page="privacy"] .lg{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s8)}
[data-page="privacy"] .lg__cover{grid-column:1/8}
[data-page="privacy"] .lg__cover h2{margin-bottom:var(--s6)}
[data-page="privacy"] .lg__cover h2 em{font-style:italic}
[data-page="privacy"] .lg__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hairline)}
[data-page="privacy"] .lg__list li{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s5);padding-block:18px;border-bottom:1px solid var(--hairline);align-items:baseline}
[data-page="privacy"] .lg__list b{font:400 clamp(20px,1.8vw,24px)/1.25 var(--display)}
[data-page="privacy"] .lg__list span{font-size:15.5px;line-height:1.6;color:var(--ink-soft)}
[data-page="privacy"] .lg__aside{grid-column:9/13;align-self:start;border:1px solid var(--hairline);border-radius:var(--r-lg);padding:clamp(24px,3vw,36px);display:grid;gap:var(--s5)}
[data-page="privacy"] .lg__aside .eyebrow{color:var(--ink-soft)}
[data-page="privacy"] .lg__aside p{font-size:15.5px;line-height:1.6}
[data-page="privacy"] .lg__aside a{text-underline-offset:4px}
[data-page="privacy"] .lg__aside .name{font:400 22px/1.2 var(--display)}
[data-page="privacy"] .lg__aside .small{font-size:14px;color:var(--ink-soft)}
@media (max-width:900px){
  [data-page="privacy"] .op h1,[data-page="privacy"] .op__status{grid-column:1/-1}
  [data-page="privacy"] .lg__cover,[data-page="privacy"] .lg__aside{grid-column:1/-1}
  [data-page="privacy"] .lg__list li{grid-template-columns:1fr;gap:6px}
}

/* terms */

[data-page="terms"] .op{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(48px,6vw,88px));padding-bottom:clamp(44px,5vw,72px)}
[data-page="terms"] .op__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s5);align-items:end}
[data-page="terms"] .op .eyebrow{grid-column:1/-1;color:var(--gold)}
[data-page="terms"] .op h1{grid-column:1/8}
[data-page="terms"] .op__status{grid-column:8/13;display:flex;gap:14px;align-items:baseline;font-size:16.5px;line-height:1.55;padding-top:16px;border-top:1px solid var(--f-line)}
[data-page="terms"] .op__status::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--gold);transform:translateY(-1px)}
[data-page="terms"] .lg{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s5);row-gap:var(--s8)}
[data-page="terms"] .lg__cover{grid-column:1/8}
[data-page="terms"] .lg__cover h2{margin-bottom:var(--s6)}
[data-page="terms"] .lg__cover h2 em{font-style:italic}
[data-page="terms"] .lg__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hairline)}
[data-page="terms"] .lg__list li{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s5);padding-block:18px;border-bottom:1px solid var(--hairline);align-items:baseline}
[data-page="terms"] .lg__list b{font:400 clamp(20px,1.8vw,24px)/1.25 var(--display)}
[data-page="terms"] .lg__list span{font-size:15.5px;line-height:1.6;color:var(--ink-soft)}
[data-page="terms"] .lg__aside{grid-column:9/13;align-self:start;border:1px solid var(--hairline);border-radius:var(--r-lg);padding:clamp(24px,3vw,36px);display:grid;gap:var(--s5)}
[data-page="terms"] .lg__aside .eyebrow{color:var(--ink-soft)}
[data-page="terms"] .lg__aside p{font-size:15.5px;line-height:1.6}
[data-page="terms"] .lg__aside a{text-underline-offset:4px}
[data-page="terms"] .lg__aside .name{font:400 22px/1.2 var(--display)}
[data-page="terms"] .lg__aside .small{font-size:14px;color:var(--ink-soft)}
@media (max-width:900px){
  [data-page="terms"] .op h1,[data-page="terms"] .op__status{grid-column:1/-1}
  [data-page="terms"] .lg__cover,[data-page="terms"] .lg__aside{grid-column:1/-1}
  [data-page="terms"] .lg__list li{grid-template-columns:1fr;gap:6px}
}

/* cart */

/* ---- checkout kit (shared by cart, checkout, order-received, order-failed) ----
   Maps to WooCommerce Cart/Checkout blocks — see WOOCOMMERCE-STRIPE.md for the class mapping. */
[data-page="cart"]{--co-err:#a3312a} /* functional error colour (forms only); paired with icon + text, never colour alone */
[data-page="cart"] .co-hero{padding-top:calc(76px + env(safe-area-inset-top,0px) + clamp(36px,5vw,72px));padding-bottom:clamp(36px,4.5vw,64px)}
[data-page="cart"] .co-hero__grid{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:24px 48px}
[data-page="cart"] .co-hero h1 em{font-style:italic}
[data-page="cart"] .co-hero .t-lead{opacity:.9}

/* real sequence: basket → details → payment → confirmation */
[data-page="cart"] .co-steps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 26px;font:500 12px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;counter-reset:s}
[data-page="cart"] .co-steps li{counter-increment:s;display:flex;align-items:center;gap:10px;opacity:.62}
[data-page="cart"] .co-steps li::before{content:counter(s);display:grid;place-items:center;width:28px;height:28px;border:1px solid currentColor;border-radius:50%;font:400 15px/1 var(--display);letter-spacing:0}
[data-page="cart"] .co-steps li.is-done{opacity:.86}
[data-page="cart"] .co-steps li[aria-current]{opacity:1}
[data-page="cart"] .co-steps li[aria-current]::before{background:var(--gold);border-color:var(--gold);color:var(--navy)}
@media (max-width:560px){
  [data-page="cart"] .co-steps{gap:8px 14px}
  [data-page="cart"] .co-steps li:not([aria-current]) span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}

/* white working area */
[data-page="cart"] .co-main{padding-block:clamp(40px,6vw,88px) clamp(72px,9vw,128px)}
[data-page="cart"] .co-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,6vw,96px);align-items:start}
@media (max-width:900px){[data-page="cart"] .co-grid{grid-template-columns:minmax(0,1fr)}}

/* product thumbnails (brandbook photos, front crop) + quantity badge */
[data-page="cart"] .co-thumbwrap{position:relative;display:block;flex:none;text-decoration:none}
[data-page="cart"] .co-thumb{display:block;width:72px;aspect-ratio:4/5;border-radius:6px;overflow:hidden;background:#e9e4dc}
[data-page="cart"] .co-thumb .prod-img{height:100%;aspect-ratio:auto;border-radius:0;max-width:none}
[data-page="cart"] .co-thumb--pair{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#fff}
[data-page="cart"] .co-thumb--pair .prod-img{background-position:6% 50%}
[data-page="cart"] .co-badge{position:absolute;top:-8px;right:-8px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--navy);color:var(--paper);font:500 12px/22px var(--body);text-align:center;font-variant-numeric:tabular-nums}

/* summary panel (white, hairline; never on colour) */
[data-page="cart"] .co-sum{border:1px solid var(--hairline);border-radius:10px;padding:clamp(20px,2.4vw,32px);background:var(--surface)}
[data-page="cart"] .co-sum__h{margin-bottom:8px}
[data-page="cart"] .co-items{list-style:none;margin:0;padding:0}
[data-page="cart"] .co-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding-block:16px;border-bottom:1px solid var(--hairline)}
[data-page="cart"] .co-item__n{font:400 19px/1.2 var(--display)}
[data-page="cart"] .co-item__v{font-size:14.5px;color:var(--ink-soft);margin-top:2px}
[data-page="cart"] .co-item__p{font-size:15.5px;white-space:nowrap;text-align:right}
[data-page="cart"] .co-rows{margin:0;padding-top:8px}
[data-page="cart"] .co-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-block:10px;font-size:15.5px}
[data-page="cart"] .co-row dt{color:var(--ink-soft)}
[data-page="cart"] .co-row dd{margin:0;text-align:right}
[data-page="cart"] .co-row small{display:block;font-size:13px;color:var(--ink-soft)}
[data-page="cart"] .co-row--total{margin-top:10px;padding-top:18px;border-top:1px solid var(--ink)}
[data-page="cart"] .co-row--total dt{color:var(--ink);font:500 12px/1 var(--body);letter-spacing:.16em;text-transform:uppercase}
[data-page="cart"] .co-row--total dd{font-size:28px;line-height:1}
[data-page="cart"] .co-cur{font:500 11px/1 var(--body);letter-spacing:.14em;color:var(--ink-soft);margin-right:8px;vertical-align:.35em}
[data-page="cart"] .co-note{font-size:14px;line-height:1.55;color:var(--ink-soft)}
[data-page="cart"] .co-tag{display:inline-block;vertical-align:.12em;margin-left:6px;padding:4px 8px;border:1px solid var(--hairline);border-radius:var(--r-full);font:500 10.5px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap}

/* coupon: "Have a code?" collapsed */
[data-page="cart"] .co-coupon{border-top:1px solid var(--hairline);margin-top:8px}
[data-page="cart"] .co-coupon summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;min-height:52px;font-size:15.5px}
[data-page="cart"] .co-coupon summary::-webkit-details-marker{display:none}
[data-page="cart"] .co-coupon summary::after{content:"";width:9px;height:9px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-3px) rotate(45deg);transition:transform .25s var(--ease)}
[data-page="cart"] .co-coupon[open] summary::after{transform:translateY(2px) rotate(-135deg)}
[data-page="cart"] .co-coupon summary:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
[data-page="cart"] .co-coupon__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-bottom:16px}
[data-page="cart"] .co-coupon__row .btn{min-height:52px}
[data-page="cart"] .co-coupon__msg{font-size:14px;color:var(--ink-soft);padding-bottom:14px}

/* fields */
[data-page="cart"] .co-f{display:grid;align-content:start;min-width:0}
[data-page="cart"] .co-f .lbl{margin-bottom:10px}
[data-page="cart"] .co-opt{font-weight:400;letter-spacing:.02em;text-transform:none;font-size:13px;color:var(--ink-soft);margin-left:4px}
[data-page="cart"] .co-hint{font-size:13.5px;color:var(--ink-soft);margin-top:8px}
[data-page="cart"] .field-input{transition:border-color .2s}
[data-page="cart"] .field-input:hover{border-color:rgba(32,32,32,.4)}
[data-page="cart"] .field-input:focus{border-color:var(--ink);outline:2px solid var(--gold);outline-offset:2px}
[data-page="cart"] select.field-input{appearance:none;-webkit-appearance:none;padding-right:48px;cursor:pointer;
  background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23202020' stroke-width='1.3'/%3E%3C/svg%3E") no-repeat right 18px center}
[data-page="cart"] .co-f.is-err .field-input{border-color:var(--co-err);box-shadow:inset 0 0 0 1px var(--co-err)}
[data-page="cart"] .co-msg{display:flex;gap:8px;align-items:flex-start;margin-top:8px;font:400 14px/1.45 var(--body);color:var(--co-err)}
[data-page="cart"] .co-msg::before{content:"!";flex:none;display:grid;place-items:center;width:18px;height:18px;margin-top:1px;border-radius:50%;background:var(--co-err);color:#fff;font:500 12px/1 var(--body)}

/* checkbox rows (48px tap targets) */
[data-page="cart"] .co-check{display:grid;grid-template-columns:22px minmax(0,1fr);gap:14px;align-items:start;min-height:48px;padding-block:12px;cursor:pointer;font-size:15.5px;line-height:1.5}
[data-page="cart"] .co-check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--navy);cursor:pointer}
[data-page="cart"] .co-check input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
[data-page="cart"] .co-check a{text-underline-offset:3px}
[data-page="cart"] .co-checkwrap.is-err .co-check{color:var(--ink)}
[data-page="cart"] .co-checkwrap.is-err input{outline:2px solid var(--co-err);outline-offset:2px}
[data-page="cart"] .co-checkwrap .co-msg{margin:0 0 6px 36px}

/* buttons */
[data-page="cart"] .co-wide{width:100%;min-height:56px}
[data-page="cart"] .co-back{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:15px;text-underline-offset:4px}
[data-page="cart"] .co-back::before{content:"";width:8px;height:8px;border-left:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg)}
[data-page="cart"] .co-trust{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:10px;font-size:14px;color:var(--ink-soft)}
[data-page="cart"] .co-trust li{display:flex;gap:10px;align-items:flex-start}
[data-page="cart"] .co-trust .ico{margin-top:1px}
[data-page="cart"] .co-trust a{color:var(--ink);text-underline-offset:3px}


/* ---- cart (WooCommerce Cart block) ---- */
[data-page="cart"] .ct-head{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:14px;border-bottom:1px solid var(--ink)}
[data-page="cart"] .ct-head span{font:500 12px/1 var(--body);letter-spacing:.16em;text-transform:uppercase}
[data-page="cart"] .ct-list{list-style:none;margin:0;padding:0}
[data-page="cart"] .ct-line{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(16px,2.4vw,32px);align-items:start;padding-block:clamp(22px,2.6vw,32px);border-bottom:1px solid var(--hairline)}
[data-page="cart"] .ct-line .co-thumb{width:clamp(84px,9vw,112px)}
[data-page="cart"] .ct-line__name{font-size:clamp(22px,2vw,28px);line-height:1.15}
[data-page="cart"] .ct-line__name a{text-decoration:none}
[data-page="cart"] .ct-line__name a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
[data-page="cart"] .ct-line__var{margin-top:4px;font-size:15px;color:var(--ink-soft)}
[data-page="cart"] .ct-line__ctl{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:18px}
[data-page="cart"] .ct-line__total{font-size:17px;white-space:nowrap;padding-top:4px;text-align:right}
[data-page="cart"] .ct-qty{display:inline-flex;align-items:center;height:48px;border:1px solid var(--hairline);border-radius:var(--r-full)}
[data-page="cart"] .ct-qty button{width:46px;height:46px;border:0;background:none;color:inherit;font:400 20px/1 var(--body);cursor:pointer;border-radius:var(--r-full)}
[data-page="cart"] .ct-qty button:disabled{opacity:.3;cursor:default}
[data-page="cart"] .ct-qty button:focus-visible,[data-page="cart"] .ct-qty input:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
[data-page="cart"] .ct-qty input{width:42px;height:44px;border:0;background:none;color:inherit;text-align:center;font:400 17px/1 var(--body);font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield;border-radius:6px}
[data-page="cart"] .ct-qty input::-webkit-inner-spin-button,[data-page="cart"] .ct-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
[data-page="cart"] .ct-rm{min-height:44px;padding:0;border:0;background:none;color:var(--ink-soft);font:400 14.5px/1 var(--body);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
[data-page="cart"] .ct-rm:hover{color:var(--ink)}
[data-page="cart"] .ct-sum{position:sticky;top:calc(76px + env(safe-area-inset-top,0px) + 24px)}
[data-page="cart"] .ct-sum .btn{margin-top:20px}
[data-page="cart"] .ct-cont{margin-top:24px}

/* empty state */
[data-page="cart"] .ct-empty{display:grid;gap:24px;justify-items:start;max-width:52ch;padding-block:clamp(8px,2vw,24px) clamp(24px,4vw,48px)}
[data-page="cart"] .ct-empty h2 em{font-style:italic}
[data-page="cart"] .ct-empty p{color:var(--ink-soft)}
[data-page="cart"] .ct-empty__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}

/* cross-sell row */
[data-page="cart"] .ct-x{margin-top:clamp(64px,8vw,112px);padding-top:clamp(28px,3vw,40px);border-top:1px solid var(--hairline)}
[data-page="cart"] .ct-x h2 em{font-style:italic}
[data-page="cart"] .ct-x__row{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:28px}
[data-page="cart"] .ct-xcard{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;padding:16px;border:1px solid var(--hairline);border-radius:10px;transition:border-color .2s}
[data-page="cart"] .ct-xcard:hover{border-color:rgba(32,32,32,.4)}
[data-page="cart"] .ct-xcard__t{font:400 21px/1.2 var(--display)}
[data-page="cart"] .ct-xcard__t a{text-decoration:none}
[data-page="cart"] .ct-xcard__v{font-size:14.5px;color:var(--ink-soft);margin-top:2px}
[data-page="cart"] .ct-xcard .btn{min-height:44px;padding:0 18px;margin-top:12px;font-size:12.5px}

@media (max-width:900px){
  [data-page="cart"] .ct-sum{position:static}
}
@media (max-width:560px){
  [data-page="cart"] .ct-line{grid-template-columns:auto minmax(0,1fr);row-gap:0}
  [data-page="cart"] .ct-line__total{grid-column:2;grid-row:1;justify-self:end;align-self:start;font-size:15.5px}
  [data-page="cart"] .ct-line__info{grid-column:2;grid-row:1;padding-right:0}
  [data-page="cart"] .ct-line__name{padding-right:88px}
  [data-page="cart"] .ct-x__row{grid-template-columns:1fr}
}

/* not-found */

[data-page="not-found"] .nf{min-height:70vh;display:grid;align-content:center;gap:28px;padding-top:calc(76px + env(safe-area-inset-top,0px) + 48px)}
[data-page="not-found"] .nf .logo-mark{width:min(220px,50vw);color:var(--gold)}
[data-page="not-found"] .nf-next{display:flex;flex-wrap:wrap;gap:16px 40px;align-items:baseline}
[data-page="not-found"] .nf-next h2{margin-right:auto}
