:root{color-scheme:light dark;--bg:#faf9f6;--surface:#fff;--ink:#252f35;--muted:#58636b;--line:#d8dcd9;--accent:#a4471c;--soft:#f4e9df;--header:#19282e;--focus:#bc501d;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.95}*{box-sizing:border-box}html{scroll-padding-top:2rem}body{margin:0;background:var(--bg);color:var(--ink);overflow-wrap:anywhere}a{color:inherit;text-underline-offset:.25em}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:5px}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button,summary{cursor:pointer}p{margin:1rem 0}h1,h2,h3{font-weight:650;line-height:1.6;letter-spacing:.025em;text-wrap:pretty}h1{font-size:clamp(1.8rem,3.5vw,3.15rem);max-width:23em;margin:1.5rem 0 2rem}h2{font-size:clamp(1.45rem,2.5vw,2rem);margin:0 0 1.5rem}h3{font-size:1.16rem}strong{font-weight:650}.container{width:min(1080px,calc(100% - 64px));margin-inline:auto}.site-header{background:var(--header);color:#f8f7f4;border-bottom:3px solid #b56435}.header-inner{max-width:1280px;margin:auto;padding:24px 32px;display:flex;justify-content:space-between;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand img{width:194px;display:block}.site-header nav{display:flex;align-items:center;gap:24px;font-size:.875rem}.site-header nav>a{text-decoration:none}.site-header a:hover,.site-footer a:hover{color:#edac79}.business-nav{position:relative}.business-nav summary{padding:8px 0}.business-nav ul{position:absolute;z-index:10;top:100%;left:0;width:230px;padding:12px 20px;margin:0;background:var(--header);border:1px solid #6c797f;list-style:none;box-shadow:0 8px 20px #0002}.business-nav li{padding:7px 0}.skip-link{position:fixed;top:-100px;left:12px;background:var(--surface);color:var(--ink);padding:12px;z-index:30}.skip-link:focus{top:12px}main.container{padding-block:36px 100px;min-height:50vh}.breadcrumb{font-size:.8rem;color:var(--muted);margin-bottom:44px}.home main{padding-top:64px}.section{padding:56px 0;border-bottom:1px solid var(--line)}.home .section:first-child{padding-top:0;padding-bottom:64px}.eyebrow{font-size:.8rem;color:var(--accent);font-weight:650;letter-spacing:.12em;margin:0 0 20px}.home .section:first-child .eyebrow:before{content:"";display:inline-block;width:28px;height:2px;background:var(--accent);vertical-align:middle;margin-right:12px}.home .section:first-child>p:not(.eyebrow){max-width:52em}.lead{font-size:1.1rem;max-width:52em}.actions{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0 12px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 24px;border:1px solid var(--accent);background:var(--accent);color:#fff;text-decoration:none;border-radius:3px;font-weight:600;line-height:1.6}.button:hover{background:#803611;color:#fff}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.button.secondary:hover{border-color:var(--accent);color:var(--accent)}.button.small{min-height:42px;padding:8px 18px}.button:disabled{opacity:.6;cursor:wait}.content-list{padding:0;margin:24px 0;list-style:none}.content-list li{padding:20px 0;border-bottom:1px solid var(--line)}.content-list li:first-child{border-top:1px solid var(--line)}.content-list strong{display:block;margin-bottom:6px;font-size:1.08rem}.content-list .text-link{display:block;margin-top:12px;font-size:.875rem;font-weight:600;color:var(--accent)}#business .content-list{display:grid;grid-template-columns:1fr 1fr;gap:20px}#business .content-list li{border:1px solid var(--line);padding:26px;background:var(--surface)}#business .content-list strong{font-size:1.25rem}.ordered{counter-reset:step}.ordered li{position:relative;padding-left:52px;counter-increment:step}.ordered li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;color:var(--accent);font-size:1.2rem;font-variant-numeric:tabular-nums}.lab{border:1px dashed #a5774a;border-radius:10px;background:var(--soft);padding:30px;margin-top:32px}.lab h3{margin-top:0}.pending-links{display:flex;flex-wrap:wrap;gap:24px;color:var(--muted);font-size:.85rem}.pending-links a{cursor:default}.steps{padding:0;display:flex;flex-wrap:wrap;list-style:none;gap:10px}.steps li{padding:9px 14px;border:1px solid var(--line);background:var(--surface)}.example{border-left:3px solid var(--accent);background:var(--surface);padding:20px 24px;margin:24px 0}.example>div{display:grid;grid-template-columns:6em 1fr;gap:16px;margin:10px 0}.example dt{font-weight:650;font-size:.9rem}.example dd{margin:0}.company-table{margin:24px 0}.company-table>div{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.company-table dt{font-weight:600}.company-table dd{margin:0}.table-scroll{overflow:auto;margin:24px 0}table{border-collapse:collapse;width:100%;min-width:650px;font-size:.92rem;text-align:left}th,td{border-bottom:1px solid var(--line);padding:18px;vertical-align:top}thead{background:var(--soft)}th:first-child{min-width:160px}td:last-child{min-width:160px}.capability{padding:24px 28px;margin:24px 0}.capability h3{margin-top:0}.capability.current{border:1px solid var(--line);border-left:5px solid var(--accent);background:var(--surface)}.capability.future{border:2px dashed var(--muted);background:var(--soft)}.muted{color:var(--muted);font-size:.85rem}.ai-container{display:inline-block;background:#fff;padding:16px;margin-top:24px}.site-footer{padding:56px 0 220px;background:var(--header);color:#f3f3ef}.site-footer nav{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 30px;margin:30px 0;font-size:.875rem}.site-footer p{font-size:.75rem;color:#bdc8cb}.avatar-dock{position:fixed;bottom:0;right:0;width:240px;height:165px;pointer-events:none;z-index:1}.avatar-dock span{position:absolute;right:20px;top:0;font-size:12px;background:var(--surface);border:1px solid var(--line);padding:3px 10px;border-radius:3px;color:var(--muted)}form{max-width:740px;margin:40px 0}.field{margin-bottom:26px}.field label{display:block;font-weight:600;margin-bottom:8px}.field label span,.consent span{font-size:.72rem;color:var(--accent);font-weight:500;margin-left:8px}.field label .optional{color:var(--muted)}input:not([type=checkbox]),textarea,select{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--muted);border-radius:3px;background:var(--surface);color:var(--ink)}textarea{resize:vertical}#message-note{font-size:.85rem;color:var(--muted)}.consent{display:flex;align-items:flex-start;gap:10px}.consent input{width:20px;height:20px;margin-top:6px;flex-shrink:0;accent-color:var(--accent)}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#form-status{color:var(--accent)}.related a{color:var(--accent)}
@media(prefers-color-scheme:dark){:root{--bg:#172126;--surface:#202d33;--ink:#e8ecec;--muted:#b0bec3;--line:#46545a;--accent:#e99560;--soft:#302b27;--focus:#f2a472;--header:#10191d}.button{background:#a4471c;border-color:#ce7443}.button.secondary{color:var(--ink)}.eyebrow{color:var(--accent)}}
@media(max-width:900px){.header-inner{align-items:flex-start;flex-direction:column;gap:16px}.site-header nav{width:100%;flex-wrap:wrap;gap:12px 22px}.brand img{width:170px}.container{width:calc(100% - 40px)}.home main{padding-top:40px}}
@media(max-width:540px){.header-inner{padding:20px}.site-header nav{font-size:.8rem;gap:8px 18px}.site-header nav .button{padding:7px 12px;min-height:40px}.container{width:calc(100% - 40px)}main.container{padding-bottom:64px}.section{padding:36px 0}.home .section:first-child{padding-bottom:40px}#business .content-list{grid-template-columns:1fr;gap:14px}#business .content-list li{padding:22px}.actions{gap:12px}.actions .button{width:100%;padding-inline:14px}.example{padding:16px}.example>div{grid-template-columns:1fr;gap:4px;margin:16px 0}.company-table>div{grid-template-columns:1fr;gap:4px;padding:16px 0}.lab,.capability{padding:22px 18px}.site-footer nav{grid-template-columns:1fr 1fr;gap:14px}.site-footer{padding-bottom:220px}.avatar-dock{width:210px;height:165px}.avatar-dock span{right:14px}.breadcrumb{margin-bottom:30px}.ordered li{padding-left:42px}}
@media(prefers-reduced-motion:no-preference){a,button{transition:background-color .15s,color .15s,border-color .15s}}

/* Spatial identity: solid paper, ink, and the Rapinics orange. */
:root{--bg:#f2f0e9;--surface:#fcfbf7;--ink:#242a2b;--muted:#626765;--line:#cecec5;--accent:#a64017;--soft:#eae4d8;--header:#202829}
body{overflow-x:clip}.page-shell{min-height:100svh;overflow-x:clip}.container{width:min(1240px,calc(100% - 80px))}.site-header{border-bottom:1px solid #ffffff25}.header-inner{max-width:1400px;padding:24px 40px}.site-header nav{gap:26px}.brand img{width:180px}.site-footer{padding-bottom:56px}.avatar-dock{width:0;height:0;background:transparent;border:0}.avatar-dock:before{content:none}.avatar-dock span{top:auto;bottom:90px;white-space:nowrap;background:#202829;color:#e5e8e3;border-color:#58615c}.home main{padding-top:64px}.section{padding:80px 0}.eyebrow{display:flex;align-items:center;gap:12px;font-size:.73rem;letter-spacing:.17em}.eyebrow:before{content:'';width:22px;height:2px;background:currentColor}.home .section:first-child .eyebrow:before{margin:0}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:20px;align-items:center;min-height:620px}.hero-copy{position:relative;z-index:2;min-width:0}.hero h1{font-size:clamp(2.2rem,3.7vw,3.6rem);line-height:1.55;letter-spacing:-.035em;margin:28px 0}.hero-copy>p:not(.eyebrow){font-size:.92rem;max-width:39em}.hero .actions{margin-top:32px}.button{border-radius:0;padding:14px 24px;box-shadow:4px 4px 0 #242a2b20;position:relative}.button.secondary{border-color:var(--muted)}.button:after{content:'↗';margin-left:20px}.site-header .button:after{display:none}h2{max-width:30em;letter-spacing:-.025em}h1,h2{perspective:900px}.title-glyph{display:inline-block;transform-origin:50% 90%}.title-space{white-space:pre}#business .content-list{gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line);counter-reset:business}#business .content-list li{position:relative;padding:36px;border-width:0 1px 1px 0;min-height:245px;transform-style:preserve-3d;counter-increment:business}#business .content-list li:before{content:'0' counter(business);display:block;font:400 13px/1.5 monospace;letter-spacing:.15em;color:var(--accent);margin-bottom:24px}#business .content-list strong{font-size:1.5rem;transform:translateZ(20px)}.text-link span{display:inline-block}.lab{border-radius:0;border:1px dashed var(--accent);box-shadow:10px 10px 0 var(--soft);position:relative}.lab:after{content:'＋';position:absolute;right:24px;top:18px;font-size:32px;color:var(--accent)}.lab .eyebrow{padding-right:32px}.steps li{border-bottom:3px solid var(--accent)}.inner main{max-width:1040px}.inner h1{border-bottom:1px solid var(--line);padding-bottom:32px}.inner .section{padding-block:48px}.content-list li{transition:border-color .25s}.capability.current{box-shadow:8px 8px 0 var(--soft)}.capability.future{box-shadow:none}.field:focus-within label{color:var(--accent)}form{padding:32px;background:var(--surface);border-top:3px solid var(--accent);max-width:800px}.site-footer nav a{width:fit-content}.motion-control{position:static;flex-shrink:0;min-height:44px;padding:8px 14px;background:transparent;border:1px solid #6e7974;color:#f0f0e9;font-size:12px;cursor:pointer;pointer-events:auto;letter-spacing:.05em}.motion-control:disabled{opacity:.65;cursor:default}
/* Fictional AI interface, entirely CSS geometry. No product UI or remote assets. */
.ai-scene{height:510px;position:relative;perspective:1000px;isolation:isolate;min-width:0;touch-action:pan-y}.scene-world{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(-6deg) rotateY(-14deg);transition:transform .25s ease-out}.scene-grid{position:absolute;inset:15% 0 10%;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:44px 44px;transform:rotateX(60deg) rotateZ(-25deg);opacity:.55;mask-image:radial-gradient(ellipse,#000,transparent 70%)}.ai-panel{position:absolute;border:1px solid #777e77;background:#f9f7f0;color:#28312e;box-shadow:12px 20px 0 #27353012,20px 35px 45px #2735301a;transform-style:preserve-3d}.panel-main{width:78%;left:10%;top:20%;transform:translateZ(35px) rotateZ(-5deg)}.panel-bar{display:flex;justify-content:space-between;border-bottom:1px solid #bdc3b9;padding:12px 16px;font:11px/1.5 monospace;letter-spacing:.12em;background:#e6e8df}.panel-body{padding:20px}.ai-mark{display:block;font:500 42px/1.2 monospace;color:#a64017}.ai-mark span{color:#a5ab9f}.prompt-lines{width:65%;margin:16px 0 16px auto;background:#e9e5da;padding:12px}.prompt-lines i,.answer-lines i,.mini-lines i{display:block;height:5px;background:#a3afa2;margin:7px 0;transform-origin:left}.prompt-lines i:last-child{width:65%}.answer-lines{width:86%;border-left:2px solid #ad481e;padding-left:12px}.answer-lines i{background:#7c8d7b}.answer-lines i:last-child{width:72%}.signal{display:flex;align-items:center;gap:5px;height:32px;margin-top:14px}.signal i{display:block;width:4px;height:10px;background:#ac491f}.signal i:nth-child(3n){height:24px}.signal i:nth-child(2n){height:16px}.panel-input{display:flex;justify-content:space-between;align-items:center;margin:0 20px 20px;border:1px solid #bbc3b5;padding:6px 12px}.panel-input i{height:3px;width:55%;background:#b9c1b2}.panel-back{width:60%;height:190px;right:0;top:4%;transform:translateZ(-70px) rotateZ(10deg);background:#35443d;color:#dce3d3;border-color:#617465}.panel-back .panel-bar{background:transparent;border-color:#657262}.node-map{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:24px}.node-map i{height:22px;border:1px solid #9dac98;position:relative}.node-map i:after{content:'';position:absolute;width:20px;height:3px;background:#d7894d;top:8px;left:12px}.panel-front{right:0;bottom:6%;width:49%;padding:20px;display:flex;align-items:center;gap:16px;transform:translateZ(100px) rotateZ(7deg);background:#dbd9bd}.small-symbol{font-size:42px;color:#a64017}.mini-lines{flex:1}.mini-lines i{background:#7d8165}.floating-type{position:absolute;font:500 66px/1 monospace;letter-spacing:-.09em;color:var(--accent);text-shadow:4px 5px 0 var(--soft);transform:translateZ(110px)}.type-ai{top:9%;left:0}.type-code{bottom:9%;left:1%;font-size:48px;color:var(--ink)}.orbit{position:absolute;border:1px solid var(--accent);border-radius:50%;width:100%;height:72%;top:12%;transform:rotateY(65deg) rotateX(25deg);opacity:.5}.orbit-two{transform:rotateY(-60deg) rotateX(-30deg);border-color:var(--muted)}.scene-caption{position:absolute;bottom:-8px;left:8%;font:10px/1.6 monospace;letter-spacing:.13em;color:var(--muted)}.scene-cube{position:absolute;width:32px;height:32px;top:4%;right:24%;transform-style:preserve-3d;transform:rotateX(-25deg) rotateY(40deg)}.scene-cube i{position:absolute;inset:0;border:1px solid #a64017;background:#d47b4333}.scene-cube i:nth-child(1){transform:translateZ(16px)}.scene-cube i:nth-child(2){transform:rotateY(90deg) translateZ(16px)}.scene-cube i:nth-child(3){transform:rotateX(90deg) translateZ(16px)}
@media(prefers-color-scheme:dark){:root{--bg:#19211f;--surface:#242e29;--ink:#e9ebe2;--muted:#acb6a9;--line:#465347;--accent:#ef9c6b;--soft:#303b30;--header:#131c18}.ai-panel{box-shadow:12px 20px 0 #0002,20px 35px 45px #0003}.button{color:#fff}.button.secondary{background:transparent}.panel-front{background:#dbd9bd}.avatar-dock{background:transparent}}
@media(min-width:1201px){.header-inner{flex-direction:row;align-items:center}.site-header nav{width:auto;flex-wrap:nowrap}}
@media(max-width:1000px){.hero{grid-template-columns:1fr;gap:32px}.hero-copy{max-width:760px}.hero h1{max-width:18em;font-size:clamp(2rem,5vw,3.5rem)}.ai-scene{width:min(540px,100%);margin:auto;height:480px}.hero-copy>p:not(.eyebrow){max-width:52em}.container{width:calc(100% - 48px)}.header-inner{padding:24px}.section{padding:56px 0}}
@media(max-width:540px){.container{width:calc(100% - 40px)}.header-inner{padding:20px}.home main{padding-top:32px}.hero h1{font-size:2.05rem}.hero{gap:20px;min-height:0}.hero-copy>p:not(.eyebrow){font-size:.9rem}.ai-scene{height:370px;width:100%;margin:8px 0 24px}.panel-main{width:82%;left:7%;top:20%}.panel-body{padding:14px}.panel-bar{padding:10px;font-size:9px}.ai-mark{font-size:32px}.prompt-lines{margin-block:10px;padding:6px 10px}.answer-lines i{height:4px;margin-block:6px}.panel-input{margin:0 14px 14px;padding:2px 8px}.panel-front{bottom:0;padding:12px;right:2%}.type-ai{font-size:46px}.type-code{font-size:36px;bottom:5%}.panel-back{height:150px}.node-map{padding:14px;gap:14px}.scene-caption{bottom:-26px;font-size:9px}.orbit{width:90%;left:5%}.section{padding:40px 0}#business .content-list li{padding:24px;min-height:0}#business .content-list{gap:0}.motion-control{left:20px;bottom:24px;padding:8px;font-size:11px;max-width:125px}.avatar-dock:before{left:20px;font-size:10px;top:22px}.avatar-dock span{font-size:11px;right:14px}.site-footer{padding-bottom:36px}form{padding:22px 16px}.inner h1{font-size:1.85rem}.lab:after{right:15px}.steps{gap:8px}.steps li{font-size:.85rem}}
/* Animations only exist when motion is allowed and the page is visible. */
@media(prefers-reduced-motion:no-preference){
html:not(.motion-paused) .ai-scene.is-visible .panel-main{animation:panel-float 7s ease-in-out infinite}
html:not(.motion-paused) .ai-scene.is-visible .panel-back{animation:back-float 9s ease-in-out infinite}
html:not(.motion-paused) .ai-scene.is-visible .panel-front{animation:front-float 6s ease-in-out infinite}
html:not(.motion-paused) .ai-scene.is-visible .floating-type{animation:type-float 6s ease-in-out infinite alternate}
html:not(.motion-paused) .ai-scene.is-visible .type-code{animation-delay:-3s}
html:not(.motion-paused) .ai-scene.is-visible .signal i{animation:signal .9s ease-in-out infinite alternate}
.signal i:nth-child(2n){animation-delay:-.3s!important}.signal i:nth-child(3n){animation-delay:-.6s!important}
html:not(.motion-paused) .ai-scene.is-visible .answer-lines i{animation:answer 4s ease-in-out infinite}
html:not(.motion-paused) .ai-scene.is-visible .scene-cube{animation:cube 12s linear infinite}
html:not(.motion-paused) .reveal-in{animation:reveal .8s cubic-bezier(.16,1,.3,1) both}
html:not(.motion-paused) .heading-in .title-glyph{animation:glyph-in .8s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--glyph-delay,0s)}
html:not(.motion-paused) .touch-pulse{animation:touch-pulse .65s ease-out}
.button,.text-link span,.steps li{transition:transform .25s,box-shadow .25s,background-color .25s}
html:not(.motion-paused) .button:hover{transform:translateY(-3px);box-shadow:6px 7px 0 #242a2b25}
html:not(.motion-paused) .text-link:hover span{transform:translateX(8px)}
html:not(.motion-paused) .steps li:hover{transform:translateY(-6px) rotate(-2deg)}
@media(hover:hover) and (pointer:fine){html:not(.motion-paused) .title-glyph:hover{transform:translateY(-7px) rotateY(-18deg);color:var(--accent);transition:transform .2s}}
}
@keyframes panel-float{50%{transform:translate3d(0,-16px,60px) rotateZ(-2deg)}}
@keyframes back-float{50%{transform:translate3d(10px,12px,-90px) rotateZ(6deg)}}
@keyframes front-float{50%{transform:translate3d(-8px,-18px,125px) rotateZ(3deg)}}
@keyframes type-float{to{transform:translate3d(0,-14px,140px) rotateY(18deg)}}
@keyframes signal{to{transform:scaleY(.35)}}
@keyframes answer{0%,100%{transform:scaleX(.7)}50%{transform:scaleX(1)}}
@keyframes cube{to{transform:rotateX(335deg) rotateY(400deg)}}
@keyframes reveal{from{opacity:.35;transform:perspective(1000px) translateY(32px) rotateX(4deg)}to{opacity:1;transform:none}}
@keyframes glyph-in{from{opacity:.3;transform:translateY(18px) rotateX(-70deg)}to{opacity:1;transform:none}}
@keyframes touch-pulse{50%{transform:perspective(1000px) rotateX(2deg) translateY(-5px);box-shadow:0 12px 24px #242a2b15}}
/* Also override inline pointer transforms when the preference changes live. */
html.motion-paused *,html.motion-paused *:before,html.motion-paused *:after{animation:none!important;transition:none!important}
html.motion-paused .scene-world,html.motion-paused [data-tilt]{transform:none!important}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.scene-world,[data-tilt]{transform:none!important}}
@media print{body{overflow:visible}.page-shell{height:auto;overflow:visible}.site-header,.site-footer,.avatar-dock,.ai-scene{display:none}*,*:before,*:after{animation:none!important;transform:none!important}}

/* Shared spatial language on every page; ornaments have reserved space. */
.spatial-section{position:relative}
[data-motion-kind]{position:relative;isolation:isolate;transform-style:preserve-3d}
[data-motion-kind]:after{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid transparent;opacity:0;background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,50%),color-mix(in srgb,var(--accent) 12%,transparent),transparent 60%)}
.lab[data-motion-kind]:after{content:'';font-size:inherit}
[data-motion-kind]>strong,.company-table dt{position:relative}
.field{position:relative;border-left:2px solid transparent;padding-left:12px}
/* Stop control participates in header layout. The widget keeps its own small launcher. */
.site-header nav{flex-wrap:wrap}
.avatar-dock{width:0;height:0}
@media(prefers-reduced-motion:no-preference){
html:not(.motion-paused) [data-motion-kind].is-visible:before{animation-duration:5s;animation-delay:var(--motion-phase);animation-iteration-count:infinite}
html:not(.motion-paused) #business li.is-visible:before,html:not(.motion-paused) .ordered li.is-visible:before{animation-name:number-depth}
html:not(.motion-paused) [data-motion-kind].is-visible{animation:surface-breathe 6s ease-in-out var(--motion-phase) infinite}
html:not(.motion-paused) [data-motion-kind].reveal-in{animation:reveal .8s cubic-bezier(.16,1,.3,1),surface-breathe 6s ease-in-out .8s infinite}
html:not(.motion-paused) [data-motion-kind].touch-pulse{animation:touch-pulse .65s ease-out}
[data-motion-kind],[data-motion-kind]:after,.field,.company-table dt,.content-list strong,nav a{transition:transform .3s,box-shadow .3s,border-color .3s,background-color .3s,opacity .3s}
html:not(.motion-paused) [data-motion-kind]:focus-within:after{opacity:1;border-color:var(--accent)}
html:not(.motion-paused) .field:focus-within{border-color:var(--accent);box-shadow:-6px 0 0 var(--soft)}
@media(hover:hover) and (pointer:fine){
html:not(.motion-paused) [data-motion-kind]:hover:after{opacity:1;border-color:var(--accent)}
html:not(.motion-paused) [data-motion-kind='lift']:hover{box-shadow:8px 12px 0 var(--soft)}
html:not(.motion-paused) [data-motion-kind='hinge']:hover>strong{transform:perspective(600px) rotateY(-7deg) translateX(6px);transform-origin:left}
html:not(.motion-paused) [data-motion-kind='slide']:hover>strong,html:not(.motion-paused) .company-table>div:hover dt{transform:translateX(8px);color:var(--accent)}
html:not(.motion-paused) nav a:hover{transform:perspective(600px) translateY(-2px) rotateX(8deg)}
html:not(.motion-paused) .field:hover{border-color:var(--line)}
}
}
@keyframes surface-breathe{0%,100%{border-color:var(--line)}50%{border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}}
@keyframes number-depth{50%{transform:perspective(400px) translateZ(16px) rotateY(-15deg)}}
@media(max-width:540px){.site-header nav{gap:10px 16px}.motion-control{max-width:none}.avatar-dock span{display:none}}
@media print{.motion-control{display:none}}

/* Full-page depth choreography: paper layers, copper traces, and a shared field. */
.page-shell{position:relative;isolation:isolate}
.depth-field{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.depth-stage{position:relative;perspective:1200px}
.depth-rail{display:block;position:relative;isolation:isolate;height:112px;margin:30px 0 8px;pointer-events:none;perspective:800px;transform-style:preserve-3d;border-bottom:1px solid var(--line);font-size:0}
.depth-rail:before{content:'';position:absolute;bottom:-1px;left:0;width:var(--trace,25%);max-width:100%;height:2px;background:var(--accent)}
.depth-rail:after{content:'';position:absolute;left:0;right:0;top:25%;height:64%;background:repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 48px);opacity:.32;transform:rotateX(65deg);mask-image:linear-gradient(90deg,transparent,#000)}
.depth-rail i{position:absolute;right:6%;top:10px;width:210px;height:76px;border:1px solid var(--accent);background:linear-gradient(125deg,color-mix(in srgb,var(--surface) 86%,transparent),color-mix(in srgb,var(--accent) 9%,transparent));box-shadow:10px 16px 26px #242a2b12;transform:translate3d(calc(var(--level)*-26px),calc(var(--level)*-8px),calc(var(--level)*24px)) rotateX(52deg) rotateZ(-22deg);transform-origin:center;backface-visibility:visible}
.depth-rail i:before{content:'';position:absolute;inset:12px;background:repeating-linear-gradient(0deg,var(--accent) 0 1px,transparent 1px 12px);opacity:.2}
.depth-rail i:after{content:'';position:absolute;right:12px;top:12px;width:8px;height:8px;background:var(--accent);box-shadow:-16px 0 0 var(--line)}
[data-stage-kind='rings']>.depth-rail i{width:150px;height:92px;border-radius:50%;background:transparent;right:10%;transform:translate3d(calc(var(--level)*-18px),0,calc(var(--level)*22px)) rotateX(45deg) rotateY(calc(var(--level)*25deg))}
[data-stage-kind='rings']>.depth-rail i:before{border:1px dashed var(--accent);border-radius:50%;background:none;opacity:.5}
[data-stage-kind='lattice']>.depth-rail i{width:160px;height:82px;background:repeating-linear-gradient(90deg,transparent 0 19px,color-mix(in srgb,var(--accent) 18%,transparent) 19px 20px),var(--surface);transform:translate3d(calc(var(--level)*-32px),calc(var(--level)*-7px),calc(var(--level)*24px)) rotateX(38deg) rotateY(-25deg)}
h1>.depth-rail{height:96px;margin-bottom:0}
.hero>.depth-rail{grid-column:1/-1;width:100%;margin-top:0}
.site-footer>.depth-rail{width:min(1240px,calc(100% - 80px));margin:32px auto 0;--line:#52605a;--accent:#e99560;--surface:#202829}
#contact-form>.depth-rail{height:80px;margin-top:40px}
.content-list>.depth-rail{list-style:none;padding:0;counter-increment:none;background:none}
.content-list>.depth-rail:before{content:"";top:auto;font-size:0}
/* Flat copy gets a paper surface; pointer highlights remain behind legible text. */
[data-motion-kind]{background-color:var(--surface);box-shadow:0 3px 0 color-mix(in srgb,var(--line) 50%,transparent)}
.content-list:not(.ordered) li{padding-inline:22px}
.content-list.ordered li{padding-right:18px}
.company-table>div{padding-inline:16px}
[data-motion-kind]:after{z-index:-1;background:radial-gradient(ellipse at var(--pointer-x,50%) var(--pointer-y,50%),color-mix(in srgb,var(--accent) 14%,transparent),transparent 65%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}
[data-motion-kind='fold']:after{inset:0 0 auto auto;width:40px;height:40px;opacity:1;background:linear-gradient(225deg,var(--bg) 48%,var(--line) 50%,var(--soft) 54%,transparent 56%);transform-origin:top right}
h3{perspective:900px}
.example{position:relative;perspective:1000px}
.example>div{position:relative;border-bottom:1px solid transparent}
.table-scroll{border:1px solid var(--line);background:var(--surface)}
.table-scroll tbody tr:focus-within,.table-scroll tbody tr:hover{background:var(--soft)}
.field:focus-within{background:var(--soft);border-color:var(--accent)}
.field:after{content:'';position:absolute;left:-2px;top:0;width:2px;height:0;background:var(--accent);pointer-events:none}
.field:focus-within:after{height:100%}
.site-footer nav a,.site-header nav>a:not(.button){position:relative}
.site-footer nav a:after,.site-header nav>a:not(.button):after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(.15);transform-origin:left;opacity:0}
@media(prefers-reduced-motion:no-preference){
html:not(.motion-paused) [data-motion-kind],html:not(.motion-paused) .table-scroll,html:not(.motion-paused) .ai-container{translate:0 var(--surface-y,0px);scale:var(--surface-scale,1);transform:perspective(1000px) rotateX(var(--surface-angle,0deg));transform-origin:50% 50%}
html:not(.motion-paused) .depth-visible>.depth-rail i{translate:0 calc(var(--float,0px) + var(--travel,0px)*.18);rotate:var(--orbit,0deg);transition:box-shadow .4s}
html:not(.motion-paused) .depth-visible>.depth-rail i:nth-child(2){translate:calc(var(--travel,0px)*-.3) calc(var(--float,0px)*-.65);rotate:calc(var(--orbit,0deg)*-.7)}
html:not(.motion-paused) .depth-visible>.depth-rail i:nth-child(3){translate:calc(var(--travel,0px)*.35) calc(var(--float,0px)*1.3);rotate:calc(var(--orbit,0deg)*.5)}
html:not(.motion-paused) .depth-visible>.depth-rail i:after{animation:trace-signal 3s ease-in-out infinite;animation-delay:calc(var(--level)*-.7s)}
html:not(.motion-paused) .magnetic{translate:var(--magnet-x,0px) var(--magnet-y,0px);transition:translate .18s ease-out,transform .25s,box-shadow .25s}
html:not(.motion-paused) .heading-in .title-glyph{animation-name:letter-build;animation-duration:.85s;animation-fill-mode:backwards}
html:not(.motion-paused) .title-glyph{transition:transform .25s,color .25s}
html:not(.motion-paused) .depth-stage:hover>.depth-rail i{box-shadow:12px 20px 28px #a6401725}
.example>div,.field:after,.site-footer nav a:after,.site-header nav>a:after{transition:transform .35s,border-color .35s,height .35s,opacity .35s}
html:not(.motion-paused) .site-footer nav a:hover:after,html:not(.motion-paused) .site-header nav>a:hover:after{transform:scaleX(1);opacity:1}
@media(hover:hover) and (pointer:fine){
html:not(.motion-paused) [data-motion-kind='hinge']:hover{transform-origin:left center;box-shadow:14px 12px 0 var(--soft)}
html:not(.motion-paused) [data-motion-kind='fold']:hover:after{transform:perspective(180px) rotateY(-35deg) rotateX(15deg);width:60px;height:60px}
html:not(.motion-paused) .example:hover>div{transform:translate3d(6px,0,calc(12px));border-color:var(--line)}
html:not(.motion-paused) .example:hover>div:nth-child(2){transform:translate3d(10px,0,20px);transition-delay:70ms}
html:not(.motion-paused) .example:hover>div:nth-child(3){transform:translate3d(14px,0,28px);transition-delay:140ms}
html:not(.motion-paused) .capability:hover h3{transform:translateZ(28px)}
html:not(.motion-paused) .steps li:hover{box-shadow:5px 9px 0 var(--soft)}
}
@media(hover:none){html:not(.motion-paused) .depth-visible>.depth-rail i{animation:touch-layer 5s ease-in-out infinite;animation-delay:calc(var(--level)*-.8s)}}
}
@keyframes letter-build{from{opacity:.3;transform:translate3d(0,24px,-90px) rotateX(-65deg) rotateY(28deg)}to{opacity:1;transform:none}}
@keyframes trace-signal{50%{transform:translateX(-52px);opacity:.4}}
@keyframes touch-layer{50%{margin-top:-9px;box-shadow:14px 22px 26px #a6401722}}
@media(max-width:540px){
.depth-rail{height:88px;margin-top:24px;overflow:clip}
.depth-rail i{width:130px;height:60px;right:8%;top:20px}
[data-stage-kind='rings']>.depth-rail i{width:100px;height:64px}
[data-stage-kind='lattice']>.depth-rail i{width:110px;height:62px}
.content-list:not(.ordered) li{padding-inline:16px}
.company-table>div{padding-inline:12px}
.site-footer>.depth-rail{width:calc(100% - 40px)}
html:not(.motion-paused) .example:hover>div{transform:none}
}
html.motion-paused .depth-field{visibility:hidden}
html.motion-paused [data-motion-kind],html.motion-paused .table-scroll,html.motion-paused .ai-container,html.motion-paused .magnetic,html.motion-paused .depth-rail i{translate:none!important;scale:none!important;rotate:none!important}
@media(prefers-reduced-motion:reduce){.depth-field{display:none}[data-motion-kind],.table-scroll,.ai-container,.magnetic,.depth-rail i{translate:none!important;scale:none!important;rotate:none!important}}
@media print{.depth-field,.depth-rail{display:none}[data-motion-kind],.table-scroll,.ai-container,.magnetic{translate:none!important;scale:none!important}}
