/* Small, bounded 3D scenes: transform-only motion with visible content around them. */
.motion-sculpture{display:contents}.sculpture-caption{display:none}
.depth-object{height:205px;max-width:310px;margin:28px auto 0;position:relative;perspective:850px;isolation:isolate}
.visual-cube{--edge:102px;position:absolute;width:var(--edge);height:var(--edge);left:50%;top:42%;margin-left:calc(var(--edge)/-2);margin-top:calc(var(--edge)/-2);transform-style:preserve-3d;transform:rotateX(-14deg) rotateY(28deg);animation:cube-revolve 24s linear infinite;animation-play-state:paused}
.cube-face{position:absolute;inset:0;border:1px solid #c9c6e883;border-radius:9px;overflow:hidden;background:#161425;backface-visibility:hidden}
.cube-face img{width:100%;height:100%;object-fit:cover;opacity:.95}
.cube-front{transform:translateZ(calc(var(--edge)/2))}.cube-back{transform:rotateY(180deg) translateZ(calc(var(--edge)/2))}.cube-right{transform:rotateY(90deg) translateZ(calc(var(--edge)/2))}.cube-left{transform:rotateY(-90deg) translateZ(calc(var(--edge)/2))}.cube-top{transform:rotateX(90deg) translateZ(calc(var(--edge)/2))}.cube-bottom{transform:rotateX(-90deg) translateZ(calc(var(--edge)/2))}
.depth-ring{position:absolute;width:240px;height:160px;left:50%;top:42%;margin:-80px 0 0 -120px;border:1px solid #68cfdd80;border-radius:50%;transform:rotateX(62deg) rotateZ(-25deg);box-shadow:0 0 24px #66c8e611;animation:orbit-turn 14s ease-in-out infinite;animation-play-state:paused}
.ring-cross{width:190px;height:190px;margin:-95px 0 0 -95px;border-color:#c683ce80;transform:rotateY(65deg) rotateZ(20deg);animation-name:orbit-cross;animation-duration:18s}
.motion-active .visual-cube,.motion-active .depth-ring{animation-play-state:running}
.depth-object:after{content:'';position:absolute;bottom:12px;left:20%;right:20%;height:10px;background:#8c6aa329;border-radius:50%;filter:blur(8px)}
.motion-shimmer{position:relative;overflow:hidden}.motion-shimmer:after{content:'';position:absolute;pointer-events:none;inset:-100% -40%;background:linear-gradient(110deg,transparent 42%,#ffffff15 50%,transparent 58%);transform:translateX(-55%);animation:surface-shine 9s ease-in-out infinite;animation-play-state:paused}
.motion-active.motion-shimmer:after{animation-play-state:running}
.report-graph span{transform-origin:bottom;animation:graph-breathe 5s ease-in-out infinite;animation-delay:calc(var(--bar,0)*-.23s);animation-play-state:paused}.motion-active .report-graph span{animation-play-state:running}
html.no-motion .visual-cube,html.no-motion .depth-ring,html.no-motion .motion-shimmer:after,html.no-motion .report-graph span{animation-play-state:paused!important}
@keyframes cube-revolve{from{transform:rotateX(-14deg) rotateY(28deg)}to{transform:rotateX(-14deg) rotateY(388deg)}}
@keyframes orbit-turn{50%{transform:rotateX(69deg) rotateZ(35deg)}}
@keyframes orbit-cross{50%{transform:rotateY(48deg) rotateZ(-20deg)}}
@keyframes surface-shine{0%,68%{transform:translateX(-55%)}95%,100%{transform:translateX(55%)}}
@keyframes graph-breathe{50%{transform:scaleY(.88)}}
@media(max-width:700px){
 .motion-sculpture{display:block;height:156px;width:100%;position:relative;flex:none;overflow:hidden;margin:-9px 0 3px;border-radius:20px;background:radial-gradient(ellipse at center,#6883b818,transparent 72%)}
 #bws-sculpture{display:block;inset:0;width:100%;height:100%;opacity:1;z-index:0}
 .sculpture-caption{display:block;position:absolute;bottom:6px;width:100%;text-align:center;font-size:8px;letter-spacing:.22em;color:#b9bad0;z-index:1}
 .hero-stage{gap:14px}.hero-browser{transform:perspective(950px) rotateY(-3deg) rotateX(2deg)!important;transform-origin:center;box-shadow:0 16px 40px #58aec324}
 .hero-chat{transform:perspective(950px) rotateY(2deg)!important;box-shadow:0 16px 35px #b864b31c}
 .hero h1{font-size:clamp(31px,9.15vw,39px)}.hero-copy>p{max-width:36ch}.section{padding:64px 0}
 .hero-art{opacity:.22;object-fit:cover}.depth-object{height:168px;margin:22px auto 0;max-width:280px}.visual-cube{--edge:84px}
 .depth-ring{width:220px;height:140px;margin:-70px 0 0 -110px}.ring-cross{width:155px;height:155px;margin:-77.5px 0 0 -77.5px}
 .dimension-tags{gap:8px}.dimension-card{box-shadow:0 18px 40px #0004}.projects{scroll-padding-inline:2px}.project-window{border-radius:20px}
 .service-card{box-shadow:0 13px 38px #0000000c}.service-mini-browser>img{object-fit:cover}.service-message{max-width:100%;box-sizing:border-box}
 .hero-browser,.hero-chat,.report-panel{will-change:auto}.depth-object,.motion-sculpture{touch-action:pan-y}
 .button{box-shadow:0 5px 14px #0000000b}.button.primary{box-shadow:0 6px 20px #87549621}.hero-actions .button{border-radius:15px}
 .header{backdrop-filter:none;background:#090a12f5}.hero-vignette{pointer-events:none}
}
@media(max-width:360px){.hero h1{font-size:30px}.motion-sculpture{height:140px}.depth-object{height:158px}}
@media(prefers-reduced-motion:reduce){.visual-cube,.depth-ring,.motion-shimmer:after,.report-graph span{animation:none!important}.hero-browser,.hero-chat{transform:none!important}}
