/* Sales and legal pages — shares the companion site's locally hosted fonts. */
:root { --sales-max: 1120px; }
.sales-page, .legal-page { background: #f6f2e9; }
.sales-shell { width: min(var(--sales-max), calc(100% - 48px)); margin: 0 auto; }
.sales-nav { min-height: 68px; padding: 0 max(24px, calc((100vw - var(--sales-max))/2)); display:flex; align-items:center; justify-content:space-between; gap:24px; background:#103d2e; color:#f6f2e9; border-bottom:1px solid rgba(255,255,255,.16); font-family:var(--mono); }
.sales-nav .wordmark { text-decoration:none; font-size:12px; font-weight:600; letter-spacing:.16em; }
.sales-nav .wordmark span { color:var(--gold); margin:0 7px; }
.sales-nav nav, .sales-footer nav { display:flex; align-items:center; gap:22px; }
.sales-nav nav a, .sales-footer a { font-size:11px; letter-spacing:.08em; color:inherit; text-decoration:none; border-bottom:1px solid transparent; }
.sales-nav nav a:hover, .sales-footer a:hover { border-bottom-color:var(--gold); }
.sales-hero { padding:72px 0 82px; background:#103d2e; color:#f7f3ea; border:0; overflow:hidden; }
.sales-hero-grid { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(300px,.58fr); gap:82px; align-items:center; }
.eyebrow, .section-label { margin:0 0 18px; font:600 11px/1.4 var(--mono); letter-spacing:.18em; color:var(--gold); }
.sales-copy h1 { margin:0; max-width:720px; font-size:clamp(42px,6vw,72px); line-height:1.02; letter-spacing:-.025em; }
.sales-copy h1 em { color:#d2ae51; font-weight:400; }
.sales-lede { max-width:670px; margin:25px 0 30px; color:rgba(247,243,234,.78); font-size:19px; line-height:1.56; }
.offer-card { max-width:650px; padding:22px; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.17); }
.price-row { display:flex; align-items:baseline; gap:14px; margin-bottom:16px; }
.price { font:700 36px/1 var(--serif); color:#fff; }
.tax { font:500 11px/1.4 var(--mono); letter-spacing:.06em; color:rgba(247,243,234,.62); }
.buy-button { display:inline-flex; justify-content:center; align-items:center; min-height:50px; padding:0 24px; color:#103d2e; background:#d2ae51; text-decoration:none; text-transform:uppercase; font:700 12px/1 var(--mono); letter-spacing:.09em; transition:transform .16s ease, background .16s ease; }
.buy-button:hover { transform:translateY(-2px); background:#e2c36f; }
.buy-note { margin:13px 0 0; color:rgba(247,243,234,.62); font:400 10px/1.5 var(--mono); }
.hero-proof { display:flex; gap:32px; list-style:none; padding:0; margin:30px 0 0; }
.hero-proof li { display:grid; gap:4px; }
.hero-proof strong { font:700 27px/1 var(--serif); color:#d2ae51; }
.hero-proof span { font:400 10px/1.4 var(--mono); color:rgba(247,243,234,.62); }
.cover-stage { position:relative; }
.cover-stage::before { content:""; position:absolute; inset:8% -12% -4% 10%; background:rgba(0,0,0,.25); filter:blur(30px); }
.cover-stage img { position:relative; width:100%; height:auto; box-shadow:0 28px 70px rgba(0,0,0,.42); }
.version-chip { position:absolute; right:-12px; bottom:26px; padding:7px 10px; color:#103d2e; background:#d2ae51; font:700 10px/1 var(--mono); letter-spacing:.08em; transform:rotate(-2deg); }
.problem-band { padding:76px 0; background:#eae3d5; }
.problem-band blockquote { margin:0; max-width:950px; font:400 clamp(30px,4.4vw,48px)/1.2 var(--serif); color:#153f31; }
.problem-band > .sales-shell > p:last-child { max-width:760px; margin:28px 0 0 auto; color:var(--ink-60); font-size:16px; }
.deliverables, .contents-section, .fit-section, .faq-section { padding:92px 0; }
.sales-heading { max-width:720px; margin-bottom:46px; }
.sales-heading h2, .fit-section h2, .closing-offer h2 { margin:0; font-size:clamp(34px,4.8vw,52px); line-height:1.08; letter-spacing:-.02em; }
.benefit-grid { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.benefit-grid article { padding:30px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.benefit-grid article > span { font:500 11px/1 var(--mono); color:var(--gold); }
.benefit-grid h3 { margin:22px 0 9px; font-size:24px; }
.benefit-grid p { margin:0; color:var(--ink-60); font-size:15px; }
.contents-section { background:#153f31; color:#f7f3ea; }
.contents-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:82px; align-items:start; }
.sticky-heading { position:sticky; top:28px; }
.sticky-heading p:last-child { color:rgba(247,243,234,.64); }
.chapter-list { list-style:none; padding:0; margin:0; border-top:1px solid rgba(255,255,255,.18); }
.chapter-list li { display:grid; grid-template-columns:42px 1fr; gap:18px; padding:21px 0; border-bottom:1px solid rgba(255,255,255,.18); }
.chapter-list li > span { color:#d2ae51; font:600 11px/1.6 var(--mono); }
.chapter-list h3 { margin:0 0 4px; font-size:22px; }
.chapter-list p { margin:0; color:rgba(247,243,234,.62); font-size:14px; }
.fit-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:72px; align-items:start; }
.fit-list { margin:32px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); }
.fit-list li { position:relative; padding:16px 0 16px 28px; border-bottom:1px solid var(--line); color:var(--ink-60); }
.fit-list li::before { content:"✓"; position:absolute; left:0; color:var(--green); font:700 13px var(--mono); }
.limit-card { padding:34px; border:1px dashed var(--green); background:#eee7da; }
.limit-card h3 { margin:0 0 15px; font-size:29px; line-height:1.16; }
.limit-card p:last-child { margin:0; color:var(--ink-60); font-size:15px; }
.faq-section { border-top:1px solid var(--line); }
.faq-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.faq-grid details { padding:22px; border:1px solid var(--line); background:#eee8dc; }
.faq-grid summary { cursor:pointer; font-weight:700; font-size:18px; }
.faq-grid p { margin:14px 0 0; color:var(--ink-60); font-size:14px; }
.closing-offer { padding:72px 0; background:#d2ae51; color:#103d2e; }
.closing-offer .section-label { color:#103d2e; opacity:.72; }
.closing-grid { display:grid; grid-template-columns:1fr auto; gap:60px; align-items:end; }
.closing-buy { display:grid; justify-items:start; gap:4px; min-width:240px; }
.closing-buy strong { font:700 40px/1 var(--serif); }
.closing-buy span { font:500 10px/1.3 var(--mono); letter-spacing:.08em; }
.buy-button.light { margin-top:14px; background:#103d2e; color:#f7f3ea; width:100%; }
.buy-button.light:hover { background:#1b523e; }
.sales-footer { padding:30px max(24px, calc((100vw - var(--sales-max))/2)); display:flex; justify-content:space-between; gap:24px; color:rgba(247,243,234,.68); background:#0c2e23; font:400 10px/1.6 var(--mono); }
.legal-shell { max-width:780px; margin:0 auto; padding:80px 28px 100px; }
.legal-shell h1 { margin:0 0 18px; color:#153f31; font-size:clamp(42px,7vw,66px); line-height:1.04; }
.legal-intro { margin:0 0 55px; font-size:19px; color:var(--ink-60); }
.legal-shell h2 { margin:38px 0 10px; padding-top:18px; border-top:1px solid var(--line); color:#153f31; font-size:24px; }
.legal-shell p, .legal-shell li { color:rgba(28,27,23,.72); font-size:15.5px; }
.legal-shell ul { padding-left:22px; }
.legal-shell a { color:#153f31; }
@media (max-width: 840px) {
  .sales-nav { align-items:flex-start; padding-top:20px; padding-bottom:20px; }
  .sales-nav nav { gap:12px; flex-wrap:wrap; justify-content:flex-end; }
  .sales-hero-grid, .contents-grid, .fit-grid { grid-template-columns:1fr; }
  .sales-hero-grid { gap:50px; }
  .cover-stage { width:min(430px,82%); margin:0 auto; }
  .sticky-heading { position:static; }
  .closing-grid { grid-template-columns:1fr; }
  .sales-footer { flex-direction:column; }
}
@media (max-width: 580px) {
  .sales-shell { width:min(100% - 32px, var(--sales-max)); }
  .sales-nav nav a:first-child { display:none; }
  .sales-copy h1 { font-size:42px; }
  .sales-lede { font-size:17px; }
  .price-row, .hero-proof { align-items:flex-start; flex-direction:column; gap:8px; }
  .hero-proof { display:grid; grid-template-columns:repeat(3,1fr); }
  .benefit-grid, .faq-grid { grid-template-columns:1fr; }
  .problem-band blockquote { font-size:30px; }
  .deliverables, .contents-section, .fit-section, .faq-section { padding:70px 0; }
  .sales-footer nav { flex-wrap:wrap; }
}
