/*
 * marketing.css — page-scoped styles for the public homepage.
 * All selectors are scoped under body.marketing-page so internal app pages
 * (dashboard, firm settings, auth) stay unaffected.
 *
 * Color/spacing tokens come from tokens.css. Short local aliases below map
 * the design-system names used in the lifted prototype to the canonical
 * --color-* tokens — keeps the rest of this file readable.
 */

/* Material Symbols Outlined — self-hosted so the strict CSP
   (font-src 'self') doesn't block the icon font. */
@font-face {
  font-family: 'Material Symbols Outlined';
  font-style: normal;
  font-weight: 300;
  src: url('/static/fonts/MaterialSymbolsOutlined.woff2') format('woff2');
  font-display: block;
}

.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

body.marketing-page {
  /* Marketing-local legacy --color-* aliases.
     Marketing is out-of-scope for the Linen sweep per the master plan
     (public landing surface with its own design language). After Slice 10
     the global compat shim is gone, so we redefine the few legacy names
     marketing still uses here, scoped to .marketing-page only. */
  --color-background:                #091422;
  --color-on-surface:                #E1E2E4;
  --color-on-surface-variant:        #8A9AB0;
  --color-surface-dim:               #050E1D;
  --color-surface-container-lowest:  #050E1D;
  --color-surface-container-low:     #121C2A;
  --color-surface-container:         #1E293B;
  --color-surface-container-high:    #253345;
  --color-surface-bright:            #303A49;
  --color-outline:                   #2D3D52;
  --color-outline-variant:           #1A2535;
  --color-secondary:                 #C5B358;
  --color-on-secondary:              #091422;
  --color-secondary-container:       #8A7A32;
  --color-secondary-fixed:           #D4C469;
  --color-error:                     #ffb4ab;
  --color-error-container:           #93000a;

  /* Local design-system aliases — point at legacy tokens above */
  --gold:          var(--color-secondary);
  --gold-light:    var(--color-secondary-fixed);
  --gold-dim:      var(--color-secondary-container);
  --gold-on:       var(--color-on-secondary);

  --s0: var(--color-surface-dim);
  --s1: var(--color-surface-container-low);
  --s2: var(--color-surface-container);
  --s3: var(--color-surface-container-high);
  --s4: var(--color-surface-bright);

  --border:        var(--color-outline-variant);
  --border-strong: var(--color-outline);

  --serif: var(--font-serif);
  --sans:  var(--font-sans);

  --error:           var(--color-error);
  --error-container: var(--color-error-container);

  background: var(--color-background);
  color: var(--color-on-surface);
  overflow-x: hidden;
}

body.marketing-page { scroll-behavior: smooth; }
html:has(body.marketing-page) { scroll-behavior: smooth; }

body.marketing-page .material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
  line-height: 1;
  user-select: none;
  vertical-align: middle;
}

/* ── Container override (marketing uses 1200px max, 48px gutter) ── */
body.marketing-page .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 48px;
}
@media (max-width: 768px) {
  body.marketing-page .container { padding: 0 20px; }
}

/* ── Buttons (scoped — overrides components.css sizing on this page only) ── */
body.marketing-page .btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  font-family: var(--sans); font-size: 14px; font-weight: 600; letter-spacing: 0.01em;
  padding: 11px 24px; border-radius: 4px; border: 1px solid transparent;
  cursor: pointer; transition: var(--transition); white-space: nowrap; line-height: 1;
}
body.marketing-page .btn-primary {
  background: var(--gold); color: var(--gold-on); border-color: var(--gold);
}
body.marketing-page .btn-primary:hover {
  background: var(--gold-light); border-color: var(--gold-light);
}
body.marketing-page .btn-primary:active { transform: scale(0.98); }

body.marketing-page .btn-outline {
  background: transparent; color: var(--color-on-surface); border-color: var(--border-strong);
}
body.marketing-page .btn-outline:hover { border-color: var(--color-on-surface-variant); }

