  :root{
    --bg:#08070a;
    --bg-2:#0e0c10;
    --panel:#141117;
    --bone:#ece7dd;
    --bone-dim:#aaa297;
    --bone-faint:#756e64;
    --line:#221f27;
    --line-2:#322d39;
    --ox:#a8323f;
    --ox-soft:#cf606b;
    --plinth:#26232a; /* live-controlled finish */
    --maxw:1180px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    .record{animation:none!important}
    .track{animation:none!important}
    .spot-breathe,.haze{animation:none!important}
    *{transition-duration:.001s!important}
  }
  body{font-family:'Inter Tight',system-ui,sans-serif;background:var(--bg);color:var(--bone);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  ::selection{background:var(--ox);color:var(--bone)}
  a{color:inherit;text-decoration:none}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;width:100%}
  h1,h2,h3{font-family:'Fraunces',serif;font-weight:500;letter-spacing:-.01em;line-height:1.02;color:var(--bone)}
  :focus-visible{outline:2px solid var(--ox-soft);outline-offset:4px}
  .eyebrow{font-family:'Inter Tight';font-weight:500;font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:var(--ox-soft)}

  /* ---------- FLOATING CHROME ---------- */
  .progress{position:fixed;top:0;left:0;height:2px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--ox),var(--ox-soft));z-index:80;will-change:transform}
  .corner-mark{position:fixed;top:22px;left:26px;z-index:70;display:flex;align-items:center;gap:10px;mix-blend-mode:normal}
  .corner-mark .dot{width:9px;height:9px;border-radius:50%;background:var(--ox);box-shadow:0 0 14px 1px rgba(168,50,63,.7)}
  .corner-mark .wm{font-family:'Fraunces';font-weight:600;font-size:19px;letter-spacing:.02em;color:var(--bone)}
  .corner-mark .wm .reg{font-size:9px;vertical-align:super;color:var(--bone-faint);letter-spacing:0}
  .float-cta{position:fixed;top:18px;right:24px;z-index:70;font-family:'Inter Tight';font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--bone);background:rgba(168,50,63,.14);border:1px solid var(--ox);padding:11px 20px;border-radius:999px;cursor:pointer;backdrop-filter:blur(8px);transition:.3s;box-shadow:0 6px 26px -10px rgba(0,0,0,.8)}
  .float-cta:hover{background:var(--ox);color:#fff;box-shadow:0 8px 30px -8px rgba(168,50,63,.6)}
  .top-scrim{position:fixed;top:0;left:0;right:0;height:92px;z-index:60;pointer-events:none;background:linear-gradient(to bottom,rgba(8,7,10,.92),rgba(8,7,10,.72) 55%,rgba(8,7,10,.28) 82%,transparent);-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px);-webkit-mask-image:linear-gradient(to bottom,#000 74%,transparent);mask-image:linear-gradient(to bottom,#000 74%,transparent)}

  /* ---------- HERO STAGE ---------- */
  .stage-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:118px 20px 56px;overflow:hidden;isolation:isolate}
  .stage-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:
     radial-gradient(120% 78% at 50% 30%,rgba(168,50,63,.13),transparent 58%),
     radial-gradient(80% 60% at 50% 46%,rgba(60,55,70,.30),transparent 62%),
     #08070a}
  .stage-hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
     background:radial-gradient(130% 100% at 50% 42%,transparent 46%,rgba(0,0,0,.62) 100%)}
  .haze{position:absolute;z-index:-1;top:14%;left:50%;width:min(94vw,860px);aspect-ratio:1/1;transform:translateX(-50%);
     background:radial-gradient(circle at 50% 42%,rgba(207,96,107,.10),transparent 60%);
     animation:breathe 9s ease-in-out infinite}
  @keyframes breathe{0%,100%{opacity:.7}50%{opacity:1}}

  .hero-eyebrow{display:block;margin-bottom:22px}
  h1.title{font-family:'Fraunces';font-size:clamp(40px,9.4vw,128px);font-weight:400;letter-spacing:-.035em;line-height:.92;max-width:14ch}
  h1.title em{font-style:italic;color:var(--ox-soft)}
  .hero-sub{color:var(--bone-dim);font-size:clamp(15px,1.6vw,18px);max-width:46ch;margin:26px auto 0;line-height:1.65}

  /* turntable centre-piece */
  .stage{position:relative;display:flex;align-items:center;justify-content:center;margin:30px auto 0;width:100%;max-width:680px}
  .stage::before{content:"";position:absolute;z-index:0;width:84%;aspect-ratio:1/1;left:8%;top:-2%;border-radius:50%;
     background:radial-gradient(circle,rgba(207,96,107,.16),transparent 60%);
     animation:breathe 7s ease-in-out infinite}
  .stage::after{content:"";position:absolute;width:64%;height:46px;bottom:2%;left:18%;background:radial-gradient(ellipse,rgba(0,0,0,.7),transparent 72%);filter:blur(10px);z-index:0}
  .tt{width:100%;max-width:600px;position:relative;z-index:1;overflow:visible;filter:drop-shadow(0 40px 60px rgba(0,0,0,.6))}
  .record{transform-box:view-box;transform-origin:210px 245px;animation:spin 1.85s linear infinite;animation-play-state:paused}
  .tt.playing .record{animation-play-state:running}
  @keyframes spin{to{transform:rotate(360deg)}}
  .tonearm{transform-box:view-box;transform-origin:470px 118px;transition:transform .9s cubic-bezier(.5,0,.3,1)}
  .tt.playing .tonearm{transform:rotate(-22deg)}

  /* controls under turntable */
  .tt-controls{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:34px;flex-wrap:wrap}
  .play-toggle{display:flex;align-items:center;gap:12px;background:rgba(20,17,23,.5);border:1px solid var(--line-2);border-radius:999px;padding:9px 9px 9px 18px;cursor:pointer;color:var(--bone);font-family:'Inter Tight';font-size:13px;letter-spacing:.05em;text-transform:uppercase;transition:.25s;backdrop-filter:blur(6px)}
  .play-toggle:hover{border-color:var(--ox-soft)}
  .play-toggle .pp{width:32px;height:32px;border-radius:50%;background:var(--ox);display:grid;place-items:center}
  .play-toggle .pp svg{width:13px;height:13px;color:#fff}
  .finish-pick{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center}
  .finish-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--bone-faint)}
  .swatches{display:flex;gap:10px}
  .sw{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--line-2);cursor:pointer;position:relative;transition:transform .2s,border-color .2s}
  .sw:hover{transform:scale(1.08)}
  .sw[aria-pressed=true]{border-color:var(--bone)}
  .sw[aria-pressed=true]::after{content:"";position:absolute;inset:-6px;border:1px solid var(--bone-faint);border-radius:50%}
  .finish-name{font-family:'Fraunces';font-size:15px;color:var(--bone);min-width:78px;text-align:left}

  .hero-price{margin-top:38px;display:inline-flex;align-items:baseline;gap:12px;font-family:'Fraunces';color:var(--bone-dim);font-size:15px;letter-spacing:.02em}
  .hero-price b{font-weight:500;color:var(--bone);font-size:22px}

  .scroll-hint{margin-top:48px;display:flex;flex-direction:column;align-items:center;gap:9px;color:var(--bone-faint);font-size:11px;letter-spacing:.26em;text-transform:uppercase}
  .scroll-hint .ln{width:1px;height:42px;background:linear-gradient(var(--ox-soft),transparent)}

  /* ---------- MARQUEE ---------- */
  .specbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap;background:#050406}
  .specbar .track{display:inline-flex;gap:60px;padding:20px 0;animation:slide 32s linear infinite}
  @keyframes slide{to{transform:translateX(-50%)}}
  .specbar span{font-family:'Fraunces';font-size:clamp(14px,1.6vw,18px);color:var(--bone-dim);letter-spacing:.01em;display:inline-flex;align-items:center;gap:60px}
  .specbar span::after{content:"·";color:var(--ox-soft)}

  /* ---------- CINEMATIC BANDS ---------- */
  .band{position:relative;padding:clamp(86px,12vw,150px) 0;overflow:hidden;isolation:isolate}
  .band::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
     background:radial-gradient(120% 90% at 50% 50%,transparent 52%,rgba(0,0,0,.55) 100%)}
  .band.spot-l::before{content:"";position:absolute;inset:0;z-index:-2;
     background:radial-gradient(70% 90% at 18% 40%,rgba(168,50,63,.12),transparent 60%),var(--bg)}
  .band.spot-r::before{content:"";position:absolute;inset:0;z-index:-2;
     background:radial-gradient(70% 90% at 82% 42%,rgba(168,50,63,.12),transparent 60%),var(--bg-2)}
  .band.spot-c::before{content:"";position:absolute;inset:0;z-index:-2;
     background:radial-gradient(90% 80% at 50% 30%,rgba(168,50,63,.14),transparent 58%),var(--bg)}

  .editorial{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
  .editorial.flip .ed-media{order:2}
  .ed-copy .eyebrow{display:block;margin-bottom:22px}
  .ed-copy h2{font-size:clamp(30px,4.6vw,56px);font-weight:400;letter-spacing:-.025em;line-height:1.04}
  .ed-copy h2 em{font-style:italic;color:var(--ox-soft)}
  .ed-copy p{color:var(--bone-dim);font-size:17px;margin-top:22px;line-height:1.72;max-width:46ch}
  .ed-stat{display:flex;gap:48px;margin-top:38px;flex-wrap:wrap}
  .ed-stat .n{font-family:'Fraunces';font-size:clamp(32px,4vw,44px);font-weight:500}
  .ed-stat .k{font-size:13px;color:var(--bone-faint);margin-top:4px;letter-spacing:.04em}

  .ed-media{display:flex;align-items:center;justify-content:center}
  .detail{width:100%;max-width:440px;aspect-ratio:1/1;border:1px solid var(--line);border-radius:6px;background:radial-gradient(120% 120% at 30% 20%,#16131a,#08070a);display:grid;place-items:center;position:relative;overflow:hidden;box-shadow:0 30px 70px -30px rgba(0,0,0,.9)}
  .detail::after{content:"";position:absolute;inset:0;background:radial-gradient(80% 70% at 50% 40%,rgba(207,96,107,.10),transparent 60%);pointer-events:none}
  .detail svg{width:74%;height:74%;position:relative;z-index:1}

  /* PULL QUOTE */
  .pull{text-align:center;max-width:960px;margin:0 auto}
  .pull p{font-family:'Fraunces';font-weight:400;font-size:clamp(26px,4.4vw,48px);line-height:1.22;letter-spacing:-.015em}
  .pull p em{font-style:italic;color:var(--ox-soft)}
  .pull .src{margin-top:30px;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--bone-faint)}

  /* SPEC TABLE */
  .spec-head{max-width:600px;margin:0 auto 56px;text-align:center}
  .spec-head .eyebrow{display:block;margin-bottom:18px}
  .spec-head h2{font-size:clamp(30px,4.6vw,56px);font-weight:400;letter-spacing:-.025em}
  .specs{display:grid;grid-template-columns:1fr 1fr;gap:0 72px;max-width:980px;margin:0 auto}
  .spec-row{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}
  .spec-row .k{color:var(--bone-faint);font-size:14px;letter-spacing:.02em}
  .spec-row .v{font-family:'Fraunces';font-size:17px;text-align:right}

  /* ORDER */
  .order{text-align:center;max-width:760px;margin:0 auto}
  .order h2{font-size:clamp(34px,6vw,76px);font-weight:400;max-width:14ch;margin:0 auto 20px;letter-spacing:-.03em;line-height:.98}
  .order h2 em{font-style:italic;color:var(--ox-soft)}
  .order p{color:var(--bone-dim);font-size:17px;max-width:42ch;margin:0 auto 36px}
  .btn-buy{font-family:'Inter Tight';font-size:14px;letter-spacing:.06em;text-transform:uppercase;background:var(--ox);color:#fff;border:none;padding:17px 38px;border-radius:999px;cursor:pointer;transition:.25s;box-shadow:0 14px 40px -14px rgba(168,50,63,.7)}
  .btn-buy:hover{background:var(--ox-soft);transform:translateY(-1px)}
  .order .note{margin-top:22px;font-size:13px;color:var(--bone-faint)}

  footer{border-top:1px solid var(--line);padding:70px 0 56px;background:#050406}
  .foot-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:40px;align-items:flex-start}
  .foot-brand{max-width:280px}
  .foot-brand .brand{font-family:'Fraunces';font-weight:600;font-size:23px;letter-spacing:.02em}
  .foot-brand .brand .reg{font-size:10px;vertical-align:super;color:var(--bone-faint);letter-spacing:0}
  .foot-brand p{color:var(--bone-faint);font-size:14px;margin-top:16px;line-height:1.7}
  .foot-col h4{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--bone-faint);margin-bottom:16px}
  .foot-col a{display:block;color:var(--bone-dim);font-size:14.5px;margin-bottom:12px;transition:color .2s}
  .foot-col a:hover{color:var(--bone)}
  .foot-bottom{margin-top:54px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:var(--bone-faint);font-size:12.5px;letter-spacing:.04em}

  .reveal{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1)}
  .reveal.in{opacity:1;transform:none}

  @media (max-width:920px){
    .editorial{grid-template-columns:1fr;gap:48px}
    .editorial.flip .ed-media{order:0}
    .specs{grid-template-columns:1fr;gap:0}
    .ed-copy p{max-width:none}
    .float-cta{font-size:11.5px;padding:9px 15px}
    .corner-mark .wm{font-size:17px}
  }
  @media (max-width:520px){
    .wrap{padding:0 18px}
    .stage-hero{padding:88px 16px 48px;justify-content:flex-start}
    .corner-mark{top:18px;left:18px}
    .float-cta{top:15px;right:16px}
    .top-scrim{height:78px}
  }

.dx-home{position:fixed;left:16px;bottom:16px;z-index:90;font-family:'Inter Tight',sans-serif;font-size:12px;background:#141117;border:1px solid #322D39;color:#ECE7DD;padding:9px 14px;border-radius:999px;text-decoration:none;transition:.25s}.dx-home:hover{background:#A8323F;border-color:#A8323F;color:#fff}@media print{.dx-home{display:none}}
