/* Rising LinkJuice — FINAL Stylesheet */

/* =========================================================
   RISING LINKJUICE PREMIUM DESIGN SYSTEM
   Global consistency layer for typography, color, UI, cards,
   spacing, header, footer and mobile behavior.
   ========================================================= */
:root {
  --font-sans: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-serif: 'Fraunces', Georgia, serif;
  --weight-body: 400;
  --weight-ui: 500;
  --weight-strong: 600;
  --weight-heading: 500;
  --radius-card: 20px;
  --radius-card-sm: 16px;
  --radius-button: 999px;
  --shadow-card: 0 16px 44px rgba(15, 27, 45, .052);
  --shadow-card-hover: 0 22px 58px rgba(15, 27, 45, .08);
  --shadow-button: 0 12px 28px rgba(201, 151, 77, .18);
  --glow-gold-soft: 0 0 0 1px rgba(201, 151, 77, .12), 0 18px 58px rgba(201, 151, 77, .08);
  --bg: #FAFAF7;
  --bg-card: #FFFFFF;
  --bg-deep: #F2F0EA;
  --text: #0F1B2D;
  --text-muted: #5A6068;
  --accent: #C9974D;
  --accent-deep: #A87838;
  --accent-light: #E5C387;
  --line: #E8E6E0;
  --line-soft: #EFEDE7;
  --brand-navy: #0F1B2D;
  --success: #A87838;
  --warning: #A87838;
  --error: #0F1B2D;
  --v2-dark: #0F1B2D;
  --v2-dark-2: #111A2E;
  --v2-card: #FAFAF7;
  --v2-card-2: #F2F0EA;
  --v2-line: rgba(201, 151, 77, .2);
  --v2-cyan: #C9974D;
  --v2-blue: #A87838;
  --v2-violet: #A87838;
  --v2-red: #0F1B2D;
  --v3-cream: #FAFAF7;
  --v3-cream-2: #F2F0EA;
  --v3-navy: #0F1B2D;
  --v3-navy-2: #111A2E;
  --v3-navy-3: #0F1B2D;
  --v3-gold: #C9974D;
  --v3-gold-deep: #A87838;
  --v3-cyan: #C9974D;
  --v3-blue: #A87838;
  --v3-violet: #A87838;
  --v3-red: #0F1B2D;
  --v3-text: #0F1B2D;
  --v3-muted: #5A6068;
  --v3-light-line: #E8E6E0;
  --v3-dark-line: rgba(201, 151, 77, .18);
  --v3-gradient-ai: linear-gradient(90deg, #A87838, #C9974D);
  --v3-font-sans: var(--font-sans);
  --v3-font-serif: var(--font-serif);
}


*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
@media (prefers-reduced-motion: no-preference) {
  html { scroll-behavior: smooth; }
}
body {
  font-family: 'Geist', -apple-system, BlinkMacSystemFont, sans-serif;
  background: var(--bg);
  color: var(--text);
  line-height: 1.6;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body.menu-open { overflow: hidden; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; }

.container { max-width: 1200px; margin: 0 auto; padding: 0 32px; }
.container-narrow { max-width: 880px; margin: 0 auto; padding: 0 32px; }
.section { padding: 100px 0; }

@media (max-width: 768px) {
  .container, .container-narrow { padding: 0 20px; }
  .section { padding: 56px 0; }
}

/* Typography */
.eyebrow {
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--accent-deep);
  font-weight: 500;
  margin-bottom: 20px;
}
.h-display {
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 400;
  font-size: clamp(36px, 5.6vw, 72px);
  line-height: 1.05;
  letter-spacing: -0.02em;
  font-variation-settings: "opsz" 144;
}
.h-section {
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 400;
  font-size: clamp(28px, 3.8vw, 46px);
  line-height: 1.1;
  letter-spacing: -0.015em;
}
.h-card {
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 500;
  font-size: 22px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}
.lead {
  font-size: clamp(16px, 1.4vw, 19px);
  line-height: 1.55;
  color: var(--text-muted);
  max-width: 680px;
}
.body-flow p { margin-bottom: 1.2em; color: var(--text-muted); font-size: 16.5px; line-height: 1.7; }
.body-flow p:last-child { margin-bottom: 0; }
.body-flow strong { color: var(--text); font-weight: 500; }
.body-flow ul { list-style: none; padding: 0; margin: 1em 0; }
.body-flow ul li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 10px;
  color: var(--text-muted);
  line-height: 1.6;
}
.body-flow ul li::before {
  content: ""; position: absolute; left: 0; top: 12px;
  width: 12px; height: 1px; background: var(--accent);
}

@media (max-width: 768px) {
  .body-flow p { font-size: 15.5px; }
}

/* Header */
.header {
  position: sticky; top: 0; z-index: 50;
  background: rgba(250, 250, 247, 0.92);
  backdrop-filter: saturate(140%) blur(16px);
  -webkit-backdrop-filter: saturate(140%) blur(16px);
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s;
}
.header.scrolled { border-bottom-color: var(--line); }
.header-inner {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 32px;
  max-width: 1200px; margin: 0 auto;
}

.logo {
  display: flex; align-items: center; gap: 12px;
  text-decoration: none; color: var(--text);
  font-family: 'Geist', sans-serif;
  font-weight: 600; font-size: 18px; letter-spacing: -0.01em;
  flex-shrink: 0;
}
.nav { display: flex; align-items: center; gap: 28px; }
.nav-links { display: flex; gap: 28px; font-size: 14.5px; color: var(--text-muted); list-style: none; }
.nav-links > li { position: relative; }
.nav-links a { transition: color 0.2s; cursor: pointer; }
.nav-links a:hover { color: var(--text); }

/* Dropdown */
.has-dropdown > a::after {
  content: ""; display: inline-block; margin-left: 6px;
  border: solid currentColor; border-width: 0 1px 1px 0;
  padding: 2px; transform: rotate(45deg) translateY(-2px); vertical-align: middle;
}
.dropdown {
  position: absolute; top: 100%; left: -16px;
  background: var(--bg-card);
  border: 1px solid var(--line); border-radius: 6px;
  padding: 12px; min-width: 280px;
  box-shadow: 0 12px 32px rgba(15, 27, 45, 0.08);
  opacity: 0; visibility: hidden; transform: translateY(8px);
  transition: all 0.2s; z-index: 10;
}
.has-dropdown:hover .dropdown,
.has-dropdown:focus-within .dropdown {
  opacity: 1; visibility: visible; transform: translateY(4px);
}
.dropdown a {
  display: block; padding: 9px 14px; border-radius: 4px;
  font-size: 14px; color: var(--text);
  transition: background 0.15s;
}
.dropdown a:hover { background: var(--bg-deep); color: var(--accent-deep); }
.dropdown-section {
  font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--text-muted); padding: 14px 14px 6px; font-weight: 500;
}

/* Burger Menu */
.burger {
  display: none;
  background: none; border: none;
  width: 40px; height: 40px;
  cursor: pointer;
  padding: 8px;
  position: relative;
  z-index: 60;
}
.burger span {
  display: block;
  width: 24px; height: 2px;
  background: var(--text);
  margin: 5px auto;
  transition: all 0.3s;
  border-radius: 2px;
}
.burger.active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.burger.active span:nth-child(2) { opacity: 0; }
.burger.active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.mobile-menu {
  display: none;
  position: fixed; top: 0; left: 0; right: 0; bottom: 0;
  background: var(--bg);
  z-index: 55;
  overflow-y: auto;
  padding: 80px 24px 40px;
}
.mobile-menu.open { display: block; }
.mobile-menu-section {
  font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--text-muted); padding: 24px 0 8px; font-weight: 500;
  border-top: 1px solid var(--line); margin-top: 16px;
}
.mobile-menu-section:first-of-type { border-top: none; margin-top: 0; }
.mobile-menu a {
  display: block; padding: 12px 0;
  font-size: 16px; color: var(--text);
  border-bottom: 1px solid var(--line-soft);
}
.mobile-menu a:hover { color: var(--accent-deep); }
.mobile-menu .btn {
  margin-top: 24px; width: 100%; justify-content: center;
}

@media (max-width: 1080px) {
  .nav-links { display: none; }
  .nav .btn-accent { display: none; }
  .burger { display: block; }
  .header-inner { padding: 12px 20px; }
}

/* Buttons */
.btn {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 13px 22px;
  font-family: inherit; font-size: 14.5px; font-weight: 500;
  border-radius: 999px;
  cursor: pointer;
  transition: all 0.25s ease;
  border: 1px solid transparent;
  white-space: nowrap;
  text-decoration: none;
}
.btn-primary { background: var(--text); color: var(--bg); }
.btn-primary:hover { background: var(--accent-deep); transform: translateY(-1px); box-shadow: 0 8px 20px rgba(168, 120, 56, 0.25); }
.btn-accent { background: var(--accent); color: white; }
.btn-accent:hover { background: var(--accent-deep); transform: translateY(-1px); box-shadow: 0 8px 24px rgba(201, 151, 77, 0.35); }
.btn-ghost { color: var(--text); border-color: var(--line); background: transparent; }
.btn-ghost:hover { border-color: var(--text); }
.btn-arrow { transition: transform 0.25s ease; }
.btn:hover .btn-arrow { transform: translateX(3px); }
.calendly-icon { width: 16px; height: 16px; flex-shrink: 0; }

@media (max-width: 600px) {
  .btn { font-size: 14px; padding: 12px 20px; min-height: 48px; }
  .hero-cta-row { gap: 10px; }
  .hero-cta-row .btn { width: 100%; justify-content: center; }
}

/* Hero */
.hero { padding: 96px 0 96px; position: relative; overflow: hidden; }
.hero-narrow { padding: 80px 0 64px; }
.hero h1 { margin-bottom: 26px; }
.hero h1 .accent { font-style: italic; color: var(--accent-deep); font-weight: 500; }
.hero-lead { margin-bottom: 36px; }
.hero-cta-row { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; }

.hero-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 80px;
  align-items: center;
}
@media (max-width: 900px) {
  .hero-grid { grid-template-columns: 1fr; gap: 48px; }
  .hero { padding: 56px 0 64px; }
  .hero-narrow { padding: 48px 0 40px; }
}

.hero-mini-trust {
  display: flex; flex-wrap: wrap; gap: 22px; margin-top: 28px;
  font-size: 13.5px; color: var(--text-muted); list-style: none;
}
.hero-mini-trust li { display: flex; align-items: center; gap: 8px; }
.hero-mini-trust li::before {
  content: ""; width: 6px; height: 6px;
  background: var(--accent); border-radius: 50%;
}

/* Hero Visual */
.hero-visual {
  position: relative; aspect-ratio: 1 / 1.05;
  background: var(--bg-deep); border-radius: 6px;
  overflow: hidden; border: 1px solid var(--line);
}
.hero-visual::before {
  content: ""; position: absolute; inset: 0;
  background:
    radial-gradient(circle at 70% 30%, rgba(201, 151, 77, 0.18), transparent 55%),
    radial-gradient(circle at 20% 80%, rgba(201, 151, 77, 0.08), transparent 50%);
}
.hero-visual-content {
  position: absolute; inset: 0;
  display: flex; flex-direction: column; justify-content: space-between;
  padding: 30px;
}
.hero-stat {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 52px; font-weight: 500; line-height: 1; letter-spacing: 0;
}
.hero-stat-label { font-size: 13px; color: var(--text-muted); margin-top: 8px; }
.hero-divider { height: 1px; background: var(--line); margin: 22px 0; }
.hero-stats-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 32px; }
.hero-quote {
  font-family: 'Fraunces', Georgia, serif; font-style: italic;
  font-size: 16.5px; line-height: 1.5; color: var(--text);
}

/* Section header */
.section-header { max-width: 720px; margin-bottom: 56px; }
.section-header h2 { margin-bottom: 20px; }
@media (max-width: 768px) { .section-header { margin-bottom: 36px; } }

/* Pillars Grid */
.pillars-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media (max-width: 900px) { .pillars-grid { grid-template-columns: 1fr; } }
.pillar-card {
  background: var(--bg-card); border: 1px solid var(--line);
  padding: 38px 34px; border-radius: 6px;
  display: flex; flex-direction: column;
  transition: all 0.3s ease;
}
.pillar-card:hover {
  border-color: var(--accent); transform: translateY(-3px);
  box-shadow: 0 12px 32px rgba(15, 27, 45, 0.06);
}
.pillar-icon { width: 36px; height: 36px; margin-bottom: 28px; color: var(--accent-deep); }
.pillar-card h3 { margin-bottom: 14px; }
.pillar-card p { flex-grow: 1; font-size: 15px; line-height: 1.6; color: var(--text-muted); margin-bottom: 26px; }
.pillar-link {
  font-size: 14.5px; font-weight: 500; color: var(--text);
  display: inline-flex; align-items: center; gap: 8px;
  border-bottom: 1px solid var(--text); padding-bottom: 2px;
  align-self: flex-start; transition: gap 0.2s;
}
.pillar-link:hover { gap: 12px; }