body.marketing-page .btn-ghost {
  background: transparent; color: var(--fg3); border-color: transparent; font-size: 13px;
}
body.marketing-page .btn-ghost:hover { color: var(--color-on-surface); }

body.marketing-page .btn-sm { font-size: 13px; padding: 8px 18px; }

/* ── Tag pill ── */
body.marketing-page .tag {
  display: inline-flex; align-items: center; gap: 6px;
  font-family: var(--sans); font-size: 11px; font-weight: 600;
  letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--gold);
  background: rgba(197,179,88,0.08);
  border: 1px solid rgba(197,179,88,0.22);
  border-radius: 9999px; padding: 4px 14px;
}

/* ── Chips ── */
body.marketing-page .chip {
  display: inline-flex; align-items: center; gap: 4px;
  font-family: var(--sans); font-size: 11px; font-weight: 600;
  letter-spacing: 0.05em; text-transform: uppercase;
  padding: 3px 10px; border-radius: 9999px; border: 1px solid; white-space: nowrap;
}
body.marketing-page .chip-gold    { color: var(--gold); border-color: var(--gold-dim); background: rgba(197,179,88,0.07); }
body.marketing-page .chip-steel   { color: var(--color-on-surface-variant); border-color: var(--border-strong); background: transparent; }
body.marketing-page .chip-active  { color: #6db872; border-color: #3d6b40; background: rgba(61,107,64,0.1); }
body.marketing-page .chip-flag    { color: var(--error); border-color: var(--error-container); background: rgba(147,0,10,0.1); }
body.marketing-page .chip-warn    { color: var(--gold); border-color: var(--gold-dim); background: rgba(197,179,88,0.07); }

/* ── Scroll reveal ── */
body.marketing-page .reveal {
  opacity: 0; transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
body.marketing-page .reveal.visible { opacity: 1; transform: none; }

/* ════════════════════════════════════
   NAV
════════════════════════════════════ */
body.marketing-page .site-nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100; height: 72px;
  background: rgba(9,20,34,0.85);
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
body.marketing-page .nav-inner { display: flex; align-items: center; justify-content: space-between; height: 100%; }
body.marketing-page .nav-logo { display: flex; align-items: center; }
body.marketing-page .nav-logo img { height: 44px; width: auto; display: block; }
body.marketing-page .nav-links { display: flex; align-items: center; gap: 36px; list-style: none; }
body.marketing-page .nav-links a {
  font-family: var(--sans); font-size: 13px; font-weight: 600;
  color: var(--fg3); transition: color 0.15s ease;
}
body.marketing-page .nav-links a:hover,
body.marketing-page .nav-links a.active { color: var(--color-on-surface); }
body.marketing-page .nav-links a.active { padding-bottom: 2px; border-bottom: 1.5px solid var(--gold); }
body.marketing-page .nav-actions { display: flex; align-items: center; gap: 8px; }
@media (max-width: 900px) { body.marketing-page .nav-links { display: none; } }

/* ── Hamburger button + mobile drawer (visible <900px) ── */
body.marketing-page .nav-hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 36px;
  height: 36px;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 4px;
  border-radius: 4px;
  transition: background 0.15s;
}
body.marketing-page .nav-hamburger:hover { background: rgba(255,255,255,0.06); }
body.marketing-page .nav-hamburger span {
  display: block;
  width: 100%;
  height: 1.5px;
  background: var(--color-on-surface-variant);
  border-radius: 2px;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
body.marketing-page .nav-hamburger[aria-expanded="true"] span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
body.marketing-page .nav-hamburger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
body.marketing-page .nav-hamburger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

body.marketing-page .nav-mobile {
  display: none;
  flex-direction: column;
  gap: 0;
  background: var(--color-surface-container-lowest);
  border-top: 1px solid rgba(255,255,255,0.05);
  padding: 12px 0 20px;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease;
}
body.marketing-page .nav-mobile.open { max-height: 400px; }
body.marketing-page .nav-mobile ul { list-style: none; padding: 0; margin: 0; }
body.marketing-page .nav-mobile-link {
  display: block;
  padding: 13px 24px;
  font-family: var(--sans);
  font-size: 15px;
  font-weight: 600;
  color: var(--fg2);
  transition: color 0.15s, background 0.15s;
}
body.marketing-page .nav-mobile-link:hover { color: var(--color-on-surface); background: rgba(255,255,255,0.03); }
body.marketing-page .nav-mobile-actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px 24px 0;
  border-top: 1px solid var(--border);
  margin-top: 8px;
}
@media (max-width: 900px) {
  body.marketing-page .nav-hamburger { display: flex; }
  body.marketing-page .nav-mobile    { display: flex; }
}

/* ════════════════════════════════════
   HERO
════════════════════════════════════ */
body.marketing-page .hero { min-height: 100vh; display: flex; align-items: center; padding: 100px 0 80px; }
body.marketing-page .hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; width: 100%; }
@media (max-width: 960px) { body.marketing-page .hero-grid { grid-template-columns: 1fr; } }
body.marketing-page .hero-inner { min-width: 0; }
body.marketing-page .hero-preview { position: relative; min-width: 0; padding-bottom: 28px; }
@media (max-width: 960px) { body.marketing-page .hero-preview { display: none; } }

