
:root{
  /* brand */
  --red:#E31E24; --navy:#211D70;
  /* neutrals */
  --paper:#FBFAF7; --ivory:#F5F1E8; --stone:#EAE6DC; --pale:#EEF0F4; --panel:#F1F2F5;
  --ink:#1F1F2B; --muted:#555766; --hair:#D9DAE2; --grey:#C9CAD6;
  /* deep tones */
  --midnight:#0D0F2E; --space:#03040B; --charcoal:#15161C; --deepnavy:#17145A;
  /* natural accents (used sparingly) */
  --leaf:#5E8540; --apricot:#E68A3C;
  --serif:"Literata", Georgia, serif;
  --sans:"Montserrat", "Helvetica Neue", Arial, sans-serif;
  --gut:clamp(16px, 3vw, 44px);
  --mast:64px;
  --sec:clamp(72px, 11vh, 140px);       /* section rhythm */
  --vh:100vh;
  --ease:cubic-bezier(.6,0,.2,1);
  --out:cubic-bezier(.16,1,.3,1);
}
@supports (height:100svh){ :root{ --vh:100svh } }
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;background:var(--paper)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:18px;line-height:1.55;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,video,canvas{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}
em{font-style:italic;font-weight:300}
::selection{background:var(--navy);color:#fff}

/* language-specific type */
html[lang=ar]{--serif:"Noto Naskh Arabic", "Literata", serif;--sans:"IBM Plex Sans Arabic","Montserrat",sans-serif}
html[lang=zh]{--serif:"Noto Serif SC","Literata",serif;--sans:"Noto Sans SC","Montserrat",sans-serif}
html[lang=el]{--sans:"Noto Sans","Montserrat",sans-serif}
html[lang=ar] em, html[lang=zh] em{font-style:normal;font-weight:400;opacity:.72}
html[lang=ar] body{line-height:1.8}

/* ---------- shared ---------- */
.lbl{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:none;color:var(--muted)}
html[lang=ar] .lbl,html[lang=zh] .lbl{letter-spacing:0;font-size:13px}
.num{font-family:var(--sans);font-variant-numeric:tabular-nums lining-nums}
.wrap{padding-inline:var(--gut)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gut)}
.folio{display:flex;align-items:center;gap:12px}
.folio b{font-family:var(--sans);font-weight:700;font-size:11px;letter-spacing:.1em;color:var(--red)}
.folio::after{content:"";flex:0 0 28px;height:2px;background:var(--navy)}
.h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.1rem,4.8vw,4.6rem);line-height:1.02;letter-spacing:-.015em}
.h2 em{color:var(--muted)}
html[lang=ar] .h2{line-height:1.35;letter-spacing:0}
section{position:relative}
.ph{color:var(--muted)}
.textlink{display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:none;position:relative;padding-block:4px;width:max-content}
.textlink::after{content:"";position:absolute;inset-inline:0;inset-block-end:0;height:1px;background:currentColor;opacity:.6;transform-origin:right;transition:transform .5s var(--ease)}
.textlink:hover::after{transform:scaleX(0)}
html[lang=ar] .textlink,html[lang=zh] .textlink{letter-spacing:0;font-size:14px}
.figcap{font-family:var(--sans);font-size:11px;line-height:1.5;color:var(--muted);max-width:30ch}
.figcap b{color:var(--ink);font-weight:600}

