/* Full-screen workshop scene. Only the home hero is affected. */
.hero.hero--atelier {
  --hero-stage-height: calc(100svh - 89px);
  --hero-stage-top: 89px;
  --hero-travel: 0px;
  display: block; min-height: 0; overflow: visible;
  background: #090b0d; padding: 0;
}
.hero--atelier::after { display: none; }
.hero--atelier .hero-scroll-track { position: relative; width: 100%; height: auto; }
.hero--atelier.hero-scroll-enabled .hero-scroll-track { height: calc(var(--hero-stage-height) + var(--hero-travel)); }
.hero--atelier .hero-stage { position: sticky; top: var(--hero-stage-top); height: auto; min-height: var(--hero-stage-height); overflow: hidden; isolation: isolate; }
.hero--atelier .hero-media { position: absolute; inset: 0; }
.hero--atelier .hero-media::after {
  content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(90deg, rgba(5,8,10,.88) 0%, rgba(5,8,10,.76) 30%, rgba(5,8,10,.24) 63%, rgba(5,8,10,.10) 100%), linear-gradient(0deg, rgba(5,8,10,.72), transparent 28%, transparent 85%, rgba(5,8,10,.18));
}
.hero--atelier .hero-atelier-layout { position: relative; z-index: 2; height: auto; min-height: var(--hero-stage-height); display: flex; align-items: center; }
.hero--atelier .hero-copy { max-width: 720px; padding: 50px 0; text-shadow: 0 2px 24px rgba(0,0,0,.35); }
.hero--atelier .hero-copy > .eyebrow,
.hero--atelier .hero-copy > h1,
.hero--atelier .hero-copy > .hero-title,
.hero--atelier .hero-copy > .lead { opacity: .85; }
.hero--atelier .hero-copy .btn { background: rgba(21,184,237,.60); border-color: rgba(21,184,237,.80); text-shadow: none; }
.hero--atelier .hero-copy .btn:hover,
.hero--atelier .hero-copy .btn:focus-visible { background: rgba(78,227,245,.90); }
.hero--atelier .hero-copy .btn.ghost { background: rgba(8,12,15,.14); border-color: rgba(255,255,255,.55); color: rgba(247,248,249,.90); }
.hero--atelier .hero-copy .btn.ghost:hover,
.hero--atelier .hero-copy .btn.ghost:focus-visible { background: rgba(8,12,15,.40); color: var(--ink); border-color: var(--cyan); }
.hero--atelier .hero-photo, .hero--atelier .hero-video {
  position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none;
  object-fit: cover; object-position: center 53%; pointer-events: none; opacity: 1;
  animation: none; transform: none; -webkit-mask-image: none; mask-image: none;
}
.hero--atelier .hero-video { opacity: 0; }
.hero--atelier.hero-video-ready .hero-photo { opacity: 0; }
.hero--atelier.hero-video-ready .hero-video { opacity: 1; }
@media (max-width: 800px) {
  .hero.hero--atelier { --hero-stage-height: calc(100svh - 140px); --hero-stage-top: 75px; }
  .hero--atelier .hero-copy { max-width: 600px; padding: 32px 0; }
  .hero--atelier .hero-photo, .hero--atelier .hero-video { object-position: 60% center; }
  .hero--atelier .hero-media::after {
    background: linear-gradient(90deg, rgba(5,8,10,.69), rgba(5,8,10,.28)), linear-gradient(0deg, rgba(5,8,10,.82), rgba(5,8,10,.34) 42%, rgba(5,8,10,.12));
  }
  .hero--atelier .hero-title { font-size: clamp(35px, 10.8vw, 55px); }
  .hero--atelier .hero-copy h1 { margin-bottom: 18px; }
  .hero--atelier .hero-copy .lead { margin-top: 20px; }
}
@media (prefers-reduced-motion: reduce), (prefers-reduced-data: reduce), print {
  .hero.hero--atelier { --hero-travel: 0px !important; }
  .hero--atelier .hero-stage { position: relative; top: auto; }
  .hero--atelier .hero-photo, .hero--atelier.hero-video-ready .hero-photo { opacity: 1; }
  .hero--atelier .hero-video { display: none; }
}