/* 3-Spalten Differenzierung */
.diff-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px;
  background: var(--line); border: 1px solid var(--line);
  margin-top: 56px; border-radius: 4px; overflow: hidden;
}
@media (max-width: 768px) { .diff-grid { grid-template-columns: 1fr; } }
.diff-item { background: var(--bg); padding: 44px 36px; transition: background 0.3s; }
.diff-item:hover { background: var(--bg-card); }
.diff-num {
  font-family: 'Fraunces', Georgia, serif; font-size: 13px;
  color: var(--accent-deep); margin-bottom: 22px; display: block;
}
.diff-item h3 { margin-bottom: 14px; }
.diff-item p { font-size: 15px; line-height: 1.6; color: var(--text-muted); }

/* Process */
.process-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px;
  margin-top: 48px; position: relative;
}
.process-grid::before {
  content: ""; position: absolute; top: 26px; left: 0; right: 0; height: 1px;
  background: linear-gradient(to right, transparent 0%, var(--line) 8%, var(--line) 92%, transparent 100%);
}
@media (max-width: 768px) {
  .process-grid { grid-template-columns: 1fr; gap: 32px; }
  .process-grid::before { display: none; }
}
.process-step { position: relative; z-index: 1; }
.process-num {
  width: 52px; height: 52px;
  background: var(--bg); border: 1px solid var(--line);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Fraunces', Georgia, serif; font-size: 17px;
  margin-bottom: 22px;
}
.process-step h3 {
  font-family: 'Fraunces', Georgia, serif; font-size: 19px;
  margin-bottom: 12px; font-weight: 500;
}
.process-step p { font-size: 14.5px; color: var(--text-muted); line-height: 1.55; }

/* Stats / Trust-Section */
.stats { background: var(--brand-navy); color: var(--bg); }
.stats .h-section { color: var(--bg); }
.stats .lead { color: rgba(250, 250, 247, 0.7); }
.stats-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px;
  margin-top: 56px; border-top: 1px solid rgba(250, 250, 247, 0.12);
  padding-top: 44px;
}
@media (max-width: 768px) { .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 32px 24px; } }
.stat-num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: clamp(36px, 4.5vw, 50px);
  font-weight: 500; line-height: 1; letter-spacing: 0;
  margin-bottom: 12px; color: var(--accent);
}
.stat-label { font-size: 13.5px; color: rgba(250, 250, 247, 0.6); line-height: 1.4; }

/* Trust-Bar light */
.trust-bar { padding: 48px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--bg-deep); }
.trust-bar-inner { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; align-items: center; text-align: center; }
@media (max-width: 768px) { .trust-bar-inner { grid-template-columns: repeat(2, 1fr); gap: 32px; } }
.trust-item .num {
  font-family: 'Fraunces', Georgia, serif; font-size: clamp(28px, 3vw, 38px);
  color: var(--accent-deep); line-height: 1; margin-bottom: 6px;
}
.trust-item .lbl { font-size: 13px; color: var(--text-muted); letter-spacing: 0.04em; }

/* Industries */
.ind-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 22px; margin-top: 44px; }
@media (max-width: 900px) { .ind-grid { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); } }
@media (max-width: 500px) { .ind-grid { grid-template-columns: 1fr; } }
.ind-item {
  padding: 30px 26px; border: 1px solid var(--line);
  border-radius: 6px; background: var(--bg);
  transition: all 0.25s;
}
.ind-item:hover { border-color: var(--accent); background: var(--bg-card); transform: translateY(-2px); }
.ind-item h4 { font-family: 'Fraunces', Georgia, serif; font-size: 18px; font-weight: 500; margin-bottom: 10px; }
.ind-item p { font-size: 14px; color: var(--text-muted); line-height: 1.5; }

/* FAQ */
.faq-list { margin-top: 40px; max-width: 820px; }
details { border-bottom: 1px solid var(--line); padding: 24px 0; }
details:first-child { border-top: 1px solid var(--line); }
summary {
  font-family: 'Fraunces', Georgia, serif; font-size: 19px; font-weight: 500;
  cursor: pointer; list-style: none;
  display: flex; justify-content: space-between; align-items: center;
  gap: 24px; padding-right: 8px; transition: color 0.2s;
}
summary::-webkit-details-marker { display: none; }
summary:hover { color: var(--accent-deep); }
.faq-icon { width: 20px; height: 20px; flex-shrink: 0; transition: transform 0.3s ease; color: var(--accent-deep); }
details[open] .faq-icon { transform: rotate(45deg); }
details > p { margin-top: 14px; color: var(--text-muted); max-width: 720px; font-size: 15.5px; line-height: 1.6; }

/* AI-Block (für GEO/AEO Sichtbarkeit) */
.ai-block {
  background: linear-gradient(135deg, var(--bg-deep) 0%, var(--bg) 100%);
  border-left: 3px solid var(--accent);
  padding: 36px 36px;
  margin: 56px 0;
  border-radius: 0 6px 6px 0;
  position: relative;
}
.ai-block::before {
  content: "AI"; position: absolute; top: -12px; left: 24px;
  background: var(--accent); color: white;
  padding: 4px 10px; border-radius: 4px;
  font-size: 10px; letter-spacing: 0.15em; font-weight: 600;
}
.ai-block .ai-title {
  font-family: 'Fraunces', Georgia, serif; font-size: 13px;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--text-muted); margin-bottom: 20px;
}
.ai-block .ai-q {
  font-family: 'Fraunces', Georgia, serif; font-weight: 500;
  font-size: 17px; color: var(--text); margin-bottom: 8px; margin-top: 18px;
}
.ai-block .ai-q:first-of-type { margin-top: 0; }
.ai-block .ai-a { color: var(--text-muted); font-size: 15.5px; line-height: 1.6; }
@media (max-width: 600px) { .ai-block { padding: 28px 24px; } }

/* Final CTA */
.final-cta { background: var(--bg-deep); text-align: center; position: relative; overflow: hidden; }
.final-cta::before {
  content: ""; position: absolute; inset: 0;
  background: radial-gradient(ellipse at center top, rgba(201, 151, 77, 0.10), transparent 60%);
  pointer-events: none;
}
.final-cta-inner { position: relative; z-index: 1; }
.final-cta h2 { margin-bottom: 22px; }
.final-cta .lead { margin: 0 auto 36px; }
.final-cta-row { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
@media (max-width: 600px) {
  .final-cta-row { flex-direction: column; align-items: stretch; }
  .final-cta-row .btn { width: 100%; justify-content: center; }
}

/* Footer */
.footer {
  border-top: 1px solid var(--line);
  padding: 56px 0 36px;
  font-size: 13.5px; color: var(--text-muted);
  background: var(--bg);
}
.footer-grid {
  display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
  gap: 40px; margin-bottom: 44px;
}
@media (max-width: 900px) { .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; } }
@media (max-width: 500px) { .footer-grid { grid-template-columns: 1fr; gap: 28px; } }
.footer-brand .logo { margin-bottom: 14px; }
.footer-brand p { max-width: 320px; line-height: 1.55; }
.footer-col h3,
.footer-col h5 {
  font-size: 11.5px; letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--text); margin-bottom: 16px; font-weight: 500;
}
.footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 9px; }
.footer-col a { transition: color 0.2s; }
.footer-col a:hover { color: var(--text); }
.footer-bottom {
  padding-top: 28px; border-top: 1px solid var(--line);
  display: flex; justify-content: space-between; align-items: center;
  flex-wrap: wrap; gap: 14px; font-size: 12.5px;
}
.footer-legal { display: flex; gap: 18px; flex-wrap: wrap; }
.footer-legal a:hover { color: var(--accent-deep); }

/* Reveal */
/* Sections sind STANDARDMÄSSIG SICHTBAR - kritisch für Funktionalität bei JS-Issues */
.reveal { opacity: 1; transform: none; transition: opacity 0.7s ease, transform 0.7s ease; }
/* Reveal-Animation greift nur wenn JS-Klasse gesetzt ist (Progressive Enhancement) */
html.js-active .reveal:not(.is-visible) { opacity: 0; transform: translateY(18px); }
html.js-active .reveal.is-visible { opacity: 1; transform: translateY(0); }

@media (prefers-reduced-motion: reduce) {
  .reveal { transition: none !important; }
  html.js-active .reveal:not(.is-visible) { opacity: 1 !important; transform: none !important; }
  .cookie-banner { animation: none !important; }
  * { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}

/* Selection */
::selection { background: var(--accent); color: var(--bg); }

/* Page-specific helpers */
.section-alt { background: var(--bg-deep); }
.text-block { max-width: 760px; }
.text-block h2 { margin-bottom: 24px; }
.text-block h3 { font-family: 'Fraunces', Georgia, serif; font-size: 22px; font-weight: 500; margin: 32px 0 14px; }

.list-grid {
  display: grid; grid-template-columns: repeat(2, 1fr);
  gap: 28px 32px; margin-top: 36px;
}
@media (max-width: 700px) { .list-grid { grid-template-columns: 1fr; } }
.list-item h4 { font-family: 'Fraunces', Georgia, serif; font-size: 18px; font-weight: 500; margin-bottom: 10px; }
.list-item p { color: var(--text-muted); line-height: 1.6; font-size: 15px; }

/* Related Topics */
.related {
  border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
  padding: 40px 0; background: var(--bg);
}
.related-label { font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 14px; font-weight: 500; }
.related-links { display: flex; flex-wrap: wrap; gap: 12px; }
.related-links a {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 10px 16px; border: 1px solid var(--line);
  border-radius: 999px; font-size: 14px; background: var(--bg);
  transition: all 0.2s;
}
.related-links a:hover { border-color: var(--text); background: var(--bg-card); }

/* Glossar Hub */
.glossary-hero .h-display {
  max-width: 820px;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}
.glossary-section {
  padding-top: 72px;
}
.glossary-toolbar {
  position: sticky;
  top: 73px;
  z-index: 8;
  background: rgba(250, 250, 247, 0.94);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 22px;
  margin-bottom: 32px;
  box-shadow: 0 14px 38px rgba(15,27,45,.05);
}
.glossary-search-label {
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--accent-deep);
  margin-bottom: 10px;
}
.glossary-search {
  min-height: 52px;
  border-radius: 6px;
  font-size: 16px;
}
.glossary-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
.glossary-chip {
  border: 1px solid var(--line);
  background: var(--bg-card);
  color: var(--text);
  border-radius: 999px;
  padding: 9px 14px;
  font-size: 13.5px;
  line-height: 1;
  cursor: pointer;
  transition: all .2s ease;
}
.glossary-chip:hover,
.glossary-chip.active {
  border-color: var(--accent);
  background: var(--bg-deep);
  color: var(--accent-deep);
}
.glossary-count {
  color: var(--text-muted);
  font-size: 13px;
  margin-top: 12px;
}
.glossary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.glossary-card {
  background: var(--bg-card);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 26px;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow-wrap: anywhere;
  transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.glossary-card:hover {
  border-color: rgba(201,151,77,.65);
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(15,27,45,.055);
}
.glossary-card[hidden] {
  display: none;
}
.glossary-card span {
  display: inline-flex;
  align-self: flex-start;
  margin-bottom: 14px;
  color: var(--accent-deep);
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 600;
}
.glossary-card h2 {
  font-family: 'Fraunces', Georgia, serif;
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1.15;
  font-weight: 500;
  margin-bottom: 16px;
}
.glossary-card p {
  color: var(--text-muted);
  font-size: 15px;
  line-height: 1.62;
  margin-bottom: 10px;
}
.glossary-card strong {
  color: var(--text);
  font-weight: 600;
}
.glossary-card a {
  display: inline-flex;
  align-self: flex-start;
  margin-top: 10px;
  color: var(--text);
  border-bottom: 1px solid var(--text);
  font-size: 14px;
  font-weight: 500;
}
.glossary-card a + a {
  margin-top: 8px;
}
.glossary-empty {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--bg-card);
  color: var(--text-muted);
  padding: 24px;
  text-align: center;
}
.glossary-related {
  max-width: 880px;
}
@media (max-width: 980px) {
  .glossary-toolbar {
    position: static;
  }
}
@media (max-width: 760px) {
  .glossary-hero .h-display {
    font-size: clamp(31px, 9vw, 38px);
    line-height: 1.08;
  }
  .glossary-grid {
    grid-template-columns: 1fr;
  }
  .glossary-toolbar {
    padding: 18px;
  }
  .glossary-chip {
    font-size: 13px;
    padding: 9px 12px;
  }
  .glossary-card {
    padding: 22px;
  }
}

