/* Steuer-DNA Hub-Page Styles, shared across all /lp/-Pages */
body { background: var(--dark); }

.lp-hero { padding: 120px 24px 60px; text-align: center; background: linear-gradient(180deg,#0a0a0a 0%,#1a1612 100%); }
.lp-hero h1 { font-family:'Cormorant Garamond',serif; font-size: clamp(2.2rem,5vw,4rem); color: var(--cream); margin-bottom: 24px; line-height:1.15; max-width:880px;margin-left:auto;margin-right:auto; }
.lp-hero h1 em { color: var(--gold-on-dark); font-style: normal; }
.lp-hero p.lead { color:rgba(245,240,232,0.7);max-width:680px;margin:0 auto 32px;font-size:1.15rem; line-height:1.7;}

.lp-section { padding: 60px 24px; max-width: 980px; margin: 0 auto; color: var(--cream); }
.lp-section h2 { font-family:'Cormorant Garamond',serif; font-size: clamp(1.8rem,3.5vw,2.6rem); margin-bottom: 28px; }
.lp-section h3 { font-family:'Cormorant Garamond',serif; font-size: 1.4rem; margin-top: 36px; margin-bottom: 14px; color: var(--gold-on-dark); }
.lp-section p { font-size: 1.05rem; line-height: 1.85; color: rgba(245,240,232,0.85); margin-bottom: 16px; }

.lp-tabelle { width: 100%; border-collapse: collapse; margin: 24px 0; background: rgba(245,240,232,0.04); border-radius: 12px; overflow: hidden; }
.lp-tabelle th, .lp-tabelle td { padding: 14px 18px; text-align: left; border-bottom: 1px solid rgba(245,240,232,0.1); }
.lp-tabelle th { background: rgba(184,150,62,0.15); color: var(--gold-on-dark); font-weight:600; font-family:'Outfit',sans-serif; font-size:0.85rem; text-transform:uppercase; letter-spacing:0.05em; }
.lp-tabelle td { font-family:'Outfit',sans-serif; }

.lp-cta { display: inline-block; padding: 18px 36px; background: var(--gold-on-dark); color: #0a0a0a; text-decoration: none; border-radius: 8px; font-family:'Outfit',sans-serif; font-weight: 600; margin-top: 24px; transition: all 0.2s; }
.lp-cta:hover { background: var(--gold-l); transform: translateY(-2px); }

.lp-faq { background: rgba(245,240,232,0.03); border-radius: 12px; padding: 40px; margin-top: 32px; }
.lp-faq details { border-bottom: 1px solid rgba(245,240,232,0.1); padding: 16px 0; }
.lp-faq details:last-child { border-bottom: none; }
.lp-faq summary { cursor: pointer; font-weight: 600; color: var(--cream); font-family:'Outfit',sans-serif; font-size:1.05rem; padding:8px 0; }
.lp-faq details[open] summary { color: var(--gold-on-dark); }
.lp-faq details p { margin-top: 12px; color: rgba(245,240,232,0.8); padding-left: 16px; }

.info-box { background:rgba(184,150,62,0.1); border-left:4px solid var(--gold-on-dark); padding:24px 28px; margin:32px 0; border-radius:8px; }

.action-list { list-style:none; padding:0; counter-reset: action; }
.action-list li { counter-increment: action; padding:18px 0 18px 56px; border-bottom:1px solid rgba(245,240,232,0.08); position:relative; }
.action-list li::before { content: counter(action); position:absolute; left:0; top:18px; width:36px; height:36px; background:var(--gold-on-dark); color:#0a0a0a; border-radius:50%; display:flex;align-items:center;justify-content:center; font-weight:600; font-family:'Outfit',sans-serif; }
.action-list li strong { color:var(--gold-on-dark); display:block; margin-bottom:4px; font-family:'Outfit',sans-serif; }

.vergleich-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:20px; margin:32px 0; }
.vergleich-card { background:rgba(245,240,232,0.04); border:1px solid rgba(184,150,62,0.2); border-radius:12px; padding:24px 20px; }
.vergleich-card h4 { font-family:'Cormorant Garamond',serif; color:var(--gold-on-dark); font-size:1.3rem; margin-bottom:8px; }
.vergleich-card .renditeline { font-size:2rem; font-weight:600; color:var(--cream); margin:8px 0; font-family:'Outfit',sans-serif; }
.vergleich-card .label { font-size:0.85rem; color:rgba(245,240,232,0.6); }
.vergleich-card.winner { border-color:var(--gold-on-dark); background:linear-gradient(135deg,rgba(201,168,76,0.12),rgba(201,168,76,0.04)); }
.winner-badge { display:inline-block; background:var(--gold-on-dark); color:#0a0a0a; padding:3px 10px; border-radius:4px; font-size:0.7rem; font-weight:600; text-transform:uppercase; letter-spacing:0.05em; margin-bottom:8px;}

.persona-banner { background:linear-gradient(135deg,rgba(201,168,76,0.15),rgba(20,18,16,0.95)); padding:32px; border-radius:16px; margin:32px 0; border:1px solid rgba(201,168,76,0.3); }
.persona-banner h3 { color:var(--gold-on-dark); font-family:'Cormorant Garamond',serif; font-size:1.5rem; margin-bottom:14px; }
.persona-banner .stat-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:16px; margin-top:20px; }
.persona-banner .stat-block { text-align:center; padding:16px 12px; background:rgba(245,240,232,0.04); border-radius:10px; }
.persona-banner .stat-block .num { font-size:1.8rem; color:var(--gold-on-dark); font-weight:600; font-family:'Outfit',sans-serif; }
.persona-banner .stat-block .lbl { font-size:0.78rem; color:rgba(245,240,232,0.6); margin-top:4px; text-transform:uppercase; letter-spacing:0.05em; }

/* lp-grid + lp-card — für Hub-Pages mit Bundesland-Cards */
.lp-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px,1fr)); gap: 20px; padding: 60px 24px; max-width: 1200px; margin: 0 auto; }
.lp-card { background: rgba(245,240,232,0.04); border: 1px solid rgba(245,240,232,0.1); border-radius: 12px; padding: 32px 24px; transition: all 0.2s; text-decoration: none; color: inherit; }
.lp-card:hover { background: rgba(184,150,62,0.08); border-color: var(--gold-on-dark); transform: translateY(-4px); }
.lp-card .name { font-family:'Cormorant Garamond',serif; font-size: 1.8rem; color: var(--cream); margin-bottom: 12px; }
.lp-card .satz { font-family:'Outfit',sans-serif; font-size: 2.5rem; color: var(--gold-on-dark); font-weight: 700; }
.lp-card .label { font-size: 0.85rem; color: rgba(245,240,232,0.55); margin-top: 8px; }

/* lp-breadcrumb auf dunklem Hintergrund */
.lp-breadcrumb { padding: 24px; max-width: 980px; margin: 80px auto 0; font-family:'Outfit',sans-serif; font-size:0.85rem; color: rgba(245,240,232,0.5); }
.lp-breadcrumb a { color: rgba(245,240,232,0.7); text-decoration: none; }
.lp-breadcrumb a:hover { color: var(--gold-on-dark); }

/* lp-hero satz-big (Bundesland-Subpage Großzahl) */
.lp-hero .satz-big { font-size: clamp(4rem,12vw,7rem); color: var(--gold-on-dark); font-weight: 700; line-height:1; margin: 32px 0 16px; font-family:'Outfit',sans-serif; }
.lp-hero .satz-label { color: rgba(245,240,232,0.7); font-size: 1.1rem; }
