/* ===== v32.css ===== */
/* =====================================================================
   TANNAI ROBOTICS · V3.2 DESIGN SYSTEM — "Luminous Robotics Atelier"
   Pearl titanium, glacier glass, warm ivory, champagne metal, celadon light
   and low-saturation blue-grey. Cobalt is reserved for action (CTA) and
   precision hints. Titles carry identity through weight, spacing, alignment
   and their relation to the image: no rules, ticks, index numbers or
   uppercase eyebrows. One deliberate light look (the site is not theme-
   switched); one mid-tone "screening room" band on Home and Films.
   ===================================================================== */

/* ---------- fonts (self-hosted WOFF subsets: Latin / Cyrillic split; zh titles subset) ---------- */
@font-face{font-family:"TN Display";src:url(fonts/interdisplay-300.woff) format("woff");font-weight:300;font-display:swap;unicode-range:U+0000-00FF,U+0100-017F,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+2248,U+2264-2265,U+FEFF,U+FFFD}
@font-face{font-family:"TN Display";src:url(fonts/interdisplay-400.woff) format("woff");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0100-017F,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+2248,U+2264-2265,U+FEFF,U+FFFD}
@font-face{font-family:"TN Display";src:url(fonts/interdisplay-500.woff) format("woff");font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+0100-017F,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+2248,U+2264-2265,U+FEFF,U+FFFD}
@font-face{font-family:"TN Display";src:url(fonts/interdisplay-300-cyr.woff) format("woff");font-weight:300;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"TN Display";src:url(fonts/interdisplay-400-cyr.woff) format("woff");font-weight:400;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"TN Display";src:url(fonts/interdisplay-500-cyr.woff) format("woff");font-weight:500;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"TN Text";src:url(fonts/inter-400.woff) format("woff");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0100-017F,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+2248,U+2264-2265,U+FEFF,U+FFFD}
@font-face{font-family:"TN Text";src:url(fonts/inter-500.woff) format("woff");font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+0100-017F,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+2248,U+2264-2265,U+FEFF,U+FFFD}
@font-face{font-family:"TN Text";src:url(fonts/inter-600.woff) format("woff");font-weight:600;font-display:swap;unicode-range:U+0000-00FF,U+0100-017F,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+2248,U+2264-2265,U+FEFF,U+FFFD}
@font-face{font-family:"TN Text";src:url(fonts/inter-400-cyr.woff) format("woff");font-weight:400;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"TN Text";src:url(fonts/inter-500-cyr.woff) format("woff");font-weight:500;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"TN Text";src:url(fonts/inter-600-cyr.woff) format("woff");font-weight:600;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"TN Mono";src:url(fonts/mono-400.woff) format("woff");font-weight:400;font-display:swap}
/* zh-CN display: Noto Sans CJK SC Light, subset to the zh-CN titles of the built site (src/fonts32.py); one face serves every zh display weight */

/* ---------- tokens ---------- */
:root{
  color-scheme:light;
  --ivory:#F6F4EF; --ivory-2:#FBFAF7; --pearl:#EEF0EF; --glacier:#E4ECF0; --titan:#D8DEE1; --steel:#B8C2C8;
  --champ:#B29B72; --champ-l:#E9DFCB; --celadon:#7FA595; --celadon-l:#DCE8E1; --bluegrey:#55636F;
  --ink:#13181D; --ink-2:#36404A; --ink-3:#596570; --ink-4:#7D8790;
  --line:rgba(19,24,29,.12); --line-2:rgba(19,24,29,.2); --line-3:rgba(19,24,29,.07);
  --cobalt:#2350D8; --cobalt-2:#1A3EAE; --cobalt-tint:#E8EDFC;
  --studio:#525D66; --studio-2:#46505A; --on-studio:#F4F6F7; --on-studio-2:#D2D9DE; --on-studio-3:#AEB8C0;
  --panel:#FFFFFF; --glass:rgba(251,250,247,.74); --glass-b:rgba(255,255,255,.85);
  --shadow:0 1px 2px rgba(25,32,40,.06),0 18px 40px -22px rgba(25,32,40,.28);
  --shadow-l:0 2px 4px rgba(25,32,40,.05),0 40px 90px -40px rgba(25,32,40,.4);
  --r-s:6px; --r-m:12px; --r-l:20px; --r-xl:28px;
  --wrap:1360px; --gut:max(16px,env(safe-area-inset-left,0px),min(4vw,56px));
  --hdr:68px; --ease:cubic-bezier(.2,.7,.2,1);
  --f-disp:"TN Display","TN Text",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --f-text:"TN Text",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --f-mono:"TN Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
:lang(zh-CN){--f-disp:"TN Display","TN Hei","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif;--f-text:"TN Text","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif}
:lang(ja){--f-disp:"TN Display","Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",Meiryo,sans-serif;--f-text:"TN Text","Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",Meiryo,sans-serif}
:lang(ko){--f-disp:"TN Display","Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",sans-serif;--f-text:"TN Text","Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",sans-serif}

/* ---------- base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--hdr) + 16px)}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 16px/1.62 var(--f-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}
img,svg,video{display:block;max-width:100%}
img{height:auto}
picture{display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
:focus-visible{outline:2px solid var(--cobalt);outline-offset:3px;border-radius:4px}
[hidden]{display:none!important}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:16px;top:-60px;z-index:400;background:var(--ink);color:#fff;padding:10px 16px;border-radius:999px}
.skip:focus{top:12px}
.wrap{width:100%;max-width:calc(var(--wrap) + 2 * var(--gut));margin-inline:auto;padding-left:var(--gut);padding-right:var(--gut)}
.mono{font-family:var(--f-mono);font-feature-settings:"zero" 0}
.code{font:400 13px/1.2 var(--f-mono);color:var(--ink-3);letter-spacing:.01em}
.small{font-size:14px;color:var(--ink-3);line-height:1.55}
.note{font-size:13.5px;color:var(--ink-3);line-height:1.55}
.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ---------- titles: three forms ---------- */
.tA,.tB,.tC,.h3{font-family:var(--f-disp);text-wrap:balance;overflow-wrap:break-word}
/* A · brand title on a photographic hero */
.tA{font-weight:300;font-size:clamp(46px,6.3vw,100px);line-height:.98;letter-spacing:-.036em}
/* B · short title aligned to an image edge */
.tB{font-weight:300;font-size:clamp(38px,4.4vw,68px);line-height:1.02;letter-spacing:-.03em}
/* C · magazine title with one subtitle and a detail */
.tC{font-weight:400;font-size:clamp(32px,3.3vw,52px);line-height:1.06;letter-spacing:-.024em}
.h3{font-weight:400;font-size:clamp(21px,1.7vw,26px);line-height:1.22;letter-spacing:-.012em}
:lang(zh-CN) :is(.tA,.tB,.tC){letter-spacing:.02em;line-height:1.12}
:lang(zh-CN) .tA{font-size:clamp(44px,5.6vw,88px)}
:lang(zh-CN) .tB{font-size:clamp(36px,3.9vw,60px);font-weight:300}
:lang(zh-CN) .tC{font-size:clamp(30px,2.9vw,46px);font-weight:400}
:lang(ja) :is(.tA,.tB,.tC),:lang(ko) :is(.tA,.tB,.tC){letter-spacing:0;line-height:1.16}
:lang(ja) .tA,:lang(ko) .tA{font-size:clamp(40px,5vw,80px);font-weight:400}
:lang(ja) .tB,:lang(ko) .tB{font-size:clamp(32px,3.5vw,54px);font-weight:400}
:lang(ja) .tC,:lang(ko) .tC{font-size:clamp(28px,2.7vw,42px)}
:is(:lang(de),:lang(fr),:lang(es),:lang(it),:lang(pt),:lang(ru)) .tA{font-size:clamp(40px,5.4vw,88px)}
:is(:lang(de),:lang(fr),:lang(es),:lang(it),:lang(pt),:lang(ru)) .tB{font-size:clamp(34px,3.9vw,60px)}
:is(:lang(de),:lang(ru)) :is(.tA,.tB,.tC){-webkit-hyphens:auto;hyphens:auto}
.sub{font-size:clamp(16px,1.12vw,18px);line-height:1.62;color:var(--ink-2);max-width:48ch}
.sub--l{max-width:60ch}
.detail{font:400 13px/1.5 var(--f-mono);color:var(--ink-3);letter-spacing:.01em}
.t-cobalt{color:var(--cobalt)}

/* ---------- buttons and links ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:999px;font:500 15px/1.15 var(--f-text);white-space:nowrap;transition:background-color .2s,color .2s,border-color .2s,box-shadow .25s,transform .2s var(--ease)}
.btn svg{width:16px;height:16px;flex:none}
.btn--p{background:var(--cobalt);color:#fff;box-shadow:0 10px 24px -12px rgba(35,80,216,.7)}
.btn--p:hover{background:var(--cobalt-2)}
.btn--g{background:rgba(255,255,255,.62);color:var(--ink);border:1px solid rgba(255,255,255,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(19,24,29,.04)}
.btn--g:hover{background:#fff}
.btn--o{border:1px solid var(--line-2);color:var(--ink)}
.btn--o:hover{border-color:var(--ink);background:rgba(255,255,255,.6)}
.btn--sm{min-height:40px;padding:0 16px;font-size:14px}
.btn--lg{min-height:54px;padding:0 26px;font-size:15.5px}
.btn--w{background:#fff;color:var(--ink)}
.btn--w:hover{background:var(--ivory)}
.tl{display:inline-flex;align-items:center;gap:8px;font-weight:500;font-size:15px;color:var(--ink);border-bottom:1px solid transparent;transition:color .2s,gap .2s var(--ease)}
.tl svg{width:15px;height:15px;transition:transform .25s var(--ease)}
.tl:hover{color:var(--cobalt-2)}
.tl:hover svg{transform:translateX(3px)}
.chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 15px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.55);font-size:14px;color:var(--ink-2);transition:all .2s}
.chip:hover{border-color:var(--line-2);color:var(--ink);background:#fff}
.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.chip .n{font:400 12px/1 var(--f-mono);opacity:.7}
.lab{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-3);letter-spacing:.01em}
.lab::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--celadon)}
.pill{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;background:var(--cobalt-tint);color:var(--cobalt-2);font-size:12.5px;margin:2px 4px 2px 0}

/* ---------- header ---------- */
.hdr{position:fixed;inset:0 0 auto;z-index:100;height:var(--hdr);background:rgba(246,244,239,.66);-webkit-backdrop-filter:saturate(1.5) blur(18px);backdrop-filter:saturate(1.5) blur(18px);transition:background-color .3s,box-shadow .3s}
.hdr.is-scrolled,.hdr.is-open-mega{background:rgba(250,249,246,.9);box-shadow:0 1px 0 var(--line-3),0 10px 30px -24px rgba(19,24,29,.35)}
.hdr__in{height:100%;display:flex;align-items:center;gap:28px}
.brand{display:inline-flex;align-items:center;gap:11px;flex:none}
.brand__tile{width:34px;height:34px;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px var(--line-3)}
.brand__tile img{width:100%;height:100%;object-fit:cover}
.brand__w{display:grid;line-height:1}
.brand__w b{font:400 16px/1 var(--f-disp);letter-spacing:.2em}
.brand__w span{font:400 9.5px/1 var(--f-text);letter-spacing:.36em;color:var(--ink-3);margin-top:4px}
.nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav__a{display:inline-flex;align-items:center;gap:5px;height:40px;padding:0 11px;border-radius:999px;font-size:14px;font-weight:500;color:var(--ink-2);white-space:nowrap;transition:color .2s,background-color .2s}
.nav__a svg{width:12px;height:12px;opacity:.6;transition:transform .2s}
.nav__a:hover,.nav__a[aria-expanded=true]{color:var(--ink);background:rgba(255,255,255,.7)}
.nav__a[aria-expanded=true] svg{transform:rotate(180deg)}
.nav__a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--champ)}
.hdr__r{display:flex;align-items:center;gap:8px;flex:none}
.lang-btn{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;border-radius:999px;font-size:13.5px;font-weight:500;color:var(--ink-2)}
.lang-btn svg{width:16px;height:16px}
.lang-btn:hover{background:rgba(255,255,255,.7);color:var(--ink)}
.menu-btn{display:none;width:44px;height:44px;border-radius:50%;place-items:center}
.menu-btn svg{width:22px;height:22px}
.mega{position:fixed;left:0;right:0;top:var(--hdr);z-index:99;background:rgba(250,249,246,.97);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 30px 60px -40px rgba(19,24,29,.45);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s,transform .25s var(--ease),visibility 0s .25s}
.mega.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .2s,transform .25s var(--ease),visibility 0s}
.mega__in{display:grid;grid-template-columns:minmax(220px,.8fr) 3fr;gap:40px;padding-block:28px 34px}
.mega__intro{display:grid;gap:12px;align-content:start}
.mega__intro .h3{font-size:22px}
.mega__intro .tl{font-size:14px}
.mega__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.mprod{display:grid;gap:8px;padding:10px;border-radius:var(--r-m);transition:background-color .2s}
.mprod:hover{background:#fff}
.mprod img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-s);background:var(--pearl)}
.mprod b{font-weight:500;font-size:14px;line-height:1.3}
.mcats{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.mbots{grid-template-columns:repeat(8,minmax(0,1fr))}
.mbot{display:grid;gap:6px;justify-items:center;text-align:center;padding:8px 4px;border-radius:var(--r-m);font-size:12.5px;line-height:1.3;color:var(--ink-2)}
.mbot img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r-m);background:var(--pearl)}
.mbot:hover{background:#fff;color:var(--ink)}
.scrim{position:fixed;inset:0;z-index:98;background:rgba(232,235,236,.35);opacity:0;visibility:hidden;transition:opacity .2s}
.scrim.is-on{opacity:1;visibility:visible}
.lang-pop{position:fixed;right:max(16px,calc((100vw - var(--wrap)) / 2));top:calc(var(--hdr) + 8px);z-index:120;width:min(360px,calc(100vw - 32px));padding:14px;border-radius:var(--r-l);background:rgba(252,251,249,.98);box-shadow:var(--shadow-l);display:grid;gap:2px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s,transform .25s var(--ease),visibility 0s .25s}
.lang-pop.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .2s,transform .25s var(--ease),visibility 0s}
.lang-pop h2{font:500 13px/1.3 var(--f-text);color:var(--ink-3);padding:4px 10px 8px}
.lang-pop a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--r-s);font-size:14.5px}
.lang-pop a small{font:400 12px/1 var(--f-mono);color:var(--ink-4)}
.lang-pop a:hover{background:var(--pearl)}
.lang-pop a[aria-current=true]{background:var(--cobalt-tint);color:var(--cobalt-2)}
.lang-pop p{font-size:12.5px;color:var(--ink-3);padding:8px 10px 2px}
.sheet{position:fixed;inset:0;z-index:200;background:var(--ivory-2);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s var(--ease);padding-bottom:env(safe-area-inset-bottom,0px)}
.sheet.is-open{transform:none}
.sheet__top{display:flex;align-items:center;justify-content:space-between;height:var(--hdr);padding-left:var(--gut);padding-right:var(--gut)}
.sheet__body{flex:1;overflow:auto;padding:8px var(--gut) 24px}
.sheet__nav{display:grid}
.sheet__nav a{display:flex;justify-content:space-between;align-items:center;min-height:56px;font:300 24px/1.2 var(--f-disp);border-bottom:1px solid var(--line-3)}
.sheet__nav a small{font:400 13px/1 var(--f-text);color:var(--ink-3)}
.sheet__langs{display:flex;flex-wrap:wrap;gap:6px;margin-top:22px}
.sheet__langs a{padding:8px 12px;border-radius:999px;border:1px solid var(--line);font-size:13.5px}
.sheet__langs a[aria-current=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.sheet__cta{padding:14px var(--gut) 18px;display:grid}
.icon-btn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center}
.icon-btn svg{width:20px;height:20px}
.icon-btn:hover{background:rgba(19,24,29,.06)}
.langbar{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:150;display:flex;align-items:center;gap:12px;padding:8px 8px 8px 16px;border-radius:999px;background:rgba(252,251,249,.96);box-shadow:var(--shadow-l);font-size:14px;max-width:calc(100vw - 32px)}
.langbar a{color:var(--cobalt-2);font-weight:500}

/* ---------- sections and tonal ground (adjacent edges share a tone) ---------- */
main{display:block}
.sec{position:relative;padding-block:clamp(76px,9vw,140px);background:linear-gradient(180deg,var(--from,var(--ivory)) 0%,var(--to,var(--ivory)) 100%)}
.sec--tight{padding-block:clamp(56px,6vw,96px)}
.sec--studio{color:var(--on-studio);background:linear-gradient(180deg,var(--from,#E9ECED) 0,var(--studio) clamp(140px,16vw,240px),var(--studio-2) calc(100% - clamp(140px,16vw,240px)),var(--to,#E8EBEC) 100%);padding-block:clamp(150px,17vw,260px)}
.sec--studio .sub,.sec--studio .small{color:var(--on-studio-2)}
.sec--studio .detail{color:var(--on-studio-3)}
.sec--studio .tl{color:var(--on-studio)}
.sec--studio .tl:hover{color:#fff}
.head{display:grid;gap:18px;margin-bottom:clamp(36px,4.6vw,64px)}
.head--split{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:end;gap:24px 64px}
.head--split .sub{justify-self:start}
.head__r{display:grid;gap:18px;justify-items:start}
.head--center{justify-items:center;text-align:center}
.head--center .sub{margin-inline:auto}

/* ---------- picture frames ---------- */
.ph{position:relative;overflow:hidden;border-radius:var(--r-l);background:var(--pearl)}
.ph img{width:100%;height:100%;object-fit:cover}
/* a <picture> inside a fixed-ratio frame must fill it, so object-fit/object-position crop the image instead of leaving a band */
:where(.ph,.pt__img,.ed__big,.poster,.sc__hero,.show__th,.fcard__img,.acover,.relc)>picture{width:100%;height:100%}
.ph--bleed{border-radius:0}
.cap{position:absolute;left:16px;bottom:14px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:6px 11px;border-radius:999px;background:rgba(250,249,246,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:12px;color:var(--ink-2);max-width:calc(100% - 32px)}
.cap--r{left:auto;right:16px}
.figcap{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;margin-top:12px;font-size:13.5px;color:var(--ink-3)}
.figcap b{font-weight:500;color:var(--ink)}

/* =================================================================== HOME */
.hero{position:relative;min-height:min(100svh,1000px);display:grid;align-items:end;isolation:isolate;background:var(--pearl)}
.hero__media{position:absolute;inset:0;z-index:-1}
.hero__media picture,.hero__media img{width:100%;height:100%}
.hero__media img{object-fit:cover;object-position:var(--op,62% 50%)}
.hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(246,244,239,.86) 0%,rgba(246,244,239,.55) 28%,rgba(246,244,239,0) 50%),linear-gradient(0deg,rgba(246,244,239,.5) 0%,rgba(246,244,239,0) 16%)}
.hero__c{display:grid;gap:22px;padding-top:calc(var(--hdr) + 80px);padding-bottom:clamp(40px,5vw,72px);max-width:calc(var(--wrap) + 2 * var(--gut))}
.hero__c .tA{max-width:9.5ch}
:lang(zh-CN) .hero__c .tA{max-width:none}
.hero__c .sub{max-width:40ch;font-size:clamp(16.5px,1.2vw,19px)}
.hero__low{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:22px}
.qcats{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.qcat{display:flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:999px;background:rgba(252,251,249,.7);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.9);font-size:13.5px;font-weight:500;transition:background-color .2s}
.qcat img{width:36px;height:36px;border-radius:50%;object-fit:cover;background:var(--pearl)}
.qcat:hover{background:#fff}
.hero__cap{position:absolute;left:auto;bottom:auto;right:var(--gut);top:calc(var(--hdr) + 20px)}
.hero__mimg{display:none}
.lead--m{display:none}

/* hardware (form B: title aligned to the top edge of the set image) */
.hw{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start}
.hw__img{border-radius:var(--r-xl);aspect-ratio:2/1.15}
.hw__c{display:grid;gap:20px;align-content:start;padding-top:4px}
.hw__links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:6px}
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,22px);margin-top:clamp(28px,3.4vw,48px)}
.pt{display:grid;grid-template-rows:auto 1fr;border-radius:var(--r-l);background:rgba(255,255,255,.62);box-shadow:0 0 0 1px var(--line-3);overflow:hidden;transition:box-shadow .3s,transform .3s var(--ease),background-color .3s}
.pt:hover{background:#fff;box-shadow:var(--shadow);transform:translateY(-2px)}
.pt__img{aspect-ratio:4/3;background:linear-gradient(180deg,#EDEFEE,#F7F7F5)}
.pt__img img{width:100%;height:100%;object-fit:cover}
.pt__b{display:grid;gap:10px;padding:16px 18px 18px;align-content:start}
.pt__b h3{font:500 16.5px/1.3 var(--f-text)}
.kv{display:grid;gap:4px;font-size:13.5px}
.kv div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line-3);padding-top:4px}
.kv dt{color:var(--ink-3)}
.kv dd{text-align:right;color:var(--ink);font-feature-settings:"tnum"}
.price{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:4px}
.price b{font:400 20px/1 var(--f-disp);letter-spacing:-.01em}
.price small{font-size:12.5px;color:var(--ink-3)}

/* applications on home (editorial: one large cinematic frame + asymmetric mosaic) */
.ed{display:grid;gap:clamp(14px,1.6vw,22px)}
.ed__big{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:2.1/1;background:var(--pearl)}
.ed__big img{width:100%;height:100%;object-fit:cover}
.ed__over{position:absolute;left:clamp(16px,2.4vw,36px);bottom:clamp(16px,2.4vw,36px);display:grid;gap:8px;max-width:min(460px,70%);padding:20px 22px;border-radius:var(--r-l);background:rgba(250,249,246,.8);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.ed__over b{font:400 24px/1.2 var(--f-disp)}
.ed__over p{font-size:14.5px;color:var(--ink-2)}
.ed__row{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:clamp(14px,1.6vw,22px)}
.ed__tile{position:relative;display:grid;gap:12px}
.ed__tile .ph{aspect-ratio:4/3}
.ed__tile:first-child .ph{aspect-ratio:auto;height:100%;min-height:260px}
.ed__tile:first-child{grid-template-rows:1fr auto}
.ed__t b{display:block;font:500 16.5px/1.3 var(--f-text)}
.ed__t span{font-size:14px;color:var(--ink-3)}
.ed__tile:hover img{transform:scale(1.02)}
.ed__tile img,.ed__big img{transition:transform .8s var(--ease)}
.scidx{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(22px,2.6vw,34px)}

/* inside the build: modular engineering detail */
.macros{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:clamp(12px,1.6vw,22px)}
.macro{display:grid;gap:14px}
.macro .ph{aspect-ratio:4/3}
.macro:first-child .ph{aspect-ratio:auto;height:100%;min-height:300px}
.macro:first-child{grid-template-rows:1fr auto}
.macro b{display:block;font-weight:500;font-size:16px}
.macro .detail{margin-top:2px}
.chain{margin-top:clamp(28px,3.4vw,48px);border-radius:var(--r-xl);background:rgba(255,255,255,.55);box-shadow:0 0 0 1px var(--line-3);padding:clamp(18px,2.4vw,32px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.4fr);gap:28px;align-items:center}
.chain__svg{overflow-x:auto}
.chain__svg svg{min-width:640px;width:100%;height:auto}
.chain svg .nd rect{fill:#fff;stroke:var(--line-2)}
.chain svg .nd--c rect{fill:var(--cobalt-tint);stroke:rgba(35,80,216,.35)}
.chain svg .nd--y rect{fill:var(--celadon-l);stroke:rgba(127,165,149,.6)}
.chain svg text{font-family:var(--f-text);fill:var(--ink)}
.chain svg .m{font:500 15px var(--f-mono)}
.chain svg .i{font-size:13px;fill:var(--ink-3)}
.chain svg .h{font-size:13px;fill:var(--ink-3)}
.chain svg .ln{fill:none;stroke:var(--cobalt);stroke-width:1.6}
.chain svg .ln--d{stroke:var(--steel);stroke-dasharray:5 5}
.chain svg .pt{fill:var(--cobalt)}
.chain svg .k{font-size:12.5px;fill:var(--ink-3)}

/* showroom on home */
.srh{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(28px,4vw,72px);align-items:center}
.srh__c{display:grid;gap:22px}
.srh__stage{position:relative}
.srh__stage::before{content:"";position:absolute;inset:6% 4% 10%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.95),rgba(255,255,255,0));z-index:0}
.srh__stage .viewer{z-index:1}
.minirail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.minirail .show__item{grid-template-columns:40px minmax(0,1fr);height:auto;padding:6px;border:0;border-radius:var(--r-m);background:rgba(255,255,255,.5)}
.minirail .show__item:last-child{border:0}
.minirail .show__th{width:40px;height:40px}
.minirail .show__t span{display:none}
.minirail .show__t b{font-size:12.5px;white-space:normal;line-height:1.25}
.minirail .show__n{display:none}

/* films band (mid-tone screening room) */
.filmband{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(18px,2.2vw,32px);align-items:stretch}
.poster{position:relative;display:block;border-radius:var(--r-l);overflow:hidden;background:#2F363D;isolation:isolate}
.poster img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.poster:hover img{transform:scale(1.025)}
.poster::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(28,33,38,.78) 0%,rgba(28,33,38,0) 55%);z-index:1}
.poster__c{position:absolute;left:clamp(16px,2vw,26px);right:clamp(16px,2vw,26px);bottom:clamp(14px,1.8vw,24px);z-index:2;display:grid;gap:6px;color:#fff}
.poster__c b{font:400 clamp(19px,1.6vw,24px)/1.2 var(--f-disp)}
.poster__c span{font-size:13.5px;color:rgba(255,255,255,.82)}
.poster__s{position:absolute;left:clamp(16px,2vw,26px);top:clamp(14px,1.8vw,22px);z-index:2;display:inline-flex;gap:8px;align-items:center;padding:6px 11px;border-radius:999px;background:rgba(255,255,255,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-size:12.5px}
.poster__play{position:absolute;right:clamp(16px,2vw,26px);bottom:clamp(14px,1.8vw,24px);z-index:2;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink)}
.poster__play svg{width:18px;height:18px;margin-left:3px}
.filmband__big{aspect-ratio:16/9}
.filmband__col{display:grid;gap:clamp(18px,2.2vw,32px);grid-template-rows:1fr 1fr}
.f0{display:flex;align-items:center;gap:14px;margin-top:clamp(24px,3vw,40px);color:var(--on-studio-2);font-size:14px}
.f0 img{width:44px;height:44px;border-radius:9px}

/* sourcing path */
.pathv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:clamp(28px,4vw,72px);align-items:center}
.pathv__img{aspect-ratio:4/3.1;border-radius:var(--r-xl)}
.steps{display:grid;gap:0;counter-reset:st}
.steps li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;padding:18px 0;position:relative}
.steps li::before{counter-increment:st;content:counter(st);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:0 0 0 1px var(--line);font:400 14px/1 var(--f-disp);color:var(--ink-2);position:relative;z-index:1}
.steps li:not(:last-child)::after{content:"";position:absolute;left:17.5px;top:54px;bottom:-18px;width:1px;background:linear-gradient(var(--champ),rgba(178,155,114,.2))}
.steps b{display:block;font-weight:500;font-size:17px}
.steps span{color:var(--ink-3);font-size:14.5px}
.steps--h{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.steps--h li{grid-template-columns:1fr;padding:0}
.steps--h li:not(:last-child)::after{left:44px;right:-10px;top:18px;bottom:auto;width:auto;height:1px;background:linear-gradient(90deg,var(--champ),rgba(178,155,114,.2))}

/* insights on home */
.insh{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,3.4vw,56px);align-items:start}
.insf{display:grid;gap:18px}
.insf .ph{aspect-ratio:16/10}
.insf h3{font:400 clamp(22px,1.9vw,29px)/1.25 var(--f-disp);letter-spacing:-.012em}
.insl{display:grid}
.insl a{display:grid;gap:6px;padding:18px 0;border-top:1px solid var(--line)}
.insl a:last-child{border-bottom:1px solid var(--line)}
.insl b{font-weight:500;font-size:16px;line-height:1.38}
.insl a:hover b{color:var(--cobalt-2)}
.meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--ink-3)}

/* project start: scene chooser */
.go{display:grid;gap:clamp(24px,3vw,40px)}
.scenes8{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.4vw,18px)}
.scn{position:relative;display:grid;border-radius:var(--r-l);overflow:hidden;aspect-ratio:4/3;isolation:isolate;background:var(--pearl);text-align:left}
.scn img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.scn::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(246,244,239,.92) 0%,rgba(246,244,239,0) 52%);z-index:1}
.scn__t{position:relative;z-index:2;align-self:end;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;font-weight:500;font-size:15px}
.scn__t svg{width:16px;height:16px;flex:none;color:var(--cobalt)}
.scn:hover img{transform:scale(1.04)}
.scn[aria-pressed=true]{box-shadow:0 0 0 2px var(--cobalt)}
.scn[aria-pressed=true] .scn__t svg{transform:none}
.go__hw{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.go__hw span{font-size:14px;color:var(--ink-3);margin-right:6px}

/* =================================================================== PAGE HEROES */
.phero{padding-top:calc(var(--hdr) + clamp(40px,5vw,84px));padding-bottom:clamp(48px,6vw,96px)}
.phero--B{display:grid}
.phB{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:clamp(28px,4vw,72px);align-items:start}
.phB__c{display:grid;gap:22px;align-content:start;padding-top:clamp(8px,2vw,28px)}
.phB__img{aspect-ratio:16/10.5;border-radius:var(--r-xl)}
.phA{position:relative;min-height:min(86svh,860px);display:grid;align-items:end;isolation:isolate}
.phA__media{position:absolute;inset:0;z-index:-1}
.phA__media picture,.phA__media img{width:100%;height:100%}
.phA__media img{object-fit:cover;object-position:var(--op,60% 50%)}
.phA__media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(246,244,239,.88) 0%,rgba(246,244,239,.5) 32%,rgba(246,244,239,0) 58%),linear-gradient(0deg,rgba(246,244,239,.9) 0%,rgba(246,244,239,0) 34%)}
.phA__c{display:grid;gap:22px;padding-top:calc(var(--hdr) + 80px);padding-bottom:clamp(40px,5vw,72px)}
.phA__c .sub{max-width:42ch}
.phC{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,72px);align-items:end}
.phC__c{display:grid;gap:18px}
.anchors{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(24px,3vw,40px)}
.anchors a[aria-current=true]{background:var(--ink);color:#fff;border-color:var(--ink)}

/* =================================================================== PRODUCTS */
.catnav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:clamp(28px,3.4vw,48px)}
.catn{display:grid;gap:4px;padding:14px 16px;border-radius:var(--r-m);background:rgba(255,255,255,.55);box-shadow:0 0 0 1px var(--line-3);transition:background-color .2s,box-shadow .2s}
.catn:hover{background:#fff;box-shadow:var(--shadow)}
.catn b{font-weight:500;font-size:14.5px;line-height:1.3}
.catn span{font-size:12.5px;color:var(--ink-3)}
.catn--p span{color:var(--cobalt-2)}
.cathead{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end;margin-bottom:clamp(22px,2.6vw,36px)}
.bench{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,3.4vw,60px);align-items:start;padding-block:clamp(26px,3vw,44px)}
.bench + .bench{border-top:1px solid var(--line-3)}
.bench--r .bench__g{order:2}
.bench__g{display:grid;grid-template-columns:2.2fr 1fr;gap:12px}
.bench__main{aspect-ratio:4/3;border-radius:var(--r-l);background:linear-gradient(180deg,#ECEEED,#F8F8F6)}
.bench__side{display:grid;gap:12px;grid-template-rows:1fr auto}
.bench__mac{border-radius:var(--r-l);aspect-ratio:auto;min-height:0}
.bench__side .note{font-size:12.5px}
.bench__c{display:grid;gap:16px;align-content:start}
.bench__c h3{font:400 clamp(24px,2vw,30px)/1.2 var(--f-disp);letter-spacing:-.015em}
.bench__c .sub{font-size:16px}
.spec{width:100%;border-collapse:collapse;font-size:14px}
.spec th,.spec td{text-align:left;padding:9px 0;border-top:1px solid var(--line-3);vertical-align:top}
.spec th{font-weight:400;color:var(--ink-3);width:44%;padding-right:16px}
.spec td{color:var(--ink)}
.spec caption{text-align:left;font-weight:500;font-size:14px;padding-bottom:8px;color:var(--ink)}
.buy{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--r-m);background:rgba(255,255,255,.66);box-shadow:0 0 0 1px var(--line-3)}
.buy__p b{font:400 26px/1 var(--f-disp)}
.buy__p small{display:block;font-size:12.5px;color:var(--ink-3);margin-top:4px}
.cmpchk{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-2);cursor:pointer}
.cmpchk input{width:18px;height:18px;accent-color:var(--cobalt)}
.proj{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.projc{display:grid;gap:12px;padding:clamp(20px,2.2vw,28px);border-radius:var(--r-l);background:rgba(255,255,255,.6);box-shadow:0 0 0 1px var(--line-3);align-content:start}
.projc .h3{font-size:21px}
.projc p{font-size:14.5px;color:var(--ink-2)}
.projc .tl{margin-top:6px}
.projc svg.cat{width:30px;height:30px;color:var(--champ)}
.cmpw{overflow-x:auto;border-radius:var(--r-l);background:rgba(255,255,255,.7);box-shadow:0 0 0 1px var(--line-3)}
.cmp{width:100%;min-width:720px;border-collapse:collapse;font-size:14px}
.cmp th,.cmp td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line-3);vertical-align:top}
.cmp thead th{position:sticky;top:0;background:#FBFAF8;font-weight:500;z-index:1}
.cmp thead th .code{display:block;margin-bottom:2px}
.cmp tbody th{font-weight:400;color:var(--ink-3);width:22%}
.cmp tr.same{opacity:1}
.cmp.only-diff tr.same{display:none}
.cmp .na{color:var(--ink-4)}
.cmpbar{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin-bottom:16px}
.guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-radius:var(--r-l);overflow:hidden;box-shadow:0 0 0 1px var(--line-3);background:rgba(255,255,255,.5)}
.guide{display:grid;gap:6px;padding:clamp(18px,2vw,26px);border-right:1px solid var(--line-3);border-bottom:1px solid var(--line-3)}
.guide:nth-child(3n){border-right:0}
.guide:nth-last-child(-n+3){border-bottom:0}
.guide b{font-weight:500;font-size:16px}
.guide span{font-size:14px;color:var(--ink-3)}
.guide i{font:normal 300 30px/1 var(--f-disp);color:var(--champ);margin-bottom:6px}
.ctaband{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:clamp(26px,3.4vw,48px);border-radius:var(--r-xl);background:linear-gradient(120deg,#FFFFFF 0%,var(--glacier) 100%);box-shadow:0 0 0 1px var(--line-3)}
.ctaband .sub{margin-top:10px}

/* spec dialogs (V1.6.2 hooks: [data-dialog], dialog.sheetdlg, [data-dclose]) */
dialog.sheetdlg{border:0;padding:0;margin:auto;width:min(780px,calc(100vw - 24px));max-height:min(90vh,940px);border-radius:var(--r-xl);background:var(--ivory-2);color:var(--ink);box-shadow:0 40px 100px -30px rgba(20,26,32,.55)}
dialog.sheetdlg::backdrop{background:rgba(224,228,230,.62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.dlg__head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 26px 16px;position:sticky;top:0;background:inherit;z-index:2;box-shadow:0 1px 0 var(--line-3)}
.dlg__head .h3{margin-top:6px}
.dlg__body{padding:20px 26px 28px;display:grid;gap:22px}
.fdlg .dlg__body{gap:20px}
.board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.board figure{display:grid;gap:6px}
.board .ph{aspect-ratio:16/9;border-radius:var(--r-m)}
.board figcaption{font-size:12.5px;color:var(--ink-3)}
.shots{display:grid;gap:0;counter-reset:sh}
.shots li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid var(--line-3);font-size:14.5px}
.shots li span{font:400 12.5px/1.6 var(--f-mono);color:var(--ink-3)}
.frame0{display:flex;gap:14px;align-items:center;padding:14px;border-radius:var(--r-m);background:#fff;box-shadow:0 0 0 1px var(--line-3)}
.frame0 img{width:48px;height:48px;border-radius:10px}
.frame0 b{display:block;font-weight:500;font-size:14.5px}
.frame0 p{font-size:13px;color:var(--ink-3)}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);z-index:300;background:var(--ink);color:#fff;padding:12px 18px;border-radius:999px;font-size:14px;opacity:0;transition:all .3s var(--ease);pointer-events:none;max-width:calc(100vw - 32px)}
.toast.is-on{opacity:1;transform:translate(-50%,0)}

/* =================================================================== APPLICATIONS */
.sc{scroll-margin-top:calc(var(--hdr) + 10px)}
.sc__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 64px;align-items:end;margin-bottom:clamp(22px,2.8vw,40px)}
.sc__head .sub{max-width:44ch}
.sc__hero{position:relative;border-radius:var(--r-xl);overflow:hidden;background:var(--pearl)}
.sc__hero img{width:100%;height:100%;object-fit:cover}
.sc__body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,2.6vw,44px);margin-top:clamp(22px,2.6vw,36px);align-items:start}
.sc__det{display:grid;gap:10px}
.sc__det .ph{aspect-ratio:4/3;border-radius:var(--r-l)}
.qs{display:grid;gap:0}
.qs li{padding:11px 0 11px 26px;border-top:1px solid var(--line-3);font-size:15px;position:relative}
.qs li::before{content:"?";position:absolute;left:0;top:11px;font:400 15px/1.6 var(--f-disp);color:var(--champ)}
.qs h3,.evalh{font:500 14px/1.3 var(--f-text);color:var(--ink-3);margin-bottom:10px}
.evals{display:flex;flex-wrap:wrap;gap:8px}
.sc__act{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin-top:18px}
/* composition variants */
.sc--A .sc__hero{aspect-ratio:2.15/1}
.scB{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.55fr);gap:clamp(24px,3.4vw,60px);align-items:center}
.scB .sc__head{grid-template-columns:1fr;margin:0}
.scB .sc__hero{aspect-ratio:4/3.2}
.scB--r .sc__hero{order:-1}
.scB .sc__body{grid-column:1/-1;margin-top:clamp(8px,1vw,16px)}
.sc--C .sc__hero{aspect-ratio:2.6/1}
.sc--D .sc__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(12px,1.6vw,22px)}
.sc--D .sc__hero{aspect-ratio:auto;height:100%;min-height:340px}
.sc--D .sc__grid .ph{aspect-ratio:4/3.3;background:linear-gradient(180deg,#ECEEED,#F7F7F5)}
.sc__cap{position:absolute;left:auto;right:16px;bottom:14px}
.overcard{position:absolute;left:clamp(14px,2.2vw,32px);top:clamp(14px,2.2vw,32px);max-width:min(360px,60%);padding:16px 18px;border-radius:var(--r-l);background:rgba(250,249,246,.82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:grid;gap:6px}
.overcard b{font:500 14px/1.3 var(--f-text)}
.overcard span{font-size:13.5px;color:var(--ink-2)}
.scidx2{position:sticky;top:var(--hdr);z-index:20;background:rgba(246,244,239,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.scidx2 nav{display:flex;gap:6px;overflow-x:auto;padding-block:10px;scrollbar-width:none}
.scidx2 nav::-webkit-scrollbar{display:none}
.scidx2 a{flex:none;padding:7px 13px;border-radius:999px;font-size:13.5px;color:var(--ink-2);white-space:nowrap}
.scidx2 a:hover{background:#fff}
.scidx2 a[aria-current=true]{background:var(--ink);color:#fff}

/* =================================================================== SHOWROOM */
.room{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.5fr) minmax(260px,.8fr);gap:clamp(18px,2.4vw,40px);align-items:start}
.room__stage{position:relative;padding:clamp(10px,1.4vw,20px);border-radius:var(--r-xl);background:radial-gradient(70% 60% at 50% 46%,#FFFFFF 0%,rgba(255,255,255,.6) 55%,rgba(255,255,255,0) 100%)}
.rail8{display:grid;gap:4px}
.show__item{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;width:100%;padding:6px 10px 6px 6px;border-radius:var(--r-m);text-align:left;color:var(--ink-2);transition:background-color .25s}
.show__n{display:none}
.show__th{width:48px;height:48px;border-radius:10px;overflow:hidden;background:var(--pearl)}
.show__th img{width:100%;height:100%;object-fit:cover}
.show__t{display:grid;gap:1px;min-width:0}
.show__t b{font-weight:500;font-size:14.5px;line-height:1.25;color:var(--ink)}
.show__t span{font-size:12.5px;color:var(--ink-3)}
.show__item:hover{background:rgba(255,255,255,.7)}
.show__item[aria-selected=true]{background:#fff;box-shadow:0 0 0 1px var(--line-3),0 8px 20px -14px rgba(19,24,29,.3)}
.show__item[aria-selected=true]::before{content:"";position:absolute;left:-2px;top:14px;bottom:14px;width:3px;border-radius:3px;background:var(--cobalt)}
.info{display:grid;gap:18px;padding:clamp(18px,2vw,26px);border-radius:var(--r-l);background:rgba(255,255,255,.66);box-shadow:0 0 0 1px var(--line-3)}
.info h2{font:400 26px/1.2 var(--f-disp);letter-spacing:-.012em}
.info .h4{font:500 13.5px/1.3 var(--f-text);color:var(--ink-3)}
.info [data-for-robot]{display:grid;gap:12px}
.stack{display:flex;flex-wrap:wrap;gap:6px}
.stack a{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:999px;background:var(--pearl);font-size:13px;color:var(--ink-2)}
.stack a svg{width:14px;height:14px}
.stack a:hover{background:#fff;color:var(--ink)}
.robots8{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.4vw,18px)}
.rcard{display:grid;gap:10px;padding:12px 12px 16px;border-radius:var(--r-l);background:rgba(255,255,255,.55);box-shadow:0 0 0 1px var(--line-3);transition:background-color .2s,box-shadow .2s}
.rcard:hover{background:#fff;box-shadow:var(--shadow)}
.rcard img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r-m);background:var(--pearl)}
.rcard b{font-weight:500;font-size:15px}
.rcard span{font-size:13px;color:var(--ink-3)}
.rcard .row{gap:8px 14px;margin-top:2px}
.rcard .tl{font-size:13.5px}
/* 360 viewer (V1.6.2 hooks) */
.viewer{position:relative;aspect-ratio:1;width:100%;max-width:640px;margin-inline:auto;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab;outline:none}
.viewer.is-drag{cursor:grabbing}
.viewer:focus-visible{outline:2px solid var(--cobalt);outline-offset:6px;border-radius:50%}
.viewer__frame,.viewer__still{position:absolute;inset:0;width:100%;height:100%;-webkit-mask-image:radial-gradient(closest-side,#000 66%,transparent 100%);mask-image:radial-gradient(closest-side,#000 66%,transparent 100%);transition:opacity .35s var(--ease);pointer-events:none;-webkit-user-drag:none}
.viewer__frame{background-repeat:no-repeat;background-size:600% 600%}
.viewer__still{object-fit:cover}
.viewer.is-ready .viewer__still{opacity:0}
.viewer.is-swap .viewer__frame,.viewer.is-swap .viewer__still{opacity:0}
.vring{position:absolute;inset:2.5%;width:95%;height:95%;pointer-events:none;overflow:visible}
.vring circle{fill:none;stroke:rgba(85,99,111,.16);stroke-width:.16}
.vring line{stroke:rgba(85,99,111,.22);stroke-width:.16}
.vring line.mj{stroke:rgba(85,99,111,.42);stroke-width:.22}
.vring__m{transform-origin:50px 50px;transform:rotate(var(--a,0deg));transition:transform .12s linear}
.vring__m path{fill:var(--cobalt)}
.vring__m line{stroke:var(--cobalt);stroke-width:.32}
.vcorner{display:none}
.hs{position:absolute;width:32px;height:32px;margin:-16px 0 0 -16px;border-radius:50%;display:grid;place-items:center;opacity:0;transform:scale(.6);transition:opacity .25s,transform .3s var(--ease);pointer-events:none;z-index:2}
.hs::before{content:"";position:absolute;inset:0;border-radius:50%;border:1.5px solid var(--cobalt);background:rgba(255,255,255,.6);box-shadow:0 0 0 6px rgba(35,80,216,.1)}
.hs::after{content:"";width:7px;height:7px;border-radius:50%;background:var(--cobalt)}
.hs.is-vis{opacity:1;transform:none;pointer-events:auto}
.hs.is-on::before{background:rgba(35,80,216,.2)}
.viewer.no-hs .hs{opacity:0!important;pointer-events:none!important}
.hs-card{position:absolute;z-index:3;width:min(250px,70%);padding:12px 14px;border-radius:var(--r-m);background:rgba(252,251,249,.95);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow);color:var(--ink);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .25s var(--ease),visibility 0s .2s}
.hs-card.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .2s,transform .25s var(--ease),visibility 0s}
.hs-card b{display:block;font-weight:600;font-size:14px;margin-bottom:3px}
.hs-card p{margin:0 0 6px;font-size:13px;color:var(--ink-3)}
.hs-card a{font-size:13px;color:var(--cobalt-2);font-weight:500}
.vbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px auto 0;width:100%;max-width:640px;color:var(--ink-3);font-size:13px}
.vbar__btns{display:flex;gap:6px;flex-wrap:wrap}
.vbtn{min-height:40px;min-width:40px;padding:0 13px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.66);display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--ink-2);font-size:13.5px;white-space:nowrap;transition:all .2s}
.vbtn svg{width:16px;height:16px}
.vbtn:hover{color:var(--ink);background:#fff}
.vbtn[aria-pressed=true]{background:var(--cobalt-tint);color:var(--cobalt-2);border-color:rgba(35,80,216,.3)}
.vbar__angle{font:400 13px/1 var(--f-mono);min-width:84px;text-align:right}
.vhint{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-2);padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.78);pointer-events:none;transition:opacity .4s;white-space:nowrap}
.vhint svg{width:15px;height:15px}
.viewer.was-dragged .vhint{opacity:0}
.hs-list{display:grid}
.hs-list li{border-top:1px solid var(--line-3)}
.hs-list button{width:100%;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;text-align:left;padding:10px 4px;color:var(--ink-3);border-radius:var(--r-s)}
.hs-list button:hover,.hs-list button.is-on{background:rgba(255,255,255,.7)}
.hs-list button::before{content:"";width:8px;height:8px;border-radius:50%;margin-top:7px;background:var(--cobalt);box-shadow:0 0 0 3px rgba(35,80,216,.14)}
.hs-list b{display:block;color:var(--ink);font-weight:500;font-size:14px}
.hs-list span{font-size:13px}

/* =================================================================== FILMS */
.player{position:relative;aspect-ratio:16/9;border-radius:var(--r-xl);overflow:hidden;background:#2B3238;isolation:isolate}
.player video,.player__still{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.player video{opacity:0;transition:opacity .4s}
.player.is-playing video{opacity:1}
.player.show-still .player__still{opacity:1}
.player__tags{position:absolute;left:18px;top:16px;z-index:2;display:flex;gap:8px}
.player__tags span{padding:6px 11px;border-radius:999px;background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-size:12.5px}
.player__planned{display:none}
.player.show-still .player__planned{display:inline-flex}
.player__cc{position:absolute;left:50%;bottom:76px;transform:translateX(-50%);z-index:2;padding:7px 12px;border-radius:8px;background:rgba(20,24,28,.6);color:#fff;font-size:13.5px;opacity:0;transition:opacity .3s;max-width:80%;text-align:center}
.player__cc.is-on{opacity:1}
.playbtn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:78px;height:78px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);display:grid;place-items:center;box-shadow:0 18px 40px -16px rgba(0,0,0,.5);transition:transform .25s var(--ease),opacity .3s}
.playbtn svg{width:24px;height:24px;margin-left:4px}
.playbtn:hover{transform:translate(-50%,-50%) scale(1.05)}
.player.is-playing .playbtn{opacity:0}
.player.is-playing:hover .playbtn{opacity:1}
.player__ui{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:20px 22px;background:linear-gradient(0deg,rgba(25,30,35,.72),rgba(25,30,35,0));color:#fff}
.player__ui b{display:block;font:400 22px/1.2 var(--f-disp)}
.player__ui span{font-size:13.5px;color:rgba(255,255,255,.82)}
.chap{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;margin-top:14px}
.chap button{display:grid;gap:4px;padding:10px;border-radius:var(--r-m);text-align:left;background:rgba(255,255,255,.08);color:var(--on-studio-2);font-size:12.5px;line-height:1.3;transition:background-color .2s}
.chap button b{font-weight:500;color:var(--on-studio);font-size:13px}
.chap button .st{font:400 12px/1 var(--f-mono);color:var(--on-studio-3)}
.chap button:hover{background:rgba(255,255,255,.14)}
.chap button.is-cur{background:#fff;color:var(--ink-3)}
.chap button.is-cur b{color:var(--ink)}
.fgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,26px)}
.fcard{display:grid;gap:12px;text-align:left}
.fcard.is-hidden{display:none}
.fcard__img{position:relative;aspect-ratio:16/9;border-radius:var(--r-l);overflow:hidden;background:var(--pearl)}
.fcard__img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.fcard:hover .fcard__img img{transform:scale(1.03)}
.fcard__st{position:absolute;left:12px;top:12px;padding:5px 10px;border-radius:999px;background:rgba(250,249,246,.86);font-size:12px;color:var(--ink-2)}
.fcard__dur{position:absolute;right:12px;bottom:12px;padding:4px 9px;border-radius:999px;background:rgba(20,24,28,.6);color:#fff;font:400 12px/1.2 var(--f-mono)}
.fcard b{display:block;font-weight:500;font-size:16.5px;line-height:1.3}
.fcard span.l{font-size:14px;color:var(--ink-3)}
.ffilters{display:flex;flex-wrap:wrap;gap:8px}
.ruleband{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:center;padding:clamp(24px,3vw,44px);border-radius:var(--r-xl);background:#fff;box-shadow:0 0 0 1px var(--line-3)}
.ruleband img{width:clamp(88px,9vw,132px);height:auto;aspect-ratio:1;border-radius:20px}

/* =================================================================== INSIGHTS */
.feat{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,3.4vw,60px);align-items:center}
.feat .ph{aspect-ratio:16/10.5;border-radius:var(--r-xl)}
.feat__c{display:grid;gap:18px}
.feat__c h2{font:400 clamp(26px,2.4vw,38px)/1.18 var(--f-disp);letter-spacing:-.016em}
.topics7{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.4vw,18px)}
.topic{position:relative;display:grid;align-content:end;gap:4px;min-height:220px;padding:16px 18px;border-radius:var(--r-l);overflow:hidden;text-align:left;isolation:isolate;color:var(--ink)}
.topic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .7s var(--ease)}
.topic::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(248,247,243,.95) 0%,rgba(248,247,243,.6) 40%,rgba(248,247,243,0) 75%)}
.topic b{font-weight:500;font-size:16px;line-height:1.3}
.topic span{font-size:13px;color:var(--ink-2)}
.topic i{font:normal 400 12px/1 var(--f-mono);color:var(--ink-3)}
.topic:hover img{transform:scale(1.04)}
.topic[aria-pressed=true]{box-shadow:0 0 0 2px var(--cobalt)}
.topic--first{grid-column:span 2}
.lib__bar{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}
.inp,.sel{width:100%;min-height:46px;padding:0 14px;border-radius:var(--r-m);border:1px solid var(--line-2);background:#fff;font-size:15px;color:var(--ink)}
.inp:focus,.sel:focus{outline:2px solid var(--cobalt);outline-offset:1px;border-color:transparent}
textarea.inp{padding:12px 14px;min-height:110px;resize:vertical}
.field-s{position:relative;display:block}
.field-s svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--ink-3);pointer-events:none}
.field-s .inp{padding-left:42px}
.lib__chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.lib__info{display:flex;align-items:center;gap:12px;font-size:13.5px;color:var(--ink-3);margin-bottom:6px;min-height:32px}
.lib{display:grid}
.lrow{border-top:1px solid var(--line-3)}
.lrow.is-hidden{display:none}
.lrow a{display:grid;grid-template-columns:150px minmax(0,1fr) 220px 20px;gap:18px;align-items:center;padding:16px 4px;transition:background-color .2s}
.lrow a:hover{background:rgba(255,255,255,.66)}
.lrow time{font:400 13px/1.3 var(--f-mono);color:var(--ink-3)}
.lrow b{font-weight:500;font-size:15.5px;line-height:1.4}
.lrow .t{font-size:13px;color:var(--ink-3)}
.lrow svg{width:15px;height:15px;color:var(--ink-4)}
.badge{display:inline-flex;margin-left:8px;padding:2px 8px;border-radius:999px;background:var(--pearl);font-size:12px;color:var(--ink-3);vertical-align:2px}
.empty{display:none;gap:12px;justify-items:start;padding:24px 4px}
.empty.is-on{display:grid}
.lmore{display:flex;justify-content:center;margin-top:20px}
.follow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
/* article */
.ahead{display:grid;gap:16px;max-width:880px}
.ahead h1{font:400 clamp(30px,3.4vw,50px)/1.14 var(--f-disp);letter-spacing:-.02em}
.crumbs{display:flex;gap:8px;font-size:13.5px;color:var(--ink-3)}
.acover{margin-top:clamp(24px,3vw,40px);border-radius:var(--r-xl);overflow:hidden;aspect-ratio:2.2/1;position:relative;background:var(--pearl)}
.acover img{width:100%;height:100%;object-fit:cover}
.abody{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(24px,4vw,64px);margin-top:clamp(28px,3.4vw,48px)}
.readbox{display:grid;gap:16px;padding:clamp(20px,2.4vw,30px);border-radius:var(--r-l);background:#fff;box-shadow:0 0 0 1px var(--line-3)}
.readbox p{font-size:16.5px;color:var(--ink-2)}
.rel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.relc{display:grid;gap:6px;font-size:13.5px}
.relc .im{aspect-ratio:16/10;border-radius:var(--r-m);overflow:hidden;background:var(--pearl)}
.relc img{width:100%;height:100%;object-fit:cover}
.relc b{font-weight:500;font-size:14.5px}
.relc span{color:var(--ink-3)}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pn a{display:grid;gap:4px;padding:14px 16px;border-radius:var(--r-m);background:rgba(255,255,255,.6);box-shadow:0 0 0 1px var(--line-3);font-size:13px;color:var(--ink-3)}
.pn a b{color:var(--ink);font-weight:500;font-size:14.5px}
.pn a:last-child{text-align:right}
.aside .panel{position:sticky;top:calc(var(--hdr) + 20px);display:grid;gap:16px;padding:20px;border-radius:var(--r-l);background:rgba(255,255,255,.6);box-shadow:0 0 0 1px var(--line-3)}
.aside dl{display:grid;gap:10px;font-size:14px}
.aside dt{color:var(--ink-3);font-size:12.5px}

/* =================================================================== OEM & SOURCING */
.cmap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(24px,4vw,72px);align-items:center}
.cmap__svg svg{width:100%;height:auto;overflow:visible}
.cmap .ring{fill:none;stroke:var(--line-2);stroke-dasharray:2 6}
.cmap .core{fill:#fff;stroke:rgba(35,80,216,.35)}
.cmap .nd circle{fill:#fff;stroke:var(--line-2)}
.cmap .nd--a circle{fill:var(--cobalt-tint);stroke:rgba(35,80,216,.35)}
.cmap .nd--b circle{fill:var(--celadon-l);stroke:rgba(127,165,149,.55)}
.cmap .nd--c circle{fill:var(--champ-l);stroke:rgba(178,155,114,.55)}
.cmap text{font-family:var(--f-text);fill:var(--ink)}
.cmap .t1{font-size:17px;font-weight:500}
.cmap .t2{font-size:13px;fill:var(--ink-3)}
.cmap .tc{font-size:16px;font-weight:500}
.cmap .lk{stroke:var(--steel);stroke-width:1}
.scope{display:grid;gap:18px}
.scope p{font-size:16px;color:var(--ink-2)}
.nm{display:grid;gap:0;border-radius:var(--r-xl);background:rgba(255,255,255,.62);box-shadow:0 0 0 1px var(--line-3);overflow:hidden}
.nm__row{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1.2fr) 40px minmax(0,1.3fr);gap:14px;align-items:center;padding:20px clamp(16px,2.2vw,30px);border-top:1px solid var(--line-3)}
.nm__row:first-child{border-top:0}
.nm__row b{font-weight:500;font-size:16px}
.nm__row .detail{font-size:13px}
.nm__arr{color:var(--champ);display:grid;place-items:center}
.nm__arr svg{width:20px;height:20px}
.nm__c{display:flex;flex-wrap:wrap;gap:6px}
.nm__c a{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border-radius:999px;background:var(--pearl);font-size:13px}
.nm__c a.m{font-family:var(--f-mono);background:var(--cobalt-tint);color:var(--cobalt-2)}
.nm__h{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1.2fr) 40px minmax(0,1.3fr);gap:14px;padding:14px clamp(16px,2.2vw,30px);font-size:12.5px;color:var(--ink-3);background:rgba(238,240,239,.6)}
.wb{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(24px,3.4vw,60px);align-items:center}
.wb__img{aspect-ratio:16/10;border-radius:var(--r-xl)}
.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 22px}
.checks li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:12px 0;border-top:1px solid var(--line-3)}
.checks li svg{width:18px;height:18px;color:var(--celadon);margin-top:2px}
.checks b{display:block;font-weight:500;font-size:15px}
.checks span{font-size:13.5px;color:var(--ink-3)}
.samples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.smp{position:relative;display:grid;gap:14px;align-content:start;padding:clamp(20px,2.2vw,28px);border-radius:var(--r-l);background:#fff;box-shadow:0 0 0 1px var(--line-3),0 30px 50px -40px rgba(19,24,29,.35)}
.smp::after{content:"";position:absolute;inset:auto 18px -8px 18px;height:8px;border-radius:0 0 12px 12px;background:rgba(255,255,255,.7);box-shadow:0 0 0 1px var(--line-3)}
.smp__tag{justify-self:start;padding:4px 10px;border-radius:999px;background:var(--champ-l);font-size:12px;color:#6E5A35}
.smp h3{font:500 18px/1.3 var(--f-text)}
.smp p{font-size:14px;color:var(--ink-3)}
.smp ul{display:grid;gap:0}
.smp li{display:flex;gap:10px;align-items:center;padding:8px 0;border-top:1px dashed var(--line);font-size:14px}
.smp li::before{content:"";width:14px;height:14px;border-radius:3px;border:1.5px solid var(--steel);flex:none}
.procv{position:relative;border-radius:var(--r-xl);overflow:hidden;background:var(--pearl);isolation:isolate}
.procv img{width:100%;aspect-ratio:2.4/1;object-fit:cover}
.procv::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(246,244,239,.95) 0%,rgba(246,244,239,.75) 34%,rgba(246,244,239,0) 70%)}
.procv .steps{position:absolute;left:clamp(16px,2.6vw,40px);right:clamp(16px,2.6vw,40px);bottom:clamp(18px,2.6vw,40px);z-index:2}
.tasks{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:auto auto;gap:clamp(10px,1.4vw,18px)}
.tasks a{position:relative;border-radius:var(--r-l);overflow:hidden;isolation:isolate;min-height:200px;display:grid;align-content:end;padding:14px 16px;background:var(--pearl)}
.tasks a:first-child{grid-row:span 2;min-height:420px}
.tasks img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .7s var(--ease)}
.tasks a::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(248,247,243,.92),rgba(248,247,243,0) 50%)}
.tasks b{font-weight:500;font-size:16px}
.tasks span{font-size:13.5px;color:var(--ink-2)}
.tasks a:hover img{transform:scale(1.03)}
.faqs{display:grid}
.faq{border-top:1px solid var(--line-3)}
.faq.is-hidden{display:none}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 4px;cursor:pointer;list-style:none;font-weight:500;font-size:16.5px}
.faq summary::-webkit-details-marker{display:none}
.faq summary svg{width:18px;height:18px;flex:none;color:var(--ink-3);transition:transform .25s}
.faq[open] summary svg{transform:rotate(45deg)}
.faq__a{padding:0 4px 20px;color:var(--ink-2);font-size:15.5px;max-width:70ch}
.faq.is-flash{background:var(--cobalt-tint);transition:background-color 1.2s}
.contactc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.contactc a{display:grid;gap:8px;padding:clamp(20px,2.4vw,32px);border-radius:var(--r-l);background:rgba(255,255,255,.66);box-shadow:0 0 0 1px var(--line-3);transition:background-color .2s,box-shadow .2s}
.contactc a:hover{background:#fff;box-shadow:var(--shadow)}
.contactc b{font:400 22px/1.2 var(--f-disp)}
.contactc span{color:var(--ink-3);font-size:14.5px}

/* =================================================================== SUPPORT */
.sup__search{max-width:640px;margin-top:8px}
.sup__search .inp{min-height:56px;border-radius:999px;font-size:16px;box-shadow:var(--shadow);border-color:transparent}
.mods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.mod{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;align-items:start;padding:clamp(20px,2.2vw,28px);border-radius:var(--r-l);background:rgba(255,255,255,.66);box-shadow:0 0 0 1px var(--line-3);transition:background-color .2s,box-shadow .2s}
.mod:hover{background:#fff;box-shadow:var(--shadow)}
.mod i{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--glacier);color:var(--bluegrey)}
.mod i svg{width:22px;height:22px}
.mod b{display:block;font-weight:500;font-size:17px;margin-bottom:4px}
.mod span{font-size:14px;color:var(--ink-3)}
.faqbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.bp{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.4vw,18px)}
.bpc{display:grid;gap:10px;align-content:start;padding:14px;border-radius:var(--r-l);background:rgba(255,255,255,.6);box-shadow:0 0 0 1px var(--line-3)}
.bpc img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-m);background:var(--pearl)}
.bpc b{font-weight:500;font-size:15px}
.bpc ul{display:grid;gap:4px;font-size:13.5px;color:var(--ink-2)}
.bpc li{padding-left:16px;position:relative}
.bpc li::before{content:"";position:absolute;left:2px;top:9px;width:5px;height:5px;border-radius:50%;background:var(--celadon)}
.bs{display:flex;flex-wrap:wrap;gap:8px}
.bs a{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:999px;background:rgba(255,255,255,.66);box-shadow:0 0 0 1px var(--line-3);font-size:14px}
.bs img{width:34px;height:34px;border-radius:50%;object-fit:cover}
.mailcard{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;padding:18px 20px;border-radius:var(--r-l);background:#fff;box-shadow:0 0 0 1px var(--line-3)}
.mailcard b{font:400 20px/1.2 var(--f-mono);letter-spacing:-.01em;overflow-wrap:anywhere}

/* =================================================================== PROJECT BRIEF / RFQ (V1.6.2 hooks) */
.pick8{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}
.pick8 .scn{aspect-ratio:3/4}
.pick8 .scn__t{font-size:13px;padding:10px 12px}
.trust{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px;color:var(--ink-2)}
.trust span{display:inline-flex;align-items:center;gap:8px}
.trust svg{width:16px;height:16px;color:var(--celadon)}
.pbsteps{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.pbsteps button{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:0 16px;border-radius:999px;background:rgba(255,255,255,.6);box-shadow:0 0 0 1px var(--line);font-size:14px;color:var(--ink-3)}
.pbsteps button i{width:8px;height:8px;border-radius:50%;background:var(--steel)}
.pbsteps button.is-cur{background:var(--ink);color:#fff;box-shadow:none}
.pbsteps button.is-cur i{background:#fff}
.pbsteps button.is-done{color:var(--ink)}
.pbsteps button.is-done i{background:var(--celadon)}
.pbsteps button:disabled{opacity:.6;cursor:default}
.pb{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(20px,3vw,48px);align-items:start}
.pbpanel{display:grid;gap:26px;padding:clamp(20px,2.6vw,36px);border-radius:var(--r-xl);background:rgba(255,255,255,.72);box-shadow:0 0 0 1px var(--line-3)}
.pbpanel h2{font:400 26px/1.2 var(--f-disp)}
fieldset.fs{border:0;margin:0;padding:0;display:grid;gap:12px;min-width:0}
fieldset.fs legend{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;padding:0;margin-bottom:12px;font-weight:600;font-size:15.5px}
fieldset.fs legend span{font-size:12.5px;font-weight:400;color:var(--ink-3)}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{position:relative}
.opt input{position:absolute;opacity:0;width:1px;height:1px}
.opt span{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 15px;border-radius:999px;border:1px solid var(--line-2);background:#fff;font-size:14.5px;color:var(--ink-2);cursor:pointer;transition:all .2s var(--ease)}
.opt span::before{content:"";width:14px;height:14px;border-radius:50%;border:1.5px solid var(--line-2);flex:none;transition:all .2s;background:#fff}
.opt input[type=checkbox]+span::before{border-radius:3px}
.opt input:hover+span{border-color:var(--ink-3);color:var(--ink)}
.opt input:checked+span{background:var(--cobalt-tint);border-color:var(--cobalt);color:var(--cobalt-2);font-weight:500}
.opt input:checked+span::before{border-color:var(--cobalt);background:var(--cobalt);box-shadow:inset 0 0 0 2.5px #fff}
.opt input:focus-visible+span{outline:2px solid var(--cobalt);outline-offset:2px}
.fs.is-err .opt span{border-color:#E4A3A3}
.errmsg{display:none;font-size:13.5px;color:#B42318;align-items:center;gap:6px}
.errmsg svg{width:15px;height:15px}
.fs.is-err .errmsg,.fld.is-err .errmsg{display:flex}
.fgrid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}
.fld{display:grid;gap:8px}
.fld label{font-weight:600;font-size:14.5px}
.fld label span{font-weight:400;color:var(--ink-3);font-size:12.5px;margin-left:6px}
.fld.is-err .inp{border-color:#D14343}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--ink-2);cursor:pointer}
.consent input{width:18px;height:18px;margin-top:3px;accent-color:var(--cobalt);flex:none}
.drop{display:grid;justify-items:center;gap:8px;padding:26px 20px;border-radius:var(--r-m);border:1.5px dashed var(--line-2);background:var(--ivory-2);text-align:center;cursor:pointer}
.drop:hover,.drop.is-over{border-color:var(--cobalt);background:var(--cobalt-tint)}
.drop svg{width:26px;height:26px;color:var(--cobalt)}
.drop small{font-size:12.5px;color:var(--ink-3)}
.files{display:grid;gap:6px}
.files li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-s);background:var(--pearl);font-size:14px}
.files li span{color:var(--ink-3);font-size:12.5px;margin-left:8px}
.files button{color:var(--cobalt-2);font-size:13px}
.errsum{display:none;padding:14px 16px;border-radius:var(--r-m);background:#FEF3F2;color:#912018;font-size:14px;gap:10px;align-items:center}
.errsum.is-on{display:flex}
.errsum svg{width:18px;height:18px;flex:none}
.pbnav{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.pbinfo{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--ink-3)}
.pbinfo svg{width:17px;height:17px;flex:none;margin-top:2px;color:var(--bluegrey)}
.pbsum{position:sticky;top:calc(var(--hdr) + 20px);display:grid;gap:16px;padding:24px;border-radius:var(--r-xl);background:rgba(252,251,249,.86);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 0 0 1px var(--line-3),var(--shadow)}
.pbsum__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.pbsum__head b{font:400 21px/1.2 var(--f-disp)}
.pbsum__head span{font:400 12.5px/1 var(--f-mono);color:var(--ink-3)}
.pbbar{height:3px;border-radius:3px;background:var(--line-3);overflow:hidden}
.pbbar i{display:block;height:100%;width:33%;background:var(--cobalt);transition:width .4s var(--ease)}
.sumlist{display:grid;gap:0}
.sumlist div{display:grid;gap:4px;padding:9px 0;border-top:1px solid var(--line-3)}
.sumlist dt{font-size:12.5px;color:var(--ink-3)}
.sumlist dd{font-size:14px}
.sumlist dd.is-empty{color:var(--ink-4)}
.pbsum__next{font-size:13.5px;color:var(--ink-2);display:flex;gap:10px;align-items:flex-start}
.pbsum__next svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--cobalt)}
.pbmob{display:none}
.pbok{display:none;gap:24px;padding:clamp(28px,4vw,48px);border-radius:var(--r-xl);background:#fff;box-shadow:0 0 0 1px var(--line-3)}
.pbok.is-on{display:grid}
.okmark{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--celadon-l);color:#3F6C5A}
.okmark svg{width:26px;height:26px}
.okref{font:400 14px/1 var(--f-mono);color:var(--ink-3)}
.oksteps{display:grid;gap:8px;counter-reset:ok}
.oksteps li{display:grid;grid-template-columns:28px 1fr;gap:10px;font-size:15px;color:var(--ink-2)}
.oksteps li::before{counter-increment:ok;content:counter(ok);width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--pearl);font-size:12.5px;color:var(--ink-3)}
.prevnote{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border-radius:var(--r-m);background:#FFF8E8;color:#7A5A12;font-size:14px}
.prevnote svg{width:18px;height:18px;flex:none;margin-top:1px}

/* =================================================================== PRIVACY */
.legal{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(24px,4vw,64px);align-items:start}
.legal section{display:grid;gap:8px;padding:18px 0;border-top:1px solid var(--line-3)}
.legal h2{font:500 18px/1.3 var(--f-text)}
.legal p{color:var(--ink-2)}
.entity{display:grid;gap:12px;padding:22px;border-radius:var(--r-l);background:#fff;box-shadow:0 0 0 1px var(--line-3)}
.entity dt{font-size:12.5px;color:var(--ink-3)}
.entity dd{font-size:15px}

/* =================================================================== FOOTER (light) */
.ftr{background:linear-gradient(180deg,var(--from,#EEF1F1) 0%,#E7ECEE 100%);color:var(--ink-2);padding-top:clamp(48px,6vw,88px);padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}
.ftr__cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;padding-bottom:clamp(30px,3.6vw,48px)}
.ftr__cta b{font:300 clamp(26px,2.6vw,38px)/1.15 var(--f-disp);color:var(--ink);letter-spacing:-.02em}
.ftr__main{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,3fr);gap:clamp(24px,4vw,64px);padding-block:clamp(26px,3vw,40px);border-top:1px solid var(--line)}
.ftr__brand{display:grid;gap:14px;align-content:start}
.ftr__brand p{font-size:14px;color:var(--ink-3);max-width:34ch}
.ftr__cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.fcol summary{list-style:none;cursor:default}
.fcol summary::-webkit-details-marker{display:none}
.fcol summary svg{display:none}
.fcol h3{font:500 13.5px/1.3 var(--f-text);color:var(--ink);margin-bottom:10px}
.fcol ul{display:grid;gap:7px}
.fcol a{font-size:14px;color:var(--ink-3)}
.fcol a:hover{color:var(--ink)}
.ftr__legal{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,3fr);gap:clamp(24px,4vw,64px);padding-block:22px;border-top:1px solid var(--line)}
.ftr__legal h3{font:500 13.5px/1.3 var(--f-text);color:var(--ink)}
.ftr__legal p{font-size:12.5px;color:var(--ink-3);margin-top:6px;max-width:30ch}
.lent{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,2fr) minmax(0,1fr);gap:14px 28px}
.lent dt{font-size:12.5px;color:var(--ink-3)}
.lent dd{font-size:14px;color:var(--ink);margin-top:2px;overflow-wrap:anywhere}
.ftr__base{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding-top:20px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3)}
.ftr__base a:hover{color:var(--ink)}
.ftr__langs{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.ftr__langs svg{width:14px;height:14px}
.ftr__langs a{padding:2px 2px}
.ftr__langs a[aria-current=true]{color:var(--ink);font-weight:500}

/* =================================================================== motion */
.rv{opacity:0;transform:translateY(14px);transition:opacity .8s var(--ease),transform .9s var(--ease)}
.rv.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}.rv{opacity:1;transform:none}}

/* =================================================================== responsive */
@media (max-width:1280px){
  .nav__a{padding:0 8px;font-size:13.5px}
  .hdr__in{gap:16px}
  .room{grid-template-columns:minmax(220px,.75fr) minmax(0,1.5fr)}
  .room .info{grid-column:1/-1}
  .catnav{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pick8{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pick8 .scn{aspect-ratio:4/3}
}
@media (max-width:1100px){
  .nav,.hdr__r .lang-btn--d{display:none}
  .menu-btn{display:grid}
  .hdr__r{margin-left:auto}
  .mega{display:none}
}
@media (max-width:1024px){
  .hw,.srh,.pathv,.insh,.feat,.cmap,.wb,.phB,.phC,.scB,.legal,.abody{grid-template-columns:minmax(0,1fr)}
  .scB--r .sc__hero{order:0}
  .head--split,.sc__head{grid-template-columns:minmax(0,1fr)}
  .tiles,.robots8,.bp,.topics7{grid-template-columns:repeat(2,minmax(0,1fr))}
  .topic--first{grid-column:span 2}
  .ed__row{grid-template-columns:1fr 1fr}
  .ed__tile:first-child{grid-column:1/-1}
  .ed__tile:first-child .ph{aspect-ratio:16/9;height:auto;min-height:0}
  .macros{grid-template-columns:1fr 1fr}
  .macro:first-child{grid-column:1/-1}
  .macro:first-child .ph{aspect-ratio:16/9;height:auto;min-height:0}
  .chain{grid-template-columns:minmax(0,1fr)}
  .filmband{grid-template-columns:minmax(0,1fr)}
  .filmband__col{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .filmband__col .poster{aspect-ratio:16/10}
  .steps--h{grid-template-columns:minmax(0,1fr);gap:0}
  .steps--h li{grid-template-columns:44px minmax(0,1fr);padding:14px 0}
  .steps--h li:not(:last-child)::after{left:17.5px;right:auto;top:50px;bottom:-14px;width:1px;height:auto;background:linear-gradient(var(--champ),rgba(178,155,114,.2))}
  .procv img{aspect-ratio:16/9}
  .procv::after{background:linear-gradient(0deg,rgba(246,244,239,1) 0%,rgba(246,244,239,.6) 50%,rgba(246,244,239,0) 80%)}
  .procv .steps{position:relative;left:auto;right:auto;bottom:auto;padding:0 20px 10px;margin-top:-80px}
  .sc__body{grid-template-columns:1fr 1fr}
  .sc__det{grid-column:1/-1}
  .sc--D .sc__grid{grid-template-columns:minmax(0,1fr)}
  .sc--D .sc__hero{min-height:0;aspect-ratio:16/9;height:auto}
  .fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chap{grid-template-columns:repeat(4,minmax(0,1fr))}
  .samples,.proj,.mods{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tasks{grid-template-columns:1fr 1fr}
  .tasks a:first-child{grid-row:auto;grid-column:1/-1;min-height:320px}
  .ftr__main,.ftr__legal{grid-template-columns:minmax(0,1fr)}
  .ftr__cols{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pb{grid-template-columns:minmax(0,1fr)}
  .pbsum{position:relative;top:auto}
  .lrow a{grid-template-columns:120px minmax(0,1fr) 20px}
  .lrow .t{display:none}
  .lib__bar{grid-template-columns:1fr 1fr}
  .lib__bar .field-s{grid-column:1/-1}
  .nm__row,.nm__h{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}
  .nm__arr{display:none}
  .nm__row > :last-child{grid-column:1/-1}
  .nm__h > :nth-child(n+4){display:none}
}
@media (max-width:720px){
  :root{--hdr:60px}
  .sec{padding-block:clamp(60px,15vw,84px)}
  .sec--studio{padding-block:130px}
  .brand__w span{display:none}
  .hdr__r .btn{min-height:38px;padding:0 14px}
  /* hero: phone gets its own 4:5 frame with the whole robot, then the text on ivory */
  .hero{min-height:0;display:block;background:var(--ivory)}
  .hero__media{position:relative;inset:auto;z-index:0;height:auto;padding-top:var(--hdr)}
  .hero__media img{aspect-ratio:4/4.6;height:auto;object-position:50% 50%}
  .hero__media::after{background:linear-gradient(0deg,rgba(246,244,239,1) 0%,rgba(246,244,239,0) 22%)}
  .hero__c{padding-top:0;margin-top:-34px;position:relative;gap:16px}
  .hero__low{flex-direction:column;align-items:stretch;margin-top:8px}
  .qcats{justify-content:flex-start}
  .hero__cap{top:calc(var(--hdr) + 12px)}
  .lead--d{display:none}
  .lead--m{display:block}
  .phA{min-height:0;display:block}
  .phA__media{position:relative;z-index:0;padding-top:var(--hdr)}
  .phA__media img{aspect-ratio:4/4.4;height:auto}
  .phA__media::after{background:linear-gradient(0deg,rgba(246,244,239,1) 0%,rgba(246,244,239,0) 24%)}
  .phA__c{padding-top:0;margin-top:-26px;position:relative}
  .tiles,.robots8,.bp{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .tiles{gap:10px}
  .pt__b{padding:12px 12px 14px}
  .pt__b h3{font-size:14.5px}
  .pt .kv{display:none}
  .price b{font-size:17px}
  .ed__big{aspect-ratio:4/4.4}
  .ed__over{left:12px;right:12px;bottom:12px;max-width:none;padding:14px 16px}
  .ed__over b{font-size:20px}
  .ed__row{grid-template-columns:minmax(0,1fr)}
  .macros{grid-template-columns:minmax(0,1fr)}
  .filmband__col{grid-template-columns:minmax(0,1fr)}
  .scenes8{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scn__t{font-size:14px;padding:12px}
  .minirail{grid-template-columns:repeat(4,minmax(0,1fr))}
  .minirail .show__item{grid-template-columns:1fr;justify-items:center;text-align:center;padding:6px 4px}
  .minirail .show__t b{font-size:12px}
  .catnav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bench{grid-template-columns:minmax(0,1fr)}
  .bench--r .bench__g{order:0}
  .bench__g{grid-template-columns:minmax(0,1fr)}
  .bench__side{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .bench__side .bench__mac{aspect-ratio:4/3}
  .proj,.samples,.mods,.contactc{grid-template-columns:minmax(0,1fr)}
  .guides{grid-template-columns:minmax(0,1fr)}
  .guide{border-right:0}
  .guide:nth-last-child(-n+3){border-bottom:1px solid var(--line-3)}
  .guide:last-child{border-bottom:0}
  .ctaband,.follow{grid-template-columns:minmax(0,1fr)}
  .sc--A .sc__hero,.sc--C .sc__hero{aspect-ratio:4/4.2}
  .scB .sc__hero{aspect-ratio:4/4.2}
  .sc__body{grid-template-columns:minmax(0,1fr)}
  .overcard{position:relative;left:auto;top:auto;max-width:none;margin:-48px 12px 0;z-index:2}
  .room{grid-template-columns:minmax(0,1fr)}
  .room .rail8{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;order:2}
  .room .show__item{grid-template-columns:1fr;justify-items:center;text-align:center;padding:6px 2px}
  .room .show__th{width:56px;height:56px}
  .room .show__t span{display:none}
  .room .show__t b{font-size:12px;line-height:1.2}
  .room__stage{order:1;padding:0}
  .room .info{order:3}
  .vbar{flex-wrap:wrap}
  .vbtn span{display:none}
  .fgrid{grid-template-columns:minmax(0,1fr)}
  .chap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .player{border-radius:var(--r-l);aspect-ratio:4/5}
  .player__ui b{font-size:18px}
  .board{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .ruleband{grid-template-columns:minmax(0,1fr)}
  .topics7{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .topic{min-height:170px;padding:12px 14px}
  .topic span{display:none}
  .lrow a{grid-template-columns:minmax(0,1fr) 16px;gap:4px 10px}
  .lrow time{grid-column:1/-1}
  .lib__bar{grid-template-columns:minmax(0,1fr)}
  .rel{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .checks{grid-template-columns:minmax(0,1fr)}
  .tasks{grid-template-columns:minmax(0,1fr)}
  .tasks a:first-child{min-height:280px}
  .pick8{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fgrid2{grid-template-columns:minmax(0,1fr)}
  .pbsum{display:none}
  .pbsum.is-sheet{display:grid;position:fixed;inset:auto 0 0 0;z-index:250;max-height:82vh;overflow:auto;border-radius:var(--r-xl) var(--r-xl) 0 0;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}
  .pbmob{display:flex;position:sticky;bottom:0;z-index:60;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px var(--gut) calc(12px + env(safe-area-inset-bottom,0px));background:rgba(252,251,249,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 -1px 0 var(--line-3);text-align:left;font-size:13.5px}
  .pbmob svg{width:18px;height:18px;transform:rotate(180deg)}
  .ftr__cols{grid-template-columns:minmax(0,1fr);gap:0}
  .fcol{border-top:1px solid var(--line-3)}
  .fcol summary{display:flex;justify-content:space-between;align-items:center;min-height:52px;cursor:pointer}
  .fcol summary svg{display:block;width:16px;height:16px;transition:transform .25s}
  .fcol[open] summary svg{transform:rotate(45deg)}
  .fcol h3{margin:0}
  .fcol ul{padding-bottom:14px}
  .fcol a{display:inline-block;padding:5px 0;font-size:15px}
  .lent{grid-template-columns:minmax(0,1fr)}
  .ftr__cta .btn{width:100%}
  .nm__row{grid-template-columns:minmax(0,1fr)}
  .nm__h{display:none}
  .langbar{left:16px;right:16px;transform:none;border-radius:var(--r-l);flex-wrap:wrap}
}
@media (max-width:380px){
  .hdr__r .btn{display:none}
  .tiles,.robots8,.bp{grid-template-columns:minmax(0,1fr)}
  .scenes8,.pick8,.topics7{grid-template-columns:minmax(0,1fr)}
  .topic--first{grid-column:auto}
  .minirail .show__t b{display:none}
  .room .show__th{width:48px;height:48px}
}

/* ===== v33.css ===== */
/* =====================================================================
   TANNAI ROBOTICS · V3.3 "Luminous Precision" layer (loads after v32.css)
   Warm pearl / porcelain / mist steel / titanium, deep graphite type,
   TANNAI blue for action, cool cyan for precision hints. Rhythm: two light
   chapters, then one mid-tone material or full-bleed scene chapter.
   No navy fields, no black floods, no tick rules, no index numbers.
   ===================================================================== */
:root{
  --pearl-w:#F5F3EE; --porcelain:#FBFCFD; --mist:#E8EEF3; --mist-2:#DCE5EC; --titan:#C8D3DB;
  --ti-1:#5B6874; --ti-2:#414D59; --ti-3:#35404B; --on-ti:#F4F7F9; --on-ti-2:#D7DFE5; --on-ti-3:#B4C0C9;
  --graphite:#152335; --ink:#152335; --ink-2:#2B394A; --ink-3:#4A5868; --ink-4:#6C7987;
  --tblue:#246BDA; --tblue-2:#1B55B3; --tblue-tint:#E6EEFB; --cyan:#72C5DA; --cyan-d:#2C8FA8;
  --cobalt:#246BDA; --cobalt-2:#1B55B3; --cobalt-tint:#E6EEFB;
  --line:rgba(21,35,53,.12); --line-2:rgba(21,35,53,.2);
  --shadow-p:0 1px 2px rgba(21,35,53,.06),0 24px 60px -30px rgba(21,35,53,.35);
}
body{background:var(--pearl-w);color:var(--ink);font-size:16.5px}
.sub{color:var(--ink-2);font-size:clamp(16.5px,1.2vw,19px)}
.small,.note{color:var(--ink-3)}
.tA{font-size:clamp(48px,6.6vw,112px)}
.tB{font-size:clamp(38px,4.6vw,72px)}
.t-em{color:var(--tblue);font-style:normal}
.btn--p{box-shadow:0 12px 28px -14px rgba(36,107,218,.75)}
.btn--ti{background:rgba(255,255,255,.1);color:var(--on-ti);border:1px solid rgba(255,255,255,.28)}
.btn--ti:hover{background:rgba(255,255,255,.18)}
.eyebrowless{margin:0}

/* ---------- chapter bands ---------- */
.band-ti{position:relative;color:var(--on-ti);background:linear-gradient(180deg,var(--from,var(--pearl-w)) 0,var(--ti-1) clamp(90px,9vw,150px),var(--ti-2) 62%,var(--ti-3) calc(100% - clamp(90px,9vw,150px)),var(--to,var(--mist)) 100%);padding-block:clamp(130px,13vw,210px)}
.band-ti .sub,.band-ti p{color:var(--on-ti-2)}
.band-ti .note,.band-ti .small{color:var(--on-ti-3)}
.band-ti .tl{color:var(--on-ti)}
.band-ti .tl:hover{color:#fff}
.band-mist{background:linear-gradient(180deg,var(--from,var(--pearl-w)),var(--to,var(--mist)))}

/* ---------- flagship hero (OEM) ---------- */
.fx{position:relative;min-height:min(94svh,940px);display:grid;align-items:end;isolation:isolate;background:var(--ti-2);color:var(--ink)}
.fx__media{position:absolute;inset:0;z-index:-1}
.fx__media picture,.fx__media img{width:100%;height:100%}
.fx__media img{object-fit:cover;object-position:var(--op,60% 50%)}
.fx__media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(245,243,238,.78) 0%,rgba(245,243,238,.42) 27%,rgba(245,243,238,0) 46%),linear-gradient(0deg,rgba(245,243,238,.5) 0%,rgba(245,243,238,0) 20%)}
.fx--g .fx__media::after{background:linear-gradient(90deg,rgba(214,220,226,.86) 0%,rgba(214,220,226,.5) 30%,rgba(214,220,226,0) 54%),linear-gradient(0deg,rgba(214,220,226,.55) 0%,rgba(214,220,226,0) 24%)}
.fx__c{display:grid;gap:24px;padding-top:calc(var(--hdr) + 90px);padding-bottom:clamp(48px,6vw,96px)}
.fx__c .tA{max-width:9ch}
:lang(zh-CN) .fx__c .tA,:lang(ja) .fx__c .tA,:lang(ko) .fx__c .tA{max-width:none}
.fx__c .sub{max-width:40ch;color:var(--ink-2);font-size:clamp(17px,1.3vw,20px)}
.fx .hero__cap{top:calc(var(--hdr) + 18px);right:max(16px,env(safe-area-inset-right,0px),min(4vw,56px));left:auto;bottom:auto}

/* ---------- technology map ---------- */
.tmap__stage{position:relative;margin-top:clamp(36px,4vw,64px);border-radius:var(--r-xl);overflow:hidden;background:var(--ti-3);box-shadow:0 50px 120px -60px rgba(0,0,0,.6)}
.tmap__img{position:relative}
.tmap__img img{width:100%;aspect-ratio:2/1;object-fit:cover;object-position:50% 50%}
.tmap__svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.tmap__svg .ln{stroke:rgba(159,224,238,.8);stroke-width:1.4;fill:none;stroke-dasharray:4 6;animation:tflow 6s linear infinite}
.tmap__svg .ln.is-on{stroke:#9FE0EE;stroke-width:1.8;stroke-dasharray:none}
.tmap__svg .tr{stroke:rgba(244,247,249,.16);stroke-width:1;fill:none}
.tmap__svg .core{fill:none;stroke:rgba(159,224,238,.5);stroke-width:1.2}
.tmap__svg .core2{fill:none;stroke:rgba(244,247,249,.18);stroke-width:1;stroke-dasharray:2 5}
@keyframes tflow{to{stroke-dashoffset:-90}}
.tnode{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:6px 16px 6px 6px;border-radius:999px;background:rgba(53,64,75,.72);color:var(--on-ti);border:1px solid rgba(255,255,255,.22);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:500 14.5px/1.2 var(--f-text);white-space:nowrap;transition:background .25s,border-color .25s,transform .25s var(--ease)}
.tnode i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(114,197,218,.18);color:#AEE6F2}
.tnode i svg{width:18px;height:18px}
.tnode:hover{background:rgba(53,64,75,.88);border-color:rgba(159,224,238,.6)}
.tnode[aria-pressed=true]{background:#F4F7F9;color:var(--graphite);border-color:#fff}
.tnode[aria-pressed=true] i{background:var(--tblue);color:#fff}
.tmap__core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:500 12.5px/1 var(--f-text);color:var(--on-ti-2);padding:6px 10px;border-radius:999px;background:rgba(53,64,75,.55);pointer-events:none;display:none}
.tmap__read{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);margin-top:clamp(28px,3vw,44px);align-items:start}
.tread{min-height:120px}
.tread h3{font:400 clamp(24px,2.2vw,34px)/1.15 var(--f-disp);letter-spacing:-.015em;color:#fff}
.tread p{margin-top:12px;font-size:clamp(16px,1.15vw,18px);max-width:46ch}
.tread[hidden]{display:none}
.today{padding:24px 26px;border-radius:var(--r-l);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14)}
.today h3{font:500 15px/1.3 var(--f-text);color:#fff}
.today ul{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.today li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;font-size:15px;color:var(--on-ti-2)}
.today li svg{width:18px;height:18px;color:var(--cyan);margin-top:2px}
.today .note{margin-top:14px}

/* ---------- inside a selection ---------- */
.selx{display:grid;grid-template-columns:minmax(0,4.2fr) minmax(0,7.8fr);gap:clamp(24px,3.4vw,56px);margin-top:clamp(36px,4vw,60px);align-items:start}
.sel__tabs{display:grid;gap:8px;position:sticky;top:calc(var(--hdr) + 20px)}
.stab{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 14px;text-align:left;padding:16px 18px;border-radius:var(--r-m);border:1px solid transparent;transition:background .25s,border-color .25s}
.stab i{grid-row:span 2;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--mist);color:var(--ink-2)}
.stab i svg{width:20px;height:20px}
.stab b{font:500 17px/1.25 var(--f-text)}
.stab span{font-size:14.5px;color:var(--ink-3);line-height:1.5}
.stab:hover{background:rgba(255,255,255,.6)}
.stab[aria-selected=true]{background:var(--porcelain);border-color:var(--line);box-shadow:var(--shadow-p)}
.stab[aria-selected=true] i{background:var(--tblue);color:#fff}
.spanel{border-radius:var(--r-xl);background:var(--porcelain);box-shadow:var(--shadow-p);overflow:hidden}
.spanel[hidden]{display:none}
.spanel__vis{position:relative;background:linear-gradient(160deg,var(--mist),var(--mist-2));min-height:clamp(320px,30vw,460px);display:grid;place-items:center;padding:clamp(20px,2.6vw,40px)}
.spanel__vis>.ph{width:100%;aspect-ratio:16/9}
.spanel__b{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 28px;align-items:end;padding:clamp(22px,2.4vw,34px)}
.spanel__b p{font-size:16.5px;color:var(--ink-2);max-width:56ch}
.out{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:999px;background:var(--tblue-tint);color:var(--tblue-2);font:500 14px/1.2 var(--f-text);white-space:nowrap}
.out i{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--tblue);color:#fff}
.out i svg{width:14px;height:14px}
/* sample documents */
.doc{position:relative;width:min(100%,420px);aspect-ratio:1/1.3;background:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(21,35,53,.06),0 30px 60px -30px rgba(21,35,53,.45);padding:26px 26px 22px;display:flex;flex-direction:column;gap:12px;color:var(--ink)}
.doc__h{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.doc__h b{font:500 16px/1.25 var(--f-text)}
.doc__h img{width:28px;height:28px;border-radius:7px}
.doc__tag{position:absolute;top:18px;right:-10px;transform:rotate(6deg);padding:5px 12px;border-radius:6px;border:1.5px solid var(--cyan-d);color:var(--cyan-d);font:500 12px/1 var(--f-text);background:#fff}
.doc ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.doc li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:10px;align-items:center;font-size:13.5px;color:var(--ink-2)}
.doc li::before{content:"";width:14px;height:14px;border-radius:4px;border:1.5px solid var(--titan)}
.doc li.ok::before{background:var(--tblue);border-color:var(--tblue);box-shadow:inset 0 0 0 3px #fff}
.doc .lines{margin-top:auto;display:grid;gap:7px}
.doc .lines span{height:6px;border-radius:3px;background:var(--mist)}
.doc .lines span:nth-child(2){width:82%}.doc .lines span:nth-child(3){width:64%}
.doc--sm{width:min(100%,300px);padding:18px 18px 16px;gap:9px}
.doc--sm .doc__h b{font-size:14px}
.doc--sm li{font-size:12.5px}
/* published-figure comparison */
.pcmp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%}
.pcard{background:#fff;border-radius:var(--r-l);overflow:hidden;box-shadow:0 1px 2px rgba(21,35,53,.05)}
.pcard .ph{aspect-ratio:35/24;border-radius:0;background:#F3F5F7}
.pcard__b{padding:16px 18px 18px;display:grid;gap:10px}
.pcard__b .code{font:500 12.5px/1 var(--f-mono);color:var(--tblue-2)}
.pcard__b b{font:500 16px/1.3 var(--f-text)}
.pcard dl{margin:0;display:grid;gap:6px}
.pcard dl div{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;padding-top:6px;border-top:1px solid var(--line)}
.pcard dt{color:var(--ink-3)}.pcard dd{margin:0;font-weight:500;text-align:right}
.pcard .use{font-size:13.5px;color:var(--ink-2)}
/* interface diagram */
.ifd{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:stretch}
.ifd__mods{display:grid;gap:10px}
.ifm{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:center;padding:10px 14px 10px 10px;border-radius:var(--r-m);background:#fff}
.ifm img{width:52px;height:40px;object-fit:cover;border-radius:8px;background:var(--mist)}
.ifm b{display:block;font:500 13px/1.2 var(--f-mono);color:var(--ink)}
.ifm span{display:inline-flex;margin-top:4px;padding:3px 8px;border-radius:999px;background:var(--tblue-tint);color:var(--tblue-2);font-size:12px}
.ifm--host{background:rgba(255,255,255,.08)}
.ifm--host b{color:#fff}
.ifm--host span{background:rgba(114,197,218,.2);color:#CFF1F8}
.ifd__host{display:grid;align-content:center;gap:12px;padding:20px;border-radius:var(--r-l);background:var(--graphite);color:#fff;position:relative}
.ifd__host b{font:500 17px/1.2 var(--f-text)}
.ifd__host span{font-size:13.5px;color:#C9D3DC}
.ifd__host::before{content:"";position:absolute;left:-18px;top:50%;width:18px;height:2px;background:var(--tblue)}
.opens{grid-column:1/-1;display:grid;gap:8px;margin:0;padding:14px 16px;border-radius:var(--r-m);background:#FFF8EC;border:1px solid #F0DDB5;list-style:none}
.opens li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;font-size:13.5px;color:#5B4A28}
.opens li svg{width:16px;height:16px;margin-top:2px;color:#B7832A}
.opens b{font-size:13px;color:#5B4A28}
.acc{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px;width:100%;align-items:center}
.acc .ph{aspect-ratio:4/3}
.v1{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:20px;align-items:center;width:100%}
.v1 .doc{width:100%;max-width:380px;justify-self:end}
.v1 .ph{aspect-ratio:4/5;margin:0}

/* ---------- solution worlds ---------- */
.worlds{margin-top:clamp(36px,4vw,60px)}
.wtabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.wtab{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:5px 18px 5px 5px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.6);font:500 15px/1.2 var(--f-text);color:var(--ink-2)}
.wtab img{width:36px;height:36px;border-radius:50%;object-fit:cover}
.wtab[aria-selected=true]{background:var(--graphite);border-color:var(--graphite);color:#fff}
.world{position:relative;border-radius:var(--r-xl);overflow:hidden;isolation:isolate;min-height:clamp(460px,42vw,640px);display:grid;align-items:end}
.world[hidden]{display:none}
.world__img{position:absolute;inset:0;z-index:-1}
.world__img picture,.world__img img{width:100%;height:100%}
.world__img img{object-fit:cover}
.world__img::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(21,35,53,.55) 0%,rgba(21,35,53,0) 46%)}
.world__card{margin:clamp(16px,2vw,28px);max-width:560px;display:grid;gap:14px;padding:clamp(20px,2.2vw,30px);border-radius:var(--r-l);background:rgba(251,252,253,.9);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-p)}
.world__card h3{font:400 clamp(26px,2.4vw,38px)/1.08 var(--f-disp);letter-spacing:-.02em}
.world__card .lab{font:500 12.5px/1.2 var(--f-text);color:var(--ink-3)}
.world__card p{font-size:16px;color:var(--ink-2)}
.world .cap{left:auto;right:16px;top:16px;bottom:auto}

/* ---------- brief studio ---------- */
.studio{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,4vw,72px);margin-top:clamp(36px,4vw,60px);align-items:center}
.dstack{position:relative;height:clamp(460px,44vw,600px)}
.dstack .doc{position:absolute;width:min(68%,360px);left:var(--l);top:var(--t);transform:rotate(var(--r));transition:transform .45s var(--ease),z-index 0s;z-index:var(--z)}
.dstack .doc:hover,.dstack .doc:focus-within{transform:rotate(0) translateY(-10px);z-index:9}
.entries{display:grid;gap:14px}
.entry{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:6px 18px;align-items:center;padding:20px 22px;border-radius:var(--r-l);background:var(--porcelain);border:1px solid var(--line);transition:border-color .2s,box-shadow .25s,transform .25s var(--ease)}
.entry:hover{border-color:var(--tblue);box-shadow:var(--shadow-p);transform:translateY(-2px)}
.entry i{grid-row:span 2;display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--mist);color:var(--tblue-2)}
.entry i svg{width:24px;height:24px}
.entry b{font:500 18px/1.25 var(--f-text)}
.entry span{grid-column:2;font-size:15px;color:var(--ink-3)}
.entry em{grid-row:1/span 2;grid-column:3;font-style:normal;display:inline-flex;align-items:center;gap:8px;font:500 14.5px/1 var(--f-text);color:var(--tblue-2)}
.entry em svg{width:15px;height:15px}

/* ---------- closing ---------- */
.closing{position:relative;min-height:clamp(560px,52vw,760px);display:grid;align-items:end;isolation:isolate;color:#fff}
.closing__img{position:absolute;inset:0;z-index:-1}
.closing__img picture,.closing__img img{width:100%;height:100%}
.closing__img img{object-fit:cover;object-position:var(--op,50% 50%)}
.closing__img::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,34,40,.72) 0%,rgba(28,34,40,.38) 42%,rgba(28,34,40,0) 70%),linear-gradient(0deg,rgba(28,34,40,.5) 0%,rgba(28,34,40,0) 40%)}
.closing__c{display:grid;gap:20px;padding-block:clamp(64px,7vw,110px)}
.closing__c .tB{color:#fff}
.closing__c p{max-width:44ch;font-size:clamp(16.5px,1.25vw,19px);color:#E8EDF1}
.closing .cap{left:auto;right:16px;top:16px;bottom:auto}
.mailchip{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 8px 8px 16px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.26);font-size:15px;color:#fff;max-width:100%}
.mailchip span{opacity:.75}
.mailchip .btn{min-height:40px}

/* ---------- home: three ways in ---------- */
.ways{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:clamp(32px,4vw,56px)}
.way{position:relative;display:grid;grid-template-rows:auto 1fr;border-radius:var(--r-xl);overflow:hidden;background:var(--porcelain);box-shadow:var(--shadow-p);transition:transform .35s var(--ease),box-shadow .35s}
.way:hover{transform:translateY(-4px)}
.way__img{position:relative;aspect-ratio:4/3.1;overflow:hidden;background:var(--mist)}
.way__img>img,.way__img>picture img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.way__img>picture{width:100%;height:100%}
.way:hover .way__img>picture img{transform:scale(1.03)}
.way__img--contain img{object-fit:contain;padding:6%}
.way__img--doc{display:grid;place-items:center;background:linear-gradient(160deg,var(--mist),var(--titan))}
.way__b{display:grid;gap:10px;align-content:start;padding:22px 24px 26px}
.way__b h3{font:400 clamp(24px,2vw,32px)/1.1 var(--f-disp);letter-spacing:-.018em}
.way__b p{font-size:15.5px;color:var(--ink-3)}
.way__b .tl{margin-top:6px;color:var(--tblue-2)}
.way .cap{left:auto;right:12px;top:12px;bottom:auto}

/* ---------- home hero (graphite studio) ---------- */
.hero--g{background:#9AA3AB;min-height:min(86svh,860px)}
.hero--g .hero__media img{object-position:68% 66%}
.hero--g .hero__media::after{background:linear-gradient(90deg,rgba(222,227,231,.9) 0%,rgba(222,227,231,.55) 30%,rgba(222,227,231,0) 54%),linear-gradient(0deg,rgba(222,227,231,.55) 0%,rgba(222,227,231,0) 20%)}

/* ---------- products ---------- */
.fx--dk{color:#fff;background:var(--ti-2)}
.fx--dk .fx__media::after{background:linear-gradient(90deg,rgba(38,46,55,.82) 0%,rgba(38,46,55,.55) 32%,rgba(38,46,55,0) 58%),linear-gradient(0deg,rgba(38,46,55,.5) 0%,rgba(38,46,55,0) 30%)}
.fx--dk .tA{color:#fff}
.fx--dk .sub{color:#E3E9EE}
.fx--dk .note{color:#C9D3DB}
.fx--dk .hero__cap{background:rgba(38,46,55,.55);color:#E3E9EE}
.guide--ic i{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--mist);color:var(--tblue-2);margin-bottom:8px}
.guide--ic i svg{width:22px;height:22px}
.fitw{overflow-x:auto;margin-top:clamp(28px,3vw,44px);border-radius:var(--r-l);background:var(--porcelain);box-shadow:var(--shadow-p)}
.fit{border-collapse:collapse;width:100%;min-width:880px;font-size:14px}
.fit th,.fit td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}
.fit thead th{font-weight:500;color:var(--ink-2);font-size:13px}
.fit thead th a{display:grid;justify-items:center;gap:8px}
.fit thead img{width:64px;height:44px;object-fit:cover;border-radius:8px}
.fit tbody th{text-align:left;font-weight:400}
.fit tbody th a{display:grid;grid-template-columns:56px auto;gap:2px 12px;align-items:center}
.fit tbody th img{grid-row:span 2;width:56px;height:40px;object-fit:cover;border-radius:8px;background:var(--mist)}
.fit tbody th .code{font:500 12.5px/1.2 var(--f-mono);color:var(--tblue-2)}
.fit tbody th span:last-child{font-size:13px;color:var(--ink-3)}
.fit tr:last-child th,.fit tr:last-child td{border-bottom:0}
.fitdot{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%}
.fitdot span{width:14px;height:14px;border-radius:50%;background:var(--tblue);box-shadow:0 0 0 5px var(--tblue-tint)}
.fitdot:hover span{box-shadow:0 0 0 8px var(--tblue-tint)}
.fitdot--k{width:20px;height:20px;vertical-align:middle}
.fitdot--k span{width:10px;height:10px;box-shadow:0 0 0 3px var(--tblue-tint)}
.fitno{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--titan)}

/* ---------- home: "inside the build" on the titanium band ---------- */
.band-ti .macro b{color:#fff}
.band-ti .detail{color:var(--on-ti-3)}
.band-ti .chain{background:rgba(244,247,249,.94);box-shadow:none;color:var(--ink)}
.band-ti .chain .small{color:var(--ink-3)}
.band-ti .chain h3{color:var(--ink)}

/* ---------- scenario sections on the titanium band ---------- */
.band-ti .tB,.band-ti .tC{color:#fff}
.band-ti .figcap b{color:#fff}
.band-ti .figcap span{color:var(--on-ti-3)}
.band-ti .qs h3,.band-ti .evalh{color:var(--on-ti-2)}
.band-ti .qs li{color:#fff;border-color:rgba(255,255,255,.14)}
.band-ti .chip{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.26)}
.band-ti .chip:hover{background:rgba(255,255,255,.2)}
.band-ti .sc__hero,.band-ti .ph{background:var(--ti-3)}

/* ---------- showroom: up close ---------- */
.ucgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.2vw,16px);margin-top:clamp(32px,3.6vw,52px)}
.uc{position:relative;display:block;border-radius:var(--r-l);overflow:hidden;isolation:isolate;background:var(--ti-3)}
.uc .ph{aspect-ratio:4/3;border-radius:0}
.uc--big{grid-column:span 2;grid-row:span 2}
.uc--big .ph{aspect-ratio:auto;height:100%;min-height:100%}
.uc .ph img{transition:transform .8s var(--ease)}
.uc:hover .ph img{transform:scale(1.04)}
.uc__t{position:absolute;left:0;right:0;bottom:0;display:grid;gap:2px;padding:30px 16px 14px;background:linear-gradient(0deg,rgba(30,38,46,.78),rgba(30,38,46,0));color:#fff}
.uc__t b{font:500 15px/1.25 var(--f-text)}
.uc__t span{font-size:13px;color:#D5DEE5}
.p-showroom #showcase .room__stage{background:radial-gradient(70% 62% at 50% 44%,#FFFFFF 0%,rgba(255,255,255,.75) 45%,rgba(232,238,243,0) 100%),linear-gradient(180deg,rgba(200,211,219,0),rgba(200,211,219,.35))}

/* ---------- films: production board ---------- */
.fstrip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.fstrip__f{position:relative;aspect-ratio:16/10;border-radius:6px;overflow:hidden;background:var(--mist)}
.fstrip__f img{width:100%;height:100%;object-fit:cover}
.fstrip__f0{display:grid;place-items:center;background:#F5F3EE}
.fstrip__f0 img{width:42%;height:auto;object-fit:contain;border-radius:6px}
.fstrip__f i{position:absolute;left:4px;bottom:4px;padding:2px 5px;border-radius:4px;background:rgba(21,35,53,.7);color:#fff;font:400 10.5px/1 var(--f-mono);font-style:normal}

/* ---------- insights: magazine cover ---------- */
.feat .ph{aspect-ratio:16/10;border-radius:var(--r-xl);box-shadow:var(--shadow-p)}
.feat__c h2{font-size:clamp(28px,2.7vw,44px);line-height:1.12}

/* ---------- support: tiered paths ---------- */
.tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,26px)}
.tier{display:grid;gap:10px;align-content:start;padding:clamp(16px,1.6vw,22px);border-radius:var(--r-xl);background:linear-gradient(180deg,var(--porcelain),rgba(251,252,253,.6));box-shadow:var(--shadow-p)}
.tier__h{font:500 13.5px/1.2 var(--f-text);color:var(--tblue-2);padding:4px 6px 6px}
.tier .mod{background:var(--mist);box-shadow:none}
.tier .mod:hover{background:#fff;box-shadow:0 0 0 1px var(--line)}

/* ---------- RFQ: the brief as a draft document ---------- */
.pbsum--doc{background:#fff;box-shadow:0 2px 4px rgba(21,35,53,.05),0 40px 80px -40px rgba(21,35,53,.45);border-radius:10px}
.pbsum__brand{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line)}
.pbsum__brand img{width:32px;height:32px;border-radius:8px}
.pbsum__brand span{padding:4px 10px;border-radius:6px;border:1.5px solid var(--cyan-d);color:var(--cyan-d);font:500 12px/1 var(--f-text);transform:rotate(3deg)}

/* ---------- applications: wide / action mid / sensor macro ---------- */
.sc__shots{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(12px,1.4vw,20px);margin-top:clamp(18px,2vw,28px);align-items:start}
.scB .sc__shots{grid-column:1/-1}
.sc__mid{display:grid;gap:10px;margin:0}
.sc__mid .ph{aspect-ratio:3/2;border-radius:var(--r-l)}
.sc__shots .sc__det{margin:0}
.sc__shots .sc__det .ph{aspect-ratio:1/1}
.sc__shots .figcap span{color:var(--ink-3)}
.sc__body--33{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.scB .sc__body--33{grid-column:1/-1}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  .selx{grid-template-columns:minmax(0,1fr)}
  .sel__tabs{position:static;display:flex;overflow-x:auto;gap:8px;padding-bottom:4px;scrollbar-width:none}
  .sel__tabs::-webkit-scrollbar{display:none}
  .stab{flex:none;grid-template-columns:36px auto;padding:8px 14px 8px 8px;border-radius:999px;border-color:var(--line);background:rgba(255,255,255,.5)}
  .stab i{grid-row:auto;width:36px;height:36px}
  .stab span{display:none}
  .stab b{font-size:15px;align-self:center}
  .studio{grid-template-columns:minmax(0,1fr)}
  .ways{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ways .way:first-child{grid-column:1/-1}
  .ways .way:first-child .way__img{aspect-ratio:16/8}
  .tmap__read{grid-template-columns:minmax(0,1fr)}
  .ucgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tiers{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .ucgrid{grid-template-columns:minmax(0,1fr)}
  .uc--big{grid-column:auto;grid-row:auto}
  .uc--big .ph{aspect-ratio:4/3;height:auto}
  .sc__shots{grid-template-columns:minmax(0,1fr)}
  .sc__shots .sc__det .ph{aspect-ratio:4/3}
  .sc__body--33{grid-template-columns:minmax(0,1fr)}
  .fx{min-height:0;display:block;background:var(--pearl-w)}
  .fx__media{position:relative;aspect-ratio:4/4.4}
  .fx__media::after{background:linear-gradient(0deg,rgba(245,243,238,1) 0%,rgba(245,243,238,0) 30%)}
  .fx__c{padding-top:8px}
  .tmap__img img{aspect-ratio:1/1;object-position:50% 50%}
  .tmap__svg{display:none}
  .tnodes{display:grid;gap:8px;margin-top:14px}
  .tnode{position:static;transform:none;justify-self:start;white-space:normal}
  .tmap__stage{overflow:visible;background:none;box-shadow:none}
  .tmap__img{border-radius:var(--r-l);overflow:hidden}
  .spanel__vis{min-height:0;padding:16px}
  .spanel__b{grid-template-columns:minmax(0,1fr)}
  .pcmp,.ifd,.acc,.v1{grid-template-columns:minmax(0,1fr)}
  .v1 .ph{display:none}
  .v1 .doc{justify-self:center}
  .ifd__host::before{display:none}
  .world{min-height:0;display:block;border-radius:var(--r-l)}
  .world__img{position:relative;aspect-ratio:4/3.4}
  .world__img::after{display:none}
  .world__card{margin:0;border-radius:0;max-width:none;background:var(--porcelain);box-shadow:none}
  .wtabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--gut));padding-inline:var(--gut)}
  .wtab{flex:none}
  .dstack{height:auto;display:grid;justify-items:center}
  .dstack .doc{position:relative;left:auto;top:auto;transform:none;width:min(100%,340px);aspect-ratio:auto}
  .dstack .doc:not(:last-child){display:none}
  .entry{grid-template-columns:44px minmax(0,1fr);padding:16px}
  .entry i{width:44px;height:44px}
  .entry em{grid-row:auto;grid-column:2}
  .closing{min-height:0;display:block;color:var(--ink);background:var(--pearl-w)}
  .closing__img{position:relative;aspect-ratio:4/3.6}
  .closing__img::after{background:linear-gradient(0deg,rgba(245,243,238,1) 0%,rgba(245,243,238,0) 26%)}
  .closing__c .tB{color:var(--ink)}
  .closing__c p{color:var(--ink-2)}
  .mailchip{background:var(--porcelain);border-color:var(--line);color:var(--ink)}
  .closing .btn--ti{background:var(--porcelain);color:var(--ink);border-color:var(--line)}
  .ways{grid-template-columns:minmax(0,1fr)}
  .ways .way:first-child .way__img{aspect-ratio:4/3.1}
  .hero--g{background:var(--pearl-w)}
  .fx--dk{background:var(--ti-2)}
  .fx--dk .fx__media::after{background:linear-gradient(0deg,rgba(53,64,75,1) 0%,rgba(53,64,75,0) 32%)}
  .fx--dk .fx__c{padding-bottom:36px}
}
@media (prefers-reduced-motion:reduce){
  .tmap__svg .ln{animation:none}
  .way,.way__img img,.dstack .doc,.entry{transition:none}
}

/* ===== v34.css ===== */
/* =====================================================================
   TANNAI ROBOTICS · V3.4 "Luminous Industrial Cinema" layer (loads after v32.css + v33.css)
   One-line titles in a firmer weight, titanium/pearl/mist light language, cinematic media,
   and the three narrative engines (Perception Path · Robots at Work · From Brief to Fit).
   ===================================================================== */
@font-face{font-family:"TN Hei";src:url(fonts/hei34-400.woff) format("woff");font-weight:300 500;font-display:swap}
:root{--silver:#D9DFE4;--silver-2:#C3CCD3;--fog:#DCE6EE;--fog-2:#CBD9E4;--ceramic:#FAFAF8;--warm-metal:#C9B79A}

/* ---------- title system: firmer weight, no ch caps, one line by copy + scale (measured by qa/titles34.py) ---------- */
.tA,.tB,.tC{font-weight:400}
.tA{font-size:clamp(50px,5.4vw,96px);letter-spacing:-.034em;line-height:1}
.tB{font-size:clamp(38px,4vw,66px);letter-spacing:-.028em}
.tC{font-size:clamp(32px,3vw,50px)}
:lang(zh-CN) .tA,:lang(zh-CN) .tB,:lang(zh-CN) .tC,:lang(ja) .tA,:lang(ja) .tB,:lang(ja) .tC,:lang(ko) .tA,:lang(ko) .tB,:lang(ko) .tC{letter-spacing:-.01em}
.hero__c .tA,.fx__c .tA,.phA__c .tA,.phC__c .tA,.phB__c .tA{max-width:none}
@media (max-width:760px){
  .tA{font-size:clamp(38px,10.6vw,46px)}
  .tB{font-size:clamp(30px,8.4vw,38px)}
  .tC{font-size:clamp(28px,7.6vw,34px)}
}

/* =====================================================================
   MOTION STUDIO (Films) — real media only. Player state lives in [data-state] set by v34.js.
   ===================================================================== */
.fhero{position:relative;padding:calc(var(--hdr,72px) + clamp(28px,4vw,56px)) 0 clamp(40px,5vw,72px);background:linear-gradient(180deg,#F6F6F3 0%,#EDF1F3 46%,#DDE6ED 100%)}
.fhero::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(85,99,111,.22),transparent)}
.fhero__top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(20px,4vw,64px);align-items:end;margin-bottom:clamp(24px,3vw,40px)}
.fhero__c{display:grid;gap:14px;min-width:0}
.legend{display:flex;flex-wrap:wrap;gap:8px}
.st34{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 11px;border-radius:999px;font:500 12px/1 var(--f-text);letter-spacing:.01em;white-space:nowrap}
.st34--play{background:rgba(31,52,70,.78);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.st34--play::before{content:"";width:0;height:0;border-left:7px solid #CFE2EE;border-top:4.5px solid transparent;border-bottom:4.5px solid transparent}
.st34--sb{background:rgba(250,250,248,.86);color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.st34--sb::before{content:"";width:9px;height:7px;border:1.5px solid currentColor;border-radius:2px;opacity:.7}
.fstage{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);gap:clamp(18px,2.4vw,32px);align-items:start}
.fstage__meta{display:grid;gap:22px;align-content:start;padding:clamp(18px,2vw,28px);border-radius:var(--r-l,22px);background:linear-gradient(160deg,rgba(255,255,255,.82),rgba(236,241,245,.7));box-shadow:inset 0 0 0 1px rgba(255,255,255,.9),0 18px 40px -30px rgba(31,52,70,.4);min-width:0}
.fstage__meta .h3{margin-top:8px}
.fstage .shots34{grid-column:1/-1}
.flen{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0;border-radius:14px;overflow:hidden;background:var(--line)}
.flen>div{background:rgba(250,250,248,.94);padding:12px 14px;display:grid;gap:4px}
.flen dt{font-size:12px;color:var(--ink-3)}
.flen dd{margin:0;font:400 22px/1.1 var(--f-disp);color:var(--ink);font-variant-numeric:tabular-nums}
.flen>div:first-child dd{color:#1F4A66}

/* player */
.pl34{position:relative;aspect-ratio:16/9;max-width:100%;border-radius:var(--r-l,22px);overflow:hidden;background:#D9E1E7;box-shadow:0 30px 60px -40px rgba(31,52,70,.55),0 0 0 1px rgba(19,24,29,.06);isolation:isolate}
.pl34 video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#D9E1E7}
.pl34__tag{position:absolute;left:14px;top:14px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:rgba(250,250,248,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:12px;color:var(--ink-2);max-width:calc(100% - 28px);transition:opacity .3s}
.pl34__big{position:absolute;left:50%;top:50%;z-index:3;width:clamp(64px,7vw,88px);aspect-ratio:1;margin:calc(clamp(64px,7vw,88px) / -2) 0 0 calc(clamp(64px,7vw,88px) / -2);border-radius:50%;display:grid;place-items:center;color:#13181D;background:rgba(250,250,248,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 0 0 1px rgba(255,255,255,.9),0 14px 34px -14px rgba(19,24,29,.5);transition:transform .25s var(--ease),opacity .25s}
.pl34__big:hover{transform:scale(1.06)}
.pl34__big svg{width:38%;height:38%}
.pl34 .i-pause,.pl34 .i-replay{display:none}
.pl34[data-state=playing] .pl34__big,.pl34[data-state=loading] .pl34__big{opacity:0;pointer-events:none}
.pl34[data-state=playing]:hover .pl34__big,.pl34[data-state=playing] .pl34__big:focus-visible{opacity:1;pointer-events:auto}
.pl34[data-state=playing] .i-play,.pl34[data-state=loading] .i-play{display:none}
.pl34[data-state=playing] .i-pause,.pl34[data-state=loading] .i-pause{display:block}
.pl34[data-state=ended] .pl34__big .i-play{display:none}
.pl34[data-state=ended] .pl34__big .i-replay{display:block}
.pl34[data-state=playing] .pl34__tag{opacity:.0}
.pl34__spin{position:absolute;left:50%;top:50%;z-index:2;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;opacity:0;pointer-events:none}
.pl34[data-state=loading] .pl34__spin{opacity:1;animation:pl34spin .9s linear infinite}
@keyframes pl34spin{to{transform:rotate(360deg)}}
.pl34__bar{position:absolute;inset:auto 0 0;z-index:3;display:flex;align-items:center;gap:10px;padding:26px 14px 12px;background:linear-gradient(180deg,transparent,rgba(19,30,40,.55));color:#fff;opacity:0;transition:opacity .25s}
.pl34:not([data-state=idle]):not([data-state=error]) .pl34__bar,.pl34:focus-within .pl34__bar{opacity:1}
.pl34[data-state=playing]:not(:hover):not(:focus-within) .pl34__bar{opacity:.0}
.pl34__pp,.pl34__rp{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:#fff}
.pl34__pp:hover,.pl34__rp:hover{background:rgba(255,255,255,.16)}
.pl34__pp svg,.pl34__rp svg{width:18px;height:18px}
.pl34__bar input[type=range]{flex:1;min-width:0;height:4px;accent-color:#CFE2EE;cursor:pointer}
.pl34__time{flex:none;font:400 12.5px/1 var(--f-mono);font-variant-numeric:tabular-nums;letter-spacing:.01em}
.pl34__msg{position:absolute;inset:0;z-index:4;display:grid;place-content:center;justify-items:center;gap:14px;padding:20px;text-align:center;background:rgba(237,241,244,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.pl34__msg[hidden]{display:none}
.pl34__msg p{max-width:40ch;color:var(--ink);font-size:15px}
.pl34__msg[data-kind=slow]{inset:auto 12px 60px;place-content:initial;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;border-radius:14px;padding:10px 14px;text-align:left}
.pl34__msg .btn--w{box-shadow:inset 0 0 0 1px var(--line-2)}
.pl34--md{border-radius:16px}

/* chapter / shot buttons — real timecodes from the encoded file */
.shots34{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.shots34--sm{gap:8px}
.shot34{display:grid;gap:6px;text-align:left;padding:6px;border-radius:14px;background:rgba(255,255,255,.55);box-shadow:inset 0 0 0 1px rgba(19,24,29,.06);transition:background .2s,box-shadow .2s;min-width:0}
.shot34 img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:9px;background:#DDE4E9}
.shot34__t{font:400 12px/1 var(--f-mono);color:var(--ink-3);font-variant-numeric:tabular-nums}
.shot34 b{font-weight:500;font-size:13px;color:var(--ink-2);line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.shot34:hover{background:#fff}
.shot34[aria-current=true]{background:#fff;box-shadow:inset 0 0 0 1.5px #1F4A66}
.shot34[aria-current=true] .shot34__t{color:#1F4A66}

/* library */
.fgrid34{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,22px)}
.fc34{display:grid;align-content:start;gap:10px;text-align:left;padding:8px 8px 16px;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(246,247,246,.8));box-shadow:0 0 0 1px rgba(19,24,29,.06),0 20px 40px -34px rgba(31,52,70,.5);transition:transform .3s var(--ease),box-shadow .3s;min-width:0}
.fc34:hover{transform:translateY(-3px);box-shadow:0 0 0 1px rgba(19,24,29,.1),0 26px 50px -30px rgba(31,52,70,.55)}
.fc34.is-hidden{display:none}
.fc34__img{position:relative;display:block;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#DDE4E9}
.fc34__img img,.fc34__img picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fc34__img .st34{position:absolute;left:10px;bottom:10px}
.fc34__play{position:absolute;right:12px;bottom:10px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(250,250,248,.9);color:#13181D;box-shadow:0 8px 20px -10px rgba(19,24,29,.5);transition:transform .25s var(--ease)}
.fc34__play svg{width:18px;height:18px}
.fc34:hover .fc34__play{transform:scale(1.08)}
.fs34{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:0 2px}
.fs34__f{position:relative;display:block;aspect-ratio:16/9;border-radius:6px;overflow:hidden;background:#DDE4E9}
.fs34__f img{width:100%;height:100%;object-fit:cover}
.fs34__f i{position:absolute;left:4px;bottom:3px;font:400 10px/1 var(--f-mono);font-style:normal;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.55)}
.fc34__t{display:grid;gap:4px;padding:2px 8px 0}
.fc34__t b{font-weight:500;font-size:16px;color:var(--ink);line-height:1.3}
.fc34__t>span{font-size:13.5px;color:var(--ink-3);line-height:1.45}
.fc34__t .tl{margin-top:6px;font-size:14px}
.fc34[data-media="0"] .fc34__img img{filter:saturate(.85)}
.fdlg34 .dlg__body{display:grid;gap:18px}
.fdlg34 .flen{max-width:420px}
.ffilters{display:flex;flex-wrap:wrap;gap:8px}

@media (max-width:1024px){
  .fstage{grid-template-columns:1fr}
  .fgrid34{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fhero__top{grid-template-columns:1fr;align-items:start}
}
@media (max-width:760px){
  .fhero{padding-top:calc(var(--hdr,64px) + 20px)}
  .shots34{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(132px,40%);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .shot34{scroll-snap-align:start}
  .fgrid34{grid-template-columns:1fr}
  .pl34{border-radius:16px}
  .pl34__tag{left:10px;top:10px;font-size:11.5px}
  .pl34__bar{padding:22px 8px 8px;gap:6px}
  .pl34__rp{display:none}
  .flen dd{font-size:19px}
}
@media (prefers-reduced-motion:reduce){.pl34[data-state=loading] .pl34__spin{animation:none}.fc34,.fc34:hover{transform:none}}
.fstage__meta{align-self:stretch;align-content:space-between}
.fway{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--line-3)}
.fway li{display:flex;justify-content:space-between;gap:12px;padding:9px 2px;border-bottom:1px solid var(--line-3);font-size:13.5px;color:var(--ink-2)}
.fway li span{font:400 12.5px/1.5 var(--f-mono);color:var(--ink-3);font-variant-numeric:tabular-nums}
@media (max-width:1024px){.fway{display:none}}
@media (max-width:760px){
  .fgrid34{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .fc34{padding:5px 5px 12px;border-radius:16px;gap:8px}
  .fc34__img{border-radius:11px}
  .fs34,.fc34__t>span{display:none}
  .fc34__t{padding:0 4px}
  .fc34__t b{font-size:14px;line-height:1.3}
  .fc34__img .st34{left:6px;bottom:6px;height:24px;padding:0 8px;font-size:11px}
  .fc34__play{width:34px;height:34px;right:6px;bottom:6px}
  .fc34__play svg{width:14px;height:14px}
  .fc34__t .tl{display:inline-flex;font-size:13px}
}
@media (max-width:400px){.fc34__img .st34{max-width:calc(100% - 50px);overflow:hidden}}

/* =====================================================================
   V3.4 PALETTE — pearl · titanium silver · soft metal · fog blue. The former graphite bands become light titanium;
   graphite survives only inside contained instruments (tech-map stage, players).
   ===================================================================== */
.band-ti{color:var(--ink);background:linear-gradient(180deg,var(--from,#F5F3EE) 0,#E7ECEF clamp(90px,9vw,150px),#DCE3E9 58%,#E4E9EE calc(100% - clamp(90px,9vw,150px)),var(--to,#EEF2F5) 100%)}
.band-ti::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 40% at 82% 18%,rgba(255,255,255,.55),rgba(255,255,255,0) 70%),radial-gradient(50% 36% at 10% 90%,rgba(203,217,228,.45),rgba(203,217,228,0) 70%)}
.band-ti>.wrap{position:relative}
.band-ti .sub,.band-ti p{color:var(--ink-2)}
.band-ti .note,.band-ti .small{color:var(--ink-3)}
.band-ti .tl{color:var(--ink)}
.band-ti .tl:hover{color:#1F4A66}
.band-ti .macro b,.band-ti .tB,.band-ti .tC,.band-ti .figcap b,.tread h3{color:var(--ink)}
.band-ti .detail,.band-ti .figcap span{color:var(--ink-3)}
.band-ti .qs h3,.band-ti .evalh{color:var(--ink-3)}
.band-ti .qs li{color:var(--ink);border-color:var(--line)}
.band-ti .chip{background:rgba(255,255,255,.62);color:var(--ink-2);border-color:var(--line)}
.band-ti .chip:hover{background:#fff;color:var(--ink)}
.band-ti .sc__hero,.band-ti .ph{background:#D3DBE1}
.tmap__stage{box-shadow:0 40px 90px -50px rgba(31,52,70,.5)}
.tmap__read{grid-template-columns:minmax(0,1fr)}
.fx--lt{background:#DCE3E8}
.fx--lt .fx__media::after{background:linear-gradient(90deg,rgba(245,243,238,.92) 0%,rgba(245,243,238,.66) 30%,rgba(245,243,238,0) 54%),linear-gradient(0deg,rgba(245,243,238,.6) 0%,rgba(245,243,238,0) 22%)}

/* hero: real preview entry */
.hpv34 svg{width:16px;height:16px}
.hpv34__d{font:400 13px/1 var(--f-mono);color:var(--ink-3);padding-left:10px;border-left:1px solid var(--line-2)}

/* =====================================================================
   ENGINE 1 · PERCEPTION PATH
   ===================================================================== */
.pp34__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(18px,2.6vw,40px);margin-top:clamp(32px,3.6vw,56px);align-items:stretch}
.pp34__tabs{position:relative;display:grid;gap:10px;align-content:start}
.pp34__tabs::before{content:"";position:absolute;left:39px;top:30px;bottom:30px;width:1px;background:linear-gradient(180deg,rgba(31,74,102,.0),rgba(31,74,102,.35) 12%,rgba(31,74,102,.35) 88%,rgba(31,74,102,0))}
.pp34__tab{position:relative;display:grid;grid-template-columns:28px 44px minmax(0,1fr);align-items:center;gap:12px;text-align:left;padding:14px 16px 14px 12px;border-radius:18px;background:rgba(255,255,255,.5);box-shadow:inset 0 0 0 1px rgba(19,24,29,.06);transition:background .25s,box-shadow .25s,transform .25s var(--ease)}
.pp34__tab:hover{background:rgba(255,255,255,.85)}
.pp34__tab[aria-selected=true]{background:#fff;box-shadow:0 18px 36px -26px rgba(31,52,70,.55),inset 0 0 0 1.5px #1F4A66}
.pp34__n{font:400 12px/1 var(--f-mono);color:var(--ink-3)}
.pp34__tab i{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#EEF2F5;color:#1F4A66;box-shadow:0 0 0 4px rgba(255,255,255,.9)}
.pp34__tab[aria-selected=true] i{background:#1F4A66;color:#fff}
.pp34__tab i svg{width:20px;height:20px}
.pp34__tt{display:grid;gap:3px;min-width:0}
.pp34__tt b{font:400 clamp(20px,1.6vw,24px)/1.15 var(--f-disp);letter-spacing:-.01em;color:var(--ink)}
.pp34__tt .code{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pp34__stage{border-radius:26px;background:linear-gradient(160deg,rgba(255,255,255,.92),rgba(240,244,247,.84));box-shadow:0 30px 70px -48px rgba(31,52,70,.6),inset 0 0 0 1px rgba(255,255,255,.95);overflow:hidden;min-width:0}
.pp34__panel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:100%}
.pp34__panel[hidden]{display:none}
.pp34__img{position:relative;margin:0;min-height:320px;background:#D9E0E6}
.pp34__img picture,.pp34__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pp34__img .cap{z-index:1}
.pp34__c{display:grid;gap:12px;align-content:start;padding:clamp(20px,2.4vw,34px)}
.pp34__lead{font:400 clamp(19px,1.45vw,23px)/1.4 var(--f-disp);color:var(--ink);letter-spacing:-.005em}
.pp34__c .evalh{margin-top:8px}
.pp34__if{margin:0;display:grid;gap:1px;border-radius:12px;overflow:hidden;background:var(--line-3)}
.pp34__if div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:12px;padding:10px 12px;background:rgba(255,255,255,.9)}
.pp34__if dt{font:400 12.5px/1.4 var(--f-mono);color:var(--ink-3)}
.pp34__if dd{margin:0;font-size:14px;color:var(--ink);line-height:1.4}
.pp34__chk{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pp34__chk li{position:relative;padding-left:22px;font-size:14.5px;color:var(--ink-2);line-height:1.45}
.pp34__chk li::before{content:"";position:absolute;left:2px;top:6px;width:10px;height:10px;border-radius:3px;border:1.5px solid #1F4A66}
.pp34__c .row{gap:18px;margin-top:6px}
.pp34__chain{margin-top:clamp(22px,2.6vw,36px)}

/* =====================================================================
   HOME · FILMS BAND
   ===================================================================== */
.fb34__grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(14px,1.8vw,24px);margin-top:clamp(32px,3.6vw,56px)}
.fb34__main{display:grid;gap:14px}
.fb34__cap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px 24px}
.fb34__cap>div{display:grid;gap:4px;min-width:0}
.fb34__cap b{font:400 clamp(20px,1.6vw,24px)/1.2 var(--f-disp);color:var(--ink)}
.fb34__cap span{font-size:14px;color:var(--ink-3)}
.fb34__cap .flen{min-width:260px}
.fb34__side{display:grid;gap:clamp(14px,1.8vw,24px);align-content:start}
.fb34 .f0{margin-top:22px}

/* =====================================================================
   ENGINE 3 · FROM BRIEF TO FIT
   ===================================================================== */
.fit34__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(18px,2.6vw,40px);margin-top:clamp(32px,3.6vw,56px);align-items:start}
.fit34__ctl{display:grid;gap:18px;margin:0}
.fstep{margin:0;padding:0;border:0;min-width:0;display:grid;gap:10px}
.fstep legend{display:flex;align-items:center;gap:10px;padding:0;margin-bottom:10px;font:500 14px/1.3 var(--f-text);color:var(--ink)}
.fstep legend i{font:400 11.5px/1 var(--f-mono);font-style:normal;color:#1F4A66;padding:4px 7px;border-radius:999px;background:rgba(31,74,102,.08)}
.fscn{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.fsc{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:10px;padding:6px 10px 6px 6px;border-radius:14px;background:rgba(255,255,255,.6);box-shadow:inset 0 0 0 1px rgba(19,24,29,.07);cursor:pointer;transition:background .2s,box-shadow .2s;font-size:14px;color:var(--ink-2);line-height:1.25}
.fsc img{width:52px;height:38px;border-radius:9px;object-fit:cover}
.fsc input,.fchip input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.fsc:hover{background:#fff}
.fsc:has(input:checked){background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px #1F4A66}
.fsc:has(input:focus-visible),.fchip:has(input:focus-visible){outline:2px solid var(--cobalt);outline-offset:2px}
.fchips{display:flex;flex-wrap:wrap;gap:8px}
.fchip{position:relative;display:inline-flex}
.fchip span{display:inline-flex;align-items:center;min-height:40px;padding:0 15px;border-radius:999px;background:rgba(255,255,255,.6);box-shadow:inset 0 0 0 1px rgba(19,24,29,.09);font-size:14px;color:var(--ink-2);cursor:pointer;transition:all .2s}
.fchip span:hover{background:#fff;color:var(--ink)}
.fchip input:checked+span{background:#1F2A33;color:#fff;box-shadow:none}
.fdoc{position:sticky;top:calc(var(--hdr) + 16px);display:grid;gap:18px;padding:clamp(18px,2.2vw,30px);border-radius:24px;background:#FDFDFC;box-shadow:0 40px 80px -48px rgba(31,52,70,.55),0 0 0 1px rgba(19,24,29,.06);min-width:0}
.fdoc::before{content:"";position:absolute;inset:10px -8px auto auto;width:42%;height:calc(100% - 20px);border-radius:24px;background:rgba(255,255,255,.55);z-index:-1;transform:rotate(1.4deg);box-shadow:0 0 0 1px rgba(19,24,29,.04)}
.fdoc__h{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line-3)}
.fdoc__h img{border-radius:8px}
.fdoc__h div{display:grid;gap:2px;min-width:0}
.fdoc__h b{font:400 20px/1.2 var(--f-disp);color:var(--ink)}
.fdoc__h span{font-size:12.5px;color:var(--ink-3)}
.fdoc .doc__tag{position:static;transform:none}
.fdoc__views{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:6px}
.fdoc__views[hidden]{display:none}
.fdoc__views img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px;background:#DDE4E9}
.fdoc__views img:first-child{aspect-ratio:auto;height:100%}
.fdoc__vlab{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:6px;margin-top:-10px;font:400 11.5px/1 var(--f-mono);color:var(--ink-3)}
.fdoc__sel{margin:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;border-radius:12px;overflow:hidden;background:var(--line-3)}
.fdoc__sel div{background:#F4F6F7;padding:8px 10px;display:grid;gap:3px;min-width:0}
.fdoc__sel dt{font-size:11px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fdoc__sel dd{margin:0;font-size:13px;color:var(--ink);line-height:1.3}
.fdoc section{display:grid;gap:10px}
.fdoc h3{display:flex;align-items:center;gap:10px;font:500 14px/1.3 var(--f-text);color:var(--ink-2)}
:lang(zh-CN) .fdoc h3,:lang(ja) .fdoc h3,:lang(ko) .fdoc h3{text-transform:none;letter-spacing:0}
.fdoc h3 i{font:400 11px/1 var(--f-mono);font-style:normal;color:#fff;background:#1F4A66;width:20px;height:20px;display:grid;place-items:center;border-radius:6px}
.fsku{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.fsku li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px 10px 8px 8px;border-radius:14px;background:#F4F6F7}
.fsku li[hidden],.fchk li[hidden]{display:none}
.fsku img{width:56px;height:42px;object-fit:contain;background:#fff;border-radius:9px}
.fsku__ic{display:grid;place-items:center;width:56px;height:42px;border-radius:9px;background:#fff;color:#1F4A66}
.fsku__ic svg{width:22px;height:22px}
.fsku div{display:grid;gap:1px;min-width:0}
.fsku b{font:500 14px/1.3 var(--f-mono);color:var(--ink)}
.fsku div span{font-size:13px;color:var(--ink-2);line-height:1.35}
.fsku div .code{font-size:12px;color:#1F4A66}
.fsku .tl{font-size:13px}
.fchk{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.fchk li{position:relative;padding-left:26px;font-size:14px;line-height:1.5;color:var(--ink-2)}
.fchk li::before{content:"";position:absolute;left:3px;top:5px;width:13px;height:13px;border-radius:4px;border:1.5px solid var(--line-2);background:#fff}
.fnext{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;counter-reset:fn}
.fnext li{counter-increment:fn;display:grid;gap:6px;padding:10px;border-radius:12px;background:#F4F6F7;font-size:12.5px;line-height:1.3;color:var(--ink-2)}
.fnext li::before{content:counter(fn,decimal-leading-zero);font:400 11px/1 var(--f-mono);color:#1F4A66}
.fnext li b{font-weight:500}
.fdoc__f{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;padding-top:14px;border-top:1px solid var(--line-3)}
.fdoc__f .note{max-width:42ch}

/* =====================================================================
   PRODUCTS · three views per SKU
   ===================================================================== */
.pv34{display:grid;gap:10px}
.pv34__stage{position:relative}
.pv34__p{margin:0;display:grid;gap:8px}
.pv34__p[hidden]{display:none}
.pv34__p .ph{aspect-ratio:4/3;border-radius:var(--r-l)}
.pv34__p .ph img{width:100%;height:100%;object-fit:cover}
.pv34__tabs{display:flex;gap:8px;flex-wrap:wrap}
.pv34__tabs [role=tab]{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border-radius:12px;background:rgba(255,255,255,.6);box-shadow:inset 0 0 0 1px rgba(19,24,29,.08);font-size:13.5px;color:var(--ink-2)}
.pv34__tabs img{width:52px;height:36px;border-radius:8px;object-fit:cover;background:#EEF1F3}
.pv34__tabs [role=tab][aria-selected=true]{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px #1F4A66}

/* =====================================================================
   APPLICATIONS · Robots at Work
   ===================================================================== */
.sc3v{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);gap:clamp(12px,1.6vw,22px);margin-top:clamp(14px,1.8vw,22px);align-items:start}
.sc3v figure{margin:0;display:grid;gap:10px;min-width:0}
.sc3v__det .ph{aspect-ratio:auto;height:100%}
.sc3v__det{align-self:stretch;grid-template-rows:1fr auto}
.sc3v__det .ph img{width:100%;height:100%;object-fit:cover;min-height:220px}
.story34{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:clamp(22px,2.6vw,36px);border-radius:22px;overflow:hidden;background:rgba(19,24,29,.08);box-shadow:0 24px 50px -40px rgba(31,52,70,.5)}
.story34__c{display:grid;gap:12px;align-content:start;padding:clamp(18px,2vw,28px);background:rgba(255,255,255,.82)}
.story34__n{font:400 12px/1 var(--f-mono);color:#1F4A66}
.story34__c h3{font:400 clamp(20px,1.6vw,24px)/1.2 var(--f-disp);color:var(--ink)}
.story34__c p{font-size:15px;color:var(--ink-2);line-height:1.5}
.story34__m,.story34__q,.story34__p{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.story34__m{display:flex;flex-wrap:wrap;gap:6px}
.story34__m li{padding:5px 10px;border-radius:999px;background:#EEF2F5;font:400 12.5px/1.3 var(--f-mono);color:#1F4A66}
.story34__q li{position:relative;padding-left:22px;font-size:14.5px;line-height:1.45;color:var(--ink-2)}
.story34__q li::before{content:"?";position:absolute;left:0;top:0;font:500 13px/1.45 var(--f-mono);color:#1F4A66}
.story34__p a,.story34__p>li>span{display:grid;gap:1px;padding:8px 10px;border-radius:12px;background:#F4F6F7}
.story34__p a:hover{background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.story34__p b{font:500 13.5px/1.3 var(--f-mono);color:var(--ink)}
.story34__p span span,.story34__p a span{font-size:12.5px;color:var(--ink-3);line-height:1.35}
.story34 .evals{display:flex;flex-wrap:wrap;gap:6px}
.story34 .evals .chip{min-height:32px;font-size:13px;padding:0 12px}
.band-ti .story34__c{background:rgba(255,255,255,.78)}
.sc34 .sc__act{margin-top:clamp(18px,2vw,26px)}

/* =====================================================================
   SHOWROOM · hotspot guide + hotspot card line
   ===================================================================== */
.hg34__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px);margin-top:clamp(28px,3.2vw,48px)}
.hg34__c{display:grid;grid-template-rows:auto 1fr;border-radius:22px;overflow:hidden;background:rgba(255,255,255,.82);box-shadow:0 24px 50px -40px rgba(31,52,70,.55),0 0 0 1px rgba(19,24,29,.05)}
.hg34__img{display:block;aspect-ratio:16/10;background:#D9E0E6;overflow:hidden}
.hg34__img img{width:100%;height:100%;object-fit:cover}
.hg34__b{display:grid;gap:10px;align-content:start;padding:clamp(16px,1.8vw,24px)}
.hg34__b i{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#EEF2F5;color:#1F4A66}
.hg34__b i svg{width:20px;height:20px}
.hg34__b h3{font:400 clamp(20px,1.6vw,24px)/1.2 var(--f-disp);color:var(--ink)}
.hg34__b p{font-size:14.5px;color:var(--ink-2);line-height:1.5}
.hg34__b ul{margin:0;padding:0;list-style:none;display:grid;gap:7px}
.hg34__b li{position:relative;padding-left:20px;font-size:14px;color:var(--ink-2);line-height:1.45}
.hg34__b li::before{content:"";position:absolute;left:2px;top:6px;width:9px;height:9px;border-radius:3px;border:1.5px solid #1F4A66}
.hg34__b .row{gap:16px;margin-top:4px}
.hs-card .hs34{margin-top:6px;font-size:12.5px;color:var(--ink-3);line-height:1.4}
.hs-card .hs34b{display:inline-flex;margin-top:6px;margin-left:12px;font-size:13px;font-weight:500;color:#1F4A66}

/* =====================================================================
   INSIGHTS · curated magazine
   ===================================================================== */
.picks34{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,24px);margin-top:clamp(28px,3.2vw,48px)}
.pick34{display:grid;gap:12px;align-content:start}
.pick34 .ph{aspect-ratio:4/3;border-radius:var(--r-l)}
.pick34 .ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.pick34:hover .ph img{transform:scale(1.03)}
.pick34 b{font:400 clamp(19px,1.45vw,22px)/1.3 var(--f-disp);color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.desks34{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,1.8vw,24px);margin-top:clamp(28px,3.2vw,48px)}
.desk34{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:0;border-radius:22px;overflow:hidden;background:rgba(255,255,255,.78);box-shadow:0 24px 50px -40px rgba(31,52,70,.5),0 0 0 1px rgba(19,24,29,.05)}
.desk34--lead{grid-column:1/-1;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.desk34__img{border-radius:0;min-height:100%;aspect-ratio:auto}
.desk34__img img{width:100%;height:100%;object-fit:cover;min-height:220px}
.desk34--lead .desk34__img img{min-height:340px}
.desk34__b{display:grid;gap:10px;align-content:start;padding:clamp(18px,2vw,28px)}
.desk34__b h3{font:400 clamp(22px,1.9vw,30px)/1.15 var(--f-disp);color:var(--ink);letter-spacing:-.01em}
.desk34__b ul{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:0;border-top:1px solid var(--line-3)}
.desk34__b li a{display:grid;gap:3px;padding:10px 0;border-bottom:1px solid var(--line-3)}
.desk34__b li a:hover b{color:#1F4A66}
.desk34__b li time{font:400 12px/1.3 var(--f-mono);color:var(--ink-3)}
.desk34__b li b{font-weight:500;font-size:14.5px;line-height:1.4;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.desk34__b .row{gap:18px;margin-top:6px}
.desk34__b button.tl{background:none;border:0;padding:0;cursor:pointer}

/* =====================================================================
   OEM · scope vs offer
   ===================================================================== */
.scope34{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;margin-top:clamp(22px,2.6vw,36px);border-radius:24px;overflow:hidden;background:rgba(19,24,29,.08);box-shadow:0 30px 60px -44px rgba(31,52,70,.5)}
.scope34__c{display:grid;gap:12px;align-content:start;padding:clamp(20px,2.4vw,34px);background:rgba(244,246,247,.94)}
.scope34__c--now{background:#fff}
.scope34__c h3{font:400 clamp(22px,1.8vw,28px)/1.2 var(--f-disp);color:var(--ink)}
.scope34__f,.scope34__t{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.scope34__f{grid-template-columns:repeat(2,minmax(0,1fr))}
.scope34__f li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:#fff;font-size:14px;color:var(--ink-2)}
.scope34__f i{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#EEF2F5;color:#55636F;flex:none}
.scope34__f i svg{width:16px;height:16px}
.scope34__t li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;font-size:15px;color:var(--ink)}
.scope34__t li svg{width:18px;height:18px;color:#1F4A66;margin-top:2px}
.scope34 .lab::before{background:#55636F}
.scope34__c--now .lab::before{background:#1F4A66}

/* =====================================================================
   SUPPORT · tier identity
   ===================================================================== */
.tiers34{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px);margin-top:clamp(32px,4vw,56px)}
.tier34{display:grid;grid-template-rows:auto 1fr;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 28px 56px -42px rgba(31,52,70,.55),0 0 0 1px rgba(19,24,29,.05)}
.tier34__img{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#DDE4E9}
.tier34__img img{width:100%;height:100%;object-fit:cover}
.tier34__n{position:absolute;left:14px;top:14px;font:400 12px/1 var(--f-mono);padding:6px 9px;border-radius:999px;background:rgba(250,250,248,.88);color:var(--ink)}
.tier34--1 .tier34__img::after,.tier34--2 .tier34__img::after,.tier34--3 .tier34__img::after{content:"";position:absolute;inset:auto 0 0;height:4px}
.tier34--1 .tier34__img::after{background:#C9B79A}
.tier34--2 .tier34__img::after{background:#7FA1B8}
.tier34--3 .tier34__img::after{background:#55636F}
.tier34__b{display:grid;gap:10px;align-content:start;padding:clamp(16px,1.8vw,24px)}
.tier34__b .tier__h{font:400 clamp(22px,1.8vw,28px)/1.2 var(--f-disp);color:var(--ink);text-transform:none;letter-spacing:-.01em}
.tier34__do{font-size:14.5px;color:var(--ink-2);line-height:1.5;padding-bottom:6px}
.tier34 .mod{display:grid;grid-template-columns:40px minmax(0,1fr) 16px;gap:12px;align-items:center;padding:12px;border-radius:14px;background:#F4F6F7}
.tier34 .mod:hover{background:#EEF2F5}
.tier34 .mod>svg{width:16px;height:16px;color:var(--ink-3)}

/* =====================================================================
   PROJECT BRIEF · document workbench
   ===================================================================== */
.pbdoc34{display:grid;gap:10px;padding:12px;border-radius:14px;background:#F4F6F7;margin-bottom:12px}
.pbdoc34__t{display:grid;gap:2px}
.pbdoc34__t b{font:400 17px/1.25 var(--f-disp);color:var(--ink)}
.pbdoc34__t span{font-size:12px;color:#8A5A2B}
.pbv34{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:4px}
.pbv34[hidden],.pbhw34 li[hidden],.pbdoc34__ph[hidden]{display:none}
.pbv34 img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:8px;background:#DDE4E9}
.pbdoc34__ph{font-size:12.5px;color:var(--ink-3);padding:14px 10px;border-radius:10px;border:1px dashed var(--line-2);text-align:center}
.pbhw34{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.pbhw34 li{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:6px;border-radius:10px;background:#fff}
.pbhw34 img{grid-row:span 2;width:40px;height:30px;object-fit:contain}
.pbhw34 b{font:500 12.5px/1.2 var(--f-mono);color:var(--ink)}
.pbhw34 span{font-size:11.5px;color:var(--ink-3);line-height:1.3}

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
@media (max-width:1180px){
  .fdoc__sel{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fnext{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1024px){
  .pp34__grid,.fit34__grid,.fb34__grid{grid-template-columns:1fr}
  .pp34__tabs{grid-auto-flow:column;grid-auto-columns:minmax(200px,1fr);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
  .pp34__tabs::before{display:none}
  .pp34__tab{scroll-snap-align:start}
  .fb34__side{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fdoc{position:relative;top:auto}
  .hg34__grid{grid-template-columns:1fr 1fr}
  .desk34,.desk34--lead{grid-template-columns:1fr}
  .desk34__img img{min-height:200px;max-height:300px}
  .tiers34{grid-template-columns:1fr 1fr}
  .tiers34 .tier34:last-child{grid-column:1/-1}
}
@media (max-width:760px){
  .pp34__panel{grid-template-columns:1fr}
  .pp34__img{min-height:220px;aspect-ratio:16/10}
  .pp34__tab{grid-template-columns:22px 38px minmax(0,1fr);padding:10px 12px 10px 8px;gap:8px}
  .pp34__tab i{width:38px;height:38px}
  .pp34__tabs{grid-auto-columns:minmax(170px,72%)}
  .fscn{grid-template-columns:1fr 1fr}
  .fsc{grid-template-columns:40px minmax(0,1fr);font-size:13px;gap:8px}
  .fsc img{width:40px;height:30px}
  .fdoc{padding:16px;border-radius:20px}
  .fdoc::before{display:none}
  .fdoc__sel{grid-template-columns:1fr 1fr}
  .fnext{grid-template-columns:1fr 1fr}
  .fsku li{grid-template-columns:48px minmax(0,1fr)}
  .fsku li .tl{grid-column:2}
  .fb34__side{grid-template-columns:1fr 1fr}
  .fb34__cap .flen{min-width:0;width:100%}
  .sc3v{grid-template-columns:1fr}
  .sc3v__det .ph img{min-height:0;aspect-ratio:16/10}
  .story34{grid-template-columns:1fr}
  .hg34__grid,.picks34,.desks34,.tiers34,.scope34{grid-template-columns:1fr}
  .scope34__f{grid-template-columns:1fr}
  .picks34{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
  .pick34{scroll-snap-align:start}
  .tiers34 .tier34:last-child{grid-column:auto}
  .tier34__img{aspect-ratio:21/9}
  .pv34__tabs [role=tab]{padding-right:10px;font-size:12.5px}
  .pv34__tabs img{width:42px;height:30px}
  .hpv34{width:100%}
}
@media (max-width:400px){.fscn{grid-template-columns:1fr}.fsc{grid-template-columns:44px minmax(0,1fr)}}
.fsc.is-on{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px #1F4A66}
.pp34__tabs{grid-auto-rows:minmax(0,1fr);align-content:stretch}
.fb34 .f0{color:var(--ink-3)}
.fb34 .f0 img{border-radius:10px}
@media (max-width:760px){
  .hero__low .row{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
  .hero__low .row .btn{width:100%;padding:0 14px}
  .hero__low .row .hpv34{grid-column:1/-1}
  .fscn{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 8px;margin:0 -2px}
  .fsc{flex:0 0 148px;grid-template-columns:1fr;grid-template-rows:auto auto;gap:6px;padding:6px;scroll-snap-align:start}
  .fsc img{width:100%;height:auto;aspect-ratio:16/10}
  .fsku li{grid-template-columns:48px minmax(0,1fr) auto;gap:10px}
  .fsku .tl{font-size:0;gap:0}
  .fsku .tl svg{width:16px;height:16px}
  .fsku div span:not(.code){font-size:12.5px}
}
@media (max-width:400px){.fscn{grid-template-columns:none}.fsc{grid-template-columns:1fr}}
.sc34{padding-block:clamp(80px,8.5vw,136px)}
.story34__p{display:flex;flex-wrap:wrap;gap:6px}
.story34__p a,.story34__p>li>span{display:inline-flex;align-items:baseline;gap:6px;padding:6px 10px;border-radius:10px}
.story34__p span span,.story34__p a span{font-size:12px}
.fdoc::before{display:none}
.fdoc__views{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);grid-template-rows:auto auto;gap:6px}
.fdoc__views figure{position:relative;margin:0;min-width:0;border-radius:10px;overflow:hidden;background:#DDE4E9}
.fdoc__views figure:first-child{grid-row:1/3}
.fdoc__views img,.fdoc__views img:first-child{width:100%;height:100%;aspect-ratio:16/10;object-fit:cover;border-radius:0;display:block}
.fdoc__views figure:first-child img{aspect-ratio:auto;min-height:100%}
.fdoc__views figure span{position:absolute;left:8px;bottom:8px;padding:4px 8px;border-radius:999px;background:rgba(250,250,248,.86);font:400 11px/1 var(--f-mono);color:var(--ink-2)}
@media (max-width:760px){
  .fsku li .tl{grid-column:auto}
  .sc3v{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin-inline:-16px;padding:0 16px 6px;scroll-padding-inline:16px}
  .sc3v figure{flex:0 0 86%;scroll-snap-align:start}
  .sc3v__det{grid-template-rows:auto auto}
  .sc3v__det .ph{height:auto}
  .sc3v__det .ph img{aspect-ratio:16/9;height:auto}
  .story34__c:first-child p,.story34 .evals{display:none}
  .story34__c{padding:16px;gap:8px}
  .story34{margin-top:18px}
}
.sbx{display:block;width:100%;aspect-ratio:16/9;background-repeat:no-repeat;background-color:#DDE4E9;border-radius:9px}
.fs34__f .sbx{height:100%;border-radius:6px}
@media (max-width:760px){
  .desk34__img{aspect-ratio:21/9}
  .desk34__img img,.desk34--lead .desk34__img img{min-height:0;max-height:none;height:100%}
  .desk34__b{padding:16px}
}
/* poster as a lazy image (a <video poster> would download even inside closed sheets) */
.pl34__poster{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;pointer-events:none;transition:opacity .35s}
.pl34[data-state=playing] .pl34__poster,.pl34[data-state=paused] .pl34__poster,.pl34[data-state=ended] .pl34__poster{opacity:0}
/* phone hero actions never overflow: buttons wrap their label instead */
@media (max-width:760px){
  .hero__low .row{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
  .hero__low .row .btn{white-space:normal;text-align:center;min-width:0;line-height:1.2;padding-block:10px}
}
.flen{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}

/* ---------- V3.4.1 · Robot Demos: no production notes; the stage carries the demo, its hardware and the next step ---------- */
.fstage--341{align-items:stretch}
.fstage--341 .fstage__meta{align-content:center;gap:24px;padding:clamp(22px,2.4vw,34px)}
.fstage__t{display:grid;gap:8px}
.fstage__t .h3{margin:0}
.fstage__hw{display:grid;gap:8px}
.fstage__hw .evalh{margin:0}
.fstage__hw .evals{display:flex;flex-wrap:wrap;gap:6px}
.fstage__hw .chip{min-height:34px;font-size:13.5px;padding:0 13px}
.fdlg34 .dlg__body .row{gap:18px}
.fhero{padding-bottom:clamp(44px,5vw,80px)}
.fb34__cap .row{gap:16px}
.p-films #library{padding-bottom:clamp(56px,6vw,96px)}
.p-films .ctaband,.p-films .ftr__cta{margin-top:0}
.fb34__cap>div:first-child{flex:1 1 320px}
.fb34__cap .row{flex:0 0 auto;flex-wrap:nowrap}
@media (max-width:760px){.fb34__cap .row{flex-wrap:wrap}}

/* ===================================================================== V3.4.2 Precision Gallery */
:root{--pearl42:#F6F4EF;--ti42:#E7E3DB;--champ42:#E9E3D8;--mist42:#E2EAF0;--blue42:#2F6F9F;--hair42:rgba(19,24,29,.09);--sh42:0 30px 60px -44px rgba(30,48,66,.45)}
/* shared: one-line hero titles on phones */
@media (max-width:560px){.co42h .tA,.su42h .tA,.h42b+.tA{font-size:clamp(30px,8.4vw,40px)}}
.cap{pointer-events:none}
/* ---------- HOME brand line */
.h42b{display:inline-flex;align-items:center;gap:10px;font:500 15px/1 var(--f-text);color:var(--ink-2);letter-spacing:.01em;margin-bottom:-6px}
.h42b img{width:28px;height:28px;border-radius:7px;box-shadow:0 0 0 1px var(--hair42)}
.hero .hero__media::after{background:radial-gradient(120% 90% at 70% 60%,rgba(255,255,255,0) 40%,rgba(236,232,224,.28) 100%)}
/* ---------- COMPANY · hero */
.co42h .fx__media::after{background:linear-gradient(90deg,rgba(246,244,239,.93) 0%,rgba(246,244,239,.7) 28%,rgba(246,244,239,0) 52%),linear-gradient(0deg,rgba(246,244,239,.75) 0%,rgba(246,244,239,0) 24%),radial-gradient(70% 60% at 62% 70%,rgba(255,255,255,.18),rgba(255,255,255,0))}
.co42h .sub,.su42h .sub{max-width:44ch}
/* ---------- COMPANY · about */
.ab42__g{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(28px,5vw,96px);align-items:start}
.ab42__c{display:grid;gap:20px;max-width:68ch}
.ab42__lead{font:300 clamp(24px,2.3vw,36px)/1.28 var(--f-disp);letter-spacing:-.012em;color:var(--ink);text-wrap:balance}
:lang(zh-CN) .ab42__lead,:lang(ja) .ab42__lead,:lang(ko) .ab42__lead{font-weight:400;letter-spacing:0;line-height:1.45}
.ab42__c p:not(.ab42__lead):not(.note){font-size:17px;line-height:1.7;color:var(--ink-2)}
.ab42__hw{margin-top:clamp(44px,5vw,80px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--hair42);border-radius:22px;overflow:hidden;box-shadow:var(--sh42)}
.ab42__hw a{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;align-items:center;padding:18px 20px;background:linear-gradient(180deg,#FBFAF7,#F2F0EA);transition:background .25s}
.ab42__hw a:hover{background:#fff}
.ab42__hw img{grid-row:1/3;width:72px;height:54px;object-fit:contain;mix-blend-mode:multiply}
.ab42__hw b{font-size:14px;color:var(--ink)}
.ab42__hw span{font-size:13px;color:var(--ink-3)}
@media (max-width:900px){.ab42__g{grid-template-columns:1fr}.ab42__hw{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.ab42__hw a{padding:14px 12px;column-gap:10px}.ab42__hw img{width:52px;height:40px}}
/* ---------- COMPANY · ecosystem map */
.eco{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);grid-template-rows:auto auto;gap:clamp(18px,2vw,30px) clamp(28px,4vw,72px);align-items:center;padding:clamp(24px,3vw,48px);border-radius:32px;
 background:radial-gradient(60% 70% at 50% 50%,rgba(255,255,255,.95),rgba(255,255,255,0) 70%),linear-gradient(160deg,#F3F1EB,#E4E9ED);box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),var(--sh42)}
.eco__svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.eco__svg path{fill:none;stroke:rgba(47,111,159,.38);stroke-width:1.2;stroke-dasharray:2 6;vector-effect:non-scaling-stroke}
.eco__svg .o1,.eco__svg .o2{fill:none;stroke:rgba(19,24,29,.08);vector-effect:non-scaling-stroke}
.eco__svg .o2{stroke-dasharray:1 7;stroke:rgba(47,111,159,.25)}
.eco__core{grid-column:2;grid-row:1/3;position:relative;z-index:1;display:grid;justify-items:center;text-align:center;gap:16px}
.eco__disc{width:min(100%,360px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 38%,#fff 0%,#F1F1EE 52%,#DCE3E9 100%);box-shadow:0 40px 70px -40px rgba(30,48,66,.55),inset 0 0 0 1px rgba(255,255,255,.9),inset 0 -18px 40px rgba(170,186,200,.25)}
.eco__disc img{width:82%;height:auto;filter:drop-shadow(0 18px 18px rgba(30,40,50,.22))}
.eco__cb{display:grid;gap:8px;max-width:36ch}
.eco__cb h3{font:400 clamp(22px,1.9vw,28px)/1.2 var(--f-disp);letter-spacing:-.01em}
.eco__cb p{font-size:14.5px;color:var(--ink-2)}
.eco__cb .cap{position:static;justify-self:center}
.eco__tag{font:500 12.5px/1.2 var(--f-text);color:var(--blue42)}
.eco__n{position:relative;z-index:1;display:grid;gap:14px;padding:18px;border-radius:22px;background:rgba(255,255,255,.72);backdrop-filter:blur(6px);box-shadow:0 0 0 1px var(--hair42),0 22px 44px -36px rgba(30,48,66,.5)}
.eco__n h3{font:500 18px/1.25 var(--f-text);color:var(--ink)}
.eco__n p{font-size:14px;line-height:1.55;color:var(--ink-2)}
.eco__b{display:grid;gap:6px;justify-items:start}
.eco__n--hw{grid-column:1;grid-row:1}.eco__n--tech{grid-column:1;grid-row:2}.eco__n--data{grid-column:3;grid-row:1}.eco__n--trade{grid-column:3;grid-row:2}
.eco__prods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.eco__p{display:grid;justify-items:center;gap:4px;padding:8px 4px;border-radius:12px;background:linear-gradient(180deg,#fff,#F1F0EC)}
.eco__p img{width:100%;max-width:64px;height:auto;aspect-ratio:4/3;object-fit:contain;mix-blend-mode:multiply}
.eco__p .code{font-size:10px;color:var(--ink-3)}
.eco__img{display:block;aspect-ratio:16/8;border-radius:14px;overflow:hidden}
.eco__img img,.eco__img picture{width:100%;height:100%;object-fit:cover}
.eco__ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--mist42);color:var(--blue42)}
.eco__ic svg{width:22px;height:22px}
.eco__ifs{display:flex;flex-wrap:wrap;gap:6px}
.eco__n--data .eco__v,.eco__n--trade .eco__v{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
@media (max-width:1024px){
 .eco{grid-template-columns:1fr 1fr;grid-template-rows:auto}
 .eco__svg{display:none}
 .eco__core{grid-column:1/-1;grid-row:1;grid-template-columns:minmax(0,220px) minmax(0,1fr);text-align:left;justify-items:start;align-items:center}
 .eco__cb .cap{justify-self:start}
 .eco__n--hw,.eco__n--tech,.eco__n--data,.eco__n--trade{grid-column:auto;grid-row:auto}
}
@media (max-width:640px){
 .eco{grid-template-columns:1fr;padding:16px;gap:12px;border-radius:24px}
 .eco__core{grid-template-columns:120px minmax(0,1fr);gap:14px}
 .eco__n{position:relative;margin-left:18px}
 .eco__n::before{content:"";position:absolute;left:-12px;top:-12px;bottom:50%;width:1px;background:rgba(47,111,159,.3)}
 .eco__n::after{content:"";position:absolute;left:-15px;top:50%;width:7px;height:7px;border-radius:50%;background:var(--blue42);opacity:.5}
}
/* ---------- COMPANY · from need to solution */
.ps42__l{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,24px);counter-reset:ps}
.ps42__s{display:grid;grid-template-rows:auto 1fr;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px var(--hair42),var(--sh42)}
.ps42__s:nth-child(2n){transform:translateY(clamp(0px,3vw,40px))}
.ps42__img{position:relative;display:block;aspect-ratio:4/3.4;overflow:hidden;background:linear-gradient(160deg,#F3F1EB,#E2E8ED)}
.ps42__img img,.ps42__img picture{width:100%;height:100%;object-fit:cover}
.ps42__img--doc{display:grid;place-items:center;padding:18px}
.ps42__img--doc .doc{transform:rotate(-2deg) scale(.92);max-width:260px}
.ps42__b{display:grid;gap:8px;align-content:start;justify-items:start;padding:20px 20px 24px}
.ps42__n{font:300 34px/1 var(--f-disp);color:var(--blue42)}
.ps42__b h3{font:500 19px/1.25 var(--f-text)}
.ps42__b p{font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.ps42{padding-bottom:clamp(110px,12vw,180px)}
@media (max-width:1024px){.ps42__l{grid-template-columns:repeat(2,minmax(0,1fr))}.ps42__s:nth-child(2n){transform:none}}
@media (max-width:600px){.ps42__l{grid-template-columns:1fr;gap:14px}.ps42__s{grid-template-columns:42% minmax(0,1fr);grid-template-rows:auto}.ps42__img{aspect-ratio:auto;height:100%;min-height:150px}.ps42__b{padding:14px}.ps42__n{font-size:26px}.ps42__img--doc{padding:8px}.ps42__img--doc .doc{transform:scale(.62);transform-origin:center}.ps42{padding-bottom:clamp(60px,15vw,84px)}}
/* ---------- COMPANY · services */
.sv42__l{display:grid;gap:clamp(40px,5vw,84px)}
.sv42__r{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);align-items:center}
.sv42__r--f .sv42__img{order:2}
.sv42__img{position:relative;aspect-ratio:16/11;border-radius:26px;overflow:hidden;box-shadow:var(--sh42)}
.sv42__img img,.sv42__img picture{width:100%;height:100%;object-fit:cover}
.sv42__b{display:grid;gap:18px;align-content:center}
.sv42__cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sv42__cat{display:grid;gap:6px;padding:8px 8px 14px;border-radius:18px;background:#fff;box-shadow:0 0 0 1px var(--hair42);transition:transform .25s,box-shadow .25s}
.sv42__cat:hover{transform:translateY(-2px);box-shadow:0 0 0 1px var(--hair42),var(--sh42)}
.sv42__cat .ph{aspect-ratio:4/3;border-radius:12px;overflow:hidden}
.sv42__cat .ph img,.sv42__cat .ph picture{width:100%;height:100%;object-fit:cover}
.sv42__cat b{font-size:14px;padding-inline:4px}.sv42__cat .code{font-size:11.5px;color:var(--ink-3);padding-inline:4px}
.sv42__if{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.sv42__if div{display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:10px 12px;border-radius:14px;background:#fff;box-shadow:0 0 0 1px var(--hair42)}
.sv42__if img{grid-row:1/3;object-fit:contain;mix-blend-mode:multiply}
.sv42__if b{font-size:13px}.sv42__if span{font-size:13px;color:var(--blue42)}
.sv42__open{list-style:none;display:grid;gap:8px;padding:16px 18px;border-radius:16px;background:rgba(233,227,216,.55)}
.sv42__open li{display:flex;gap:10px;font-size:14px;color:var(--ink-2)}
.sv42__open svg{width:16px;height:16px;flex:none;margin-top:3px;color:#9A7B4F}
.sv42__es{display:grid;gap:10px}
.sv42__e{display:grid;grid-template-columns:44px minmax(0,1fr) 18px;gap:14px;align-items:center;padding:14px 16px;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--hair42);transition:box-shadow .25s}
.sv42__e:hover{box-shadow:0 0 0 1px rgba(47,111,159,.35),var(--sh42)}
.sv42__e i{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--mist42);color:var(--blue42)}
.sv42__e i svg{width:20px;height:20px}
.sv42__e b{display:block;font-size:15px}.sv42__e span span{font-size:13.5px;color:var(--ink-3)}
.sv42__e>svg{width:16px;height:16px;color:var(--ink-3)}
@media (max-width:900px){.sv42__r{grid-template-columns:1fr}.sv42__r--f .sv42__img{order:0}}
@media (max-width:420px){.sv42__cats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.sv42__cat{padding:5px 5px 10px;border-radius:14px}.sv42__cat b{font-size:12.5px}.sv42__if{grid-template-columns:1fr}}
/* ---------- closing bands (company + support) */
.co42c .closing__img::after,.su42c .closing__img::after{background:linear-gradient(90deg,rgba(246,244,239,.92) 0%,rgba(246,244,239,.62) 34%,rgba(246,244,239,0) 60%),linear-gradient(0deg,rgba(246,244,239,.5),rgba(246,244,239,0) 30%)}
.co42c,.su42c{color:var(--ink)}
.co42c .closing__c p,.su42c .closing__c p{color:var(--ink-2);max-width:46ch;font-size:18px}
.su42c .note{max-width:60ch}
/* ---------- SUPPORT · hero search */
.su42__q{max-width:440px;margin-top:4px;background:rgba(255,255,255,.8)}
/* ---------- SUPPORT · three-stage path */
.st42__l{list-style:none;position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3vw,48px);padding-top:8px}
.st42__l::before{content:"";position:absolute;left:22px;right:22px;top:30px;height:1px;background:linear-gradient(90deg,rgba(47,111,159,.45),rgba(47,111,159,.12))}
.st42__s{position:relative;display:grid;gap:10px;align-content:start}
.st42__dot{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font:400 18px/1 var(--f-disp);color:var(--blue42);background:radial-gradient(circle at 40% 35%,#fff,#E6EDF2);box-shadow:0 0 0 1px rgba(47,111,159,.25),0 10px 24px -14px rgba(47,111,159,.6)}
.st42__s h3{font:400 clamp(24px,2vw,30px)/1.15 var(--f-disp);letter-spacing:-.01em;margin-top:8px}
.st42__s>p{font-size:15px;color:var(--ink-2);max-width:36ch}
.st42__s ul{list-style:none;display:grid;margin-top:6px;border-top:1px solid var(--hair42)}
.st42__s li a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 2px;border-bottom:1px solid var(--hair42);font-size:15px;color:var(--ink);transition:color .2s,padding .2s}
.st42__s li a:hover{color:var(--blue42);padding-left:6px}
.st42__s li svg{width:15px;height:15px;color:var(--ink-3)}
.st42 .note{margin-top:28px}
.st42{padding-block:clamp(56px,6vw,96px)}
@media (max-width:860px){.st42__l{grid-template-columns:1fr;gap:28px}.st42__l::before{left:22px;right:auto;top:30px;bottom:30px;width:1px;height:auto}.st42__s{padding-left:62px}.st42__dot{position:absolute;left:0;top:0}.st42__s h3{margin-top:4px}}
/* ---------- SUPPORT · workbench */
.wb42__g{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(18px,2.4vw,36px);align-items:start}
.wb42__tabs{display:grid;gap:8px;position:sticky;top:calc(var(--hdr,72px) + 16px)}
.wb42__t{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:center;text-align:left;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.5);box-shadow:0 0 0 1px var(--hair42);transition:all .2s}
.wb42__t img{width:56px;height:42px;object-fit:contain;mix-blend-mode:multiply}
.wb42__t b{display:block;font-size:15px}.wb42__t .code{font-size:11.5px;color:var(--ink-3)}
.wb42__t[aria-selected=true]{background:#fff;box-shadow:0 0 0 1.5px rgba(47,111,159,.55),var(--sh42)}
.wb42__ic{width:56px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--mist42);color:var(--blue42)}
.wb42__ic svg{width:20px;height:20px}
.wb42__panel{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;padding:clamp(16px,2vw,26px);border-radius:28px;background:linear-gradient(165deg,#FFFFFF,#F1F2EF);box-shadow:0 0 0 1px var(--hair42),var(--sh42)}
.wb42__panel[hidden]{display:none}
.wb42__ps{display:grid;gap:16px}
.wb42__p{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:18px;align-items:start}
.wb42__img{position:relative;display:block;aspect-ratio:1/1;border-radius:18px;overflow:hidden;background:#EEF0EF}
.wb42__img img,.wb42__img picture{width:100%;height:100%;object-fit:cover}
.wb42__p .code{font-size:12px;color:var(--blue42)}
.wb42__n{display:block;font:500 17px/1.3 var(--f-text);margin:2px 0 10px}
.wb42__dl{display:grid;margin:8px 0 12px;border-top:1px solid var(--hair42)}
.wb42__dl div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:10px;padding:8px 0;border-bottom:1px solid var(--hair42);font-size:13.5px}
.wb42__dl dt{color:var(--ink-3)}.wb42__dl dd{color:var(--ink)}
.wb42__side{display:grid;gap:18px;align-content:start;padding:18px;border-radius:20px;background:rgba(226,234,240,.55)}
.wb42__chk{list-style:none;display:grid;gap:8px;margin-top:8px}
.wb42__chk li{position:relative;padding-left:18px;font-size:14px;color:var(--ink-2)}
.wb42__chk li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:2px;background:var(--blue42);opacity:.55}
.wb42__side .small{margin-top:6px;color:var(--ink-2)}
.wb42__idx{grid-column:1/-1;list-style:none;display:grid}
.wb42__idx li{display:grid;grid-template-columns:56px minmax(0,.8fr) minmax(0,1.3fr) minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 4px;border-bottom:1px solid var(--hair42);font-size:14px}
.wb42__idx img{object-fit:contain;mix-blend-mode:multiply}
.wb42__idx li>span{color:var(--ink-2)}
@media (max-width:1024px){.wb42__g{grid-template-columns:1fr}.wb42__tabs{position:static;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);overflow-x:auto;scrollbar-width:none;padding:2px}.wb42__panel{grid-template-columns:1fr}}
@media (max-width:640px){.wb42__p{grid-template-columns:1fr}.wb42__img{aspect-ratio:16/10}.wb42__idx li{grid-template-columns:48px minmax(0,1fr);row-gap:4px}.wb42__idx li>span,.wb42__idx li>.row{grid-column:2}.wb42__tabs{grid-auto-columns:minmax(200px,78%)}}
/* ---------- SUPPORT · troubleshooting */
.ts42__l{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,22px);position:relative}
.ts42__s{display:grid;gap:10px;align-content:start}
.ts42__v{position:relative;display:block;aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:linear-gradient(160deg,#F3F1EB,#E2E8ED);box-shadow:var(--sh42)}
.ts42__v img,.ts42__v picture{width:100%;height:100%;object-fit:cover}
.ts42__n{width:34px;height:34px;margin-top:6px;border-radius:50%;display:grid;place-items:center;font:500 14px/1 var(--f-text);color:#fff;background:var(--blue42)}
.ts42__s h3{font:500 18px/1.25 var(--f-text)}
.ts42__s p{font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.ts42__card{position:absolute;inset:14px;display:grid;align-content:start;gap:12px;padding:16px;border-radius:14px;background:#fff;box-shadow:0 0 0 1px var(--hair42),0 18px 30px -24px rgba(30,48,66,.5)}
.ts42__card ul{list-style:none;display:grid;gap:8px}
.ts42__card li{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--ink-2)}
.ts42__card li svg{width:15px;height:15px;color:#3E8E6A;flex:none}
.ts42__card li.on{color:var(--blue42);font-weight:500}.ts42__card li.on svg{color:var(--blue42)}
.ts42 .note{margin-top:22px}
@media (max-width:900px){.ts42__l{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}}
@media (max-width:420px){.ts42__l{gap:12px;row-gap:22px}.ts42__s h3{font-size:16px}.ts42__s p{font-size:13.5px}.ts42__card{inset:8px;padding:10px;gap:8px}.ts42__card li{font-size:11.5px}.ts42__card img{width:20px;height:20px}}
/* ---------- SUPPORT · documents centre */
.dc42__w{overflow-x:auto;border-radius:24px;background:#fff;box-shadow:0 0 0 1px var(--hair42),var(--sh42)}
.dc42__t{width:100%;min-width:640px;border-collapse:collapse;font-size:14px}
.dc42__t th,.dc42__t td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--hair42)}
.dc42__t thead th{font:500 13px/1.2 var(--f-text);color:var(--ink-3);background:#F6F5F1}
.dc42__t tbody th{display:flex;align-items:center;gap:12px;font-weight:400}
.dc42__t tbody th img{object-fit:contain;mix-blend-mode:multiply}
.dc42__t tbody th span span{display:block;font-size:12.5px;color:var(--ink-3)}
.dc42__t tbody tr:last-child>*{border-bottom:0}
.dc42__a{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;border-radius:999px;font-size:13px;color:var(--ink-2);background:rgba(233,227,216,.6)}
.dc42__a svg{width:14px;height:14px}
.dc42__a--on{color:var(--blue42);background:var(--mist42)}
.dc42 .note{margin-top:16px}
/* ---------- SUPPORT · orders & after-sales */
.or42__g{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(24px,4vw,72px);align-items:start}
.or42__h{display:grid;gap:16px}
.or42__img{position:relative;display:block;aspect-ratio:4/3;border-radius:24px;overflow:hidden;margin-top:12px;background:#F2F1ED}
.or42__img img,.or42__img picture{width:100%;height:100%;object-fit:cover}
.or42__l{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.or42__i{display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;row-gap:4px;padding:18px;border-radius:20px;background:#fff;box-shadow:0 0 0 1px var(--hair42);transition:box-shadow .25s,transform .25s}
.or42__i:hover{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(47,111,159,.35),var(--sh42)}
.or42__i:last-child{grid-column:1/-1}
.or42__i i{grid-row:1/3;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--mist42);color:var(--blue42)}
.or42__i i svg{width:20px;height:20px}
.or42__i b{font-size:16px}.or42__i span{font-size:14px;color:var(--ink-2);line-height:1.5}
@media (max-width:900px){.or42__g{grid-template-columns:1fr}.or42__img{display:none}}
@media (max-width:560px){.or42__l{grid-template-columns:1fr}}
/* ---------- SUPPORT · FAQ knowledge module */
.fq42__g2{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:clamp(24px,4vw,72px);align-items:start}
.fq42__side{display:grid;gap:18px;position:sticky;top:calc(var(--hdr,72px) + 20px)}
.fq42__side .head{margin:0}
.fq42__chips{display:flex;flex-wrap:wrap;gap:8px}
.fq42__g{font:500 13.5px/1.2 var(--f-text);color:var(--blue42);margin:26px 0 6px;scroll-margin-top:calc(var(--hdr,72px) + 20px)}
.fq42__g:first-child{margin-top:0}
.fq42 .faq{background:#fff;border-radius:16px;box-shadow:0 0 0 1px var(--hair42);margin-bottom:8px;border:0}
.fq42 .faq summary{padding:16px 18px}
.fq42 .faq__a{padding:0 18px 16px}
.fq42 .faqs.is-filtered .fq42__g{display:none}
@media (max-width:900px){.fq42__g2{grid-template-columns:1fr}.fq42__side{position:static}}
/* ---------- ROBOT DEMOS · scene dossier, player, grouped library */
.fstage--342 .fstage__meta{background:linear-gradient(170deg,rgba(255,255,255,.66),rgba(231,227,219,.42));box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),0 0 0 1px var(--hair42);backdrop-filter:blur(8px);border-radius:26px}
.dos42{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--hair42);border-bottom:1px solid var(--hair42)}
.dos42 div{padding:12px 0;display:grid;gap:4px}
.dos42 div+div{padding-left:16px;border-left:1px solid var(--hair42)}
.dos42 dt{font-size:12.5px;color:var(--ink-3)}.dos42 dd{font:500 15px/1.3 var(--f-text);color:var(--ink)}
.fstage--342 .pl34{border-radius:26px;box-shadow:0 0 0 1px rgba(255,255,255,.6),0 46px 80px -50px rgba(24,40,56,.6)}
.pl34[data-state=playing] .pl34__big{width:56px;margin:-28px 0 0 -28px;background:rgba(250,250,248,.55);backdrop-filter:blur(6px)}
@media (hover:none){.pl34[data-state=playing]:hover .pl34__big{opacity:0;pointer-events:none}}
.pl34__bar input[type=range]{-webkit-appearance:none;appearance:none;height:3px;border-radius:3px;background:rgba(255,255,255,.35)}
.pl34__bar input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.35)}
.pl34__bar input[type=range]::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:50%;background:#fff}
.pl34__time{font-variant-numeric:tabular-nums;font-size:12.5px;opacity:.9}
.lib42__g{display:grid;gap:16px}
.lib42__g+.lib42__g{margin-top:clamp(40px,5vw,72px)}
.lib42__h{font:400 clamp(22px,1.8vw,28px)/1.2 var(--f-disp);letter-spacing:-.01em;display:flex;align-items:baseline;gap:10px}
.lib42__h .n{font:500 13px/1 var(--f-text);color:var(--ink-3)}
.fgrid42{grid-template-columns:repeat(4,minmax(0,1fr))}
.fgrid42 .fc34--lead{grid-column:span 2;grid-row:span 2}
.fgrid42 .fc34--lead .fc34__img{aspect-ratio:16/10.4}
.fgrid42 .fc34--lead .fc34__t b{font-size:20px}
@media (max-width:1100px){.fgrid42{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.fgrid42{grid-template-columns:repeat(2,minmax(0,1fr))}.fgrid42 .fc34--lead{grid-column:1/-1;grid-row:auto}}
@media (max-width:560px){.fgrid42{grid-template-columns:1fr;gap:14px}.fgrid42 .fc34{grid-template-columns:44% minmax(0,1fr);align-items:center;padding:6px}.fgrid42 .fc34--lead{grid-template-columns:1fr;padding:6px 6px 14px}.fgrid42 .fc34__t span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .ffilters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-16px;padding-inline:16px}.ffilters .chip{flex:none}}
/* V3.4.2 fixes after first visual pass */
.co42c .closing__c .tB,.su42c .closing__c .tB{color:var(--ink)}
.co42c .closing__c p,.su42c .closing__c p{color:var(--ink-2)}
@media (min-width:761px){.co42c .closing__img::after,.su42c .closing__img::after{background:linear-gradient(90deg,rgba(246,244,239,.95) 0%,rgba(246,244,239,.78) 30%,rgba(246,244,239,0) 58%),linear-gradient(0deg,rgba(246,244,239,.55) 0%,rgba(246,244,239,0) 30%)}}
.ts42__v .ts42__card img{width:28px;height:28px;object-fit:contain}
@media (max-width:640px){
 .dc42__w{overflow:visible;background:none;box-shadow:none}
 .dc42__t{min-width:0}.dc42__t thead{display:none}
 .dc42__t tbody{display:grid;gap:10px}
 .dc42__t tr{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:14px;border-radius:18px;background:#fff;box-shadow:0 0 0 1px var(--hair42)}
 .dc42__t tbody th{grid-column:1/-1;padding:0 0 6px;border-bottom:1px solid var(--hair42)}
 .dc42__t td{display:grid;gap:4px;padding:0;border:0}
 .dc42__t td::before{content:attr(data-l);font-size:11.5px;color:var(--ink-3)}
 .dc42__a{justify-self:start}
}
@media (min-width:901px){.ab42__g{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}}
.fq42__side .tB{font-size:clamp(34px,3vw,48px)}
@media (min-width:761px){.fgrid42 .fc34--lead{grid-template-rows:minmax(0,1fr) auto}.fgrid42 .fc34--lead .fc34__img{aspect-ratio:auto;min-height:260px}}
@media (min-width:1101px){.fgrid42--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
:lang(zh-CN) :is(.ab42__lead,.st42__s h3,.eco__cb h3,.lib42__h),:lang(ja) :is(.ab42__lead,.st42__s h3,.eco__cb h3,.lib42__h),:lang(ko) :is(.ab42__lead,.st42__s h3,.eco__cb h3,.lib42__h){font-family:var(--f-text);font-weight:400;letter-spacing:0}
@media (min-width:761px){.su42h{background:#F4F3EF}.su42h .fx__media{left:30%}.su42c{background:#F4F3EF}.su42c .closing__img{left:28%}}
@media (min-width:761px){.su42h .fx__media{left:38%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 24%);mask-image:linear-gradient(90deg,transparent 0%,#000 24%)}.su42c .closing__img{-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 22%);mask-image:linear-gradient(90deg,transparent 0%,#000 22%)}}

/* ===== v35.css ===== */
/* =====================================================================================================================
   TANNAI V3.5 — Luminous Robotics Flagship. Loaded after v32/v33/v34. Tokens first, then shared atoms, then templates.
   Palette: pearl canvas · titanium mist · silver blue · warm alabaster · slate ink · one TANNAI accent.
   ===================================================================================================================== */
:root{
  --pearl5:#F7F7F3; --mist5:#E9EDF0; --sb5:#D7E1E8; --ala5:#F0EEE8; --ink5:#223444; --acc5:#2365D5; --acc5-2:#1A4FB0; --acc5-t:#E7EEFB;
  --ink:#1F3142; --ink-2:#34485A; --ink-3:#4E6070; --ink-4:#6A7A88;
  --cobalt:#2365D5; --cobalt-2:#1A4FB0; --cobalt-tint:#E7EEFB; --tblue:#2365D5;
  --line:rgba(34,52,68,.12); --line-2:rgba(34,52,68,.2); --hair5:rgba(34,52,68,.09);
  --sh5:0 1px 2px rgba(34,52,68,.05),0 30px 60px -42px rgba(34,52,68,.5); --sh5-l:0 1px 2px rgba(34,52,68,.05),0 50px 90px -60px rgba(34,52,68,.6);
  --pearl-w:#F7F7F3; --ivory:#F7F7F3;
}
body{background:var(--pearl5);color:var(--ink)}
.hdr{background:rgba(247,247,243,.74)}
::selection{background:#CFE0FA}

/* ---------- buttons: crisp, not fat pills ---------- */
.btn{border-radius:11px;font-weight:500;letter-spacing:.005em}
.btn--sm{border-radius:9px}
.btn--lg{min-height:52px;border-radius:12px;padding:0 24px}
.btn--p{background:var(--acc5);box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 14px 26px -16px rgba(35,101,213,.8)}
.btn--p:hover{background:var(--acc5-2)}
.btn--o{background:rgba(255,255,255,.62);border-color:rgba(34,52,68,.18)}
.btn--o:hover{background:#fff;border-color:rgba(34,52,68,.3)}
.btn--g{border-radius:12px}
.tl{font-weight:500}
.chip{border-radius:9px}
.cap{font-size:11.5px;letter-spacing:.01em}

/* ---------- section rhythm: continuous light gradients, one subject per screen ---------- */
.s5{position:relative;padding-block:clamp(72px,8vw,128px)}
.s5 .head{margin-bottom:clamp(28px,3.2vw,48px)}
.s5 .head .sub{max-width:44ch}
.rv5 .v35 [class].is-in{opacity:1}
@media (prefers-reduced-motion:no-preference){
  .rv5 .v35 .s5 .head,.rv5 .v35 .w5,.rv5 .v35 .hw5__stage,.rv5 .v35 .hw5__r,.rv5 .v35 .act5__big,.rv5 .v35 .act5__d,.rv5 .v35 .go5__brief,.rv5 .v35 .go5__ins{opacity:.001;transform:translateY(14px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
  .rv5 .v35 .is-in{opacity:1!important;transform:none!important}
}

/* ================================================================ HOME · 01 flagship robot stage */
.hero5{position:relative;min-height:min(94svh,940px);display:grid;align-items:end;isolation:isolate;background:#EEF0F0;overflow:hidden}
.hero5__media{position:absolute;inset:0;z-index:-1;container-type:size}
.hero5__media picture,.hero5__media img{display:block;width:100%;height:100%}
.hero5__media img{object-fit:cover;object-position:64% 58%}
.hero5__media::after{content:"";position:absolute;inset:0;pointer-events:none;background:
  linear-gradient(90deg,rgba(247,247,243,.94) 0%,rgba(247,247,243,.78) 24%,rgba(247,247,243,.18) 46%,rgba(247,247,243,0) 58%),
  linear-gradient(0deg,rgba(247,247,243,.86) 0%,rgba(247,247,243,0) 22%),
  radial-gradient(60% 40% at 68% 96%,rgba(34,52,68,.10),rgba(34,52,68,0) 70%)}
/* hotspot layer follows the cover-fitted frame (2560×1200 master): same size and centre as the image */
.hero5__map{position:absolute;left:64%;top:58%;width:max(100cqw,calc(100cqh * 2.1333));height:max(100cqh,calc(100cqw / 2.1333));transform:translate(-64%,-58%);z-index:2;pointer-events:none}
.hs5{position:absolute;left:var(--x);top:var(--y);display:flex;align-items:center;gap:10px;pointer-events:auto;color:var(--ink);text-decoration:none;transform:translate(-9px,-9px)}
.hs5 i{position:relative;width:18px;height:18px;border-radius:50%;background:rgba(255,255,255,.9);box-shadow:0 0 0 1px rgba(35,101,213,.55),0 4px 14px rgba(34,52,68,.25)}
.hs5 i::after{content:"";position:absolute;inset:5px;border-radius:50%;background:var(--acc5)}
.hs5 span{display:grid;padding:7px 11px;border-radius:10px;background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 0 0 1px rgba(255,255,255,.9),0 10px 24px -16px rgba(34,52,68,.6);opacity:0;transform:translateX(-4px);transition:opacity .25s,transform .25s;white-space:nowrap}
.hs5 b{font:500 12.5px/1.2 var(--f-text)}.hs5 em{font:400 11.5px/1.3 var(--f-text);font-style:normal;color:var(--acc5)}
.hs5:hover span,.hs5:focus-visible span{opacity:1;transform:none}
.hero5:hover .hs5 span{opacity:.92;transform:none}
.hero5__c{display:grid;gap:18px;padding-top:calc(var(--hdr) + 72px);padding-bottom:clamp(36px,4.4vw,64px);position:relative;z-index:3}
.hero5__brand{font:500 14px/1.2 var(--f-text);color:var(--ink-2);letter-spacing:.01em}
.hero5 .tA{max-width:none;color:var(--ink)}
.hero5 .sub{max-width:38ch;color:var(--ink-2)}
.hero5__cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:6px}
.hero5__low{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-top:clamp(18px,3vw,40px)}
.h5watch{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 16px 0 6px;border-radius:12px;background:rgba(255,255,255,.66);border:1px solid rgba(255,255,255,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:500 14px/1 var(--f-text);color:var(--ink);cursor:pointer}
.h5watch__i{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--ink);color:#fff}.h5watch__i svg{width:14px;height:14px}
.h5watch__d{font:400 12.5px/1 var(--f-mono,ui-monospace,monospace);color:var(--ink-3);padding-left:10px;border-left:1px solid var(--line)}
.h5cats{display:flex;flex-wrap:wrap;gap:8px}
.h5cat{display:inline-flex;align-items:center;gap:10px;padding:5px 14px 5px 5px;border-radius:12px;background:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:500 13.5px/1.2 var(--f-text);color:var(--ink);transition:background .2s}
.h5cat:hover{background:#fff}
.h5cat img{width:40px;height:40px;border-radius:8px;object-fit:cover}
.hero5 .lead--m{display:none}
@media (max-width:1100px){.hero5__media img{object-position:70% 58%}.hero5__map{left:70%;transform:translate(-70%,-58%)}}
@media (max-width:720px){
  .hero5{min-height:0;display:block;background:var(--pearl5)}
  .hero5__media{position:relative;inset:auto;z-index:0;padding-top:var(--hdr);container-type:normal}
  .hero5__media img{height:auto;aspect-ratio:4/4.3;object-position:50% 62%}
  .hero5__media::after{background:linear-gradient(0deg,rgba(247,247,243,1) 0%,rgba(247,247,243,0) 24%)}
  .hero5__map{display:none}
  .hero5__c{padding-top:0;margin-top:-24px;gap:14px}
  .hero5 .lead--d{display:none}.hero5 .lead--m{display:block}
  .hero5__cta{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .hero5__cta .btn{width:100%;padding:0 12px;white-space:normal;text-align:center;line-height:1.2}
  .hero5__cta .tl{grid-column:1/-1;justify-self:start}
  .hero5__low{margin-top:6px}
  .h5cats{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--gut));padding-inline:var(--gut);width:calc(100% + 2 * var(--gut))}
  .h5cat{flex:none}
}

/* ================================================================ HOME · three task paths */
.w5s{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:clamp(14px,1.6vw,24px);align-items:stretch}
.w5{display:grid;grid-template-rows:auto 1fr;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px var(--hair5),var(--sh5);transition:transform .35s var(--ease),box-shadow .35s}
.w5:hover{transform:translateY(-3px);box-shadow:0 0 0 1px var(--hair5),var(--sh5-l)}
.w5__img{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(160deg,#F4F3EF,#E3E9EE)}
.w5__img img,.w5__img picture{width:100%;height:100%;object-fit:cover}
.w5__img--bot{display:grid;place-items:end center;background:radial-gradient(70% 60% at 50% 80%,#fff,#E8EDF1 70%,#DCE4EA)}
.w5__img--bot img{width:auto;height:94%;object-fit:contain;filter:drop-shadow(0 18px 20px rgba(34,52,68,.22))}
.w5__img--doc{display:grid;place-items:center;padding:20px;background:linear-gradient(160deg,#F2F0EA,#E5EAEE)}
.w5__img--doc .doc{transform:rotate(-2deg);max-width:300px;width:100%}
.w5__b{display:grid;gap:10px;align-content:start;justify-items:start;padding:22px 22px 24px}
.w5__b h3{font:400 clamp(22px,1.7vw,27px)/1.2 var(--f-disp);letter-spacing:-.01em}
.w5__b p{color:var(--ink-2);font-size:15.5px;max-width:38ch}
.w5__b .btn{margin-top:8px}
@media (max-width:1024px){.w5s{grid-template-columns:1fr 1fr}.w5--w1{grid-column:1/-1}.w5--w1 .w5__img{aspect-ratio:21/9}}
@media (max-width:640px){.w5s{grid-template-columns:1fr;gap:12px}.w5{grid-template-columns:40% minmax(0,1fr);grid-template-rows:auto}.w5__img,.w5--w1 .w5__img{aspect-ratio:auto;height:100%;min-height:168px}.w5__b{padding:16px}.w5__b h3{font-size:20px}.w5__b p{font-size:14px}.w5__img--doc{padding:8px}.w5__img--doc .doc{transform:scale(.72)}.w5__b .btn{min-height:42px;padding:0 14px}}

/* ================================================================ HOME · 02 precision hardware gallery */
.hw5__g{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:stretch}
.hw5__stage{position:relative;margin:0;border-radius:26px;overflow:hidden;min-height:100%;background:#E7ECEF;box-shadow:var(--sh5-l)}
.hw5__stage img,.hw5__stage picture{width:100%;height:100%;object-fit:cover;object-position:80% 55%}
.hw5__stage .cap{inset:auto auto 14px 14px}
.hw5__list{display:grid;gap:10px;align-content:start}
.hw5__r{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 16px 12px 12px;border-radius:18px;background:rgba(255,255,255,.78);box-shadow:0 0 0 1px var(--hair5);transition:background .25s,box-shadow .25s}
.hw5__r:hover{background:#fff;box-shadow:0 0 0 1px rgba(35,101,213,.22),var(--sh5)}
.hw5__th{display:block;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#EEF0F0}
.hw5__th img{width:100%;height:100%;object-fit:cover}
.hw5__b{display:grid;gap:3px;min-width:0}
.hw5__b .code{font-size:12px;color:var(--acc5)}
.hw5__b h3{font:500 16px/1.3 var(--f-text)}
.hw5__b h3 a{color:var(--ink)}
.hw5__kv{display:flex;flex-wrap:wrap;gap:2px 16px;margin-top:4px}
.hw5__kv div{display:flex;gap:6px;font-size:13px}.hw5__kv dt{color:var(--ink-3)}.hw5__kv dd{color:var(--ink)}
.hw5__p{display:grid;justify-items:end;gap:2px;text-align:right}
.hw5__p b{font:500 17px/1.2 var(--f-text)}.hw5__p small{font-size:11.5px;color:var(--ink-3)}
.hw5__p .tl{font-size:13px;margin-top:4px}
.hw5__more{display:flex;flex-wrap:wrap;gap:18px;margin-top:8px}
@media (max-width:1024px){.hw5__g{grid-template-columns:1fr}.hw5__stage{aspect-ratio:16/9;min-height:0}}
@media (max-width:560px){.hw5__r{grid-template-columns:72px minmax(0,1fr);gap:12px}.hw5__p{grid-column:2;justify-items:start;text-align:left;grid-auto-flow:column;align-items:baseline;gap:8px}.hw5__p small{display:none}}

/* ================================================================ HOME · 03 robot applications */
.act5__g{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(14px,1.6vw,24px)}
.act5__big{position:relative;margin:0;border-radius:26px;overflow:hidden;min-height:clamp(420px,42vw,620px);background:#DDE4E9;box-shadow:var(--sh5-l)}
.act5__big>picture,.act5__big>picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.act5__big>.cap{inset:14px 14px auto auto}
.act5__over{position:absolute;left:clamp(14px,1.6vw,22px);bottom:clamp(14px,1.6vw,22px);max-width:min(440px,calc(100% - 28px));display:grid;gap:8px;padding:18px 20px;border-radius:18px;background:rgba(250,250,247,.84);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 0 0 1px rgba(255,255,255,.9),var(--sh5)}
.act5__over b{font:400 24px/1.2 var(--f-disp);letter-spacing:-.01em}
.act5__over>span{font-size:14.5px;color:var(--ink-2)}
.act5__ev{display:flex;flex-wrap:wrap;gap:6px}
.act5__side{display:grid;gap:clamp(14px,1.6vw,24px)}
.act5__d{position:relative;display:grid;grid-template-rows:1fr auto;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px var(--hair5),var(--sh5);color:var(--ink)}
.act5__d .ph{position:relative;display:block;min-height:160px;overflow:hidden}
.act5__d .ph picture,.act5__d .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.act5__d:hover img{transform:scale(1.03)}
.act5__d .cap{inset:10px auto auto 10px}
.act5__t{display:grid;gap:3px;padding:14px 16px 16px}.act5__t b{font:500 16px/1.3 var(--f-text)}.act5__t span{font-size:13.5px;color:var(--ink-3)}
.act5__idx{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(18px,2vw,28px)}
.act5__chip{display:inline-flex;align-items:center;gap:10px;padding:4px 14px 4px 4px;border-radius:11px;background:rgba(255,255,255,.7);box-shadow:0 0 0 1px var(--hair5);font-size:13.5px;color:var(--ink);transition:background .2s}
.act5__chip:hover{background:#fff}.act5__chip img{width:48px;height:34px;border-radius:7px;object-fit:cover}
@media (max-width:1024px){.act5__g{grid-template-columns:1fr}.act5__side{grid-template-columns:1fr 1fr}.act5__d .ph{min-height:200px}}
@media (max-width:640px){.act5__big{min-height:0;aspect-ratio:4/4.6;border-radius:20px}.act5__over{position:static;max-width:none;margin:0;border-radius:0;background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
  .act5__big{display:grid;grid-template-rows:1fr auto;aspect-ratio:auto}.act5__big>picture{position:relative;display:block;aspect-ratio:4/3.4}.act5__big>picture img{position:absolute}
  .act5__side{grid-template-columns:1fr 1fr;gap:10px}.act5__d .ph{min-height:120px}.act5__t{padding:10px 12px 12px}.act5__t b{font-size:14px}.act5__t span{font-size:12.5px}
  .act5__idx{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--gut));padding-inline:var(--gut)}.act5__chip{flex:none}}

/* ================================================================ HOME · perception path, showroom stage, demos band */
.v35 .pp34{background:linear-gradient(180deg,var(--from,#EEF1F3),var(--to,#E9EDF0))}
.v35 .pp34__stage,.v35 .pp34__panel{border-radius:26px}
.sr5__g{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(20px,3.2vw,56px);align-items:center}
.sr5__c{display:grid;gap:18px;align-content:center}
.sr5__stage{position:relative;border-radius:28px;overflow:hidden;background:radial-gradient(70% 55% at 50% 72%,#FFFFFF 0%,#EEF2F4 52%,#DCE4EA 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),var(--sh5-l)}
.sr5__stage::after{content:"";position:absolute;left:12%;right:12%;bottom:9%;height:14%;border-radius:50%;background:radial-gradient(closest-side,rgba(34,52,68,.16),rgba(34,52,68,0));pointer-events:none;z-index:0}
.sr5__stage .viewer{position:relative;z-index:1}
@media (max-width:1024px){.sr5__g{grid-template-columns:1fr}.sr5__stage{order:-1}}
.v35 .fb34{background:linear-gradient(180deg,var(--from),var(--to))}

/* ================================================================ HOME · start a project + insights */
.go5__g{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(20px,3.6vw,64px);align-items:start}
.go5__brief{display:grid;gap:18px;padding:clamp(22px,2.6vw,38px);border-radius:28px;background:linear-gradient(165deg,#FFFFFF,#F2F3F0);box-shadow:0 0 0 1px var(--hair5),var(--sh5-l)}
.go5__steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;counter-reset:none}
.go5__steps li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--mist5);font-size:14px}
.go5__n{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--ink);color:#fff;font:500 13px/1 var(--f-text)}
.go5__tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.go5__tiles .scn{border-radius:12px}
.go5__ins{display:grid;gap:14px}
.go5__ih{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.go5__as{display:grid;gap:10px}
.go5__a{display:grid;grid-template-columns:120px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:16px;row-gap:4px;padding:10px;border-radius:16px;background:rgba(255,255,255,.72);box-shadow:0 0 0 1px var(--hair5);color:var(--ink);transition:background .2s}
.go5__a:hover{background:#fff}
.go5__a .ph{grid-row:1/3;border-radius:10px;overflow:hidden;aspect-ratio:4/3}
.go5__a .ph img,.go5__a .ph picture{width:100%;height:100%;object-fit:cover}
.go5__a .meta{display:flex;gap:10px;font-size:12.5px;color:var(--ink-3)}
.go5__a b{font:500 15px/1.35 var(--f-text)}
@media (max-width:1024px){.go5__g{grid-template-columns:1fr}}
@media (max-width:560px){.go5__steps{grid-template-columns:1fr}.go5__tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.go5__a{grid-template-columns:92px minmax(0,1fr)}.go5__a b{font-size:14px}}

/* ================================================================ SUPPORT · first screen + Support Request */
.su5h{min-height:min(78svh,760px)}
.su5go{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:760px;margin-top:6px}
.su5go__a{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;row-gap:2px;align-items:start;padding:14px;border-radius:14px;background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 0 0 1px rgba(255,255,255,.95),0 14px 30px -24px rgba(34,52,68,.6);color:var(--ink);transition:background .2s,box-shadow .2s}
.su5go__a:hover{background:#fff;box-shadow:0 0 0 1px rgba(35,101,213,.3),0 14px 30px -20px rgba(34,52,68,.6)}
.su5go__a i{grid-row:1/3;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--acc5-t);color:var(--acc5)}.su5go__a i svg{width:18px;height:18px}
.su5go__a b{font:500 15px/1.25 var(--f-text)}.su5go__a span{font-size:12.5px;line-height:1.4;color:var(--ink-3)}
.su5go__a--rfq i{background:var(--mist5);color:var(--ink)}
.su5h .su42__q{margin-top:2px}
@media (max-width:860px){.su5go{grid-template-columns:1fr;gap:8px}.su5go__a{padding:12px}}
.req5__q{font:500 15px/1.3 var(--f-text);color:var(--ink-2);margin-bottom:10px}
.int5{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:clamp(18px,2vw,28px)}
.int5>button,.int5__rfq{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;row-gap:3px;align-items:start;text-align:left;padding:16px;border-radius:16px;background:rgba(255,255,255,.6);box-shadow:0 0 0 1px var(--hair5);color:var(--ink);cursor:pointer;transition:all .2s}
.int5 i{grid-row:1/4;width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:var(--mist5);color:var(--ink-2)}.int5 i svg{width:19px;height:19px}
.int5 b{font:500 16px/1.25 var(--f-text)}.int5 span{font-size:13px;color:var(--ink-3);line-height:1.45}
.int5>button[aria-selected=true]{background:#fff;box-shadow:0 0 0 2px var(--acc5),var(--sh5)}
.int5>button[aria-selected=true] i{background:var(--acc5);color:#fff}
.int5__rfq em{font-style:normal;font:500 13px/1.2 var(--f-text);color:var(--acc5);display:inline-flex;align-items:center;gap:6px;margin-top:6px}.int5__rfq em svg{width:14px;height:14px}
.int5__rfq{background:transparent;box-shadow:0 0 0 1px dashed var(--hair5);border:1px dashed rgba(34,52,68,.22)}
.req5__g{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(18px,2.6vw,40px);align-items:start}
.rq5{display:grid;gap:18px;padding:clamp(18px,2.4vw,32px);border-radius:24px;background:#fff;box-shadow:0 0 0 1px var(--hair5),var(--sh5-l)}
.fs5{border:0;padding:0;margin:0;display:grid;gap:10px;min-width:0}
.fs5 legend,.fld5>label,.lab5{font:500 14.5px/1.3 var(--f-text);color:var(--ink);padding:0;margin-bottom:8px}
.lab5{margin:6px 0 0}
.opt5{font-weight:400;color:var(--ink-3);font-size:13px}
.fld5{display:grid;gap:6px;min-width:0}
.fg5{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.rq5 .inp{width:100%;min-height:46px;border-radius:11px;border:1px solid rgba(34,52,68,.2);background:#FBFBF9;padding:10px 13px;font:400 15.5px/1.4 var(--f-text);color:var(--ink)}
.rq5 textarea.inp{min-height:120px;resize:vertical}
.rq5 select.inp{appearance:auto}
.rq5 .inp:focus{outline:2px solid var(--acc5);outline-offset:1px;background:#fff}
.rq5 .opts{display:flex;flex-wrap:wrap;gap:8px}
.err5{display:none;align-items:center;gap:6px;font-size:13px;color:#B3261E}.err5 svg{width:14px;height:14px}
.is-err>.err5,.is-err .err5{display:flex}
.is-err .inp{border-color:#B3261E;background:#FFF8F7}
.errsum5{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:11px;background:#FDECEA;color:#8C1D18;font-size:14px}.errsum5[hidden]{display:none}
.file5{display:inline-flex;width:fit-content;cursor:pointer}.file5 input{position:absolute;opacity:0;width:1px;height:1px}
.file5 span{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 14px;border-radius:10px;border:1px dashed rgba(34,52,68,.3);font:500 14px/1 var(--f-text);color:var(--ink)}
.file5:focus-within span{outline:2px solid var(--acc5)}.file5 svg{width:16px;height:16px}
.files5{list-style:none;display:grid;gap:4px;font-size:13px;color:var(--ink-3)}
.rq5__go{display:grid;gap:10px;justify-items:start;padding-top:6px;border-top:1px solid var(--hair5)}
.rqs5{position:sticky;top:calc(var(--hdr) + 16px);display:grid;gap:16px;padding:20px;border-radius:22px;background:linear-gradient(165deg,#F9F9F6,#ECF0F3);box-shadow:0 0 0 1px var(--hair5)}
.rqs5__h{display:flex;justify-content:space-between;align-items:center;gap:10px}.rqs5__h b{font:500 16px/1.2 var(--f-text)}
.rqs5__l{display:grid}
.rqs5__l>div{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:10px;padding:9px 0;border-bottom:1px solid var(--hair5);font-size:13.5px}
.rqs5__l>div[hidden]{display:none}
.rqs5__l dt{color:var(--ink-3)}.rqs5__l dd{color:var(--ink);overflow-wrap:anywhere}.rqs5__l dd.is-empty{color:var(--ink-4)}
.rqs5__next ol{display:grid;gap:6px;padding-left:18px;font-size:13.5px;color:var(--ink-2);margin-top:8px}
.rqok5{display:grid;gap:14px;padding:clamp(18px,2.4vw,32px);border-radius:24px;background:#fff;box-shadow:0 0 0 2px #E8C77A,var(--sh5-l)}
.rqok5[hidden]{display:none}
.rqok5__h{display:flex;gap:14px;align-items:flex-start}.rqok5__h h3{font:500 20px/1.25 var(--f-text)}.rqok5__h p{color:var(--ink-2);margin-top:4px}
.rqok5 .okmark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex:none;background:#FBF1DA;color:#8A6416}.rqok5 .okmark svg{width:20px;height:20px}
.rqok5__txt{white-space:pre-wrap;font:400 13px/1.55 var(--f-mono,ui-monospace,monospace);background:#F6F6F3;border-radius:12px;padding:14px;max-height:340px;overflow:auto;border:1px solid var(--hair5)}
@media (max-width:1024px){.req5__g{grid-template-columns:1fr}.rqs5{position:static}}
@media (max-width:760px){.int5{grid-template-columns:1fr;gap:8px}.int5>button,.int5__rfq{padding:12px}.int5 i{width:34px;height:34px}}

/* ================================================================ RFQ studio · intent line + truthful result */
.rfq5int{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 18px;margin-bottom:16px;padding:12px 16px;border-radius:14px;background:rgba(255,255,255,.7);box-shadow:0 0 0 1px var(--hair5);font-size:14px;color:var(--ink-2)}
.rfq5int>span{display:inline-flex;align-items:center;gap:8px}.rfq5int svg{width:16px;height:16px;flex:none}
.prevnote--top{margin:0 0 6px;padding:12px 14px;border-radius:12px;background:#FBF1DA;color:#5F4510;font-weight:500}

/* ================================================================ ROBOT DEMOS · covers lead */
.v35 .fc34__img img{object-position:50% 50%}
.v35 .fstage--342 .pl34{box-shadow:0 0 0 1px rgba(255,255,255,.7),0 50px 90px -56px rgba(24,40,56,.7)}

.w5 .cap{inset:12px 12px auto auto}
.w5__img--bot img{height:100%;width:100%;object-fit:cover;filter:none}
.go5__tiles .scn{aspect-ratio:auto;display:grid;grid-template-rows:auto auto;background:#fff;box-shadow:0 0 0 1px var(--hair5);border-radius:12px}
.go5__tiles .scn img{position:static;aspect-ratio:4/3;height:auto;border-radius:12px 12px 0 0}
.go5__tiles .scn__t{padding:8px 10px;font-size:13px;line-height:1.25}
.go5__tiles .scn__t svg{width:13px;height:13px}
.cap{white-space:nowrap}
.rqs5__h .doc__tag{position:static;transform:none;margin:0}
@media (max-width:720px){.su5h .fx__media{aspect-ratio:16/10}.su5h .fx__c{gap:14px}}
@media (min-width:721px){.su42h.su5h .fx__media{left:44%}}

/* ================================================================ PRODUCTS · object theatre */
.pr5h .fx__media::after{background:linear-gradient(90deg,rgba(247,247,243,.94) 0%,rgba(247,247,243,.7) 28%,rgba(247,247,243,0) 52%),linear-gradient(0deg,rgba(247,247,243,.7) 0%,rgba(247,247,243,0) 24%)}
.ot5s .cathead{margin-bottom:clamp(22px,2.6vw,40px)}
.ot5{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,3vw,52px);align-items:center}
.ot5+.ot5{margin-top:clamp(48px,6vw,96px)}
.ot5__stage{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-template-rows:1fr 1fr;gap:12px;min-height:clamp(380px,36vw,560px)}
.ot5__f{position:relative;margin:0;border-radius:22px;overflow:hidden;background:linear-gradient(160deg,#FBFBF9,#E9EDF0);box-shadow:0 0 0 1px var(--hair5),var(--sh5)}
.ot5__f .ph{position:absolute;inset:0;border-radius:0;background:transparent}
.ot5__f .ph picture,.ot5__f .ph img{width:100%;height:100%;object-fit:cover}
.ot5__f figcaption{position:absolute;left:10px;bottom:10px;max-width:calc(100% - 20px);padding:5px 10px;border-radius:8px;background:rgba(250,250,247,.86);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:12px;color:var(--ink-2)}
.ot5__f--hero{grid-row:1/3}
/* a different camera per product: lens (wrist), mast, scan (LiDAR), I/O (compute) */
.ot5--mast{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}.ot5--mast .ot5__stage{order:2;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.ot5--mast .ot5__f--hero{grid-column:2;grid-row:1/3}.ot5--mast .ot5__f--mac{grid-column:1;grid-row:1}.ot5--mast .ot5__f--ctx{grid-column:1;grid-row:2}
.ot5--scan .ot5__stage{grid-template-columns:1fr 1fr;grid-template-rows:1.4fr 1fr}.ot5--scan .ot5__f--mac{grid-column:1/3;grid-row:1}.ot5--scan .ot5__f--hero{grid-row:2;grid-column:1}.ot5--scan .ot5__f--ctx{grid-row:2;grid-column:2}
.ot5--io{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}.ot5--io .ot5__stage{order:2;grid-template-columns:1fr 1fr;grid-template-rows:1.4fr 1fr}.ot5--io .ot5__f--mac{grid-column:1/3;grid-row:1}.ot5--io .ot5__f--hero{grid-row:2;grid-column:1}.ot5--io .ot5__f--ctx{grid-row:2;grid-column:2}
.ot5__c{display:grid;gap:12px;align-content:center}
.ot5__c .code{font-size:13px;color:var(--acc5)}
.ot5__c h3{font:400 clamp(26px,2.2vw,36px)/1.15 var(--f-disp);letter-spacing:-.015em}
.ot5__c .sub{max-width:44ch}
.ot5__spec{margin-top:2px}
.ot5__buy{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--hair5)}
.ot5__buy b{display:block;font:500 22px/1.1 var(--f-text)}.ot5__buy small{font-size:12.5px;color:var(--ink-3)}
.ot5__more{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
@media (max-width:900px){
  .ot5,.ot5--mast,.ot5--io{grid-template-columns:1fr}
  .ot5--mast .ot5__stage,.ot5--io .ot5__stage{order:0}
  .ot5__stage{min-height:0;aspect-ratio:4/3.4}
}
@media (max-width:560px){.ot5__stage{aspect-ratio:auto;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;min-height:0}
  .ot5 .ot5__f--hero,.ot5--mast .ot5__f--hero,.ot5--scan .ot5__f--hero,.ot5--io .ot5__f--hero{grid-column:1/3;grid-row:1;aspect-ratio:4/3}
  .ot5 .ot5__f--mac,.ot5--mast .ot5__f--mac,.ot5--scan .ot5__f--mac,.ot5--io .ot5__f--mac{grid-column:1;grid-row:2;aspect-ratio:1}
  .ot5 .ot5__f--ctx,.ot5--mast .ot5__f--ctx,.ot5--scan .ot5__f--ctx,.ot5--io .ot5__f--ctx{grid-column:2;grid-row:2;aspect-ratio:1}
  .ot5__f figcaption{font-size:11px;left:6px;bottom:6px;padding:4px 8px}}
/* buyer guides */
.bg5g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}
.bg5{display:grid;grid-template-rows:auto 1fr;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px var(--hair5),var(--sh5)}
.bg5__img{display:block;aspect-ratio:16/9;overflow:hidden}.bg5__img img,.bg5__img picture{width:100%;height:100%;object-fit:cover}
.bg5__b{display:grid;gap:12px;align-content:start;padding:18px 20px 20px}
.bg5__b h3{font:400 24px/1.2 var(--f-disp);letter-spacing:-.01em}
.bg5__l{list-style:none;display:grid;gap:8px}
.bg5__l li{position:relative;padding-left:20px;font-size:14.5px;color:var(--ink-2);line-height:1.5}
.bg5__l li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:3px;border:1.5px solid var(--acc5)}
.bg5qs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:clamp(18px,2vw,28px);border-radius:18px;overflow:hidden;background:var(--hair5);box-shadow:0 0 0 1px var(--hair5)}
.bg5q{display:grid;gap:4px;padding:16px 18px;background:rgba(255,255,255,.86)}.bg5q b{font:500 15px/1.3 var(--f-text)}.bg5q span{font-size:13.5px;color:var(--ink-3)}
@media (max-width:900px){.bg5g{grid-template-columns:1fr}.bg5{grid-template-columns:38% minmax(0,1fr);grid-template-rows:auto}.bg5__img{aspect-ratio:auto;height:100%}.bg5qs{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.bg5{grid-template-columns:1fr}.bg5__img{aspect-ratio:16/8}.bg5qs{grid-template-columns:1fr}}

/* ================================================================ COMPANY · technology atlas */
.at5{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(18px,2.6vw,40px);align-items:stretch}
.at5__stage{position:relative;min-height:clamp(460px,42vw,600px);border-radius:30px;background:radial-gradient(55% 60% at 50% 50%,#FFFFFF 0%,rgba(255,255,255,0) 72%),linear-gradient(160deg,#F5F4EF,#E2E8ED);box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),var(--sh5-l);overflow:hidden}
.at5__stage>.cap{inset:auto 14px 14px auto}
.at5__svg{position:absolute;inset:0;width:100%;height:100%}
.at5__e{stroke:rgba(34,52,68,.16);stroke-width:1.2;stroke-dasharray:3 6;transition:stroke .3s,stroke-width .3s}
.at5__e.is-hint{stroke:rgba(35,101,213,.4)}
.at5__e.is-on{stroke:var(--acc5);stroke-width:2;stroke-dasharray:none}
.at5__n{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:grid;justify-items:center;gap:8px;max-width:210px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 0 0 1px var(--hair5),0 18px 36px -28px rgba(34,52,68,.6);text-align:center;cursor:pointer;transition:box-shadow .25s,transform .25s;color:var(--ink)}
.at5__n:hover{transform:translate(-50%,-50%) translateY(-2px)}
.at5__n[aria-pressed=true]{box-shadow:0 0 0 2px var(--acc5),0 22px 44px -28px rgba(35,101,213,.6);background:#fff}
.at5__nt{display:grid;gap:2px}.at5__nt em{font-style:normal;font:500 11.5px/1.2 var(--f-text);color:var(--acc5)}.at5__nt b{font:500 15px/1.25 var(--f-text)}
.at5__n--app{max-width:260px;padding:18px 20px 16px;border-radius:28px}
.at5__disc{width:clamp(130px,13vw,190px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#fff,#ECEFF1 60%,#D9E1E7);box-shadow:inset 0 -12px 30px rgba(160,178,194,.25)}
.at5__disc img{width:84%;height:auto;filter:drop-shadow(0 12px 14px rgba(34,52,68,.22))}
.at5__n--app .at5__nt b{font:400 20px/1.2 var(--f-disp)}
.at5__prods{display:flex;gap:4px}.at5__prods img{width:44px;height:33px;object-fit:contain;mix-blend-mode:multiply;background:#F3F3F0;border-radius:6px}
.at5__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}.at5__chips span{font:500 11px/1 var(--f-text);padding:5px 7px;border-radius:6px;background:var(--mist5);color:var(--ink-2)}
.at5__ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--acc5-t);color:var(--acc5)}.at5__ic svg{width:19px;height:19px}
.at5__side{display:grid;align-content:center}
.at5__p{display:grid;gap:10px;padding:clamp(20px,2.4vw,32px);border-radius:24px;background:#fff;box-shadow:0 0 0 1px var(--hair5),var(--sh5)}
.at5__p[hidden]{display:none}
.at5__tag{font:500 12.5px/1.2 var(--f-text);color:var(--acc5)}
.at5__p h3{font:400 clamp(24px,2vw,30px)/1.2 var(--f-disp);letter-spacing:-.01em}
.at5__p>p{color:var(--ink-2)}
.at5__l{list-style:none;display:grid;border-top:1px solid var(--hair5)}
.at5__l a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 2px;border-bottom:1px solid var(--hair5);font-size:15px;color:var(--ink)}
.at5__l a:hover{color:var(--acc5)}.at5__l svg{width:15px;height:15px;color:var(--ink-3)}
@media (max-width:900px){
  .at5{grid-template-columns:1fr}
  .at5__stage{min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px;border-radius:24px}
  .at5__svg{display:none}
  .at5__n{position:relative;left:auto;top:auto;transform:none;max-width:none}.at5__n:hover{transform:none}
  .at5__n--app{grid-column:1/-1;grid-template-columns:auto minmax(0,1fr);justify-items:start;text-align:left;align-items:center}
  .at5__disc{width:110px}
  .at5__stage>.cap{display:none}
}

/* ================================================================ COMPANY · engineering perspectives */
.ep5{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,24px);align-items:stretch}
.ep5__c{display:grid;grid-template-rows:auto 1fr;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px var(--hair5),var(--sh5)}
.ep5__img{position:relative;margin:0;aspect-ratio:4/3.2;overflow:hidden;background:#E9EDF0}
.ep5__img img,.ep5__img picture{width:100%;height:100%;object-fit:cover}
.ep5__img .cap{inset:12px 12px auto auto}
.ep5__img--doc{display:grid;place-items:center;padding:24px;background:linear-gradient(160deg,#F3F1EB,#E4E9EE)}.ep5__img--doc .doc{transform:rotate(-2deg);max-width:300px;width:100%}
.ep5__b{display:grid;gap:10px;align-content:start;padding:20px 22px 24px}
.ep5__n{font:300 30px/1 var(--f-disp);color:var(--acc5)}
.ep5__b h3{font:400 24px/1.2 var(--f-disp);letter-spacing:-.01em}
.ep5__b>p{font-size:15px;color:var(--ink-2)}
.ep5__macs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ep5__macs a{display:grid;gap:4px;font-size:12px;color:var(--ink-3)}.ep5__macs img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.ep5__ifs{display:flex;flex-wrap:wrap;gap:6px}
.ep5__es{display:grid;gap:8px}
.ep5__e{display:grid;grid-template-columns:36px minmax(0,1fr) 16px;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--pearl5);box-shadow:0 0 0 1px var(--hair5);color:var(--ink)}
.ep5__e:hover{background:#fff}
.ep5__e i{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--acc5-t);color:var(--acc5)}.ep5__e i svg{width:17px;height:17px}
.ep5__e b{display:block;font-size:14.5px}.ep5__e span span{font-size:12.5px;color:var(--ink-3)}.ep5__e>svg{width:15px;height:15px;color:var(--ink-3)}
@media (max-width:1024px){.ep5{grid-template-columns:1fr}.ep5__c{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);grid-template-rows:auto}.ep5__img{aspect-ratio:auto;height:100%}}
@media (max-width:640px){.ep5__c{grid-template-columns:1fr}.ep5__img{aspect-ratio:16/10}}
.co5h .fx__media::after{background:linear-gradient(90deg,rgba(247,247,243,.94) 0%,rgba(247,247,243,.72) 28%,rgba(247,247,243,0) 52%),linear-gradient(0deg,rgba(247,247,243,.75) 0%,rgba(247,247,243,0) 24%)}

/* ================================================================ SHOWROOM / viewer: no decorative tick ring */
.vring,.vcorner{display:none!important}
.v35 .room__stage,.room__stage{background:radial-gradient(70% 55% at 50% 72%,#FFFFFF 0%,#EEF2F4 52%,#DCE4EA 100%)}

/* ================================================================ RFQ studio · calmer controls, compact summary */
.p-project-brief .opt span{border-radius:10px}
.p-project-brief .pb{gap:clamp(18px,2.4vw,36px)}
.p-project-brief .sumlist>div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10px;align-items:baseline;padding:8px 0}
.p-project-brief .sumlist dt{font-size:12.5px}.p-project-brief .sumlist dd{font-size:13.5px}
.p-project-brief .pick8 .scn{border-radius:14px}

/* ================================================================ SHOWROOM · bright product hall, stage up front */
.p-showroom .phero{padding-top:calc(var(--hdr) + clamp(28px,3vw,48px));padding-bottom:clamp(18px,2vw,28px)!important}
.p-showroom #showcase{background:linear-gradient(180deg,#F1F2EF 0%,#E7ECEF 100%)}
.p-showroom .room__stage{border-radius:30px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.85),var(--sh5-l);padding:clamp(12px,1.6vw,22px)}
.p-showroom .room__stage::after{content:"";position:absolute;left:14%;right:14%;bottom:7%;height:12%;border-radius:50%;background:radial-gradient(closest-side,rgba(34,52,68,.14),rgba(34,52,68,0));pointer-events:none}
.p-showroom .info{background:#fff;box-shadow:0 0 0 1px var(--hair5),var(--sh5);border-radius:22px}
.show__item[aria-selected=true]{box-shadow:0 0 0 1.5px var(--acc5)}

/* ================================================================ APPLICATIONS · cinematic shot language */
.p-applications .sc__hero{border-radius:26px;box-shadow:var(--sh5-l)}
.p-applications .sc3v figure .ph,.p-applications .sc3v .pl34{border-radius:20px}
.p-applications .figcap b{color:var(--acc5);font-weight:500}
.p-applications .story34__c{border-radius:20px;background:rgba(255,255,255,.78);box-shadow:0 0 0 1px var(--hair5)}
.p-applications .scidx2{background:rgba(247,247,243,.86)}
/* hero frame follows the master's 2.13:1 so the whole robot and its floor stay in view */
.hero5{min-height:clamp(600px,47vw,920px)}
.hero5__media img{object-position:62% 70%}
.hero5__map{left:62%;top:70%;transform:translate(-62%,-70%)}
@media (max-width:1100px){.hero5{min-height:clamp(560px,62vw,700px)}.hero5__media img{object-position:72% 70%}.hero5__map{left:72%;transform:translate(-72%,-70%)}}
.hero5__media::after{background:
  linear-gradient(90deg,rgba(247,247,243,.95) 0%,rgba(247,247,243,.8) 24%,rgba(247,247,243,.2) 44%,rgba(247,247,243,0) 56%),
  linear-gradient(0deg,rgba(247,247,243,.55) 0%,rgba(247,247,243,0) 12%)}
.hero5__low{justify-content:flex-start;gap:14px 22px}
@media (max-width:1200px) and (min-width:721px){.hero5__map{display:none}.hero5__media::after{background:linear-gradient(90deg,rgba(247,247,243,.96) 0%,rgba(247,247,243,.86) 34%,rgba(247,247,243,.25) 56%,rgba(247,247,243,0) 68%),linear-gradient(0deg,rgba(247,247,243,.55) 0%,rgba(247,247,243,0) 12%)}.hero5__media img{object-position:92% 70%}}
.hero5 .hero__cap{inset:auto 16px 16px auto}

/* ================================================================ INSIGHTS · editorial wall, same material language */
.p-insights .feat .ph,.p-insights .feat picture img{border-radius:24px}
.p-insights .feat .ph{box-shadow:var(--sh5-l)}
.p-insights .pick34 .ph{border-radius:18px;box-shadow:0 0 0 1px var(--hair5)}
.p-insights .desk34{box-shadow:0 0 0 1px var(--hair5),var(--sh5)}
.p-insights .chip[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
/* V3.5 QA fix B01/B02: demo-library filter chips scroll inside the gutter instead of widening the phone page */
.head--split>.head__r{min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)}
@media (max-width:560px){.head--split>.head__r{width:100%}.head__r>.ffilters{max-width:calc(100% + 32px);justify-self:stretch}}
/* V3.5 phone hero fixes: keep the full robot in frame, caption on the image, CTA labels on one line */
@media (max-width:720px){
  .hero5__media img{object-position:46% 62%}
  .hero5 .hero__cap{inset:calc(var(--hdr) + 12px) 12px auto auto}
}
@media (max-width:480px){
  .hero5__cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
  .hero5__cta .btn--p{flex:1 1 100%;width:100%;white-space:nowrap}
  .hero5__cta .btn--g{width:auto;height:auto;min-height:0;padding:0;background:none;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;font:500 15px/1.3 var(--f-text);color:var(--ink);white-space:normal;text-align:left}
  .hero5__cta .btn--g::after{content:"→";margin-left:-2px}
  .hero5__cta .tl{grid-column:auto}
}

/* ===== v36.css ===== */
/* =====================================================================================================================
   TANNAI V3.6 · Robotics Experience Flagship — "Daylight Robotics Gallery"
   Loads after v32–v35. New pages use .x6 components; legacy blocks kept on a page are re-dressed at the end.
   Palette is a material progression (porcelain → titanium → mist → porcelain) carried by the page, not by boxed bands.
   ===================================================================================================================== */
@font-face{font-family:"TN Display";src:url(fonts/interdisplay-200.woff) format("woff");font-weight:200;font-display:swap;unicode-range:U+0000-00FF,U+0100-017F,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+2248,U+2264-2265,U+FEFF,U+FFFD}
@font-face{font-family:"TN Display";src:url(fonts/interdisplay-200-cyr.woff) format("woff");font-weight:200;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"TN Hei Light";src:url(fonts/hei36-300.woff) format("woff");font-weight:200 400;font-display:swap}

:root{
  --porcelain:#F7F5F0; --alabaster:#EFECE5; --paper:#FBFAF7; --titanium:#E4E7E7; --mist:#DDE4E9; --steel:#C9D1D7;
  --ink:#17212B; --ink-2:#44505C; --ink-3:#58636E; --hair:rgba(23,33,43,.12); --hair-2:rgba(23,33,43,.2);
  --satin:#A88F66; --signal:#2365D5; --signal-2:#1B4FB0; --signal-08:rgba(35,101,213,.08);
  --x6w:1320px; --x6g:max(16px,env(safe-area-inset-left,0px),min(4.4vw,64px));
  --x6sh:0 1px 1px rgba(23,33,43,.04),0 22px 48px -30px rgba(23,33,43,.42);
  --x6sh-l:0 2px 3px rgba(23,33,43,.05),0 48px 96px -48px rgba(23,33,43,.5);
  --x6ease:cubic-bezier(.22,.7,.18,1);
}
:lang(zh-CN){--f-disp:"TN Display","TN Hei Light","TN Hei","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif}

/* ---------- page ground: the material progression ---------- */
body.x6{background:linear-gradient(180deg,var(--porcelain) 0,var(--porcelain) 14%,var(--titanium) 34%,#E7EBEE 52%,var(--mist) 70%,#ECEDEB 86%,var(--porcelain) 100%);color:var(--ink)}
.x6 main{overflow-x:clip}
.x6wrap{width:100%;max-width:calc(var(--x6w) + 2 * var(--x6g));margin-inline:auto;padding-left:var(--x6g);padding-right:var(--x6g)}
.x6s{position:relative;padding-block:clamp(84px,10vw,168px)}
.x6 .sec,.x6 .s5,.x6 .band-ti{background:transparent}

/* ---------- type ---------- */
.x6d{margin:0;font:200 clamp(52px,8.4vw,150px)/.92 var(--f-disp);letter-spacing:-.045em;color:var(--ink);text-wrap:balance}
.x6d--2{font-size:clamp(46px,6.2vw,112px);line-height:.95}
.x6t{margin:0;font:300 clamp(34px,4.1vw,68px)/1.02 var(--f-disp);letter-spacing:-.035em;color:var(--ink);text-wrap:balance}
.x6t--s{font-size:clamp(30px,3vw,50px)}
.x6t2{margin:0;font:300 clamp(28px,2.8vw,46px)/1.06 var(--f-disp);letter-spacing:-.03em;color:var(--ink)}
.x6t3{margin:0;font:400 clamp(21px,1.75vw,28px)/1.18 var(--f-disp);letter-spacing:-.018em;color:var(--ink)}
:lang(zh-CN) .x6d,:lang(zh-CN) .x6t,:lang(zh-CN) .x6t2{font-weight:300;letter-spacing:-.01em}
:lang(zh-CN) .x6d{letter-spacing:.005em;line-height:1.02}
:lang(ja) .x6d,:lang(ko) .x6d,:lang(ja) .x6t,:lang(ko) .x6t{font-weight:300;letter-spacing:-.01em}
.x6sub{margin:0;font:400 clamp(16.5px,1.2vw,19px)/1.56 var(--f-text);color:var(--ink-2);max-width:56ch}
.x6lede{margin:0;font:400 clamp(17.5px,1.32vw,21px)/1.5 var(--f-text);color:var(--ink-2);max-width:52ch}
.x6lab{margin:0;font:500 13.5px/1.35 var(--f-text);letter-spacing:.015em;color:var(--ink-3)}
.x6code{font:400 12.5px/1.3 var(--f-mono);letter-spacing:.02em;color:var(--ink-3);font-variant-numeric:tabular-nums}
.x6note{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-3)}
.x6cap{display:inline-flex;align-items:center;gap:6px;font:500 12px/1 var(--f-text);letter-spacing:.01em;color:var(--ink-3);white-space:nowrap}
.x6cap::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--satin)}
.x6head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:20px 64px;align-items:end;margin-bottom:clamp(36px,4.6vw,72px)}
.x6head__r{display:grid;gap:16px;justify-items:start;min-width:0}
.x6row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
@media (max-width:900px){.x6head{grid-template-columns:minmax(0,1fr)}}

/* ---------- actions ---------- */
.x6btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:6px;font:500 15.5px/1.1 var(--f-text);letter-spacing:.005em;white-space:nowrap;border:1px solid transparent;transition:background-color .2s,color .2s,border-color .2s,box-shadow .25s,transform .2s var(--x6ease)}
.x6btn svg{width:16px;height:16px;transition:transform .25s var(--x6ease)}
.x6btn:hover svg{transform:translateX(3px)}
.x6btn--p{background:var(--signal);color:#fff;box-shadow:0 14px 28px -16px rgba(35,101,213,.75)}
.x6btn--p:hover{background:var(--signal-2)}
.x6btn--g{background:rgba(251,250,247,.72);color:var(--ink);border-color:rgba(23,33,43,.16);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.x6btn--g:hover{border-color:var(--ink);background:rgba(255,255,255,.9)}
.x6btn--o{color:var(--ink);border-color:var(--hair-2);background:transparent}
.x6btn--o:hover{border-color:var(--ink)}
.x6btn--sm{min-height:42px;padding:0 18px;font-size:14.5px}
.x6btn--lg{min-height:56px;padding:0 30px}
.x6cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
.x6 :focus-visible{outline:2px solid var(--signal);outline-offset:3px}
.x6 .btn{border-radius:6px}
.x6chips{display:flex;flex-wrap:wrap;gap:8px}
.x6chip,.x6 .chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;border-radius:4px;border:1px solid var(--hair);background:rgba(251,250,247,.6);font:500 13.5px/1.2 var(--f-text);color:var(--ink-2);transition:border-color .2s,color .2s}
.x6chip:hover,.x6 .chip:hover{border-color:var(--ink);color:var(--ink)}
.x6chip[aria-current=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.x6chip[aria-current=true] .x6code{color:rgba(255,255,255,.75)}

/* ---------- placard (gallery label, published facts only) ---------- */
.x6pl{display:grid;gap:10px;padding:18px 20px 16px;background:rgba(251,250,247,.86);border:1px solid var(--hair);border-top:1px solid var(--satin);box-shadow:var(--x6sh);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);min-width:0}
.x6pl__n{font:500 15.5px/1.3 var(--f-text);color:var(--ink)}
.x6facts{display:grid;gap:0;margin:2px 0 0}
.x6facts div{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-top:1px solid var(--hair)}
.x6facts dt{font-size:13px;color:var(--ink-3)}
.x6facts dd{margin:0;font:500 13.5px/1.35 var(--f-text);color:var(--ink);text-align:right}
.x6facts--lg div{padding:11px 0}
.x6facts--lg dt{font-size:14px}.x6facts--lg dd{font-size:15px}
.x6pl__f{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:2px}
.x6price{font:400 22px/1 var(--f-disp);letter-spacing:-.01em;color:var(--ink);display:inline-flex;align-items:baseline;gap:8px}
.x6price small{font:500 12px/1.3 var(--f-text);color:var(--ink-3);letter-spacing:0}
.x6price--lg{font-size:clamp(28px,2.4vw,38px);flex-wrap:wrap}
.x6pl__go{display:inline-flex;align-items:center;gap:6px;font:500 14px/1.2 var(--f-text);color:var(--signal)}
.x6pl__go svg{width:14px;height:14px}
.x6pl--you{border-top-color:var(--hair-2)}

/* ================================================================== HOME · monument hero */
.x6hero{position:relative;min-height:max(640px,min(100svh,1200px));display:grid;isolation:isolate;overflow:hidden;background:#EDEDEA}
.x6hero__plate{position:absolute;inset:0;z-index:0;container-type:size}
.x6hero__plate picture,.x6hero__plate img{display:block;width:100%;height:100%}
.x6hero__plate img{object-fit:cover;object-position:var(--hx,60%) var(--hy,62%)}
.x6hero__plate::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(247,245,240,.72) 0%,rgba(247,245,240,.38) 30%,rgba(247,245,240,0) 52%),linear-gradient(0deg,rgba(247,245,240,.9) 0%,rgba(247,245,240,.4) 16%,rgba(247,245,240,0) 32%)}
.x6hero__title{position:absolute;z-index:1;left:var(--x6g);right:var(--x6g);top:calc(var(--hdr) + clamp(28px,6.5vh,84px));max-width:calc(var(--x6w));margin-inline:auto;display:grid;gap:clamp(12px,1.4vw,20px);pointer-events:none}
.x6hero__title .x6d{pointer-events:auto}
.x6kick{margin:0;font:500 14px/1.3 var(--f-text);letter-spacing:.01em;color:var(--ink-2)}
.x6hero__map{position:absolute;inset:0;z-index:3;pointer-events:none;container-type:size}
.x6node{position:absolute;left:var(--x);top:var(--y);width:30px;height:30px;margin:-15px 0 0 -15px;display:grid;place-items:center;pointer-events:auto;border-radius:50%}
.x6node i{width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(35,101,213,.92),0 0 0 9px rgba(35,101,213,.18),0 6px 16px rgba(23,33,43,.35);transition:transform .25s var(--x6ease)}
.x6node:hover i,.x6node:focus-visible i{transform:scale(1.18)}
@media (prefers-reduced-motion:no-preference){.x6node i{animation:x6pulse 3.2s var(--x6ease) infinite}}
@keyframes x6pulse{0%,70%,100%{box-shadow:0 0 0 4px rgba(35,101,213,.92),0 0 0 9px rgba(35,101,213,.18),0 6px 16px rgba(23,33,43,.35)}35%{box-shadow:0 0 0 4px rgba(35,101,213,.92),0 0 0 15px rgba(35,101,213,0),0 6px 16px rgba(23,33,43,.35)}}
.x6hero__low{position:relative;z-index:4;align-self:end;width:100%;max-width:calc(var(--x6w) + 2 * var(--x6g));margin-inline:auto;padding:0 var(--x6g) clamp(56px,7vh,92px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end}
.x6hero__lede{display:grid;gap:clamp(18px,2vw,28px);max-width:500px}
.x6hero .lead--m{display:none}
.x6hero__tags{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,184px));gap:10px}
.x6tag{display:grid;gap:6px;padding:12px 14px 12px;background:rgba(251,250,247,.8);border:1px solid var(--hair);border-top-color:var(--satin);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.x6tag__k{font:500 13.5px/1.25 var(--f-text);color:var(--ink)}
.x6tag a{display:inline-flex;align-items:center;gap:6px;font:500 13px/1.25 var(--f-text);color:var(--signal)}
.x6tag a svg{width:13px;height:13px}
.x6hero__note{position:absolute;z-index:4;right:var(--x6g);top:calc(var(--hdr) + 18px);margin:0;display:grid;justify-items:end;gap:6px;text-align:right}
.x6hero__n2{font-size:12px;color:var(--ink-3);max-width:30ch}
.x6watch{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 4px;background:none;border:0;font:500 15px/1 var(--f-text);color:var(--ink);cursor:pointer}
.x6watch__i{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff}
.x6watch__i svg{width:13px;height:13px;margin-left:2px}
.x6watch--sm .x6watch__i{width:30px;height:30px}
/* tablet (721–1200): the robot would sit under the text in a cover crop — compose as a 16:10 plate with the title on the wall, text and placards below */
@media (max-width:1200px) and (min-width:721px){
  .x6hero{display:block;min-height:0;background:var(--porcelain)}
  .x6hero__plate{position:relative;inset:auto;aspect-ratio:16/10;container-type:normal}
  .x6hero__plate::after{background:linear-gradient(180deg,rgba(247,245,240,.86) 0%,rgba(247,245,240,.4) 24%,rgba(247,245,240,0) 40%),linear-gradient(0deg,rgba(247,245,240,1) 0%,rgba(247,245,240,0) 16%)}
  .x6hero__map{bottom:auto;height:62.5vw}
  .x6hero__low{grid-template-columns:minmax(0,1fr);padding-top:0;margin-top:-28px;gap:24px}
  .x6hero__lede{max-width:640px}
  .x6hero__tags{grid-template-columns:repeat(3,minmax(0,1fr))}
}
/* small tablets (721–900): the plate is too short for the title to sit on the wall — the title goes above the plate, hotspots hide (placards below carry the links) */
@media (max-width:900px) and (min-width:721px){
  .x6hero{display:flex;flex-direction:column}
  .x6hero__title{order:-1;position:relative;top:auto;left:auto;right:auto;margin:0;max-width:none;padding:calc(var(--hdr) + 28px) var(--x6g) 22px}
  .x6hero__map{display:none}
  .x6hero__note{top:auto;bottom:auto;position:relative;right:auto;justify-items:start;text-align:left;padding:14px var(--x6g) 0;order:2}
  .x6hero__low{order:3;margin-top:0;padding-top:24px}
}
@media (max-width:720px){
  .x6hero{min-height:0;display:block;background:var(--porcelain)}
  .x6hero__plate{position:relative;inset:auto;aspect-ratio:9/13;container-type:normal}
  .x6hero__plate img{object-position:50% 60%}
  .x6hero__plate::after{background:linear-gradient(180deg,rgba(247,245,240,.94) 0%,rgba(247,245,240,.55) 22%,rgba(247,245,240,0) 40%),linear-gradient(0deg,rgba(247,245,240,1) 0%,rgba(247,245,240,0) 22%)}
  .x6hero__title{top:calc(var(--hdr) + 22px);left:16px;right:16px}
  .x6hero__title .x6d{font-size:clamp(40px,12.4vw,62px);max-width:none}
  .x6hero__map{display:none}
  .x6hero__low{padding:0 16px 40px;margin-top:-56px;grid-template-columns:minmax(0,1fr);gap:22px}
  .x6hero .lead--d{display:none}.x6hero .lead--m{display:block}
  .x6hero__tags{grid-template-columns:minmax(0,1fr);gap:8px}
  .x6tag{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .x6tag .x6code{grid-column:1/-1}
  .x6hero__note{position:static;justify-items:start;text-align:left;padding:0 16px 8px}
  .x6cta .x6btn--p{flex:1 1 100%}
}

/* ================================================================== HOME · perception chain (sticky plates on desktop) */
.x6chain__g{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:clamp(32px,5vw,96px);align-items:start}
.x6chain__stage{position:sticky;top:calc(var(--hdr) + 28px);aspect-ratio:4/3;max-height:calc(100svh - var(--hdr) - 56px);width:100%;box-shadow:var(--x6sh-l);background:#E8E9E6}
.x6chain__pl{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .6s var(--x6ease)}
.x6chain__pl.is-on{opacity:1}
.x6chain__pl img,.x6chain__pl picture{display:block;width:100%;height:100%;object-fit:cover}
.x6chain__pl .x6cap{position:absolute;left:16px;bottom:14px;padding:7px 10px;background:rgba(251,250,247,.86)}
.x6chain__dots{position:absolute;left:0;right:0;top:100%;list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.x6chain__dots li{position:relative;padding-top:14px;font:500 13.5px/1.2 var(--f-text);color:var(--ink-3);transition:color .3s}
.x6chain__dots li::before{content:"";position:absolute;left:0;right:6px;top:0;height:2px;background:var(--hair-2);transition:background-color .3s}
.x6chain__dots li.is-on{color:var(--ink)}
.x6chain__dots li.is-on::before{background:var(--signal)}
.x6chain__steps{list-style:none;margin:0;padding:0;display:grid}
.x6step{min-height:min(70svh,640px);display:grid;align-content:center;padding-block:clamp(28px,4vw,56px)}
.x6step__in{display:grid;gap:18px;max-width:520px}
.x6step__k{display:inline-flex;align-items:center;gap:12px;font:300 clamp(30px,2.8vw,44px)/1 var(--f-disp);letter-spacing:-.03em;color:var(--ink)}
.x6step__k i{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--hair-2);color:var(--signal)}
.x6step__k i svg{width:18px;height:18px}
.x6step__d{margin:0;font-size:17.5px;line-height:1.55;color:var(--ink-2)}
.x6step__cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.x6step__pl{display:none;margin:0}
.x6chk{border-top:1px solid var(--hair)}
.x6chk summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0 0;cursor:pointer;font:500 14.5px/1.3 var(--f-text);color:var(--ink)}
.x6chk summary::-webkit-details-marker{display:none}
.x6chk summary svg{width:14px;height:14px;transition:transform .25s}
.x6chk[open] summary svg{transform:rotate(45deg)}
.x6chk ul{margin:12px 0 0;padding-left:18px;display:grid;gap:6px;color:var(--ink-2);font-size:15px}
@media (max-width:900px){
  .x6chain__g{grid-template-columns:minmax(0,1fr)}
  .x6chain__stage{display:none}
  .x6step{min-height:0;padding-block:0 clamp(44px,8vw,64px)}
  .x6step__pl{display:block;position:relative;aspect-ratio:4/3;box-shadow:var(--x6sh)}
  .x6step__pl img,.x6step__pl picture{display:block;width:100%;height:100%;object-fit:cover}
  .x6step__pl .x6cap{position:absolute;left:12px;bottom:10px;padding:6px 9px;background:rgba(251,250,247,.86)}
}

/* ================================================================== HOME · robots in context */
.x6worlds{padding-bottom:clamp(64px,8vw,120px)}
.x6box{margin:0}
.x6box__img{aspect-ratio:2.35/1;max-height:82svh;width:100%;overflow:hidden;background:#E6E8E8}
.x6box__img img,.x6box__img picture{display:block;width:100%;height:100%;object-fit:cover}
.x6box__cap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:16px}
.x6slate{display:flex;flex-wrap:wrap;gap:6px 26px;margin:0}
.x6slate div{display:flex;gap:8px;align-items:baseline}
.x6slate dt{font:400 12px/1.3 var(--f-mono);color:var(--ink-3)}
.x6slate dd{margin:0;font:500 14px/1.3 var(--f-text);color:var(--ink)}
.x6w__t{display:grid;gap:12px;max-width:560px}
.x6w__t p{margin:0;color:var(--ink-2);font-size:16.5px;line-height:1.55}
.x6w__t--wide{margin:clamp(28px,3vw,44px) 0 clamp(72px,9vw,140px) auto;max-width:640px}
.x6w__hard b{font-weight:500;color:var(--ink)}
.x6w2{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,4vw,72px);align-items:end;position:relative;margin-bottom:clamp(72px,9vw,140px)}
.x6w2__main{margin:0;grid-row:1/3;position:relative;aspect-ratio:16/11;box-shadow:var(--x6sh-l)}
.x6w2__main img,.x6w2__main picture{display:block;width:100%;height:100%;object-fit:cover}
.x6w2__main .x6cap,.x6w3__main .x6cap{position:absolute;left:14px;bottom:12px;padding:6px 9px;background:rgba(251,250,247,.86)}
.x6w2__inset{margin:0;width:min(78%,340px);display:grid;gap:8px;align-self:start;margin-left:-22%;margin-top:clamp(36px,6vw,96px);position:relative;z-index:2}
.x6w2__inset picture{display:block;aspect-ratio:4/3;box-shadow:0 0 0 6px var(--titanium),var(--x6sh-l)}
.x6w2__inset img{width:100%;height:100%;object-fit:cover;display:block}
.x6w2__inset figcaption,.x6w3__det figcaption{font-size:13px;color:var(--ink-3)}
.x6w3{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4vw,72px);align-items:center;margin-bottom:clamp(64px,8vw,120px)}
.x6w3__main{margin:0;position:relative;aspect-ratio:4/5;box-shadow:var(--x6sh-l)}
.x6w3__main img,.x6w3__main picture{display:block;width:100%;height:100%;object-fit:cover}
.x6w3__side{display:grid;gap:clamp(24px,3vw,40px)}
.x6w3__det{margin:0;display:grid;gap:8px;max-width:420px}
.x6w3__det picture{display:block;aspect-ratio:3/2;box-shadow:var(--x6sh)}
.x6w3__det img{width:100%;height:100%;object-fit:cover;display:block}
.x6strip{display:grid;gap:16px}
.x6strip__h{margin:0;font:500 14px/1.3 var(--f-text);color:var(--ink)}
.x6strip__row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}
.x6strip__i{display:grid;gap:8px;min-width:0}
.x6strip__img{display:block;aspect-ratio:4/5;overflow:hidden;background:#E3E6E6}
.x6strip__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--x6ease)}
.x6strip__i:hover img{transform:scale(1.04)}
.x6strip__t{display:flex;justify-content:space-between;gap:6px;font:500 13.5px/1.25 var(--f-text);color:var(--ink)}
.x6strip__t svg{width:13px;height:13px;flex:none;margin-top:2px;color:var(--signal)}
@media (max-width:1100px){.x6strip__row{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:900px){
  .x6box__img{aspect-ratio:4/3}
  .x6w2,.x6w3{grid-template-columns:minmax(0,1fr)}
  .x6w2__main{grid-row:auto}
  .x6w2__inset{margin:-64px 0 0 auto;width:62%}
  .x6w2__main .x6cap{top:12px;bottom:auto}
  .x6w3__main{aspect-ratio:4/3}
  .x6w__t--wide{margin-left:0}
  .x6strip__row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--x6g));padding-inline:var(--x6g);scrollbar-width:none}
  .x6strip__i{flex:0 0 42%;scroll-snap-align:start}
}

/* ================================================================== HOME · concept hall (360) */
.x6hall__g{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,4vw,80px);align-items:center}
.x6hall__stage{background:radial-gradient(120% 90% at 50% 70%,#FBFAF6 0%,#ECEDEA 55%,#DCE1E3 100%);box-shadow:var(--x6sh-l);padding:clamp(8px,1.2vw,18px)}
.x6hall__c{display:grid;gap:22px;align-content:center;min-width:0}
.x6hall .minirail{margin:0}
@media (max-width:900px){.x6hall__g{grid-template-columns:minmax(0,1fr)}}

/* ================================================================== screens (home motion band + demos screening room) */
.x6screen__g,.x6room6__g{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);gap:clamp(24px,3.4vw,56px);align-items:center}
.x6screen__wall,.x6room6__screen{position:relative;padding:clamp(10px,1.4vw,22px);background:linear-gradient(180deg,#F2F1EC,#E3E5E3);box-shadow:var(--x6sh-l)}
.x6screen__wall::after,.x6room6__screen::after{content:"";position:absolute;left:8%;right:8%;bottom:-34px;height:34px;background:radial-gradient(50% 100% at 50% 0,rgba(35,101,213,.16),rgba(35,101,213,0));pointer-events:none}
.x6screen__side,.x6room6__side{display:grid;gap:14px;align-content:center;min-width:0}
.x6screen__side p,.x6room6__side>p{margin:0;color:var(--ink-2);font-size:16.5px;line-height:1.55}
.x6 .pl34{border-radius:2px}
.x6sb{margin-top:clamp(40px,5vw,72px);display:grid;gap:12px}
.x6sb__row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.x6sb__f{position:relative;display:block;padding:0;border:0;border-radius:2px;background:#DDE1E3;cursor:pointer;aspect-ratio:16/9;overflow:hidden}
.x6sb__f img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--x6ease),filter .3s}
.x6sb__f:hover img{transform:scale(1.04)}
.x6sb__f .x6code{position:absolute;left:8px;bottom:6px;padding:3px 6px;background:rgba(251,250,247,.86);color:var(--ink)}
.x6sb__f[aria-current=true]{box-shadow:0 0 0 2px var(--signal)}
.x6fms{margin-top:clamp(28px,3vw,44px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.x6fm{display:grid;grid-template-columns:44% minmax(0,1fr);gap:14px;align-items:center;padding:0;border:0;background:none;text-align:left;cursor:pointer;color:var(--ink)}
.x6fm__img{position:relative;display:block;aspect-ratio:16/10;overflow:hidden}
.x6fm__img img{display:block;width:100%;height:100%;object-fit:cover}
.x6fm__p{position:absolute;right:8px;bottom:8px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(251,250,247,.9);color:var(--ink)}
.x6fm__p svg{width:12px;height:12px;margin-left:2px}
.x6fm__t{display:grid;gap:6px;font-size:15px;line-height:1.3}
.x6fm__t b{font-weight:500}
@media (max-width:900px){.x6screen__g,.x6room6__g{grid-template-columns:minmax(0,1fr)}.x6sb__row{display:flex;overflow-x:auto;margin-inline:calc(-1 * var(--x6g));padding-inline:var(--x6g);scrollbar-width:none}.x6sb__f{flex:0 0 46%}.x6fms{grid-template-columns:minmax(0,1fr)}}

/* ================================================================== HOME · built for the brief */
.x6brief__g{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(32px,5vw,96px);align-items:start}
.x6brief__c{display:grid;gap:18px;min-width:0}
.x6brief__c .x6head{grid-template-columns:minmax(0,1fr);margin-bottom:10px}
.x6tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}
.x6tile{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#E4E6E6}
.x6tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--x6ease)}
.x6tile span{position:absolute;left:8px;bottom:8px;right:8px;padding:6px 8px;background:rgba(251,250,247,.9);font:500 13px/1.2 var(--f-text);color:var(--ink)}
.x6tile:hover img{transform:scale(1.05)}
.x6mods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}
.x6mod{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px 14px 8px 8px;background:rgba(251,250,247,.7);border:1px solid var(--hair);transition:border-color .2s}
.x6mod:hover{border-color:var(--ink)}
.x6mod img{width:56px;height:56px;object-fit:cover;display:block;background:#E8E8E5}
.x6mod span{display:grid;gap:2px;min-width:0}
.x6mod b{font:500 14px/1.25 var(--f-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.x6mod svg{width:14px;height:14px;color:var(--signal)}
.x6have{font-size:14.5px;color:var(--ink-2);display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center}
.x6ins{display:grid;gap:14px;padding:clamp(22px,2.4vw,34px);background:rgba(251,250,247,.7);border:1px solid var(--hair);border-top-color:var(--satin)}
.x6ins__l{list-style:none;margin:0;padding:0;display:grid}
.x6ins__l li a{display:grid;gap:6px;padding:16px 0;border-top:1px solid var(--hair)}
.x6ins__l b{font:400 17px/1.35 var(--f-disp);letter-spacing:-.01em;color:var(--ink)}
.x6ins__m{display:flex;gap:12px;font-size:12.5px;color:var(--ink-3)}
@media (max-width:900px){.x6brief__g{grid-template-columns:minmax(0,1fr)}.x6tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.x6mods{grid-template-columns:minmax(0,1fr)}}

/* ================================================================== PRODUCTS · gallery wall + rooms */
.x6prh{padding:calc(var(--hdr) + clamp(48px,7vw,104px)) 0 clamp(56px,7vw,104px)}
.x6prh__top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px 64px;align-items:end;margin-bottom:clamp(36px,5vw,72px)}
.x6prh__r{display:grid;gap:18px}
.x6jump{display:flex;flex-wrap:wrap;gap:6px 18px}
.x6jump a{font:500 14px/1.3 var(--f-text);color:var(--ink-2);padding:6px 0;border-bottom:1px solid var(--hair-2)}
.x6jump a:hover{color:var(--ink);border-color:var(--ink)}
.x6gw{display:grid;grid-template-columns:1.35fr .95fr .82fr 1fr;gap:clamp(10px,1.2vw,18px);align-items:end}
.x6gw__i{display:grid;gap:12px;color:var(--ink)}
.x6gw__img{display:block;overflow:hidden;background:#E9E9E6;box-shadow:var(--x6sh)}
.x6gw__img img,.x6gw__img picture{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--x6ease)}
.x6gw__i:hover img{transform:scale(1.035)}
.x6gw__i--3588 .x6gw__img{aspect-ratio:5/4}
.x6gw__i--d500 .x6gw__img{aspect-ratio:1/1}
.x6gw__i--u4m .x6gw__img{aspect-ratio:3/4}
.x6gw__i--s4m .x6gw__img{aspect-ratio:4/5}
.x6gw__pl{display:grid;gap:4px;padding-top:12px;border-top:1px solid var(--satin)}
.x6gw__pl b{font:500 14.5px/1.3 var(--f-text)}
.x6gw__pl .x6price{font-size:18px;margin-top:4px}
@media (max-width:900px){.x6prh__top{grid-template-columns:minmax(0,1fr)}.x6gw{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
.x6cat__h{display:grid;gap:12px;margin-bottom:clamp(28px,3vw,48px)}
.x6room{padding-block:clamp(40px,5vw,72px) clamp(56px,7vw,112px);border-top:1px solid var(--hair)}
.x6room:first-of-type{border-top:0;padding-top:0}
.x6room__h{display:grid;gap:10px;max-width:760px;margin-bottom:clamp(28px,3.4vw,52px)}
.x6room__n{margin:0;font:500 16px/1.35 var(--f-text);color:var(--ink)}
.x6room__g{display:grid;gap:clamp(14px,1.6vw,24px)}
.x6v{margin:0;display:grid;gap:10px;min-width:0}
.x6v>picture{display:block;overflow:hidden;background:#E8E9E6;box-shadow:var(--x6sh)}
.x6v>picture img{display:block;width:100%;height:100%;object-fit:cover}
.x6v figcaption,.x6v__lab{margin:0;font-size:13px;color:var(--ink-3)}
.x6v figcaption b,.x6v__lab b{font-weight:500;color:var(--ink)}
/* four different rooms */
.x6room--s4m .x6room__g{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1fr);grid-template-areas:"det det det" "buy obj ctx"}
.x6room--s4m .x6v--det{grid-area:det}.x6room--s4m .x6v--obj{grid-area:obj}.x6room--s4m .x6v--ctx{grid-area:ctx}.x6room--s4m .x6buy{grid-area:buy;align-self:start}
.x6room--s4m .x6v--obj>picture{aspect-ratio:4/3}.x6room--s4m .x6v--ctx>picture{aspect-ratio:4/3}
.x6room--u4m .x6room__g{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);grid-template-areas:"ctx det" "ctx buy" "obj buy"}
.x6room--u4m .x6v--det{grid-area:det}.x6room--u4m .x6v--obj{grid-area:obj}.x6room--u4m .x6v--ctx{grid-area:ctx}.x6room--u4m .x6buy{grid-area:buy}
.x6room--u4m .x6v--ctx>picture{aspect-ratio:3/4}.x6room--u4m .x6v--obj>picture{aspect-ratio:4/3}
.x6room--d500 .x6room__g{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr);grid-template-areas:"det det ctx" "obj buy ctx"}
.x6room--d500 .x6v--det{grid-area:det}.x6room--d500 .x6v--obj{grid-area:obj}.x6room--d500 .x6v--ctx{grid-area:ctx}.x6room--d500 .x6buy{grid-area:buy}
.x6room--d500 .x6v--ctx>picture{aspect-ratio:4/5;height:100%}.x6room--d500 .x6v--obj>picture{aspect-ratio:1/1}
.x6room--3588 .x6room__g{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr);grid-template-areas:"det det det" "obj ctx buy"}
.x6room--3588 .x6v--det{grid-area:det}.x6room--3588 .x6v--obj{grid-area:obj}.x6room--3588 .x6v--ctx{grid-area:ctx}.x6room--3588 .x6buy{grid-area:buy}
.x6room--3588 .x6v--obj>picture,.x6room--3588 .x6v--ctx>picture{aspect-ratio:4/3}
.x6room--3588 .x6lp>picture{aspect-ratio:21/9}
@media (max-width:900px){.x6room .x6room__g{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"det" "obj" "buy" "ctx"!important}.x6room--d500 .x6v--ctx>picture{aspect-ratio:4/3}.x6room--u4m .x6v--ctx>picture{aspect-ratio:4/3}}
.x6buy{display:grid;gap:18px;padding:clamp(20px,2vw,28px);background:rgba(251,250,247,.82);border:1px solid var(--hair);border-top:1px solid var(--satin);box-shadow:var(--x6sh);min-width:0}
.x6buy__p{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.x6buy__more{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
/* loupe */
.x6lp{position:relative;margin:0;overflow:hidden;background:#E8E9E6;box-shadow:var(--x6sh-l);cursor:crosshair;touch-action:pan-y}
.x6lp>picture{display:block;aspect-ratio:16/9}
.x6lp>picture img{display:block;width:100%;height:100%;object-fit:cover}
.x6lp__lens{position:absolute;left:0;top:0;width:clamp(150px,17vw,250px);height:clamp(150px,17vw,250px);margin:calc(clamp(150px,17vw,250px) / -2) 0 0 calc(clamp(150px,17vw,250px) / -2);border-radius:50%;pointer-events:none;opacity:0;transition:opacity .25s;background-repeat:no-repeat;box-shadow:0 0 0 1px rgba(255,255,255,.9),0 0 0 7px rgba(251,250,247,.5),0 20px 44px -12px rgba(23,33,43,.55)}
.x6lp.is-on .x6lp__lens{opacity:1}
.x6lp__pts{position:absolute;inset:0;pointer-events:none}
.x6lp__pt{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);pointer-events:auto;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;background:none;cursor:pointer}
.x6lp__pt i{width:14px;height:14px;border-radius:50%;background:rgba(251,250,247,.95);box-shadow:0 0 0 3px var(--signal),0 4px 12px rgba(23,33,43,.4)}
.x6lp__lab{position:absolute;left:calc(50% + 18px);top:50%;transform:translateY(-50%);display:grid;gap:2px;min-width:150px;max-width:220px;padding:9px 11px;background:rgba(251,250,247,.94);border-left:2px solid var(--signal);text-align:left;opacity:0;pointer-events:none;transition:opacity .2s;box-shadow:var(--x6sh)}
.x6lp__lab b{font:500 12.5px/1.25 var(--f-text);color:var(--ink-3)}
.x6lp__lab span{font:500 13.5px/1.3 var(--f-text);color:var(--ink)}
.x6lp__pt[aria-pressed=true] .x6lp__lab,.x6lp__pt:hover .x6lp__lab,.x6lp__pt:focus-visible .x6lp__lab{opacity:1}
.x6lp__pt[style*="--x:6"] .x6lp__lab,.x6lp__pt[style*="--x:7"] .x6lp__lab,.x6lp__pt[style*="--x:8"] .x6lp__lab,.x6lp__pt[style*="--x:9"] .x6lp__lab{left:auto;right:calc(50% + 18px);border-left:0;border-right:2px solid var(--signal)}
.x6lp__hint{position:absolute;left:14px;bottom:12px;padding:6px 10px;background:rgba(251,250,247,.86);font-size:12.5px;color:var(--ink-2);pointer-events:none}
@media (hover:none){.x6lp{cursor:default}.x6lp__hint{display:none}}

/* ================================================================== APPLICATIONS · acts */
.x6aph{position:relative;padding-top:var(--hdr);display:flex;flex-direction:column}
.x6aph__plate{position:relative;aspect-ratio:2.35/1;max-height:calc(100svh - var(--hdr) - 200px);min-height:380px;overflow:hidden}
.x6aph__plate img,.x6aph__plate picture{display:block;width:100%;height:100%;object-fit:cover}
.x6aph__plate::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(247,245,240,.35) 0%,rgba(247,245,240,0) 18%)}
/* the scene keeps its subject: the title sits above the letterbox like a film title card, never over the robot */
.x6aph__c{position:relative;order:-1;display:grid;grid-template-columns:auto minmax(0,46ch);justify-content:space-between;align-items:end;column-gap:48px;row-gap:14px;padding-block:clamp(40px,5.5vw,84px) clamp(22px,2.6vw,36px)}
.x6aph__c>*{max-width:640px}
.x6aph__cap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:14px}
.x6idx{position:sticky;top:var(--hdr);z-index:20;background:rgba(247,245,240,.88);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-block:1px solid var(--hair)}
.x6idx__row{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding-block:8px}
.x6idx a{flex:none;display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;font:500 13.5px/1.2 var(--f-text);color:var(--ink-2);border-radius:4px;transition:background-color .2s,color .2s}
.x6idx a img{width:42px;height:28px;object-fit:cover;display:block}
.x6idx a:hover,.x6idx a[aria-current=true]{background:#fff;color:var(--ink)}
@media (max-width:720px){.x6aph__plate{aspect-ratio:4/5;max-height:none;min-height:0}.x6aph__plate::after{background:linear-gradient(180deg,rgba(247,245,240,.92) 0%,rgba(247,245,240,.4) 30%,rgba(247,245,240,0) 50%)}.x6aph__c{grid-template-columns:minmax(0,1fr)}.x6idx a span{white-space:nowrap}}
.x6act{position:relative;padding-block:clamp(72px,9vw,150px) clamp(40px,5vw,80px)}
.x6act--full{padding-top:0}
.x6act--full:first-of-type{padding-top:clamp(48px,6vw,96px)}
.x6lb{margin:0 0 clamp(36px,4vw,64px)}
.x6lb>picture{display:block;aspect-ratio:2.35/1;max-height:84svh;overflow:hidden}
.x6lb>picture img{display:block;width:100%;height:100%;object-fit:cover}
.x6lb__cap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:14px}
.x6act__h{display:grid;gap:12px;max-width:760px;margin-bottom:clamp(28px,3vw,48px)}
.x6act__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,.9fr);gap:clamp(20px,3vw,48px);align-items:start}
.x6act__rob,.x6act__eng{margin:0;display:grid;gap:10px}
.x6act__rob picture{display:block;aspect-ratio:4/5;overflow:hidden;box-shadow:var(--x6sh-l)}
.x6act__rob img,.x6act__engimg img{display:block;width:100%;height:100%;object-fit:cover}
.x6act__rob figcaption,.x6act__det figcaption{font-size:13px;color:var(--ink-3)}
.x6act__engimg{display:block;aspect-ratio:4/3;overflow:hidden;box-shadow:var(--x6sh)}
.x6act__engimg picture{display:block;height:100%}
.x6act__eng .x6pl{margin-top:-28px;margin-inline:12px;position:relative}
.x6act__txt{display:grid;gap:22px;min-width:0}
.x6act__b{display:grid;gap:8px}
.x6act__b p{margin:0;font-size:16.5px;line-height:1.55;color:var(--ink-2)}
.x6dash,.x6q{margin:0;padding:0;list-style:none;display:grid;gap:6px;color:var(--ink-2);font-size:15.5px;line-height:1.45}
.x6dash li,.x6q li{position:relative;padding-left:18px}
.x6dash li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:1px;background:var(--satin)}
.x6q li::before{content:"?";position:absolute;left:0;top:0;font:500 13px/1.6 var(--f-mono);color:var(--signal)}
.x6act__go{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;padding-top:6px}
.x6act__cg{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);align-items:start}
.x6act--flip .x6act__cg{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr)}
.x6act--flip .x6act__main{order:2}
.x6act__main{margin:0;display:grid;gap:12px;position:sticky;top:calc(var(--hdr) + 72px)}
.x6act__main>picture{display:block;aspect-ratio:4/3;overflow:hidden;box-shadow:var(--x6sh-l)}
.x6act__main img{display:block;width:100%;height:100%;object-fit:cover}
.x6act__side{display:grid;gap:22px;min-width:0}
.x6act__side .x6act__h{margin-bottom:0}
.x6act__det{margin:0;display:grid;gap:8px;max-width:360px}
.x6act__det picture{display:block;aspect-ratio:3/2;overflow:hidden;box-shadow:var(--x6sh)}
.x6act__det img{display:block;width:100%;height:100%;object-fit:cover}
@media (max-width:1100px){.x6act__g{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.x6act__eng{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}.x6act__eng .x6pl{margin:0}}
@media (max-width:900px){.x6act__g,.x6act__cg,.x6act--flip .x6act__cg{grid-template-columns:minmax(0,1fr)}.x6act__main{position:relative;top:auto}.x6act--flip .x6act__main{order:0}.x6act__rob picture{aspect-ratio:4/3}.x6lb>picture{aspect-ratio:16/10}.x6act__eng{grid-template-columns:minmax(0,1fr)}.x6act__eng .x6pl{margin:-24px 10px 0}}

/* ================================================================== ROBOT DEMOS · screening room + film wall */
.x6room6{padding:calc(var(--hdr) + clamp(28px,4vw,60px)) 0 clamp(64px,8vw,120px)}
.x6room6__h{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 64px;align-items:end;margin-bottom:clamp(24px,2.8vw,44px)}
/* screening room: film strip of real frames · projected screen · credits */
.x6room6 .x6room6__g{grid-template-columns:minmax(0,.8fr) minmax(0,4fr) minmax(0,1.7fr);align-items:center}
.x6sb--strip{margin:0;align-self:center;display:grid;gap:10px;padding:12px 14px;background:#2A3540;background-image:repeating-linear-gradient(180deg,rgba(247,245,240,.5) 0 5px,transparent 5px 14px),repeating-linear-gradient(180deg,rgba(247,245,240,.5) 0 5px,transparent 5px 14px);background-size:4px 100%,4px 100%;background-position:4px 0,calc(100% - 4px) 0;background-repeat:repeat-y}
.x6sb--strip .x6lab{color:rgba(247,245,240,.78);font-size:11.5px;line-height:1.3}
.x6sb--strip .x6sb__row{grid-template-columns:minmax(0,1fr);gap:7px}
.x6sb--strip .x6sb__f[aria-current=true]{box-shadow:0 0 0 2px #F7F5F0}
@media (max-width:900px){.x6room6 .x6room6__g{grid-template-columns:minmax(0,1fr)}.x6sb--strip{order:3;background:none;padding:0}.x6sb--strip .x6lab{color:var(--ink-3)}.x6sb--strip .x6sb__row{display:flex}}
.x6dos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:4px 0}
.x6dos div{padding:10px 0;border-top:1px solid var(--hair);display:grid;gap:4px}
.x6dos div:last-child{grid-column:1/-1}
.x6dos dt{font:400 12px/1.3 var(--f-mono);color:var(--ink-3)}
.x6dos dd{margin:0;font:500 15px/1.3 var(--f-text);color:var(--ink)}
.x6float{position:fixed;z-index:60;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 20px 0 14px;border:0;border-radius:999px;background:var(--ink);color:#fff;font:500 14.5px/1 var(--f-text);box-shadow:0 18px 40px -16px rgba(23,33,43,.7);cursor:pointer}
.x6float svg{width:14px;height:14px}
@media (min-width:901px){.x6float{display:none}}
.x6lib__g{margin-top:clamp(36px,4vw,64px)}
.x6lib__h{display:flex;align-items:baseline;gap:12px;margin:0 0 18px;font:300 clamp(24px,2vw,32px)/1.1 var(--f-disp);letter-spacing:-.02em;color:var(--ink)}
.x6wall{display:flex;flex-wrap:wrap;gap:clamp(14px,1.5vw,22px)}
.x6wall::after{content:"";flex:999 1 0}
.x6film{flex:calc(var(--ar) * 100) 1 calc(var(--ar) * 210px);display:grid;gap:10px;align-content:start;padding:0;border:0;background:none;text-align:left;color:var(--ink);cursor:pointer;min-width:0}
.x6film__img{position:relative;display:block;aspect-ratio:var(--ar);overflow:hidden;background:#DDE1E3;box-shadow:var(--x6sh)}
.x6film__img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--x6ease)}
.x6film:hover .x6film__img img{transform:scale(1.04)}
.x6film__p{position:absolute;left:14px;bottom:14px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(251,250,247,.92);color:var(--ink);box-shadow:0 8px 20px -8px rgba(23,33,43,.5)}
.x6film__p svg{width:15px;height:15px;margin-left:2px}
.x6film__t{display:grid;gap:4px}
.x6film__t b{font:400 clamp(18px,1.4vw,22px)/1.2 var(--f-disp);letter-spacing:-.012em}
.x6film__t>span:last-child{font-size:14.5px;line-height:1.45;color:var(--ink-2)}
@media (max-width:760px){.x6room6__h{grid-template-columns:minmax(0,1fr)}.x6film{flex:1 1 100%}.x6film__img{aspect-ratio:16/10}}
.x6sb--dlg{margin-top:16px}

/* ================================================================== COMPANY · inside the system */
.x6atl{padding-top:calc(var(--hdr) + clamp(40px,6vw,88px))}
.x6atl__h{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 64px;align-items:end;margin-bottom:clamp(28px,3.6vw,56px)}
.x6atl__stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:0;max-width:calc(var(--x6w) + 2 * var(--x6g) + 240px);margin-inline:auto}
.x6atl__plate{position:relative;aspect-ratio:2/1;overflow:hidden;background:#EAEAE6}
.x6atl__plate>picture,.x6atl__plate>picture img{display:block;width:100%;height:100%;object-fit:cover}
.x6atl__plate .x6cap{position:absolute;left:16px;bottom:14px;padding:6px 10px;background:rgba(251,250,247,.86)}
.x6atl__nodes{position:absolute;inset:0}
.x6an{position:absolute;left:var(--x);top:var(--y);transform:translate(-14px,-50%);display:inline-flex;align-items:center;gap:10px;padding:0 14px 0 0;min-height:36px;border:0;background:none;cursor:pointer;color:var(--ink)}
.x6an i{width:28px;height:28px;border-radius:50%;flex:none;display:grid;place-items:center;background:rgba(251,250,247,.9);box-shadow:0 0 0 1px var(--hair-2),0 8px 18px -8px rgba(23,33,43,.5)}
.x6an i::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--ink-3);transition:background-color .2s,transform .2s}
.x6an span{padding:7px 12px;background:rgba(251,250,247,.9);font:500 14px/1 var(--f-text);box-shadow:0 0 0 1px var(--hair);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.x6an[aria-pressed=true] i{box-shadow:0 0 0 2px var(--signal),0 0 0 8px rgba(35,101,213,.16)}
.x6an[aria-pressed=true] i::after{background:var(--signal);transform:scale(1.1)}
.x6an[aria-pressed=true] span{background:var(--ink);color:#fff;box-shadow:none}
.x6atl__panel{position:relative;background:rgba(251,250,247,.92);border-left:1px solid var(--hair);padding:clamp(24px,2.6vw,40px);display:grid;align-content:center}
.x6ap{display:grid;gap:14px}
.x6ap p{margin:0;color:var(--ink-2);font-size:16px;line-height:1.55}
.x6links{list-style:none;margin:6px 0 0;padding:0;display:grid}
.x6links a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--hair);font:500 15px/1.3 var(--f-text);color:var(--ink)}
.x6links a svg{width:14px;height:14px;color:var(--signal)}
.x6rail{list-style:none;margin:clamp(28px,3vw,48px) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));counter-reset:none}
.x6rail li a{position:relative;display:grid;gap:6px;padding:18px 18px 0 0;border-top:1px solid var(--hair-2);color:var(--ink)}
.x6rail li a::before{content:"";position:absolute;left:0;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--signal)}
.x6rail li:not(:last-child) a::after{content:"→";position:absolute;right:12px;top:16px;color:var(--ink-3);font:400 16px/1 var(--f-text)}
.x6rail b{font:300 clamp(22px,1.8vw,28px)/1.1 var(--f-disp);letter-spacing:-.02em}
.x6rail span{font-size:14px;color:var(--ink-3)}
@media (max-width:1100px){.x6atl__stage{grid-template-columns:minmax(0,1fr)}.x6atl__panel{border-left:0;border-top:1px solid var(--hair)}}
@media (max-width:760px){.x6atl__h{grid-template-columns:minmax(0,1fr)}.x6atl__plate{aspect-ratio:4/3}.x6atl__plate>picture img{object-position:62% 50%}.x6an span{display:none}.x6an{transform:translate(-14px,-50%)}.x6rail{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0}}
.x6about__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,5vw,96px);align-items:center}
.x6about__c{display:grid;gap:18px}
.x6about__c>p{margin:0;color:var(--ink-2);font-size:16.5px;line-height:1.6;max-width:58ch}
.x6about__pl,.x6capa__pl{margin:0;position:relative}
.x6about__pl picture,.x6capa__pl>picture{display:block;aspect-ratio:4/3;overflow:hidden;box-shadow:var(--x6sh-l)}
.x6about__pl img,.x6capa__pl img{display:block;width:100%;height:100%;object-fit:cover}
.x6about__pl .x6cap,.x6capa__pl .x6cap{position:absolute;left:14px;bottom:12px;padding:6px 10px;background:rgba(251,250,247,.86)}
@media (max-width:900px){.x6about__g{grid-template-columns:minmax(0,1fr)}}
article.x6capa{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(28px,4.4vw,88px);align-items:center;padding-block:clamp(28px,3.4vw,52px)}
article.x6capa.x6capa--r .x6capa__pl{order:2}
.x6capa__c{display:grid;gap:16px;align-content:center}
.x6capa__c>p{margin:0;color:var(--ink-2);font-size:16.5px;line-height:1.6;max-width:52ch}
.x6capa__pl--svg{padding:clamp(18px,2.4vw,36px);background:rgba(251,250,247,.8);border:1px solid var(--hair);overflow-x:auto}
.x6capa__pl--svg svg{width:100%;min-width:560px;height:auto}
.x6capa__pl--doc{display:grid;place-items:center;padding:clamp(18px,2.4vw,40px);background:linear-gradient(180deg,#F1F0EB,#E6E8E7);min-height:340px}
.x6ents{display:grid;gap:0}
.x6ent{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:14px 0;border-top:1px solid var(--hair);color:var(--ink)}
.x6ent b{font:500 15.5px/1.3 var(--f-text)}
.x6ent span{grid-column:1;font-size:14px;color:var(--ink-3)}
.x6ent svg{grid-row:1/3;grid-column:2;align-self:center;width:15px;height:15px;color:var(--signal)}
@media (max-width:900px){article.x6capa,article.x6capa.x6capa--r{grid-template-columns:minmax(0,1fr)}article.x6capa.x6capa--r .x6capa__pl{order:0}}

/* ================================================================== SUPPORT · service bench + request */
.x6suh{position:relative;padding-top:var(--hdr)}
.x6suh__plate{position:relative;aspect-ratio:2.4/1;max-height:calc(100svh - var(--hdr) - 150px);min-height:440px;overflow:hidden}
.x6suh__plate img,.x6suh__plate picture{display:block;width:100%;height:100%;object-fit:cover}
.x6suh__plate::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,245,240,.9) 0%,rgba(247,245,240,.62) 30%,rgba(247,245,240,0) 56%),linear-gradient(0deg,rgba(247,245,240,.96) 0%,rgba(247,245,240,0) 30%)}
.x6suh__c{position:absolute;left:0;right:0;top:calc(var(--hdr) + clamp(36px,6vw,96px));display:grid;gap:18px;pointer-events:none}
.x6suh__c>*{max-width:600px;pointer-events:auto}
.x6doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:-92px;position:relative;z-index:2}
.x6door{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;align-items:start;padding:20px 22px;background:rgba(251,250,247,.92);border:1px solid var(--hair);border-top:2px solid var(--signal);box-shadow:var(--x6sh-l);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--ink);transition:transform .25s var(--x6ease)}
.x6door:hover{transform:translateY(-3px)}
.x6door i{grid-row:1/3;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--signal-08);color:var(--signal)}
.x6door i svg{width:18px;height:18px}
.x6door b{font:500 16.5px/1.3 var(--f-text)}
.x6door span{font-size:14px;line-height:1.45;color:var(--ink-3)}
.x6door--rfq{border-top-color:var(--satin)}
.x6door--rfq i{background:rgba(168,143,102,.14);color:var(--satin)}
.x6suh .x6cap{margin-top:14px}
@media (max-width:900px){.x6suh__plate{aspect-ratio:4/3;min-height:0}.x6suh__plate::after{background:linear-gradient(180deg,rgba(247,245,240,.94) 0%,rgba(247,245,240,.4) 34%,rgba(247,245,240,0) 54%),linear-gradient(0deg,rgba(247,245,240,1) 0%,rgba(247,245,240,0) 26%)}.x6suh__c{top:calc(var(--hdr) + 22px)}.x6doors{grid-template-columns:minmax(0,1fr);margin-top:-40px}}
.x6req__g{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,3.4vw,64px);align-items:start}
.x6int{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 clamp(28px,3vw,44px)}
/* the doors in the hero describe each path; inside the request the same choice is a compact segmented control */
.x6 .x6int>button,.x6 .x6int .int5__rfq{grid-template-columns:auto auto;align-items:center;column-gap:9px;padding:7px 14px 7px 7px;border-radius:2px}
.x6 .x6int i{grid-row:auto;width:28px;height:28px;border-radius:2px}.x6 .x6int i svg{width:15px;height:15px}
.x6 .x6int b{font-size:14.5px;white-space:nowrap}.x6 .x6int>button>span,.x6 .x6int .int5__rfq>span,.x6 .x6int .int5__rfq em{display:none}
.x6 .int5 button,.x6 .int5 .int5__rfq{border-radius:4px;background:rgba(251,250,247,.7)}
.x6rq{display:grid;gap:0}
.x6rs{position:relative;display:grid;gap:18px;padding:0 0 clamp(26px,3vw,40px) 46px;border-left:1px solid var(--hair-2);margin-left:14px}
.x6rs:last-of-type{border-left-color:transparent}
.x6rs__h{position:relative;margin:0 0 2px;font:400 clamp(21px,1.6vw,26px)/1.2 var(--f-disp);letter-spacing:-.015em;color:var(--ink)}
.x6rs__n{position:absolute;left:-61px;top:-2px;width:30px;height:30px;border-radius:50%;background:var(--porcelain);box-shadow:0 0 0 1px var(--hair-2);display:grid;place-items:center}
.x6rs__n::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--signal)}
.x6rq .inp{border-radius:4px;background:var(--paper);border-color:var(--hair-2)}
.x6rq .opt span{border-radius:4px}
.x6picks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.x6pick{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:center;padding:8px 12px 8px 8px;background:rgba(251,250,247,.7);border:1px solid var(--hair);cursor:pointer;transition:border-color .2s,box-shadow .2s}
.x6pick input{position:absolute;opacity:0;pointer-events:none}
.x6pick img{width:56px;height:56px;object-fit:cover;display:block;background:#E8E8E5}
.x6pick span{display:grid;gap:2px;min-width:0}
.x6pick b{font:500 13.5px/1.25 var(--f-text);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.x6pick:has(input:checked){border-color:var(--signal);box-shadow:0 0 0 1px var(--signal)}
.x6pick:has(input:focus-visible){outline:2px solid var(--signal);outline-offset:2px}
.x6more{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.x6more summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;cursor:pointer;font:500 15px/1.3 var(--f-text);color:var(--ink)}
.x6more summary::-webkit-details-marker{display:none}
.x6more summary svg{width:14px;height:14px;transition:transform .25s}
.x6more[open] summary svg{transform:rotate(45deg)}
.x6more>*:not(summary){margin-bottom:16px}
.x6draft{position:sticky;top:calc(var(--hdr) + 24px);background:var(--paper)!important;border:1px solid var(--hair)!important;border-radius:2px!important;box-shadow:var(--x6sh-l)!important;background-image:repeating-linear-gradient(180deg,transparent 0 31px,rgba(23,33,43,.035) 31px 32px)!important}
@media (max-width:900px){.x6req__g{grid-template-columns:minmax(0,1fr)}.x6int{gap:6px}.x6picks{grid-template-columns:minmax(0,1fr)}.x6draft{position:relative;top:auto}.x6rs{padding-left:30px;margin-left:12px}.x6rs__n{left:-45px}}

/* ================================================================== shell: header, footer, legacy blocks in the V3.6 material */
.x6 .hdr{background:rgba(247,245,240,.7)}
.x6 .hdr.is-scrolled{background:rgba(250,249,246,.92);box-shadow:0 1px 0 var(--hair)}
.x6 .nav__a{border-radius:4px}
.x6 .nav__a[aria-current=page]{box-shadow:inset 0 -1.5px 0 var(--satin);color:var(--ink)}
.x6 .hdr .btn--p{background:var(--signal)}
.x6 .ftr{background:linear-gradient(180deg,rgba(247,245,240,0) 0%,#ECEBE6 22%,#E4E5E2 100%)}
.x6 .ftr__cta{border-radius:2px}
.x6 .head .tB,.x6 .head .tC,.x6 .cathead .tB{font-weight:300;letter-spacing:-.03em}
.x6 .sec .wrap,.x6 .s5 .wrap{max-width:calc(var(--x6w) + 2 * var(--x6g))}
.x6 .ctaband,.x6 .cmpbar,.x6 .proj .projc,.x6 .fit34__grid,.x6 .bg5,.x6 .bg5q,.x6 .faq details,.x6 .wb42 .wb,.x6 .ts42 li,.x6 .dc42 table,.x6 .or42 .orc{border-radius:2px}
.x6 .ctaband{background:rgba(251,250,247,.75);border:1px solid var(--hair);box-shadow:var(--x6sh)}
.x6 .cap{border-radius:2px}

/* ---------- reveal (opt-in; content stays visible without JS and with reduced motion) ---------- */
@media (prefers-reduced-motion:no-preference){
  .x6rv .x6 [data-rv]{opacity:.001;transform:translateY(18px);transition:opacity .7s var(--x6ease),transform .7s var(--x6ease)}
  .x6rv .x6 [data-rv].is-in{opacity:1;transform:none}
}

/* ================================================================== SHOWROOM · line-up stage, 360 room, into the scene */
.x6shh{padding-top:calc(var(--hdr) + clamp(40px,6vw,88px))}
.x6shh__h{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 64px;align-items:end;margin-bottom:clamp(20px,3vw,40px)}
.x6lu{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0;background:linear-gradient(180deg,#F2F2F2 0%,#F2F2F2 62%,#E6E7E5 100%);padding:clamp(12px,2vw,28px) max(0px,calc((100vw - 1600px) / 2)) 0;overflow:hidden}
.x6lu__i{position:relative;display:grid;justify-items:center;gap:6px;padding-bottom:18px;color:var(--ink)}
.x6lu__i img{width:100%;aspect-ratio:1;object-fit:cover;mix-blend-mode:multiply;transition:transform .6s var(--x6ease)}
.x6lu__i:hover img{transform:translateY(-6px) scale(1.03)}
.x6lu__i span{font:500 13px/1.25 var(--f-text);text-align:center;padding:0 6px}
.x6shh__f{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-top:14px}
@media (max-width:900px){.x6shh__h{grid-template-columns:minmax(0,1fr)}.x6lu{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.x6lu__i{flex:0 0 44%;scroll-snap-align:center}.x6lu__i img{width:100%}}
.x6 #showcase .room{border-radius:2px;box-shadow:var(--x6sh-l)}
.x6drg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,24px)}
.x6dr{display:grid;gap:12px;align-content:start}
.x6dr__img{display:block;aspect-ratio:4/5;overflow:hidden;box-shadow:var(--x6sh)}
.x6dr__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--x6ease)}
.x6dr:hover .x6dr__img img{transform:scale(1.04)}
.x6dr__b{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:center;margin-top:-40px;margin-left:12px;position:relative}
.x6dr__bot{width:52px;height:52px;object-fit:cover;background:#F2F2F2;box-shadow:0 0 0 4px var(--porcelain),var(--x6sh)}
.x6dr__b div{display:grid;gap:2px;padding-top:30px}
.x6dr__b b{font:500 15px/1.25 var(--f-text)}
.x6dr__b span{font-size:13.5px;color:var(--ink-3)}
@media (max-width:1100px){.x6drg{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.x6drg{grid-template-columns:minmax(0,1fr)}}

/* ================================================================== RFQ · configuration workbench */
.x6 .x6rfqh{background:transparent}
.x6 .pbsum{border-radius:2px!important;box-shadow:var(--x6sh-l)}
.x6cfg{display:grid;gap:10px;padding:14px 0 6px;border-top:1px solid var(--hair);margin-top:10px}
.x6cfg__m{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.x6cfg__m li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:center}
.x6cfg__m img{width:52px;height:52px;object-fit:cover;display:block;background:#E8E8E5}
.x6cfg__m span{display:grid;gap:2px;min-width:0}
.x6cfg__m b{font:500 13.5px/1.25 var(--f-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.x6 .pbpanel,.x6 .pb .card,.x6 .scn{border-radius:2px}

/* ================================================================== INSIGHTS · editorial */
.x6 .x6insh{background:transparent}
.x6insh .feat{position:relative}
.x6insh__k{position:absolute;z-index:2;left:clamp(14px,1.6vw,22px);top:clamp(14px,1.6vw,22px);padding:6px 10px;background:rgba(251,250,247,.9);color:var(--ink)}
.x6 .feat .ph,.x6 .feat picture img,.x6 .pick34 .ph,.x6 .desk34,.x6 .desk34__img{border-radius:2px!important}
.x6 #library .lib__list li,.x6 #library .libi{border-radius:0}

/* ================================================================== legacy blocks re-dressed in the V3.6 material (sharp, paper, hairline) */
.x6 .rq5.x6rq{padding:0;background:transparent;box-shadow:none;border-radius:0}
.x6 .cmpwrap,.x6 .cmpw,.x6 .projc,.x6 .desk34,.x6 .tier34,.x6 .ps42__s,.x6 .wb42__panel,.x6 .wb42__side,.x6 .ts42__v,.x6 .ts42__card,.x6 .dc42__w,.x6 .or42__img,.x6 .or42__i,.x6 .bg5,.x6 .bg5qs,.x6 .wb42__img,.x6 .wb42__t,.x6 .ps42__img,.x6 .rqs5{border-radius:2px}
.x6 .ps42__s,.x6 .dc42__w,.x6 .bg5,.x6 .tier34,.x6 .wb42__panel{background:rgba(251,250,247,.82);box-shadow:0 0 0 1px var(--hair),var(--x6sh)}
.x6 .wb42__panel{background:linear-gradient(180deg,rgba(251,250,247,.9),rgba(239,236,229,.8))}
.x6 .dc42__a,.x6 .tier34__n{border-radius:3px}
.x6 .ts42__n,.x6 .st42__dot{background:var(--signal)}
.x6 .st42__dot{color:#fff}
.x6 .fq42 details,.x6 .faq details{border-radius:0;background:transparent;box-shadow:none;border-top:1px solid var(--hair)}
.x6 .closing__img,.x6 .closing{border-radius:0}
.x6 .fit34 .fdoc,.x6 .fit34__ctl,.x6 .fit34__doc{border-radius:2px}
.x6 .sheetdlg{border-radius:4px}

/* ---------- material bands: warm alabaster for hardware, deeper evening glass for the screening chapters ---------- */
.x6chain{background:linear-gradient(180deg,rgba(236,232,223,0) 0,rgba(234,229,219,.75) 18%,rgba(232,227,216,.75) 82%,rgba(236,232,223,0) 100%)}
.x6screen,.x6room6{background:linear-gradient(180deg,rgba(203,213,221,0) 0,rgba(200,211,220,.62) 22%,rgba(196,208,218,.62) 80%,rgba(203,213,221,0) 100%)}
.x6cat--a{background:linear-gradient(180deg,rgba(236,232,223,0),rgba(234,230,221,.6) 30%,rgba(234,230,221,0))}
.x6cat--c{background:linear-gradient(180deg,rgba(214,222,228,0),rgba(214,222,228,.55) 40%,rgba(214,222,228,0))}

/* ---------- tablets: the service bench is close and busy — title block first, plate below (no text over the modules) ---------- */
@media (max-width:1200px){
  .x6suh{display:flex;flex-direction:column}
  .x6suh__c{position:relative;top:auto;order:-1;padding-top:clamp(28px,4vw,48px);padding-bottom:18px}
  .x6suh__plate::after{background:linear-gradient(0deg,rgba(247,245,240,.9) 0%,rgba(247,245,240,0) 30%)}
  .x6suh__plate{aspect-ratio:16/9;min-height:0;max-height:none}
}
/* ---------- phones: on photographic heroes with busy detail, the title block comes first and the plate follows ---------- */
@media (max-width:720px){
  .x6suh,.x6aph{display:flex;flex-direction:column}
  .x6suh__c,.x6aph__c{position:relative;top:auto;order:-1;padding-top:28px;padding-bottom:18px}
  .x6suh__plate::after,.x6aph__plate::after{background:linear-gradient(0deg,rgba(247,245,240,.9) 0%,rgba(247,245,240,0) 30%)}
  .x6suh__plate,.x6aph__plate{aspect-ratio:4/3}
  .x6doors{margin-top:-28px}
}

/* ---------- RFQ workbench: scene board + module shelf (by category) ---------- */
.x6rfqh .x6d{font-size:clamp(52px,6.6vw,112px)}
.x6wb{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:start;margin-top:clamp(28px,3.4vw,48px)}
.x6wb>div:first-child{margin-top:0!important}
.x6rfqh .pick8{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.x6rfqh .scn{border-radius:2px;aspect-ratio:4/3;overflow:hidden}.x6rfqh .scn img{border-radius:0}
.x6shelf{display:grid;gap:12px;align-content:start}
.x6shelf__g{display:grid;gap:8px}
.x6shelf__i{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;padding:10px 14px 10px 10px;border:1px solid var(--hair);border-radius:2px;background:rgba(251,250,247,.86);text-align:left;cursor:pointer;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.x6shelf__i:hover{border-color:var(--hair-2)}
.x6shelf__i[aria-pressed=true]{border-color:var(--signal);box-shadow:0 0 0 1px var(--signal)}
.x6shelf__img{display:flex;gap:4px}.x6shelf__img img{width:64px;height:64px;object-fit:cover;border-radius:2px;background:#E8E9E6}
.x6shelf__t{display:grid;gap:4px;min-width:0}.x6shelf__t b{font-weight:500;font-size:15.5px}
@media (max-width:1000px){.x6wb{grid-template-columns:minmax(0,1fr)}}
@media (max-width:620px){.x6rfqh .pick8{grid-template-columns:repeat(2,minmax(0,1fr))}.x6shelf__img img{width:52px;height:52px}}

/* ===== v37.css ===== */
/* =====================================================================================================================
   TANNAI V3.7 · Robotics Experience & Sourcing Studio — "Pearl Titanium / Luminous Precision"
   Loads after v32–v36 (bundled into tn37.css). New components use the .x7 prefix.
   One brand world, a different scene per page: each page sets its own material ground (pearl, warm ceramic, light titanium,
   silver-blue glass, paper); the Sourcing Studio carries the site's one smoked-titanium band (procurement path).
   Blue is for interaction and focus only; titles are short, architectural, with the closing word carrying the weight.
   ===================================================================================================================== */
:root{
  --pearl:#F8F6F1; --ceramic:#EFEAE1; --ti-l:#E3E7E9; --glass:#E2E9EE; --paper:#FBFAF7;
  --smoke:#283037; --smoke-2:#323A42; --smoke-ink:#E8ECEE; --smoke-ink-2:#B7C0C7;
  --champ:#A88F66; --champ-08:rgba(168,143,102,.1);
  --x7r:6px;
}

/* ---------- material grounds: one per page ---------- */
body.x7{background:linear-gradient(180deg,var(--pearl) 0,var(--pearl) 12%,var(--ti-l) 36%,#E7EBED 58%,var(--glass) 78%,var(--pearl) 100%)}
body.x7oem{background:linear-gradient(180deg,var(--pearl) 0,#F2F1ED 9%,var(--ti-l) 30%,#E9EDEF 46%,#EEF0EF 60%,var(--glass) 82%,var(--pearl) 100%)}
body.x7co-p{background:linear-gradient(180deg,#F6F2EA 0,var(--ceramic) 26%,#F3EFE8 52%,#ECE7DE 76%,#F6F3EC 100%)}
body.x7su{background:linear-gradient(180deg,#F3F5F6 0,var(--glass) 24%,#EDF1F3 50%,#E5EBEF 74%,#F4F5F5 100%)}
body.x7rfq{background:linear-gradient(180deg,var(--paper) 0,#F4F2ED 40%,#EEEDE8 100%)}
body.x7pr{background:linear-gradient(180deg,var(--pearl) 0,#EFF0EE 20%,#E4E9EC 48%,#E9EDEF 72%,var(--pearl) 100%)}
body.x7ap{background:linear-gradient(180deg,#F6F3EC 0,#EEEBE4 22%,#E6E9E9 50%,#E9ECEC 76%,var(--pearl) 100%)}
body.x7sr{background:linear-gradient(180deg,#F2F3F2 0,var(--ti-l) 30%,#DFE4E7 60%,#ECEEEE 100%)}

/* ---------- type: heavier, architectural; the closing word carries the weight ---------- */
.x7 .x6d{font-weight:300}
.x7 .x6t{font-weight:300}
.x7 .x6t2{font-weight:300}
.x7em{font-style:normal;font-weight:500;color:var(--ink);letter-spacing:-.02em}
:lang(zh-CN) .x7em,:lang(ja) .x7em,:lang(ko) .x7em{font-weight:600;letter-spacing:0}
.x6d .x7em{letter-spacing:-.035em}
.x7d{font-size:clamp(46px,6.4vw,108px);line-height:.96}
.x7t{font-size:clamp(32px,3.7vw,60px)}
.x7kick{margin:0 0 14px;font:500 14px/1.3 var(--f-text);letter-spacing:.01em;color:var(--champ)}
.x7lab{margin:0;font:500 13.5px/1.35 var(--f-text);letter-spacing:.015em;color:var(--ink-3)}
.x7head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 64px;align-items:end;margin-bottom:clamp(32px,4vw,64px)}
.x7head__r{display:grid;gap:14px;justify-items:start;min-width:0}
@media (max-width:900px){.x7head{grid-template-columns:minmax(0,1fr)}}

/* text-style action (add to draft and similar secondary actions) */
.x7link{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0;border:0;background:none;font:500 14.5px/1.2 var(--f-text);color:var(--signal);cursor:pointer}
.x7link:hover{text-decoration:underline;text-underline-offset:3px}
.x7add .x7add__on{display:none}
.x7add[aria-pressed=true] .x7add__off{display:none}
.x7add[aria-pressed=true] .x7add__on{display:inline-flex;align-items:center;gap:8px}
.x7add[aria-pressed=true] .x7add__on::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--champ)}
.x7add.x6btn[aria-pressed=true]{border-color:var(--ink);color:var(--ink);background:rgba(255,255,255,.7)}
.x7link.x7add[aria-pressed=true]{color:var(--ink)}

/* ---------- header: OEM mega panel, project-draft pill ---------- */
.x7pill{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 12px;margin-right:8px;border:1px solid var(--hair-2);border-radius:6px;background:rgba(251,250,247,.7);font:500 13.5px/1 var(--f-text);color:var(--ink);white-space:nowrap}
.x7pill svg{width:16px;height:16px}
.x7pill b{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--ink);color:#fff;font:600 12px/20px var(--f-text);text-align:center}
.x7pill:hover{border-color:var(--ink)}
@media (max-width:1280px){.x7pill__t{display:none}}
@media (max-width:560px){.x7pill{height:36px;padding:0 8px;margin-right:4px}}
.x7mg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;min-width:0}
.x7mg__i{display:grid;gap:6px;align-content:start;min-width:0}
.x7mg__i img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:4px;background:var(--ti-l)}
.x7mg__i b{font:500 15px/1.3 var(--f-text);color:var(--ink)}
.x7mg__i span{font-size:13px;line-height:1.4;color:var(--ink-3)}
.x7mg__i:hover b{color:var(--signal)}
.sheet__nav .x7sheet-sub{padding-left:18px;font-size:.92em;color:var(--ink-2)}

/* ================================================================== SOURCING STUDIO · act 1 arrival */
.x7arr{position:relative;padding-top:calc(var(--hdr) + clamp(24px,3.2vw,52px))}
.x7arr__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 64px;align-items:end;padding-bottom:clamp(22px,2.6vw,40px)}
.x7arr__r{display:grid;gap:22px;justify-items:start;min-width:0}
.x7arr__plate{position:relative;margin:0;aspect-ratio:2400/836;overflow:hidden;background:#E8EBEC}
.x7arr__plate picture,.x7arr__plate img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 100%}
.x7arr__map{position:absolute;left:0;right:0;bottom:0;height:calc(100% / (1 - var(--crop)));pointer-events:none}
.x7arr__svg{position:absolute;inset:0;width:100%;height:100%}
.x7arr__ray{fill:none;stroke:#2365D5;stroke-opacity:.55;stroke-width:1.2;stroke-dasharray:5 5}
.x7arr__fov{position:absolute;left:var(--x);top:var(--y);transform:translate(-100%,-150%);margin-left:-14px;padding:7px 11px;border-radius:4px;background:rgba(251,250,247,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font:500 13px/1.2 var(--f-text);color:var(--ink-2);white-space:nowrap;box-shadow:0 0 0 1px var(--hair)}
.x7tag{position:absolute;left:var(--x);top:var(--y);width:0;height:0;pointer-events:auto}
.x7tag i{position:absolute;left:-7px;top:-7px;width:14px;height:14px;border-radius:50%;background:rgba(255,255,255,.9);box-shadow:0 0 0 1.5px var(--signal),0 0 0 7px rgba(35,101,213,.16)}
.x7tag i::after{content:"";position:absolute;left:50%;width:1px;background:rgba(23,33,43,.4)}
.x7tag > span{position:absolute;left:-16px;display:grid;gap:2px;padding:9px 13px 10px;border-radius:5px;background:rgba(251,250,247,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 0 0 1px var(--hair),0 14px 28px -18px rgba(23,33,43,.5);white-space:nowrap;transition:box-shadow .2s,transform .25s var(--x6ease)}
.x7tag > span b{font:500 14px/1.2 var(--f-text);color:var(--ink)}
.x7tag--up > span{bottom:40px}
.x7tag--up i::after{bottom:14px;height:26px}
.x7tag--dn > span{top:40px}
.x7tag--dn i::after{top:14px;height:26px}
.x7tag:hover > span,.x7tag:focus-visible > span{box-shadow:0 0 0 1.5px var(--signal),0 18px 36px -18px rgba(23,33,43,.55);transform:translateY(-2px)}
.x7arr__cap{display:flex;justify-content:flex-end;padding-top:12px}
.x7arr__dock{position:relative;z-index:2;margin-top:clamp(-72px,-5vw,-40px)}
.x7dock__in{display:grid;gap:14px;padding:20px 22px 18px;border-radius:8px;background:rgba(251,250,247,.9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 0 0 1px var(--hair),var(--x6sh-l)}
.x7int{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.x7int__b{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:4px 12px;align-items:start;padding:14px 16px;border:1px solid var(--hair);border-radius:6px;background:rgba(255,255,255,.66);text-align:left;cursor:pointer;transition:border-color .2s,background-color .2s,box-shadow .2s}
.x7int__b i{grid-row:span 2;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--champ-08);color:var(--champ)}
.x7int__b i svg{width:18px;height:18px}
.x7int__b b{font:500 15.5px/1.25 var(--f-text);color:var(--ink)}
.x7int__b span{font-size:13.5px;line-height:1.4;color:var(--ink-2)}
.x7int__b:hover{border-color:var(--ink)}
.x7int__b[aria-pressed=true]{border-color:var(--signal);background:#fff;box-shadow:inset 0 0 0 1px var(--signal)}
.x7int__b[aria-pressed=true] i{background:var(--signal);color:#fff}
.x7int__ok{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0;font-size:14px;color:var(--ink-2)}
.x7int__next{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:var(--signal)}
.x7int__next svg{width:14px;height:14px}
@media (max-width:1100px){.x7int{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.x7arr__top{grid-template-columns:minmax(0,1fr)}}
@media (max-width:720px){
  .x7arr__plate{aspect-ratio:971/1020}
  .x7arr__plate picture,.x7arr__plate img{object-position:50% 50%}
  .x7arr__map{height:100%}
  .x7arr__svg,.x7arr__fov,.x7tag[data-mob-off]{display:none}
  .x7tag{left:var(--mx);top:var(--my)}
  .x7tag > span{padding:7px 10px 8px;left:-12px}
  .x7tag > span b{display:none}
  .x7tag--up > span{bottom:30px}.x7tag--up i::after{height:16px}
  .x7tag--dn > span{top:30px}.x7tag--dn i::after{height:16px}
  .x7arr__dock{margin-top:16px}
  .x7dock__in{padding:16px 14px}
  .x7int{gap:8px}
  .x7int__b{grid-template-columns:minmax(0,1fr);padding:12px}
  .x7int__b i{display:none}
  .x7int__b span{font-size:13px}
}

/* ================================================================== act 2 · system anatomy (exploded assembly) */
.x7an__g{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(28px,4vw,64px);align-items:start}
.x7an__stage{position:relative;height:clamp(560px,50vw,700px);--gap:64px}
.x7an__stage.is-open{--gap:clamp(88px,7.4vw,108px)}
.x7an__idx,.x7an__stack{list-style:none;margin:0;padding:0}
.x7an__idx li{position:absolute;left:0;top:calc(50% + (var(--i) - 2) * var(--gap));transform:translateY(-50%);transition:top .8s var(--x6ease);z-index:20}
.x7li{display:grid;gap:3px;min-width:170px;padding:9px 14px 10px 0;border:0;border-bottom:1px solid var(--hair-2);background:none;text-align:left;cursor:pointer;position:relative}
.x7li b{font:400 18px/1.15 var(--f-disp);letter-spacing:-.01em;color:var(--ink-2);transition:color .2s}
.x7li .x6code{font-size:11.5px}
.x7li::after{content:"";position:absolute;left:100%;bottom:-1px;width:clamp(24px,4vw,64px);height:1px;background:var(--hair-2)}
.x7li:hover b,.x7li[aria-pressed=true] b{color:var(--ink)}
.x7li[aria-pressed=true]{border-bottom-color:var(--signal)}
.x7li[aria-pressed=true]::after{background:var(--signal)}
.x7li[aria-pressed=true] b{font-weight:500}
.x7pl{position:absolute;left:62%;top:50%;width:min(56%,400px);aspect-ratio:16/10;--lift:0px;
  transform:translate(-50%,-50%) translateY(calc((var(--i) - 2) * var(--gap) + var(--lift))) perspective(2000px) rotateX(57deg) rotateZ(-36deg);
  transition:transform .8s var(--x6ease),opacity .4s,filter .4s}
.x7pl__face{position:absolute;inset:0;border-radius:10px;overflow:hidden;background:#F3F1EC;
  box-shadow:1px 1px 0 #DDE1E4,2px 2px 0 #D5DADE,3px 3px 0 #CDD3D8,4px 4px 0 #C6CDD2,5px 5px 0 #C0C7CD,6px 6px 0 #BAC2C8,14px 22px 34px rgba(23,33,43,.28)}
.x7pl__face img{width:100%;height:100%;object-fit:cover}
.x7pl__face::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55);background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,0) 40%)}
.x7an__stack.has-on .x7pl{opacity:.62;filter:saturate(.7)}
.x7an__stack .x7pl[data-on]{--lift:-22px;opacity:1;filter:none}
.x7an__stack .x7pl[data-on] .x7pl__face{box-shadow:0 0 0 2px var(--signal),1px 1px 0 #DDE1E4,2px 2px 0 #D5DADE,3px 3px 0 #CDD3D8,4px 4px 0 #C6CDD2,5px 5px 0 #C0C7CD,6px 6px 0 #BAC2C8,18px 30px 44px rgba(23,33,43,.34)}
.x7face__svg{width:100%;height:100%;background:linear-gradient(180deg,#F6F5F1,#ECEEEE)}
.x7face__svg .f{fill:#fff;stroke:#B9C1C8;stroke-width:1.5}
.x7face__svg .h{fill:#E9EEF5;stroke:#2365D5;stroke-width:2}
.x7face__svg .m{font:600 20px/1 var(--f-mono);fill:#17212B}
.x7face__svg .i{font:400 15px/1 var(--f-mono);fill:#58636E}
.x7face__svg .l{fill:none;stroke:#2365D5;stroke-width:2.5}
.x7face__svg .l.d{stroke-dasharray:7 6}
.x7an__cap{position:absolute;right:0;bottom:0;margin:0}
.x7an__ledger{min-width:0}
@media (min-width:1101px){.x7an__stage{position:sticky;top:calc(var(--hdr) + 24px)}}
.x7lg{display:grid;gap:22px;padding:28px 28px 26px;background:rgba(251,250,247,.86);border:1px solid var(--hair);border-top:2px solid var(--champ);box-shadow:var(--x6sh)}
.x7lg__h{display:grid;gap:10px}
.x7lg__h p{margin:0;color:var(--ink-2);max-width:52ch}
.x7lg__mods{display:grid;gap:12px}
.x7lm{display:grid;grid-template-columns:72px minmax(0,1fr);gap:4px 16px;padding:12px 0;border-top:1px solid var(--hair)}
.x7lm img{grid-row:span 2;width:72px;height:72px;object-fit:cover;border-radius:4px;background:var(--ti-l)}
.x7lm__b{display:grid;gap:2px;min-width:0}
.x7lm__b > b{font:500 15px/1.3 var(--f-text);color:var(--ink)}
.x7lm__b .x6facts{margin-top:6px}
.x7lm__a{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}
.x7lsc{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 0;border-top:1px solid var(--hair)}
.x7lsc img{width:96px;height:60px;object-fit:cover;border-radius:3px}
.x7lsc > span{display:grid;gap:2px}.x7lsc b{font:500 15px/1.3 var(--f-text);color:var(--ink)}.x7lsc > span > span{font-size:13.5px;color:var(--ink-2)}
.x7lsc svg{width:16px;height:16px;color:var(--signal)}
.x7chk{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}
.x7chk li{position:relative;padding-left:22px;font-size:14.5px;line-height:1.45;color:var(--ink-2)}
.x7chk li::before{content:"";position:absolute;left:2px;top:.42em;width:9px;height:9px;border-radius:50%;border:1.5px solid var(--champ)}
.x7lg__claim{display:grid;gap:6px;padding-top:4px}
.x7lg__claim dd{color:var(--ink-2);font-weight:400}
@media (max-width:1100px){.x7an__g{grid-template-columns:minmax(0,1fr)}.x7an__ledger{position:static}}
@media (max-width:900px){
  .x7an__stage{height:auto;display:grid;gap:8px}
  .x7an__idx{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
  .x7an__idx li{position:static;transform:none}
  .x7li{min-width:0;white-space:nowrap;padding:8px 14px;border:1px solid var(--hair-2);border-radius:4px;background:rgba(251,250,247,.7)}
  .x7li::after,.x7li .x6code{display:none}
  .x7li b{font-size:15px}
  .x7li[aria-pressed=true]{border-color:var(--signal);background:#fff}
  .x7an__stack{position:relative;height:clamp(300px,82vw,440px);--gap:clamp(36px,10vw,58px)}
  .x7an__stage.is-open .x7an__stack{--gap:clamp(42px,12vw,66px)}
  .x7pl{left:50%;width:min(64%,320px)}
  .x7an__cap{position:static}
  .x7lg{padding:20px 18px}
}

/* ================================================================== act 3 · selection bench */
.x7bn{display:grid;grid-template-columns:minmax(250px,.34fr) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:start}
.x7bn__need{position:sticky;top:96px;display:grid;gap:8px}
.x7tab{display:grid;gap:8px;padding:16px 18px 18px;border:1px solid var(--hair);border-left:3px solid transparent;border-radius:4px;background:rgba(251,250,247,.6);text-align:left;cursor:pointer;transition:background-color .2s,border-color .2s,box-shadow .2s}
.x7tab b{font:400 19px/1.2 var(--f-disp);letter-spacing:-.01em;color:var(--ink)}
.x7q{display:block;position:relative;padding-left:16px;font-size:14px;line-height:1.45;color:var(--ink-2)}
.x7q::before{content:"";position:absolute;left:2px;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--steel)}
.x7tab:hover{border-color:var(--hair-2)}
.x7tab[aria-selected=true]{background:#fff;border-color:var(--hair-2);border-left-color:var(--signal);box-shadow:var(--x6sh)}
.x7tab[aria-selected=true] b{font-weight:500}
.x7tab[aria-selected=true] .x7q::before{background:var(--signal)}
.x7bn__ps{min-width:0}
.x7bn__p{display:grid;gap:18px}
.x7bn__p:focus-visible{outline-offset:6px}
.x7dos{display:grid;grid-template-columns:minmax(0,.58fr) minmax(0,1.42fr);gap:clamp(18px,2.4vw,32px);padding:clamp(18px,2vw,26px);background:rgba(255,255,255,.78);border:1px solid var(--hair);border-top:2px solid var(--champ);box-shadow:var(--x6sh);scroll-margin-top:110px;transition:box-shadow .3s}
.x7dos.is-hl{box-shadow:0 0 0 2px var(--signal),var(--x6sh-l)}
.x7dos__img{margin:0;display:grid;gap:10px;align-content:start}
.x7dos__img img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;background:var(--ti-l)}
.x7dos__b{display:grid;gap:16px;min-width:0;align-content:start}
.x7dos__h{display:grid;gap:4px}
.x7dos__h .x6price{margin-top:6px}
.x7fit{margin:0;padding:12px 14px;border-radius:4px;background:var(--signal-08);font-size:15px;line-height:1.45;color:var(--ink)}
.x7fit b{display:block;font:500 12.5px/1.3 var(--f-text);letter-spacing:.02em;color:var(--signal-2);margin-bottom:2px}
.x7dos__cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}
.x7dos__cols .x6facts dd{max-width:60%}
.x7lab--claim{margin-top:16px}
.x7claim dt{color:var(--ink-3)}.x7claim dd{color:var(--ink-2);font-weight:400}
.x7src{margin:0;padding-top:12px;border-top:1px solid var(--hair);font-size:13px;line-height:1.5;color:var(--ink-3)}
.x7mx{display:grid;gap:14px;padding:clamp(18px,2vw,26px);background:rgba(255,255,255,.78);border:1px solid var(--hair);border-top:2px solid var(--champ);box-shadow:var(--x6sh)}
.x7mx__t{overflow-x:auto}
.x7mx table{width:100%;min-width:700px;border-collapse:collapse}
.x7mx th,.x7mx td{padding:13px 12px;border-top:1px solid var(--hair);text-align:left;vertical-align:middle;font-size:14px}
.x7mx thead th{border-top:0;font:500 13px/1.3 var(--f-text);color:var(--ink-3)}
.x7mx tbody th{display:grid;gap:2px;font-weight:400}
.x7mx tbody th span:last-child{font-size:13px;color:var(--ink-2)}
.x7st{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:13px;font:500 12.5px/1 var(--f-text);white-space:nowrap}
.x7st--pub{background:#E6EEFA;color:var(--signal-2)}
.x7st--adp{background:#F2ECDF;color:#7A6236}
.x7st--ask{border:1px dashed var(--hair-2);color:var(--ink-2)}
.x7st--na{color:var(--ink-3);padding:0;font-weight:400}
.x7mx__leg{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px}
.x7cu{display:grid;gap:14px;margin-top:6px}
.x7cu__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.x7cu__f{margin:0;display:grid;gap:10px}
.x7cu__f img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px;background:var(--ti-l)}
.x7cu__f figcaption{font-size:14px;line-height:1.45;color:var(--ink-2)}
@media (max-width:1100px){.x7bn{grid-template-columns:minmax(0,1fr)}.x7bn__need{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .x7bn__need{display:flex;overflow-x:auto;gap:8px;padding-bottom:6px}
  .x7tab{flex:0 0 auto;padding:10px 14px}
  .x7tab .x7q{display:none}
  .x7tab b{font-size:16px;white-space:nowrap}
  .x7dos{grid-template-columns:minmax(0,1fr)}
  .x7dos__img img{aspect-ratio:4/3}
  .x7dos__cols,.x7cu__g{grid-template-columns:minmax(0,1fr)}
}

/* ================================================================== act 4 · task → brief */
.x7pt__row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.x7pt{display:inline-flex;align-items:center;gap:12px;padding:6px 18px 6px 6px;border:1px solid var(--hair);border-radius:6px;background:rgba(251,250,247,.65);cursor:pointer;transition:border-color .2s,background-color .2s}
.x7pt img{width:88px;height:50px;object-fit:cover;border-radius:3px}
.x7pt b{font:500 15px/1.2 var(--f-text);color:var(--ink-2)}
.x7pt[aria-selected=true]{border-color:var(--ink);background:#fff}
.x7pt[aria-selected=true] b{color:var(--ink)}
.x7ps__plate{position:relative;margin:0}
.x7ps__plate img{width:100%;height:auto;aspect-ratio:2400/1020;object-fit:cover;display:block}
.x7ps__plate figcaption,.x7act__plate figcaption{position:absolute;left:clamp(12px,2vw,24px);top:clamp(12px,2vw,24px);display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:10px 14px;border-radius:4px;background:rgba(251,250,247,.86);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.x7track{list-style:none;position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:clamp(-64px,-4.4vw,-40px) clamp(12px,2.4vw,32px) 0;padding:0;background:rgba(251,250,247,.95);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 0 0 1px var(--hair),var(--x6sh-l);border-radius:6px}
.x7track::before{content:"";position:absolute;left:24px;right:24px;top:0;height:2px;background:linear-gradient(90deg,var(--champ),var(--signal))}
.x7track__s{display:grid;gap:10px;align-content:start;padding:22px 22px 24px;border-left:1px solid var(--hair);min-width:0}
.x7track__s:first-child{border-left:0}
.x7track__v{margin:0;font:400 18px/1.35 var(--f-disp);color:var(--ink)}
.x7qs{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14.5px;color:var(--ink-2)}
.x7mods{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.x7mods li{display:flex;align-items:center;gap:10px}
.x7mods img{width:44px;height:44px;object-fit:cover;border-radius:4px;background:var(--ti-l)}
.x7mods li > span{display:grid;font-size:13.5px;color:var(--ink-2)}
.x7track__go{align-content:center;justify-items:start;background:rgba(255,255,255,.6)}
@media (max-width:1000px){.x7track{grid-template-columns:repeat(2,minmax(0,1fr))}.x7track__s:nth-child(3){border-left:0}.x7track__s:nth-child(n+3){border-top:1px solid var(--hair)}}
@media (max-width:620px){.x7track{grid-template-columns:minmax(0,1fr);margin:12px 0 0}.x7track__s{border-left:0;border-top:1px solid var(--hair)}.x7track__s:first-child{border-top:0}.x7pt img{width:64px;height:40px}.x7pt{padding-right:12px}.x7pt b{font-size:14px}
  .x7ps__plate figcaption,.x7act__plate figcaption{position:static;background:none;padding:10px 0 0}}

/* ================================================================== act 5 · procurement path — the one smoked-titanium band */
.x7path{position:relative;padding-block:clamp(84px,9vw,150px);color:var(--smoke-ink);background:
  repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px),
  radial-gradient(120% 80% at 12% 0,rgba(255,255,255,.1),rgba(255,255,255,0) 60%),
  linear-gradient(180deg,var(--smoke-2),var(--smoke))}
.x7path .x6t,.x7path .x7em{color:#F4F5F5}
.x7path .x6sub{color:var(--smoke-ink-2)}
.x7sheets{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.4vw,18px);align-items:start;position:relative}
.x7sheets::before{content:"";position:absolute;left:4%;right:4%;top:-22px;height:1px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.3) 12%,rgba(255,255,255,.3) 88%,rgba(255,255,255,0))}
.x7sheet{position:relative;display:grid;gap:12px;align-content:start;padding:16px 18px 18px;border-radius:3px;background:var(--paper);color:var(--ink);box-shadow:0 34px 60px -34px rgba(0,0,0,.7)}
.x7sheet:nth-child(even){margin-top:28px}
.x7sheet::before{content:"";position:absolute;left:50%;top:-27px;width:9px;height:9px;margin-left:-4.5px;border-radius:50%;background:var(--champ);box-shadow:0 0 0 4px rgba(168,143,102,.2)}
.x7sheet:nth-child(even)::before{top:-55px}
.x7sheet__tb{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--hair)}
.x7sheet__tb .x6code{font-size:11.5px;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.x7sheet__dot{width:8px;height:8px;border-radius:50%;background:var(--signal);flex:none}
.x7sheet__t{margin:0;font:400 clamp(18px,1.45vw,21px)/1.22 var(--f-disp);letter-spacing:-.01em}
.x7sheet p{margin:0;font-size:14px;line-height:1.5;color:var(--ink-2)}
.x7sheet__lines{display:grid;gap:7px;padding:4px 0}
.x7sheet__lines i{display:block;height:5px;border-radius:3px;width:var(--w);background:rgba(23,33,43,.08)}
.x7sheet__get{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-top:10px;border-top:1px solid var(--hair);font-size:12.5px}
.x7sheet__get span{color:var(--ink-3)}
.x7sheet__get b{font-weight:500;text-align:right}
.x7sheet--opt{background:rgba(251,250,247,.06);color:var(--smoke-ink);box-shadow:none;outline:1px dashed rgba(255,255,255,.4);outline-offset:-1px}
.x7sheet--opt p,.x7sheet--opt .x7sheet__get span,.x7sheet--opt .x6code{color:var(--smoke-ink-2)}
.x7sheet--opt .x7sheet__tb,.x7sheet--opt .x7sheet__get{border-color:rgba(255,255,255,.18)}
.x7sheet--opt .x7sheet__lines i{background:rgba(255,255,255,.14)}
.x7sheet--opt .x7sheet__dot{background:transparent;box-shadow:inset 0 0 0 1.5px var(--smoke-ink-2)}
.x7path__no{display:flex;align-items:center;gap:10px;margin:clamp(40px,4vw,64px) 0 0;font-size:14.5px;color:var(--smoke-ink-2)}
.x7path__no svg{width:18px;height:18px;flex:none}
@media (max-width:1100px){.x7sheets{grid-template-columns:repeat(3,minmax(0,1fr))}.x7sheet:nth-child(even){margin-top:0}.x7sheets::before,.x7sheet::before{display:none}}
@media (max-width:700px){.x7sheets{grid-template-columns:minmax(0,1fr);gap:12px}}

/* ================================================================== act 6 · project draft */
.x7cv__g{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(28px,4vw,72px);align-items:start}
.x7cv__c{min-width:0}
.x7cv .x7head{grid-template-columns:minmax(0,1fr);margin-bottom:28px}
.x7cv__f{display:grid;gap:18px;margin-bottom:30px}
.x7cv__2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.x7fld{display:grid;gap:8px;min-width:0;margin:0;padding:0;border:0}
.x7fld > label,.x7fld > legend{padding:0;font:500 14px/1.3 var(--f-text);color:var(--ink)}
.x7fld > legend{margin-bottom:8px}
.x7 .x7fld .inp{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--hair-2);border-radius:5px;background:#fff;font:400 15.5px/1.4 var(--f-text);color:var(--ink)}
.x7 .x7fld textarea.inp{min-height:96px;resize:vertical}
.x7 .x7fld .inp:focus{outline:2px solid var(--signal);outline-offset:1px;border-color:transparent}
.x7chips{display:flex;flex-wrap:wrap;gap:8px}
.x7chipc{position:relative;display:inline-flex}
.x7chipc input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.x7chipc span{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border:1px solid var(--hair-2);border-radius:19px;background:rgba(255,255,255,.7);font:500 14px/1.2 var(--f-text);color:var(--ink-2);transition:background-color .2s,color .2s,border-color .2s}
.x7chipc input:checked + span{background:var(--ink);border-color:var(--ink);color:#fff}
.x7chipc input:focus-visible + span{outline:2px solid var(--signal);outline-offset:2px}
.x7chipc:hover span{border-color:var(--ink)}
.x7pass{position:sticky;top:96px;display:grid;gap:14px;padding:24px 24px 20px;background:var(--paper);border:1px solid var(--hair);border-top:3px solid var(--champ);border-radius:4px;box-shadow:var(--x6sh-l)}
.x7pass__h{display:flex;justify-content:space-between;align-items:center;gap:12px}
.x7pass__h b{font:400 22px/1.2 var(--f-disp);letter-spacing:-.01em}
.x7pass__empty{margin:0;padding:14px;border:1px dashed var(--hair-2);border-radius:4px;font-size:14.5px;color:var(--ink-2)}
.x7pass__l{margin:0;display:grid}
.x7pass__l > div{display:grid;grid-template-columns:minmax(96px,.36fr) minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid var(--hair)}
.x7pass__l dt{font-size:13px;color:var(--ink-3)}
.x7pass__l dd{margin:0;font-size:14.5px;line-height:1.45;color:var(--ink);min-width:0;overflow-wrap:anywhere}
.x7pass__l dd.is-empty{color:var(--ink-3)}
.x7pass__l dd ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.x7pass__l dd li{display:flex;align-items:center;gap:8px}
.x7pass__l dd li img{width:28px;height:28px;object-fit:cover;border-radius:3px;background:var(--ti-l)}
.x7pass__l dd .x7rm{margin-left:auto;border:0;background:none;color:var(--ink-3);font-size:13px;cursor:pointer;padding:4px}
.x7pass__l dd .x7rm:hover{color:var(--ink)}
.x7pass__l dd.x7open li{display:list-item;margin-left:16px;font-size:13.5px;color:var(--ink-2)}
.x7pass__f{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding-top:12px;border-top:1px solid var(--hair)}
.x7dock{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:70;display:flex;align-items:center;gap:6px;padding:6px;border-radius:8px;background:rgba(23,33,43,.94);box-shadow:0 18px 40px -16px rgba(0,0,0,.5);color:#fff}
.x7dock__s{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;font:500 14px/1 var(--f-text);color:#fff}
.x7dock__s span{min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#fff;color:var(--ink);font:600 12.5px/22px var(--f-text);text-align:center}
.x7dock__go{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:5px;background:var(--signal);font:500 14.5px/1 var(--f-text);color:#fff}
.x7dock__go svg{width:15px;height:15px}
@media (max-width:1000px){.x7cv__g{grid-template-columns:minmax(0,1fr)}.x7pass{position:static}}
@media (max-width:560px){.x7cv__2{grid-template-columns:minmax(0,1fr)}.x7dock{left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));justify-content:space-between}}
.x7toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:80;transform:translate(-50%,20px);opacity:0;display:flex;align-items:center;gap:14px;max-width:calc(100% - 32px);padding:12px 16px;border-radius:6px;background:rgba(23,33,43,.95);color:#fff;font-size:14.5px;box-shadow:0 18px 40px -16px rgba(0,0,0,.5);transition:opacity .25s,transform .25s var(--x6ease);pointer-events:none}
.x7toast.is-on{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.x7toast a{color:#9FC1FF;font-weight:500;white-space:nowrap}

/* ================================================================== COMPANY · brand story */
.x7co{padding-block:calc(var(--hdr) + clamp(28px,4vw,72px)) clamp(56px,7vw,120px)}
.x7co__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,96px);align-items:center}
.x7co__c{display:grid;gap:22px;justify-items:start}
.x7co__c .x7kick{margin:0}
.x7co__pl{margin:0;display:grid;gap:12px}
.x7co__pl img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:2px;box-shadow:var(--x6sh-l)}
.x7conv__l{list-style:none;margin:0;padding:0;display:grid}
.x7cv1{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(140px,220px);gap:20px clamp(28px,4vw,64px);align-items:center;padding-block:clamp(26px,3.2vw,48px);border-top:1px solid var(--hair-2)}
.x7cv1:last-child{border-bottom:1px solid var(--hair-2)}
.x7cv1 p{margin:0;font-size:16.5px;line-height:1.6;color:var(--ink-2);max-width:46ch}
.x7cv1 figure{margin:0}.x7cv1 img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:3px}
.x7lenses{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--hair-2);border-left:1px solid var(--hair-2)}
.x7lens{display:grid;gap:10px;align-content:start;padding:clamp(22px,2.6vw,36px);border-right:1px solid var(--hair-2);border-bottom:1px solid var(--hair-2);background:rgba(251,250,247,.45)}
.x7lens i{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--champ-08);color:var(--champ)}
.x7lens i svg{width:20px;height:20px}
.x7lens b{font:400 22px/1.2 var(--f-disp);letter-spacing:-.01em}
.x7lens p{margin:0;font-size:15px;line-height:1.55;color:var(--ink-2)}
.x7wk{position:relative;padding-bottom:clamp(64px,8vw,128px)}
.x7wk__pl{margin:0;height:clamp(380px,44vw,620px);overflow:hidden}
.x7wk__pl picture,.x7wk__pl img{width:100%;height:100%;object-fit:cover}
.x7wk__in{position:relative;margin-top:clamp(-200px,-12vw,-96px);display:grid;gap:12px}
.x7wk__card{display:grid;gap:24px;padding:clamp(22px,3vw,44px);background:rgba(251,250,247,.95);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:4px;box-shadow:var(--x6sh-l)}
.x7wk__g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3vw,48px)}
.x7wk__c{display:grid;gap:10px;align-content:start;padding-top:14px;border-top:2px solid var(--champ)}
.x7wk__c:nth-child(2){border-top-color:var(--ink)}
.x7wk__c:nth-child(3){border-top-color:var(--signal)}
.x7wk__c ul{margin:0;padding-left:18px;display:grid;gap:8px;font-size:15.5px;line-height:1.5;color:var(--ink-2)}
.x7ab__g{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,5vw,96px);align-items:start}
.x7ab__c{display:grid;gap:16px;max-width:64ch}
.x7ab__c > p:not([class]){margin:0;font-size:16.5px;line-height:1.65;color:var(--ink-2)}
.x7tr__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid var(--hair-2);border-radius:4px;overflow:hidden}
.x7tr__c{display:grid;gap:16px;align-content:start;justify-items:start;padding:clamp(22px,3vw,44px);background:var(--paper)}
.x7tr__c--c{background:#E9ECEC;border-left:1px solid var(--hair-2)}
.x7tr__c ul{margin:0;padding-left:18px;display:grid;gap:10px;font-size:16px;line-height:1.5;color:var(--ink-2)}
.x7ct__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,96px);align-items:start}
.x7ct__g .x7head{grid-template-columns:minmax(0,1fr)}
.x7ct__doors{display:grid;gap:10px}
.x7door{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;gap:4px 16px;align-items:center;padding:18px 20px;border:1px solid var(--hair);border-radius:5px;background:rgba(255,255,255,.75);transition:border-color .2s,box-shadow .2s}
.x7door i{grid-row:span 2;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--champ-08);color:var(--champ)}
.x7door i svg{width:19px;height:19px}
.x7door b{font:500 16px/1.25 var(--f-text);color:var(--ink)}
.x7door span{font-size:14px;line-height:1.45;color:var(--ink-2)}
.x7door > svg{grid-row:1/3;grid-column:3;width:16px;height:16px;color:var(--signal)}
.x7door:hover{border-color:var(--ink);box-shadow:var(--x6sh)}
.x7door--p{border-left:3px solid var(--signal)}
@media (max-width:1000px){.x7cv1{grid-template-columns:minmax(0,1fr) 160px}.x7cv1 p{grid-column:1}.x7cv1 figure{grid-row:1/3;grid-column:2}.x7lenses{grid-template-columns:repeat(2,minmax(0,1fr))}.x7wk__g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px){.x7co__g,.x7ab__g,.x7tr__g,.x7ct__g{grid-template-columns:minmax(0,1fr)}.x7tr__c--c{border-left:0;border-top:1px solid var(--hair-2)}}
@media (max-width:560px){.x7cv1{grid-template-columns:minmax(0,1fr) 110px;gap:12px 16px}.x7lenses{grid-template-columns:minmax(0,1fr)}.x7wk__in{margin-top:-48px}}

/* ================================================================== SUPPORT · technical service studio */
.x7suh{padding-block:calc(var(--hdr) + clamp(24px,3.6vw,64px)) clamp(40px,5vw,88px)}
.x7suh__g{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(28px,4vw,72px);align-items:start}
.x7suh__c{display:grid;gap:22px;align-content:start}
.x7doors.x6doors{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.x7suh__wall{display:grid;gap:12px}
.x7devs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.x7dev{display:grid;padding:0;overflow:hidden;border:1px solid var(--hair);border-radius:5px;background:#fff;text-align:left;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.x7dev__img{display:block;overflow:hidden}
.x7dev__img img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .5s var(--x6ease)}
.x7dev__t{display:grid;gap:2px;padding:12px 14px 14px}
.x7dev__t b{font:500 14.5px/1.3 var(--f-text);color:var(--ink)}
.x7dev:hover{border-color:var(--ink)}
.x7dev:hover img{transform:scale(1.03)}
.x7dev[aria-pressed=true]{border-color:var(--signal);box-shadow:0 0 0 1px var(--signal)}
.x7dg__g{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(20px,3vw,48px);align-items:start}
.x7dg__in{display:grid;gap:24px}
.x7dg__in fieldset{margin:0;padding:0;border:0;display:grid;gap:12px}
.x7dg__devs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.x7dgd{position:relative;display:flex;align-items:center;gap:10px;padding:8px 12px 8px 8px;border:1px solid var(--hair);border-radius:5px;background:rgba(255,255,255,.7);cursor:pointer}
.x7dgd input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.x7dgd img{width:48px;height:48px;object-fit:cover;border-radius:4px}
.x7dgd > span{display:grid;gap:1px;min-width:0}
.x7dgd b{font:500 14px/1.25 var(--f-text);color:var(--ink)}
.x7dgd:has(input:checked){border-color:var(--signal);background:#fff;box-shadow:inset 0 0 0 1px var(--signal)}
.x7dgd:has(input:focus-visible){outline:2px solid var(--signal);outline-offset:2px}
.x7dg__out{display:grid;grid-template-columns:minmax(0,1fr);background:rgba(255,255,255,.82);border:1px solid var(--hair);border-top:2px solid var(--signal);border-radius:4px;box-shadow:var(--x6sh);overflow:hidden}
.x7dg__img{position:relative;margin:0}
.x7dg__img img{width:100%;aspect-ratio:16/7;object-fit:cover;display:block}
.x7dg__img .x6cap{position:absolute;right:12px;bottom:10px;padding:5px 8px;border-radius:3px;background:rgba(251,250,247,.86)}
.x7dg__r{display:grid;gap:14px;padding:clamp(18px,2.4vw,30px)}
.x7dg__ck{margin:0;padding:0;list-style:none;counter-reset:ck;display:grid;gap:10px}
.x7dg__ck li{counter-increment:ck;position:relative;padding-left:36px;font-size:15.5px;line-height:1.5;color:var(--ink)}
.x7dg__ck li::before{content:counter(ck);position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;border:1px solid var(--hair-2);font:500 12.5px/22px var(--f-text);text-align:center;color:var(--ink-2)}
.x7dg__note{margin:0;padding:12px 14px;border-radius:4px;background:var(--champ-08);font-size:14.5px;line-height:1.5;color:var(--ink-2)}
@media (max-width:1000px){.x7suh__g,.x7dg__g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.x7doors.x6doors{grid-template-columns:minmax(0,1fr)}.x7dg__devs{grid-template-columns:minmax(0,1fr)}.x7dev__t b{font-size:13.5px}}

/* ================================================================== RFQ · project passport */
.x7pp{display:grid;gap:14px;margin:0 0 24px;padding:20px 22px;background:var(--paper);border:1px solid var(--hair);border-left:3px solid var(--champ);border-radius:4px;box-shadow:var(--x6sh)}
.x7pp__h{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center}
.x7pp__h .x6note{margin-top:4px}
.x7pp .x6t3{font-size:clamp(24px,1.9vw,28px)}   /* S07R floor: an h2 never below 24 px */
.x7pp__seal{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--champ);color:var(--champ)}
.x7pp__seal svg{width:20px;height:20px}
.x7pp__l{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:0 20px}
.x7pp__l > div{display:grid;gap:3px;padding:10px 0;border-top:1px solid var(--hair);min-width:0}
.x7pp__l dt{font-size:12.5px;color:var(--ink-3)}
.x7pp__l dd{margin:0;font-size:14.5px;line-height:1.45;color:var(--ink);overflow-wrap:anywhere}
.x7pp__links{gap:8px 22px}
@media (max-width:560px){.x7pp__h{grid-template-columns:auto minmax(0,1fr)}.x7pp__h .doc__tag{grid-column:1/-1;justify-self:start}}

/* ================================================================== PRODUCTS · add to draft in the buy box */
.x6buy__draft{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-top:12px;border-top:1px solid var(--hair)}

/* ================================================================== APPLICATIONS · plate-and-needs chapters (the four compact scenes) */
.x7act{position:relative;padding-block:clamp(64px,8vw,128px)}
.x7act__g{position:relative}
.x7act__plate{position:relative;margin:0}
.x7act__plate img{width:100%;height:auto;aspect-ratio:2400/1020;object-fit:cover;display:block}
.x7act__card{position:absolute;right:clamp(14px,2.4vw,36px);bottom:clamp(14px,2.4vw,36px);width:min(400px,38%);display:grid;gap:14px;padding:clamp(18px,2vw,26px);background:rgba(251,250,247,.93);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:5px;box-shadow:var(--x6sh-l)}
.x7act--r .x7act__card{right:auto;left:clamp(14px,2.4vw,36px)}
.x7act--r .x7act__plate figcaption{left:auto;right:clamp(12px,2vw,24px)}
.x7act__det{margin:0;display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:center;padding-top:12px;border-top:1px solid var(--hair)}
.x7act__det img{width:96px;height:64px;object-fit:cover;border-radius:3px}
.x7act__det figcaption{font-size:13.5px;line-height:1.4;color:var(--ink-2)}
.x7act__needs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(18px,2vw,28px);border-top:1px solid var(--hair-2)}
.x7act__needs > div{display:grid;gap:10px;align-content:start;padding:18px 22px 4px 0;margin-right:22px;border-right:1px solid var(--hair)}
.x7act__needs > div:last-child{border-right:0;margin-right:0}
.x7act__needs p{margin:0;font-size:15px;line-height:1.5;color:var(--ink-2)}
.x7act__go{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:22px}
@media (max-width:1000px){.x7act__card{position:static;width:auto;margin-top:12px}.x7act__needs{grid-template-columns:repeat(2,minmax(0,1fr))}.x7act__needs > div:nth-child(2){border-right:0;margin-right:0}}
@media (max-width:560px){.x7act__needs{grid-template-columns:minmax(0,1fr)}.x7act__needs > div{border-right:0;margin-right:0;border-bottom:1px solid var(--hair);padding-bottom:16px}}

/* ================================================================== HOME · the way into the Sourcing Studio */
.x7hs{padding-block:clamp(56px,7vw,112px) 0}
.x7hs__g{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:clamp(24px,4vw,64px);align-items:center}
.x7hs__pl{margin:0;border-radius:4px;overflow:hidden;box-shadow:var(--x6sh-l)}
.x7hs__pl img{width:100%;aspect-ratio:2400/1020;object-fit:cover;display:block}
.x7hs__c{display:grid;gap:16px;justify-items:start}
.x7hs__c .x7kick{margin:0}
@media (max-width:900px){.x7hs__g{grid-template-columns:minmax(0,1fr)}}

/* ================================================================== SHOWROOM · a larger 360° stage */
.x7sr #showcase .wrap{max-width:calc(1440px + 2 * var(--x6g))}
@media (min-width:1101px){.x7sr .show__stage,.x7sr .viewer{min-height:min(74vh,760px)}}

/* ================================================================== motion preferences */
@media (prefers-reduced-motion:reduce){.x7pl,.x7an__idx li,.x7tag > span,.x7toast,.x7dev img{transition:none!important}}

/* ---------- V3.7 density & detail pass ---------- */
.x7 .x6s{padding-block:clamp(64px,7.4vw,116px)}
.x7int__ok:empty,.x7int__ok:not(:has(span:not(:empty))):not(:has(a:not([hidden]))){display:none}
.x7 .x6dash li::before{width:5px;height:5px;border-radius:50%;top:.6em;left:2px}
.x7pass .doc__tag,.x7pp .doc__tag{position:static;transform:none;white-space:nowrap}
.x7sheet__get span{white-space:nowrap}
.x7oem #faq .x6wrap,.x7oem #faq .wrap{row-gap:24px}
.x7doors.x6doors{margin-top:0}
@media (max-width:900px){.x7doors.x6doors{margin-top:0}}
.x7doors .x6door{padding:16px 18px;box-shadow:var(--x6sh)}
.x7rfq .x6rfqh{padding-bottom:clamp(16px,2vw,28px)!important}
.x7rfq .x6rfqh + section{padding-top:clamp(20px,2.4vw,36px)!important}
.x7 .x6step{min-height:min(50svh,440px)}

/* ===== v37s.css ===== */
/* =====================================================================================================================
   TANNAI V3.7 · revenue-services addendum — service pages, sample documents, intake, and the entries across the site.
   Same Pearl Titanium world. Two visual languages: Technical Fit = comparative engineering desk (macro + documents + matrix);
   Sourcing Sprint = supply decision gallery (scene plate + evidence placards + terms board). Deliverable before price.
   ===================================================================================================================== */
/* ---------- price tag (always beside a deliverable, never alone in a card wall) ---------- */
.x7price{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0}
.x7price b{font:400 24px/1 var(--f-disp);letter-spacing:-.01em;color:var(--ink)}
.x7price span{font-size:13px;color:var(--ink-3)}
.x7price em{font:500 11.5px/1 var(--f-text);font-style:normal;letter-spacing:.02em;padding:5px 8px;border-radius:12px;background:var(--champ-08);color:#7A6236}
.x7price--lg b{font-size:clamp(30px,2.6vw,40px)}

/* ---------- services mega menu ---------- */
.x7mg--svc{grid-template-columns:repeat(3,minmax(0,1fr))}
.x7mc{display:grid;gap:6px;align-content:start;padding:10px 10px 14px;border:1px solid var(--hair);border-radius:6px;background:rgba(255,255,255,.7);min-width:0;transition:border-color .2s,box-shadow .2s}
.x7mc img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px}
.x7mc__p{font:500 13px/1 var(--f-text);color:var(--champ)}
.x7mc b{font:500 15.5px/1.25 var(--f-text);color:var(--ink)}
.x7mc__d{font-size:13px;line-height:1.45;color:var(--ink-2)}
.x7mc:hover{border-color:var(--ink);box-shadow:var(--x6sh)}
.x7mc--fit .x7mc__p,.x7mc--spr .x7mc__p{color:var(--signal-2)}

/* ---------- sample documents on the page (x7pg pages from reports37) ---------- */
.x7pg{container-type:inline-size;position:relative;background:#fff;color:#1B2530;aspect-ratio:1/1.4142;overflow:hidden;box-shadow:0 1px 2px rgba(23,33,43,.08),0 30px 60px -36px rgba(23,33,43,.45);border-radius:2px;text-align:left}
.x7pg__in{position:absolute;inset:0;padding:6.4cqw 6.8cqw 5cqw;display:flex;flex-direction:column;gap:1.5cqw;font:400 1.95cqw/1.5 var(--f-text)}
.x7pg p,.x7pg ul,.x7pg ol{margin:0}
.x7pg ul,.x7pg ol{padding-left:3.2cqw;display:grid;gap:.6cqw}
.x7pg a{color:#1F5FC8;text-decoration:underline;text-underline-offset:.3cqw}
.pg__h{display:flex;align-items:center;gap:2cqw}
.pg__logo{width:5.4cqw;height:5.4cqw;border-radius:1cqw}
.pg__k{font:600 1.55cqw/1.2 var(--f-text);letter-spacing:.08em;color:#2365D5}
.pg__t1{margin:2cqw 0 0;font:300 7.4cqw/1.02 var(--f-disp);letter-spacing:-.03em;color:#17212B}
.pg__t2{margin:0;font:300 5cqw/1.08 var(--f-disp);letter-spacing:-.02em;color:#17212B}
.pg__ser{font:600 1.5cqw/1.3 var(--f-text);letter-spacing:.06em;color:#2365D5}
.pg__lede{font:300 3.2cqw/1.3 var(--f-disp);color:#2C3742}
.pg__sub{color:#4A5662}
.pg__h2{margin:1cqw 0 0;font:600 2.6cqw/1.2 var(--f-text)}
.pg__h3{margin:1cqw 0 0;font:600 2.15cqw/1.25 var(--f-text)}
.pg__box{padding:1.8cqw 2.2cqw;background:#EEF2F6;border-radius:.6cqw;color:#3A4652;font-size:1.75cqw}
.pg__box--b{background:#E8EFF8}
.pg__t{width:100%;border-collapse:collapse;font-size:1.65cqw;line-height:1.4}
.pg__t th,.pg__t td{padding:1.15cqw 1cqw;border-bottom:.15cqw solid #E2E7EB;text-align:left;vertical-align:top}
.pg__t thead th{background:#F1F4F6;font-weight:600;color:#33404C;border-bottom:.2cqw solid #CED6DC}
.pg__t tbody th{font-weight:600;color:#2A3540;width:22%}
.pg__nv{color:#A0472B;letter-spacing:.03em}
.pg__need{display:inline-block;padding:.2cqw .8cqw;border-radius:.6cqw;background:#FBF1E3;color:#7A4E16;font-size:1.45cqw;font-weight:600;white-space:nowrap}
.pg__src li{list-style:none;margin-left:-3.2cqw}
.pg__u{display:block;color:#6A7681;font-size:1.45cqw}
.pg__meta{display:grid;grid-template-columns:1fr 1fr;gap:0 3cqw;margin:0}
.pg__meta div{padding:1cqw 0;border-bottom:.15cqw solid #E2E7EB}
.pg__meta dt{font-size:1.45cqw;color:#6A7681}.pg__meta dd{margin:0;font-weight:500}
.pg__end{margin-top:auto;font-size:1.65cqw;color:#3A4652}.pg__end span{color:#6A7681}
.pg__f{margin-top:auto;display:flex;justify-content:space-between;gap:2cqw;padding-top:1.4cqw;border-top:.15cqw solid #E2E7EB;font:500 1.3cqw/1.2 var(--f-text);letter-spacing:.05em;color:#7A8590}
.pg__end + .pg__f{margin-top:1.6cqw}
.x7pg--cover .x7pg__in{background:linear-gradient(180deg,#FBFAF7,#fff 30%)}

/* ================================================================== SERVICE PAGE HERO */
.x7sv{position:relative;padding-block:calc(var(--hdr) + clamp(28px,4vw,64px)) clamp(48px,6vw,96px);overflow:hidden}
.x7sv__g{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(28px,4vw,72px);align-items:center}
.x7sv__c{display:grid;gap:18px;justify-items:start;min-width:0}
.x7sv__c .x7kick{margin:0}
.x7d--sv{font-size:clamp(44px,5.6vw,92px)}
.x7sv__b{margin:0;font:400 clamp(21px,1.8vw,28px)/1.2 var(--f-disp);letter-spacing:-.015em;color:var(--ink)}
.x7sv__lab{margin:0;padding:8px 12px;border-radius:4px;background:rgba(255,255,255,.7);box-shadow:0 0 0 1px var(--hair);font:400 12.5px/1.5 var(--f-mono);letter-spacing:.01em;color:var(--ink-2)}
/* Technical Fit: comparative engineering desk — the LiDAR macro with the review laid on it */
.x7bench{position:relative;margin:0;padding-bottom:12%}
.x7bench > picture img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:6px;box-shadow:var(--x6sh-l)}
.x7desk{position:absolute;left:-6%;bottom:0;width:78%;display:grid;grid-template-columns:1fr 1fr;gap:4%;pointer-events:none}
.x7desk__a{transform:rotate(-3.5deg) translateY(6%)}
.x7desk__b{transform:rotate(2deg)}
.x7desk .x7pg{box-shadow:0 2px 3px rgba(23,33,43,.12),0 40px 70px -30px rgba(23,33,43,.55)}
.x7bench figcaption{position:absolute;right:12px;top:12px;padding:6px 10px;border-radius:4px;background:rgba(251,250,247,.86)}
/* Sourcing Sprint: supply decision gallery over a logistics plate */
.x7sv--spr{color:var(--ink)}
.x7sv__plate{position:absolute;inset:0;z-index:-1}
.x7sv__plate picture,.x7sv__plate img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.x7sv__plate::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,246,241,.97) 0%,rgba(248,246,241,.9) 38%,rgba(248,246,241,.55) 70%,rgba(248,246,241,.35) 100%),linear-gradient(0deg,rgba(248,246,241,1) 0%,rgba(248,246,241,0) 26%)}
.x7sv__g--spr{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:end}
.x7gal{display:grid;gap:12px;min-width:0}
.x7gal__row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.x7gc{display:grid;gap:10px;align-content:start;padding:16px 16px 14px;background:rgba(251,250,247,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--hair);border-top:2px solid var(--champ);box-shadow:var(--x6sh-l);min-width:0}
.x7gc:nth-child(2){transform:translateY(-18px)}
.x7gc b{font:400 18px/1.25 var(--f-disp);color:var(--ink);text-wrap:balance}
.x7gc ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.x7gc li{display:grid;gap:4px;padding-top:8px;border-top:1px solid var(--hair);font-size:13px;color:var(--ink-2)}
.x7chip7{justify-self:start;display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border-radius:11px;font:500 11.5px/1.2 var(--f-text);font-style:normal}
.x7chip7--pub{background:#E6EEFA;color:var(--signal-2)}
.x7chip7--need{background:#FBF1E3;color:#7A4E16}
.x7chip7--part{background:#EEF0F1;color:var(--ink-2)}
.x7sv__cap{margin:18px auto 0;display:flex;justify-content:flex-end}
@media (max-width:1000px){.x7sv__g,.x7sv__g--spr{grid-template-columns:minmax(0,1fr)}.x7bench{padding-bottom:16%}}
@media (max-width:620px){.x7gal__row{grid-template-columns:minmax(0,1fr)}.x7gc:nth-child(2){transform:none}.x7desk{left:0;width:92%}.x7sv__plate::after{background:linear-gradient(180deg,rgba(248,246,241,.96),rgba(248,246,241,.9))}}

/* ================================================================== what you receive */
.x7recv__g{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,4vw,72px);align-items:center}
.x7spread{display:grid;grid-template-columns:1fr 1fr;gap:3%;padding:clamp(16px,2.4vw,36px);border-radius:6px;background:linear-gradient(160deg,#E9ECEC,#DDE3E6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}
.x7spread > div:first-child{transform:rotate(-1.2deg)}.x7spread > div:last-child{transform:rotate(1deg) translateY(4%)}
.x7dl{list-style:none;margin:0;padding:0;display:grid;gap:0}
.x7dl__i{display:grid;gap:4px;padding:16px 0 16px 22px;border-top:1px solid var(--hair-2);position:relative}
.x7dl__i:last-child{border-bottom:1px solid var(--hair-2)}
.x7dl__i::before{content:"";position:absolute;left:2px;top:23px;width:8px;height:8px;border-radius:50%;background:var(--champ)}
.x7dl__i b{font:400 20px/1.25 var(--f-disp);letter-spacing:-.01em;color:var(--ink)}
.x7dl__i span{font-size:15px;line-height:1.5;color:var(--ink-2)}
.x7toc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(10px,1.4vw,18px)}
.x7toc li{display:grid;gap:10px;align-content:start}
.x7toc__th{display:block;transition:transform .3s var(--x6ease)}
.x7toc li:hover .x7toc__th{transform:translateY(-4px)}
.x7toc__t b{font:500 14.5px/1.35 var(--f-text);color:var(--ink)}
@media (max-width:1000px){.x7recv__g{grid-template-columns:minmax(0,1fr)}.x7toc{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.x7toc{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ================================================================== sample viewer */
.x7smp__g{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:clamp(24px,3.6vw,56px);align-items:start}
.x7rv{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"tabs stage" "bar bar";gap:16px 20px}
.x7rv__tabs{grid-area:tabs;display:grid;gap:10px;align-content:start}
.x7rv__t{position:relative;display:block;padding:0;border:0;background:none;cursor:pointer;border-radius:2px;outline-offset:3px}
.x7rv__th{display:block;width:96px;pointer-events:none;opacity:.72;transition:opacity .2s}
.x7rv__t[aria-selected=true] .x7rv__th{opacity:1}
.x7rv__t[aria-selected=true]{box-shadow:0 0 0 2px var(--signal)}
.x7rv__n{position:absolute;right:4px;bottom:4px;min-width:18px;height:18px;border-radius:9px;background:var(--ink);color:#fff;font:600 11px/18px var(--f-text);text-align:center}
.x7rv__stage{grid-area:stage;position:relative;max-width:640px}
.x7rv__zoom{position:absolute;right:12px;top:12px;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid var(--hair-2);border-radius:18px;background:rgba(255,255,255,.92);font:500 13px/1 var(--f-text);color:var(--ink);cursor:pointer}
.x7rv__zoom svg{width:14px;height:14px}
.x7rv__bar{grid-area:bar;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.x7rv__bar .x6btn svg{width:16px;height:16px}
.x7rv__dlg{width:min(860px,94vw);max-height:94vh;padding:0;border:0;border-radius:4px;background:transparent;overflow:auto}
.x7rv__dlg::backdrop{background:rgba(23,33,43,.6)}
.x7rv__x{position:fixed;right:max(16px,3vw);top:max(16px,3vh);width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:#fff;color:var(--ink);cursor:pointer;box-shadow:var(--x6sh)}
.x7rv__x svg{width:18px;height:18px}
.x7smp__side{display:grid;gap:14px;align-content:start}
.x7smp__note{margin:0;padding:14px 16px;border-left:3px solid var(--champ);background:rgba(251,250,247,.8);font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.x7srcs{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.x7srcs li{display:grid;gap:2px;padding-top:10px;border-top:1px solid var(--hair)}
.x7srcs a{font-size:14.5px;color:var(--signal);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
@media (max-width:1000px){.x7smp__g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:620px){.x7rv{grid-template-columns:minmax(0,1fr);grid-template-areas:"stage" "tabs" "bar"}.x7rv__tabs{grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.x7rv__th{width:100%}}

/* ================================================================== process + states */
.x7proc__l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;position:relative}
.x7proc__l::before{content:"";position:absolute;left:0;right:0;top:7px;height:1px;background:linear-gradient(90deg,var(--champ),var(--hair-2))}
.x7ps1{display:grid;gap:8px;align-content:start;padding:28px 20px 0 0;position:relative}
.x7ps1::before{content:"";position:absolute;left:0;top:2px;width:11px;height:11px;border-radius:50%;background:var(--paper);box-shadow:inset 0 0 0 2px var(--champ)}
.x7ps1 b{font:400 19px/1.25 var(--f-disp);color:var(--ink)}
.x7ps1 span{font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.x7sm{display:grid;gap:12px;margin-top:clamp(32px,4vw,56px);padding:20px 22px;border:1px solid var(--hair);border-radius:6px;background:rgba(255,255,255,.6)}
.x7sm__l{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.x7sm__l li{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-3)}
.x7sm__l li span{padding:5px 10px;border-radius:14px;border:1px dashed var(--hair-2)}
.x7sm__l li + li::before{content:"";width:12px;height:1px;background:var(--hair-2)}
.x7sm__l li.is-on span{border:1px solid var(--signal);background:var(--signal-08);color:var(--signal-2);font-weight:500}
.x7sm__l--sm li{font-size:12px}
@media (max-width:1000px){.x7proc__l{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.x7proc__l::before{display:none}}
@media (max-width:560px){.x7proc__l{grid-template-columns:minmax(0,1fr)}}

/* ================================================================== scope, needs, terms */
.x7need__g{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,4vw,72px);align-items:start}
.x7need__g .x7head{grid-template-columns:minmax(0,1fr);margin-bottom:18px}
.x7scope{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid var(--hair-2);border-radius:5px;overflow:hidden}
.x7scope__c{display:grid;gap:12px;align-content:start;padding:clamp(18px,2.4vw,32px);background:var(--paper)}
.x7scope__c--x{background:#ECEEEE;border-left:1px solid var(--hair-2)}
.x7scope__c ul{margin:0;padding-left:18px;display:grid;gap:8px;font-size:15px;line-height:1.5;color:var(--ink-2)}
.x7honest{display:flex;gap:10px;align-items:flex-start;margin:20px 0 0;padding:14px 16px;border-radius:5px;background:var(--signal-08);font-size:14.5px;line-height:1.5;color:var(--ink)}
.x7honest svg{width:18px;height:18px;flex:none;margin-top:2px;color:var(--signal)}
.x7terms__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start;margin-bottom:clamp(28px,3vw,44px)}
.x7terms__g .x7head{grid-template-columns:minmax(0,1fr);margin-bottom:12px}
.x7terms__l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.x7terms__l li{display:grid;gap:8px;align-content:space-between;min-height:92px;padding:14px;border:1px solid var(--hair);border-radius:4px;background:rgba(255,255,255,.75);font:500 14px/1.35 var(--f-text);color:var(--ink)}
@media (max-width:1000px){.x7need__g,.x7terms__g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:620px){.x7scope{grid-template-columns:minmax(0,1fr)}.x7scope__c--x{border-left:0;border-top:1px solid var(--hair-2)}.x7terms__l{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ================================================================== tiers */
.x7tiers__t{overflow-x:auto;border:1px solid var(--hair-2);border-radius:6px;background:rgba(255,255,255,.6)}
.x7tiers table{width:100%;min-width:860px;border-collapse:collapse}
.x7tiers th,.x7tiers td{padding:16px 18px;text-align:left;vertical-align:top;border-top:1px solid var(--hair);font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.x7tiers thead th{border-top:0;font:400 19px/1.25 var(--f-disp);color:var(--ink)}
.x7tiers tbody th{font:500 13px/1.4 var(--f-text);color:var(--ink-3);width:12%}
.x7tiers .is-cur{background:rgba(255,255,255,.92);box-shadow:inset 2px 0 0 var(--signal)}
.x7tiers thead .is-cur{color:var(--signal-2)}

/* ================================================================== intake */
.x7in__g{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(24px,3.6vw,56px);align-items:start}
.x7form{display:grid;gap:22px;padding:clamp(18px,2.4vw,32px);background:rgba(255,255,255,.82);border:1px solid var(--hair);border-top:2px solid var(--signal);border-radius:5px;box-shadow:var(--x6sh)}
.x7fs{margin:0;padding:0;border:0;display:grid;gap:12px;min-width:0}
.x7fs > legend{margin-bottom:10px}
.x7seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:5px;border-radius:8px;background:#ECEFF0}
.x7seg__o{position:relative;display:block}
.x7seg__o input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.x7seg__o span{display:grid;gap:2px;padding:10px 12px;border-radius:6px;text-align:center;transition:background-color .2s,box-shadow .2s}
.x7seg__o b{font:500 14px/1.25 var(--f-text);color:var(--ink-2)}
.x7seg__o small{font:500 12.5px/1.2 var(--f-text);color:var(--ink-3)}
.x7seg__o input:checked + span{background:#fff;box-shadow:0 1px 2px rgba(23,33,43,.1),0 0 0 1px var(--hair)}
.x7seg__o input:checked + span b{color:var(--ink)}
.x7seg__o input:checked + span small{color:var(--signal-2)}
.x7seg__o input:focus-visible + span{outline:2px solid var(--signal);outline-offset:2px}
.x7seg--sm .x7seg__o span{padding:8px 10px}
.x7fg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 16px}
.x7fld--full{grid-column:1/-1}
.x7fld__l{margin:0;font:500 14px/1.3 var(--f-text);color:var(--ink)}
.x7req{font-style:normal;color:var(--signal);margin-left:3px}
.x7 .x7form .inp{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--hair-2);border-radius:5px;background:#fff;font:400 15px/1.4 var(--f-text);color:var(--ink)}
.x7 .x7form textarea.inp{min-height:84px;resize:vertical}
.x7 .x7form .inp:focus{outline:2px solid var(--signal);outline-offset:1px;border-color:transparent}
.x7fld__e{display:none;margin:0;font-size:13px;color:#B23B2A}
.x7fld.is-err .inp{border-color:#B23B2A}
.x7fld.is-err .x7fld__e{display:block}
.x7form__err{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:5px;background:#FBEDEA;color:#8C2B1E;font-size:14.5px}
.x7form__err svg{width:18px;height:18px;flex:none}
.x7form__go{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.x7form .consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--ink-2)}
.x7form .consent input{margin-top:3px}
.x7form__ok{display:grid;gap:16px;padding:clamp(18px,2.4vw,32px);background:#fff;border:1px solid var(--hair);border-top:2px solid var(--champ);border-radius:5px;box-shadow:var(--x6sh)}
.x7ok__h{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}
.x7ok__h p{margin:6px 0 0;color:var(--ink-2)}
.x7ok__txt{margin:0;padding:14px;max-height:280px;overflow:auto;border-radius:4px;background:#F4F5F4;font:400 13px/1.55 var(--f-mono);white-space:pre-wrap;color:var(--ink)}
.x7svsum{position:sticky;top:calc(var(--hdr) + 24px);display:grid;gap:10px;padding:22px;background:var(--paper);border:1px solid var(--hair);border-top:3px solid var(--champ);border-radius:4px;box-shadow:var(--x6sh-l)}
.x7svsum__h{display:flex;justify-content:space-between;align-items:center;gap:12px}
.x7svsum__h b{font:400 20px/1.2 var(--f-disp)}
.x7svsum .doc__tag{position:static;transform:none}
.x7svsum__svc{margin:6px 0 0;font:500 16px/1.3 var(--f-text);color:var(--ink)}
.x7svsum__price{margin:0;font:400 26px/1.1 var(--f-disp);color:var(--ink)}
.x7svsum__price small{display:block;margin-top:4px;font:500 12.5px/1.4 var(--f-text);color:var(--ink-3)}
.x7svsum__scope{margin:0}
.x7svsum__l{margin:6px 0 0;display:grid}
.x7svsum__l > div{display:grid;grid-template-columns:minmax(90px,.4fr) minmax(0,1fr);gap:10px;padding:9px 0;border-top:1px solid var(--hair)}
.x7svsum__l dt{font-size:12.5px;color:var(--ink-3)}
.x7svsum__l dd{margin:0;font-size:14px;line-height:1.45;color:var(--ink);overflow-wrap:anywhere}
.x7svsum__l dd.is-empty{color:var(--ink-3)}
.x7svsum__miss{color:#8C5A16!important}
@media (max-width:1000px){.x7in__g{grid-template-columns:minmax(0,1fr)}.x7svsum{position:static}}
@media (max-width:560px){.x7fg{grid-template-columns:minmax(0,1fr)}.x7seg{grid-template-columns:minmax(0,1fr)}.x7seg__o span{grid-template-columns:1fr auto;text-align:left;align-items:baseline}}

/* ================================================================== coordination (after the service, deliberately quieter) */
.x7coord{padding-block:clamp(56px,6vw,96px)}
.x7coord__g{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,72px);align-items:start;padding:clamp(22px,3vw,44px);border:1px dashed var(--hair-2);border-radius:6px;background:rgba(251,250,247,.6)}
.x7coord__c{display:grid;gap:14px;justify-items:start}
.x7coord__c .x7kick{margin:0}
.x7coord__p{margin:0;font:500 14px/1 var(--f-text);color:var(--champ)}
.x7coord__fee{margin:0;padding:12px 14px;border-radius:4px;background:#ECEEEE;font-size:14.5px;line-height:1.5;color:var(--ink)}
.x7coord__l ul{margin:10px 0 0;padding-left:18px;display:grid;gap:8px;font-size:15px;line-height:1.5;color:var(--ink-2)}
@media (max-width:900px){.x7coord__g{grid-template-columns:minmax(0,1fr)}}

/* ================================================================== FAQ */
.x7faq__g{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(24px,4vw,72px);align-items:start}
.x7faq__l{display:grid;border-top:1px solid var(--hair-2)}
.x7faq__i{border-bottom:1px solid var(--hair-2)}
.x7faq__i summary{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 0;font:500 16.5px/1.4 var(--f-text);color:var(--ink);cursor:pointer;list-style:none}
.x7faq__i summary::-webkit-details-marker{display:none}
.x7faq__i summary svg{width:16px;height:16px;flex:none;transition:transform .25s}
.x7faq__i[open] summary svg{transform:rotate(45deg)}
.x7faq__i p{margin:0 0 18px;max-width:64ch;font-size:15.5px;line-height:1.6;color:var(--ink-2)}
@media (max-width:900px){.x7faq__g{grid-template-columns:minmax(0,1fr)}}

/* ================================================================== three ways in (Home band, hub depth) */
.x7p3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.x7p3__i{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--hair);border-radius:6px;background:rgba(255,255,255,.72);overflow:hidden;box-shadow:var(--x6sh);min-width:0}
.x7mini{height:clamp(170px,15vw,220px);overflow:hidden;padding:18px 18% 0;background:linear-gradient(160deg,#E7EBEC,#D9E0E4);position:relative}
.x7mini .x7pg{box-shadow:0 18px 30px -18px rgba(23,33,43,.5)}
.x7mini--brief{padding:0}
.x7mini--brief img{width:100%;height:100%;object-fit:cover}
.x7p3__i--fit .x7mini{background:linear-gradient(160deg,#E2E8EE,#D3DCE4)}
.x7p3__i--spr .x7mini{background:linear-gradient(160deg,#ECE9E2,#DEDAD0)}
.x7p3__b{display:grid;gap:10px;align-content:start;padding:18px 20px 20px}
.x7p3__pr{margin:0}
.x7p3__pr > b{font:400 22px/1 var(--f-disp);color:var(--ink)}
.x7p3__d{margin:0;font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.x7p3__go{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:4px}
.x7p3__coord{margin:16px 0 0;font-size:14.5px;color:var(--ink-2)}
.x7p3__coord a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.x7hp{padding-block:clamp(56px,6.4vw,104px)}
.x7hp__p{margin:18px 0 0;font:400 18px/1.4 var(--f-disp);color:var(--ink-2)}
@media (max-width:1000px){.x7p3{grid-template-columns:minmax(0,1fr)}.x7p3__i{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-rows:auto}.x7mini{height:100%;min-height:180px}}
@media (max-width:560px){.x7p3__i{grid-template-columns:minmax(0,1fr)}.x7mini{height:170px}}
.x7rep__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(14px,2vw,28px)}
.x7rep__i{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px;align-items:center;padding:clamp(16px,2vw,26px);border:1px solid var(--hair);border-radius:6px;background:linear-gradient(160deg,#E9ECEC,#DEE3E6);transition:box-shadow .25s}
.x7rep__i:hover{box-shadow:var(--x6sh-l)}
.x7rep__docs{display:grid;grid-template-columns:1fr 1fr;gap:6%}
.x7rep__docs > span:first-child{transform:rotate(-2deg)}.x7rep__docs > span:last-child{transform:rotate(2deg) translateY(6%)}
.x7rep__t{display:grid;gap:6px}
.x7rep__t b{font:400 22px/1.2 var(--f-disp);color:var(--ink)}
.x7rep__t > span:nth-child(2){color:var(--signal);font-weight:500}
.x7rep__n{margin-top:16px;max-width:90ch}
@media (max-width:900px){.x7rep__g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.x7rep__i{grid-template-columns:minmax(0,1fr)}}

/* ================================================================== cross-links */
.x7fitask{margin:0;padding-top:10px;border-top:1px solid var(--hair);font-size:14px;color:var(--ink-2)}
.x7fitask a{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:var(--signal)}
.x7fitask svg{width:14px;height:14px}
.x7cmpfit{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;margin-top:24px;padding:20px 24px;border:1px solid var(--hair);border-left:3px solid var(--signal);border-radius:5px;background:rgba(255,255,255,.75)}
.x7cmpfit b{font:400 20px/1.25 var(--f-disp);color:var(--ink)}
.x7cmpfit p{margin:6px 0 0;max-width:62ch;font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.x7guide{margin:20px 0 0}
.x7free{display:grid;gap:6px;padding:14px 16px;border-radius:5px;background:rgba(255,255,255,.8);border:1px solid var(--hair)}
.x7free b{font:500 15px/1.3 var(--f-text);color:var(--ink)}
.x7free p{margin:0;font-size:14px;line-height:1.5;color:var(--ink-2)}
.x7pp__svc{margin:0;padding:12px 0 0;border:0;border-top:1px solid var(--hair);display:grid;gap:10px}
.x7pp__svc .x6row{gap:6px 20px}

.x7scl{display:block;width:100%;position:relative}
.x7scl > .x7pg{width:100%}
.x7rv__dlgin > .x7pg{width:max(100%,600px)}
.ftr__cols{grid-template-columns:repeat(6,minmax(0,1fr))}
@media (max-width:1100px){.ftr__cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:720px){.ftr__cols{grid-template-columns:minmax(0,1fr)}}
.x7scl{overflow:hidden}
.x7toc li,.x7p3__i,.x7rep__i,.x7rep__docs > span,.x7spread > div,.x7desk > div,.x7mini{min-width:0}
.x7rv__tabs .x7rv__t{min-width:0}
.x7rep__i{position:relative}
.x7rep__a{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:var(--signal)}
.x7rep__a::after{content:"";position:absolute;inset:0}
.x7rep__a svg{width:14px;height:14px}
.x7d--sv{line-height:.98;letter-spacing:-.04em}

/* ===== v38.css ===== */
/* =====================================================================================================================
   TANNAI V3.8 Launch Candidate · "Editorial Engineering" — loads after v32–v37s (bundled into tn38.css). New components: .x8
   Grounds: warm porcelain → titanium fog → ice slate, one local graphite band per page at most. Blue is for actions, hotspots
   and selected states only. Titles: H1 48–64 px desktop / 28–36 px phone, H2 30–42 / 23–29, body 15–18 / 15–17 px,
   touch targets ≥ 44 px. Rhythm: object → trade-off → evidence → next step; never three alike sections in a row.
   ===================================================================================================================== */
:root{
  --porc:#F6F5F1; --fog:#E7EDF0; --ice:#D6E2EA; --graph:#1D2B37; --graph-2:#26364A; --graph-ink:#E9EEF2; --graph-ink-2:#B9C5CF;
  --x8r:8px; --x8line:rgba(29,43,55,.12); --x8line-2:rgba(29,43,55,.2); --x8card:#FDFDFB;
  --x8sh:0 1px 2px rgba(29,43,55,.06),0 18px 40px -26px rgba(29,43,55,.38);
  --x8pad:clamp(44px,5vw,84px);
}
/* ---------- grounds ---------- */
body.x8{background:linear-gradient(180deg,var(--porc) 0,var(--porc) 10%,#EEF1F2 30%,var(--fog) 52%,#EDF1F2 76%,var(--porc) 100%)}
body.x8hub{background:linear-gradient(180deg,var(--porc) 0,#F1F3F2 14%,var(--fog) 30%,#E3EAEE 44%,#EEF1F1 62%,#E5ECEF 80%,var(--porc) 100%)}
body.x8fitp{background:linear-gradient(180deg,var(--porc) 0,#F0F3F3 20%,var(--fog) 42%,#EEF1F1 70%,var(--porc) 100%)}
body.x8sprp{background:linear-gradient(180deg,#F5F4EF 0,#EEF1F1 18%,var(--fog) 40%,#E4EBEF 64%,#EEF1F0 84%,var(--porc) 100%)}
body.x8co{background:linear-gradient(180deg,#F6F3EC 0,#F0ECE4 22%,#ECEEEC 48%,var(--fog) 72%,var(--porc) 100%)}

/* ---------- type scale (all V3.8 pages) ---------- */
.x8 .x6d,.x8 .x7d,.x8 .x7d--sv{font-size:clamp(36px,4.7vw,64px);line-height:1.04;letter-spacing:-.034em;font-weight:300}
.x8 .x6d--2{font-size:clamp(36px,4.7vw,64px)}
.x8 .x6t,.x8 .x7t,.x8 main .tA,.x8 main .tB{font-size:clamp(30px,2.85vw,42px);line-height:1.08;letter-spacing:-.028em}
.x8 .x6t2{font-size:clamp(26px,1.9vw,30px)}
.x8 main .tC{font-size:clamp(30px,2.2vw,32px)}
.x8 .x6note{font-size:14px}
.x8 .x6s{padding-block:var(--x8pad)}
@media (max-width:720px){
  .x8 .x6d,.x8 .x7d,.x8 .x7d--sv,.x8 .x6d--2{font-size:clamp(30px,8.6vw,36px);line-height:1.08}
  .x8 .x6t,.x8 .x7t{font-size:clamp(25px,7vw,29px);line-height:1.12}
  .x8 main .tA,.x8 main .tB,.x8 main .tC{font-size:clamp(26px,7.2vw,29px);line-height:1.12}
  .x8 .x6t2{font-size:clamp(24px,6.4vw,26px)}
  .x8 .x6s{padding-block:clamp(40px,11vw,56px)}
}
.x8kick{margin:0 0 14px;font:500 14px/1.3 var(--f-text);color:var(--champ);letter-spacing:.01em}
.x8lede{margin:0;font:400 clamp(16.5px,1.3vw,19px)/1.55 var(--f-text);color:var(--ink-2);max-width:54ch}
.x8sub{margin:0;font:400 clamp(15.5px,1.15vw,17.5px)/1.56 var(--f-text);color:var(--ink-2);max-width:58ch}
.x8lab{margin:0 0 10px;font:500 13.5px/1.35 var(--f-text);color:var(--ink-3);letter-spacing:.01em}
.x8tl,.x8tl a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:500 15px/1.3 var(--f-text);color:var(--signal-2)}
.x8tl svg{width:15px;height:15px;flex:none}
.x8tl:hover,.x8tl a:hover{color:var(--signal)}
.x8anchor{position:relative;display:block;height:0;scroll-margin-top:calc(var(--hdr,72px) + 16px)}
.x8 section[id],.x8 [id].x8anchor{scroll-margin-top:calc(var(--hdr,72px) + 12px)}
.x8head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px clamp(24px,5vw,80px);align-items:end;margin-bottom:clamp(26px,3.2vw,44px)}
.x8head .x8t{margin:0}
.x8head:not(:has(.x8head__r)),.x7ct__g .x8head,.x8when__g .x8head{grid-template-columns:minmax(0,1fr)}
.x8head__r{display:grid;gap:12px;justify-items:start}
@media (max-width:900px){.x8head{grid-template-columns:minmax(0,1fr);gap:10px}}
.x8chips{display:flex;flex-wrap:wrap;gap:8px}
.x8chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 14px;border:1px solid var(--x8line-2);border-radius:20px;background:rgba(255,255,255,.75);font:500 14px/1.2 var(--f-text);color:var(--ink)}
.x8chip:hover{border-color:var(--signal);color:var(--signal-2)}
.x8pay{display:flex;gap:10px;align-items:flex-start;margin:0;font:400 14.5px/1.5 var(--f-text);color:var(--ink-2)}
.x8pay svg{flex:none;width:17px;height:17px;margin-top:2px;color:var(--signal)}
.x8cav{display:inline-flex;align-items:center;gap:8px;align-self:start;padding:6px 12px;border-radius:14px;background:#FBF1E3;color:#7A4E16;font:600 13px/1.2 var(--f-text)}
.x8fee{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.x8fee b{font:400 clamp(26px,2.2vw,32px)/1 var(--f-disp);letter-spacing:-.02em;color:var(--ink)}
.x8fee span{font:400 14px/1.3 var(--f-text);color:var(--ink-2)}
.x8fee em{font:600 12.5px/1 var(--f-text);font-style:normal;padding:5px 9px;border-radius:12px;background:var(--champ-08);color:#7A6235}
.x8fee--lg b{font-size:clamp(40px,3.6vw,52px)}
.x8fee--free b{color:#1E6B4A}
.x8honest,.x8d500{display:flex;gap:10px;align-items:flex-start;margin:0;font:400 14.5px/1.55 var(--f-text);color:var(--ink-2)}
.x8honest svg,.x8d500 svg{flex:none;width:17px;height:17px;margin-top:2px;color:var(--champ)}
.x8two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width:560px){.x8two{grid-template-columns:minmax(0,1fr)}}

/* ---------- hero (hub, service pages, company): short title left, a real object right ---------- */
.x8hero{position:relative;padding-top:calc(var(--hdr,72px) + clamp(24px,3.4vw,56px));padding-bottom:clamp(24px,3vw,48px)}
.x8hero__g{display:grid;grid-template-columns:minmax(0,5.5fr) minmax(0,6.5fr);gap:clamp(28px,4vw,64px);align-items:center}
@media (max-width:1180px) and (min-width:1001px){.x8hero--hub .x8hero__g{grid-template-columns:minmax(0,1fr)}.x8hero--hub .x8hero__c{max-width:760px}}
.x8hero__c{display:grid;gap:18px;align-content:center;min-width:0}
.x8hero__c > .x8kick{margin:0}
.x8h1{margin:0}
.x8hero .x6cta{margin-top:6px}
@media (max-width:1000px){.x8hero__g{grid-template-columns:minmax(0,1fr)}}
.x8promise{margin:0;font:300 clamp(20px,1.9vw,27px)/1.25 var(--f-disp);letter-spacing:-.015em;color:var(--ink)}
.x8hero__fee{display:grid;gap:6px;padding:16px 0;border-top:1px solid var(--x8line);border-bottom:1px solid var(--x8line)}
/* the three ways in, visible in the first screen with their fee */
.x8routes{list-style:none;margin:6px 0 0;padding:0;display:grid;border-top:1px solid var(--x8line)}
.x8routes__a{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:4px 16px;min-height:66px;padding:10px 6px 10px 0;border-bottom:1px solid var(--x8line);color:var(--ink);transition:background-color .2s,padding .2s}
.x8routes__a:hover{background:rgba(255,255,255,.7);padding-left:10px}
.x8routes__q{grid-column:1/3;font:400 14px/1.3 var(--f-text);color:var(--ink-3)}
.x8routes__s{grid-column:1/3;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.x8routes__s b{font:500 17px/1.3 var(--f-text)}
.x8routes__f{font:500 15px/1 var(--f-mono);color:var(--signal-2);white-space:nowrap}
.x8routes__a--free .x8routes__f{color:#1E6B4A}
.x8routes__a > svg{grid-column:3;grid-row:1/3;width:16px;height:16px;color:var(--ink-3)}
/* engineering desk: graded bench plate, module tags measured from the render camera, one sample page laid on it */
.x8desk{position:relative;margin:0;display:grid;gap:12px;min-width:0}
.x8desk__img{position:relative;border-radius:var(--x8r);overflow:hidden;box-shadow:var(--x8sh);background:#E9EDEF}
.x8desk__img picture,.x8desk__img img{display:block;width:100%;height:auto}
.x8desk__map{position:absolute;inset:0}
.x8tag{position:absolute;left:var(--x);top:var(--y);width:0;height:0;color:var(--ink);z-index:2}
.x8tag i{position:absolute;left:-9px;top:-9px;width:18px;height:18px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 0 0 2px var(--signal),0 6px 14px -6px rgba(35,101,213,.8)}
.x8tag i::after{content:"";position:absolute;inset:5px;border-radius:50%;background:var(--signal)}
.x8tag > span{position:absolute;left:14px;display:grid;gap:2px;padding:8px 12px;border-radius:6px;background:rgba(253,253,251,.95);box-shadow:var(--x8sh);white-space:nowrap;pointer-events:none}
.x8tag--up > span{bottom:10px}.x8tag--dn > span{top:10px}
.x8tag b{font:500 13.5px/1.2 var(--f-text)}
.x8tag .x6code{font-size:11.5px}
.x8tag:hover i,.x8tag:focus-visible i{box-shadow:0 0 0 3px var(--signal),0 6px 16px -6px rgba(35,101,213,.9)}
.x8desk__doc{position:absolute;right:3%;bottom:-6%;width:24%;transform:rotate(2.2deg);box-shadow:0 30px 50px -30px rgba(29,43,55,.6);z-index:1}
.x8desk figcaption{display:flex;justify-content:flex-end}
.x8desk__chips{display:none}
@media (max-width:1180px){.x8tag > span{display:none}.x8tag:hover > span,.x8tag:focus-visible > span{display:grid}}
@media (max-width:720px){.x8desk__doc{display:none}.x8tag > span{display:none!important}.x8desk__chips{display:flex}.x8desk figcaption{justify-content:flex-start}}
@media (max-width:1000px){.x8hero--hub .x8desk{order:2}}

/* ---------- path finder ---------- */
.x8sel{background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.55) 30%,rgba(255,255,255,.4))}
.x8sel__g{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:clamp(20px,3vw,40px);align-items:start}
.x8sel__q{display:grid;gap:22px;min-width:0}
.x8sel__prog{display:none;align-items:center;justify-content:space-between;gap:16px;font:500 14px/1 var(--f-text);color:var(--ink-3)}
.x8sel__bar{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,36px);gap:6px}
.x8sel__bar li{height:4px;border-radius:2px;background:var(--x8line-2)}
.x8sel__bar li.is-on{background:var(--signal)}
.x8sel__f{margin:0;padding:0;border:0;min-width:0}
.x8sel__f legend{display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:0;font:400 clamp(18px,1.45vw,21px)/1.3 var(--f-disp);color:var(--ink)}
.x8sel__n{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--x8line-2);font:500 14px/1 var(--f-text);color:var(--ink-2);flex:none}
.x8sel__f.is-done .x8sel__n{background:var(--ink);border-color:var(--ink);color:#fff}
.x8opts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.x8opts--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.x8opt{position:relative;display:block;min-width:0}
.x8opt input{position:absolute;opacity:0;width:1px;height:1px}
.x8opt__b{display:flex;align-items:center;gap:10px;min-height:58px;height:100%;padding:12px 14px;border:1px solid var(--x8line-2);border-radius:var(--x8r);background:var(--x8card);font:500 15px/1.3 var(--f-text);color:var(--ink);cursor:pointer;transition:border-color .2s,background-color .2s,box-shadow .2s}
.x8opt__b i{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:50%;background:var(--fog);color:var(--ink-2)}
.x8opt__b i svg{width:17px;height:17px}
.x8opt__b:hover{border-color:var(--ink-3)}
.x8opt input:checked + .x8opt__b{border-color:var(--signal);background:#F1F6FE;box-shadow:inset 0 0 0 1px var(--signal)}
.x8opt input:checked + .x8opt__b i{background:var(--signal);color:#fff}
.x8opt input:focus-visible + .x8opt__b{outline:2px solid var(--signal);outline-offset:2px}
.x8sel__nav{display:flex;gap:18px}
.x8sel__nav .x7link{display:inline-flex;align-items:center;gap:6px;min-height:44px}
.x8sel__nav [data-x8back] svg{transform:rotate(180deg);width:15px;height:15px}
.x8sel__out{position:sticky;top:calc(var(--hdr,72px) + 18px);display:grid;gap:10px;padding:clamp(20px,2.2vw,28px);border:1px solid var(--x8line);border-radius:var(--x8r);background:var(--x8card);box-shadow:var(--x8sh);min-width:0}
.x8sel__wait{display:grid;gap:12px;padding:6px 2px}
.x8sel__wait > p:first-child{margin:0;font:400 16px/1.55 var(--f-text);color:var(--ink-2)}
.x8sel__wait .x8lab{margin:6px 0 0}
.x8selr{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--x8line);counter-reset:r}
.x8selr li{counter-increment:r;display:grid;grid-template-columns:22px minmax(0,1fr) 14px auto;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--x8line);font:400 14.5px/1.35 var(--f-text);color:var(--ink-2)}
.x8selr li::before{content:counter(r);font:500 12.5px/1 var(--f-mono);color:var(--ink-3)}
.x8selr svg{width:13px;height:13px;color:var(--ink-3)}
.x8selr b{font-weight:500;color:var(--ink);text-align:right}
.x8sel__res{display:grid;gap:10px}
.x8rec{display:grid;gap:10px;padding:16px 18px;border-radius:6px;background:#F1F6FE;border:1px solid rgba(35,101,213,.24)}
.x8rec__h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 14px}
.x8rec__h b{font:400 clamp(21px,1.6vw,24px)/1.2 var(--f-disp);color:var(--ink)}
.x8rec__f{font:500 18px/1.2 var(--f-mono);color:var(--ink)}.x8rec__f small{display:block;font:400 12.5px/1.3 var(--f-text);color:var(--ink-3)}
.x8rec p{margin:0;font:400 15px/1.55 var(--f-text);color:var(--ink-2)}
.x8rec__why b{color:var(--ink)}
.x8rec__go{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px}
.x8alt{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.x8alt a{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:12px;min-height:48px;padding:6px 12px;border:1px solid var(--x8line);border-radius:6px;font:500 15px/1.3 var(--f-text);color:var(--ink)}
.x8alt a span{font:500 14px/1 var(--f-mono);color:var(--ink-2)}.x8alt svg{width:15px;height:15px;color:var(--ink-3)}
.x8alt a:hover{border-color:var(--signal)}
.x8rule{display:flex;gap:8px;margin:6px 0 0;font:400 13.5px/1.5 var(--f-text);color:var(--ink-3)}.x8rule svg{flex:none;width:15px;height:15px;margin-top:2px}
@media (max-width:1100px){.x8opts{grid-template-columns:repeat(2,minmax(0,1fr))}.x8opts--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.x8sel__g{grid-template-columns:minmax(0,1fr)}.x8sel__out{position:static}}
@media (max-width:720px){
  .x8sel__prog{display:flex}
  .x8sel__f{display:none}.x8sel__f.is-cur{display:block}
  .x8opts,.x8opts--3{grid-template-columns:minmax(0,1fr)}
  .x8opt__b{min-height:54px}
}

/* ---------- three levels of help: one widened, the others stay readable ---------- */
.x8dc{display:grid;grid-template-columns:2.2fr 1fr 1fr;gap:14px;align-items:stretch;transition:grid-template-columns .45s cubic-bezier(.2,.7,.2,1)}
.x8dc[data-on=fit]{grid-template-columns:1fr 2.2fr 1fr}.x8dc[data-on=spr]{grid-template-columns:1fr 1fr 2.2fr}
.x8dc__i{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--x8line);border-radius:var(--x8r);background:rgba(253,253,251,.82);min-width:0;overflow:hidden;transition:box-shadow .3s,border-color .3s,background-color .3s}
.x8dc__i.is-on{background:var(--x8card);border-color:var(--x8line-2);box-shadow:var(--x8sh)}
.x8dc__h{margin:0}
.x8dc__h button{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;align-items:center;gap:12px;width:100%;min-height:64px;padding:14px 18px;border:0;border-bottom:1px solid var(--x8line);background:none;text-align:left;cursor:pointer;color:var(--ink)}
.x8dc__n{font:400 clamp(18px,1.45vw,22px)/1.2 var(--f-disp)}
.x8dc__p{font:500 15px/1 var(--f-mono);color:var(--signal-2)}
.x8dc__i--free .x8dc__p{color:#1E6B4A}
.x8dc__x{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--x8line-2)}.x8dc__x svg{width:13px;height:13px;transition:transform .3s}
.x8dc__i.is-on .x8dc__x svg{transform:rotate(45deg)}
.x8dc__b{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding:16px 18px 18px;align-content:start}
.x8dc__i.is-on .x8dc__b{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px 24px}
.x8dc__doc{display:none;min-width:0}
.x8dc__i.is-on .x8dc__doc{display:block;grid-row:1/3}
.x8dc__pg{max-width:300px;box-shadow:0 22px 40px -28px rgba(29,43,55,.6)}
.x8dc__rows{margin:0;display:grid;gap:12px;align-content:start}
.x8dc__rows dt{font:500 13px/1.3 var(--f-text);color:var(--ink-3);margin-bottom:3px}
.x8dc__rows dd{margin:0;font:400 15px/1.5 var(--f-text);color:var(--ink-2)}
.x8dc__rows .x8fee b{font-size:24px}
.x8dc__more{display:none}.x8dc__i.is-on .x8dc__more{display:block}
.x8dc__go{display:none;flex-wrap:wrap;align-items:center;gap:6px 18px}
.x8dc__i.is-on .x8dc__go{display:flex}
.x8dc__coord{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--x8line);font:400 15px/1.55 var(--f-text);color:var(--ink-2)}
.x8dc__coord b{color:var(--ink);font-weight:500}.x8dc__coord a{display:inline-flex;align-items:center;gap:6px;color:var(--signal-2);font-weight:500;min-height:44px}.x8dc__coord svg{width:14px;height:14px}
.x8brief{display:grid;gap:12px;max-width:320px;padding:16px;border-radius:6px;background:#fff;border-left:3px solid var(--champ);box-shadow:0 22px 40px -28px rgba(29,43,55,.6)}
.x8brief__h{display:flex;justify-content:space-between;align-items:center;gap:10px;font:500 15px/1.2 var(--f-text)}
.x8brief dl{margin:0;display:grid;gap:8px}.x8brief dl div{display:grid;grid-template-columns:42% 1fr;gap:8px;font:400 13.5px/1.4 var(--f-text)}
.x8brief dt{color:var(--ink-3)}.x8brief dd{margin:0;color:var(--ink)}
.x8brief .doc__tag{position:static;transform:none;white-space:nowrap}
@media (max-width:1000px){
  .x8dc,.x8dc[data-on]{grid-template-columns:minmax(0,1fr)}
  .x8dc__i.is-on .x8dc__b{grid-template-columns:minmax(0,1fr)}
  .x8dc__i.is-on .x8dc__doc{grid-row:auto}
  .x8dc__i:not(.is-on) .x8dc__b{padding-top:10px;padding-bottom:14px}
}
@media (prefers-reduced-motion:reduce){.x8dc{transition:none}}

/* ---------- the work: two readable sample documents + what each service produces ---------- */
.x8wk{display:grid;gap:18px}
.x8wk__tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:760px}
.x8wk__t{display:grid;gap:4px;justify-items:start;min-height:64px;padding:12px 16px;border:1px solid var(--x8line-2);border-radius:var(--x8r);background:rgba(253,253,251,.7);text-align:left;cursor:pointer;color:var(--ink)}
.x8wk__t b{font:500 16px/1.25 var(--f-text)}.x8wk__t span{font:400 13.5px/1.3 var(--f-text);color:var(--ink-3)}
.x8wk__t[aria-selected=true]{border-color:var(--signal);background:var(--x8card);box-shadow:inset 0 0 0 1px var(--signal)}
.x8wk__p{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.85fr);gap:clamp(20px,3vw,44px);align-items:start}
.x8wk__side{display:grid;gap:14px;align-content:start}
.x8wk__side .x6btn{justify-self:start}
@media (max-width:1000px){.x8wk__p{grid-template-columns:minmax(0,1fr)}}
.x8read .x7rv{grid-template-columns:84px minmax(0,1fr)}
.x8read .x7rv__th{width:84px}
.x8read .x7rv__stage{max-width:780px}
.x8ex{margin-top:clamp(36px,4.5vw,64px);display:grid;gap:16px}
.x8ex__t{margin:0;font:400 clamp(20px,1.6vw,24px)/1.25 var(--f-disp);color:var(--ink)}
.x8ex__g{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px}
.x8ex__i{margin:0;display:grid;gap:14px;align-content:start;padding:18px;border:1px solid var(--x8line);border-radius:var(--x8r);background:rgba(253,253,251,.82);min-width:0}
.x8ex__i--ev{grid-column:1/-1}
.x8ex__i > *,.x8mx{min-width:0}
.x8ex__i figcaption{display:grid;gap:4px}.x8ex__i figcaption b{font:500 16px/1.3 var(--f-text);color:var(--ink)}.x8ex__i figcaption span{font:400 14.5px/1.5 var(--f-text);color:var(--ink-2)}
.x8mx__t{width:100%;border-collapse:collapse;font:400 13.5px/1.3 var(--f-text)}
.x8mx__t th,.x8mx__t td{padding:9px 8px;border-bottom:1px solid var(--x8line);text-align:left;vertical-align:middle}
.x8mx__t thead th{font-weight:500;color:var(--ink-3);font-size:12.5px}
.x8mx__c{display:none;list-style:none;margin:0;padding:0;gap:10px}
.x8mx__c > li{display:grid;gap:8px;padding:12px 14px;border:1px solid var(--x8line);border-radius:6px;background:#fff}
.x8mx__c ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.x8mx__c ul li{display:flex;justify-content:space-between;align-items:center;gap:10px;font:400 14px/1.3 var(--f-text)}
.x8ifmap{border-radius:6px;background:#fff;padding:10px}
.x8ifmap svg{display:block;width:100%;height:auto}
.x8evs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
.x8ev{border:1px solid var(--x8line);border-radius:6px;background:#fff;min-width:0}
.x8ev summary{display:grid;grid-template-columns:minmax(0,1fr) 18px;gap:2px 10px;align-items:center;min-height:56px;padding:12px 14px;cursor:pointer;list-style:none}
.x8ev summary::-webkit-details-marker{display:none}
.x8ev summary .x6code{grid-column:1}.x8ev summary b{grid-column:1;font:500 15px/1.3 var(--f-text);color:var(--ink)}
.x8ev summary svg{grid-column:2;grid-row:1/3;width:14px;height:14px;transition:transform .25s}
.x8ev[open] summary svg{transform:rotate(45deg)}
.x8ev dl{margin:0;padding:0 14px 6px;display:grid;gap:8px}
.x8ev dl div{display:grid;gap:2px}.x8ev dt{font:500 12.5px/1.3 var(--f-text);color:var(--ink-3)}.x8ev dd{margin:0;font:400 14px/1.45 var(--f-text);color:var(--ink-2)}
.x8ev dd a{color:var(--signal-2)}
.x8ev__open{margin:0;padding:10px 14px 14px;border-top:1px solid var(--x8line);font:400 13.5px/1.4 var(--f-text);color:#7A4E16}
.x8ev__open b{font-weight:600}
@media (max-width:1000px){.x8ex__g{grid-template-columns:minmax(0,1fr)}.x8evs{grid-template-columns:minmax(0,1fr)}}
.x8smp__side .x8evs{grid-template-columns:minmax(0,1fr);gap:8px}
@media (max-width:640px){.x8mx__t{display:none}.x8mx__c{display:grid}}

/* ---------- phone reading mode for the sample pages: reflowed text at reading size, tables as labelled cards ---------- */
@media (max-width:640px){
  .x8read .x7rv{grid-template-columns:minmax(0,1fr);grid-template-areas:"tabs" "stage" "bar"}
  .x8read .x7rv__tabs{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
  .x8read .x7rv__t{flex:none;width:64px;scroll-snap-align:start}
  .x8read .x7rv__th{width:64px}
  .x8read .x7rv__stage .x7scl{overflow:visible}
  .x8read .x7rv__stage .x7pg{aspect-ratio:auto;container-type:normal;overflow:visible;border-radius:6px}
  .x8read .x7rv__stage .x7pg__in{position:relative;inset:auto;padding:22px 18px 18px;gap:12px;font:400 15px/1.55 var(--f-text)}
  .x8read .x7rv__stage .x7pg ul,.x8read .x7rv__stage .x7pg ol{padding-left:20px;gap:6px}
  .x8read .x7rv__stage .pg__logo{width:30px;height:30px;border-radius:6px}
  .x8read .x7rv__stage .pg__k,.x8read .x7rv__stage .pg__ser{font-size:11.5px}
  .x8read .x7rv__stage .pg__t1{font-size:30px;margin:6px 0 0}
  .x8read .x7rv__stage .pg__t2{font-size:24px}
  .x8read .x7rv__stage .pg__lede{font-size:18px}
  .x8read .x7rv__stage .pg__h2{font-size:17px;margin:4px 0 0}
  .x8read .x7rv__stage .pg__h3{font-size:16px;margin:4px 0 0}
  .x8read .x7rv__stage .pg__sub{font-size:14.5px}
  .x8read .x7rv__stage .pg__box{padding:12px 14px;font-size:14px;border-radius:6px}
  .x8read .x7rv__stage .pg__need{font-size:12.5px;padding:3px 7px;border-radius:6px;white-space:normal}
  .x8read .x7rv__stage .pg__u{font-size:12.5px;word-break:break-all}
  .x8read .x7rv__stage .pg__meta{grid-template-columns:minmax(0,1fr);gap:0}
  .x8read .x7rv__stage .pg__meta div{padding:8px 0}.x8read .x7rv__stage .pg__meta dt{font-size:12.5px}
  .x8read .x7rv__stage .pg__end,.x8read .x7rv__stage .pg__src{font-size:14px}
  .x8read .x7rv__stage .pg__f{font-size:11px;padding-top:10px;flex-wrap:wrap}
  .x8read .x7rv__stage .pg__t{font-size:14px;border:0}
  .x8read .x7rv__stage .pg__t thead{display:none}
  .x8read .x7rv__stage .pg__t,.x8read .x7rv__stage .pg__t tbody,.x8read .x7rv__stage .pg__t tr{display:block}
  .x8read .x7rv__stage .pg__t tr{margin:0 0 10px;padding:10px 12px;border:1px solid #E2E7EB;border-radius:6px}
  .x8read .x7rv__stage .pg__t th[scope=row]{display:block;padding:0 0 6px;border:0;font-weight:600}
  .x8read .x7rv__stage .pg__t td{display:grid;grid-template-columns:40% minmax(0,1fr);gap:10px;padding:4px 0;border:0}
  .x8read .x7rv__stage .pg__t td::before{content:attr(data-l);color:#6A7681;font-size:12.5px;line-height:1.4}
  .x8read .x7rv__zoom{position:static;margin:0 0 10px}
  .x8read .x7rv{grid-template-areas:"tabs" "stage" "more" "bar"}
  .x8read__more{grid-area:more;justify-self:start}
  .x8read.is-clip .x7rv__stage{max-height:600px;overflow:hidden;position:relative}
  .x8read.is-clip .x7rv__stage::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(180deg,rgba(231,237,240,0),var(--fog) 92%);pointer-events:none}
  /* phone: the hub stays short — chips and the interface matrix scroll sideways, closed levels show one line */
  .x8desk__chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-16px;padding-inline:16px}
  .x8desk__chips .x8chip{flex:none}
  .x8mx__c{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
  .x8mx__c > li{flex:none;width:76%;scroll-snap-align:start}
}
.x8read__more[hidden]{display:none}
@media (max-width:720px){
  .x8dc__i:not(.is-on) .x8dc__b{display:none}
  .x8dc__i:not(.is-on) .x8dc__h button{border-bottom:0}
  .x8seg{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px}
  .x8seg__o span{padding:8px 9px;min-height:54px}.x8seg__o b{font-size:13.5px}
  .x8steps li{padding:10px 0}
}

/* ---------- decisions by project ---------- */
.x8cs{display:grid;gap:18px}
.x8cs__tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.x8cs__t{display:flex;align-items:center;gap:12px;min-height:64px;padding:8px 14px 8px 8px;border:1px solid var(--x8line-2);border-radius:var(--x8r);background:rgba(253,253,251,.7);text-align:left;cursor:pointer;color:var(--ink)}
.x8cs__t img{width:72px;height:44px;object-fit:cover;border-radius:4px;flex:none}
.x8cs__t b{font:500 15.5px/1.3 var(--f-text)}
.x8cs__t[aria-selected=true]{border-color:var(--signal);background:var(--x8card);box-shadow:inset 0 0 0 1px var(--signal)}
.x8cs__p{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:start}
.x8cs__img{margin:0;position:relative;border-radius:var(--x8r);overflow:hidden;box-shadow:var(--x8sh)}
.x8cs__img img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.x8cs__img figcaption{position:absolute;left:12px;bottom:10px;padding:5px 9px;border-radius:12px;background:rgba(253,253,251,.9)}
.x8cs__b{display:grid;gap:14px;align-content:start;min-width:0}
.x8cs__d{margin:0;font:400 16px/1.55 var(--f-text);color:var(--ink-2)}
.x8cs__conf{margin:0;padding-left:22px;display:grid;gap:8px;font:400 15px/1.5 var(--f-text);color:var(--ink)}
.x8cs__mods{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.x8cs__mods a{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:center;min-height:56px;padding:6px 8px;border:1px solid var(--x8line);border-radius:6px;background:#fff;color:var(--ink)}
.x8cs__mods img{width:44px;height:44px;object-fit:contain}
.x8cs__mods span{display:grid;gap:2px;font:400 13px/1.3 var(--f-text);color:var(--ink-2);min-width:0}
.x8cs__go{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px}
@media (max-width:1000px){.x8cs__p{grid-template-columns:minmax(0,1fr)}}
@media (max-width:720px){.x8cs__tabs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.x8cs__t{flex:none;width:76%;scroll-snap-align:start}.x8cs__mods{grid-template-columns:minmax(0,1fr)}}

/* ---------- how it works: the one graphite band ---------- */
.x8how{position:relative;padding-block:var(--x8pad);background:linear-gradient(180deg,var(--graph-2) 0,var(--graph) 100%);color:var(--graph-ink)}
.x8how .x8t,.x8how .x7em{color:#fff}
.x8how .x8sub{color:var(--graph-ink-2)}
.x8how__g{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:clamp(24px,3.4vw,52px);align-items:start}
.x8steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;counter-reset:x8}
.x8steps li{display:grid;gap:8px;align-content:start;padding:16px 14px;border-top:2px solid rgba(255,255,255,.22)}
.x8steps li:first-child{border-top-color:#7FB0FF}
.x8steps__n{font:500 13px/1 var(--f-mono);color:var(--graph-ink-2)}
.x8steps b{font:500 16px/1.3 var(--f-text);color:#fff}
.x8steps li > span:last-child{font:400 14px/1.5 var(--f-text);color:var(--graph-ink-2)}
.x8rules{padding:18px 20px;border-radius:var(--x8r);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.x8how .x8rules .x8lab{color:#fff}
.x8rules ul{margin:0;padding-left:18px;display:grid;gap:8px;font:400 14.5px/1.5 var(--f-text);color:var(--graph-ink)}
@media (max-width:1100px){.x8how__g{grid-template-columns:minmax(0,1fr)}.x8steps{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media (max-width:720px){.x8steps{grid-template-columns:minmax(0,1fr);gap:0}.x8steps li{grid-template-columns:28px minmax(0,1fr);column-gap:10px;padding:12px 0}.x8steps li > span:last-child{grid-column:2}.x8steps b{grid-column:2;grid-row:1}}
/* light variant on the service pages */
.x8how--lite{background:none;color:var(--ink)}
.x8how--lite .x8t,.x8how--lite .x7em{color:var(--ink)}.x8how--lite .x8sub{color:var(--ink-2)}
.x8how--lite .x8steps li{border-top-color:var(--x8line-2)}.x8how--lite .x8steps li:first-child{border-top-color:var(--signal)}
.x8how--lite .x8steps b{color:var(--ink)}.x8how--lite .x8steps li > span:last-child,.x8how--lite .x8steps__n{color:var(--ink-2)}
.x8how--lite .x8rules{background:rgba(253,253,251,.8);border-color:var(--x8line)}.x8how--lite .x8rules .x8lab{color:var(--ink-3)}.x8how--lite .x8rules ul{color:var(--ink-2)}
.x8steps--v{grid-template-columns:minmax(0,1fr);gap:0}
.x8steps--v li{grid-template-columns:28px minmax(0,1fr);column-gap:12px;padding:12px 0;border-top:1px solid var(--x8line-2)}
.x8steps--v li:first-child{border-top-color:var(--signal)}
.x8steps--v b{grid-column:2;grid-row:1;color:var(--ink)}.x8steps--v li > span:last-child{grid-column:2;color:var(--ink-2)}.x8steps--v .x8steps__n{color:var(--ink-3)}

/* ---------- FAQ: title + one line + a way to ask on the left, questions on the right ---------- */
.x8faq__s{display:grid;gap:14px;align-content:start;position:sticky;top:calc(var(--hdr,72px) + 24px)}
.x8faq__s .x8t{margin:0}
.x8faq2 .x7faq__g{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
@media (max-width:900px){.x8faq__s{position:static}.x8faq2 .x7faq__g{grid-template-columns:minmax(0,1fr)}}

/* ---------- workbench: one brief, filled once ---------- */
.x8wb__g{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,1fr);gap:clamp(20px,3vw,44px);align-items:start}
.x8bf{display:grid;gap:18px;padding:clamp(20px,2.2vw,28px);border:1px solid var(--x8line);border-radius:var(--x8r);background:rgba(253,253,251,.85)}
.x8bf .x7fld label,.x8bf .x7fld legend,.x8ap .x7fld label,.x8ap .x7fld legend{font:500 14.5px/1.35 var(--f-text);color:var(--ink);margin-bottom:6px;display:block}
.x8seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.x8seg__o{position:relative;display:block}
.x8seg__o input{position:absolute;opacity:0;width:1px;height:1px}
.x8seg__o span{display:grid;gap:3px;min-height:58px;padding:10px 12px;border:1px solid var(--x8line-2);border-radius:6px;background:#fff;cursor:pointer}
.x8seg__o b{font:500 14.5px/1.25 var(--f-text);color:var(--ink)}.x8seg__o small{font:500 13px/1 var(--f-mono);color:var(--ink-3)}
.x8seg__o input:checked + span{border-color:var(--signal);background:#F1F6FE;box-shadow:inset 0 0 0 1px var(--signal)}
.x8seg__o input:focus-visible + span{outline:2px solid var(--signal);outline-offset:2px}
.x8pass{position:sticky;top:calc(var(--hdr,72px) + 18px)}
.x8pass:has([data-x7empty]:not([hidden])) .x7pass__l{display:none}
@media (max-width:900px){.x8wb__g{grid-template-columns:minmax(0,1fr)}.x8pass{position:static}}
@media (max-width:480px){.x8seg{grid-template-columns:minmax(0,1fr)}}

/* ---------- service pages ---------- */
.x8svdesk{position:relative;margin:0;display:grid;gap:10px;min-width:0}
.x8svdesk__img{border-radius:var(--x8r);overflow:hidden;box-shadow:var(--x8sh);background:#E9EDEF}
.x8svdesk__img img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.x8sheet{position:absolute;left:-4%;bottom:12%;width:min(360px,62%);display:grid;gap:8px;padding:18px 20px;border-radius:4px;background:#fff;box-shadow:0 30px 60px -30px rgba(29,43,55,.6);font:400 14px/1.5 var(--f-text);color:#2C3742}
.x8sheet p{margin:0}.x8sheet ul{margin:0;padding-left:18px;display:grid;gap:4px}
.x8sheet__k{font:600 11px/1.2 var(--f-text)!important;letter-spacing:.06em;color:var(--signal)}
.x8sheet__t{font:400 21px/1.2 var(--f-disp)!important;color:var(--ink)}
.x8svdesk figcaption{display:flex;justify-content:flex-end}
@media (max-width:1000px){.x8sheet{left:auto;right:12px;bottom:12px;width:min(340px,72%)}}
@media (max-width:560px){.x8sheet{position:static;width:auto;margin-top:-28px;margin-inline:12px}}
/* decision desk (Sourcing Sprint) */
.x8dd{margin:0;display:grid;gap:14px;padding:clamp(18px,2.2vw,28px);border-radius:var(--x8r);background:linear-gradient(160deg,#EEF3F6 0,var(--ice) 100%);border:1px solid var(--x8line);box-shadow:var(--x8sh);min-width:0}
.x8dd__top{display:grid;gap:8px}
.x8dd__top .x8lab{margin:0}
.x8dd__flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;counter-reset:f}
.x8dd__flow li{counter-increment:f;position:relative;padding:8px 10px;border-radius:6px;background:rgba(255,255,255,.7);font:500 13px/1.25 var(--f-text);color:var(--ink-2)}
.x8dd__flow li::before{content:counter(f) " ";color:var(--signal);font-family:var(--f-mono)}
.x8dd__cat{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:center;padding:10px 14px 10px 10px;border-radius:6px;background:#fff}
.x8dd__cat img{width:92px;height:92px;object-fit:contain}
.x8dd__cat div{display:grid;gap:4px}.x8dd__cat b{font:400 clamp(18px,1.4vw,21px)/1.25 var(--f-disp);color:var(--ink)}
.x8dd__paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.x8pc{display:grid;gap:6px;align-content:start;padding:12px;border-radius:6px;background:#fff;border-top:3px solid var(--champ);min-width:0}
.x8pc b{font:500 14.5px/1.3 var(--f-text);color:var(--ink)}
.x8pc ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.x8pc li{display:grid;gap:3px;font:400 12.5px/1.3 var(--f-text);color:var(--ink-2)}
.x8dd figcaption{display:grid;gap:6px}
@media (max-width:640px){.x8dd__flow{grid-template-columns:repeat(2,minmax(0,1fr))}.x8dd__paths{grid-template-columns:minmax(0,1fr)}.x8pc ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* what you receive: cover + three evidence cards */
.x8recv__g{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start}
.x8recv__cover{margin:0;transform:rotate(-1.5deg);box-shadow:0 30px 60px -36px rgba(29,43,55,.6)}
.x8xcs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.x8xc{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--x8line);border-radius:var(--x8r);background:var(--x8card);overflow:hidden;min-width:0}
.x8xc header{display:grid;gap:6px;padding:16px 16px 12px}
.x8xc__t{margin:0;font:400 clamp(19px,1.5vw,22px)/1.2 var(--f-disp);color:var(--ink)}
.x8xc header p{margin:0;font:400 14px/1.5 var(--f-text);color:var(--ink-2)}
.x8xc__q{padding:14px 16px 16px;background:#fff;border-top:1px solid var(--x8line);font:400 14px/1.55 "TN Text",Inter,var(--f-text);color:#2C3742}
.x8xc__q p{margin:0 0 8px}.x8xc__q ol{margin:0;padding-left:18px;display:grid;gap:6px}
.x8gates li{font-size:13.5px;line-height:1.45}.x8gates b{font-weight:600;color:var(--ink)}
.x8mini{width:100%;border-collapse:collapse;font:400 13px/1.35 var(--f-text)}
.x8mini th,.x8mini td{padding:6px 6px 6px 0;border-bottom:1px solid #E2E7EB;text-align:left;vertical-align:top}
.x8mini thead th{font-weight:600;color:#33404C}
@media (max-width:1100px){.x8recv__g{grid-template-columns:minmax(0,1fr)}.x8recv__cover{display:none}}
@media (max-width:900px){.x8xcs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px}.x8xc{flex:none;width:min(86%,420px);scroll-snap-align:start}}
/* sample bench */
.x8smp__g{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.85fr);gap:clamp(20px,3vw,44px);align-items:start}
.x8smp__side{display:grid;gap:14px;align-content:start;min-width:0}
.x8full summary{display:flex;justify-content:space-between;align-items:center;min-height:48px;padding:0 4px;border-top:1px solid var(--x8line);font:500 15px/1.3 var(--f-text);cursor:pointer;list-style:none}
.x8full summary::-webkit-details-marker{display:none}
.x8full summary svg{width:14px;height:14px}.x8full[open] summary svg{transform:rotate(45deg)}
.x8full__t{overflow-x:auto;padding:6px 0}
.x8full__t .pg__t{font-size:13px;min-width:520px;border-collapse:collapse}.x8full__t .pg__t th,.x8full__t .pg__t td{padding:7px 8px;border-bottom:1px solid #E2E7EB;text-align:left;vertical-align:top}
@media (max-width:1000px){.x8smp__g{grid-template-columns:minmax(0,1fr)}}
/* scope + process */
.x8scope__g{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:start}
.x8scope .x7scope{margin:0}
.x8scope .x8honest{margin-top:20px}
.x8terms{padding:16px 18px;border:1px solid var(--x8line);border-radius:var(--x8r);background:rgba(253,253,251,.82)}
@media (max-width:1000px){.x8scope__g{grid-template-columns:minmax(0,1fr)}}
/* apply: five short answers */
.x8ap__g{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr);gap:clamp(20px,3vw,44px);align-items:start}
.x8ap{display:grid;gap:16px;padding:clamp(20px,2.2vw,28px);border:1px solid var(--x8line);border-radius:var(--x8r);background:var(--x8card);box-shadow:var(--x8sh)}
.x8ap .inp{min-height:48px;font-size:16px}
.x8ap .x8two{align-items:start}
.x8ap select.inp{height:48px}
.x8ap textarea.inp{min-height:96px}
.x8ap .x7fld.is-err .inp{border-color:#B3261E;box-shadow:0 0 0 1px #B3261E}
.x8ap .x7fld .x7fld__e{display:none;margin:6px 0 0;font:500 13.5px/1.4 var(--f-text);color:#B3261E}
.x8ap .x7fld.is-err .x7fld__e{display:block}
.x8ap__side{position:sticky;top:calc(var(--hdr,72px) + 18px);display:grid;gap:12px;padding:20px;border-radius:var(--x8r);background:rgba(253,253,251,.7);border:1px solid var(--x8line)}
.x8ap__svc{font:400 22px/1.2 var(--f-disp);color:var(--ink)}
@media (max-width:900px){.x8ap__g{grid-template-columns:minmax(0,1fr)}.x8ap__side{position:static;order:-1}}
/* when a sprint helps */
.x8when__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(20px,3.4vw,56px);align-items:center}
.x8when__img{margin:0;position:relative;border-radius:var(--x8r);overflow:hidden;box-shadow:var(--x8sh)}
.x8when__img img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.x8when__img figcaption{position:absolute;left:12px;bottom:10px;padding:5px 9px;border-radius:12px;background:rgba(253,253,251,.9)}
.x8when__l{margin:0 0 18px;padding:0;list-style:none;display:grid;gap:0;counter-reset:w}
.x8when__l li{counter-increment:w;display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:14px 0;border-top:1px solid var(--x8line);font:400 17px/1.5 var(--f-text);color:var(--ink)}
.x8when__l li::before{content:counter(w,decimal-leading-zero);font:500 14px/1.9 var(--f-mono);color:var(--signal-2)}
@media (max-width:900px){.x8when__g{grid-template-columns:minmax(0,1fr)}.x8when__img{order:2}}
.x8coord{background:linear-gradient(180deg,rgba(255,255,255,0),rgba(214,226,234,.45))}

/* ---------- home: three paths under the hero ---------- */
.x8home{padding-block:clamp(44px,5vw,80px)!important}
.x8home__g{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center}
.x8home__c{display:grid;gap:14px}
.x8home .x8head{grid-template-columns:minmax(0,1fr);margin-bottom:6px}
.x8out{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:20px;align-items:center;padding:20px;border-radius:var(--x8r);background:linear-gradient(160deg,#F1F4F5,var(--ice));border:1px solid var(--x8line);color:var(--ink);box-shadow:var(--x8sh)}
.x8out__doc{transform:rotate(-2deg);box-shadow:0 26px 50px -30px rgba(29,43,55,.6)}
.x8out__t{display:grid;gap:8px;justify-items:start}.x8out__t b{font:400 clamp(20px,1.7vw,24px)/1.2 var(--f-disp)}.x8out__t > span:first-of-type{font:400 14.5px/1.4 var(--f-text);color:var(--ink-2)}
.x8out__a::after{content:"";position:absolute;inset:0}
.x8out{position:relative}.x8out:hover{border-color:var(--signal)}
@media (max-width:900px){.x8home__g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.x8out{grid-template-columns:110px minmax(0,1fr);padding:14px;gap:14px}}

/* ---------- RFQ: the kind of help first ---------- */
.x8tier{margin:clamp(28px,3.4vw,48px) 0 clamp(8px,1vw,16px);padding:0;border:0;min-width:0}
.x8tier__l{display:grid;gap:4px;margin:0 0 12px;padding:0}
.x8tier__l b{font:400 clamp(20px,1.7vw,24px)/1.25 var(--f-disp);color:var(--ink)}.x8tier__l span{font:400 15px/1.5 var(--f-text);color:var(--ink-2)}
.x8tier__g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.x8tier__o{position:relative;display:block;min-width:0}
.x8tier__o input{position:absolute;opacity:0;width:1px;height:1px}
.x8tier__b{display:grid;gap:4px;height:100%;min-height:96px;padding:14px;border:1px solid var(--x8line-2);border-radius:var(--x8r);background:#fff;cursor:pointer}
.x8tier__b b{font:500 15.5px/1.25 var(--f-text);color:var(--ink)}
.x8tier__f{font:500 14px/1.2 var(--f-mono);color:var(--signal-2)}
.x8tier__o--free .x8tier__f{color:#1E6B4A}
.x8tier__b small{font:400 13.5px/1.4 var(--f-text);color:var(--ink-2)}
.x8tier__o input:checked + .x8tier__b{border-color:var(--signal);background:#F1F6FE;box-shadow:inset 0 0 0 1px var(--signal)}
.x8tier__o input:focus-visible + .x8tier__b{outline:2px solid var(--signal);outline-offset:2px}
.x8tier__more{margin:6px 0 0}
@media (max-width:1000px){.x8tier__g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.x8tier__g{grid-template-columns:minmax(0,1fr)}.x8tier__b{min-height:0}}

/* ---------- company ---------- */
.x8mos{display:grid;gap:10px;min-width:0}
.x8mos__g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.x8mos__i{position:relative;margin:0;border-radius:var(--x8r);overflow:hidden;background:#E9EDEF;box-shadow:var(--x8sh)}
.x8mos__i img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.x8mos__i--0{grid-row:span 2}.x8mos__i--0 picture{display:block;height:100%}.x8mos__i--0 img{aspect-ratio:auto;height:100%;object-fit:cover}
.x8mos__i figcaption{position:absolute;left:10px;bottom:10px;padding:4px 8px;border-radius:10px;background:rgba(253,253,251,.9)}
.x8mos__i--3{display:none}
.x8flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr) 48px minmax(0,1fr);align-items:stretch}
.x8flow__n{display:grid;gap:8px;align-content:start;padding:18px 20px;border-radius:var(--x8r);background:var(--x8card);border:1px solid var(--x8line);box-shadow:var(--x8sh)}
.x8flow__n b{font:400 clamp(21px,1.7vw,26px)/1.2 var(--f-disp);color:var(--ink)}.x8flow__n > span{font:500 14.5px/1.4 var(--f-text);color:var(--ink-2)}
.x8flow__n ul{margin:0;padding-left:18px;display:grid;gap:4px;font:400 14px/1.45 var(--f-text);color:var(--ink-2)}
.x8flow__n--2{background:#F1F6FE;border-color:rgba(35,101,213,.3)}
.x8flow__a{position:relative}
.x8flow__a::before{content:"";position:absolute;left:8px;right:8px;top:50%;height:2px;background:var(--x8line-2)}
.x8flow__a::after{content:"";position:absolute;right:8px;top:calc(50% - 5px);border:6px solid transparent;border-left-color:var(--ink-3);border-right:0}
.x8co-how__s{margin-top:clamp(24px,3vw,40px)}
.x8co-how .x8steps li{border-top-color:var(--x8line-2)}.x8co-how .x8steps li:first-child{border-top-color:var(--signal)}
.x8co-how .x8steps b{color:var(--ink)}.x8co-how .x8steps li > span:last-child,.x8co-how .x8steps__n{color:var(--ink-2)}
.x8co-paths__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.x8co-paths__g > div{display:grid;gap:14px}
.x8co-paths .x8head{grid-template-columns:minmax(0,1fr);margin-bottom:0}
@media (max-width:900px){.x8flow{grid-template-columns:minmax(0,1fr);gap:0}.x8flow__a{height:32px}.x8flow__a::before{left:50%;right:auto;top:6px;bottom:6px;width:2px;height:auto}.x8flow__a::after{left:calc(50% - 5px);right:auto;top:auto;bottom:4px;border:6px solid transparent;border-top-color:var(--ink-3);border-bottom:0}.x8co-paths__g{grid-template-columns:minmax(0,1fr)}}

/* ---------- support ---------- */
.x8free{display:grid;gap:8px}
.x8free__sel{margin:4px 0 0;padding-top:10px;border-top:1px solid var(--x8line);font:400 14.5px/1.5 var(--f-text);color:var(--ink-2)}
.x8free__sel a{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:var(--signal-2)}.x8free__sel svg{width:14px;height:14px}
.x8su .x7doors{grid-template-columns:repeat(2,minmax(0,1fr))}

/* ---------- applications / showroom / products / demos / insights: density ---------- */
.x8apps .x7act__needs{gap:14px 24px}
.x8sr .x6shh{padding-bottom:clamp(16px,2vw,28px)}
.x8in .feat{gap:clamp(20px,3vw,48px)}

/* ---------- home hero: the two image notes as one legible line (V3.7 stacked them over the grey slats) ---------- */
@media (min-width:901px){
  .x8 .x6hero__note{display:flex;align-items:center;gap:0;padding:6px 12px;border-radius:14px;background:rgba(246,245,241,.88);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 6px 18px -12px rgba(29,43,55,.5)}
  .x8 .x6hero__n2{font:400 12.5px/1.3 var(--f-text);color:var(--ink-2)}
  .x8 .x6hero__n2::before{content:"";display:inline-block;width:1px;height:12px;margin:0 10px;vertical-align:-1px;background:var(--x8line-2)}
}

/* ---------- Sourcing Sprint on a phone: the decision desk's paths scroll sideways, open terms read as one list ---------- */
@media (max-width:640px){
  .x8dd__paths{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:4px;grid-template-columns:none}
  .x8dd__paths .x8pc{flex:none;width:80%;scroll-snap-align:start}
  .x8dd .x6note{font-size:13px}
  .x8terms .x7terms__l{grid-template-columns:minmax(0,1fr);gap:0}
  .x8terms .x7terms__l li{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:8px 0;border:0;border-bottom:1px solid var(--x8line);border-radius:0;background:none}
  .x8terms .x7chip7{flex:none}
  .x8ap__side{gap:8px;padding:16px}.x8ap__side .x8fee--lg b{font-size:32px}
}

/* ---------- home on a phone: the perception-chain plates crop to 16:9 so the four stages read faster ---------- */
@media (max-width:720px){
  .x8 .x6step__pl{aspect-ratio:16/9}
  .x8 .x6step{padding-block:0 clamp(32px,7vw,48px)}
}

/* ---------- figure captions in V3.8 heroes wrap instead of widening the column; company lenses pair up on a phone ---------- */
.x8desk,.x8mos,.x8svdesk{grid-template-columns:minmax(0,1fr)}
.x8desk figcaption .x6cap,.x8mos__cap .x6cap,.x8svdesk figcaption .x6cap{white-space:normal;line-height:1.35}
@media (max-width:720px){
  .x8co .x7lenses{grid-template-columns:repeat(2,minmax(0,1fr))}
  .x8co .x7lens{padding:16px 14px;gap:8px}
  .x8co .x7lens b{font-size:18px}
  .x8co .x7lens p{font-size:14px}
}

/* ---------- RFQ on a phone: help types as a 2 × 2 grid, the eight scenes as one swipeable row ---------- */
@media (max-width:640px){
  .x8tier__g{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
  .x8tier__b{min-height:0;padding:12px}
  .x8tier__b b{font-size:14.5px}
  .x8tier__b small{font-size:12.5px;line-height:1.35}
  .x8.p-project-brief .pick8{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px;padding-bottom:4px}
  .x8.p-project-brief .pick8 .scn{flex:none;width:42%;scroll-snap-align:start}
}

/* ---------- Products: "not sure it fits?" leads to the fit review; the quote stays free ---------- */
.x8prfit{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px clamp(24px,4vw,64px);align-items:center;margin-top:clamp(36px,4vw,64px);padding:clamp(22px,2.6vw,36px);border-radius:var(--x8r);background:linear-gradient(160deg,#F1F4F5,var(--ice));border:1px solid var(--x8line);box-shadow:var(--x8sh)}
.x8prfit__c{display:grid;gap:12px}.x8prfit__c .x8t{margin:0}
.x8prfit__go{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
@media (max-width:900px){.x8prfit{grid-template-columns:minmax(0,1fr)}}

/* ---------- Showroom: the 360° viewer leads. On wide screens the thumbnail lineup is dropped (the rail beside the viewer
   lists the same eight concepts) and the stage takes more of the row. ---------- */
@media (min-width:1001px){
  .x8sr .x6lu{display:none}
  .x8sr .x6shh{padding-top:calc(var(--hdr,72px) + clamp(24px,3vw,44px));padding-bottom:0}
  .x8sr .x6shh__h{margin-bottom:0}
  .x8sr .x6shh__f{padding-top:10px}
  .x8sr #showcase{padding-top:clamp(18px,2vw,28px)!important}
}
@media (min-width:1281px){.x8sr .room{grid-template-columns:minmax(220px,.6fr) minmax(0,1.6fr) minmax(310px,.85fr)}}
/* long localized status labels (de, fr, ru …) wrap inside the interface matrix instead of clipping */
.x8mx{overflow-x:auto}
.x8mx__t .x7st{white-space:normal;text-align:center;line-height:1.25}
/* phone: interface cards wide enough for long localized states; the service choice stacks for long-word languages */
@media (max-width:640px){
  .x8mx__c > li{width:86%}
  .x8mx__c ul li{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:8px}
  .x8mx__c .x7st{justify-self:end;white-space:normal;text-align:right;line-height:1.25}
}
@media (max-width:480px){
  :is(html[lang=de],html[lang=fr],html[lang=es],html[lang=it],html[lang=pt],html[lang=ru]) .x8seg{grid-template-columns:minmax(0,1fr)!important}
  :is(html[lang=de],html[lang=fr],html[lang=es],html[lang=it],html[lang=pt],html[lang=ru]) .x8seg__o span{min-height:48px;grid-template-columns:minmax(0,1fr) auto;align-items:center}
}
/* long compound words (de, ru …) hyphenate inside cards instead of overflowing */
.x8xc__t,.x8dc__n,.x8tier__b b,.x8seg__o b,.x8flow__n b,.x8 .x7lens b,.x8rec__h b,.x8alt a b,.x8pc b,.x8cs__t b,.x8wk__t b{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;min-width:0}

