/* Continuous movement stays inside the illustrations; reading surfaces stay still. */
.light-section{background-color:#e4e8e2;background-image:linear-gradient(110deg,#e7ebe6f2 5%,#e7ebe6e3 48%,#e7ebe6bc 100%),url('atmosphere.webp');background-size:cover;background-position:center,center 66%}
.ecosystem-strip{background-position:center,center 38%;border-bottom-color:#56694e25}
.protocol-section{background-image:linear-gradient(100deg,#e6ebe4f0 15%,#e6ebe4df 60%,#e6ebe4c4),url('atmosphere.webp');background-position:center,center 76%}
.protocol-section .flow-stage:not(.is-active):not(.is-complete) .flow-node{color:#344b33}
@media(max-width:759px){.light-section{background-position:center,88% center}}
.platform-section .meter-track i{transform-origin:left;animation:meter-fill 1.4s cubic-bezier(.16,1,.3,1) both}
@keyframes meter-fill{from{transform:scaleX(.12)}to{transform:scaleX(1)}}
.code-window{position:relative;isolation:isolate;overflow:hidden}
.code-window:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:2;border-radius:inherit;background:linear-gradient(112deg,transparent 25%,#d5ffc909 43%,#d5ffc912 48%,transparent 66%);background-size:260% 100%;animation:code-reflection 9s ease-in-out infinite}
@keyframes code-reflection{0%,20%{background-position:130% 0}65%,100%{background-position:-40% 0}}
.code-window pre:not([hidden]){animation:code-arrive .55s cubic-bezier(.16,1,.3,1) both}
@keyframes code-arrive{from{opacity:.6;translate:0 8px}to{opacity:1;translate:0 0}}
.flow-node{position:relative;transition:background .5s,border-color .5s,transform .5s}
.flow-stage.is-active .flow-node{transform:translateY(-5px)}
.flow-node:after{content:'';position:absolute;inset:-7px;border:1px solid #639b473b;border-radius:inherit;opacity:0;scale:.85}
.flow-stage.is-active .flow-node:after{animation:protocol-ring 1.4s ease-out infinite}
.flow-stage.is-complete:not(:last-child):after{background:linear-gradient(90deg,#527b3e,#97c679,#d7e9cd);background-size:200% 100%;animation:protocol-signal 2s linear infinite}
@keyframes protocol-ring{0%{opacity:.75;scale:.85}100%{opacity:0;scale:1.2}}
@keyframes protocol-signal{to{background-position:-200% 0}}
.autonomy-network{isolation:isolate}
.autonomy-network:before,.autonomy-network:after{border-style:solid;border-top-color:#baf68199;border-right-color:#baf68116;animation:autonomy-orbit 19s linear infinite}
.autonomy-network:after{animation-duration:29s;animation-direction:reverse;border-left-color:#baf68173}
@keyframes autonomy-orbit{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}
.network-center:after{content:'';position:absolute;inset:-10px;border:1px solid #baf6813d;border-radius:inherit;animation:hub-breathe 4s ease-in-out infinite}
@keyframes hub-breathe{0%,100%{opacity:.2;scale:.96}50%{opacity:.7;scale:1.06}}
.faq-list details[open]>p{animation:answer-arrive .35s ease-out both}
@keyframes answer-arrive{from{opacity:.6;translate:0 -5px}to{opacity:1;translate:0 0}}
.faq-list summary{transition:color .25s}.faq-list summary:hover{color:#d6ffb6}

/* A glass identity suspended above a textured horizon closes the page. */
.closing-section{position:relative;isolation:isolate;overflow:clip;background:#080e0d;color:#f4f8f1;border-block:1px solid #cbe6bb20}
.closing-section :focus-visible{outline-color:#d6ffb6}
.closing-atmosphere{position:absolute;inset:-8%;z-index:-2;pointer-events:none;background:linear-gradient(90deg,#080e0df7 8%,#080e0dad 44%,#080e0d38 80%),url('atmosphere.webp') center 68%/cover;opacity:.8;animation:closing-clouds 22s ease-in-out infinite alternate}
.closing-section:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#080e0d 0%,transparent 30%,transparent 70%,#080e0d 100%);pointer-events:none}
@keyframes closing-clouds{from{transform:translate3d(-1%,1%,0) scale(1)}to{transform:translate3d(1.8%,-1%,0) scale(1.05)}}
.closing-inner{position:relative;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:24px;min-height:570px;padding-block:75px;text-align:left}
.closing-copy{position:relative;z-index:3;min-width:0}
.closing-inner h2{font-size:clamp(34px,3.8vw,58px);line-height:1.12;max-width:700px;margin:0}
.closing-inner h2>span{display:block;color:#bdcabb;font-size:.74em;line-height:1.25;margin-top:19px;max-width:520px}
.closing-copy>.button{margin-top:33px}
.closing-art{position:relative;min-width:0;height:430px;perspective:900px}
.closing-orbits{position:absolute;width:115%;height:115%;left:-7.5%;top:-7.5%;overflow:visible;animation:closing-orbit-float 11s ease-in-out infinite alternate}
.closing-stream ellipse{stroke-dasharray:3 97;animation:closing-transmit 8s linear infinite}
.closing-stream ellipse:nth-child(2){animation-duration:11s;animation-delay:-4s;stroke:#e9ffe0}
.closing-stream ellipse:nth-child(3){animation-duration:14s;animation-delay:-8s;stroke-width:1.3}
@keyframes closing-transmit{to{stroke-dashoffset:-100}}
@keyframes closing-orbit-float{from{transform:rotate(-3deg) scale(.98)}to{transform:rotate(4deg) scale(1.035)}}
.closing-glass{position:absolute;left:50%;top:50%;width:240px;height:180px;border-radius:24px;transform-style:preserve-3d;border:1px solid #d5efc957;backdrop-filter:blur(18px);background:linear-gradient(125deg,#e2f6db24,#0f211ae8 55%,#a7d19413)}
.closing-glass-front{display:flex;align-items:center;justify-content:center;animation:closing-glass-float 9s ease-in-out infinite alternate}
.closing-glass-front{background:#102019d9}
.closing-glass-front img{width:165px;height:auto;position:relative}
.closing-glass-back{width:260px;height:185px;opacity:.35;animation:closing-glass-back 12s ease-in-out infinite alternate;backdrop-filter:blur(4px)}
@keyframes closing-glass-float{from{transform:translate(-50%,-52%) rotateX(12deg) rotateY(-18deg) rotateZ(-9deg)}to{transform:translate(-50%,-44%) rotateX(5deg) rotateY(12deg) rotateZ(-3deg)}}
@keyframes closing-glass-back{from{transform:translate(-45%,-40%) rotateX(22deg) rotateY(9deg) rotateZ(12deg)}to{transform:translate(-57%,-54%) rotateX(10deg) rotateY(-12deg) rotateZ(5deg)}}
.closing-spark{position:absolute;width:5px;height:5px;border-radius:50%;background:#d8ffba;animation:closing-spark 5s ease-in-out infinite alternate}
.spark-one{left:14%;top:30%}.spark-two{right:16%;top:68%;animation-delay:-2s;width:3px;height:3px}.spark-three{left:51%;top:12%;animation-delay:-4s;width:3px;height:3px}
@keyframes closing-spark{from{opacity:.25;translate:0 -7px}to{opacity:.85;translate:6px 9px}}

/* A continuous rail loop, with one semantic set of official marks. */
.ecosystem-logos{display:block;overflow:hidden;min-width:0;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.ecosystem-track{display:flex;width:max-content;animation:rail-travel 18s linear infinite}
.ecosystem-set{display:flex;align-items:center;justify-content:space-around;flex-shrink:0;width:850px;padding-right:40px;gap:70px}
.ecosystem-set img{flex-shrink:0;max-width:none}
@keyframes rail-travel{to{transform:translateX(-50%)}}
.ecosystem-strip:not(.is-inview) .ecosystem-track{animation-play-state:paused}

/* Foreground atmosphere uses the same photographic cloud material as the backdrop. */
.hero-air{position:absolute;inset:0;z-index:2;overflow:clip;pointer-events:none}
.hero-main{z-index:3}
.hero-fog{position:absolute;inset:18% -12% -8%;background:url('atmosphere.webp') center 68%/cover;mix-blend-mode:screen;mask-image:linear-gradient(180deg,transparent 5%,#0008 46%,#000 70%,transparent 98%);opacity:.2;animation:fog-crossing 14s ease-in-out infinite alternate}
.fog-far{inset:5% -15% 5%;opacity:.13;animation-direction:alternate-reverse;animation-duration:19s;transform:scaleX(-1)}
@keyframes fog-crossing{from{translate:-3% 2%;scale:1.02}to{translate:4% -3%;scale:1.1}}
.hero-motes{position:absolute;inset:0}
.hero-motes i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#d9ead8;animation:mote-rise var(--duration) ease-in-out var(--delay) infinite}
.hero-motes i:nth-child(4n){background:#baf681}
@keyframes mote-rise{0%{opacity:0;transform:translate3d(-15px,35px,0)}25%{opacity:.6}75%{opacity:.35}100%{opacity:0;transform:translate3d(28px,-60px,0)}}
.hero:not(.is-inview) .hero-air *{animation-play-state:paused}
.hero:not(.is-inview) .title-light,section:not(.is-inview) .flow-node:after,section:not(.is-inview) .flow-stage:after{animation-play-state:paused!important}
.hero:before{animation-duration:17s}
.hero h1 .title-line{animation-duration:.7s}
.hero h1 .title-line-last{animation-delay:.08s}
.hero h1 .title-light{animation-duration:3.2s;animation-delay:.3s}
.product-panel:not([hidden]){animation-duration:.4s}
.product-panel:not([hidden]) .demo-table-row,.product-panel:not([hidden]) .meter-row{animation-duration:.45s}
.platform-section .meter-track i{animation-duration:.85s}
.is-inview .chart-line{animation-duration:1.5s}
.flow-node{transition-duration:.3s}.flow-stage.is-active .flow-node:after{animation-duration:.9s}
.flow-stage.is-complete:not(:last-child):after{animation-duration:1.2s}
.code-window:after{animation-duration:6s}
.section-enter .platform-demo,.section-enter .code-window,.section-enter .faq-list{animation-duration:.75s}
.capability-list article{transition:translate .3s,border-color .3s}
.capability-list article:hover{translate:0 -5px;border-color:#baf68180}
.capability-list article .icon{transition:transform .35s}
.capability-list article:hover .icon{transform:rotate(-8deg) scale(1.12)}
.text-link .icon,.footer-top nav a .icon{transition:transform .25s}
.text-link:hover .icon,.footer-top nav a:hover .icon{transform:translate(3px,-2px)}
.faq-list summary>span{transition:transform .25s}
.faq-list details[open] summary>span{transform:rotate(180deg)}
/* A compact editorial FAQ, with the support introduction balanced against the rows. */
.faq-section{align-items:center;padding-block:88px;gap:clamp(40px,6vw,96px)}
.faq-section>div:first-child{width:100%;max-width:none}
.faq-section h2{font-size:clamp(24px,2.5vw,38px);line-height:1.16;letter-spacing:-.035em}
.faq-section>div:first-child>p{margin-top:23px;font-size:14px;line-height:1.75;max-width:310px}
.faq-section>div:first-child>.text-link{margin-top:19px;min-height:44px;display:inline-flex;align-items:center;color:#d7efc8}
.faq-list{padding:0;background:none;border:0;border-radius:0;backdrop-filter:none}
.faq-list details{border-bottom:1px solid #c8d7c51f;transition:background .25s}
.faq-list details:first-child{border-top:1px solid #c8d7c51f}
.faq-list details:last-child{border-bottom:1px solid #c8d7c51f}
.faq-list summary{padding:20px 4px;min-height:70px;font-size:15px;line-height:1.5;gap:20px;color:#e2e9e0}
.faq-list summary:hover{color:#d6ffb6}
.faq-list summary:focus-visible{outline-offset:5px;border-radius:3px}
.faq-list details[open]{background:linear-gradient(90deg,#baf68107,transparent 85%)}
.faq-list details>p{padding:0 34px 22px 4px;max-width:60ch;font-size:14px;line-height:1.75;color:#b3c0b6}
.faq-list summary>span{width:24px;height:24px;border:1px solid #ccdfc52b;border-radius:50%;color:#cee1c3}
.faq-list summary>span:before,.faq-list summary>span:after{width:10px;left:6px;top:11px;background:currentColor}
.faq-list details[open] summary>span{border-color:#baf68160;background:#baf6810b}
.section-enter .faq-list{animation:section-arrive .65s cubic-bezier(.16,1,.3,1) both}
@media(max-width:759px){
  .faq-section{gap:30px;padding-block:60px}
  .faq-section h2{font-size:clamp(24px,6.7vw,28px)}
  .faq-section>div:first-child>p{margin-top:18px}
  .faq-section>div:first-child>.text-link{margin-top:10px}
  .faq-list summary{font-size:14px;min-height:68px;padding-block:18px}
  .faq-list details>p{padding-right:20px}
}
@media(min-width:760px){
  .developer-section,.faq-section{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
  .developer-copy,.faq-section>div:first-child{grid-column:2;grid-row:1}
  .developer-section>.code-window,.faq-list{grid-column:1;grid-row:1}
}
@media(max-width:899px){.ecosystem-set{width:660px;gap:45px;padding-right:30px}}
@media(max-width:599px){.ecosystem-set{width:520px;gap:34px;padding-right:28px}.ecosystem-track{animation-duration:15s}.hero-fog{opacity:.15}.fog-far{opacity:.1}}
@media(max-width:759px){
  .wordmark,.text-link,.demo-caption>a,.footer-top nav a,.footer-bottom a{min-height:44px;display:inline-flex;align-items:center}
  .footer-top nav a{margin-top:0}
  .menu-toggle{min-width:44px;min-height:44px;justify-content:center}
  .nav-actions .button{min-height:44px}
}
@media(prefers-reduced-motion:reduce){
  .ecosystem-track,.hero-air *{animation:none!important}
  .ecosystem-track{width:100%}.ecosystem-set{width:100%;padding:0;gap:20px;flex-wrap:wrap}.ecosystem-set[aria-hidden]{display:none}
  .hero-motes{display:none}.capability-list article:hover{translate:none}
}
section:not(.is-inview) .code-window:after,section:not(.is-inview) .autonomy-network:before,section:not(.is-inview) .autonomy-network:after,section:not(.is-inview) .network-center:after,.closing-section:not(.is-inview) *{animation-play-state:paused!important}
@media(max-width:899px){.closing-inner{min-height:450px;gap:0;padding-block:55px}.closing-inner h2{font-size:36px}.closing-art{height:340px}.closing-glass{width:190px;height:145px}.closing-glass img{width:138px}.closing-glass-back{width:205px;height:150px}}
@media(max-width:599px){.closing-inner{grid-template-columns:1fr;gap:12px;padding:58px 0 36px;min-height:0}.closing-inner h2{font-size:34px}.closing-inner h2>span{font-size:25px;margin-top:16px;max-width:320px}.closing-copy>.button{margin-top:27px}.closing-art{height:300px;margin-inline:6px}.closing-orbits{width:110%;left:-5%}.closing-atmosphere{background-position:center,70% center;background-image:linear-gradient(180deg,#080e0df5,#080e0d80 55%,#080e0d25),url('atmosphere.webp')}.closing-glass{width:190px;height:140px}.closing-glass-back{width:210px;height:150px}}
@media(prefers-reduced-motion:reduce){.closing-section *,.code-window:after,.autonomy-network:before,.autonomy-network:after,.network-center:after,.flow-node:after,.product-panel .meter-track i{animation:none!important}.closing-glass-front{transform:translate(-50%,-50%) rotateY(-12deg) rotateZ(-6deg)}.closing-glass-back{transform:translate(-47%,-43%) rotateZ(9deg)}.closing-stream{display:none}}

/* Porcelain surfaces with etched contour lines. */
.light-section,.protocol-section{background-color:#fafbfc;background-image:repeating-radial-gradient(ellipse at 110% 140%,transparent 0 39px,#7c8d9b0b 40px,transparent 41px 73px),linear-gradient(110deg,#fffffffa,#fafbfcf2 52%,#f3f6faf0),url('atmosphere.webp');background-size:auto,cover,cover;background-position:center}
.protocol-circuit{margin-top:48px;position:relative;filter:drop-shadow(0 16px 16px #24344409)}
.protocol-circuit>svg{display:block;width:100%;height:auto;overflow:visible}
.circuit-terminal>rect:first-child{fill:url(#terminal-glass);stroke:#cad2d9;stroke-width:1}
.circuit-terminal text{font:600 18px var(--font);fill:#202e37}
.circuit-terminal .terminal-sub{font:14px var(--font);fill:#596872}
.circuit-caption{font:11px var(--mono);letter-spacing:2px;fill:#68747b}
.circuit-lane{opacity:0;transition:opacity .18s}
.circuit-packet rect{fill:#182a22;stroke:#a5d27e;stroke-width:1}
.circuit-packet text{font:12px var(--mono);fill:#edffdf}
.circuit-packet{transform:translate(235px,var(--packet-y))}
.circuit-beam{stroke-dasharray:1;stroke-dashoffset:1}
.protocol-circuit[data-phase="0"] .lane-0,.protocol-circuit[data-phase="1"] .lane-1,.protocol-circuit[data-phase="2"] .lane-2,.protocol-circuit[data-phase="3"] .lane-3{opacity:1}
.protocol-circuit[data-phase="0"] .lane-0 .circuit-packet,.protocol-circuit[data-phase="1"] .lane-1 .circuit-packet,.protocol-circuit[data-phase="2"] .lane-2 .circuit-packet,.protocol-circuit[data-phase="3"] .lane-3 .circuit-packet{animation:packet-traverse 1s cubic-bezier(.35,0,.2,1) both}
.protocol-circuit[data-phase="1"] .lane-1 .circuit-packet,.protocol-circuit[data-phase="3"] .lane-3 .circuit-packet{animation-direction:reverse}
.protocol-circuit[data-phase="0"] .lane-0 .circuit-beam,.protocol-circuit[data-phase="1"] .lane-1 .circuit-beam,.protocol-circuit[data-phase="2"] .lane-2 .circuit-beam,.protocol-circuit[data-phase="3"] .lane-3 .circuit-beam{animation:wire-traverse 1s ease-out both}
.protocol-circuit .reverse .circuit-beam{transform:rotate(180deg);transform-box:fill-box;transform-origin:center}
@keyframes packet-traverse{0%{transform:translate(235px,var(--packet-y));opacity:0}12%,88%{opacity:1}100%{transform:translate(765px,var(--packet-y));opacity:0}}
@keyframes wire-traverse{0%{stroke-dashoffset:1;opacity:0}20%{opacity:1}100%{stroke-dashoffset:0;opacity:.4}}
.protocol-flow{margin-top:30px;gap:30px}
.protocol-section .flow-node,.protocol-section .flow-stage:after{display:none}
.protocol-section .flow-stage{border-top:1px solid #cdd5da;padding-top:18px;transition:border-color .3s}
.protocol-section .flow-stage.is-active{border-color:#608e41}
.protocol-section .flow-stage h3{margin-top:0;font-size:18px;transition:color .3s}
.protocol-section .flow-stage.is-active h3{color:#456e2d}
.protocol-section .flow-stage code{color:#53626a}
@media(max-width:759px){.protocol-circuit{margin:32px -16px 0}.circuit-terminal text{font-size:21px}.circuit-terminal .terminal-sub{font-size:17px}.protocol-flow{gap:25px 18px}.protocol-section .flow-stage{padding-left:0}.protocol-section .flow-stage h3{font-size:16px}}
@media(prefers-reduced-motion:reduce){.protocol-circuit *{animation:none!important}.protocol-circuit .circuit-lane{opacity:.5}.protocol-circuit .circuit-packet{transform:translate(500px,var(--packet-y))}.protocol-circuit .circuit-beam{stroke-dashoffset:0}}
section:not(.is-inview) .protocol-circuit *{animation-play-state:paused!important}

@media(max-width:759px){.circuit-terminal text{font-size:28px}.circuit-terminal .terminal-sub,.circuit-caption{display:none}.circuit-packet text{font-size:22px}.circuit-packet rect{width:120px;x:-60px;height:44px;y:-24px}}

/* Compact editorial layout: the protocol remains supporting artwork. */
.protocol-section{padding:72px 0 48px}
.protocol-section>.shell{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:64px;align-items:center;max-width:1240px}
.protocol-section .section-heading{display:block;grid-column:1;margin:0}
.protocol-section .section-heading h2{font-size:clamp(30px,3vw,42px);line-height:1.13}
.protocol-section .section-heading>div{max-width:390px;margin-top:22px}
.protocol-section .section-heading p{font-size:14px;line-height:1.8}
.protocol-section .protocol-circuit{grid-column:2;width:100%;max-width:650px;margin:0;filter:none}
.protocol-section .circuit-terminal text{font:600 16px var(--font);fill:#202e37}
.protocol-section .circuit-packet text{font:11px var(--mono)}
.protocol-section .circuit-packet rect{x:-37px;y:-13px;width:74px;height:26px}
.protocol-section .protocol-flow{grid-column:1/-1;margin-top:40px;gap:30px}
.protocol-section .flow-stage h3{font-size:16px}
.protocol-section .flow-stage p{font-size:13px;margin-top:8px}
.protocol-section .flow-stage code{font-size:11px;margin-top:12px}
.protocol-section .protocol-foot{grid-column:1/-1;margin-top:28px;padding-top:16px}
@keyframes packet-traverse{0%{transform:translate(190px,var(--packet-y));opacity:0}12%,88%{opacity:1}100%{transform:translate(530px,var(--packet-y));opacity:0}}
@media(max-width:759px){.protocol-section{padding:48px 0 30px}.protocol-section>.shell{grid-template-columns:1fr;gap:0}.protocol-section .section-heading h2{font-size:32px}.protocol-section .section-heading>div{margin-top:18px;max-width:none}.protocol-section .protocol-circuit{grid-column:1;margin:28px 0 0}.protocol-section .protocol-flow{grid-template-columns:1fr 1fr;margin-top:22px;gap:24px 18px}.protocol-section .circuit-terminal text{font-size:22px}.protocol-section .circuit-packet text{font-size:18px}.protocol-section .circuit-packet rect{x:-47px;width:94px}.protocol-section .flow-stage h3{font-size:15px}}
@media(prefers-reduced-motion:reduce){.protocol-section .circuit-packet{transform:translate(360px,var(--packet-y))}}

/* Shared architectural grid, confined to the white surfaces. */
.light-section{position:relative;isolation:isolate;overflow:hidden}
.light-section:before,.light-section:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none}
.light-section:before{background-image:linear-gradient(#62748213 1px,transparent 1px),linear-gradient(90deg,#62748213 1px,transparent 1px);background-size:96px 96px;mask-image:linear-gradient(110deg,#0009,#000 60%,#0005)}
.light-section:after{display:none}
.title-arrived{animation:section-title-focus .85s cubic-bezier(.16,1,.3,1) both;transform-origin:left center}
@keyframes section-title-focus{from{opacity:.55;transform:translateY(18px);filter:blur(4px);clip-path:inset(0 0 12% 0)}to{opacity:1;transform:none;filter:blur(0);clip-path:inset(0)}}
.text-link .icon{transition:transform .3s cubic-bezier(.16,1,.3,1)}
.text-link:hover .icon{transform:translateX(4px)}
@media(max-width:759px){.light-section:before{background-size:64px 64px}}
@media(prefers-reduced-motion:reduce){.title-arrived,.light-section:after{animation:none!important}.light-section:after{display:none}.text-link .icon{transition:none}}

/* The shared timeline retains arrivals and pauses without resetting progress. */
.protocol-circuit .circuit-packet,.protocol-circuit .circuit-beam{animation:none!important}
.protocol-circuit .circuit-lane{transition:opacity .45s ease}
.protocol-circuit .circuit-packet{opacity:1;will-change:transform}

/* The original logo floats as an extruded silhouette, with no rectangular carrier. */
.closing-logo-sculpture{position:absolute;left:50%;top:50%;width:clamp(240px,25vw,350px);aspect-ratio:797/204;transform-style:preserve-3d;animation:closing-logo-drift 16s cubic-bezier(.45,0,.55,1) infinite alternate}
.closing-logo-edge{position:absolute;inset:0;mask:url('../logo.png') center/contain no-repeat;background:linear-gradient(145deg,#e5f0ef 0%,#96aaa9 17%,#304641 39%,#bbcfca 53%,#526963 70%,#18312b 100%);transform:translateZ(calc(var(--depth) * .6));backface-visibility:hidden}
.closing-logo-edge:nth-child(3n){background:linear-gradient(140deg,#b9ceca,#4c6860 43%,#d6e7e0 65%,#263f36)}
.closing-logo-face{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;transform:translateZ(1px);backface-visibility:hidden}
@keyframes closing-logo-drift{from{transform:translate(-50%,calc(-50% - 5px)) rotateX(9deg) rotateY(-19deg) rotateZ(-4deg)}to{transform:translate(-50%,calc(-50% + 5px)) rotateX(5deg) rotateY(-9deg) rotateZ(-2deg)}}
@media(max-width:599px){.closing-logo-sculpture{width:min(76%,280px)}}
@media(prefers-reduced-motion:reduce){.closing-logo-sculpture{animation:none;transform:translate(-50%,-50%) rotateX(12deg) rotateY(-20deg) rotateZ(-6deg)}}

/* Satin silver sides and a quiet bevel, with the supplied face untouched. */
.closing-logo-edge,.closing-logo-edge:nth-child(3n){background:linear-gradient(155deg,#f0f5f7 0%,#abbec5 16%,#526970 38%,#dce7eb 52%,#829b9f 67%,#253c40 88%,#bacdce 100%)}
.closing-logo-sculpture:before{content:'';position:absolute;inset:0;mask:url('../logo.png') center/contain no-repeat;background:#020808;opacity:.36;filter:blur(9px);transform:translate3d(5px,20px,-28px)}
.closing-logo-sculpture:after{content:'';position:absolute;inset:-.6px;mask:url('../logo.png') center/contain no-repeat;background:linear-gradient(150deg,#fff,#c2d9df 24%,#3d565e 48%,#eef5f4 76%,#a0b6b8);transform:translateZ(.5px);backface-visibility:hidden}
.closing-orbits{opacity:.72;animation-duration:18s}
.closing-stream ellipse{animation-duration:14s}
.closing-stream ellipse:nth-child(2){animation-duration:18s}
.closing-stream ellipse:nth-child(3){animation-duration:22s}
@media(prefers-reduced-motion:reduce){.closing-logo-sculpture{transform:translate(-50%,-50%) rotateX(7deg) rotateY(-16deg) rotateZ(-3deg)}}

.closing-motes{position:absolute;inset:0;overflow:clip;pointer-events:none;z-index:0;mask-image:linear-gradient(180deg,transparent,#000 16%,#000 85%,transparent)}
.closing-motes i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#e1eee5;animation:closing-mote-drift var(--duration) ease-in-out var(--delay) infinite}
.closing-motes i:nth-child(4n){background:#baf681}
.closing-motes i:nth-child(7n){width:3px;height:3px;box-shadow:0 0 5px #cceeb966}
@keyframes closing-mote-drift{0%{transform:translate3d(0,22px,0);opacity:0}25%{opacity:.55}70%{opacity:.3}100%{transform:translate3d(28px,-50px,0);opacity:0}}
.page-hidden .closing-motes i{animation-play-state:paused!important}
@media(max-width:599px){.closing-motes i:nth-child(3n){display:none}}
@media(prefers-reduced-motion:reduce){.closing-motes{display:none}}

/* Give the central brand more presence without resizing the resource cards. */
.hero .network-hub{transform:translate(-50%,-50%) scale(1.2)}
.hero .network-scene{margin-top:30px}
@media(max-width:599px){.hero .network-hub{transform:translate(-50%,-50%) scale(1.15)}.hero .network-scene{margin-top:26px}}

/* Layered luminous dust, beneath the hero content. */
.hero-motes i{box-shadow:0 0 6px #d9ead866}
.hero-motes i:nth-child(4n){box-shadow:0 0 8px #baf68188,0 0 16px #baf68128}
.hero-motes i:nth-child(11n){background:#f1ffe5;box-shadow:0 0 10px #dcffc099,0 0 22px #baf68130}
@media(max-width:599px){.hero-motes i:nth-child(3n){display:none}}
