html{scroll-padding-top:6rem}
.home-page{--gutter:clamp(1.25rem,5vw,6rem);--scene:0;--page-progress:0;--hero-y:0px;--hero-scale:1;--hero-opacity:1;--art-y:0px;--art-tilt:0deg;--line-shift:0px;--portrait-y:0px;--motif-x:0px;--muted:#bbb3b6;isolation:isolate;overflow-x:clip;background:#090909}
.home-page main,.site-footer{position:relative;z-index:1}
.scene-light{position:fixed;z-index:0;inset:-15%;pointer-events:none;background:radial-gradient(ellipse 90% 85% at 72% 50%,#cb162d 0%,#7b081a 45%,#090909 88%);opacity:var(--scene);will-change:opacity}
.stage-width{width:calc(100% - 2 * var(--gutter));max-width:96rem;margin-inline:auto;min-width:0}
.site-header{position:fixed;inset:0 0 auto;z-index:20;padding:1.35rem var(--gutter);background:transparent;transition:background .3s,padding .3s}
.site-header.is-scrolled{background:#090909de;backdrop-filter:blur(16px);padding-block:1rem}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:2.75rem}
.site-header .logo{font-size:1.65rem;flex:none}
.site-header nav{display:flex;align-items:center;gap:clamp(1.5rem,3.2vw,3.5rem);font-size:.875rem}
.site-header nav a{padding:.5rem 0;opacity:.65;transition:opacity .2s}
.site-header nav a:hover,.site-header nav a[aria-current=location]{opacity:1}
.menu-toggle{display:none;border:0;background:transparent;padding:.6rem 0;font-size:.875rem}
.masthead{min-height:100svh;display:grid;align-items:center;padding:8rem var(--gutter) 7rem;position:relative}
.masthead-inner{width:100%;max-width:96rem;margin-inline:auto;transform:translate3d(0,var(--hero-y),0) scale(var(--hero-scale));opacity:var(--hero-opacity);transform-origin:50% 35%;will-change:transform,opacity}
.wordmark{margin:0;width:100%;font-size:inherit;line-height:1}
.wordmark img{width:100%;height:auto;max-width:none}
.artist-name{margin:2.2rem 0 0;text-align:right;font-size:clamp(1rem,1.6vw,1.375rem);letter-spacing:.01em}
.scroll-cue{position:fixed;left:var(--gutter);bottom:2rem;z-index:5;display:flex;align-items:center;gap:.9rem;font-size:.875rem;transition:opacity .2s,visibility .2s}
.scroll-cue.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.cue-pulse{width:.45rem;height:.45rem;border-radius:50%;background:var(--red);animation:cue-breathe 2s ease-in-out infinite}
.scroll-meter{position:fixed;right:1.2rem;bottom:2rem;width:2px;height:4rem;background:#ffffff25;z-index:5;pointer-events:none}
.scroll-meter span{display:block;width:100%;height:100%;background:var(--red);transform:scaleY(var(--page-progress));transform-origin:bottom}
.section-kicker{margin:0 0 1.75rem;font-size:.875rem;line-height:1.5;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.music-chapter{position:relative;scroll-margin-top:0}
.release-stage{display:flex;align-items:center;padding:clamp(4rem,9svh,6.5rem) 0;min-height:100svh}
.release-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:clamp(3rem,7vw,8rem)}
.release-copy{position:relative;z-index:2;min-width:0}
.release-copy h2,.artist-copy h2,.archive-heading h2,.contact-grid h2,.newsletter-grid h2{font-family:var(--display);font-weight:700;line-height:.94;letter-spacing:-.015em;margin:0}
.release-copy h2{font-size:clamp(4rem,min(9.7vw,17svh),10.5rem)}
.release-line{display:block;white-space:nowrap}
.release-line:last-child{color:var(--red);transform:translateX(var(--line-shift))}
.release-controls{margin-top:2.1rem;max-width:29rem}
.release-links{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}
.release-page-link{font-size:.875rem;line-height:1.5;padding:.75rem 0;color:var(--muted);transition:color .2s}
.release-page-link:hover{color:var(--white);text-decoration:underline;text-underline-offset:.3rem}
.release-controls .music-player{border:0;background:none;margin:0 0 1.25rem;padding:0;max-width:none}
.release-controls .player-status{color:var(--white);font-size:.875rem;letter-spacing:.035em;margin:0 0 .45rem}
.release-controls .player-note{font-size:1rem;line-height:1.6;margin:0;color:var(--muted)}
.action{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;min-width:9rem;padding:.9rem 1.6rem;border:0;border-radius:999px;font-family:var(--body);font-size:.875rem;line-height:1.4;text-align:center;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.action-primary{background:var(--white);color:var(--black)}
.action-primary:hover{background:var(--red);color:var(--black);transform:translateY(-2px)}
.release-media{position:relative;min-width:0;margin:0;transform:translate3d(0,var(--art-y),0) rotate(var(--art-tilt));will-change:transform}
.release-media::before{content:'';position:absolute;inset:-12%;background:radial-gradient(ellipse,#ae061d35,transparent 65%);z-index:-1;pointer-events:none}
.artwork-button{display:block;width:100%;position:relative;background:none;border:0;padding:0;box-shadow:0 1.5rem 5rem #0005}
.artwork-button img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.image-open{position:absolute;right:1rem;bottom:1rem;width:2.75rem;height:2.75rem;display:grid;place-items:center;background:#0909098c;color:var(--white);border-radius:50%;font-size:1.5rem;opacity:0;transition:opacity .2s}
.artwork-button:hover .image-open,.artwork-button:focus-visible .image-open{opacity:1}
.release-media .photo-credit{margin-top:.85rem}
.artist-chapter{padding:11rem 0 12rem;position:relative;scroll-margin-top:3rem}
.artist-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.artist-copy{position:relative;z-index:2;min-width:0}
.artist-copy h2{font-size:clamp(4.25rem,12.7vw,13.5rem);margin-bottom:2.5rem}
.artist-bio{max-width:27rem;margin-left:clamp(0rem,4vw,4rem)}
.artist-bio p{font-size:clamp(1.05rem,1.4vw,1.35rem);line-height:1.7;margin:0}
.artist-bio .identity-line{font-size:1rem;line-height:1.7;margin-top:2rem;color:#e5c9ce}
.identity-line strong{font-family:var(--display);font-weight:700;font-size:1.5rem;margin-right:.35rem;letter-spacing:.015em}
.artist-media{position:relative;margin:0;width:100%;transform:translate3d(0,var(--portrait-y),0);will-change:transform;z-index:1}
.portrait-wrap{overflow:hidden;box-shadow:0 2rem 6rem #0003}
.portrait-wrap img{width:100%;height:auto}
.artist-media .photo-credit{margin-top:.85rem;color:#d7b8bd}
.artist-motif{position:absolute;left:24%;bottom:-8%;width:73%;height:auto;opacity:.12;transform:translate3d(var(--motif-x),0,0);pointer-events:none;z-index:0;will-change:transform}
.visual-chapter{padding-top:4rem;scroll-margin-top:0}
.archive-stage{padding:clamp(4rem,8svh,6rem) 0;min-height:100svh;display:flex;flex-direction:column;justify-content:center;gap:2.5rem}
.archive-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}
.archive-heading .section-kicker{margin-bottom:1rem}
.archive-heading h2{font-size:clamp(3.5rem,8vw,8rem)}
.archive-count{font-size:.875rem;letter-spacing:.04em;color:var(--muted);padding-bottom:.5rem;white-space:nowrap}
.visual-strip{--plate-height:clamp(19rem,43svh,32rem);width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--red) #ffffff15;scroll-padding-inline:var(--gutter)}
.visual-strip:focus-visible{outline:2px solid var(--red);outline-offset:-2px}
.visual-track{display:flex;align-items:flex-start;gap:clamp(1.5rem,4vw,4rem);width:max-content;padding:.5rem var(--gutter) 1.5rem}
.visual-frame{flex:0 0 auto;display:block;position:relative;border:0;padding:0;background:none;text-align:left;scroll-snap-align:start;scroll-margin-inline:var(--gutter)}
.frame-landscape{width:calc(var(--plate-height) * 1.25)}
.frame-portrait{width:calc(var(--plate-height) * .8)}
.frame-square{width:var(--plate-height)}
.visual-image{display:block;height:var(--plate-height);overflow:hidden}
.visual-image img{width:100%;height:100%;object-fit:contain;max-width:none;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.visual-frame:hover .visual-image img{transform:scale(1.035)}
.visual-frame:focus-visible{outline:2px solid var(--red);outline-offset:6px}
.visual-caption{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;font-size:.875rem;line-height:1.4;letter-spacing:.03em}
.visual-caption b{font-size:1.5rem;font-weight:400;line-height:1}
.visual-frame:hover .visual-caption{color:var(--red)}
.contact-chapter{padding:10rem 0 8rem;scroll-margin-top:4rem}
.contact-grid,.newsletter-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(3rem,9vw,10rem);align-items:center}
.contact-grid h2,.newsletter-grid h2{font-size:clamp(4rem,10vw,11rem);margin-bottom:1.75rem}
.chapter-intro{max-width:25rem;font-size:1rem;line-height:1.7;margin:0;color:var(--muted)}
.contact-details{min-width:0;padding-top:1rem}
.contact-details summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;list-style:none;padding:1.25rem 0;font-size:clamp(1.25rem,2vw,1.8rem);cursor:pointer}
.contact-details summary::-webkit-details-marker{display:none}
.contact-details summary:hover{color:var(--red)}
.contact-details summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}
.details-mark{font-size:2rem;line-height:1;transition:transform .25s}
.contact-details[open] .details-mark{transform:rotate(45deg)}
.contact-details[open] summary{margin-bottom:1.5rem}
.home-page .site-form{font-size:1rem}
.home-page .form-fields{gap:1.5rem}
.home-page .form-row{gap:1.5rem}
.home-page .site-form label{font-size:.875rem}
.home-page .site-form input:not([type=checkbox]),.home-page .site-form textarea,.home-page .site-form select{background:transparent;color:var(--white);border:0;border-bottom:1px solid #ffffff50;padding:.85rem 0;font-size:1rem}
.home-page .site-form select option{background:var(--black);color:var(--white)}
.home-page .site-form textarea{min-height:8rem}
.home-page .site-form .action{justify-self:start}
.home-page .consent-label input{accent-color:var(--red)}
.newsletter-chapter{padding:5rem 0 10rem;scroll-margin-top:4rem}
.newsletter-grid h2{color:var(--red)}
.newsletter-chapter .site-form .form-fields{gap:1.25rem}
.site-footer{padding:1rem 0 2rem}
.footer-row{display:flex;align-items:center;justify-content:space-between;gap:2rem;font-size:.875rem;color:var(--muted)}
.footer-row .back-top{margin:0;border:0;padding:.75rem 0;color:var(--white)}
.footer-wordmark{width:100%;margin:3rem 0 2rem}
.footer-wordmark img{width:100%;height:auto;opacity:.8}
.home-page .footer-bottom{padding:0;justify-content:space-between;align-items:center;gap:1rem;font-size:.875rem;letter-spacing:0}
.home-page .legal-links{gap:.5rem 1.5rem}
.motion-ready .release-scroll{height:175svh}
.motion-ready .release-stage{position:sticky;top:0;min-height:100svh}
.archive-motion .archive-scroll{height:var(--archive-span,150svh)}
.archive-motion .archive-stage{position:sticky;top:0;min-height:100svh}
.archive-motion .visual-strip{scrollbar-width:none;scroll-snap-type:none}
.archive-motion .visual-strip::-webkit-scrollbar{display:none}
@keyframes cue-breathe{0%,100%{opacity:1}50%{opacity:.35}}
@media(max-width:1100px){
  .home-page{--gutter:clamp(1.25rem,4vw,3rem)}
  .release-layout{gap:3rem}
  .release-copy h2{font-size:9.5vw}
  .artist-chapter{padding-block:8rem}
  .artist-layout{gap:2rem}
  .artist-copy h2{font-size:12.5vw}
  .artist-bio{margin-left:0}
  .artist-bio p{font-size:1.1rem}
  .contact-grid,.newsletter-grid{gap:4rem}
}
@media(max-width:900px),(max-height:650px){
  .motion-ready .release-scroll,.archive-motion .archive-scroll{height:auto}
  .motion-ready .release-stage,.archive-motion .archive-stage{position:relative;min-height:0}
  .release-stage{min-height:0;padding-block:5rem}
  .release-layout{gap:2rem}
  .release-copy h2{font-size:9.7vw}
  .release-controls{margin-top:1.5rem}
  .artist-chapter{padding-block:7rem}
  .artist-copy h2{font-size:12vw}
  .archive-stage{min-height:0;padding-block:5rem}
  .visual-strip{--plate-height:clamp(18rem,42vw,28rem);scroll-snap-type:x proximity}
  .contact-chapter{padding-block:6rem}
  .newsletter-chapter{padding-block:3rem 7rem}
  .contact-grid,.newsletter-grid{gap:2.5rem}
  .contact-grid h2,.newsletter-grid h2{font-size:10vw}
}
@media(max-width:640px){
  html{scroll-padding-top:6rem}
  .site-header{padding-block:1rem}
  .site-header .logo{font-size:1.45rem}
  .menu-toggle{display:block}
  .site-header nav{display:none;position:absolute;top:100%;right:var(--gutter);left:var(--gutter);padding:1rem 1.5rem 1.5rem;background:#090909fa;border-radius:.75rem;box-shadow:0 1rem 3rem #0004;font-size:1.1rem}
  .site-header.menu-open nav{display:grid;gap:.5rem}
  .home-page:not(.js-ready) .header-inner{flex-wrap:wrap}
  .home-page:not(.js-ready) .menu-toggle{display:none}
  .home-page:not(.js-ready) .site-header nav{position:static;display:flex;flex-wrap:wrap;flex-basis:100%;padding:0;gap:.5rem 1.25rem;background:none;box-shadow:none;font-size:.875rem}
  .site-header nav a{padding:.7rem 0;opacity:1}
  .masthead{min-height:85svh;padding-block:7rem 6rem}
  .artist-name{margin-top:1.5rem;font-size:1rem}
  .scroll-cue{bottom:1.5rem;font-size:.875rem}
  .scroll-meter{right:.6rem;bottom:1.5rem;height:3rem}
  .release-layout{grid-template-columns:minmax(0,1fr);gap:2.5rem}
  .release-copy h2{font-size:clamp(4.25rem,17vw,6.5rem)}
  .release-copy .section-kicker{margin-bottom:1.5rem}
  .release-controls{margin-top:1.75rem}
  .release-media{width:87%;justify-self:end}
  .release-stage{padding-block:3rem 5rem}
  .image-open{opacity:1;width:2.5rem;height:2.5rem}
  .artist-chapter{padding-block:5rem 6rem}
  .artist-layout{grid-template-columns:minmax(0,1fr);gap:2.5rem}
  .artist-copy h2{font-size:clamp(4.25rem,21vw,8rem);margin-bottom:1.75rem}
  .artist-bio{max-width:29rem;margin-left:0}
  .artist-bio p{font-size:1.1rem;line-height:1.65}
  .artist-bio .identity-line{margin-top:1.5rem}
  .artist-media{width:83%;justify-self:end}
  .artist-motif{left:-8%;bottom:20%;width:105%;opacity:.1}
  .visual-chapter{padding-top:0}
  .archive-stage{padding-block:3rem 4rem;gap:2rem}
  .archive-heading h2{font-size:clamp(3.5rem,13vw,5rem)}
  .archive-heading .section-kicker{font-size:.875rem;margin-bottom:1rem}
  .archive-count{font-size:.875rem}
  .visual-strip{--plate-height:min(85vw,26rem)}
  .visual-track{gap:1.5rem}
  .frame-landscape{width:calc(var(--plate-height) * 1.25)}
  .contact-chapter{padding-block:4rem 5rem}
  .contact-grid,.newsletter-grid{grid-template-columns:minmax(0,1fr);gap:2rem}
  .contact-grid h2,.newsletter-grid h2{font-size:clamp(4.25rem,20vw,7rem)}
  .contact-details{padding:0}
  .contact-details summary{font-size:1.35rem;padding-block:1rem}
  .home-page .form-row{grid-template-columns:minmax(0,1fr)}
  .newsletter-chapter{padding-block:2rem 5rem}
  .footer-row{gap:1rem;font-size:.875rem}
  .footer-wordmark{margin-block:2rem 1.5rem}
  .home-page .footer-bottom{display:flex;flex-wrap:wrap;gap:1.5rem}
  .home-page .legal-links{gap:.25rem 1.25rem;flex-basis:100%}
  .home-page .footer-bottom>span:last-child{margin-left:auto}
}
@media(prefers-reduced-motion:reduce){
  .masthead-inner,.release-media,.release-line:last-child,.artist-media,.artist-motif,.scroll-meter span{transform:none;will-change:auto}
  .masthead-inner{opacity:1}
  .scene-light{opacity:.15;will-change:auto}
  .cue-pulse{animation:none}
  .action:hover,.visual-frame:hover .visual-image img{transform:none}
}
