/* ROCK SOLID — "yard feel" layer (see js/juice.js). */
.jz-rel{position:relative}
.jz-glow{position:absolute;inset:0;z-index:8;pointer-events:none;border-radius:inherit;opacity:0;transition:opacity .35s ease;
  background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),rgba(241,214,150,.17),rgba(241,214,150,0) 65%);mix-blend-mode:screen}
.jz-glow::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:2px;
  background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%),#F1D696,rgba(241,214,150,0) 72%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
.jz-on>.jz-glow{opacity:1}
.jz-press>.jz-glow{opacity:1;background:radial-gradient(340px circle at var(--mx,50%) var(--my,50%),rgba(241,214,150,.32),rgba(241,214,150,0) 65%);transition:opacity .1s}
.jz-tilt{transition:transform .28s cubic-bezier(.2,.7,.2,1);will-change:transform}
.jz-mag{transition:transform .22s cubic-bezier(.2,.7,.2,1),background .2s,color .2s,box-shadow .2s}
.btn-gold.jz-mag:hover{box-shadow:0 0 0 1px rgba(241,214,150,.5),0 12px 34px rgba(232,199,122,.32)}

.jz-layer{position:fixed;inset:0;z-index:970;pointer-events:none;overflow:hidden}
.jz-ring{position:absolute;width:46px;height:46px;border-radius:50%;border:2px solid #F1D696;box-shadow:0 0 20px rgba(241,214,150,.55),inset 0 0 12px rgba(241,214,150,.35)}
.jz-chip{position:absolute;display:block;clip-path:polygon(18% 0,100% 14%,86% 100%,0 78%);box-shadow:0 0 6px rgba(241,214,150,.35)}

.jz-lamp{position:fixed;left:0;top:0;width:600px;height:600px;border-radius:50%;pointer-events:none;z-index:850;opacity:0;transition:opacity .6s;
  background:radial-gradient(circle,rgba(232,199,122,.09) 0,rgba(232,199,122,.035) 34%,rgba(232,199,122,0) 62%);mix-blend-mode:screen}
.jz-lamp.on{opacity:1}

.jz-sound{position:fixed;left:22px;bottom:22px;z-index:900;display:inline-flex;align-items:center;gap:9px;height:48px;padding:0 18px 0 14px;border-radius:24px;
  background:#07090C;border:1px solid rgba(232,199,122,.45);color:#EAF2F8;font:600 15px/1 var(--body,Inter,system-ui,sans-serif);cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.55);transition:border-color .2s,transform .2s}
.jz-sound:hover{border-color:#F1D696;transform:translateY(-2px)}
.jz-sound:focus-visible{outline:2px solid #F1D696;outline-offset:3px}
.jz-sound svg{width:22px;height:22px;fill:none;stroke:#E8C77A;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.jz-sound .spk{fill:#E8C77A}
.jz-sound .x{display:none}
.jz-sound.off .w1,.jz-sound.off .w2{display:none}
.jz-sound.off .x{display:inline}
.jz-sound.off{color:#C9D2DA;border-color:rgba(234,242,248,.25)}
@media(max-width:900px){.jz-sound{left:auto;bottom:auto;right:62px;top:25px;width:40px;height:40px;padding:0;justify-content:center;box-shadow:none;background:transparent;border-color:rgba(232,199,122,.35)}.jz-sound:hover{transform:none}.jz-sound span{display:none}}

/* hero slab drifts with the cursor: give it room so no edge ever shows */
@media(pointer:fine) and (min-width:901px){.hx-photo{inset:-18px;will-change:transform}}
@media(prefers-reduced-motion:reduce){.jz-tilt,.jz-mag{transition:none}}
