/* =====================================================================
   Linden Photonics — site stylesheet
   Designed & developed by 6Faces Inc
   Tokens: abyss / hull / leaf / lumen / paper / ink
   ===================================================================== */
@font-face{font-family:"Archivo";font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(../fonts/archivo-latin-wdth-normal.woff2) format("woff2-variations"),url(../fonts/archivo-latin-wdth-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-display:swap;font-weight:400;src:url(../fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-display:swap;font-weight:500;src:url(../fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-display:swap;font-weight:600;src:url(../fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2")}
:root{
  --abyss:#061A22;      /* deep-ocean base for dark bands */
  --hull:#0C2A35;       /* raised dark surfaces */
  --hull-2:#123845;
  --leaf:#5DBB46;       /* Linden brand green (logo) */
  --leaf-deep:#2F8A2B;
  --lumen:#8FE3FF;      /* light travelling through the fiber */
  --jacket:#E0452B;     /* outer jacket red from the cable diagram */
  --lcp:#F0D9A8;        /* LCP layer cream */
  --paper:#F2F5F3;      /* cool light page background */
  --white:#FFFFFF;
  --ink:#0D1F27;        /* body text on light */
  --ink-2:#3C5560;
  --ink-3:#6B818A;
  --line:#D6E0DD;
  --line-dark:rgba(143,227,255,.14);
  --f-display:"Archivo",system-ui,sans-serif;
  --f-body:"IBM Plex Sans",system-ui,sans-serif;
  --wrap:1240px;
  --r-s:6px; --r-m:12px; --r-l:22px;
  --ease:cubic-bezier(.2,.7,.1,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--f-body);font-size:17px;line-height:1.62;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
img,video{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--lumen);outline-offset:3px;border-radius:4px}
.wrap{width:min(var(--wrap),100% - 40px);margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;z-index:999;background:var(--leaf);color:#fff;padding:8px 14px;border-radius:6px}
.skip:focus{left:12px}

/* ---------- Type scale (1.25 major third, display expanded) ---------- */
h1,h2,h3,h4{font-family:var(--f-display);font-stretch:118%;line-height:1.08;letter-spacing:-.01em;margin:0 0 .5em;font-weight:700}
h1{font-size:clamp(2.3rem,4.6vw,4.1rem)}
h2{font-size:clamp(1.8rem,3.1vw,2.75rem)}
h3{font-size:clamp(1.2rem,1.6vw,1.45rem);font-stretch:108%}
h4{font-size:1.08rem;font-stretch:100%;font-weight:650}
p{margin:0 0 1.05em}
.lede{font-size:clamp(1.06rem,1.35vw,1.22rem);color:var(--ink-2);max-width:62ch}
.kicker{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:.95rem;color:var(--leaf-deep);margin-bottom:14px}
.kicker::before{content:"";width:28px;height:2px;background:linear-gradient(90deg,var(--leaf),var(--lumen));border-radius:2px}
.dark .kicker{color:var(--lumen)}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;font-weight:600;font-size:.98rem;text-decoration:none;border:1.5px solid transparent;transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease)}
.btn svg{width:16px;height:16px;flex:none}
.btn-leaf{background:var(--leaf);color:#06210A}
.btn-leaf:hover{background:#79D161}
.btn-ghost{border-color:rgba(255,255,255,.35);color:#fff}
.btn-ghost:hover{border-color:var(--lumen);color:var(--lumen)}
.btn-ink{background:var(--ink);color:#fff}
.btn-ink:hover{background:var(--leaf-deep)}
.btn-line{border-color:var(--ink);color:var(--ink)}
.btn-line:hover{background:var(--ink);color:#fff}
.btn-sm{padding:9px 16px;font-size:.9rem}
.tlink{font-weight:600;color:var(--leaf-deep);text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:1px}
.tlink:hover{color:var(--ink)}
.dark .tlink{color:var(--lumen)}

/* ---------- Top bar ---------- */
.topbar{background:var(--abyss);color:rgba(255,255,255,.72);font-size:.84rem;border-bottom:1px solid var(--line-dark)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:40px}
.topbar a{text-decoration:none}
.topbar a:hover{color:var(--lumen)}
.tb-l,.tb-r{display:flex;align-items:center;gap:22px}
.tb-l span,.tb-l a{display:inline-flex;align-items:center;gap:7px}
.tb-l svg,.tb-r svg{width:14px;height:14px}
.tb-r{gap:10px}
.tb-r a{display:grid;place-items:center;width:24px;height:24px;transition:transform .2s ease,filter .2s ease}
.tb-r a img{width:24px;height:24px;display:block}
.tb-r a:hover{transform:translateY(-2px) scale(1.08);filter:drop-shadow(0 4px 8px rgba(0,0,0,.35))}

/* ---------- Header & navigation ---------- */
.site-header{position:sticky;top:0;z-index:80;background:rgba(6,26,34,.92);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line-dark);transition:box-shadow .3s}
.site-header.scrolled{box-shadow:0 10px 30px rgba(0,0,0,.25)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px}
.brand img{height:50px;width:auto}
.nav{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0}
.nav>li{position:relative}
.nav>li>a,.nav>li>button{display:flex;align-items:center;gap:6px;background:none;border:0;color:#fff;font-family:var(--f-display);font-stretch:112%;font-weight:700;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;padding:12px 12px;border-radius:8px}
.nav>li>a:hover,.nav>li>button:hover,.nav>li.open>button,.nav>li>a.is-current,.nav>li>button.is-current{color:var(--lumen)}
.nav>li>a.is-current::after,.nav>li>button.is-current::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:var(--leaf);border-radius:2px}
.nav .chev{width:10px;height:10px;transition:transform .25s}
.nav>li.open .chev{transform:rotate(180deg)}
.nav-cta{margin-left:10px}
.nav-cta .btn{padding:11px 18px;font-size:.88rem}
.drop{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,8px);min-width:290px;background:var(--hull);border:1px solid var(--line-dark);border-radius:var(--r-m);padding:10px;box-shadow:0 24px 60px rgba(0,0,0,.4);opacity:0;visibility:hidden;transition:opacity .22s,transform .22s var(--ease),visibility .22s}
.drop::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.nav>li:hover>.drop,.nav>li.open>.drop,.nav>li:focus-within>.drop{opacity:1;visibility:visible;transform:translate(-50%,0)}
.drop a{display:block;padding:9px 12px;border-radius:8px;color:#E6F3F6;text-decoration:none;font-size:.93rem;line-height:1.35}
.drop a small{display:block;color:rgba(230,243,246,.55);font-size:.8rem;margin-top:2px}
.drop a:hover,.drop a.is-current{background:rgba(143,227,255,.09);color:var(--lumen)}
.drop .sub{margin:2px 0 6px 12px;padding-left:10px;border-left:1px solid var(--line-dark)}
.drop .sub a{font-size:.86rem;padding:6px 10px}
.drop .ext::after{content:"PDF";font-size:.66rem;font-weight:700;margin-left:8px;padding:1px 5px;border-radius:4px;background:rgba(224,69,43,.22);color:#FFB4A6;vertical-align:1px}
/* mega for Products & Markets */
.drop.mega{display:grid;grid-template-columns:1fr 1fr;gap:2px 8px;min-width:560px}
.drop.mega .mega-feat{grid-column:1/-1;display:flex;gap:14px;align-items:center;margin-top:6px;padding:12px;border-radius:10px;background:linear-gradient(120deg,rgba(93,187,70,.16),rgba(143,227,255,.08));text-decoration:none}
.drop.mega .mega-feat img{width:54px;height:70px;object-fit:cover;border-radius:6px}
.drop.mega .mega-feat strong{display:block;color:#fff;font-size:.95rem}
.drop.mega .mega-feat span{color:rgba(230,243,246,.7);font-size:.84rem}
.drop.markets{grid-template-columns:repeat(3,1fr);min-width:640px}
.drop.markets a{display:flex;flex-direction:column;gap:8px;padding:8px}
.drop.markets a img{width:100%;height:74px;object-fit:cover;border-radius:7px;filter:saturate(.85)}
.drop.markets a:hover img{filter:none}
.burger{display:none;background:none;border:1px solid var(--line-dark);border-radius:10px;width:46px;height:46px;color:#fff;place-items:center}
.burger span{display:block;width:20px;height:2px;background:currentColor;margin:4px auto;transition:transform .3s,opacity .3s}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

@media (max-width:1180px){
  .nav>li>a,.nav>li>button{padding:12px 9px;font-size:.74rem}
  .brand img{height:42px}
}
@media (max-width:1060px){
  .burger{display:grid}
  .nav-panel{position:fixed;inset:118px 0 0 0;background:var(--abyss);overflow-y:auto;padding:12px 20px 40px;transform:translateX(100%);transition:transform .35s var(--ease);visibility:hidden}
  .nav-panel.open{transform:none;visibility:visible}
  .nav{flex-direction:column;align-items:stretch}
  .nav>li{border-bottom:1px solid var(--line-dark)}
  .nav>li>a,.nav>li>button{width:100%;justify-content:space-between;padding:16px 4px;font-size:.9rem}
  .nav>li>a.is-current::after,.nav>li>button.is-current::after{display:none}
  .drop,.drop.mega,.drop.markets{position:static;transform:none!important;opacity:1;visibility:visible;display:none;min-width:0;box-shadow:none;border:0;background:transparent;padding:0 0 12px;grid-template-columns:1fr}
  .nav>li.open>.drop{display:block}
  .nav>li:hover>.drop{display:none}.nav>li.open:hover>.drop{display:block}
  .drop.markets a img{display:none}
  .nav-cta{margin:18px 0 0}
  .nav-cta .btn{width:100%;justify-content:center}
}
@media (max-width:720px){.topbar .tb-l span{display:none}.topbar .tb-l a.hide-s{display:none}.nav-panel{inset:118px 0 0 0}}
@media (max-width:480px){.topbar .tb-r{display:none}}

/* ---------- Generic sections ---------- */
.sec{padding:clamp(64px,8vw,112px) 0}
.sec-tight{padding:clamp(44px,5vw,72px) 0}
.dark{background:var(--abyss);color:#DCEBEF}
.dark h1,.dark h2,.dark h3,.dark h4{color:#fff}
.dark .lede{color:rgba(220,235,239,.78)}
.white{background:#fff}
.sec-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:end;margin-bottom:48px}
.sec-head p{margin:0;color:var(--ink-2)}
.dark .sec-head p{color:rgba(220,235,239,.75)}
@media (max-width:860px){.sec-head{grid-template-columns:1fr;gap:14px}}

/* =====================================================================
   HOME HERO — fiber strand + compact slider
   ===================================================================== */
.hero{position:relative;background:radial-gradient(1200px 600px at 78% 40%,#0E3A48 0%,var(--abyss) 62%);color:#fff;overflow:hidden;isolation:isolate}
.hero canvas.strands{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.85}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:56px;align-items:center;min-height:min(84vh,760px);padding:64px 0 88px}
.hero h1{font-size:clamp(2.5rem,5.1vw,4.6rem);font-stretch:125%;line-height:1.02;margin-bottom:22px}
.hero h1 .ln{display:block;overflow:hidden}
.hero h1 .ln span{display:block;transform:translateY(105%);animation:rise 1s var(--ease) forwards}
.hero h1 .ln:nth-child(2) span{animation-delay:.12s}
.hero h1 .ln:nth-child(3) span{animation-delay:.24s}
.hero h1 .glow{background:linear-gradient(90deg,#fff 0%,var(--lumen) 55%,var(--leaf) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
@keyframes rise{to{transform:none}}
.hero .lede{color:rgba(230,243,246,.8);margin-bottom:30px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px}
.hero-proof{display:flex;gap:28px;flex-wrap:wrap;padding-top:26px;border-top:1px solid var(--line-dark);max-width:560px}
.hero-proof div{font-size:.86rem;color:rgba(230,243,246,.65);line-height:1.35}
.hero-proof strong{display:block;font-family:var(--f-display);font-stretch:118%;font-size:1.32rem;color:#fff;margin-bottom:3px}

/* stage */
.stage{position:relative;aspect-ratio:5/4;max-width:600px;justify-self:end;width:100%}
.stage-frame{position:absolute;inset:0;border-radius:28px 28px 28px 120px;overflow:hidden;background:var(--hull);box-shadow:0 40px 100px rgba(0,0,0,.45),inset 0 0 0 1px rgba(143,227,255,.18)}
.stage-frame svg.slides{position:absolute;inset:0;width:100%;height:100%;display:block}
.stage-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(6,26,34,.85));pointer-events:none}
.stage-cap{position:absolute;left:28px;right:28px;bottom:24px;z-index:3;display:flex;justify-content:space-between;align-items:flex-end;gap:16px}
.stage-cap .cap-t{font-family:var(--f-display);font-stretch:115%;font-weight:700;font-size:1.25rem;line-height:1.15}
.stage-cap .cap-s{font-size:.88rem;color:rgba(230,243,246,.75);margin-top:4px}
.stage-cap a{flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--leaf);color:#06210A;transition:transform .3s var(--ease)}
.stage-cap a:hover{transform:rotate(-35deg)}
.stage-cap .cap-txt{transition:opacity .35s,transform .45s var(--ease)}
.stage-cap.swap .cap-txt{opacity:0;transform:translateY(10px)}
.stage-nav{position:absolute;left:-18px;top:28px;z-index:4;display:flex;flex-direction:column;gap:10px}
.stage-nav button{width:38px;height:38px;border-radius:50%;border:1px solid rgba(143,227,255,.35);background:rgba(6,26,34,.75);color:#fff;display:grid;place-items:center;backdrop-filter:blur(6px)}
.stage-nav button:hover{border-color:var(--lumen);color:var(--lumen)}
.stage-nav svg{width:16px;height:16px}
.stage-ticks{position:absolute;right:20px;top:22px;z-index:4;display:flex;gap:6px}
.stage-ticks button{width:22px;height:4px;border-radius:3px;border:0;background:rgba(255,255,255,.3);padding:0;transition:width .3s,background .3s}
.stage-ticks button.on{width:40px;background:var(--lumen)}
.stage-mode{position:absolute;left:28px;top:22px;z-index:4;font-size:.78rem;color:rgba(230,243,246,.8);background:rgba(6,26,34,.6);padding:5px 11px;border-radius:999px;border:1px solid rgba(143,227,255,.2);backdrop-filter:blur(6px)}
/* the strand that threads out of the stage */
.stage .thread{position:absolute;left:-46%;top:6%;width:62%;height:90%;overflow:visible;z-index:2;pointer-events:none}
/* drone */
.drone{position:absolute;z-index:5;width:120px;left:0;top:0;pointer-events:none;opacity:0;will-change:transform}
.drone .rotor{transform-origin:center;transform-box:fill-box;animation:spin .12s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;gap:40px;padding:48px 0 64px;min-height:0}
  .stage{justify-self:stretch;max-width:none;aspect-ratio:4/3}
  .stage .thread{display:none}
  .stage-nav{left:auto;right:18px;top:auto;bottom:90px;flex-direction:row}
}
@media (max-width:560px){.stage-frame{border-radius:20px 20px 20px 60px}.stage-cap .cap-t{font-size:1.05rem}.stage-nav{bottom:auto;top:56px}}

/* cable legend band (printed jacket marking) */
.legend{background:#121618;color:#cfd8da;overflow:hidden;border-block:1px solid #000;position:relative}
.legend::before,.legend::after{content:"";position:absolute;left:0;right:0;height:10px;z-index:1}
.legend::before{top:0;background:linear-gradient(#2b3336,transparent)}
.legend::after{bottom:0;background:linear-gradient(transparent,#000)}
.legend-track{display:flex;width:max-content;animation:legend 60s linear infinite}
.legend-track span{white-space:nowrap;padding:15px 0;font-family:var(--f-display);font-stretch:125%;font-size:.95rem;letter-spacing:.18em;opacity:.8}
.legend-track b{color:var(--leaf);font-weight:700;margin:0 26px}
@keyframes legend{to{transform:translateX(-50%)}}

/* facts row */
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fact{padding:30px 26px;border-right:1px solid var(--line)}
.fact:last-child{border-right:0}
.fact b{display:block;font-family:var(--f-display);font-stretch:122%;font-size:clamp(1.7rem,2.6vw,2.3rem);line-height:1;color:var(--ink);margin-bottom:10px}
.fact b small{font-size:.5em;font-stretch:100%;color:var(--ink-3);margin-left:4px}
.fact span{color:var(--ink-2);font-size:.94rem;line-height:1.45;display:block;max-width:28ch}
@media (max-width:860px){.facts{grid-template-columns:1fr 1fr}.fact:nth-child(2){border-right:0}.fact:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media (max-width:460px){.facts{grid-template-columns:1fr}.fact{border-right:0;border-bottom:1px solid var(--line)}}

/* product families — spool list */
.families{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}
.families-intro{position:sticky;top:120px}
.families-intro .preview{margin-top:30px;aspect-ratio:4/5;max-width:300px;border-radius:16px;overflow:hidden;background:var(--hull);box-shadow:0 30px 60px rgba(13,31,39,.18);position:relative}
.families-intro .preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .45s,transform .6s var(--ease)}
.families-intro .preview img.on{opacity:1;transform:none}
.fam-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.fam{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 20px;align-items:center;padding:20px 6px;border-bottom:1px solid var(--line);transition:background .25s,padding .3s var(--ease)}
.fam:hover,.fam:focus-within{background:#fff;padding-left:18px}
.fam h3{margin:0;font-size:1.22rem}
.fam p{grid-column:1;margin:0;color:var(--ink-3);font-size:.93rem}
.fam .fam-act{grid-row:1/3;grid-column:2;display:flex;gap:8px;align-items:center}
.fam .count{font-size:.82rem;color:var(--ink-3);margin-right:6px;white-space:nowrap}
.chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:999px;font-size:.84rem;font-weight:600;text-decoration:none;border:1px solid var(--line);background:#fff;color:var(--ink)}
.chip:hover{border-color:var(--ink)}
.chip.pdf{border-color:rgba(224,69,43,.35);color:#B4321C}
.chip.pdf:hover{background:#FFF2EF}
@media (max-width:900px){.families{grid-template-columns:1fr}.families-intro{position:static}.families-intro .preview{display:none}}
@media (max-width:560px){.fam{grid-template-columns:1fr}.fam .fam-act{grid-row:auto;grid-column:1;flex-wrap:wrap;margin-top:8px}}

/* markets mosaic */
.mosaic{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:190px;gap:14px}
.tile{position:relative;border-radius:16px;overflow:hidden;text-decoration:none;color:#fff;background:var(--hull);isolation:isolate}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s var(--ease)}
.tile::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(6,26,34,.05) 30%,rgba(6,26,34,.88))}
.tile:hover img{transform:scale(1.06)}
.tile .t-in{position:absolute;left:20px;right:20px;bottom:18px}
.tile h3{margin:0 0 4px;font-size:1.15rem}
.tile p{margin:0;font-size:.86rem;color:rgba(230,243,246,.78);line-height:1.4;max-height:0;overflow:hidden;transition:max-height .45s var(--ease)}
.tile:hover p,.tile:focus p{max-height:80px}
.t1{grid-column:span 3;grid-row:span 2}.t2{grid-column:span 3}.t3{grid-column:span 2}.t4{grid-column:span 1}
.t5,.t6,.t7,.t8,.t9{grid-column:span 2}
@media (max-width:980px){.mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px}.mosaic .tile{grid-column:span 1;grid-row:span 1}.mosaic .t1{grid-column:span 2;grid-row:span 1}.tile p{max-height:80px}}
@media (max-width:520px){.mosaic{grid-template-columns:1fr}.mosaic .t1{grid-column:span 1}}

/* technology cross-section */
.tech{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.xsec{position:relative;max-width:520px;margin-inline:auto;width:100%}
.xsec svg{width:100%;height:auto;overflow:visible}
.xsec .ring{transition:transform .5s var(--ease),filter .3s;transform-origin:260px 260px;cursor:pointer}
.xsec .ring.active{filter:drop-shadow(0 0 18px rgba(143,227,255,.55))}
.layer-list{list-style:none;padding:0;margin:26px 0 30px;display:grid;gap:10px}
.layer-list button{width:100%;text-align:left;display:grid;grid-template-columns:18px 1fr;gap:14px;align-items:start;padding:14px 16px;border-radius:12px;border:1px solid var(--line-dark);background:rgba(255,255,255,.02);color:#DCEBEF}
.layer-list button[aria-pressed=true]{border-color:rgba(143,227,255,.5);background:rgba(143,227,255,.06)}
.layer-list i{width:14px;height:14px;border-radius:50%;margin-top:5px}
.layer-list strong{display:block;color:#fff;font-size:1rem}
.layer-list span{font-size:.9rem;color:rgba(220,235,239,.7)}
@media (max-width:900px){.tech{grid-template-columns:1fr;gap:30px}}

/* missions */
.missions{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px}
.mission{position:relative;border-radius:18px;overflow:hidden;background:var(--hull);color:#fff;min-height:360px;display:flex;flex-direction:column;justify-content:flex-end;padding:26px;text-decoration:none;isolation:isolate}
.mission img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.mission::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(6,26,34,.1),rgba(6,26,34,.92) 75%)}
.mission .where{font-size:.82rem;color:var(--lumen);margin-bottom:8px}
.mission h3{margin-bottom:8px}
.mission p{font-size:.94rem;color:rgba(230,243,246,.8);margin:0 0 14px}
.mission .go{font-weight:600;font-size:.9rem;color:#fff;border-bottom:1.5px solid var(--leaf);align-self:flex-start}
.mission.video{cursor:pointer;border:0;text-align:left;font:inherit}
.play{width:74px;height:74px;border-radius:50%;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);display:grid;place-items:center;margin-bottom:auto;border:1px solid rgba(255,255,255,.35);transition:transform .3s var(--ease),background .3s}
.mission.video:hover .play{transform:scale(1.08);background:var(--leaf)}
.play svg{width:24px;height:24px;margin-left:4px}
@media (max-width:980px){.missions{grid-template-columns:1fr 1fr}.missions .mission:first-child{grid-column:1/-1}}
@media (max-width:600px){.missions{grid-template-columns:1fr}}

/* news + shows */
.news-shows{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px}
.post-list{list-style:none;margin:0;padding:0}
.post-list li{border-bottom:1px solid var(--line)}
.post-list a{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:20px 0;text-decoration:none;align-items:center}
.post-list .pimg{aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--hull)}
.post-list .pimg img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.post-list a:hover .pimg img{transform:scale(1.07)}
.post-list h3{font-size:1.08rem;font-stretch:104%;margin:0 0 6px;line-height:1.3}
.post-list a:hover h3{color:var(--leaf-deep)}
.post-list span{font-size:.86rem;color:var(--ink-3)}
.shows{background:var(--abyss);color:#DCEBEF;border-radius:22px;padding:32px;position:relative;overflow:hidden}
.shows h3{color:#fff;font-size:1.5rem}
.show{display:grid;grid-template-columns:64px 1fr;gap:16px;padding:18px 0;border-top:1px solid var(--line-dark);text-decoration:none}
.show:hover strong{color:var(--lumen)}
.show .d{border-radius:10px;background:rgba(143,227,255,.08);border:1px solid var(--line-dark);text-align:center;padding:8px 0;line-height:1.1}
.show .d b{display:block;font-family:var(--f-display);font-stretch:118%;font-size:1.35rem;color:#fff}
.show .d small{font-size:.74rem;color:rgba(220,235,239,.7)}
.show strong{display:block;color:#fff;font-size:1rem;line-height:1.3}
.show span{font-size:.86rem;color:rgba(220,235,239,.68)}
@media (max-width:900px){.news-shows{grid-template-columns:1fr}}
@media (max-width:480px){.post-list a{grid-template-columns:80px 1fr;gap:14px}}

/* quote band */
.qband{position:relative;overflow:hidden;background:linear-gradient(115deg,#0B3B2B 0%,var(--abyss) 55%,#0A2F3C 100%);color:#fff}
.qband .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) auto;gap:40px;align-items:center;padding:clamp(56px,7vw,90px) 0}
.qband h2{margin-bottom:12px;max-width:20ch}
.qband p{color:rgba(230,243,246,.78);margin:0;max-width:56ch}
.qband .q-act{display:flex;gap:12px;flex-wrap:wrap}
.qband svg.qline{position:absolute;inset:0;width:100%;height:100%;opacity:.5;pointer-events:none}
@media (max-width:860px){.qband .wrap{grid-template-columns:1fr}}

/* ---------- Footer ---------- */
.site-footer{background:#04131A;color:rgba(220,235,239,.72);font-size:.93rem}
.ft-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:36px;padding:72px 0 48px}
.ft-brand img{height:56px;width:auto;margin-bottom:18px}
.ft-brand p{max-width:34ch}
.site-footer h4{color:#fff;font-size:.98rem;margin-bottom:14px}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.site-footer a{text-decoration:none}
.site-footer a:hover{color:var(--lumen)}
.ft-social{display:flex;gap:12px;margin-top:18px}
.ft-social a{width:40px;height:40px;display:grid;place-items:center;transition:transform .2s ease,filter .2s ease}
.ft-social a img{width:40px;height:40px;display:block}
.ft-social a:hover{transform:translateY(-3px) scale(1.06);filter:drop-shadow(0 6px 12px rgba(0,0,0,.35))}
@media (prefers-reduced-motion:reduce){.tb-r a,.ft-social a{transition:none}.tb-r a:hover,.ft-social a:hover{transform:none}}
.ft-news form{display:flex;margin-top:12px;border:1px solid var(--line-dark);border-radius:999px;overflow:hidden;background:rgba(255,255,255,.03)}
.ft-news input{flex:1;min-width:0;background:transparent;border:0;color:#fff;padding:12px 16px;font:inherit;font-size:.9rem}
.ft-news input::placeholder{color:rgba(220,235,239,.45)}
.ft-news button{border:0;background:var(--leaf);color:#06210A;font-weight:600;padding:0 18px}
.ft-news .ok{color:var(--leaf);font-size:.88rem;margin-top:8px;display:none}
.ft-bottom{border-top:1px solid var(--line-dark);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px 0 28px;font-size:.84rem}
@media (max-width:1060px){.ft-top{grid-template-columns:1fr 1fr 1fr}.ft-brand{grid-column:1/-1}}
@media (max-width:600px){.ft-top{grid-template-columns:1fr 1fr}.ft-news{grid-column:1/-1}}

/* =====================================================================
   INNER PAGES
   ===================================================================== */
.phero{position:relative;background:radial-gradient(900px 420px at 85% 0%,#0F3D4B,var(--abyss) 70%);color:#fff;overflow:hidden;isolation:isolate}
.phero .wrap{position:relative;padding:54px 0 64px}
.phero.has-img .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;align-items:center}
.phero h1{font-size:clamp(2.1rem,4.2vw,3.6rem);margin-bottom:16px;max-width:20ch}
.phero .lede{color:rgba(230,243,246,.8)}
.phero .p-img{border-radius:22px 22px 22px 80px;overflow:hidden;aspect-ratio:4/3.4;box-shadow:0 30px 80px rgba(0,0,0,.4);position:relative}
.phero .p-img img{width:100%;height:100%;object-fit:cover}
.phero svg.pline{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.85rem;color:rgba(230,243,246,.6);margin-bottom:22px;list-style:none;padding:0}
.crumbs li+li::before{content:"/";margin-right:8px;opacity:.5}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--lumen)}
.phero .hero-ctas{margin:26px 0 0}
@media (max-width:900px){.phero.has-img .wrap{grid-template-columns:1fr}.phero .p-img{max-width:520px;aspect-ratio:16/10}}

/* subnav chips (siblings in a menu group) */
.subnav{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:79px;z-index:20}
.subnav .wrap{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:10px 0}
.subnav .wrap::-webkit-scrollbar{display:none}
.subnav a{flex:none;padding:8px 14px;border-radius:999px;font-size:.88rem;font-weight:600;color:var(--ink-2);text-decoration:none;white-space:nowrap}
.subnav a:hover{background:var(--paper);color:var(--ink)}
.subnav a.is-current{background:var(--ink);color:#fff}

/* prose with toc */
.doc{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;align-items:start}
.doc.no-toc{grid-template-columns:minmax(0,1fr)}
.toc{position:sticky;top:150px;font-size:.88rem;max-height:calc(100vh - 180px);overflow:auto}
.toc h4{font-size:.9rem;color:var(--ink-3);font-weight:600;margin-bottom:10px}
.toc ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--line)}
.toc a{display:block;padding:6px 0 6px 14px;margin-left:-2px;border-left:2px solid transparent;color:var(--ink-2);text-decoration:none;line-height:1.35}
.toc a:hover{color:var(--ink)}
.toc a.on{border-left-color:var(--leaf);color:var(--ink);font-weight:600}
.prose{max-width:76ch}
.prose h2{margin-top:2.1em;font-size:clamp(1.55rem,2.4vw,2.1rem);scroll-margin-top:150px}
.prose h2:first-child{margin-top:0}
.prose h3{margin-top:1.7em;scroll-margin-top:150px}
.prose ul,.prose ol{padding-left:0;list-style:none;margin:0 0 1.3em}
.prose ul li{position:relative;padding-left:24px;margin-bottom:.45em}
.prose ul li::before{content:"";position:absolute;left:2px;top:.72em;width:12px;height:2px;background:var(--leaf);border-radius:2px}
.prose ul.cols{columns:2;column-gap:40px}
.prose ul.cols li{break-inside:avoid}
.prose a{color:var(--leaf-deep);font-weight:500}
.prose table,.dtable{width:100%;border-collapse:collapse;margin:1.2em 0 1.8em;font-size:.93rem;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.prose th,.prose td,.dtable th,.dtable td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.prose th,.dtable th{background:var(--ink);color:#fff;font-weight:600;font-size:.86rem}
.prose tr:last-child td,.dtable tr:last-child td{border-bottom:0}
.prose tbody tr:nth-child(even),.dtable tbody tr:nth-child(even){background:#F7FAF8}
.tscroll{overflow-x:auto;margin:1.2em 0 1.8em}
.tscroll table{margin:0;min-width:560px}
.prose figure{margin:1.6em 0;border-radius:16px;overflow:hidden}
.prose .cta-inline{display:flex;flex-wrap:wrap;gap:12px;margin:1.4em 0 2em}
.callout{background:#fff;border:1px solid var(--line);border-left:4px solid var(--leaf);border-radius:12px;padding:22px 24px;margin:1.8em 0}
.callout p:last-child{margin:0}
.faq{margin:1em 0 2em;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 4px;font-weight:600;font-size:1.04rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230D1F27' stroke-width='2.5'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/14px no-repeat;transition:transform .3s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg);background-color:#DFF2D9}
.faq .ans{padding:0 4px 20px;color:var(--ink-2)}
.faq .ans p:last-child{margin:0}
@media (max-width:980px){.doc{grid-template-columns:1fr;gap:20px}.toc{position:static;max-height:none;display:none}.prose ul.cols{columns:1}}

/* aside card */
.aside-card{background:var(--abyss);color:#DCEBEF;border-radius:18px;padding:26px;margin-top:28px}
.aside-card h4{color:#fff}
.aside-card p{font-size:.92rem;color:rgba(220,235,239,.75)}

/* split layout */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.split.rev>:first-child{order:2}
.split .media{border-radius:22px;overflow:hidden;position:relative;box-shadow:0 30px 70px rgba(13,31,39,.16)}
.split .media img{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.split{grid-template-columns:1fr;gap:30px}.split.rev>:first-child{order:0}}

/* doc cards (datasheets, papers) */
.docs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:22px}
.docc{background:#fff;border-radius:16px;overflow:hidden;text-decoration:none;box-shadow:0 0 0 1px var(--line);display:flex;flex-direction:column;transition:box-shadow .3s,transform .4s var(--ease)}
.docc:hover{box-shadow:0 0 0 1px var(--ink),0 24px 50px rgba(13,31,39,.14);transform:translateY(-4px)}
.docc .cv{aspect-ratio:3/3.6;background:var(--paper);overflow:hidden}
.docc .cv img{width:100%;height:100%;object-fit:cover}
.docc .b{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.docc h3{font-size:1.05rem;margin:0}
.docc p{font-size:.88rem;color:var(--ink-3);margin:0}
.docc .act{margin-top:auto;padding-top:10px;display:flex;gap:8px;flex-wrap:wrap}
.docc.feature{grid-column:span 2;flex-direction:row;background:var(--abyss);color:#DCEBEF}
.docc.feature .cv{width:44%;aspect-ratio:auto;flex:none}
.docc.feature .b{padding:28px}
.docc.feature h3{color:#fff;font-size:1.5rem}
.docc.feature p{color:rgba(220,235,239,.75);font-size:.95rem}
@media (max-width:560px){.docc.feature{grid-column:auto;flex-direction:column}.docc.feature .cv{width:100%;aspect-ratio:16/10}}

/* resource list (papers, press, patents) */
.rlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.rlist li{border-bottom:1px solid var(--line)}
.rlist a{display:grid;grid-template-columns:44px 1fr auto;gap:16px;align-items:center;padding:18px 4px;text-decoration:none}
.rlist .ic{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:#fff;box-shadow:0 0 0 1px var(--line);color:var(--jacket)}
.rlist .ic.v{color:#C4302B}.rlist .ic.n{color:var(--leaf-deep)}
.rlist .ic svg{width:20px;height:20px}
.rlist strong{display:block;font-weight:600;line-height:1.35}
.rlist small{color:var(--ink-3);font-size:.82rem}
.rlist .arr{width:18px;height:18px;color:var(--ink-3);transition:transform .3s var(--ease)}
.rlist a:hover strong{color:var(--leaf-deep)}
.rlist a:hover .arr{transform:translate(3px,-3px);color:var(--ink)}
@media (max-width:760px){.rlist{grid-template-columns:1fr}}

/* filters bar */
.fbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.fbar button{padding:8px 15px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:.88rem;font-weight:600;color:var(--ink-2)}
.fbar button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}

/* market page */
.mk-uses{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.mk-fam{background:#fff;border-radius:16px;padding:22px;box-shadow:0 0 0 1px var(--line);display:flex;flex-direction:column;gap:8px}
.mk-fam h3{font-size:1.12rem;margin:0}
.mk-fam p{font-size:.92rem;color:var(--ink-2);margin:0}
.mk-fam .act{margin-top:auto;padding-top:12px;display:flex;gap:8px;flex-wrap:wrap}
.mk-other{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.mk-other .tile{height:170px}
@media (max-width:900px){.mk-other{grid-template-columns:1fr 1fr}}

/* stats strip inner */
.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:0;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px var(--line);background:#fff;margin:1.5em 0}
.kv div{padding:20px;border-right:1px solid var(--line)}
.kv div:last-child{border-right:0}
.kv b{display:block;font-family:var(--f-display);font-stretch:118%;font-size:1.5rem;line-height:1.1;margin-bottom:6px}
.kv span{font-size:.86rem;color:var(--ink-3)}
.dark .kv{background:var(--hull);box-shadow:0 0 0 1px var(--line-dark)}
.dark .kv div{border-color:var(--line-dark)}.dark .kv span{color:rgba(220,235,239,.65)}

/* forms */
.form-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:48px;align-items:start}
.form{background:#fff;border-radius:22px;padding:clamp(24px,3.5vw,40px);box-shadow:0 0 0 1px var(--line),0 30px 70px rgba(13,31,39,.08)}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.field{display:flex;flex-direction:column;gap:6px}
.field.full{grid-column:1/-1}
.field label{font-size:.88rem;font-weight:600;color:var(--ink)}
.field label em{font-style:normal;color:var(--ink-3);font-weight:400}
.field input,.field select,.field textarea{font:inherit;font-size:.96rem;padding:12px 14px;border-radius:10px;border:1px solid #C6D3CF;background:#FBFCFB;color:var(--ink);width:100%}
.field textarea{min-height:130px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--leaf-deep);box-shadow:0 0 0 3px rgba(93,187,70,.2);background:#fff}
.field .err{font-size:.8rem;color:#B4321C;display:none}
.field.bad input,.field.bad select,.field.bad textarea{border-color:#B4321C}
.field.bad .err{display:block}
.form .row-end{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}
.form .row-end small{color:var(--ink-3)}
.form-ok{display:none;text-align:center;padding:40px 10px}
.form-ok.show{display:block}
.form-ok .tick{width:64px;height:64px;border-radius:50%;background:#DFF2D9;color:var(--leaf-deep);display:grid;place-items:center;margin:0 auto 18px}
.contact-card{background:var(--abyss);color:#DCEBEF;border-radius:22px;padding:30px}
.contact-card h3{color:#fff}
.contact-card dl{margin:0;display:grid;gap:16px}
.contact-card dt{font-size:.82rem;color:var(--lumen);margin-bottom:2px}
.contact-card dd{margin:0;color:#fff}
.contact-card a{text-decoration:none}
.contact-card a:hover{color:var(--lumen)}
.map{border-radius:22px;overflow:hidden;margin-top:18px;box-shadow:0 0 0 1px var(--line);aspect-ratio:4/3;background:var(--hull)}
.map iframe{width:100%;height:100%;border:0}
@media (max-width:900px){.form-grid{grid-template-columns:1fr}}
@media (max-width:560px){.fields{grid-template-columns:1fr}}

/* product selector */
.ps{display:grid;grid-template-columns:270px minmax(0,1fr);gap:32px;align-items:start}
.ps-side{position:sticky;top:150px;background:#fff;border-radius:18px;padding:22px;box-shadow:0 0 0 1px var(--line);max-height:calc(100vh - 170px);overflow:auto}
.ps-side h4{font-size:.92rem;margin:18px 0 10px}
.ps-side h4:first-child{margin-top:0}
.ps-search{position:relative}
.ps-search input{width:100%;font:inherit;font-size:.94rem;padding:11px 14px 11px 38px;border-radius:10px;border:1px solid #C6D3CF}
.ps-search svg{position:absolute;left:12px;top:50%;width:16px;height:16px;transform:translateY(-50%);color:var(--ink-3)}
.ps-opts{display:flex;flex-wrap:wrap;gap:6px}
.ps-opts button{padding:6px 11px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:.82rem;font-weight:600;color:var(--ink-2)}
.ps-opts button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.ps-range{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ps-range input{width:100%;font:inherit;font-size:.9rem;padding:9px 10px;border-radius:8px;border:1px solid #C6D3CF}
.ps-range label{font-size:.78rem;color:var(--ink-3)}
.ps-reset{margin-top:18px;background:none;border:0;color:var(--leaf-deep);font-weight:600;padding:0;text-decoration:underline}
.ps-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.ps-top .count{font-weight:600}
.ps-top select{font:inherit;font-size:.9rem;padding:8px 12px;border-radius:8px;border:1px solid #C6D3CF;background:#fff}
.ps-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px var(--line);font-size:.92rem}
.ps-table th{position:sticky;top:0;background:var(--ink);color:#fff;text-align:left;font-weight:600;font-size:.82rem;padding:12px 14px}
.ps-table td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle;font-variant-numeric:tabular-nums}
.ps-table tr.row{cursor:pointer}
.ps-table tr.row:hover td{background:#F4F9F3}
.ps-table tr.row.open td{background:#EEF7EC}
.ps-table .spec{font-weight:700;white-space:nowrap}
.ps-table .spec sup{color:var(--jacket);font-weight:700}
.ps-table .part{color:var(--ink-2);font-size:.86rem;word-break:break-all}
.ps-table .fam-tag{display:inline-block;padding:3px 9px;border-radius:999px;font-size:.76rem;font-weight:600;background:var(--paper);white-space:nowrap}
.ps-table .det td{background:#FAFCFA;padding:0}
.ps-det{padding:18px 18px 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px 20px}
.ps-det div small{display:block;font-size:.76rem;color:var(--ink-3)}
.ps-det div b{font-weight:600}
.ps-det .acts{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}
.ps-more{display:flex;justify-content:center;margin-top:22px}
.ps-empty{padding:50px 20px;text-align:center;color:var(--ink-2)}
.ps-toggle{display:none}
@media (max-width:980px){
  .ps{grid-template-columns:1fr}
  .ps-side{position:static;max-height:none;display:none}
  .ps-side.show{display:block}
  .ps-toggle{display:inline-flex}
  .ps-table .hide-m{display:none}
}

/* product cards (shop) */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px}
.pcard{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 0 0 1px var(--line);display:flex;flex-direction:column;text-decoration:none}
.pcard .pi{aspect-ratio:1;background:#fff;overflow:hidden}
.pcard .pi img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.pcard:hover .pi img{transform:scale(1.06)}
.pcard .b{padding:18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px;flex:1}
.pcard h3{font-size:1rem;font-stretch:104%;line-height:1.3;margin:0}
.pcard small{color:var(--ink-3)}
.pcard .act{margin-top:auto;padding-top:10px;display:flex;gap:8px;flex-wrap:wrap}

/* materials */
.mat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.mat{background:#fff;border-radius:16px;padding:22px;box-shadow:0 0 0 1px var(--line)}
.mat h3{font-size:1.05rem;margin-bottom:8px}
.mat p{font-size:.92rem;color:var(--ink-2);margin:0}
.mat .temp{display:inline-block;margin-top:12px;font-size:.8rem;font-weight:600;color:#B4321C;background:#FFF2EF;padding:3px 9px;border-radius:999px}
.mat.hl{background:var(--abyss);color:#DCEBEF;box-shadow:none}
.mat.hl h3{color:#fff}.mat.hl p{color:rgba(220,235,239,.78)}

/* timeline / steps */
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:s}
.steps li{position:relative;background:#fff;border-radius:16px;padding:24px 22px;box-shadow:0 0 0 1px var(--line);counter-increment:s}
.steps li::before{content:counter(s);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;font-family:var(--f-display);font-weight:700;font-size:.9rem;margin-bottom:14px}
.steps h3{font-size:1.05rem;margin-bottom:6px}
.steps p{font-size:.92rem;color:var(--ink-2);margin:0}
@media (max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}

/* blog grid */
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.bcard{text-decoration:none;display:flex;flex-direction:column;gap:14px}
.bcard .bi{aspect-ratio:16/10;border-radius:16px;overflow:hidden;background:var(--hull)}
.bcard .bi img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.bcard:hover .bi img{transform:scale(1.05)}
.bcard h3{font-size:1.15rem;font-stretch:106%;line-height:1.28;margin:0}
.bcard:hover h3{color:var(--leaf-deep)}
.bcard p{font-size:.92rem;color:var(--ink-2);margin:0}
.bcard small{color:var(--ink-3);font-size:.82rem}
.bcard.lead{grid-column:span 2;display:grid;grid-template-columns:1.2fr 1fr;gap:26px;align-items:center}
.bcard.lead h3{font-size:1.7rem}
@media (max-width:900px){.bgrid{grid-template-columns:1fr 1fr}.bcard.lead{grid-column:1/-1;grid-template-columns:1fr}}
@media (max-width:560px){.bgrid{grid-template-columns:1fr}}

/* Linden mission video: isolated from theme/plugin .modal/.slot classes. */
#linden-video-dialog.linden-video-dialog {
  position:fixed !important; inset:0 !important; top:0 !important; left:0 !important;
  width:100vw !important; height:100dvh !important; max-width:none !important;
  margin:0 !important; padding:clamp(14px,3vw,36px) !important;
  box-sizing:border-box !important; z-index:2147483000 !important;
  background:rgba(2,10,14,.92) !important; backdrop-filter:blur(6px);
  display:none !important; align-items:center !important; justify-content:center !important;
  overflow:auto !important; transform:none !important;
}
#linden-video-dialog.linden-video-dialog.is-open {display:flex !important;}
#linden-video-dialog .linden-video-dialog__panel {
  position:relative !important; display:block !important; flex:none !important;
  width:min(1100px,100%) !important; max-width:calc(100vw - 28px) !important;
  height:auto !important; aspect-ratio:16 / 9 !important;
  background:#000 !important; border-radius:14px !important;
  overflow:visible !important; box-shadow:0 40px 100px rgba(0,0,0,.6);
  margin:auto !important; padding:0 !important; transform:none !important;
}
#linden-video-dialog .linden-video-dialog__slot {display:block !important;position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;overflow:hidden !important;border-radius:14px; background:#000 !important;}
#linden-video-dialog .linden-video-dialog__slot video {display:block !important;width:100% !important;height:100% !important;max-width:none !important;object-fit:contain !important;background:#000 !important;border:0 !important;}
#linden-video-dialog .linden-video-dialog__close {position:absolute !important;right:0 !important;top:-51px !important;display:grid !important;place-items:center !important;width:42px !important;height:42px !important;min-width:42px !important;border:1px solid rgba(255,255,255,.55) !important;border-radius:50% !important;background:#12232b !important;color:#fff !important;z-index:2 !important;cursor:pointer !important;}
#linden-video-dialog .linden-video-dialog__close svg {width:20px !important;height:20px !important;}
body.linden-video-open {overflow:hidden !important;}
@media (max-width:600px){#linden-video-dialog.linden-video-dialog {padding:55px 12px 12px !important;}}

/* reveal: one orchestrated entrance per page block (respects reduced motion) */
.rv{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .rv{opacity:1;transform:none}
  .hero h1 .ln span{transform:none}
}

/* back to top */
.totop{position:fixed;right:20px;bottom:20px;z-index:60;width:46px;height:46px;border-radius:50%;border:0;background:var(--leaf);color:#06210A;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.25);opacity:0;visibility:hidden;transform:translateY(10px);transition:all .3s}
.totop.show{opacity:1;visibility:visible;transform:none}
.totop svg{width:18px;height:18px}
.m-only{display:none}
@media (max-width:1060px){.m-only{display:block}}
.mission .jupiter{position:absolute;inset:0;z-index:-2}
.mission .jupiter svg{width:100%;height:100%}
.t8,.t9{grid-column:span 3}
.shows{align-self:start}
.hero-proof{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:34px;max-width:none}
@media (max-width:560px){.hero-proof{grid-template-columns:1fr 1fr;gap:20px}}
.brand img{height:60px}
@media (max-width:1180px){.brand img{height:48px}}
.stage-nav{top:auto;bottom:110px}
.stage .thread{left:-40%;top:38%;width:52%;height:62%}
.prose a.btn-ink{color:#fff}.prose a.btn-line{color:var(--ink)}.prose a.btn-leaf{color:#06210A}.prose a.chip{color:#B4321C;font-weight:600}
.prose a.btn-line:hover{color:#fff}
@media (max-width:1060px){
  .site-header{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--abyss)}
  .nav-panel{inset:auto 0 0 0;top:var(--hdr,118px);transform:translateY(-10px);opacity:0;transition:opacity .3s,transform .35s var(--ease),visibility .3s}
  .nav-panel.open{transform:none;opacity:1}
}
html{overflow-x:clip}
.ps>div{min-width:0}
@media (max-width:980px){.ps-table{min-width:0!important}.tscroll .ps-table{min-width:0}}
@media (max-width:560px){.ps-table td,.ps-table th{padding:10px 7px;font-size:.8rem}.ps-table .fam-tag{font-size:.7rem;padding:2px 7px}}
.burger{flex-direction:column;align-items:center;justify-content:center;gap:4px}
.burger span{margin:0}
@media (max-width:1060px){.burger{display:flex}}

/* =====================================================================
   V2 — graphics layer
   ===================================================================== */
/* scroll fiber progress under the header */
.fiberbar{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;overflow:visible}
.fiberbar::before{content:"";position:absolute;left:0;top:0;height:2px;width:100%;transform-origin:left;transform:scaleX(var(--p,0));background:linear-gradient(90deg,var(--leaf),var(--lumen));box-shadow:0 0 10px rgba(143,227,255,.7)}
.fiberbar::after{content:"";position:absolute;top:-3px;left:calc(var(--p,0)*100% - 4px);width:8px;height:8px;border-radius:50%;background:#E9FBFF;box-shadow:0 0 12px 3px rgba(143,227,255,.9);opacity:var(--p,0)}

/* back to top: progress ring */
.totop{width:58px;height:58px;background:var(--abyss);color:#fff;border:1px solid rgba(143,227,255,.25);box-shadow:0 14px 34px rgba(0,0,0,.35)}
.totop svg.ring{position:absolute;inset:-1px;width:58px;height:58px;transform:rotate(-90deg)}
.totop .ring-b{fill:none;stroke:rgba(143,227,255,.15);stroke-width:2.5}
.totop .ring-p{fill:none;stroke:url(#ringg);stroke-width:2.5;stroke-linecap:round;transition:stroke-dashoffset .15s linear}
.totop .arr{width:22px;height:22px;stroke-width:2.6;transition:transform .3s var(--ease)}
.totop:hover{background:var(--leaf);color:#06210A}
.totop:hover .arr{transform:translateY(-3px)}
.totop .tip{position:absolute;right:68px;top:50%;transform:translateY(-50%);background:var(--abyss);color:#fff;font-size:.78rem;padding:5px 10px;border-radius:999px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s;border:1px solid var(--line-dark)}
.totop:hover .tip{opacity:1}

/* scene canvases inside page heros */
.phero canvas.scene{position:absolute;inset:0;width:100%;height:100%;z-index:-2;display:block}
.phero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(6,26,34,.96) 0%,rgba(6,26,34,.78) 38%,rgba(6,26,34,.1) 70%,rgba(6,26,34,0) 100%)}
.phero{min-height:440px}
.phero .wrap{padding:64px 0 76px}
.phero .scene-hint{position:absolute;right:20px;bottom:16px;font-size:.78rem;color:rgba(230,243,246,.55);z-index:2;pointer-events:none}
@media (max-width:760px){.phero::before{background:linear-gradient(180deg,rgba(6,26,34,.55),rgba(6,26,34,.92))}.phero .scene-hint{display:none}}
.phero svg.pline{display:none}
.hero canvas.hero-rope{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.hero .hero-grid{position:relative;z-index:1}
.stage .thread{display:none}

/* spotlight on cards */
.spot{position:relative;transition:transform .35s var(--ease),box-shadow .3s}
.spot::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(143,227,255,.16),transparent 45%);z-index:3}
.spot:hover::after{opacity:1}
.tile.spot::after,.mission.spot::after{background:radial-gradient(400px circle at var(--mx,50%) var(--my,50%),rgba(143,227,255,.22),transparent 50%)}

/* globe section */
.globe-sec{background:radial-gradient(900px 500px at 70% 50%,#0D3542,var(--abyss) 70%);color:#DCEBEF;overflow:hidden}
.globe-wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:center}
#globe{position:relative;aspect-ratio:1;max-width:620px;width:100%;justify-self:center}
#globe canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:pan-y}
#globe canvas:active{cursor:grabbing}
.globe-cap{position:absolute;left:50%;bottom:2%;transform:translateX(-50%);text-align:center;background:rgba(6,26,34,.75);border:1px solid var(--line-dark);border-radius:14px;padding:10px 16px;backdrop-filter:blur(6px);min-width:240px}
.globe-cap strong{display:block;color:#fff;font-size:.95rem}.globe-cap span{font-size:.84rem;color:rgba(220,235,239,.7)}
.globe-list{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:6px}
.globe-list button{width:100%;display:grid;grid-template-columns:12px 1fr auto;gap:14px;align-items:center;text-align:left;background:transparent;border:1px solid transparent;border-radius:12px;padding:12px 14px;color:#DCEBEF}
.globe-list button i{width:10px;height:10px;border-radius:50%;background:var(--lumen);box-shadow:0 0 10px var(--lumen)}
.globe-list button strong{display:block;color:#fff;font-size:.98rem;font-weight:600}
.globe-list button span{font-size:.85rem;color:rgba(220,235,239,.65)}
.globe-list button small{font-size:.78rem;color:var(--lumen)}
.globe-list button[aria-pressed=true]{background:rgba(143,227,255,.07);border-color:rgba(143,227,255,.3)}
.globe-list button[aria-pressed=true] i{background:var(--leaf);box-shadow:0 0 12px var(--leaf)}
@media (max-width:900px){.globe-wrap{grid-template-columns:1fr}}

/* anatomy: scroll scrubbed exploded cable */
.anatomy{position:relative;height:240vh;background:#04131A;color:#DCEBEF}
.an-stick{position:sticky;top:80px;height:calc(100vh - 80px);display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.an-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}
.an-head h2{color:#fff;max-width:18ch;margin:0}
.an-head p{max-width:44ch;margin:0;color:rgba(220,235,239,.72)}
.an-svg{width:100%;height:auto;overflow:visible}
[data-peel]{transition:transform .08s linear}
.an-labels{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:26px}
.an-label{border-top:2px solid rgba(143,227,255,.15);padding-top:14px;opacity:.28;transform:translateY(8px);transition:opacity .5s,transform .5s var(--ease),border-color .5s}
.an-label.on{opacity:1;transform:none}
.an-label b{display:block;color:#fff;font-family:var(--f-display);font-stretch:112%;font-size:1.02rem;margin-bottom:4px}
.an-label span{font-size:.88rem;color:rgba(220,235,239,.7)}
.an-label.l1.on{border-color:#E0452B}.an-label.l2.on{border-color:#F0D9A8}.an-label.l3.on{border-color:#B9C6CB}.an-label.l4.on{border-color:var(--lumen)}
.an-meter{height:3px;background:rgba(143,227,255,.12);border-radius:3px;margin-top:28px;overflow:hidden}
.an-meter i{display:block;height:100%;background:linear-gradient(90deg,var(--leaf),var(--lumen));transform-origin:left;transform:scaleX(0)}
@media (max-width:900px){.anatomy{height:auto}.an-stick{position:static;height:auto;padding:70px 0}.an-head{flex-direction:column;align-items:start}.an-labels{grid-template-columns:1fr 1fr}.an-label{opacity:1;transform:none}}

/* timeline cable */
.timeline{position:relative}
.timeline svg.tl{position:absolute;left:0;right:0;top:16px;width:100%;height:60px;overflow:visible;pointer-events:none}
.tl-path{fill:none;stroke:url(#tlg);stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(143,227,255,.6))}
.timeline .steps{padding-top:70px}
.timeline .steps li::before{display:none}
.tl-node{position:absolute;top:-58px;left:22px;width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--line);transition:all .5s}
.tl-node.lit{border-color:var(--leaf);box-shadow:0 0 0 6px rgba(93,187,70,.18),0 0 18px rgba(143,227,255,.7)}
@media (max-width:900px){.timeline svg.tl{display:none}.timeline .steps{padding-top:0}.tl-node{display:none}}

/* countdown */
.cd{display:flex;gap:8px;margin-top:10px}
.cd span{min-width:52px;text-align:center;background:var(--abyss);color:#fff;border-radius:10px;padding:7px 4px;line-height:1.1}
.cd b{display:block;font-family:var(--f-display);font-stretch:118%;font-size:1.25rem;font-variant-numeric:tabular-nums}
.cd small{font-size:.7rem;color:rgba(220,235,239,.7)}
.show .cd span{background:rgba(143,227,255,.08);border:1px solid var(--line-dark)}
.show .cd b{font-size:.95rem}.show .cd span{min-width:40px;padding:4px 2px}

/* charts (selector scatter, materials) */
.chart-card{background:#fff;border-radius:18px;box-shadow:0 0 0 1px var(--line);padding:20px 20px 14px;margin-bottom:22px;position:relative}
.chart-card h3{font-size:1.05rem;margin:0 0 4px}
.chart-card .sub{font-size:.86rem;color:var(--ink-3);margin:0 0 10px}
.chart-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:.84rem;color:var(--ink-2);margin:6px 0 4px}
.chart-legend span{display:inline-flex;align-items:center;gap:6px}
.chart-legend svg{width:12px;height:12px}
.scatter{width:100%;height:340px;display:block;cursor:crosshair}
.ctip{position:absolute;pointer-events:none;background:var(--ink);color:#fff;font-size:.8rem;line-height:1.35;padding:8px 10px;border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.25);opacity:0;transition:opacity .12s;z-index:5;white-space:nowrap}
.ctip b{display:block;font-size:.86rem}
.ctip.show{opacity:1}
.chart-toggle{position:absolute;right:18px;top:16px;display:flex;gap:6px}
.chart-toggle button{padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:.8rem;font-weight:600;color:var(--ink-2)}
.chart-toggle button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
@media (max-width:560px){.chart-toggle{position:static;margin-bottom:10px}.scatter{height:280px}}
.range-chart{width:100%;height:auto;display:block}
.range-chart .row:hover .rbar{filter:brightness(1.1)}
.range-chart text{font-family:var(--f-body)}

/* configurator */
.config{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:center;background:var(--abyss);color:#DCEBEF;border-radius:22px;padding:clamp(22px,3vw,36px);margin-bottom:28px}
.config h3{color:#fff;margin-bottom:6px}
.config p.s{font-size:.9rem;color:rgba(220,235,239,.7);margin-bottom:16px}
.cfg-g{margin-bottom:14px}
.cfg-g>label,.cfg-g>span{display:block;font-size:.82rem;color:var(--lumen);margin-bottom:6px}
.cfg-opts{display:flex;flex-wrap:wrap;gap:6px}
.cfg-opts button{padding:7px 12px;border-radius:999px;border:1px solid var(--line-dark);background:rgba(255,255,255,.03);color:#DCEBEF;font-size:.84rem;font-weight:600}
.cfg-opts button[aria-pressed=true]{background:var(--leaf);border-color:var(--leaf);color:#06210A}
.swatches button{width:26px;height:26px;padding:0;border-radius:50%;border:2px solid rgba(255,255,255,.25)}
.swatches button[aria-pressed=true]{outline:2px solid #fff;outline-offset:2px;background-clip:content-box}
.cfg-view{position:relative}
.cfg-view svg{width:100%;max-width:380px;margin:0 auto;display:block}
.cfg-sum{font-size:.88rem;color:#fff;background:rgba(143,227,255,.06);border:1px solid var(--line-dark);border-radius:12px;padding:12px 14px;margin-top:12px}
@media (max-width:860px){.config{grid-template-columns:1fr}}

/* market tiles glow edge */
.tile{box-shadow:0 0 0 1px rgba(143,227,255,.08)}
.tile:hover{box-shadow:0 0 0 1px rgba(143,227,255,.4),0 24px 60px rgba(6,26,34,.35)}
.prose figure.lead-fig{margin:0 0 2em;border-radius:22px 22px 22px 80px;overflow:hidden;aspect-ratio:16/8;box-shadow:0 30px 70px rgba(13,31,39,.16)}
.prose figure.lead-fig img{width:100%;height:100%;object-fit:cover}
.phero{min-height:480px;display:flex;align-items:center}
.phero>.wrap{width:min(var(--wrap),100% - 40px)}
.phero h1,.phero .lede{max-width:min(36rem,100%)}
.phero h1{text-shadow:0 2px 30px rgba(6,26,34,.6)}
.range-chart[hidden]{display:none}
.ctip .t1{font-weight:700;font-size:.86rem;margin-bottom:2px}
.ft-bottom{padding-right:84px}
@media (max-width:600px){.ft-bottom{padding-right:0;padding-bottom:86px}}

/* v3: cable band (replaces marquee) */
.legend{display:none}
.cband{position:relative;height:190px;background:radial-gradient(700px 160px at 50% 60%,#0E3A48,#04131A 70%);overflow:hidden;border-block:1px solid rgba(143,227,255,.08);cursor:grab}
.cband canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.cband-cap{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);margin:0;font-size:.86rem;color:rgba(220,235,239,.7);white-space:nowrap;pointer-events:none}
.cband-cap b{color:#fff;font-weight:600}
@media (max-width:560px){.cband{height:160px}.cband-cap{white-space:normal;width:90%;text-align:center;font-size:.8rem}}

/* v3: illustrated facts */
.facts{border:0;gap:18px}
.fact{border:0;border-radius:18px;background:var(--paper);padding:22px 22px 24px;position:relative;overflow:hidden}
.fact:last-child{border:0}
.fact .fg{width:100%;height:auto;display:block;margin-bottom:14px}
.f-num{font-family:var(--f-display);font-stretch:122%;font-weight:700;font-size:clamp(1.9rem,2.6vw,2.4rem);line-height:1;color:var(--ink);margin-bottom:10px;white-space:nowrap}
.f-num .n{display:inline}
.f-num small{font-size:.48em;font-stretch:100%;color:var(--ink-3);margin-left:5px;font-weight:600}
.f-lbl{color:var(--ink-2);font-size:.93rem;line-height:1.45;margin:0;max-width:30ch}
@media (max-width:860px){.facts{grid-template-columns:1fr 1fr}.fact,.fact:nth-child(2),.fact:nth-child(-n+2){border:0}}
@media (max-width:460px){.facts{grid-template-columns:1fr}}
/* caliper: moving jaw closes on the cable */
.fg-cal .cal-jaw{transform:translateX(70px);transition:transform 1.6s cubic-bezier(.2,.7,.1,1) .2s}
.facts.in .fg-cal .cal-jaw{transform:translateX(-1.5px)}
/* spool: rotates while the cable pays out */
.fg-spool .spool-rot{transform-origin:46px 56px;animation:spin 6s linear infinite}
.fg-spool .spool-line{stroke-dasharray:180;stroke-dashoffset:180;transition:stroke-dashoffset 2.2s cubic-bezier(.3,.6,.2,1) .2s}
.facts.in .fg-spool .spool-line{stroke-dashoffset:0}
.fg-spool .spool-pulse{offset-path:path("M56 98 L230 98");animation:pay 2.4s linear infinite;filter:drop-shadow(0 0 4px #8FE3FF)}
@keyframes pay{from{offset-distance:0%}to{offset-distance:100%}}
/* gauge: needle sweeps from 50 to 30,000 lbs */
.fg-gauge .g-needle{transform-origin:120px 100px;transform:rotate(-88deg);transition:transform 2s cubic-bezier(.3,1.4,.4,1) .3s}
.facts.in .fg-gauge .g-needle{transform:rotate(80deg)}
.fg-gauge .g-arc{stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 2s cubic-bezier(.3,.7,.2,1) .3s}
.facts.in .fg-gauge .g-arc{stroke-dashoffset:4}
/* tape: fills to the 300 m minimum */
.fg-tape .tape-fill{transform-origin:70px 0;transform:scaleX(0);transition:transform 1.8s cubic-bezier(.3,.7,.2,1) .3s}
.facts.in .fg-tape .tape-fill{transform:scaleX(1)}
.fg-tape .tape-flag{opacity:0;transform:translateY(-8px);transition:all .6s 1.9s}
.facts.in .fg-tape .tape-flag{opacity:1;transform:none}
.fact.spot{transition:transform .35s var(--ease)}
.fact .f-num .n{font-size:inherit;color:inherit;line-height:inherit;max-width:none;display:inline}
.cband-cap{bottom:auto;top:14px}

/* v4: calm trust strip (replaces the cable band) */
.cband{display:none}
.trust{background:linear-gradient(180deg,#0A2530,#07202A);border-top:1px solid rgba(143,227,255,.08);color:#DCEBEF}
.trust-row{list-style:none;margin:0;padding:26px 0;display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.trust-row li{display:flex;align-items:center;gap:14px;min-width:0}
.trust-row li+li{border-left:1px solid rgba(143,227,255,.12);padding-left:18px}
.tr-ic{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(93,187,70,.12);color:var(--leaf)}
.tr-ic svg{width:20px;height:20px}
.trust-row strong{display:block;color:#fff;font-weight:600;font-size:.93rem;line-height:1.3}
.trust-row small{display:block;color:rgba(220,235,239,.62);font-size:.8rem;margin-top:2px}
@media (max-width:1100px){.trust-row{grid-template-columns:repeat(3,1fr)}.trust-row li:nth-child(4){border-left:0;padding-left:0}}
@media (max-width:640px){.trust-row{grid-template-columns:1fr 1fr;gap:16px}.trust-row li+li{border-left:0;padding-left:0}}

/* View Products — infinite scroll */
.pcard .pspec{margin:0;font-size:.86rem;color:var(--ink-3)}
.pcard-new{opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.pcard-new.in{opacity:1;transform:none}
.pmore{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:36px;text-align:center}
.pmore-status{margin:0;color:var(--ink-3);font-size:.92rem}
.pmore-sentinel{width:1px;height:1px}
@media (prefers-reduced-motion:reduce){.pcard-new{opacity:1;transform:none;transition:none}}

/* ---- Nov 2026 image update ---- */
.credit{position:absolute;right:10px;bottom:10px;z-index:2;max-width:calc(100% - 20px);font-size:.7rem;line-height:1.3;padding:4px 9px;border-radius:999px;background:rgba(6,26,34,.72);color:rgba(255,255,255,.88);backdrop-filter:blur(4px);pointer-events:none}
.mission .credit{top:12px;bottom:auto;right:12px}
.split .media+.media{margin-top:18px}
.rb-cmp{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.rb{margin:0;background:#EEF0EF;border-radius:18px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.rb img{display:block;width:100%;height:auto}
.rb figcaption{background:#fff;padding:16px 20px;display:flex;flex-direction:column;gap:4px}
.rb figcaption b{font-size:1.05rem}
.rb figcaption span{font-size:.9rem;color:var(--ink-3)}
.pstrip{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px;margin-top:34px}
.pstrip figure{margin:0;position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 0 0 1px var(--line)}
.pstrip img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.pstrip figure:hover img{transform:scale(1.04)}
.pstrip figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 16px 12px;font-size:.85rem;color:#fff;background:linear-gradient(180deg,transparent,rgba(6,26,34,.85))}
@media (max-width:760px){.rb-cmp,.pstrip{grid-template-columns:1fr}}
