.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 49%;opacity:0;transition:opacity .8s ease;pointer-events:none}
.hero-video.is-playing{opacity:1}
.video-toggle{position:absolute;z-index:3;right:6.3%;bottom:30px;border:1px solid #ffffff70;background:#27203880;backdrop-filter:blur(8px);color:white;border-radius:99px;padding:9px 15px;font:14px/1.4 Geist,Arial,sans-serif;cursor:pointer;transition:background .2s}
.video-toggle:hover{background:#272038c4}
.video-toggle:focus-visible{outline:3px solid white;outline-offset:4px}
.video-toggle[hidden]{display:none}
.hero-copy>*{animation:hero-appear .85s cubic-bezier(.2,.65,.3,1) both}
.hero-copy>h1{animation-delay:.05s}
.hero-copy>.hero-headline{animation-delay:.15s}
.hero-copy>.hero-description{animation-delay:.25s}
.hero-copy>.button{animation-delay:.35s}
@keyframes hero-appear{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease var(--reveal-delay,0ms),transform .7s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms)}
.reveal.is-visible{opacity:1;transform:none}
.path-art{transition:box-shadow .35s ease,transform .35s ease}
.path-card:hover .path-art{transform:translateY(-4px);box-shadow:0 14px 30px #27203814}
.clean-list li{padding-left:0}
.clean-list li:before{content:none}
.faq-list summary{transition:color .22s ease}
.faq-list summary:hover,.faq-list details[open] summary{color:#7651ac}
.faq-list summary:after{content:'+';transition:transform .3s ease}
.faq-list details[open] summary:after{content:'+';transform:rotate(45deg)}
@supports(interpolate-size:allow-keywords){
  .faq-list details{interpolate-size:allow-keywords}
  .faq-list details::details-content{block-size:0;opacity:0;overflow:clip;transition:block-size .35s cubic-bezier(.2,.65,.3,1),opacity .25s ease,content-visibility .35s allow-discrete}
  .faq-list details[open]::details-content{block-size:auto;opacity:1}
}
@media(max-width:760px){.hero-video{object-position:44% center}.hero-inner{padding-bottom:78px}.video-toggle{right:5%;bottom:18px;font-size:13px;padding:8px 13px}.hero-headline{font-size:clamp(28px,6.7vw,40px)}}
@media(prefers-reduced-motion:reduce){
  .hero-copy>*,.reveal{animation:none;transition:none;opacity:1;transform:none}
  .hero-video,.video-toggle{display:none}
  .faq-list details::details-content,.faq-list summary:after,.path-art{transition:none}
}
@media print{.reveal{opacity:1;transform:none}.hero-video,.video-toggle{display:none}}