/* Form */
.form-grid { display: grid; gap: 18px; max-width: 600px; margin-top: 36px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
@media (max-width: 600px) { .form-row { grid-template-columns: 1fr; } }
label { font-size: 13.5px; color: var(--text); margin-bottom: 6px; display: block; font-weight: 500; }
input, textarea, select {
  width: 100%; padding: 12px 14px;
  border: 1px solid var(--line); border-radius: 4px;
  font-family: inherit; font-size: 15px;
  background: var(--bg-card); color: var(--text);
  transition: border-color 0.2s;
}
input:focus, textarea:focus, select:focus { outline: none; border-color: var(--accent); }
textarea { resize: vertical; min-height: 120px; }
.required-star { color: var(--accent); }
.form-consent { margin-top: 4px; }
.form-consent-text { font-size: 12.5px; color: rgba(15,27,45,.55); line-height: 1.5; }
.form-consent-text a { color: var(--accent); text-decoration: underline; }

/* Legal pages */
.legal-page { padding: 92px 0; background: var(--v3-cream); }
.legal-page .container-narrow {
  max-width: 900px;
  padding: clamp(28px, 5vw, 56px);
  border: 1px solid rgba(15,27,45,.09);
  border-radius: 24px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 18px 52px rgba(15,27,45,.055);
}
.legal-page h1 { margin-bottom: 34px; }
.legal-page h2 {
  font-family: var(--v3-font-serif);
  color: var(--v3-text);
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 500;
  margin: 42px 0 14px;
  padding-top: 26px;
  border-top: 1px solid rgba(15,27,45,.08);
}
.legal-page h2:first-of-type {
  border-top: 0;
  padding-top: 0;
}
.legal-page h3 { font-family: var(--v3-font-serif); color: var(--v3-text); font-size: 20px; font-weight: 500; margin: 28px 0 12px; }
.legal-page p { color: var(--text-muted); margin-bottom: 14px; line-height: 1.75; font-size: 16px; }
.legal-page strong { color: var(--text); }
.legal-page a { color: var(--accent-deep); border-bottom: 1px solid var(--accent); }
.legal-page a:hover { color: var(--accent); }

/* Cookie Banner */
.cookie-banner {
  position: fixed; bottom: 20px; left: 20px; right: 20px;
  max-width: 540px;
  background: var(--bg-card);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 16px 48px rgba(15, 27, 45, 0.12);
  padding: 24px;
  z-index: 100;
  animation: slideUp 0.4s ease;
  font-size: 14px;
}
@keyframes slideUp { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
.cookie-banner.hidden { display: none; }
.cookie-banner h3 {
  font-family: 'Fraunces', Georgia, serif; font-size: 18px;
  margin-bottom: 10px; color: var(--text); font-weight: 500;
}
.cookie-banner p { color: var(--text-muted); line-height: 1.5; margin-bottom: 16px; font-size: 13.5px; }
.cookie-banner a { color: var(--accent-deep); border-bottom: 1px solid var(--accent); }
.cookie-buttons { display: flex; gap: 8px; flex-wrap: wrap; }
.cookie-buttons .btn { font-size: 13px; padding: 10px 16px; }
.cookie-buttons .btn-link {
  background: transparent; border: none; color: var(--text-muted);
  text-decoration: underline; cursor: pointer; padding: 10px 8px; font-size: 13px;
}
.cookie-banner.expanded .cookie-categories { display: flex; }
.cookie-categories { display: none; flex-direction: column; gap: 10px; margin: 14px 0; padding: 14px; background: var(--bg-deep); border-radius: 6px; }
.cookie-cat { display: flex; align-items: center; justify-content: space-between; }
.cookie-cat-label { font-size: 13.5px; }
.cookie-cat-label strong { display: block; color: var(--text); }
.cookie-cat-label span { font-size: 12px; color: var(--text-muted); }
.cookie-toggle { width: 36px; height: 20px; background: var(--line); border-radius: 999px; cursor: pointer; position: relative; transition: background 0.2s; flex-shrink: 0; }
.cookie-toggle::after { content: ""; position: absolute; top: 2px; left: 2px; width: 16px; height: 16px; background: white; border-radius: 50%; transition: left 0.2s; }
.cookie-toggle.active { background: var(--accent); }
.cookie-toggle.active::after { left: 18px; }
.cookie-toggle.disabled { opacity: 0.5; cursor: not-allowed; }

@media (max-width: 600px) {
  .cookie-banner { left: 12px; right: 12px; bottom: 12px; padding: 20px; }
}

/* Audit Tool */
.audit-tool {
  background: var(--bg-card); border: 1px solid var(--line);
  border-radius: 12px; padding: 40px; margin-top: 36px;
  box-shadow: 0 8px 32px rgba(15, 27, 45, 0.04);
}
@media (max-width: 600px) { .audit-tool { padding: 24px; } }
.audit-form { display: flex; gap: 12px; flex-wrap: wrap; }
.audit-form input { flex: 1; min-width: 220px; }
.audit-results { margin-top: 36px; display: none; }
.audit-results.visible { display: block; animation: fadeIn 0.6s ease; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
.audit-scores { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 32px; }
@media (max-width: 700px) { .audit-scores { grid-template-columns: repeat(2, 1fr); } }
.audit-score { background: var(--bg-deep); padding: 24px 20px; border-radius: 8px; text-align: center; }
.audit-score-num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 36px; line-height: 1; margin-bottom: 8px;
  font-weight: 400;
}
.audit-score-num.good { color: var(--success); }
.audit-score-num.medium { color: var(--warning); }
.audit-score-num.poor { color: var(--error); }
.audit-score-label { font-size: 12px; color: var(--text-muted); letter-spacing: 0.04em; text-transform: uppercase; }
.audit-bars { display: flex; flex-direction: column; gap: 14px; margin-bottom: 32px; }
.audit-bar-row { display: grid; grid-template-columns: 140px 1fr 50px; gap: 12px; align-items: center; font-size: 14px; }
@media (max-width: 600px) { .audit-bar-row { grid-template-columns: 100px 1fr 40px; } }
.audit-bar { height: 8px; background: var(--line); border-radius: 4px; overflow: hidden; }
.audit-bar-fill { height: 100%; background: var(--accent); border-radius: 4px; transition: width 1.2s ease; }
.audit-bar-fill.poor { background: var(--error); }
.audit-bar-fill.medium { background: var(--warning); }
.audit-bar-fill.good { background: var(--success); }
.audit-issues, .audit-recos { background: var(--bg-deep); padding: 24px; border-radius: 8px; margin-bottom: 16px; }
.audit-issues h4, .audit-recos h4 { font-family: 'Fraunces', Georgia, serif; font-size: 17px; margin-bottom: 12px; font-weight: 500; }
.audit-issues ul, .audit-recos ul { list-style: none; }
.audit-issues li, .audit-recos li {
  padding: 6px 0 6px 24px; position: relative; font-size: 14.5px; color: var(--text-muted);
}
.audit-issues li::before { content: "✕"; position: absolute; left: 0; color: var(--error); font-weight: 700; }
.audit-recos li::before { content: "→"; position: absolute; left: 0; color: var(--accent-deep); font-weight: 700; }
.audit-loading { text-align: center; padding: 40px 0; }
.audit-spinner { display: inline-block; width: 40px; height: 40px; border: 3px solid var(--line); border-top-color: var(--accent); border-radius: 50%; animation: spin 0.8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* Counter animation */
.counter { display: inline-block; }


/* ===== Strategic Foundation V1: Premium Visual + Depth System ===== */
.proof-strip {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: rgba(242, 240, 234, 0.72);
  padding: 22px 0;
}
.proof-strip-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  align-items: center;
  justify-content: center;
  color: var(--text-muted);
  font-size: 12.5px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.proof-strip span { position: relative; }
.proof-strip span:not(:last-child)::after {
  content: "";
  position: absolute;
  right: -14px;
  top: 50%;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--accent);
  transform: translateY(-50%);
}
.premium-insight {
  position: relative;
  overflow: hidden;
}
.premium-insight::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 85% 15%, rgba(201,151,77,.10), transparent 34%);
  pointer-events: none;
}
.insight-split {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .75fr);
  gap: 64px;
  align-items: center;
  position: relative;
  z-index: 1;
}
.insight-copy .body-flow { margin-top: 24px; }
.insight-copy a { color: var(--accent-deep); border-bottom: 1px solid rgba(201,151,77,.45); }
.authority-panel {
  background: var(--bg-card);
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 30px;
  box-shadow: 0 18px 50px rgba(15,27,45,.06);
  position: relative;
}
.authority-panel::after {
  content: "";
  position: absolute;
  inset: 12px;
  border: 1px solid var(--line-soft);
  border-radius: 7px;
  pointer-events: none;
}
.panel-kicker {
  display: inline-flex;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--accent-deep);
  margin-bottom: 18px;
  font-weight: 600;
}
.signal-line {
  display: grid;
  grid-template-columns: 118px 1fr;
  gap: 18px;
  padding: 16px 0;
  border-top: 1px solid var(--line-soft);
  position: relative;
  z-index: 1;
}
.signal-line strong {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 18px;
  font-weight: 500;
  color: var(--text);
}
.signal-line span { color: var(--text-muted); font-size: 14px; line-height: 1.5; }
.ai-panel { background: linear-gradient(145deg, var(--bg-card), var(--bg-deep)); }
.quality-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: rgba(250,250,247,.14);
  border: 1px solid rgba(250,250,247,.16);
  margin-top: 42px;
}
.quality-card {
  padding: 28px;
  background: rgba(15,27,45,.92);
  min-height: 190px;
}
.quality-card span {
  color: var(--accent);
  font-family: 'Fraunces', Georgia, serif;
  display: block;
  margin-bottom: 20px;
}
.quality-card h3 {
  color: var(--bg);
  font-family: 'Fraunces', Georgia, serif;
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 10px;
}
.quality-card p { color: rgba(250,250,247,.67); font-size: 14.5px; line-height: 1.55; }
.hero-visual { box-shadow: 0 18px 60px rgba(15,27,45,.08); }
@media (max-width: 900px) {
  .insight-split { grid-template-columns: 1fr; gap: 36px; }
  .quality-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .proof-strip-inner { justify-content: flex-start; gap: 10px 18px; }
  .proof-strip span:not(:last-child)::after { display: none; }
  .authority-panel { padding: 24px; }
  .signal-line { grid-template-columns: 1fr; gap: 4px; }
  .quality-grid { grid-template-columns: 1fr; }
  .quality-card { min-height: auto; }
}


/* =========================================================
   VISUAL AUTHORITY V2 — Premium SaaS / Search Intelligence
   ========================================================= */

body { overflow-x: hidden; }

/* stronger, cleaner header */
.header { box-shadow: 0 1px 0 rgba(15,27,45,.06); }
.header .btn-accent { padding: 15px 28px; }

