/* Dedicated page, sharing the studio palette and editorial rhythm. */
.hls-video-page { color:var(--moon,#f2ecff); background:var(--night,#090b1a); overflow-x:clip; }
.hls-video-page [hidden] { display:none!important; }
.hls-video-page :is(h1,h2,h3,p,blockquote) { overflow-wrap:anywhere; }
.hls-video-page :is(h1,h2,h3) { font-family:Georgia,serif; font-weight:400; line-height:1.08; letter-spacing:-.035em; }
.hls-video-page :is(h1,h2) em { color:var(--purple-light,#ad83ff); }
.hls-video-page .hls-video-copy { max-width:65ch; font-size:clamp(16px,1.1vw,20px); line-height:1.75; color:inherit; opacity:.8; }
.hls-video-page .section-index { font-size:12px; line-height:1.5; color:var(--gold-light,#f2d19a); }
.hls-video-intro { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:clamp(24px,4vw,64px); align-items:center; height:calc(100svh - 72px); min-height:720px; box-sizing:border-box; padding:clamp(48px,6vw,94px) clamp(32px,7vw,150px); overflow:hidden; background:radial-gradient(circle at 76% 48%,rgba(109,53,255,.2),transparent 27%),var(--night,#090b1a); }
.hls-video-intro>div { position:relative; z-index:1; max-width:1000px; }
.hls-video-intro h1 { max-width:16ch; margin:24px 0; font-size:clamp(44px,5.7vw,94px); }
.hls-video-intro .button { margin-top:26px; font-size:15px; border:1px solid rgba(242,209,154,.7); background:linear-gradient(120deg,#ad83ff12,#f2d19a0c); color:var(--moon,#f2ecff); min-height:50px; padding:15px 24px; border-radius:999px; box-shadow:0 6px 26px #0002; transition:background .2s,border-color .2s; }
.hls-video-intro .button:hover { background:#ad83ff24; border-color:#f2d19a; }
.hls-video-intro .button>span { color:#f2d19a; font-size:20px; }
.hls-video-orbit { position:absolute; z-index:-1; width:min(40vw,600px); aspect-ratio:1; top:50%; right:7%; transform:translateY(-50%); border:1px solid rgba(173,131,255,.35); border-radius:50%; box-shadow:inset -35px 0 0 rgba(173,131,255,.08),0 0 90px rgba(109,53,255,.14); pointer-events:none; }
.hls-video-intro>div {min-width:0;}
.hls-video-intro>.hls-video-orbit { position:absolute; z-index:-1; right:6%; top:50%; width:min(39vw,600px); max-width:none; transform:translateY(-50%); border-color:rgba(173,131,255,.4); box-shadow:0 0 90px rgba(109,53,255,.2),inset -30px 0 0 rgba(217,154,69,.05); }
.hls-video-projects { padding-block:clamp(48px,6vw,96px); }
.hls-video-featured { background:linear-gradient(135deg,#19132c,#0c0e20); border-top:1px solid #ad83ff30; }
.hls-video-section-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; margin-bottom:32px; }
.hls-video-section-heading h2 { margin:0; font-size:clamp(32px,3.4vw,54px); }
.hls-video-project-nav { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.hls-video-project-nav>span { min-width:4ch; text-align:center; font-size:14px; font-variant-numeric:tabular-nums; }
.hls-video-page button { font:inherit; cursor:pointer; }
.hls-video-page .hls-video-project-arrow,.hls-video-project-nav>button,.hls-video-picker header>button { display:grid; place-items:center; flex:none; width:50px; height:50px; padding:0; border:1px solid rgba(242,209,154,.7); border-radius:50%; color:#f2d19a; background:radial-gradient(circle at 30% 20%,#28203f,#090b1a); font-size:24px; transition:background .2s,color .2s; }
.hls-video-stage { position:relative; }
.hls-video-stage-arrows { position:absolute; inset:0 -25px; z-index:2; pointer-events:none; display:flex; justify-content:space-between; align-items:center; }
.hls-video-project-arrow { position:static; pointer-events:auto; box-shadow:0 0 24px #ad83ff28,0 6px 20px #0005; }
.hls-video-page button:disabled { opacity:.3; cursor:default; }
.hls-video-page :is(button,a,input):focus-visible { outline:2px solid #ad83ff; outline-offset:4px; }
.hls-video-page .hls-video-project-arrow:hover:not(:disabled),.hls-video-project-nav>button:hover:not(:disabled) { background:#f2d19a; color:#111225; }
.hls-video-page .hls-video-project-nav>.hls-video-choose { width:auto; padding-inline:18px; border-radius:28px; display:flex; gap:16px; font-size:14px; }
.hls-video-project { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:clamp(28px,5vw,90px); padding:clamp(32px,4vw,64px); margin:0; overflow:hidden; background:linear-gradient(145deg,#151832,#0d1025); border:1px solid rgba(173,131,255,.24); border-radius:12px; box-shadow:0 24px 70px rgba(0,0,0,.18); }
.hls-video-project+.hls-video-project { margin-top:28px; }
.hls-video-projects[data-video-ready] .hls-video-project { margin-top:0; }
.hls-video-project-copy,.hls-video-project-details,.hls-video-project-identity { min-width:0; }
.hls-video-project:not(:has(.hls-video-gallery)) { grid-template-columns:1fr; }
.hls-video-project:not(:has(.hls-video-gallery)) .hls-video-project-copy:has(.hls-video-project-details) { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:center; gap:clamp(28px,5vw,80px); }
.hls-video-project[data-tone="light"] { background:linear-gradient(145deg,#f3eef5,#e9e1ed); color:#292332; border-color:#d8ccdf; }
.hls-video-project[data-tone="light"] .section-index { color:#72513e; }
.hls-video-project h3 { font-size:clamp(30px,3.5vw,60px); margin:20px 0; max-width:23ch; }
.hls-video-project-image { display:block; width:min(100%,220px); height:140px; object-fit:contain; object-position:left center; margin-bottom:26px; }
.hls-video-socials { display:flex; flex-wrap:wrap; gap:12px 22px; margin-top:24px; }
.hls-video-socials a { display:inline-flex; align-items:center; justify-content:space-between; gap:20px; max-width:100%; min-height:46px; padding:12px 18px; border:1px solid #f2d19a70; border-radius:999px; font-size:15px; line-height:1.4; color:inherit; text-decoration:none; background:#ffffff05; box-shadow:0 8px 24px #0002; transition:background .2s,border-color .2s,transform .2s; }
.hls-video-socials a span { overflow-wrap:anywhere; min-width:0; }
.hls-video-socials a b { color:#f2d19a; font-size:18px; font-weight:400; }
.hls-video-socials a:hover { background:#ad83ff1f; border-color:#ad83ff; transform:translateY(-2px); }
.hls-video-project[data-tone="light"] .hls-video-socials a { border-color:#80604566; background:#ffffff55; }
.hls-video-project[data-tone="light"] .hls-video-socials a b { color:#765337; }
.hls-video-project blockquote { margin:36px 0 0; padding:24px 26px; border-left:2px solid #ad83ff; background:#080a192b; border-radius:0 10px 10px 0; }
.hls-video-project[data-tone="light"] blockquote { background:#ffffff7a; }
.hls-video-project blockquote p { font:400 clamp(18px,1.4vw,23px)/1.6 Georgia,serif; white-space:normal; margin:0 0 14px; }
.hls-video-project blockquote cite { font-size:14px; }
.hls-video-quote-mark { display:block; color:#ad83ff; font:54px/.8 Georgia,serif; margin:8px 0; }
.hls-video-gallery { min-width:0; }
.hls-video-track { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; scrollbar-width:none; }
.hls-video-track::-webkit-scrollbar { display:none; }
.hls-video-slide { flex:0 0 100%; min-width:0; scroll-snap-align:start; scroll-snap-stop:always; padding:0 8px; text-align:center; box-sizing:border-box; }
.hls-video-player { position:relative; display:grid; place-items:center; width:min(100%,320px); aspect-ratio:9/16; margin-inline:auto; background:radial-gradient(ellipse at 75% 20%,rgba(109,53,255,.3),transparent 55%),#080a19; border:1px solid rgba(173,131,255,.3); overflow:hidden; }
.hls-video-player>img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
.hls-video-player>button { position:absolute; inset:0; width:100%; border:0; color:#f2ecff; background:linear-gradient(transparent,rgba(8,10,25,.85)); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; padding:24px; }
.hls-video-player>button>span { display:grid; place-items:center; width:66px; height:66px; border:1px solid #f2d19a; border-radius:50%; color:#f2d19a; background:#11142c; font-size:35px; }
.hls-video-player>button>strong { font-size:16px; }
.hls-video-player>button>small { max-width:22ch; font-size:12px; line-height:1.6; }
.hls-video-player iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.hls-video-player[data-format="landscape"] { width:100%; aspect-ratio:16/9; }
.hls-video-player[data-format="square"] { width:min(100%,420px); aspect-ratio:1; }
.hls-video-player[data-format="presentation"] { width:100%; aspect-ratio:8/5; }
.hls-video-player[data-format="classic"] { width:100%; aspect-ratio:4/3; }
.hls-video-player>video { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; background:#080a19; }
.hls-video-player[data-format="landscape"]>button { gap:8px; padding:12px; }
.hls-video-player[data-format="landscape"]>button>span { width:42px; height:42px; font-size:26px; }
.hls-video-player[data-format="landscape"]>button>small { max-width:36ch; font-size:11px; }
.hls-video-external { position:relative; padding:18px; color:#f2d19a; background:#090b1add; border:1px solid #f2d19a66; border-radius:28px; font-size:16px; }
.hls-video-public { display:inline-flex; gap:12px; align-items:center; margin:18px 0 6px; padding-block:8px; font-size:14px; color:inherit; text-decoration:underline; text-underline-offset:5px; text-decoration-color:#ad83ff66; }
.hls-video-public:hover { text-decoration-color:currentColor; }
.hls-video-gallery-nav { display:flex; align-items:center; justify-content:center; gap:16px; margin-top:20px; }
.hls-video-gallery-nav .hls-scroll-dots { display:flex; flex-wrap:wrap; justify-content:center; max-width:100%; }
.hls-video-picker { width:min(720px,calc(100vw - 32px)); max-height:calc(100dvh - 48px); box-sizing:border-box; padding:clamp(22px,4vw,40px); border:1px solid rgba(173,131,255,.5); color:#f2ecff; background:radial-gradient(circle at 10% 0,rgba(109,53,255,.2),transparent 55%),#0b0d20; box-shadow:0 30px 100px #0008; }
.hls-video-picker::backdrop { background:#030510c9; backdrop-filter:blur(5px); }
.hls-video-picker header { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.hls-video-picker h2 { margin:0; font:400 clamp(26px,3vw,40px)/1.1 Georgia,serif; }
.hls-video-picker label { display:block; margin-top:24px; font-size:14px; }
.hls-video-picker input { display:block; box-sizing:border-box; margin-top:8px; padding:14px; width:100%; border:1px solid #62567f; border-radius:4px; background:#18172d; color:#fff; font:16px/1.4 Arial,sans-serif; }
.hls-video-search-status { font-size:13px; color:#b9b4cc; }
.hls-video-picker-list { display:grid; gap:10px; }
.hls-video-picker-list>button { display:grid; grid-template-columns:50px minmax(0,1fr) auto; gap:16px; align-items:center; width:100%; padding:14px; text-align:left; background:#ffffff04; color:#f2ecff; border:1px solid #ffffff26; }
.hls-video-picker-list>button:hover,.hls-video-picker-list>button[aria-current="true"] { border-color:#f2d19a; background:#ad83ff16; }
.hls-video-picker-list img { width:50px; height:50px; object-fit:contain; }
.hls-video-picker-list i { width:36px; height:36px; border:1px solid #ad83ff; border-radius:50%; box-shadow:inset -8px 0 #ad83ff40; }
.hls-video-picker-list span { overflow-wrap:anywhere; font:400 20px/1.2 Georgia,serif; }
.hls-video-contact { position:relative; isolation:isolate; overflow:hidden; padding-block:clamp(65px,9vw,140px); text-align:center; background:#11142c; border-top:1px solid var(--line); }
.hls-video-contact h2 { font-size:clamp(40px,5.4vw,84px); margin:24px auto; max-width:20ch; }
.hls-video-contact .hls-video-copy { margin:28px auto; }
.hls-video-contact .hls-video-orbit { right:50%; transform:translate(50%,-50%); }
.hls-video-contact>small { display:block; margin-top:20px; }
.hls-video-page[data-hls-heading-font="classic"] :is(h1,h2,h3) { font-family:"Times New Roman",serif; }
.hls-video-page[data-hls-heading-font="modern"] :is(h1,h2,h3) { font-family:Arial,sans-serif; font-weight:700; }
.hls-video-page[data-hls-heading-scale="compact"] :is(.hls-video-intro h1,.hls-video-contact h2) { font-size:clamp(38px,4.8vw,76px); }
.hls-video-page[data-hls-heading-scale="large"] :is(.hls-video-intro h1,.hls-video-contact h2) { font-size:clamp(48px,6.4vw,106px); }
.hls-video-page[data-hls-body-scale="large"] .hls-video-copy { font-size:clamp(18px,1.3vw,23px); }
.hls-video-page[data-hls-body-scale="compact"] .hls-video-copy { font-size:clamp(15px,1vw,18px); }
.hls-video-page[data-hls-heading-scale="compact"] :is(.hls-video-section-heading,.hls-hybrid-possibilities,.hls-hybrid-voice,.hls-hybrid-method) h2 {font-size:clamp(30px,3vw,48px);}
.hls-video-page[data-hls-heading-scale="large"] :is(.hls-video-section-heading,.hls-hybrid-possibilities,.hls-hybrid-voice,.hls-hybrid-method) h2 {font-size:clamp(40px,4.3vw,72px);}
.hls-video-page[data-hls-heading-scale="compact"] :is(.hls-video-project,.hls-hybrid-paths,.hls-hybrid-voice,.hls-hybrid-method) h3 {font-size:clamp(24px,2.5vw,38px);}
.hls-video-page[data-hls-heading-scale="large"] :is(.hls-video-project,.hls-hybrid-paths,.hls-hybrid-voice,.hls-hybrid-method) h3 {font-size:clamp(32px,3.4vw,50px);}
.hls-video-page .site-footer {padding-block:28px;gap:24px;}
.hls-video-page .site-footer>p {font-size:14px;line-height:1.6;}
.hls-video-page .site-footer>div {display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px 20px;font-size:14px;min-width:0;}
.hls-video-page .site-footer>div a {display:inline-flex;align-items:center;min-height:40px;font-size:14px;line-height:1.5;}
.hls-video-page .site-footer>div>small {flex-basis:100%;font-size:12px;line-height:1.6;text-align:right;color:#b9b4c8;}
@media(max-width:820px){
 .hls-video-intro { height:auto; min-height:720px; padding:42px 18px 170px; grid-template-columns:1fr; align-items:start; }
 .hls-video-intro>.hls-video-orbit { position:absolute; inset:auto -30% -150px auto; z-index:-1; width:min(90vw,430px); margin:0; transform:none; }
 .hls-video-orbit { width:70vw; right:-25%; }
 .hls-video-project { grid-template-columns:1fr; padding:24px 18px; }
 .hls-video-project:not(:has(.hls-video-gallery)) .hls-video-project-copy:has(.hls-video-project-details) { grid-template-columns:1fr; gap:12px; }
 .hls-video-stage-arrows { position:static; display:flex; justify-content:space-between; margin:0 0 16px; }
 .hls-video-project-arrow { position:static; transform:none; }
 .hls-video-project-nav { width:100%; gap:10px; }
 .hls-video-page .hls-video-project-nav>.hls-video-choose { margin-left:auto; padding-inline:12px; font-size:13px; }
 .hls-video-gallery-nav { gap:10px; }
 .hls-video-page .hls-video-copy { font-size:16px; }
 .hls-video-projects { padding-inline:18px; }
 .hls-video-project h3 { font-size:36px; }
 .hls-video-socials { display:grid; grid-template-columns:1fr; }
 .hls-video-socials a { width:100%; box-sizing:border-box; }
 .hls-video-project blockquote { padding:20px; }
 .hls-video-page .site-footer {grid-template-columns:1fr;text-align:center;gap:18px;}
 .hls-video-page .site-footer>div {justify-content:center;justify-self:center;width:100%;gap:8px 20px;}
 .hls-video-page .site-footer>div>small {text-align:center;}
}
@media(prefers-reduced-motion:reduce){.hls-video-page *{scroll-behavior:auto!important;transition:none!important}}
