/* Only the homepage photograph: the existing hero sizing and layout stay intact. */
.hero-atmosphere { isolation:isolate; overflow:hidden; }
.hero-atmosphere::before {
  z-index:1; pointer-events:none;
  /* Neutral shading around the copy leaves the sky and grounds in their natural colors. */
  background:radial-gradient(ellipse 60% 42% at 42% 51%,
    rgba(10,12,12,.48) 0%, rgba(10,12,12,.30) 48%, rgba(10,12,12,.12) 72%, transparent 100%);
}
.hero-atmosphere .hero-title { text-shadow:0 2px 3px rgba(0,0,0,.8),0 5px 18px rgba(0,0,0,.48); }
.hero-atmosphere .eyebrow { color:#ffe8b9; text-shadow:0 1px 3px #131b16,0 2px 8px #131b16; }
.hero-atmosphere .hero-copy {
  background:rgba(8,15,12,.66); border-radius:6px; padding:8px 12px;
  margin-left:-12px !important; text-shadow:0 1px 2px rgba(0,0,0,.45);
}
.hero-atmosphere .btn-secondary { background:rgba(12,23,17,.62); }
.hero-atmosphere .btn-secondary:hover { background:#214f3b; }
.hero-atmosphere .hero-inner { z-index:2; }
.hero-atmosphere__canvas {
  position:absolute; inset:0; width:100%; height:100%; z-index:0;
  pointer-events:none; opacity:0;
}
.hero-atmosphere.is-atmosphere-ready .hero-atmosphere__canvas { opacity:1; }
.hero-atmosphere__controls {
  position:absolute; right:24px; bottom:22px; z-index:3;
  display:flex; gap:8px; flex-wrap:wrap;
}
.hero-atmosphere__controls[hidden] { display:none; }
.hero-atmosphere__controls button {
  appearance:none; border:1px solid rgba(255,255,255,.6); border-radius:24px;
  background:rgba(15,43,32,.9); color:#fff; padding:10px 15px;
  min-height:44px; font:600 12px/1.2 Arial,sans-serif; cursor:pointer;
}
.hero-atmosphere__controls button:hover { background:#214f3b; }
.hero-atmosphere__controls button:focus-visible { outline:3px solid #efcf83; outline-offset:3px; }
@media(max-width:980px) {
  .hero-atmosphere__controls { top:14px; bottom:auto; }
}
@media(max-width:720px) {
  .hero-atmosphere::before {
    background:radial-gradient(ellipse 100% 44% at 42% 43%,
      rgba(10,12,12,.46) 0%,rgba(10,12,12,.24) 58%,transparent 100%);
  }
  .hero-atmosphere .hero-copy { margin-left:0 !important; padding:8px 10px; }
  .hero-atmosphere__controls { right:16px; gap:6px; }
  .hero-atmosphere__controls button { padding:10px 12px; }
}
@media(prefers-reduced-motion:reduce) {
  .hero-atmosphere.is-atmosphere-ready .hero-atmosphere__canvas { opacity:0; }
  .hero-atmosphere__controls { display:none; }
}