/* dark premium blocks inspired by modern SaaS sections */
.visual-hero,
.visual-dark-section,
.visual-system,
.visual-proof,
.visual-problems {
  background:
    radial-gradient(circle at 28% 18%, rgba(201,151,77,.14), transparent 34%),
    radial-gradient(circle at 78% 26%, rgba(138,106,55,.13), transparent 38%),
    linear-gradient(135deg, var(--v2-dark) 0%, var(--v2-dark-2) 58%, #0F1B2D 100%);
  color:var(--v3-text);
  position:relative;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.visual-hero:before,
.visual-dark-section:before,
.visual-system:before,
.visual-proof:before,
.visual-problems:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size:68px 68px;
  mask-image: radial-gradient(circle at center, black 0%, transparent 78%);
  pointer-events:none;
}
.visual-hero .container,
.visual-dark-section .container,
.visual-system .container,
.visual-proof .container,
.visual-problems .container{ position:relative; z-index:1; }

.visual-hero { padding: 112px 0 84px; }
.visual-hero-grid{ display:grid; grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr); gap:66px; align-items:center; }
.visual-pill{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 18px; border:1px solid rgba(201,151,77,.32); border-radius:999px;
  background:rgba(201,151,77,.08); color:#0F1B2D;
  font-size:12px; letter-spacing:.18em; text-transform:uppercase; font-weight:600;
  margin-bottom:26px;
}
.visual-heading{
  font-family:var(--v3-font-serif);
  font-size:clamp(48px,7vw,96px); line-height:.95; letter-spacing:0; font-weight:600;
  max-width:930px;
}
.visual-heading .grad,
.visual-grad{
  background:linear-gradient(90deg,var(--v3-gold-deep),var(--v3-gold-deep),var(--v3-gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.visual-lead{ margin-top:28px; max-width:760px; color:var(--v3-muted); font-size:clamp(18px,1.7vw,24px); line-height:1.55; }
.visual-hero-actions{ display:flex; gap:16px; flex-wrap:wrap; margin-top:38px; }
.visual-hero .btn{ border-radius:16px; min-height:58px; padding:16px 28px; font-weight:700; }
.visual-hero .btn-accent{ background:linear-gradient(90deg,var(--v3-gold),var(--v3-gold-deep)); color:#06101E; border:none; box-shadow:0 20px 60px rgba(201,151,77,.18); }
.visual-hero .btn-ghost{ color:var(--v3-text); border-color:rgba(201,151,77,.36); background:rgba(255,255,255,.72); }
.visual-benefits{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:56px; }
.visual-benefit{ padding:24px 22px; border:1px solid rgba(201,151,77,.14); border-radius:26px; background:rgba(255,255,255,.72); min-height:154px; }
.visual-benefit-icon,
.visual-icon{ width:58px; height:58px; border-radius:18px; border:1px solid rgba(201,151,77,.35); background:rgba(201,151,77,.09); display:flex; align-items:center; justify-content:center; color:var(--v3-gold-deep); margin-bottom:18px; }
.visual-benefit h3{ font-size:22px; line-height:1.15; margin-bottom:10px; color:var(--v3-text); font-weight:600; }
.visual-benefit p{ color:var(--v3-muted); font-size:15px; line-height:1.55; }

.visual-dashboard{ border:1px solid rgba(201,151,77,.22); border-radius:32px; background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025)); box-shadow:0 28px 90px rgba(0,0,0,.38); padding:28px; backdrop-filter:blur(14px); }
.visual-dashboard-top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; color:var(--v3-muted); font-size:12px; letter-spacing:.16em; text-transform:uppercase; }
.visual-status{ color:var(--v3-gold-deep); }
.visual-metric-big{ border-radius:24px; padding:28px; background:rgba(4,12,28,.65); border:1px solid rgba(201,151,77,.16); margin-bottom:18px; }
.visual-metric-big strong{ display:block; font-size:64px; line-height:1; letter-spacing:0; color:var(--v3-text); }
.visual-metric-big span{ color:var(--v3-muted); }
.visual-flow{ display:grid; gap:16px; }
.visual-flow-row{ display:flex; align-items:center; gap:16px; padding:18px; border:1px solid rgba(255,255,255,.09); border-radius:22px; background:rgba(255,255,255,.72); }
.visual-flow-row b{ display:block; color:var(--v3-text); font-size:18px; }
.visual-flow-row span{ color:var(--v3-muted); font-size:14.5px; }
.visual-dot{ width:12px; height:12px; border-radius:50%; background:linear-gradient(90deg,var(--v3-gold),var(--v3-gold-deep)); box-shadow:0 0 24px rgba(201,151,77,.55); flex:0 0 auto; }

.visual-problems{ padding:92px 0; }
.visual-center{ text-align:center; max-width:980px; margin:0 auto 54px; }
.visual-center h2{ font-family:var(--v3-font-serif); font-size:clamp(38px,5.2vw,70px); line-height:1.02; letter-spacing:0; font-weight:600; }
.visual-center p{ color:var(--v3-muted); font-size:20px; line-height:1.55; margin-top:18px; }
.problem-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.problem-card{ padding:34px; min-height:auto; border:1px solid rgba(201,151,77,.23); border-radius:28px; background:rgba(255,255,255,.84); }
.problem-card .visual-icon{ color:var(--v3-gold-deep); border-color:rgba(201,151,77,.28); background:rgba(201,151,77,.08); }
.problem-card h3{ color:var(--v3-text); font-size:27px; line-height:1.16; margin:20px 0 16px; font-weight:600; }
.problem-card p{ color:var(--v3-muted); font-size:16px; line-height:1.65; }

.visual-system{ padding:94px 0; }
.system-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin-top:54px; position:relative; }
.system-card{ position:relative; border:1px solid rgba(201,151,77,.18); background:rgba(255,255,255,.84); border-radius:26px; padding:34px 26px; min-height:auto; box-shadow:0 18px 50px rgba(0,0,0,.16); }
.system-num{ position:absolute; top:34px; right:26px; width:52px; height:36px; border-radius:999px; display:flex; align-items:center; justify-content:center; background:linear-gradient(90deg,var(--v3-gold-deep),var(--v3-gold-deep)); color:#06101E; font-weight:600; }
.system-card h3{ color:var(--v3-text); font-size:28px; line-height:1.15; margin:36px 0 20px; font-weight:600; }
.system-card .sub{ color:var(--v3-gold-deep); font-weight:700; margin-bottom:18px; }
.system-card p{ color:var(--v3-muted); line-height:1.65; font-size:15.5px; }

.visual-proof{ padding:88px 0; }
.proof-grid-v2{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin-top:44px; }
.proof-card-v2{ border:1px solid rgba(255,255,255,.11); background:rgba(255,255,255,.04); border-radius:24px; padding:30px; text-align:center; }
.proof-card-v2 strong{ display:block; font-size:44px; color:var(--v3-text); line-height:1; letter-spacing:0; }
.proof-card-v2 span{ display:block; color:var(--v3-muted); margin-top:12px; line-height:1.45; }
.proof-statement{ margin-top:44px; border:1px solid rgba(201,151,77,.24); border-radius:28px; padding:38px; text-align:center; background:linear-gradient(90deg,rgba(201,151,77,.08),rgba(138,106,55,.08)); }
.proof-statement h3{ color:var(--v3-text); font-size:28px; margin-bottom:12px; }
.proof-statement p{ color:var(--v3-muted); font-size:18px; }

.authority-ribbon{ background:var(--v2-dark); border-top:1px solid rgba(201,151,77,.16); border-bottom:1px solid rgba(201,151,77,.16); padding:22px 0; }
.authority-ribbon-inner{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }
.authority-ribbon span{ color:rgba(255,255,255,.74); border:1px solid rgba(201,151,77,.2); background:rgba(255,255,255,.72); border-radius:999px; padding:10px 16px; font-size:13px; letter-spacing:.04em; }

.visual-money-intro{ padding:88px 0; }
.money-grid{ display:grid; grid-template-columns:.9fr 1.1fr; gap:56px; align-items:start; }
.money-kicker{ color:var(--v3-gold-deep); letter-spacing:.16em; text-transform:uppercase; font-size:12px; font-weight:600; margin-bottom:14px; }
.money-title{ color:var(--v3-text); font-family:var(--v3-font-serif); font-size:clamp(38px,4.8vw,66px); line-height:1.03; letter-spacing:0; font-weight:600; }
.money-copy{ color:var(--v3-muted); font-size:18px; line-height:1.65; margin-top:22px; }
.money-card-stack{ display:grid; gap:20px; }
.money-card{ border:1px solid rgba(201,151,77,.18); background:rgba(255,255,255,.04); border-radius:24px; padding:26px; display:grid; grid-template-columns:auto 1fr; gap:18px; align-items:start; }
.money-card h3{ color:var(--v3-text); font-size:23px; line-height:1.2; margin-bottom:8px; }
.money-card p{ color:var(--v3-muted); line-height:1.6; }
.money-icon{ width:54px; height:54px; border-radius:16px; color:var(--v3-gold-deep); border:1px solid rgba(201,151,77,.26); background:rgba(201,151,77,.08); display:flex; align-items:center; justify-content:center; }

/* remove old repetitive stat look if still present */
.trust-bar{ background:var(--bg-deep); }
.trust-bar .trust-item .num{ font-size:clamp(22px,2.6vw,32px); }

/* better visual card hover */
.pillar-card,.ind-item,.list-item,.related-links a{ transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease; }
.pillar-card:hover,.ind-item:hover{ transform:translateY(-5px); box-shadow:0 18px 50px rgba(15,27,45,.08); }

@media (max-width: 980px){
  .visual-hero-grid,.money-grid{ grid-template-columns:1fr; }
  .visual-dashboard{ max-width:640px; }
  .visual-benefits,.problem-grid,.system-grid,.proof-grid-v2{ grid-template-columns:1fr 1fr; }
}
@media (max-width: 640px){
  .visual-hero{ padding:72px 0 56px; }
  .visual-heading{ font-size:clamp(42px,13vw,58px); }
  .visual-lead{ font-size:17px; }
  .visual-hero-actions{ flex-direction:column; align-items:stretch; }
  .visual-hero-actions .btn{ width:100%; justify-content:center; }
  .visual-benefits,.problem-grid,.system-grid,.proof-grid-v2{ grid-template-columns:1fr; }
  .visual-dashboard{ padding:20px; border-radius:24px; }
  .visual-metric-big strong{ font-size:48px; }
  .visual-center h2,.money-title{ font-size:38px; }
  .problem-card,.system-card,.proof-statement{ padding:26px; }
}


/* =========================================================
   VISUAL AUTHORITY V3 — Brand-consistent Color + Typography System
   Ziel: Premium Editorial + Dark Search Intelligence, ohne Stilbruch
   ========================================================= */
html,body{ overflow-x:hidden; }
body{ background:var(--v3-cream); color:var(--v3-text); font-family:var(--v3-font-sans); }

/* Header bleibt hell, ruhig und brand-konsistent */
.header{ background:rgba(250,250,247,.94); box-shadow:0 1px 0 rgba(15,27,45,.07); }
.header .btn-accent{ background:var(--v3-gold); color:var(--v3-text); box-shadow:none; border-radius:999px; }
.header .btn-accent:hover{ background:var(--v3-gold-deep); box-shadow:0 12px 28px rgba(168,120,56,.22); }
.nav-links{ font-size:15px; }
/* Grundsatz: Light Sections = Editorial Serif, Dark Sections = Search Intelligence Sans */
.h-display,
.h-section,
.section-header .h-section,
.editorial-section h2,
.light-section h2,
.pillar-card h3,
.h-card{ font-family:var(--v3-font-serif); }

.visual-heading,
.visual-center h2,
.money-title,
.problem-card h3,
.system-card h3,
.visual-benefit h3,
.proof-statement h3,
.visual-metric-big strong{ font-family:var(--v3-font-sans); }

.h-section{ font-size:clamp(34px,4.5vw,58px); line-height:1.04; letter-spacing:0; }
.h-display{ font-size:clamp(44px,6.5vw,82px); line-height:1.02; letter-spacing:0; }
.lead{ font-size:clamp(17px,1.55vw,21px); line-height:1.62; }
.body-flow p{ font-size:17px; line-height:1.76; }

/* Dark System vereinheitlichen: Navy als Basis, Cyan/Violet nur als Future Layer */
.visual-hero,
.visual-dark-section,
.visual-system,
.visual-proof,
.visual-problems,
.visual-money-intro{
  background:
    radial-gradient(circle at 18% 8%, rgba(201,151,77,.13), transparent 34%),
    radial-gradient(circle at 85% 20%, rgba(138,106,55,.12), transparent 36%),
    linear-gradient(135deg,#06101D 0%,#09182B 52%,#0A0B1A 100%);
  border-top:1px solid rgba(255,255,255,.055);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.visual-hero:before,
.visual-dark-section:before,
.visual-system:before,
.visual-proof:before,
.visual-problems:before,
.visual-money-intro:before{
  background-size:76px 76px;
  opacity:.20;
}
.visual-hero{ padding:112px 0 92px; }
.visual-heading{ font-size:clamp(56px,7.4vw,108px); line-height:.91; letter-spacing:0; font-weight:500; max-width:820px; }
.visual-heading .grad,
.visual-grad{ background:linear-gradient(90deg,var(--v3-gold),var(--v3-gold-deep)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.visual-lead{ max-width:800px; font-size:clamp(18px,1.55vw,23px); color:var(--v3-muted); }
.visual-pill{ border-color:rgba(201,151,77,.28); background:rgba(201,151,77,.075); color:#0F1B2D; }

/* CTA: Gold bleibt Brand-Conversion. Cyan/Violet bleibt nur visueller Akzent. */
.visual-hero .btn,
.final-cta .btn,
.btn{ letter-spacing:0; }
.visual-hero .btn-accent,
.visual-dark-section .btn-accent,
.visual-system .btn-accent,
.visual-proof .btn-accent,
.visual-problems .btn-accent{
  background:var(--v3-gold);
  color:var(--v3-text);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 16px 46px rgba(201,151,77,.22);
}
.visual-hero .btn-accent:hover,
.visual-dark-section .btn-accent:hover,
.visual-system .btn-accent:hover,
.visual-proof .btn-accent:hover,
.visual-problems .btn-accent:hover{ background:var(--v3-gold-deep); box-shadow:0 18px 54px rgba(201,151,77,.28); }
.visual-hero .btn-ghost,
.visual-dark-section .btn-ghost{ color:var(--v3-text); border-color:rgba(201,151,77,.25); background:rgba(255,255,255,.72); }
.visual-hero .btn-ghost:hover,
.visual-dark-section .btn-ghost:hover{ border-color:rgba(201,151,77,.52); background:rgba(201,151,77,.055); }

/* Dashboard ruhiger, hochwertiger, weniger Neon */
.visual-dashboard{ border-color:rgba(201,151,77,.18); background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025)); border-radius:30px; box-shadow:0 30px 90px rgba(0,0,0,.34); }
.visual-metric-big{ background:rgba(5,14,31,.70); border-color:rgba(201,151,77,.14); }
.visual-metric-big strong{ font-size:clamp(48px,4.5vw,74px); font-weight:500; letter-spacing:0; }
.visual-flow-row{ border-color:rgba(255,255,255,.085); background:rgba(255,255,255,.033); }
.visual-dot{ background:linear-gradient(90deg,var(--v3-gold),var(--v3-gold-deep)); box-shadow:0 0 22px rgba(201,151,77,.42); }

/* Problem/System/Proof Cards einheitlich */
.problem-card,
.system-card,
.proof-card-v2,
.visual-benefit,
.money-card{
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.022));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 18px 50px rgba(0,0,0,.16);
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease;
}
.problem-card:hover,
.system-card:hover,
.proof-card-v2:hover,
.visual-benefit:hover,
.money-card:hover{ transform:translateY(-6px); box-shadow:0 28px 72px rgba(0,0,0,.24); }
.problem-card{ border-color:rgba(201,151,77,.20); }
.problem-card:hover{ border-color:rgba(201,151,77,.34); }
.system-card,
.proof-card-v2,
.visual-benefit,
.money-card{ border-color:rgba(201,151,77,.16); }
.system-card:hover,
.proof-card-v2:hover,
.visual-benefit:hover,
.money-card:hover{ border-color:rgba(201,151,77,.31); }
.visual-icon,
.visual-benefit-icon,
.money-icon{ border-radius:18px; background:rgba(201,151,77,.075); border-color:rgba(201,151,77,.25); color:var(--v3-gold-deep); }
.problem-card .visual-icon{ background:rgba(201,151,77,.075); border-color:rgba(201,151,77,.24); color:var(--v3-gold-deep); }
.visual-center{ max-width:1050px; }
.visual-center h2{ font-size:clamp(44px,5.8vw,82px); line-height:.98; letter-spacing:0; font-weight:500; }
.visual-center p{ max-width:900px; margin-left:auto; margin-right:auto; }

/* Light Sections: bewusst hell, editorial, nicht zufällig template-artig */
.section:not(.visual-hero):not(.visual-dark-section):not(.visual-system):not(.visual-proof):not(.visual-problems):not(.visual-money-intro),
.section-alt{ background:var(--v3-cream); }
.section-alt{ background:var(--v3-cream-2); }
.pillars-grid{ gap:28px; }
.pillar-card,
.ind-item,
.list-item{
  border-radius:22px;
  border:1px solid rgba(15,27,45,.09);
  background:rgba(255,255,255,.76);
  box-shadow:0 14px 42px rgba(15,27,45,.045);
}
.pillar-card:hover,
.ind-item:hover{ border-color:rgba(201,151,77,.35); box-shadow:0 22px 60px rgba(15,27,45,.075); }
.pillar-card h3{ font-size:26px; line-height:1.15; }
.pillar-card p,
.ind-item p,
.list-item p{ color:var(--v3-muted); font-size:16px; line-height:1.68; }
.pillar-link{ color:var(--v3-text); border-color:var(--v3-text); font-weight:500; }
.pillar-link:hover{ color:var(--v3-gold-deep); border-color:var(--v3-gold-deep); }

/* Alte Zahlenleisten entschärfen: nur noch ruhig, nicht dominant */
.trust-bar{ background:var(--v3-cream-2); padding:34px 0; }
.trust-bar-inner{ gap:20px; }
.trust-item .num{ font-family:var(--v3-font-serif); color:var(--v3-gold-deep); font-size:clamp(22px,2.4vw,34px); }
.trust-item .lbl{ font-size:12.5px; letter-spacing:.03em; }

/* Proof Ribbon als qualitative Trust-Signale */
.authority-ribbon{ background:#07111F; padding:18px 0; border-color:rgba(201,151,77,.14); }
.authority-ribbon span{ color:rgba(255,255,255,.74); border-color:rgba(201,151,77,.18); background:rgba(255,255,255,.72); }

/* Final CTA: Premium, aber nicht zu bunt */
.final-cta{ background:linear-gradient(135deg,#F2F0EA,#FAFAF7); }
.final-cta .h-section{ color:var(--v3-text); }
.final-cta .btn-accent{ background:var(--v3-gold); }
.final-cta .btn-accent:hover{ background:var(--v3-gold-deep); }

/* Spacing und Übergänge */
.section{ padding:108px 0; }
.visual-problems,.visual-system,.visual-proof,.visual-money-intro{ padding:104px 0; }
.section-header{ margin-bottom:54px; }

/* Mobile Polish: keine XXL-Typo-Brüche, keine überladenen Cards */
@media(max-width:980px){
  .visual-hero-grid{ gap:46px; }
  .visual-dashboard{ max-width:680px; }
}
@media(max-width:640px){
  .header-inner{ padding:12px 18px; }
  .visual-hero{ padding:70px 0 58px; }
  .visual-heading{ font-size:clamp(42px,13vw,62px); line-height:.95; letter-spacing:0; }
  .visual-center h2{ font-size:clamp(36px,10vw,48px); line-height:1.03; }
  .h-section{ font-size:clamp(32px,9vw,44px); }
  .body-flow p,.pillar-card p,.ind-item p,.list-item p{ font-size:15.5px; }
  .visual-benefit,.problem-card,.system-card,.proof-card-v2,.money-card{ border-radius:22px; padding:24px; }
  .visual-metric-big strong{ font-size:42px; }
  .visual-hero .btn,.btn{ width:100%; justify-content:center; white-space:normal; text-align:center; }
  .visual-hero-actions,.final-cta-row{ flex-direction:column; align-items:stretch; }
}


/* =========================================================
   HIGH QUALITY SEO POLISH — Consistent Content + Conversion UI
   ========================================================= */
.hero-narrow .container-narrow { max-width: 920px; }
.hero-lead { margin-top: 24px; margin-bottom: 34px; }
.hero-cta-row,
.final-cta-row { margin-top: 0; }

.section-header .lead { margin-top: 18px; }
.body-flow { margin-top: 24px; }
.body-flow a,
.text-link {
  color: var(--v3-gold-deep);
  border-bottom: 1px solid rgba(201,151,77,.42);
}
.body-flow a:hover,
.text-link:hover { color: var(--v3-gold); border-color: var(--v3-gold); }

.list-grid,
.ind-grid,
.pillars-grid,
.diff-grid { align-items: stretch; }
.list-item,
.ind-item,
.pillar-card,
.diff-item {
  min-height: 100%;
}
.list-item {
  padding: 28px;
  border-radius: 22px;
}
.list-item h4,
.ind-item h4 {
  font-family: var(--v3-font-serif);
  font-size: 22px;
  line-height: 1.18;
  color: var(--v3-text);
  margin-bottom: 12px;
}
.list-item .eyebrow,
.ind-item .eyebrow { margin-bottom: 14px; }
.list-item ul,
.ind-item ul,
.quality-list {
  list-style: none;
  padding: 0;
  margin: 18px 0 0;
}
.list-item li,
.ind-item li,
.quality-list li {
  position: relative;
  padding: 7px 0 7px 22px;
  color: var(--v3-muted);
  font-size: 15px;
  line-height: 1.55;
}
.list-item li::before,
.ind-item li::before,
.quality-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 17px;
  width: 10px;
  height: 2px;
  background: var(--v3-gold);
}

.evidence-note {
  margin-top: 20px;
  padding: 18px 20px;
  border: 1px solid rgba(201,151,77,.28);
  border-radius: 16px;
  background: rgba(201,151,77,.08);
  color: var(--v3-muted);
  font-size: 14.5px;
  line-height: 1.62;
}
.evidence-note strong { color: var(--v3-text); }

.trust-panel {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 42px;
  align-items: start;
}
.trust-card {
  padding: 34px;
  border: 1px solid rgba(15,27,45,.09);
  border-radius: 24px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 16px 48px rgba(15,27,45,.05);
}
.trust-card h3 {
  font-family: var(--v3-font-serif);
  font-size: 28px;
  line-height: 1.12;
  margin-bottom: 16px;
}
.trust-card p {
  color: var(--v3-muted);
  font-size: 16px;
  line-height: 1.72;
}

.article-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 38px;
}
.article-card {
  display: flex;
  flex-direction: column;
  padding: 30px;
  border: 1px solid rgba(15,27,45,.09);
  border-radius: 22px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 42px rgba(15,27,45,.045);
}
.article-card h3 {
  font-family: var(--v3-font-serif);
  font-size: 24px;
  line-height: 1.18;
  margin: 12px 0 12px;
}
.article-card p {
  color: var(--v3-muted);
  font-size: 15.5px;
  line-height: 1.68;
}
.article-card .pillar-link { margin-top: auto; padding-top: 22px; border-bottom: 0; }

.audit-disclaimer {
  margin: 22px 0 0;
  padding: 16px 18px;
  border-radius: 14px;
  background: rgba(15,27,45,.045);
  color: var(--v3-muted);
  font-size: 14.5px;
  line-height: 1.6;
}
.audit-results-label {
  display: inline-flex;
  margin-bottom: 20px;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(201,151,77,.12);
  color: var(--v3-gold-deep);
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 700;
}

.audit-hero-trust {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 26px 0 0;
  justify-content: center;
}
.audit-hero-trust span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 13px;
  border: 1px solid rgba(201, 151, 77, .28);
  border-radius: 999px;
  background: rgba(255,255,255,.62);
  color: var(--v3-text);
  font-size: 12.5px;
  line-height: 1.3;
  font-weight: 600;
  letter-spacing: .02em;
  box-shadow: 0 10px 28px rgba(15,27,45,.045);
}
.executive-audit-panel {
  padding: 42px;
  border: 1px solid rgba(15,27,45,.1);
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(255,255,255,.9), rgba(250,247,239,.82));
  box-shadow: var(--shadow-card);
}
.audit-panel-header {
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}
.premium-dashboard {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 36px;
}
.dashboard-card {
  min-height: 236px;
  padding: 24px;
  border: 1px solid rgba(15,27,45,.1);
  border-radius: 22px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 16px 44px rgba(15,27,45,.055);
}
.dashboard-card.priority-high {
  border-color: rgba(201,151,77,.35);
  background: linear-gradient(145deg, rgba(255,255,255,.93), rgba(250,244,230,.9));
}
.dashboard-kicker {
  display: inline-flex;
  margin-bottom: 18px;
  color: var(--v3-gold-deep);
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: .13em;
  text-transform: uppercase;
  font-weight: 800;
}
.dashboard-card h3 {
  font-family: var(--v3-font-serif);
  font-size: 24px;
  line-height: 1.18;
  margin-bottom: 12px;
  color: var(--v3-text);
}
.dashboard-card p {
  color: var(--v3-muted);
  font-size: 15px;
  line-height: 1.65;
}
.partial-result-lock {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
  margin-top: 22px;
  padding: 28px;
  border: 1px solid rgba(201,151,77,.28);
  border-radius: 24px;
  background: var(--v3-navy);
  color: var(--v3-cream);
  box-shadow: 0 22px 66px rgba(15,27,45,.16);
}
.partial-result-lock .eyebrow { color: var(--v3-gold); }
.partial-result-lock h3 {
  font-family: var(--v3-font-serif);
  font-size: 30px;
  line-height: 1.15;
  margin: 6px 0 12px;
  color: var(--v3-cream);
}
.partial-result-lock p {
  color: rgba(250,247,239,.78);
  max-width: 760px;
  line-height: 1.65;
}
.partial-cta {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.partial-cta .btn-ghost {
  color: var(--v3-cream);
  border-color: rgba(250,247,239,.24);
}
.priority-matrix {
  display: grid;
  gap: 8px;
  margin: 22px 0 20px;
  padding: 22px;
  border-radius: 22px;
  border: 1px solid rgba(201,151,77,.28);
  background: rgba(250,244,230,.82);
}
.priority-matrix span {
  color: var(--v3-muted);
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 800;
}
.priority-matrix strong {
  font-family: var(--v3-font-serif);
  color: var(--v3-text);
  font-size: 34px;
  line-height: 1.05;
  font-weight: 500;
}

.money-intro-light {
  background: linear-gradient(135deg, var(--v3-cream-2), var(--v3-cream));
  color: var(--v3-text);
  border-top: 1px solid var(--v3-light-line);
  border-bottom: 1px solid var(--v3-light-line);
  padding: 88px 0;
}
.money-intro-light .money-kicker { color: var(--v3-gold-deep); }
.money-intro-light .money-title {
  color: var(--v3-text);
  font-family: var(--v3-font-serif);
  font-weight: 500;
  letter-spacing: -.035em;
}
.money-intro-light .money-copy { color: var(--v3-muted); }
.money-intro-light .money-card {
  background: rgba(255,255,255,.8);
  border-color: rgba(15,27,45,.09);
  box-shadow: 0 14px 42px rgba(15,27,45,.045);
}
.money-intro-light .money-card h3 { color: var(--v3-text); }
.money-intro-light .money-card p { color: var(--v3-muted); }
.money-intro-light .money-icon {
  color: var(--v3-gold-deep);
  border-color: rgba(201,151,77,.28);
  background: rgba(201,151,77,.08);
}

.money-depth {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 46px;
  align-items: start;
}
.money-depth-list { display: grid; gap: 16px; }
.money-depth-item {
  padding: 22px 24px;
  border: 1px solid rgba(15,27,45,.09);
  border-radius: 20px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 12px 34px rgba(15,27,45,.04);
}
.money-depth-item strong {
  display: block;
  color: var(--v3-text);
  font-family: var(--v3-font-serif);
  font-size: 21px;
  line-height: 1.2;
  margin-bottom: 8px;
}
.money-depth-item span {
  color: var(--v3-muted);
  font-size: 15.5px;
  line-height: 1.64;
}
.signal-checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 30px;
}
.signal-check {
  padding: 18px 20px;
  border-left: 3px solid var(--v3-gold);
  background: rgba(201,151,77,.08);
  border-radius: 0 14px 14px 0;
  color: var(--v3-muted);
  font-size: 15px;
  line-height: 1.58;
}
.signal-check strong { color: var(--v3-text); }
.tier-link-hub .related-links a {
  border-color: rgba(201,151,77,.28);
  background: rgba(201,151,77,.07);
}
.tier-link-hub .related-links a:hover { border-color: var(--v3-gold-deep); }
.priority-money-hub .priority-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.priority-money-hub .priority-card {
  border-color: rgba(201,151,77,.28);
  background: rgba(255,255,255,.86);
}
.priority-money-hub .priority-card .eyebrow { color: var(--v3-gold-deep); }
.priority-money-hub .priority-card h3 { font-size: 25px; }

.strategy-depth {
  background: var(--v3-cream);
  border-top: 1px solid var(--v3-light-line);
}
.strategy-depth-grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 54px;
  align-items: start;
}
.strategy-lead-card {
  position: sticky;
  top: 96px;
  padding: 34px;
  border: 1px solid rgba(15,27,45,.1);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,255,255,.68));
  box-shadow: 0 18px 54px rgba(15,27,45,.055);
}
.strategy-lead-card h2 {
  margin-bottom: 20px;
}
.strategy-lead-card p {
  color: var(--v3-muted);
  font-size: 17px;
  line-height: 1.75;
}
.mechanic-list {
  display: grid;
  gap: 16px;
}
.mechanic-item {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 16px;
  padding: 22px 24px;
  border: 1px solid rgba(15,27,45,.09);
  border-radius: 20px;
  background: rgba(255,255,255,.74);
}
.mechanic-num {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(201,151,77,.12);
  color: var(--v3-gold-deep);
  font-family: var(--v3-font-serif);
  font-size: 16px;
}
.mechanic-item h3 {
  font-family: var(--v3-font-serif);
  font-size: 22px;
  line-height: 1.2;
  margin-bottom: 8px;
}
.mechanic-item p {
  color: var(--v3-muted);
  font-size: 15.5px;
  line-height: 1.68;
}
.market-context {
  background: linear-gradient(135deg, #07111F, #0B1628);
  color: var(--v3-text);
}
.market-context .h-section { color: var(--v3-text); }
.market-context .lead,
.market-context .body-flow p { color: rgba(250,250,247,.72); }
.market-context .eyebrow { color: var(--v3-gold); }
.market-context-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
  margin-top: 42px;
}
.market-card {
  padding: 30px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  background: rgba(255,255,255,.045);
}
.market-card h3 {
  font-size: 24px;
  line-height: 1.18;
  margin-bottom: 14px;
  color: var(--v3-text);
}
.market-card p {
  color: rgba(250,250,247,.68);
  font-size: 15.5px;
  line-height: 1.7;
}
.operations-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 40px;
}
.operation-step {
  padding: 24px;
  border: 1px solid rgba(15,27,45,.09);
  border-radius: 20px;
  background: rgba(255,255,255,.76);
}
.operation-step span {
  display: inline-flex;
  margin-bottom: 18px;
  color: var(--v3-gold-deep);
  font-family: var(--v3-font-serif);
}
.operation-step h3 {
  font-family: var(--v3-font-serif);
  font-size: 21px;
  line-height: 1.2;
  margin-bottom: 10px;
}
.operation-step p {
  color: var(--v3-muted);
  font-size: 15px;
  line-height: 1.62;
}
.business-outcomes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-top: 36px;
}
.outcome-card {
  padding: 26px;
  border-radius: 22px;
  background: rgba(201,151,77,.08);
  border: 1px solid rgba(201,151,77,.24);
}
.outcome-card strong {
  display: block;
  color: var(--v3-text);
  font-family: var(--v3-font-serif);
  font-size: 22px;
  line-height: 1.2;
  margin-bottom: 10px;
}
.outcome-card span {
  color: var(--v3-muted);
  font-size: 15.5px;
  line-height: 1.62;
}