body.marketing-page .preview-card {
  background: var(--s0); border: 1px solid var(--border); border-radius: 12px; overflow: hidden;
  box-shadow: 0 32px 64px rgba(0,0,0,0.5);
}
body.marketing-page .pc-hdr { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; border-bottom: 1px solid var(--border); }
body.marketing-page .pc-matter { font-family: var(--serif); font-size: 12px; font-weight: 700; color: var(--color-on-surface-variant); font-style: italic; padding: 8px 16px; border-bottom: 1px solid var(--border); }
body.marketing-page .pc-items { padding: 8px 12px; display: flex; flex-direction: column; gap: 5px; }
body.marketing-page .pc-item { display: flex; align-items: flex-start; gap: 8px; padding: 9px 10px; border-radius: 4px; border: 1px solid var(--border); }
body.marketing-page .pc-flag { background: rgba(147,0,10,0.06); border-color: rgba(147,0,10,0.18); }
body.marketing-page .pc-warn { background: rgba(197,179,88,0.04); border-color: rgba(197,179,88,0.12); }
body.marketing-page .pc-av { width: 22px; height: 22px; border-radius: 50%; background: var(--s3); border: 1px solid var(--border); display: flex; align-items: center; justify-content: center; font-size: 9px; font-weight: 700; color: var(--color-on-surface-variant); flex-shrink: 0; }
body.marketing-page .pc-msg { font-size: 11px; color: var(--color-on-surface); line-height: 1.4; flex: 1; min-width: 0; }
body.marketing-page .pc-status { display: grid; grid-template-columns: 1fr 1fr 1fr; border-top: 1px solid var(--border); padding: 10px 0; margin: 0 16px; background: var(--s0); }
body.marketing-page .pc-status-item { display: flex; flex-direction: column; gap: 3px; padding: 0 12px; }
body.marketing-page .pc-status-item:not(:last-child) { border-right: 1px solid var(--border); }
body.marketing-page .pc-status-item:first-child { padding-left: 0; }
body.marketing-page .pc-sl { font-size: 9px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--fg3); }
body.marketing-page .pc-sv { font-size: 12px; font-weight: 500; color: var(--color-on-surface); }
body.marketing-page .pc-sv.gold { color: var(--gold); font-weight: 600; }
body.marketing-page .pc-foot { padding: 10px 16px; background: var(--s1); border-top: 1px solid var(--border); }
body.marketing-page .preview-badge { position: absolute; bottom: 0; left: 20px; background: var(--s2); border: 1px solid var(--border); border-radius: 8px; padding: 10px 16px; display: flex; align-items: center; gap: 8px; box-shadow: 0 8px 24px rgba(0,0,0,0.3); }
body.marketing-page .preview-badge-label { font-family: var(--sans); font-size: 11px; font-weight: 600; color: var(--gold); letter-spacing: 0.04em; text-transform: uppercase; }

