/* Subtle architectural depth behind the existing black-and-gold composition. */
body{isolation:isolate}
main,footer{position:relative;z-index:1}
.depth-scene{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;perspective:1100px;contain:strict}
.depth-layer{position:absolute;transform-style:preserve-3d;will-change:transform;border:1px solid rgba(216,179,102,.13);box-shadow:inset 0 0 45px rgba(216,179,102,.035),0 0 50px rgba(216,179,102,.025)}
.depth-far{width:80vmax;height:80vmax;left:-48vmax;top:-20vmax;border-radius:50%;border-width:2px;background:radial-gradient(ellipse,transparent 60%,rgba(216,179,102,.035) 72%,transparent 74%)}
.depth-mid{width:55vmax;height:55vmax;right:-32vmax;top:20vh;border-radius:50%;border-width:12px;border-color:rgba(216,179,102,.045);outline:1px solid rgba(216,179,102,.11);outline-offset:18px}
.depth-near{width:45vmax;height:45vmax;left:20vw;top:65vh;border-color:rgba(216,179,102,.08);background:linear-gradient(135deg,rgba(216,179,102,.018),transparent 65%);border-radius:22%}
.btn,.nav-cta{position:relative;isolation:isolate;overflow:hidden;transform:perspective(700px) translateY(0) rotateX(0);box-shadow:0 3px 0 #795621,0 9px 24px #0007,inset 0 1px 0 #fff6;transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s,border-color .24s,filter .24s}
.btn::after,.nav-cta::after{content:"";position:absolute;inset:-60% -100%;background:linear-gradient(115deg,transparent 40%,#fff5 49%,transparent 58%);transform:translateX(-50%);pointer-events:none;transition:transform .65s}
.btn.ghost,.nav-cta{background:linear-gradient(135deg,#30281b,#100e0b);box-shadow:0 3px 0 #513d1d,0 9px 24px #0007,inset 0 1px 0 #fff2}
@media(hover:hover) and (pointer:fine){
  .btn:hover,.nav-cta:hover{transform:perspective(700px) translateY(-6px) rotateX(8deg) scale(1.025);border-color:#ffe3a3;box-shadow:0 8px 0 #795621,0 20px 35px #0009,0 0 28px #d8b36655,inset 0 1px 0 #fff9;filter:brightness(1.12)}
  .btn:hover::after,.nav-cta:hover::after{transform:translateX(50%)}
}
.btn:focus-visible,.nav-cta:focus-visible{outline:2px solid #fff0c6;outline-offset:5px;box-shadow:0 5px 0 #795621,0 0 25px #d8b36666}
.btn:active,.nav-cta:active{transform:translateY(2px);box-shadow:0 1px 0 #795621,inset 0 2px 5px #0004}
@media(prefers-reduced-motion:reduce){.depth-layer{will-change:auto;transform:none!important}.btn,.nav-cta,.btn::after,.nav-cta::after{transition:none}.btn:hover,.nav-cta:hover{transform:none}}