.btn-secondary-label { color: inherit; }
.footer-brand p,
.footer-brand p a { line-height: 1.6; }

@media (max-width: 980px) {
  .trust-panel,
  .money-depth,
  .strategy-depth-grid,
  .market-context-grid,
  .operations-grid,
  .business-outcomes,
  .priority-money-hub .priority-grid,
  .article-grid { grid-template-columns: 1fr; }
  .signal-checks { grid-template-columns: 1fr; }
  .strategy-lead-card { position: static; }
}
@media (max-width: 700px) {
  .list-item,
  .ind-item,
  .pillar-card,
  .article-card,
  .trust-card,
  .strategy-lead-card,
  .mechanic-item,
  .market-card,
  .operation-step,
  .outcome-card,
  .money-depth-item { padding: 24px; border-radius: 20px; }
  .article-card h3,
  .list-item h4,
  .ind-item h4 { font-size: 21px; }
}

/* Final light premium pass */
.visual-hero,
.visual-dark-section,
.visual-system,
.visual-proof,
.visual-problems,
.visual-money-intro,
.market-context,
.authority-ribbon,
.premium-insight,
.trust-bar {
  background: linear-gradient(180deg, var(--v3-cream), var(--v3-cream-2)) !important;
  color: var(--v3-text) !important;
  border-top: 1px solid var(--v3-light-line) !important;
  border-bottom: 1px solid var(--v3-light-line) !important;
}
.visual-hero::before,
.visual-dark-section::before,
.visual-system::before,
.visual-proof::before,
.visual-problems::before,
.visual-money-intro::before,
.market-context::before,
.premium-insight::before { opacity: .18 !important; }
.visual-hero .visual-heading,
.visual-hero .visual-lead,
.visual-hero .visual-pill,
.visual-hero p,
.visual-dark-section h2,
.visual-dark-section h3,
.visual-dark-section p,
.visual-dark-section li,
.visual-system h2,
.visual-system h3,
.visual-system p,
.visual-proof h2,
.visual-proof h3,
.visual-proof p,
.visual-problems h2,
.visual-problems p,
.visual-money-intro h2,
.visual-money-intro h3,
.visual-money-intro p,
.market-context .h-section,
.market-context .lead,
.market-context .body-flow p,
.premium-insight .h-section,
.premium-insight p,
.authority-ribbon span {
  color: var(--v3-text) !important;
}
.visual-hero .eyebrow,
.visual-dark-section .eyebrow,
.visual-system .eyebrow,
.visual-proof .eyebrow,
.visual-problems .eyebrow,
.visual-money-intro .eyebrow,
.market-context .eyebrow,
.premium-insight .eyebrow,
.authority-ribbon span {
  color: var(--v3-gold-deep) !important;
}
.authority-ribbon-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 14px;
}
.authority-ribbon span {
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(201,151,77,.22);
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 12px;
  letter-spacing: .02em;
}
.market-card,
.authority-panel,
.visual-dashboard,
.visual-metric-big,
.visual-flow-row,
.visual-problem-card,
.visual-card,
.proof-card-v2 {
  background: rgba(255,255,255,.78) !important;
  border: 1px solid rgba(15,27,45,.09) !important;
  box-shadow: 0 18px 50px rgba(15,27,45,.055) !important;
  color: var(--v3-text) !important;
}
.market-card h3,
.authority-panel strong,
.visual-problem-card h3,
.visual-card h3,
.proof-card-v2 strong { color: var(--v3-text) !important; }
.market-card p,
.authority-panel span,
.visual-problem-card p,
.visual-card p,
.proof-card-v2 span { color: var(--v3-muted) !important; }
.visual-grad { color: var(--v3-gold-deep) !important; background: none !important; -webkit-text-fill-color: currentColor !important; }