body.marketing-page .hero-inner .tag { margin-bottom: 32px; }
body.marketing-page .hero-inner h1 {
  font-family: var(--serif); font-size: clamp(32px, 4.2vw, 56px); font-weight: 700;
  line-height: 1.12; letter-spacing: -0.025em; color: var(--color-on-surface);
  margin-bottom: 24px; text-wrap: balance;
}
body.marketing-page .hero-inner h1 em { font-style: normal; color: var(--gold); }
body.marketing-page .hero-sub {
  font-size: 18px; line-height: 1.7; color: var(--color-on-surface-variant);
  margin-bottom: 16px; max-width: 560px;
}
body.marketing-page .hero-line2 {
  font-family: var(--serif); font-size: 18px; font-style: italic;
  color: var(--gold); opacity: 0.75; margin-bottom: 40px;
}
body.marketing-page .hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 60px; }
body.marketing-page .hero-divider {
  display: flex; align-items: center; gap: 24px;
  border-top: 1px solid var(--border); padding-top: 32px; max-width: 560px;
}
body.marketing-page .hero-stat { display: flex; flex-direction: column; gap: 2px; }
body.marketing-page .hero-stat-n { font-family: var(--serif); font-size: 28px; font-weight: 700; color: var(--gold); line-height: 1; }
body.marketing-page .hero-stat-l { font-size: 12px; color: var(--fg3); letter-spacing: 0.04em; text-transform: uppercase; }
body.marketing-page .hero-vr { width: 1px; height: 36px; background: var(--border); flex-shrink: 0; }

/* ════════════════════════════════════
   ARCHITECTURE
════════════════════════════════════ */
body.marketing-page .arch { padding: 100px 0; background: var(--s1); }
body.marketing-page .section-head { margin-bottom: 56px; }
body.marketing-page .section-head h4 { font-family: var(--sans); font-size: 11px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--fg3); margin-bottom: 12px; }
body.marketing-page .section-head h2 { font-family: var(--serif); font-size: clamp(26px, 3.2vw, 40px); font-weight: 700; color: var(--color-on-surface); letter-spacing: -0.015em; line-height: 1.22; margin-bottom: 14px; }
body.marketing-page .section-head p { font-size: 17px; line-height: 1.65; color: var(--color-on-surface-variant); max-width: 520px; }

body.marketing-page .arch-stack { max-width: 640px; }
body.marketing-page .arch-caption { font-family: var(--sans); font-size: 11px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--fg3); text-align: center; margin: 0 0 14px; }
body.marketing-page .layer {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 24px; border-radius: 8px; border: 1px solid var(--border); margin-bottom: 4px;
  transition: border-color 0.2s ease;
}
body.marketing-page .layer:hover { border-color: var(--border-strong); }
body.marketing-page .layer-info { display: flex; align-items: center; gap: 18px; }
body.marketing-page .layer-num {
  width: 36px; height: 36px; border-radius: 50%; border: 1.5px solid var(--gold);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--sans); font-size: 14px; font-weight: 700; color: var(--gold); flex-shrink: 0;
}
body.marketing-page .layer-title { font-family: var(--serif); font-size: 17px; font-weight: 700; color: var(--color-on-surface); margin-bottom: 3px; }
body.marketing-page .layer-desc { font-size: 13px; color: var(--color-on-surface-variant); }
body.marketing-page .layer-arrow { display: flex; justify-content: center; align-items: center; height: 20px; }
body.marketing-page .layer-arrow span { color: var(--gold); font-size: 18px; }

