/* ==========================================================
   Nico Braband – Stylesheet für Regional- & Ratgeberseiten
   Abgeleitet vom Design der Startseite (index.html)
   ========================================================== */
:root{--bg-dark:#0d0d0d;--bg-light:#f7f7f7;--accent:#ffffff;--muted:#b3b3b3;}
*{scroll-behavior:smooth}
html{overflow-x:hidden}
body{background:var(--bg-dark);color:var(--accent);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden;max-width:100%}
img{max-width:100%;height:auto;display:block}
a{color:inherit}

/* NAVBAR */
.navbar{background:rgba(0,0,0,.85);backdrop-filter:blur(10px);padding:.7rem 0;box-shadow:0 6px 25px rgba(0,0,0,.5)}
.navbar-brand{font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:.9rem;line-height:1.1}
.navbar-brand span{display:block}
.brand-main{font-size:.95rem}
.brand-sub{font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.navbar-nav .nav-link{text-transform:uppercase;font-size:.78rem;letter-spacing:.16em;padding:.4rem .8rem}
.navbar-nav .nav-link.active{text-decoration:underline;text-decoration-thickness:2px}
@media (max-width:991.98px){.navbar-nav .nav-link{font-size:.95rem;padding:.6rem 0}}

/* HERO (kompakter als Startseite) */
/* Ab 992px: Text liegt im Bild. Darunter: Bild oben, Text darunter (siehe unten). */
.hero{position:relative;min-height:62vh;color:var(--accent);display:flex;align-items:flex-end;padding:130px 0 clamp(2.2rem,6vh,3.8rem);overflow:hidden}
.hero-media{position:absolute;inset:0;overflow:hidden}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 26%;transform:scale(1.04)}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;transform:scale(1.05)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.66) 30%,rgba(0,0,0,.3) 60%,rgba(0,0,0,.5) 100%)}
@media(min-width:992px){.hero-overlay{background:linear-gradient(to right,rgba(0,0,0,.84) 0%,rgba(0,0,0,.55) 46%,rgba(0,0,0,.12) 78%),linear-gradient(to top,rgba(0,0,0,.6),rgba(0,0,0,0) 46%)}}
.hero-content{position:relative;z-index:2}
.hero-eyebrow{display:flex;align-items:center;gap:.7rem;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:#d8d8d8}
.hero-eyebrow::before{content:"";flex:0 0 26px;height:1px;background:currentColor;opacity:.55}
@media(max-width:520px){.hero-eyebrow{font-size:.63rem;letter-spacing:.14em;gap:.5rem}.hero-eyebrow::before{flex-basis:16px}}
.hero-title{font-size:clamp(1.55rem,5.5vw,3.1rem);font-weight:800;letter-spacing:.03em;text-transform:uppercase;overflow-wrap:normal;hyphens:auto;-webkit-hyphens:auto;line-height:1.12}
.hero-subtitle{font-size:1.08rem;color:#e5e5e5;max-width:40rem}
.hero-meta{font-size:.85rem;color:var(--muted);margin-top:1rem}

/* ------------------------------------------------------------------
   Bis 991px: Bild als Banner oben, Text darunter auf dunklem Grund.
   Kein Text mehr über dem Foto – dadurch volle Breite und keine Enge.
   ------------------------------------------------------------------ */
@media (max-width:991.98px){
  .hero{display:block;min-height:0;padding:74px 0 0;background:var(--bg-dark)}
  .hero-media{position:relative;inset:auto;height:clamp(190px,32vh,290px)}
  .hero-media img{transform:none;object-position:center 26%}
  .hero-overlay{position:absolute;top:0;left:0;right:0;bottom:auto;height:130px;
    background:linear-gradient(to bottom,rgba(0,0,0,.8) 0%,rgba(0,0,0,.35) 55%,rgba(0,0,0,0) 100%)}
  .hero-content{padding-top:1.5rem;padding-bottom:2.5rem}
  .crumbs{margin-bottom:.9rem}
  .hero-title{font-size:clamp(1.55rem,6.8vw,2.25rem);line-height:1.14;letter-spacing:.02em;margin-bottom:.8rem!important}
  .hero-subtitle{font-size:1rem;line-height:1.6;color:#dcdcdc}
  .hero-meta{margin-top:.9rem}
  .hero-actions{margin-top:1.4rem}
}

/* Schmale Displays: Markenschriftzug und Menüknopf stehen untereinander */
@media (max-width:430px){
  .hero{padding-top:108px}
}
.btn-ghost,.btn-solid{border-radius:999px;padding:.78rem 1.7rem;font-size:.8rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;line-height:1.2}
.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.7rem}
.hero-actions .btn-solid,.hero-actions .btn-ghost{flex:1 1 100%}
@media(min-width:480px){.hero-actions .btn-solid,.hero-actions .btn-ghost{flex:0 0 auto}}
.btn-solid{background:#fff;color:#000;border:1px solid #fff}
.btn-solid:hover{background:transparent;color:#fff}
.btn-ghost{border:1px solid rgba(255,255,255,.75);color:#fff;background:rgba(0,0,0,.25)}
.btn-ghost:hover{background:#fff;color:#000}

/* BREADCRUMB */
.crumbs{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}
.crumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.4rem}
.crumbs li+li::before{content:"›";margin-right:.4rem;opacity:.6}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:#fff}

/* SECTIONS */
section{padding:80px 0;position:relative}
.section-title{text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;color:var(--muted);margin-bottom:.5rem}
.section-heading{font-size:1.8rem;font-weight:700;margin-bottom:1.2rem;position:relative}
.section-heading::after{content:"";display:block;width:54px;height:3px;background:currentColor;opacity:.35;margin-top:.7rem;border-radius:2px}
.section-intro{color:var(--muted);max-width:44rem}
.section-light{background:var(--bg-light);color:#111}
.section-light .section-title{color:#777}
.section-light .section-intro{color:#555}
.section-light p{color:#333}
.prose p{font-size:1rem;line-height:1.7;max-width:46rem}
.prose h2{font-size:1.45rem;font-weight:700;margin-top:2.2rem;margin-bottom:.8rem}
.prose h3{font-size:1.1rem;font-weight:600;margin-top:1.6rem;margin-bottom:.6rem;text-transform:uppercase;letter-spacing:.08em}
.prose ul,.prose ol{max-width:46rem;line-height:1.7}
.prose li{margin-bottom:.35rem}
.prose strong{font-weight:600}
.lead-big{font-size:1.12rem;line-height:1.7;max-width:46rem}

/* CARDS */
.feature-card{border-radius:1.1rem;border:1px solid rgba(255,255,255,.08);background:#181818;padding:1.4rem 1.5rem;height:100%;color:#f5f5f5;transition:transform .25s ease,border-color .25s ease}
.feature-card:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.25)}
.section-light .feature-card{background:#fff;border-color:#e3e3e3;color:#111}
.section-light .feature-card:hover{border-color:#cfcfcf}
.feature-card h3{font-size:1rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600;margin-bottom:.6rem}
.feature-card p{font-size:.93rem;color:var(--muted);margin-bottom:0}
.section-light .feature-card p{color:#555}
.feature-tag{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.pill-label{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;border:1px solid rgba(0,0,0,.1);padding:.26rem .8rem;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:#666;background:#fff;text-decoration:none}
a.pill-label:hover{border-color:#111;color:#111}
.pill-label.dark{border-color:rgba(255,255,255,.2);background:#181818;color:#ccc}
a.pill-label.dark:hover{border-color:#fff;color:#fff}
.btn-dark-pill{border-radius:999px;padding:.7rem 1.8rem;font-size:.85rem;letter-spacing:.15em;text-transform:uppercase;background:#111;color:#fff;border:1px solid #111;text-decoration:none;display:inline-block}
.btn-dark-pill:hover{background:transparent;color:#111}
.no-trial-box{border-radius:1.1rem;border:1px solid #e0e0e0;background:#fff;padding:1.8rem 1.9rem}
.no-trial-title{text-transform:uppercase;letter-spacing:.16em;font-size:.8rem;color:#999;margin-bottom:.6rem}
.no-trial-box h3{font-size:1.2rem;margin-bottom:.7rem}
.no-trial-text{font-size:.94rem;color:#555;margin-bottom:.5rem}
.cond-tile{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid #e6e6e6;border-radius:14px;background:#fff;height:100%}
.cond-ic{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#111;color:#fff;flex:0 0 38px}
.cond-h{font-weight:600;font-size:.95rem;color:#111}
.cond-p{font-size:.86rem;color:#555}

/* ANFAHRT-TABELLE */
.drive-table{width:100%;border-collapse:collapse;font-size:.93rem;background:#fff;border-radius:1rem;overflow:hidden;border:1px solid #e3e3e3}
.drive-table th,.drive-table td{padding:.7rem 1rem;text-align:left;border-bottom:1px solid #eee;color:#222}
.drive-table th{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#777;background:#fafafa}
.drive-table tr:last-child td{border-bottom:0}
.drive-note{font-size:.8rem;color:#777;margin-top:.6rem}
.table-wrap{overflow-x:auto}

/* FAQ */
.faq-item{border:1px solid #e3e3e3;background:#fff;border-radius:1rem;padding:1.2rem 1.4rem;margin-bottom:.9rem}
.faq-item h3{font-size:1.02rem;font-weight:600;margin-bottom:.5rem;color:#111}
.faq-item p{font-size:.94rem;color:#555;margin-bottom:0;line-height:1.65}
.section-dark .faq-item{background:#181818;border-color:rgba(255,255,255,.08)}
.section-dark .faq-item h3{color:#fff}
.section-dark .faq-item p{color:var(--muted)}

/* PARALLAX-/ZITAT-BAND */
.parallax-band{padding:70px 0;background:linear-gradient(135deg,#111 0%,#1c1c1c 100%);border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}
.parallax-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;color:var(--muted);margin-bottom:.6rem}
.parallax-heading{font-size:1.6rem;font-weight:700;margin-bottom:.8rem}
.parallax-text{color:#d5d5d5;max-width:44rem;line-height:1.7}

/* LINK-GRIDS (Regionen / Ratgeber) */
.link-card{display:block;border-radius:1rem;border:1px solid rgba(255,255,255,.1);background:#161616;padding:1.1rem 1.2rem;color:#f5f5f5;text-decoration:none;height:100%;transition:border-color .25s ease,transform .25s ease}
.link-card:hover{border-color:#fff;transform:translateY(-2px);color:#fff}
.link-card .lc-tag{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.link-card .lc-title{font-weight:600;font-size:1rem;margin:.25rem 0 .3rem}
.link-card .lc-text{font-size:.85rem;color:var(--muted);margin:0}
.section-light .link-card{background:#fff;border-color:#e3e3e3;color:#111}
.section-light .link-card:hover{border-color:#111;color:#111}
.section-light .link-card .lc-text,.section-light .link-card .lc-tag{color:#666}

/* ARTIKEL */
.article-meta{font-size:.82rem;color:#777;letter-spacing:.04em;margin-bottom:1.5rem}
.article-body{max-width:48rem}
.article-body p{font-size:1.02rem;line-height:1.75;color:#222}
.article-body h2{font-size:1.45rem;font-weight:700;margin-top:2.4rem;margin-bottom:.8rem;color:#111}
.article-body h3{font-size:1.08rem;font-weight:600;margin-top:1.6rem;margin-bottom:.5rem;color:#111}
.article-body ul,.article-body ol{line-height:1.75;color:#222;font-size:1rem}
.article-body li{margin-bottom:.3rem}
.article-body blockquote{border-left:3px solid #111;padding:.6rem 1.1rem;margin:1.5rem 0;color:#333;font-style:italic;background:#fff;border-radius:0 .8rem .8rem 0}
.article-body .tip{border:1px solid #e0e0e0;background:#fff;border-radius:1rem;padding:1rem 1.2rem;margin:1.4rem 0;font-size:.95rem;color:#333}
.article-body .tip strong{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:#777;margin-bottom:.3rem}
.toc{border:1px solid #e3e3e3;background:#fff;border-radius:1rem;padding:1.1rem 1.3rem;font-size:.9rem;margin-bottom:2rem}
.toc strong{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:#777;margin-bottom:.5rem}
.toc ol{margin:0;padding-left:1.2rem}
.toc a{color:#222;text-decoration:none}
.toc a:hover{text-decoration:underline}
.author-box{display:flex;gap:1rem;align-items:center;border:1px solid #e3e3e3;background:#fff;border-radius:1rem;padding:1rem 1.2rem;margin-top:2.5rem}
.author-box img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:0 0 64px}
.author-box .ab-name{font-weight:600;color:#111}
.author-box .ab-role{font-size:.82rem;color:#666}
.howto-step{display:flex;gap:1rem;margin-bottom:1rem}
.howto-num{width:34px;height:34px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;font-weight:700;flex:0 0 34px;font-size:.9rem}
.howto-step h3{margin-top:.3rem!important}

/* CTA-BLOCK */
.cta-box{border-radius:1.3rem;background:#fff;color:#111;padding:2rem 2rem;border:1px solid #e3e3e3}
.section-dark .cta-box{background:#161616;color:#fff;border-color:rgba(255,255,255,.1)}
.cta-box h2{font-size:1.5rem;font-weight:700;margin-bottom:.6rem}
.cta-box p{color:#555;max-width:40rem}
.section-dark .cta-box p{color:var(--muted)}
.contact-line{font-size:.9rem;color:#555}
.section-dark .contact-line{color:var(--muted)}
.contact-line a{color:inherit}

/* FOOTER */
footer{padding:1.8rem 0;font-size:.8rem;color:var(--muted);background:#000}
footer a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3)}
footer a:hover{border-bottom-color:#fff}

/* FIXED BUTTON */
#fixed-inquiry-btn{position:fixed;right:18px;bottom:18px;height:52px;padding:0 1.2rem;border-radius:999px;background:#fff;color:#000;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;z-index:1500;box-shadow:0 10px 30px rgba(0,0,0,.5);text-decoration:none;font-size:.74rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap;transition:background .18s,color .18s,transform .18s}
#fixed-inquiry-btn i{font-size:1rem}
#fixed-inquiry-btn:hover{background:#111;color:#fff;transform:translateY(-2px)}
/* ausblenden, solange die Schaltflächen im Kopfbereich sichtbar sind */
#fixed-inquiry-btn.is-hidden{opacity:0;transform:translateY(14px);pointer-events:none}
@media(max-width:400px){#fixed-inquiry-btn{height:48px;padding:0 .95rem;font-size:.67rem;letter-spacing:.1em;gap:.45rem}}

/* LEGAL */
.legal h2{font-size:1.05rem;font-weight:600;margin-top:1.8rem;text-transform:uppercase;letter-spacing:.08em}
.legal p,.legal li{font-size:.93rem;line-height:1.65;color:#333}
