/* Shared depth: lightweight surfaces, with motion only on fine-pointer devices. */
:root{--surface-shadow:inset 0 1px 0 #fff,0 2px 0 #ccd7e9,0 5px 0 #e7edf7,0 16px 30px -14px rgba(31,58,112,.24)}
.site-header{box-shadow:0 4px 18px -12px rgba(31,58,112,.3)}
.depth-frame{position:relative;min-width:0}
.depth-surface{height:100%;position:relative;transform-style:preserve-3d;transform:perspective(1200px) rotateX(calc(var(--depth-rest-x,0deg) + var(--tilt-x,0deg))) rotateY(calc(var(--depth-rest-y,0deg) + var(--tilt-y,0deg))) translateY(var(--depth-lift,0px));transition:transform .3s ease-out,box-shadow .3s ease-out}
.depth-frame[data-depth=card]>.depth-surface{box-shadow:var(--surface-shadow);border-top-color:#fff;border-bottom-color:#bdcce3}
.depth-frame[data-depth=card]>.depth-surface::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse at var(--light-x,24%) var(--light-y,12%),rgba(255,255,255,.72),transparent 65%);pointer-events:none;transform:translateZ(1px)}
.depth-frame[data-depth=card]>.depth-surface>*{position:relative;transform:translateZ(2px)}
.depth-frame[data-depth=card] .card-top,.depth-frame[data-depth=card] .eyebrow{transform:translateZ(18px)}
.depth-frame:focus-within>.depth-surface{transform:none}
.card-symbol{display:grid;place-items:center;width:48px;height:48px;border:1px solid #fff;border-radius:14px;background:linear-gradient(145deg,#fff,#e3ebfc);box-shadow:inset 0 1px 0 #fff,0 3px 0 #cfdbf0,0 9px 14px -9px rgba(36,72,216,.38)}
.principles{gap:24px}
.principle{padding:26px;border:1px solid #d8e0ee;border-radius:8px 28px 8px 8px;background:linear-gradient(130deg,#f0f4fd,#fbfcfe)}
.principles>.depth-frame:nth-child(even)>.principle{border-radius:28px 8px 8px 8px;background:linear-gradient(130deg,#f4f5f9,#fbfcfe)}

/* The existing sculpture sits between a glass backplate and a floating note. */
.hero-visual{perspective:1200px}
.sculpture-stage.depth-surface{--depth-rest-x:6deg;--depth-rest-y:-9deg;aspect-ratio:1.08;height:auto}
.sculpture-stage::before{content:"";position:absolute;inset:13% 10% 15%;border:1px solid #fff;border-radius:30px;background:linear-gradient(140deg,rgba(241,246,255,.9),rgba(203,221,253,.6) 65%,rgba(255,255,255,.8));box-shadow:inset 0 0 0 1px rgba(177,197,233,.25),5px 7px 0 #e0e8f6,10px 14px 0 rgba(213,226,247,.65),20px 32px 48px -22px rgba(40,69,122,.3);transform:translateZ(-35px) rotate(-7deg);pointer-events:none}
.sculpture-stage .sculpture{position:absolute;inset:0;transform:translateZ(42px) scale(.92);pointer-events:none}
.sculpture-stage .visual-note{left:2%;bottom:8%;transform:translateZ(85px);background:rgba(255,255,255,.9);border-color:#fff;box-shadow:inset 0 1px 0 #fff,0 3px 0 #dce5f5,0 16px 30px -12px rgba(42,68,117,.27);pointer-events:none}
.hero-visual figcaption{position:relative;margin-top:12px}

/* Interactive forms and expanding content keep a stable, raised surface. */
.project-guide,.domain-panel,.careers-connect,.health-banner,#inquiry-form{box-shadow:var(--surface-shadow);border-top-color:#fff;border-bottom-color:#bdcce3}
.domain-panel:target{box-shadow:0 0 0 2px rgba(36,72,216,.24),var(--surface-shadow)}
.choice>span,.domain-links a{box-shadow:inset 0 1px 0 #fff,0 2px 0 #d6e0ef,0 6px 12px -8px rgba(31,58,112,.2)}
.choice input:checked+span{box-shadow:inset 0 0 0 1px var(--blue),inset 0 2px 5px rgba(36,72,216,.08),0 1px 0 #fff}
#inquiry-form input,#inquiry-form textarea,#inquiry-form select{box-shadow:inset 0 2px 4px rgba(28,54,110,.055),0 1px 0 #fff}
.process-list{border:0;display:grid;gap:14px}
.process-list details{padding:0 22px;border:1px solid #d6e0ef;border-radius:18px;background:linear-gradient(135deg,#fff,#f1f5fc);box-shadow:inset 0 1px 0 #fff,0 3px 0 #e1e8f4,0 10px 18px -14px rgba(31,58,112,.24)}
.process-list details[open]{border-color:#aebfe0;background:linear-gradient(135deg,#f5f8ff,#fff)}
.process-list .detail-content{padding-right:0}
.button-primary{border-top-color:#6d86ef;border-bottom-color:#1835a7;background:linear-gradient(165deg,#365cea,var(--blue));box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 3px 0 #17349f,0 9px 18px -8px rgba(36,72,216,.45)}
.button-primary:hover{background:linear-gradient(165deg,#2c51df,var(--blue-dark));box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 5px 0 #17349f,0 13px 22px -8px rgba(36,72,216,.4)}
.button-outline,#site-nav .nav-cta{box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 3px 0 #d7dfed,0 8px 15px -11px rgba(31,58,112,.25)}
.button:active{transform:translateY(2px);box-shadow:inset 0 2px 3px rgba(23,34,56,.12),0 1px 0 #bdcce3}

@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
html:not([data-reduced-motion=true]) .depth-active>.depth-surface{will-change:transform}
html:not([data-reduced-motion=true]) .depth-active[data-depth=card]>.depth-surface{--depth-lift:-3px;box-shadow:inset 0 1px 0 #fff,0 3px 0 #c6d3e9,0 6px 0 #e3eaf6,0 24px 36px -16px rgba(31,58,112,.3)}
}
@media(max-width:680px){
.principles{gap:18px}.principle{padding:22px 20px}
.sculpture-stage.depth-surface{--depth-rest-x:4deg;--depth-rest-y:-5deg;aspect-ratio:1.18}
.sculpture-stage::before{border-radius:24px;box-shadow:inset 0 0 0 1px rgba(177,197,233,.25),4px 6px 0 #e0e8f6,8px 11px 0 rgba(213,226,247,.65),14px 22px 32px -20px rgba(40,69,122,.28)}
.sculpture-stage .sculpture{transform:translateZ(25px) scale(.94)}
.sculpture-stage .visual-note{transform:translateZ(40px);left:0;bottom:7%}
.hero-visual figcaption{margin-top:16px}
.process-list details{padding:0 18px}
}
html[data-reduced-motion=true] .depth-surface,html[data-reduced-motion=true] .button,html[data-reduced-motion=true] .text-link span{transform:none!important}
html[data-reduced-motion=true] .depth-frame[data-depth=card]>.depth-surface::before{background:none}
@media(prefers-reduced-motion:reduce){
.depth-surface,.button,.text-link span{transform:none!important}
.depth-frame[data-depth=card]>.depth-surface::before{background:none}
}
@media(forced-colors:active){
.depth-surface{transform:none!important}
.depth-frame[data-depth=card]>.depth-surface::before,.sculpture-stage::before{display:none}
.depth-surface,.project-guide,.domain-panel,.careers-connect,.health-banner,#inquiry-form,.process-list details,.card-symbol{box-shadow:none;border-color:CanvasText}
.button-primary{border-color:ButtonText}
}
