:root {
  --ink:#0B0B0B; --bone:#F1E7D8; --oxblood:#4A1013; --signal:#C41E2A; --muted:#A79C8C;
  --surface:var(--ink); --text:var(--bone); --line:color-mix(in srgb,var(--text) 25%,transparent);
  --display:'PP Neue Machina','Neue Machina','Unbounded',Arial,sans-serif;
  --body:'PP Neue Montreal','Neue Montreal','Onest',Arial,sans-serif;
  --label:'Suisse Intl','Suisse Intl Light','Onest',Arial,sans-serif;
  --accent:'GT Sectra',Georgia,serif;
  --gutter:clamp(1.25rem,5vw,6rem); --section-space:clamp(4rem,8vw,8rem); --label-size:.8125rem;
  font-family:var(--body); font-weight:400; color:var(--text); background:var(--surface); color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;font-size:1rem;line-height:1.7}
h1,h2,h3,p{margin:0}p+p{margin-top:1.5rem}
a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button{border-radius:0}button:disabled{cursor:not-allowed}
img{display:block;max-width:100%;height:auto}iframe{display:block;border:0;max-width:100%}
[hidden]{display:none!important}
:is(a,button,input):focus-visible{outline:2px solid var(--signal);outline-offset:6px}
::selection{color:var(--bone);background:var(--signal)}
.page-width{width:min(calc(100% - 2 * var(--gutter)),1440px);margin-inline:auto}
.skip{position:fixed;z-index:50;top:-100px;left:1rem;padding:.75rem 1rem;color:var(--ink);background:var(--bone)}.skip:focus{top:1rem}
.eyebrow,.section-label,.index,.vertical-label,.release-meta,.release-number,.release-note,.small-heading,.video-caption>span,.video-card>p,.mix-date,.event-list>div>span:last-child,.brand,.site-footer,.player-meta,.player-status{font-family:var(--label);font-size:var(--label-size);font-weight:300;line-height:1.6;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.link,.text-link,.release-links a,.platforms a,.contact-links a,.email,.phone{display:inline-flex;align-items:baseline;gap:.4em;width:fit-content;color:var(--text);font-size:.875rem;text-decoration:none;transition:color .2s}
.link-label{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:var(--signal)}
.link:hover,.text-link:hover,.release-links a:hover,.platforms a:hover,.contact-links a:hover,.email:hover,.phone:hover,.nav a:hover{color:var(--signal)}
.link-arrow,.compilation-list>a>span:last-child{font-family:var(--body);font-size:.95em;font-style:normal;font-weight:400}
.text-link::after,.release-links a::after,.platforms a::after,.contact-links a::after,.email::after,.phone::after{content:'↗';font-family:var(--body);font-size:.95em;font-weight:400}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.player-meta{display:flex;justify-content:space-between;gap:1rem}
.player-controls{display:flex;align-items:center;gap:1.75rem;padding-block:2rem 1rem}
.audio-toggle{flex:none;width:3.5rem;height:3.5rem;display:grid;place-items:center;border:1px solid var(--signal);color:var(--bone);background:var(--signal);cursor:pointer}
.audio-toggle:hover{background:var(--oxblood)}.audio-toggle svg{width:1.3rem;height:1.3rem;fill:currentColor}
.audio-pause-icon{display:none}.audio-toggle[data-state=playing] .audio-play-icon,.release-track-toggle[data-state=playing] .audio-play-icon{display:none}.audio-toggle[data-state=playing] .audio-pause-icon,.release-track-toggle[data-state=playing] .audio-pause-icon{display:block}
.seek-wrap{flex:1;min-width:0}.player-time{margin-top:.4rem}
#audio-seek{--progress:0%;appearance:none;-webkit-appearance:none;width:100%;height:1.5rem;margin:0;cursor:pointer;background:transparent;accent-color:var(--signal)}
#audio-seek::-webkit-slider-runnable-track{height:2px;background:linear-gradient(to right,var(--signal) var(--progress),var(--bone) var(--progress))}
#audio-seek::-moz-range-track{height:2px;background:var(--bone)}#audio-seek::-moz-range-progress{height:2px;background:var(--signal)}
#audio-seek::-webkit-slider-thumb{appearance:none;width:9px;height:9px;margin-top:-3.5px;border:0;border-radius:0;background:var(--signal)}
#audio-seek::-moz-range-thumb{width:9px;height:9px;border:0;border-radius:0;background:var(--signal)}
#audio-seek:disabled{cursor:default;opacity:.5}.player-status{min-height:1.6em;margin-top:.75rem}
.track-indicator{display:grid;place-items:center;color:var(--signal)}.track-indicator svg,.track-play-icon svg{display:block;width:1rem;height:1rem;fill:currentColor}.mix-list>button:disabled{color:var(--muted);cursor:not-allowed}.mix-list>button:disabled:hover{color:var(--muted)}
.site-header{position:absolute;z-index:10;top:0;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-block:1.6rem;border-bottom:1px solid var(--line)}
.brand{color:var(--bone);white-space:nowrap}
.brand-caption{display:inline-flex;flex-wrap:wrap;gap:.7em}.brand-caption>span{color:var(--muted)}
.nav{display:flex;gap:clamp(1rem,2.2vw,2.5rem);font-size:.875rem}.nav a{text-decoration:none}
.language{display:flex;gap:.1rem;align-items:center;font-size:.875rem;color:var(--muted)}
.language button{border:0;background:none;padding:.5rem;min-width:2.75rem;min-height:2.75rem;cursor:pointer}
.language button[aria-pressed=true]{color:var(--bone);text-decoration:underline;text-decoration-color:var(--signal);text-underline-offset:5px}
.hero{position:relative;min-height:min(100svh,1080px);display:flex;flex-direction:column;isolation:isolate;overflow:hidden}
.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2;max-width:none;object-fit:cover;object-position:center}
.hero-image{left:auto;width:65%;object-position:50% 22%;filter:none;animation:none;transform:none}
.hero-shade{z-index:-1;background:linear-gradient(90deg,var(--ink),color-mix(in srgb,var(--ink) 90%,transparent) 24%,transparent 72%),linear-gradient(180deg,color-mix(in srgb,var(--ink) 25%,transparent),transparent 35%,color-mix(in srgb,var(--ink) 80%,transparent))}
.hero-main{flex:1;display:flex;flex-direction:column;justify-content:flex-end;padding-top:14rem;padding-bottom:3rem}
.hero-intro{margin-bottom:3.2rem}.hero-intro p{margin-top:.65rem;color:var(--bone);font-family:var(--label);font-size:.875rem;letter-spacing:.09em}
.hero h1{font:700 clamp(2rem,9.3vw,9.3rem)/1.08 var(--display);letter-spacing:-.05em;margin-left:-.04em;margin-bottom:2.5rem}
.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}
.genres{color:var(--muted);font:300 var(--label-size)/1.7 var(--label);letter-spacing:.09em}
.cta{display:inline-flex;align-items:center;justify-content:space-between;gap:3rem;padding:1rem 1.5rem;min-width:12rem;min-height:3.5rem;color:var(--bone);background:var(--signal);border:1px solid var(--signal);border-radius:0;font-size:1rem}
.cta:hover{background:var(--oxblood)}
.hero-foot{display:flex;border-top:1px solid var(--line);padding-block:1.4rem;align-items:center}
.hero-foot>*{min-height:2rem;display:flex;align-items:center}
.section{padding-block:var(--section-space)}
.section-heading{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;align-items:baseline;column-gap:1.5rem;border-top:1px solid var(--line);padding-top:1.5rem;margin-bottom:3.5rem}
.section-heading h2{font:700 clamp(1.7rem,3.8vw,3.75rem)/1.2 var(--display);letter-spacing:-.045em;overflow-wrap:anywhere}
.section-heading .index{padding-top:.25rem}.section-label{justify-self:end}
.bio-grid,.live-grid{display:grid;grid-template-columns:5fr 6fr;align-items:center;gap:clamp(3rem,7vw,7rem)}
.bio-photo,.live-image{position:relative;margin:0;width:100%}
.bio-photo img,.live-image img{width:100%;object-fit:cover}
.live-image img{filter:none}
.bio-photo,.live-image{overflow:hidden}
.bio-photo img{aspect-ratio:4/5;filter:none}
.vertical-label{position:absolute;z-index:1;left:.75rem;top:.75rem;padding:.5rem .35rem;writing-mode:vertical-rl;transform:rotate(180deg);color:var(--muted);background:var(--ink)}
.bio-copy{max-width:38rem}.bio-copy p{color:var(--bone)}
.bio-copy .lead{font-size:clamp(1.3rem,2vw,1.9rem);line-height:1.55}
.bio-copy p:not(.lead){opacity:.7;line-height:1.75}.bio-copy .text-link{margin-top:2rem}
.light,.contact{--surface:var(--bone);--text:var(--ink);color:var(--text);background:var(--surface);--line:color-mix(in srgb,var(--ink) 25%,transparent);color-scheme:light}
.release-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:3rem}
.release{display:grid;grid-template-columns:35% minmax(0,1fr);gap:1.5rem;min-width:0;padding-block:2rem;border-top:1px solid var(--line)}
.release-cover{position:relative;align-self:start;margin-bottom:2.5rem}
.release-cover img{width:100%;aspect-ratio:1;object-fit:cover;border:1px solid var(--ink)}
.release-number{position:absolute;top:calc(100% + .7rem);left:0;min-width:3rem;text-align:center;border:1px solid var(--ink);padding:.1rem .5rem;background:transparent;color:var(--ink)}
.release-cover .vertical-label{font-size:var(--label-size);left:.35rem;top:.35rem;background:var(--bone);color:var(--ink)}
.release-info{min-width:0}
.release-meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:.85rem;color:var(--muted)}
.release-meta>*{background:transparent;padding:0}
.light .release-meta,.light .release-note,.light .track-version,.light .compilation-list time{color:var(--ink);opacity:.7}
.release-info h3{font:italic 400 clamp(1.8rem,2.7vw,2.65rem)/1.13 var(--accent);letter-spacing:-.035em}
.release-info>p:not(.release-note){color:var(--ink);font-size:var(--label-size);font-family:var(--label);line-height:1.6;letter-spacing:.09em;text-transform:uppercase;background:transparent;padding:0;width:fit-content;margin-top:.8rem}
.release-links{display:flex;flex-wrap:wrap;gap:.8rem 1.25rem;margin-top:1rem}
.release-tracks{margin-top:1.5rem;border-top:1px solid var(--line)}
.release-track{padding-block:.75rem;border-bottom:1px solid var(--line)}
.release-track-toggle{display:flex;align-items:center;gap:.7rem;width:100%;padding:.3rem 0;border:0;background:none;text-align:left;color:var(--ink);cursor:pointer}
.release-track-toggle:hover,.release-track-toggle[data-state=playing]{color:var(--signal)}
.track-play-icon{display:grid;place-items:center;flex:none;width:2rem;height:2rem;border:1px solid var(--ink);font-size:.75rem;line-height:1}
.track-name{font-size:.875rem;line-height:1.5}.track-version{display:block;font-family:var(--label);font-size:.75rem;letter-spacing:.06em;color:var(--muted)}
.track-progress{display:none;margin-top:.5rem}.release-track.is-active .track-progress{display:block}
.track-seek{--progress:0%;appearance:none;-webkit-appearance:none;width:100%;height:1.5rem;margin:0;background:transparent;cursor:pointer;accent-color:var(--signal)}
.track-seek::-webkit-slider-runnable-track{height:2px;background:linear-gradient(to right,var(--signal) var(--progress),var(--ink) var(--progress))}
.track-seek::-moz-range-track{height:2px;background:var(--ink)}.track-seek::-moz-range-progress{height:2px;background:var(--signal)}
.track-seek::-webkit-slider-thumb{appearance:none;width:9px;height:9px;margin-top:-3.5px;background:var(--signal);border:0;border-radius:0}
.track-seek::-moz-range-thumb{width:9px;height:9px;background:var(--signal);border:0;border-radius:0}
.track-seek:disabled{cursor:default;opacity:.5}.track-feedback{display:flex;justify-content:space-between;gap:.5rem;font-family:var(--label);font-size:.75rem;line-height:1.5;color:var(--ink)}
.release-info .release-note{margin-top:1rem;background:transparent;padding:0;width:fit-content}
.compilations{display:grid;grid-template-columns:1fr 2fr;gap:3rem;border-top:1px solid var(--line);padding-top:2rem;margin-top:2.5rem}
.small-heading{color:var(--ink);background:transparent;padding:0;width:fit-content;align-self:start}
.compilation-list>a{display:grid;grid-template-columns:3.5rem 1fr auto 1rem;gap:1.25rem;align-items:center;padding-block:2rem;border-bottom:1px solid var(--line)}
.compilation-list>a:first-child{padding-top:0}
.compilation-list img{width:3.5rem;height:3.5rem;object-fit:cover;border:1px solid var(--ink)}
.compilation-list a>span:not(:last-child){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:var(--signal)}
.compilation-list a:hover{color:var(--signal)}
.compilation-list time{color:var(--muted);font:300 var(--label-size)/1.6 var(--label);letter-spacing:.09em;background:transparent;padding:0;white-space:nowrap}
.platforms{display:flex;gap:2.5rem;align-items:baseline;flex-wrap:wrap;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}
.platforms>.eyebrow{background:transparent;padding:0;color:var(--ink)}.platforms>div{display:flex;gap:1.2rem 2rem;flex-wrap:wrap}
.mix-feature{display:grid;grid-template-columns:5fr 6fr;align-items:center;gap:clamp(3rem,7vw,7rem)}
.mix-title h3{font:700 clamp(2.5rem,5vw,5rem)/1.15 var(--display);letter-spacing:-.055em;margin-top:1.5rem;overflow-wrap:anywhere}
.mix-title h3 span{display:block;font-size:.5em}.player-wrap{min-width:0}
.mix-list{margin-top:3rem;border-top:1px solid var(--line)}
.mix-list>a,.mix-list>button{width:100%;display:grid;grid-template-columns:3rem 1fr auto 1.5rem;align-items:center;gap:1.5rem;padding:1.5rem 0;background:none;border:0;border-bottom:1px solid var(--line);text-align:left;color:var(--bone);font-size:1.125rem;cursor:pointer}
.mix-list>button:hover,.mix-list>button[aria-current=true]{color:var(--signal)}
.mix-list .index{color:var(--muted)}.mix-list .mix-date{margin-left:auto}.mix-all{margin-top:2rem}
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.video-player{position:relative;aspect-ratio:16/9;background:var(--ink)}
.video-trigger{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:none;cursor:pointer;overflow:hidden}
.video-trigger img{width:100%;height:100%;object-fit:cover;filter:none}
.play-icon{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:3.5rem;height:3.5rem;display:grid;place-content:center;color:var(--bone);background:var(--signal);border:1px solid var(--signal);font-size:1.1rem;padding-left:.15rem}
.play-icon svg{display:block;width:1.3rem;height:1.3rem;fill:currentColor}
.video-trigger:hover .play-icon{background:var(--oxblood)}
.video-player iframe{position:absolute;inset:0;width:100%;height:100%}
.video-caption{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding-top:1.5rem}
.video-caption h3{font:700 clamp(1.05rem,1.7vw,1.6rem)/1.45 var(--display);letter-spacing:-.03em}
.video-card>p{margin-top:.65rem;color:var(--muted)}.video-card>.text-link{margin-top:1.25rem}.channel-link{margin-top:2.5rem}
.live-image img{aspect-ratio:4/5;object-position:50% 45%}
.event-list>div{display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;padding-block:1.5rem;border-bottom:1px solid var(--line);font-size:clamp(1rem,1.6vw,1.4rem);color:var(--bone)}
.event-list>div:first-child{border-top:1px solid var(--line)}.event-list .text-link{margin-top:2rem}
.contact-main{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}
.contact-main>.eyebrow{margin-bottom:.5rem;background:var(--ink);padding:.15rem .4rem}
.email{font-family:var(--body);font-size:clamp(1.1rem,3.3vw,3rem);line-height:1.5;overflow-wrap:anywhere;max-width:100%}
.phone{font-size:clamp(1.1rem,2vw,1.75rem)}
.contact-links{display:flex;gap:1.5rem 2.5rem;flex-wrap:wrap;margin-top:3rem}
.site-footer{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding-block:2rem}.footer-wordmark{color:var(--bone);letter-spacing:.09em}
.motion-photo{transform:translate3d(var(--photo-x,0px),var(--photo-y,0px),0) scale(var(--photo-scale,1));transition:transform .7s cubic-bezier(.2,.7,.2,1)}
@media(min-width:1700px){.site-header{left:calc((100% - 1440px)/2);right:calc((100% - 1440px)/2)}}
@media(max-width:1100px){
 .brand-caption{max-width:14rem;line-height:1.8;gap:0 .6em}.section-label{display:none}
 .section-heading{grid-template-columns:2.5rem minmax(0,1fr);gap:1rem}
 .release-grid{column-gap:2rem}.release{grid-template-columns:32% minmax(0,1fr);gap:1rem}
 .compilations{grid-template-columns:1fr;gap:2rem}.bio-grid,.live-grid,.mix-feature{gap:3rem}
}
@media(max-width:800px){
 .nav{display:none}.section-heading{margin-bottom:2.5rem}.bio-grid,.live-grid,.mix-feature{grid-template-columns:1fr}
 .bio-photo,.live-image{width:min(100%,480px)}.bio-copy{max-width:none}
 .release-grid{grid-template-columns:1fr}.release{grid-template-columns:32% minmax(0,1fr);gap:1.5rem}
 .release-info h3{font-size:clamp(1.85rem,5vw,2.5rem)}.video-grid{grid-template-columns:1fr;gap:3rem}
}
@media(max-width:600px){
 .site-header{padding-block:1rem;gap:.75rem}.brand{font-size:.75rem}.brand-caption{max-width:12rem}
 .language{gap:0}.language button{padding:.3rem;min-width:2.5rem}
 .hero{min-height:max(92svh,49rem)}.hero-image{width:100%;object-position:50% 12%}
 .hero-shade{background:linear-gradient(180deg,color-mix(in srgb,var(--ink) 32%,transparent),transparent 25%,color-mix(in srgb,var(--ink) 18%,transparent) 48%,color-mix(in srgb,var(--ink) 90%,transparent) 76%,var(--ink))}
 .hero-main{padding-top:24rem;padding-bottom:2rem}.hero-intro{margin-bottom:1.5rem}.hero-intro .eyebrow{display:block;max-width:18rem}
 .hero h1{font-size:9.4vw;letter-spacing:-.065em}.hero-bottom{gap:1rem;align-items:flex-start;flex-direction:column}
 .cta{min-width:11rem;padding:.85rem 1.25rem;margin-top:1rem}
 .hero-foot{padding-block:1.25rem}.hero-foot .text-link{font-size:.875rem}
 .section-heading h2{font-size:clamp(1.2rem,6vw,2rem)}.section-heading{gap:.75rem;grid-template-columns:2.25rem minmax(0,1fr)}
 .release{grid-template-columns:31% minmax(0,1fr);gap:1rem}.release-meta{font-size:.75rem;letter-spacing:.08em}
 .release-info h3{font-size:1.8rem}.release-cover .vertical-label{display:none}.release-links{gap:.6rem 1rem}
 .compilation-list>a{grid-template-columns:2.5rem 1fr 1rem;gap:.85rem}.compilation-list img{width:2.5rem;height:2.5rem}
 .compilation-list time{grid-column:2;width:fit-content;font-size:.75rem}.compilation-list>a>span:last-child{grid-column:3;grid-row:1/3}
 .platforms{gap:1.5rem}.mix-title h3{font-size:clamp(2rem,8vw,3rem)}
 .mix-list>button,.mix-list>a{gap:.6rem;grid-template-columns:2.5rem 1fr auto 1rem;font-size:1rem}
 .site-footer{flex-wrap:wrap;font-size:.75rem}.site-footer>span:nth-child(2){display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-photo{transform:none!important}}
