.video-home{--film-cream:#eee1cf}
.video-home .header{background:#231f1bbf;backdrop-filter:blur(14px)}
.film-hero{position:relative;isolation:isolate;overflow:hidden;background:#302d29;color:#fff;min-height:650px;height:100svh;max-height:1080px;display:flex;align-items:center;padding:145px var(--gutter) 130px}
.film-media,.film-shade,.film-poster,.film-video{position:absolute;inset:0;width:100%;height:100%}
.film-media{z-index:-3}
.film-poster img,.film-video{width:100%;height:100%;object-fit:cover;object-position:center}
.film-video{opacity:0;transition:opacity .35s ease}
.film-hero.is-playing .film-video,.film-hero.has-played .film-video{opacity:1}
.film-hero.has-error .film-video{opacity:0}
.film-shade{z-index:-1;background:linear-gradient(90deg,#171817dd 0%,#171817a6 26%,#17181724 56%,#17181708 75%),linear-gradient(0deg,#17181799,transparent 28%)}
.film-copy{max-width:630px}
.film-copy .eyebrow{font-size:10px;letter-spacing:.22em;color:#f2e8db;margin-bottom:28px}
.film-copy h1{font-size:clamp(86px,8.5vw,138px);line-height:.98;letter-spacing:-.055em;font-weight:400}
.film-copy h1 em{color:var(--film-cream)}
.film-description{font-size:16px;line-height:1.8;color:#f2ede5;margin:28px 0 31px}
.film-copy .button{background:#fcfaf6;border-color:#fcfaf6;color:#30241f;min-height:56px;padding:15px 24px}
.film-copy .button:hover{background:#ecdfd0;border-color:#ecdfd0}
.film-explore{display:flex;align-items:center;gap:17px;font-size:12px;line-height:1.5;border-bottom:1px solid #ffffff7d;padding:12px 0;color:#fff}
.film-explore:hover{border-color:white}
.film-base{position:absolute;left:var(--gutter);right:var(--gutter);bottom:34px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-top:1px solid #ffffff40;padding-top:20px;font-size:11px;letter-spacing:.16em}
.film-base a{font-size:12px;letter-spacing:0;padding:4px 0;display:flex;gap:24px}
.film-hero :focus-visible{outline:2px solid #fff;outline-offset:5px}
.video-home .mobile-booking{transition:transform .2s,visibility .2s}
.video-home.hero-in-view .mobile-booking{transform:translateY(110%);visibility:hidden;pointer-events:none}
@media(max-width:1100px) and (orientation:landscape){.film-copy{max-width:520px}.film-copy h1{font-size:86px}.film-copy .button-group{gap:20px}.film-hero{min-height:590px}}
@media(max-width:900px) and (orientation:portrait){
  .video-home .header{margin-bottom:0;background:#2d2722;backdrop-filter:none}
  .video-home .header-inner{min-height:70px}
  .film-hero{height:calc(100svh - 70px);min-height:480px;max-height:1050px;display:flex;align-items:flex-end;padding:28px 24px 32px}
  .film-shade{background:linear-gradient(0deg,#191b19f5 0%,#191b19dc 21%,#191b1990 37%,#191b191c 58%,transparent 75%)}
  .film-copy{max-width:600px;width:100%;margin:0 auto}
  .film-copy .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:16px}
  .film-copy h1{font-size:clamp(54px,14.8vw,90px);line-height:.99;letter-spacing:-.05em}
  .film-description{font-size:13px;line-height:1.65;margin:17px 0 21px;color:#f0e9df}
  .film-copy .button-group{flex-wrap:nowrap;gap:20px}
  .film-copy .button{min-height:51px;flex:1;max-width:280px;font-size:12px;padding:12px 17px;gap:16px}
  .film-explore{font-size:11px;max-width:107px;gap:12px;padding:8px 0}
  .film-base{display:none}
  .video-home .mobile-treatments{padding-top:20px;padding-bottom:20px}
}
@media(max-width:900px) and (orientation:portrait) and (max-height:740px){
  .film-hero{padding-bottom:25px}
  .film-copy h1{font-size:clamp(47px,13vw,65px)}
  .film-copy .eyebrow{margin-bottom:12px}
  .film-description{margin:12px 0 16px;font-size:12px}
  .film-copy .button-group{gap:15px}
}
@media(max-width:359px){.video-home .header-actions{gap:10px}.video-home .header .button{white-space:nowrap;font-size:11px;padding:9px 10px}.film-hero{padding-left:20px;padding-right:20px}.film-copy .button{font-size:11px;padding:11px 13px;gap:10px}.film-explore{font-size:10px;max-width:92px}}
@media(prefers-reduced-motion:reduce){.film-video,.video-home .mobile-booking{transition:none}}
