
    /* ─── Fonts ──────────────────────────────────────────────── */
    @font-face { font-family:'FG'; src:url('fonts/fgatf/FranklinGothicATF-Light.otf') format('opentype'); font-weight:300; font-display:swap; }
    @font-face { font-family:'FG'; src:url('fonts/fgatf/FranklinGothicATF-Regular.otf') format('opentype'); font-weight:400; font-display:swap; }
    @font-face { font-family:'FG'; src:url('fonts/fgatf/FranklinGothicATF-Medium.otf') format('opentype'); font-weight:500; font-display:swap; }
    @font-face { font-family:'FG'; src:url('fonts/fgatf/FranklinGothicATF-Bold.otf') format('opentype'); font-weight:700; font-display:swap; }
    @font-face { font-family:'FG'; src:url('fonts/fgatf/FranklinGothicATF-Heavy.otf') format('opentype'); font-weight:900; font-display:swap; }

    /* ─── Custom cursor ─────────────────────────────────────── */
    .cursor-dot {
      position: fixed;
      pointer-events: none;
      z-index: 10000;
      mix-blend-mode: difference;
      opacity: 0;
      transition: opacity .4s, transform .12s ease-out;
      transform: translate(-50%, -50%);
      font-family: 'Webdings';
      font-size: 18px;
      color: var(--fg);
      line-height: 1;
    }
    .cursor-dot.visible { opacity: 1; }
    @media (hover: none), (pointer: coarse) {
      .cursor-dot { display: none; }
    }

    /* ─── Reset ──────────────────────────────────────────────── */
    *, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
    html { scroll-behavior:smooth; }
    img, video { display:block; max-width:100%; }
    a { color:inherit; text-decoration:none; }
    ul { list-style:none; }
    button { background:none; border:none; cursor:pointer; color:inherit; font:inherit; }

    /* ─── Root ───────────────────────────────────────────────── */
    :root {
      --white:#fff; --off:#a0a0a0; --dim:#555;
      --rule:rgba(255,255,255,.08); --bg:#000; --fg:#fff;
      --f:'FG','Franklin Gothic Medium',Arial,sans-serif;
      --space-xl:clamp(140px,16vw,220px); --space-lg:clamp(100px,12vw,160px);
      --space-md:clamp(64px,8vw,100px); --space-sm:clamp(40px,5vw,64px);
      --ease:cubic-bezier(.25,.46,.45,.94);
    }

    body {
      background:var(--bg); color:var(--fg); font-family:var(--f);
      font-weight:400; font-size:14px; line-height:1.55;
      -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
      overflow-x:hidden;
    }

    /* ─── Grain overlay ─────────────────────────────────────── */
    body::after {
      content:''; position:fixed; inset:0; pointer-events:none; z-index:9999;
      opacity:.028;
      background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
      background-size:180px;
    }

    /* ─── Utility ────────────────────────────────────────────── */
    .container { max-width:1320px; margin:0 auto; padding:0 clamp(24px,5vw,80px); }
    .label { font-size:10px; font-weight:300; letter-spacing:.3em; text-transform:uppercase; color:var(--off); }

    /* ─── Nav ────────────────────────────────────────────────── */
    nav { position:fixed; top:0; left:0; right:0; z-index:100; display:flex; align-items:center; justify-content:space-between; padding:28px clamp(24px,5vw,80px); mix-blend-mode:difference; transition:transform .4s var(--ease); }
    nav.nav-hidden { transform:translateY(-100%); }
    .logo { display:flex; align-items:center; gap:10px; }
    .logo img { height:32px; width:auto; }
    .logo-text { font-weight:700; font-size:18px; letter-spacing:.22em; text-transform:uppercase; }
    .nav-links { display:flex; gap:40px; }
    .nav-links a { font-size:11px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; color:var(--off); background-image:linear-gradient(var(--fg),var(--fg)); background-size:0% 1px; background-repeat:no-repeat; background-position:0 100%; transition:background-size .35s ease, color .3s; }
    .nav-links a:hover, .nav-links a.current { color:var(--fg); background-size:100% 1px; }
    .nav-cta { font-size:10px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; padding:10px 24px; border:1px solid rgba(255,255,255,.3); transition:background .3s, color .3s; }
    .nav-cta:hover { background:var(--fg); color:var(--bg); }

    .mob-cta-pill {
      display: none;
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .22em;
      text-transform: uppercase;
      padding: 8px 14px;
      border: 1px solid rgba(255,255,255,.35);
      margin-right: 10px;
      color: var(--fg);
    }
    .mob-cta-pill:hover { background: var(--fg); color: var(--bg); border-color: var(--fg); }

    .nav-hamburger { display:none; }
    .nav-hamburger span { display:block; width:22px; height:1px; background:var(--fg); transition:transform .3s ease, opacity .3s ease; transform-origin:center; }
    .nav-hamburger span + span { margin-top:6px; }
    .nav-hamburger.open span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
    .nav-hamburger.open span:nth-child(2) { opacity:0; transform:scaleX(0); }
    .nav-hamburger.open span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
    .mob-nav { position:fixed; inset:0; z-index:150; background:var(--bg); display:flex; flex-direction:column; padding:120px clamp(24px,8vw,80px) 60px; opacity:0; pointer-events:none; transform:translateY(-12px); transition:opacity .35s ease, transform .35s ease; }
    .mob-nav.open { opacity:1; pointer-events:all; transform:translateY(0); }
    .mob-nav-links { display:flex; flex-direction:column; gap:32px; flex:1; }
    .mob-nav-links a { font-size:clamp(28px,9vw,52px); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--fg); line-height:1; transition:color .25s; }
    .mob-nav-links a:hover { color:var(--off); }
    .mob-nav-cta { display:inline-block; font-size:11px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; padding:14px 32px; border:1px solid rgba(255,255,255,.4); align-self:flex-start; transition:background .3s, color .3s; }
    .mob-nav-cta:hover { background:var(--fg); color:var(--bg); }

    /* ─── Buttons ────────────────────────────────────────────── */
    .btn--link { display:inline-flex; align-items:center; gap:8px; font-size:11px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; padding:0; border:none; color:var(--off); transition:color .3s; }
    .btn--link::after { content:'\2192'; font-size:14px; transition:transform .3s var(--ease); }
    .btn--link:hover { color:var(--fg); background:none; }
    .btn--link:hover::after { transform:translateX(4px); }

    /* ─── Page header ────────────────────────────────────────── */
    .page-header {
      padding:clamp(140px,18vw,220px) 0 clamp(48px,6vw,72px);
      border-bottom:1px solid var(--rule);
    }
    .page-header h1 {
      font-weight:700;
      font-size:clamp(52px,10vw,128px);
      letter-spacing:.05em;
      line-height:.88;
      margin-top:18px;
    }
    .rule { width:40px; height:1px; background:var(--dim); margin-top:28px; }
    /* ─── Filter chips ───────────────────────────────────────── */
    .filter-bar {
      display:flex; gap:8px; flex-wrap:wrap;
      padding:clamp(28px,4vw,48px) 0;
      border-bottom:1px solid var(--rule);
    }
    .chip {
      font-size:10px; font-weight:700; letter-spacing:.2em; text-transform:uppercase;
      padding:9px 20px;
      border:1px solid var(--rule); color:var(--dim);
      transition:border-color .25s, color .25s;
    }
    .chip:hover { border-color:rgba(255,255,255,.2); color:var(--off); }
    .chip.active { border-color:var(--fg); color:var(--fg); }

    /* ─── Discography grid ───────────────────────────────────── */
    .disco-grid {
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:2px;
      padding-top:2px;
    }
    .release { overflow:hidden; }
    .release.hidden { display:none; }
    .release a { display:block; position:relative; aspect-ratio:1; }
    .release-art { width:100%; height:100%; overflow:hidden; }
    .release-art img { width:100%; height:100%; object-fit:cover; filter:grayscale(15%); transition:transform .6s var(--ease), filter .4s var(--ease); }
    .release:hover .release-art img { transform:scale(1.04); filter:grayscale(0%); }

    /* Year badge — visible at rest, fades on hover */
    .release-year {
      position:absolute;
      top:14px; right:16px;
      font-size:9px; font-weight:700; letter-spacing:.22em; text-transform:uppercase;
      color:rgba(255,255,255,.38);
      z-index:2;
      transition:opacity .3s;
    }
    .release:hover .release-year { opacity:0; }

    .release-info { position:absolute; bottom:0; left:0; right:0; padding:20px 24px 24px; background:linear-gradient(to top, rgba(0,0,0,.75) 0%, transparent 100%); z-index:1; opacity:0; transform:translateY(6px); transition:opacity .35s ease, transform .35s ease; }
    .release:hover .release-info { opacity:1; transform:translateY(0); }
    .release-info h4 { font-weight:700; font-size:13px; letter-spacing:.1em; text-transform:uppercase; margin-bottom:4px; }
    .release-info p { font-size:11px; font-weight:400; letter-spacing:.12em; text-transform:uppercase; color:var(--off); }

    /* ─── Marquee ────────────────────────────────────────────── */
    .marquee { overflow:hidden; padding:var(--space-sm) 0; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); }
    .marquee-track { display:flex; align-items:center; width:max-content; animation:marquee-scroll 30s linear infinite; will-change:transform; }
    .marquee-track:hover { animation-play-state:paused; }
    .marquee-text { font-weight:700; font-size:clamp(48px,7vw,96px); letter-spacing:.06em; text-transform:uppercase; white-space:nowrap; padding:0 clamp(20px,3vw,40px); color:rgba(255,255,255,.06); transition:color .6s; }
    .marquee:hover .marquee-text { color:rgba(255,255,255,.12); }
    .marquee-dot { width:6px; height:6px; border-radius:50%; background:rgba(255,255,255,.12); flex-shrink:0; }
    @keyframes marquee-scroll { from { transform:translateX(0); } to { transform:translateX(-50%); } }

    /* ─── Footer ─────────────────────────────────────────────── */
    footer { padding:clamp(48px,7vw,80px) clamp(24px,5vw,80px) clamp(32px,4vw,48px); }
    .footer-grid { max-width:1320px; margin:0 auto; display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; margin-bottom:64px; }
    .footer-brand-name { font-weight:700; font-size:22px; letter-spacing:.18em; text-transform:uppercase; margin-bottom:14px; display:block; }
    .footer-brand p { font-size:13px; color:var(--off); line-height:1.7; max-width:260px; margin-bottom:20px; }
    .footer-tagline { font-weight:300; font-size:14px; color:var(--dim); }
    .footer-col h5 { font-size:9px; font-weight:700; letter-spacing:.25em; text-transform:uppercase; color:var(--dim); margin-bottom:18px; }
    .footer-col ul { display:flex; flex-direction:column; gap:10px; }
    .footer-col a { font-size:13px; color:var(--off); background-image:linear-gradient(var(--fg),var(--fg)); background-size:0% 1px; background-repeat:no-repeat; background-position:0 100%; transition:background-size .35s ease, color .3s; }
    .footer-col a:hover { color:var(--fg); background-size:100% 1px; }
    .footer-bottom { max-width:1320px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; padding-top:32px; border-top:1px solid var(--rule); flex-wrap:wrap; gap:16px; }
    .footer-bottom p { font-size:11px; color:var(--dim); letter-spacing:.04em; }
    .footer-socials { display:flex; gap:20px; align-items:center; }
    .footer-socials a { display:flex; align-items:center; justify-content:center; width:20px; height:20px; color:var(--dim); transition:color .3s; }
    .footer-socials a:hover { color:var(--fg); }
    .footer-socials svg { width:18px; height:18px; fill:currentColor; }

    /* ─── Scroll reveal (upgraded: smoother, connected) ─────── */
    .r {
      opacity: 0;
      transform: translateY(32px);
      transition:
        opacity .95s cubic-bezier(.22, 1, .36, 1),
        transform 1.05s cubic-bezier(.22, 1, .36, 1);
      transition-delay: var(--r-delay, 0s);
      will-change: opacity, transform;
    }
    .r.v { opacity: 1; transform: translateY(0); }

    /* Preserve existing manual stagger classes where used */
    .r-stagger > .r:nth-child(1) { --r-delay: 0s; }
    .r-stagger > .r:nth-child(2) { --r-delay: .07s; }
    .r-stagger > .r:nth-child(3) { --r-delay: .14s; }
    .r-stagger > .r:nth-child(4) { --r-delay: .21s; }
    .r-stagger > .r:nth-child(5) { --r-delay: .28s; }
    .r-stagger > .r:nth-child(6) { --r-delay: .35s; }

    /* Page-load fade — connects navigation between pages */
    @keyframes page-in {
      from { opacity: 0; }
      to { opacity: 1; }
    }
    body { animation: page-in .55s ease-out both; }

    /* Honor reduced motion */
    @media (prefers-reduced-motion: reduce) {
      .r, .r-stagger > .r {
        transition: none !important;
        transform: none !important;
        opacity: 1 !important;
      }
      body { animation: none !important; }
      *, *::before, *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
        scroll-behavior: auto !important;
      }
    }

    /* ─── Mobile ─────────────────────────────────────────────── */
    @media (max-width:960px) {
      .nav-links, .nav-cta { display:none; }
      .nav-hamburger { display:block; } .mob-cta-pill { display: inline-block; }
      .disco-grid { grid-template-columns:1fr 1fr; }
    }
    @media (max-width:600px) {
      .disco-grid { grid-template-columns:1fr 1fr; }
      .footer-grid { grid-template-columns:1fr 1fr; }
      .release-info { opacity:1; transform:none; }
      .release-year { opacity:0; }
    }
    @media (max-width:440px) {
      .disco-grid { grid-template-columns:1fr; }
      .footer-grid { grid-template-columns:1fr; }
      .footer-bottom { flex-direction:column; align-items:flex-start; }
    }
  
.inline-style-665b60 { transition-delay:.1s }
.inline-style-b1cf9b { transition-delay:.2s }
.inline-style-098d0a { max-width:1440px; padding-left:0; padding-right:0; }
.inline-style-cf1ef7 { transition-delay:.08s }
.inline-style-dbf551 { transition-delay:.16s }
.inline-style-19f22a { transition-delay:.24s }
.inline-style-31681a { transition-delay:.32s }
.inline-style-e2ae2d { transition-delay:.40s }
.inline-style-3c2bc0 { margin-top:clamp(80px,10vw,140px) }
.inline-style-b34b65 { height:32px; width:auto; margin-bottom:14px; display:block; }