:root{
  --ink:#0a0908;
  --ash:#15110f;
  --char:#221b17;
  --clay:#b85c38;
  --clay-deep:#9a4a2c;
  --terra:#e0a96d;
  --bone:#f1e9db;
  --sand:#e8dcc4;
  --ember:#ff5b1f;
  --line:#3a322d;
  --display:"Helvetica Neue",Arial,sans-serif;
  --mono:"JetBrains Mono","SF Mono",Menlo,Consolas,monospace;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--ink)}
body{background:var(--ink);color:var(--bone);font-family:Inter,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:-9999px;top:0;background:var(--bone);color:var(--ink);padding:12px 18px;font-family:var(--mono);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;z-index:200;border-radius:2px}
.skip:focus{left:12px;top:12px}
:focus-visible{outline:2px solid var(--ember);outline-offset:3px;border-radius:2px}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important}
}

.site-nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 24px;background:linear-gradient(180deg,rgba(184,92,56,.92),rgba(184,92,56,0));transition:background .25s}
.site-nav.dark{background:linear-gradient(180deg,rgba(10,9,8,.95),rgba(10,9,8,0))}
.nav-lock{font-family:var(--display);font-weight:900;font-size:18px;letter-spacing:-.02em;color:#150d09;text-decoration:none}
.nav-lock span{color:var(--ember)}
.site-nav.dark .nav-lock{color:var(--bone)}
.site-nav ul{display:flex;align-items:center;gap:22px;list-style:none}
.site-nav a:not(.nav-lock){color:#150d09;text-decoration:none;font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;padding:8px 2px;transition:color .2s}
.site-nav.dark a:not(.nav-lock){color:var(--bone)}
.site-nav a:hover,.site-nav a[aria-current="true"]{color:var(--ember)!important}
.nav-toggle{display:none;background:transparent;border:0;color:currentColor;width:44px;height:44px}
.nav-toggle span[aria-hidden="true"],.nav-toggle span[aria-hidden="true"]::before,.nav-toggle span[aria-hidden="true"]::after{display:block;width:24px;height:2px;background:#150d09;content:"";margin:auto;transition:transform .2s}
.nav-toggle span[aria-hidden="true"]::before{transform:translateY(-7px)}
.nav-toggle span[aria-hidden="true"]::after{transform:translateY(5px)}
.site-nav.dark .nav-toggle span[aria-hidden="true"],.site-nav.dark .nav-toggle span[aria-hidden="true"]::before,.site-nav.dark .nav-toggle span[aria-hidden="true"]::after{background:var(--bone)}

.hero{position:relative;min-height:100svh;display:grid;grid-template-rows:var(--hero-clay-height,calc(50svh - .5px)) 1px minmax(0,1fr);background:var(--ink);overflow:hidden}
.clay-half{position:relative;background:linear-gradient(180deg,#c46739 0%,#a64f2d 100%);overflow:hidden}
.ash-half{position:relative;background:linear-gradient(180deg,#15110f 0%,#050403 100%);overflow:hidden}
.horizon{height:1px;background:var(--ink)}
.clay-half::before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='112' viewBox='0 0 200 112'><g stroke='rgba(20,11,7,0.34)' stroke-width='1.5' fill='none'><line x1='0' y1='0' x2='200' y2='0'/><line x1='0' y1='56' x2='200' y2='56'/><line x1='0' y1='0' x2='0' y2='56'/><line x1='100' y1='56' x2='100' y2='112'/></g></svg>");background-size:200px 112px;background-position:left bottom;background-repeat:repeat}
.ash-half::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at 20% 80%,rgba(255,91,31,.08),transparent 50%),radial-gradient(circle at 80% 30%,rgba(184,92,56,.06),transparent 60%)}
.grain{position:absolute;inset:0;pointer-events:none;opacity:.08;mix-blend-mode:overlay;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.9'/></svg>")}
.wordmark{position:absolute;left:6vw;font-family:var(--display);font-weight:900;font-size:clamp(82px,16vw,260px);line-height:.82;letter-spacing:-.05em}
.wm-top{bottom:6vh;color:#150d09}
.wm-bot{top:6vh;color:var(--bone)}
.hero-meta{position:absolute;right:6vw;text-align:right;font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;line-height:1.7;font-weight:700}
.hero-meta-top{top:14vh;color:#150d09}
.hero-meta-bot{bottom:14vh;color:var(--bone);opacity:.75}
.scroll-hint{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);z-index:5;display:flex;flex-direction:column;align-items:center;gap:8px;font-family:var(--mono);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:rgba(241,233,219,.62);pointer-events:none}
.scroll-hint span{width:1px;height:30px;background:rgba(241,233,219,.42);animation:bob 2s ease-in-out infinite;transform-origin:top}
@keyframes bob{0%,100%{transform:scaleY(.28)}50%{transform:scaleY(1)}}

.section{padding:120px 6vw;position:relative}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--terra);font-weight:800;margin-bottom:16px;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";display:inline-block;width:24px;height:2px;background:var(--clay)}
h1,h2,h3{font-family:var(--display)}
h2{font-weight:900;font-size:clamp(40px,4.4vw,64px);line-height:.95;letter-spacing:-.02em;max-width:14ch}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:32px}
.section-head p{max-width:42ch;color:#8a8074;font-family:var(--mono);font-size:13px;letter-spacing:.08em}

.about{background:linear-gradient(180deg,var(--ink) 0%,var(--ash) 100%);display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:start}
.about p{font-size:18px;line-height:1.7;color:#cfc4ad;margin-bottom:20px;max-width:56ch}
.about p b{color:var(--bone)}
.quote p{font-family:var(--display);font-weight:650;font-style:italic;font-size:clamp(24px,2.6vw,34px);line-height:1.22;letter-spacing:-.005em;color:var(--bone);padding-left:20px;border-left:2px solid var(--clay)}
.quote span{color:var(--clay);font-style:normal;font-weight:900}

.mixes{background:var(--ash);overflow:hidden}
.mix-wall{display:grid;grid-template-columns:repeat(24,1fr);grid-auto-rows:minmax(124px,auto);gap:8px;align-items:stretch}
.brick{background:var(--clay);padding:18px;position:relative;overflow:hidden;color:#150d09;font-family:var(--mono);display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;min-height:124px}
.brick:hover,.brick:focus-visible{transform:translateY(-3px);box-shadow:0 12px 32px rgba(184,92,56,.22)}
.brick.dark{background:var(--char);color:var(--bone)}
.brick.bone{background:var(--sand);color:#150d09}
.brick::before{content:"";position:absolute;inset:0;border:1px solid rgba(20,11,7,.18);pointer-events:none}
.brick.dark::before{border-color:rgba(241,233,219,.06)}
.brick .label{font-size:10px;letter-spacing:.22em;text-transform:uppercase;opacity:.75}
.brick strong{font-family:var(--display);font-weight:900;font-size:clamp(22px,2.15vw,34px);line-height:.98;letter-spacing:-.01em;max-width:13ch}
.brick small{font-size:11px;letter-spacing:.1em;opacity:.72}
.mix-wall .brick:nth-child(1){grid-column:1 / span 9}
.mix-wall .brick:nth-child(2){grid-column:10 / span 7}
.mix-wall .brick:nth-child(3){grid-column:17 / span 8}
.mix-wall .brick:nth-child(4){grid-column:1 / span 6}
.mix-wall .brick:nth-child(5){grid-column:7 / span 9}
.mix-wall .brick:nth-child(6){grid-column:16 / span 9}
.mix-wall .brick:nth-child(7){grid-column:1 / span 11}
.mix-wall .brick:nth-child(8){grid-column:12 / span 13}

.reel{position:relative;background:var(--ink);min-height:82vh;overflow:hidden}
.reel-lead{position:absolute;left:6vw;top:72px;z-index:3;max-width:460px}
.reel-lead h2{text-shadow:0 3px 24px rgba(0,0,0,.7)}
.reel-lead p{margin-top:20px;color:#d5c9b3;line-height:1.65;max-width:46ch;text-shadow:0 2px 16px #000}
.reel-stage{display:grid;grid-template-columns:2fr 1fr 1fr;height:min(84vh,760px);min-height:560px;background:#050403}
.reel-stage.single{grid-template-columns:1fr}
.reel-card{position:relative;display:block;overflow:hidden;background:#050403;color:var(--bone);text-decoration:none;min-height:260px}
.reel-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.08);transition:transform .5s,filter .5s}
.reel-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,4,3,.08),rgba(5,4,3,.55))}
.reel-card:hover img{transform:scale(1.035);filter:saturate(1.03) contrast(1.12)}
.reel-card span{position:absolute;left:20px;bottom:18px;z-index:2;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(241,233,219,.75)}
.reel-card.feature{grid-row:span 2}
.reel-stage.single .reel-card.feature{grid-row:auto}

.schedule{background:linear-gradient(180deg,var(--ash) 0%,var(--ink) 100%)}
.gigs{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.gig{display:grid;grid-template-columns:120px minmax(180px,1.4fr) 1fr 1fr auto;gap:24px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:14px;transition:background .2s,padding .2s}
.gig:hover{background:rgba(184,92,56,.07);padding-left:8px;padding-right:8px}
.gig .date{color:var(--ember);font-weight:800;letter-spacing:.04em}
.gig .venue{font-family:var(--display);font-weight:800;font-size:18px;color:var(--bone)}
.gig .city{color:#cfc4ad}.gig .country{color:#8a8074;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.gig .tix{justify-self:end;color:#150d09;background:var(--ember);padding:12px 18px;min-height:44px;display:inline-flex;align-items:center;text-decoration:none;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;border-radius:2px;transition:transform .15s,background .15s}
.gig .tix:hover{transform:translateY(-2px);background:#ff7a35}
.gig .status{justify-self:end;color:#8a8074;background:var(--char);padding:12px 18px;min-height:44px;display:inline-flex;align-items:center;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;border-radius:2px}
.gig.past{opacity:.48}
.gig.past:hover{background:rgba(255,255,255,.025);padding-left:0;padding-right:0}
.gig.past .date{color:#8a8074}
.gig.past .venue{color:#aaa095}
.gig.past .city{color:#857b70}
.gig.past .country{color:#625950}
.gig.past .status{background:#171311;color:#6d655d}
.empty{padding:28px 0;color:#8a8074;font-family:var(--mono);letter-spacing:.08em}
.skeleton{opacity:.55}.skeleton span{height:18px;background:var(--line);display:block}

.book{background:var(--ink);color:#150d09;padding:120px 6vw;position:relative;overflow:hidden}
.book::before{content:"";position:absolute;left:0;right:0;top:0;height:var(--book-brick-height,100%);pointer-events:none;background-color:var(--clay);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='112' viewBox='0 0 200 112'><g stroke='rgba(20,11,7,0.22)' stroke-width='1.5' fill='none'><line x1='0' y1='0' x2='200' y2='0'/><line x1='0' y1='56' x2='200' y2='56'/><line x1='0' y1='0' x2='0' y2='56'/><line x1='100' y1='56' x2='100' y2='112'/></g></svg>");background-size:200px 112px;background-position:left top;background-repeat:repeat;overflow:hidden}
.book-inner{position:relative;display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:end}
.book .eyebrow{color:#000}.book .eyebrow::before{background:#150d09}
.book h2{color:#150d09;margin-bottom:24px}
.book p{font-family:var(--mono);font-size:13px;letter-spacing:.13em;text-transform:uppercase;line-height:1.8;color:#000;font-weight:750}
.stamp{justify-self:end;display:inline-block;background:#150d09;color:var(--bone);padding:28px 44px;text-decoration:none;font-family:var(--display);font-weight:900;font-size:28px;letter-spacing:.02em;border-radius:2px;transition:transform .15s,background .15s;min-height:44px}
.stamp::after{content:" ↗";color:var(--ember)}
.stamp:hover{transform:translate(-2px,-2px);background:#000}
.stamp span{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.22em;font-weight:700;opacity:.85;margin-bottom:6px;color:var(--terra);text-transform:uppercase}

footer{background:var(--ink);padding:64px 6vw 32px;border-top:1px solid var(--line)}
.foot-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px;margin-bottom:48px}
.foot-grid h2{font-size:18px;letter-spacing:-.01em;margin-bottom:12px}
.foot-grid h3{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--terra);margin-bottom:12px}
.foot-grid a{color:var(--bone);text-decoration:none;font-size:14px;display:block;padding:7px 0;min-height:34px;transition:color .2s}
.foot-grid a:hover{color:var(--ember)}
.foot-grid p{color:#8a8074;font-size:13px;line-height:1.6}
.foot-end{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:11px;color:#5a5048;letter-spacing:.12em;text-transform:uppercase;gap:20px}

@media(max-width:880px){
  .site-nav{align-items:flex-start;background:rgba(184,92,56,.96)}
  .site-nav.dark{background:rgba(10,9,8,.96)}
  .nav-toggle{display:block}
  .site-nav ul{position:absolute;left:0;right:0;top:64px;display:none;flex-direction:column;align-items:flex-start;gap:0;padding:10px 24px 20px;background:inherit}
  .site-nav.open ul{display:flex}
  .site-nav li{width:100%}
  .site-nav a:not(.nav-lock){display:block;padding:14px 0}
  .hero-meta{font-size:10px;right:5vw}
  .wordmark{left:5vw;font-size:clamp(72px,21vw,150px)}
  .about{grid-template-columns:1fr;gap:44px}
  .section{padding:88px 5vw}
  .section-head{display:block}
  .section-head p{margin-top:18px}
  .mix-wall{grid-template-columns:repeat(8,1fr);grid-auto-rows:minmax(112px,auto);gap:7px}
  .mix-wall .brick{min-height:112px}
  .mix-wall .brick:nth-child(1){grid-column:1 / span 5}
  .mix-wall .brick:nth-child(2){grid-column:6 / span 3}
  .mix-wall .brick:nth-child(3){grid-column:1 / span 4}
  .mix-wall .brick:nth-child(4){grid-column:5 / span 4}
  .mix-wall .brick:nth-child(5){grid-column:1 / span 3}
  .mix-wall .brick:nth-child(6){grid-column:4 / span 5}
  .mix-wall .brick:nth-child(7){grid-column:1 / span 5}
  .mix-wall .brick:nth-child(8){grid-column:6 / span 3}
  .reel{min-height:auto}
  .reel-lead{position:relative;left:auto;top:auto;padding:84px 5vw 28px;background:var(--ink)}
  .reel-stage{grid-template-columns:1fr;height:auto;min-height:0}
  .reel-card{height:360px}
  .reel-card.feature{grid-row:auto}
  .gig{grid-template-columns:96px 1fr;grid-template-rows:auto auto auto auto;gap:8px}
  .gig .city,.gig .country{grid-column:2}
  .gig .tix,.gig .status{grid-column:1 / -1;justify-self:start;margin-top:8px}
  .book-inner{grid-template-columns:1fr}
  .stamp{justify-self:start}
  .foot-grid{grid-template-columns:1fr}
  .foot-end{align-items:flex-start;flex-direction:column}
}

@media(max-width:520px){
  .hero-meta-top{top:10vh}
  .hero-meta-bot{bottom:17vh}
  .scroll-hint{bottom:4px}
  .quote p{font-size:26px}
  .mix-wall{display:flex;flex-direction:column;gap:7px}
  .mix-wall .brick{width:calc(100% - 22px);min-height:116px}
  .mix-wall .brick:nth-child(even){margin-left:22px}
  .mix-wall .brick:nth-child(odd){margin-left:0}
}
