:root{--ink:#0b0d11;--ink2:#12151b;--paper:#f3f4f6;--mut:#9ca3af;--hot:#FFD700;--gold:#FFD700;--line:#1f2937;--serif:'Inter Tight','Inter',system-ui,sans-serif;--sans:'Inter',system-ui,sans-serif;--mono:'DM Mono',ui-monospace,monospace}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--ink);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:17px;line-height:1.5;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.pbar{position:fixed;z-index:100;top:0;left:0;right:0;background:#fff;color:#000;font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:7px 8px}
.nav{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:14px 4vw;background:linear-gradient(180deg,#0b0d11f2,#0b0d11b0);backdrop-filter:blur(8px);color:var(--paper)}
.nav .brand{font:400 22px var(--serif);letter-spacing:.01em}
.nav nav{display:flex;gap:28px;font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase}
.mono{font:500 12px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
/* hero */
.hero{position:relative;min-height:100svh;display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;padding-top:0}
.hero .copy{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:flex-end;padding:0 4vw 7vh;gap:26px}
.hero h1{font:400 clamp(92px,17.5vw,300px)/.82 var(--serif);letter-spacing:-.035em;margin-left:-.04em}
.hero h1 em{font-style:italic;color:var(--hot);display:block;margin-left:.5em}
.hero .tag{font:400 clamp(20px,2.1vw,32px)/1.2 var(--serif);max-width:15em;color:var(--paper)}
.hero .row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.btn{display:inline-block;font:500 13px var(--mono);letter-spacing:.14em;text-transform:uppercase;padding:16px 26px;background:var(--paper);color:var(--ink);border:1px solid var(--paper);transition:.2s}
.btn:hover{background:var(--hot);border-color:var(--hot);color:#fff}
.btn.ghost{background:transparent;color:var(--paper);border-color:#ffffff55}
.btn.ghost:hover{border-color:var(--hot);background:transparent;color:var(--hot)}
.hero .ph{position:relative;min-height:70vh}
.hero .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:30% 20%;filter:contrast(1.08) saturate(.95)}
.hero .ph:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0,#0b0d1100 38%),linear-gradient(0deg,var(--ink) 0,#0b0d1100 28%)}
.meter{position:absolute;right:3vw;bottom:5vh;z-index:4;display:flex;gap:5px;align-items:flex-end;height:90px}
.meter i{display:block;width:6px;background:linear-gradient(0deg,var(--hot),var(--gold));animation:m 1.1s ease-in-out infinite alternate;transform-origin:bottom;height:100%}
.meter i:nth-child(3n){animation-duration:.8s}.meter i:nth-child(4n+1){animation-duration:1.4s}.meter i:nth-child(5n){animation-delay:-.4s}.meter i:nth-child(2n){animation-delay:-.7s}
@keyframes m{from{transform:scaleY(.12)}to{transform:scaleY(1)}}
@media (prefers-reduced-motion:reduce){.meter i{animation:none;transform:scaleY(.5)}}
/* marquee */
.mq{border-block:1px solid #1f2937;overflow:hidden;white-space:nowrap;padding:22px 0;background:var(--ink2)}
.mq div{display:inline-block;animation:mq 38s linear infinite;font:400 clamp(34px,5vw,64px)/1 var(--serif)}
.mq span{margin:0 .5em}.mq b{color:var(--hot);font-weight:400}
@keyframes mq{to{transform:translateX(-50%)}}
/* sections */
.sec{padding:clamp(70px,11vw,160px) 4vw}
.sec h2{font:400 clamp(54px,9vw,150px)/.9 var(--serif);letter-spacing:-.03em}
.sec h2 em{color:var(--hot)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2vw;padding:clamp(44px,5vw,70px) 4vw;border-bottom:1px solid #1f2937}
.stats b{display:block;font:400 clamp(44px,6.4vw,104px)/1 var(--serif);letter-spacing:-.03em}
.stats span{display:block;margin-top:10px}
.recs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:clamp(36px,5vw,70px)}
.rec{background:var(--ink2);border:1px solid #1f2937;padding:18px 18px 8px;display:flex;flex-direction:column}
.rec .n{display:flex;justify-content:space-between;margin-bottom:14px}
.rec h3{font:400 clamp(28px,2.6vw,40px)/1 var(--serif);margin:2px 0 4px}
.rec p{color:var(--mut);font-size:15px;margin-bottom:14px}
.rec iframe{width:100%;border:0;border-radius:12px;background:transparent;margin-bottom:10px}
.rec .acc{color:var(--gold)}
/* credits */
.cred{margin-top:clamp(36px,5vw,70px);border-top:1px solid #374151}
.cred a,.cred div.r{display:grid;grid-template-columns:70px 1.4fr 1fr 1fr;gap:20px;align-items:baseline;padding:26px 0;border-bottom:1px solid #1f2937;transition:.25s}
.cred .t{font:400 clamp(32px,5vw,76px)/1 var(--serif);letter-spacing:-.02em}
.cred .a{color:var(--mut)}.cred .k{color:var(--gold);text-align:right}
.cred div.r:hover{padding-left:16px;background:#ffffff08}
/* photo band */
.band{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:90vh;background:var(--ink2);border-top:1px solid #1f2937}
.band .ph{position:relative;min-height:70vh;overflow:hidden}
.band .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 25%}
.band .tx{display:flex;flex-direction:column;justify-content:center;gap:30px;padding:8vw 5vw}
.band .big{font:400 clamp(44px,6vw,104px)/.95 var(--serif);letter-spacing:-.025em}
.band .big em{color:var(--hot)}
.svc{display:grid;gap:18px;font-size:19px;max-width:26em;color:#d7d0c5}
.svc b{display:block;font:400 34px var(--serif);color:var(--paper)}
/* contact */
.ct{display:grid;grid-template-columns:1fr 1fr;gap:6vw}
form{display:grid;gap:18px}fieldset{border:0;display:grid;gap:18px;min-width:0}
label{display:grid;gap:8px;font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
input,textarea{background:transparent;border:0;border-bottom:1px solid #ffffff44;color:var(--paper);font:400 20px var(--sans);padding:10px 0;outline:0;width:100%}
fieldset:disabled{opacity:.45}
.note{font:500 12px/1.5 var(--mono);letter-spacing:.06em;color:#000;background:var(--gold);padding:12px 14px;margin-bottom:6px}
footer{padding:40px 4vw 60px;border-top:1px solid #1f2937;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;align-items:baseline}
footer b{font:400 28px var(--serif)}footer a{border-bottom:1px solid #ffffff55}
.hp{position:absolute;left:-9999px}
@media(max-width:900px){
.hero{grid-template-columns:1fr;grid-template-rows:auto;min-height:100svh}
.hero .ph{position:absolute;inset:0;min-height:0}
.hero .ph img{object-position:40% 12%}
.hero .ph:after{background:linear-gradient(0deg,var(--ink) 0,#0b0d11e8 52%,#0b0d1100 84%)}
.hero .copy{min-height:100svh;padding:0 6vw 6vh}
.hero h1{font-size:34vw}
.meter{top:96px;bottom:auto;right:6vw;height:46px}
.nav nav a:not(.btn){display:none}.nav nav{gap:0}
.stats{grid-template-columns:1fr;gap:34px}
.recs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-inline:-4vw;padding:0 4vw 14px}
.rec{flex:0 0 84vw;scroll-snap-align:center}
.cred a,.cred div.r{grid-template-columns:1fr;gap:6px;padding:22px 0}.cred .k{text-align:left}
.band{grid-template-columns:1fr}.band .ph{min-height:78vh}
.ct{grid-template-columns:1fr;gap:40px}
}

.rec{padding:0 0 6px}.rec>*:not(.cover){margin-left:18px;margin-right:18px}
.cover{display:block;aspect-ratio:1/1;overflow:hidden;margin-bottom:18px;background:#000}
.cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.cover:hover img{transform:scale(1.04)}
.rec iframe{width:calc(100% - 36px)}
.cred a,.cred div.r{grid-template-columns:110px 1.4fr 1fr 1fr;align-items:center}
.cred .th{width:96px;height:96px;object-fit:cover;box-shadow:0 10px 30px #000a}
@media(max-width:900px){.cred a,.cred div.r{grid-template-columns:84px 1fr;gap:4px 16px}.cred .th{width:84px;height:84px;grid-row:span 3}.cred .k{text-align:left}.cred .t{font-size:34px}}
@media(max-width:900px){.stats{grid-template-columns:1fr}}

/* modern sharp pass */
.hero h1,.sec h2,.stats b,.cred .t,.band .big,.mq div,.rec h3,.svc b,.nav .brand,footer b{font-family:var(--serif);font-weight:800;letter-spacing:-.045em;text-transform:none}
.hero h1{font-size:clamp(84px,13.4vw,236px);line-height:.84;margin-left:-.05em}
.hero h1 em{font-style:normal;margin-left:0;color:var(--hot)}
.hero .tag{font:600 clamp(20px,2vw,30px)/1.15 var(--serif);letter-spacing:-.02em;max-width:14em}
.sec h2{font-size:clamp(48px,7.4vw,120px);line-height:.92}
.sec h2 em,.band .big em{font-style:normal;color:var(--hot)}
.stats b{font-size:clamp(34px,4.6vw,76px);line-height:1;font-weight:700}
.cred .t{font-size:clamp(28px,4vw,58px);font-weight:700;letter-spacing:-.035em}
.band .big{font-size:clamp(40px,5vw,84px);line-height:.98;font-weight:800}
.mq div{font-size:clamp(26px,3.4vw,44px);font-weight:700;letter-spacing:-.03em;color:#e5e7eb}
.mq b{color:var(--hot)}
.rec h3{font-size:clamp(22px,2vw,30px);font-weight:700;letter-spacing:-.025em;line-height:1.08}
.svc b{font-size:26px;font-weight:700;letter-spacing:-.03em}
.nav .brand{font-size:19px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:var(--hot)}
footer b{font-size:22px;font-weight:800;text-transform:uppercase;color:var(--hot)}
.nav{background:#0b0d11e6;border-bottom:1px solid var(--line);mix-blend-mode:normal}
.navbtn{background:var(--hot);color:#000;padding:10px 18px;border-radius:8px;font-weight:600}
.btn{background:var(--hot);color:#000;border-color:var(--hot);border-radius:8px;font-family:var(--sans);font-weight:600;letter-spacing:.02em;text-transform:none;font-size:15px}
.btn:hover{background:#fff;border-color:#fff;color:#000}
.btn.ghost{background:transparent;color:var(--paper);border-color:#4b5563}
.btn.ghost:hover{background:transparent;border-color:var(--hot);color:var(--hot)}
.mono{color:var(--mut)}
.hero .ph:after{background:linear-gradient(90deg,var(--ink) 0,#0b0d1100 40%),linear-gradient(0deg,var(--ink) 0,#0b0d1100 26%)}
.meter i{background:linear-gradient(0deg,#b89b00,var(--hot))}
.rec,.cover,.band,.stats{border-radius:0}
.rec{background:var(--ink2);border:1px solid var(--line)}
.rec:hover{border-color:var(--hot)}
.rec .acc,.cred .k{color:var(--hot)}
.note{background:var(--hot)}
.cred div.r:hover{background:#12151b}
.band{background:var(--ink2)}
@media(max-width:900px){.hero h1{font-size:27vw}.cred .t{font-size:28px}.sec h2{font-size:52px}.band .big{font-size:42px}.hero .ph:after{background:linear-gradient(0deg,var(--ink) 0,#0b0d11e8 52%,#0b0d1100 84%)}}
.hero h1{line-height:.9}
@media(max-width:900px){.nav nav a.navbtn{display:inline-block}}
.stats b{font-size:clamp(30px,3.6vw,60px)}

.nom{margin-top:clamp(30px,4vw,56px);border-top:1px solid #374151}
.nom div{display:grid;grid-template-columns:1.1fr 1.5fr 190px;gap:20px;align-items:baseline;padding:24px 0;border-bottom:1px solid #1f2937}
.nom b{font:700 clamp(24px,2.8vw,40px)/1.05 var(--serif);letter-spacing:-.03em}
.nom span{color:var(--mut)}.nom i{font-style:normal;color:var(--gold);text-align:right}
@media(max-width:900px){.nom div{grid-template-columns:1fr;gap:6px}.nom i{text-align:left}}
.nom small{display:block;margin-top:6px;font-size:.9em;color:#d1d5db}
.subh{font:700 clamp(28px,3.4vw,52px)/1.05 var(--serif);letter-spacing:-.04em;margin-top:clamp(40px,5vw,70px)}.subh em{font-style:normal;color:var(--gold)}

.artists{padding-bottom:0}
.artists ul{list-style:none;margin:clamp(28px,4vw,50px) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #374151}
.artists li{padding:18px 0;border-bottom:1px solid #1f2937;font:600 clamp(18px,1.8vw,26px)/1.1 var(--serif);letter-spacing:-.02em}
@media(max-width:900px){.artists ul{grid-template-columns:repeat(2,1fr)}.artists li{font-size:19px}}
.mq div{animation-duration:220s}.mq:hover div{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.mq div{animation:none}.mq{overflow-x:auto}}

.mq p{position:absolute;left:4vw;margin-top:-18px;font-size:11px;color:var(--mut);letter-spacing:.14em;text-transform:uppercase}.mq{position:relative;padding-top:34px}.mq.pr{border-top:0}.mq.pr div{animation-direction:reverse;animation-duration:90s;font-size:clamp(22px,2.6vw,34px);color:var(--mut)}
@media(min-width:900px){.recs{grid-template-columns:repeat(2,1fr)}}
