/* Homepage-only cinema treatment; all shared sections retain their palette. */
.home-hero,.header--home{
  --hero-beige:#eee2d1;
  --hero-gold:#c7a16c;
  --hero-amber:#b78950;
  --hero-gray:#393735;
}
.home-hero{
  position:relative;isolation:isolate;display:flex;align-items:center;
  width:100%;height:100vh;height:100svh;min-height:0;overflow:hidden;
  color:#fff;background:#393735;
}
.home-hero-media,.home-hero-shade{position:absolute;inset:0;pointer-events:none}
.home-hero-media{z-index:-2;background:#393735}
.home-hero-poster,.home-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.home-hero-poster img{width:100%;height:100%;object-fit:cover;object-position:center}
.home-hero-video{z-index:1}
.home-hero-shade{
  z-index:-1;opacity:1;transition:opacity .85s ease;
  background:linear-gradient(90deg,rgba(34,31,28,.34),rgba(34,31,28,.18) 53%,rgba(34,31,28,.04)),linear-gradient(0deg,rgba(16,21,28,.24),transparent 45%);
}
/* The same state reveals the copy and the veil: no dimming while the film loads or plays. */
.home-intro-pending .home-hero-shade{opacity:0;transition:none}
.home-hero-copy{padding-top:100px;padding-bottom:76px;position:relative;text-shadow:0 1px 4px #0006}
.home-hero .eyebrow{color:var(--hero-beige);font-size:10px;letter-spacing:.18em;margin-bottom:24px}
.home-hero h1{font-size:clamp(44px,5.1vw,80px);line-height:1.08;letter-spacing:-.04em;margin-bottom:27px;text-shadow:0 2px 24px #0002}
.home-hero h1>span,.home-hero h1>em{display:block;text-wrap:balance}
.home-hero h1 em{color:var(--hero-beige)}
.home-hero-lead{max-width:425px;font-size:15px;line-height:1.85;margin-bottom:29px;color:#fff}
.home-hero-action .btn.gold{background:var(--hero-gold);border-color:var(--hero-gold);color:#292622;min-width:176px;min-height:54px;gap:44px}
.home-hero-action .btn.gold:hover{background:var(--hero-beige);border-color:var(--hero-beige)}
.home-hero a:focus-visible,.home-hero button:focus-visible{outline-color:var(--hero-beige)}
.home-hero-reveal{opacity:1;transform:translateY(0);visibility:visible;transition:opacity .85s ease,transform .85s cubic-bezier(.2,.65,.2,1),visibility 0s}
.home-hero-lead{transition-delay:.24s,.24s,0s}
.home-hero-action{transition-delay:.48s,.48s,0s}
.home-intro-pending .home-hero-reveal{opacity:0;transform:translateY(18px);visibility:hidden;transition:none}
.home-hero-skip{
  position:absolute;bottom:28px;right:max(40px,calc((100vw - 1280px)/2));
  display:inline-flex;gap:15px;align-items:center;min-height:44px;padding:10px 15px;
  border:1px solid #eee2d16b;border-radius:0;background:#39373566;
  color:var(--hero-beige);font-size:10px;letter-spacing:.06em;transition:background .25s;
}
.home-hero-skip:hover{background:var(--hero-gray)}
.home-hero-play{display:inline-flex;align-items:center;gap:9px;min-height:44px;margin-top:10px;padding:9px 0;border:0;background:transparent;color:var(--hero-beige);font-size:12px;cursor:pointer}
.home-hero-play:hover{color:#fff}
.home-hero-play[hidden],.home-hero-video[hidden]{display:none}
.header.header--home{
  position:fixed;top:0;left:0;right:0;background:transparent;color:#fff;
  border-color:transparent;box-shadow:none;
  transition:background-color .35s ease,color .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.header--home .brand img{filter:brightness(0) invert(1);transition:filter .35s ease}
.header--home .nav a{transition:color .25s ease}
.header--home .nav a:after{background:var(--hero-gold)}
.header--home .nav a:hover{color:var(--hero-beige)}
.header--home .header-cta{background:transparent;border-color:#ffffff80;color:#fff}
.header--home .header-cta:hover{background:var(--hero-gold);border-color:var(--hero-gold);color:#292622}
.header--home a:focus-visible,.header--home button:focus-visible{outline-color:var(--hero-gold)}
.header.header--home.is-scrolled,.header.header--home.is-menu-open{background:#fff;color:var(--hero-gray);border-color:#3937350d;box-shadow:0 4px 22px #3937350a}
.header--home.is-scrolled .brand img,.header--home.is-menu-open .brand img{filter:none}
.header--home.is-scrolled .nav a:hover,.header--home.is-menu-open .nav a:hover{color:#86602f}
.header--home.is-scrolled .header-cta,.header--home.is-menu-open .header-cta{background:var(--hero-gold);border-color:var(--hero-gold);color:#292622}
.header--home.is-scrolled .header-cta:hover,.header--home.is-menu-open .header-cta:hover{background:var(--hero-beige);border-color:var(--hero-amber)}
@media(max-width:800px){
  .header--home .nav{background:#fff;color:var(--hero-gray)}
  .home-hero-copy{padding-top:100px;padding-bottom:55px}
  .home-hero h1{font-size:clamp(38px,6.1vw,51px)}
  .home-hero .eyebrow{font-size:9px;letter-spacing:.12em;max-width:300px}
  .home-hero-lead{font-size:14px;max-width:350px}
  .home-hero-skip{right:24px;bottom:18px}
}
@media(max-width:560px){
  .home-hero h1{font-size:clamp(33px,8.4vw,45px);margin-bottom:23px}
  .home-hero-lead{font-size:13px;max-width:310px;line-height:1.8;margin-bottom:25px}
  .home-hero-action .btn.gold{min-width:164px;min-height:50px}
}
@media(max-height:600px){
  .home-hero-copy{padding-top:88px;padding-bottom:28px}
  .home-hero .eyebrow{margin-bottom:12px;font-size:9px}
  .home-hero h1{font-size:clamp(33px,6.3svh,50px);margin-bottom:15px}
  .home-hero-lead{font-size:12px;line-height:1.65;max-width:420px;margin-bottom:17px}
  .home-hero-action .btn.gold{min-height:44px;padding-block:12px}
}
@media(prefers-reduced-motion:reduce){
  .home-hero-reveal,.home-hero-shade,.header.header--home,.header--home .brand img{transition:none}
  .home-intro-pending .home-hero-reveal{opacity:0;transform:none;visibility:hidden}
  .home-hero-video,.home-hero-skip{display:none}
  .home-hero[data-user-play="true"] .home-hero-video:not([hidden]){display:block}
}