.quality-stack {
  background: var(--v3-cream);
  border-top: 1px solid var(--v3-light-line);
}
.quality-stack-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 34px;
  align-items: stretch;
}
.quality-score-card,
.quality-check-card,
.case-panel,
.blog-article-card {
  padding: 28px;
  border: 1px solid rgba(15,27,45,.09);
  border-radius: 22px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 50px rgba(15,27,45,.052);
}
.quality-score {
  display: flex;
  align-items: baseline;
  gap: 8px;
  color: var(--v3-gold-deep);
  font-family: var(--v3-font-serif);
  font-size: clamp(42px, 6vw, 72px);
  line-height: 1;
}
.quality-score span { font-size: 18px; color: var(--v3-muted); font-family: var(--v3-font-sans); }
.quality-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.quality-check-card strong,
.case-panel h3,
.blog-article-card h2,
.blog-article-card h3 {
  display: block;
  color: var(--v3-text);
  font-family: var(--v3-font-serif);
  font-size: 22px;
  line-height: 1.2;
  margin-bottom: 8px;
}
.quality-check-card span,
.case-panel p,
.blog-article-card p,
.blog-article-card li { color: var(--v3-muted); line-height: 1.7; }
.mini-timeline {
  display: grid;
  gap: 12px;
  margin-top: 18px;
}
.mini-timeline div {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 14px;
  align-items: start;
}
.mini-timeline b {
  color: var(--v3-gold-deep);
  font-family: var(--v3-font-serif);
}
.kpi-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 22px 0;
}
.kpi-card {
  padding: 18px;
  border-radius: 18px;
  border: 1px solid rgba(201,151,77,.22);
  background: rgba(201,151,77,.075);
}
.kpi-card strong { display:block; color:var(--v3-gold-deep); font-family:var(--v3-font-serif); font-size:28px; line-height:1; margin-bottom:8px; }
.kpi-card span { color:var(--v3-muted); font-size:13px; line-height:1.45; }
.blog-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 34px;
  align-items: start;
}
.blog-toc {
  position: sticky;
  top: 96px;
  padding: 22px;
  border-radius: 18px;
  border: 1px solid rgba(15,27,45,.09);
  background: rgba(255,255,255,.78);
}
.blog-toc a { display:block; color:var(--v3-text); margin-top:10px; font-size:14px; }
@media (max-width: 980px) {
  .quality-stack-grid,
  .quality-check-grid,
  .kpi-row,
  .blog-layout { grid-template-columns: 1fr; }
  .blog-toc { position: static; }
}

/* Final brand consistency layer */
body {
  font-family: var(--v3-font-sans);
  color: var(--v3-text);
  background: var(--v3-cream);
}
.h-display,
.visual-heading,
.h-section,
.money-title,
.h-card,
.blog-article-card h2,
.blog-article-card h3,
.case-panel h2,
.case-panel h3 {
  font-family: var(--v3-font-serif) !important;
  color: var(--v3-text) !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}
.h-display,
.visual-heading {
  font-size: clamp(42px, 5.5vw, 74px) !important;
  line-height: 1.04 !important;
}
.h-section,
.visual-center h2,
.money-title {
  font-size: clamp(31px, 3.6vw, 52px) !important;
  line-height: 1.12 !important;
}
.h-card,
.pillar-card h3,
.article-card h3,
.system-card h3,
.problem-card h3,
.visual-benefit h3 {
  font-family: var(--v3-font-serif) !important;
  color: var(--v3-text) !important;
  font-size: clamp(21px, 2vw, 27px) !important;
  line-height: 1.18 !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}
p,
li,
.lead,
.visual-lead,
.hero-lead,
.body-flow p,
.article-card p,
.pillar-card p,
.system-card p,
.problem-card p,
.visual-benefit p {
  color: var(--v3-muted);
  font-family: var(--v3-font-sans);
  letter-spacing: 0;
}
.lead,
.visual-lead,
.hero-lead {
  font-size: clamp(17px, 1.45vw, 21px) !important;
  line-height: 1.65 !important;
  max-width: 780px;
}
.eyebrow,
.visual-pill,
.system-num,
.panel-kicker,
.related-label {
  color: var(--v3-gold-deep) !important;
  font-family: var(--v3-font-sans) !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
}
.accent,
.grad,
.visual-grad {
  color: var(--v3-gold-deep) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
}
.visual-hero,
.visual-system,
.visual-proof,
.visual-problems,
.visual-dark-section,
.visual-money-intro {
  background: linear-gradient(180deg, var(--v3-cream), var(--v3-cream-2)) !important;
}
.visual-hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(340px, .82fr);
  gap: 48px;
}
.visual-dashboard,
.visual-benefit,
.system-card,
.problem-card,
.proof-card-v2,
.visual-card,
.market-card,
.authority-panel,
.quality-score-card,
.quality-check-card,
.case-panel,
.blog-article-card,
.blog-toc,
.kpi-card,
.trust-card,
.money-card,
.outcome-card,
.operation-step,
.mechanic-item,
.article-card,
.pillar-card,
.list-item,
.ind-item {
  background: rgba(255,255,255,.84) !important;
  border: 1px solid rgba(15,27,45,.1) !important;
  box-shadow: 0 16px 44px rgba(15,27,45,.052) !important;
  color: var(--v3-text) !important;
}
.visual-dashboard *,
.visual-benefit *,
.system-card *,
.problem-card *,
.proof-card-v2 *,
.visual-card *,
.market-card *,
.authority-panel *,
.quality-score-card *,
.quality-check-card *,
.case-panel *,
.blog-article-card *,
.blog-toc *,
.kpi-card *,
.trust-card *,
.money-card * {
  color: inherit;
}
.visual-dashboard h3,
.visual-dashboard b,
.visual-dashboard strong,
.visual-benefit h3,
.system-card h3,
.problem-card h3,
.proof-card-v2 strong,
.market-card h3,
.authority-panel strong,
.quality-check-card strong,
.case-panel h3,
.blog-article-card h2,
.blog-article-card h3,
.kpi-card strong,
.trust-card h3,
.money-card h3 {
  color: var(--v3-text) !important;
}
.visual-dashboard span,
.visual-dashboard p,
.visual-benefit p,
.system-card p,
.problem-card p,
.proof-card-v2 span,
.market-card p,
.authority-panel span,
.quality-check-card span,
.case-panel p,
.blog-article-card p,
.blog-article-card li,
.trust-card p,
.money-card p {
  color: var(--v3-muted) !important;
}
.visual-icon,
.visual-benefit-icon,
.money-icon,
.pillar-icon {
  color: var(--v3-gold-deep) !important;
  background: rgba(201,151,77,.1) !important;
  border-color: rgba(201,151,77,.22) !important;
}
.visual-dot,
.visual-status {
  background: var(--v3-gold) !important;
  color: var(--v3-text) !important;
}
.visual-metric-big strong,
.quality-score,
.kpi-card strong {
  color: var(--v3-gold-deep) !important;
}
.btn,
.btn-accent,
.btn-primary,
.btn-ghost {
  font-family: var(--v3-font-sans) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}
