@charset "UTF-8";

:root {
 --paper:var(--tr-paper-0);--paper-2:var(--tr-paper-50);--surface:var(--tr-paper-0);
 --ink:var(--tr-token-color-text-primary-light);--ink-2:var(--tr-token-color-text-secondary-light);--muted:var(--tr-token-color-text-secondary-light);
 --line:var(--tr-paper-200);--dark:var(--tr-token-color-ink-950);--dark-2:var(--tr-token-color-ink-900);--on-dark:var(--tr-token-color-text-primary-dark);
 --coral-brand:var(--tr-token-color-coral-brand-500);--coral-action:var(--tr-token-color-coral-action-700);--coral-hover:var(--tr-token-color-coral-action-hover-800);
 --moss:var(--tr-token-color-petrol-700);--blue:var(--tr-token-color-signal-blue-700);--success:var(--tr-token-color-semantic-success-text);--warning:var(--tr-token-color-semantic-warning-text);
 --focus:var(--tr-token-focus-ring-color);--font-ui:var(--tr-token-font-ui);--font-mono:var(--tr-token-font-mono);
 --r-sm:var(--tr-token-size-radius-sm);--r-md:var(--tr-token-size-radius-md);--r-lg:var(--tr-token-size-radius-lg);--max:var(--tr-token-layout-marketing-max-width);
 --shadow:0 16px 48px color-mix(in srgb,var(--tr-token-color-ink-950) 8%,transparent);--shadow-soft:0 8px 24px color-mix(in srgb,var(--tr-token-color-ink-950) 6%,transparent);
 --step--1:var(--c2-type-caption);--step-0:var(--c2-type-body-md);--step-1:var(--c2-type-body-lg);--step-2:var(--c2-type-title-md);--step-3:var(--c2-type-title-lg);--step-4:var(--c2-type-display-md);--step-5:var(--c2-type-display-lg);
 --local-bg:var(--surface);--local-fg:var(--ink);--local-muted:var(--muted);--step-number-color:var(--coral-action);
}

