
:root{--ink:#09090d;--paper:#f5f1ec;--pink:#ec0060;--blue:#00d8ef;--gold:#f4b323;--line:rgba(255,255,255,.18)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--paper);font-family:Inter,Arial,sans-serif;overflow-x:hidden}
button,a{font:inherit}
a{color:inherit;text-decoration:none}
.portal{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:#050508;transition:opacity .9s ease,visibility .9s}
.portal[hidden]{display:none}
.portal.gone{opacity:0;visibility:hidden;pointer-events:none}
.portal-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.portal-shade{position:absolute;inset:0;background:radial-gradient(circle at 50% 44%,transparent 0 20%,rgba(0,0,0,.16) 50%,rgba(0,0,0,.78) 100%),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.5))}
.portal-copy{position:relative;z-index:2;text-align:center;margin-top:44vh}
.eyebrow{margin:0 0 1rem;font-size:.78rem;font-weight:700;letter-spacing:.22em}
.enter{min-width:10rem;padding:1rem 2.4rem;border:2px solid white;background:var(--pink);backdrop-filter:blur(9px);color:white;font-weight:700;letter-spacing:.3em;cursor:pointer;box-shadow:0 0 30px rgba(236,0,96,.48);transition:.25s}
.enter:hover,.enter:focus-visible{background:var(--pink);border-color:white;box-shadow:0 0 38px rgba(236,0,96,.6);transform:scale(1.04)}
.skip{position:absolute;right:1.3rem;bottom:calc(1.3rem + env(safe-area-inset-bottom));z-index:2;border:0;background:none;color:rgba(255,255,255,.7);font-size:.85rem;text-decoration:underline;cursor:pointer}
.world{opacity:1;transition:opacity 1s ease}
.world.ready{opacity:1}
.nav{position:relative;z-index:4;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 4vw;border-bottom:1px solid var(--line);background:#050508}
.wordmark{font-family:'Archivo Black',Impact,sans-serif;font-size:1.2rem;transform:skew(-6deg)}
.nav>.wordmark{padding:.65rem .85rem;background:rgba(5,5,8,.82);box-shadow:0 0 24px rgba(0,0,0,.85);backdrop-filter:blur(4px)}
.language-switcher{display:flex;gap:.25rem;margin-left:auto;align-items:center;font-size:.78rem;font-weight:700;letter-spacing:.08em}
.language-switcher a{display:grid;place-items:center;min-width:38px;min-height:38px;border:1px solid transparent}
.language-switcher a:hover,.language-switcher a:focus-visible{border-color:var(--blue)}
.language-switcher a[aria-current="page"]{background:var(--pink);color:white;border-color:var(--pink)}
.nav-links{display:flex;gap:1.7rem;align-items:center;font-size:.9rem}
.nav-book{border:1px solid currentColor;padding:.65rem 1rem}.nav-download{color:var(--blue);font-weight:700}
.hero{position:relative;display:block;padding:0 6vw 8vh;overflow:hidden;background:var(--ink)}
.hero-banner{display:block;width:calc(100% + 12vw);height:auto;margin-left:-6vw;object-fit:contain;background:var(--ink)}
.hero-copy{position:relative;z-index:2;width:min(800px,72vw);margin-top:3.5rem}
.cyan{color:var(--blue)}.pink{color:var(--pink)}
h1,h2,h3{font-family:'Archivo Black',Impact,sans-serif;text-transform:uppercase;line-height:.88;margin:0}
h1{font-size:clamp(4rem,12vw,11rem);letter-spacing:-.07em;text-shadow:8px 8px 0 rgba(236,0,96,.85)}
h1 span{color:var(--pink);text-shadow:none}
.statement{max-width:560px;font-size:clamp(1.15rem,2vw,1.65rem);line-height:1.45;margin:2.2rem 0}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.4rem}.download-button{display:inline-flex;padding:1rem 1.3rem;background:var(--pink);color:white;font-weight:700;text-transform:uppercase;letter-spacing:.06em;box-shadow:6px 6px 0 var(--blue);transition:.2s}.download-button:hover,.download-button:focus-visible{transform:translate(3px,3px);box-shadow:3px 3px 0 var(--blue)}
.discover{display:inline-flex;gap:1rem;border-bottom:2px solid var(--blue);padding:.5rem 0;font-weight:700}
.scribble{position:absolute;z-index:3;font-size:4rem;color:var(--pink);transform:rotate(-12deg)}
.crown{right:7%;top:14%}.heart{right:3%;bottom:10%;color:var(--blue)}
.songs{padding:8rem 5vw}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:3rem}
h2{font-size:clamp(3rem,7vw,7rem);letter-spacing:-.06em}
.song-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.song-card{min-height:180px;padding:1.2rem;text-align:left;color:var(--paper);background:transparent;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;display:flex;flex-direction:column;gap:.8rem;transition:.25s}
.song-card span{color:var(--blue);font-size:.78rem}.song-card strong{font-family:'Archivo Black';font-size:1.25rem;text-transform:uppercase;line-height:1}.song-card em{margin-top:auto;font-style:normal;color:#aaa;font-size:.85rem}
.song-card:hover,.song-card:focus-visible,.song-card.active{background:var(--pink);transform:translate(-4px,-4px);box-shadow:6px 6px 0 var(--blue);z-index:1}
.song-card.active span,.song-card.active em,.song-card:hover span,.song-card:hover em{color:white}
.song-focus{margin-top:5rem;display:grid;grid-template-columns:.35fr 1fr;gap:4vw;padding:5vw;background:#111118;border-left:8px solid var(--pink)}
.focus-number{margin:0;font-family:'Archivo Black';font-size:clamp(7rem,17vw,15rem);line-height:.75;color:transparent;-webkit-text-stroke:2px var(--pink)}
h3{font-size:clamp(2.6rem,6vw,6rem);letter-spacing:-.05em}
.song-focus p:not(.eyebrow):not(.focus-number){max-width:700px;font-size:1.15rem;line-height:1.7;color:#ccc}
blockquote{margin:2rem 0 0;border-left:2px solid var(--blue);padding-left:1.5rem;font-size:clamp(1.3rem,2.5vw,2.2rem);line-height:1.35}
.player{margin-top:2.5rem;padding:1.2rem;background:#07070a;border:1px solid var(--line)}.player-label{margin:0 0 .8rem!important;color:var(--blue)!important;font-size:.75rem!important;font-weight:700;letter-spacing:.16em}.player audio{display:block;width:100%;accent-color:var(--pink)}
.download-strip{margin-top:2rem;padding:2.2rem 3vw;background:var(--blue);color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:2rem}.download-strip .eyebrow{margin-bottom:.8rem}.download-strip h3{font-size:clamp(1.8rem,4vw,4rem)}.download-strip>a{flex:none;padding:1rem 1.4rem;background:var(--ink);color:white;font-weight:700;text-transform:uppercase;letter-spacing:.08em;box-shadow:6px 6px 0 var(--pink)}
.live{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:var(--paper);color:var(--ink)}
.live-image{overflow:hidden;background:white}.live-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center top}
.live-copy{display:flex;flex-direction:column;justify-content:center;padding:8vw}.live-copy p:not(.eyebrow){font-size:1.2rem;line-height:1.7;max-width:550px}
.outline-button{align-self:flex-start;margin-top:1rem;border:2px solid var(--ink);padding:1rem 1.4rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.outline-button:hover{background:var(--pink);color:white;border-color:var(--pink)}
.shop{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:#111118;color:var(--paper)}
.shop-copy{display:flex;flex-direction:column;justify-content:center;padding:8vw}
.shop-copy h2{max-width:700px;font-size:clamp(2.7rem,5vw,5rem)}
.shop-description{max-width:590px;margin:2rem 0;font-size:1.2rem;line-height:1.7;color:#ccc}
.shop-buyline{display:flex;align-items:baseline;gap:1.2rem;margin-bottom:2rem}
.shop-buyline strong{font-family:'Archivo Black',Impact,sans-serif;font-size:clamp(2.6rem,5vw,5.5rem);line-height:1;color:var(--blue)}
.shop-buyline span{font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.shop-button{align-self:flex-start;padding:1rem 1.4rem;background:var(--pink);color:white;font-weight:700;text-transform:uppercase;letter-spacing:.08em;box-shadow:6px 6px 0 var(--blue);transition:.2s}
.shop-button:hover,.shop-button:focus-visible{transform:translate(3px,3px);box-shadow:3px 3px 0 var(--blue)}
.shop-note{margin-top:1.4rem;color:#aaa}
.shop-image{display:grid;place-items:center;padding:clamp(2rem,6vw,7rem);background:var(--blue);overflow:hidden}
.shop-image img{display:block;width:100%;height:auto;box-shadow:18px 18px 0 var(--pink)}
.newsletter{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;padding:7rem 8vw;background:var(--blue);color:var(--ink)}
.newsletter h2{max-width:750px}
.newsletter-copy p{max-width:600px;margin:0 0 2rem;font-size:1.2rem;line-height:1.7}
.newsletter-button{display:inline-flex;padding:1rem 1.4rem;background:var(--ink);color:white;font-weight:700;text-transform:uppercase;letter-spacing:.06em;box-shadow:6px 6px 0 var(--pink);transition:.2s}
.newsletter-button:hover,.newsletter-button:focus-visible{transform:translate(3px,3px);box-shadow:3px 3px 0 var(--pink)}
.about{padding:10rem 8vw;background:var(--pink);color:white}
.about-lead{font-family:'Archivo Black';font-size:clamp(2rem,5.7vw,6rem);line-height:1.05;max-width:1200px;text-transform:uppercase;letter-spacing:-.04em;margin:0 0 3rem}
.about>p:last-child{font-size:1.3rem}
.socials{padding:7rem 8vw;scroll-margin-top:2rem;background:#111118}
.socials h2{font-size:clamp(2.5rem,6.5vw,6.5rem);line-height:1;max-width:100%;overflow-wrap:break-word}
.socials-intro>p:not(.eyebrow){font-size:1.125rem;line-height:1.6;margin:1.5rem 0 0}
.socials-intro .socials-handle{color:var(--blue);font-weight:700;overflow-wrap:anywhere}
.social-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:1rem;margin-top:2.5rem}
.social-links a{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.5rem;padding:1rem 1.2rem;border:1px solid var(--line);font-size:1rem;font-weight:700;transition:background .2s,border-color .2s}
.social-links a span{color:var(--blue)}
.social-links a:hover{background:var(--pink);border-color:var(--pink)}
.social-links a:focus-visible{background:var(--pink);outline:3px solid var(--blue);outline-offset:4px}
footer{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:3rem 5vw;font-size:.85rem;border-top:1px solid var(--line)}
.footer-signature{display:flex;width:100%;justify-content:center;margin:0 0 1.5rem}
.footer-signature img{display:block;width:min(440px,80vw);height:auto}

@media(max-width:800px){
  .nav{padding:1.2rem}.nav-links a:not(.nav-download){display:none}.nav-download{border:1px solid currentColor;padding:.55rem .7rem;font-size:.78rem}.nav-book{display:none}
  .hero{padding:0 1.2rem 3rem}.hero-banner{width:calc(100% + 2.4rem);margin-left:-1.2rem}.hero-copy{width:100%;margin-top:2rem}
  h1{font-size:clamp(3.5rem,20vw,6.5rem);text-shadow:4px 5px 0 rgba(236,0,96,.85)}
  .statement{font-size:1rem;max-width:90%}.hero-actions{align-items:flex-start;flex-direction:column}.download-button{font-size:.82rem}.scribble{display:none}
  .songs{padding:6rem 1.1rem}.section-head{display:block}.song-grid{grid-template-columns:1fr 1fr}.song-card{min-height:150px;padding:1rem}.song-card strong{font-size:1rem}
  .song-focus{grid-template-columns:1fr;margin-top:3rem;padding:2rem 1.2rem}.focus-number{font-size:7rem}.download-strip{align-items:flex-start;flex-direction:column;padding:2rem 1.2rem}
  .live{grid-template-columns:1fr;min-height:0}.live-image{height:75vh}.live-copy{padding:5rem 1.4rem}
  .shop{grid-template-columns:1fr;min-height:0}.shop-copy{padding:5rem 1.4rem}.shop-image{grid-row:1;padding:2rem}.shop-image img{box-shadow:9px 9px 0 var(--pink)}
  .shop-buyline{align-items:flex-start;flex-direction:column;gap:.6rem}
  .newsletter{grid-template-columns:1fr;gap:2rem;padding:5rem 1.4rem}.newsletter-button{font-size:.82rem}
  .socials{padding:5rem 1.4rem}
  .about{padding:7rem 1.4rem}footer{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portal,.world,.enter,.song-card,.social-links a{transition:none}.portal-video{display:none}}

/* Production accessibility and small-screen fixes; existing brand tokens retained. */
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.about :focus-visible,.newsletter :focus-visible{outline-color:var(--ink)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-content{position:fixed;top:.5rem;left:.5rem;z-index:40;padding:1rem;background:var(--ink);color:white;transform:translateY(-200%)}
.skip-content:focus{transform:none}
.portal{background:#050508 url('/assets/look-scene.webp') center/cover no-repeat}
.pause-intro{position:absolute;top:1rem;right:1rem;z-index:2;background:var(--ink);border:1px solid white;color:white;padding:.7rem 1rem;min-height:44px;cursor:pointer}
.skip{background:rgba(0,0,0,.8);color:white;padding:.6rem;min-height:44px}
.menu-toggle{display:none;background:transparent;border:1px solid var(--blue);color:white;padding:.7rem 1rem;min-height:44px;cursor:pointer}
.nav-links{gap:clamp(.75rem,1.7vw,1.7rem)}
.nav-links a,.legal-links a{display:inline-flex;align-items:center;min-height:44px}
.eyebrow{font-size:.875rem}
.about .eyebrow{color:white}
.about,.download-button,.shop-button,.song-card.active,.song-card:hover,.song-card:focus-visible,.social-links a:hover,.social-links a:focus-visible,.privacy-actions button:hover{background:#e6005d}
.pink{color:#ff508e}.live-copy .pink{color:#c5004e}
.song-card{min-width:0;overflow-wrap:anywhere}
.song-card strong{line-height:1.15}
.song-focus>div,.live-copy,.shop-copy,.newsletter>div{min-width:0}
.song-focus h3{line-height:1.05;overflow-wrap:break-word}
.shop-copy h2,.newsletter h2{line-height:1.02;overflow-wrap:break-word}
.song-card em{color:#bbb}
.song-card:focus-visible em,.song-card:focus-visible span{color:white}
.player-label{font-size:.875rem!important}
#audio-error{font-size:1rem!important}#audio-error a{text-decoration:underline}
.legal-links{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center}
.legal-links button{background:none;border:0;padding:.5rem 0;min-height:44px;color:inherit;text-decoration:underline;cursor:pointer;font-size:inherit}
footer{flex-wrap:wrap;font-size:.875rem}footer>a{overflow-wrap:anywhere}
.legal-links a{text-decoration:underline}
.privacy-controls{position:fixed;bottom:0;left:0;right:0;z-index:30;padding:1.25rem max(1.25rem,4vw) calc(1.25rem + env(safe-area-inset-bottom));background:var(--ink);color:white;border-top:2px solid var(--blue);max-height:70svh;overflow:auto;box-shadow:0 -10px 40px #0008}
.privacy-controls h2{font-size:1.35rem;line-height:1.25;letter-spacing:0;text-transform:none}
.privacy-controls p{max-width:900px;font-size:1rem;line-height:1.5}.privacy-controls a{text-decoration:underline;color:var(--blue)}
.privacy-actions{display:flex;flex-wrap:wrap;gap:.75rem}
.privacy-actions button{background:transparent;border:1px solid var(--blue);color:white;font-weight:700;min-height:44px;padding:.8rem 1rem;cursor:pointer}
.privacy-actions button:hover{background:var(--pink)}
.legal-page{max-width:900px;margin:auto;padding:3rem max(1.25rem,5vw);font-size:1rem;line-height:1.7;overflow-wrap:break-word}
.legal-page h1{font-size:clamp(2.2rem,7vw,4rem);line-height:1.08;letter-spacing:-.04em;text-shadow:none;margin:3rem 0 1rem}
.legal-page h2{font-size:1.35rem;line-height:1.3;letter-spacing:0;margin:2.2rem 0 .8rem;text-transform:none}
.legal-page a{color:var(--blue);text-decoration:underline}.legal-page .download-button{color:white}
.legal-language-switcher{justify-content:flex-start;margin:1.5rem 0 0}
@media(max-width:1100px){
  .nav{flex-wrap:wrap;gap:.75rem;padding:1.2rem;align-items:center}
  .menu-toggle:not([hidden]){display:block;margin-left:0}
  .nav-links{width:100%;flex-wrap:wrap;gap:.5rem 1rem}
  .nav-links a,.nav-links .nav-book{display:inline-flex}
  .nav:has(.menu-toggle:not([hidden])) .nav-links{display:none}
  .nav:has(.menu-toggle:not([hidden])) .nav-links.expanded{display:flex;background:var(--ink);padding:1rem 0}
  .hero-copy{width:100%}
}
@media(max-width:800px){
  .nav-links a:not(.nav-download),.nav-links .nav-book{display:inline-flex}
  .hero h1{font-size:clamp(2.8rem,16vw,6.5rem)}
  .download-button,.newsletter-button{max-width:100%;font-size:.875rem;line-height:1.4}
  .discover{min-height:44px;align-items:center}
  .song-card em{font-size:.875rem}
}
@media(max-width:380px){.song-grid{grid-template-columns:1fr}.privacy-actions{flex-direction:column}}

/* Mug unboxing: lightweight, visitor-controlled video beside the existing shop copy. */
.shop-video-panel{gap:1.6rem;align-content:center}
.shop-video{display:block;width:min(100%,360px);height:auto;aspect-ratio:9/16;background:var(--ink);box-shadow:12px 12px 0 var(--pink)}
.shop-video-buy{justify-self:center;align-self:center;text-align:center;max-width:100%;line-height:1.4}
.shop-product-photo{display:block;width:180px;max-width:100%;height:auto;margin-top:2rem}
@media(max-width:700px){.shop-video-panel{padding:2rem 1.4rem}.shop-video{box-shadow:9px 9px 0 var(--pink)}}