.btn-accent,
.btn-primary,
.visual-hero .btn-accent,
.visual-system .btn-accent,
.visual-proof .btn-accent,
.visual-problems .btn-accent {
  background: var(--v3-gold) !important;
  color: var(--v3-text) !important;
  border-color: var(--v3-gold) !important;
  box-shadow: 0 14px 36px rgba(201,151,77,.2) !important;
}
.btn-ghost,
.visual-hero .btn-ghost,
.visual-dark-section .btn-ghost {
  background: rgba(255,255,255,.72) !important;
  color: var(--v3-text) !important;
  border-color: rgba(15,27,45,.14) !important;
}
.blog-article-card {
  max-width: none;
}
.blog-article-card h2 {
  margin-top: 34px;
  margin-bottom: 14px;
  font-size: clamp(26px, 2.6vw, 36px) !important;
}
.blog-article-card > p,
.blog-article-card li {
  font-size: 17px;
}
.blog-article-card ul {
  display: grid;
  gap: 10px;
  padding-left: 20px;
  margin: 16px 0 28px;
}
.blog-toc strong {
  color: var(--v3-text) !important;
}
.footer-note { margin-top: 12px; }
.footer-address { margin-top: 16px; font-size: 13px; }
.footer-address strong { color: var(--text); }
.footer-address a { color: var(--accent-deep); }
.legal-title { font-size: clamp(32px, 4.5vw, 56px) !important; }
.fine-print { margin-top: 40px; font-size: 13px; color: var(--text-muted); }
.newsletter-form {
  display: flex;
  gap: 12px;
  max-width: 480px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.newsletter-input {
  flex: 1;
  min-width: 200px;
}
.newsletter-note {
  margin-top: 24px;
  font-size: 13px;
  color: var(--text-muted);
}
.newsletter-note a,
.contact-line a {
  color: var(--accent-deep);
  border-bottom: 1px solid var(--accent);
}
.contact-note {
  margin-top: 18px;
  font-size: 16.5px;
  color: var(--text-muted);
}
.contact-note.small {
  margin-top: 14px;
  font-size: 16px;
}
.contact-action-row {
  margin-top: 32px;
}
.contact-panel-block {
  margin-top: 64px;
  padding-top: 48px;
  border-top: 1px solid var(--line);
}
.contact-subtitle {
  font-size: 32px !important;
}
.contact-address,
.contact-line {
  font-size: 16px;
  color: var(--text);
}
.contact-address { margin-top: 18px; }
.contact-line { margin-top: 10px; }
.audit-tool-title {
  font-size: 28px !important;
  margin-bottom: 16px;
}
.audit-tool-copy {
  color: var(--text-muted);
  margin-bottom: 24px;
}
.audit-loading-copy {
  margin-top: 16px;
  color: var(--text-muted);
}
.audit-result-copy {
  color: var(--text-muted);
  margin-bottom: 18px;
}

/* 10/10 visual polish */
.visual-benefits,
.problem-grid,
.system-grid,
.proof-grid-v2,
.pillars-grid,
.article-grid,
.quality-check-grid,
.kpi-row {
  align-items: stretch;
}
.visual-benefit,
.problem-card,
.system-card,
.proof-card-v2,
.pillar-card,
.article-card,
.quality-check-card,
.kpi-card,
.market-card,
.trust-card,
.outcome-card,
.operation-step {
  border-radius: 20px !important;
  padding: 26px !important;
}
.visual-benefit,
.problem-card,
.system-card,
.pillar-card,
.article-card {
  display: flex;
  flex-direction: column;
  min-height: 0 !important;
}
.visual-benefit {
  min-height: 220px !important;
}
.problem-card {
  min-height: 250px !important;
}
.system-card {
  min-height: 300px !important;
  padding-top: 26px !important;
}
.visual-benefit h3,
.problem-card h3,
.system-card h3,
.pillar-card h3,
.article-card h3,
.quality-check-card strong,
.market-card h3,
.operation-step h3,
.outcome-card strong {
  font-size: clamp(20px, 1.55vw, 24px) !important;
  line-height: 1.22 !important;
  margin-bottom: 10px !important;
}
.visual-benefit p,
.problem-card p,
.system-card p,
.pillar-card p,
.article-card p,
.quality-check-card span,
.market-card p,
.operation-step p,
.outcome-card span {
  font-size: 15.5px !important;
  line-height: 1.65 !important;
}
.visual-benefit-icon,
.visual-icon,
.money-icon {
  width: 50px !important;
  height: 50px !important;
  border-radius: 16px !important;
  flex: 0 0 auto;
}
.system-card {
  display: grid !important;
  grid-template-rows: auto auto auto 1fr;
  gap: 0;
}
.system-card .visual-icon {
  margin-bottom: 28px !important;
}
.system-num {
  top: 24px !important;
  right: 24px !important;
  width: auto !important;
  min-width: 48px;
  height: 34px !important;
  padding: 0 13px;
  border-radius: 999px !important;
  background: rgba(201,151,77,.13) !important;
  border: 1px solid rgba(201,151,77,.28);
  color: var(--v3-gold-deep) !important;
  font-size: 13px !important;
  line-height: 1;
  letter-spacing: .08em !important;
  z-index: 2;
}
.system-card h3 {
  margin-top: 0 !important;
}
.system-card .sub {
  margin-bottom: 10px !important;
  font-size: 14px !important;
}
.visual-dashboard {
  box-shadow: 0 18px 52px rgba(15,27,45,.07) !important;
}
.visual-metric-big {
  background: rgba(201,151,77,.08) !important;
  border-color: rgba(201,151,77,.22) !important;
}
.visual-metric-big strong {
  font-size: clamp(34px, 3vw, 46px) !important;
  line-height: 1.05 !important;
}
.visual-flow-row {
  border-color: rgba(15,27,45,.08) !important;
  background: rgba(255,255,255,.8) !important;
}
.case-panel .hero-cta-row,
.case-action-row {
  margin-top: 36px !important;
  padding-top: 28px;
  border-top: 1px solid rgba(15,27,45,.08);
}
.case-panel .signal-checks {
  margin-top: 28px;
}
.case-panel .body-flow {
  margin-top: 30px;
}
.case-panel .mini-timeline {
  margin-top: 28px;
}
.blog-article-card {
  padding: clamp(28px, 4vw, 46px) !important;
}
.blog-article-card .quality-check-grid {
  margin: 26px 0 34px;
}
.blog-article-card .related-links {
  margin-top: 18px;
}
.blog-article-card .faq-list {
  margin-top: 22px;
}
.blog-toc {
  box-shadow: 0 14px 38px rgba(15,27,45,.05) !important;
}
.contact-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr);
  gap: 42px;
  align-items: center;
}
.contact-trust-stack {
  display: grid;
  gap: 12px;
}
.contact-trust-card {
  padding: 18px 20px;
  border: 1px solid rgba(15,27,45,.09);
  border-radius: 18px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 14px 34px rgba(15,27,45,.045);
}
.contact-trust-card strong {
  display: block;
  color: var(--v3-text);
  font-family: var(--v3-font-serif);
  font-size: 20px;
  line-height: 1.2;
  margin-bottom: 5px;
}
.contact-trust-card span {
  color: var(--v3-muted);
  font-size: 14.5px;
  line-height: 1.55;
}
.contact-form-card {
  padding: clamp(28px, 4vw, 42px);
  border: 1px solid rgba(15,27,45,.1);
  border-radius: 24px;
  background: rgba(255,255,255,.86);
  box-shadow: 0 22px 60px rgba(15,27,45,.07);
}
.contact-form-card .form-grid {
  max-width: none;
}
.contact-form-card input,
.contact-form-card select,
.contact-form-card textarea,
.newsletter-input {
  border: 1px solid rgba(15,27,45,.12);
  background: #fff;
  border-radius: 14px;
}
.contact-form-card input:focus,
.contact-form-card select:focus,
.contact-form-card textarea:focus,
.newsletter-input:focus {
  outline: none;
  border-color: rgba(201,151,77,.55);
  box-shadow: 0 0 0 4px rgba(201,151,77,.12);
}
.contact-balance-grid {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
  gap: 34px;
  align-items: start;
}
.contact-side-card {
  padding: 28px;
  border: 1px solid rgba(15,27,45,.09);
  border-radius: 22px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 16px 44px rgba(15,27,45,.052);
}
@media (max-width: 980px) {
  .contact-hero-grid,
  .contact-balance-grid { grid-template-columns: 1fr; }
  .visual-benefit,
  .problem-card,
  .system-card { min-height: 0 !important; }
}
@media (max-width: 640px) {
  .system-card .visual-icon { margin-bottom: 22px !important; }
  .system-num { top: 24px !important; right: 22px !important; }
  .case-panel .hero-cta-row { gap: 12px; }
  .case-panel .hero-cta-row .btn { width: 100%; justify-content: center; }
}
@media (max-width: 980px) {
  .visual-hero-grid { grid-template-columns: 1fr; }
}


html,
body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-sans) !important;
  font-weight: var(--weight-body);
  letter-spacing: 0;
}

body,
p,
li,
span,
small,
label,
input,
select,
textarea,
button,
.lead,
.hero-lead,
.visual-lead,
.body-flow,
.body-flow p,
.footer,
.footer p,
.footer li,
.footer a,
.nav,
.nav-links,
.dropdown,
.mobile-menu,
.eyebrow,
.visual-pill,
.panel-kicker,
.related-label,
.audit-results-label,
.money-kicker {
  font-family: var(--font-sans) !important;
}

.h-display,
.hero h1,
.visual-heading,
.h-section,
.section-header h2,
.visual-center h2,
.money-title,
.legal-title,
.case-panel h1,
.case-panel h2,
.case-panel h3,
.blog-article-card h1,
.blog-article-card h2,
.blog-article-card h3,
.h-card,
.pillar-card h3,
.article-card h3,
.list-item h4,
.ind-item h4,
.trust-card h3,
.money-depth-item strong,
.mechanic-item h3,
.operation-step h3,
.outcome-card strong,
.contact-trust-card strong,
.quality-check-card strong,
.quality-score,
.kpi-card strong,
.hero-stat-number,
.stat-number,
.trust-item .num {
  font-family: var(--font-serif) !important;
  font-weight: var(--weight-heading) !important;
  letter-spacing: 0 !important;
  color: var(--text) !important;
}

.h-display,
.hero h1,
.visual-heading {
  font-size: clamp(42px, 5.6vw, 76px) !important;
  line-height: 1.04 !important;
}

.h-section,
.section-header h2,
.visual-center h2,
.money-title {
  font-size: clamp(31px, 3.7vw, 52px) !important;
  line-height: 1.12 !important;
}

h3,
.h-card,
.pillar-card h3,
.article-card h3,
.visual-benefit h3,
.problem-card h3,
.system-card h3,
.market-card h3,
.quality-check-card strong,
.contact-trust-card strong {
  font-weight: var(--weight-heading) !important;
  line-height: 1.2 !important;
}

p,
li,
.lead,
.body-flow p,
.article-card p,
.pillar-card p,
.list-item p,
.ind-item p,
.visual-benefit p,
.problem-card p,
.system-card p,
.market-card p,
.footer-note,
.footer-address,
.contact-trust-card span,
.quality-check-card span {
  color: var(--text-muted) !important;
  font-weight: var(--weight-body) !important;
  line-height: 1.68;
}

strong,
b,
.body-flow strong,
.footer strong {
  font-weight: var(--weight-strong) !important;
  color: var(--text) !important;
}

.eyebrow,
.visual-pill,
.dropdown-section,
.mobile-menu-section,
.related-label,
.panel-kicker,
.audit-results-label,
.money-kicker,
.system-num {
  color: var(--accent-deep) !important;
  font-weight: var(--weight-strong) !important;
  letter-spacing: .11em !important;
}

.accent,
.grad,
.visual-grad,
.visual-heading .grad {
  color: var(--accent-deep) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
}

.header {
  background: rgba(250, 250, 247, .94) !important;
  border-bottom: 1px solid rgba(15, 27, 45, .07) !important;
  box-shadow: none !important;
}

.header-inner {
  min-height: 68px;
}

.logo {
  font-family: var(--font-sans) !important;
  font-weight: var(--weight-strong) !important;
}

.nav-links {
  gap: 26px;
  font-size: 14.5px !important;
  font-weight: var(--weight-ui) !important;
}

.nav-links a,
.dropdown a,
.mobile-menu a,
.footer a {
  color: inherit;
  transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
}

.nav-links a:hover,
.dropdown a:hover,
.mobile-menu a:hover,
.footer a:hover {
  color: var(--accent-deep) !important;
}