/* tones: dark sections flip the ink */
[data-tone=dark]{color:#F3F2EE}
[data-tone=dark] .lbl{color:rgba(243,242,238,.62)}
[data-tone=dark] .h2 em{color:rgba(243,242,238,.55)}
[data-tone=dark] .folio::after{background:#fff}
/* fine paper grain on light sections, film grain on dark ones */
.grain::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.5;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.35 0 0 0 0 0.33 0 0 0 0 0.3 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
[data-tone=dark].grain::before{opacity:.6;mix-blend-mode:screen;filter:invert(1)}
.grain>*{position:relative;z-index:1}

/* odometer digits */
.odo{display:inline-flex;align-items:flex-end;direction:ltr;unicode-bidi:isolate;line-height:1}
.odo .d{display:inline-block;height:1em;line-height:1;overflow:hidden;position:relative}
.odo .s{line-height:1;height:1em}
.odo .d>span{display:flex;flex-direction:column;will-change:transform}
.odo .d>span>i{font-style:normal;display:block;height:1em;line-height:1}
.odo .s{display:inline-block}
html[lang=ar] .odo,html[lang=zh] .odo,html[lang=ar] .counter .num,html[lang=zh] .counter .num{--serif:"Literata",Georgia,serif;font-family:var(--serif)}

/* masked line reveal for headings */
.mline{display:block;overflow:hidden;padding-block-end:.08em;margin-block-end:-.08em}
.mline>span{display:block;will-change:transform}

/* ---------- masthead ---------- */
.mast{position:fixed;inset-block-start:0;inset-inline:0;height:var(--mast);z-index:50;display:flex;align-items:center;justify-content:space-between;padding-inline:var(--gut);background:rgba(255,255,255,0);transition:background .4s, box-shadow .4s, transform .5s var(--ease)}
.mast.solid{background:rgba(255,255,255,.96);box-shadow:0 1px 0 var(--hair);backdrop-filter:saturate(1.2) blur(8px)}
.mast.tuck{transform:translateY(-100%)}
.mast .logo img{height:34px;width:auto}
.mast nav{display:flex;gap:clamp(14px,2.4vw,34px)}
.mast nav a{position:relative;font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:none;padding-block:6px}
html[lang=ar] .mast nav a,html[lang=zh] .mast nav a{letter-spacing:0;font-size:13px}
.mast nav a::after{content:"";position:absolute;inset-inline:0;inset-block-end:0;height:1px;background:var(--navy);transform:scaleX(0);transform-origin:var(--o,left);transition:transform .35s var(--ease)}
html[dir=rtl] .mast nav a::after{--o:right}
.mast nav a:hover::after,.mast nav a.on::after{transform:scaleX(1)}
.mast nav a.on::after{background:var(--red);height:2px}
.lang{position:relative}
.lang>button{display:flex;align-items:center;gap:8px;font-family:var(--sans);font-size:12px;font-weight:600;padding:8px 0}
.lang>button svg{width:10px;transition:transform .3s}
.lang.open>button svg{transform:rotate(180deg)}
.lang ul{position:absolute;inset-inline-end:0;inset-block-start:calc(100% + 8px);list-style:none;background:#fff;border:1px solid var(--hair);border-radius:4px;min-width:200px;padding:6px 0;opacity:0;visibility:hidden;transform:translateY(-6px);transition:.25s;max-height:calc(var(--vh) - 90px);overflow:auto;color:var(--ink)}
.lang.open ul{opacity:1;visibility:visible;transform:none}
.lang li button{width:100%;display:flex;justify-content:space-between;gap:16px;padding:8px 16px;font-family:var(--sans);font-size:13px;text-align:start}
.lang li button span{color:var(--muted);font-size:11px;letter-spacing:.08em}
.lang li button:hover,.lang li button[aria-current=true]{background:var(--panel)}
.lang li button[aria-current=true]{box-shadow:inset 2px 0 0 var(--red)}
.burger{display:none}
.draft{position:fixed;inset-block-start:calc(var(--mast) + 10px);inset-inline-end:var(--gut);z-index:40;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:none;background:#fff;border:1px solid var(--hair);padding:6px 10px;color:var(--muted);display:none}
.draft.show{display:block}

/* running folio */
.runhead{position:fixed;inset-block-end:16px;inset-inline-start:var(--gut);z-index:40;display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:none;color:var(--muted);transition:color .4s}
.runhead i{display:block;width:80px;height:1px;background:currentColor;opacity:.35;position:relative;overflow:hidden}
.runhead b{position:absolute;inset-block-end:0;inset-inline-start:calc(var(--gut) + 0px)}
.runbar{display:block;width:80px;height:1px;position:relative}
.runbar::before{content:"";position:absolute;inset:0;background:currentColor;opacity:.3}
.runbar::after{content:"";position:absolute;inset:0;background:var(--red);transform:scaleX(var(--p,0));transform-origin:left}
html[dir=rtl] .runbar::after{transform-origin:right}
html.tone-dark .runhead{color:rgba(255,255,255,.7)}

/* ---------- 00 cover · studio ---------- */
#cover{height:var(--vh);min-height:560px;overflow:hidden;
  background:radial-gradient(110% 90% at 64% 32%, #FFFDF9 0%, #F8F3EC 40%, #EEE7DC 76%, #E6DDD0 100%)}
#cover::before{content:"";position:absolute;inset:auto 0 0 0;height:34%;pointer-events:none;z-index:0;background:linear-gradient(to top, rgba(214,203,186,.35), rgba(214,203,186,0))}
#iqf{position:absolute;inset:0;z-index:1;width:100%;height:100%;opacity:0}
.no-3d #iqf,.hero-photo #iqf{opacity:1}
.cover-veil{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse 46% 36% at 18% 88%, rgba(250,246,240,.82) 0%, rgba(250,246,240,.45) 50%, rgba(250,246,240,0) 100%)}
html[dir=rtl] .cover-veil{background:radial-gradient(ellipse 46% 36% at 82% 88%, rgba(250,246,240,.82) 0%, rgba(250,246,240,.45) 50%, rgba(250,246,240,0) 100%)}
.cover-in{position:absolute;inset:0;z-index:3;padding:calc(var(--mast) + 3vh) var(--gut) clamp(28px,7vh,72px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gut);grid-template-rows:auto 1fr auto;pointer-events:none}
.cover-meta{grid-column:1/-1;display:flex;justify-content:space-between;align-items:flex-start;border-block-start:1px solid var(--ink);padding-block-start:10px}
.cover-meta .lbl{color:var(--ink)}
.cover-h{grid-column:1/span 8;align-self:end}
.cover-h .kick{display:flex;align-items:center;gap:12px;margin-block-end:20px;color:var(--ink)}
.cover-h .kick::before{content:"";width:28px;height:2px;background:var(--red)}
.cover-h h1{font-family:var(--serif);font-weight:300;font-size:clamp(2.4rem,min(6.2vw,10.5vh),7rem);line-height:.95;letter-spacing:-.03em}
html[lang=ar] .cover-h h1{line-height:1.3;letter-spacing:0;font-weight:500}
html[lang=zh] .cover-h h1{line-height:1.15;letter-spacing:0}
.cover-h h1 em{font-weight:300;color:var(--red)}
.w{display:inline-block;overflow:hidden;vertical-align:top;padding-block-end:.1em;margin-block-end:-.1em}
.w>span{display:inline-block;will-change:transform}
.cover-side{grid-column:10/-1;align-self:end;display:flex;flex-direction:column;gap:18px;pointer-events:auto}
.cover-side p{font-size:16px;line-height:1.5;color:var(--ink)}
.cover-fig{position:absolute;z-index:3;inset-inline-end:var(--gut);inset-block-start:calc(var(--mast) + 9vh);text-align:end}
.scrollcue{position:absolute;z-index:3;inset-inline-end:var(--gut);inset-block-end:16px;display:flex;flex-direction:row;align-items:center;gap:12px;font-size:10px}
.scrollcue i{width:56px;height:1px;background:rgba(31,31,43,.2);position:relative;overflow:hidden}
.scrollcue i::after{content:"";position:absolute;inset:0;background:var(--ink);animation:cueX 2.2s var(--ease) infinite}
@keyframes cueX{0%{transform:translateX(-100%)}60%,100%{transform:translateX(100%)}}
@keyframes cue{0%{transform:translateY(-100%)}60%,100%{transform:translateY(100%)}}
.cover-fallback{position:absolute;inset:calc(var(--mast) + 4vh) 0 0 34%;z-index:1;display:none;background:url(media/V17.jpg) center/contain no-repeat}
.no-3d .cover-fallback{display:block}
.hero-3d .cover-fig{display:none}

/* ---------- 01 about · warm editorial ---------- */
#about{background:var(--ivory);padding-block:var(--sec)}
#about .folio{grid-column:1/span 3;align-self:start;margin-block-start:14px}
#about .h2{grid-column:4/span 9}
/* verified figures, set large, directly under the headline */
.about-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(220px,.95fr);column-gap:var(--gut);align-items:end;margin-block-start:clamp(36px,6vh,64px);border-block-start:1px solid var(--ink);padding-block-start:clamp(18px,3vh,30px)}
.about-facts .af{display:flex;flex-direction:column;gap:12px;min-width:0}
.about-facts .af .num{font-family:var(--serif);font-weight:300;font-size:clamp(3.4rem,8.4vw,8.8rem);line-height:.86;letter-spacing:-.035em;color:var(--ink)}
.odo .sx{font-family:var(--sans);font-weight:500;font-size:.42em;line-height:1;align-self:flex-start;margin-inline-start:.08em;padding-block-start:.12em;color:var(--red)}
/* figures still awaited from the client: visibly unverified, never styled as data */
.pending{align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;border:1px dashed rgba(31,31,43,.32);padding:16px 18px;background:rgba(255,255,255,.4)}
.pending .tag{color:var(--red)}
.pending ul{list-style:none}
.pending li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-block:8px;border-block-start:1px solid rgba(31,31,43,.1)}
.pending .num.ph{white-space:nowrap;font-family:var(--sans);font-size:15px;font-weight:600;color:var(--muted)}
/* editorial pairing: a tall product crop with a process detail inset */
.about-media{grid-column:1/span 6;position:relative;margin-block-start:clamp(56px,9vh,110px);padding-block-end:clamp(40px,7vh,80px)}
.about-photo{width:78%;aspect-ratio:4/5;overflow:hidden;position:relative;background:var(--stone)}
.about-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 60%}
.about-photo figcaption{position:absolute;inset-inline-start:0;inset-block-end:0;background:var(--ivory);padding:12px 16px 0 0}
html[dir=rtl] .about-photo figcaption{padding:12px 0 0 16px}
.about-inset{position:absolute;inset-inline-end:0;inset-block-end:0;width:46%;aspect-ratio:1;overflow:hidden;border:10px solid var(--ivory);background:var(--stone);box-shadow:0 30px 60px -40px rgba(31,31,43,.45)}
.about-inset img{width:100%;height:100%;object-fit:cover}
.about-col{grid-column:8/span 5;align-self:center;margin-block-start:clamp(56px,9vh,110px);display:flex;flex-direction:column;gap:clamp(32px,5vh,52px)}
.about-body .lead{font-size:clamp(1.2rem,1.65vw,1.55rem);line-height:1.45;color:var(--ink)}
.about-body p+p{margin-block-start:1.1em;font-size:17px;color:var(--muted);max-width:44ch}
.dropcap::first-letter{font-family:var(--serif);float:inline-start;font-size:3.6em;line-height:.82;padding-inline-end:10px;padding-block-start:6px;font-weight:300;color:var(--red)}
html[lang=ar] .dropcap::first-letter,html[lang=zh] .dropcap::first-letter{font-size:inherit;float:none;padding:0;color:inherit}
.pull blockquote{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.7rem,2.8vw,2.7rem);line-height:1.12;border-block-start:2px solid var(--red);padding-block-start:20px}
html[lang=ar] .pull blockquote,html[lang=zh] .pull blockquote{font-style:normal;line-height:1.5}
.pull cite{display:block;margin-block-start:14px;font-style:normal}

