/* Shared dimensional presentation; independent of reveal transforms. */
body { background-image: radial-gradient(ellipse at 90% 8%, #c9a24b14, transparent 55%); }
.hero { isolation:isolate; perspective:1200px; background:radial-gradient(ellipse at 85% 40%,#e9d7aa 0,transparent 52%),#faf7f1; }
.hero-content,.hero-portrait { z-index:1; }
.hero-headline { text-shadow:0 2px 0 #fff8,0 12px 28px #8a6d2f18; }
.hero-portrait { perspective:1000px; }
.hero-portrait .media-frame { background:transparent; border-radius:0; box-shadow:none; border:0; animation:portrait-float 8s ease-in-out infinite; }
.depth-scene { position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; perspective:1000px; }
.depth-orbit { position:absolute; width:clamp(290px,47vw,680px); aspect-ratio:1; right:-7%; top:8%; transform-style:preserve-3d; animation:orbit-turn 32s linear infinite; }
.depth-ring { position:absolute; inset:6%; border:1px solid #ac84365e; border-radius:50%; box-shadow:0 0 22px #c9a24b12,inset 0 0 18px #fff6; }
.depth-ring:nth-child(1){transform:rotateX(65deg)}
.depth-ring:nth-child(2){transform:rotateY(65deg)}
.depth-ring:nth-child(3){transform:rotateX(35deg) rotateY(-45deg)}
.depth-ring::after { content:""; position:absolute; top:12%; left:12%; width:18px; height:18px; border-radius:50%; background:radial-gradient(circle at 30% 25%,#fff7dd,#c9a24b 48%,#79561b); box-shadow:0 5px 14px #79561b38; }
.depth-sphere { position:absolute; width:clamp(100px,16vw,230px); aspect-ratio:1; left:40%; bottom:9%; border-radius:50%; background:radial-gradient(circle at 30% 25%,#fffdf7 2%,#f3e5c3 30%,#d5b468 65%,#80602d); box-shadow:inset -12px -18px 28px #80602d28,16px 24px 35px #81622b22; opacity:.6; animation:sphere-float 11s ease-in-out infinite; }
.depth-card { --tilt-x:0deg; --tilt-y:0deg; rotate:1 0 0 var(--tilt-x); transform-style:preserve-3d; box-shadow:0 3px 0 #a4895520,0 14px 32px -18px #41301566; transition:rotate .35s ease,box-shadow .35s ease,translate .35s ease; }
@media(hover:hover) and (pointer:fine) {
 .depth-card:hover { rotate:1 1 0 var(--tilt-y); translate:0 -5px; box-shadow:0 5px 0 #a4895524,0 26px 45px -20px #41301570; }
 .depth-card:focus-within { box-shadow:0 0 0 2px #c9a24b80,0 20px 35px -20px #41301570; }
}
.item-group.depth-card { border-color:#d9c9a4; }
.depth-card .go,.btn-hero-primary,.btn-survey { box-shadow:0 4px 0 #0003,0 8px 16px #0002; }
.section-heading { text-shadow:0 3px 0 #fff9; }
@keyframes orbit-turn { from{transform:rotateZ(-20deg) rotateY(0deg)} to{transform:rotateZ(340deg) rotateY(360deg)} }
@keyframes sphere-float { 0%,100%{transform:translate3d(0,0,0)} 50%{transform:translate3d(20px,-24px,30px)} }
@keyframes portrait-float { 0%,100%{transform:rotateY(-4deg) translateY(0)} 50%{transform:rotateY(3deg) translateY(-12px)} }
@media(max-width:640px) { .depth-orbit{right:-35%;top:2%;opacity:.65}.depth-sphere{width:100px;left:4%;bottom:25%}.hero-portrait .media-frame{animation:none} }
@media(prefers-reduced-motion:reduce) {
 .depth-orbit,.depth-sphere,.hero-portrait .media-frame { animation:none!important; }
 .depth-card,.depth-card:hover { rotate:none!important;translate:none!important;transition:none!important; }
}
html.motion-paused .depth-orbit,html.motion-paused .depth-sphere,html.motion-paused .hero-portrait .media-frame { animation-play-state:paused; }