:root {
  color-scheme: dark;
  --bg: #111318;
  --surface: #191c23;
  --surface-2: #20242d;
  --border: #303541;
  --text: #f0f1f5;
  --muted: #b0b5c1;
  --quiet: #858c9a;
  --accent: #a99aff;
  --accent-strong: #8e7af5;
  --accent-soft: #292442;
  --green: #83d6b2;
  --max: 1160px;
  --gutter: clamp(20px, 4vw, 48px);
  --layout-gap: clamp(28px, 4vw, 56px);
  --section-space: clamp(56px, 7vw, 96px);
  --heading-size: clamp(30px, 3.3vw, 44px);
  font-family: "Segoe UI", Inter, system-ui, sans-serif;
  background: var(--bg);
  color: var(--text);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  scroll-behavior: smooth;
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; background: var(--bg); line-height: 1.6; }
a { color: inherit; text-underline-offset: .2em; }
a:hover { color: var(--accent); }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid #c3b8ff; outline-offset: 4px; }
.skip-link { position: fixed; top: 8px; left: 8px; z-index: 20; padding: .7rem 1rem; transform: translateY(-160%); background: #fff; color: #111; border-radius: 5px; }
.skip-link:focus { transform: none; }
.wrap { width: min(var(--max), calc(100% - 48px)); margin-inline: auto; }
.site-header { border-bottom: 1px solid rgba(255,255,255,.075); background: rgba(17,19,24,.94); }
.header-inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; flex: 0 0 auto; }
.brand-mark { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 9px; color: #d0c8ff; background: #30294d; border: 1px solid #49406c; font-weight: 750; font-size: 18px; }
.brand-name { display: grid; line-height: 1.15; }
.brand-name strong { font-size: 14px; letter-spacing: -.25px; }
.brand-name span { margin-top: 4px; font-size: 9px; letter-spacing: .16em; color: #c5baff; }
.nav { display: flex; align-items: center; gap: clamp(16px, 3vw, 34px); }
.nav a { color: var(--muted); font-size: 13px; font-weight: 600; text-decoration: none; }
.nav a[aria-current="page"] { color: var(--text); }
.nav .nav-buy { color: #f5f2ff; padding: 9px 14px; border: 1px solid #655991; background: #292442; border-radius: 7px; }
.hero { padding: 68px 0 54px; overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(440px, 1.08fr); align-items: center; gap: 58px; }
.eyebrow { color: #b6aaff; font-size: 11px; font-weight: 750; letter-spacing: .16em; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1 { max-width: 680px; margin: 14px 0 18px; font-size: clamp(42px, 5vw, 64px); line-height: 1.04; letter-spacing: -.055em; font-weight: 680; }
.hero-copy { max-width: 610px; color: var(--muted); font-size: 17px; line-height: 1.65; }
.hero-copy strong { color: var(--text); font-weight: 650; }
.price-line { margin: 23px 0 5px; font-size: 22px; font-weight: 720; letter-spacing: -.02em; }
.price-line small { color: var(--muted); font-size: 14px; font-weight: 500; }
.license-line { color: #d0cbdc; font-size: 13px; }
.actions { display: flex; align-items: center; flex-wrap: wrap; gap: 13px; margin-top: 25px; }
.button { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 0 17px; border: 1px solid transparent; border-radius: 7px; text-decoration: none; font-weight: 680; font-size: 13px; }
.button-primary { color: #fff; background: #715de0; border-color: #8978ec; box-shadow: 0 5px 22px rgba(93,72,186,.19); }
.button-primary:hover { background: #806deb; color: #fff; }
.button-secondary { background: var(--surface-2); border-color: var(--border); color: var(--text); }
.button-disabled { background: #252832; border-color: #3a3e49; color: #c1c4ce; cursor: not-allowed; }
.hero-note { max-width: 500px; color: var(--quiet); font-size: 12px; margin: 12px 0 0; }
.hero-note a { color: #c6bdff; }
.media-frame { position: relative; min-height: 386px; aspect-ratio: 16 / 10; display: grid; align-items: stretch; overflow: hidden; border: 1px solid #393446; border-radius: 12px; background: #181820; box-shadow: 0 24px 70px rgba(0,0,0,.28); }
.media-top { min-height: 42px; position: absolute; inset: 0 0 auto; z-index: 1; display: flex; align-items: center; gap: 7px; padding: 0 15px; border-bottom: 1px solid rgba(255,255,255,.08); background: #1d1d25; }
.window-dot { width: 7px; height: 7px; border-radius: 50%; background: #555360; }
.media-label { margin-left: 8px; color: #c2bfcd; font-size: 11px; }
.media-placeholder { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 75px clamp(24px,4vw,48px) 36px; background: radial-gradient(ellipse at 86% 22%, rgba(117,94,199,.12), transparent 40%), linear-gradient(135deg,#171820,#1b1b25 62%,#171820); }
.media-placeholder .placeholder-mark { width: 52px; height: 52px; display: grid; place-items: center; margin-bottom: 22px; color: #c5baff; border: 1px solid #4c426b; background: #292442; border-radius: 12px; font-size: 25px; }
.media-placeholder strong { max-width: 370px; font-size: clamp(20px,2.5vw,30px); line-height: 1.2; letter-spacing: -.03em; }
.media-placeholder p { max-width: 360px; margin: 12px 0 0; color: var(--muted); font-size: 13px; }
.capture-tag { display: inline-flex; gap: 7px; align-items: center; margin-top: 26px; color: #c9c4d8; font-size: 11px; }
.capture-tag::before { content: ""; width: 7px; height: 7px; background: var(--accent); border-radius: 50%; }
.section { padding: 84px 0; border-top: 1px solid rgba(255,255,255,.07); }
.section-heading { max-width: 680px; margin-bottom: 34px; }
.section-heading h2 { margin: 10px 0 10px; font-size: clamp(30px,3.6vw,43px); line-height: 1.12; letter-spacing: -.04em; font-weight: 660; }
.section-heading p { margin: 0; color: var(--muted); font-size: 15px; }
.areas-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 12px; }
.area { min-height: 152px; padding: 19px 16px; border: 1px solid var(--border); background: var(--surface); border-radius: 9px; }
.area-index { color: #a99aff; font-size: 10px; font-weight: 750; letter-spacing: .12em; }
.area h3 { margin: 21px 0 6px; font-size: 16px; letter-spacing: -.02em; }
.area p { margin: 0; color: var(--quiet); font-size: 12px; line-height: 1.45; }
.fine-print { margin: 19px 0 0; color: var(--quiet); font-size: 12px; }
.workflow { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--border); border-radius: 10px; overflow: hidden; background: var(--surface); }
.workflow-step { position: relative; padding: 24px 22px 26px; min-height: 190px; }
.workflow-step + .workflow-step { border-left: 1px solid var(--border); }
.workflow-num { color: #b7aaff; font-size: 11px; font-weight: 750; letter-spacing: .12em; }
.workflow-step h3 { margin: 26px 0 7px; font-size: 19px; letter-spacing: -.025em; }
.workflow-step p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.feature-split { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.feature-panel { min-height: 248px; padding: 28px; border: 1px solid var(--border); border-radius: 10px; background: linear-gradient(140deg,#1d2028,#181a20); }
.feature-panel h3 { margin: 0 0 10px; font-size: 22px; letter-spacing: -.03em; }
.feature-panel p { max-width: 470px; margin: 0; color: var(--muted); font-size: 14px; }
.feature-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 25px; }
.feature-list span { padding: 7px 10px; border: 1px solid #393843; border-radius: 6px; color: #d9d5e4; background: rgba(255,255,255,.025); font-size: 11px; }
.trust-band { display: grid; grid-template-columns: minmax(220px,.8fr) 1.2fr; gap: 54px; align-items: center; padding: 38px; border: 1px solid #403957; border-radius: 11px; background: linear-gradient(110deg,#211e2e,#1a1b23 62%); }
.trust-band h2 { margin: 8px 0 0; font-size: clamp(27px,3vw,37px); line-height: 1.15; letter-spacing: -.04em; }
.trust-copy { color: var(--muted); font-size: 14px; }
.trust-copy p:last-child { margin-bottom: 0; }
.compare-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.compare-card { padding: 28px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); }
.compare-card.pro { border-color: #51466f; background: linear-gradient(145deg,#201e2c,#1a1c23 70%); }
.compare-card h3 { margin: 8px 0 4px; font-size: 23px; letter-spacing: -.03em; }
.compare-intro { min-height: 46px; color: var(--muted); font-size: 13px; }
.compare-card ul { display: grid; gap: 10px; margin: 20px 0 25px; padding: 0; list-style: none; }
.compare-card li { display: flex; align-items: flex-start; gap: 10px; color: #d9dbe2; font-size: 13px; }
.compare-card li::before { content: "✓"; color: var(--green); font-weight: 750; }
.text-link { color: #c7bdff; font-size: 13px; font-weight: 650; }
.price-panel { display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; padding: clamp(25px,4vw,42px); border: 1px solid #51466f; border-radius: 11px; background: radial-gradient(ellipse at 10% 0%,rgba(122,99,203,.11),transparent 52%),#1b1c24; }
.price-panel h2 { margin: 0 0 5px; font-size: 29px; letter-spacing: -.035em; }
.price-panel p { margin: 0; color: var(--muted); font-size: 13px; }
.price-amount { display: flex; align-items: baseline; gap: 8px; margin: 11px 0 9px; font-weight: 760; font-size: 33px; letter-spacing: -.04em; }
.price-amount small { color: var(--muted); font-size: 13px; font-weight: 500; letter-spacing: 0; }
.price-points { display: flex; flex-wrap: wrap; gap: 10px 18px; color: #d7d4df; font-size: 12px; }
.purchase-side { text-align: right; }
.purchase-side .button { min-width: 205px; }
.purchase-side p { max-width: 280px; margin: 10px 0 0 auto; color: var(--quiet); font-size: 11px; }
.faq-list { border-top: 1px solid var(--border); }
.faq-list details { padding: 18px 2px; border-bottom: 1px solid var(--border); }
.faq-list summary { cursor: pointer; font-size: 15px; font-weight: 640; }
.faq-list summary::marker { color: var(--accent); }
.faq-list details p { max-width: 790px; margin: 11px 0 0; color: var(--muted); font-size: 13px; }
.site-footer { padding: 30px 0 35px; border-top: 1px solid var(--border); background: #101116; }
.footer-inner { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.footer-copy { color: var(--quiet); font-size: 11px; }
.footer-links { display: flex; flex-wrap: wrap; gap: 19px; }
.footer-links a { color: var(--muted); font-size: 12px; text-decoration: none; }
.free-hero { padding: 70px 0 55px; }
.free-hero h1 { max-width: 780px; }
.free-hero p { max-width: 720px; color: var(--muted); font-size: 17px; }
.choice-note { margin-top: 22px; color: var(--quiet); font-size: 12px; }
.choice-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 15px; margin-top: 24px; }
.small-label { color: #b6aaff; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; font-weight: 750; }
.free-page-compare { padding-bottom: 90px; }
.free-page-compare .compare-card { min-height: 335px; }
.free-price { color: #ddd8ff; font-size: 14px; font-weight: 700; }
.not-live { margin: 0; padding: 15px 17px; color: #d4d0df; background: #24212d; border-left: 3px solid #a99aff; border-radius: 4px; font-size: 12px; }
@media (max-width: 920px) {
  .hero-grid { grid-template-columns: 1fr; gap: 34px; }
  .hero-copy { max-width: 720px; }
  .media-frame { min-height: 0; max-width: 760px; }
  .areas-grid { grid-template-columns: repeat(3,1fr); }
  .workflow { grid-template-columns: repeat(2,1fr); }
  .workflow-step:nth-child(3) { border-left: 0; border-top: 1px solid var(--border); }
  .workflow-step:nth-child(4) { border-top: 1px solid var(--border); }
}
@media (max-width: 640px) {
  .wrap { width: min(var(--max), calc(100% - 34px)); }
  .header-inner { min-height: 66px; gap: 10px; }
  .brand-mark { width: 32px; height: 32px; }
  .brand-name strong { font-size: 12px; }
  .nav { gap: 13px; }
  .nav a { font-size: 12px; }
  .nav .nav-buy { display: none; }
  .hero { padding: 48px 0 40px; }
  h1 { font-size: clamp(39px,11vw,54px); }
  .hero-copy, .free-hero p { font-size: 15px; }
  .media-frame { aspect-ratio: 4 / 3; }
  .media-placeholder { padding: 60px 22px 25px; }
  .section { padding: 62px 0; }
  .areas-grid { grid-template-columns: repeat(2,1fr); gap: 9px; }
  .area { min-height: 138px; padding: 15px 13px; }
  .area h3 { margin-top: 16px; font-size: 14px; }
  .workflow { grid-template-columns: 1fr 1fr; }
  .workflow-step { min-height: 185px; padding: 20px 15px; }
  .workflow-step h3 { margin-top: 20px; }
  .feature-split, .compare-grid { grid-template-columns: 1fr; }
  .feature-panel { min-height: 0; padding: 22px; }
  .trust-band { grid-template-columns: 1fr; gap: 20px; padding: 25px; }
  .price-panel { grid-template-columns: 1fr; }
  .purchase-side { text-align: left; }
  .purchase-side p { margin-left: 0; }
  .footer-inner { align-items: flex-start; flex-direction: column; }
  .free-hero { padding: 50px 0 42px; }
}
@media (max-width: 380px) {
  .brand-name strong { max-width: 112px; font-size: 11px; }
  .nav { gap: 10px; }
  .nav a { font-size: 11px; }
  .workflow { grid-template-columns: 1fr; }
  .workflow-step { min-height: 0; }
  .workflow-step + .workflow-step, .workflow-step:nth-child(3) { border-top: 1px solid var(--border); border-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* M06C: larger reading type, clearer navigation, and varied product-led compositions. */
body { font-size: 17px; line-height: 1.7; }
.wrap { width: min(var(--max), calc(100% - 56px)); }
.header-inner { min-height: 82px; }
.brand-name strong { font-size: 15px; }
.brand-name span { font-size: 11px; }
.nav a { font-size: 15px; }
.nav .nav-buy { padding: 10px 16px; }
.eyebrow, .small-label { font-size: 12px; letter-spacing: .12em; }
.button { min-height: 52px; padding-inline: 20px; font-size: 15px; }
.hero { padding-block: 82px 68px; }
.hero-copy { font-size: 19px; }
.price-line { font-size: 28px; }
.price-line small, .license-line { font-size: 16px; }
.hero-note { font-size: 14px; }
.media-frame { min-height: 400px; border-color: #433c56; background: #171820; }
.section { padding-block: 96px; }
.section-heading { margin-bottom: 42px; }
.section-heading p { font-size: 17px; line-height: 1.65; }
.area { position: relative; min-height: 205px; padding: 23px 20px; overflow: hidden; background: linear-gradient(155deg,#20232c 0%,#191c23 70%); }
.area::after { content: ""; position: absolute; width: 100px; height: 100px; right: -46px; bottom: -48px; border: 1px solid rgba(169,154,255,.15); border-radius: 50%; box-shadow: 0 0 0 12px rgba(169,154,255,.025),0 0 0 25px rgba(169,154,255,.02); }
.area-icon { width: 42px; height: 42px; display: grid; place-items: center; margin-bottom: 19px; border-radius: 10px; border: 1px solid #48405f; background: #28243a; color: #c3b7ff; }
.area-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.area-index { font-size: 11px; }
.area h3 { margin: 0 0 5px; font-size: 18px; }
.area p, .fine-print { position: relative; z-index: 1; color: #bdc1cb; font-size: 15px; line-height: 1.55; }
.fine-print { color: var(--muted); }
.workflow { border: 0; background: transparent; overflow: visible; gap: 12px; }
.workflow-step { min-height: 250px; padding: 25px 23px; border: 1px solid var(--border); border-radius: 9px; background: linear-gradient(150deg,#20232c,#191b22); }
.workflow-step + .workflow-step { border-left: 1px solid var(--border); }
.workflow-step:not(:last-child)::after { content: "→"; position: absolute; z-index: 2; top: 27px; right: -20px; width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid #4a425f; border-radius: 50%; color: #c6baff; background: #24212e; font-size: 18px; }
.workflow-icon { width: 46px; height: 46px; display: grid; place-items: center; margin-top: 22px; border: 1px solid #49415e; border-radius: 12px; background: #292442; color: #c4baff; }
.workflow-icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.workflow-step h3 { margin: 15px 0 7px; font-size: 21px; }
.workflow-step p { font-size: 16px; line-height: 1.6; }
.feature-panel { min-height: 290px; padding: 34px; }
.feature-panel p, .trust-copy { font-size: 16px; line-height: 1.7; }
.feature-list span { font-size: 14px; padding: 8px 11px; }
.trust-band { grid-template-columns: minmax(245px,.8fr) 1.2fr; gap: 42px; padding: 44px; }
.trust-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; gap: 12px; align-items: center; margin: 28px 0 22px; padding: 18px 20px; border: 1px solid #464052; border-radius: 9px; background: rgba(10,11,15,.28); }
.trust-node { display: grid; gap: 4px; color: #f0edf7; font-size: 15px; font-weight: 700; }
.trust-node small { color: #bdc1cb; font-size: 13px; font-weight: 450; }
.trust-arrow { color: #b7aaff; font-size: 22px; }
.compare-grid { gap: 20px; }
.compare-card { padding: 30px; }
.compare-card h3 { font-size: 26px; }
.compare-intro { min-height: auto; font-size: 16px; line-height: 1.6; }
.compare-card ul { gap: 12px; margin-block: 24px; }
.compare-card li { font-size: 16px; line-height: 1.5; }
.price-panel { padding: clamp(30px,5vw,52px); }
.price-panel h2 { font-size: 34px; }
.price-panel p, .price-points { font-size: 15px; line-height: 1.6; }
.price-amount { font-size: 48px; }
.price-amount small { font-size: 16px; }
.purchase-side p { font-size: 14px; }
.faq-list summary { font-size: 18px; padding-block: 3px; }
.faq-list details { padding-block: 22px; }
.faq-list details p { font-size: 16px; line-height: 1.7; }
.footer-copy, .footer-links a { font-size: 14px; }
.free-hero { padding-block: 82px 65px; }
.free-hero p { font-size: 19px; line-height: 1.7; }
.choice-note { font-size: 14px; }
.media-art { position: relative; width: 100%; min-height: 400px; display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 20px; padding: 40px; background: radial-gradient(ellipse at 78% 18%,rgba(133,110,213,.15),transparent 42%),linear-gradient(140deg,#171820,#1b1c25); }
.art-kicker { color: #c1b7fa; font-size: 13px; letter-spacing: .13em; text-transform: uppercase; font-weight: 700; }
.art-copy strong { display: block; margin-top: 12px; font-size: 25px; line-height: 1.22; letter-spacing: -.03em; }
.art-copy p { margin: 12px 0 0; color: #c0c3cd; font-size: 15px; }
.type-sample { display: grid; gap: 11px; padding: 23px; border-left: 1px solid #413a52; }
.sample-row { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; color: #f1eff7; }
.sample-row span { font-size: 12px; color: #b3afc2; }
.sample-row:nth-child(1) strong { font-size: 18px; }
.sample-row:nth-child(2) strong { font-size: 23px; }
.sample-row:nth-child(3) strong { font-size: 29px; }
.sample-row:nth-child(4) strong { font-size: 35px; }
.illustration-caption { position: absolute; bottom: 14px; right: 20px; color: #a8a4b2; font-size: 12px; }
.area-grid-visual { display: grid; grid-template-columns: 1.15fr .85fr; gap: 28px; align-items: center; }
.area-note { padding: 28px; border-left: 2px solid #8f7be9; background: linear-gradient(90deg,rgba(96,78,153,.13),transparent); color: #c3c6cf; font-size: 16px; }
.step-nav { display: flex; flex-wrap: wrap; gap: 9px; margin: 25px 0 0; }
.step-nav a { padding: 7px 11px; border: 1px solid #3c3b48; border-radius: 6px; color: #dedbea; background: #1b1d25; text-decoration: none; font-size: 14px; }
.guide-layout { display: grid; grid-template-columns: 245px minmax(0,1fr); gap: 45px; align-items: start; }
.guide-rail { position: sticky; top: 20px; padding: 20px; border: 1px solid var(--border); border-radius: 9px; background: var(--surface); }
.guide-rail h2 { margin: 0 0 14px; font-size: 17px; }
.guide-rail ol { margin: 0; padding-left: 21px; color: var(--muted); }
.guide-rail li { padding: 4px 0; font-size: 14px; }
.guide-rail a { color: #d0caff; text-decoration: none; }
.guide-content { min-width: 0; }
.guide-step { position: relative; display: grid; grid-template-columns: 62px minmax(0,1fr); gap: 20px; padding: 27px 0; border-bottom: 1px solid var(--border); scroll-margin-top: 22px; }
.guide-step:first-child { padding-top: 0; }
.guide-number { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid #52486d; border-radius: 13px; color: #d0c7ff; background: #28243a; font-size: 17px; font-weight: 750; }
.guide-step h2 { margin: 0 0 7px; font-size: 23px; line-height: 1.25; }
.guide-step p, .guide-step li { color: #c2c5ce; font-size: 16px; line-height: 1.7; }
.guide-step p:last-child { margin-bottom: 0; }
.guide-callout { margin: 16px 0 0; padding: 15px 18px; border-left: 3px solid #9e8cf0; background: #211f2c; color: #e0dced; font-size: 15px; }
.page-hero { padding: 70px 0 45px; }
.page-hero h1 { max-width: 850px; }
.page-hero .lead { max-width: 790px; color: #c5c8d1; font-size: 20px; line-height: 1.65; }
.draft-banner { margin: 24px 0; padding: 16px 18px; border: 1px solid #66543a; border-left: 4px solid #d2a45e; border-radius: 6px; color: #f0dfc2; background: #241f18; font-size: 15px; }
.support-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 17px; }
.support-card { padding: 25px; border: 1px solid var(--border); border-radius: 10px; background: linear-gradient(145deg,#20232b,#191b22); }
.support-card h2 { margin: 0 0 12px; font-size: 22px; }
.support-card p, .support-card li { color: #c2c5ce; font-size: 16px; line-height: 1.65; }
.support-card ul { margin: 10px 0 0; padding-left: 21px; }
.support-card a { color: #d1caff; }
.comparison-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; background: #191c23; }
.comparison-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 15px; line-height: 1.5; }
.comparison-table th, .comparison-table td { padding: 17px 16px; border-bottom: 1px solid #30333d; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.comparison-table thead th { color: #e9e6f1; background: #23232d; font-size: 15px; }
.comparison-table thead th:last-child { color: #d2c9ff; background: #29253a; }
.comparison-table tbody th { width: 27%; color: #eeedf2; font-weight: 650; }
.comparison-table tbody td { color: #c4c7d0; }
.comparison-table tbody tr:last-child th, .comparison-table tbody tr:last-child td { border-bottom: 0; }
.comparison-table td strong { display: block; color: #eeeaf8; font-weight: 650; }
.recommendations { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 19px; }
.recommendation { padding: 20px 22px; border-left: 2px solid #777080; background: #191b22; color: #c4c6cf; font-size: 15px; }
.recommendation.pro-recommendation { border-color: #a99aff; background: #201e2c; }
.recommendation strong { display: block; margin-bottom: 5px; color: #f0eff4; font-size: 17px; }
.legal-copy { max-width: 850px; }
.legal-copy h2 { margin: 34px 0 10px; font-size: 24px; }
.legal-copy p, .legal-copy li { color: #c5c8d1; font-size: 16px; line-height: 1.75; }
@media (max-width: 920px) {
  .trust-flow { grid-template-columns: 1fr; gap: 9px; }
  .trust-arrow { justify-self: start; margin-left: 13px; transform: rotate(90deg); }
  .workflow { grid-template-columns: repeat(2,1fr); }
  .workflow-step:not(:last-child)::after { display: none; }
  .guide-layout { grid-template-columns: 1fr; gap: 28px; }
  .guide-rail { position: static; }
  .guide-rail ol { columns: 2; }
  .area-grid-visual { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .wrap { width: min(var(--max), calc(100% - 36px)); }
  body { font-size: 16px; line-height: 1.65; }
  .header-inner { min-height: 70px; gap: 8px; }
  .brand-name strong { font-size: 13px; }
  .brand-name span { font-size: 10px; }
  .nav { gap: 12px; }
  .nav a { font-size: 13px; }
  .hero { padding-block: 52px 45px; }
  .hero-copy, .free-hero p { font-size: 17px; }
  .hero-note, .choice-note { font-size: 14px; }
  .section { padding-block: 68px; }
  .section-heading p { font-size: 16px; }
  .areas-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .area { min-height: 185px; padding: 18px 15px; }
  .area p { font-size: 14px; }
  .workflow { grid-template-columns: 1fr 1fr; gap: 10px; }
  .workflow-step { min-height: 255px; padding: 18px 15px; }
  .workflow-step p { font-size: 15px; }
  .feature-split, .compare-grid, .support-grid, .recommendations { grid-template-columns: 1fr; }
  .feature-panel { min-height: 0; padding: 24px; }
  .feature-panel p, .trust-copy { font-size: 16px; }
  .trust-band { grid-template-columns: 1fr; gap: 22px; padding: 26px 21px; }
  .trust-flow { grid-template-columns: 1fr; gap: 9px; padding: 15px 14px; }
  .trust-arrow { justify-self: start; margin-left: 13px; transform: rotate(90deg); }
  .trust-node { font-size: 14px; }
  .trust-node small { font-size: 12px; }
  .price-panel { grid-template-columns: 1fr; gap: 25px; }
  .purchase-side { text-align: left; }
  .purchase-side p { margin-left: 0; }
  .footer-inner { align-items: flex-start; flex-direction: column; }
  .free-hero, .page-hero { padding-block: 52px 40px; }
  .page-hero .lead { font-size: 17px; }
  .media-frame { min-height: 0; aspect-ratio: 4 / 3; }
  .media-art { min-height: 100%; grid-template-columns: 1fr; gap: 14px; padding: 55px 20px 35px; }
  .art-copy strong { font-size: 22px; }
  .type-sample { grid-template-columns: 1fr 1fr; padding: 16px 0 0; border-left: 0; border-top: 1px solid #413a52; }
  .sample-row:nth-child(n) strong { font-size: clamp(16px,5vw,25px); }
  .sample-row span { font-size: 11px; }
  .illustration-caption { right: 12px; bottom: 7px; font-size: 11px; }
  .guide-rail ol { columns: 1; }
  .guide-step { grid-template-columns: 42px minmax(0,1fr); gap: 13px; padding-block: 23px; }
  .guide-number { width: 38px; height: 38px; font-size: 14px; border-radius: 10px; }
  .guide-step h2 { font-size: 20px; }
  .guide-step p, .guide-step li { font-size: 15px; }
  .comparison-table { font-size: 13px; }
  .comparison-table th, .comparison-table td { padding: 12px 9px; }
  .comparison-table thead th { font-size: 13px; }
  .comparison-table tbody th { width: 28%; }
}
@media (max-width: 380px) {
  .brand-name strong { font-size: 12px; }
  .nav { gap: 9px; }
  .nav a { font-size: 12px; }
  .workflow { grid-template-columns: 1fr; }
  .workflow-step { min-height: 0; }
  .comparison-table { font-size: 12px; }
  .comparison-table th, .comparison-table td { padding: 10px 7px; }
}

/* M06D supporting type specimen. Product UI imagery remains capture-gated. */
.readability-section { padding: clamp(48px,7vw,90px) 0; background: linear-gradient(110deg,#14151b 0%,#191821 62%,#17161e 100%); border-block: 1px solid #292832; }
.readability-grid { display: grid; grid-template-columns: minmax(240px,.72fr) minmax(0,1.28fr); align-items: center; gap: clamp(28px,5vw,68px); }
.readability-copy h2 { max-width: 470px; margin: 13px 0 16px; font: 650 clamp(26px,3.1vw,40px)/1.13 'Manrope',sans-serif; letter-spacing: -.035em; }
.readability-copy > p { max-width: 450px; color: var(--muted); font-size: 17px; line-height: 1.65; }
.readability-copy .fine-print { font-size: 14px; }
.readability-figure { min-width: 0; margin: 0; }
.readability-figure img { display: block; width: 100%; height: auto; border: 1px solid #433c56; border-radius: 13px; background: #171820; box-shadow: 0 24px 65px rgba(0,0,0,.28); }
.readability-figure figcaption { margin: 11px 4px 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
@media (max-width: 920px) {
  .readability-grid { grid-template-columns: 1fr; gap: 23px; }
  .readability-copy { max-width: 700px; }
  .readability-figure { max-width: 760px; }
}
/* M06F.1: open, readable customer journeys with fewer boxed surfaces. */
:root { --muted: #c0c4cf; --quiet: #a6adba; }
body { font-size: 17px; line-height: 1.72; }
.hero-copy, .section-heading p, .area p, .workflow-step p, .feature-panel p, .trust-copy,
.compare-card li, .price-panel p, .faq-list details p, .footer-copy, .footer-links a,
.page-hero .lead, .guide-step p, .guide-step li, .support-answer p, .support-answer li,
.legal-copy p, .legal-copy li { font-size: 17px; }
.hero { padding-block: 74px 64px; }
.hero-grid { gap: clamp(34px,5vw,64px); }
.price-line { display: inline-flex; align-items: baseline; gap: .2em; margin: 22px 12px 4px 0; }
.price-line small { color: var(--text); font-size: .72em; font-weight: 580; }
.license-line { display: inline; color: #d4d2dc; }
.hero-note { margin-top: 16px; }
.illustration-caption { padding: 6px 10px; border-radius: 999px; background: rgba(14,14,20,.78); color: #ddd8ef; }
.area { min-height: 184px; border: 0; border-top: 1px solid #454051; border-radius: 0; background: linear-gradient(150deg,rgba(37,34,49,.72),rgba(25,27,34,.25) 70%); }
.area::after { opacity: .55; }
.workflow { position: relative; gap: 0; padding-top: 16px; }
.workflow::before { content: ""; position: absolute; top: 37px; left: 6%; right: 6%; height: 1px; background: linear-gradient(90deg,#7668b8,#5d536c); }
.workflow-step, .workflow-step + .workflow-step { min-height: 230px; padding: 22px 24px 15px; border: 0; border-radius: 0; background: transparent; }
.workflow-step:not(:last-child)::after { display: none; }
.workflow-num { position: relative; z-index: 1; display: inline-flex; min-height: 42px; align-items: center; padding: 0 12px; border: 1px solid #574d75; border-radius: 999px; background: #201e29; }
.workflow-icon { margin-top: 19px; border: 0; border-radius: 0; background: transparent; }
.workflow-step h3 { margin-top: 8px; }
.feature-panel { min-height: 0; padding: 15px 26px 20px; border: 0; border-left: 1px solid #504866; border-radius: 0; background: transparent; }
.feature-panel:first-child { border-left: 0; }
.feature-list { gap: 7px 17px; }
.feature-list span { padding: 0; border: 0; border-radius: 0; background: none; color: #dedbea; font-size: 15px; }
.feature-list span::before { content: "·"; margin-right: 8px; color: var(--accent); }
.trust-band { border: 0; border-radius: 0; background: linear-gradient(110deg,#211e2e,#191b23 70%); }
.trust-flow { border: 0; border-radius: 0; border-block: 1px solid #484356; background: transparent; }
.readability-section { border: 0; }
.readability-copy > p { font-size: 17px; }
.readability-copy .fine-print { color: var(--muted); font-size: 15px; }
.readability-figure img { border: 0; border-radius: 6px; box-shadow: 0 22px 56px rgba(0,0,0,.24); }
.readability-figure figcaption { font-size: 15px; }

.choice-section { background: linear-gradient(180deg,transparent,rgba(39,34,57,.28) 52%,transparent); }
.edition-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(22px,4vw,54px); align-items: stretch; }
.edition-choice { display: flex; flex-direction: column; min-width: 0; padding: 28px 30px; border-top: 1px solid #4a4654; border-bottom: 1px solid #4a4654; }
.edition-choice.edition-pro { position: relative; border: 1px solid #7969bd; border-radius: 14px; background: radial-gradient(ellipse at 100% 0,rgba(130,110,214,.19),transparent 49%),linear-gradient(145deg,#242134,#1a1c24 72%); box-shadow: 0 22px 55px rgba(0,0,0,.2); }
.edition-top { display: flex; align-items: center; gap: 12px; }
.edition-mark { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 11px; color: #ddd7ff; background: #332d49; font-weight: 750; }
.edition-choice h3 { max-width: 420px; margin: 22px 0 5px; font-size: clamp(23px,2.4vw,30px); line-height: 1.18; letter-spacing: -.035em; }
.edition-choice ul { display: grid; gap: 10px; margin: 18px 0 28px; padding: 0; list-style: none; color: #d2d4dc; font-size: 16px; }
.edition-choice li { position: relative; padding-left: 24px; }
.edition-choice li::before { content: "✓"; position: absolute; left: 0; color: var(--green); font-weight: 750; }
.edition-bottom { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 15px; margin-top: auto; }
.edition-bottom > strong { font-size: 25px; letter-spacing: -.03em; }
.edition-bottom small { color: #d0c9eb; font-size: 15px; font-weight: 550; }
.edition-pro .button-primary { min-width: 230px; }
.comparison-disclosure { margin-top: 34px; border-top: 1px solid #41404a; border-bottom: 1px solid #41404a; }
.comparison-disclosure summary { padding: 18px 2px; cursor: pointer; color: #e3def5; font-size: 18px; font-weight: 650; }
.comparison-disclosure summary::marker { color: var(--accent); }
.comparison-disclosure[open] .comparison-wrap { margin-bottom: 16px; }
.comparison-wrap { border: 0; border-radius: 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.comparison-table { font-size: 15px; }
.comparison-table th, .comparison-table td { padding: 14px 15px; }
.comparison-table thead th { position: sticky; top: 0; }
.comparison-disclosure .fine-print { margin: 0 0 18px; }
.price-panel { position: relative; overflow: hidden; border: 0; border-radius: 0; border-block: 1px solid #645b80; background: radial-gradient(ellipse at 0 50%,rgba(122,99,203,.18),transparent 50%),linear-gradient(100deg,#211f2c,#191b22 65%); }
.price-panel::before { content: ""; position: absolute; left: 0; top: 12%; bottom: 12%; width: 3px; background: #a99aff; }
.price-amount { gap: 5px; }
.price-amount small { color: var(--text); font-size: .48em; }
.price-points { gap: 8px 22px; font-size: 16px; }
.price-points span + span::before { content: "·"; margin-right: 18px; color: var(--accent); }
.purchase-note { margin-top: 12px !important; }
.purchase-side .button { min-width: 245px; min-height: 56px; font-size: 16px; }
.purchase-side p { max-width: 250px; }
.faq-list { border-top: 0; }
.faq-list details { padding: 20px 2px; }
.site-footer { padding-block: 38px; }
.footer-inner { align-items: flex-start; }
.footer-copy { max-width: 360px; line-height: 1.55; }

/* Setup becomes a calm, numbered onboarding journey. */
.setup-note { max-width: 790px; margin: 23px 0 0; padding: 12px 0; border-block: 1px solid #393543; color: #c6c4cf; font-size: 15px; }
.setup-note strong { color: #eeeaf8; }
.journey-nav { gap: 0; align-items: center; margin-top: 23px; }
.journey-nav a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 15px 8px 0; border: 0; border-radius: 0; background: transparent; color: #e2def1; font-size: 15px; }
.journey-nav a + a::before { content: "→"; margin-right: 8px; color: #9587d0; }
.journey-nav a span { color: #b9aaff; font-size: 12px; font-weight: 750; }
.guide-layout { display: block; max-width: 900px; }
.guide-step { grid-template-columns: 68px minmax(0,1fr); gap: 20px; padding: 28px 0; border-bottom-color: #292c35; }
.guide-number { width: 50px; height: 50px; border: 0; border-radius: 50%; background: #292442; font-size: 16px; }
.guide-step h2 { margin-bottom: 6px; font-size: 24px; }
.guide-step p, .guide-step li { max-width: 740px; }
.guide-detail { margin-top: 13px; color: #bfc1cc; font-size: 15px !important; }
.guide-callout { padding: 0 0 0 14px; border-left: 2px solid #8f7be9; background: none; color: #d5d1e1; }
.key-reminder { padding-left: 14px; border-left: 2px solid #a99aff; color: #ede9fa !important; }

/* Support answers are grouped by customer task and open on demand. */
.support-list { max-width: 980px; }
.support-item { border-top: 1px solid #393b45; scroll-margin-top: 20px; }
.support-item:last-child { border-bottom: 1px solid #393b45; }
.support-item summary { display: grid; grid-template-columns: 52px minmax(170px,.75fr) minmax(190px,1fr); align-items: center; gap: 14px; padding: 21px 6px; cursor: pointer; list-style: none; }
.support-item summary::-webkit-details-marker { display: none; }
.support-item summary::after { content: "+"; justify-self: end; color: #c4b7ff; font-size: 24px; }
.support-item[open] summary::after { content: "−"; }
.support-index { color: #b9aaff; font-size: 13px; font-weight: 750; letter-spacing: .1em; }
.support-item summary > span:nth-child(2) { color: var(--text); font-size: 19px; font-weight: 650; }
.support-hint { color: #b2b7c3; font-size: 15px; }
.support-answer { max-width: 740px; padding: 0 54px 24px 72px; }
.support-answer p, .support-answer li { color: #c5c8d1; font-size: 16px; line-height: 1.7; }
.support-answer ul { padding-left: 21px; }
.support-answer a { display: inline-block; color: #d1caff; font-weight: 650; }
.contact-panel { display: flex; justify-content: space-between; align-items: center; gap: 36px; padding: 40px 0; border-block: 1px solid #4d4562; }
.contact-panel h2 { margin: 8px 0; font-size: clamp(29px,3vw,38px); }
.contact-panel p { max-width: 640px; margin-bottom: 10px; color: #c2c5cf; font-size: 16px; }
.contact-panel .button { flex: 0 0 auto; min-width: 215px; }
.contact-address { display: none; }

.nav a[aria-current="page"] { color: #fff; text-decoration: underline; text-decoration-color: #a99aff; text-decoration-thickness: 2px; text-underline-offset: 9px; }
.nav .nav-buy { border-color: #8171c3; background: #332b52; box-shadow: 0 5px 18px rgba(93,72,186,.16); }
.button { border-radius: 9px; }
.button-secondary { border-color: #4a4e5b; }
.button:focus-visible, .nav a:focus-visible, .step-nav a:focus-visible, summary:focus-visible { outline-offset: 4px; }

@media (max-width: 920px) {
  .workflow { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .workflow-step, .workflow-step + .workflow-step { padding-inline: 14px; }
  .edition-grid { gap: 18px; }
  .edition-choice { padding: 25px 23px; }
  .contact-panel { align-items: flex-start; }
}
@media (max-width: 640px) {
  body { font-size: 17px; }
  .wrap { width: min(var(--max),calc(100% - 36px)); }
  .hero { padding-block: 52px 44px; }
  .hero-copy { font-size: 18px; }
  .section { padding-block: 66px; }
  .areas-grid { gap: 15px 10px; }
  .area { min-height: 165px; padding: 18px 13px; }
  .workflow { grid-template-columns: repeat(2,minmax(0,1fr)); row-gap: 8px; }
  .workflow::before { display: none; }
  .workflow-step, .workflow-step + .workflow-step { min-height: 0; padding: 16px 11px 19px; }
  .workflow-num { min-height: 36px; padding-inline: 10px; font-size: 10px; }
  .workflow-step h3 { font-size: 19px; }
  .workflow-step p { font-size: 16px; }
  .feature-panel { padding: 18px 0; border-left: 0; border-top: 1px solid #504866; }
  .feature-panel:first-child { border-top: 0; }
  .trust-band { padding: 27px 20px; }
  .edition-grid { grid-template-columns: 1fr; gap: 22px; }
  .edition-choice { padding: 23px 0; }
  .edition-choice.edition-pro { padding: 23px 20px; }
  .edition-bottom { align-items: flex-start; flex-direction: column; }
  .edition-bottom .button { width: 100%; }
  .comparison-table { table-layout: auto; font-size: 14px; }
  .comparison-table th, .comparison-table td { padding: 11px 8px; }
  .comparison-table tbody th { min-width: 118px; }
  .comparison-table td { min-width: 142px; }
  .price-panel { padding: 30px 23px; }
  .price-panel h2 { font-size: 29px; }
  .price-amount { font-size: 44px; }
  .purchase-side .button { min-width: 0; width: 100%; }
  .purchase-side p { max-width: none; }
  .journey-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 8px; }
  .journey-nav a { padding: 8px 0; font-size: 14px; }
  .journey-nav a + a::before { content: none; }
  .guide-step { grid-template-columns: 44px minmax(0,1fr); gap: 13px; padding-block: 22px; }
  .guide-number { width: 38px; height: 38px; }
  .guide-step h2 { font-size: 21px; }
  .guide-step p, .guide-step li { font-size: 16px; }
  .support-item summary { grid-template-columns: 38px 1fr 22px; gap: 10px; padding-block: 18px; }
  .support-item summary > span:nth-child(2) { font-size: 17px; }
  .support-hint { grid-column: 2; grid-row: 2; font-size: 14px; }
  .support-item summary::after { grid-column: 3; grid-row: 1 / span 2; }
  .support-answer { padding: 0 8px 22px 48px; }
  .contact-panel { flex-direction: column; gap: 20px; padding: 30px 0; }
  .contact-panel .button { width: 100%; }
  .footer-inner { gap: 18px; }
}
@media (max-width: 400px) {
  .header-inner { align-items: flex-start; flex-direction: column; padding-block: 12px; }
  .nav { width: 100%; justify-content: space-between; gap: 8px; }
  .nav a { font-size: 13px; }
  .hero-grid { gap: 26px; }
  .license-line { display: block; }
  .price-line { margin-bottom: 0; }
  .area { min-height: 175px; }
  .workflow { grid-template-columns: 1fr; }
  .edition-pro .button-primary { min-width: 0; }
}
.contact-action { display: grid; justify-items: center; gap: 8px; }
.contact-action .button { width: auto; min-width: 215px; }
.contact-address { display: block; color: #c7bdff; font-size: 15px; }
@media (max-width: 640px) { .contact-action, .contact-action .button { width: 100%; } }
@media (max-width: 640px) { .comparison-wrap::after { content: "Swipe to compare all features →"; display: block; padding: 10px 9px; color: #b9adff; font-size: 14px; } }
.footer-inner { display: flex; justify-content: space-between; align-items: flex-end; gap: 30px; }
.footer-brand { display: grid; justify-items: start; gap: 4px; }
.footer-brand strong { color: #eeedf4; font-size: 16px; }
.footer-brand span, .footer-brand small, .footer-brand a { color: #b5bac5; font-size: 14px; }
.footer-brand small { margin-top: 5px; font-size: 13px; }
.footer-brand a { color: #c8beff; }
.footer-links { max-width: 460px; justify-content: flex-end; gap: 12px 22px; }
@media (max-width: 640px) { .footer-inner { align-items: flex-start; } .footer-links { justify-content: flex-start; } }

/* M07 setup: a short, progressive path through the current customer journey. */
.setup-hero { padding-block: 76px 56px; }
.setup-hero h1 { max-width: 760px; font-size: clamp(40px, 5.2vw, 60px); }
.setup-hero .lead { max-width: 620px; }
.setup-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 38px 0 0; padding: 0; list-style: none; }
.setup-steps li { min-height: 214px; display: grid; grid-template-columns: 42px minmax(0,1fr); align-content: start; gap: 16px; padding: 23px 21px; border: 1px solid #303541; border-radius: 11px; background: linear-gradient(145deg,#20242d,#1a1d24 74%); }
.setup-step-icon { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid #49406c; border-radius: 10px; color: #d0c8ff; background: #30294d; font-size: 17px; font-weight: 700; }
.setup-step-label { color: #b6aaff; font-size: 10px; font-weight: 750; letter-spacing: .14em; }
.setup-steps h2 { margin: 5px 0 8px; font-size: 19px; line-height: 1.25; letter-spacing: -.025em; }
.setup-steps p { margin: 0; color: #b0b5c1; font-size: 14px; line-height: 1.6; }
.setup-availability { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 20px; padding: 17px 19px; border: 1px solid #393543; border-radius: 9px; background: #1a1d24; }
.setup-availability > div { display: grid; gap: 3px; }
.setup-availability strong { color: #eff1f5; font-size: 14px; }
.setup-availability span { color: #b0b5c1; font-size: 13px; }
.setup-availability .button { flex: 0 0 auto; }
.setup-scope { padding: 17px 0; border-block: 1px solid rgba(255,255,255,.07); background: #1a1d24; }
.setup-scope p { margin: 0; color: #b0b5c1; font-size: 13px; }
.setup-scope strong { color: #eff1f5; }
.setup-help { padding-top: 68px; }
.setup-help .section-heading { margin-bottom: 25px; }
.setup-help-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.setup-help-grid section { padding: 21px; border: 1px solid #303541; border-radius: 9px; background: #1a1d24; }
.setup-help-grid h3 { margin: 0 0 8px; font-size: 16px; }
.setup-help-grid p { margin: 0 0 12px; color: #b0b5c1; font-size: 13px; line-height: 1.6; }
.setup-help-grid a, .setup-contact a { color: #c7bdff; font-size: 13px; font-weight: 650; }
.setup-short-answers { margin-top: 30px; border-top: 1px solid #303541; }
.setup-short-answers details { padding: 15px 2px; border-bottom: 1px solid #303541; }
.setup-short-answers summary { cursor: pointer; font-size: 14px; font-weight: 650; }
.setup-short-answers summary::marker { color: var(--accent); }
.setup-short-answers details p { max-width: 760px; margin: 9px 0 0; color: #b0b5c1; font-size: 13px; }
.setup-short-answers details a { color: #c7bdff; }
.setup-contact { margin: 22px 0 0; color: #b0b5c1; font-size: 13px; }
@media (max-width: 760px) {
  .setup-steps { grid-template-columns: 1fr; gap: 10px; margin-top: 28px; }
  .setup-steps li { min-height: 0; padding: 19px; }
}
@media (max-width: 640px) {
  .setup-hero { padding-block: 52px 38px; }
  .setup-availability { align-items: flex-start; flex-direction: column; }
  .setup-availability .button { width: 100%; }
  .setup-help-grid { grid-template-columns: 1fr; }
  .setup-scope p, .setup-help-grid p, .setup-short-answers details p { font-size: 14px; }
}
.site-brand-image { width: 40px; height: 40px; flex: 0 0 40px; object-fit: contain; }
.setup-help-grid { gap: 0 18px; border-top: 1px solid #303541; }
.setup-help-item { min-width: 0; border-bottom: 1px solid #303541; }
.setup-help-item summary { padding: 15px 25px 15px 2px; position: relative; cursor: pointer; list-style: none; font-size: 14px; font-weight: 650; }
.setup-help-item summary::-webkit-details-marker { display: none; }
.setup-help-item summary::after { content: "+"; position: absolute; right: 4px; top: 10px; color: #c4b7ff; font-size: 20px; }
.setup-help-item[open] summary::after { content: "−"; }
.setup-help-item > div { padding: 0 4px 15px 2px; }
.setup-help-item p { margin: 0 0 8px; color: #b0b5c1; font-size: 13px; line-height: 1.6; }
.setup-help-item a { color: #c7bdff; font-size: 13px; font-weight: 650; }
.setup-help-item:target { scroll-margin-top: 24px; }
.button-secondary:hover { border-color: #77689a; }
.setup-help-item a:hover { color: #e2dcff; }
@media (max-width: 760px) {
  .site-header .header-inner { flex-wrap: wrap; gap: 2px 18px; padding-block: 10px; }
  .site-header .nav { width: 100%; justify-content: space-between; gap: 8px; }
  .site-header .nav a:not(.nav-buy) { display: inline-flex; align-items: center; min-height: 44px; }
}
@media (max-width: 640px) {
  .setup-help-grid { grid-template-columns: 1fr; }
}
[data-purchase-link][aria-disabled="true"] { color: #e0d9ff; background: #39314f; border-color: #685a92; box-shadow: 0 5px 18px rgba(93,72,186,.12); cursor: not-allowed; }
@media (max-width: 640px) { .price-points { display: grid; gap: 7px; } .price-points span + span::before { content: none; } }
@media (max-width: 640px) {
  .workflow { grid-template-columns: 1fr; gap: 0; margin-left: 10px; padding-left: 15px; border-left: 1px solid #655a80; }
  .workflow::before { display: none; }
  .workflow-step, .workflow-step + .workflow-step { padding: 15px 8px 20px; }
  .workflow-step h3 { margin-top: 9px; }
}
.areas-grid { gap: 0; border-block: 1px solid #393b45; }
.area { min-height: 172px; padding: 19px 17px; border: 0; border-radius: 0; background: transparent; }
.area:not(:nth-child(5n)) { border-right: 1px solid #393b45; }
.area:nth-child(n+6) { border-top: 1px solid #393b45; }
.area::after { display: none; }
@media (max-width: 920px) {
  .area { border: 0 !important; }
  .area:not(:nth-child(3n)) { border-right: 1px solid #393b45 !important; }
  .area:nth-child(n+4) { border-top: 1px solid #393b45 !important; }
}
@media (max-width: 640px) {
  .area { min-height: 158px; padding: 17px 11px; }
  .area:not(:nth-child(2n)) { border-right: 1px solid #393b45 !important; }
  .area:nth-child(n+3) { border-top: 1px solid #393b45 !important; }
}
@media (max-width: 920px) {
  .workflow { grid-template-columns: 1fr; gap: 0; margin-left: 10px; padding-left: 15px; border-left: 1px solid #655a80; }
  .workflow::before { display: none; }
  .workflow-step, .workflow-step + .workflow-step { min-height: 0; padding: 15px 8px 20px; }
}

/* Shared composition grid. Reading measures sit inside the same outer wrapper. */
.wrap { width: min(var(--max), calc(100% - 2 * var(--gutter))); max-width: none; }
.section { padding-block: var(--section-space); border-top: 0; }
.page-hero, .free-hero { padding-block: var(--section-space) calc(var(--section-space) * .65); }
h1 { text-wrap: balance; }
h2 { font-size: var(--heading-size); line-height: 1.14; letter-spacing: -.04em; font-weight: 680; text-wrap: balance; }
.section-heading { max-width: 680px; margin-bottom: 36px; }
.section-heading h2 { font-size: var(--heading-size); }
.section-heading p { font-size: 17px; }
.section-heading-split { display: grid; grid-template-columns: 1fr 1fr; gap: var(--layout-gap); align-items: end; max-width: none; }
.section-heading-split h2 { max-width: 16ch; margin-bottom: 0; }
.section-heading-split > p { max-width: 49ch; padding-bottom: 3px; }
.header-inner { min-height: 84px; gap: 24px; }
.brand-name strong { font-size: 15px; }
.brand-name span { font-size: 11px; }
.nav { gap: clamp(16px, 2.2vw, 28px); }
.nav a:not(.nav-buy) { display: inline-flex; align-items: center; min-height: 44px; border-bottom: 2px solid transparent; font-size: 15px; text-decoration: none; }
.nav a[aria-current="page"], .nav a:not(.nav-buy):hover { border-bottom-color: var(--accent); }
.eyebrow { font-size: 12px; }
.button { font-size: 15px; min-height: 52px; }
.text-link { font-size: 16px; }
.site-footer { padding-block: 40px; background: #101217; border-top: 1px solid #30343e; }
.footer-inner { align-items: flex-start; }
.footer-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: 15px; }
.footer-links { max-width: none; gap: 6px 24px; }
.page-intro-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: var(--layout-gap); align-items: end; }
.page-intro-copy p { margin-bottom: 20px; }
.legal-copy > * { max-width: 74ch; }
.legal-copy > h2:first-child { margin-top: 0; }

/* Comparison keeps its edition panels; onboarding uses an open numbered path. */
.free-hero h1 { font-size: clamp(38px, 4.5vw, 58px); max-width: 17ch; margin-bottom: 0; }
.free-hero p { font-size: 18px; }
.free-hero .choice-note { font-size: 15px; margin-bottom: 0; }
.choice-cta { align-items: flex-start; flex-direction: column; gap: 16px; }
.free-page-compare { background: #191b23; }
.edition-grid { gap: var(--layout-gap); }
.edition-choice { padding: 28px; }
.edition-choice ul { font-size: 17px; }
.edition-pro .button-primary { min-width: 0; }
.free-page .trust-band { padding: 0; gap: var(--layout-gap); background: transparent; grid-template-columns: 1fr 1fr; }
.trust-copy { font-size: 17px; }
.setup-hero .lead { max-width: none; }
.setup-steps { gap: var(--layout-gap); margin-block: 42px 32px; }
.setup-steps li { grid-template-columns: 1fr; gap: 16px; min-height: 0; padding: 24px 0 0; border: 0; border-top: 1px solid #514965; border-radius: 0; background: none; }
.setup-step-label { font-size: 13px; }
.setup-steps h2 { font-size: 23px; margin-top: 6px; }
.setup-steps p { font-size: 17px; color: var(--muted); }
.setup-availability { padding: 20px 24px; border: 0; border-left: 2px solid var(--accent); border-radius: 0; }
.setup-availability strong { font-size: 17px; }
.setup-availability span, .setup-scope p { font-size: 16px; color: var(--muted); }
.setup-scope { background: #1a1c25; padding-block: 24px; border: 0; }
.setup-scope p { max-width: 100ch; }
.help-layout { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--layout-gap); }
.help-layout .section-heading { margin: 0; }
.setup-help-grid { grid-template-columns: 1fr; border-top-color: #484653; }
.setup-help-item summary { padding-block: 21px; font-size: 18px; }
.setup-help-item summary::after { top: 16px; }
.setup-help-item p, .setup-help-item a { font-size: 16px; }

/* Support aligns to the shared grid, with a task rail and a readable answer column. */
.support-page .page-intro-grid { grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); }
.support-page h1 { max-width: 16ch; font-size: clamp(40px, 4.8vw, 60px); }
.support-intro-note .setup-note { margin: 0 0 8px; padding: 0 0 0 20px; border: 0; border-left: 2px solid var(--accent); font-size: 16px; }
.support-layout { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 9fr); gap: var(--layout-gap); align-items: start; }
.support-layout .step-nav { display: grid; gap: 6px; margin: 0; position: sticky; top: 24px; }
.support-layout .step-nav a { padding: 9px 0; border: 0; border-radius: 0; background: none; font-size: 16px; }
.support-list { min-width: 0; }
.support-item summary { grid-template-columns: 34px minmax(0, 1fr) 24px; gap: 4px 14px; padding: 20px 0; }
.support-hint { grid-column: 2; grid-row: 2; font-size: 16px; }
.support-item summary::after { grid-column: 3; grid-row: 1 / span 2; }
.support-answer { max-width: 72ch; padding: 0 24px 24px 48px; }
.support-answer p, .support-answer li { font-size: 17px; }
.support-page .support-section { padding-top: 24px; }
.support-page .support-section + .section { background: #1a1c25; }
.contact-panel { padding: 0; border: 0; }
.contact-panel h2 { font-size: var(--heading-size); }
.contact-panel p { font-size: 17px; }

/* All active page compositions collapse at the same tablet and phone boundaries. */
@media (max-width: 920px) {
  .page-intro-grid, .support-page .page-intro-grid { grid-template-columns: 1fr 1fr; gap: 28px; }
  .setup-steps { gap: 24px; }
  .setup-steps h2 { font-size: 21px; }
  .edition-choice { padding: 24px; }
}
@media (max-width: 760px) {
  .header-inner { min-height: 0; flex-direction: row; flex-wrap: wrap; padding-block: 12px 4px; gap: 4px 20px; }
  .site-header .nav { gap: 8px; }
  .nav .nav-buy { display: none; }
  .section-heading-split, .page-intro-grid, .support-page .page-intro-grid, .help-layout, .support-layout, .free-page .trust-band, .edition-grid { grid-template-columns: 1fr; gap: 28px; }
  .section-heading-split h2 { max-width: 20ch; }
  .section-heading-split { gap: 16px; }
  .free-hero h1 { max-width: 20ch; }
  .edition-choice, .edition-choice.edition-pro { padding: 24px; }
  .setup-steps { grid-template-columns: 1fr; gap: 24px; }
  .setup-steps li { grid-template-columns: 44px minmax(0, 1fr); gap: 20px; padding: 24px 0 0; }
  .setup-availability { align-items: flex-start; flex-direction: column; }
  .setup-availability .button { width: 100%; }
  .setup-help-grid { grid-template-columns: 1fr; }
  .support-layout .step-nav { position: static; display: flex; flex-wrap: wrap; gap: 4px 24px; padding-bottom: 20px; border-bottom: 1px solid var(--border); }
  .support-layout .step-nav a { min-height: 44px; }
  .support-intro-note .setup-note { margin-bottom: 0; }
  .support-answer { padding-right: 0; }
  .contact-panel { flex-direction: column; align-items: flex-start; gap: 24px; }
  .contact-action, .contact-action .button { width: 100%; }
  .footer-inner { flex-direction: column; gap: 24px; }
  .footer-links { justify-content: flex-start; gap: 4px 24px; }
}

/* M13B homepage. Keep tokens and responsive rules scoped to this route. */
.home-page {
  --home-max: 75rem;
  --home-gutter: 2.5rem;
  --home-section-space: 6.5rem;
  --home-h1: 5rem;
  --home-h2: 3rem;
  --home-h3: 1.5rem;
  --home-body: 1.125rem;
  --home-lead: 1.25rem;
  --home-small: .9375rem;
  --home-label: .75rem;
  --home-space-1: .5rem;
  --home-space-2: .75rem;
  --home-space-3: 1rem;
  --home-space-4: 1.5rem;
  --home-space-5: 2rem;
  --home-space-6: 3rem;
  --home-space-7: 4rem;
  --home-control-border: #858c9a;
  --home-focus: #c3b8ff;
  --home-radius: .5rem;
  --home-media-radius: 1rem;
  --home-transition: 160ms ease-out;
  --home-art-ink: #666375;
  --home-shadow: 0 1.5rem 4rem rgba(0,0,0,.24);
  --home-art-wash: radial-gradient(ellipse at 50% 50%, rgba(142,122,245,.14), transparent 70%);
  font-family: "Segoe UI Variable Text", "Segoe UI", system-ui, sans-serif;
  min-width: 0;
  font-size: var(--home-body);
  line-height: 1.6;
}
.home-page [hidden] { display: none !important; }
.home-page .wrap { width: min(var(--home-max), calc(100% - 2 * var(--home-gutter))); }
.home-page main :where(h1, h2, h3, p, ul, ol, dl, figure) { margin: 0; }
.home-page main :where(h1, h2, h3) { color: var(--text); text-wrap: balance; }
.home-page main h1 { max-width: 12ch; font-size: var(--home-h1); font-weight: 700; line-height: 1.04; letter-spacing: -.04em; }
.home-page main h2 { max-width: 20ch; font-size: var(--home-h2); font-weight: 600; line-height: 1.12; letter-spacing: -.03em; }
.home-page main h3 { font-size: var(--home-h3); font-weight: 600; line-height: 1.25; letter-spacing: -.015em; }
.home-page main p { max-width: 55ch; color: var(--muted); }
.home-page :focus-visible { outline: 3px solid var(--home-focus); outline-offset: 4px; }
.home-page :is(a, button) { transition: color var(--home-transition), background-color var(--home-transition), border-color var(--home-transition); }
.home-page .section { padding-block: var(--home-section-space); }
.home-page .header-inner { display: grid; grid-template-columns: 1fr auto auto; min-height: 5rem; gap: var(--home-space-5); padding-block: var(--home-space-1); }
.home-header .brand { grid-column: 1; grid-row: 1; min-height: 2.75rem; }
.home-header .brand-name strong { max-width: none; font-size: var(--home-small); font-weight: 600; }
.home-header .brand-name > span { font-size: var(--home-label); }
.home-header .nav { grid-column: 2; grid-row: 1; width: auto; gap: var(--home-space-4); }
.home-header .nav a:not(.nav-buy) { padding-inline: .125rem; min-width: 2.75rem; min-height: 2.75rem; justify-content: center; font-size: 1rem; font-weight: 600; }
.home-purchase-link { grid-column: 3; grid-row: 1; display: inline-flex; align-items: center; justify-content: center; gap: var(--home-space-2); min-height: 2.75rem; font-size: 1rem; font-weight: 600; text-decoration: none; }
.home-purchase-link:hover { text-decoration: underline; }
.home-page .button { min-height: 3rem; gap: var(--home-space-2); padding: var(--home-space-2) 1.25rem; border-radius: var(--home-radius); box-shadow: none; font-size: 1rem; font-weight: 600; line-height: 1.25; text-align: center; }
.home-page .button-primary { background: var(--accent); color: var(--bg); border-color: var(--accent); }
.home-page .button-primary:hover { background: var(--home-focus); border-color: var(--home-focus); color: var(--bg); }
.home-page .button-primary:active { background: var(--accent-strong); border-color: var(--accent-strong); }
.home-page .button-secondary { background: var(--surface-2); color: var(--text); border-color: var(--home-control-border); }
.home-page .button-secondary:hover { background: var(--accent-soft); border-color: var(--accent); }
.home-text-link { display: inline-flex; align-items: center; gap: var(--home-space-2); min-height: 2.75rem; max-width: 100%; color: var(--accent); font-size: 1rem; font-weight: 600; line-height: 1.5; text-decoration: none; }
.home-text-link:hover { color: var(--home-focus); text-decoration: underline; }
.home-page main .home-chapter-label, .home-hero .eyebrow { margin-bottom: var(--home-space-3); color: var(--quiet); font-size: var(--home-label); line-height: 1.5; letter-spacing: .1em; font-weight: 600; text-transform: uppercase; }
.home-section-intro { margin-bottom: 2.5rem; }
.home-section-intro > h2 + p { margin-top: var(--home-space-3); }
.home-section-intro > .home-text-link { margin-top: var(--home-space-3); }
.home-page main figcaption { color: var(--quiet); font-size: var(--home-small); line-height: 1.6; }

/* The headline leads; the lower-contrast type study gives it context. */
.home-hero { padding-block: 4.5rem; overflow: visible; }
.home-hero-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: var(--home-space-7); }
.home-hero-copy { min-width: 0; }
.home-hero h1 > span { display: block; }
.home-hero .hero-copy { margin-top: var(--home-space-4); max-width: 36ch; font-size: var(--home-lead); line-height: 1.55; }
.home-hero .actions { gap: var(--home-space-3) var(--home-space-4); margin-top: var(--home-space-5); }
.home-page main .home-availability { margin-top: var(--home-space-4); max-width: 43ch; font-size: var(--home-small); }
.home-availability strong { color: var(--text); font-weight: 600; }
.home-hero-media { min-width: 0; }
.home-type-art { display: flex; flex-direction: column; justify-content: space-between; gap: var(--home-space-4); width: 100%; min-width: 0; min-height: 24rem; aspect-ratio: 16 / 10; padding: var(--home-space-5); border-radius: var(--home-media-radius); background: var(--home-art-wash); box-shadow: var(--home-shadow); }
.home-art-heading { display: flex; justify-content: space-between; gap: var(--home-space-3); color: var(--quiet); font-size: var(--home-label); letter-spacing: .1em; }
.home-art-glyph { position: relative; color: var(--home-art-ink); font-size: 9rem; font-weight: 600; letter-spacing: -.07em; line-height: 1; }
.home-art-axis { position: absolute; inset: auto 0 .12em; height: 1px; background: var(--border); }
.home-art-axis::after { content: ""; position: absolute; right: 0; top: -.25rem; width: 1px; height: .5rem; background: var(--accent); }
.home-art-specimen { display: grid; justify-items: start; gap: var(--home-space-2); }
.home-art-small { color: var(--quiet); font-size: 1rem; }
.home-art-large { color: var(--accent); font-size: 1.875rem; font-weight: 600; letter-spacing: -.025em; line-height: 1.25; }
.home-art-note { margin-top: var(--home-space-1); color: var(--quiet); font-size: var(--home-small); }
.home-hero-media figcaption { padding: var(--home-space-3) var(--home-space-5) 0; }
.home-hero-media > img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: contain; border-radius: var(--home-media-radius); background: var(--surface); }

/* One wide specimen: controls belong to this website illustration only. */
.home-difference { background: var(--surface); }
.home-demo-samples { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-block: 1px solid var(--border); }
.home-type-sample { min-width: 0; padding: var(--home-space-5); }
.home-type-adjustable { border-left: 1px solid var(--border); }
.home-page main .home-sample-label { display: flex; justify-content: space-between; flex-wrap: wrap; gap: var(--home-space-1); color: var(--text); font-size: var(--home-small); font-weight: 600; }
.home-sample-label > span { color: var(--quiet); font-weight: 400; font-variant-numeric: tabular-nums; }
.home-sample-field { display: flex; align-items: center; min-height: 10rem; padding-block: var(--home-space-4); overflow-wrap: anywhere; }
.home-page main .home-sample-reference, .home-page main .home-sample-example { color: var(--text); line-height: 1.5; }
.home-page main .home-sample-reference { font-size: 1rem; }
.home-page main .home-sample-example { font-size: 1.5rem; }
.home-demo-controls { max-width: 44rem; padding-top: var(--home-space-5); margin-inline: auto; }
.home-demo-control-heading { display: flex; justify-content: space-between; gap: var(--home-space-3); font-size: 1rem; font-weight: 600; }
.home-demo-control-heading output { min-width: 6rem; text-align: right; color: var(--accent); font-variant-numeric: tabular-nums; }
.home-demo-control-row { display: flex; align-items: center; gap: var(--home-space-3); margin-top: var(--home-space-1); }
.home-demo-control-row > span { flex: 0 0 auto; font-size: 1rem; }
.home-demo-control-row > span:nth-of-type(2) { font-size: 1.5rem; }
.home-demo-control-row input { flex: 1 1 0; min-width: 0; min-height: 2.75rem; margin: 0; accent-color: var(--accent); cursor: pointer; }
.home-reset { flex: 0 0 auto; min-height: 2.75rem; padding: var(--home-space-1) var(--home-space-3); border: 1px solid var(--home-control-border); border-radius: var(--home-radius); color: var(--text); background: transparent; font-family: inherit; font-size: 1rem; font-weight: 600; line-height: 1.25; cursor: pointer; }
.home-reset:hover { background: var(--surface-2); border-color: var(--accent); }
.home-reset:active { background: var(--accent-soft); }
.home-type-demo figcaption { margin-top: var(--home-space-4); max-width: 70ch; }
.home-scope { margin-top: var(--home-space-6); }
.home-page main .home-scope h3 { font-size: 1rem; font-weight: 600; letter-spacing: 0; }
.home-scope ul { display: flex; flex-wrap: wrap; gap: var(--home-space-2) var(--home-space-5); margin-top: var(--home-space-4); padding: 0; list-style: none; }
.home-scope li { display: flex; align-items: center; gap: var(--home-space-2); }
.home-scope li::before { content: ""; width: .25rem; height: .25rem; flex: 0 0 auto; background: var(--accent); }
.home-page main .home-scope p { margin-top: var(--home-space-4); max-width: 80ch; font-size: var(--home-small); }

/* Three different diagrams along one open, numbered path. */
.home-page .home-workflow h2 { max-width: none; }
.home-phrase { white-space: nowrap; }
.home-journey { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--home-space-5); padding: 0; list-style: none; }
.home-journey-step { min-width: 0; position: relative; }
.home-step-number { display: flex; align-items: center; gap: var(--home-space-3); margin-bottom: var(--home-space-4); color: var(--quiet); font-size: var(--home-label); letter-spacing: .1em; }
.home-step-number::after { content: ""; flex: 1; height: 1px; background: var(--border); }
.home-step-art { display: flex; align-items: center; min-width: 0; min-height: 13rem; margin-bottom: var(--home-space-5) !important; }
.home-step-art > img { display: block; max-width: 100%; height: auto; }
.home-choice-specimens { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--home-space-2); width: 100%; align-items: end; }
.home-choice-specimens > div { display: grid; gap: var(--home-space-3); text-align: center; padding-bottom: var(--home-space-2); border-bottom: 1px solid var(--border); }
.home-choice-specimens > div > span { display: flex; align-items: end; justify-content: center; min-height: 4.25rem; font-size: 1.5rem; line-height: 1; color: var(--quiet); letter-spacing: -.04em; }
.home-choice-specimens > div:nth-child(2) > span { font-size: 2.5rem; }
.home-choice-specimens > div:nth-child(3) > span { font-size: 3.5rem; }
.home-choice-specimens small { font-size: var(--home-small); color: var(--quiet); white-space: nowrap; }
.home-choice-specimens .home-choice-selected { border-bottom: 2px solid var(--accent); }
.home-choice-specimens .home-choice-selected > span, .home-choice-selected small { color: var(--accent); }
.home-choice-selected b { font-weight: 600; }
.home-tune-lines { width: 100%; }
.home-tune-lines > div { display: flex; align-items: baseline; justify-content: space-between; gap: var(--home-space-3); min-height: 2.35rem; border-bottom: 1px solid var(--border); }
.home-tune-lines span { font-size: var(--home-small); color: var(--muted); }
.home-tune-lines b { color: var(--accent); font-weight: 400; font-size: 1.375rem; line-height: 1.4; }
.home-tune-lines > div:nth-child(2) b { font-size: 1.125rem; }
.home-tune-lines > div:nth-child(3) b { font-size: 1.5rem; }
.home-tune-lines > div:nth-child(4) b { font-size: 1.25rem; }
.home-tune-lines > div:nth-child(5) b { font-size: 1rem; }
.home-preview-specimen { position: relative; display: grid; gap: var(--home-space-3); width: 100%; padding: var(--home-space-3) var(--home-space-4); border-left: 1px solid var(--border); }
.home-preview-specimen::before, .home-preview-specimen::after { content: ""; position: absolute; left: 0; width: var(--home-space-2); height: 1px; background: var(--accent); }
.home-preview-specimen::before { top: 0; }
.home-preview-specimen::after { bottom: 0; }
.home-preview-specimen > span:first-child { color: var(--quiet); font-size: var(--home-label); letter-spacing: .1em; }
.home-preview-specimen strong { color: var(--text); font-size: 2rem; font-weight: 600; line-height: 1.18; letter-spacing: -.025em; }
.home-preview-annotation { display: flex; align-items: center; gap: var(--home-space-3); color: var(--accent); font-size: var(--home-small); }
.home-journey-step h3 { margin-bottom: var(--home-space-3); }
.home-workflow-notes { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--home-space-3) var(--home-space-5); margin-top: var(--home-space-6); padding-top: var(--home-space-3); border-top: 1px solid var(--border); font-size: var(--home-small); }
.home-page main .home-workflow-notes p { color: var(--quiet); }
.home-workflow-notes a { display: inline-flex; align-items: center; gap: var(--home-space-1); min-height: 2.75rem; color: var(--accent); }

/* Branching return paths, separate from the forward workflow. */
.home-page .home-recovery { padding-top: 0; }
.home-recovery-layout { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--home-space-7); padding-top: var(--home-space-6); border-top: 1px solid var(--border); }
.home-recovery .home-section-intro { margin: 0; }
.home-recovery-paths { min-width: 0; }
.home-page main .home-recovery-origin { display: flex; align-items: center; gap: var(--home-space-3); color: var(--quiet); font-size: var(--home-small); }
.home-recovery-origin > span { display: block; width: .5rem; height: .5rem; background: var(--accent); border-radius: 50%; }
.home-recovery dl { margin-left: .25rem !important; padding: var(--home-space-5) 0 0 var(--home-space-6); border-left: 1px solid var(--border); }
.home-recovery dl > div { position: relative; padding-bottom: var(--home-space-5); }
.home-recovery dl > div:last-child { padding-bottom: 0; }
.home-recovery dl > div::before { content: ""; position: absolute; top: .8em; left: calc(-1 * var(--home-space-6)); width: var(--home-space-5); height: 1px; background: var(--border); }
.home-recovery dl > div::after { content: ""; position: absolute; top: calc(.8em - .1875rem); left: calc(-1 * var(--home-space-3)); width: .375rem; height: .375rem; background: var(--accent); border-radius: 50%; }
.home-recovery dt { font-weight: 600; color: var(--text); }
.home-recovery dd { margin: var(--home-space-1) 0 0; color: var(--muted); }

/* A shared decision spread, followed by compact native disclosures. */
.home-page .home-editions { padding-top: 0; }
.home-edition-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--home-space-6); }
.home-edition { min-width: 0; padding-top: var(--home-space-4); border-top: 1px solid var(--border); }
.home-edition-pro { position: relative; border-top-color: var(--accent); }
.home-edition-pro::before { content: ""; position: absolute; left: calc(-1 * var(--home-space-4)); top: 0; bottom: 0; width: 1px; background: var(--border); }
.home-edition-heading { margin-bottom: var(--home-space-4); }
.home-edition-heading h3 { margin-bottom: var(--home-space-4); }
.home-page main .home-edition-price { display: flex; align-items: center; flex-wrap: wrap; gap: var(--home-space-3); min-height: 3.75rem; color: var(--text); }
.home-edition-price > strong { color: var(--accent); font-size: 3.5rem; line-height: 1.05; letter-spacing: -.04em; font-weight: 600; }
.home-edition-price > span { color: var(--muted); font-size: 1rem; line-height: 1.5; }
.home-page main .home-free-price { font-size: 1.75rem; font-weight: 600; letter-spacing: -.025em; }
.home-edition > p { max-width: 38ch; }
.home-edition > .home-text-link, .home-edition > .button { margin-top: var(--home-space-4); }
.home-edition ul { display: grid; gap: var(--home-space-2); padding-left: 1.125rem; color: var(--muted); }
.home-edition li::marker { color: var(--quiet); }
.home-page main .home-purchase-terms { margin-top: var(--home-space-6); max-width: 90ch; font-size: var(--home-small); }
.home-purchase-terms strong { color: var(--text); }
.home-page main .home-comparison { margin-top: var(--home-space-4); }
.home-page main summary { min-height: 3.5rem; padding-block: var(--home-space-3); font-size: 1.125rem; font-weight: 600; cursor: pointer; }
.home-page main summary::marker { color: var(--accent); }
.home-comparison { border-block: 1px solid var(--border); }
.home-comparison .comparison-wrap { border: 0; margin-bottom: var(--home-space-4); }
.home-page .comparison-wrap::after { content: none; }
.home-page .comparison-table { table-layout: fixed; font-size: 1rem; line-height: 1.6; }
.home-page .comparison-table :is(th, td) { padding: var(--home-space-3); font-size: 1rem; }
.home-page .comparison-table thead th { position: static; color: var(--text); background: var(--surface-2); }
.home-page .comparison-table thead th:last-child { background: var(--accent-soft); }
.home-page main .fine-print { max-width: 65ch; margin: var(--home-space-3) 0 var(--home-space-4); color: var(--quiet); font-size: var(--home-small); }
.home-scroll-hint { display: none; }
.home-questions { margin-top: 2.5rem; }
.home-questions-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--home-space-3) var(--home-space-4); margin-bottom: var(--home-space-3); }
.home-faq details { border-bottom: 1px solid var(--border); }
.home-page main .home-faq p { max-width: 65ch; margin: 0 0 var(--home-space-4); }
.home-faq a { color: var(--accent); }
.home-page .site-footer { padding-block: var(--home-space-6); background: var(--bg); border-top-color: var(--border); }
.home-page .footer-inner { align-items: start; gap: var(--home-space-4); }
.home-page .footer-brand { gap: var(--home-space-1); }
.home-page .footer-brand :is(strong, span, a, small) { font-size: var(--home-small); }
.home-page .footer-brand strong { font-weight: 600; }
.home-page .footer-brand :is(span, small) { color: var(--quiet); }
.home-page .footer-brand a { display: inline-flex; align-items: center; min-height: 2.75rem; }
.home-page .footer-links { gap: var(--home-space-1) var(--home-space-4); }
.home-page .footer-links a { justify-content: center; min-width: 2.75rem; font-size: 1rem; }

@media (max-width: 1099px) {
  .home-page { --home-gutter: 2rem; --home-section-space: 5rem; --home-h1: 3.5rem; --home-h2: 2.5rem; }
  .home-page .header-inner { min-height: 4.5rem; gap: var(--home-space-4); }
  .home-header .nav { gap: var(--home-space-3); }
  .home-hero { padding-block: 3.5rem; }
  .home-hero-grid { grid-template-columns: 1fr; gap: var(--home-space-5); }
  .home-page .home-hero h1 { max-width: 20ch; }
  .home-hero .hero-copy { max-width: 48ch; }
  .home-hero-media { width: 100%; max-width: 47.5rem; }
  .home-type-art { min-height: 0; }
  .home-journey { gap: var(--home-space-4); }
  .home-page .home-journey-step h3 { font-size: 1.25rem; }
  .home-step-art { min-height: 13rem; }
  .home-choice-specimens { gap: .25rem; }
  .home-recovery-layout { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--home-space-5); }
}
@media (max-width: 767px) {
  .home-page { --home-gutter: 1.25rem; --home-section-space: 4rem; --home-h1: 2.75rem; --home-h2: 2.125rem; --home-h3: 1.375rem; --home-body: 1.0625rem; --home-lead: 1.125rem; }
  .home-page .header-inner { grid-template-columns: minmax(0, 1fr) auto; padding-block: var(--home-space-2) 0; gap: var(--home-space-1) var(--home-space-2); }
  .home-header .brand { min-width: 0; gap: var(--home-space-1); }
  .home-header .site-brand-image { width: 2.5rem; height: 2.5rem; flex-basis: 2.5rem; }
  .home-header .brand-name strong { font-size: .8125rem; }
  .home-header .brand-name > span { font-size: .625rem; }
  .home-purchase-link { grid-column: 2; grid-row: 1; font-size: .9375rem; gap: .25rem; }
  .home-header .nav { grid-column: 1 / -1; grid-row: 2; width: 100%; justify-content: space-between; gap: var(--home-space-1); }
  .home-hero { padding-block: 2.5rem; }
  .home-page .home-hero h1 { max-width: none; }
  .home-hero .hero-copy { max-width: 36ch; }
  .home-hero .actions { margin-top: var(--home-space-4); gap: var(--home-space-2) var(--home-space-4); }
  .home-section-intro { margin-bottom: 1.75rem; }
  .home-type-art { aspect-ratio: 4 / 3; min-height: 20rem; gap: var(--home-space-3); padding: var(--home-space-4); }
  .home-art-glyph { font-size: 7rem; }
  .home-art-large { font-size: 1.5rem; }
  .home-hero-media figcaption { padding-inline: var(--home-space-4); }
  .home-demo-samples { grid-template-columns: 1fr; }
  .home-type-sample { padding: var(--home-space-4) 0; }
  .home-type-adjustable { border-left: 0; border-top: 1px solid var(--border); }
  .home-sample-field { min-height: 7rem; }
  .home-demo-control-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; }
  .home-reset { grid-column: 1 / -1; justify-self: start; margin-top: var(--home-space-1); }
  .home-scope { margin-top: var(--home-space-5); }
  .home-scope ul { gap: var(--home-space-2) var(--home-space-4); }
  .home-journey { grid-template-columns: 1fr; gap: var(--home-space-6); padding-left: var(--home-space-4) !important; border-left: 1px solid var(--border); }
  .home-step-number { position: relative; }
  .home-step-number::before { content: ""; position: absolute; left: calc(-1 * var(--home-space-4) - .2rem); width: .375rem; height: .375rem; background: var(--accent); border-radius: 50%; }
  .home-step-art { max-width: 28rem; min-height: 12rem; margin-bottom: var(--home-space-4) !important; }
  .home-page .home-journey-step h3 { font-size: var(--home-h3); }
  .home-journey-step > p { max-width: 45ch; }
  .home-workflow-notes { margin-top: var(--home-space-5); }
  .home-recovery-layout { grid-template-columns: 1fr; gap: var(--home-space-5); padding-top: var(--home-space-5); }
  .home-recovery dl { padding-left: var(--home-space-4); }
  .home-recovery dl > div { padding-bottom: var(--home-space-4); }
  .home-recovery dl > div::before { left: calc(-1 * var(--home-space-4)); width: var(--home-space-3); }
  .home-recovery dl > div::after { left: calc(-1 * var(--home-space-2)); }
  .home-edition-options { grid-template-columns: 1fr; gap: var(--home-space-5); }
  .home-edition-pro::before { display: none; }
  .home-edition-price > strong { font-size: 2.75rem; }
  .home-page main .home-free-price { font-size: 1.5rem; }
  .home-page main .home-purchase-terms { margin-top: var(--home-space-5); }
  .home-page .comparison-table { min-width: 35rem; }
  .home-page .comparison-table :is(th, td) { padding: var(--home-space-2); min-width: 0; }
  .home-page main .home-scroll-hint { display: block; font-size: var(--home-small); margin-bottom: var(--home-space-3); }
  .home-page .footer-inner { flex-direction: column; }
  .home-page .footer-links { justify-content: flex-start; }
}
@media (max-width: 359px) {
  .home-page { --home-gutter: 1rem; --home-h1: 2.5rem; --home-h2: 2rem; }
  .home-purchase-link { grid-column: 1 / -1; grid-row: 2; justify-self: start; font-size: 1rem; }
  .home-header .nav { grid-row: 3; }
  .home-type-art { padding: 1.25rem; }
  .home-art-heading { letter-spacing: .06em; }
  .home-hero-media figcaption { padding-inline: 1.25rem; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.home-page) { scroll-behavior: auto; }
  .home-page *, .home-page *::before, .home-page *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
  .home-art-glyph, .home-art-large, .home-choice-selected :is(span, small), .home-preview-annotation, .home-edition-price > strong { color: CanvasText; }
  .home-page .button, .home-reset { border-color: ButtonText; }
  .home-page :focus-visible { outline-color: Highlight; }
  .home-art-axis, .home-step-number::after, .home-recovery dl { border-color: CanvasText; }
}
