/* TD Axiom: material and motion refinement, 2026-10-15.
   The established content, geometry and engineering colour meanings are retained. */
@font-face{font-family:Manrope;src:url('manrope-latin.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{--bg:#081118;--muted:#a6bac5;--line:#a3c9d326;--max:1440px;--ease:cubic-bezier(.16,1,.3,1);font-family:Manrope,"Segoe UI","Microsoft YaHei",sans-serif}
html{scrollbar-color:#49616d #081118;scrollbar-width:thin;caret-color:var(--accent)}
body{background:var(--bg)}
h1,h2,h3{letter-spacing:-.03em;text-wrap:balance}
p{text-wrap:pretty}
:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
::selection{background:#2a685c;color:#f1fffc}
.shell{padding-inline:64px}
.hero{grid-template-columns:1fr 1.08fr;min-height:875px;padding-top:148px;gap:0 42px}
.hero h1{font-size:clamp(46px,4.65vw,67px);line-height:1.4;letter-spacing:-.035em;font-weight:640}
.gradient-text,.hero .gradient-text{background:none;color:var(--accent)}
.hero-subtitle{margin-top:25px;color:#c0d2dc}
.hero-description{max-width:470px;line-height:2}
.hero-cta{margin-top:32px;gap:25px;flex-wrap:wrap}
.hero-content .eyebrow{font-family:inherit;letter-spacing:.04em;color:#a4c5cd;margin-bottom:22px}
.eyebrow,.mono,.micro,.capture-tag{font-family:inherit}
.section-head .eyebrow{font-size:11px;color:#8eb8c5;letter-spacing:.045em;margin-bottom:24px}
.hero .model-stage{height:610px;max-width:none}
.hero-haze{background:radial-gradient(ellipse at 65% 45%,#1a435333,transparent 68%)}
.model-stage:before{inset:25px -20px 70px;opacity:.5;background-size:48px 48px}
.hero-visual>.model-canvas,.hero-visual>.model-fallback{inset:40px 0 125px;height:calc(100% - 165px)}
.studio-light{position:absolute;inset:12px -20px 100px;width:calc(100% + 40px);height:calc(100% - 112px);pointer-events:none;z-index:-1;opacity:0;mask-image:radial-gradient(ellipse at 50% 46%,#000 20%,transparent 69%);transition:opacity 800ms var(--ease)}
.studio-light[data-ready=true]{opacity:.62}
.model-legend{top:auto;bottom:92px;left:0;right:0;flex-direction:row;justify-content:center;gap:14px}
.model-legend button{min-height:36px;padding:6px 12px;background:transparent;border-radius:3px;color:#b7cbd4;transition:color 160ms,background 160ms,border-color 160ms}
.model-legend button:hover,.model-legend button[aria-pressed=true]{background:#14313a;border-color:#77edcf4d}
.model-tools{bottom:43px;gap:8px}
.segmented{border-radius:4px;background:#0a1820;backdrop-filter:none}
.segmented button{position:relative;isolation:isolate;min-height:36px;border-radius:2px;transition:color 160ms,background 220ms}
.segmented button[aria-pressed=true]{background:#1b3944;color:#d8f6f1}
.model-tools .icon-button{width:36px;height:40px}
.visual-top{font-size:10px;color:#98b4c0;top:5px}
.visual-bottom{font-size:11px;color:#93adbb}
.visual-bottom>span:first-child{max-width:65%}
.hero-baseline{margin-top:34px}
.hero-baseline .mono{font-size:10px;color:#8da9b6;letter-spacing:.03em}
.hero-baseline>a{border-radius:3px;border-color:transparent;transition:transform 200ms var(--ease),color 200ms}
.hero-baseline>a:hover{transform:translateY(3px);color:var(--accent)}
.button,.nav-contact,.icon-button{border-radius:4px;transition:background 180ms,color 180ms,border-color 180ms,transform 240ms var(--ease)}
.button.primary:hover{box-shadow:none;transform:translateY(-1px)}
.button:active,.icon-button:active{transform:translateY(1px)}
.text-link{transition:color 160ms}
.text-link>span{transition:transform 260ms var(--ease)}
.text-link:hover>span{transform:translate(2px,-1px)}
.motion-toggle{display:flex;gap:7px;align-items:center;min-height:40px}
.motion-toggle svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.6}
.motion-toggle[aria-pressed=false] .pause-icon{display:none}
.motion-toggle[aria-pressed=true] .play-icon{display:none}
.section{padding-block:118px}
.section-head{gap:80px;margin-bottom:54px}
.section-head h2{font-weight:590;line-height:1.45}
.section-head>p{color:#a6bac5}
.entry-lines article{transition:background 240ms}
.entry-lines article:hover{background:#0d1d254d}
.entry-drawing svg{transition:stroke 200ms}
.entry-lines article:hover .entry-drawing svg{stroke:var(--accent)}
.product-stage{border-radius:5px;box-shadow:none;border-color:#a3c9d32c;background:#0d1922}
.window-bar{background:#0d1922}
.gallery-tabs{position:relative;border-bottom:1px solid var(--line);gap:32px;margin-bottom:26px}
.gallery-tabs button{position:relative;border:0!important;margin-bottom:0;color:#a3bdc8;padding-bottom:14px;transition:color 180ms}
.gallery-tabs button:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 300ms var(--ease)}
.gallery-tabs button[aria-selected=true]:after{transform:scaleX(1)}
.gallery-tabs button[aria-selected=true]{color:#e3f6f3}
.screen-button{background:#0b151e;overflow:hidden}
.screen-button img{aspect-ratio:8/5;object-fit:contain}
.cinema{background:#0c1821;border-color:#a3c9d32c;border-radius:5px;box-shadow:none}
.cinema-top{padding-block:21px;background:#10212a}
.build-stage{background:radial-gradient(ellipse at 50% 40%,#1a39494d,transparent 68%),#0a151d}
.drawing-stage{border-radius:3px}
.ai-timeline button{transition:color 180ms}
.ai-timeline button:before{transition:background 200ms}
.ai-timeline button[aria-selected=true]:before{box-shadow:none}
.ai-timeline button[aria-selected=true]:before{background:linear-gradient(90deg,var(--accent) var(--step-progress,100%),#2b4752 var(--step-progress,100%))}
.evidence-strip strong{font-family:inherit;font-variant-numeric:tabular-nums;font-weight:550}
.evidence-strip>p,.cinema-disclaimer{color:#9ab3bf}
.cinema .drawing-scan{animation-play-state:paused}
.cinema.playing .drawing-scan{animation-play-state:running}
.method-detail{border-radius:5px;background:#0e1c26}
.method-buttons button{transition:background 180ms,color 180ms,border-color 180ms;border-radius:3px}
.ae-experiment{border-radius:5px}
.ae-equilibrium{border-radius:3px}
.ae-controls input[type=range]{accent-color:var(--accent)}
.ae-primary-result strong,.ae-force-results strong,.method-code{font-variant-numeric:tabular-nums}
.read-progress i{width:100%!important;transform:scaleX(0);transform-origin:left}
dialog{border-radius:6px;border:0;box-shadow:0 26px 90px #0009}
dialog[open]{animation:dialog-arrive 300ms var(--ease)}
dialog[open]::backdrop{animation:backdrop-arrive 220ms ease-out}
@keyframes dialog-arrive{from{opacity:.55;transform:translateY(9px) scale(.99);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}
@keyframes backdrop-arrive{from{background:#03090e55;backdrop-filter:blur(0)}to{background:#03090edc;backdrop-filter:blur(8px)}}
/* All prose is visible without JavaScript. Only the focal CAD stage has an entrance. */
.enhanced .hero-visual{animation:stage-arrive 780ms var(--ease) both}
@keyframes stage-arrive{from{opacity:.55;transform:translateY(8px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
.reveal{opacity:1;transform:none}
@media(max-width:1150px){.shell{padding-inline:42px}.hero{gap:24px;min-height:800px}.hero h1{font-size:53px}.hero .model-stage{height:570px}.visual-bottom{font-size:10px}.hero-baseline .mono{font-size:9px}}
@media(max-width:900px){.shell{padding-inline:30px}.hero{padding-top:135px;grid-template-columns:1fr 1fr;gap:20px}.hero h1{font-size:46px}.hero .model-stage{height:530px}.hero-cta{gap:18px}.model-legend{gap:2px}.model-legend button{font-size:10px;padding-inline:8px}.visual-top{font-size:8px}.visual-bottom{flex-direction:column;gap:3px}.visual-bottom>span:first-child{max-width:none}.visual-bottom>span:last-child{text-align:left}.model-tools{bottom:53px}.model-legend{bottom:100px}.section{padding-block:90px}.section-head{gap:40px}.gallery-tabs{gap:24px}}
@media(max-width:650px){.shell{padding-inline:24px}.hero{grid-template-columns:1fr;padding-top:124px;gap:0;min-height:unset}.hero h1{font-size:clamp(41px,10vw,58px);line-height:1.4}.hero-description{font-size:14px}.hero .model-stage{height:485px;margin-top:34px}.hero-visual>.model-canvas,.hero-visual>.model-fallback{inset:32px 0 133px;height:calc(100% - 165px)}.studio-light{inset:0 -20px 115px;height:calc(100% - 115px)}.visual-top{font-size:9px}.model-legend{bottom:97px;gap:12px}.model-legend button{font-size:11px;min-height:36px}.model-tools{bottom:48px}.visual-bottom{font-size:10px;gap:2px}.model-tools .icon-button{height:40px;width:36px}.hero-baseline{margin-top:20px;align-items:center}.hero-baseline .mono{font-size:9px;max-width:240px}.hero-cta{gap:20px}.hero-note{font-size:11px}.section{padding-block:78px}.section-head{gap:24px;margin-bottom:32px}.section-head h2{font-size:32px}.section-head .eyebrow{font-size:10px}.gallery-tabs{gap:22px}.cinema-top{padding-block:18px}.motion-toggle span{display:none}}
@media(max-width:370px){.shell{padding-inline:20px}.hero h1{font-size:40px}.hero .model-stage{height:440px}.model-legend{gap:3px}.model-tools .segmented button{padding-inline:9px}.hero-cta{gap:14px}.visual-top{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.studio-light{display:none}}
.no-motion .studio-light{opacity:0}
.contact-orbit{animation-play-state:paused}
.contact-section.is-visible .contact-orbit{animation-play-state:running}
html.page-hidden .contact-orbit,html.page-hidden .drawing-scan{animation-play-state:paused!important}
/* Legibility corrections from the one-time Impeccable detector. */
.entry-number,.gallery-tabs button span,.ai-timeline button span,.assistant-promises .mono,
.ai-tasks>.eyebrow,.method-note,.checks-row span,.strategy-intro>.mono,
.deliver-copy>article>span,.trace-strip>p,.footer>span{color:#98b4c0}
.method-code{color:#82aebd;letter-spacing:-.03em}
.status-dot{box-shadow:none}
.brand strong>span{font-size:10px;letter-spacing:.08em}
.suite-product-brand .suite-home{font-size:11px}
.hero .eyebrow,.section-head .eyebrow,.ai-tasks>.eyebrow,.visual-top,.visual-top>span:last-child,
.visual-bottom,.visual-bottom>span:last-child,.hero-baseline .mono,.entry-lines .small-label,
.window-bar .mono,.pane-title .mono,.pane-title>span:last-child,.build-intro .small-label,
.ai-timeline button span,.evidence-strip span,.evidence-strip small,.assistant-promises .mono,
.method-index>p,.method-io .mono,.strategy-intro>.mono,.deliver-copy>article>span,
.trace-strip span,.trace-strip>p,.contact-section .eyebrow,.contact-section .text-link,
.footer,.footer a,.footer>span,.dialog-top button{font-size:11px}
.method-note,.checks-row span{font-size:12px;line-height:1.8}
.visual-top{flex-wrap:wrap;gap:5px 14px}
@media(max-width:650px){.visual-bottom{font-size:11px}.hero-visual>.model-canvas,.hero-visual>.model-fallback{top:42px;height:calc(100% - 175px)}.model-tools{bottom:57px}.model-legend{bottom:106px}.hero-baseline .mono{max-width:275px}.hero-baseline{gap:10px}.window-bar .mono{font-size:11px}.window-lights{display:none}.section-head .eyebrow{line-height:1.7}.pane-title{flex-wrap:wrap;gap:5px}.pane-title .mono{font-size:11px}.footer .brand strong>span{font-size:10px}}
