*{ box-sizing:border-box; margin:0; padding:0; }

html, body{
  height:100%;
  background:#201730;
  overflow:hidden;
}

/* ---------- HERO / KEN BURNS ---------- */
.hero-media{
  position:relative;
  width:100%;
  height:100vh;
  overflow:hidden;
}

.hero-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:56% 44%;
  transform-origin:center center;
  will-change:transform;
  transform:scale(1.47) translate(-9%,-7%);

  animation:kenburns 65s cubic-bezier(0.22, 1, 0.36, 1) infinite alternate;
}

@keyframes kenburns{
  0%   { transform:scale(1.47) translate(-9%,-7%); }   /* the kiosk */
  50%  { transform:scale(1.57) translate(10%,9%);  }   /* the massage table */
  100% { transform:scale(1.43) translate(-4%,-10%); }  /* the plant */
}

@media (prefers-reduced-motion: reduce){
  .hero-media img{ animation:none; }
}

/* ---------- AUDIO TOGGLE SWITCH ---------- */
.audio-switch{
  position:fixed;
  top:24px;
  right:24px;
  z-index:50;
  display:flex;
  align-items:center;
  gap:0.6rem;
  cursor:pointer;
  user-select:none;
}

.audio-switch-label{
  color:#F3EDE4;
  font-family:'Manrope', sans-serif;
  font-size:0.75rem;
  font-weight:600;
  letter-spacing:0.05em;
  text-transform:uppercase;
}

.audio-switch input{
  position:absolute;
  opacity:0;
  width:0;
  height:0;
}

.audio-switch-track{
  position:relative;
  width:44px;
  height:24px;
  border-radius:999px;
  background:rgba(243,237,228,0.2);
  border:1px solid rgba(243,237,228,0.35);
  transition:background 0.2s ease, border-color 0.2s ease;
}

.audio-switch-thumb{
  position:absolute;
  top:2px;
  left:2px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#F3EDE4;
  transition:transform 0.2s ease;
}

.audio-switch input:checked + .audio-switch-track{
  background:#D89B4A;
  border-color:#D89B4A;
}
.audio-switch input:checked + .audio-switch-track .audio-switch-thumb{
  transform:translateX(20px);
}

.audio-switch input:focus-visible + .audio-switch-track{
  outline:2px solid #F3EDE4;
  outline-offset:3px;
}

.audio-switch:active .audio-switch-thumb{
  transform:scale(0.9);
}
.audio-switch input:checked:active + .audio-switch-track .audio-switch-thumb{
  transform:translateX(20px) scale(0.9);
}
/* ---------- AUDIO TOAST ---------- */
.audio-toast{
  position:fixed;
  top:64px;
  right:24px;
  z-index:50;
  padding:0.55rem 1rem;
  border-radius:2px;
  background:rgba(16,11,26,0.85);
  border:1px solid rgba(243,237,228,0.25);
  color:#F3EDE4;
  font-family:'Manrope', sans-serif;
  font-size:0.75rem;
  font-weight:600;
  letter-spacing:0.03em;
  opacity:0;
  transform:translateY(-6px);
  pointer-events:none;
  transition:opacity 0.25s ease, transform 0.25s ease;
}
.audio-toast.visible{
  opacity:1;
  transform:translateY(0);
}
