:root{
  --ink:#101010;
  --paper:#f4f1eb;
  --cream:#e8e2d7;
  --red:#e21d2d;
  --muted:#77736c;
  --line:rgba(16,16,16,.15);
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 15%,rgba(255,255,255,.7),transparent 36%);z-index:-2}
.grain{position:fixed;inset:-50%;pointer-events:none;opacity:.035;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");animation:grain .25s steps(2) infinite}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(2%,-1%)}50%{transform:translate(-1%,2%)}75%{transform:translate(1%,1%)}100%{transform:translate(-2%,-2%)}}
a{color:inherit;text-decoration:none}
.site-header{height:92px;max-width:var(--max);margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10}
.brand img{width:158px;height:auto;display:block}
.nav{display:flex;gap:34px;font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.nav a{position:relative;padding:8px 0}
.nav a:after{content:"";position:absolute;left:0;bottom:2px;width:0;height:2px;background:var(--red);transition:.3s}
.nav a:hover:after{width:100%}
.menu-toggle{display:none;background:none;border:0}
.hero{min-height:calc(100vh - 92px);max-width:var(--max);margin:auto;padding:55px 28px 90px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:700;display:flex;align-items:center;gap:10px;margin:0 0 25px}
.eyebrow span{display:block;width:35px;height:2px;background:var(--red)}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(65px,8vw,126px);line-height:.82;letter-spacing:-.075em;margin-bottom:35px}
h1 em,h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em}
.hero-text{max-width:510px;font-size:17px;line-height:1.6;color:#4f4b45}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}
.button{display:inline-flex;align-items:center;gap:25px;padding:16px 20px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.button-dark{background:var(--ink);color:#fff;transition:.25s}
.button-dark:hover{background:var(--red);transform:translateY(-2px)}
.text-link{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid var(--ink);padding-bottom:5px}
.hero-art{height:min(640px,70vw);min-height:430px;position:relative;display:grid;place-items:center}
.vinyl{width:min(430px,62vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at center,#242424 0 9%,#090909 10% 23%,#151515 24% 25%,#090909 26% 100%);box-shadow:0 35px 80px rgba(0,0,0,.25);position:relative;animation:spin 13s linear infinite}
.vinyl:before,.vinyl:after{content:"";position:absolute;border-radius:50%;inset:8%;border:1px solid rgba(255,255,255,.1)}
.vinyl:after{inset:14%;border-color:rgba(255,255,255,.06)}
@keyframes spin{to{transform:rotate(360deg)}}
.vinyl-groove{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.09)}
.groove-a{inset:18%}.groove-b{inset:28%}.groove-c{inset:38%}
.vinyl-label{position:absolute;inset:34%;border-radius:50%;background:var(--red);display:grid;place-content:center;text-align:center;color:white;line-height:.9;box-shadow:0 0 0 5px #151515}
.vinyl-label span{font-size:16px;font-weight:900;letter-spacing:-.06em}.vinyl-label b{font-size:8px;letter-spacing:.25em;margin-top:5px}
.vinyl-hole{position:absolute;inset:48%;border-radius:50%;background:#0b0b0b}
.orbit{position:absolute;border:1px solid rgba(16,16,16,.13);border-radius:50%;animation:orbit 9s linear infinite}
.orbit-one{width:78%;height:78%}.orbit-two{width:91%;height:91%;animation-duration:15s;animation-direction:reverse}.orbit-three{width:100%;height:100%;border-style:dashed;animation-duration:22s}
@keyframes orbit{to{transform:rotate(360deg)}}
.needle{position:absolute;right:3%;top:12%;width:135px;height:170px;transform:rotate(16deg)}
.needle-arm{position:absolute;width:6px;height:145px;background:var(--ink);right:22px;top:0;border-radius:5px}
.needle-head{position:absolute;width:27px;height:14px;background:var(--red);right:8px;bottom:17px;border-radius:3px}
.floating-note{position:absolute;font-size:24px;font-weight:900;color:var(--red);animation:float 3s ease-in-out infinite}
.note-one{left:5%;top:25%}.note-two{right:3%;bottom:20%;animation-delay:.8s}.note-three{left:15%;bottom:16%;animation-delay:1.4s}
@keyframes float{50%{transform:translateY(-13px) rotate(8deg)}}
.ticker{overflow:hidden;background:var(--red);color:#fff;padding:15px 0;white-space:nowrap}
.ticker-track{display:flex;align-items:center;gap:34px;width:max-content;font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;animation:ticker 25s linear infinite}
.ticker i{font-style:normal;font-size:14px}
@keyframes ticker{to{transform:translateX(-50%)}}
.section{max-width:var(--max);margin:auto;padding:125px 28px}
.section-label{font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);padding-bottom:16px;border-bottom:1px solid var(--line)}
.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;padding-top:50px}
h2{font-size:clamp(52px,7vw,100px);line-height:.9;letter-spacing:-.07em;margin-bottom:25px}
h2 span{color:var(--red)}
.lead{font-family:Georgia,serif;font-size:28px;line-height:1.2}
.intro-grid div p:last-child{font-size:15px;line-height:1.75;color:#5b5751;max-width:510px}
.roster{border-top:1px solid var(--line)}
.roster-head{display:flex;justify-content:space-between;align-items:end;padding:50px 0 35px}
.roster-head h2{margin:0}.roster-head p{margin:0;color:var(--muted);font-size:13px}
.artist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.artist-card{min-height:320px;padding:25px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:#181818;color:#fff}
.artist-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 35%,rgba(255,255,255,.07),transparent 65%);transform:translateX(-100%);transition:.7s}
.artist-card:hover:before{transform:translateX(100%)}
.card-a{background:linear-gradient(135deg,#151515,#343434)}
.card-b{background:linear-gradient(135deg,#ded8cc,#a9a196);color:#111}
.card-c{background:linear-gradient(135deg,#c92332,#690b13)}
.card-number{font-size:10px;font-weight:800;letter-spacing:.18em}
.artist-card h3{font-size:38px;letter-spacing:-.05em;margin:0 0 6px}.artist-card p{font-size:11px;text-transform:uppercase;letter-spacing:.15em;margin:0;opacity:.7}
.arrow{position:absolute;right:24px;bottom:24px;font-size:25px}
.releases{border-top:1px solid var(--line)}
.release-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:50px;align-items:center}
.release-copy{font-size:14px;color:var(--muted);max-width:360px;line-height:1.6}
.release-card{background:#fff;border:1px solid var(--line);padding:18px;box-shadow:0 18px 50px rgba(0,0,0,.06)}
.release-art{height:360px;background:#111;display:grid;place-items:center;position:relative;overflow:hidden;color:#fff;font-size:12px;font-weight:900;letter-spacing:.15em;text-align:center}
.mini-disc{width:280px;height:280px;border-radius:50%;background:repeating-radial-gradient(circle,#111 0 7px,#191919 8px 9px);border:1px solid #333;position:absolute;animation:spin 15s linear infinite}
.mini-disc:after{content:"";position:absolute;inset:37%;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px #111}
.release-art span{position:relative;z-index:1;mix-blend-mode:difference}
.release-info{display:flex;justify-content:space-between;align-items:end;padding:22px 3px 4px}
.release-info h3{font-size:28px;margin:5px 0}.release-info p{font-size:11px;color:var(--muted);margin:0}.release-info .small{font-size:9px;font-weight:800;letter-spacing:.15em;color:var(--ink)}.release-info>a{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.contact{border-top:1px solid var(--line)}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:12%;padding-top:50px}
.contact-grid>div:first-child p{max-width:460px;color:var(--muted);line-height:1.6}
.contact-panel{border-left:1px solid var(--line);padding-left:45px}
.contact-email{font-family:Georgia,serif;font-size:clamp(25px,3vw,42px);letter-spacing:-.04em;border-bottom:2px solid var(--red);display:inline-block;padding-bottom:7px}
.address{display:grid;gap:6px;margin-top:50px;font-size:13px;color:#5b5751}.address strong{color:var(--ink)}
.socials{display:flex;gap:20px;margin-top:35px}.socials a{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.footer{border-top:1px solid var(--line);max-width:var(--max);margin:auto;padding:28px;display:flex;justify-content:space-between;align-items:center}.footer img{width:130px;filter:invert(1);mix-blend-mode:multiply}.footer p{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0}
@media(max-width:800px){
  .site-header{height:75px}.nav{display:none}.menu-toggle{display:grid;gap:6px}.menu-toggle span{display:block;width:28px;height:2px;background:var(--ink)}
  .nav.open{display:flex;position:absolute;top:75px;left:0;right:0;background:var(--paper);padding:20px 28px;flex-direction:column;gap:5px;border-bottom:1px solid var(--line)}
  .hero{grid-template-columns:1fr;padding-top:35px;min-height:auto}.hero-art{order:-1;height:390px;min-height:0}.vinyl{width:300px}.needle{right:2%;top:5%;transform:scale(.75) rotate(16deg)}
  h1{font-size:70px}.intro-grid,.release-layout,.contact-grid{grid-template-columns:1fr;gap:45px}.artist-grid{grid-template-columns:1fr}.artist-card{min-height:230px}
  .roster-head{display:block}.roster-head p{margin-top:12px}.section{padding:85px 22px}.site-header{padding:18px 22px}.hero{padding-left:22px;padding-right:22px}.footer{padding:25px 22px;display:block}.footer p{margin-top:15px}.contact-panel{padding-left:0;border-left:0}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}
