/* Shared public-site theme. Reference: this domain’s home page. 2026-10-15. */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&display=swap');
:root {
  --bg: #080d1a !important;
  --bg2: #0c1225 !important;
  --surface: #10192A !important;
  --surface2: #182237 !important;
  --text: #FFFFFF !important;
  --muted: #B6BBC7 !important;
  --dim: #A3AABA !important;
  --border: #2B3448 !important;
  --accent: #C8A84B !important;
  --gold: #C8A84B !important;
  --font: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif !important;
  --serif: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif !important;
  --sans: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif !important;
  --grad: linear-gradient(135deg, #C8A84B 0%, #FFE09A 100%) !important;
  --line: #2B3448 !important;
  --paper: #10192A !important;
  --paper2: #182237 !important;
  --papertext: #FFFFFF !important;
  --ink: #FFFFFF !important;
  --night: #080d1a !important;
  --night2: #0c1225 !important;
  --copper: #C8A84B !important;
  --green: #C8A84B !important;
  --teal: #C8A84B !important;
  --link: #C8A84B !important;
  --link-hover: #FFE09A !important;
}

html { color-scheme: dark; }
body { background: var(--bg) !important; color: var(--text) !important; font-family: var(--font) !important; line-height: 1.7; }
body *, body *::before, body *::after { box-sizing: border-box; }
body * { font-family: inherit !important; }
body :where(p,li,dd,blockquote) { text-wrap: pretty; }
body :where(h1,h2,h3,h4) { text-wrap: balance; }
body :where(p,li,dd,blockquote,small,figcaption,.caption) { color: var(--muted) !important; }
body :where(h1,h2,h3,h4,strong,b,label) { color: var(--text) !important; }
body :where(p,li,dd,blockquote,a,button) { overflow-wrap: break-word; }
body :where(.signal,.cta) p { color: var(--text) !important; }
body :where(.contact-grid,.route-grid,.twocol,.two-col,.grid) > * { min-width: 0; }
body :where(input,textarea,select) { max-width: 100%; min-width: 0; }
body :where(a:any-link) { color: var(--link) !important; text-underline-offset: .2em; text-decoration-thickness: .075em; }
body :where(a:any-link):hover { color: var(--link-hover) !important; }
body :where(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--gold) !important; outline-offset: 4px; }
body :where(input,textarea,select) { background: var(--surface) !important; color: var(--text) !important; border-color: var(--border) !important; accent-color: var(--gold); }
body :where(input,textarea)::placeholder { color: var(--muted) !important; opacity: 1; }
body :where(.card,.signal,.route-card,.privacy,.choice,.flow-card,.summary-item,.next-card,.rail,.tool,.screen,.result-card) { background: var(--surface) !important; border-color: var(--border) !important; color: var(--text) !important; }
body :where(.flow-card,.summary-item,.result-card) p { color: var(--muted) !important; }
body :where(.choice:has(input:checked),.route-item.active) { background: var(--surface2) !important; color: var(--text) !important; border-color: var(--gold) !important; }
body :where(.route-item span:first-child) { background: var(--bg) !important; color: var(--gold) !important; border-color: var(--border) !important; }
body :where(.route-item) { color: var(--muted) !important; }
body :where(.route-item.done span:first-child,.result-mark) { background: var(--gold) !important; color: var(--bg) !important; }
body :where(.cta,.secondary) { background: var(--surface2) !important; color: var(--text) !important; }
body :where(.route-button,.button:not(.cta-primary),.btn-outline,.btn.secondary) { background: transparent !important; border: 1px solid var(--gold); color: var(--gold) !important; }
body :where(.route-button,.button:not(.cta-primary),.btn-outline,.btn.secondary):hover { background: var(--surface2) !important; color: var(--link-hover) !important; }
body :where(.start,.step-label,.wordmark,.eyebrow,.label,.project-site,.status) { color: var(--gold) !important; }
body :where(.client-route) > header { position: static; background: transparent; box-shadow: none; }
body :where(.client-route) p { max-width: 75ch; }
body :where(.client-route,.page) :where(p,li) + :where(p,li) { margin-top: .7em; }
body :where(.client-route,.page) a { overflow-wrap: anywhere; }
body :where(.client-route,.page) footer { margin-top: 2rem; }
body footer .footer-links { flex-wrap: wrap; max-width: 100%; }
body :where(.client-route) :where(h1,h2,h3) { letter-spacing: -.015em; }
body :where(.client-route) h2 { line-height: 1.3; }
body :where(.client-route) .route-question h2 { text-transform: none; letter-spacing: 0; }
body :where(.screen,.rail,.hero) :where(.lead,small) { color: var(--muted); }
@media (max-width: 600px) {
  body :where(.client-route,.page) { padding-left: 20px; padding-right: 20px; }
  body :where(.client-route) .route-grid { grid-template-columns: minmax(0,1fr); }
  body :where(.client-route) :where(.route-card,.route-question) { min-width: 0; }
  body :where(.client-route) h1 { font-size: clamp(2rem,8.2vw,3rem); overflow-wrap: anywhere; }
  body :where(.page) .twocol { grid-template-columns: minmax(0,1fr); }
}

body :where(.btn-dark,.btn-gold,.primary) { background: var(--grad) !important; color: var(--bg) !important; border-color: transparent !important; }
body :where(.btn-dark,.btn-gold,.primary):hover { color: var(--bg) !important; }