.dropdown {
  border-radius: var(--radius-card-sm) !important;
  border-color: rgba(15, 27, 45, .1) !important;
  box-shadow: var(--shadow-card) !important;
}

.btn,
.btn-primary,
.btn-accent,
.btn-ghost,
.btn-link,
button[type="submit"] {
  min-height: 48px;
  border-radius: var(--radius-button) !important;
  font-family: var(--font-sans) !important;
  font-size: 14.5px !important;
  font-weight: var(--weight-strong) !important;
  letter-spacing: 0 !important;
  line-height: 1.15 !important;
  padding: 13px 22px !important;
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease !important;
}

.btn:hover,
button[type="submit"]:hover {
  transform: translateY(-1px);
}

.btn-accent,
.btn-primary,
.visual-hero .btn-accent,
.visual-system .btn-accent,
.visual-proof .btn-accent,
.visual-problems .btn-accent,
.visual-dark-section .btn-accent,
.final-cta .btn-accent {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: var(--text) !important;
  box-shadow: var(--shadow-button) !important;
}

.btn-accent:hover,
.btn-primary:hover,
.visual-hero .btn-accent:hover,
.visual-system .btn-accent:hover,
.visual-proof .btn-accent:hover,
.visual-problems .btn-accent:hover,
.visual-dark-section .btn-accent:hover,
.final-cta .btn-accent:hover {
  background: var(--accent-deep) !important;
  border-color: var(--accent-deep) !important;
  color: #FFFFFF !important;
  box-shadow: 0 14px 34px rgba(168, 120, 56, .24) !important;
}

.btn-ghost,
.visual-hero .btn-ghost,
.visual-dark-section .btn-ghost {
  background: rgba(255, 255, 255, .72) !important;
  border-color: rgba(15, 27, 45, .14) !important;
  color: var(--text) !important;
  box-shadow: none !important;
}

.btn-ghost:hover,
.visual-hero .btn-ghost:hover,
.visual-dark-section .btn-ghost:hover {
  border-color: var(--accent-deep) !important;
  color: var(--accent-deep) !important;
  background: rgba(255, 255, 255, .9) !important;
}

.section,
.visual-hero,
.visual-system,
.visual-proof,
.visual-problems,
.visual-dark-section,
.visual-money-intro,
.money-intro-light,
.strategy-depth,
.quality-stack,
.market-context,
.premium-insight,
.final-cta,
.trust-bar {
  background:
    radial-gradient(circle at 12% 8%, rgba(201, 151, 77, .08), transparent 28%),
    linear-gradient(180deg, var(--bg), var(--bg-deep)) !important;
  color: var(--text) !important;
  border-color: var(--line) !important;
}

.section-alt {
  background: var(--bg-deep) !important;
}

.visual-hero::before,
.visual-system::before,
.visual-proof::before,
.visual-problems::before,
.visual-dark-section::before,
.visual-money-intro::before,
.market-context::before,
.premium-insight::before {
  opacity: .08 !important;
  background-image:
    linear-gradient(rgba(201, 151, 77, .18) 1px, transparent 1px),
    linear-gradient(90deg, rgba(201, 151, 77, .12) 1px, transparent 1px) !important;
}

.hero-visual,
.pillar-card,
.article-card,
.list-item,
.ind-item,
.diff-item,
.visual-dashboard,
.visual-benefit,
.system-card,
.problem-card,
.proof-card-v2,
.visual-card,
.market-card,
.authority-panel,
.quality-score-card,
.quality-check-card,
.case-panel,
.blog-article-card,
.blog-toc,
.kpi-card,
.trust-card,
.money-card,
.money-depth-item,
.outcome-card,
.operation-step,
.mechanic-item,
.strategy-lead-card,
.contact-trust-card,
.contact-form-card,
.contact-side-card,
.audit-tool,
.audit-score,
.audit-issues,
.audit-recos,
.evidence-note,
.signal-check {
  background: rgba(255, 255, 255, .84) !important;
  border: 1px solid rgba(15, 27, 45, .1) !important;
  border-radius: var(--radius-card) !important;
  box-shadow: var(--shadow-card) !important;
  color: var(--text) !important;
}

.pillar-card,
.article-card,
.list-item,
.ind-item,
.visual-benefit,
.system-card,
.problem-card,
.proof-card-v2,
.money-card,
.quality-check-card,
.market-card,
.operation-step,
.outcome-card,
.contact-trust-card,
.related-links a {
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease !important;
}

.pillar-card:hover,
.article-card:hover,
.list-item:hover,
.ind-item:hover,
.visual-benefit:hover,
.system-card:hover,
.problem-card:hover,
.proof-card-v2:hover,
.money-card:hover,
.quality-check-card:hover,
.market-card:hover,
.operation-step:hover,
.outcome-card:hover,
.contact-trust-card:hover,
.related-links a:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(201, 151, 77, .32) !important;
  box-shadow: var(--shadow-card-hover), var(--glow-gold-soft) !important;
}

.visual-icon,
.visual-benefit-icon,
.money-icon,
.pillar-icon,
.mechanic-num,
.system-num {
  background: rgba(201, 151, 77, .1) !important;
  border: 1px solid rgba(201, 151, 77, .24) !important;
  color: var(--accent-deep) !important;
}

.visual-dot,
.audit-bar-fill {
  background: var(--accent) !important;
  box-shadow: 0 0 18px rgba(201, 151, 77, .28) !important;
}

.related-links a,
.pillar-link,
.body-flow a,
.text-link,
.newsletter-note a,
.contact-line a {
  color: var(--accent-deep) !important;
  border-color: rgba(201, 151, 77, .38) !important;
  font-weight: var(--weight-ui) !important;
}

.related-links a {
  background: rgba(255, 255, 255, .8) !important;
  border-radius: var(--radius-button) !important;
  box-shadow: none !important;
}

input,
select,
textarea,
.newsletter-input {
  font-family: var(--font-sans) !important;
  font-weight: var(--weight-body) !important;
  color: var(--text) !important;
  border-radius: var(--radius-card-sm) !important;
  border-color: rgba(15, 27, 45, .14) !important;
}

input:focus,
select:focus,
textarea:focus,
.newsletter-input:focus {
  border-color: rgba(201, 151, 77, .58) !important;
  box-shadow: 0 0 0 4px rgba(201, 151, 77, .12) !important;
}

.footer {
  background: var(--text) !important;
  color: rgba(250, 250, 247, .78) !important;
  border-top: 1px solid rgba(201, 151, 77, .18) !important;
}

.footer .logo,
.footer-col h3,
.footer-col h5,
.footer strong {
  color: #FFFFFF !important;
}

.footer a:hover {
  color: var(--accent-light) !important;
}

.footer-col h3,
.footer-col h5 {
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  font-weight: var(--weight-strong) !important;
  letter-spacing: .1em !important;
}

.footer-note,
.footer-address,
.footer-col a,
.footer-bottom {
  color: rgba(250, 250, 247, .68) !important;
  font-size: 14px;
}

.footer-address a,
.footer-legal a {
  color: rgba(250, 250, 247, .76) !important;
}

.cookie-banner {
  border-radius: var(--radius-card) !important;
  border-color: rgba(15, 27, 45, .1) !important;
  box-shadow: 0 18px 52px rgba(15, 27, 45, .12) !important;
}

@media (max-width: 980px) {
  .header-inner {
    min-height: 62px;
  }

  .mobile-menu {
    background: var(--bg) !important;
  }

  .footer-grid {
    gap: 32px;
  }
}

@media (max-width: 640px) {
  .container,
  .container-narrow {
    padding: 0 20px;
  }

  .section,
  .visual-hero,
  .visual-system,
  .visual-proof,
  .visual-problems,
  .visual-dark-section,
  .visual-money-intro,
  .money-intro-light,
  .strategy-depth,
  .quality-stack,
  .market-context,
  .premium-insight,
  .final-cta {
    padding: 58px 0 !important;
  }

  .h-display,
  .hero h1,
  .visual-heading {
    font-size: clamp(38px, 11vw, 56px) !important;
    line-height: 1.05 !important;
  }

  .h-section,
  .section-header h2,
  .visual-center h2,
  .money-title {
    font-size: clamp(30px, 8.8vw, 42px) !important;
    line-height: 1.12 !important;
  }

  .lead,
  .hero-lead,
  .visual-lead {
    font-size: 16.5px !important;
    line-height: 1.62 !important;
  }

  .btn,
  .btn-primary,
  .btn-accent,
  .btn-ghost,
  button[type="submit"] {
    width: 100%;
    justify-content: center;
    min-height: 50px;
    white-space: normal;
    text-align: center;
  }

  .hero-cta-row,
  .visual-hero-actions,
  .final-cta-row,
  .newsletter-form {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-visual,
  .pillar-card,
  .article-card,
  .list-item,
  .ind-item,
  .visual-dashboard,
  .visual-benefit,
  .system-card,
  .problem-card,
  .proof-card-v2,
  .money-card,
  .quality-score-card,
  .quality-check-card,
  .case-panel,
  .blog-article-card,
  .blog-toc,
  .trust-card,
  .contact-form-card,
  .contact-side-card {
    border-radius: var(--radius-card-sm) !important;
    padding: 24px !important;
  }
}

/* Brand asset integration */
.logo {
  align-items: center !important;
  gap: 0 !important;
  min-width: 0;
}

.brand-logo {
  display: block;
  width: 128px;
  height: 128px;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  flex: 0 0 auto;
}

.header-inner {
  min-height: 144px;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.header .logo {
  min-height: 128px;
}

.nav {
  align-items: center !important;
}

.footer-brand .logo {
  display: inline-flex;
  padding: 6px;
  border-radius: 18px;
  background: rgba(250, 250, 247, .96);
}

.footer-brand .brand-logo {
  width: 86px;
  height: 86px;
}

@media (max-width: 980px) {
  .brand-logo {
    width: 96px;
    height: 96px;
  }

  .header-inner {
    min-height: 112px;
  }

  .header .logo {
    min-height: 96px;
  }
}

@media (max-width: 640px) {
  .brand-logo {
    width: 72px;
    height: 72px;
  }

  .header-inner {
    min-height: 86px;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }

  .header .logo {
    min-height: 72px;
  }

  .footer-brand .brand-logo {
    width: 74px;
    height: 74px;
  }
}

@media (max-width: 900px) {
  .premium-dashboard {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .partial-result-lock {
    grid-template-columns: 1fr;
  }
  .partial-cta {
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  .audit-hero-trust {
    justify-content: flex-start;
  }
  .audit-hero-trust span {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
  .executive-audit-panel {
    padding: 24px;
    border-radius: 22px;
  }
  .premium-dashboard {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .dashboard-card {
    min-height: auto;
    padding: 22px;
  }
  .partial-result-lock {
    padding: 24px;
    border-radius: 22px;
  }
  .partial-result-lock h3 {
    font-size: 25px;
  }
  .partial-cta {
    justify-content: stretch;
  }
  .partial-cta .btn {
    width: 100%;
    justify-content: center;
  }
  .priority-matrix strong {
    font-size: 27px;
  }
}

/* Glossar final QA overrides */
.glossary-page {
  overflow-x: hidden;
}
.glossary-page *,
.glossary-page *::before,
.glossary-page *::after {
  min-width: 0;
}
.glossary-page .container,
.glossary-page .container-narrow {
  width: 100%;
}
.glossary-page p,
.glossary-page h1,
.glossary-page h2,
.glossary-page input,
.glossary-page button {
  overflow-wrap: anywhere;
}
.glossary-hero .h-display {
  font-size: clamp(38px, 5.4vw, 72px) !important;
  line-height: 1.06 !important;
  letter-spacing: 0 !important;
  overflow-wrap: anywhere;
}
.glossary-mobile-break {
  display: none;
}
@media (max-width: 760px) {
  .glossary-page .container,
  .glossary-page .container-narrow {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .glossary-mobile-break {
    display: block;
  }
  .glossary-hero .h-display {
    font-size: clamp(30px, 8.1vw, 36px) !important;
    line-height: 1.1 !important;
  }
  .glossary-hero .lead {
    font-size: 16px;
  }
  .glossary-page .authority-ribbon-inner,
  .glossary-page .glossary-filters {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: calc(100vw - 40px) !important;
    max-width: calc(100vw - 40px) !important;
  }
  .glossary-page .authority-ribbon span,
  .glossary-page .glossary-chip {
    display: flex;
    width: calc(100vw - 40px) !important;
    max-width: calc(100vw - 40px) !important;
    justify-content: center;
    text-align: center;
    white-space: normal;
    line-height: 1.25;
  }
  .glossary-page .lead,
  .glossary-page .ai-block,
  .glossary-page .glossary-toolbar {
    max-width: calc(100vw - 40px) !important;
  }
  .glossary-page .glossary-search {
    max-width: 100% !important;
  }
  .glossary-page .glossary-grid,
  .glossary-page .glossary-card {
    width: calc(100vw - 40px) !important;
    max-width: calc(100vw - 40px) !important;
  }
  .glossary-page .glossary-card p,
  .glossary-page .glossary-card a,
  .glossary-page .ai-block p {
    width: min(250px, calc(100vw - 140px)) !important;
    max-width: min(250px, calc(100vw - 140px)) !important;
    overflow-wrap: anywhere;
    word-break: break-word;
  }
}
