/* PKV Premiumberatung, gemeinsames Stylesheet aller Seiten. Stand Oktober 2026.
   Startseite zusaetzlich: /assets/home.css. Schriften selbst gehostet, keine Verbindung zu Google. */
@font-face{font-family:'Instrument Serif';src:url('/assets/fonts/instrument-serif-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url('/assets/fonts/instrument-serif-latin-400-italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Manrope';src:url('/assets/fonts/manrope-latin-wght-normal.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}

:root{--ivory:#F6F2EA;--ivory2:#EFE8DA;--white:#FFFFFF;--navy:#0E1A2E;--navy2:#16243C;--ink:#1A2233;--ink2:#4D5566;--ink3:#7C8392;--gold:#A9823A;--gold-l:#C9A45C;--gold2:#E3C88F;--line:#E2D8C6;--line-d:rgba(201,164,92,.28);
 --serif:'Instrument Serif',Georgia,'Times New Roman',serif;--sans:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--white);color:var(--ink2);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold)}
strong{color:var(--ink);font-weight:700}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
h1,h2{overflow-wrap:break-word;hyphens:manual}

/* ---------- Navigation ---------- */
nav.site-nav{position:sticky;top:0;z-index:100;background:rgba(246,242,234,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
nav.site-nav .nav-inner{max-width:1200px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;height:78px;gap:24px}
.logo{text-decoration:none;font-family:var(--serif);font-size:1.6rem;color:var(--navy);white-space:nowrap;line-height:1}
.logo-accent{color:var(--gold);font-style:italic}
.nav-links{display:flex;gap:34px;list-style:none}
.nav-links a{text-decoration:none;font-size:.88rem;color:var(--ink2)}
.nav-links a:hover{color:var(--navy)}
.nav-phone{display:flex;gap:10px;align-items:center;text-decoration:none;font-size:.88rem;font-weight:600;color:var(--ivory);background:var(--navy);padding:11px 20px;border-radius:40px;white-space:nowrap}
.nav-phone svg{width:15px;height:15px}
.nav-phone:hover{background:var(--navy2)}

/* ---------- Buttons ---------- */
.btn-primary,.btn-aurora{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--navy);color:var(--ivory);text-decoration:none;padding:17px 32px;font-size:.95rem;font-weight:700;border:none;border-radius:40px;cursor:pointer;font-family:inherit;box-shadow:0 14px 30px -14px rgba(14,26,46,.55);transition:transform .25s,background .25s}
.btn-primary:hover{transform:translateY(-2px);background:var(--navy2)}
.btn-aurora{background:linear-gradient(180deg,#D8B670,#B89048);color:var(--navy);box-shadow:0 10px 30px -10px rgba(201,164,92,.6)}
.btn-aurora:hover{transform:translateY(-2px)}
.btn-ghost{display:inline-flex;align-items:center;gap:10px;color:var(--navy);text-decoration:none;font-weight:600;padding:17px 28px;border:1px solid var(--line);border-radius:40px;background:rgba(255,255,255,.55)}

/* ---------- Gemeinsame Bausteine ---------- */
.kicker{display:block;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:22px}

/* ---------- Themenseiten ---------- */
.inner{max-width:780px;margin:0 auto;padding:0 24px}
.inner-wide{max-width:1200px;margin:0 auto;padding:0 32px}
.article-header{background:radial-gradient(900px 500px at 85% 0%,#FFFFFF 0%,transparent 60%),var(--ivory);border-bottom:1px solid var(--line);padding:88px 0 64px}
.article-header h1{font-family:var(--serif);font-weight:400;color:var(--navy);font-size:clamp(2.3rem,5vw,3.7rem);line-height:1.06;letter-spacing:-.005em;margin-bottom:22px}
.article-lead{font-size:1.15rem;line-height:1.7;color:var(--ink2);margin-bottom:0}
.article-header .stand{margin-top:26px}
.stand{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);background:var(--white);border:1px solid var(--line);border-radius:30px;padding:7px 14px}
.breadcrumb{font-size:.85rem;color:var(--ink3);margin-bottom:22px}
.breadcrumb a{color:var(--ink3);text-decoration:none}.breadcrumb a:hover{color:var(--gold)}
.article-meta{display:flex;gap:22px;flex-wrap:wrap;font-size:.85rem;color:var(--ink3)}
article{padding:72px 0 88px;background:var(--white)}
article h2,.faq-section h2,.stimme-section h2,.quellen h2,.abschluss h2,.content h2{font-family:var(--serif);font-weight:400;color:var(--navy);font-size:clamp(1.9rem,3.6vw,2.5rem);line-height:1.12;letter-spacing:-.005em;margin:64px 0 18px}
article h2:first-child,article .inner>h2:first-child,article h2:first-of-type{margin-top:0}
article h3,.content h3{font-family:var(--sans);font-size:1.15rem;font-weight:700;color:var(--navy);margin:36px 0 10px;letter-spacing:-.01em}
article p,.content p{margin-bottom:18px}
article ul,article ol,.content ul,.content ol{margin:0 0 24px 1.3rem}
article li,.content li{margin-bottom:10px;padding-left:4px}
article li::marker{color:var(--gold-l)}
article a,.content a,.faq-answer a,.quellen a{color:var(--gold);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.antwort{font-size:1.1rem;color:var(--navy);font-weight:600;line-height:1.6;padding-left:18px;border-left:2px solid var(--gold-l)}
.info-box{background:var(--ivory);border:1px solid var(--line);border-left:3px solid var(--gold-l);border-radius:4px 8px 8px 4px;padding:24px 28px;margin:30px 0}
.info-box p:last-child{margin-bottom:0}
.norm-zitat{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:26px 30px;margin:30px 0;font-size:.97rem}
.norm-zitat p{font-family:var(--serif);font-style:italic;font-size:1.2rem;color:var(--ink);line-height:1.5}
.norm-zitat p:last-child{margin-bottom:0}
.norm-zitat .norm-quelle{font-family:var(--sans);font-style:normal;font-size:.82rem;color:var(--ink3);margin-top:12px}
.table-scroll{overflow-x:auto;margin:30px 0;-webkit-overflow-scrolling:touch}
.data-table{width:100%;border-collapse:collapse;font-size:.92rem}
.table-scroll .data-table{min-width:540px}
article table:not(.data-table),.content table{width:100%;border-collapse:collapse;font-size:.92rem;margin:24px 0}
article table:not(.data-table) th,.content table th{text-align:left;background:var(--navy);color:var(--ivory);font-weight:600;font-size:.82rem;padding:11px 13px}
article table:not(.data-table) td,.content table td{padding:11px 13px;border-bottom:1px solid var(--line);vertical-align:top}
.data-table caption{caption-side:top;text-align:left;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);padding-bottom:12px}
.data-table th{text-align:left;background:var(--navy);color:var(--ivory);font-weight:600;font-size:.82rem;padding:12px 14px}
.data-table th:first-child{border-radius:6px 0 0 0}.data-table th:last-child{border-radius:0 6px 0 0}
.data-table td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.data-table tr:nth-child(even) td{background:#FBF9F4}
.data-table td:first-child{color:var(--navy);font-weight:600}
.data-table .norm{font-size:.84rem;color:var(--ink3)}
.table-hinweis{font-size:.86rem;color:var(--ink3);margin:-14px 0 30px}
.scroll-hint{display:none;font-size:.82rem;color:var(--ink3);margin:-8px 0 20px}
.diagramm{margin:40px 0}.diagramm svg{width:100%;height:auto;display:block}
.diagramm figcaption{font-size:.86rem;color:var(--ink3);margin-top:12px}
.comparison{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}
.comparison-card{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:28px}
.comparison-card h3{margin-top:0}
.comparison-card.highlight{border-color:var(--gold-l);background:#FBF7EE}
.comparison-card ul{margin:10px 0 0 1.2rem}.comparison-card li{font-size:.95rem}
.abschluss{padding:64px 0 0}
.faq-section{background:var(--ivory);padding:100px 0;border-top:1px solid var(--line)}
.faq-section h2{margin:0 0 36px}
.faq-item{background:var(--white);border:1px solid var(--line);border-radius:8px;margin-bottom:12px;overflow:hidden;transition:box-shadow .25s}
.faq-item.active{box-shadow:0 24px 50px -36px rgba(14,26,46,.45)}
.faq-question{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 26px;cursor:pointer;background:var(--white);border:none;width:100%;font-family:var(--sans);font-size:1rem;font-weight:700;color:var(--navy);text-align:left}
.faq-question:hover{color:var(--gold)}
.faq-toggle{flex-shrink:0;width:28px;height:28px;border-radius:50%;border:1px solid var(--gold-l);color:var(--gold);display:grid;place-items:center;transition:transform .3s}
.faq-toggle svg{width:12px;height:12px;display:block}
.faq-item.active .faq-toggle{transform:rotate(45deg);background:var(--navy);border-color:var(--navy);color:var(--gold2)}
.faq-answer{display:none;padding:0 26px 26px;font-size:.97rem}
.faq-item.active .faq-answer{display:block}
.stimme-section{padding:88px 0 0;background:var(--white)}
.stimme-section>.inner>h2{margin-top:0}
.stimme-box{background:var(--ivory);border:1px solid var(--line);border-radius:8px;padding:34px 36px;margin:0 0 16px}
.stimme-box blockquote{font-family:var(--serif);font-style:italic;font-size:1.45rem;line-height:1.4;color:var(--navy);margin:0 0 18px}
.stimme-quelle{font-size:.88rem;color:var(--ink3)}
.stimme-quelle strong{color:var(--navy)}
.stimme-bilanz{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px;padding-top:20px;border-top:1px solid var(--line);font-size:.88rem;color:var(--ink2)}
.stimme-sterne{display:inline-flex;gap:3px;color:var(--gold-l);flex-shrink:0}
.stimme-sterne svg{width:15px;height:15px;fill:currentColor;display:block}
.quellen{background:var(--ivory);border-top:1px solid var(--line);padding:88px 0}
.quellen h2{margin-top:0}
.quellen ul{list-style:none;margin-left:0;font-size:.9rem}
.quellen li{padding-left:16px;border-left:2px solid var(--gold-l);margin-bottom:14px}
.cta-section{background:radial-gradient(800px 500px at 20% 20%,#1D2E4C 0%,transparent 60%),var(--navy);color:#AEB6C4;padding:110px 0;text-align:center}
.cta-section h2{font-family:var(--serif);font-weight:400;color:var(--ivory);font-size:clamp(2.1rem,4vw,3.2rem);line-height:1.1;margin:0 0 16px}
.cta-section p{max-width:600px;margin:0 auto 32px;color:#AEB6C4}
.cta-secondary,.cta-section p.cta-secondary{margin-top:36px;font-size:.88rem;line-height:2}
.cta-section .cta-secondary+.cta-secondary{margin-top:6px}
.cta-section .cta-secondary a{color:#C9CFD9;text-decoration:underline;text-underline-offset:3px}

/* ---------- Rechtliche Seiten ---------- */
.page-hero{background:radial-gradient(900px 500px at 85% 0%,#FFFFFF 0%,transparent 60%),var(--ivory);border-bottom:1px solid var(--line);padding:84px 24px 56px}
.page-hero>*{max-width:780px;margin-left:auto;margin-right:auto}
.page-hero h1{font-family:var(--serif);font-weight:400;color:var(--navy);font-size:clamp(2.3rem,5vw,3.4rem);line-height:1.08;margin-bottom:12px}
.page-hero p{color:var(--ink3)}
.content{max-width:780px;margin:0 auto;padding:64px 24px 96px}
.content h2{font-size:1.9rem;margin:48px 0 14px}
.content h2:first-child{margin-top:0}
.highlight{background:var(--ivory);border-left:3px solid var(--gold-l);padding:20px 24px;border-radius:4px;margin:24px 0}

/* ---------- Danke-Seite ---------- */
.wrap{min-height:calc(100vh - 78px);display:grid;place-items:center;padding:72px 24px;background:radial-gradient(900px 600px at 80% 10%,#FFFFFF 0%,transparent 60%),var(--ivory)}
.card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:56px 48px;max-width:580px;text-align:center;box-shadow:0 40px 80px -50px rgba(14,26,46,.45)}
.card .icon{width:64px;height:64px;border-radius:50%;background:var(--navy);color:var(--gold2);display:grid;place-items:center;margin:0 auto 26px}
.card .icon svg{width:28px;height:28px}
.card h1{font-family:var(--serif);font-weight:400;color:var(--navy);font-size:2.4rem;line-height:1.1;margin-bottom:18px}
.card p{margin-bottom:12px}
.actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.actions .btn{display:inline-flex;background:var(--navy);color:var(--ivory);text-decoration:none;padding:15px 28px;border-radius:40px;font-weight:700}
.actions .btn-outline{display:inline-flex;color:var(--navy);text-decoration:none;padding:15px 28px;border-radius:40px;font-weight:600;border:1px solid var(--line)}

/* ---------- Fusszeile ---------- */
footer.site-footer{background:#0A1322;color:#8F98A8;padding:88px 0 44px;font-size:.9rem}
footer.site-footer .foot-inner{max-width:1200px;margin:0 auto;padding:0 32px}
footer.site-footer .logo{color:var(--ivory)}
.foot-grid{display:grid;grid-template-columns:1.3fr 1.2fr .8fr;gap:64px}
.foot-desc{margin:18px 0 22px;max-width:320px}
.foot-contact a{color:var(--gold2);text-decoration:none}
.foot-col h4{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-l);margin-bottom:20px}
.foot-themen{columns:2;column-gap:28px}
.foot-col a,.footer-link-cookies{display:block;text-decoration:none;color:#B7BFCC;margin-bottom:10px;background:none;border:none;font:inherit;cursor:pointer;padding:0;text-align:left;break-inside:avoid}
.foot-col a:hover,.footer-link-cookies:hover{color:#fff}
.foot-legal{margin-top:64px;padding-top:26px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:48px;font-size:.78rem;line-height:1.65}
.foot-legal p:first-child{max-width:660px}
.foot-copy{white-space:nowrap}

/* ---------- Responsiv ---------- */
@media(max-width:960px){
 .nav-links{display:none}
 .foot-grid{grid-template-columns:1fr 1fr;gap:48px}.foot-brand{grid-column:1/-1}
 .foot-legal{flex-direction:column;gap:12px}
}
@media(max-width:640px){
 body{font-size:16px}
 nav.site-nav .nav-inner{height:64px;padding:0 20px}
 .logo{font-size:1.4rem}
 .nav-phone span{display:none}.nav-phone{padding:11px}
 .inner{padding:0 20px}.inner-wide{padding:0 20px}
 .article-header{padding:56px 0 44px}
 .article-header h1{font-size:2.15rem}
 article{padding:48px 0 64px}
 article h2,.faq-section h2,.stimme-section h2,.quellen h2,.abschluss h2,.content h2{font-size:1.8rem;margin-top:48px}
 .faq-section,.cta-section,.quellen{padding:72px 0}
 .faq-question{padding:18px 18px}.faq-answer{padding:0 18px 20px}
 .stimme-box{padding:26px 22px}.stimme-box blockquote{font-size:1.25rem}
 .scroll-hint{display:block}
 article table,.content table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
 .table-scroll table{display:table}
 .comparison{grid-template-columns:1fr}
 .page-hero{padding:56px 20px 40px}.content{padding:44px 20px 72px}
 .card{padding:40px 24px}.card h1{font-size:2rem}
 footer.site-footer{padding:64px 0 36px}footer.site-footer .foot-inner{padding:0 20px}
 .foot-grid{grid-template-columns:1fr}.foot-themen{columns:1}
 .foot-copy{white-space:normal}
}

/* ---------- Fassung 3: dunkler Kopf (Navigation und Seitenkopf Nachtblau, Inhalt hell) ---------- */
nav.site-nav{background:rgba(10,19,34,.94);border-bottom:1px solid rgba(201,164,92,.22)}
nav.site-nav .logo{color:var(--ivory)}
nav.site-nav .logo-accent{color:var(--gold-l)}
nav.site-nav .nav-links a{color:#B7BFCC}
nav.site-nav .nav-links a:hover{color:var(--ivory)}
nav.site-nav .nav-phone{background:transparent;color:var(--gold2);border:1px solid rgba(201,164,92,.45)}
nav.site-nav .nav-phone:hover{background:rgba(201,164,92,.12)}
.article-header,.page-hero{background:radial-gradient(900px 520px at 85% 0%,#22365A 0%,transparent 62%),var(--navy);border-bottom:1px solid rgba(201,164,92,.25)}
.article-header h1,.page-hero h1{color:var(--ivory)}
.article-header .kicker{color:var(--gold-l)}
.article-lead{color:#C3CAD6}
.page-hero p,.article-meta,.breadcrumb,.breadcrumb a{color:#9AA4B5}
.breadcrumb a:hover{color:var(--gold2)}
.stand{background:transparent;color:var(--gold2);border-color:rgba(201,164,92,.45)}
article .stand,.content .stand{background:var(--white);color:var(--navy);border-color:var(--line)}
.wrap{background:radial-gradient(900px 600px at 80% 10%,#22365A 0%,transparent 60%),var(--navy)}
.card{border-color:transparent;box-shadow:0 50px 100px -40px rgba(0,0,0,.6)}
