/* MONOLITH — shared page chrome (subpages)
   tokens · base · nav · footer · buttons · masthead · index rows · reveal */

:root{
  --bg:#0B0B0A;
  --bg2:#100F0D;
  --line:#262521;
  --bone:#EAE6DC;
  --grey:#B9B5AA;
  --dim:#8F8B80;
  --accent:#EAE6DC;
  --font-display:'Anton',sans-serif;
  --disp-scale:1;
  --disp-track:.01em;
  --photo-filter:grayscale(1) contrast(1.1) brightness(.94);
  --prose:#D5D1C6;
  --dim2:#6B675D;
  --edge:#3A382F;
  --panel:#15140F;
  --veil:rgba(11,11,10,.8);
  --veil2:rgba(11,11,10,.97);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:auto;}
body{background:var(--bg);color:var(--bone);font-family:'Hanken Grotesk',sans-serif;font-size:16px;line-height:1.55;text-wrap:pretty;}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}

.display{font-family:var(--font-display);font-weight:400;text-transform:uppercase;letter-spacing:var(--disp-track);}
.mono{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);}
.mono em{font-style:normal;color:var(--accent);}
.wrap{padding-left:48px;padding-right:48px;}

.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--bone);color:var(--bone);font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;padding:0 30px;height:52px;cursor:pointer;background:transparent;transition:background .18s ease,color .18s ease;}
.btn:hover{background:var(--bone);color:var(--bg);}
.btn.solid{background:var(--bone);color:var(--bg);}
.btn.solid:hover{background:transparent;color:var(--bone);}

.ph{background:repeating-linear-gradient(45deg,var(--panel) 0 10px,var(--bg2) 10px 20px);display:flex;align-items:center;justify-content:center;}
.ph span{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim2);border:1px dashed var(--edge);padding:6px 10px;background:var(--veil);text-align:center;}

/* reveal */
html.js .reveal{opacity:1;transform:none;}
@media (prefers-reduced-motion: no-preference){
  html.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);}
  html.js .reveal.in{opacity:1;transform:none;}
  /* clip-reveal — big mastheads wipe up from a mask instead of fading */
  html.js .masthead h1.reveal{opacity:1;transform:none;clip-path:inset(0 0 105% 0);transition:clip-path .95s cubic-bezier(.16,1,.3,1);}
  html.js .masthead h1.reveal.in{clip-path:inset(-8% 0 -8% 0);}
}

/* nav */
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;height:80px;border-bottom:1px solid var(--line);background:var(--veil2);backdrop-filter:blur(14px);}
.nav .brand{font-size:20px;letter-spacing:.04em;white-space:nowrap;}
.nav-links{display:flex;gap:36px;}
.nav-links a{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);transition:color .15s ease;}
.nav-links a:hover{color:var(--bone);}
.nav-links a.on{color:var(--bone);}
.nav .btn{height:42px;padding:0 20px;}
.scrollbar{position:absolute;left:0;bottom:-1px;height:1px;background:var(--bone);width:0;z-index:60;}

/* masthead */
.masthead{padding-top:88px;padding-bottom:48px;border-bottom:1px solid var(--line);}
.masthead .folio{display:flex;justify-content:space-between;margin-bottom:28px;}
.masthead h1{font-family:var(--font-display);font-weight:400;text-transform:uppercase;letter-spacing:var(--disp-track);font-size:clamp(72px,11vw,160px);line-height:.92;}
.masthead .standfirst{color:var(--grey);font-size:18px;max-width:56ch;margin-top:24px;}

/* sections */
.section{padding-top:96px;padding-bottom:88px;border-bottom:1px solid var(--line);}
.sec-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:44px;gap:24px;flex-wrap:wrap;}
.sec-head h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;letter-spacing:var(--disp-track);font-size:calc(56px * var(--disp-scale));line-height:.98;}

/* index rows (releases, events, coverage) */
.idx-row{display:grid;grid-template-columns:120px 1fr auto auto;gap:28px;align-items:baseline;padding:24px 0;border-bottom:1px solid var(--line);transition:padding-left .25s ease;}
.idx-row:hover{padding-left:18px;}
.idx-row .h{font-family:var(--font-display);font-weight:400;text-transform:uppercase;letter-spacing:var(--disp-track);font-size:28px;line-height:1.05;}
.idx-row .sf{color:var(--grey);font-size:14px;display:block;margin-top:6px;max-width:60ch;}
.idx-row .arrow{font-family:'JetBrains Mono',monospace;color:var(--dim);transition:transform .2s ease,color .2s ease;}
.idx-row:hover .arrow{transform:translateX(4px);color:var(--bone);}

/* prose (about) */
.prose{max-width:720px;}
.prose p{font-size:17px;line-height:1.75;color:var(--prose);margin-bottom:24px;}
.prose h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:34px;margin:56px 0 20px;}

/* CTA closer */
.closer{text-align:center;padding-top:110px;padding-bottom:110px;border-bottom:1px solid var(--line);}
.closer .big{font-family:var(--font-display);font-weight:400;text-transform:uppercase;letter-spacing:var(--disp-track);font-size:clamp(48px,8vw,96px);line-height:.96;}
.closer p{color:var(--grey);margin:24px auto 36px;max-width:50ch;}
.closer .row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

/* footer */
.footer{display:flex;justify-content:space-between;align-items:center;padding:40px 48px;gap:24px;flex-wrap:wrap;}
.footer-links{display:flex;gap:24px;flex-wrap:wrap;}
.footer-links a{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);}
.footer-links a:hover{color:var(--bone);}

@media (max-width:900px){
  .wrap{padding-left:18px;padding-right:18px;}
  .mono{font-size:10.5px;letter-spacing:.1em;}
  .btn{height:46px;padding:0 20px;font-size:11px;}
  .masthead h1{font-size:clamp(44px,14vw,72px);}
  .masthead .standfirst{font-size:15px;}
  body{font-size:15px;}
  .nav{height:62px;}
  .nav .brand{font-size:15px;}
  .nav-links{display:none;}
  .nav .btn{height:36px;padding:0 14px;font-size:10px;}
  .masthead{padding-top:48px;padding-bottom:28px;}
  .section{padding-top:56px;padding-bottom:48px;}
  .sec-head h2{font-size:calc(32px * var(--disp-scale));}
  .idx-row{grid-template-columns:1fr auto;gap:8px 16px;}
  .idx-row .c-hide{display:none;}
  .idx-row .h{font-size:20px;}
  .footer{flex-direction:column;align-items:flex-start;padding:28px 18px;}
}

/* ---- light theme (toggled from the nav; persisted in localStorage) ---- */
:root[data-theme="light"]{
  --bg:#EDE9DF;
  --bg2:#E4DFD2;
  --line:#CFC9BA;
  --bone:#16150F;
  --grey:#4F4B42;
  --dim:#6B675D;
  --accent:#16150F;
  --prose:#3F3C35;
  --dim2:#7A766B;
  --edge:#B8B2A2;
  --panel:#E4DFD2;
  --veil:rgba(237,233,223,.8);
  --veil2:rgba(237,233,223,.97);
}
[data-theme="light"] .grain{opacity:.4;filter:invert(1);}
[data-theme="light"] .lmq-track img{filter:invert(1);}
[data-theme="light"] .mc-img.brand img{filter:invert(1);}
[data-theme="light"] .mc-img.brand{background:var(--panel);}
.theme-btn{height:36px;padding:0 14px;font-size:10px;margin-right:10px;}