body.marketing-page .layer-governed   { background: rgba(25,18,0,0.6); border-color: rgba(197,179,88,0.2); }
body.marketing-page .layer-privilege  { background: var(--s2); }
body.marketing-page .layer-supervision{ background: var(--s2); }
body.marketing-page .layer-foundation { background: var(--s0); border-color: var(--border); }
body.marketing-page .layer-foundation .layer-title { color: var(--color-on-surface-variant); }
body.marketing-page .layer-foundation .layer-desc  { color: var(--fg3); }

/* ════════════════════════════════════
   PRODUCT / DASHBOARD
════════════════════════════════════ */
body.marketing-page .product-section { padding: 100px 0; }
body.marketing-page .product-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; margin-bottom: 56px; }
@media (max-width: 900px) { body.marketing-page .product-grid { grid-template-columns: 1fr; } }

body.marketing-page .product-overline { font-family: var(--sans); font-size: 11px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--fg3); margin-bottom: 12px; }
body.marketing-page .product-h2 { font-family: var(--serif); font-size: clamp(26px, 3vw, 38px); font-weight: 700; color: var(--color-on-surface); letter-spacing: -0.015em; line-height: 1.22; margin-bottom: 16px; }
body.marketing-page .product-lead { font-size: 17px; line-height: 1.65; color: var(--color-on-surface-variant); margin-bottom: 28px; }

/* Mockup */
body.marketing-page .mockup-frame {
  border: 1px solid var(--border); border-radius: 12px; overflow: hidden;
  box-shadow: 0 40px 80px rgba(0,0,0,0.5); background: var(--s0);
}
body.marketing-page .mhdr {
  height: 42px; background: var(--s0); border-bottom: 1px solid var(--border);
  display: flex; align-items: center; justify-content: space-between; padding: 0 16px; flex-shrink: 0;
}
body.marketing-page .mhdr-logo { display: flex; align-items: center; gap: 8px; }
body.marketing-page .mhdr-logo img { height: 20px; width: auto; }
body.marketing-page .mhdr-logo span { font-size: 11px; color: var(--fg3); font-weight: 500; }
body.marketing-page .mhdr-usr { font-size: 11px; color: var(--fg3); }
body.marketing-page .mbody { display: flex; height: 360px; }

body.marketing-page .msb { width: 172px; flex-shrink: 0; background: var(--s1); border-right: 1px solid var(--border); padding: 10px 8px; display: flex; flex-direction: column; }
body.marketing-page .msb-lbl { font-size: 9px; font-weight: 600; color: var(--fg3); letter-spacing: 0.08em; text-transform: uppercase; padding: 4px 8px 10px; }
body.marketing-page .mrow { padding: 8px; border-radius: 3px; margin-bottom: 2px; cursor: pointer; }
body.marketing-page .mrow.active { background: var(--s2); border: 1px solid var(--border); }
body.marketing-page .mrow-t { font-size: 11px; font-weight: 600; color: var(--color-on-surface-variant); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.marketing-page .mrow.active .mrow-t { color: var(--color-on-surface); }
body.marketing-page .mrow-m { font-size: 9px; color: var(--fg3); margin-top: 2px; }
body.marketing-page .mclio { margin-top: auto; padding: 8px; background: var(--s2); border: 1px solid var(--border); border-radius: 4px; flex-shrink: 0; }
body.marketing-page .mclio-row { display: flex; align-items: center; justify-content: space-between; margin-bottom: 2px; }
body.marketing-page .mclio-n { font-size: 10px; font-weight: 600; color: var(--color-on-surface-variant); }
body.marketing-page .mclio-meta { font-size: 9px; color: var(--fg3); }

body.marketing-page .mmain { flex: 1; display: flex; flex-direction: column; overflow: hidden; }
body.marketing-page .mtabs { display: flex; border-bottom: 1px solid var(--border); flex-shrink: 0; background: var(--s1); }
body.marketing-page .mtab { padding: 10px 14px; font-size: 11px; font-weight: 600; color: var(--fg3); cursor: pointer; position: relative; white-space: nowrap; }
body.marketing-page .mtab.active { color: var(--gold); }
body.marketing-page .mtab.active::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 2px; background: var(--gold); }
body.marketing-page .mtab-badge { margin-left: 5px; background: rgba(197,179,88,0.12); color: var(--gold); border-radius: 9999px; padding: 1px 6px; font-size: 9px; }

