
:where(a,button,input,select,textarea,summary):focus-visible{
  outline:3px solid var(--orange,#f67943); outline-offset:2px;
}
body.rth-locked{ overflow:hidden; }
.rth-tabs [data-slot=tabs-list]{ display:inline-flex; gap:4px; }
.rth-tabs [data-slot=tabs-trigger]{
  font:inherit; background:transparent; border:0; cursor:pointer;
  color:var(--ink,#121512); font-weight:600;
}
.rth-tabs [data-slot=tabs-content][hidden]{ display:none; }
.rth-accordion details{ border-bottom:1px solid var(--border,#d8dbd1); }
.rth-accordion summary{
  list-style:none; cursor:pointer; display:flex; justify-content:space-between;
  align-items:center; gap:20px;
}
.rth-accordion summary::-webkit-details-marker{ display:none; }
.rth-accordion summary svg{ flex:none; transition:transform .2s; }
.rth-accordion details[open] summary svg{ transform:rotate(180deg); }
.rth-accordion [data-slot=accordion-content]{ padding:0 0 22px; }
.rth-accordion [data-slot=accordion-content] p{ margin:0 0 12px; }
.rth-dialog-root,.rth-sheet-root{ position:fixed; inset:0; z-index:100; }
.rth-dialog-root[hidden],.rth-sheet-root[hidden]{ display:none; }
.rth-overlay{ position:absolute; inset:0; background:rgba(18,21,18,.72); }
.rth-dialog{
  position:relative; margin:6vh auto 0; width:min(92vw,760px);
  background:var(--paper,#f7f7f2); color:var(--ink,#121512);
  padding:45px; max-height:88svh; overflow:auto;
  box-shadow:0 30px 60px rgba(0,0,0,.35);
}
.rth-dialog h2{ margin:0 0 6px; }
.rth-dialog.photo-dialog{ width:min(94vw,1100px); padding:28px; }
.rth-dialog.photo-dialog img{ display:block; width:100%; height:auto; margin-top:18px; }
.rth-close{
  position:absolute; top:14px; right:14px; background:transparent; border:0;
  cursor:pointer; padding:8px; color:inherit; line-height:0;
}
.rth-close svg{ width:22px; height:22px; }
.rth-sheet{
  position:absolute; top:0; right:0; bottom:0; overflow-y:auto;
  transform:none;
}
.rth-sheet .rth-close{ color:var(--paper,#f7f7f2); }
@media (max-width:640px){ .rth-dialog{ padding:35px 22px; } }
.hero-video{ opacity:0; transition:opacity 1.2s ease; animation:none; pointer-events:none; object-position:70% 42%; }
.hero-video.is-playing{ opacity:.82; }
.home-hero.rth-video-playing img.hero-photo{ animation:none; opacity:0; transition:opacity 1.2s ease; }
@media (max-width:899px){
  .hero-video{ object-position:50% 40%; }
  .home-hero img.hero-photo{ object-position:50% 40%; }
}
.home-hero .hero-picture{ display:contents; }
@media (min-width:900px){ .home-hero img.hero-photo{ object-position:70% 42%; } }
@media (prefers-reduced-motion:reduce){ .hero-video{ display:none; } }
@media (max-width:899px){ .utility{ display:none; } }
.rth-hp{ position:absolute; left:-5000px; }
.form-feedback{ margin-top:16px; }
.rth-legal h2{ font-size:1.6rem; margin:34px 0 10px; }
.rth-legal h3{ font-size:1.05rem; margin:22px 0 8px; }
.rth-legal ul{ padding-left:22px; }
.rth-legal li{ margin:4px 0; }
.party-ready{ list-style:none; padding:0; margin:18px 0 22px; display:grid; gap:10px; }
.party-ready li{ display:flex; gap:10px; align-items:flex-start; }
.party-ready svg{ width:18px; height:18px; flex:none; margin-top:3px; color:var(--purple,#6629d7); }
.page-hero h1.hero-h1{
  font-family:Barlow Condensed,sans-serif; font-size:.95rem; font-weight:600;
  letter-spacing:.14em; line-height:1.3; text-transform:uppercase; max-width:none;
}
.page-hero .hero-title{
  font-family:var(--font-display); text-transform:uppercase; letter-spacing:-.018em;
  font-weight:400; line-height:1.025; max-width:770px; margin:0;
  font-size:clamp(4rem,6.7vw,6.9rem); color:var(--paper,#f7f7f2);
}
.page-hero.compact .hero-title{ max-width:950px; font-size:clamp(3.5rem,6vw,6rem); }
.page-hero .hero-title em{ color:var(--orange); font-style:normal; }
.page-hero.play-hero .hero-title em{ color:#bda7ff; }
@media (max-width:640px){
  .page-hero h1.hero-h1{ font-size:.82rem; }
  .page-hero .hero-title{ font-size:clamp(3.7rem,13vw,5.5rem); }
  .page-hero.compact .hero-title{ font-size:clamp(3.3rem,12vw,5rem); }
}
.reel-section .reel{ display:block; width:100%; height:auto; aspect-ratio:16/9; background:#000; margin-top:34px; }
.yt-facade{ position:relative; display:block; width:100%; aspect-ratio:16/9; background:#000; margin-top:34px; overflow:hidden; border-radius:var(--radius-lg,8px); }
.yt-facade img{ width:100%; height:100%; object-fit:cover; display:block; opacity:.92; transition:opacity .25s; }
.yt-facade:hover img{ opacity:1; }
.yt-facade .yt-play{ position:absolute; left:50%; top:50%; width:88px; height:62px; transform:translate(-50%,-50%); background:#f00; border-radius:18px; box-shadow:0 8px 30px rgba(0,0,0,.45); transition:transform .2s; }
.yt-facade .yt-play::after{ content:""; position:absolute; left:34px; top:17px; border-style:solid; border-width:14px 0 14px 26px; border-color:transparent transparent transparent #fff; }
.yt-facade:hover .yt-play{ transform:translate(-50%,-50%) scale(1.06); }
.yt-facade iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.yt-facade.yt-short{ aspect-ratio:9/16; max-width:340px; margin-top:0; }
.yt-row{ display:grid; grid-template-columns:minmax(0,340px) 1fr; gap:48px; align-items:center; margin-top:48px; }
.yt-row-text h3{ font-family:Anton,sans-serif; font-weight:400; font-size:clamp(2rem,4vw,3rem); line-height:1.05; margin:10px 0 14px; }
.yt-row-text p{ max-width:48ch; }
.yt-button svg{ width:20px; height:20px; }
.yt-row-text .yt-button{ margin-top:22px; }
.yt-cta{ padding-top:0; text-align:center; }
.yt-cta .wrap{ flex-direction:column; gap:14px; }
.yt-cta .yt-cta-text{ max-width:52ch; margin:0 auto 8px; }
@media (max-width:760px){ .yt-row{ grid-template-columns:1fr; gap:34px; } .yt-facade.yt-short{ max-width:280px; } }
.hero-bottom .wrap{ gap:24px; }
.hero-bottom .reel-link{ margin-left:auto; margin-right:24px; }
@media (max-width:600px){ .hero-bottom .scroll:not(.reel-link){ display:none; } .hero-bottom .reel-link{ margin-right:0; } }