/* ---------- 02 plant · cinematic dark ---------- */
#plant{background:var(--midnight)}
.stage{position:relative;height:var(--vh);min-height:540px;overflow:hidden;background:var(--midnight)}
.vframe{position:absolute;inset:0;clip-path:inset(16% 6% 16% 44%);background:#090a1f}
html[dir=rtl] .vframe{clip-path:inset(16% 44% 16% 6%)}
.vframe video{width:100%;height:100%;object-fit:cover;transform:scale(1.08)}
.vframe .shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg, rgba(13,15,46,.92) 0%, rgba(13,15,46,.62) 34%, rgba(13,15,46,0) 64%), linear-gradient(to top, rgba(13,15,46,.75), rgba(13,15,46,0) 38%)}
html[dir=rtl] .vframe .shade{background:linear-gradient(270deg, rgba(13,15,46,.92) 0%, rgba(13,15,46,.62) 34%, rgba(13,15,46,0) 64%), linear-gradient(to top, rgba(13,15,46,.75), rgba(13,15,46,0) 38%)}
.stage-copy{position:absolute;z-index:3;inset-inline-start:var(--gut);inset-block-start:calc(var(--mast) + 5vh);width:min(560px,46vw)}
.stage-copy .h2{font-size:clamp(2rem,4.2vw,4rem);margin-block:22px 20px}
.stage-copy p{font-size:16px;color:rgba(243,242,238,.82);max-width:44ch}
.stage-cap{margin-block-start:24px}
.stage-cap h3{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(1.15rem,1.6vw,1.45rem);margin-block-start:8px;color:#fff}
.tc{position:absolute;inset-inline-start:var(--gut);inset-block-end:max(52px,6vh);display:flex;gap:16px;align-items:center;z-index:3}
.tc .num{font-size:12px;font-weight:600;letter-spacing:.06em;color:#fff}
.tc .bar{width:clamp(80px,14vw,180px);height:1px;background:rgba(255,255,255,.25);position:relative}
.tc .bar i{position:absolute;inset:0;background:var(--red);transform:scaleX(0);transform-origin:left}
html[dir=rtl] .tc .bar i{transform-origin:right}
.tc button{color:#fff;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:none;border:1px solid rgba(255,255,255,.35);padding:7px 10px}
.beats{position:absolute;inset-inline-end:var(--gut);inset-block-end:clamp(24px,6vh,60px);z-index:3;width:min(400px,80vw);height:150px}
.beat{position:absolute;inset:auto 0 0 0;background:rgba(255,255,255,.96);color:var(--ink);padding:18px 20px 20px;opacity:0;transform:translateY(24px);visibility:hidden}
.beat .lbl{color:var(--muted)}
.beat .lbl b{color:var(--red);font-weight:700;margin-inline-end:10px}
.beat p{font-size:17px;line-height:1.4;margin-block-start:8px}
.beat .big{font-family:var(--serif);font-size:40px;font-weight:300;line-height:1}
.watch{position:absolute;inset-inline-end:var(--gut);inset-block-start:calc(var(--mast) + 4vh);z-index:3;color:#fff;background:rgba(13,15,46,.55);padding:11px 16px;backdrop-filter:blur(6px)}
.plants{padding-block:clamp(56px,9vh,110px) var(--sec)}
.plants .card{grid-column:span 6;border-block-start:1px solid rgba(255,255,255,.6);padding-block-start:16px}
.plants .card:nth-child(2){grid-column:7/span 6}
.plants .card h4{font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,2.4vw,2.2rem);margin-block:10px}
.plants .card p{max-width:40ch;color:rgba(243,242,238,.7);font-size:16px}
.stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gut);margin-block-start:clamp(48px,8vh,84px)}
.stats>div{border-block-start:1px solid rgba(255,255,255,.18);padding-block-start:16px}
.stats .num{display:block;font-size:clamp(2.8rem,6.4vw,6rem);font-weight:300;font-family:var(--serif);line-height:1;letter-spacing:-.02em;color:#fff}
.stats .lbl{display:block;margin-block-start:12px}
.stats .tgt{color:var(--red)}
.lines{grid-column:1/-1;margin-block-start:clamp(40px,7vh,70px);display:flex;flex-wrap:wrap;gap:12px 34px;align-items:baseline;border-block-start:1px solid rgba(255,255,255,.18);padding-block-start:18px}
.lines span{font-family:var(--sans);font-weight:700;font-size:clamp(1.1rem,2vw,1.6rem);letter-spacing:.02em}
.lines .lbl{font-size:11px;font-weight:600}
.modal{position:fixed;inset:0;z-index:90;background:rgba(8,9,20,.94);display:none;align-items:center;justify-content:center;padding:var(--gut)}
.modal.on{display:flex}
.modal video{width:min(1200px,100%);max-height:84vh;background:#000}
.modal button{position:absolute;inset-block-start:20px;inset-inline-end:var(--gut);color:#fff}

/* ---------- 03 quality · showcase ---------- */
#quality{background:var(--stone)}
.q-show{min-height:var(--vh);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);align-items:stretch;padding-block:calc(var(--mast) + 4vh) clamp(28px,6vh,64px)}
.q-copy{display:flex;flex-direction:column;min-width:0}
.q-copy .h2{margin-block:20px 0;font-size:clamp(2rem,4vw,3.8rem)}
.q-text{position:relative;flex:1;min-height:200px;margin-block:clamp(20px,4vh,44px)}
.q-item{position:absolute;inset:auto 0 0 0;visibility:hidden}
.q-item.on{visibility:visible}
.q-item .n{font-family:var(--sans);font-weight:800;font-size:clamp(4rem,9vw,8.6rem);line-height:.8;color:var(--stone);-webkit-text-stroke:2px var(--red);paint-order:stroke fill;letter-spacing:-.04em}
.q-item h3{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.4vw,2.2rem);margin-block:18px 10px}
.q-item p{font-size:16px;color:var(--muted);max-width:40ch}
.q-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border-block-start:1px solid rgba(31,31,43,.18)}
.q-nav button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding-block:12px 4px;text-align:start;position:relative;opacity:.55;transition:opacity .3s}
.q-nav button[aria-selected=true]{opacity:1}
.q-nav button::before{content:"";position:absolute;inset-inline:0;inset-block-start:-1px;height:2px;background:var(--red);transform:scaleX(var(--qp,0));transform-origin:left}
html[dir=rtl] .q-nav button::before{transform-origin:right}
.q-nav b{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--red)}
.q-nav span{font-family:var(--sans);font-size:12px;font-weight:600;line-height:1.3}
.q-ctrl{display:flex;gap:8px;margin-block-start:16px}
.iconbtn{width:42px;height:42px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;transition:background .3s,color .3s}
.iconbtn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.iconbtn svg{width:14px;height:14px}
html[dir=rtl] .iconbtn.dir svg{transform:scaleX(-1)}
.q-media{position:relative;overflow:hidden;min-height:320px;background:#d9d5ca}
.q-media figure{position:absolute;inset:0;clip-path:inset(0 0 0 100%)}
html[dir=rtl] .q-media figure{clip-path:inset(0 100% 0 0)}
.q-media figure.on{clip-path:inset(0 0 0 0)}
.q-media img{width:100%;height:100%;object-fit:cover}
.q-media .qcount{position:absolute;inset-block-end:16px;inset-inline-end:16px;z-index:5;background:rgba(255,255,255,.92);padding:8px 12px}

/* ---------- 04 products · explorer ---------- */
#products{background:var(--paper)}
.p-head{padding-block:var(--sec) 0;align-items:end}
.p-head .folio{grid-column:1/span 3;margin-block-start:14px;align-self:start}
.p-head .h2{grid-column:4/span 9}
.p-bar{grid-column:1/-1;display:flex;justify-content:space-between;align-items:flex-end;gap:20px 30px;flex-wrap:wrap;margin-block-start:clamp(28px,5vh,52px);border-block-end:1px solid var(--hair)}
.filters{display:flex;gap:clamp(14px,2.4vw,30px);flex-wrap:wrap}
.filters button{position:relative;padding-block:10px 12px;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:none;color:var(--muted);transition:color .3s}
html[lang=ar] .filters button,html[lang=zh] .filters button{letter-spacing:0;font-size:14px}
.filters button sup{font-size:10px;margin-inline-start:4px;color:var(--muted);font-weight:600}
.filters button::after{content:"";position:absolute;inset-inline:0;inset-block-end:-1px;height:2px;background:var(--red);transform:scaleX(0);transition:transform .45s var(--ease)}
.filters button[aria-pressed=true]{color:var(--ink)}
.filters button[aria-pressed=true]::after{transform:scaleX(1)}
.filters .sep{width:1px;background:var(--hair);margin-block:8px}
.p-count{padding-block:10px 12px}
.explorer{position:relative;height:clamp(520px,calc(var(--vh) - 150px),860px);overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab;
  background:radial-gradient(70% 60% at 50% 52%, #FFFFFF 0%, rgba(255,255,255,0) 70%)}
.explorer.drag{cursor:grabbing}
.explorer:focus-visible{outline-offset:-4px}
.track{position:absolute;inset:0;perspective:1600px;perspective-origin:50% 45%}
.pcard{position:absolute;left:50%;top:47%;width:var(--cw);margin-inline-start:0;transform-origin:50% 50%;text-align:start;background:#fff;border-radius:4px;box-shadow:0 1px 0 rgba(31,31,43,.04), 0 14px 30px -24px rgba(31,31,43,.3);transition:box-shadow .5s var(--ease);will-change:transform,opacity;cursor:pointer;color:var(--ink);overflow:hidden}
.pcard figure{aspect-ratio:16/10;overflow:hidden;background:#EEEDEA}
.pcard img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 1.2s var(--out)}
.pcard:hover img{transform:scale(1.06)}
.pc-body{padding:16px 18px 18px;display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:baseline}
.pc-body .code{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--red)}
.pc-body .cat{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:none;color:var(--muted);text-align:end}
.pc-body h3{grid-column:1/-1;font-family:var(--serif);font-weight:400;font-size:clamp(1.3rem,1.9vw,1.8rem);line-height:1.1}
.pc-body .mini{grid-column:1/-1;margin-block-start:10px}
.pc-body .open{grid-column:1/-1;margin-block-start:12px;opacity:0;transition:opacity .4s}
.pcard.on .open{opacity:1}
.pcard.on{box-shadow:0 1px 0 rgba(31,31,43,.05), 0 34px 70px -30px rgba(31,31,43,.45), 0 0 0 1px rgba(31,31,43,.04)}
.pcard .shine{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg, rgba(255,255,255,0) 40%, rgba(255,255,255,.35) 50%, rgba(255,255,255,0) 60%);opacity:0}
.x-ctrl{position:absolute;inset-inline:var(--gut);inset-block-end:clamp(40px,5vh,52px);display:flex;justify-content:space-between;align-items:center;gap:16px;pointer-events:none}
.x-ctrl>*{pointer-events:auto}
.x-ctrl .arrows{display:flex;gap:8px}
.x-ctrl .hint{flex:1;text-align:center}
.x-ctrl .pos{min-width:70px;text-align:end}
.mini{display:grid;grid-template-columns:repeat(12,1fr);gap:2px}
.mini i{height:5px;background:#E6E6EC}
.mini i.v{background:var(--navy)}
.mini i.f{background:var(--red)}
.mini.all i{background:var(--grey)}
.mini-none{font-family:var(--sans);font-size:10px;color:var(--muted)}

.index{padding-block:clamp(40px,6vh,70px) var(--sec)}
.idx-group{grid-column:1/-1;margin-block-start:clamp(40px,7vh,70px)}
.idx-group>header{display:flex;justify-content:space-between;align-items:baseline;border-block-end:1px solid var(--ink);padding-block-end:10px}
.idx-group>header h3{font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,3vw,2.6rem)}
.row{display:grid;grid-template-columns:70px minmax(0,1.3fr) minmax(0,1.6fr) minmax(170px,1fr) 30px;gap:var(--gut);align-items:center;padding-block:14px;border-block-end:1px solid var(--hair);cursor:pointer;position:relative;width:100%;text-align:start}
.row .code{font-family:var(--sans);font-weight:700;font-size:12px;letter-spacing:.08em;color:var(--muted)}
.row .nm{font-family:var(--serif);font-size:clamp(1.2rem,1.9vw,1.65rem);line-height:1.15;transition:transform .45s var(--ease)}
.row .forms{font-family:var(--sans);font-size:12px;color:var(--muted);line-height:1.45}
.row .arr{justify-self:end;transition:transform .4s}
.row:hover .nm{transform:translateX(14px)}
html[dir=rtl] .row:hover .nm{transform:translateX(-14px)}
.row:hover .arr{transform:translateX(4px)}
.row::before{content:"";position:absolute;inset-inline-start:0;inset-block-end:-1px;height:1px;width:100%;background:var(--navy);transform:scaleX(0);transform-origin:var(--o,left);transition:transform .5s var(--ease)}
html[dir=rtl] .row::before{--o:right}
.row:hover::before{transform:scaleX(1)}
.peek{position:fixed;left:0;top:0;width:220px;height:220px;z-index:30;pointer-events:none;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);opacity:0;transform:translate(-50%,-50%) scale(.6);transition:opacity .25s, transform .35s var(--ease)}
.peek.on{opacity:1;transform:translate(-50%,-50%) scale(1)}
.peek img{width:100%;height:100%;object-fit:cover}

/* drawer */
.drawer{position:fixed;inset-block:0;inset-inline-end:0;width:min(620px,100vw);background:#fff;z-index:80;transform:translateX(105%);visibility:hidden;transition:transform .7s cubic-bezier(.7,0,.15,1), visibility 0s linear .7s;overflow-y:auto;overscroll-behavior:contain;color:var(--ink)}
html[dir=rtl] .drawer{transform:translateX(-105%)}
.drawer.on{transform:none!important;visibility:visible;transition:transform .7s cubic-bezier(.7,0,.15,1), visibility 0s}
.scrim{position:fixed;inset:0;z-index:79;background:rgba(18,18,30,.45);opacity:0;visibility:hidden;transition:.5s;backdrop-filter:blur(2px)}
.scrim.on{opacity:1;visibility:visible}
.d-top{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-block-end:1px solid var(--hair)}
.d-top .nav{display:flex;gap:18px}
.d-photo{aspect-ratio:16/9;overflow:hidden;background:#EEEDEA}
.d-photo img{width:100%;height:100%;object-fit:cover}
.d-body{padding:22px 28px 60px}
.d-body .code{font-family:var(--sans);font-weight:700;font-size:12px;letter-spacing:.12em;color:var(--red)}
.d-body h3{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.02;margin-block:8px 16px}
.d-body .desc{font-size:17px;color:var(--ink);max-width:46ch}
.spec{margin-block-start:28px}
.spec>div{display:grid;grid-template-columns:130px 1fr;gap:16px;padding-block:12px;border-block-start:1px solid var(--hair)}
.spec dt{font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:none;color:var(--muted);padding-block-start:3px}
html[lang=ar] .spec dt,html[lang=zh] .spec dt{letter-spacing:0;font-size:12px}
.spec dd{font-family:var(--sans);font-size:14px;line-height:1.5}
.months{display:grid;grid-template-columns:repeat(12,1fr);gap:3px}
.months i{font-style:normal;font-family:var(--sans);font-size:10px;font-weight:600;text-align:center;padding-block:6px;background:var(--panel);color:var(--muted)}
.months i.v{background:var(--navy);color:#fff}
.months i.f{background:var(--red);color:#fff}
.nutri{margin-block-start:26px;border:1px solid var(--ink);padding:14px 16px;display:flex;justify-content:space-between;gap:16px}

/* ---------- 05 calendar · technical sheet ---------- */
#calendar{padding-block:var(--sec);background:var(--pale)}
#calendar .folio{grid-column:1/span 3;margin-block-start:14px}
#calendar .h2{grid-column:4/span 9}
.cal-wrap{grid-column:1/-1;margin-block-start:clamp(36px,6vh,64px);position:relative}
.cal-swipe{display:none}
.cal{position:relative;background:#fff;padding:8px clamp(12px,2vw,28px) 18px;box-shadow:0 1px 0 rgba(31,31,43,.06)}
.cal-row{display:grid;grid-template-columns:minmax(120px,200px) repeat(12,1fr);align-items:center;border-block-end:1px solid #ECEDF1;min-height:38px;position:relative}
.cal-row:not(.head){background-image:linear-gradient(to right, transparent calc(100% - 1px), #F0F1F4 0);background-size:calc((100% - clamp(120px,16.6%,200px))/12) 100%;background-position:right 0 top 0;background-repeat:repeat-x}
.cal-row.head{border-block-end:1px solid var(--ink)}
.cal-row.head span{font-family:var(--sans);font-size:11px;font-weight:600;text-align:center;color:var(--muted);padding-block:10px}
.cal-row .n{font-family:var(--serif);font-size:16px;padding-inline-end:10px}
.cal-row .seg{height:10px;border-radius:1px;transform:scaleX(0);transform-origin:var(--o,left)}
html[dir=rtl] .cal-row .seg{--o:right}
.cal-row .seg.v{background:var(--navy)}
.cal-row .seg.f{background:var(--red)}
.cal-row:not(.head):hover{background-color:#F6F4FB}
.cal-row:not(.head):hover .n{color:var(--navy)}
.cal-row .n{transition:color .25s}
.cal-sub{grid-column:1/-1;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:none;padding-block:24px 8px;color:var(--muted);border-block-end:1px solid var(--hair)}
.cal-now{position:absolute;inset-block:8px 18px;width:1px;background:var(--red);pointer-events:none;transform-origin:top}
.cal-now span{position:absolute;inset-block-start:-2px;transform:translate(-50%,-100%);font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:none;white-space:nowrap;color:var(--red);background:#fff;padding:2px 6px}
.legend{grid-column:1/-1;display:flex;gap:26px;margin-block-start:20px}
.legend span{display:flex;align-items:center;gap:8px}
.legend i{width:18px;height:8px}

/* ---------- 06 brands & packing ---------- */
#brands{padding-block:var(--sec);overflow:hidden;background:var(--ivory)}
#brands .folio{grid-column:1/span 3;margin-block-start:14px}
#brands .h2{grid-column:4/span 9}
.marq{margin-block:clamp(40px,8vh,80px);white-space:nowrap;display:flex;width:max-content;will-change:transform;border-block:1px solid rgba(31,31,43,.14);padding-block:clamp(14px,2.4vh,24px)}
.marq>div{display:flex;flex:none}
.marq span{display:inline-block;font-family:var(--serif);font-weight:300;font-size:clamp(3rem,8.4vw,8rem);line-height:1;letter-spacing:-.02em;padding-inline-end:.6em}
.marq span:nth-child(even){font-style:italic;color:var(--muted)}
.marq span sup{font-family:var(--sans);font-size:12px;font-weight:700;color:var(--red);font-style:normal;vertical-align:top;margin-inline-start:6px;letter-spacing:.1em}
.pack-photo{grid-column:1/span 7;aspect-ratio:16/10;overflow:hidden;position:relative}
.pack-photo img{width:100%;height:100%;object-fit:cover}
.pack-copy{grid-column:9/span 4;align-self:end}
.pack-copy h3{font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.15;margin-block-start:12px}
.packs{list-style:none;margin-block:24px}
.packs li{display:flex;justify-content:space-between;border-block-start:1px solid rgba(31,31,43,.14);padding-block:12px;font-family:var(--sans);font-size:15px;font-weight:500}
.packs li:last-child{border-block-end:1px solid rgba(31,31,43,.14)}
.pack-copy p{font-size:16px;color:var(--muted)}
.pack-copy p+p{margin-block-start:12px}

/* ---------- 07 logistics · industrial dark ---------- */
#logistics{background:var(--charcoal)}
.l-stage{height:var(--vh);min-height:560px;position:relative;overflow:hidden;background:radial-gradient(90% 70% at 62% 58%, #2A2C35 0%, #1A1B22 55%, #111217 100%)}
#reefer{position:absolute;inset:0;width:100%;height:100%}
.l-copy{position:absolute;inset-inline-start:var(--gut);inset-block-start:calc(var(--mast) + 5vh);width:min(460px,86vw);z-index:2}
.l-copy .h2{font-size:clamp(2rem,4vw,3.8rem);margin-block-start:22px}
.counter{position:absolute;inset-inline-start:var(--gut);inset-block-end:max(64px,8vh);z-index:2}
.counter .num{display:block;font-family:var(--serif);font-weight:300;font-size:clamp(3.6rem,9vw,8.4rem);line-height:.9;letter-spacing:-.03em;color:#fff}
.counter .lbl{display:block;margin-block-start:10px}
.toggles{position:absolute;inset-inline-end:var(--gut);inset-block-end:clamp(24px,7vh,64px);z-index:2;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.toggles .lbl{margin-block-end:2px}
.tg{display:flex;border:1px solid rgba(255,255,255,.45)}
.tg button{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:none;padding:9px 14px;color:#fff;transition:background .3s,color .3s;min-width:64px}
.tg button[aria-pressed=true]{background:#fff;color:var(--ink)}
.tg button:disabled{opacity:.3;cursor:not-allowed}
.replay{color:#fff;margin-block-start:6px}
.l-table{padding-block:clamp(48px,8vh,90px) var(--sec)}
.l-table table{grid-column:1/span 7;border-collapse:collapse;width:100%;font-family:var(--sans);font-size:14px}
.l-table th{text-align:start;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:none;color:rgba(243,242,238,.6);padding:10px 0;border-block-end:1px solid rgba(255,255,255,.7)}
.l-table td{padding:13px 0;border-block-end:1px solid rgba(255,255,255,.14);font-variant-numeric:tabular-nums}
.l-table tr.on td{color:#fff;background:linear-gradient(90deg, rgba(227,30,36,.18), rgba(227,30,36,0))}
.l-table td.r,.l-table th.r{text-align:end}
.service{grid-column:9/span 4}
.service h3{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:none;padding-block-end:10px;border-block-end:2px solid var(--red)}
.service ol{list-style:none;counter-reset:s}
.service li{counter-increment:s;display:flex;gap:16px;padding-block:13px;border-block-end:1px solid rgba(255,255,255,.14);font-size:16px}
.service li::before{content:counter(s,decimal-leading-zero);font-family:var(--sans);font-size:11px;font-weight:700;color:rgba(243,242,238,.5);padding-block-start:4px}
.drums{grid-column:1/span 7;margin-block-start:18px;font-family:var(--sans);font-size:13px;color:rgba(243,242,238,.6)}

/* ---------- 08 export · Earth from space ---------- */
#export{background:var(--space)}
.x-stage{height:var(--vh);min-height:600px;position:relative;overflow:hidden;background:radial-gradient(80% 90% at 30% 50%, #0B1030 0%, #05061A 50%, #020309 100%)}
#globe{position:absolute;inset-block:0;inset-inline-start:0;width:64%;height:100%;cursor:grab;touch-action:pan-y}
#globe.drag{cursor:grabbing}
html[dir=rtl] #globe{inset-inline-start:auto;inset-inline-end:0}
.x-copy{position:absolute;inset-inline-end:var(--gut);inset-block-start:calc(var(--mast) + 4vh);inset-block-end:clamp(20px,5vh,48px);width:min(440px,38vw);z-index:2;display:flex;flex-direction:column}
.x-copy .h2{font-size:clamp(2rem,3.6vw,3.4rem);margin-block:20px 22px}
.regions{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;align-content:start}
.regions h4{font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:none;color:rgba(243,242,238,.55);border-block-end:1px solid rgba(255,255,255,.16);padding-block-end:6px;margin-block-end:6px}
html[lang=ar] .regions h4{letter-spacing:0;font-size:12px}
.regions ul{list-style:none}
.regions li button{font-size:14.5px;line-height:1.5;text-align:start;color:#E9E8F2;opacity:.3;transition:color .2s,opacity .5s;padding-block:1px}
.regions li button.lit{opacity:1}
.regions li button:hover,.regions li button[aria-pressed=true]{color:#FF6B6F}
.x-foot{margin-block-start:auto;padding-block-start:18px;display:flex;flex-direction:column;gap:10px}
.x-foot .note{font-family:var(--sans);font-size:11px;line-height:1.5;color:rgba(243,242,238,.5);max-width:46ch}
.x-foot .row2{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.x-foot .textlink{color:#fff}
.x-tip{position:absolute;z-index:3;pointer-events:none;background:rgba(255,255,255,.96);color:var(--ink);padding:8px 12px;font-family:var(--sans);font-size:12px;opacity:0;transition:opacity .2s;white-space:nowrap}
.x-tip b{display:block;font-family:var(--serif);font-size:18px;font-weight:400}
.x-credit{position:absolute;inset-inline-start:var(--gut);inset-block-end:42px;z-index:2;font-family:var(--sans);font-size:9.5px;letter-spacing:.06em;color:rgba(243,242,238,.35)}

/* ---------- 09 certifications ---------- */
#certs{padding-block:var(--sec);background:var(--paper)}
#certs .folio{grid-column:1/span 3;margin-block-start:14px}
.cert-list{grid-column:4/span 9;display:grid;grid-template-columns:repeat(5,1fr);border-block-start:1px solid var(--ink)}
.cert-list div{padding:22px 10px 22px 0;border-block-end:1px solid var(--hair);font-family:var(--sans);font-weight:700;font-size:clamp(14px,1.4vw,18px);letter-spacing:.02em}
.cert-list div small{display:block;font-family:var(--sans);font-weight:600;font-size:10px;letter-spacing:.12em;color:var(--muted);margin-block-end:6px}
.cert-note{grid-column:4/span 9;margin-block-start:14px}

/* ---------- 10 contact · closing ---------- */
#contact{padding-block:var(--sec) 0;background:var(--deepnavy);overflow:hidden}
#contact::after{content:"";position:absolute;inset-inline-end:-10vw;inset-block-start:0;width:46vw;height:100%;background:linear-gradient(115deg, transparent 0 38%, rgba(227,30,36,.9) 38% 39%, transparent 39% 46%, rgba(255,255,255,.06) 46% 100%);pointer-events:none;z-index:0}
html[dir=rtl] #contact::after{inset-inline-end:auto;inset-inline-start:-10vw;transform:scaleX(-1)}
#contact .folio{grid-column:1/span 3;margin-block-start:14px}
#contact .h2{grid-column:4/span 9;font-size:clamp(2.4rem,6vw,5.8rem)}
#contact .h2 em{color:#FF8A8D}
.c-cols{grid-column:4/span 9;display:grid;grid-template-columns:1fr 1fr 150px;gap:28px var(--gut);margin-block-start:clamp(36px,6vh,60px)}
.c-cols h4{font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:none;color:rgba(243,242,238,.55);margin-block-end:10px}
.c-cols p{font-size:16px}
.c-cols a{border-block-end:1px solid rgba(255,255,255,.5)}
.qr{background:#fff;padding:10px;width:max-content;color:var(--ink)}
.qr img{width:110px;height:110px}
.qr .lbl{display:block;margin-block-start:6px;color:var(--ink)}
.big-mail{grid-column:4/span 9;margin-block-start:clamp(40px,7vh,70px);font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,5vw,4.6rem);letter-spacing:-.02em;line-height:1;word-break:break-word}
.big-mail a{background:linear-gradient(var(--red),var(--red)) 0 100%/0 2px no-repeat;transition:background-size .6s var(--ease)}
.big-mail a:hover{background-size:100% 2px}
footer{margin-block-start:clamp(60px,10vh,110px);padding-block:22px 70px;border-block-start:1px solid rgba(255,255,255,.3);display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;align-items:center}
footer .logo-card{background:#fff;padding:10px 14px}
footer img{height:34px}
footer .tag{font-family:var(--serif);font-style:italic;font-size:20px}
footer .credits{flex-basis:100%;font-family:var(--sans);font-size:10px;line-height:1.6;color:rgba(243,242,238,.48);max-width:110ch}
footer .credits a{border-block-end:1px solid rgba(255,255,255,.25)}

/* ---------- reveal helpers ---------- */
[data-rise]{opacity:0;transform:translateY(24px)}
.no-motion [data-rise]{opacity:1;transform:none}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .tc .lbl{display:none}
  .q-show{grid-template-columns:1fr 1fr}
}
@media (max-width:1000px){
  .cover-h{grid-column:1/-1}
  .cover-side{grid-column:1/-1;margin-block-start:20px}
  .cover-fig{display:none}
  #about .folio,.p-head .folio,#calendar .folio,#brands .folio,#certs .folio,#contact .folio{grid-column:1/-1;margin-block-end:20px}
  #about .h2,.p-head .h2,#calendar .h2,#brands .h2,#contact .h2{grid-column:1/-1}
  .about-media,.about-col{grid-column:1/-1}
  .about-col{margin-block-start:28px}
  .about-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pending{grid-column:1/-1;margin-block-start:22px;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}
  .pending ul{display:flex;gap:28px;flex-wrap:wrap}
  .pending li{border:0;padding:0}
  .stage-copy{width:auto;inset-inline-end:var(--gut)}
  .plants .card,.plants .card:nth-child(2){grid-column:1/-1;margin-block-start:30px}
  .stats{grid-template-columns:1fr}
  .q-show{display:flex;flex-direction:column;min-height:0;padding-block:calc(var(--mast) + 3vh) var(--sec)}
  .q-copy{display:contents}
  .q-copy>.folio{order:1}.q-copy>.h2{order:2}
  .q-media{order:3;margin-block-start:24px;height:clamp(240px,44vh,460px);flex:none}
  .q-text{order:4;min-height:210px;margin-block:20px 14px}
  .q-nav{order:5}.q-ctrl{order:6}
  .row{grid-template-columns:52px 1fr 24px}
  .row .forms,.row .mini{display:none}
  .pack-photo,.pack-copy{grid-column:1/-1}
  .pack-copy{margin-block-start:36px}
  .l-table table,.service,.drums{grid-column:1/-1}
  .service{margin-block-start:44px}
  .x-stage{height:auto;min-height:0;padding-block-end:var(--sec)}
  #globe{position:relative;width:100%;height:min(64vh,560px);inset:auto}
  html[dir=rtl] #globe{inset:auto}
  .x-copy{position:relative;inset:auto;width:auto;padding-inline:var(--gut);margin-block-start:-4vh}
  .x-copy .folio{display:none}
  .x-credit{position:relative;inset:auto;display:block;padding:18px var(--gut) 0}
  .x-copy .h2{margin-block:0 14px;font-size:clamp(1.7rem,6vw,2.6rem)}
  .regions{grid-template-columns:repeat(3,1fr);gap:10px 16px}
  .regions li button{font-size:12.5px}
  .cert-list{grid-column:1/-1;grid-template-columns:repeat(2,1fr)}
  .cert-note,.c-cols,.big-mail{grid-column:1/-1}
  .c-cols{grid-template-columns:1fr 1fr}
  .cal-row{grid-template-columns:110px repeat(12,1fr)}
  .cal-row .n{font-size:13px}
}
@media (max-width:760px){
  :root{--mast:56px}
  .mast nav{position:fixed;inset:var(--mast) 0 auto 0;flex-direction:column;gap:0;background:#fff;border-block-end:1px solid var(--hair);padding:8px var(--gut) 18px;transform:translateY(-8px);opacity:0;visibility:hidden;transition:.3s;color:var(--ink)}
  .mast.menu nav{opacity:1;visibility:visible;transform:none}
  .mast nav a{padding-block:12px;border-block-end:1px solid var(--hair)}
  .burger{display:block;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:none}
  .mast .right{display:flex;gap:20px;align-items:center}
  .mast .logo img{height:28px}
  .runhead{display:none}
  .scrollcue{display:none}
  .cover-in{padding-block-end:28px}
  .cover-side p{font-size:15px}
  .about-facts .af .num{font-size:clamp(2.6rem,13vw,3.6rem)}
  .about-facts .af .lbl{font-size:10px;letter-spacing:.12em}
  .about-photo{width:84%}
  .about-inset{width:48%;border-width:7px}
  .pending{padding:14px}
  .vframe{clip-path:inset(46% 4% 18% 4%)}
  html[dir=rtl] .vframe{clip-path:inset(46% 4% 18% 4%)}
  .vframe .shade{background:linear-gradient(to bottom, rgba(13,15,46,.9) 0%, rgba(13,15,46,.55) 40%, rgba(13,15,46,0) 62%), linear-gradient(to top, rgba(13,15,46,.85), rgba(13,15,46,0) 40%)}
  .stage-copy{inset-block-start:calc(var(--mast) + 3vh)}
  .stage-copy p{display:none}
  .watch{inset-block-start:auto;inset-block-end:clamp(24px,6vh,60px);inset-inline-end:var(--gut);padding:8px 12px}
  .beats{inset-inline:var(--gut);width:auto;inset-block-end:calc(clamp(24px,6vh,60px) + 56px);height:120px}
  .beat{padding:14px 16px}
  .beat .big{font-size:30px}
  .tc{gap:10px}
  .tc .lbl,.tc .bar{display:none}
  .q-media{height:clamp(220px,36vh,340px)}
  .q-nav span{display:none}
  .explorer{height:clamp(440px,calc(var(--vh) - 170px),640px)}
  .x-ctrl .hint{display:none}
  .toggles{inset-block-end:auto;inset-block-start:calc(var(--mast) + 2vh);gap:6px}
  .l-copy{inset-block-start:auto;inset-block-end:calc(clamp(24px,7vh,64px) + 110px)}
  .l-copy .h2{font-size:1.8rem}
  .l-copy .folio{display:none}
  .tg button{padding:7px 10px;font-size:10px;min-width:54px}
  .counter .num{font-size:3.6rem}
  .d-body{padding:18px 20px 50px}
  .spec>div{grid-template-columns:1fr;gap:4px}
  .regions{grid-template-columns:1fr 1fr 1fr}
  .regions h4{font-size:9.5px}
  .c-cols{grid-template-columns:1fr}
  #contact::after{width:80vw;opacity:.5}
  .cal-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-inline:calc(var(--gut) * -1);padding-inline:var(--gut);scroll-snap-type:x proximity}
  .cal-wrap::after{content:"";position:sticky;float:right;inset-inline-end:0;top:0;width:28px;height:100%;margin-top:-100%;background:linear-gradient(to left, var(--pale), rgba(238,240,244,0));pointer-events:none}
  .cal{min-width:660px}
  .cal-row .n{position:sticky;inset-inline-start:0;z-index:2;background:#fff;padding-block:10px;box-shadow:6px 0 8px -8px rgba(31,31,43,.25)}
  .cal-row.head span:first-child{position:sticky;inset-inline-start:0;z-index:2;background:#fff}
  .cal-swipe{display:flex;gap:8px;margin-block-start:12px;grid-column:1/-1}
}
@media (max-height:560px) and (orientation:landscape){
  #cover,.stage,.l-stage{min-height:0}
  .scrollcue,.runhead,.cover-fig{display:none}
  .cover-in{padding-block:calc(var(--mast) + 8px) 18px}
  .cover-meta{display:none}
  .cover-h{grid-column:1/span 7}
  .cover-h .kick{margin-block-end:10px}
  .cover-side{grid-column:9/-1}
  .cover-h h1{font-size:clamp(1.9rem,9vh,3.2rem)}
  .cover-side p{display:none}
  .stage-copy .h2{font-size:1.8rem}
  .stage-copy p{display:none}
  .beats{display:none}
  .watch{inset-block-start:auto;inset-block-end:16px;padding:8px 12px}
  .stage-copy .h2{max-width:58vw}
  .vframe .shade{background:linear-gradient(90deg, rgba(13,15,46,.94) 0%, rgba(13,15,46,.78) 48%, rgba(13,15,46,.25) 80%, rgba(13,15,46,.1) 100%)}
  html[dir=rtl] .vframe .shade{background:linear-gradient(270deg, rgba(13,15,46,.94) 0%, rgba(13,15,46,.78) 48%, rgba(13,15,46,.25) 80%, rgba(13,15,46,.1) 100%)}
  .tc{inset-block-end:16px}
  .toggles .lbl{display:none}
  .l-copy{width:min(300px,40vw);inset-block-start:calc(var(--mast) + 12px)}
  .q-show{grid-template-columns:1fr 1fr;grid-template-rows:none}
  .q-copy{display:flex}
  .q-item .n{font-size:3rem}
  .explorer{height:calc(var(--vh) - 40px)}
  .l-copy .h2{font-size:1.6rem}
  .counter .num{font-size:3rem}
  .x-copy .h2{font-size:1.6rem}
}
@media (max-width:760px){
  .tc{inset-block-end:clamp(24px,6vh,60px)}
}
@media (max-width:420px){
  .watch{font-size:10px;letter-spacing:.1em;padding:7px 10px}
  .tc .num{font-size:11px}
}
@media (max-width:400px){
  .cover-h .kick{letter-spacing:.08em;gap:8px}
}
@media (prefers-reduced-motion:reduce){
  .scrollcue i::after{animation:none}
}
/* Cover photography is the first frame, including on low-power devices. */
#cover{background:#f5ecdf}
.cover-study{position:absolute;inset:0;overflow:hidden;transition:opacity .9s}
.cover-study img{width:100%;height:100%;object-fit:cover;object-position:center}
html[dir=rtl] .cover-study{transform:scaleX(-1)}
.cover-veil,html[dir=rtl] .cover-veil{background:linear-gradient(90deg,#faf3e8 5%,rgba(250,243,232,.95) 26%,rgba(250,243,232,0) 63%)}
html[dir=rtl] .cover-veil{transform:scaleX(-1)}
.cover-in{grid-template-rows:auto 1fr auto;row-gap:clamp(12px,2.3vh,24px)}
.cover-h,.cover-side{grid-column:1 / span 6}
.cover-side{max-width:44ch;margin:0}
.cover-h h1{font-size:clamp(2.5rem,min(5.6vw,9vh),6rem);text-wrap:balance}
.hero-3d .cover-study{opacity:0}
@media(prefers-reduced-motion:no-preference){
  .cover-study img{animation:study-arrive 4s cubic-bezier(.2,.65,.3,1) both}
  @keyframes study-arrive{from{transform:scale(1.045)}to{transform:scale(1)}}
}
@media(max-width:760px) and (orientation:portrait){
  #cover{height:auto;min-height:var(--vh)}
  .cover-study{height:100%}
  .cover-study img{object-position:center top}
  .cover-veil,html[dir=rtl] .cover-veil{background:linear-gradient(0deg,#faf3e8 8%,rgba(250,243,232,.97) 31%,transparent 58%)}
  .cover-in{position:relative;min-height:var(--vh);grid-template-rows:auto minmax(32vh,1fr) auto auto;padding-bottom:58px;row-gap:14px}
  .cover-h,.cover-side{grid-column:1/-1}
  .cover-h{grid-row:3}
  .cover-h h1{font-size:clamp(2.35rem,9.1vw,4rem)}
  .cover-h .kick{margin-bottom:10px}
}
@media(max-height:560px) and (orientation:landscape){
  .cover-in{grid-template-rows:1fr auto}
}
