@import url('https://fonts.googleapis.com/css2?family=Unbounded:wght@700;800;900&family=Manrope:wght@400;500;600;700&display=swap');
:root{--bg:#190c18;--ink:#f9f2f7;--muted:#bea9b9;--accent:#f04bba;--line:#513349;color-scheme:dark;font-family:Manrope,Arial,sans-serif;background:var(--bg);color:var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:24px}body{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.skip-link{position:fixed;z-index:20;top:10px;left:12px;padding:12px;background:var(--bg);transform:translateY(-160%)}.skip-link:focus{transform:none}
.sequence{height:650svh;position:relative}.stage{height:100svh;position:sticky;top:0;padding:0 3.3vw;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.masthead{height:88px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.wordmark{font-family:Unbounded,'Arial Black',sans-serif;font-weight:900;font-size:25px;letter-spacing:-2px;display:flex;align-items:center;gap:23px}.wordmark span{font-family:Manrope,Arial,sans-serif;font-size:10px;font-weight:600;letter-spacing:1.8px}.nav-link{font-size:14px}.nav-link span{font-size:11px;color:var(--muted);margin-left:18px}.film{position:relative;min-height:0;flex:1;width:100%;max-height:calc(100vw * .525);background:#eee;overflow:hidden;border-radius:clamp(28px,3.5vw,50px)}.poster,canvas{position:absolute;width:100%;height:100%;inset:0;object-fit:contain}.film-corner{position:absolute;bottom:25px;left:27px;font-size:10px;line-height:1.7;letter-spacing:1.8px;font-weight:700;color:#30202b;mix-blend-mode:multiply}.transport{height:73px;flex-shrink:0;display:flex;align-items:center;gap:35px;font-size:10px;font-weight:600;letter-spacing:1.4px}.scroll-label{display:flex;align-items:center;gap:16px;white-space:nowrap}.scroll-icon{font-size:20px;color:var(--accent)}.progress{height:2px;flex:1;background:var(--line)}.progress span{display:block;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}.counter{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.load-status{position:absolute;bottom:1px;right:3.3vw;margin:0;font-size:11px;color:var(--muted)}
.portfolio{padding:75px 6vw 0;min-height:100svh;overflow:hidden;background:radial-gradient(ellipse at 95% 55%,#3b102f 0,transparent 57%),var(--bg)}.section-top{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:22px;font-size:11px;letter-spacing:1.8px;color:var(--muted)}h1{font-family:Unbounded,'Arial Black',Arial,sans-serif;font-size:clamp(20px,7.3vw,140px);font-weight:900;line-height:1.04;letter-spacing:-.045em;white-space:nowrap;margin:85px 0 45px}.brand-period{color:var(--accent)}.portfolio-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:70px}h2{font-family:Unbounded,'Arial Black',sans-serif;font-size:clamp(25px,4vw,60px);letter-spacing:-.055em;margin:0;font-weight:700}.asterisk{display:inline-block;color:var(--accent);margin-left:25px;font-size:1.2em;vertical-align:middle}.portfolio-bottom p{font-size:16px;line-height:1.8;color:var(--muted);margin:0}footer{border-top:1px solid var(--line);padding:25px 0;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:1.3px;color:var(--muted)}
@media(min-aspect-ratio:19/10){.film{flex:none;height:calc(100svh - 150px);width:calc((100svh - 150px)*16/9);align-self:center}}
@media(max-width:700px){.stage{padding:0 5vw}.masthead{height:75px}.wordmark{font-size:22px}.wordmark span{display:none}.film{flex:none;aspect-ratio:16/10;max-height:none}.film-corner{left:12px;bottom:12px;font-size:7px;letter-spacing:1px}.transport{gap:15px;height:65px;font-size:8px;letter-spacing:1px}.scroll-label{gap:8px}.counter{font-size:8px}.portfolio{padding:55px 6vw 0;min-height:auto}.section-top{font-size:9px;letter-spacing:1px}.portfolio-bottom{align-items:flex-start;flex-direction:column;padding-bottom:65px}h1{margin:65px 0 35px;font-size:7.3vw}footer{font-size:8px;letter-spacing:.8px}.load-status{right:5vw;bottom:15px}}
@media(prefers-reduced-motion:reduce){.sequence{height:100svh}.stage{position:relative}}
/* Pinned advertising showcase */
.ad-showcase{height:650svh;background:#dce0e9;color:#23131f;position:relative}.ad-stage{height:100svh;position:sticky;top:0;overflow:hidden;isolation:isolate}.ad-heading{position:absolute;z-index:3;top:6vh;left:5vw;right:5vw;text-align:center}.ad-eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 20px}.ad-heading h2{font-size:clamp(25px,3.2vw,52px);line-height:1.2;letter-spacing:-.05em}.ad-heading h2 span{color:#9e1d72}.heart-visual{position:absolute;left:50%;top:55%;transform:translate(-50%,-50%);width:76vw;height:65vh;pointer-events:none;z-index:0;mask-image:linear-gradient(to right,transparent,#000 20%,#000 80%,transparent)}.heart-visual img,.heart-visual canvas{position:absolute;width:100%;height:100%;object-fit:contain;inset:0}.ad-card{position:absolute;top:50%;width:29vw;max-width:470px;margin-top:-95px;z-index:2;opacity:0;background:#190c18;color:#faf3f8;border:1px solid #ffffff35;border-radius:18px;padding:16px;box-shadow:0 22px 70px #29132620;will-change:transform,opacity}.ad-left{left:4vw}.ad-right{right:4vw}.ad-card[data-ad="0"]{opacity:1}.ad-card-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.6px;color:#dcb5d0;margin:0 0 12px}.ad-card video{display:block;width:100%;height:auto;aspect-ratio:16/9;max-height:35vh;object-fit:contain;background:#090709;border-radius:9px}.ad-card-bottom{padding:16px 2px 2px}.ad-card h3{font-family:Unbounded,Arial,sans-serif;font-size:clamp(15px,1.3vw,22px);margin:0 0 7px;letter-spacing:-.04em}.ad-card p{font-size:13px;color:#c5adc0;margin:0}.ad-footer{position:absolute;bottom:4vh;left:5vw;right:5vw;display:flex;align-items:center;gap:25px;font-size:10px;letter-spacing:1.3px;z-index:4}.ad-track{flex:1;height:2px;background:#27122226}.ad-track i{display:block;background:#a42078;height:100%;transform:scaleX(0);transform-origin:left}.ad-count{font-variant-numeric:tabular-nums}.heart-status{position:absolute;bottom:1vh;width:100%;text-align:center;font-size:12px;color:#6a3c5c}
@media(max-width:700px){.ad-heading{top:4vh}.ad-eyebrow{font-size:9px;margin-bottom:12px;letter-spacing:1.2px}.ad-heading h2{font-size:clamp(21px,5.6vw,34px)}.heart-visual{top:36%;height:37vh;width:150vw;max-width:none}.ad-card{top:57%;margin-top:0;width:78vw;padding:12px;border-radius:15px}.ad-left{left:4vw}.ad-right{right:4vw}.ad-card video{max-height:20vh}.ad-card-top{font-size:9px;margin-bottom:8px}.ad-card-bottom{padding-top:10px}.ad-card h3{font-size:15px}.ad-card p{font-size:12px}.ad-footer{bottom:3vh;font-size:8px;gap:14px}.ad-footer>span:first-child{max-width:140px}.ad-card-bottom p{line-height:1.4}}
@media(max-height:600px) and (min-width:701px){.ad-heading{top:3vh}.ad-eyebrow{margin-bottom:10px}.ad-heading h2{font-size:27px}.ad-card{margin-top:-65px}.ad-card video{max-height:29vh}.ad-card-bottom{padding-top:9px}.ad-footer{bottom:3vh}}
@media(prefers-reduced-motion:reduce){.ad-showcase{height:auto}.ad-stage{height:auto;position:relative;padding:55px 5vw}.ad-heading{position:relative;top:auto;left:auto;right:auto}.heart-visual{position:relative;left:50%;top:auto;transform:translateX(-50%);width:90vw;height:40vh}.ad-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.ad-card{position:relative;top:auto;left:auto;right:auto;margin:0;width:100%;max-width:none;opacity:1!important;transform:none!important}.ad-card video{max-height:none}.ad-footer,.heart-status{display:none}}
@media(prefers-reduced-motion:reduce) and (max-width:700px){.ad-cards{grid-template-columns:1fr}}
/* Animated scroll gesture and luminous progress */
.scroll-gesture{display:block;width:42px;height:48px;flex-shrink:0;filter:drop-shadow(0 0 5px #f04bba35)}
.progress{height:3px;border-radius:20px;background:#74385255;box-shadow:0 0 6px #f04bba18;overflow:visible}
.progress span{border-radius:20px;background:linear-gradient(90deg,#be247e,#f04bba 65%,#ffe0f5);box-shadow:0 0 5px #ff8cdb,0 0 13px #f04bba90,0 0 23px #ed35ad55}
@media(max-width:700px){.scroll-gesture{width:32px;height:38px}.transport{gap:12px}.scroll-label{gap:7px}}
/* Larger alternating films, with the heart on the opposite side. */
.ad-stage{--show-height:clamp(180px,46svh,620px)}
.heart-visual{top:57%;width:calc(var(--show-height)*1.98);height:calc(var(--show-height)*1.12);transition:left .7s cubic-bezier(.22,.61,.36,1);mask-image:linear-gradient(to right,transparent,#000 25%,#000 75%,transparent)}
.ad-card{top:57%;margin:0;width:44vw;max-width:none;transform:translateY(-50%);padding:14px}
.ad-card video{height:var(--show-height);max-height:none;aspect-ratio:auto;object-fit:fill}
.ad-left{left:4vw}.ad-right{right:4vw}
.ad-sound{position:absolute;z-index:5;bottom:8vh;left:50%;transform:translateX(-50%);border:1px solid #f04bba;background:#190c18;color:#fff;border-radius:100px;padding:12px 22px;font:600 13px Manrope,Arial;cursor:pointer;box-shadow:0 0 24px #f04bba35}
.ad-sound[hidden]{display:none}
.landing-intro{padding:90px 6vw 65px;background:#190c18;text-align:center}
.landing-intro>p{font-size:12px;letter-spacing:2px;color:var(--muted);line-height:1.7}
.landing-intro h2{font-size:clamp(28px,6vw,90px);margin:25px 0}.landing-intro h2 span{color:var(--accent)}
.landing-sequence{height:600svh;background:#050405;position:relative}
.landing-stage{position:sticky;top:0;height:100svh;padding:30px 3.3vw 0;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.landing-film{position:relative;flex:1;min-height:0;width:100%;max-height:calc(93.4vw * 9 / 16);background:#000;border-radius:clamp(24px,3vw,48px);overflow:hidden}
.landing-film img,.landing-film canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.landing-transport{height:70px;flex-shrink:0;display:flex;align-items:center;gap:30px;font-size:10px;letter-spacing:1.4px;color:#bea9b9}
.landing-track{flex:1;height:3px;background:#513349}.landing-track i{display:block;height:100%;background:#f04bba;box-shadow:0 0 14px #f04bba;transform:scaleX(0);transform-origin:left}
.landing-count{font-variant-numeric:tabular-nums;white-space:nowrap}.landing-status{position:absolute;bottom:0;right:3vw;font-size:11px;color:#bea9b9}
@media(max-width:700px){.ad-stage{--show-height:clamp(150px,29svh,300px)}.heart-visual{top:54%;width:calc(var(--show-height)*1.98);height:calc(var(--show-height)*1.12)}.ad-card{top:54%;width:46vw;padding:9px;border-radius:14px}.ad-left{left:2vw}.ad-right{right:2vw}.ad-card-top{font-size:7px;letter-spacing:.6px;gap:4px}.ad-card h3{font-size:clamp(10px,2.6vw,15px)}.ad-card p{font-size:10px}.ad-heading h2{font-size:24px}.ad-sound{bottom:12vh}.landing-intro{padding:60px 5vw 40px}.landing-intro>p{font-size:10px;letter-spacing:1px}.landing-stage{padding:20px 4vw 0}.landing-film{flex:none;aspect-ratio:16/9;max-height:none}.landing-transport{font-size:8px;gap:12px}}
@media(max-height:600px) and (min-width:701px){.ad-stage{--show-height:36svh}.ad-card{margin:0}.ad-card video{max-height:none}.ad-card-bottom{padding-top:8px}.ad-heading h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.heart-visual{left:50%!important;top:auto;transition:none}.ad-card{top:auto;width:100%;transform:none!important}.ad-card video{height:auto;aspect-ratio:16/9;object-fit:contain}.ad-left,.ad-right{left:auto;right:auto}.landing-sequence{height:100svh}.landing-stage{position:relative}}
.music-section{padding:90px 5vw;background:#100910}.music-section header{text-align:center;margin-bottom:45px}.music-section header p{color:var(--muted);font-size:12px;letter-spacing:1.5px;line-height:1.8}.music-section h2{font-size:clamp(26px,4.5vw,70px);margin:22px 0}.music-section h2 span{color:var(--accent)}.music-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.music-card{min-width:0;background:#1c101b;border:1px solid #513349;border-radius:24px;overflow:hidden;padding-bottom:20px;transition:border-color .2s}.music-card:hover,.music-card:focus-within{border-color:#f04bba}.music-screen{aspect-ratio:16/9;background:#000}.music-screen iframe,.music-screen>div{width:100%;height:100%;border:0;display:block}.music-meta{display:flex;align-items:center;gap:12px;padding:22px 20px 8px;flex-wrap:wrap}.music-meta h3{font:700 15px Unbounded,Arial;margin:0 auto 0 0}.music-meta button{border:1px solid #704461;background:transparent;color:#fff;border-radius:30px;padding:9px 13px;cursor:pointer}.music-meta button:focus-visible{outline:2px solid #f04bba;outline-offset:3px}.music-status{font-size:12px;color:#bea9b9;margin:8px 20px}.music-link{display:inline-block;margin:8px 20px 0;font-size:12px;color:#e7b4d7}@media(max-width:700px){.music-section{padding:60px 5vw}.music-grid{grid-template-columns:1fr}.music-meta{padding:18px 14px 8px;gap:8px}.music-meta h3{font-size:12px}.music-screen{min-height:200px}}
.construction-preview{padding:65px 5vw 85px;background:#100910}.construction-card{max-width:1300px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;border:1px solid #513349;border-radius:28px;overflow:hidden;background:#21121f}.construction-card>img{width:100%;height:100%;min-height:330px;object-fit:cover}.construction-copy{padding:clamp(25px,4vw,65px);align-self:center}.construction-copy>span{color:#cda5c3;font-size:10px;letter-spacing:1.7px}.construction-copy h2{font-size:clamp(24px,2.8vw,44px);line-height:1.25;margin:24px 0}.construction-copy p{color:#bea9b9;line-height:1.8}.construction-link{display:inline-flex;align-items:center;gap:36px;background:#f04bba;color:#190c18;border-radius:100px;padding:17px 25px;font-weight:800;margin-top:18px}.construction-link:hover{background:#ff8bd8}@media(max-width:700px){.construction-card{grid-template-columns:1fr}.construction-card>img{min-height:0;aspect-ratio:16/9}.construction-copy{padding:28px}}
/* Centered rounded animation card, matching the main hero. */
.landing-sequence{background:var(--bg)}
.landing-stage{padding:30px 3.3vw 0;background:var(--bg)}
.landing-film{flex:none;width:min(100%,calc((100svh - 110px)*16/9));height:auto;aspect-ratio:16/9;max-height:none;align-self:center;border-radius:clamp(28px,3.5vw,50px);overflow:hidden}
.landing-film img{object-fit:cover}
.landing-transport{margin:0;width:100%}
@media(max-width:700px){.landing-stage{padding:20px 5vw 0}.landing-film{border-radius:28px;width:min(100%,calc((100svh - 100px)*16/9))}}
.portfolio-bottom .contact-heading{font-size:clamp(24px,3vw,46px);line-height:1.2;max-width:760px}.contact-heading .asterisk{margin-left:14px}
.contact-invite{display:grid;grid-template-columns:1fr 1.1fr;gap:5vw;align-items:center;margin:0 0 70px;border:1px solid #513349;border-radius:32px;overflow:hidden;background:#190c18}.contact-invite>img{display:block;width:100%;height:560px;object-fit:contain}.contact-invite-copy{padding:35px 45px 35px 0}.contact-invite-copy>span,.contact-kicker{font-size:10px;letter-spacing:1.8px;color:#e0a0cd}.contact-invite h3{font:700 clamp(26px,3.2vw,49px)/1.2 Unbounded,Arial;letter-spacing:-.04em;margin:24px 0}.contact-invite p{font-size:15px;line-height:1.8;color:#bea9b9;max-width:430px}.contact-cta{display:inline-block;border:0;border-radius:999px;background:#f04bba;color:#190c18;font:800 13px Manrope,Arial;padding:18px 25px;cursor:pointer;margin-top:15px}.contact-cta:hover{background:#ff87d6}.contact-email{display:block;font-size:13px;color:#bea9b9;margin-top:22px;overflow-wrap:anywhere}.contact-cta:focus-visible,.contact-close:focus-visible{outline:2px solid #fff;outline-offset:5px}#contact-dialog{width:calc(100% - 30px);max-width:570px;max-height:90svh;overflow:auto;border:1px solid #704461;border-radius:28px;padding:34px;background:#21111f;color:#faf3f8}#contact-dialog::backdrop{background:#0c050cbb;backdrop-filter:blur(5px)}.contact-close{position:absolute;right:17px;top:12px;border:0;background:none;color:#fff;font-size:28px;cursor:pointer}#contact-dialog h2{font-size:30px;margin:15px 0 25px}#contact-form{display:grid;gap:14px}#contact-form label{display:grid;gap:8px;font-size:12px;color:#dec6d7}#contact-form input,#contact-form select,#contact-form textarea{width:100%;border:1px solid #644359;border-radius:12px;background:#190c18;color:#fff;padding:12px;font:14px Manrope,Arial}#contact-form textarea{resize:vertical}#contact-form :is(input,select,textarea):focus{outline:2px solid #f04bba;outline-offset:2px}.contact-note,#contact-feedback{font-size:11px;line-height:1.7;color:#bea9b9;margin:0}#contact-gmail-fallback{font-size:12px;text-decoration:underline}#contact-form .contact-cta{margin:0}@media(max-width:700px){.contact-invite{grid-template-columns:1fr;gap:0;border-radius:24px}.contact-invite>img{height:auto;max-height:450px;object-position:top}.contact-invite-copy{padding:28px}.contact-invite h3{font-size:28px}.contact-cta{font-size:12px;padding:16px 20px}#contact-dialog{padding:28px 22px}}
/* Compact sections and consistent visual separators. */
.ad-showcase,.landing-intro,.music-section{border-top:1px solid #f04bba}
.landing-intro{padding:42px 6vw 20px}
.landing-intro h2{margin:18px 0}
.landing-stage{justify-content:flex-start;padding-top:12px}
.construction-preview{padding:28px 5vw}
.music-section{padding:36px 5vw 50px}
.music-section header{margin-bottom:28px}
.contact-invite{align-items:start}
.contact-invite>img{height:auto;max-height:none;object-fit:contain;align-self:start;border-radius:28px}
.contact-invite-copy{padding-top:32px;padding-bottom:36px}
.ad-footer .scroll-label{max-width:none;flex-shrink:0;gap:8px}
@media(max-width:700px){.landing-intro{padding:30px 5vw 12px}.landing-stage{padding-top:8px}.construction-preview{padding:22px 5vw}.music-section{padding:28px 5vw 36px}.contact-invite>img{height:auto;max-height:none;border-radius:24px}.ad-footer{gap:10px}.ad-footer .scroll-label{font-size:7px;letter-spacing:.5px;max-width:160px}.landing-transport .scroll-label{gap:6px}}