*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-ui);font-size:1rem;line-height:1.65;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}a,button,[tabindex]{outline:0}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip{position:absolute;left:12px;top:-80px;z-index:9999;background:var(--dark);color:white;padding:10px 14px;border-radius:8px}.skip:focus{top:12px}.proto-bar{background:var(--dark);color:var(--on-dark);font-size:var(--c2-type-caption);letter-spacing:.04em;text-align:center;padding:7px 12px}.header{position:sticky;top:0;z-index:100;background:var(--paper);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{max-width:var(--max);height:72px;margin:auto;padding:0 24px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand-path{width:34px;height:16px;position:relative;overflow:hidden}.brand-path:before,.brand-path:after{content:"";position:absolute;height:3px;border-radius:3px;background:var(--coral-brand);transform:skewX(-30deg)}.brand-path:before{width:32px;left:0;top:4px}.brand-path:after{width:20px;left:9px;top:10px}.brand-main{font-weight:750;letter-spacing:-.035em;font-size:var(--c2-type-title-sm)}.brand-cn{font-size:var(--c2-type-caption);color:var(--muted);margin-left:2px}.nav-links{display:flex;gap:22px;margin-left:auto;align-items:center}.nav-links a{font-size:0.875rem;color:var(--ink-2);padding:8px 0}.nav-links a:hover{color:var(--coral-action)}.nav-actions{display:flex;gap:10px}.menu-btn{display:none;border:1px solid var(--line);background:var(--surface);border-radius:10px;width:44px;height:44px;align-items:center;justify-content:center}.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:10px;border:1px solid transparent;font-weight:680;font-size:0.875rem;cursor:pointer;transition:transform .16s ease,background .16s ease,border-color .16s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--coral-action);color:var(--surface)}.btn-primary:hover{background:var(--coral-hover)}.btn-secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn-dark{background:var(--dark);color:var(--surface)}.btn-text{padding-inline:0;min-height:auto;color:var(--coral-action)}.container{max-width:var(--max);margin:auto;padding:0 24px}.hero{min-height:720px;padding:92px 0 72px;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);gap:64px;align-items:center}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--coral-action);font-size:var(--c2-type-caption);font-weight:750;letter-spacing:.12em;text-transform:uppercase}.eyebrow:before{content:"";width:26px;height:2px;background:var(--coral-brand)}h1,h2,h3,p{margin-top:0}h1{font-size:var(--step-5);line-height:.98;letter-spacing:-.065em;margin:20px 0 28px;word-break:keep-all;overflow-wrap:normal}h1 .accent{color:var(--coral-action)}.lede{font-size:var(--step-1);color:var(--ink-2);max-width:680px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:52px}.quick{padding:18px;border-top:2px solid var(--ink);background:var(--surface)}.quick strong{display:block;margin-bottom:6px}.quick span{font-size:var(--c2-type-body-sm);color:var(--muted)}.motion-field{position:relative;min-height:530px}.motion-svg{position:absolute;inset:0;width:100%;height:100%}.motion-svg path{fill:none;stroke:var(--line);stroke-width:1.2;stroke-dasharray:5 9;animation:dash 16s linear infinite}.motion-svg path.hot{stroke:var(--coral-brand);stroke-width:2;stroke-dasharray:none}.motion-svg circle{fill:var(--paper);stroke:var(--ink);stroke-width:1.5}.work-object{position:absolute;right:2%;top:8%;width:min(420px,94%);background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden;transform:rotate(1.2deg)}.work-top{display:flex;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line);font-size:var(--c2-type-caption)}.work-body{padding:22px}.work-title{font-size:1.3125rem;font-weight:720;line-height:1.25}.chips{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.chip,.status,.evidence{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border-radius:99px;font-size:var(--c2-type-caption);font-weight:680;border:1px solid var(--line);background:var(--surface)}.evidence{background:var(--paper-2);color:var(--muted)}.doc-stack{display:grid;gap:10px;margin-top:18px}.doc-row{padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper-2);display:flex;justify-content:space-between;gap:12px;font-size:var(--c2-type-body-sm)}.doc-row strong{font-weight:680}.human-note{position:absolute;left:0;bottom:2%;width:260px;padding:20px;background:var(--paper-2);border:1px solid var(--line);border-radius:3px 18px 4px 16px;box-shadow:var(--shadow-soft);transform:rotate(-3deg);font-size:0.875rem}.human-note:before{content:"HUMAN SIGNAL";display:block;color:var(--coral-action);font:650 var(--c2-type-caption)/1.45 var(--font-mono);letter-spacing:.12em;margin-bottom:12px}.human-note em{font-family:Georgia,"Noto Serif SC",serif;font-size:var(--c2-type-title-sm)}.section{padding:110px 0;border-top:1px solid var(--line)}.section-dark{background:var(--dark);color:var(--on-dark);border:0}.section-head{display:grid;grid-template-columns:180px 1fr;gap:32px;margin-bottom:52px}.section-index{font:700 var(--c2-type-caption)/1 var(--font-mono);color:var(--coral-brand);letter-spacing:.1em}.section h2{font-size:var(--step-4);line-height:1.08;letter-spacing:-.045em;max-width:820px;margin-bottom:20px;word-break:keep-all}.muted{color:var(--muted)}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:24px;position:relative}.card.dark{background:var(--dark-2);border-color:var(--tr-token-color-ink-700)}.card h3{font-size:var(--step-2);line-height:1.2;margin-bottom:12px}.card .icon{width:42px;height:42px;margin-bottom:24px}.card-link{display:inline-flex;margin-top:18px;color:var(--coral-action);font-weight:700;font-size:0.875rem}.task-switcher{display:grid;grid-template-columns:260px 1fr;gap:24px}.task-tabs{display:grid;gap:10px}.task-tab{width:100%;text-align:left;border:1px solid var(--line);background:var(--surface);padding:16px;border-radius:12px;cursor:pointer}.task-tab[aria-selected="true"]{border-color:var(--coral-action);box-shadow:inset 3px 0 var(--coral-action)}.task-tab strong{display:block}.task-tab span{font-size:var(--c2-type-caption);color:var(--muted)}.task-panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px}.flow{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:28px 0}.flow-step{min-height:110px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--paper-2)}.flow-step b{display:block;font-size:var(--c2-type-caption);color:var(--coral-action);margin-bottom:10px}.flow-step span{font-size:var(--c2-type-body-sm)}.result-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.result-file{padding:20px;background:var(--dark);color:white;border-radius:14px}.result-file small{color:var(--tr-token-color-text-secondary-dark)}.metric-list{display:grid;gap:10px}.metric{padding:14px;border:1px solid var(--line);border-radius:10px;font-size:var(--c2-type-body-sm)}.flagship{padding:34px;min-height:330px;display:flex;flex-direction:column;justify-content:space-between}.flagship.talk{background:var(--dark);color:var(--surface)}.flagship.one{background:var(--paper-2);border-color:var(--line)}.flagship p{max-width:50ch}.product-card{min-height:290px}.product-card .top{display:flex;justify-content:space-between;gap:12px}.product-card .product-icon{width:32px;height:32px}.surface-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.surface{padding:28px;border-radius:22px;background:var(--surface);border:1px solid var(--line);overflow:hidden}.surface.dark{background:var(--dark);color:var(--surface);border-color:var(--tr-token-color-ink-700)}.surface-screen{margin-top:24px;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--paper-2)}.surface-screen img{width:100%;height:300px;object-fit:cover;object-position:top}.case-card{overflow:hidden;padding:0}.case-visual{height:210px;background:linear-gradient(145deg,var(--tr-token-color-ink-900),var(--tr-token-color-ink-800));position:relative;overflow:hidden}.case-visual:before{content:"";position:absolute;left:15%;top:18%;width:68%;height:64%;border:1px solid color-mix(in srgb,var(--surface) 32%,transparent);border-radius:20px;transform:rotate(-4deg);background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 8%,transparent),color-mix(in srgb,var(--coral-brand) 28%,transparent))}.case-body{padding:24px}.case-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.steps{counter-reset:item;display:grid;gap:0}.step{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:26px 0;border-bottom:1px solid var(--line)}.step:before{counter-increment:item;content:"0" counter(item);font:700 var(--c2-type-caption)/1 var(--font-mono);color:var(--step-number-color,var(--coral-action))}.team-card{min-height:340px}.avatar{width:100%;height:170px;border-radius:10px;background:linear-gradient(135deg,var(--paper-2),var(--line));position:relative;overflow:hidden;margin-bottom:20px}.avatar:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:var(--tr-token-color-ink-700);left:50%;top:35%;transform:translate(-50%,-50%);box-shadow:0 90px 0 42px var(--line)}.price-layout{display:grid;grid-template-columns:1fr 360px;gap:24px}.policy{padding:28px;background:var(--paper-2);border:1px solid var(--line);border-radius:18px}.notice{padding:16px 18px;border-left:4px solid var(--coral-brand);background:var(--paper-2);color:var(--ink);margin:20px 0}.comparison{width:100%;border-collapse:collapse;background:var(--surface);border-radius:16px;overflow:hidden}.comparison th,.comparison td{padding:15px;border-bottom:1px solid var(--line);text-align:left}.comparison th{background:var(--paper-2)}.footer{background:var(--dark);color:var(--on-dark);padding:70px 0 34px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:28px}.footer h4{font-size:var(--c2-type-body-sm);color:var(--surface)}.footer a{display:block;color:var(--tr-token-color-text-secondary-dark);font-size:var(--c2-type-body-sm);margin:9px 0}.footer-bottom{border-top:1px solid var(--tr-token-color-ink-700);margin-top:46px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:var(--c2-type-caption);color:var(--tr-token-color-text-secondary-dark)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px}.review-card small{color:var(--muted)}.mobile-panel{display:none;position:fixed;inset:112px 12px auto 12px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px;z-index:99}.mobile-panel.open{display:block}.mobile-panel a{display:block;padding:12px;border-bottom:1px solid var(--line)}.mobile-panel .btn{margin-top:14px;width:100%}.breadcrumb{display:flex;gap:8px;font-size:var(--c2-type-caption);color:var(--muted);padding-top:28px}.page-hero{padding:80px 0 70px}.page-hero h1{font-size:var(--step-4);max-width:900px}.page-hero .lede{max-width:760px}.stat-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat{padding:22px;border-right:1px solid var(--line)}.stat:last-child{border-right:0}.stat strong{display:block;font-size:1.25rem}.timeline{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.timeline .node{min-height:140px;padding:16px;border-radius:12px;background:var(--surface);border:1px solid var(--line)}.timeline .node.current{border-color:var(--coral-action);box-shadow:inset 0 3px var(--coral-action)}.timeline .node.future{background:var(--paper-2);color:var(--muted)}.form-choice{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.choice{border:1px solid var(--line);background:var(--surface);padding:18px;border-radius:12px}.legal-list{display:grid;gap:12px}.legal-item{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:12px}@keyframes dash{to{stroke-dashoffset:-80}}
@media(max-width:980px){.nav-links{display:none}.menu-btn{display:flex;margin-left:auto}.nav-actions .btn-secondary{display:none}.hero-grid,.section-head,.task-switcher,.surface-grid,.price-layout{grid-template-columns:1fr}.hero{padding-top:64px}.motion-field{min-height:500px;max-width:620px}.section-head{gap:12px}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.3fr repeat(2,1fr)}.timeline{grid-template-columns:repeat(4,1fr)}.form-choice{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.proto-bar{font-size:var(--c2-type-caption)}.nav{height:64px;padding:0 16px}.brand-cn{display:none}.nav-actions{display:none}.container{padding:0 16px}.hero{min-height:auto;padding:62px 0}.hero-grid{gap:34px}.hero h1{font-size:clamp(2.55rem,13vw,4rem);line-height:1.02}.lede{font-size:1rem}.hero-actions{display:grid}.hero-actions .btn{width:100%}.quick-grid{grid-template-columns:1fr;margin-top:36px}.motion-field{min-height:470px}.work-object{right:0;top:0;width:95%;transform:none}.human-note{left:3%;bottom:0;width:72%}.section{padding:78px 0}.section h2{font-size:clamp(2rem,9vw,3rem)}.grid-2,.grid-3,.grid-4,.review-grid{grid-template-columns:1fr}.task-tabs{grid-template-columns:1fr}.task-panel{padding:18px}.flow{grid-template-columns:1fr}.flow-step{min-height:auto}.result-grid{grid-template-columns:1fr}.surface-screen img{height:220px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.stat-strip{grid-template-columns:1fr}.stat{border-right:0;border-bottom:1px solid var(--line)}.stat:last-child{border-bottom:0}.timeline{grid-template-columns:1fr}.form-choice{grid-template-columns:1fr}.page-hero{padding:52px 0}.page-hero h1{font-size:clamp(2.2rem,11vw,3.4rem)}.breadcrumb{padding-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.btn:hover{transform:none}}

/* C2 accessibility hardening: grid/flex children may shrink, headings may wrap,
   and 200% text enlargement must not create horizontal scrolling. */
.hero-grid>*,.section-head>*,.task-switcher>*,.surface-grid>*,.price-layout>*,
.grid-2>*,.grid-3>*,.grid-4>*,.result-grid>*,.quick-grid>*,.footer-grid>*,
.timeline>*,.form-choice>*,.stat-strip>*,.steps>*,.card,.surface,.task-panel,
.motion-field,.work-object,.quick,.doc-row{min-width:0}
h1,h2,h3,.section-index,.lede,.muted,p,.btn,.chip,.status,.evidence,.doc-row,
.comparison th,.comparison td{max-width:100%;overflow-wrap:anywhere}
h1,h2{word-break:normal;line-break:strict;text-wrap:balance}
.hero-actions,.chips,.work-top,.doc-row{min-width:0}
.comparison{table-layout:fixed}

@media(max-width:640px){
  .section-head{display:block;min-width:0}
  .section-index{margin-bottom:14px}
  .section h2{font-size:clamp(1.72rem,7.8vw,2.65rem);line-height:1.12}
  .page-hero h1{font-size:clamp(2rem,9.5vw,3.1rem);line-height:1.08}
  .hero h1{font-size:clamp(2.35rem,11.5vw,3.7rem)}
  .hero-actions,.hero-actions .btn{min-width:0;max-width:100%}
  .hero-actions .btn{white-space:normal;text-align:center;overflow-wrap:anywhere}
  .quick-grid,.quick,.motion-field{width:100%;max-width:100%}
  .work-top,.doc-row{flex-wrap:wrap}
  .doc-row{align-items:flex-start}
  .comparison th,.comparison td{padding:12px 10px;vertical-align:top}
  .brand{min-width:0}
}
@media(max-width:480px){
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>div:first-child{grid-column:auto}
}

/* RC1 component recipes: establish local foreground/background pairs on EVERY surface. */
body{font-size:var(--c2-type-body-lg);line-height:var(--tr-token-font-line-height-body)}
.section-dark,.surface.dark,.card.dark,.flagship.talk,.result-file,.footer,.proto-bar{
 --local-bg:var(--dark);--local-fg:var(--on-dark);--local-muted:var(--tr-token-color-text-secondary-dark);--step-number-color:var(--on-dark);
 background:var(--local-bg);color:var(--local-fg)
}
.card,.surface,.task-panel,.task-tab,.work-object,.quick,.comparison,.flow-step,.chip,.choice,.policy,.review-card,.legal-item,.human-note,.metric,.doc-row{
 --local-bg:var(--surface);--local-fg:var(--ink);--local-muted:var(--muted);--step-number-color:var(--coral-action);background:var(--local-bg);color:var(--local-fg)
}
.card.dark,.surface.dark,.flagship.talk,.result-file{
 --local-bg:var(--dark);--local-fg:var(--on-dark);--local-muted:var(--tr-token-color-text-secondary-dark);--step-number-color:var(--on-dark);background:var(--local-bg);color:var(--local-fg)
}
.flagship.one,.policy,.human-note,.flow-step,.timeline .node.future,.doc-row{--local-bg:var(--paper-2);background:var(--local-bg);color:var(--local-fg,var(--ink))}
p,.muted,.lede,.card p,.task-tab span,.result-file small{color:var(--local-muted,var(--muted))}
h1,h2,h3,h4,.flow-step span,.comparison th,.comparison td{color:var(--local-fg,var(--ink))}
.footer .brand-cn,.footer a,.footer-bottom{color:var(--tr-token-color-text-secondary-dark)}
.section-index{color:var(--coral-action);line-height:var(--tr-token-font-line-height-dense)}
.section-dark>.container>.section-head .section-index{color:var(--on-dark)}
.comparison{border-radius:var(--r-md);color:var(--ink)}.comparison th{background:var(--paper-2)}.comparison td{background:var(--surface)}
.comparison th,.comparison td{vertical-align:top;font-size:var(--c2-type-body-md);overflow-wrap:anywhere}
.status,.evidence,.chip{border-radius:var(--tr-token-size-radius-xs);font-size:var(--c2-type-caption);line-height:var(--tr-token-font-line-height-dense)}
.status.controlled{background:var(--tr-token-color-semantic-desktop-bg);color:var(--tr-token-color-semantic-desktop-text);border-color:currentColor}
.status.internal{background:var(--tr-token-color-semantic-internal-bg);color:var(--tr-token-color-semantic-internal-text);border-color:currentColor}
.status.service{background:var(--tr-token-color-semantic-service-bg);color:var(--tr-token-color-semantic-service-text);border-color:currentColor}
.status.building,.status.research{background:var(--tr-token-color-semantic-concept-bg);color:var(--tr-token-color-semantic-concept-text);border-color:currentColor}
.evidence{background:var(--paper-2);color:var(--ink)}
.timeline .node.future{color:var(--ink)}.timeline .node.future p{color:var(--muted)}
.btn,.menu-btn{border-radius:var(--r-sm);font-size:var(--c2-type-body-md);font-weight:var(--tr-token-font-weight-semibold);line-height:var(--tr-token-font-line-height-dense);min-height:var(--tr-token-size-control-height-prominent);height:auto;transition:background var(--tr-token-motion-duration-ms-fast) var(--tr-token-motion-easing-standard),border-color var(--tr-token-motion-duration-ms-fast) var(--tr-token-motion-easing-standard)}
.btn:hover{transform:none}.btn-primary,.btn-dark{color:var(--surface)}.btn-primary{background:var(--coral-action)}.btn-primary:hover{background:var(--coral-hover)}
.btn-secondary{color:var(--ink);border-color:var(--muted)}.btn-text,.card-link{color:var(--coral-action)}
.card.dark .card-link,.surface.dark .card-link,.section-dark>.container>.hero-actions .btn-text{color:var(--on-dark)}
.work-object,.surface,.mobile-panel,.task-panel{border-radius:var(--r-lg)}.result-file,.surface-screen{border-radius:var(--r-md)}
.doc-row,.flow-step,.metric,.avatar{border-radius:var(--r-sm)}
.proto-bar{font-size:var(--c2-type-caption)}.human-note:before{font-size:var(--c2-type-caption);color:var(--coral-action);line-height:var(--tr-token-font-line-height-dense)}
.container,.nav{padding-inline:var(--tr-token-layout-desktop-gutter)}
.lede{max-width:var(--tr-token-layout-reading-max-width)}
h1{font-size:var(--c2-type-display-lg);line-height:var(--tr-token-font-line-height-heading);letter-spacing:-.035em}
.page-hero h1,.section h2{font-size:var(--c2-type-display-md);line-height:var(--tr-token-font-line-height-heading);letter-spacing:-.025em}
h1,h2{word-break:normal;overflow-wrap:normal;text-wrap:wrap;max-width:100%}
.heading-phrase{display:inline-block;max-width:100%;vertical-align:baseline;overflow-wrap:anywhere;word-break:normal}
h1 .accent{color:var(--coral-action)}
.nav{min-height:72px;height:auto;padding-block:12px}.brand-main{font-size:var(--c2-type-title-sm)}
.nav-links a{font-size:var(--c2-type-body-sm)}
.card-link{font-size:var(--c2-type-body-md)}
.mobile-panel{position:static;margin:0 16px 12px;padding:16px;max-height:65vh;overflow:auto;box-shadow:var(--shadow-soft)}
.mobile-panel[hidden],[hidden]{display:none}.mobile-panel.open{display:block}
/* RC4 O1: opening an enhanced menu must not unstick the header. */
#main:focus{outline:none}#main,[id]{scroll-margin-top:112px}
.contact-branch{margin-top:24px}.contact-branch h2{font-size:var(--c2-type-title-lg)}
.contact-branch:focus{outline:3px solid var(--focus);outline-offset:3px}
.choice[aria-current="true"]{border-color:var(--coral-action);box-shadow:inset 3px 0 var(--coral-action)}
.filter-controls{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.filter-controls a{padding:10px 16px;border:1px solid var(--muted);border-radius:var(--r-sm)}
.filter-controls a[aria-current="true"]{background:var(--coral-action);color:var(--surface);border-color:var(--coral-action)}
@media(max-width:980px){h1{font-size:var(--c2-type-display-md)}.hero-grid{gap:40px}.flow{grid-template-columns:1fr}.motion-field{min-height:0;display:grid;gap:20px}.motion-svg{display:none}.work-object,.human-note{position:relative;inset:auto;width:100%;max-width:100%;transform:none}.hero{min-height:0}.work-title{font-size:var(--c2-type-title-md)}}
@media(max-width:640px){.container,.nav{padding-inline:var(--tr-token-layout-mobile-gutter)}.hero h1,.page-hero h1{font-size:var(--c2-type-display-sm);line-height:var(--tr-token-font-line-height-heading)}.section h2{font-size:var(--c2-type-title-lg);line-height:var(--tr-token-font-line-height-heading)}.proto-bar{font-size:var(--c2-type-caption)}.lede{font-size:var(--c2-type-body-lg)}.card,.task-panel,.surface,.flagship{padding:20px}.section-head{display:block}.human-note{width:100%;left:auto;bottom:auto}.motion-field{min-height:0}.brand{flex-wrap:wrap;gap:6px}.nav{gap:12px}.brand-path{flex-shrink:0}.menu-btn{flex-shrink:0}.comparison th,.comparison td{padding:12px 8px}.section{padding-block:64px}.page-hero{padding-top:48px}.hero{padding-block:48px}.mobile-panel{max-height:60vh}.quick{padding:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.btn:hover{transform:none}}

.download-spacing{margin-top:var(--tr-token-size-spacing-6)}

.target-caption{font-size:var(--c2-type-caption);line-height:var(--tr-token-font-line-height-dense);margin-top:12px;color:var(--local-muted)}

/* RC2 N03: baseline is readable. Only initialized components may collapse content. */
.header:not([data-nav-enhanced]) { position:relative; }
.header:not([data-nav-enhanced]) [data-menu] { display:none; }
.header:not([data-nav-enhanced]) [data-mobile-panel] { display:none; max-height:none; overflow:visible; }
@media(max-width:980px) {
 .header:not([data-nav-enhanced]) [data-mobile-panel] { display:block; }
}
.task-switcher:not([data-tabs-enhanced]) .task-tabs { display:none; }
.task-switcher:not([data-tabs-enhanced]) .task-panel + .task-panel { margin-top:24px; }

/* RC2 N02: observed text overlap in the old absolute-positioned hero cards.
   Preserve font hierarchy; let both content-bearing objects participate in flow. */
.motion-field { display:grid; gap:24px; align-content:center; }
.work-object { position:relative; inset:auto; width:min(420px,94%); justify-self:end; }
.human-note { position:relative; inset:auto; width:min(260px,100%); justify-self:start; }
.nav,.nav-links,.nav-actions { flex-wrap:wrap; }
.brand { min-width:0; }
@media(max-width:980px) {
 .work-object,.human-note { width:100%; justify-self:stretch; }
}
/* RC2 N02: enlarged contact headings must wrap inside their existing cards.
   Phrase-local balance keeps short Chinese phrase fragments readable without shrinking type. */
.contact-branch h2 { word-break:normal; overflow-wrap:anywhere; }
.heading-phrase { text-wrap:balance; }

/* RC3 N01/O4: focus halo margin, no change to tab order or sticky behavior. */
html{scroll-padding-bottom:var(--tr-token-size-spacing-3)}
:where(a,button,[tabindex]){scroll-margin-bottom:var(--tr-token-size-spacing-3)}
/* RC3 O1: two semantic statements remain separate; text is unchanged. */
@media(max-width:640px){
 .footer-bottom{display:flex;flex-direction:column;align-items:stretch;gap:var(--tr-token-size-spacing-2)}
 .footer-bottom>span{display:block;min-width:0;max-width:100%}
}

/* RC4 O1: anchored, non-modal disclosure; height is derived from the ACTUAL
   header edge and visual viewport. This recipe does not apply without enhancement. */
@media(max-width:980px){
 .header[data-nav-enhanced][data-menu-open="true"] .mobile-panel.open{
   position:absolute;inset:100% var(--tr-token-layout-mobile-gutter) auto;
   margin:0;min-height:0;max-height:var(--c2-menu-max-block-size,60dvh);
   overflow-y:auto;overflow-x:hidden;scroll-behavior:auto;
   scroll-padding-block:var(--tr-token-size-spacing-2);
 }
}