body.marketing-page .queue-hdr { padding: 11px 16px; border-bottom: 1px solid var(--border); display: flex; align-items: center; justify-content: space-between; flex-shrink: 0; }
body.marketing-page .queue-hdr-t { font-family: var(--serif); font-size: 13px; font-weight: 700; color: var(--color-on-surface); }
body.marketing-page .queue-items { flex: 1; overflow: hidden; padding: 8px 12px; display: flex; flex-direction: column; gap: 5px; }
body.marketing-page .qi { display: flex; align-items: flex-start; gap: 10px; padding: 9px 10px; border-radius: 4px; border: 1px solid var(--border); transition: border-color 0.15s; }
body.marketing-page .qi:hover { border-color: var(--border-strong); }
body.marketing-page .qi-flag { background: rgba(147,0,10,0.08); border-color: rgba(147,0,10,0.2); }
body.marketing-page .qi-warn { background: rgba(197,179,88,0.04); border-color: rgba(197,179,88,0.12); }
body.marketing-page .qi-ok   { background: rgba(61,107,64,0.05); border-color: rgba(61,107,64,0.15); }
body.marketing-page .qav { width: 22px; height: 22px; border-radius: 50%; background: var(--s3); border: 1px solid var(--border); display: flex; align-items: center; justify-content: center; font-size: 9px; font-weight: 700; color: var(--color-on-surface-variant); flex-shrink: 0; }
body.marketing-page .qinfo { flex: 1; min-width: 0; }
body.marketing-page .qname { font-size: 11px; font-weight: 600; color: var(--color-on-surface-variant); margin-bottom: 2px; }
body.marketing-page .qmsg { font-size: 11px; color: var(--color-on-surface); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

body.marketing-page .mbar { padding: 8px 12px; border-top: 1px solid var(--border); background: var(--s1); display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; flex-shrink: 0; }
body.marketing-page .mbar-item { background: var(--s2); border: 1px solid var(--border); border-radius: 4px; padding: 7px 10px; }
body.marketing-page .mbar-l { font-size: 9px; font-weight: 600; color: var(--fg3); text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 3px; }
body.marketing-page .mbar-v { font-size: 11px; color: var(--color-on-surface); }
body.marketing-page .mbar-v.gold { color: var(--gold); font-weight: 600; }

/* Feature cards */
body.marketing-page .feat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
@media (max-width: 900px) { body.marketing-page .feat-grid { grid-template-columns: 1fr; } }
body.marketing-page .feat-card { background: var(--s1); border: 1px solid var(--border); border-radius: 8px; padding: 24px; transition: border-color 0.2s; }
body.marketing-page .feat-card:hover { border-color: var(--border-strong); }
body.marketing-page .feat-card h3 { font-family: var(--serif); font-size: 18px; font-weight: 700; color: var(--color-on-surface); margin-bottom: 8px; }
body.marketing-page .feat-card p { font-size: 14px; line-height: 1.6; color: var(--color-on-surface-variant); }
body.marketing-page .feat-icon { font-size: 28px !important; color: var(--gold); margin-bottom: 16px; display: block; }

/* ════════════════════════════════════
   EVIDENCE (HEPPNER)
════════════════════════════════════ */
body.marketing-page .evidence { padding: 100px 0; background: var(--s1); }
body.marketing-page .ev-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: start; }
@media (max-width: 900px) { body.marketing-page .ev-grid { grid-template-columns: 1fr; gap: 48px; } }
body.marketing-page .ev-overline { font-family: var(--sans); font-size: 11px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--fg3); margin-bottom: 12px; }
body.marketing-page .ev-h2 { font-family: var(--serif); font-size: clamp(24px, 2.8vw, 36px); font-weight: 700; color: var(--color-on-surface); letter-spacing: -0.015em; line-height: 1.24; margin-bottom: 16px; }
body.marketing-page .ev-h2 em { font-style: normal; color: var(--gold); }
body.marketing-page .ev-body { font-size: 16px; line-height: 1.7; color: var(--color-on-surface-variant); }
body.marketing-page .ev-risk-card {
  margin-top: 20px; padding: 20px; border-radius: 8px;
  background: rgba(147,0,10,0.06); border: 1px solid rgba(147,0,10,0.2);
}
body.marketing-page .ev-risk-label { font-size: 11px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--error); margin-bottom: 8px; }
body.marketing-page .ev-risk-body { font-size: 14px; line-height: 1.65; color: #c9a09a; }

body.marketing-page .check-list { display: flex; flex-direction: column; gap: 13px; margin-top: 20px; list-style: none; padding: 0; }
body.marketing-page .check-item { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; font-weight: 500; color: var(--color-on-surface); line-height: 1.4; }
body.marketing-page .check-item .material-symbols-outlined { color: var(--gold); font-size: 18px !important; flex-shrink: 0; margin-top: 2px; }

/* ════════════════════════════════════
   TRUST BAR
════════════════════════════════════ */
body.marketing-page .trust { padding: 0; background: var(--color-background); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
body.marketing-page .trust-inner { display: grid; grid-template-columns: repeat(4, 1fr); }
body.marketing-page .trust-item { padding: 32px 24px; display: flex; flex-direction: column; gap: 6px; border-right: 1px solid var(--border); }
body.marketing-page .trust-item:last-child { border-right: none; }
body.marketing-page .trust-icon { font-size: 20px !important; color: var(--gold); }
body.marketing-page .trust-title { font-size: 14px; font-weight: 600; color: var(--color-on-surface); }
body.marketing-page .trust-desc { font-size: 12px; color: var(--fg3); }
@media (max-width: 768px) {
  body.marketing-page .trust-inner { grid-template-columns: 1fr 1fr; }
  body.marketing-page .trust-item:nth-child(2) { border-right: none; }
}

/* ════════════════════════════════════
   CTA
════════════════════════════════════ */
body.marketing-page .cta-section { padding: 96px 0; background: var(--s1); border-top: 1px solid var(--border); }
body.marketing-page .cta-inner { max-width: 580px; margin: 0 auto; text-align: center; }
body.marketing-page .cta-inner h2 { font-family: var(--serif); font-size: clamp(30px, 3.8vw, 48px); font-weight: 700; color: var(--color-on-surface); letter-spacing: -0.02em; margin-bottom: 16px; line-height: 1.18; }
body.marketing-page .cta-inner h2 em { font-style: normal; color: var(--gold); }
body.marketing-page .cta-inner p { font-size: 16px; line-height: 1.7; color: var(--color-on-surface-variant); margin-bottom: 36px; }
body.marketing-page .cta-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

/* ════════════════════════════════════
   FOOTER
════════════════════════════════════ */
body.marketing-page .site-footer { background: var(--s0); border-top: 1px solid var(--border); padding: 40px 0; }
body.marketing-page .foot-inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; }
body.marketing-page .foot-logo img { height: 32px; width: auto; display: block; }
body.marketing-page .foot-copy { font-size: 11px; color: var(--fg3); letter-spacing: 0.04em; text-transform: uppercase; margin-top: 6px; }
body.marketing-page .foot-links { display: flex; gap: 28px; list-style: none; padding: 0; margin: 0; }
body.marketing-page .foot-links a { font-size: 12px; font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase; color: var(--fg3); transition: color 0.15s; }
body.marketing-page .foot-links a:hover { color: var(--color-on-surface); }
