/* lp.raze.de – additive Styles, laden NACH raze.de-style.css (Cascade). */

/* --- Fonts self-hosted (same-origin → kein CORS). Überschreiben die raze.de-
   @font-face (identische Deskriptoren, lädt später = gewinnt). ---------------- */
@font-face {
    font-family: 'Font Awesome 7 Free';
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url('/assets/fonts/fa-solid-900.woff2') format('woff2');
}
@font-face {
    font-family: 'Lexend';
    font-style: normal;
    font-weight: 300 800;
    font-display: swap;
    src: url('/assets/fonts/lexend-variable-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7,
                   U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF,
                   U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB,
                   U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Lexend';
    font-style: normal;
    font-weight: 300 800;
    font-display: swap;
    src: url('/assets/fonts/lexend-variable-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                   U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                   U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215,
                   U+FEFF, U+FFFD;
}

/* CTA-Band */
.lp-ctaband { padding-top:8px; padding-bottom:8px; }
.lp-ctaband__inner {
    display:flex; align-items:center; justify-content:space-between; gap:20px;
    flex-wrap:wrap; background:var(--navy,#0E1221); color:#fff;
    border-radius:24px; padding:26px 32px;
}
.lp-ctaband__h { color:#fff; margin:0 0 4px; font-size:1.3rem; }
.lp-ctaband__p { color:rgba(255,255,255,.82); margin:0; }
.lp-ctaband__actions { display:flex; gap:12px; flex-wrap:wrap; }
.lp-ctaband__actions .btn-outline { color:#fff; border-color:rgba(255,255,255,.6); }
.lp-ctaband__actions .btn-outline:hover { background:rgba(255,255,255,.12); }
@media (max-width:640px){
    .lp-ctaband__inner { padding:22px; border-radius:18px; }
    .lp-ctaband__actions { width:100%; }
    .lp-ctaband__actions .btn { flex:1 1 auto; text-align:center; }
}

/* Footer-Rechtstext */
.lp-legal-logo { display:inline-block; height:1.15em; width:auto; vertical-align:middle; position:relative; top:-0.1em; margin-right:2px; }

/* CTA-Band – Primary bleibt orange (Band navy) */
.lp-ctaband .btn-primary:hover { background:var(--orange-dark,#cf3f10); opacity:1; }

/* Buttons in .card.prose */
.card.prose a.btn-primary, .card.prose a.btn-primary:hover { color:#fff; text-decoration:none; }
.card.prose a.btn-outline { color:var(--navy,#0E1221); text-decoration:none; }

/* Bild-+-Text-Split */
.lp-media { display:grid; grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr); gap:28px; align-items:center; }
.lp-media__img { display:flex; justify-content:center; }
.lp-media__img img { width:100%; max-width:360px; height:auto; border-radius:18px; display:block; }
.lp-media__body { margin:0; }
@media (max-width:900px){ .lp-media { grid-template-columns:1fr; } .lp-media__img img { max-width:100%; } }

/* Check-Listen (ab 4 → 2-spaltig) */
.check-list--split { display:block; columns:2; column-gap:36px; }
.check-list--split li { break-inside:avoid; -webkit-column-break-inside:avoid; margin-bottom:12px; }
@media (max-width:640px){ .check-list--split { columns:1; } }

/* Autoschlüssel-Arten */
.lp-keytypes { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:22px; }
.lp-keytype { margin:0; padding:22px 20px; }
.lp-keytype h3 { font-size:1.05rem; margin:0 0 8px; }
.lp-keytype p { font-size:.92rem; color:#5a6072; margin:0; }
@media (max-width:900px){ .lp-keytypes { grid-template-columns:repeat(2,1fr); } }
@media (max-width:480px){ .lp-keytypes { grid-template-columns:1fr; } }

/* Marken-/Regional-Grid (Hub) */
.lp-brandgrid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin:24px 0 10px; }
.lp-brandcard {
    display:flex; flex-direction:column; gap:6px; padding:22px 20px;
    background:#fff; border:1px solid #e7e9ee; border-radius:18px;
    text-decoration:none; color:var(--navy,#0E1221); transition:.18s ease;
}
.lp-brandcard:hover { border-color:var(--orange,#E94E1B); transform:translateY(-2px); box-shadow:0 10px 28px rgba(14,18,33,.08); }
.lp-brandcard__name { font-weight:800; font-size:1.25rem; }
.lp-brandcard__sub { font-size:.9rem; color:#5a6072; }
@media (max-width:1024px){ .lp-brandgrid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:640px){ .lp-brandgrid { grid-template-columns:repeat(2,1fr); } }
