:root {
  --bg: #06101a;
  --bg-2: #0a131e;
  --panel: rgba(16, 27, 39, .76);
  --panel-solid: #101b27;
  --line: rgba(170, 192, 213, .16);
  --line-strong: rgba(170, 192, 213, .28);
  --text: #f4f7fa;
  --muted: #9eafbf;
  --muted-2: #748797;
  --green: #32e783;
  --green-2: #98ffc0;
  --orange: #ff9a37;
  --shadow: 0 30px 90px rgba(0,0,0,.36);
  --radius: 24px;
  --shell: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 78% 18%, rgba(31, 82, 114, .16), transparent 30rem),
    linear-gradient(180deg, #06101a 0%, #08111b 42%, #050b12 100%);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

a { color: inherit; }
img { display:block; max-width:100%; }
button, a { -webkit-tap-highlight-color: transparent; }

.skip-link {
  position: fixed; left: 12px; top: -80px; z-index: 9999;
  padding: 10px 14px; background:#fff; color:#000; border-radius:8px;
}
.skip-link:focus { top:12px; }

.shell { width: min(calc(100% - 48px), var(--shell)); margin-inline: auto; }

.topbar {
  position: absolute;
  z-index: 40;
  inset: 0 0 auto 0;
  height: 78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  width: min(calc(100% - 48px), var(--shell));
  margin-inline:auto;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.brand {
  display:inline-flex; align-items:center; gap:10px;
  text-decoration:none; color:#f8fbfd;
  font-weight:800; letter-spacing:.02em;
}
.brand-mark {
  width:12px; height:12px; border-radius:50%; background:var(--green);
  box-shadow:0 0 22px rgba(50,231,131,.55);
}
.top-actions { display:flex; align-items:center; gap:16px; }
.top-actions a { text-decoration:none; font-size:.76rem; font-weight:800; letter-spacing:.12em; }
.top-link { color:#c1ced8; padding:12px 4px; }
.top-link:hover { color:#fff; }
.top-download { padding:10px 16px; border:1px solid rgba(50,231,131,.65); color:var(--green-2); border-radius:999px; }
.top-download:hover { background:rgba(50,231,131,.12); }

.hero {
  position:relative;
  min-height: 820px;
  height: min(940px, 100svh);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:center;
  isolation:isolate;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.hero-media {
  position:absolute; inset:0;
  z-index:-4;
  background-image:url('virtual-headphones-studio.webp');
  background-size:cover;
  background-position:center center;
  transform:scale(1.01);
}
.hero-shade {
  position:absolute; inset:0; z-index:-3;
  background:
    linear-gradient(90deg, rgba(3,8,14,.96) 0%, rgba(3,8,14,.89) 26%, rgba(3,8,14,.56) 48%, rgba(3,8,14,.08) 72%, rgba(3,8,14,.24) 100%),
    linear-gradient(180deg, rgba(0,0,0,.14) 0%, transparent 52%, rgba(2,7,12,.76) 100%);
}
.hero-content { padding-top:78px; }
.hero-copy { max-width: 650px; padding:72px 0 120px; }
.eyebrow-row { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:25px; }
.pill { border:1px solid rgba(255,255,255,.20); border-radius:999px; padding:7px 10px 6px; color:#becbd5; font-size:.67rem; font-weight:850; letter-spacing:.14em; }
.pill.accent { color:var(--green-2); border-color:rgba(50,231,131,.36); background:rgba(50,231,131,.07); }
.brand-kicker { margin:0 0 5px; color:var(--green); font-weight:800; letter-spacing:.035em; font-size:.86rem; }
.hero h1 { font-size:clamp(3.8rem, 6.2vw, 6.8rem); letter-spacing:-.065em; line-height:.91; margin:0 0 30px; max-width:720px; }
.hero-lead { font-size:clamp(1.38rem, 2.0vw, 1.95rem); line-height:1.35; max-width:640px; margin:0 0 18px; color:#f7fafc; letter-spacing:-.025em; }
.hero-support { max-width:580px; color:#b3c0ca; font-size:1.03rem; margin:0 0 34px; }
.hero-cta-row { display:flex; align-items:stretch; flex-wrap:wrap; gap:12px; }
.button {
  min-height:66px;
  border-radius:14px;
  text-decoration:none;
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:2px;
  padding:12px 19px;
  font-weight:850;
  letter-spacing:.06em;
  border:1px solid transparent;
  transition:transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.button span { font-size:.79rem; }
.button small { font-size:.69rem; color:inherit; opacity:.72; font-weight:700; letter-spacing:.04em; }
.button:hover { transform:translateY(-2px); }
.button.primary { background:var(--green); color:#03100a; box-shadow:0 10px 36px rgba(50,231,131,.12); }
.button.primary:hover { background:#52ef94; box-shadow:0 12px 42px rgba(50,231,131,.20); }
.button.ghost { background:rgba(10,18,28,.48); color:#ecf4f8; border-color:rgba(255,255,255,.19); backdrop-filter:blur(8px); }
.button.ghost:hover { border-color:rgba(255,255,255,.34); background:rgba(18,30,43,.70); }
.button.large { min-width:300px; align-items:center; }
.button.light { color:#06101a; background:#effbf4; min-width:260px; align-items:center; }
.hero-note { margin:18px 0 0; color:#8092a2; font-size:.77rem; }

.hero-stats-wrap { position:absolute; left:0; right:0; bottom:0; background:linear-gradient(180deg, transparent, rgba(4,10,16,.82)); }
.hero-stats { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.12); }
.hero-stats > div { min-height:96px; padding:20px 24px 18px 0; display:flex; align-items:baseline; gap:12px; }
.hero-stats > div + div { border-left:1px solid rgba(255,255,255,.10); padding-left:24px; }
.hero-stats strong { font-size:1.65rem; letter-spacing:-.04em; color:#fff; }
.hero-stats span { color:#8fa1af; font-size:.76rem; line-height:1.4; }

.section { padding:120px 0; position:relative; }
.section-intro { padding-top:132px; padding-bottom:110px; }
.intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.section-heading h2, .studio-copy h2, .picker-copy h2, .safety-card h2, .web-bridge h2, .lab-heading h2, .final-inner h2 {
  margin:0; font-size:clamp(2.35rem,4.3vw,4.4rem); line-height:1.02; letter-spacing:-.05em;
}
.overline { margin:0 0 16px; color:var(--green); text-transform:uppercase; letter-spacing:.16em; font-weight:850; font-size:.70rem; }
.overline.warning { color:var(--orange); }
.intro-copy { max-width:580px; color:#aebbc5; font-size:1.05rem; }
.intro-copy p { margin:0 0 18px; }

.studio-section { padding-top:60px; }
.studio-grid { display:grid; grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr); gap:90px; align-items:center; }
.studio-shot, .picker-shot { display:flex; justify-content:center; }
.shot-frame { position:relative; border:1px solid rgba(155,182,205,.20); border-radius:22px; padding:10px; background:linear-gradient(180deg,rgba(18,31,44,.92),rgba(8,15,23,.94)); box-shadow:var(--shadow); }
.shot-frame::before { content:""; position:absolute; inset:10% 10% -8% 10%; z-index:-1; background:rgba(35,111,80,.22); filter:blur(80px); border-radius:50%; }
.shot-frame img { border-radius:14px; }
.shot-frame.compact { max-width:560px; }
.studio-copy > p:not(.overline), .picker-copy > p:not(.overline) { color:#aebbc5; max-width:640px; }
.feature-list { margin-top:36px; border-top:1px solid var(--line); }
.feature-item { display:grid; grid-template-columns:54px 1fr; gap:10px; padding:21px 0; border-bottom:1px solid var(--line); }
.feature-index { color:var(--green); font-size:.68rem; font-weight:850; letter-spacing:.14em; padding-top:4px; }
.feature-item h3 { margin:0 0 5px; font-size:.82rem; letter-spacing:.08em; color:#eef6fa; }
.feature-item p { margin:0; color:#8fa0ae; font-size:.92rem; }

.picker-section { background:linear-gradient(180deg,transparent,rgba(15,27,39,.32),transparent); }
.picker-grid { display:grid; grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr); gap:86px; align-items:center; }
.micro-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:35px; }
.micro-card { min-height:142px; padding:20px; border:1px solid var(--line); background:rgba(14,25,36,.58); border-radius:16px; }
.micro-card strong { display:block; color:#eaf2f7; font-size:.78rem; margin-bottom:8px; letter-spacing:.04em; }
.micro-card span { color:#8799a7; font-size:.86rem; line-height:1.55; }

.translation-section { padding-top:112px; }
.centered { max-width:790px; text-align:center; margin:0 auto 56px; }
.centered > p:last-child { color:#91a2b1; margin-top:18px; }
.question-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.question-grid article { min-height:270px; padding:28px; background:linear-gradient(180deg,rgba(18,31,44,.72),rgba(10,19,28,.70)); border:1px solid var(--line); border-radius:20px; }
.question-mark { width:36px; height:36px; border-radius:50%; border:1px solid rgba(50,231,131,.35); color:var(--green); display:inline-grid; place-items:center; font-weight:900; margin-bottom:46px; }
.question-grid h3 { margin:0 0 12px; font-size:1.25rem; letter-spacing:-.025em; }
.question-grid p { margin:0; color:#8fa1af; font-size:.91rem; }

.safety-section { padding-top:40px; padding-bottom:90px; }
.safety-card { display:grid; grid-template-columns:.86fr 1.14fr; gap:70px; padding-top:44px; padding-bottom:44px; border-top:1px solid rgba(255,154,55,.40); border-bottom:1px solid rgba(255,154,55,.22); }
.safety-card h2 { font-size:clamp(2.2rem,3.7vw,3.8rem); }
.safety-copy { color:#9fafbc; }
.safety-copy p { margin:0 0 16px; }

.install-section { background:linear-gradient(180deg,rgba(3,8,13,.16),rgba(17,29,41,.45),rgba(3,8,13,.12)); }
.install-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:54px 0 22px; }
.install-step { padding:30px; min-height:220px; border-radius:20px; border:1px solid var(--line); background:rgba(8,16,25,.66); }
.install-step > span { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:rgba(50,231,131,.12); border:1px solid rgba(50,231,131,.32); color:var(--green); font-size:.74rem; font-weight:900; margin-bottom:32px; }
.install-step h3 { margin:0 0 10px; font-size:1.15rem; }
.install-step p { margin:0; color:#8fa1af; font-size:.90rem; }
.path-box { display:flex; gap:24px; align-items:center; justify-content:space-between; padding:17px 20px; border:1px solid var(--line); background:#07101a; border-radius:14px; overflow:hidden; }
.path-box span { color:#8093a2; font-size:.79rem; white-space:nowrap; }
.path-box code { color:#dbe7ee; font-size:.82rem; overflow:auto; white-space:nowrap; }
.download-center { text-align:center; margin-top:46px; }
.download-center .button { margin-inline:auto; }
.download-center > p { margin:16px auto 0; color:#7f91a0; font-size:.81rem; max-width:680px; }

.web-bridge { padding:100px 0; color:#04110a; background:var(--green); position:relative; overflow:hidden; }
.web-bridge::after { content:""; position:absolute; width:420px; height:420px; right:-80px; top:-180px; border:1px solid rgba(4,17,10,.17); border-radius:50%; box-shadow:0 0 0 70px rgba(4,17,10,.045),0 0 0 140px rgba(4,17,10,.03); }
.web-bridge-inner { position:relative; z-index:1; display:grid; grid-template-columns:1fr auto; gap:70px; align-items:center; }
.web-bridge .overline { color:#0b5f33; }
.web-bridge h2 { max-width:720px; }
.web-bridge p { max-width:760px; color:#145830; }

.lab-section { padding-top:130px; }
.lab-heading { display:grid; grid-template-columns:1.08fr .92fr; gap:80px; align-items:end; margin-bottom:55px; }
.lab-heading > p { color:#94a5b2; margin:0; }
.lab-tools { border-top:1px solid var(--line); }
.lab-tool { display:grid; grid-template-columns:60px 1fr 28px; gap:24px; align-items:center; padding:25px 4px; text-decoration:none; border-bottom:1px solid var(--line); transition:padding .2s ease, background .2s ease; }
.lab-tool:hover { padding-left:18px; background:linear-gradient(90deg,rgba(50,231,131,.055),transparent 78%); }
.tool-no { font-size:.67rem; color:#65808e; font-weight:800; letter-spacing:.12em; }
.lab-tool h3 { margin:0 0 4px; font-size:1.18rem; }
.lab-tool p { margin:0; color:#8496a4; font-size:.88rem; }
.arrow { font-size:1.3rem; color:var(--green); }
.lab-cta { text-align:right; margin-top:30px; }
.text-cta { display:inline-flex; gap:18px; align-items:center; text-decoration:none; color:var(--green); font-size:.78rem; font-weight:900; letter-spacing:.11em; }

.final-cta { position:relative; overflow:hidden; padding:135px 0 150px; text-align:center; border-top:1px solid rgba(255,255,255,.055); }
.final-glow { position:absolute; left:50%; top:45%; transform:translate(-50%,-50%); width:620px; height:340px; border-radius:50%; background:rgba(34,153,102,.13); filter:blur(100px); pointer-events:none; }
.final-inner { position:relative; }
.final-inner h2 { font-size:clamp(3.5rem,7vw,7.3rem); margin-bottom:17px; }
.final-inner > p:not(.overline) { color:#9aabb7; margin:0 auto 34px; }
.centered-row { justify-content:center; }

.footer { border-top:1px solid rgba(255,255,255,.08); padding:30px 0 34px; background:#040a10; }
.footer-inner { display:grid; grid-template-columns:1fr auto auto; gap:24px; align-items:center; }
.footer p { margin:0; color:#667a89; font-size:.72rem; }
.mobile-cta { display:none; }

.reveal { opacity:1; transform:none; }
.reveal-ready .reveal { opacity:0; transform:translateY(18px); transition:opacity .65s ease, transform .65s ease; }
.reveal-ready .reveal.in-view { opacity:1; transform:none; }

@media (max-width: 980px) {
  .hero { min-height:820px; height:auto; }
  .hero-copy { padding-top:130px; padding-bottom:170px; max-width:590px; }
  .hero h1 { font-size:clamp(3.5rem,9vw,5.6rem); }
  .hero-media { background-position:62% center; }
  .hero-shade { background:linear-gradient(90deg,rgba(3,8,14,.97),rgba(3,8,14,.77) 52%,rgba(3,8,14,.25)),linear-gradient(180deg,transparent 45%,rgba(3,8,14,.82)); }
  .hero-stats { grid-template-columns:1fr 1fr; }
  .hero-stats > div { min-height:78px; }
  .hero-stats > div:nth-child(3) { border-left:0; border-top:1px solid rgba(255,255,255,.10); }
  .hero-stats > div:nth-child(4) { border-top:1px solid rgba(255,255,255,.10); }
  .intro-grid, .studio-grid, .picker-grid, .safety-card, .lab-heading { grid-template-columns:1fr; gap:42px; }
  .studio-grid { max-width:800px; }
  .studio-shot { order:2; }
  .picker-grid { max-width:850px; }
  .question-grid, .install-steps { grid-template-columns:1fr; }
  .question-grid article { min-height:210px; }
  .question-mark { margin-bottom:30px; }
  .web-bridge-inner { grid-template-columns:1fr; gap:32px; }
  .footer-inner { grid-template-columns:1fr; text-align:center; justify-items:center; }
}

@media (max-width: 680px) {
  body { padding-bottom:68px; }
  .shell { width:min(calc(100% - 30px), var(--shell)); }
  .topbar { width:calc(100% - 30px); height:64px; }
  .top-actions { gap:10px; }
  .top-link { display:none; }
  .top-download { font-size:.65rem!important; padding:8px 12px; }
  .brand { font-size:.88rem; }

  .hero { min-height:880px; padding-bottom:152px; justify-content:flex-start; }
  .hero-media { height:51%; bottom:auto; background-size:cover; background-position:63% center; opacity:.92; }
  .hero-shade { background:linear-gradient(180deg,rgba(3,8,14,.18) 0%,rgba(3,8,14,.28) 27%,rgba(3,8,14,.99) 50%,#06101a 100%); }
  .hero-content { padding-top:64px; }
  .hero-copy { padding:340px 0 0; max-width:none; }
  .eyebrow-row { margin-bottom:18px; }
  .pill { font-size:.59rem; }
  .brand-kicker { font-size:.73rem; }
  .hero h1 { font-size:clamp(3.25rem,16vw,4.7rem); margin-bottom:22px; }
  .hero-lead { font-size:1.28rem; }
  .hero-support { font-size:.91rem; margin-bottom:25px; }
  .hero-cta-row { display:grid; grid-template-columns:1fr; }
  .button { width:100%; align-items:center; min-height:64px; }
  .hero-note { font-size:.69rem; line-height:1.45; }
  .hero-stats-wrap { bottom:0; }
  .hero-stats { grid-template-columns:1fr 1fr; }
  .hero-stats > div { padding:15px 10px 14px 0; min-height:76px; display:block; }
  .hero-stats > div + div { padding-left:14px; }
  .hero-stats strong { display:block; font-size:1.4rem; }
  .hero-stats span { display:block; font-size:.66rem; }

  .section { padding:82px 0; }
  .section-intro { padding-top:88px; }
  .intro-grid { gap:28px; }
  .section-heading h2, .studio-copy h2, .picker-copy h2, .safety-card h2, .web-bridge h2, .lab-heading h2 { font-size:clamp(2.35rem,11vw,3.3rem); }
  .intro-copy, .studio-copy > p:not(.overline), .picker-copy > p:not(.overline) { font-size:.94rem; }
  .studio-grid, .picker-grid { gap:42px; }
  .shot-frame { border-radius:17px; padding:7px; }
  .shot-frame img { border-radius:11px; }
  .feature-item { grid-template-columns:43px 1fr; }
  .micro-grid { grid-template-columns:1fr; }
  .micro-card { min-height:unset; }
  .centered { margin-bottom:36px; text-align:left; }
  .question-grid article { min-height:190px; padding:23px; }
  .safety-section { padding-top:25px; }
  .safety-card { padding-top:34px; padding-bottom:34px; gap:24px; }
  .install-steps { margin-top:38px; }
  .install-step { min-height:190px; padding:24px; }
  .path-box { align-items:flex-start; flex-direction:column; gap:8px; }
  .path-box code { width:100%; padding-bottom:4px; }
  .web-bridge { padding:74px 0; }
  .lab-heading { gap:26px; }
  .lab-tool { grid-template-columns:38px 1fr 20px; gap:12px; padding:20px 0; align-items:start; }
  .lab-tool p { font-size:.80rem; }
  .lab-cta { text-align:left; }
  .final-cta { padding:95px 0 105px; }
  .final-inner h2 { font-size:clamp(3.3rem,17vw,5.2rem); }
  .footer { padding-bottom:26px; }
  .mobile-cta { display:grid; position:fixed; z-index:80; left:0; right:0; bottom:0; grid-template-columns:.8fr 1.2fr; padding:8px max(10px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left)); gap:8px; background:rgba(4,10,16,.92); border-top:1px solid rgba(255,255,255,.12); backdrop-filter:blur(14px); }
  .mobile-cta a { min-height:48px; display:grid; place-items:center; border-radius:10px; text-decoration:none; font-size:.69rem; font-weight:900; letter-spacing:.07em; border:1px solid var(--line-strong); }
  .mobile-cta .primary-mobile { background:var(--green); color:#04110a; border-color:transparent; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .reveal-ready .reveal { opacity:1; transform:none; transition:none; }
  .button, .lab-tool { transition:none; }
}


/* V1.0.1: preserve the supplied plug-in screenshot aspect ratios exactly. */
.studio-shot .shot-frame,
.picker-shot .shot-frame {
  width: min(100%, 600px);
}

.shot-frame.compact {
  max-width: 600px;
}

.shot-frame img {
  width: 100%;
  height: auto;
  object-fit: contain;
  aspect-ratio: auto;
}

.studio-grid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: clamp(48px, 6vw, 78px);
}

.picker-grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: clamp(48px, 6vw, 78px);
}

@media (max-width: 980px) {
  .studio-shot .shot-frame,
  .picker-shot .shot-frame {
    width: min(100%, 620px);
  }
}


/* V289.2: vertical rhythm polish. Keep hero/media proportions; tighten long-scroll gaps. */
@media (min-width: 681px) {
  .section {
    padding-top: 94px;
    padding-bottom: 94px;
  }

  .section-intro {
    padding-top: 104px;
    padding-bottom: 86px;
  }

  .feature-list {
    margin-top: 28px;
  }

  .micro-grid {
    margin-top: 28px;
  }

  .install-steps {
    margin-top: 44px;
  }

  .download-center {
    margin-top: 36px;
  }

  .web-bridge {
    padding-top: 92px;
    padding-bottom: 92px;
  }

  .lab-section {
    padding-top: 100px;
  }

  .lab-heading {
    margin-bottom: 42px;
  }

  .lab-cta {
    margin-top: 24px;
  }

  .final-cta {
    padding-top: 120px;
    padding-bottom: 130px;
  }
}

@media (max-width: 680px) {
  .section {
    padding-top: 68px;
    padding-bottom: 68px;
  }

  .section-intro {
    padding-top: 74px;
    padding-bottom: 66px;
  }

  .studio-grid,
  .picker-grid {
    gap: 34px;
  }

  .feature-list {
    margin-top: 28px;
  }

  .micro-grid {
    margin-top: 28px;
  }

  .centered {
    margin-bottom: 30px;
  }

  .install-steps {
    margin-top: 32px;
  }

  .download-center {
    margin-top: 34px;
  }

  .web-bridge {
    padding-top: 68px;
    padding-bottom: 68px;
  }

  .lab-section {
    padding-top: 76px;
  }

  .lab-heading {
    margin-bottom: 38px;
  }

  .final-cta {
    padding-top: 84px;
    padding-bottom: 94px;
  }
}


/* V290.1: Windows + macOS release downloads, mobile showcase reflow, and single-column mobile grid hotfix. */
.studio-grid {
  grid-template-areas:
    "shot copy"
    "shot features";
  align-items:start;
}
.studio-shot { grid-area:shot; align-self:center; }
.studio-copy { grid-area:copy; }
.studio-grid > .feature-list { grid-area:features; margin-top:4px; }

.picker-grid {
  grid-template-areas:
    "copy shot"
    "features shot";
  align-items:start;
}
.picker-copy { grid-area:copy; }
.picker-shot { grid-area:shot; align-self:center; }
.picker-grid > .micro-grid { grid-area:features; margin-top:8px; }

.platform-download-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:46px;
  align-items:start;
}
.platform-download-column {
  display:grid;
  gap:14px;
  min-width:0;
}
.download-card {
  display:flex;
  flex-direction:column;
  min-height:390px;
  padding:26px;
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(16,29,41,.84),rgba(7,15,23,.82));
  box-shadow:0 18px 50px rgba(0,0,0,.16);
}
.download-card.mac-card { border-color:rgba(50,231,131,.25); }
.download-card-head { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:30px; }
.platform-tag,.format-tag,.security-tag {
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid var(--line-strong);
  color:#adbdc9;
  font-size:.61rem;
  font-weight:900;
  letter-spacing:.08em;
}
.security-tag { color:var(--green-2); border-color:rgba(50,231,131,.34); background:rgba(50,231,131,.06); }
.download-card h3 { margin:0 0 10px; font-size:1.45rem; letter-spacing:-.02em; }
.download-card > p { margin:0; color:#8fa1af; font-size:.90rem; }
.download-specs { display:flex; flex-wrap:wrap; gap:8px 14px; margin:24px 0; color:#a9b7c2; font-size:.67rem; font-weight:850; letter-spacing:.06em; }
.download-card .button { width:100%; margin-top:auto; min-width:0; }
.download-card .button span { font-size:.70rem; }
.download-card .button small { font-size:.64rem; }

.install-platform-card {
  min-width:0;
  overflow:hidden;
  padding:23px;
  border:1px solid var(--line);
  border-radius:17px;
  background:rgba(7,15,23,.58);
}
.platform-overline { margin:0 0 14px; color:var(--green); font-size:.65rem; font-weight:900; letter-spacing:.11em; }
.install-platform-card h3 { margin:0 0 8px; font-size:1.06rem; }
.install-platform-card > p:not(.platform-overline) { margin:0 0 18px; color:#8fa1af; font-size:.84rem; }
.install-platform-card code {
  display:block;
  overflow-x:auto;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  background:#050b11;
  color:#c6d5df;
  font-size:.72rem;
  line-height:1.45;
  max-width:100%;
  box-sizing:border-box;
  white-space:nowrap;
}
.package-note { margin:20px auto 0; max-width:780px; text-align:center; color:#788b99; font-size:.80rem; }

@media (max-width:980px) {
  .studio-grid,
  .picker-grid {
    grid-template-columns:minmax(0,1fr);
  }
  .studio-grid {
    grid-template-areas:
      "copy"
      "shot"
      "features";
  }
  .picker-grid {
    grid-template-areas:
      "copy"
      "shot"
      "features";
  }
  .studio-shot { order:initial; }
  .platform-download-grid { grid-template-columns:minmax(0,1fr); max-width:760px; margin-inline:auto; }
  .platform-download-column { gap:10px; }
  .download-card { min-height:0; min-width:0; }
}

@media (max-width:680px) {
  .studio-grid,.picker-grid { gap:24px; }
  .studio-copy,.picker-copy { padding-bottom:2px; }
  .studio-shot,.picker-shot { justify-content:stretch; }
  .studio-shot .shot-frame,.picker-shot .shot-frame { width:100%; }

  .studio-grid > .feature-list {
    margin-top:-4px;
    padding:2px 16px;
    border:1px solid var(--line);
    border-radius:16px;
    background:rgba(11,21,31,.68);
  }
  .feature-item { padding:17px 0; }
  .feature-item:last-child { border-bottom:0; }
  .feature-item p { font-size:.84rem; line-height:1.48; }

  .picker-grid > .micro-grid {
    margin-top:-2px;
    gap:8px;
  }
  .micro-card {
    display:grid;
    grid-template-columns:minmax(104px,.38fr) 1fr;
    gap:12px;
    align-items:start;
    padding:15px 16px;
    border-radius:13px;
  }
  .micro-card strong { margin:1px 0 0; font-size:.69rem; line-height:1.35; }
  .micro-card span { font-size:.80rem; line-height:1.48; }

  .platform-download-grid { margin-top:30px; gap:22px; }
  .download-card { padding:20px; border-radius:16px; }
  .download-card-head { margin-bottom:21px; }
  .download-card h3 { font-size:1.25rem; }
  .download-card > p { font-size:.84rem; }
  .download-specs { margin:18px 0 20px; }
  .install-platform-card { padding:19px; }
  .install-platform-card code {
    overflow-x:hidden;
    white-space:normal;
    overflow-wrap:anywhere;
    word-break:normal;
  }
  .package-note { text-align:left; font-size:.76rem; }
}
