/* A full-window film with one clear message and a shared navigation alignment. */
.hero.hero-video{display:flex;align-items:center;position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:none;height:auto;min-height:100svh;margin:0;padding:clamp(145px,18svh,190px) 0 clamp(150px,22svh,230px);border-radius:0;background:#201420;color:#fff7f0}
.hero-video .hero-art{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;background:#201420;z-index:-3}
.hero-video .hero-art>.hero-poster,.hero-video .hero-art>video{position:absolute;inset:0;width:100%;max-width:none;height:100%;object-fit:cover;object-position:center;animation:none;transform:none;will-change:auto;opacity:1}
.hero-video .hero-art>video{opacity:0;transition:opacity .8s ease}
.hero-video.video-ready .hero-art>video{opacity:1}
.hero-video .hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(19,10,20,.3),rgba(19,10,20,.15) 43%,transparent 72%),linear-gradient(180deg,rgba(19,10,20,.3),transparent 25%)}
.hero-video .hero-copy{width:calc(100% - 112px);max-width:1360px;margin-inline:auto;padding:0;position:relative}
.hero-video h1{max-width:760px;margin:0;font-size:clamp(72px,7.3vw,104px);line-height:1.04;letter-spacing:-.035em}
.hero-video h1 em{font-size:1.06em;line-height:inherit;margin-top:-.06em;letter-spacing:-.025em;white-space:normal;color:#edcad5}
.hero-title-line{display:block}
.hero-therapy{white-space:nowrap}
.hero-video .hero-copy>p{max-width:460px;margin-top:32px;font-family:var(--sans);font-size:18px;font-weight:400;line-height:1.65;letter-spacing:-.01em;color:#f1e4ed;text-wrap:balance}
.hero-video .button{margin-top:32px;padding:15px 22px;gap:32px;font-size:12px}
.hero-video #motion-toggle{position:absolute;right:max(32px,calc((100vw - 1360px)/2));bottom:30px;margin:0;padding:0;width:38px;height:38px;border-radius:50%;justify-content:center;background:rgba(32,20,32,.15);border:1px solid #cbb5c36b;color:#e6d5df}
.hero-video #motion-toggle[hidden]{display:none}
.hero-video .motion-icon{font-size:11px;line-height:1}
.hero-video a:focus-visible,.hero-video button:focus-visible{outline-color:#f0c6a8}

/* Navigation overlays the film and compacts when scrolling into the page. */
html{scroll-padding-top:84px}
.site-header{position:fixed;top:0;left:0;right:0;transition:height .25s ease,background .25s ease,color .25s ease;z-index:20}
.site-header .wordmark{transition:font-size .25s ease}
.site-header .brand-mark{transition:width .25s ease,height .25s ease}
.site-header.is-scrolled{height:68px}
.site-header.is-scrolled .wordmark{font-size:25px}
.site-header.is-scrolled .brand-mark{width:30px;height:30px}
.site-header.is-scrolled .nav-contact{padding:7px 14px}
.site-header:not(.is-scrolled){background:transparent;backdrop-filter:none;color:#fff5ee}
.site-header:not(.is-scrolled) .nav-wrap{border-bottom-color:transparent}
.site-header:not(.is-scrolled) .brand-mark{color:#f6e4ed}
.site-header:not(.is-scrolled) .wordmark-period{color:#e6b4c8}
.site-header:not(.is-scrolled) #primary-nav>a:not(.nav-contact):after{background:#efd9e4}
.site-header:not(.is-scrolled) .nav-contact{border-color:#d4b9c573;background:#2014201a}
.site-header:not(.is-scrolled) .nav-contact:hover{background:#f8f5ee;color:#4e293f}
.site-header:not(.is-scrolled) .menu-lines{border-color:currentColor}
.site-header:not(.is-scrolled) .menu-lines:after{background:currentColor}
.site-header:not(.is-scrolled) a:focus-visible,.site-header:not(.is-scrolled) button:focus-visible{outline-color:#f0c6a8}

@media(max-width:1050px){
  .hero-video .hero-copy{width:calc(100% - 64px)}
  .hero-video h1{font-size:clamp(64px,7.3vw,84px)}
  .hero-video .hero-copy>p{max-width:440px;font-size:18px}
}
@media(max-width:760px){
  html{scroll-padding-top:76px}
  .site-header.is-scrolled{height:60px}
  .site-header.is-scrolled .wordmark{font-size:24px}
  .site-header.is-scrolled .brand-mark{width:28px;height:28px}
  .site-header .menu-toggle{min-height:44px}
  .site-header #primary-nav{top:100%}
  .hero.hero-video{align-items:flex-start;padding:clamp(145px,19svh,175px) 0 100px}
  .hero-video .hero-copy{width:calc(100% - 40px);max-width:none}
  .hero-video h1{font-size:clamp(46px,13.8vw,64px);line-height:1.06;letter-spacing:-.03em}
  .hero-video .hero-copy>p{max-width:330px;margin-top:27px;font-size:16px;line-height:1.65}
  .hero-video .button{margin-top:28px;padding:14px 19px;gap:28px}
  .hero-video .hero-art>.hero-poster,.hero-video .hero-art>video{width:170%;left:auto;right:-10%;object-position:67% center;opacity:.9}
  .hero-video .hero-art>video{opacity:0}
  .hero-video.video-ready .hero-art>video{opacity:.9}
  .hero-video .hero-shade{background:linear-gradient(180deg,rgba(23,12,24,.74),rgba(23,12,24,.52) 44%,rgba(23,12,24,.03) 78%)}
  .hero-video #motion-toggle{right:20px;bottom:24px}
  .site-header:not(.is-scrolled) #primary-nav.open{background:#281724;color:#fff5ee;border-bottom-color:#745565}
}
@media(max-height:620px) and (min-width:761px){
  .hero.hero-video{padding-block:120px 65px}
  .hero-video h1{font-size:clamp(64px,6.5vw,84px)}
  .hero-video .hero-copy>p{margin-top:25px}
  .hero-video .button{margin-top:26px}
}
@media(max-height:700px) and (max-width:760px){.hero.hero-video{padding-block:125px 75px}}
@media(prefers-reduced-motion:reduce){
  .hero-video .hero-art>video{display:none}
  .hero-video #motion-toggle{display:none}
  .hero-video .hero-art>.hero-poster{opacity:1;animation:none}
}
