/* Shared editorial rhythm, layered over the existing cinematic identity. */
:root{--surface:#121019;--soft-line:#d5b8ff26;--copy:#ccc4d6}
body{line-height:1.6}.container{width:min(calc(100% - 80px),1280px)}
.section{padding-block:88px}.section-head{gap:32px;margin-bottom:36px}.section-description{max-width:410px;font-size:15px}
p{line-height:1.75}h1,h2,h3{text-wrap:balance}h2{font-size:clamp(38px,4.6vw,68px);line-height:1.02}h3{line-height:1.15}
.eyebrow{font-size:12px;letter-spacing:.19em;color:#c6a0f1}.inner-hero> .container>p:last-of-type{max-width:710px;color:var(--copy)}
.btn{border-radius:3px;min-height:50px;font-size:15px;letter-spacing:.09em;white-space:normal}.btn-solid{background:linear-gradient(115deg,#7030b9,#994be0);box-shadow:0 5px 20px #7e36c330}.btn-outline,.btn-ghost{border-color:#b991df77}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #ddc5ff;outline-offset:5px}
.site-header{box-shadow:0 8px 30px #0003}.brand img,.footer-logo{filter:drop-shadow(0 0 .6px #f4edff) drop-shadow(0 0 .6px #f4edff)}
@media(min-width:1100px){.header-inner{width:min(calc(100% - 80px),1380px);grid-template-columns:190px 1fr auto;min-height:104px;padding-block:14px;gap:24px}.header-inner .brand{grid-column:1;grid-row:1;width:180px}.header-inner .brand img{width:180px}#main-nav{grid-column:2;grid-row:1;margin:0;gap:24px}.header-contact{grid-column:3;grid-row:1;font-size:14px;padding:12px 17px}.site-header nav a{font-size:15px;letter-spacing:.09em}}
.studio-intro{padding:52px 0;background:#110e17;border-bottom:1px solid var(--soft-line)}.studio-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.studio-intro h2{font-size:clamp(30px,3vw,44px);text-transform:none;line-height:1.12}.studio-intro p:not(.eyebrow){font-size:15px;color:var(--copy);margin-bottom:16px}.studio-intro .eyebrow{margin-bottom:16px}.text-link{display:inline-block;color:#d1b0f6;text-underline-offset:5px}.text-link:hover{text-decoration:underline}
.audience-card{border-radius:6px;min-height:390px}.audience-card>div{min-height:390px;padding:30px;background:linear-gradient(180deg,#08080c00 5%,#08080cb0 48%,#08080cf5)}.audience-card strong{padding-top:20px;border-top:1px solid #ffffff36}.audience-card h3{font-size:32px}.audience-card>img{opacity:.8}
.watch-cover{border-radius:5px}.watch-caption{padding:20px 0}.watch-caption p{line-height:1.6;letter-spacing:.12em}.watch-caption h3{font-size:26px}
.process-grid{gap:20px;margin-top:32px;margin-bottom:30px}.process-grid>div{border:1px solid var(--soft-line);border-radius:5px;background:linear-gradient(145deg,#191222,#0f0d14);padding:28px}.process-grid>div>span{display:block;color:#ba88ee;margin-bottom:22px}.process-grid p{font-size:14px;color:var(--copy)}
.audience-detail{gap:60px;padding-block:45px;border-bottom:1px solid var(--soft-line)}.audience-detail>img{border-radius:6px}.category-links,.journey-nav{gap:12px}.category-links a,.journey-nav a{border:1px solid var(--soft-line);border-radius:30px;padding:9px 17px;color:#e5d5f5;font-size:13px}.category-links a:hover,.journey-nav a:hover{background:#ad68fb1a;border-color:#bd8cf2}
.journey-hero img{border-radius:6px;height:490px}.journey-hero-grid{gap:50px}.offering{background:linear-gradient(145deg,#191320,#100d16);border:1px solid var(--soft-line);border-radius:5px;padding:28px}.offering h3{margin-top:18px}.offering-grid{gap:20px}.journey-investment{border-block:1px solid var(--soft-line)}.journey-price-grid ul{list-style:none;padding:0}.journey-case{border-color:var(--soft-line);border-radius:5px}.journey-gallery img{border-radius:5px}
.faq{max-width:900px;margin-inline:auto}.faq h2{margin-bottom:30px}.faq details{border-bottom:1px solid var(--soft-line);padding:20px 0}.faq summary{cursor:pointer;font-size:18px;line-height:1.5}.faq details p{max-width:720px;color:var(--copy);padding-top:15px;margin-bottom:5px}
.editorial-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.editorial-gallery figure{margin:0;min-width:0}.editorial-gallery img{width:100%;height:410px;object-fit:cover;border-radius:5px}.editorial-gallery figcaption{padding:22px 0}.editorial-gallery span{color:#c49aea;letter-spacing:.15em;font-size:11px}.editorial-gallery h3{font-size:29px;margin:10px 0 14px}.editorial-gallery a{font-size:13px;color:#d1b0f6;text-decoration:underline;text-underline-offset:5px}
.contact-grid{gap:65px;align-items:start}.inquiry-form{padding:32px;border:1px solid var(--soft-line);border-radius:8px;background:#14101c}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{border-radius:3px;background:#0b0910;color:#f7f4fa;border:1px solid #78628e88;padding:13px;min-width:0;max-width:100%}.inquiry-form label{letter-spacing:.08em;font-size:11px}.inquiry-form input:focus,.inquiry-form textarea:focus,.inquiry-form select:focus{outline:2px solid #bf8ff4;outline-offset:2px}.inquiry-help{margin:30px 0;padding:22px;border-left:2px solid #a976dd;background:#17101f}.inquiry-help h3{font-size:26px;margin-bottom:12px}.inquiry-help p,.inquiry-help a{font-size:14px}.inquiry-help a{text-decoration:underline;text-underline-offset:4px}#form-status{font-size:13px;line-height:1.65}
.journal-card{border:1px solid var(--soft-line);border-radius:6px;overflow:hidden;background:#15101d}.journal-card img{aspect-ratio:16/10;object-fit:cover}.article-body{max-width:860px}.article-body p,.article-body li{line-height:1.85}.site-footer{border-top:1px solid var(--soft-line)}.footer-main{gap:48px}.footer-links a{line-height:1.7}.film-page-intro{gap:54px}.film-page-poster{filter:drop-shadow(0 15px 30px #0008)}
@media(max-width:1000px){.container{width:calc(100% - 48px)}.studio-intro-grid{gap:30px}.contact-grid{gap:30px}.audience-detail{gap:32px}.editorial-gallery img{height:320px}}
@media(max-width:650px){.container{width:calc(100% - 36px)}.section{padding-block:58px}.section-head{align-items:start;gap:22px}.studio-intro{padding-block:36px}.studio-intro-grid{grid-template-columns:1fr;gap:24px}.studio-intro h2{font-size:34px}.hero h1{font-size:clamp(48px,11.5vw,72px)}.hero-description{font-size:15px;max-width:36ch}.hero-buttons{gap:12px}.audience-card,.audience-card>div{min-height:350px}.journey-hero img{height:350px}.journey-hero-grid{gap:32px}.journey-hero h1{font-size:clamp(40px,10.8vw,58px)}.offering{padding:24px}.editorial-gallery{grid-template-columns:1fr;gap:28px}.editorial-gallery img{height:390px;object-position:center 30%}.editorial-gallery figcaption{padding:18px 0}.contact-grid{grid-template-columns:1fr}.inquiry-form{padding:22px 18px}.field-pair{gap:16px}.audience-detail{padding-block:30px}.journey-nav{padding-block:20px}.journey-nav a{font-size:12px;padding:8px 12px}.footer-main{gap:32px}.film-page-intro{gap:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.audience-card>img,.watch-cover img{transition:none}}

/* Visual-first direction: show complete subjects rather than filling boxes. */
.site-header,.site-footer{background:#000}.brand img,.footer-logo{filter:none!important;object-fit:contain;object-position:center;aspect-ratio:1080/338}
.header-inner{position:relative;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;min-height:88px;padding-block:12px}.header-inner .brand{grid-column:2;grid-row:1;justify-self:center;width:190px}.header-inner .brand img{width:190px}.header-contact{grid-column:3;grid-row:1;justify-self:end}#main-nav{grid-column:1/-1;grid-row:2;justify-content:center;margin:0;gap:26px}.site-header nav a{font-size:15px}.header-inner .menu-toggle{grid-column:3;grid-row:1;justify-self:end}
.hero{min-height:640px;height:88svh;max-height:900px}.hero-content{padding-top:120px}.hero h1{font-size:clamp(40px,4.5vw,70px);line-height:1.06;max-width:650px;margin-bottom:20px}.hero-description{max-width:480px;font-size:15px}.inner-hero h1,.journey-hero h1,.cinema-feature h1{font-size:clamp(38px,4.5vw,64px);line-height:1.08;max-width:760px}.inner-hero{min-height:470px;padding-top:190px;padding-bottom:50px}.inner-hero p{font-size:15px;max-width:600px}.journey-hero h1 br{display:none}h2{font-size:clamp(32px,3.7vw,54px)}
.audience-card>img{object-fit:contain;object-position:center top}.audience-card{background:#08080c}.audience-card>div{background:linear-gradient(180deg,transparent 10%,#08080c44 38%,#08080cf5 65%)}
.audience-detail>img,.journey-hero img,.journey-gallery img,.editorial-gallery img,.about-photo img,.detail-image img,.portfolio-tile img,.photo-grid img{object-fit:contain!important;object-position:center!important;background:#0b090e;height:auto!important;max-height:600px;aspect-ratio:auto}
.journey-hero img{max-height:520px}.editorial-gallery{align-items:start}.editorial-gallery img{height:410px!important;width:100%;aspect-ratio:auto}.about-photo{height:auto!important;align-self:start}.about-photo img{max-height:760px}.journey-gallery{align-items:start}.journey-gallery img{max-height:450px}.watch-cover img{object-fit:contain;object-position:center;background:#000}.watch-cover{background:#000}.process-grid>div>span:empty,.offering>span:empty{display:none}
.visual-hero.service-hero{display:block;padding:145px 0 0;min-height:0;background:#08080c!important}.visual-hero>.hero-video{position:relative;display:block;width:100%;height:auto;max-height:550px;aspect-ratio:16/9;object-fit:contain;object-position:center;opacity:1;background:#000}.visual-hero>.container{position:relative;z-index:2;padding-block:30px 40px}.visual-hero-shade{display:none}.visual-hero h1{font-size:clamp(34px,3.5vw,48px);margin-bottom:16px}.visual-hero h1 br{display:none}.visual-hero .category-links{margin-top:22px}.visual-hero h1 em{margin-left:.15em}
@media(min-width:1100px){.header-inner{grid-template-columns:1fr auto 1fr;padding-block:12px;min-height:124px}.header-inner .brand{grid-column:2;grid-row:1}.header-inner .brand img{width:190px}#main-nav{grid-column:1/-1;grid-row:2}.header-contact{grid-column:3;grid-row:1}}
@media(max-width:900px){.header-inner{min-height:80px}.header-inner .brand,.header-inner .brand img{width:180px}.header-inner .menu-toggle{position:static;margin:0}.header-contact{display:none}.visual-hero.service-hero{padding-top:80px}.hero-content{padding-top:85px}.journey-hero{padding-top:125px}}
@media(max-width:650px){.hero{min-height:600px;height:82svh}.hero h1{font-size:clamp(36px,8.8vw,48px);line-height:1.12}.hero-description{font-size:14px;max-width:34ch}.inner-hero h1,.journey-hero h1,.cinema-feature h1{font-size:clamp(34px,8vw,46px);line-height:1.1}.inner-hero{min-height:390px;padding-top:140px;padding-bottom:40px}.inner-hero p{font-size:14px}.hero-buttons .btn{font-size:13px;min-height:46px}.hero-reel-link{margin-top:22px}.visual-hero>.container{padding-block:25px 32px}.visual-hero h1{font-size:34px}.editorial-gallery img{height:auto!important;max-height:540px}.audience-detail>img{width:100%;max-height:420px}.journey-hero img{max-height:440px}.brand img{height:auto}.audience-card>div{padding:24px}}
@media(prefers-reduced-motion:reduce){.visual-hero .hero-video{visibility:hidden}.visual-hero{background:#08080c!important}.visual-hero:before{content:'';display:block;width:100%;aspect-ratio:16/9;background:url('assets/hero-poster.jpg') center/contain no-repeat}.visual-hero .hero-video{display:none}}
/* The supplied display wordmark has clear lettering; crop only its empty lower margin. */
.brand img,.footer-logo{object-fit:cover;object-position:top center;aspect-ratio:1080/338}
.media-navigation{display:flex;gap:14px;margin-top:25px;flex-wrap:wrap}.media-navigation a{padding:9px 20px;border:1px solid #cda8f466;border-radius:3px;color:#eee4f6;font-size:14px}.media-navigation a:hover{background:#ffffff12}#film-projects,#photography-stories{scroll-margin-top:25px}
.visual-hero.service-hero::before{display:none}
@media(prefers-reduced-motion:reduce){.visual-hero.service-hero>.hero-video{visibility:visible;display:block}}
.photo-story img,.journal-card img,.featured-poster.featured-landscape img,.feature-card img,.film-list img,.poster-grid img{object-fit:contain!important;object-position:center!important;background:#08080c}
.photo-story img{height:auto;max-height:600px}.journal-card img{aspect-ratio:auto;max-height:400px}.audience-card:hover>img,.feature-card:hover img,.poster-grid a:hover img,.watch-cover:hover img{transform:none}
/* High-resolution original artwork on a charcoal masthead. */
.site-header{background:#202027;border-bottom:1px solid #ffffff18;box-shadow:0 6px 24px #0002}
.header-inner .brand{width:210px;overflow:hidden;height:66px;display:block}
.header-inner .brand img{width:210px;height:auto!important;aspect-ratio:auto;object-fit:contain;object-position:center;filter:none!important}
.footer-logo{filter:none!important;object-fit:contain;aspect-ratio:auto}
@media(max-width:900px){.header-inner .brand{width:190px;height:60px}.header-inner .brand img{width:190px}.site-header nav{background:#202027}}
/* Preserve the original purple and metallic artwork; no color inversion. */
.header-inner .brand img,.footer-logo{filter:none!important}
/* Keep the headline on the footage, with supporting copy outside the frame. */
.visual-hero.service-hero{padding-top:145px}
.service-reel-frame{position:relative;aspect-ratio:16/9;max-height:620px;overflow:hidden;background:#000;isolation:isolate}
.service-reel-frame .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:1;background:#000}
.service-reel-frame .visual-hero-shade{display:block;position:absolute;inset:0;background:linear-gradient(0deg,#08080cd9,transparent 70%);z-index:1;pointer-events:none}
.service-reel-title{position:absolute;inset:auto 0 0;z-index:2;padding-bottom:36px}.service-reel-title h1{font-size:clamp(34px,4.5vw,64px);margin:0;max-width:900px;text-shadow:0 2px 14px #000}.service-reel-title h1 em{color:#d0adff}.service-reel-title .eyebrow{margin-bottom:12px}.service-reel-details{padding-block:24px 32px}.service-reel-details>p{max-width:650px;margin-bottom:0}.service-reel-details .category-links{margin-top:20px}
@media(max-width:900px){.visual-hero.service-hero{padding-top:84px}}
@media(max-width:650px){.service-reel-frame{aspect-ratio:4/3}.service-reel-frame .hero-video{object-fit:contain;object-position:center top}.service-reel-title{padding-bottom:24px}.service-reel-title h1{font-size:clamp(28px,7.4vw,38px);max-width:400px}.service-reel-title .eyebrow{display:none}.service-reel-details{padding-block:22px 28px}}
@media(max-width:650px){.service-reel-frame{aspect-ratio:16/9}.service-reel-title{padding-bottom:18px}.service-reel-title h1{font-size:clamp(27px,7.2vw,36px)}}
.visual-hero .service-reel-title{position:absolute;top:auto;bottom:0;left:0;right:0;z-index:2}
/* Services hero fills the viewport beneath the opaque masthead. */
.visual-hero.service-hero{padding-top:145px}
.visual-hero .service-reel-frame{width:100%;height:calc(100svh - 145px);min-height:480px;max-height:none;aspect-ratio:auto}
.visual-hero .service-reel-frame .hero-video{inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center}
.visual-hero .service-reel-title{padding-bottom:50px}.visual-hero .service-reel-title h1{max-width:900px}
@media(max-width:900px){.visual-hero.service-hero{padding-top:84px}.visual-hero .service-reel-frame{height:calc(100svh - 84px);min-height:420px}.visual-hero .service-reel-title{padding-bottom:40px}.visual-hero .service-reel-title h1{font-size:clamp(34px,8.5vw,56px)}}
.artist-feature{background:#100d16;border-block:1px solid #d5b8ff26}.artist-photo-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;align-items:center}.artist-photo-grid.compact{grid-template-columns:1fr}.artist-photo-grid figure{margin:0}.artist-photo-grid img{display:block;width:100%;height:auto;max-height:660px;object-fit:contain;object-position:center}.artist-photo-grid figcaption{color:#bfb5ca;font-size:12px;padding-top:14px}.artist-feature .text-link{margin-top:12px}
@media(max-width:650px){.artist-photo-grid{grid-template-columns:1fr;gap:24px}.artist-feature .section-head{display:block}.artist-feature .section-description{margin-top:20px}}
/* Preserve complete source frames. Containers follow photo proportions. */
.visual-hero .service-reel-frame .hero-video{object-fit:contain!important;object-position:center!important;background:#100e16}
.service-reel-frame{background:#100e16}
.audience-card{display:flex;flex-direction:column;min-height:0;height:auto;overflow:hidden}
.audience-card>img{position:static;display:block;width:100%;height:auto!important;max-height:none;aspect-ratio:auto;object-fit:contain!important;object-position:center!important;opacity:1;transform:none}
.audience-card>div{height:auto;min-height:0;flex:1;background:#121019;padding:26px;justify-content:flex-start}
.audience-card strong{margin-top:22px}.audience-card:hover>img{transform:none}
.audience-detail>img,.journey-hero img,.journey-gallery img,.editorial-gallery img,.about-photo img,.detail-image img,.photo-story img,.journal-card img,.artist-photo-grid img,.art-grid img,.watch-cover img{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important}
.watch-cover{aspect-ratio:auto;height:auto;min-height:0}.watch-cover img{position:static}.watch-cover:hover img{transform:none}
.journey-gallery,.photo-story,.editorial-gallery,.artist-photo-grid{align-items:start}
.detail-image,.about-photo{height:auto!important;min-height:0;align-self:start}
.art-grid figure,.journey-gallery figure,.editorial-gallery figure,.artist-photo-grid figure{align-self:start}
.feature-card,.portfolio-tile{height:auto;min-height:0}
.feature-card img,.portfolio-tile img{position:static;width:100%;height:auto!important;max-height:none;aspect-ratio:auto;object-fit:contain!important;transform:none!important}
/* Poster images retain their full artwork, including titles and credits. */
.film-poster img,.featured-poster img,.poster-grid img,.film-list img{height:auto!important;max-height:none;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important}
.visual-hero .service-reel-title{bottom:var(--reel-letterbox,0px);padding-bottom:24px}
.visual-hero .service-reel-frame .visual-hero-shade{top:var(--reel-letterbox,0px);bottom:var(--reel-letterbox,0px)}
@media(max-width:650px){.visual-hero .service-reel-title h1{font-size:clamp(27px,7.2vw,36px)}.visual-hero .service-reel-title{padding-bottom:18px}}
/* Persistent navigation; align uncropped footage with the masthead edge. */
:root{--site-header-height:145px}
.site-header{position:fixed;top:0;left:0;right:0;bottom:auto;z-index:40}
.visual-hero.service-hero{padding-top:var(--site-header-height)}
.visual-hero .service-reel-frame{height:calc(100svh - var(--site-header-height))}
.visual-hero .service-reel-frame .hero-video{object-position:center top!important}
.visual-hero .service-reel-frame .visual-hero-shade{top:0;bottom:var(--reel-letterbox,0px)}
html{scroll-padding-top:calc(var(--site-header-height) + 20px)}
#film-projects,#photography-stories,#afroman{scroll-margin-top:20px}
@media(max-width:900px){:root{--site-header-height:84px}.visual-hero.service-hero{padding-top:var(--site-header-height)}.visual-hero .service-reel-frame{height:calc(100svh - var(--site-header-height))}}
/* A horizontal reel fills the full browser width at its native proportions. */
.visual-hero .service-reel-frame{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:16/9}
.visual-hero .service-reel-frame .hero-video{width:100%;height:100%;object-fit:contain!important;object-position:center!important}
.visual-hero .service-reel-title{bottom:0;padding-bottom:32px}
@media(max-width:900px){.visual-hero .service-reel-frame{height:auto;min-height:0;aspect-ratio:16/9}}
@media(max-width:650px){.visual-hero .service-reel-title{padding-bottom:16px}.visual-hero .service-reel-title h1{font-size:clamp(25px,6.7vw,36px)}}
/* Slow breathing light: decorative accents only, never text or the logo. */
@keyframes ume-light-breathe{
  0%,100%{opacity:.45;box-shadow:0 0 8px #ad68fb55,0 0 20px #8d40ed22}
  50%{opacity:1;box-shadow:0 0 16px #c590ffbb,0 0 38px #a45af955}
}
@keyframes ume-corner-glow{
  0%,100%{opacity:.55;box-shadow:0 -3px 12px #a45af944}
  50%{opacity:1;box-shadow:0 -6px 24px #bc7dffaa,0 -14px 48px #9042e744}
}
@keyframes ume-button-glow{
  0%,100%{box-shadow:0 0 10px #ad68fb22,0 0 22px #8d40ed11}
  50%{box-shadow:0 0 20px #ad68fb66,0 0 36px #8d40ed33}
}
.site-header::after{content:'';position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,#b978ff,transparent);pointer-events:none}
.service-reel-frame::after{content:'';position:absolute;inset:auto 0 0;height:2px;z-index:3;background:linear-gradient(90deg,transparent,#bc85ff,transparent);pointer-events:none}
.hero::after,.inner-hero::after,.site-header::after,.service-reel-frame::after,.kicker .line{animation:ume-light-breathe 5.5s ease-in-out infinite}
.site-header::after{animation-delay:-2s}.service-reel-frame::after{animation-delay:-1s}.kicker .line{animation-delay:-3s}
.hero-corner{animation:ume-corner-glow 6s ease-in-out infinite}.hero-corner-right{animation-delay:-3s}
.header-contact,.hero-buttons .btn-solid,.play-icon{animation:ume-button-glow 6s ease-in-out infinite}.play-icon{animation-delay:-2s}
@media(prefers-reduced-motion:reduce){
 .hero::after,.inner-hero::after,.site-header::after,.service-reel-frame::after,.kicker .line,.hero-corner,.header-contact,.hero-buttons .btn-solid,.play-icon{animation:none!important}
 .site-header::after,.service-reel-frame::after{opacity:.65;box-shadow:0 0 12px #ad68fb44}
}
/* Title and service summary stay together over the footage. */
.visual-hero .service-reel-title>p:not(.eyebrow){max-width:650px;margin:14px 0 0;color:#f1eaf7;font-size:16px;line-height:1.6;text-shadow:0 2px 8px #000}
.visual-hero .service-reel-frame .visual-hero-shade{background:linear-gradient(0deg,#08080ced, #08080c44 65%,transparent)}
.service-reel-details .category-links{margin-top:0}
@media(max-width:650px){.visual-hero .service-reel-title{padding-bottom:20px}.visual-hero .service-reel-title h1{font-size:clamp(24px,6.6vw,34px)}.visual-hero .service-reel-title>p:not(.eyebrow){font-size:12px;line-height:1.5;margin-top:9px;max-width:48ch}}
/* A shorter transition from the Services reel into the first offering. */
.visual-hero.service-hero + .section{padding-top:28px}
.visual-hero.service-hero + .section .audience-detail:first-child{padding-top:16px}
@media(max-width:650px){.visual-hero.service-hero + .section{padding-top:18px}.visual-hero.service-hero + .section .audience-detail:first-child{padding-top:12px}}
/* A clockwise purple rim light follows button boundaries on hover/focus. */
@property --ume-rim-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
@keyframes ume-rim-orbit{to{--ume-rim-angle:360deg}}
:is(.btn,.header-contact,button[data-filter],.menu-toggle,.player-close,.intro-skip){position:relative;isolation:isolate}
:is(.btn,.header-contact,button[data-filter],.menu-toggle,.player-close,.intro-skip)::before{
 content:'';position:absolute;inset:-2px;border-radius:inherit;padding:2px;pointer-events:none;z-index:2;opacity:0;
 background:conic-gradient(from var(--ume-rim-angle),transparent 0deg 240deg,#8543da55 285deg,#bb78ff 325deg,#f0d7ff 345deg,transparent 360deg);
 -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
 filter:drop-shadow(0 0 4px #b16aff);transition:opacity .2s ease;
}
:is(.btn,.header-contact,button[data-filter],.menu-toggle,.player-close,.intro-skip):is(:hover,:focus-visible)::before{opacity:1;animation:ume-rim-orbit 1.8s linear infinite}
:is(.btn,.header-contact,button[data-filter],.menu-toggle,.player-close,.intro-skip):is(:hover,:focus-visible){box-shadow:0 0 14px #a35df950,0 0 28px #9b4ce526;animation:none}
@media(prefers-reduced-motion:reduce){:is(.btn,.header-contact,button[data-filter],.menu-toggle,.player-close,.intro-skip):is(:hover,:focus-visible)::before{animation:none;background:#bd82ff;filter:none}}
/* Header tabs: expanding underline and quiet upward purple embers. */
.site-header nav a{position:relative}
.site-header nav a::after{content:'';position:absolute;inset:auto 0 -10px;height:2px;background:#bd7fff;box-shadow:0 0 8px #b66aff,0 0 16px #9d4cf077;transform:scaleX(0);transform-origin:center;opacity:0;transition:transform .3s ease,opacity .3s ease;pointer-events:none}
.site-header nav a.active::after{content:'';transform:scaleX(.35);opacity:.6}
.site-header nav a:is(:hover,:focus-visible)::after{content:'';transform:scaleX(1);opacity:1}
.site-header nav .nav-embers{position:absolute;inset:0;pointer-events:none;overflow:visible;opacity:0;transition:opacity .25s ease}
.site-header nav a:is(:hover,:focus-visible) .nav-embers{opacity:1}
.nav-embers i{position:absolute;left:var(--ember-x);bottom:-9px;width:3px;height:3px;border-radius:50%;background:#dab3ff;box-shadow:0 0 5px #c583ff,0 0 10px #a14cec;opacity:0;animation:ume-nav-ember 1.8s ease-out infinite;animation-delay:var(--ember-delay);animation-play-state:paused}
.site-header nav a:is(:hover,:focus-visible) .nav-embers i{animation-play-state:running}
@keyframes ume-nav-ember{0%{opacity:0;transform:translate(0,0) scale(.5)}18%{opacity:.9}70%{opacity:.45}100%{opacity:0;transform:translate(var(--ember-drift),-38px) scale(.15)}}
@media(max-width:900px){.site-header nav a::after{bottom:4px}.nav-embers i{bottom:5px}}
@media(prefers-reduced-motion:reduce){.site-header nav a::after{transition:none}.site-header nav .nav-embers{display:none}.nav-embers i{animation:none}}
.site-header nav a:is(.active,:hover,:focus-visible)::after{display:block}
/* Mobile menu tabs use a full rim; desktop keeps the expanding underline. */
@media(max-width:900px){
 .site-header nav a{border-radius:4px}
 .site-header nav a::after{inset:0;height:auto;padding:1px;border-radius:4px;transform:scale(.96);background:#bb7aff;
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  box-shadow:none;filter:drop-shadow(0 0 4px #b16aff);opacity:0;transition:transform .25s ease,opacity .25s ease}
 .site-header nav a.active::after{transform:scale(1);opacity:.3}
 .site-header nav a:is(:hover,:focus-visible)::after{transform:scale(1);opacity:1;background:conic-gradient(from var(--ume-rim-angle),#944ce533 0deg 240deg,#bb78ff 315deg,#efd5ff 345deg,#944ce533 360deg);animation:ume-rim-orbit 1.8s linear infinite}
 .site-header nav a:is(:hover,:focus-visible){background:#b16aff0b;box-shadow:0 0 14px #9c4ce522}
 .site-header nav .nav-embers{display:none}
}
@media(max-width:900px) and (prefers-reduced-motion:reduce){.site-header nav a::after{transition:none}.site-header nav a:is(:hover,:focus-visible)::after{animation:none;background:#bb7aff}}
@media(max-width:900px){.site-header nav a:is(.active,:hover,:focus-visible)::after{inset:0;height:auto}}
/* Full mobile navigation row, including its complete padded hit area. */
@media(max-width:900px){
 .site-header #main-nav a{display:block;width:100%;box-sizing:border-box;position:relative;overflow:visible}
 .site-header #main-nav a::after,
 .site-header #main-nav a:is(.active,:hover,:focus-visible)::after{inset:0!important;width:100%;height:100%!important;box-sizing:border-box;padding:2px;transform:none!important;border-radius:4px}
 .site-header #main-nav a::after{opacity:0}
 .site-header #main-nav a.active::after{opacity:.25}
 .site-header #main-nav a:is(:hover,:focus-visible)::after{opacity:1;box-shadow:none;background:conic-gradient(from var(--ume-rim-angle),#9d54ef55 0deg 240deg,#c18aff 315deg,#f5e3ff 345deg,#9d54ef55 360deg)}
}
/* Footer links share the desktop navigation's underline and ember treatment. */
.site-footer a{position:relative;display:inline-block;width:fit-content;max-width:100%}
.site-footer a::after{content:'';position:absolute;inset:auto 0 -4px;height:2px;background:#bd7fff;box-shadow:0 0 8px #b66aff,0 0 16px #9d4cf077;transform:scaleX(0);transform-origin:center;opacity:0;transition:transform .3s ease,opacity .3s ease;pointer-events:none}
.site-footer a:is(:hover,:focus-visible)::after{transform:scaleX(1);opacity:1}
.site-footer .nav-embers{position:absolute;inset:0;pointer-events:none;overflow:visible;opacity:0;transition:opacity .25s ease}
.site-footer a:is(:hover,:focus-visible) .nav-embers{opacity:1}
.site-footer .nav-embers i{bottom:-4px}
.site-footer a:is(:hover,:focus-visible) .nav-embers i{animation-play-state:running}
@media(prefers-reduced-motion:reduce){.site-footer a::after{transition:none}.site-footer .nav-embers{display:none}}
/* Brenden Starr campaign: real artwork beneath legible copy and purple embers. */
.case-teaser{position:relative;isolation:isolate;overflow:hidden;background:#0d0913;min-height:560px;display:flex;align-items:center}
.case-teaser>.case-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3;pointer-events:none}
.case-teaser>.case-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#08060df0 0%,#100a1ac4 37%,#100a1a3b 70%,#08060d9c),linear-gradient(0deg,#08060d8c,transparent 50%);pointer-events:none}
.case-teaser>.case-teaser-grid{position:relative;z-index:2;width:min(calc(100% - 80px),1280px)}
.case-teaser h2{max-width:650px;text-shadow:0 2px 18px #0008}.case-teaser p{color:#e4d9ed}.case-teaser .metric-feature{background:#0d091370;padding:28px;border:1px solid #cba6ff33;backdrop-filter:blur(5px);border-radius:5px}
.case-embers{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.case-embers i{position:absolute;left:var(--spark-x);top:var(--spark-y);width:var(--spark-size);height:var(--spark-size);border-radius:50%;background:#daaaff;box-shadow:0 0 6px #c57eff,0 0 14px #a551eaaa;opacity:0;animation:ume-campaign-ember var(--spark-duration) ease-in-out infinite;animation-delay:var(--spark-delay);animation-play-state:paused}
.case-teaser.is-in-view .case-embers i{animation-play-state:running}
@keyframes ume-campaign-ember{0%{opacity:0;transform:translate3d(0,80px,0) scale(.4)}20%{opacity:.8}70%{opacity:.55}100%{opacity:0;transform:translate3d(var(--spark-drift),-160px,0) scale(.15)}}
@media(max-width:650px){.case-teaser{min-height:650px;padding-block:56px}.case-teaser>.case-teaser-grid{width:calc(100% - 36px)}.case-teaser>.case-background{object-position:47% center}.case-teaser>.case-shade{background:linear-gradient(0deg,#08060df2,#100a1ab0 55%,#100a1a88)}.case-teaser h2{font-size:38px}.case-teaser .metric-feature{padding:22px;margin-top:20px}}
@media(prefers-reduced-motion:reduce){.case-embers{display:none}.case-embers i{animation:none}}
/* Compact campaign feature; rejected photo removed. */
.case-teaser{min-height:0;padding-block:46px;background:radial-gradient(ellipse at 75% 45%,#29153b,#100c17 65%)}
.case-teaser>.case-shade{background:linear-gradient(90deg,#08060d55,transparent)}
.case-teaser h2{font-size:clamp(30px,3.8vw,50px)}
.case-teaser .eyebrow{margin-bottom:14px}.case-teaser .case-teaser-grid{gap:32px}
@media(max-width:650px){.case-teaser{min-height:0;padding-block:36px}.case-teaser h2{font-size:32px}.case-teaser .case-teaser-grid{gap:22px}.case-teaser .metric-feature{padding:18px;margin-top:0}.case-teaser>.case-shade{background:none}}
.case-teaser .metric-feature{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;align-items:center;text-align:left;padding:18px}
.case-teaser .metric-feature strong{grid-column:1;grid-row:1/3;font-size:48px;line-height:1;margin:0}
.case-teaser .metric-feature span{grid-column:2;font-size:13px;margin:0;line-height:1.4}
.case-teaser .metric-feature small{grid-column:2;font-size:10px;line-height:1.5;margin:0}
@media(max-width:650px){.case-teaser{padding-block:28px}.case-teaser .metric-feature strong{font-size:42px}.case-teaser .case-teaser-grid{gap:20px}.case-teaser .metric-feature{padding:16px}}
/* Keep campaign results prominent within the compact feature. */
.case-teaser .metric-feature strong{font-size:clamp(68px,7vw,104px);line-height:.95;letter-spacing:-.025em}
@media(max-width:650px){.case-teaser .metric-feature{grid-template-columns:1fr;gap:7px;padding:18px}.case-teaser .metric-feature strong{grid-column:1;grid-row:auto;font-size:76px;line-height:.95}.case-teaser .metric-feature span,.case-teaser .metric-feature small{grid-column:1}.case-teaser .metric-feature span{font-size:12px}.case-teaser .metric-feature small{font-size:10px}}
/* Gold belongs to the cinematography award, including its interactive rim. */
@keyframes ume-award-shine{0%,20%{background-position:150% 50%}75%,100%{background-position:-150% 50%}}
@keyframes ume-award-glow{0%,100%{box-shadow:0 0 12px #e4b54d33,0 0 28px #d89a2720}50%{box-shadow:0 0 22px #f4cf7666,0 0 42px #c58c2833}}
.home-award strong,.award-feature strong,.about-award-card h3{color:#f1cd79;background:linear-gradient(110deg,#c49236 10%,#f2cf7b 35%,#fff4cf 46%,#fffdf3 50%,#efc56c 58%,#bd8428 85%);background-size:250% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 8px #e5b44c55);animation:ume-award-shine 5.5s ease-in-out infinite}
.home-award .btn,.award-spotlight .btn{color:#f9dea0;border-color:#e3bd66;background:#2b200c55;animation:ume-award-glow 5s ease-in-out infinite}
.home-award .btn::before,.award-spotlight .btn::before{background:conic-gradient(from var(--ume-rim-angle),transparent 0deg 240deg,#ac752a77 285deg,#f2cd75 325deg,#fff5cf 345deg,transparent 360deg);filter:drop-shadow(0 0 5px #f2c968)}
.home-award .btn:is(:hover,:focus-visible),.award-spotlight .btn:is(:hover,:focus-visible){color:#fff3d4;border-color:#f8d98e;box-shadow:0 0 18px #e6b94f88,0 0 34px #dca53544;background:#5b3d1944}
@media(prefers-reduced-motion:reduce){.home-award strong,.award-feature strong,.about-award-card h3{animation:none;background-position:center}.home-award .btn,.award-spotlight .btn{animation:none}.home-award .btn:is(:hover,:focus-visible)::before,.award-spotlight .btn:is(:hover,:focus-visible)::before{background:#f2cd75}}
/* A slow continuous sweep; matching gold at either end hides the loop reset. */
@keyframes ume-award-shine-slow{from{background-position:150% 50%}to{background-position:-150% 50%}}
.home-award strong,.award-feature strong,.about-award-card h3{background-image:linear-gradient(110deg,#d4a74a 0%,#d4a74a 30%,#edc96f 43%,#fff5d5 49%,#edc96f 55%,#d4a74a 68%,#d4a74a 100%);background-size:300% 100%;animation:ume-award-shine-slow 11s linear infinite}
@media(prefers-reduced-motion:reduce){.home-award strong,.award-feature strong,.about-award-card h3{animation:none;background-position:center}}
/* Ambient header particles stay behind every interactive element. */
.site-header{isolation:isolate}
.header-particles{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;border-radius:inherit}
.site-header .header-inner{position:relative;z-index:1}
.header-particles i{position:absolute;left:var(--particle-x);top:var(--particle-y);width:var(--particle-size);height:var(--particle-size);border-radius:50%;background:#d6a2ff;box-shadow:0 0 5px #b971ff,0 0 10px #9b45df66;opacity:0;animation:ume-header-particle var(--particle-duration) linear infinite;animation-delay:var(--particle-delay)}
@keyframes ume-header-particle{0%{opacity:0;transform:translate3d(0,24px,0) scale(.5)}20%{opacity:.5}65%{opacity:.35}100%{opacity:0;transform:translate3d(var(--particle-drift),-65px,0) scale(.2)}}
@media(max-width:650px){.header-particles i:nth-child(n+13){display:none}}
@media(prefers-reduced-motion:reduce){.header-particles i{animation:none;opacity:.18;transform:none}.header-particles i:nth-child(even){display:none}}
/* The shine is clipped to the PNG alpha, preserving all transparent gaps. */
@keyframes ume-logo-shine{0%,15%{background-position:150% 50%;opacity:0}23%{opacity:.6}65%{opacity:.6}78%,100%{background-position:-150% 50%;opacity:0}}
.site-header .brand{position:relative}
.site-header .brand::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:2;background:linear-gradient(110deg,transparent 39%,#d8c4ff44 45%,#ffffffd9 50%,#d8c4ff44 55%,transparent 61%);background-size:300% 100%;-webkit-mask-image:url('assets/ume-wordmark.png');mask-image:url('assets/ume-wordmark.png');-webkit-mask-size:100% auto;mask-size:100% auto;-webkit-mask-position:center top;mask-position:center top;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mix-blend-mode:screen;opacity:0;animation:ume-logo-shine 12s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.site-header .brand::after{animation:none;display:none}}
/* A stronger breathing divider anchors the floating masthead. */
@keyframes ume-header-divider-pulse{0%,100%{opacity:.6;box-shadow:0 0 7px #bf80ff88,0 0 18px #a24df955,0 4px 28px #8f3fe52b}50%{opacity:1;box-shadow:0 0 13px #d7a9ffdd,0 0 30px #b568ff99,0 5px 44px #9547e855}}
.site-header::after{height:2px;z-index:3;background:linear-gradient(90deg,#9b49ed22,#bd78ff 30%,#dfbbff 50%,#bd78ff 70%,#9b49ed22);animation:ume-header-divider-pulse 4.8s ease-in-out infinite;animation-delay:0s}
@media(prefers-reduced-motion:reduce){.site-header::after{animation:none!important;opacity:.8;box-shadow:0 0 12px #b775ff88,0 0 24px #9f4af944}}
/* Gold booking CTA stands apart from the purple navigation. */
.site-header .header-contact{color:#ffe6ac;border-color:#dfb75d;background:#4b35182b;animation:ume-award-glow 6s ease-in-out infinite}
.site-header .header-contact::before{background:conic-gradient(from var(--ume-rim-angle),transparent 0deg 240deg,#bd8c3766 285deg,#f1c96d 325deg,#fff2c6 345deg,transparent 360deg);filter:drop-shadow(0 0 5px #e8b959)}
.site-header .header-contact:is(:hover,:focus-visible){color:#fff2d0;border-color:#ffe09b;background:#67451d33;box-shadow:0 0 18px #e5b95577,0 0 35px #b8802833}
/* Soft stage beams move behind the masthead, away from the controls. */
.header-spotlights{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.header-spotlights i{position:absolute;top:-40px;width:260px;height:330px;transform-origin:50% 0;opacity:.16;filter:blur(9px);background:conic-gradient(from 155deg at 50% 0,transparent 0deg,#c192ff00 2deg,#bf8bff66 13deg,#e6d4ff99 25deg,#bf8bff66 37deg,transparent 50deg);animation:ume-stage-sweep 18s ease-in-out infinite alternate}
.header-spotlights i:first-child{left:8%;--beam-from:-30deg;--beam-to:23deg}
.header-spotlights i:last-child{right:8%;--beam-from:25deg;--beam-to:-27deg;animation-duration:23s;animation-delay:-8s}
@keyframes ume-stage-sweep{from{transform:rotate(var(--beam-from))}to{transform:rotate(var(--beam-to))}}
@media(max-width:900px){.header-spotlights i{width:160px;opacity:.1}.header-spotlights i:first-child{left:-35px}.header-spotlights i:last-child{right:-35px}}
@media(prefers-reduced-motion:reduce){.site-header .header-contact{animation:none}.header-spotlights i{animation:none;transform:rotate(0);opacity:.08}.site-header .header-contact:is(:hover,:focus-visible)::before{background:#f1c96d}}
/* A restrained gold spark emission, only on hover or keyboard focus. */
.header-contact .booking-sparks{position:absolute;inset:0;pointer-events:none;overflow:visible;opacity:0;transition:opacity .2s ease}
.header-contact:is(:hover,:focus-visible) .booking-sparks{opacity:1}
.booking-sparks i{position:absolute;left:var(--gold-x);top:0;width:2.5px;height:2.5px;border-radius:50%;background:#ffe5a2;box-shadow:0 0 5px #ffd16b,0 0 10px #edb54388;opacity:0;animation:ume-gold-spark 1.8s ease-out infinite;animation-delay:var(--gold-delay);animation-play-state:paused}
.header-contact:is(:hover,:focus-visible) .booking-sparks i{animation-play-state:running}
@keyframes ume-gold-spark{0%{opacity:0;transform:translate3d(0,2px,0) scale(.5)}18%{opacity:.9}60%{opacity:.5}100%{opacity:0;transform:translate3d(var(--gold-drift),-30px,0) scale(.1)}}
@media(prefers-reduced-motion:reduce){.header-contact .booking-sparks{display:none}.booking-sparks i{animation:none}}
/* Home is the sizing reference; only Services shares its hero height. */
:root{--home-services-hero-height:clamp(640px,88svh,900px)}
.hero{height:var(--home-services-hero-height)}
.visual-hero.service-hero{height:var(--home-services-hero-height);min-height:0;padding-top:var(--site-header-height);padding-bottom:0;box-sizing:border-box}
.visual-hero .service-reel-frame{height:calc(var(--home-services-hero-height) - var(--site-header-height));min-height:0;max-height:none;aspect-ratio:auto}
@media(max-width:650px){:root{--home-services-hero-height:clamp(600px,82svh,900px)}}
.visual-hero .service-reel-frame .hero-video{object-position:center top!important}
.visual-hero .service-reel-title{bottom:var(--reel-letterbox,0px)}
.visual-hero .service-reel-frame .visual-hero-shade{top:0;bottom:var(--reel-letterbox,0px)}
/* On small screens the horizontal reel stays compact, without empty letterboxing. */
@media(max-width:650px){.visual-hero.service-hero{height:auto;min-height:0}.visual-hero .service-reel-frame{height:auto;min-height:0;aspect-ratio:16/9}}
/* Mobile booking link carries the same gold treatment as Let's Create. */
@media(max-width:900px){
 .site-header #main-nav a.mobile-contact{color:#ffe6ac;border:1px solid #dfb75d;border-radius:4px;background:#4b35182b;margin-top:12px;animation:ume-award-glow 6s ease-in-out infinite}
 .site-header #main-nav a.mobile-contact:is(:hover,:focus-visible){color:#fff2d0;border-color:#ffe09b;background:#67451d33;box-shadow:0 0 18px #e5b95577,0 0 35px #b8802833}
 .site-header #main-nav a.mobile-contact:is(:hover,:focus-visible)::after{background:conic-gradient(from var(--ume-rim-angle),#bd8c3733 0deg 240deg,#f1c96d 315deg,#fff2c6 345deg,#bd8c3733 360deg);filter:drop-shadow(0 0 5px #e8b959)}
 .mobile-contact .booking-sparks{position:absolute;inset:0;pointer-events:none;overflow:visible;opacity:0;transition:opacity .2s ease}
 .mobile-contact:is(:hover,:focus-visible) .booking-sparks{opacity:1}
 .mobile-contact:is(:hover,:focus-visible) .booking-sparks i{animation-play-state:running}
}
@media(max-width:900px) and (prefers-reduced-motion:reduce){.site-header #main-nav a.mobile-contact{animation:none}.mobile-contact .booking-sparks{display:none}.site-header #main-nav a.mobile-contact:is(:hover,:focus-visible)::after{animation:none;background:#f1c96d}}
/* Wide screens get a native horizontal reel framed by two native portrait reels. */
.service-side-reel{display:none;pointer-events:none}
@media(min-width:1100px){
 .visual-hero.service-hero{height:auto;min-height:0}
 .visual-hero .service-reel-frame{height:min(calc(100vw * 72 / 209),calc(var(--home-services-hero-height) - var(--site-header-height)));min-height:0;aspect-ratio:auto;background:#08080c;--side-panel-width:19.37799%}
 .visual-hero .service-reel-frame>.hero-video{left:var(--side-panel-width);right:auto;width:61.24402%;height:100%;object-fit:contain!important;object-position:center!important}
 .service-side-reel{display:block;position:absolute;top:0;width:var(--side-panel-width);height:100%;object-fit:contain;object-position:center;background:#08080c}
 .service-side-left{left:0;border-right:1px solid #b576ff44}.service-side-right{right:0;border-left:1px solid #b576ff44}
 .visual-hero .service-reel-title{bottom:0;padding-bottom:32px}.visual-hero .service-reel-frame .visual-hero-shade{inset:0;background:linear-gradient(0deg,#08080ce8,transparent 65%)}
}
@media(max-width:1099px){.visual-hero.service-hero{height:auto;min-height:0}.visual-hero .service-reel-frame{height:auto;min-height:0;aspect-ratio:16/9}}
/* Fill only the letterboxed Brenden Starr shot; retain all other clip framing. */
.visual-hero .service-reel-frame .hero-video.reel-fill-frame{object-fit:cover!important;object-position:center!important}
.reel-divider{display:none;pointer-events:none}
@media(min-width:1100px){
 .reel-divider{display:block;position:absolute;top:0;bottom:0;width:2px;z-index:3;background:linear-gradient(0deg,#a34af0aa,#e6c5ff,#bb75ff);box-shadow:0 0 8px #d59aff,0 0 20px #aa4ef3aa,0 0 34px #9134d95c}
 .reel-divider-left{left:var(--side-panel-width);transform:translateX(-50%)}
 .reel-divider-right{right:var(--side-panel-width);transform:translateX(50%)}
 .reel-divider i{position:absolute;top:var(--seam-y);left:0;width:3px;height:3px;border-radius:50%;background:#e9c9ff;box-shadow:0 0 5px #cf8dff,0 0 12px #a747ed;opacity:0;animation:ume-seam-spark var(--seam-duration) ease-out infinite;animation-delay:var(--seam-delay);animation-play-state:paused}
 .reel-in-view .reel-divider i{animation-play-state:running}
}
@keyframes ume-seam-spark{0%{opacity:0;transform:translate(0,12px) scale(.4)}20%{opacity:.85}65%{opacity:.5}100%{opacity:0;transform:translate(var(--seam-drift),-85px) scale(.15)}}
@media(prefers-reduced-motion:reduce){.reel-divider i{display:none;animation:none}}
/* Center the Services hero copy across the reel. */
.visual-hero .service-reel-title{text-align:center}
.visual-hero .service-reel-title h1,.visual-hero .service-reel-title>p:not(.eyebrow){margin-left:auto;margin-right:auto}
.visual-hero .service-reel-title>.eyebrow{width:100%;max-width:none;margin-left:auto;margin-right:auto;text-align:center;justify-content:center}
/* Creative network: a clear invitation and an accessible, multi-role signup. */
.creative-network-teaser{background:radial-gradient(ellipse at 80% 50%,#30203d66,transparent 65%),#111016;border-block:1px solid #a563d52b}
.network-invite{display:flex;align-items:center;justify-content:space-between;gap:40px}.network-invite>div{max-width:680px}.network-invite p:last-child{color:#bfb8c7;line-height:1.7}.network-invite .btn{flex-shrink:0}
.network-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.network-intro p{color:#bfb8c7;line-height:1.8}.network-expectations{margin-top:32px;padding:24px;border-left:2px solid #b775f4;background:#b775f408}.network-expectations h3{font-size:24px}
.network-roles{border:0;padding:0;margin:8px 0 24px;min-width:0}.network-roles legend{font-size:12px;letter-spacing:.1em;margin-bottom:14px}.network-roles legend span{display:block;letter-spacing:0;text-transform:none;color:#bfb8c7;margin-top:6px}
.network-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.network-form .network-role{display:flex;align-items:center;gap:10px;letter-spacing:0;font-size:13px;text-transform:none;padding:13px 12px;border:1px solid #ffffff24;background:#ffffff03;margin:0;cursor:pointer}.network-role:has(input:checked){border-color:#b97bf2;background:#a151d51a;box-shadow:0 0 14px #a151d518}.network-form input[type=checkbox]{appearance:auto;width:17px;height:17px;min-width:17px;margin:0;padding:0;accent-color:#ba83f2}.network-form .network-consent{display:flex;align-items:flex-start;gap:12px;font-size:12px;line-height:1.7;letter-spacing:0;text-transform:none}.network-consent input{margin-top:4px!important}.network-consent a{color:#d4b0fa;overflow-wrap:anywhere}.network-form .optional{color:#aaa;font-size:11px;letter-spacing:0;text-transform:none}.network-form #network-status{font-size:13px;line-height:1.6;color:#c6b8d1}.network-hero p{max-width:650px}
@media(max-width:900px){.network-layout{grid-template-columns:1fr;gap:30px}.network-invite{align-items:flex-start;flex-direction:column;gap:20px}.network-expectations{margin-top:20px}.network-role-grid{gap:8px}.network-form .network-role{padding:12px 9px;font-size:12px}}
@media(max-width:380px){.network-role-grid{grid-template-columns:1fr}}

/* Practical details sit below the visuals and keep the project scope easy to scan. */
.quote-details{margin:2rem 0;padding:1.5rem;border:1px solid var(--line);border-radius:8px;background:#17131e}
.quote-details h3{margin:0 0 1rem;font:600 clamp(1.4rem,2vw,1.8rem) 'Barlow Condensed',sans-serif}
.quote-details dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem;margin:0}
.quote-details dt{font-weight:700;color:#e6d5fb;margin-bottom:.35rem}
.quote-details dd{margin:0;color:var(--muted);font-size:.92rem;line-height:1.65}
.quote-details>p{font-size:.86rem;color:var(--muted);margin:1rem 0 0}
.behind-scenes-grid{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(2rem,5vw,5rem)}
.behind-scenes-grid figure{margin:0}.behind-scenes-grid img{width:100%;height:auto;object-fit:contain;border-radius:8px}
.behind-scenes-grid figcaption{font-size:.8rem;color:var(--muted);margin-top:.6rem}
.behind-scenes-grid h2{font-size:clamp(2.2rem,4vw,4rem)}
.watch-caption .project-credit{font-family:'DM Sans',sans-serif;font-size:.82rem;letter-spacing:0;line-height:1.6;text-transform:none;color:var(--muted);margin:.7rem 0}
.watch-caption .text-link{font-size:.85rem}
a.watch-cover{display:block}
#player-source{display:inline-flex;margin:.6rem 0 1.2rem;padding:.8rem 1rem;border:1px solid var(--violet);border-radius:4px;color:#eee2ff;line-height:1.5}
#player-source[hidden]{display:none}
.site-footer .motion-toggle{position:static;inset:auto;transform:none;padding:.6rem .8rem;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;letter-spacing:0;cursor:pointer;min-height:44px}
.motion-toggle:focus-visible,#player-source:focus-visible{outline:2px solid #d4a8ff;outline-offset:4px}
.motion-toggle:disabled{cursor:default}
html[data-motion-paused="true"] *,html[data-motion-paused="true"] *::before,html[data-motion-paused="true"] *::after{animation-play-state:paused!important;transition-duration:0s!important;scroll-behavior:auto!important}
@media(max-width:700px){.quote-details dl,.behind-scenes-grid{grid-template-columns:1fr}.quote-details{padding:1.2rem}.quote-details dl{gap:1rem}.behind-scenes-grid{gap:1.5rem}.site-footer .motion-toggle{width:auto;align-self:start}}

.quote-details,.behind-the-scenes{scroll-margin-top:calc(var(--site-header-height,90px) + 24px)}

/* Intrinsic dimensions reserve space; responsive images must still scale proportionally. */
img{height:auto}
.film-detail-note{align-items:flex-start}
.film-detail-note img{height:auto;flex:0 0 120px;align-self:flex-start;object-fit:contain}

/* The new Home reel keeps its frame below the fixed masthead. */
.home-cinematic-hero>.hero-video{top:var(--site-header-height,100px);height:calc(100% - var(--site-header-height,100px));object-position:center top;opacity:1}
.home-cinematic-hero .hero-shade{background:linear-gradient(90deg,#05040ade 0%,#05040a8a 42%,#05040a20 100%),linear-gradient(0deg,#05040ae0,transparent 30%)}
.home-cinematic-hero h1,.home-cinematic-hero .hero-description{text-shadow:0 2px 18px #0009}

/* Let the homepage footage fill the frame without decorative corner outlines. */
.home-cinematic-hero .hero-corner{display:none}

/* Soft stage lights over the homepage reel; copy stays above the light. */
.home-cinematic-hero{isolation:isolate}
.home-cinematic-hero .hero-spotlights{position:absolute;inset:var(--site-header-height,100px) 0 0;z-index:1;overflow:hidden;pointer-events:none;contain:paint;mix-blend-mode:screen}
.home-cinematic-hero .hero-spotlights i{position:absolute;top:-25px;width:min(88vw,1120px);height:155%;transform-origin:50% 0;filter:blur(14px);background:conic-gradient(from 157deg at 50% 0,transparent 0deg,#b591ed08 5deg,#d8c3ff55 15deg,#f1e6ff70 23deg,#c3a1ef44 32deg,transparent 46deg);will-change:transform;animation:ume-hero-spotlight 19s ease-in-out infinite alternate}
.home-cinematic-hero .hero-spotlights i:first-child{left:-20%;--spot-from:-22deg;--spot-to:27deg}
.home-cinematic-hero .hero-spotlights i:last-child{right:-24%;--spot-from:24deg;--spot-to:-25deg;animation-duration:25s;animation-delay:-11s;opacity:.65}
.home-cinematic-hero .hero-shade{z-index:2}
.home-cinematic-hero .hero-content{z-index:3}
@keyframes ume-hero-spotlight{from{transform:rotate(var(--spot-from))}to{transform:rotate(var(--spot-to))}}
@media(max-width:650px){.home-cinematic-hero .hero-spotlights{opacity:.65}.home-cinematic-hero .hero-spotlights i{width:155vw;filter:blur(11px)}.home-cinematic-hero .hero-spotlights i:first-child{left:-65%}.home-cinematic-hero .hero-spotlights i:last-child{right:-65%}}
@media(prefers-reduced-motion:reduce){.home-cinematic-hero .hero-spotlights{display:none}}

/* Sparse motes floating through the homepage stage lights. */
.home-cinematic-hero .hero-floating-particles{position:absolute;inset:var(--site-header-height,100px) 0 0;z-index:2;overflow:hidden;pointer-events:none;contain:paint}
.hero-floating-particles i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#ddc1ff;box-shadow:0 0 5px 1px #bd80ff88,0 0 11px #a85cf944;opacity:0;animation:ume-hero-mote var(--duration) linear var(--delay) infinite;will-change:transform,opacity}
@keyframes ume-hero-mote{0%{opacity:0;transform:translate3d(0,45px,0)}18%{opacity:.55}72%{opacity:.35}100%{opacity:0;transform:translate3d(var(--drift),-160px,0)}}
@media(max-width:650px){.hero-floating-particles i:nth-child(even){display:none}.hero-floating-particles{opacity:.7}}
@media(prefers-reduced-motion:reduce){.home-cinematic-hero .hero-floating-particles{display:none}}

/* The hero beams continue from the same sources and sweep as the header. */
.home-cinematic-hero .hero-spotlights i{top:calc(-1 * var(--site-header-height,100px) - 40px);animation-name:ume-stage-sweep;animation-duration:18s;background:conic-gradient(from 155deg at 50% 0,transparent 0deg,#b591ed08 5deg,#d8c3ff55 16deg,#f1e6ff70 25deg,#c3a1ef44 36deg,transparent 50deg)}
.home-cinematic-hero .hero-spotlights i:first-child{left:calc(8% + 130px - min(44vw,560px));--beam-from:-30deg;--beam-to:23deg}
.home-cinematic-hero .hero-spotlights i:last-child{right:calc(8% + 130px - min(44vw,560px));--beam-from:25deg;--beam-to:-27deg;animation-duration:23s;animation-delay:-8s}
@media(max-width:900px){.home-cinematic-hero .hero-spotlights i:first-child{left:calc(45px - min(44vw,560px))}.home-cinematic-hero .hero-spotlights i:last-child{right:calc(45px - min(44vw,560px))}}
@media(max-width:650px){.home-cinematic-hero .hero-spotlights i:first-child{left:calc(45px - 77.5vw)}.home-cinematic-hero .hero-spotlights i:last-child{right:calc(45px - 77.5vw)}}

/* Circuit-board traces sit behind header controls, with traveling current. */
.header-circuit{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:paint;mask-image:linear-gradient(90deg,#000 0%,#000 26%,#0003 43%,#0003 57%,#000 74%,#000 100%)}
.header-circuit svg{display:block;width:100%;height:100%;fill:none;stroke-linejoin:round;stroke-linecap:round}
.header-circuit path{vector-effect:non-scaling-stroke}
.header-circuit .circuit-track{stroke:#ae73ed;stroke-width:1;opacity:.14}
.header-circuit .circuit-current{stroke:#d6a7ff;stroke-width:1.5;stroke-dasharray:6 94;stroke-dashoffset:100;opacity:0;filter:drop-shadow(0 0 3px #ba73ff);animation:ume-circuit-current 9s linear var(--circuit-delay) infinite}
.header-circuit circle{stroke:#c78eff;stroke-width:1;fill:#292033;opacity:.32;animation:ume-circuit-node 9s ease-in-out var(--circuit-delay) infinite}
@keyframes ume-circuit-current{0%{stroke-dashoffset:100;opacity:0}8%{opacity:.8}84%{opacity:.8}100%{stroke-dashoffset:0;opacity:0}}
@keyframes ume-circuit-node{0%,60%,100%{opacity:.25}70%{opacity:.75}}
@media(max-width:900px){.header-circuit{opacity:.65}.header-circuit .circuit-current{stroke-width:1}.header-circuit .circuit-track{opacity:.1}}
@media(prefers-reduced-motion:reduce){.header-circuit .circuit-current{display:none}.header-circuit circle{animation:none}}

/* Fast electric packets: white-hot tips and broken violet afterglow. */
.header-circuit .circuit-current{stroke:#b96aff;stroke-width:1.7;stroke-dasharray:2.8 .7 .55 .6 .25 95.1;filter:drop-shadow(0 0 3px #b866ff) drop-shadow(0 0 7px #943dff);animation:ume-electric-run 5.4s linear var(--circuit-delay) infinite,ume-electric-flicker .19s steps(2,end) infinite;opacity:.8}
.header-circuit .circuit-spark{stroke:#f6eaff;stroke-width:2;stroke-dasharray:.55 99.45;stroke-dashoffset:100;filter:drop-shadow(0 0 3px #e4b9ff) drop-shadow(0 0 7px #b165ff);animation:ume-electric-run 5.4s linear var(--circuit-delay) infinite,ume-electric-tip .27s steps(2,end) infinite;opacity:.9}
.header-circuit circle{animation:ume-electric-node 5.4s ease-out var(--circuit-delay) infinite}
@keyframes ume-electric-run{0%{stroke-dashoffset:100}18%{stroke-dashoffset:87}25%{stroke-dashoffset:67}43%{stroke-dashoffset:52}50%{stroke-dashoffset:30}69%{stroke-dashoffset:12}78%,100%{stroke-dashoffset:0}}
@keyframes ume-electric-flicker{0%,100%{opacity:.65}35%{opacity:.95}70%{opacity:.48}}
@keyframes ume-electric-tip{0%,100%{opacity:.9}50%{opacity:.65}}
@keyframes ume-electric-node{0%,55%,100%{opacity:.22;fill:#292033}60%{opacity:.85;fill:#e6c7ff}67%{opacity:.4;fill:#683298}}
@media(max-width:900px){.header-circuit .circuit-spark{stroke-width:1.4}.header-circuit .circuit-current{stroke-width:1.2}}
@media(prefers-reduced-motion:reduce){.header-circuit .circuit-current,.header-circuit .circuit-spark{display:none}.header-circuit circle{animation:none}}

/* Electric circuit decoration removed; spotlights and floating particles remain. */
.header-circuit{display:none!important}

/* Spotlight dust reacts to each moving cone, behind the header controls. */
.header-particles i{filter:brightness(var(--dust-brightness,.7));transition:filter .18s linear}
.nav-glider{display:none;pointer-events:none}
@media(min-width:901px){
 .site-header nav.nav-has-glider{position:relative}
 .site-header nav.nav-has-glider a::after{display:none!important}
 .site-header nav .nav-glider{display:block;position:absolute;left:0;top:0;height:2px;width:0;border-radius:2px;background:linear-gradient(90deg,#a75ef0,#e0b5ff,#a75ef0);box-shadow:0 0 8px #b66aff,0 0 16px #9d4cf077;opacity:0;will-change:transform,width}
 .site-header nav .nav-glider.is-ready{transition:transform .32s cubic-bezier(.22,.8,.3,1),width .32s cubic-bezier(.22,.8,.3,1),opacity .2s ease}
}
@media(prefers-reduced-motion:reduce){.header-particles i{filter:none;transition:none}.site-header nav .nav-glider.is-ready{transition:none}}



/* Keep the home cinema heading secondary to the film artwork. */
.home-cinema .section-head h2,.audience-section .section-head h2{font-size:clamp(40px,4.5vw,70px);line-height:1.06}
@media(max-width:650px){.home-cinema .section-head h2,.audience-section .section-head h2{font-size:clamp(36px,8.8vw,48px);line-height:1.12}}

/* A cinema entrance, drawn as a screen and theater seats. */
.cinema-entry{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:116px;min-height:104px;flex-shrink:0;color:#d5b2ff;text-decoration:none;transition:color .25s ease;isolation:isolate}
.cinema-entry svg{width:80px;height:70px;overflow:visible;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:filter .3s ease,transform .3s ease}
.cinema-entry .cinema-screen{fill:#b578ed0b}.cinema-entry .cinema-play{fill:currentColor;stroke:none;transform-origin:44px 27px;transition:transform .3s ease}.cinema-entry .cinema-seats{opacity:.6}
.cinema-entry span{font:600 14px 'Barlow Condensed',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#e4d5ef}
.cinema-entry:is(:hover,:focus-visible){color:#ecd8ff}.cinema-entry:is(:hover,:focus-visible) svg{filter:drop-shadow(0 0 7px #b46aff99);transform:translateY(-3px)}.cinema-entry:is(:hover,:focus-visible) .cinema-play{transform:scale(1.12)}
.cinema-entry:focus-visible{outline:2px solid #d4a8ff;outline-offset:7px;border-radius:4px}
@media(max-width:650px){.cinema-entry{min-width:100px;min-height:94px}.cinema-entry svg{width:68px;height:59px}.cinema-entry span{font-size:13px}}
@media(prefers-reduced-motion:reduce){.cinema-entry,.cinema-entry svg,.cinema-entry .cinema-play{transition:none}.cinema-entry:is(:hover,:focus-visible) svg,.cinema-entry:is(:hover,:focus-visible) .cinema-play{transform:none}}

/* Theater-building icon: marquee, poster cases and double entrance doors. */
.cinema-entry .cinema-marquee{fill:#22132e;stroke-width:1.6}
.cinema-entry .cinema-canopy{fill:#bc80f51c}
.cinema-entry .cinema-sign{fill:#e6ceff;stroke:none;font:700 9px 'Barlow Condensed',sans-serif;letter-spacing:1.3px}
.cinema-entry .cinema-building,.cinema-entry .cinema-doors{stroke-width:1.5}
.cinema-entry .cinema-posters{fill:#b175ed16;stroke-width:1}
.cinema-entry .cinema-poster-art{stroke-width:.8;opacity:.6}
.cinema-entry .cinema-bulbs{fill:#dfb8ff;stroke:none;opacity:.65;transition:opacity .25s ease}
.cinema-entry:is(:hover,:focus-visible) .cinema-bulbs{opacity:1;filter:drop-shadow(0 0 2px #d6a1ff)}

/* Three-quarter theater facade with a projecting illuminated marquee. */
.cinema-entry svg{width:104px;height:90px;stroke-width:1.4}
.cinema-entry .theater-front{fill:#21162f;stroke:#c499ee}
.cinema-entry .theater-side{fill:#130d1d;stroke:#a87bd1}
.cinema-entry .theater-roof{fill:#34203f;stroke:#b78bd9}
.cinema-entry .theater-roof-line{stroke:#ead2ff;stroke-width:.8;opacity:.5}
.cinema-entry .theater-signboard{fill:#100b19;stroke:#a976d8;stroke-width:.9}
.cinema-entry .theater-title{fill:#f1dfff;stroke:none;font:700 8px 'Barlow Condensed',sans-serif;letter-spacing:1px}
.cinema-entry .theater-canopy-top{fill:#5a3472;stroke:#c99be8}
.cinema-entry .theater-marquee-face{fill:#b88bda;stroke:#e5c2ff;stroke-width:1}
.cinema-entry .theater-marquee-side{fill:#714b91;stroke:#d1a4ed;stroke-width:1}
.cinema-entry .theater-entry{fill:#d1a4f51c;stroke:#b48bd4;stroke-width:1}
.cinema-entry .theater-doors{fill:#0e0915;stroke:#d0a8ed;stroke-width:.8}
.cinema-entry .theater-poster{fill:#9f66d130;stroke:#b896d4;stroke-width:.8}
.cinema-entry .theater-steps{stroke:#9b7ab5;stroke-width:1}
.cinema-entry .theater-lamps{stroke:#f6e4ff;fill:#fff2ff;stroke-width:.65;filter:drop-shadow(0 0 2px #d5a2ff)}
@media(max-width:650px){.cinema-entry svg{width:90px;height:78px}}

/* Theater interior: a luminous screen, curtains, and two rows of seats. */
.cinema-entry .screen-arch{fill:#130c1d;stroke:#a87bc9;stroke-width:1.2}
.cinema-entry .screen-picture{fill:#342343;stroke:#d5b4ee;stroke-width:1.3}
.cinema-entry .screen-light{fill:#c59aef18;stroke:none}
.cinema-entry .screen-curtain{fill:#593274;stroke:#b182d5;stroke-width:1}
.cinema-entry .screen-fold{stroke:#d7a9ee;stroke-width:.7;opacity:.55}
.cinema-entry .screen-valance{fill:#714493;stroke:#c49ce1;stroke-width:1}
.cinema-entry .screen-play{fill:#e7ceff;stroke:none}
.cinema-entry .screen-stage{stroke:#a17db8;stroke-width:1}
.cinema-entry .screen-seats-back{fill:#2d1c3c;stroke:#9670b3;stroke-width:1}
.cinema-entry .screen-seats-front{fill:#422653;stroke:#c497df;stroke-width:1.2}

/* A small cinema snack, tucked beside the screen. */
.cinema-entry .popcorn-tub{fill:#372044;stroke:#d8b2ef;stroke-width:1.3}
.cinema-entry .popcorn-stripes{stroke:#bd81e5;stroke-width:3}
.cinema-entry .popcorn-kernels{fill:#f3dfad;stroke:#e9cc93;stroke-width:1}
.cinema-entry .popcorn-details{stroke:#bc945b;stroke-width:.75}
.cinema-entry .popcorn-rim{stroke:#f0d4ff;stroke-width:1.5}

.cinema-entry .drink-cup{fill:#472454;stroke:#dab3ef;stroke-width:1.2}
.cinema-entry .drink-stripes{stroke:#bc82df;stroke-width:2}
.cinema-entry .drink-lid{fill:#d9b8ec;stroke:#e9d2f4;stroke-width:1}
.cinema-entry .drink-straw{stroke:#e5c6f4;stroke-width:2;fill:none}
.cinema-entry .drink-mark{fill:#cba3e3;stroke:#eddbf7;stroke-width:.7}

/* Red theater velvet and a little popcorn toss on interaction. */
.cinema-entry .screen-curtain{fill:#791d2d;stroke:#d26473}
.cinema-entry .screen-fold{stroke:#f18b94;opacity:.6}
.cinema-entry .screen-valance{fill:#9e293c;stroke:#df7a88}
.cinema-entry .jump-kernel{fill:#f6e4b6;stroke:#d6b57c;stroke-width:.7;opacity:0;transform-box:fill-box;transform-origin:center;pointer-events:none}
.cinema-entry .kernel-one{--pop-x:-14px;--pop-y:-27px;--pop-turn:-45deg;--pop-delay:0s}
.cinema-entry .kernel-two{--pop-x:12px;--pop-y:-35px;--pop-turn:70deg;--pop-delay:.12s}
.cinema-entry .kernel-three{--pop-x:-4px;--pop-y:-43px;--pop-turn:-90deg;--pop-delay:.24s}
.cinema-entry:is(:hover,:focus-visible) .jump-kernel{animation:ume-popcorn-jump 1.15s cubic-bezier(.22,.6,.35,1) var(--pop-delay) both}
@keyframes ume-popcorn-jump{0%{opacity:0;transform:translate(0,0) rotate(0) scale(.65)}12%{opacity:1}48%{opacity:1;transform:translate(var(--pop-x),var(--pop-y)) rotate(var(--pop-turn)) scale(1)}85%{opacity:.8}100%{opacity:0;transform:translate(calc(var(--pop-x) * 1.6),8px) rotate(calc(var(--pop-turn) * 2)) scale(.7)}}
@media(prefers-reduced-motion:reduce){.cinema-entry:is(:hover,:focus-visible) .jump-kernel{animation:none;opacity:0}}

/* Classic movie-theater colors, within the site's dark cinema section. */
.cinema-entry .screen-arch{fill:#251a20;stroke:#d2ac70}
.cinema-entry .screen-picture{fill:#f2e8d5;stroke:#e6c98e}
.cinema-entry .screen-light{fill:#fff9e8;opacity:.65}
.cinema-entry .screen-play{fill:#773347}
.cinema-entry .screen-curtain{fill:#922338;stroke:#e67a85}
.cinema-entry .screen-valance{fill:#b22e43;stroke:#ed9a94}
.cinema-entry .screen-fold{stroke:#f2939a}
.cinema-entry .screen-stage{stroke:#be985f}
.cinema-entry .screen-seats-back{fill:#651d2b;stroke:#ba5964}
.cinema-entry .screen-seats-front{fill:#962b3d;stroke:#df7f87}
.cinema-entry .popcorn-tub{fill:#fff0d6;stroke:#e5b877}
.cinema-entry .popcorn-stripes{stroke:#c63842}
.cinema-entry .popcorn-kernels{fill:#ffe7a3;stroke:#d9ab57}
.cinema-entry .popcorn-details{stroke:#c39549}
.cinema-entry .popcorn-rim{stroke:#fff6de}
.cinema-entry .drink-cup{fill:#b72e40;stroke:#f0c3b0}
.cinema-entry .drink-stripes{stroke:#fff1df}
.cinema-entry .drink-lid{fill:#fff2dc;stroke:#dfc5a0}
.cinema-entry .drink-straw{stroke:#f0cf93}
.cinema-entry .drink-mark{fill:#e8bc6c;stroke:#fff0ca}
.cinema-entry:is(:hover,:focus-visible) svg{filter:drop-shadow(0 0 7px #ddac6555)}

/* A one-shot film leader plays within the screen on hover or keyboard focus. */
.cinema-countdown{pointer-events:none;opacity:0}
.cinema-entry .countdown-ring{fill:#f7eedc;stroke:#956f68;stroke-width:.65}
.cinema-entry .countdown-cross{stroke:#956f68;stroke-width:.4;opacity:.35}
.cinema-entry .countdown-number{fill:#5e2737;stroke:none;text-anchor:middle;dominant-baseline:central;font:700 19px 'Barlow Condensed',sans-serif;opacity:0}
.cinema-entry:is(:hover,:focus-visible) .cinema-countdown{animation:ume-countdown-visible 3.15s step-end both}
.cinema-entry:is(:hover,:focus-visible) .screen-play{animation:ume-countdown-play 3.15s step-end both}
.cinema-entry:is(:hover,:focus-visible) .countdown-three{animation:ume-countdown-digit 1s step-end 0s forwards}
.cinema-entry:is(:hover,:focus-visible) .countdown-two{animation:ume-countdown-digit 1s step-end 1s forwards}
.cinema-entry:is(:hover,:focus-visible) .countdown-one{animation:ume-countdown-digit 1s step-end 2s forwards}
@keyframes ume-countdown-visible{0%{opacity:1}100%{opacity:0}}
@keyframes ume-countdown-play{0%{opacity:0}100%{opacity:1}}
@keyframes ume-countdown-digit{0%{opacity:1}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.cinema-entry:is(:hover,:focus-visible) .cinema-countdown,.cinema-entry:is(:hover,:focus-visible) .countdown-number{animation:none;opacity:0}.cinema-entry:is(:hover,:focus-visible) .screen-play{animation:none;opacity:1}}

/* Black theater surround with red velvet curtains retained. */
.cinema-entry .screen-arch{fill:#08080a;stroke:#55515b}
.cinema-entry .screen-stage{stroke:#625b66}

/* Slightly larger header labels. */
.site-header nav a{font-size:17px}
.site-header .header-contact{font-size:15px}

/* A continuous client-logo strip with original branding and accessible controls. */
.client-logos{padding-block:54px;border-block:1px solid #cda8ed16;background:#100d15}
.client-logos-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}
.client-logos-heading h2{font-size:clamp(28px,3.2vw,42px);margin:0 0 12px;line-height:1.08}
.client-logos-heading p:not(.eyebrow){font-size:14px;color:var(--muted);margin:0}
.client-logos-toggle{flex:none;border:1px solid #cda8ed40;border-radius:4px;background:transparent;padding:10px 14px;min-height:44px;color:#dfcbea;cursor:pointer;font-size:13px}
.client-logos-toggle:focus-visible,.client-logo-viewport:focus-visible{outline:2px solid #d1a0f8;outline-offset:5px}
.client-logos-toggle:hover{border-color:#bb83e8;color:#fff}
.client-logo-viewport{overflow-x:auto;scrollbar-width:none;mask-image:linear-gradient(90deg,transparent,#000 42px,#000 calc(100% - 42px),transparent)}
.client-logo-viewport::-webkit-scrollbar{display:none}
.client-logo-track{display:flex;width:max-content;animation:ume-client-logos 68s linear infinite;will-change:transform}
.client-logo-group{display:flex;align-items:flex-start;gap:18px;list-style:none;margin:0;padding:0 18px 0 0;flex-shrink:0}
.client-logo-group li{width:174px;flex:0 0 174px}
.client-logo-group figure{margin:0;text-align:center}
.client-logo-group img{display:block;width:174px;height:104px;object-fit:contain;padding:14px;background:#f5f3f6;border:1px solid #fff2;border-radius:5px}
.client-logo-group figcaption{color:#bfb3ca;font-size:11px;line-height:1.4;margin-top:10px;max-width:174px;min-height:32px;padding-inline:6px}

@keyframes ume-client-logos{to{transform:translateX(-50%)}}
@media(max-width:650px){.client-logos{padding-block:36px}.client-logos-heading{align-items:flex-start;gap:16px}.client-logos-heading h2{font-size:28px}.client-logos-heading p:not(.eyebrow){max-width:27ch}.client-logos-toggle{padding:8px 10px;font-size:12px}.client-logo-group li{width:144px;flex-basis:144px}.client-logo-group img{width:144px;height:90px;padding:12px}.client-logo-group figcaption{max-width:144px}.client-logo-viewport{mask-image:linear-gradient(90deg,transparent,#000 18px,#000 calc(100% - 18px),transparent)}}
@media(prefers-reduced-motion:reduce){.client-logo-track{animation:none;transform:none;will-change:auto}.client-logo-group[aria-hidden="true"]{display:none}.client-logos-toggle{display:none}}

.client-logo-group img.client-logo-dark{background:#18131e;border-color:#d3acee26}

/* The client strip runs continuously, including on hover and focus. */
html[data-motion-paused="true"] .client-logo-track,.client-logo-track{animation-play-state:running!important}
@media(prefers-reduced-motion:reduce){.client-logo-track{animation:ume-client-logos 68s linear infinite!important;will-change:transform}.client-logo-group[aria-hidden="true"]{display:flex}}

/* Let client artwork sit directly on the page, with room for readable wordmarks. */
.client-logo-group{gap:38px;padding-right:38px;align-items:center}
.client-logo-group li{width:240px;flex-basis:240px}
.client-logo-group img,.client-logo-group img.client-logo-dark{width:240px;height:150px;padding:4px;background:transparent;border:0;border-radius:0;filter:drop-shadow(0 1px 1px #0004)}
.client-logo-group figcaption{max-width:240px;font-size:13px;line-height:1.45;margin-top:16px;min-height:38px}
@media(max-width:650px){.client-logo-group{gap:28px;padding-right:28px}.client-logo-group li{width:210px;flex-basis:210px}.client-logo-group img,.client-logo-group img.client-logo-dark{width:210px;height:140px;padding:3px}.client-logo-group figcaption{max-width:210px;font-size:12px}}
.client-logo-track{animation-duration:100s!important}

/* A soft purple perimeter glow follows interaction with the creation panels. */
.audience-section .audience-card{transition:border-color .3s ease,box-shadow .35s ease;isolation:isolate}
.audience-section .audience-card:is(:hover,:focus-visible){border-color:#c18aff;box-shadow:0 0 0 1px #c18aff99,0 0 18px #a855f766,0 0 38px #9333ea33;animation:ume-panel-glow 2.8s ease-in-out infinite}
.audience-section .audience-card:focus-visible{outline:2px solid #d8b4fe;outline-offset:4px}
@keyframes ume-panel-glow{0%,100%{box-shadow:0 0 0 1px #c18aff88,0 0 16px #a855f755,0 0 32px #9333ea26}50%{box-shadow:0 0 0 1px #d8b4fecc,0 0 24px #a855f788,0 0 48px #9333ea44}}
@media(prefers-reduced-motion:reduce){.audience-section .audience-card{transition:none}.audience-section .audience-card:is(:hover,:focus-visible){animation:none}}

/* Sparse, decorative embers remain clipped inside the hovered creation panel. */
.audience-section .audience-card{position:relative}
.audience-section .panel-particles{position:absolute;inset:1px;z-index:3;overflow:hidden;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s ease}
.audience-section .audience-card:is(:hover,:focus-visible) .panel-particles{opacity:1}
.panel-particles i{position:absolute;left:var(--px);top:var(--py);width:var(--size);height:var(--size);border-radius:50%;background:#e4c5ff;box-shadow:0 0 5px 2px #b864ed99,0 0 12px #a855f766;opacity:0;animation:ume-panel-ember var(--duration) linear var(--delay) infinite paused}
.audience-card:is(:hover,:focus-visible) .panel-particles i{animation-play-state:running}
@keyframes ume-panel-ember{0%{transform:translate3d(0,24px,0);opacity:0}20%{opacity:.75}65%{opacity:.55}100%{transform:translate3d(var(--drift),-90px,0);opacity:0}}
@media(prefers-reduced-motion:reduce){.audience-section .panel-particles{display:none}}

.audience-section .section-head{display:block;text-align:center}
.audience-section .section-head>div{width:100%}
.audience-section .section-head .eyebrow{text-align:center;margin-inline:auto}
.audience-section .section-head h2{white-space:nowrap;font-size:clamp(20px,4.5vw,70px);text-align:center}
@media(max-width:650px){.audience-section .section-head h2{font-size:clamp(17px,5.35vw,34px);line-height:1.15}}

.home-faq .section-head{text-align:center;justify-content:center;margin-bottom:32px}
.home-faq .faq{max-width:900px}
:is(.home-faq,.faq) details{padding:0;border-bottom:1px solid #cda8ed2b}
:is(.home-faq,.faq) details:first-child{border-top:1px solid #cda8ed2b}
:is(.home-faq,.faq) summary{padding:22px 8px;color:#eee7f5;transition:color .2s ease}
:is(.home-faq,.faq) summary:hover,:is(.home-faq,.faq) details[open] summary{color:#d4a5fc}
:is(.home-faq,.faq) summary:focus-visible{outline:2px solid #c18aff;outline-offset:2px;border-radius:3px}
:is(.home-faq,.faq) details p{padding:0 8px 24px;margin:0;line-height:1.75;max-width:78ch}
.home-faq-action{text-align:center;margin-top:32px}
@media(max-width:650px){:is(.home-faq,.faq) summary{font-size:17px;padding-block:20px}.home-faq .btn{white-space:normal;text-align:center}}

/* Luminous FAQ controls, with quiet motion around the answer being explored. */
:is(.home-faq,.faq) details{position:relative;border:1px solid #cda8ed24;border-radius:8px;margin-bottom:12px;background:linear-gradient(120deg,#19122266,#0c0b1100);overflow:hidden;transition:border-color .35s ease,box-shadow .35s ease}
:is(.home-faq,.faq) details:first-child{border-top:1px solid #cda8ed24}
:is(.home-faq,.faq) details::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 0 0,#b45cf71c,transparent 65%);transition:opacity .4s ease}
:is(.home-faq,.faq) details:hover,:is(.home-faq,.faq) details[open]{border-color:#bb80eb88;box-shadow:0 0 18px #a855f71c,inset 0 0 22px #a855f709}
:is(.home-faq,.faq) details:hover::before,:is(.home-faq,.faq) details[open]::before{opacity:1}
:is(.home-faq,.faq) summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px;list-style:none}
:is(.home-faq,.faq) summary::-webkit-details-marker{display:none}
:is(.home-faq,.faq) summary::after{content:"+";display:grid;place-items:center;flex:none;width:26px;height:26px;border:1px solid #b47ae66b;border-radius:50%;font-size:21px;line-height:1;color:#d8b4fe;background:#a855f70b;box-shadow:0 0 10px #a855f722;transition:transform .4s ease,box-shadow .4s ease}
:is(.home-faq,.faq) details[open] summary::after{transform:rotate(45deg);box-shadow:0 0 16px #bb80eb66}
:is(.home-faq,.faq) details[open] summary{background:linear-gradient(90deg,#a855f712,transparent)}
:is(.home-faq,.faq) details p{position:relative;padding:0 22px 24px}
:is(.home-faq,.faq) details[open] p{animation:ume-faq-reveal .5s ease both}
:is(.home-faq,.faq) details[open]::after{content:"";position:absolute;left:0;top:12%;bottom:12%;width:2px;background:linear-gradient(transparent,#c88aff,transparent);box-shadow:0 0 12px #b267ff;animation:ume-faq-energy 3.6s ease-in-out infinite;pointer-events:none}
@keyframes ume-faq-reveal{from{opacity:0;transform:translateY(-7px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes ume-faq-energy{0%,100%{opacity:.4}50%{opacity:1}}
@media(max-width:650px){:is(.home-faq,.faq) summary{padding:19px 16px;gap:14px}:is(.home-faq,.faq) details p{padding:0 16px 22px}:is(.home-faq,.faq) summary::after{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){:is(.home-faq,.faq) details,:is(.home-faq,.faq) details::before,:is(.home-faq,.faq) summary::after{transition:none}:is(.home-faq,.faq) details[open] p,:is(.home-faq,.faq) details[open]::after{animation:none}}

.price-inclusion{padding-block:16px;list-style:none;border-bottom:1px solid #cda8ed24}
.price-inclusion:last-child{border-bottom:0}
.price-inclusion strong{display:block;color:#eee7f5;font-size:17px;line-height:1.5}
.price-inclusion p{margin:8px 0 0!important;font-size:14px;line-height:1.75;color:var(--muted)}
.audience-detail ul:has(.price-inclusion),.journey-investment ul:has(.price-inclusion){padding-left:0;margin-block:18px}

.journey-investment ul:has(.price-option){list-style:none;padding:0}
.price-option{list-style:none;border-bottom:1px solid #cda8ed2b;padding:0!important}
.price-option-trigger{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:20px 8px;border:0;background:transparent;color:#eee7f5;text-align:left;font:inherit;cursor:pointer;transition:color .25s,background .25s}
.price-option-trigger>span{font-weight:600}
.price-option-trigger small{flex:none;color:#cba0ed;font-size:12px}
.price-option-trigger:hover{color:#d8b4fe;background:#a855f70b}
.price-option-trigger:focus-visible{outline:2px solid #c18aff;outline-offset:2px}
.package-dialog{width:min(620px,calc(100% - 32px));max-height:85svh;overflow:auto;padding:38px;border:1px solid #ba80ed88;border-radius:12px;background:#15111e;color:#eee7f5;box-shadow:0 0 45px #9d4edd33}
.package-dialog::backdrop{background:#050308ce;backdrop-filter:blur(6px)}
.package-dialog[open]{animation:ume-faq-reveal .3s ease both}
.package-dialog h2{font-size:clamp(25px,4vw,36px);line-height:1.2;margin:14px 0 22px;padding-right:12px}
.package-dialog p:not(.eyebrow){font-size:15px;line-height:1.8;color:#d5cddd}
.package-dialog .package-dialog-note{font-size:13px!important;border-top:1px solid #cda8ed2b;padding-top:18px;margin-top:24px}
.package-dialog-close{position:absolute;right:12px;top:10px;width:36px;height:36px;border:0;border-radius:50%;background:#c18aff12;color:#eee7f5;font-size:26px;cursor:pointer}
.package-dialog-close:focus-visible{outline:2px solid #d8b4fe}
@media(max-width:650px){.price-option-trigger{align-items:flex-start;flex-direction:column;gap:7px}.package-dialog{padding:30px 22px}.package-dialog .btn{white-space:normal;text-align:center}}
@media(prefers-reduced-motion:reduce){.package-dialog[open]{animation:none}.price-option-trigger{transition:none}}

/* A restrained holographic atmosphere inside the service-details popup. */
.package-dialog{isolation:isolate;background:radial-gradient(ellipse at 0 0,#45226044,transparent 60%),radial-gradient(ellipse at 100% 100%,#44206622,transparent 60%),#15111e}
.package-dialog[open]{animation:ume-package-arrive .45s ease both,ume-package-aura 4s ease-in-out .45s infinite}
.package-dialog>*:not(.package-particles){position:relative;z-index:1}
.package-dialog>.package-dialog-close{position:absolute;z-index:3}
.package-dialog .eyebrow{color:#dab8fa;text-shadow:0 0 12px #ba6cff66;letter-spacing:.2em}
.package-dialog .package-dialog-note{border-image:linear-gradient(90deg,#b367ff99,#d8b4fe44,transparent) 1}
.package-particles{position:absolute;inset:0;z-index:0;overflow:hidden;border-radius:inherit;pointer-events:none}
.package-particles i{position:absolute;left:var(--px);top:var(--py);width:2px;height:2px;border-radius:50%;background:#ecd9ff;box-shadow:0 0 5px 2px #b267ff88,0 0 14px #ba6cff55;opacity:0;animation:ume-panel-ember var(--duration) linear var(--delay) infinite paused}
.package-particles i:nth-child(3n){width:3px;height:3px}
.package-dialog[open] .package-particles i{animation-play-state:running}
.package-dialog-close{transition:background .25s,box-shadow .25s}
.package-dialog-close:hover{background:#b267ff33;box-shadow:0 0 14px #ba6cff55}
@keyframes ume-package-arrive{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes ume-package-aura{0%,100%{border-color:#ba80ed77;box-shadow:0 0 28px #9d4edd26,inset 0 0 24px #9d4edd08}50%{border-color:#d3a1ffbb;box-shadow:0 0 48px #9d4edd44,inset 0 0 30px #9d4edd12}}
@media(prefers-reduced-motion:reduce){.package-dialog[open]{animation:none}.package-particles{display:none}.package-dialog-close{transition:none}}

.kit-examples{background:#100d15;border-block:1px solid #cda8ed1c}
.kit-examples .section-head p:not(.eyebrow){max-width:65ch;color:var(--muted);font-size:15px;line-height:1.75;margin-top:18px}
.kit-preview-controls{display:flex;gap:22px;align-items:center;border:0;padding:0;margin:0 0 26px;color:#ddd1e8;font-size:14px}
.kit-preview-controls legend{float:left;margin-right:24px;color:#b8a8c7;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.kit-preview-controls label{display:flex;align-items:center;gap:8px;cursor:pointer;padding-block:8px}
.kit-preview-controls input{accent-color:#bb83e8;width:17px;height:17px}
.kit-demo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.kit-demo-grid figure{margin:0;min-width:0}
.kit-demo-stage{position:relative;isolation:isolate;aspect-ratio:16/10;overflow:hidden;border:1px solid #cda8ed33;border-radius:8px;background:radial-gradient(ellipse at 70% 20%,#8443b133,transparent 65%),linear-gradient(140deg,#20192a,#0a090e);display:flex;align-items:center;justify-content:center;padding:22px}
.kit-demo-stage::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.2;background-image:linear-gradient(#b786e420 1px,transparent 1px),linear-gradient(90deg,#b786e420 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(transparent,#000)}
.kit-demo-watermark{position:absolute;top:17px;left:18px;font-size:9px;letter-spacing:.2em;color:#bca8cd88}
.kit-demo-cta{display:flex;align-items:center;gap:16px;background:#aa68e5;border:1px solid #d8b4fe;border-radius:5px;padding:14px 16px;color:white;font-size:11px;font-weight:700;letter-spacing:.08em;box-shadow:0 0 22px #a855f744;animation:ume-kit-cta 6s ease-in-out infinite}
.kit-demo-cta>span{font-size:20px}
.kit-demo-title{width:100%;padding:12px 16px;border-left:3px solid #cf9cff;background:linear-gradient(90deg,#24182ee8,#24182e77);animation:ume-kit-title 6s ease-in-out infinite}
.kit-demo-title strong{display:block;color:white;font-size:17px;line-height:1.3;letter-spacing:.03em}
.kit-demo-title>span{display:block;color:#cba8e8;font-size:10px;letter-spacing:.1em;margin-top:7px}
.kit-demo-caption{color:white;font-weight:700;font-size:clamp(19px,2.1vw,28px);line-height:1.55;text-align:center;text-shadow:0 2px 8px #0009}
.kit-demo-caption mark{display:inline-block;color:#fff;background:#a15ce0;border-radius:3px;padding:0 6px;animation:ume-kit-caption 6s ease-in-out infinite}
.kit-demo-grid figcaption{display:flex;flex-direction:column;gap:8px;margin-top:18px;color:#bfb0cb;font-size:13px;line-height:1.6}
.kit-demo-grid figcaption strong{color:#eee7f5;font-size:17px}
.kit-example-note{font-size:12px;line-height:1.8;color:#aa9bb7;max-width:95ch;margin:28px 0 20px}
.kit-examples:has(input[value="static"]:checked) .kit-demo-stage *{animation:none!important}
@keyframes ume-kit-cta{0%,12%{opacity:0;transform:translateY(16px) scale(.96)}25%,78%{opacity:1;transform:translateY(0) scale(1)}92%,100%{opacity:0;transform:translateY(-8px) scale(.98)}}
@keyframes ume-kit-title{0%,12%{opacity:0;transform:translateX(-35px);clip-path:inset(0 100% 0 0)}28%,78%{opacity:1;transform:translateX(0);clip-path:inset(0)}94%,100%{opacity:0;transform:translateX(12px);clip-path:inset(0)}}
@keyframes ume-kit-caption{0%,15%,90%,100%{background:transparent;box-shadow:none;transform:translateY(0)}30%,75%{background:#a15ce0;box-shadow:0 0 18px #a855f744;transform:translateY(-2px)}}
@media(max-width:800px){.kit-demo-grid{grid-template-columns:1fr}.kit-demo-stage{aspect-ratio:16/9;max-height:300px}.kit-demo-cta{font-size:12px}.kit-demo-title strong{font-size:21px}.kit-demo-caption{font-size:27px}.kit-preview-controls{flex-wrap:wrap;gap:10px 20px}.kit-preview-controls legend{float:none;margin-bottom:5px}}
@media(prefers-reduced-motion:reduce){.kit-demo-stage *{animation:none!important}}

.kit-real-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:26px;align-items:start}
.kit-real-example{margin:0;min-width:0}
.kit-real-player{display:flex;align-items:center;justify-content:center;border:1px solid #cda8ed40;border-radius:8px;overflow:hidden;background:#08070c;box-shadow:0 0 24px #a855f70a}
.kit-real-player video{display:block;width:100%;height:auto;object-fit:contain;max-height:570px}
.kit-real-example figcaption{display:flex;flex-direction:column;gap:9px;margin-top:18px;line-height:1.7;font-size:13px;color:#bfb0cb}
.kit-real-example figcaption strong{font-size:17px;color:#eee7f5;line-height:1.4}
@media(max-width:800px){.kit-real-grid{grid-template-columns:1fr;gap:32px}.kit-real-vertical{width:100%;max-width:360px;margin-inline:auto}.kit-real-player video{max-height:72svh}}

/* The wide recap sits between the two complete vertical campaign examples. */
.kit-real-grid{grid-template-columns:1fr 1.5fr 1fr;align-items:center}
@media(max-width:800px){.kit-real-grid{grid-template-columns:1fr}}

/* A single gallery-like frame brings the campaign examples together. */
.kit-examples{background:radial-gradient(ellipse at 50% 38%,#7a3aad12,transparent 65%),#100d15}
.kit-examples .section-head{display:block;text-align:center;margin-bottom:36px}
.kit-examples .section-head p:not(.eyebrow){margin-inline:auto;max-width:62ch}
.kit-showcase{padding:24px;border:1px solid #bf8be836;border-radius:14px;background:linear-gradient(145deg,#24182e66,#110e18);box-shadow:0 18px 60px #0003,inset 0 1px #e4c5ff0d}
.kit-showcase-heading{display:flex;justify-content:space-between;gap:20px;padding:0 2px 22px;margin-bottom:24px;border-bottom:1px solid #cda8ed24;color:#bca6cd;font-size:10px;letter-spacing:.14em;line-height:1.6}
.kit-showcase-heading b{color:#d0a0f5;font-size:18px;font-weight:400;margin-left:8px}
.kit-real-grid{gap:24px;grid-template-columns:1fr 1.6fr 1fr;align-items:center}
.kit-real-example{padding:14px;background:#0e0b14b3;border:1px solid #cda8ed1f;border-radius:10px;transition:border-color .3s,box-shadow .3s}
.kit-real-example:hover,.kit-real-example:focus-within{border-color:#c18aff77;box-shadow:0 0 24px #a855f71a}
.kit-real-wide{background:linear-gradient(145deg,#2b1b39aa,#100d18);border-color:#bc82ed55;box-shadow:0 0 38px #a855f710}
.kit-example-label{margin:0 0 14px;color:#d6b4f0;font-size:10px;line-height:1.6;text-transform:uppercase;letter-spacing:.13em}
.kit-real-player{border-color:#cda8ed26;border-radius:5px;box-shadow:none}
.kit-real-player video{max-height:490px}
.kit-real-example figcaption{margin-top:16px;font-size:12px;line-height:1.65;gap:8px}
.kit-real-example figcaption strong{font-size:16px}
.kit-showcase-footer{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:24px}
.kit-showcase-footer .kit-example-note{margin:0;max-width:68ch;font-size:12px}
.kit-showcase-footer .btn{flex:none;font-size:12px}
.journey-case-section .section-head{margin-bottom:24px}
.journey-case-section .journey-cases{margin-top:0}
@media(max-width:800px){.kit-showcase{padding:16px;border-radius:10px}.kit-showcase-heading{font-size:9px;gap:12px;padding-bottom:16px;margin-bottom:20px}.kit-showcase-heading>span:last-child{white-space:nowrap}.kit-real-grid{grid-template-columns:1fr;gap:22px}.kit-real-wide{grid-row:1}.kit-real-vertical{max-width:360px}.kit-real-player video{max-height:65svh}.kit-showcase-footer{flex-direction:column;align-items:flex-start;gap:20px}.kit-real-example{padding:12px}.kit-examples .section-head h2{font-size:clamp(32px,9vw,48px)}}
@media(prefers-reduced-motion:reduce){.kit-real-example{transition:none}}

/* Keep the examples simple: identify the project, watch, then see its graphics. */
.kit-examples .section-head{margin-bottom:36px}
.kit-examples .section-head h2{font-size:clamp(36px,4.5vw,62px);line-height:1.08}
.kit-real-grid{align-items:start;grid-template-columns:1fr 1.6fr 1fr;gap:24px}
.kit-real-example,.kit-real-wide{padding:0;background:transparent;border:0;box-shadow:none;border-radius:0}
.kit-real-example:hover,.kit-real-example:focus-within{border-color:transparent;box-shadow:none}
.kit-example-heading{min-height:84px;padding-bottom:18px}
.kit-example-heading h3{font-size:21px;line-height:1.25;color:#eee7f5;margin:0 0 8px}
.kit-example-heading p{font-size:12px;line-height:1.5;color:#baa9c7;margin:0}
.kit-real-player{border:1px solid #bd8ce54a;border-radius:8px;background:#08070c;transition:box-shadow .3s,border-color .3s}
.kit-real-player:focus-within,.kit-real-player:hover{border-color:#c18aff99;box-shadow:0 0 22px #a855f722}
.kit-real-wide .kit-real-player{margin-top:110px}
.kit-real-example figcaption{margin-top:20px;border-top:1px solid #cda8ed24;padding-top:16px;gap:12px}
.kit-look-for{font-size:9px;letter-spacing:.13em;color:#bca6cd}
.kit-real-example figcaption ul{display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:0;padding:0}
.kit-real-example figcaption li{padding:5px 9px;border:1px solid #cda8ed26;border-radius:4px;font-size:11px;color:#d9c5e8;background:#c18aff08}
.kit-simple-next{display:flex;justify-content:space-between;align-items:center;gap:40px;border-top:1px solid #cda8ed2b;margin-top:36px;padding-top:28px}
.kit-simple-next h3{font-size:23px;margin:0 0 10px;line-height:1.3}
.kit-simple-next p{font-size:14px;color:#bfb0cb;line-height:1.7;max-width:65ch;margin:0}
.kit-simple-next .kit-example-note{font-size:11px;line-height:1.7;margin-top:12px;color:#978aa3}
.kit-simple-next .btn{flex:none}
@media(max-width:800px){.kit-real-grid{grid-template-columns:1fr;gap:36px}.kit-real-wide{grid-row:1}.kit-example-heading{min-height:0;padding-bottom:16px}.kit-real-wide .kit-real-player{margin-top:0}.kit-real-vertical{max-width:360px}.kit-real-example figcaption{margin-top:16px}.kit-simple-next{flex-direction:column;align-items:flex-start;gap:22px}.kit-real-player video{max-height:65svh}}
@media(prefers-reduced-motion:reduce){.kit-real-player{transition:none}}
.kit-examples{padding-block:64px}
.kit-examples .section-head h2{font-size:clamp(34px,3.7vw,52px)}
.kit-real-wide{padding-top:110px}
.kit-real-wide .kit-real-player{margin-top:0}
@media(max-width:800px){.kit-examples{padding-block:44px}.kit-real-wide{padding-top:0}}

.package-audio-addons{margin-top:24px;padding:20px;border:1px solid #bd8ce540;border-radius:8px;background:#a855f708}
.package-audio-addons[hidden]{display:none}
.package-audio-addons h3{font-size:20px;margin:0 0 18px;color:#dec3f4}
.package-audio-addons h4{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:15px;line-height:1.5;margin:0 0 8px}
.package-audio-addons h4 span{color:#d0a0f5;white-space:nowrap}
.package-audio-addons>div+div{border-top:1px solid #bd8ce52b;margin-top:18px;padding-top:18px}
.package-audio-addons p{font-size:13px!important;margin:0}
.package-audio-addons .package-addon-note{margin-top:18px;font-size:12px!important;color:#b9a8c7!important}
@media(max-width:650px){.package-audio-addons{padding:16px}}

.package-artwork-gallery{margin-top:26px}
.package-artwork-gallery[hidden]{display:none}
.package-artwork-gallery h3{font-size:20px;color:#dec3f4;margin:0 0 18px}
.package-cover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.package-cover-grid figure{margin:0;min-width:0}
.package-cover-grid a{display:block;border:1px solid #cda8ed40;border-radius:6px;overflow:hidden}
.package-cover-grid a:hover,.package-cover-grid a:focus-visible{outline:2px solid #c18aff;outline-offset:3px}
.package-cover-grid img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#09070e}
.package-cover-grid figcaption{display:flex;flex-direction:column;gap:6px;margin-top:12px;font-size:12px;line-height:1.5}
.package-cover-grid figcaption strong{color:#eee7f5;font-size:13px}
.package-cover-grid figcaption span{color:#d1a2f3}
.package-artwork-gallery>p{font-size:12px!important;line-height:1.7!important;color:#b9a8c7!important;margin-top:18px}
@media(max-width:450px){.package-cover-grid{grid-template-columns:1fr;gap:24px}}

.press-example-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
.press-example-grid img{aspect-ratio:auto;height:auto;object-fit:contain}
.press-example-grid figcaption strong{font-size:11px}
@media(max-width:550px){.press-example-grid{grid-template-columns:1fr;gap:22px}.press-example-grid figcaption strong{font-size:13px}}

.concert-example-group{margin-top:24px}
.concert-example-group h4{font-size:16px;margin:0 0 12px;color:#eee7f5}
.concert-example-grid{align-items:start;gap:14px}
.concert-example-grid img{height:auto;aspect-ratio:auto;object-fit:contain}
.concert-example-grid figcaption{margin-top:8px;font-size:11px}
@media(max-width:450px){.concert-example-grid{grid-template-columns:1fr;gap:18px}}

.package-performance-examples{margin-top:26px}
.package-performance-examples[hidden]{display:none}
.package-performance-examples h3{font-size:20px;color:#dec3f4;margin:0 0 18px}
.package-performance-examples figure{margin:0 0 24px}
.package-performance-examples video,.package-performance-examples img{display:block;width:100%;height:auto;object-fit:contain;border-radius:6px}
.package-youtube-example{display:block;border:1px solid #cda8ed40;border-radius:7px;overflow:hidden;background:#09070e;text-decoration:none}
.package-youtube-example>span{display:block;padding:13px 16px;color:#e1c5f7;font-size:13px;background:#a855f712}
.package-youtube-example:hover,.package-youtube-example:focus-visible{outline:2px solid #c18aff;outline-offset:3px}
.package-performance-examples figcaption{display:flex;flex-direction:column;gap:6px;margin-top:12px;line-height:1.5;font-size:12px;color:#bfa9cf}
.package-performance-examples figcaption strong{font-size:14px;color:#eee7f5}
.package-performance-examples>p{font-size:12px!important;color:#b9a8c7!important}
.package-performance-examples .performance-addon-label{display:block;margin-top:5px;padding:9px 12px;border-left:2px solid #bb83e8;background:#a855f70d;color:#ddc2f4;font-size:12px;line-height:1.6}

/* The same FAQ heading treatment accompanies the shared accordion cards. */
.faq>h2{text-align:center;margin-bottom:32px}
:is(.home-faq,.faq) summary{font-size:18px;line-height:1.5}
:is(.home-faq,.faq) details p{margin:0;line-height:1.75;max-width:78ch}
@media(max-width:650px){:is(.home-faq,.faq) summary{font-size:17px}}

/* A compact, consistent rhythm for the musicians service journey. */
main:has(.service-journey-hero)>.section{padding-block:56px}
main:has(.service-journey-hero) .journey-nav{padding-block:18px;gap:10px}
main:has(.service-journey-hero) #your-options{padding-top:40px}
main:has(.service-journey-hero) .offering-grid{margin-top:28px;gap:18px}
main:has(.service-journey-hero) .offering{padding:24px}
main:has(.service-journey-hero) .offering h3{margin-top:0}
main:has(.service-journey-hero) .kit-examples .section-head{margin-bottom:28px}
main:has(.service-journey-hero) .journey-price-grid{gap:44px;align-items:start}
main:has(.service-journey-hero) .journey-price-grid ul{margin-top:0;margin-bottom:18px}
main:has(.service-journey-hero) .journey-price-grid h2{margin-bottom:20px}
main:has(.service-journey-hero) .price-option-trigger{padding-block:17px}
main:has(.service-journey-hero) .journey-case-section{padding-bottom:28px}
main:has(.service-journey-hero)>.faq{padding-top:28px;padding-bottom:36px}
main:has(.service-journey-hero)>.faq>h2{margin-top:0;margin-bottom:26px}
main:has(.service-journey-hero) .journey-closing{padding-top:28px;padding-bottom:48px}
main:has(.service-journey-hero) .journey-closing h2{margin-top:0;margin-bottom:24px}
@media(max-width:650px){main:has(.service-journey-hero)>.section{padding-block:38px}main:has(.service-journey-hero) #your-options{padding-top:30px}main:has(.service-journey-hero) .offering-grid{gap:14px;margin-top:24px}main:has(.service-journey-hero) .offering{padding:22px}main:has(.service-journey-hero) .journey-price-grid{gap:24px}main:has(.service-journey-hero) .journey-price-grid>div:first-child .btn{margin-top:8px}main:has(.service-journey-hero) .price-option-trigger{padding-block:16px}main:has(.service-journey-hero) .journey-cases{gap:16px}main:has(.service-journey-hero) .journey-case{padding:24px}main:has(.service-journey-hero) .journey-case-section{padding-bottom:24px}main:has(.service-journey-hero)>.faq{padding-top:24px;padding-bottom:28px}main:has(.service-journey-hero) .journey-closing{padding-top:24px;padding-bottom:38px}}

/* Fade homepage posters into the cinematic backdrop at both scroll edges. */
 :is(.home-cinema,.cinema-library) .film-shelf{-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%)}
@media(max-width:650px){ :is(.home-cinema,.cinema-library) .film-shelf{-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}}

.package-photo-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.package-photo-examples figure{margin:0}
.package-photo-examples a{display:block;border:1px solid #cda8ed40;border-radius:6px;overflow:hidden}
.package-photo-examples a:hover,.package-photo-examples a:focus-visible{outline:2px solid #c18aff;outline-offset:3px}
.package-photo-examples img{height:auto;aspect-ratio:auto;object-fit:contain}
.package-photo-examples figcaption{font-size:12px;margin-top:9px}
@media(max-width:450px){.package-photo-examples{grid-template-columns:1fr}}

/* Portfolio hero: a wide production setup, framed below the fixed masthead. */
.work-hero{background:#100d15}
.work-hero::before{top:126px;background:linear-gradient(90deg,#100d15 0%,#100d15f2 26%,#100d1544 58%,#100d1512 100%),url('assets/production-set-bts.webp') right center/auto 100% no-repeat;opacity:1}
@media(max-width:900px){.work-hero::before{top:84px;background-position:center,right center}}
@media(max-width:650px){.work-hero{min-height:540px;padding-top:310px;padding-bottom:32px}.work-hero::before{top:84px;background:linear-gradient(0deg,#100d15 0%,#100d15 20%,#100d1599 43%,transparent 72%),url('assets/production-set-bts.webp') center top/100% auto no-repeat}.work-hero .container{position:relative;z-index:1}}

/* Blend the set photograph into the portfolio hero instead of a hard edge. */
@media(min-width:651px){
 .work-hero::before{left:auto;right:0;width:auto;height:calc(100% - 126px);aspect-ratio:3/2;background:linear-gradient(90deg,#100d1533,transparent 70%),url('assets/production-set-bts.webp') center/100% 100% no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent,#000 35%);mask-image:linear-gradient(90deg,transparent,#000 35%)}
}
@media(min-width:651px) and (max-width:900px){.work-hero::before{height:calc(100% - 84px)}}

/* Three process photographs share a slow, seamless crossfade. */
.work-hero.has-process-sequence::before{display:none}
.work-process-sequence{position:absolute;top:126px;bottom:0;right:0;height:calc(100% - 126px);aspect-ratio:3/2;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 35%);mask-image:linear-gradient(90deg,transparent,#000 35%)}
.work-process-shot{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;animation:work-process-crossfade 24s linear infinite}
.work-process-shot-0{animation-delay:-2s}
.work-process-shot-1{animation-delay:6s}
.work-process-shot-2{animation-delay:14s}
@keyframes work-process-crossfade{0%,41.666%{opacity:0}8.333%,33.333%{opacity:1}100%{opacity:0}}
@media(max-width:900px){.work-process-sequence{top:84px;height:calc(100% - 84px)}}
@media(max-width:650px){.work-process-sequence{top:84px;bottom:auto;width:100%;height:auto;aspect-ratio:3/2;-webkit-mask-image:linear-gradient(0deg,transparent,#000 22%);mask-image:linear-gradient(0deg,transparent,#000 22%)}}
@media(prefers-reduced-motion:reduce){.work-process-shot{animation:none}.work-process-shot-0{opacity:1}}

/* A process triptych with diagonal, animated purple seams. */
.work-process-sequence{left:0;right:0;width:100%;height:calc(100% - 126px);aspect-ratio:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;-webkit-mask-image:none;mask-image:none}
.work-process-shot{position:relative;inset:auto;width:100%;height:100%;min-width:0;object-fit:cover;object-position:center;opacity:1;animation:none}
.work-process-shot-0{clip-path:polygon(0 0,100% 0,84% 100%,0 100%);width:116%;z-index:1}
.work-process-shot-1{clip-path:polygon(14% 0,100% 0,86% 100%,0 100%);width:116%;margin-left:-16%;z-index:2}
.work-process-shot-2{clip-path:polygon(14% 0,100% 0,100% 100%,0 100%);width:116%;margin-left:-16%;z-index:3}
.work-process-sequence::before,.work-process-sequence::after{content:'';position:absolute;top:-12%;bottom:-12%;width:3px;z-index:4;transform:rotate(12deg);background:linear-gradient(0deg,#8b3cdf,#d9a7ff,#fff,#a14df4,#8b3cdf);background-size:100% 240%;box-shadow:0 0 8px #bd72ff,0 0 20px #9a3cff;animation:work-seam-energy 4s linear infinite}
.work-process-sequence::before{left:33.333%}
.work-process-sequence::after{left:66.666%;animation-delay:-2s}
.work-hero.has-process-sequence>.container{position:relative;z-index:5;text-shadow:0 2px 16px #000}
.work-process-sequence{background:#100d15}
.work-hero.has-process-sequence::after{content:'';position:absolute;inset:126px 0 0;background:linear-gradient(90deg,#100d15d9,#100d1566 58%,#100d1522);pointer-events:none;z-index:4}
@keyframes work-seam-energy{to{background-position:0 240%}}
@media(max-width:900px){.work-process-sequence{top:84px;height:calc(100% - 84px)}.work-hero.has-process-sequence::after{top:84px}}
@media(max-width:650px){.work-process-sequence{top:84px;height:212px;bottom:auto}.work-hero.has-process-sequence::after{display:none}.work-process-shot{object-fit:cover}.work-process-sequence::before,.work-process-sequence::after{width:2px}}
@media(prefers-reduced-motion:reduce){.work-process-shot{opacity:1}.work-process-sequence::before,.work-process-sequence::after{animation:none}}
.work-process-shot{position:absolute;top:0;bottom:0;max-width:none;margin:0}
.work-process-shot-0{left:0;width:36%;clip-path:polygon(0 0,100% 0,83.333% 100%,0 100%)}
.work-process-shot-1{left:30%;width:39%;clip-path:polygon(15.385% 0,100% 0,84.615% 100%,0 100%)}
.work-process-shot-2{left:63%;width:37%;clip-path:polygon(16.216% 0,100% 0,100% 100%,0 100%)}
.work-process-sequence::before,.work-process-sequence::after{top:0;bottom:0;width:6%;transform:none;clip-path:polygon(98% 0,100% 0,2% 100%,0 100%);filter:drop-shadow(0 0 5px #ae58ff);box-shadow:none}
.work-process-sequence::before{left:30%}.work-process-sequence::after{left:63%}
.work-hero.has-process-sequence::after{background:linear-gradient(90deg,#100d15bb,#100d1566 58%,#100d1522)}
.work-process-sequence::before,.work-process-sequence::after{clip-path:polygon(95% 0,100% 0,5% 100%,0 100%)}
.work-hero.has-process-sequence::after{display:block;opacity:1;background:linear-gradient(90deg,#100d15d9,#100d1599 52%,#100d1533)}
@media(max-width:650px){.work-hero.has-process-sequence::after{display:none}}

/* Match the Services reel's glowing purple seams and rising sparks. */
.work-process-sequence::before,.work-process-sequence::after{display:none}
.work-process-divider{position:absolute;top:0;bottom:0;width:6%;z-index:4;pointer-events:none}
.work-process-divider-left{left:30%}.work-process-divider-right{left:63%}
.work-process-divider::before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#a34af0aa,#e6c5ff,#bb75ff);clip-path:polygon(95% 0,100% 0,5% 100%,0 100%);filter:drop-shadow(0 0 8px #d59aff)}
.work-process-divider i{position:absolute;top:var(--seam-y);left:calc(100% - var(--seam-y));width:3px;height:3px;border-radius:50%;background:#e9c9ff;box-shadow:0 0 5px #cf8dff,0 0 12px #a747ed;opacity:0;animation:ume-seam-spark var(--seam-duration) ease-out infinite;animation-delay:var(--seam-delay)}
@media(prefers-reduced-motion:reduce){.work-process-divider i{display:none;animation:none}}

/* A full-height shade keeps portfolio copy clear and blends the set into the page. */
.work-hero.has-process-sequence::after{display:block;inset:126px 0 0;height:auto;opacity:1;animation:none!important;box-shadow:none;background:linear-gradient(90deg,#100d15ed 0%,#100d15cc 28%,#100d1577 58%,#100d1522 100%),linear-gradient(0deg,#100d15 0%,#100d15b3 12%,transparent 48%)}
.work-hero.has-process-sequence>.container>p:not(.eyebrow){color:#eee8f3}
@media(max-width:900px){.work-hero.has-process-sequence::after{top:84px}}
@media(max-width:650px){.work-hero.has-process-sequence::after{top:84px;bottom:auto;height:212px;background:linear-gradient(0deg,#100d15 0%,#100d1599 18%,#100d151a 65%)}}

/* Work collections: one filter, consistent cards, and full-frame photography. */
main:has(.work-hero) .section{padding-block:48px}
.portfolio-browse{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.portfolio-browse>.eyebrow{margin:0}
.portfolio-browse .filter-bar{margin:0;gap:10px;flex-wrap:wrap}
.portfolio-status{margin:18px 0 36px;color:#bbb1c2;font-size:13px}
.portfolio-collection-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}
.portfolio-collection-heading h2,.portfolio-art h2,.portfolio-closing h2{font-size:clamp(32px,4vw,52px);line-height:1.05;margin:0}
.portfolio-collection-heading p{max-width:400px;color:#bbb1c2;font-size:14px;line-height:1.7;margin:0}
.portfolio-collection-heading .eyebrow{margin-bottom:12px}
.portfolio-watch{gap:30px 24px;align-items:start}
.portfolio-watch .watch-cover{aspect-ratio:16/9}
.portfolio-watch .watch-cover img{height:100%;object-fit:cover}
.portfolio-watch .watch-caption{padding-top:16px}
.portfolio-watch h3{font-size:27px;line-height:1.1;margin-bottom:12px}
.portfolio-watch .watch-caption>p:first-child{font-size:11px;letter-spacing:.08em;line-height:1.6;min-height:18px}
.portfolio-watch .project-credit{font-size:12px;line-height:1.7}
.portfolio-photo-section{border-top:1px solid #bb78fa22}
.portfolio-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}
.portfolio-photo-pair{display:flex;gap:8px;height:300px;background:#15101d;border:1px solid #bb78fa22;padding:8px;border-radius:8px;transition:border-color .3s,box-shadow .3s}
.portfolio-photo-pair:hover{border-color:#b67af1;box-shadow:0 0 22px #aa55ee22}
.portfolio-photo-pair a{flex:1;min-width:0;display:flex;align-items:center;justify-content:center}
.portfolio-photo-pair img{width:100%;height:100%;object-fit:contain}
.portfolio-photo-card>.eyebrow{font-size:11px;letter-spacing:.13em;margin:16px 0 7px}
.portfolio-photo-card h3{font-size:26px;margin:0}
.portfolio-art .section-head{margin-bottom:28px}
.portfolio-art .art-grid img{object-fit:contain;aspect-ratio:1}
.portfolio-closing>.container{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:24px;border-top:1px solid #bb78fa22}
main:has(.work-hero) [hidden]{display:none!important}
@media(max-width:900px){.portfolio-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-collection-heading{align-items:start;flex-direction:column;gap:14px}}
@media(max-width:650px){main:has(.work-hero) .section{padding-block:32px}.portfolio-browse{gap:16px}.portfolio-browse .filter-bar{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.portfolio-browse .filter-bar button{padding:12px 8px;font-size:12px}.portfolio-status{margin:16px 0 26px}.portfolio-photo-grid{grid-template-columns:1fr;gap:28px}.portfolio-photo-pair{height:300px}.portfolio-closing>.container{align-items:start;flex-direction:column}.portfolio-watch{gap:28px}.portfolio-collection-heading h2,.portfolio-art h2,.portfolio-closing h2{font-size:34px}}
.portfolio-photo-pair{height:auto;align-items:center}
.portfolio-photo-pair img{height:auto;max-height:350px;object-fit:contain}
.portfolio-photo-grid{align-items:start}
@media(max-width:650px){.portfolio-photo-pair{height:auto}.portfolio-photo-pair img{max-height:340px}}

/* About: a personal introduction, clear experience, and a visual process story. */
.about-introduction{position:relative;padding:180px 0 56px;background:radial-gradient(ellipse at 85% 25%,#7431a528,transparent 55%),#100d15;border-bottom:1px solid #ac65e92e}
.about-introduction-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:72px;align-items:center}
.about-introduction-copy h1{font-size:clamp(48px,5.7vw,82px);line-height:1.02;margin-bottom:26px}
.about-introduction-copy h1 em{font-style:normal;color:var(--violet)}
.about-introduction-copy>p{max-width:590px;font-size:15px;line-height:1.8;color:#c8bfce}
.about-introduction-copy>.about-lead{font-size:21px;color:#f1eaf7;line-height:1.6}
.about-intro-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}
.about-founder-portrait{margin:0;position:relative;max-width:420px;justify-self:end;border:1px solid #b579ed44;border-radius:12px;overflow:hidden;background:#17101e;box-shadow:0 0 45px #9844da18}
.about-founder-portrait img{width:100%;height:390px;object-fit:contain;object-position:center}
.about-founder-portrait figcaption{padding:18px 22px;border-top:1px solid #b579ed33;font:600 24px 'Barlow Condensed';background:#15101d}
.about-founder-portrait figcaption span{display:block;margin-top:6px;color:#beb0c9;font:12px 'DM Sans';letter-spacing:.04em}
main:has(.about-introduction)>.section{padding-block:52px}
.about-section-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:72px;align-items:start;margin-bottom:28px}
.about-section-heading>.eyebrow{grid-column:1/-1;margin-bottom:14px}
.about-section-heading h2,.about-process-story h2,.about-collaboration h2{font-size:clamp(36px,4.1vw,56px);line-height:1.05;margin:0 0 22px}
.about-section-heading>p:last-child{font-size:15px;line-height:1.8;color:#beb3c7;margin:0}
.about-proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.about-proof-card{position:relative;padding:28px;border:1px solid #b579ed33;border-radius:10px;background:radial-gradient(ellipse at 0 0,#9e44df12,transparent 65%),#131017;transition:border-color .3s,box-shadow .3s}
.about-proof-card:hover{border-color:#b87df2;box-shadow:0 0 24px #ae61e51c}
.about-proof-card .eyebrow{font-size:11px;margin-bottom:14px}
.about-proof-card h3{font-size:29px;line-height:1.15;margin-bottom:14px}
.about-proof-card p:not(.eyebrow){font-size:14px;line-height:1.8;color:#c0b5c9}
.about-award-card{border-color:#e4bc6344;background:radial-gradient(ellipse at 100% 0,#bf87291c,transparent 65%),#15120f}
.about-award-card .eyebrow,.about-award-card h3,.about-award-card a{color:#edcb83}
.about-award-card:hover{border-color:#e4bc63;box-shadow:0 0 24px #cda24722}
.about-process-story{border-block:1px solid #a964e51c;background:#100d15}
.about-process-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.about-process-grid figure{margin:0}
.about-process-grid figure img{width:100%;height:auto;border-radius:10px;border:1px solid #b579ed33}
.about-process-grid figcaption{font-size:12px;line-height:1.7;color:#a99cb5;margin-top:12px;max-width:440px}
.about-process-grid>div>p:not(.eyebrow),.about-collaboration p:not(.eyebrow){font-size:15px;line-height:1.8;color:#c0b5c9}
.about-approach-list{display:grid;gap:0;margin-top:24px}
.about-approach-list article{padding:18px 0 18px 20px;border-left:2px solid #a15ce566;border-top:1px solid #b579ed22;transition:border-color .3s,background .3s}
.about-approach-list article:hover{border-left-color:#c792ff;background:linear-gradient(90deg,#a154db14,transparent)}
.about-approach-list h3{font-size:24px;margin:0 0 7px}
.about-approach-list p{font-size:13px;line-height:1.7;color:#b9adc3;margin:0}
.about-collaboration>.container{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.about-collaboration-links{display:grid;gap:12px}
.about-collaboration-links>a{display:block;padding:22px;border:1px solid #b579ed33;border-radius:8px;background:#131017;transition:border-color .3s,box-shadow .3s}
.about-collaboration-links>a:hover{border-color:#c18bf7;box-shadow:0 0 22px #a14ddd22}
.about-collaboration-links span{display:block;font-size:11px;color:#bca2d1;margin-bottom:8px}
.about-collaboration-links strong{display:block;font:600 25px 'Barlow Condensed';margin-bottom:8px}
.about-collaboration-links small{color:#cab5dd;font-size:12px}
main:has(.about-introduction) .network-teaser{border-top:1px solid #b579ed22}
@media(max-width:900px){.about-introduction{padding-top:130px}.about-introduction-grid{gap:32px}.about-process-grid,.about-collaboration>.container{gap:32px}.about-founder-portrait img{height:330px}.about-section-heading{column-gap:32px}}
@media(max-width:650px){.about-introduction{padding:120px 0 32px}.about-introduction-grid,.about-section-heading,.about-proof-grid,.about-process-grid,.about-collaboration>.container{grid-template-columns:1fr;gap:26px}.about-introduction-copy h1{font-size:48px}.about-introduction-copy>.about-lead{font-size:18px}.about-introduction-copy>p{font-size:14px}.about-introduction .eyebrow{font-size:11px;line-height:1.7}.about-founder-portrait{justify-self:stretch;width:100%;max-width:420px}.about-founder-portrait img{height:auto;max-height:370px}.about-intro-actions{gap:20px}.about-intro-actions .btn{font-size:14px;gap:16px;padding:14px 18px}.about-section-heading>.eyebrow{margin:0}.about-section-heading h2{margin-bottom:0}.about-proof-card{padding:22px}.about-section-heading h2,.about-process-story h2,.about-collaboration h2{font-size:38px}main:has(.about-introduction)>.section{padding-block:34px}}

/* The award link shares the navigation's expanding line and rising embers. */
.about-award-card a.text-link{position:relative;display:inline-block;padding:0 0 7px;border:0}
.about-award-card a.text-link::after{content:'';position:absolute;inset:auto 0 0;height:2px;background:#edcb83;box-shadow:0 0 8px #edcb83,0 0 16px #c8964577;transform:scaleX(0);transform-origin:center;opacity:0;transition:transform .3s ease,opacity .3s ease;pointer-events:none}
.about-award-card a.text-link:is(:hover,:focus-visible)::after{transform:scaleX(1);opacity:1}
.about-award-card .nav-embers{position:absolute;inset:0;pointer-events:none;overflow:visible;opacity:0;transition:opacity .25s ease}
.about-award-card a:is(:hover,:focus-visible) .nav-embers{opacity:1}
.about-award-card .nav-embers i{bottom:0;background:#fff0bb;box-shadow:0 0 5px #edcb83,0 0 10px #c89645}
.about-award-card a:is(:hover,:focus-visible) .nav-embers i{animation-play-state:running}
@media(prefers-reduced-motion:reduce){.about-award-card a.text-link::after{transition:none}.about-award-card .nav-embers{display:none}}

/* About text links use one animated underline, including the service link. */
main:has(.about-introduction) a.text-link,
.about-collaboration-links small{position:relative;display:inline-block;padding:0 0 7px;border:0;text-decoration:none!important;--about-link-glow:#bd7fff;--about-link-spark:#dab3ff}
main:has(.about-introduction) .about-award-card a.text-link{--about-link-glow:#edcb83;--about-link-spark:#fff0bb}
main:has(.about-introduction) a.text-link::after,
.about-collaboration-links small::after{content:'';position:absolute;inset:auto 0 0;height:2px;background:var(--about-link-glow);box-shadow:0 0 8px var(--about-link-glow),0 0 16px color-mix(in srgb,var(--about-link-glow) 45%,transparent);transform:scaleX(0);transform-origin:center;opacity:0;transition:transform .3s ease,opacity .3s ease;pointer-events:none}
main:has(.about-introduction) a.text-link:is(:hover,:focus-visible)::after,
.about-collaboration-links a:is(:hover,:focus-visible) small::after{transform:scaleX(1);opacity:1}
main:has(.about-introduction) .nav-embers{position:absolute;inset:0;pointer-events:none;overflow:visible;opacity:0;transition:opacity .25s ease}
main:has(.about-introduction) a:is(:hover,:focus-visible) .nav-embers{opacity:1}
main:has(.about-introduction) .nav-embers i{bottom:0;background:var(--about-link-spark);box-shadow:0 0 5px var(--about-link-glow),0 0 10px var(--about-link-glow)}
main:has(.about-introduction) a:is(:hover,:focus-visible) .nav-embers i{animation-play-state:running}
@media(prefers-reduced-motion:reduce){main:has(.about-introduction) .nav-embers{display:none}main:has(.about-introduction) a.text-link::after,.about-collaboration-links small::after{transition:none}}

/* Crisp vector play mark, optically centered in a restrained cinema control. */
.hero-reel-link{cursor:pointer;gap:14px;letter-spacing:.14em}
.hero-reel-link .play-icon{position:relative;width:48px;height:48px;flex:none;border:1px solid #c995ff99;border-radius:50%;background:radial-gradient(circle at 35% 25%,#ad68fb33,#140e2077 75%);box-shadow:0 0 14px #a15af32b,inset 0 0 14px #ad68fb12;animation:none;transition:background .3s,border-color .3s,box-shadow .3s,transform .3s}
.hero-reel-link .play-icon svg{display:block;width:24px;height:24px;fill:#f4eafa;transform:translateX(-1px);filter:drop-shadow(0 0 4px #c88bff55)}
.hero-reel-link .play-icon::after{content:'';position:absolute;inset:-5px;border:1px solid #ba7dff66;border-radius:50%;opacity:0;transform:scale(.9);transition:opacity .3s,transform .4s;pointer-events:none}
.hero-reel-link:is(:hover,:focus-visible) .play-icon{border-color:#e2bdff;background:#8c44cc44;box-shadow:0 0 22px #ad68fb66,inset 0 0 14px #ad68fb22;transform:scale(1.04)}
.hero-reel-link:is(:hover,:focus-visible) .play-icon::after{opacity:1;transform:scale(1)}
.hero-reel-link:focus-visible{outline:2px solid #d8a6ff;outline-offset:8px;border-radius:4px}
@media(prefers-reduced-motion:reduce){.hero-reel-link .play-icon,.hero-reel-link .play-icon::after{transition:none;transform:none}}

/* A shared text-link signature across the site: one expanding line and embers. */
a.ume-text-link{position:relative;--link-light:#bd7fff;--link-spark:#dab3ff;text-decoration:none!important}
a.ume-text-link::after{content:'';position:absolute;inset:auto 0 -5px;height:2px;width:auto;background:var(--link-light);box-shadow:0 0 8px var(--link-light),0 0 16px color-mix(in srgb,var(--link-light) 45%,transparent);opacity:0;transform:scaleX(0);transform-origin:center;transition:transform .3s ease,opacity .3s ease;pointer-events:none}
a.ume-text-link:is(:hover,:focus-visible)::after{opacity:1;transform:scaleX(1)}
a.ume-text-link .nav-embers{position:absolute;inset:0;pointer-events:none;overflow:visible;opacity:0;transition:opacity .25s ease}
a.ume-text-link:is(:hover,:focus-visible) .nav-embers{opacity:1}
a.ume-text-link .nav-embers i{bottom:-5px;background:var(--link-spark);box-shadow:0 0 5px var(--link-light),0 0 10px var(--link-light)}
a.ume-text-link:is(:hover,:focus-visible) .nav-embers i{animation-play-state:running}
:is(.home-award,.award-feature,.award-spotlight,.about-award-card) a.ume-text-link{--link-light:#edcb83;--link-spark:#fff0bb}
@media(prefers-reduced-motion:reduce){a.ume-text-link::after{transition:none}a.ume-text-link .nav-embers{display:none}}

/* News follows the same visual rhythm as Work and About. */
.news-hero{min-height:0;padding:184px 0 46px;background:radial-gradient(ellipse at 80% 20%,#9437c923,transparent 65%),#100d15}
.news-hero h1{font-size:clamp(48px,6vw,80px);line-height:1.05;margin-bottom:20px}
.news-hero p{font-size:16px;line-height:1.7;max-width:620px;color:#c9bed2}
.news-navigation{display:flex;flex-wrap:wrap;gap:30px;margin-top:26px;font-size:13px;color:#d2b4ec}
main:has(.news-hero)>.section{padding-block:48px;scroll-margin-top:126px}
.news-section-heading{margin-bottom:26px}
.news-section-heading .eyebrow{margin-bottom:12px}
.news-section-heading h2,.news-guides h2,.news-press h2,.news-closing h2{font-size:clamp(34px,4vw,52px);line-height:1.06;margin:0 0 22px}
.news-feature{display:grid;grid-template-columns:1.35fr 1fr;border:1px solid #bb7bf033;border-radius:12px;overflow:hidden;background:#14101b}
.news-feature-image{display:block;min-width:0;background:#0b090f}
.news-feature-image img{width:100%;height:100%;object-fit:cover;object-position:center;min-height:330px}
.news-feature-copy{align-self:center;padding:36px}
.news-feature-copy .eyebrow,.news-card-copy .eyebrow,.news-guide-card .eyebrow{font-size:11px;line-height:1.7;margin-bottom:14px}
.news-feature h3{font-size:clamp(32px,3.5vw,48px);line-height:1.06;margin-bottom:20px}
.news-feature-copy>p:not(.eyebrow),.news-card-copy>p:not(.eyebrow),.news-guide-card>p:not(.eyebrow),.news-guide-layout>div>p:not(.eyebrow),.news-press-layout>div>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#c0b4cb}
.news-feature .text-link,.news-project-card .text-link,.news-guide-card .text-link,.news-press .text-link{font-size:14px;margin-top:10px}
.news-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:26px}
.news-project-card{overflow:hidden;border:1px solid #bb7bf033;border-radius:10px;background:#131017;transition:border-color .3s,box-shadow .3s}
.news-project-card:focus-within,.news-project-card:hover{border-color:#b97cee88;box-shadow:0 0 28px #a051d71c}
.news-card-image{display:block;aspect-ratio:16/9;background:#0b090f}
.news-card-image img{width:100%;height:100%;object-fit:contain}
.news-card-copy{padding:26px}
.news-card-copy h3,.news-guide-card h3{font-size:30px;line-height:1.1;margin-bottom:14px}
.news-guides{border-block:1px solid #bb7bf022;background:#100d15}
.news-guide-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.news-guide-card{padding:30px;border:1px solid #bb7bf033;border-radius:10px;background:radial-gradient(ellipse at 100% 0,#9c45db19,transparent 70%),#15101d}
.news-press-layout{display:grid;grid-template-columns:260px 1fr;gap:56px;align-items:center;max-width:1000px}
.news-press figure{margin:0;background:#15101d;border:1px solid #bb7bf033;border-radius:10px;overflow:hidden}
.news-press figure img{width:100%;height:290px;object-fit:contain}
.news-press-layout>div>p:not(.eyebrow){max-width:590px}
.news-closing{background:#100d15;border-top:1px solid #bb7bf022}
.news-closing>.container{display:flex;align-items:center;justify-content:space-between;gap:24px}
.news-closing h2{margin-bottom:0}
@media(max-width:900px){.news-hero{padding-top:130px}.news-guide-layout{gap:32px}.news-feature-copy{padding:26px}main:has(.news-hero)>.section{scroll-margin-top:84px}}
@media(max-width:650px){.news-hero{padding:120px 0 30px}.news-hero h1{font-size:46px}.news-hero p{font-size:14px}.news-navigation{gap:22px;font-size:12px}.news-feature,.news-project-grid,.news-guide-layout,.news-press-layout{grid-template-columns:1fr;gap:24px}.news-feature{gap:0}.news-feature-image img{min-height:0;aspect-ratio:16/9;object-fit:contain}.news-feature-copy,.news-card-copy,.news-guide-card{padding:24px}.news-feature-copy h3{font-size:34px}.news-press figure{max-width:240px}.news-press figure img{height:auto}.news-closing>.container{align-items:start;flex-direction:column}.news-closing .eyebrow{margin-bottom:12px}main:has(.news-hero)>.section{padding-block:32px}.news-section-heading h2,.news-guides h2,.news-press h2,.news-closing h2{font-size:36px}}

/* News opens on the real production process, with clear space for its title. */
.news-hero::before{background:linear-gradient(90deg,#100d15ed 0%,#100d15bb 42%,#100d1577 100%),url('assets/production-set-bts.webp') center 30%/cover no-repeat;opacity:1}
@media(max-width:650px){.news-hero::before{background:linear-gradient(90deg,#100d15e6,#100d1599),url('assets/production-set-bts.webp') center/cover no-repeat}}

/* Branded News artwork and slow, atmospheric purple light particles. */
.news-hero{position:relative;isolation:isolate;overflow:hidden}
.news-hero::before{background:linear-gradient(90deg,#100d1588,transparent 70%),url('assets/news-brand-graphic.webp') center/cover no-repeat;opacity:1}
.news-hero>.container{position:relative;z-index:2}
.news-hero-particles{position:absolute;inset:84px 0 0;z-index:1;pointer-events:none;overflow:hidden}
.news-hero-particles i{position:absolute;left:var(--news-x);top:var(--news-y);width:var(--news-size);height:var(--news-size);border-radius:50%;background:#e0baff;box-shadow:0 0 7px #c583ff,0 0 17px #a04ce8;opacity:0;animation:news-particle-rise var(--news-duration) ease-in-out infinite;animation-delay:var(--news-delay);animation-play-state:paused}
.news-hero.news-particles-running .news-hero-particles i{animation-play-state:running}
@keyframes news-particle-rise{0%{opacity:0;transform:translate(0,35px) scale(.4)}20%{opacity:.6}70%{opacity:.35}100%{opacity:0;transform:translate(var(--news-drift),-100px) scale(.15)}}
@media(max-width:650px){.news-hero::before{background:linear-gradient(90deg,#100d1599,#100d1522),url('assets/news-brand-graphic.webp') 65% center/cover no-repeat}.news-hero-particles i:nth-child(2n){display:none}}
@media(prefers-reduced-motion:reduce){.news-hero-particles{display:none}.news-hero-particles i{animation:none}}

/* Slow camera-like drift gives the film-strip artwork a little life. */
.news-hero::before{inset:-3%;transform-origin:75% 50%;animation:news-film-drift 28s ease-in-out infinite alternate;animation-play-state:paused}
.news-hero.news-particles-running::before{animation-play-state:running}
@keyframes news-film-drift{from{transform:scale(1.025) translate3d(-.5%,0,0)}to{transform:scale(1.075) translate3d(.7%,-.8%,0)}}
@media(prefers-reduced-motion:reduce){.news-hero::before{animation:none;transform:none}}

/* The upcoming shop: clear collections and honest product concepts. */
.shop-new-hero{padding:176px 0 48px;min-height:0;background:radial-gradient(ellipse at 80% 40%,#8d39d127,transparent 65%),#100d15}
.shop-new-hero::before{display:none}
.shop-hero-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:72px;align-items:center}
.shop-new-hero h1{font-size:clamp(48px,5.8vw,78px);line-height:1.05;margin-bottom:24px}
.shop-new-hero p:not(.eyebrow){font-size:15px;line-height:1.8;max-width:600px;color:#c6bacf}
.shop-launch-label{display:inline-block;font-size:11px;letter-spacing:.08em;color:#d3b2ed;padding:8px 12px;border:1px solid #bd7fff44;border-radius:20px;background:#a45be714;margin:4px 0 24px}
.shop-collection-nav{display:flex;gap:26px;flex-wrap:wrap;font-size:13px;color:#cfafea}
.shop-brand-display{position:relative;display:grid;place-content:center;gap:24px;min-height:290px;text-align:center}
.shop-brand-display>img{width:290px;position:relative;z-index:1;filter:drop-shadow(0 0 24px #ab6de533)}
.shop-brand-display>span{font:600 12px 'Barlow Condensed';letter-spacing:.24em;color:#b49bc8;position:relative;z-index:1}
.shop-brand-orbit{position:absolute;inset:0;border:1px solid #bd7fff22;border-radius:50%;transform:rotate(-15deg);box-shadow:inset 0 0 55px #a24ed519,0 0 40px #a24ed512}
.shop-brand-orbit::after{content:'';position:absolute;inset:25px -15px;border:1px solid #bd7fff22;border-radius:50%;transform:rotate(30deg)}
main:has(.shop-new-hero)>.section{padding-block:48px;scroll-margin-top:126px}
.shop-collection-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}
.shop-collection-heading .eyebrow{margin-bottom:12px}
.shop-collection-heading h2,.shop-launch-footer h2{font-size:clamp(34px,4vw,52px);line-height:1.07;margin:0}
.shop-collection-heading>p{max-width:340px;font-size:14px;line-height:1.7;color:#b9adc5;margin:0}
.shop-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.shop-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.shop-product{border:1px solid #ba7ef033;border-radius:12px;background:#121016;overflow:hidden;transition:border-color .3s,box-shadow .3s}
.shop-product:hover{border-color:#ba7ef088;box-shadow:0 0 28px #9d45dc1c}
.shop-product-art{position:relative;background:radial-gradient(ellipse at 50% 75%,#8c3fc22e,transparent 65%),linear-gradient(140deg,#201628,#100d16);height:300px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.shop-product-art>svg{height:270px;width:270px;filter:drop-shadow(0 18px 12px #0005);transition:transform .6s ease}
.shop-product:hover .shop-product-art>svg{transform:translateY(-5px)}
.shop-product-shape{fill:#18151f;stroke:#9777b0;stroke-width:1.5;stroke-linejoin:round}
.shop-product-shape .detail{fill:none;stroke:#70547f}
.shop-status{position:absolute;left:16px;top:16px;font-size:10px;letter-spacing:.06em;color:#d5b6ed;border:1px solid #c18aee33;background:#110d18cc;border-radius:20px;padding:7px 10px}
.shop-product-copy{padding:24px}
.shop-product-copy h3{font-size:29px;line-height:1.1;margin:0 0 12px}
.shop-product-copy p{font-size:14px;line-height:1.7;color:#bfb3c9;margin:0}
.shop-product-copy .text-link{font-size:13px;margin-top:18px}
.shop-essentials{background:#100d15;border-block:1px solid #ba7ef01c}
.shop-poster-preview>img{height:250px;width:auto;max-width:80%;object-fit:contain;transform:rotate(-5deg);box-shadow:8px 15px 22px #0007}
.shop-preview-note{font-size:12px;line-height:1.8;color:#a99bb7;max-width:730px;margin:24px 0 0}
.shop-launch-footer{background:#100d15;border-top:1px solid #ba7ef022}
.shop-launch-footer>.container{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:56px}
.shop-launch-footer p:not(.eyebrow){font-size:14px;line-height:1.8;color:#bfb3c9;margin:20px 0 0}
.shop-launch-actions{display:flex;flex-direction:column;align-items:start;gap:24px;justify-self:end}
@media(max-width:900px){.shop-new-hero{padding-top:130px}.shop-hero-layout{gap:32px}.shop-brand-display>img{width:240px}.shop-brand-display{min-height:240px}.shop-product-grid{gap:16px}.shop-product-art>svg{width:220px;height:220px}.shop-product-art{height:260px}main:has(.shop-new-hero)>.section{scroll-margin-top:84px}}
@media(max-width:650px){.shop-new-hero{padding:120px 0 32px}.shop-hero-layout,.shop-product-grid,.shop-grid-two,.shop-launch-footer>.container{grid-template-columns:1fr;gap:22px}.shop-new-hero h1{font-size:48px}.shop-brand-display{min-height:190px;max-width:300px;width:100%;margin:12px auto}.shop-brand-display>img{width:220px}.shop-collection-nav{font-size:12px;gap:22px}.shop-collection-heading{align-items:start;flex-direction:column;gap:14px}.shop-collection-heading h2,.shop-launch-footer h2{font-size:36px}.shop-product-art{height:280px}.shop-product-art>svg{width:250px;height:250px}.shop-product-copy{padding:22px}.shop-launch-actions{justify-self:start;margin-top:6px}.shop-launch-actions .btn{font-size:14px;gap:16px}main:has(.shop-new-hero)>.section{padding-block:32px}}
@media(prefers-reduced-motion:reduce){.shop-product-art>svg{transition:none}.shop-product:hover .shop-product-art>svg{transform:none}}

/* Guided, email-first creative briefing. */
.brief-hero{padding:176px 0 44px;min-height:0;background:#100d15}
.brief-hero::before{background:linear-gradient(90deg,#100d15ee,#100d1599),url('assets/production-set-bts.webp') center 30%/cover;opacity:1}
.brief-hero h1{font-size:clamp(44px,5vw,70px);line-height:1.05;margin-bottom:24px}
.brief-hero p:not(.eyebrow){max-width:620px;color:#d2c6dd;font-size:15px;line-height:1.8}
.brief-hero .text-link{font-size:13px;max-width:100%;overflow-wrap:anywhere}
.brief-section{padding:48px 0}
.brief-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:start}
.brief-intro h2{font-size:44px;line-height:1.05}
.brief-intro p,.brief-intro li{font-size:14px;line-height:1.8;color:#bfb2ca}
.brief-intro ul{padding-left:20px;margin:24px 0}
#project-brief-form{padding:32px;border:1px solid #ba7cef55;border-radius:12px;background:radial-gradient(ellipse at 90% 0,#9841d91c,transparent 60%),#141019;box-shadow:0 0 28px #9d4bd912;min-width:0}
.brief-progress>span{font-size:12px;color:#ceb0e9;display:block;margin-bottom:12px}
.brief-progress progress{appearance:none;width:100%;height:4px;border:0;background:#37233f;border-radius:4px;display:block;margin-bottom:28px}
.brief-progress progress::-webkit-progress-bar{background:#37233f;border-radius:4px}
.brief-progress progress::-webkit-progress-value{background:linear-gradient(90deg,#9850e0,#d0a2ff);border-radius:4px;box-shadow:0 0 10px #ae65ef55}
.brief-step{border:0;padding:0;margin:0;min-width:0}
.brief-step[hidden],.brief-controls [hidden]{display:none!important}
.brief-step h2{font-size:34px;line-height:1.1;margin-bottom:14px;outline:none}
.brief-help,.brief-direction-hint{font-size:14px;line-height:1.7;color:#c6b9d2;margin-bottom:26px}
.brief-direction-hint{padding:14px;border-left:2px solid #ac68e9;background:#a354d511}
.brief-step>label,.brief-step .field-pair>label{display:flex;flex-direction:column;gap:9px;font-size:13px;color:#e5dbee;margin-bottom:22px;line-height:1.6}
.brief-step input:not([type=checkbox]),.brief-step select,.brief-step textarea{width:100%;border:1px solid #ba8be144;border-radius:5px;background:#0d0b11;color:#eee7f6;padding:13px;font:14px 'DM Sans';min-width:0;outline-offset:3px;color-scheme:dark}
.brief-step input:focus-visible,.brief-step select:focus-visible,.brief-step textarea:focus-visible{outline:2px solid #be82f2}
.brief-step small{font-size:12px;font-weight:400;color:#ad9fbb;line-height:1.65}
.brief-step textarea{resize:vertical;min-height:120px}
.brief-choices{padding:0;margin:0 0 26px;border:0}
.brief-choices legend{font-size:13px;color:#e5dbee;margin-bottom:12px}
.brief-choices>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.brief-choices label{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid #ba8be133;border-radius:5px;font-size:12px;line-height:1.6;cursor:pointer}
.brief-choices label:has(input:checked){background:#9f49d522;border-color:#be82f2}
.brief-choices input,.brief-consent input{accent-color:#b56dec;flex:none;width:16px;height:16px}
.brief-step label.brief-consent{display:flex;flex-direction:row;align-items:start;font-size:12px;gap:10px}
.brief-controls{display:flex;gap:14px;justify-content:space-between;margin-top:26px}
.brief-controls .btn,.brief-send-options .btn{font-size:14px;gap:14px;white-space:normal;cursor:pointer}
#brief-review{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.8 'DM Sans';color:#d0c4db;max-height:440px;overflow:auto;padding:18px;background:#0d0b11;border:1px solid #ba8be133;border-radius:6px}
.brief-send-options{display:grid;justify-items:start;gap:12px;margin-top:24px}
.brief-send-options p,#brief-status{font-size:12px;line-height:1.8;color:#bcadc9;overflow-wrap:anywhere}
.brief-download{background:none;border:0;border-bottom:1px solid #ac68e966;color:#d3b2ed;padding:6px 0;cursor:pointer;font-size:13px}
@media(max-width:900px){.brief-hero{padding-top:130px}.brief-layout{grid-template-columns:1fr;gap:28px}.brief-intro{max-width:700px}.brief-intro ul{display:none}}
@media(max-width:650px){.brief-hero{padding:120px 0 32px}.brief-hero h1{font-size:44px}.brief-section{padding:32px 0}.brief-intro h2{font-size:34px}#project-brief-form{padding:22px}.brief-step h2{font-size:29px}.brief-choices>div{grid-template-columns:1fr}.brief-step .field-pair{display:block}.brief-controls .btn{padding:13px 16px}.brief-send-options .btn{width:100%}.brief-step input:not([type=checkbox]),.brief-step select,.brief-step textarea{font-size:16px}}
.package-breakdown h3{font-size:22px;margin:24px 0 12px;color:#d6b7f0}
.package-breakdown ul{padding-left:18px;margin:0 0 24px}
.package-breakdown li{font-size:14px;line-height:1.8;color:#cec1d9;margin-bottom:12px}
.portfolio-project-notes{border-top:1px solid #b67bf02c;padding-top:12px;margin-top:16px}
.portfolio-project-notes summary{cursor:pointer;color:#c6a4e3;font-size:12px;list-style-position:inside}
.portfolio-project-notes p{font-size:13px!important;line-height:1.8;color:#bfb1ca;margin:14px 0 0}
.footer-email-note{font-size:12px;line-height:1.7;color:#ad9bbd}
.brief-send-options [hidden]{display:none!important}
.brief-step h2{scroll-margin-top:150px}
@media(max-width:900px){.brief-step h2{scroll-margin-top:106px}}

/* Phone QA: keep every menu item reachable on short screens and inputs readable. */
@media(max-width:900px){
 .site-header #main-nav{max-height:calc(100vh - 84px);max-height:calc(100dvh - 84px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
}
@media(max-width:650px){
 .inquiry-form input:not([type=checkbox]):not([type=radio]),.inquiry-form select,.inquiry-form textarea{font-size:16px}
}

/* Safari's native select appearance otherwise compresses the padded brief controls. */
.brief-step select,.inquiry-form select{
 -webkit-appearance:none;appearance:none;min-height:48px;padding-right:42px;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23d4b0fa' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-position:right 14px center;background-size:16px;
}

/* iOS date controls must shrink within the project brief's padded column. */
.brief-step>label,.brief-step .field-pair>label{min-width:0;max-width:100%}
.brief-step input[type=date]{-webkit-appearance:none;appearance:none;display:block;box-sizing:border-box;min-width:0;max-width:100%;min-height:48px}
.brief-step input[type=date]::-webkit-date-and-time-value{min-width:0;min-height:1.5em;text-align:left}

/* Keep each new brief step visible beneath the sticky header, including iOS Safari. */
#project-brief-form{scroll-margin-top:160px}
@media(max-width:900px){#project-brief-form{scroll-margin-top:104px}}

/* Regional service details: compact and readable across devices. */
.service-area-note{padding:30px 0;border-top:1px solid #a26bda30;border-bottom:1px solid #a26bda30;background:linear-gradient(115deg,#171120,#0d0c12)}
.service-area-note .container{display:flex;align-items:center;justify-content:space-between;gap:28px}
.service-area-note p{margin:0;max-width:850px;color:#bdb7c8;line-height:1.7}
.service-area-note strong{color:#f2edf7}
.service-area-note a{flex-shrink:0}
.service-area-section{border-top:1px solid #a26bda30;background:radial-gradient(ellipse at 10% 30%,#71379c14,transparent 65%)}
.service-area-heading{max-width:900px}
.service-area-heading h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.05;margin-bottom:22px}
.service-area-heading>p:last-child,.service-area-regions p{color:#bdb7c8;line-height:1.8}
.service-area-regions{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;margin-top:30px}
.service-area-regions h3{font-size:1.15rem;margin:0 0 10px;color:#eee7f6}
.service-area-regions p{margin:0}
.service-area-regions .service-area-travel{margin-top:14px;font-size:.9rem}
.service-area-links{display:flex;flex-wrap:wrap;gap:18px 32px;margin-top:28px}
@media(max-width:700px){.service-area-note .container{display:block}.service-area-note a{display:inline-block;margin-top:14px}.service-area-regions{grid-template-columns:1fr;gap:24px}.service-area-links{flex-direction:column;align-items:flex-start;gap:18px}}

/* Project stories and portfolio browsing — purple, gold, and existing motion. */
.portfolio-stories{background:radial-gradient(ellipse at 80% 0,#582a7c30,transparent 65%),#0d0a13;border-bottom:1px solid #b67bf026}
.project-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px}
.project-story-card{display:flex;flex-direction:column;position:relative;overflow:hidden;border:1px solid #ad7ce640;border-radius:10px;background:linear-gradient(145deg,#21162b,#100c17);transition:transform .35s,border-color .35s,box-shadow .35s;text-decoration:none!important}
.project-story-card:hover,.project-story-card:focus-visible{transform:translateY(-5px);border-color:#d0ad5d;box-shadow:0 0 28px #a75ae82e}
.project-story-image{overflow:hidden;aspect-ratio:16/9;background:#17111f}
.project-story-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.project-story-card:hover img{transform:scale(1.035)}
.project-story-copy{padding:24px;display:flex;flex-direction:column;flex:1;gap:12px}
.project-story-copy .eyebrow{color:#d4b875;margin:0;font-size:10px}
.project-story-copy h3{font:600 30px/1.1 'Barlow Condensed',sans-serif;margin:0;color:#fff}
.project-story-copy>p:not(.eyebrow){font-size:14px;line-height:1.75;color:#c9bdd2;margin:0}
.project-story-scope{font-size:12px;color:#b798d1;border-top:1px solid #b27cdb30;padding-top:15px;margin-top:auto;line-height:1.7}
.project-story-copy strong{color:#e0c47f;font-size:12px;letter-spacing:.04em;margin-top:6px}
.portfolio-jump,.case-section-nav{display:flex;flex-wrap:wrap;gap:12px 26px;margin-bottom:30px;font-size:13px;color:#d6b970}
.portfolio-format-controls{padding-top:18px;margin-bottom:24px}
.portfolio-format-controls>.eyebrow{display:block;margin-bottom:14px;font-size:10px}
.portfolio-format-controls .filter-bar button{border-radius:30px}
.portfolio-format-controls button[aria-pressed=true]{border-color:#d5b66b;background:#382b1b;color:#f6dc9e}
.portfolio-empty{padding:28px;border:1px solid #ac7bdd55;border-radius:8px;color:#c9bdd2;background:#181020}
.portfolio-empty h3{font-size:28px;color:white}
.project-overview{padding:32px;margin:30px 0 48px;border:1px solid #b47ce147;border-radius:12px;background:radial-gradient(ellipse at 100% 0,#7d399c26,transparent 70%),#130e1b}
.project-overview h2{font-size:clamp(30px,4vw,44px);margin:12px 0 28px;line-height:1.1}
.project-facts{display:grid;grid-template-columns:1fr 2fr;gap:22px;border-block:1px solid #b47ce130;padding:22px 0;margin:0 0 30px}
.project-facts dt,.project-plan>div>span{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#d7b96f}
.project-facts dd{font-size:14px;color:#eee3f5;margin:9px 0 0;line-height:1.6}
.project-plan{display:grid;grid-template-columns:1fr;gap:26px}
.project-plan h3{font:600 27px/1.2 'Barlow Condensed',sans-serif;margin:10px 0}
.project-plan p,.project-plan li{font-size:14px;line-height:1.8;color:#c9bdd2}
.project-plan p{margin:0}.project-plan ul{padding-left:18px;margin:0}
.project-attribution{font-size:12px!important;color:#bda9ca!important;line-height:1.7;margin:26px 0 0!important}
.project-case-study .article-body{max-width:1000px}
.project-case-study :is(#project-overview,#project-work,#project-results),#browse-work,#project-stories{scroll-margin-top:180px}
.related-projects{border-top:1px solid #bd85e530;background:radial-gradient(ellipse at 0 100%,#60277c25,transparent 70%)}
.related-projects h2{font-size:clamp(32px,4vw,50px)}
.related-projects .project-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
[hidden].portfolio-art,[hidden].portfolio-watch,[hidden].portfolio-photo-section,[hidden].portfolio-photo-card,[hidden].portfolio-empty,[hidden].portfolio-collection-heading,[hidden].comparison-section{display:none!important}
@media(max-width:900px){.project-story-grid{grid-template-columns:1fr}.project-story-card{display:grid;grid-template-columns:1fr 1fr}.related-projects .project-story-grid{grid-template-columns:1fr}}
@media(max-width:650px){.project-story-card{display:flex}.project-story-copy{padding:22px}.project-overview{padding:22px}.project-facts{grid-template-columns:1fr}.portfolio-format-controls .filter-bar{display:flex;gap:8px}.portfolio-format-controls .filter-bar button{padding:11px 15px}.project-case-study :is(#project-overview,#project-work,#project-results),#browse-work,#project-stories{scroll-margin-top:120px}}
@media(prefers-reduced-motion:reduce){.project-story-card,.project-story-image img{transition:none}.project-story-card:hover{transform:none}}
body.motion-paused .project-story-card,body.motion-paused .project-story-image img{transition:none}
.project-plan{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.project-highlight{margin-top:30px;padding-top:22px;border-top:1px solid #c4a35e44}
.project-highlight>strong{font:600 26px/1.2 'Barlow Condensed',sans-serif;color:#e0c47f}
.project-highlight .project-attribution{margin-top:10px!important}
@media(max-width:800px){.project-plan{grid-template-columns:1fr}}
