/* Solid CSS geometry. No filters on preserve-3d parents: filters flatten faces. */
.hero-layout{min-height:810px}
.hero{min-height:1050px}
.core-scene{height:740px}
.live-panel{bottom:48px}
.chip-stage{position:absolute;z-index:5;top:60px;left:50%;width:300px;height:240px;transform:translateX(-50%);perspective:950px;pointer-events:none;direction:ltr}
.chip-shadow{position:absolute;left:25px;right:25px;bottom:12px;height:65px;border-radius:50%;background:radial-gradient(ellipse,rgba(118,87,255,.5),transparent 70%);transform:rotate(-15deg)}
.chip-float{position:absolute;left:50px;top:24px;width:200px;height:170px;transform-style:preserve-3d;animation:chip-hover 7s ease-in-out infinite}
.chip-assembly{position:relative;width:200px;height:170px;transform-style:preserve-3d;transform:rotateX(calc(53deg + var(--rx,0deg))) rotateZ(-32deg) rotateY(var(--ry,0deg));transition:transform .25s ease-out}
.chip-board{position:absolute;inset:0;border:1px solid #9ab686;background:#102219;transform-style:preserve-3d;box-shadow:0 0 0 5px #17221b,0 0 0 6px #455240}
.chip-board::before{content:"";position:absolute;inset:12px;border:1px solid #709d39;background:repeating-linear-gradient(90deg,transparent 0 15px,#355333 15px 16px),repeating-linear-gradient(0deg,transparent 0 15px,#355333 15px 16px)}
.chip-board-base{transform:translateZ(-26px);background-color:#172319}
.chip-board-base span{position:absolute;bottom:3px;left:6px;font:7px Consolas,monospace;color:#c7ff3d;letter-spacing:1px}
.chip-board-mid{inset:13px;transform:translateZ(9px);background:#382770;border-color:#b99fff;box-shadow:0 0 0 4px #291e50,0 0 0 5px #8f74de}
.chip-board-mid::before{inset:8px;background:repeating-linear-gradient(90deg,transparent 0 13px,#8c69db 13px 14px);border-color:#8c69db}
.chip-body{position:absolute;left:35px;top:30px;width:130px;height:110px;transform:translateZ(55px);transform-style:preserve-3d}
.chip-face{position:absolute;border:1px solid #b6d697;backface-visibility:hidden}
.chip-top{inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:9px 12px;transform:translateZ(20px);background:linear-gradient(135deg,#718077 0%,#273b30 25%,#14241b 70%,#506b50);box-shadow:inset 0 0 0 4px #1b2c21,inset 0 0 0 5px #789367;color:var(--acid)}
.chip-top small{font:6px Consolas,monospace;letter-spacing:1px}.chip-top b{display:flex;align-items:center;justify-content:space-between;font:900 44px Arial,sans-serif}.chip-top b span{font-size:30px}
.chip-front,.chip-back{width:130px;height:20px;background:linear-gradient(#416045,#101a13)}
.chip-front{top:110px;transform-origin:top;transform:translateZ(20px) rotateX(-90deg);display:flex;justify-content:space-evenly;align-items:center}
.chip-front i{width:9px;height:6px;background:var(--acid);box-shadow:0 0 6px #96d632}
.chip-back{top:0;transform-origin:top;transform:translateZ(20px) rotateX(90deg)}
.chip-left,.chip-right{height:110px;width:20px;background:repeating-linear-gradient(0deg,#182a1e 0 7px,#65854a 7px 9px)}
.chip-left{left:0;transform-origin:left;transform:translateZ(20px) rotateY(90deg)}
.chip-right{left:130px;transform-origin:left;transform:rotateY(-90deg)}
.chip-caption{position:absolute;bottom:0;width:100%;text-align:center;font:8px Consolas,monospace;letter-spacing:2px;color:#90a28c}
@keyframes chip-hover{0%,100%{transform:translateY(0) rotateY(-4deg)}50%{transform:translateY(-12px) rotateY(6deg)}}

.pricing-heading{grid-template-columns:170px minmax(0,1fr) 260px;gap:40px}
.pricing-aside{min-width:0}
.pricing-aside p{font-size:.77rem;color:#9eaa9e}
.keycap-scene{position:relative;width:240px;height:190px;margin:0 auto 18px;perspective:700px;direction:ltr;pointer-events:none}
.keycap-scene::after{content:"";position:absolute;bottom:0;left:10%;width:80%;height:35px;background:radial-gradient(ellipse,rgba(118,87,255,.35),transparent 70%)}
.keycap{position:absolute;width:106px;height:96px;transform-style:preserve-3d}
.keycap-primary{z-index:2;left:16px;top:55px;transform:rotateX(32deg) rotateY(-24deg) rotateZ(-18deg);animation:key-drift 8s ease-in-out infinite}
.keycap-secondary{left:130px;top:25px;transform:rotateX(32deg) rotateY(-24deg) rotateZ(16deg);--key-top:#916cff;--key-edge:#523195;--key-text:#fff}
.keycap-top{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:14px;border:1px solid #e1ff97;border-radius:12px;background:var(--key-top,#c7ff3d);color:var(--key-text,#15210a);font:900 27px Arial,sans-serif;transform:translateZ(25px);box-shadow:inset 0 0 0 7px rgba(255,255,255,.16),inset 0 -5px 10px rgba(0,0,0,.15)}
.keycap-top small{font:9px Consolas,monospace;letter-spacing:2px;line-height:1.5}
.keycap-front{position:absolute;top:96px;width:106px;height:25px;background:var(--key-edge,#6d961b);border:1px solid #749947;border-radius:0 0 8px 8px;transform-origin:top;transform:translateZ(25px) rotateX(-90deg)}
.keycap-side{position:absolute;left:106px;width:25px;height:96px;background:var(--key-edge,#8eb426);border:1px solid #87a350;transform-origin:left;transform:rotateY(-90deg)}
@keyframes key-drift{0%,100%{transform:translateY(0) rotateX(32deg) rotateY(-24deg) rotateZ(-18deg)}50%{transform:translateY(-9px) rotateX(38deg) rotateY(-18deg) rotateZ(-14deg)}}

.portal-stage{position:absolute;left:-150px;top:70px;width:540px;height:540px;perspective:950px;pointer-events:none;direction:ltr}
.portal-rig{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(18deg) rotateY(48deg) rotateZ(-18deg);animation:portal-sway 12s ease-in-out infinite}
.portal-ring{position:absolute;inset:35px;border:14px solid #b5ed44;border-radius:50%;box-shadow:inset 2px 2px 0 #e6ffa8,4px 5px 0 #6f962c,9px 12px 0 #253916;transform:translateZ(-65px)}
.portal-ring:nth-child(2){inset:83px;border-width:9px;border-color:#c5b3ff;transform:translateZ(15px);box-shadow:inset 2px 2px 0 #ede6ff,5px 7px 0 #422885}
.portal-ring:nth-child(3){inset:138px;border-width:12px;transform:translateZ(95px)}
.portal-core{position:absolute;inset:211px;display:grid;place-items:center;border:1px solid #e2ffa1;background:#101c0d;color:var(--acid);font:900 64px Arial,sans-serif;transform:translateZ(165px) rotateZ(20deg);box-shadow:8px 8px 0 #1e3614,15px 15px 0 #456525}
@keyframes portal-sway{0%,100%{transform:rotateX(18deg) rotateY(48deg) rotateZ(-18deg)}50%{transform:rotateX(-5deg) rotateY(34deg) rotateZ(-7deg)}}

/* Pause decorative loops outside the viewport. */
.depth-paused .chip-float,.depth-paused .keycap-primary,.depth-paused .portal-rig{animation-play-state:paused}
@media(max-width:1100px){.pricing-heading{grid-template-columns:1fr 240px}.pricing-heading>.section-mark{grid-column:1/-1}.pricing-aside{grid-column:2}.pricing-heading>h2{font-size:4rem}}
@media(max-width:900px){.hero{min-height:auto}.hero-layout{min-height:auto}.core-scene{height:740px}.portal-stage{left:-260px;opacity:.65}}
@media(max-width:620px){
  .core-scene{height:635px}.chip-stage{top:64px;transform:translateX(-50%) scale(.86);transform-origin:top center}.live-panel{bottom:40px}
  .pricing-heading{grid-template-columns:1fr;gap:22px}.pricing-aside{grid-column:auto;display:flex;flex-direction:column;align-items:center}.pricing-aside p{align-self:stretch}.pricing-heading>h2{font-size:clamp(2.7rem,13vw,4rem)}
  .keycap-scene{height:170px;margin-bottom:16px;transform:scale(.9)}
  .closing-section{padding-top:215px;min-height:820px;padding-bottom:70px}.portal-stage{width:540px;height:540px;left:calc(50% - 270px);top:-145px;transform:scale(.5);opacity:.95}.closing-copy{position:relative}
}
@media(prefers-reduced-motion:reduce){.chip-float,.keycap-primary,.portal-rig{animation:none}.chip-assembly{transition:none}}
