:root {
  --c-bg:#ffffff;
  --c-panel:#f4f6fb;
  --c-navy:#0b1240;
  --c-cobalt:#1f3fd6;
  --c-lavender:#c9cffb;
  --c-border:#e3e7f0;
  --c-accent:#1450f0;
  --c-accent-dark:#0b2fa8;
  --c-text:#0e1330;
  --c-muted:#5b6278;
  --c-success:#1f9d61;
  --c-warn:#c98a0a;
  --c-error:#d63a3a;
  --c-kw-a:#7b4dff;
  --c-kw-b:#e0479e;
  --c-white:#ffffff;
  --c-clear:transparent;
  --c-on-dark-88:rgba(255,255,255,.88);
  --c-on-dark-72:rgba(255,255,255,.72);
  --c-on-dark-48:rgba(255,255,255,.48);
  --c-on-dark-28:rgba(255,255,255,.28);
  --c-on-dark-16:rgba(255,255,255,.16);
  --c-on-dark-08:rgba(255,255,255,.08);
  --c-glow-a:rgba(31,63,214,.5);
  --c-glow-b:rgba(123,77,255,.26);
  --c-shade:rgba(11,18,64,.32);
  --c-shade-soft:rgba(14,19,48,.05);
  --c-btn-shade:rgba(5,10,40,.55);
  --c-accent-soft:rgba(20,80,240,.14);
  --c-success-soft:rgba(31,157,97,.16);
  --grad-canvas:linear-gradient(180deg,var(--c-navy) 0%,var(--c-navy) 9%,var(--c-cobalt) 60%,var(--c-lavender) 100%);
  --grad-feature:linear-gradient(135deg,var(--c-navy),var(--c-cobalt));
  --grad-kw:linear-gradient(90deg,var(--c-kw-a),var(--c-kw-b));
  --grad-device:linear-gradient(165deg,var(--c-accent) 0%,var(--c-kw-a) 62%,var(--c-kw-b) 100%);
  --grad-screen:linear-gradient(172deg,var(--c-cobalt) 0%,var(--c-navy) 78%);
  --font-display:'Inter','Noto Sans SC',-apple-system,BlinkMacSystemFont,'PingFang SC','Hiragino Sans','Apple SD Gothic Neo','Microsoft YaHei',sans-serif;
  --font-body:'Inter','Noto Sans SC',-apple-system,BlinkMacSystemFont,'PingFang SC','Hiragino Sans','Apple SD Gothic Neo','Microsoft YaHei',sans-serif;
  --font-mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  --weight-body:400;
  --weight-title:500;
  --text-xs:12px;
  --text-sm:14px;
  --text-nav:15px;
  --text-body:16px;
  --text-lead:20px;
  --text-h1:clamp(34px,1.9vw + 20.6px,48px);
  --text-h2:clamp(24px,1.2vw + 18px,36px);
  --text-h3:clamp(20px,1vw + 16px,26px);
  --track-title:-.02em;
  --track-small:-.01em;
  --r-zero:0;
  --r-canvas:40px;
  --r-panel:32px;
  --r-card:28px;
  --r-group:14px;
  --r-btn:12px;
  --r-mark:9px;
  --r-small:6px;
  --r-shot:10px;
  --r-pill:999px;
  --r-circle:50%;
  --r-line:2px;
  --r-handset:32px;
  --r-screen:26px;
  --r-ring-1:22px;
  --r-ring-2:16px;
  --sh-card:0 1px 2px var(--c-shade-soft),0 28px 52px -40px var(--c-shade);
  --sh-btn:inset 0 1px 0 var(--c-on-dark-28),0 12px 26px -14px var(--c-btn-shade);
  --sh-line:0 1px 0 var(--c-border);
  --nav-h:72px;
  --card-h:336px;
  --wrap:1180px;
  --header-wrap:1384px;
  --gutter:24px;
  --section-gap:140px;
  --ease:ease;
  --time-fast:.2s;
  --time-reveal:.6s;
}
*,*::before,*::after { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:calc(var(--nav-h) + 24px); }
html.nav-open { overflow:hidden; }
body { margin:0; background:var(--c-bg); color:var(--c-text); font-family:var(--font-body); font-size:var(--text-body); font-weight:var(--weight-body); line-height:1.6; -webkit-font-smoothing:antialiased; }
body.has-solid-header { padding-top:var(--nav-h); }
h1,h2,h3,h4,p,dl,dd,figure { margin:0; }
h1,h2,h3,h4 { font-family:var(--font-display); font-weight:var(--weight-title); letter-spacing:var(--track-title); text-wrap:balance; overflow-wrap:break-word; }
h1 { font-size:var(--text-h1); line-height:1.14; }
h2 { font-size:var(--text-h2); line-height:1.25; }
h3 { font-size:var(--text-h3); line-height:1.35; }
a { color:var(--c-accent); text-underline-offset:4px; }
a:hover { color:var(--c-accent-dark); }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
button:disabled { cursor:not-allowed; }
img,svg { max-width:100%; vertical-align:middle; }
svg,.badge__dot,.status-dot { flex-shrink:0; }
img { height:auto; }
button,a { -webkit-tap-highlight-color:var(--c-accent-soft); }
:focus-visible { outline:2px solid var(--c-accent); outline-offset:4px; border-radius:var(--r-small); }
[hidden] { display:none !important; }
code,kbd,pre { font-family:var(--font-mono); }
code { overflow-wrap:anywhere; font-size:.9em; }
pre { max-width:100%; min-width:0; overflow-x:auto; padding:20px; border:1px solid var(--c-border); border-radius:var(--r-group); background:var(--c-panel); color:var(--c-text); line-height:1.8; }
pre code { overflow-wrap:normal; word-break:normal; white-space:pre; }
.wrap { width:100%; max-width:var(--wrap); margin-inline:auto; padding-inline:var(--gutter); }
.section { margin-top:var(--section-gap); padding-top:0; padding-bottom:0; }
.section:last-child { margin-bottom:var(--section-gap); }
.section__heading { margin-bottom:32px; }
.section__heading p { margin-top:14px; max-width:680px; color:var(--c-muted); }
.panel { padding:40px; border:1px solid var(--c-border); border-radius:var(--r-panel); background:var(--c-panel); color:var(--c-text); }
.card { padding:28px; border:1px solid var(--c-border); border-radius:var(--r-card); background:var(--c-bg); color:var(--c-text); min-width:0; }
.card p { margin-top:12px; color:var(--c-muted); }
.grid-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.grid-pair > *, .grid-trio > *, .prose > *, .panel > * { min-width:0; }
.grid-trio { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.nowrap { white-space:nowrap; }
.muted { color:var(--c-muted); }
.kw { background:var(--grad-kw); -webkit-background-clip:text; background-clip:text; color:var(--c-clear); }
.prose { max-width:800px; min-width:0; overflow-wrap:break-word; }
.prose p,.prose ul,.prose ol,.prose pre,.prose blockquote,.prose figure { margin-block:20px; }
.prose h2 { margin-top:64px; margin-bottom:24px; }
.prose h3 { margin-top:36px; margin-bottom:16px; }
.prose li + li { margin-top:8px; }
.prose strong { font-weight:var(--weight-title); }
.prose section { scroll-margin-top:calc(var(--nav-h) + 24px); }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:50px; padding:10px 24px; border:1px solid var(--c-clear); border-radius:var(--r-btn); font-size:var(--text-body); font-weight:var(--weight-title); text-decoration:none; line-height:1.5; text-align:center; transition:transform var(--time-fast) var(--ease),background var(--time-fast) var(--ease); }
.btn:hover { transform:translateY(-1px); }
.btn svg { width:18px; height:18px; }
.btn--primary { background:var(--c-accent); color:var(--c-white); box-shadow:var(--sh-btn); }
.btn--primary:hover,.btn--primary.is-hover { background:var(--c-accent-dark); color:var(--c-white); }
.btn--ghost { background:var(--c-on-dark-08); color:var(--c-white); border-color:var(--c-on-dark-48); }
.btn--ghost:hover { background:var(--c-accent-dark); color:var(--c-white); }
.btn--secondary { background:var(--c-panel); color:var(--c-text); border-color:var(--c-border); }
.btn--secondary:hover { background:var(--c-bg); color:var(--c-accent); }
.btn:disabled,.btn[aria-disabled="true"] { background:var(--c-panel); color:var(--c-muted); border-color:var(--c-border); box-shadow:none; transform:none; }
.btn.is-focus { outline:2px solid var(--c-accent); outline-offset:4px; }
.btn__arrow { font-size:var(--text-nav); opacity:.85; }
.button-row { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.masthead { position:fixed; inset:0 0 auto; z-index:100; background:var(--c-navy); color:var(--c-white); }
.masthead__bar { position:relative; z-index:2; max-width:min(100%,var(--header-wrap)); margin-inline:auto; padding-inline:28px; height:var(--nav-h); display:flex; align-items:center; gap:48px; }
.brand { display:flex; align-items:center; gap:12px; color:inherit; text-decoration:none; flex-shrink:0; min-width:0; }
.brand:hover { color:inherit; }
.brand__mark { display:block; width:32px; height:32px; flex-shrink:0; border-radius:var(--r-circle); background:var(--c-white); color:var(--c-text); box-shadow:0 0 0 1px var(--c-on-dark-28); }
.brand__name { font-family:var(--font-display); font-size:var(--text-body); font-weight:var(--weight-title); letter-spacing:var(--track-small); white-space:nowrap; }
.tabs { flex:1 1 auto; min-width:0; }
.tabs__list { display:flex; align-items:center; list-style:none; margin:0; padding:0; gap:30px; }
.tabs__link { position:relative; display:flex; align-items:center; min-height:44px; height:var(--nav-h); font-size:var(--text-nav); color:var(--c-on-dark-72); text-decoration:none; white-space:nowrap; }
.tabs__link:hover { color:var(--c-white); }
.tabs__link::after { content:""; position:absolute; inset:auto 0 16px; height:2px; border-radius:var(--r-line); background:var(--c-white); color:var(--c-text); transform:scaleX(0); opacity:0; transition:transform .25s var(--ease),opacity .25s var(--ease); }
.tabs__link:hover::after { transform:scaleX(.5); opacity:.5; }
.tabs__link[aria-current="page"] { color:var(--c-white); font-weight:var(--weight-title); }
.tabs__link[aria-current="page"]::after { transform:scaleX(1); opacity:1; }
.header-tools { position:relative; display:flex; align-items:center; gap:12px; flex-shrink:0; margin-left:auto; }
.lang { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:36px; padding:6px 14px; border-radius:var(--r-pill); border:1px solid var(--c-on-dark-28); background:var(--c-on-dark-08); color:var(--c-white); font-size:var(--text-sm); white-space:nowrap; }
.lang svg { width:16px; height:16px; }
.lang__caret { font-size:11px; }
.lang__short { display:none; }
.lang-menu { position:absolute; right:0; top:calc(100% + 12px); width:200px; padding:8px; list-style:none; margin:0; border:1px solid var(--c-border); border-radius:var(--r-group); background:var(--c-bg); color:var(--c-text); box-shadow:var(--sh-card); }
.lang-menu a { display:flex; align-items:center; min-height:44px; width:100%; padding:8px 12px; text-decoration:none; border-radius:var(--r-small); color:var(--c-text); }
.lang-menu a:hover,.lang-menu a[aria-current="true"] { background:var(--c-panel); color:var(--c-accent); }
.menu-toggle { display:none; align-items:center; justify-content:center; min-width:44px; min-height:44px; border:1px solid var(--c-on-dark-28); border-radius:var(--r-btn); background:var(--c-clear); color:inherit; }
.menu-toggle svg { width:22px; height:22px; }
.mobile-drawer { display:none; }
.nav-veil { position:fixed; inset:var(--nav-h) 0 0; z-index:1; width:100%; border:0; background:var(--c-shade); color:var(--c-white); cursor:default; }
.masthead[data-state="solid"],.masthead[data-menu-open="true"] { background:var(--c-bg); color:var(--c-text); box-shadow:var(--sh-line); }
.masthead[data-state="solid"] .tabs__link { color:var(--c-muted); }
.masthead[data-state="solid"] .tabs__link:hover,.masthead[data-state="solid"] .tabs__link[aria-current="page"] { color:var(--c-text); }
.masthead[data-state="solid"] .tabs__link::after { background:var(--c-accent); color:var(--c-white); }
.masthead[data-state="solid"] .lang,.masthead[data-state="solid"] .menu-toggle,.masthead[data-menu-open="true"] .lang,.masthead[data-menu-open="true"] .menu-toggle { border-color:var(--c-border); background:var(--c-panel); color:var(--c-text); }
.masthead[data-state="overlay"] :focus-visible { outline-color:var(--c-white); }
.site-footer { padding-top:64px; padding-bottom:32px; border-top:1px solid var(--c-border); background:var(--c-panel); color:var(--c-text); }
.footer-grid { display:grid; grid-template-columns:1.35fr 1fr 1.5fr; gap:48px; }
.footer-grid > * { min-width:0; }
.footer-brand .brand__name { white-space:normal; }
.footer-brand p { margin-top:20px; max-width:360px; color:var(--c-muted); font-size:var(--text-sm); }
.footer-title { font-size:var(--text-body); margin-bottom:16px; }
.footer-links { display:grid; gap:10px; list-style:none; margin:0; padding:0; }
.footer-links a { display:inline-block; padding-block:4px; color:var(--c-muted); font-size:var(--text-sm); text-decoration:none; overflow-wrap:anywhere; }
.footer-links a:hover { color:var(--c-accent); }
.footer-languages { display:flex; flex-wrap:wrap; gap:8px 20px; margin-top:40px; }
.footer-languages a { min-height:44px; display:inline-flex; align-items:center; color:var(--c-muted); font-size:var(--text-sm); }
.footer-languages [aria-current="true"] { color:var(--c-accent); }
.footer-bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-top:24px; padding-top:24px; border-top:1px solid var(--c-border); font-size:var(--text-xs); color:var(--c-muted); }
.footer-legal { display:flex; flex-wrap:wrap; gap:20px; }
.footer-legal a { color:var(--c-muted); }
.reveal { opacity:1; }
html.reveal-ready .reveal:not(.shown) { opacity:0; transform:translateY(16px); }
html.reveal-ready .reveal { transition:opacity var(--time-reveal) var(--ease),transform var(--time-reveal) var(--ease); }
.hero { position:relative; padding-top:calc(var(--nav-h) + 28px); overflow-x:clip; }
.hero__canvas { position:absolute; inset:0 0 calc(var(--card-h) / 2); background:var(--grad-canvas); color:var(--c-white); border-radius:var(--r-zero) var(--r-zero) var(--r-canvas) var(--r-canvas); overflow:hidden; z-index:0; }
.hero__glow { position:absolute; left:-15%; right:-15%; bottom:-210px; height:430px; border-radius:var(--r-circle); background:radial-gradient(50% 50% at 50% 50%,var(--c-glow-a) 0%,var(--c-glow-b) 46%,var(--c-clear) 72%); color:var(--c-white); opacity:.75; animation:glow-drift 18s ease-in-out infinite; }
@keyframes glow-drift { 0%,100% { transform:translateX(-4%); opacity:.62; } 50% { transform:translateX(4%); opacity:.86; } }
.hero__intro { position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; text-align:center; padding-inline:24px; color:var(--c-white); }
.emblem { position:relative; width:64px; height:64px; }
.emblem__ring { position:absolute; left:50%; top:50%; width:96px; height:96px; margin:-48px 0 0 -48px; border-radius:var(--r-circle); border:1px solid var(--c-on-dark-16); }
.emblem__orbit { position:absolute; left:50%; top:50%; width:264px; height:78px; margin:-39px 0 0 -132px; border-radius:var(--r-circle); border:1px solid var(--c-on-dark-16); transform:rotate(-8deg); }
.emblem__orbit i { position:absolute; width:6px; height:6px; border-radius:var(--r-circle); background:var(--c-on-dark-72); color:var(--c-text); }
.emblem__orbit i:first-child { left:22px; top:10px; }
.emblem__orbit i:last-child { right:30px; bottom:8px; width:5px; height:5px; background:var(--c-lavender); color:var(--c-text); }
.mark-circle { position:relative; display:block; width:64px; height:64px; border-radius:var(--r-circle); background:var(--c-white); color:var(--c-text); box-shadow:0 0 0 1px var(--c-on-dark-28),0 10px 30px -12px var(--c-shade); }
.hero__title { margin-top:20px; font-size:clamp(26px,1.9vw + 20.6px,48px); color:var(--c-white); }
.hero__cta { margin-top:28px; display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.hero__lede { margin-top:20px; max-width:620px; font-size:var(--text-body); line-height:1.7; color:var(--c-on-dark-88); }
.hero__lede strong { color:var(--c-white); font-weight:var(--weight-title); }
.devices { margin:20px 0 0; padding:0; list-style:none; display:flex; align-items:center; justify-content:center; gap:22px; flex-wrap:wrap; font-size:13.5px; color:var(--c-on-dark-88); }
.devices__item a { display:inline-flex; align-items:center; gap:7px; color:inherit; text-decoration:none; min-height:28px; }
.devices__item svg { width:18px; height:18px; }
.devices__sep { width:1px; height:16px; background:var(--c-on-dark-28); color:var(--c-white); }
.devices__store a { display:inline-flex; align-items:center; min-height:28px; padding:2px 12px; border-radius:var(--r-pill); border:1px solid var(--c-on-dark-48); font-weight:var(--weight-title); color:inherit; text-decoration:none; }
.deck { position:relative; z-index:1; max-width:1376px; margin:36px auto 0; padding-inline:20px; display:flex; justify-content:center; gap:14px; }
.tcard { position:relative; flex:0 1 240px; min-width:0; height:var(--card-h); display:flex; flex-direction:column; padding:22px 20px 20px; border-radius:var(--r-card); border:1px solid var(--c-border); background:var(--c-bg); color:var(--c-text); box-shadow:var(--sh-card); overflow:hidden; }
.tcard--rule,.tcard--verify { flex-basis:292px; }
.tcard--device { flex-basis:256px; }
.tcard__head { display:flex; flex-direction:column; gap:2px; }
.tcard__title { font-size:var(--text-nav); font-weight:var(--weight-title); letter-spacing:var(--track-small); color:var(--c-text); }
.tcard__sub { font-size:12.5px; color:var(--c-muted); }
.tcard__foot { margin-top:auto; display:flex; align-items:center; gap:8px; font-size:var(--text-xs); line-height:1.5; color:var(--c-muted); }
.rules { margin-top:18px; }
.rules__tag { font-family:var(--font-mono); font-size:var(--text-xs); color:var(--c-muted); padding-bottom:8px; }
.rule { display:flex; align-items:flex-start; gap:8px; padding-block:10px; border-top:1px solid var(--c-border); }
.rule:last-child { border-bottom:1px solid var(--c-border); }
.rule code { font-size:var(--text-xs); letter-spacing:var(--track-small); color:var(--c-text); line-height:1.6; }
.rule__dot { flex:0 0 auto; width:6px; height:6px; margin-top:7px; border-radius:var(--r-circle); }
.rule__dot--proxy { background:var(--c-accent); color:var(--c-white); box-shadow:0 0 0 3px var(--c-accent-soft); }
.rule__dot--direct { background:var(--c-success); color:var(--c-white); box-shadow:0 0 0 3px var(--c-success-soft); }
.kw-proxy { color:var(--c-accent); font-weight:var(--weight-title); }
.kw-direct { color:var(--c-text); font-weight:var(--weight-title); }
.tcard--routing,.tcard--proto { background:var(--c-panel); color:var(--c-text); }
.group { margin-top:18px; background:var(--c-bg); color:var(--c-text); border:1px solid var(--c-border); border-radius:var(--r-group); overflow:hidden; }
.group__row { position:relative; display:flex; align-items:center; justify-content:space-between; min-height:46px; padding:8px 14px 8px 16px; font-size:var(--text-nav); color:var(--c-text); }
.group__row + .group__row::before { content:""; position:absolute; inset:0 0 auto 16px; height:1px; background:var(--c-border); color:var(--c-text); }
.group__chevron { color:var(--c-muted); }
.group__check { color:var(--c-accent); }
.tcard--device { background:var(--grad-device); color:var(--c-white); border-color:var(--c-on-dark-28); }
.tcard--device .tcard__title { color:var(--c-white); }
.tcard--device .tcard__sub { color:var(--c-white); }
.handset { position:absolute; left:50%; top:84px; width:150px; height:300px; margin-left:-75px; border-radius:var(--r-handset); border:1.5px solid var(--c-on-dark-88); box-shadow:0 0 0 5px var(--c-on-dark-08),0 0 34px var(--c-on-dark-28); }
.handset::before,.handset::after { content:""; position:absolute; width:3px; border-radius:var(--r-line); background:var(--c-on-dark-72); color:var(--c-text); }
.handset::before { left:-4px; top:72px; height:30px; }
.handset::after { right:-4px; top:94px; height:46px; }
.handset__screen { position:absolute; inset:6px; border-radius:var(--r-screen); background:var(--grad-screen); color:var(--c-white); overflow:hidden; }
.handset__island { position:absolute; top:10px; left:50%; width:44px; height:13px; margin-left:-22px; border-radius:var(--r-pill); background:var(--c-navy); color:var(--c-white); }
.handset__ring { position:absolute; border:1px solid var(--c-on-dark-28); }
.handset__ring--1 { inset:16% 13%; border-radius:var(--r-ring-1); }
.handset__ring--2 { inset:28% 25%; border-radius:var(--r-ring-2); border-color:var(--c-on-dark-48); }
.handset__ring--3 { inset:40% 37%; border-radius:var(--r-shot); border:0; background:var(--grad-kw); color:var(--c-white); box-shadow:0 0 26px var(--c-glow-b); }
.pills { margin:auto 0; display:flex; flex-direction:column; gap:10px; }
.pills__row { display:flex; flex-wrap:wrap; gap:8px; }
.pills__row--shift { justify-content:flex-end; }
.pill { display:inline-flex; align-items:center; max-width:100%; min-height:34px; padding:5px 14px; border-radius:var(--r-pill); background:var(--c-bg); color:var(--c-text); border:1px solid var(--c-border); font-size:13.5px; font-weight:var(--weight-title); overflow-wrap:anywhere; box-shadow:0 1px 2px var(--c-shade-soft); }
.verify__head { display:flex; align-items:center; gap:12px; }
.verify__head .mark-circle { width:46px; height:46px; flex-shrink:0; box-shadow:0 0 0 1px var(--c-border); }
.facts { margin-top:16px; }
.facts__row { padding-block:9px; border-top:1px solid var(--c-border); }
.facts__row:last-child { border-bottom:1px solid var(--c-border); }
.facts dt { font-size:11.5px; color:var(--c-muted); }
.facts dd { font-size:13.5px; font-weight:var(--weight-title); line-height:1.45; overflow-wrap:break-word; }
.facts__note { font-weight:var(--weight-body); color:var(--c-muted); font-size:var(--text-xs); }
.status-dot { width:7px; height:7px; border-radius:var(--r-circle); background:var(--c-accent); color:var(--c-white); box-shadow:0 0 0 3px var(--c-accent-soft); }
@media (max-width:1280px) {
  .masthead__bar { gap:28px; }
  .tabs__list { gap:24px; }
}
@media (max-width:1219px) {
  .deck { justify-content:flex-start; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-inline:20px; padding-bottom:4px; scrollbar-width:none; }
  .deck::-webkit-scrollbar { display:none; }
  .tcard,.tcard--rule,.tcard--verify,.tcard--device { flex:0 0 clamp(264px,78vw,292px); scroll-snap-align:start; }
}
@media (max-width:1100px) {
  .masthead__bar { padding-inline:var(--gutter); gap:16px; }
  .masthead .tabs { display:none; }
  .header-tools { margin-left:auto; }
  .menu-toggle { display:inline-flex; }
  .mobile-drawer:not([hidden]) { display:block; position:fixed; inset:var(--nav-h) 0 auto; z-index:3; padding:16px var(--gutter) 28px; max-height:calc(100dvh - var(--nav-h)); overflow-y:auto; overscroll-behavior:contain; background:var(--c-bg); color:var(--c-text); border-top:1px solid var(--c-border); box-shadow:var(--sh-line); }
  .mobile-drawer ul { list-style:none; margin:0; padding:0; }
  .mobile-drawer a { display:flex; align-items:center; width:100%; min-height:48px; padding:12px; text-decoration:none; color:var(--c-text); border-bottom:1px solid var(--c-border); }
  .mobile-drawer a[aria-current] { color:var(--c-accent); }
  .mobile-drawer__languages { margin-top:24px; }
  .mobile-drawer__languages p { padding-inline:12px; color:var(--c-muted); font-size:var(--text-sm); }
  .footer-grid { gap:28px; }
}
@media (max-width:768px) {
  :root { --text-h1:clamp(24px,4vw,30px); }
  .hero__title { font-size:clamp(24px,4vw,30px); }
  .grid-trio { grid-template-columns:minmax(0,1fr); }
  .footer-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .footer-brand { grid-column:1 / -1; }
}
@media (max-width:640px) {
  :root { --gutter:20px; --card-h:320px; --r-canvas:32px; }
  .grid-pair { grid-template-columns:minmax(0,1fr); }
  .panel { padding:24px 20px; }
  .card { padding:24px 20px; }
  .hero { padding-top:calc(var(--nav-h) + 28px); }
  .hero__intro { padding-inline:var(--gutter); }
  .deck { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; padding-inline:var(--gutter); overflow:visible; scroll-snap-type:none; }
  .hero__lede { font-size:var(--text-nav); }
  .devices { gap:14px 18px; }
  .devices__sep { display:none; }
  .brand__name { font-size:var(--text-nav); }
  .lang__label { display:none; }
  .lang__short { display:inline; }
  .lang { padding-inline:10px; min-height:44px; }
  .header-tools { gap:8px; margin-left:auto; }
  .masthead__bar { gap:8px; }
  .emblem__orbit { width:220px; margin-left:-110px; }
  .handset { top:80px; }
  .tilt,[data-tilt] { transform:none !important; }
}
@media (max-width:360px) {
  :root { --gutter:16px; }
  .brand { gap:8px; }
  .brand__name { font-size:13px; }
  .brand__mark { width:28px; height:28px; }
  .lang svg { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .hero__glow { animation:none; }
  .btn,.tabs__link::after,html.reveal-ready .reveal { transition:none; }
  html.reveal-ready .reveal:not(.shown) { opacity:1; transform:none; }
}