/* Motion uses compositor transforms and opacity. Scrolling stays native. */
.appearance-controls,.utility-right{display:flex;align-items:center;gap:20px}.appearance-controls{gap:6px}.appearance-button{border:1px solid #e7e7e72b;color:inherit;background:#ffffff05;border-radius:4px;min-height:28px;display:inline-flex;gap:7px;align-items:center;padding:5px 9px;font-family:var(--heading);font-size:8px;font-weight:600;line-height:1;letter-spacing:.02em;white-space:nowrap;transition:background .25s,border-color .25s}.appearance-button:hover{background:#f57c0014;border-color:#f57c0080}.appearance-button svg{width:13px;height:13px;flex:none}.appearance-button:disabled{opacity:.65;cursor:default}.appearance-button .moon-icon,[data-theme=light] .appearance-button .sun-icon{display:none}[data-theme=light] .appearance-button .moon-icon{display:block}[data-motion=off] .pause-icon,[data-motion=on] .play-icon{display:none}.footer-preferences{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.footer-preferences .appearance-button{font-size:9px;min-height:32px}
.hero-atmosphere{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.hero-atmosphere:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#8895a80a 1px,transparent 1px),linear-gradient(90deg,#8895a80a 1px,transparent 1px);background-size:85px 85px;mask-image:linear-gradient(90deg,#000,transparent 72%)}.hero-atmosphere:after{content:'';position:absolute;width:580px;height:580px;right:1%;top:7%;background:radial-gradient(circle,#f57c0011,transparent 62%);border:1px solid #f57c002b;border-radius:50%;box-shadow:0 0 90px #f57c0009,inset 0 0 90px #f57c0005}.hero-scan{position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#f57c0009 45%,#f57c0033 49.8%,#f57c0009 50.2%,transparent 65%);opacity:0;transform:translateX(-90%)}.hero-coordinate{position:absolute;right:7%;top:15%;width:24px;height:24px;border:1px solid #f57c006b;transform:rotate(45deg)}.hero-coordinate:before,.hero-coordinate:after{content:'';position:absolute;background:#f57c006b}.hero-coordinate:before{width:40px;height:1px;left:-9px;top:11px}.hero-coordinate:after{height:40px;width:1px;left:11px;top:-9px}.hero-coordinate.second{top:auto;bottom:15%;right:45%;width:14px;height:14px}.hero h1 .line{transform-origin:0 100%}.hero h1 .accent{position:relative;width:fit-content}.hero h1 .accent:after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:2px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--accent),transparent)}
.discipline-strip{overflow:hidden;border-block:1px solid var(--line);background:#ebe8e3;padding:19px 0;color:#555c65;position:relative;isolation:isolate}.discipline-track{display:flex;width:max-content;align-items:center;gap:42px;will-change:auto}.discipline-track>span{display:flex;gap:42px;align-items:center;font-family:var(--heading);font-size:10px;font-weight:550;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.discipline-track i{font-size:15px;line-height:1;color:var(--accent);font-style:normal}.discipline-strip:before,.discipline-strip:after{content:'';position:absolute;top:0;bottom:0;width:8%;z-index:1;pointer-events:none}.discipline-strip:before{left:0;background:linear-gradient(90deg,#ebe8e3,transparent)}.discipline-strip:after{right:0;background:linear-gradient(270deg,#ebe8e3,transparent)}
.button{position:relative;isolation:isolate;overflow:hidden;transition:background .3s,box-shadow .3s,transform .35s cubic-bezier(.16,1,.3,1),border-color .3s}.button:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 15%,#ffffff38 45%,transparent 70%);transform:translateX(-130%) skewX(-15deg);transition:transform .75s cubic-bezier(.16,1,.3,1)}.button:hover:before,.button:focus-visible:before{transform:translateX(130%) skewX(-15deg)}.button:hover{transform:translate3d(var(--magnet-x,0),calc(var(--magnet-y,0px) - 3px),0);box-shadow:0 12px 28px #0b10131c}.button .arrow{transition:transform .4s cubic-bezier(.16,1,.3,1)}.button:hover .arrow{transform:translate(3px,-3px)}.text-link{position:relative}.text-link:after{content:'';position:absolute;height:1px;left:0;right:0;bottom:-1px;background:var(--accent);transform-origin:left;transform:scaleX(0);transition:transform .5s cubic-bezier(.16,1,.3,1)}.text-link:hover:after,.text-link:focus-visible:after{transform:scaleX(1)}.capability-row,.resource-row,.product-row{position:relative}.capability-row:before,.resource-row:before,.product-row:before{content:'';position:absolute;left:0;right:0;height:1px;top:-1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.16,1,.3,1)}.capability-row:hover:before,.resource-row:hover:before,.product-row:hover:before,.capability-row:focus-visible:before,.resource-row:focus-visible:before,.product-row:focus-visible:before{transform:scaleX(1)}.product-row .product-icon{transition:transform .45s,color .45s,background .45s}.product-row:hover .product-icon{transform:rotate(-5deg);color:#111;background:#f57c00}.article-card,.learning-card,.learning-feature{position:relative;isolation:isolate;overflow:hidden;transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s,border-color .4s,background .4s}.article-card:before,.learning-card:before,.learning-feature:before{content:'';position:absolute;inset:0;z-index:-1;opacity:0;pointer-events:none;background:radial-gradient(450px circle at var(--pointer-x,50%) var(--pointer-y,50%),#f57c001a,transparent 70%);transition:opacity .4s}.article-card[data-pointer-active]:before,.learning-card[data-pointer-active]:before,.learning-feature[data-pointer-active]:before{opacity:1}.article-card:hover,.learning-card:hover{transform:translateY(-6px);border-color:#f57c0070;box-shadow:0 20px 40px #00000010}.structure-stage img{transition:transform 1s cubic-bezier(.16,1,.3,1);transform-origin:center}.structure-stage:hover img{transform:scale(1.035)}.zoom-image{transition:transform .35s,background .35s}.zoom-image:hover{transform:rotate(45deg);background:#f57c00;color:#111}.product-preview img{transition:transform 1s cubic-bezier(.16,1,.3,1)}.product-preview:hover img{transform:scale(1.035)}.footer-col>a{width:fit-content;position:relative}.footer-col>a:after{content:'';position:absolute;left:0;right:0;bottom:3px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .4s}.footer-col>a:hover:after{transform:scaleX(1)}.site-footer{position:relative;isolation:isolate;overflow:hidden}.site-footer:before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:translateX(-100%);pointer-events:none}.field input,.field textarea,.field select{transition:border-color .25s,box-shadow .25s}.field input:focus,.field textarea:focus,.field select:focus{border-color:#b75b00;box-shadow:0 0 0 4px #f57c0012}.faq summary:after{transition:transform .3s}.faq details[open] summary:after{transform:rotate(180deg)}
@media(prefers-reduced-motion:no-preference){
 [data-motion=on] .discipline-track{animation:discipline-travel 38s linear infinite}
 [data-motion=on] .hero-atmosphere:after{animation:orbital-breath 9s ease-in-out infinite}
 [data-motion=on] .hero-scan{animation:engineering-scan 12s ease-in-out infinite 1s}
 [data-motion=on] .hero h1 .accent:after{animation:accent-draw 1.3s cubic-bezier(.16,1,.3,1) .75s both}
 [data-motion=on] .hero-coordinate{animation:coordinate-turn 14s linear infinite}
 [data-motion=on] .site-footer:before{animation:footer-trace 8s ease-in-out infinite}
 [data-motion=on] .faq details[open] p{animation:detail-open .4s cubic-bezier(.16,1,.3,1)}
 [data-motion=on] .timeline i{animation:timeline-pulse 3s ease-in-out infinite alternate}
 [data-motion=on] .timeline i:nth-child(2){animation-delay:-1s}[data-motion=on] .timeline i:nth-child(3){animation-delay:-2s}
 [data-motion=on].has-js .nav-links.is-open{animation:menu-enter .4s cubic-bezier(.16,1,.3,1)}
 @keyframes discipline-travel{to{transform:translateX(-50%)}}
 @keyframes orbital-breath{50%{transform:scale(1.08);opacity:.55}}
 @keyframes engineering-scan{0%,25%{opacity:0;transform:translateX(-90%)}40%{opacity:1}75%,100%{opacity:0;transform:translateX(90%)}}
 @keyframes accent-draw{to{transform:scaleX(1)}}
 @keyframes coordinate-turn{to{transform:rotate(225deg)}}
 @keyframes footer-trace{50%,100%{transform:translateX(100%)}}
 @keyframes detail-open{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
 @keyframes timeline-pulse{to{transform:scaleY(.7);opacity:.6}}
 @keyframes menu-enter{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
}
[data-motion=off]{scroll-behavior:auto}[data-motion=off] *,[data-motion=off] *:before,[data-motion=off] *:after{animation:none!important;transition:none!important}[data-motion=off] .button:hover,[data-motion=off] .article-card:hover,[data-motion=off] .learning-card:hover,[data-motion=off] .structure-stage:hover img,[data-motion=off] .product-preview:hover img{transform:none}[data-motion=off] .reading-progress{display:none}[data-motion=off]::view-transition-group(*){animation:none!important}
@media(max-width:600px){.utility .wrap{align-items:center;padding-block:9px}.utility-scope{display:none}.utility-right{justify-content:space-between;width:100%;gap:10px}.utility-link-label{display:inline!important;font-size:7px;letter-spacing:.02em}.appearance-button{font-size:7px;padding:6px 7px;gap:5px;min-height:30px}.appearance-button svg{width:12px;height:12px}.appearance-controls{gap:5px}.discipline-strip{padding-block:15px}.discipline-track,.discipline-track>span{gap:26px}.discipline-track>span{font-size:8px}.hero-atmosphere:after{width:380px;height:380px;right:-40%;top:10%}.footer-preferences{width:100%;margin-top:8px}.footer-preferences .appearance-button{font-size:9px}.hero-coordinate.second{display:none}}
@media print{.appearance-controls,.footer-preferences,.discipline-strip,.hero-atmosphere{display:none!important}}

.discipline-track{gap:0}.discipline-track>span{padding-right:42px}@media(max-width:600px){.discipline-track>span{padding-right:26px}}
