/**
 * Landingpage Modern - Animation & Enhancement Styles
 *
 * Erweiterungen für City-Landingpages mit:
 * - Scroll-Reveal Animationen
 * - Verbesserte Hover-Effekte
 * - Moderne Stationen-Karten
 * - Feature-Icons Grid
 * - Dekorative Elemente
 * - Sticky CTA Button
 * - Glasmorphism
 *
 * Version: 1.0.0
 * Updated: 2026-01-31
 */

/* ============================================================
   Extended Design Tokens
   ============================================================ */
:root {
    /* Brand Colors Extended */
    --brand-50: #e8f5ec;
    --brand-100: #c5e6cf;
    --brand-200: #9ed5af;
    --brand-300: #77c48f;
    --brand-400: #5ab676;
    --brand-500: #2d5f41;
    --brand-600: #275537;
    --brand-700: #1f4a2d;
    --brand-800: #183f24;
    --brand-900: #0f2d18;

    /* Gray Scale */
    --gray-50: #f9fafb;
    --gray-100: #f3f4f6;
    --gray-200: #e5e7eb;
    --gray-300: #d1d5db;
    --gray-400: #9ca3af;
    --gray-500: #6b7280;
    --gray-600: #4b5563;

    /* Animation Timing */
    --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
    --ease-out-back: cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* ============================================================
   1. Scroll-Reveal Animation System
   ============================================================ */
.lp-reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 1s var(--ease-out-expo),
                transform 1s var(--ease-out-expo),
                background 0.3s ease;
    will-change: opacity, transform;
}

/* Higher specificity to override .content.lp-section transition */
.content.lp-reveal,
section.lp-reveal {
    transition: opacity 1s var(--ease-out-expo),
                transform 1s var(--ease-out-expo),
                background 0.3s ease;
}

.lp-reveal.active {
    opacity: 1;
    transform: translateY(0);
}

/* Initial delay for elements visible on page load */
.lp-reveal:nth-of-type(1) { transition-delay: 0.1s; }
.lp-reveal:nth-of-type(2) { transition-delay: 0.2s; }
.lp-reveal:nth-of-type(3) { transition-delay: 0.3s; }

/* Staggered Delays */
.lp-reveal-delay-1 { transition-delay: 0.15s; }
.lp-reveal-delay-2 { transition-delay: 0.3s; }
.lp-reveal-delay-3 { transition-delay: 0.45s; }
.lp-reveal-delay-4 { transition-delay: 0.6s; }
.lp-reveal-delay-5 { transition-delay: 0.75s; }
.lp-reveal-delay-6 { transition-delay: 0.9s; }

/* Alternative Reveal Variants */
.lp-reveal-left {
    opacity: 0;
    transform: translateX(-40px);
    transition: opacity 0.8s var(--ease-out-expo),
                transform 0.8s var(--ease-out-expo);
    will-change: opacity, transform;
}

.lp-reveal-right {
    opacity: 0;
    transform: translateX(40px);
    transition: opacity 0.8s var(--ease-out-expo),
                transform 0.8s var(--ease-out-expo);
    will-change: opacity, transform;
}

.lp-reveal-scale {
    opacity: 0;
    transform: scale(0.9);
    transition: opacity 0.6s var(--ease-out-expo),
                transform 0.6s var(--ease-out-back);
    will-change: opacity, transform;
}

.lp-reveal-left.active,
.lp-reveal-right.active,
.lp-reveal-scale.active {
    opacity: 1;
    transform: translateX(0) scale(1);
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    .lp-reveal,
    .lp-reveal-left,
    .lp-reveal-right,
    .lp-reveal-scale {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* ============================================================
   2. Verbesserte Hover-Effekte
   ============================================================ */
.lp-card-modern {
    background: white;
    border-radius: 16px;
    padding: 1.5rem;
    border: 1px solid var(--gray-100);
    transition: transform 0.4s var(--ease-out-expo),
                box-shadow 0.4s var(--ease-out-expo),
                border-color 0.4s ease;
}

.lp-card-modern:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px -15px rgba(45, 95, 65, 0.2);
    border-color: var(--brand-100);
}

/* Enhanced Button Hover */
.lp-btn-animated {
    position: relative;
    overflow: hidden;
    transition: transform 0.3s var(--ease-out-expo),
                box-shadow 0.3s var(--ease-out-expo);
}

.lp-btn-animated::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.2),
        transparent
    );
    transition: left 0.5s ease;
}

.lp-btn-animated:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(45, 95, 65, 0.25);
}

.lp-btn-animated:hover::before {
    left: 100%;
}

/* Link Hover Effect */
.lp-link-hover {
    position: relative;
    color: var(--brand);
    text-decoration: none;
    transition: color 0.3s ease;
}

.lp-link-hover::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--brand);
    transition: width 0.3s var(--ease-out-expo);
}

.lp-link-hover:hover::after {
    width: 100%;
}

/* ============================================================
   3. Moderne Stationen-Karten
   ============================================================ */
.lp-stations-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
}

.lp-station-card {
    background: white;
    border-radius: 16px;
    padding: 1.5rem;
    border: 1px solid var(--gray-100);
    transition: all 0.4s var(--ease-out-expo);
    display: flex;
    flex-direction: column;
}

.lp-station-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
    border-color: var(--brand-200);
}

.lp-station-card-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.lp-station-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--brand-50), var(--brand-100));
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--brand);
    flex-shrink: 0;
}

.lp-station-icon svg {
    width: 24px;
    height: 24px;
}

.lp-station-name {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-color);
    margin: 0;
}

.lp-station-address {
    font-size: 0.875rem;
    color: var(--text-muted);
    margin-bottom: 1rem;
    line-height: 1.5;
}

.lp-station-meta {
    display: flex;
    gap: 1rem;
    margin-top: auto;
    padding-top: 1rem;
    border-top: 1px solid var(--gray-100);
    font-size: 0.875rem;
    color: var(--text-muted);
}

.lp-station-meta span {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.lp-station-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--brand);
    font-weight: 500;
    text-decoration: none;
    margin-top: 1rem;
    transition: gap 0.3s ease;
}

.lp-station-link:hover {
    gap: 0.75rem;
}

.lp-station-link svg {
    width: 16px;
    height: 16px;
    transition: transform 0.3s ease;
}

.lp-station-link:hover svg {
    transform: translateX(4px);
}

/* ============================================================
   4. Feature-Icons Grid (Startseiten-Stil)
   ============================================================ */
.lp-features-modern {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1.5rem;
}

.lp-feature-icon-box {
    text-align: center;
    padding: 2rem 1.5rem;
    background: white;
    border-radius: 1rem;
    border: 1px solid var(--gray-100);
    transition: all 0.4s var(--ease-out-expo);
}

.lp-feature-icon-box:hover {
    border-color: var(--brand-100);
    box-shadow: 0 10px 25px rgba(45, 95, 65, 0.1);
    transform: translateY(-4px);
}

.lp-feature-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 1rem;
    border-radius: 16px;
    background: linear-gradient(135deg, var(--brand-50), var(--brand-100));
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--brand);
    transition: transform 0.3s var(--ease-out-back),
                background 0.3s ease;
}

.lp-feature-icon-box:hover .lp-feature-icon {
    transform: scale(1.1);
    background: linear-gradient(135deg, var(--brand-100), var(--brand-200));
}

.lp-feature-icon svg {
    width: 28px;
    height: 28px;
}

.lp-feature-title {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-color);
    margin-bottom: 0.5rem;
}

.lp-feature-desc {
    font-size: 0.875rem;
    color: var(--text-muted);
    line-height: 1.5;
    margin: 0;
}

/* Features Row Variant */
.lp-features-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
}

.lp-feature-badge {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.25rem;
    background: white;
    border-radius: 9999px;
    border: 1px solid var(--gray-100);
    font-size: 0.9375rem;
    color: var(--text-color);
    transition: all 0.3s ease;
}

.lp-feature-badge:hover {
    border-color: var(--brand-200);
    box-shadow: 0 4px 12px rgba(45, 95, 65, 0.1);
}

.lp-feature-badge svg {
    width: 20px;
    height: 20px;
    color: var(--brand);
}

/* ============================================================
   5. Dekorative Elemente
   ============================================================ */
.lp-section-decorated {
    position: relative;
    overflow: hidden;
}

.lp-blob {
    position: absolute;
    border-radius: 9999px;
    filter: blur(60px);
    opacity: 0.15;
    pointer-events: none;
    animation: lp-pulse 6s ease-in-out infinite;
}

.lp-blob-1 {
    width: 400px;
    height: 400px;
    background: var(--brand);
    top: -100px;
    right: -100px;
    animation-delay: 0s;
}

.lp-blob-2 {
    width: 300px;
    height: 300px;
    background: var(--brand-light);
    bottom: -50px;
    left: -50px;
    animation-delay: 2s;
}

.lp-blob-3 {
    width: 200px;
    height: 200px;
    background: var(--brand-dark);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation-delay: 4s;
}

@keyframes lp-pulse {
    0%, 100% {
        opacity: 0.15;
        transform: scale(1);
    }
    50% {
        opacity: 0.08;
        transform: scale(1.1);
    }
}

/* Gradient Overlay for Hero */
.lp-hero-gradient {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 150px;
    background: linear-gradient(to top, white, transparent);
    pointer-events: none;
}

/* Decorative Lines */
.lp-divider-wave {
    width: 100%;
    height: 40px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 40'%3E%3Cpath fill='%232d5f41' fill-opacity='0.1' d='M0,20 Q300,40 600,20 T1200,20 L1200,40 L0,40 Z'/%3E%3C/svg%3E");
    background-size: 1200px 40px;
}

/* Section Badge */
.lp-section-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: var(--brand-50);
    color: var(--brand);
    border-radius: 9999px;
    font-size: 0.875rem;
    font-weight: 500;
    margin-bottom: 1rem;
}

/* ============================================================
   6. Sticky CTA Button
   ============================================================ */
.lp-sticky-cta {
    position: fixed;
    bottom: 1.5rem;
    left: 50%;
    transform: translateX(-50%) translateY(100px);
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s var(--ease-out-expo);
    z-index: 50;
}

.lp-sticky-cta.visible {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
    visibility: visible;
}

.lp-sticky-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 2rem;
    background: linear-gradient(135deg, var(--brand), var(--brand-dark));
    color: white;
    border-radius: 9999px;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 10px 30px rgba(45, 95, 65, 0.35);
    transition: all 0.3s var(--ease-out-expo);
}

.lp-sticky-cta-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(45, 95, 65, 0.45);
    color: white;
}

.lp-sticky-cta-btn svg {
    width: 20px;
    height: 20px;
}

/* Hide on small screens when keyboard is likely open */
@media (max-height: 500px) {
    .lp-sticky-cta {
        display: none;
    }
}

/* ============================================================
   7. Glasmorphism
   ============================================================ */
.lp-glass {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.5);
}

.lp-glass-dark {
    background: rgba(45, 95, 65, 0.85);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: white;
}

.lp-glass-card {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.7);
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}

/* ============================================================
   8. Enhanced Section Styles
   ============================================================ */
.lp-section-modern {
    padding: 4rem 0;
    position: relative;
}

.lp-section-modern.lp-bg-subtle {
    background: linear-gradient(180deg, var(--gray-50) 0%, white 100%);
}

.lp-section-modern.lp-bg-brand {
    background: linear-gradient(135deg, var(--brand) 0%, var(--brand-dark) 100%);
    color: white;
}

.lp-section-title {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1rem;
    color: var(--text-color);
}

.lp-section-subtitle {
    font-size: 1.125rem;
    color: var(--text-muted);
    max-width: 600px;
    margin: 0 auto 2.5rem;
}

/* ============================================================
   9. Hero Enhancements
   ============================================================ */
.lp-hero-modern {
    position: relative;
    min-height: 50vh;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.lp-hero-content {
    position: relative;
    z-index: 10;
}

.lp-hero-title {
    font-size: clamp(2rem, 5vw, 3.5rem);
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 1.5rem;
}

.lp-hero-subtitle {
    font-size: clamp(1rem, 2vw, 1.25rem);
    opacity: 0.9;
    margin-bottom: 2rem;
    max-width: 600px;
}

/* ============================================================
   10. Stats/Counter Section
   ============================================================ */
.lp-stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 2rem;
    text-align: center;
}

.lp-stat-item {
    padding: 1.5rem;
}

.lp-stat-number {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--brand);
    line-height: 1;
    margin-bottom: 0.5rem;
}

.lp-stat-label {
    font-size: 0.9375rem;
    color: var(--text-muted);
}

/* ============================================================
   11. CTA Sections
   ============================================================ */
.lp-cta-box {
    background: linear-gradient(135deg, var(--brand) 0%, var(--brand-dark) 100%);
    border-radius: 24px;
    padding: 3rem;
    text-align: center;
    color: white;
    position: relative;
    overflow: hidden;
}

.lp-cta-box::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 60%);
    pointer-events: none;
}

.lp-cta-title {
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 1rem;
}

.lp-cta-desc {
    font-size: 1.0625rem;
    opacity: 0.9;
    margin-bottom: 2rem;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

.lp-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 2rem;
    background: white;
    color: var(--brand);
    border-radius: 9999px;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s var(--ease-out-expo);
}

.lp-cta-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

/* ============================================================
   12. Responsive Adjustments
   ============================================================ */
@media (max-width: 768px) {
    .lp-section-modern {
        padding: 2.5rem 0;
    }

    .lp-features-modern {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    .lp-feature-icon-box {
        padding: 1.25rem 1rem;
    }

    .lp-feature-icon {
        width: 48px;
        height: 48px;
    }

    .lp-stations-grid {
        grid-template-columns: 1fr;
    }

    .lp-cta-box {
        padding: 2rem 1.5rem;
        border-radius: 16px;
    }

    .lp-sticky-cta-btn {
        padding: 0.875rem 1.5rem;
        font-size: 0.9375rem;
    }

    .lp-blob-1,
    .lp-blob-2,
    .lp-blob-3 {
        display: none;
    }
}

@media (max-width: 480px) {
    .lp-features-modern {
        grid-template-columns: 1fr;
    }

    .lp-features-row {
        flex-direction: column;
        align-items: stretch;
    }

    .lp-stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    .lp-stat-number {
        font-size: 2rem;
    }
}

/* ============================================================
   13. OVERRIDE STYLES für bestehende Landingpage-Elemente
   Diese Styles verbessern bestehende Elemente ohne Template-Änderungen
   ============================================================ */

/* Trust Badges Animation - erhöhte Spezifität */
body#landingpage .trust-badges-strip {
    animation: lp-fadeInDown 0.8s ease-out !important;
}

body#landingpage .trust-badges-strip .trust-badge,
body#landingpage .trust-badges-strip > div {
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                box-shadow 0.4s ease,
                background 0.3s ease !important;
    padding: 0.625rem 1.25rem !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.85) !important;
    border: 1px solid rgba(45, 95, 65, 0.1) !important;
}

body#landingpage .trust-badges-strip .trust-badge:hover,
body#landingpage .trust-badges-strip > div:hover {
    transform: translateY(-5px) scale(1.05) !important;
    box-shadow: 0 12px 30px rgba(45, 95, 65, 0.2) !important;
    background: white !important;
    border-color: rgba(45, 95, 65, 0.25) !important;
}

@keyframes lp-fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Bestehende .lp-card verbessern - erhöhte Spezifität */
body#landingpage .lp-card {
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                border-color 0.4s ease !important;
}

body#landingpage .lp-card:hover {
    transform: translateY(-10px) !important;
    box-shadow: 0 25px 50px -15px rgba(45, 95, 65, 0.3) !important;
    border-color: rgba(45, 95, 65, 0.2) !important;
}

/* Local Benefits Boxen (die mit border-left) - erhöhte Spezifität */
body#landingpage .local-benefits > div > div,
body#landingpage .row.local-benefits .col-sm-6 > div {
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                box-shadow 0.4s ease,
                border-color 0.3s ease,
                background 0.3s ease !important;
}

body#landingpage .local-benefits > div > div:hover,
body#landingpage .row.local-benefits .col-sm-6 > div:hover {
    transform: translateX(12px) scale(1.02) !important;
    box-shadow: 0 12px 30px rgba(45, 95, 65, 0.18) !important;
    border-left-color: #1e4028 !important;
    border-left-width: 5px !important;
    background-color: #f0fff4 !important;
}

/* Location Info Box Animation */
.location-info {
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.location-info:hover {
    transform: scale(1.02) !important;
    box-shadow: 0 10px 30px rgba(45, 95, 65, 0.12) !important;
}

/* Sidebar Widget Hover - erhöhte Spezifität */
body#landingpage .sidebar-widget {
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                box-shadow 0.4s ease !important;
}

body#landingpage .sidebar-widget:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 20px 45px rgba(45, 95, 65, 0.2) !important;
}

/* Stationen Liste modernisieren - erhöhte Spezifität */
body#landingpage .lp-station-list li {
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                background 0.3s ease,
                padding-left 0.3s ease,
                box-shadow 0.3s ease !important;
    border-radius: 12px !important;
    margin-bottom: 8px !important;
    padding: 12px 16px !important;
    border: 1px solid transparent !important;
}

body#landingpage .lp-station-list li:hover {
    transform: translateX(10px) scale(1.02) !important;
    background: linear-gradient(135deg, rgba(45, 95, 65, 0.08) 0%, rgba(58, 125, 87, 0.05) 100%) !important;
    padding-left: 20px !important;
    border-color: rgba(45, 95, 65, 0.2) !important;
    box-shadow: 0 8px 25px rgba(45, 95, 65, 0.12) !important;
}

body#landingpage .lp-station-list li a {
    transition: color 0.3s ease, font-weight 0.3s ease !important;
}

body#landingpage .lp-station-list li:hover a {
    color: var(--brand-dark, #1e4028) !important;
    font-weight: 600 !important;
}

/* FAQ Accordion Animation - erhöhte Spezifität */
body#landingpage .lp-faq .panel {
    transition: box-shadow 0.4s ease, transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    margin-bottom: 10px !important;
    border-radius: 16px !important;
    overflow: hidden;
}

body#landingpage .lp-faq .panel:hover {
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.12) !important;
    transform: translateY(-4px) scale(1.01) !important;
}

body#landingpage .lp-faq .panel-heading {
    transition: background 0.3s ease !important;
}

body#landingpage .lp-faq .panel-heading:hover {
    background: linear-gradient(135deg, #f0fff4 0%, #e6f7ed 100%) !important;
}

/* Link Lists Animation - erhöhte Spezifität */
body#landingpage .link-list ul li {
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1),
                padding-left 0.3s ease,
                background 0.3s ease !important;
    border-radius: 6px !important;
}

body#landingpage .link-list ul li:hover {
    transform: translateX(10px) !important;
    padding-left: 14px !important;
    background: rgba(45, 95, 65, 0.04) !important;
}

/* CTA Buttons Animation - erhöhte Spezifität */
body#landingpage .lp-btn {
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                box-shadow 0.4s ease,
                background 0.3s ease !important;
    position: relative !important;
    overflow: hidden !important;
}

body#landingpage .lp-btn:hover {
    transform: translateY(-5px) scale(1.02) !important;
    box-shadow: 0 15px 35px rgba(45, 95, 65, 0.35) !important;
}

body#landingpage .lp-btn::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent) !important;
    transition: left 0.6s ease !important;
}

body#landingpage .lp-btn:hover::after {
    left: 100% !important;
}

/* Title Icons Animation */
.lp-title [data-lucide],
.title [data-lucide],
h2 [data-lucide],
h3 [data-lucide] {
    transition: transform 0.3s ease !important;
}

.lp-title:hover [data-lucide],
.title:hover [data-lucide],
h2:hover [data-lucide],
h3:hover [data-lucide] {
    transform: scale(1.2) rotate(5deg) !important;
}

/* Fahrzeugkategorien Tabelle - erhöhte Spezifität */
body#landingpage #vehicle-comparison table {
    border-collapse: separate !important;
    border-spacing: 0 4px !important;
}

body#landingpage #vehicle-comparison tbody tr {
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                box-shadow 0.4s ease,
                background 0.3s ease !important;
    border-radius: 8px !important;
}

/* SUBTIL: Nur ganz leichter grauer Hintergrund, KEIN Scale/Shadow/Gradient */
body#landingpage #vehicle-comparison tbody tr:hover {
    transform: none !important;
    box-shadow: none !important;
    background: rgba(249, 250, 251, 0.8) !important;
    position: relative !important;
    z-index: 1 !important;
}

body#landingpage #vehicle-comparison tbody tr td {
    transition: none !important;
}

/* Kein Padding-Change beim Hover - padding bleibt konstant */
body#landingpage #vehicle-comparison tbody tr:hover td:first-child {
    padding-left: 1.5rem !important;
}

/* Districts Section Cards */
#districts-section [class*="col-"] > div {
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

#districts-section [class*="col-"] > div:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 30px rgba(45, 95, 65, 0.12) !important;
}

/* Expertise Section */
#expertise-section .col-md-4 > div {
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
}

#expertise-section .col-md-4 > div:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 15px 35px rgba(45, 95, 65, 0.15) !important;
}

/* Final CTA Section Pulse Animation */
#final-cta-section {
    position: relative;
    overflow: hidden;
}

#final-cta-section::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 100%;
    height: 200%;
    background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 60%);
    animation: lp-cta-pulse 4s ease-in-out infinite;
}

@keyframes lp-cta-pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.5;
    }
    50% {
        transform: scale(1.2);
        opacity: 0.3;
    }
}

/* Dekorative Hintergrund-Animation für main */
.landingpage-main.lp-section-decorated::before {
    content: '';
    position: fixed;
    top: 20%;
    right: -150px;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(45, 95, 65, 0.08) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
    z-index: -1;
    animation: lp-float 8s ease-in-out infinite;
}

.landingpage-main.lp-section-decorated::after {
    content: '';
    position: fixed;
    bottom: 30%;
    left: -100px;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(45, 95, 65, 0.06) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
    z-index: -1;
    animation: lp-float 10s ease-in-out infinite reverse;
}

@keyframes lp-float {
    0%, 100% {
        transform: translateY(0) scale(1);
    }
    50% {
        transform: translateY(-30px) scale(1.05);
    }
}

/* Breadcrumb Animation */
.lp-breadcrumb li {
    animation: lp-fadeInRight 0.5s ease-out backwards;
}

.lp-breadcrumb li:nth-child(1) { animation-delay: 0.1s; }
.lp-breadcrumb li:nth-child(2) { animation-delay: 0.2s; }
.lp-breadcrumb li:nth-child(3) { animation-delay: 0.3s; }
.lp-breadcrumb li:nth-child(4) { animation-delay: 0.4s; }

@keyframes lp-fadeInRight {
    from {
        opacity: 0;
        transform: translateX(-15px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Intro Text Animation */
.intro-seo,
.intro-custom {
    animation: lp-fadeIn 1s ease-out;
}

@keyframes lp-fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Reduced Motion Support für alle Animationen */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* ============================================================
   KONZEPT2026 Design System
   Redesign der City Landingpages basierend auf dem Mockup
   ============================================================ */

/* Design Tokens 2026 - erweiterte Farbpalette */
:root {
    --brand-2026: #2d5f41;
    --brand-2026-light: #427a58;
    --brand-2026-dark: #1e402c;
    --brand-2026-50: #f2f7f4;
    --brand-2026-100: #e1ede6;
    --surface-2026: #f8faf9;
}

/* 14.1 Base Styles 2026 */
body#landingpage {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    background-color: var(--surface-2026);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 1rem;
    line-height: 1.6;
}

/* Global Typography 2026 - Tailwind-äquivalente Größen (mit !important für Bootstrap-Override) */
body#landingpage main h1,
body#landingpage .landingpage-main h1 {
    font-size: 2.25rem !important; /* text-4xl */
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #1f2937 !important;
    margin-bottom: 1.5rem !important;
}

body#landingpage main h2,
body#landingpage .landingpage-main h2,
body#landingpage main .lp-title,
body#landingpage .landingpage-main .lp-title,
body#landingpage main .title {
    font-size: 1.875rem !important; /* text-3xl */
    font-weight: 700 !important;
    line-height: 1.25 !important;
    color: #1f2937 !important;
    margin-bottom: 1.5rem !important;
}

body#landingpage main h3,
body#landingpage .landingpage-main h3 {
    font-size: 1.5rem !important; /* text-2xl */
    font-weight: 700 !important;
    line-height: 1.3 !important;
    color: #1f2937 !important;
    margin-bottom: 1rem !important;
}

body#landingpage main h4,
body#landingpage .landingpage-main h4 {
    font-size: 1.25rem !important; /* text-xl */
    font-weight: 600 !important;
    line-height: 1.4 !important;
    color: #1f2937 !important;
    margin-bottom: 0.75rem !important;
}

@media (min-width: 768px) {
    body#landingpage main h1,
    body#landingpage .landingpage-main h1 {
        font-size: 3rem !important; /* text-5xl */
    }

    body#landingpage main h2,
    body#landingpage .landingpage-main h2,
    body#landingpage main .lp-title,
    body#landingpage .landingpage-main .lp-title,
    body#landingpage main .title {
        font-size: 2.25rem !important; /* text-4xl */
    }

    body#landingpage main h3,
    body#landingpage .landingpage-main h3 {
        font-size: 1.875rem !important; /* text-3xl */
    }

    body#landingpage main h4,
    body#landingpage .landingpage-main h4 {
        font-size: 1.5rem !important; /* text-2xl */
    }
}

body#landingpage main p,
body#landingpage .landingpage-main p,
body#landingpage main li,
body#landingpage .landingpage-main li {
    font-size: 1.6rem !important; /* text-lg = 18px */
    line-height: 1.75 !important;
    --tw-text-opacity: 1;
    color: rgb(75 85 99 / var(--tw-text-opacity, 1)) !IMPORTANT;
    -webkit-font-smoothing: antialiased;
    text-align: left;
}

/* 14.2 Section Component 2026 */
.lp-section-2026,
body#landingpage .lp-section {
    padding: 4rem 0;
    position: relative;
}

@media (min-width: 768px) {
    .lp-section-2026,
    body#landingpage .lp-section {
        padding: 6rem 0;
    }
}

@media (min-width: 1024px) {
    .lp-section-2026,
    body#landingpage .lp-section {
        padding: 8rem 0;
    }
}

.lp-section-2026.bg-white {
    background: #fff;
}

.lp-section-2026.bg-surface {
    background: var(--surface-2026);
}

.lp-section-2026.bg-brand-gradient {
    background: linear-gradient(135deg, var(--brand-2026) 0%, var(--brand-2026-light) 100%);
}

/* 14.3 Card Styles 2026 */
.lp-card-2026 {
    background: #fff;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    padding: 1.5rem;
    transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.lp-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.3);
    box-shadow: 0 20px 40px -15px rgba(45, 95, 65, 0.15);
    transform: translateY(-6px);
}

/* 14.4 Trust Badges Strip 2026 */
.lp-trust-strip-2026 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.5rem;
    padding: 0.75rem 1.5rem;
    background: rgba(45, 95, 65, 0.05);
    border: 1px solid rgba(45, 95, 65, 0.1);
    border-radius: 0.75rem;
    margin-bottom: 1.5rem;
}

.lp-trust-strip-2026 .trust-badge {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 0.5rem;
    transition: all 0.3s ease;
}

.lp-trust-strip-2026 .trust-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(45, 95, 65, 0.12);
}

/* 14.5 Station Cards 2026 */
.lp-station-card-2026 {
    background: #fff;
    padding: 1rem 1.25rem;
    border-radius: 0.75rem;
    border: 1px solid #e5e7eb;
    margin-bottom: 1rem;
    transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
    display: block;
}

.lp-station-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.3);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    transform: translateX(8px);
}

.lp-station-card-2026 a {
    font-weight: 700;
    color: #1f2937;
    text-decoration: none;
    display: block;
    margin-bottom: 0.375rem;
    transition: color 0.2s ease;
}

.lp-station-card-2026:hover a {
    color: var(--brand-2026);
}

.lp-station-card-2026 .station-street,
.lp-station-card-2026 .station-city {
    display: block;
    font-size: 0.875rem;
    color: #6b7280;
    line-height: 1.4;
}

/* 14.6 FAQ Accordion 2026 */
.lp-faq-2026 .panel {
    background: #fff;
    border-radius: 0.75rem;
    border: 1px solid #e5e7eb;
    margin-bottom: 0.75rem;
    overflow: hidden;
    transition: all 0.3s ease;
}

.lp-faq-2026 .panel:hover {
    border-color: rgba(45, 95, 65, 0.25);
}

.lp-faq-2026 .panel.active,
.lp-faq-2026 .panel:has(.in) {
    border-color: var(--brand-2026);
    box-shadow: 0 4px 12px rgba(45, 95, 65, 0.1);
}

.lp-faq-2026 .panel-heading {
    padding: 1rem 1.5rem;
    background: transparent;
    border-bottom: none;
    cursor: pointer;
    transition: background 0.2s ease;
}

.lp-faq-2026 .panel-heading:hover {
    background: var(--brand-2026-50);
}

.lp-faq-2026 .panel-title {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
}

.lp-faq-2026 .panel-title a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    text-decoration: none;
    color: #1f2937;
}

.lp-faq-2026 .panel-title a:hover {
    color: var(--brand-2026);
}

.lp-faq-2026 .panel-body {
    padding: 0 1.5rem 1.5rem 3.25rem;
    color: #4b5563;
    line-height: 1.7;
}

/* FAQ Icon Animation */
.lp-faq-2026 .panel-heading .fa-chevron-down {
    transition: transform 0.3s ease;
}

.lp-faq-2026 .panel:has(.in) .panel-heading .fa-chevron-down {
    transform: rotate(180deg);
}

/* 14.7 Comparison Table 2026 */
.lp-table-2026 {
    width: 100%;
    background: #fff;
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 20px 40px -15px rgba(45, 95, 65, 0.1);
    border: 1px solid #e5e7eb;
    border-collapse: separate;
    border-spacing: 0;
}

.lp-table-2026 thead {
    background: linear-gradient(135deg, var(--brand-2026) 0%, var(--brand-2026-light) 100%);
}

.lp-table-2026 thead th {
    padding: 1.25rem 1rem;
    font-weight: 700;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #fff;
    text-align: left;
}

.lp-table-2026 tbody td {
    padding: 1.25rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    vertical-align: middle;
}

.lp-table-2026 tbody tr {
    transition: background 0.15s ease;
}

.lp-table-2026 tbody tr:hover {
    background: rgba(249, 250, 251, 0.8);
}

.lp-table-2026 tbody tr:last-child td {
    border-bottom: none;
}

/* Badge Styles für Führerschein */
.lp-table-2026 .badge-license {
    display: inline-block;
    padding: 0.25rem 0.625rem;
    border-radius: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
}

.lp-table-2026 .badge-license-b {
    background: #e8f5e9;
    color: #2d5f41;
}

.lp-table-2026 .badge-license-c1 {
    background: #fff3e0;
    color: #e65100;
}

.lp-table-2026 .badge-license-c {
    background: #ffebee;
    color: #c62828;
}

/* 14.8 Advantage Cards 2026 */
.lp-advantage-card-2026 {
    background: #fff;
    border-radius: 1rem;
    padding: 2rem;
    border: 1px solid #e5e7eb;
    transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
    height: 100%;
}

.lp-advantage-card-2026:hover {
    box-shadow: 0 25px 50px -12px rgba(45, 95, 65, 0.15);
    transform: translateY(-6px);
    border-color: rgba(45, 95, 65, 0.2);
}

.lp-advantage-icon-2026 {
    width: 3.5rem;
    height: 3.5rem;
    background: var(--brand-2026-50);
    color: var(--brand-2026);
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    transition: all 0.3s ease;
}

.lp-advantage-card-2026:hover .lp-advantage-icon-2026 {
    background: var(--brand-2026);
    color: #fff;
    transform: scale(1.1);
}

.lp-advantage-card-2026 h3 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 1rem;
    transition: color 0.2s ease;
}

.lp-advantage-card-2026:hover h3 {
    color: var(--brand-2026);
}

.lp-advantage-card-2026 ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.lp-advantage-card-2026 li {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
    color: #4b5563;
    font-size: 0.9375rem;
    line-height: 1.5;
}

.lp-advantage-card-2026 li [data-lucide] {
    flex-shrink: 0;
    margin-top: 0.125rem;
}

/* 14.9 District Cards 2026 */
.lp-district-card-2026 {
    background: #fff;
    padding: 1.5rem 2rem;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    position: relative;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
    min-height: 180px;
}

.lp-district-card-2026::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 6rem;
    height: 6rem;
    background: var(--brand-2026-50);
    border-radius: 0 0 0 100%;
    margin: -1rem -1rem 0 0;
    transition: all 0.3s ease;
    opacity: 0.5;
}

.lp-district-card-2026:hover::before {
    transform: scale(1.2);
    background: var(--brand-2026-100);
    opacity: 1;
}

.lp-district-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.25);
    box-shadow: 0 25px 50px -12px rgba(45, 95, 65, 0.12);
    transform: translateY(-4px);
}

.lp-district-card-2026 .district-icon {
    width: 3rem;
    height: 3rem;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--brand-2026);
    margin-bottom: 1rem;
    position: relative;
    z-index: 1;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.lp-district-card-2026:hover .district-icon {
    transform: scale(1.1);
}

.lp-district-card-2026 h3 {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0 0 0.75rem 0;
    position: relative;
    z-index: 1;
    transition: color 0.2s ease;
}

.lp-district-card-2026:hover h3 {
    color: var(--brand-2026);
}

.lp-district-card-2026 p {
    font-size: 0.9375rem;
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
    position: relative;
    z-index: 1;
}

/* 14.10 Final CTA Section 2026 */
.lp-final-cta-2026 {
    background: linear-gradient(135deg, var(--brand-2026) 0%, var(--brand-2026-light) 100%);
    padding: 5rem 0;
    text-align: center;
    color: #fff;
    position: relative;
    overflow: hidden;
}

.lp-final-cta-2026::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 100%;
    height: 200%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, transparent 60%);
    animation: lp-cta-pulse-2026 4s ease-in-out infinite;
}

@keyframes lp-cta-pulse-2026 {
    0%, 100% {
        transform: scale(1);
        opacity: 0.5;
    }
    50% {
        transform: scale(1.2);
        opacity: 0.3;
    }
}

.lp-final-cta-2026 h3 {
    color: #fff;
    font-size: 1.875rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    position: relative;
    z-index: 1;
}

.lp-final-cta-2026 p {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.125rem;
    max-width: 42rem;
    margin: 0 auto 2.5rem;
    position: relative;
    z-index: 1;
}

.lp-final-cta-2026 .cta-buttons {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
    position: relative;
    z-index: 1;
}

.lp-final-cta-2026 .btn-white {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: #fff;
    color: var(--brand-2026);
    font-weight: 700;
    padding: 0.875rem 2rem;
    border-radius: 0.75rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.lp-final-cta-2026 .btn-white:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    color: var(--brand-2026);
}

.lp-final-cta-2026 .btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: transparent;
    border: 2px solid #fff;
    color: #fff;
    font-weight: 700;
    padding: 0.875rem 2rem;
    border-radius: 0.75rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.lp-final-cta-2026 .btn-outline:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateY(-3px);
    color: #fff;
}

/* 14.11 Sticky CTA 2026 */
.lp-sticky-cta-2026 {
    position: fixed;
    bottom: 1.5rem;
    left: 50%;
    transform: translateX(-50%) translateY(6rem);
    opacity: 0;
    visibility: hidden;
    z-index: 50;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.lp-sticky-cta-2026.visible {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
    visibility: visible;
}

.lp-sticky-cta-2026 button,
.lp-sticky-cta-2026 a {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--brand-2026);
    color: #fff;
    font-weight: 700;
    padding: 0.875rem 2rem;
    border-radius: 9999px;
    border: none;
    box-shadow: 0 25px 50px -12px rgba(45, 95, 65, 0.4);
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
}

.lp-sticky-cta-2026 button:hover,
.lp-sticky-cta-2026 a:hover {
    transform: scale(1.05);
    background: var(--brand-2026-light);
    color: #fff;
}

/* 14.12 Guide Accordion 2026 */
.lp-guide-accordion-2026 {
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}

.lp-guide-accordion-2026 .panel-heading {
    background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%);
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid #e5e7eb;
    transition: background 0.2s ease;
}

.lp-guide-accordion-2026 .panel-heading:hover {
    background: linear-gradient(135deg, var(--brand-2026-50) 0%, var(--brand-2026-100) 100%);
}

.lp-guide-accordion-2026 .panel-title a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none;
    color: #1f2937;
    font-weight: 600;
    font-size: 1.125rem;
}

.lp-guide-accordion-2026 .panel-title a:hover {
    color: var(--brand-2026);
}

.lp-guide-accordion-2026 .panel-body {
    padding: 1.5rem;
    background: #fff;
}

.lp-guide-accordion-2026 .panel-title .fa-chevron-down {
    transition: transform 0.3s ease;
    color: #6b7280;
}

.lp-guide-accordion-2026 .panel-title a[aria-expanded="true"] .fa-chevron-down,
.lp-guide-accordion-2026 .panel-title a:not(.collapsed) .fa-chevron-down {
    transform: rotate(180deg);
}

/* 14.13 Local FAQ Box 2026 */
.lp-local-faq-2026 {
    background: var(--brand-2026-50);
    border: 1px solid rgba(45, 95, 65, 0.15);
    border-radius: 0.75rem;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.lp-local-faq-2026 h4 {
    margin: 0 0 1rem 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--brand-2026);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lp-local-faq-2026 dl {
    margin: 0;
}

.lp-local-faq-2026 dt {
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 0.375rem;
}

.lp-local-faq-2026 dd {
    color: #4b5563;
    font-size: 0.9375rem;
    line-height: 1.6;
    margin: 0 0 1rem 0;
}

.lp-local-faq-2026 dd:last-child {
    margin-bottom: 0;
}

/* 14.14 Stations Grid 2026 */
.lp-stations-grid-2026 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
}

@media (min-width: 768px) {
    .lp-stations-grid-2026 {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* 14.15 Section Headers 2026 */
.lp-section-header-2026 {
    text-align: center;
    margin-bottom: 3rem;
}

.lp-section-header-2026 .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 9999px;
    font-size: 0.875rem;
    font-weight: 600;
    color: #4b5563;
    margin-bottom: 1.5rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.lp-section-header-2026 .section-badge [data-lucide] {
    color: var(--brand-2026);
}

.lp-section-header-2026 h2 {
    font-size: 1.875rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 1rem;
}

@media (min-width: 768px) {
    .lp-section-header-2026 h2 {
        font-size: 2.25rem;
    }
}

.lp-section-header-2026 p {
    font-size: 1.125rem;
    color: #6b7280;
    max-width: 42rem;
    margin: 0 auto;
    line-height: 1.6;
}

/* 14.16 Main Content Section 2026 */
body#landingpage #main-content-section {
    background: #fff;
}

body#landingpage #main-content-section .intro-seo,
body#landingpage #main-content-section .intro-custom {
    max-width: 56rem; /* max-w-4xl */
    margin: 0 auto 4rem;
    font-size: 1.125rem; /* text-lg */
    color: #4b5563;
    line-height: 1.75;
}

body#landingpage #main-content-section .intro-seo p,
body#landingpage #main-content-section .intro-custom p {
    margin-bottom: 1.5rem;
}

body#landingpage #main-content-section .intro-seo strong,
body#landingpage #main-content-section .intro-custom strong {
    color: #1f2937;
    font-weight: 600;
}

body#landingpage #main-content-section #editor-content h2 {
    font-size: 1.5rem;
    margin: 2.5rem 0 1.5rem;
}

@media (min-width: 768px) {
    body#landingpage #main-content-section #editor-content h2 {
        font-size: 1.875rem;
    }
}

body#landingpage #main-content-section #editor-content p {
    font-size: 1.125rem;
    line-height: 1.75;
    color: #4b5563;
    margin-bottom: 1.5rem;
}

/* 14.17 Reviews Section 2026 */
body#landingpage #reviews-section .lp-card {
    padding: 2rem;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    min-height: 320px;
}

body#landingpage #reviews-section .lp-card blockquote {
    font-size: 1rem;
    line-height: 1.75;
}

/* 14.18 Vehicle Comparison Section 2026 */
body#landingpage #vehicle-comparison {
    background: var(--surface-2026);
}

body#landingpage #vehicle-comparison .title {
    font-size: 1.5rem;
    margin-bottom: 2rem;
}

@media (min-width: 768px) {
    body#landingpage #vehicle-comparison .title {
        font-size: 1.875rem;
    }
}

/* 14.19 Responsive Adjustments 2026 */
@media (max-width: 768px) {
    .lp-section-2026,
    body#landingpage .lp-section {
        padding: 3rem 0;
    }

    .lp-trust-strip-2026 {
        gap: 0.75rem;
        padding: 0.75rem 1rem;
    }

    .lp-trust-strip-2026 .trust-badge {
        flex: 1 1 auto;
        justify-content: center;
        min-width: 140px;
    }

    .lp-final-cta-2026 {
        padding: 3rem 0;
    }

    .lp-final-cta-2026 h3 {
        font-size: 1.5rem;
    }

    .lp-final-cta-2026 .btn-white,
    .lp-final-cta-2026 .btn-outline {
        width: 100%;
        justify-content: center;
    }

    .lp-sticky-cta-2026 button,
    .lp-sticky-cta-2026 a {
        padding: 0.75rem 1.5rem;
        font-size: 0.9375rem;
    }

    .lp-advantage-card-2026 {
        padding: 1.5rem;
    }

    .lp-district-card-2026 {
        padding: 1.25rem 1.5rem;
        min-height: auto;
    }

    body#landingpage h1 {
        font-size: 1.5rem;
    }

    body#landingpage h2,
    body#landingpage .lp-title {
        font-size: 1.25rem;
    }

    body#landingpage p,
    body#landingpage li {
        font-size: 1rem;
    }
}

/* Hide sticky CTA when keyboard is likely open on mobile */
@media (max-height: 500px) {
    .lp-sticky-cta-2026 {
        display: none;
    }
}

/* 14.20 Section Header Typography 2026 */
.lp-section-header-2026 h2 {
    font-size: 2.25rem; /* text-4xl */
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 1.5rem;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

@media (min-width: 768px) {
    .lp-section-header-2026 h2 {
        font-size: 3rem; /* text-5xl */
    }
}

.lp-section-header-2026 p {
    font-size: 1.25rem; /* text-xl */
    color: #6b7280;
    max-width: 42rem;
    margin: 0 auto;
    line-height: 1.6;
}

/* 14.21 Advantage Cards Enhanced 2026 */
.lp-advantage-card-2026 {
    background: #fff;
    border-radius: 1rem;
    padding: 2rem 2.5rem;
    border: 1px solid #e5e7eb;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
    height: 100%;
}

@media (min-width: 768px) {
    .lp-advantage-card-2026 {
        padding: 2.5rem 3rem;
    }
}

.lp-advantage-card-2026:hover {
    box-shadow: 0 25px 50px -12px rgba(45, 95, 65, 0.15);
    transform: translateY(-6px);
    border-color: rgba(45, 95, 65, 0.2);
}

.lp-advantage-icon-2026 {
    width: 3.5rem;
    height: 3.5rem;
    background: var(--brand-2026-50);
    color: var(--brand-2026);
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    transition: all 0.3s ease;
}

.lp-advantage-card-2026:hover .lp-advantage-icon-2026 {
    background: var(--brand-2026);
    color: #fff;
    transform: scale(1.1);
}

.lp-advantage-card-2026 h3 {
    font-size: 1.5rem; /* text-2xl */
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 1.5rem;
    transition: color 0.2s ease;
}

.lp-advantage-card-2026:hover h3 {
    color: var(--brand-2026);
}

.lp-advantage-card-2026 ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.lp-advantage-card-2026 li {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 1rem;
    color: #4b5563;
    font-size: 0.9375rem;
    line-height: 1.6;
}

.lp-advantage-card-2026 li [data-lucide] {
    flex-shrink: 0;
    margin-top: 0.25rem;
    color: var(--brand-2026);
}

/* 14.22 District Cards Enhanced 2026 */
.lp-district-card-2026 {
    background: #fff;
    padding: 2rem 2.5rem;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    position: relative;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
    min-height: 200px;
}

.lp-district-card-2026::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 6rem;
    height: 6rem;
    background: var(--brand-2026-50);
    border-radius: 0 0 0 100%;
    margin: -1rem -1rem 0 0;
    transition: all 0.3s ease;
    opacity: 0.5;
}

.lp-district-card-2026:hover::before {
    transform: scale(1.2);
    background: var(--brand-2026-100);
    opacity: 1;
}

.lp-district-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.25);
    box-shadow: 0 25px 50px -12px rgba(45, 95, 65, 0.12);
    transform: translateY(-4px);
}

.lp-district-card-2026 .district-icon {
    width: 3rem;
    height: 3rem;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--brand-2026);
    margin-bottom: 1.25rem;
    position: relative;
    z-index: 1;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.lp-district-card-2026:hover .district-icon {
    transform: scale(1.1);
}

.lp-district-card-2026 h3 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0 0 1rem 0;
    position: relative;
    z-index: 1;
    transition: color 0.2s ease;
}

.lp-district-card-2026:hover h3 {
    color: var(--brand-2026);
}

.lp-district-card-2026 p {
    font-size: 1rem;
    color: #6b7280;
    line-height: 1.7;
    margin: 0;
    position: relative;
    z-index: 1;
}

/* 14.23 Final CTA Enhanced 2026 */
.lp-final-cta-2026 {
    background: linear-gradient(135deg, var(--brand-2026) 0%, var(--brand-2026-light) 100%);
    padding: 6rem 0;
    text-align: center;
    color: #fff;
    position: relative;
    overflow: hidden;
}

.lp-final-cta-2026 h3 {
    color: #fff;
    font-size: 2.25rem; /* text-4xl */
    font-weight: 700;
    margin-bottom: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    position: relative;
    z-index: 1;
}

@media (min-width: 768px) {
    .lp-final-cta-2026 h3 {
        font-size: 2.5rem;
    }
}

.lp-final-cta-2026 p {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.25rem; /* text-xl */
    max-width: 42rem;
    margin: 0 auto 3rem;
    position: relative;
    z-index: 1;
    line-height: 1.6;
}

.lp-final-cta-2026 .btn-white {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: #fff;
    color: var(--brand-2026);
    font-weight: 700;
    padding: 1rem 2.5rem;
    border-radius: 0.75rem;
    font-size: 1.5rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.lp-final-cta-2026 .btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: transparent;
    border: 2px solid #fff;
    color: #fff;
    font-weight: 700;
    padding: 1rem 2.5rem;
    border-radius: 0.75rem;
    font-size: 1.5rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

/* 14.24 Table Enhanced 2026 */
.lp-table-2026 thead th {
    padding: 1.25rem 1.5rem;
    font-weight: 700;
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #fff;
    text-align: left;
}

.lp-table-2026 tbody td {
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid #f3f4f6;
    vertical-align: middle;
    font-size: 1rem;
}

/* 14.25 Station Cards Enhanced 2026 */
.lp-station-card-2026 {
    background: #fff;
    padding: 1.5rem 2rem;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    margin-bottom: 1rem;
    transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
    display: block;
}

.lp-station-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.3);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.1);
    transform: translateX(8px);
}

.lp-station-card-2026 a {
    font-weight: 700;
    font-size: 1.125rem;
    color: #1f2937;
    text-decoration: none;
    display: block;
    margin-bottom: 0.5rem;
    transition: color 0.2s ease;
}

.lp-station-card-2026:hover a {
    color: var(--brand-2026);
}

.lp-station-card-2026 .station-street,
.lp-station-card-2026 .station-city {
    display: block;
    font-size: 1rem;
    color: #6b7280;
    line-height: 1.5;
}

/* 14.26 FAQ Enhanced 2026 */
.lp-faq-2026 .panel-title {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
}

.lp-faq-2026 .panel-body {
    padding: 0 1.5rem 2rem 3.25rem;
    color: #4b5563;
    line-height: 1.8;
    font-size: 1rem;
}

/* 14.27 Trust Strip Enhanced 2026 */
.lp-trust-strip-2026 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.5rem;
    padding: 1.25rem 2rem;
    background: rgba(45, 95, 65, 0.05);
    border: 1px solid rgba(45, 95, 65, 0.1);
    border-radius: 1rem;
    margin-bottom: 2rem;
}

.lp-trust-strip-2026 .trust-badge {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.25rem;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 0.75rem;
    transition: all 0.3s ease;
    font-size: 0.9375rem;
    font-weight: 500;
}

/* 14.28 Intro Block 2026 (Mockup: max-w-4xl mx-auto mb-16) */
body#landingpage .lp-intro-block-2026 {
    max-width: 56rem !important; /* max-w-4xl = 896px */
    margin: 0 auto 4rem !important;
}

body#landingpage .lp-intro-text-2026,
body#landingpage .lp-intro-text-2026 p {
    font-size: 1.25rem !important; /* text-xl = 20px für bessere Lesbarkeit */
    color: #4b5563 !important;
    line-height: 1.75 !important;
}

body#landingpage .lp-intro-text-2026 p {
    margin-bottom: 1.5rem !important;
}

body#landingpage .lp-intro-text-2026 p:last-child {
    margin-bottom: 0 !important;
}

body#landingpage .lp-intro-text-2026 strong {
    color: #1f2937 !important;
    font-weight: 600 !important;
}

body#landingpage .lp-intro-text-2026 strong.text-brand {
    color: var(--brand-2026) !important;
    font-weight: 500 !important;
}

/* 14.29 Content Block 2026 */
body#landingpage .lp-content-block-2026 {
    max-width: 56rem !important;
    margin: 0 auto !important;
}

body#landingpage .lp-content-block-2026 h2 {
    font-size: 1.875rem !important;
    font-weight: 700 !important;
    color: #1f2937 !important;
    margin: 3rem 0 1.5rem !important;
    line-height: 1.3 !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-content-block-2026 h2 {
        font-size: 2.25rem !important; /* text-4xl */
    }
}

body#landingpage .lp-content-block-2026 p {
    font-size: 1.125rem !important;
    line-height: 1.75 !important;
    color: #4b5563 !important;
    margin-bottom: 1.5rem !important;
}

body#landingpage .lp-content-block-2026 ul,
body#landingpage .lp-content-block-2026 ol {
    margin-bottom: 1.5rem !important;
    padding-left: 1.5rem !important;
}

body#landingpage .lp-content-block-2026 li {
    font-size: 1.125rem !important;
    line-height: 1.75 !important;
    color: #4b5563 !important;
    margin-bottom: 0.75rem !important;
}

/* 14.30 Text Utility Classes */
.text-brand {
    color: var(--brand-2026) !important;
}

.bg-white {
    background-color: #fff !important;
}

.bg-surface {
    background-color: var(--surface-2026) !important;
}

/* ============================================================
   15. MOCKUP 2026 - Hauptsektion Layout (zentriert)
   ============================================================ */

/* 15.1 Main Section */
.lp-main-2026 {
    background: #fff;
    padding: 4rem 0 6rem;
}

@media (min-width: 768px) {
    .lp-main-2026 {
        padding: 6rem 0 8rem;
    }
}

/* 15.2 Intro Text Block - zentriert wie im Mockup */
.lp-intro-2026 {
    max-width: 680px;
    margin: 0 auto 6rem;
    text-align: center;
}

.lp-intro-2026 p {
    font-size: 1.125rem !important;
    line-height: 1.8 !important;
    color: #374151 !important;
    margin-bottom: 1.5rem !important;
}

.lp-intro-2026 p:last-child {
    margin-bottom: 0 !important;
}

.lp-intro-2026 strong {
    color: rgb(45 95 65 / var(--tw-text-opacity, 1));
    font-weight: 600 !important;
}

@media (min-width: 768px) {
    .lp-intro-2026 {
        margin-bottom: 8rem;
    }

    .lp-intro-2026 p {
        font-size: 1.25rem !important;
    }
}

/* 15.3 Section Header mit Icon Badge */
.lp-section-header-2026 {
    text-align: center;
    margin-bottom: 3rem;
}

.lp-icon-badge-2026 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4.5rem;
    height: 4.5rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 50%;
    margin-bottom: 1.5rem;
}

.lp-icon-badge-2026 [data-lucide] {
    width: 2.5rem;
    height: 2.5rem;
}

.lp-section-header-2026 h2 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 1rem 0 !important;
    line-height: 1.2 !important;
}

@media (min-width: 768px) {
    .lp-section-header-2026 h2 {
        font-size: 2.5rem !important;
    }
}

.lp-subtitle-2026 {
    font-size: 1.125rem !important;
    color: #6b7280 !important;
    max-width: 560px;
    margin: 0 auto !important;
    line-height: 1.6 !important;
}

/* 15.4 Benefits Grid - 4 Cards in einer Reihe */
.lp-benefits-grid-2026 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    max-width: 900px;
    margin: 0 auto 3rem;
}

@media (min-width: 768px) {
    .lp-benefits-grid-2026 {
        grid-template-columns: repeat(4, 1fr);
        gap: 1.5rem;
        margin-bottom: 4rem;
    }
}

.lp-benefit-card-2026 {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    padding: 1.5rem 1rem;
    text-align: center;
    transition: all 0.3s ease;
}

.lp-benefit-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.2);
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
    transform: translateY(-4px);
}

@media (min-width: 768px) {
    .lp-benefit-card-2026 {
        padding: 2rem 1.5rem;
    }
}

.lp-benefit-icon-2026 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    background: #f3f4f6;
    color: #9ca3af;
    border-radius: 0.75rem;
    margin-bottom: 1rem;
    transition: all 0.3s ease;
}

.lp-benefit-card-2026:hover .lp-benefit-icon-2026 {
    background: var(--brand-2026, #2d5f41);
    color: #fff;
}

.lp-benefit-icon-2026 [data-lucide] {
    width: 2.25rem;
    height: 2.25rem;
}

.lp-benefit-card-2026 h4 {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 0.25rem 0 !important;
}

.lp-benefit-card-2026 p {
    font-size: 0.875rem !important;
    color: #6b7280 !important;
    margin: 0 !important;
}

/* 15.5 CTA Button zentriert */
.lp-cta-center-2026 {
    text-align: center;
    margin-bottom: 4rem;
}

.lp-btn-primary-2026 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    background: var(--brand-2026, #2d5f41);
    color: #fff !important;
    font-size: 1.4rem;
    font-weight: 700;
    padding: 1rem 2rem;
    border-radius: 0.75rem;
    text-decoration: none !important;
    transition: all 0.3s ease;
    box-shadow: 0 10px 25px -5px rgba(45, 95, 65, 0.3);
}

.lp-btn-primary-2026:hover {
    background: var(--brand-2026-dark, #1e402c);
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 15px 35px -5px rgba(45, 95, 65, 0.4);
}

.lp-btn-primary-2026 [data-lucide] {
    width: 1.25rem;
    height: 1.25rem;
}

/* ============================================================
   16. KONZEPT2026 - Wichtige Hinweise Box (CityDetails.tsx)
   ============================================================ */

.lp-local-hints-2026 {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    padding: 2rem;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    margin-bottom: 3rem;
}

.lp-local-hints-2026::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: var(--brand-2026, #2d5f41);
}

.lp-local-hints-2026 h3 {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 2rem 0 !important;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.lp-local-hints-2026 h3 .hint-icon {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lp-local-hints-2026 h3 .hint-icon [data-lucide] {
    width: 1.25rem;
    height: 1.25rem;
}

.lp-hints-grid-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

@media (min-width: 768px) {
    .lp-hints-grid-2026 {
        grid-template-columns: repeat(1, 1fr);
        gap: 1.5rem;
    }
}

.lp-hint-card-2026 {
    display: flex;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: #f9fafb;
    border: 1px solid #f3f4f6;
    border-radius: 0.75rem;
    transition: all 0.2s ease;
}

.lp-hint-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.2);
    background: #fff;
}

.lp-hint-card-2026 .hint-icon {
    width: 2rem;
    height: 2rem;
    background: #fff;
    color: var(--brand-2026, #2d5f41);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.lp-hint-card-2026 .hint-icon [data-lucide] {
    width: 1rem;
    height: 1rem;
}

.lp-hint-card-2026 .hint-content strong {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.25rem;
}

.lp-hint-card-2026 .hint-content span {
    font-size: 0.875rem;
    color: #6b7280;
    line-height: 1.5;
}

/* ============================================================
   17. KONZEPT2026 - Fahrzeugkategorien Tabelle (CityDetails.tsx)
   ============================================================ */

.lp-vehicle-table-section-2026 {
    margin-bottom: 4rem;
}

.lp-vehicle-table-section-2026 h3 {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    text-align: center;
    margin-bottom: 2rem !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
}

.lp-vehicle-table-section-2026 h3 [data-lucide] {
    color: var(--brand-2026, #2d5f41);
}

.lp-table-container-2026 {
    background: #fff;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    margin-bottom: 1.5rem;
}

.lp-table-2026-v2 {
    width: 100%;
    border-collapse: collapse;
}

.lp-table-2026-v2 thead {
    /* background: #f9fafb; */
    /* padding-top: 0px !IMPORTANT; */
}

.lp-table-2026-v2 thead th {
    padding: 1rem 1.25rem;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6b7280;
    text-align: left;
    border-bottom: 1px solid #e5e7eb;
}

.lp-table-2026-v2 tbody td {
    padding: 1.25rem;
    vertical-align: middle;
    border-bottom: 1px solid #f3f4f6;
}

.lp-table-2026-v2 tbody tr:last-child td {
    border-bottom: none;
}

.lp-table-2026-v2 tbody tr {
    transition: background 0.15s ease;
}

.lp-table-2026-v2 tbody tr:hover {
    background: rgba(249, 250, 251, 0.5);
}

.lp-table-2026-v2 .vehicle-name {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-weight: 700;
    color: #111827;
}

.lp-table-2026-v2 .vehicle-icon {
    width: 2rem;
    height: 2rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 0.2s ease, color 0.2s ease;
}

.lp-table-2026-v2 tbody tr:hover .vehicle-icon {
    background: var(--brand-2026, #2d5f41);
    color: #fff;
}

.lp-table-2026-v2 .vehicle-icon [data-lucide] {
    width: 1rem;
    height: 1rem;
}

.lp-table-2026-v2 .volume {
    font-weight: 500;
    color: #374151;
}

.lp-table-2026-v2 .license-badge {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: 0.375rem;
    background: #f3f4f6;
    color: #374151;
    border: 1px solid #e5e7eb;
}

.lp-table-2026-v2 .price {
    font-weight: 700;
    color: var(--brand-2026, #2d5f41);
}

.lp-table-2026-v2 .ideal {
    font-size: 0.875rem;
    color: #6b7280;
}

.lp-table-footer-2026 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    background: #f9fafb;
    border-top: 1px solid #e5e7eb;
    font-size: 0.875rem;
    color: #6b7280;
}

.lp-table-footer-2026 [data-lucide] {
    width: 1rem;
    height: 1rem;
    color: var(--brand-2026, #2d5f41);
}

.lp-table-footer-2026 a {
    color: var(--brand-2026, #2d5f41);
    font-weight: 600;
    text-decoration: none;
}

.lp-table-footer-2026 a:hover {
    text-decoration: underline;
}

/* ============================================================
   18. KONZEPT2026 - Verfügbare Fahrzeugkategorien (CityMain.tsx)
   ============================================================ */

.lp-categories-section-2026 {
    margin-bottom: 5rem;
}

.lp-categories-section-2026 h2 {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin-bottom: 2rem !important;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.lp-categories-section-2026 h2 .cat-icon {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lp-categories-section-2026 h2 .cat-icon [data-lucide] {
    width: 1.25rem;
    height: 1.25rem;
}

.lp-categories-grid-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
}

@media (min-width: 768px) {
    .lp-categories-grid-2026 {
        grid-template-columns: repeat(3, 1fr);
    }
}

.lp-category-card-2026 {
    background: #fff;
    padding: 2rem;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    transition: all 0.3s ease;
}

.lp-category-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.3);
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
}

.lp-category-card-2026 h3 {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 0.75rem 0 !important;
    transition: color 0.2s ease;
}

.lp-category-card-2026:hover h3 {
    color: var(--brand-2026, #2d5f41);
}

.lp-category-card-2026 p {
    font-size: 1rem !important;
    color: #6b7280 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* ============================================================
   19. KONZEPT2026 - So funktioniert der Preisvergleich
   ============================================================ */

.lp-how-it-works-2026 {
    margin-bottom: 5rem;
}

.lp-how-it-works-2026 h2 {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    text-align: center;
    margin-bottom: 3rem !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
}

.lp-how-it-works-2026 h2 .hiw-icon {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lp-how-it-works-2026 h2 .hiw-icon [data-lucide] {
    width: 1.25rem;
    height: 1.25rem;
}

.lp-steps-container-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    position: relative;
}

@media (min-width: 768px) {
    .lp-steps-container-2026 {
        grid-template-columns: repeat(3, 1fr);
        gap: 3rem;
    }

    /* Connecting line */
    .lp-steps-container-2026::before {
        content: '';
        position: absolute;
        top: 1.5rem;
        left: 16%;
        right: 16%;
        height: 2px;
        background: #e5e7eb;
        z-index: 0;
    }
}

.lp-step-2026 {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    z-index: 1;
}

.lp-step-2026 .step-number {
    width: 3rem;
    height: 3rem;
    background: #fff;
    border: 2px solid var(--brand-2026, #2d5f41);
    color: var(--brand-2026, #2d5f41);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 1.25rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.lp-step-2026 h3 {
    font-size: 1.125rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 0.5rem 0 !important;
}

.lp-step-2026 p {
    font-size: 1rem !important;
    color: #6b7280 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    max-width: 280px;
}

/* ============================================================
   20. KONZEPT2026 - Beratung gewünscht? (Contact Banner)
   ============================================================ */

.lp-contact-banner-2026 {
    background: #fff;
    border-radius: 1rem;
    padding: 2rem;
    border: 1px solid #e5e7eb;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 4rem;
}

@media (min-width: 768px) {
    .lp-contact-banner-2026 {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        padding: 2rem 2.5rem;
    }
}

.lp-contact-banner-2026 .contact-info {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.lp-contact-banner-2026 .contact-icon {
    width: 3rem;
    height: 3rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.lp-contact-banner-2026 .contact-icon [data-lucide] {
    width: 1.5rem;
    height: 1.5rem;
}

.lp-contact-banner-2026 .contact-text h3 {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 0.5rem 0 !important;
}

.lp-contact-banner-2026 .contact-text p {
    font-size: 1rem !important;
    color: #6b7280 !important;
    margin: 0 !important;
}

.lp-contact-banner-2026 .contact-text .hours {
    font-size: 0.875rem !important;
    color: #9ca3af !important;
    margin-top: 0.25rem !important;
}

.lp-contact-banner-2026 .contact-phone {
    text-align: right;
}

.lp-contact-banner-2026 .contact-phone a {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--brand-2026, #2d5f41);
    text-decoration: none;
    transition: color 0.2s ease;
}

.lp-contact-banner-2026 .contact-phone a:hover {
    color: var(--brand-2026-dark, #1e402c);
}

.lp-contact-banner-2026 .contact-phone span {
    display: block;
    font-size: 0.875rem;
    color: #9ca3af;
    margin-top: 0.25rem;
}

/* ============================================================
   21. KONZEPT2026 - Günstige LKW-Angebote (CitySeoContent.tsx)
   ============================================================ */

.lp-seo-section-2026 {
    background: #fff;
    padding: 5rem 0;
    border-top: 1px solid #e5e7eb;
}

.lp-seo-grid-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 3rem;
}

@media (min-width: 1024px) {
    .lp-seo-grid-2026 {
        grid-template-columns: 8fr 4fr;
        gap: 4rem;
    }
}

/* Main Content */
.lp-seo-main-2026 .section-label {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--brand-2026, #2d5f41);
    margin-bottom: 1rem;
}

.lp-seo-main-2026 .section-label [data-lucide] {
    width: 1rem;
    height: 1rem;
}

.lp-seo-main-2026 h2 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    line-height: 1.2 !important;
    margin-bottom: 2rem !important;
}

.lp-seo-main-2026 h2 .text-gradient {
    background: linear-gradient(135deg, var(--brand-2026) 0%, var(--brand-2026-light) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

@media (min-width: 768px) {
    .lp-seo-main-2026 h2 {
        font-size: 2.5rem !important;
    }
}

.lp-seo-main-2026 .intro-text {
    font-size: 1.125rem !important;
    color: #4b5563 !important;
    line-height: 1.75 !important;
    margin-bottom: 2.5rem !important;
}

.lp-seo-main-2026 .intro-text strong {
    color: #111827;
}

.lp-seo-main-2026 .intro-text .highlight {
    color: var(--brand-2026, #2d5f41);
    font-weight: 700;
    text-decoration: underline;
    text-decoration-color: rgba(45, 95, 65, 0.3);
    text-underline-offset: 4px;
}

/* Feature Cards */
.lp-seo-features-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    margin-bottom: 3rem;
}

@media (min-width: 640px) {
    .lp-seo-features-2026 {
        grid-template-columns: repeat(2, 1fr);
    }
}

.lp-seo-feature-card-2026 {
    background: var(--surface-2026, #f8faf9);
    padding: 1.5rem;
    border-radius: 1rem;
    border: 1px solid #e5e7eb;
    transition: all 0.2s ease;
}

.lp-seo-feature-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.2);
}

.lp-seo-feature-card-2026 .feature-icon {
    width: 2.5rem;
    height: 2.5rem;
    background: #fff;
    color: var(--brand-2026, #2d5f41);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.lp-seo-feature-card-2026 .feature-icon [data-lucide] {
    width: 1.25rem;
    height: 1.25rem;
}

.lp-seo-feature-card-2026 h4 {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 0.5rem 0 !important;
}

.lp-seo-feature-card-2026 p {
    font-size: 0.875rem !important;
    color: #6b7280 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Location Info Box */
.lp-location-info-2026 {
    background: rgba(45, 95, 65, 0.05);
    padding: 2rem;
    border-radius: 1rem;
    border: 1px solid rgba(45, 95, 65, 0.1);
}

.lp-location-info-2026 h4 {
    font-size: 1.125rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 1.5rem 0 !important;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lp-location-info-2026 h4 [data-lucide] {
    color: var(--brand-2026, #2d5f41);
    width: 1.25rem;
    height: 1.25rem;
}

.lp-location-info-grid-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.75rem;
}

@media (min-width: 640px) {
    .lp-location-info-grid-2026 {
        grid-template-columns: repeat(2, 1fr);
    }
}

.lp-location-info-item-2026 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: #fff;
    border-radius: 0.75rem;
    border: 1px solid rgba(255, 255, 255, 0.5);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
}

.lp-location-info-item-2026 [data-lucide] {
    width: 1rem;
    height: 1rem;
    color: var(--brand-2026-light, #427a58);
}

/* Sidebar */
.lp-seo-sidebar-2026 {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

/* Contact Widget */
.lp-contact-widget-2026 {
    background: #fff;
    border-radius: 1rem;
    padding: 2rem;
    text-align: center;
    border: 1px solid #e5e7eb;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.lp-contact-widget-2026::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--brand-2026, #2d5f41);
}

.lp-contact-widget-2026 .widget-icon {
    width: 4rem;
    height: 4rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    transition: transform 0.3s ease;
}

.lp-contact-widget-2026:hover .widget-icon {
    transform: scale(1.1);
}

.lp-contact-widget-2026 .widget-icon [data-lucide] {
    width: 2rem;
    height: 2rem;
}

.lp-contact-widget-2026 h4 {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 0.5rem 0 !important;
}

.lp-contact-widget-2026 .subtitle {
    font-size: 0.875rem !important;
    color: #6b7280 !important;
    margin-bottom: 1.5rem !important;
}

.lp-contact-widget-2026 .phone {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--brand-2026, #2d5f41);
    text-decoration: none;
    display: block;
    margin-bottom: 0.5rem;
}

.lp-contact-widget-2026 .hours {
    font-size: 0.75rem;
    color: #9ca3af;
    margin-bottom: 1.5rem;
}

.lp-contact-widget-2026 .cta-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.875rem 1.5rem;
    background: #111827;
    color: #fff;
    font-weight: 700;
    border-radius: 0.75rem;
    text-decoration: none;
    transition: all 0.2s ease;
}

.lp-contact-widget-2026 .cta-btn:hover {
    background: #000;
    color: #fff;
}

.lp-contact-widget-2026 .cta-btn [data-lucide] {
    width: 1rem;
    height: 1rem;
}

/* Price Widget */
.lp-price-widget-2026 {
    background: #111827;
    border-radius: 1rem;
    padding: 2rem;
    color: #fff;
    position: relative;
    overflow: hidden;
}

.lp-price-widget-2026::before {
    content: '';
    position: absolute;
    top: -2rem;
    right: -2rem;
    width: 8rem;
    height: 8rem;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 50%;
    filter: blur(40px);
}

.lp-price-widget-2026 h5 {
    font-size: 1.125rem !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 1.5rem 0 !important;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    position: relative;
    z-index: 1;
}

.lp-price-widget-2026 h5 [data-lucide] {
    color: var(--brand-2026-light, #427a58);
    width: 1.25rem;
    height: 1.25rem;
}

.lp-price-list-2026 {
    position: relative;
    z-index: 1;
}

.lp-price-item-2026 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.lp-price-item-2026:last-child {
    border-bottom: none;
}

.lp-price-item-2026 .label {
    font-size: 0.875rem;
    color: #9ca3af;
}

.lp-price-item-2026 .price {
    font-weight: 700;
    color: var(--brand-2026-light, #427a58);
}

.lp-price-widget-2026 .footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 0.75rem;
    color: #6b7280;
    position: relative;
    z-index: 1;
}

.lp-price-widget-2026 .footer .since {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    color: rgba(255, 255, 255, 0.4);
}

.lp-price-widget-2026 .footer .since [data-lucide] {
    width: 1.75rem;
    height: 1.75rem;
}

/* ============================================================
   22. KONZEPT2026 - Feine Verbesserungen (Mockup-Perfektion)
   ============================================================ */

/* 22.1 Advantages Section - Background Decoration (CityAdvantages.tsx) */
#advantages-section {
    position: relative;
    overflow: hidden;
}

#advantages-section::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 33%;
    height: 100%;
    background: #f9fafb;
    transform: skewX(-12deg);
    transform-origin: top right;
    opacity: 0.5;
    z-index: 0;
    pointer-events: none;
}

/* Advantages Header mit Dekorations-Linie */
#advantages-section .lp-section-header-2026 {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    #advantages-section .lp-section-header-2026 {
        flex-direction: row;
        align-items: flex-end;
        justify-content: space-between;
        gap: 2rem;
    }

    #advantages-section .lp-section-header-2026::after {
        content: '';
        width: 8rem;
        height: 4px;
        background: var(--brand-2026, #2d5f41);
        border-radius: 9999px;
        flex-shrink: 0;
        margin-bottom: 1rem;
    }
}

#advantages-section .lp-section-header-2026 h2 {
    text-align: left !important;
    margin: 0 !important;
}

#advantages-section .lp-section-header-2026 p {
    text-align: left !important;
    margin: 0.5rem 0 0 0 !important;
}

/* Advantages Cards Content */
#advantages-section .row {
    position: relative;
    z-index: 1;
}

/* 22.2 District Cards - Hover Reveal "Station finden" */
.lp-district-card-2026 .find-station {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--brand-2026, #2d5f41);
    opacity: 0;
    transform: translateY(0.5rem);
    transition: all 0.3s ease;
    margin-top: 1rem;
    position: relative;
    z-index: 1;
}

.lp-district-card-2026:hover .find-station {
    opacity: 1;
    transform: translateY(0);
}

.lp-district-card-2026 .find-station [data-lucide] {
    width: 1rem;
    height: 1rem;
    transition: transform 0.3s ease;
}

.lp-district-card-2026:hover .find-station [data-lucide] {
    transform: translateX(4px);
}

/* 22.3 Advantage Cards - Größere Icons (w-14 h-14 = 3.5rem) */
.lp-advantage-card-2026 .lp-advantage-icon-2026,
#advantages-section .lp-advantage-icon-2026 {
    width: 3.5rem !important;
    height: 3.5rem !important;
}

.lp-advantage-card-2026 .lp-advantage-icon-2026 [data-lucide],
#advantages-section .lp-advantage-icon-2026 [data-lucide] {
    width: 1.75rem !important;
    height: 1.75rem !important;
}

/* 22.4 Final CTA - Verbesserte Größen */
.lp-final-cta-2026 h3 [data-lucide] {
    width: 2rem;
    height: 2rem;
}

/* 22.5 Section Title mit Icon - flexibles Layout */
body#landingpage main h2[class*="title"],
body#landingpage main h3[class*="title"],
body#landingpage .landingpage-main h2[class*="title"],
body#landingpage .landingpage-main h3[class*="title"] {
    display: flex !important;
    align-items: center !important;
    gap: 0.75rem !important;
}

/* Hub-Seiten: Section-Titel zentriert als inline-block */
body#landingpage main h2.hub-section-title,
body#landingpage .landingpage-main h2.hub-section-title {
    display: inline-block !important;
}

/* 22.6 FAQ Local Box - grüner Hintergrund wie im Mockup */
.lp-local-faq-2026,
body#landingpage #faq-section .lp-local-faq-2026 {
    background: #ecfdf5 !important;
    border-color: rgba(45, 95, 65, 0.2) !important;
}

/* 22.7 Verbesserte Hover-States für alle Cards */
.lp-category-card-2026:hover,
.lp-benefit-card-2026:hover,
.lp-seo-feature-card-2026:hover {
    transform: translateY(-4px);
}

/* 22.8 Steps Numbers - Verbesserte Sichtbarkeit */
.lp-step-2026 .step-number {
    background: #fff;
    border: 2px solid var(--brand-2026, #2d5f41);
    color: var(--brand-2026, #2d5f41);
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(45, 95, 65, 0.15);
}

/* 22.9 Contact Banner - Verbesserte Telefonnummer-Größe */
.lp-contact-banner-2026 .contact-phone a {
    font-size: 1.75rem !important;
}

/* 22.10 Tabelle - Icon-Hover-Effekte (nur Farbe, keine Bewegung) */
.lp-table-2026-v2 tbody tr:hover .vehicle-icon {
    background: var(--brand-2026, #2d5f41) !important;
    color: #fff !important;
}

/* 22.11 Trust Badges - Verbesserte Hover-Animation */
.lp-trust-strip-2026 .trust-badge:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 25px rgba(45, 95, 65, 0.15) !important;
}

/* 22.12 Sticky CTA - Größerer Button */
.lp-sticky-cta button,
.lp-sticky-cta a,
.lp-sticky-cta-2026 button,
.lp-sticky-cta-2026 a {
    padding: 1rem 2rem !important;
    font-size: 1.15rem !important;
}

/* 22.13 SEO Section Title Gradient - Verbessert */
.lp-seo-main-2026 h2 .text-gradient,
.lp-seo-main-2026 h2 span.text-gradient {
    background: linear-gradient(135deg, var(--brand-2026, #2d5f41) 0%, var(--brand-2026-light, #427a58) 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}

/* 22.14 District Cards Grid - 4 Spalten auf großen Bildschirmen */
@media (min-width: 1200px) {
    #districts-section .row {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 1.5rem !important;
    }

    #districts-section .row [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
    }
}

/* 22.15 Intro Text - Zentriert mit max-width wie im Mockup */
body#landingpage #main-content-section .lp-intro-block-2026 {
    text-align: center !important;
}

body#landingpage #main-content-section .lp-intro-text-2026 {
    text-align: center !important;
}

/* 22.16 FAQ Accordion - Verbesserte Expand/Collapse Animation */
.lp-faq-2026 .panel-collapse {
    transition: height 0.35s ease !important;
}

.lp-faq-2026 .panel.active .panel-heading,
.lp-faq-2026 .panel:has(.in) .panel-heading {
    background: var(--brand-2026-50, #f2f7f4) !important;
}

/* 22.17 Contact Widget Button - Dunkler Hintergrund */
.lp-contact-widget-2026 .cta-btn {
    background: #111827 !important;
}

.lp-contact-widget-2026 .cta-btn:hover {
    background: #000 !important;
}

/* ============================================================
   23. KONZEPT2026 - Finale Mockup-Perfektion (2026-01-31)
   ============================================================ */

/* 23.1 Wichtige Hinweise Box - Grüner Streifen links (CityDetails.tsx) */
body#landingpage #local-info-section .lp-local-hints-2026,
body#landingpage .lp-local-hints-2026,
body#landingpage [id*="local-info"] .local-info-box {
    position: relative !important;
    border-left: 4px solid var(--brand-2026, #2d5f41) !important;
    padding-left: 2rem !important;
}

/* 23.2 Advantages Section - Sichtbarer Background Decoration */
#advantages-section,
#expertise-section {
    position: relative !important;
    overflow: hidden !important;
    background: #fff !important;
}

#advantages-section::before,
#expertise-section::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    right: -10% !important;
    width: 40% !important;
    height: 100% !important;
    background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%) !important;
    transform: skewX(-12deg) !important;
    transform-origin: top right !important;
    opacity: 0.7 !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

#advantages-section > .container,
#expertise-section > .container {
    position: relative !important;
    z-index: 1 !important;
}

/* 23.3 Advantages Header - Dekorations-Linie rechts */
#expertise-section > .container > .row:first-child {
    display: flex !important;
    align-items: flex-end !important;
    margin-bottom: 3rem !important;
}

#expertise-section > .container > .row:first-child .col-md-4 {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: flex-end !important;
}

/* 23.4 Benefits Grid - Verbesserte Hover-Animation */
body#landingpage .lp-benefits-grid-2026 .lp-benefit-card-2026,
body#landingpage #main-content-section .lp-benefit-card-2026 {
    transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

body#landingpage .lp-benefits-grid-2026 .lp-benefit-card-2026:hover,
body#landingpage #main-content-section .lp-benefit-card-2026:hover {
    transform: translateY(-6px) !important;
    border-color: rgba(45, 95, 65, 0.25) !important;
    box-shadow: 0 15px 35px -10px rgba(45, 95, 65, 0.15) !important;
}

/* 23.5 Steps Connector - Solide Linie auf 50% Card-Höhe */
body#landingpage .lp-steps-container-2026::before,
body#landingpage .lp-how-it-works-2026 .lp-steps-container-2026::before {
    top: 50% !important;
    left: 16% !important;
    right: 16% !important;
    height: 2px !important;
    background: linear-gradient(90deg, rgba(45, 95, 65, 0) 0%, rgba(45, 95, 65, 0.35) 12%, rgba(45, 95, 65, 0.35) 88%, rgba(45, 95, 65, 0) 100%) !important;
    border: 0 !important;
    transform: translateY(-1px);
    z-index: 0;
}

body#landingpage .lp-steps-container-2026::after {
    content: none !important;
}

/* Icon-Halo nicht mehr nötig (Linie liegt nicht mehr auf Icon-Höhe) */
body#landingpage .lp-step-2026 .step-icon {
    box-shadow: none !important;
}

body#landingpage .lp-step-2026.highlighted .step-icon {
    box-shadow: none !important;
}

/* Step-Nummer als kleines Badge auf dem Icon (klare Reihenfolge) */
body#landingpage .lp-steps-container-2026 .lp-step-2026 .step-icon::after {
    counter-increment: step-counter;
    content: counter(step-counter);
    position: absolute;
    top: -6px;
    right: -6px;
    width: 22px;
    height: 22px;
    background: #2d5f41;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 800;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(45, 95, 65, 0.25);
    z-index: 3;
}

body#landingpage .lp-steps-container-2026 {
    counter-reset: step-counter;
}

body#landingpage .lp-step-2026.highlighted .step-icon::after {
    background: #fff;
    color: #2d5f41;
    border-color: #2d5f41;
}

/* 23.6 Step Numbers - Größer und prominenter */
body#landingpage .lp-step-2026 .step-number {
    width: 3.5rem !important;
    height: 3.5rem !important;
    font-size: 1.5rem !important;
    border-width: 3px !important;
    box-shadow: 0 6px 20px rgba(45, 95, 65, 0.2) !important;
}

/* 23.7 Contact Banner - Verbessertes Layout */
body#landingpage .lp-contact-banner-2026 {
    background: linear-gradient(135deg, #fff 0%, #fafbfc 100%) !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 8px 25px -5px rgba(0, 0, 0, 0.08) !important;
}

body#landingpage .lp-contact-banner-2026:hover {
    border-color: rgba(45, 95, 65, 0.2) !important;
    box-shadow: 0 12px 35px -5px rgba(0, 0, 0, 0.12) !important;
}

/* 23.8 Station Cards - Verbesserte Card-Struktur */
body#landingpage .lp-station-card-2026 {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 0.75rem !important;
    padding: 1.25rem 1.5rem !important;
    transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

body#landingpage .lp-station-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.3) !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08) !important;
    transform: translateX(6px) !important;
}

/* 23.9 Fahrzeugkategorien Tabelle - Icon-Hover-Effekte (nur Farbe, keine Bewegung) */
body#landingpage .lp-table-2026-v2 tbody tr {
    transition: background 0.2s ease !important;
}

body#landingpage .lp-table-2026-v2 tbody tr:hover {
    background: rgba(45, 95, 65, 0.03) !important;
}

body#landingpage .lp-table-2026-v2 .vehicle-icon {
    transition: background 0.2s ease, color 0.2s ease !important;
}

body#landingpage .lp-table-2026-v2 tbody tr:hover .vehicle-icon {
    background: var(--brand-2026, #2d5f41) !important;
    color: #fff !important;
}

/* 23.10 SEO Section - Verbessertes 8/4 Grid Layout */
body#landingpage .lp-seo-grid-2026 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 2.5rem !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-seo-grid-2026 {
        grid-template-columns: 2fr 1fr !important;
        gap: 3rem !important;
    }
}

/* 23.11 SEO Title Gradient - Verbessert */
body#landingpage .lp-seo-main-2026 h2 {
    font-size: 2rem !important;
    line-height: 1.2 !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-seo-main-2026 h2 {
        font-size: 2.5rem !important;
    }
}

/* 23.12 Price Widget - Dunkler Hintergrund mit Glow */
body#landingpage .lp-price-widget-2026 {
    background: linear-gradient(135deg, #111827 0%, #1f2937 100%) !important;
    border-radius: 1rem !important;
    box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.3) !important;
}

/* 23.13 FAQ Local Box - Grüner Hintergrund wie im Mockup */
body#landingpage #faq-section .lp-local-faq-2026,
body#landingpage .lp-local-faq-2026 {
    background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%) !important;
    border: 1px solid rgba(45, 95, 65, 0.2) !important;
    border-radius: 0.75rem !important;
    padding: 1.5rem !important;
}

/* 23.14 District Cards - Verbesserte Ecken-Dekoration */
body#landingpage .lp-district-card-2026::before {
    background: linear-gradient(135deg, var(--brand-2026-50, #f2f7f4) 0%, var(--brand-2026-100, #e1ede6) 100%) !important;
    opacity: 0.6 !important;
}

body#landingpage .lp-district-card-2026:hover::before {
    opacity: 1 !important;
    transform: scale(1.3) !important;
}

/* 23.15 Final CTA - Verstärkter Gradient */
body#landingpage .lp-final-cta-2026 {
    background: linear-gradient(135deg, var(--brand-2026, #2d5f41) 0%, var(--brand-2026-light, #427a58) 50%, var(--brand-2026, #2d5f41) 100%) !important;
    background-size: 200% 100% !important;
    animation: gradientShift 8s ease infinite !important;
}

@keyframes gradientShift {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

/* 23.16 Sticky CTA - Verbesserte Sichtbarkeit */
body#landingpage .lp-sticky-cta,
body#landingpage .lp-sticky-cta-2026 {
    z-index: 1000 !important;
}

body#landingpage .lp-sticky-cta button,
body#landingpage .lp-sticky-cta a,
body#landingpage .lp-sticky-cta-2026 button,
body#landingpage .lp-sticky-cta-2026 a {
    background: linear-gradient(135deg, var(--brand-2026, #2d5f41) 0%, var(--brand-2026-dark, #1e402c) 100%) !important;
    box-shadow: 0 10px 30px -5px rgba(45, 95, 65, 0.5), 0 4px 6px -2px rgba(0, 0, 0, 0.1) !important;
}

body#landingpage .lp-sticky-cta button:hover,
body#landingpage .lp-sticky-cta a:hover,
body#landingpage .lp-sticky-cta-2026 button:hover,
body#landingpage .lp-sticky-cta-2026 a:hover {
    transform: scale(1.08) !important;
    box-shadow: 0 15px 40px -5px rgba(45, 95, 65, 0.6), 0 6px 10px -2px rgba(0, 0, 0, 0.15) !important;
}

/* 23.17 Advantage Cards - Größere Icons und bessere Proportionen */
body#landingpage .lp-advantage-card-2026 {
    padding: 2.5rem !important;
    border-radius: 1.25rem !important;
}

body#landingpage .lp-advantage-card-2026 .lp-advantage-icon-2026 {
    width: 4rem !important;
    height: 4rem !important;
    border-radius: 1.25rem !important;
    margin-bottom: 2rem !important;
}

body#landingpage .lp-advantage-card-2026 .lp-advantage-icon-2026 [data-lucide] {
    width: 2rem !important;
    height: 2rem !important;
}

body#landingpage .lp-advantage-card-2026 h3 {
    font-size: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}

body#landingpage .lp-advantage-card-2026 li {
    font-size: 1rem !important;
    margin-bottom: 1rem !important;
}

/* 23.18 Section Spacing - Mehr Whitespace wie im Mockup */
body#landingpage .lp-section {
    padding: 4rem 0 !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-section {
        padding: 5rem 0 !important;
    }
}

@media (min-width: 1024px) {
    body#landingpage .lp-section {
        padding: 6rem 0 !important;
    }
}

/* 23.19 Trust Strip - Subtilerer Hintergrund */
body#landingpage .lp-trust-strip-2026 {
    background: rgba(45, 95, 65, 0.03) !important;
    border: 1px solid rgba(45, 95, 65, 0.08) !important;
    padding: 1rem 1.5rem !important;
    border-radius: 1rem !important;
}

/* 23.20 Global Link Hover - Brand Color */
body#landingpage main a:not(.btn):not(.lp-btn):hover {
    color: var(--brand-2026, #2d5f41) !important;
}

/* ============================================================
   24. Layout & Typography Fixes (2026-01-31)
   - Größere Schriften
   - Linksbündige Überschriften
   - 4x2 District Grid
   - Unauffällige Links (grau)
   ============================================================ */

/* 24.1 GLOBALE SCHRIFTGRÖSSEN - Deutlich größer für Lesbarkeit */
body#landingpage,
body#landingpage main,
body#landingpage .landingpage-main {
    font-size: 1.1875rem !important;
    line-height: 1.75 !important;
}

body#landingpage p,
body#landingpage li,
body#landingpage td,
body#landingpage dd {
    font-size: 1.1875rem !important;
    line-height: 1.75 !important;
}

body#landingpage #expertise-section p,
body#landingpage #advantages-section p,
body#landingpage .lp-section-header-2026 p,
body#landingpage .section-subtext {
    font-size: 1.8rem !important;
    line-height: 1.6 !important;
    text-align: center;
    max-width: 618px !IMPORTANT;
}

body#landingpage #expertise-section > .container > .row:first-child p,
body#landingpage #advantages-section > .container > .row:first-child p {
    font-size: 1.375rem !important;
    color: #4b5563 !important;
}

/* 24.2 Advantages Section - Linksbündig */
body#landingpage #expertise-section > .container > .row:first-child,
body#landingpage #advantages-section > .container > .row:first-child {
    text-align: left !important;
}

body#landingpage #expertise-section > .container > .row:first-child h2,
body#landingpage #advantages-section > .container > .row:first-child h2 {
    text-align: left !important;
    font-size: 2.25rem !important;
}

@media (min-width: 768px) {
    body#landingpage #expertise-section > .container > .row:first-child h2,
    body#landingpage #advantages-section > .container > .row:first-child h2 {
        font-size: 3.75rem !important;
    }
}

/* 24.3 Districts Section - 4x2 Grid */
body#landingpage #districts-section .row:not(.mt-30) {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    grid-auto-rows: 1fr !important;
    gap: 1.25rem !important;
}

/* Bootstrap clearfix Pseudo-Elemente ausblenden (stören das Grid) */
body#landingpage #districts-section .row:not(.mt-30)::before,
body#landingpage #districts-section .row:not(.mt-30)::after {
    display: none !important;
    content: none !important;
}

@media (min-width: 768px) {
    body#landingpage #districts-section .row:not(.mt-30) {
        grid-template-columns: repeat(4, 1fr) !important;
        grid-auto-rows: 1fr !important;
        gap: 1.5rem !important;
    }
}

body#landingpage #districts-section .row:not(.mt-30) > [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
    display: flex !important;
}

/* Gleiche Höhe für alle District Cards */
body#landingpage #districts-section .lp-district-card-2026 {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

body#landingpage #districts-section .lp-district-card-2026 p {
    flex-grow: 1 !important;
}

/* "Station finden" ausblenden */
body#landingpage #districts-section .find-station {
    display: none !important;
}

/* 24.4 Districts CTA - Zentriert, volle Breite */
body#landingpage #districts-section .row.mt-30 {
    display: block !important;
    text-align: center !important;
    margin-top: 2.5rem !important;
}

body#landingpage #districts-section .row.mt-30 p {
    font-size: 1.0625rem !important;
    max-width: 600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 1.5rem !important;
}

/* 24.5 Link-Listen - Unauffällig grau, ohne große Symbole */
body#landingpage #nearby-cities-section .link-list a,
body#landingpage #regional-section .link-list a,
body#landingpage #nearby-cities-section ul a,
body#landingpage #regional-section ul a,
body#landingpage .lp-nearby-links a,
body#landingpage .lp-regional-links a {
    color: #6b7280 !important;
    font-size: 1rem !important;
    text-decoration: none !important;
    display: block !important;
    padding: 0.375rem 0 !important;
    transition: color 0.2s ease !important;
}

body#landingpage #nearby-cities-section .link-list a:hover,
body#landingpage #regional-section .link-list a:hover,
body#landingpage #nearby-cities-section ul a:hover,
body#landingpage #regional-section ul a:hover,
body#landingpage .lp-nearby-links a:hover,
body#landingpage .lp-regional-links a:hover {
    color: var(--brand-2026, #2d5f41) !important;
}

/* Link-Listen Icons und Marker komplett ausblenden */
body#landingpage #nearby-cities-section .link-list li::before,
body#landingpage #regional-section .link-list li::before,
body#landingpage #nearby-cities-section ul.signed li::before,
body#landingpage #regional-section ul.signed li::before,
body#landingpage #nearby-cities-section li.mark::before,
body#landingpage #regional-section li.mark::before {
    display: none !important;
    content: none !important;
    background: none !important;
}

body#landingpage #nearby-cities-section ul.signed,
body#landingpage #regional-section ul.signed {
    list-style: none !important;
    padding-left: 0 !important;
}

body#landingpage #nearby-cities-section ul.signed li,
body#landingpage #regional-section ul.signed li,
body#landingpage #nearby-cities-section li.mark,
body#landingpage #regional-section li.mark {
    padding-left: 0 !important;
    margin-bottom: 0.25rem !important;
    list-style: none !important;
    background: none !important;
}

/* Lucide Icons in Links ausblenden */
body#landingpage #nearby-cities-section a [data-lucide],
body#landingpage #regional-section a [data-lucide],
body#landingpage #nearby-cities-section a svg,
body#landingpage #regional-section a svg {
    display: none !important;
}

/* 24.6 Link-Listen Grid Layout - 4 Spalten */
body#landingpage #nearby-cities-section .link-list,
body#landingpage #regional-section .link-list {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.5rem 2rem !important;
}

@media (min-width: 768px) {
    body#landingpage #nearby-cities-section .link-list,
    body#landingpage #regional-section .link-list {
        grid-template-columns: repeat(4, 1fr) !important;
    }
}

body#landingpage #nearby-cities-section .link-list > ul,
body#landingpage #regional-section .link-list > ul {
    margin: 0 !important;
    padding: 0 !important;
}

/* 24.7 Section Headers - Größere Titel */
body#landingpage .lp-section h3.title,
body#landingpage .lp-section h3.lp-title {
    font-size: 1.5rem !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-section h3.title,
    body#landingpage .lp-section h3.lp-title {
        font-size: 1.75rem !important;
    }
}

/* 24.8 District Card Beschreibungen - Bessere Lesbarkeit */
body#landingpage .lp-district-card-2026 p {
    font-size: 1.0625rem !important;
    line-height: 1.65 !important;
    color: #4b5563 !important;
}

body#landingpage .lp-district-card-2026 h3 {
    font-size: 1.25rem !important;
}

/* 24.9 Advantage Card Texte - VIEL Größer */
body#landingpage .lp-advantage-card-2026 li,
body#landingpage #expertise-section .lp-advantage-card-2026 li {
    font-size: 1.25rem !important;
    line-height: 1.65 !important;
}

body#landingpage .lp-advantage-card-2026 h3,
body#landingpage #expertise-section .lp-advantage-card-2026 h3 {
    font-size: 1.625rem !important;
}

/* 24.10 FAQ Local Box Texte - Größer */
body#landingpage .lp-local-faq-2026 dt,
body#landingpage .lp-local-faq-2026 .faq-question {
    font-size: 1.125rem !important;
    font-weight: 600 !important;
}

body#landingpage .lp-local-faq-2026 dd,
body#landingpage .lp-local-faq-2026 .faq-answer {
    font-size: 1.0625rem !important;
    line-height: 1.65 !important;
}

/* 24.11 SEO Section Texte - Größer */
body#landingpage .lp-seo-main-2026 p {
    font-size: 1.1875rem !important;
    line-height: 1.7 !important;
}

/* 24.12 Contact Banner Texte */
body#landingpage .lp-contact-banner-2026 p {
    font-size: 1.125rem !important;
}

/* 24.13 Final CTA Texte - Größer */
body#landingpage .lp-final-cta-2026 p {
    font-size: 1.3125rem !important;
    line-height: 1.6 !important;
}

/* 24.14 ALLE Section Überschriften - Größer */
body#landingpage main h2,
body#landingpage .landingpage-main h2 {
    font-size: 2rem !important;
    line-height: 1.25 !important;
}

body#landingpage main h3,
body#landingpage .landingpage-main h3 {
    font-size: 1.5rem !important;
    line-height: 1.3 !important;
}

body#landingpage main h4,
body#landingpage .landingpage-main h4 {
    font-size: 1.25rem !important;
    line-height: 1.35 !important;
}

@media (min-width: 768px) {
    body#landingpage main h2,
    body#landingpage .landingpage-main h2 {
        font-size: 3.5rem !important;
        margin-bottom: 38px !IMPORTANT;
    }

    body#landingpage main h3,
    body#landingpage .landingpage-main h3 {
        font-size: 1.75rem !important;
    }

    body#landingpage main h4,
    body#landingpage .landingpage-main h4 {
        font-size: 1.375rem !important;
    }
}

/* 24.15 Tabellen-Text - Größer */
body#landingpage table td,
body#landingpage table th,
body#landingpage .lp-table-2026-v2 td,
body#landingpage .lp-table-2026-v2 th {
    font-size: 1.0625rem !important;
}

/* 24.16 Station Cards Texte - Größer */
body#landingpage .lp-station-card-2026 a {
    font-size: 1.0625rem !important;
}

body#landingpage .lp-station-card-2026 span,
body#landingpage .lp-station-card-2026 div:not(:first-child) {
    font-size: 1rem !important;
}

/* 24.17 Benefit Cards Texte - Größer */
body#landingpage .lp-benefit-card-2026 h4 {
    font-size: 1.125rem !important;
}

body#landingpage .lp-benefit-card-2026 p {
    font-size: 1rem !important;
}

/* 24.18 Category Cards Texte - Größer */
body#landingpage .lp-category-card-2026 h3 {
    font-size: 1.25rem !important;
}

body#landingpage .lp-category-card-2026 p {
    font-size: 1.0625rem !important;
}

/* 24.19 Steps Texte - Größer */
body#landingpage .lp-step-2026 h3 {
    font-size: 1.25rem !important;
}

body#landingpage .lp-step-2026 p {
    font-size: 1.0625rem !important;
}

/* ============================================================
   25. Ratgeber Guide Section - Design 2026
   ============================================================ */

/* 25.1 Guide Title mit Icon */
body#landingpage .lp-guide-title-2026 {
    display: flex !important;
    align-items: center !important;
    gap: 0.625rem !important;
    font-size: 1.125rem !important;
    font-weight: 700 !important;
    color: var(--brand-2026, #2d5f41) !important;
    margin: 0 0 1.25rem 0 !important;
}

body#landingpage .lp-guide-title-2026 [data-lucide] {
    flex-shrink: 0 !important;
}

/* 25.2 Guide Intro Text */
body#landingpage .lp-guide-intro-2026 {
    font-size: 1.125rem !important;
    color: #4b5563 !important;
    margin-bottom: 1.75rem !important;
    line-height: 1.65 !important;
}

/* 25.3 Fahrzeug-Karten Grid (3 Spalten) */
body#landingpage .lp-guide-vehicles-grid-2026 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
    margin-bottom: 1.75rem !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-guide-vehicles-grid-2026 {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 1.25rem !important;
    }
}

/* 25.4 Einzelne Fahrzeug-Karte */
body#landingpage .lp-guide-vehicle-card-2026 {
    background: #f9fafb !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 0.75rem !important;
    padding: 1.25rem !important;
}

body#landingpage .lp-guide-vehicle-card-2026 h4 {
    font-size: 1.1875rem !important;
    font-weight: 700 !important;
    color: #1f2937 !important;
    margin: 0 0 0.5rem 0 !important;
}

body#landingpage .lp-guide-vehicle-card-2026 .volume-badge {
    display: inline-block !important;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    color: var(--brand-2026, #2d5f41) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 0.75rem !important;
}

body#landingpage .lp-guide-vehicle-card-2026 p {
    font-size: 1.0625rem !important;
    color: #4b5563 !important;
    line-height: 1.65 !important;
    margin: 0 !important;
}

/* 25.5 Führerschein-Box */
body#landingpage .lp-guide-license-box-2026 {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 0.75rem !important;
    padding: 1.5rem !important;
    margin-bottom: 1.25rem !important;
}

body#landingpage .lp-guide-license-box-2026 h4 {
    font-size: 1.1875rem !important;
    font-weight: 700 !important;
    color: #1f2937 !important;
    margin: 0 0 1rem 0 !important;
}

body#landingpage .lp-guide-license-box-2026 ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body#landingpage .lp-guide-license-box-2026 li {
    display: flex !important;
    align-items: center !important;
    gap: 0.75rem !important;
    font-size: 1.0625rem !important;
    color: #374151 !important;
    padding: 0.5rem 0 !important;
}

body#landingpage .lp-guide-license-box-2026 li [data-lucide] {
    flex-shrink: 0 !important;
}

/* 25.6 Wichtig/Warning-Box */
body#landingpage .lp-guide-warning-box-2026 {
    display: flex !important;
    align-items: flex-start !important;
    gap: 1rem !important;
    background: #f9fafb !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 0.75rem !important;
    padding: 1rem 1.25rem !important;
}

body#landingpage .lp-guide-warning-box-2026 div {
    font-size: 1.0625rem !important;
    color: #4b5563 !important;
    line-height: 1.65 !important;
}

body#landingpage .lp-guide-warning-box-2026 strong {
    color: #1f2937 !important;
    display: block !important;
    margin-bottom: 0.25rem !important;
}

/* 25.7 Guide Accordion Styling */
body#landingpage .lp-guide-accordion-2026 {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 1rem !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}

body#landingpage .lp-guide-accordion-2026 .panel {
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-heading {
    padding: 0 !important;
    background: linear-gradient(to right, #f9fafb, #fff) !important;
    border: none !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-heading:hover {
    background: linear-gradient(to right, #f3f4f6, #f9fafb) !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 1.25rem 1.5rem !important;
    color: #1f2937 !important;
    text-decoration: none !important;
    font-size: 1.125rem !important;
    font-weight: 700 !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title a:hover,
body#landingpage .lp-guide-accordion-2026 .panel-title a:focus {
    text-decoration: none !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title .fa-chevron-down {
    color: #9ca3af !important;
    transition: transform 0.3s ease !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title a:not(.collapsed) .fa-chevron-down {
    transform: rotate(180deg) !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-body {
    padding: 1.5rem 1.5rem 2rem !important;
    border-top: 1px solid #e5e7eb !important;
}

/* 25.8 Guide Icon Box */
body#landingpage .lp-guide-accordion-2026 .panel-title a > span [data-lucide] {
    color: var(--brand-2026, #2d5f41) !important;
}

/* ============================================================
   26. MASSIVE FONT SIZE INCREASE - 50% größer (2026-02-01)
   ============================================================ */

/* 26.1 GLOBALE BASIS - 50% größer */
body#landingpage,
body#landingpage main,
body#landingpage .container {
    font-size: 1.25rem !important;
    line-height: 1.8 !important;
}

body#landingpage p,
body#landingpage li,
body#landingpage td,
body#landingpage dd,
body#landingpage span:not([class*="icon"]):not([class*="badge"]) {
    font-size: 1.4rem !important;
    line-height: 1.8 !important;
}

/* 26.2 ÜBERSCHRIFTEN - Deutlich größer */
body#landingpage h1 {
    font-size: 3rem !important;
    line-height: 1.2 !important;
}

body#landingpage h2,
body#landingpage .lp-title {
    font-size: 2.25rem !important;
    line-height: 1.3 !important;
}

body#landingpage h3 {
    font-size: 1.75rem !important;
    line-height: 1.4 !important;
}

body#landingpage h4 {
    font-size: 1.5rem !important;
    line-height: 1.4 !important;
}

@media (min-width: 768px) {
    body#landingpage h1 {
        font-size: 3.5rem !important;
    }
    body#landingpage h2,
    body#landingpage .lp-title {
        font-size: 2.75rem !important;
    }
    body#landingpage h3 {
        font-size: 2rem !important;
    }
    body#landingpage h4 {
        font-size: 1.625rem !important;
    }
}

/* 26.3 WICHTIGE HINWEISE - Größere Schrift + Mockup-Style */
body#landingpage .lp-local-hints-2026 h3 {
    font-size: 1.75rem !important;
    font-weight: 700 !important;
}

body#landingpage .lp-local-hints-2026 .local-info-content li strong,
body#landingpage .lp-local-hints-2026 li strong,
body#landingpage .lp-hint-card-2026 strong {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    display: block !important;
    margin-bottom: 0.5rem !important;
}

body#landingpage .lp-local-hints-2026 .local-info-content li,
body#landingpage .lp-local-hints-2026 li,
body#landingpage .lp-hint-card-2026 {
    font-size: 1.4rem !important;
    line-height: 1.7 !important;
    color: #4b5563 !important;
    padding-left: 10px !IMPORTANT;
    padding-right: 10px !IMPORTANT;
    text-align: center;
}

/* Inline Style Override für dynamischen Content */
body#landingpage #local-info-section .lp-local-hints-2026 .local-info-content li strong {
    font-size: 1.5rem !important;
}

body#landingpage #local-info-section .lp-local-hints-2026 .local-info-content li span,
body#landingpage #local-info-section .lp-local-hints-2026 .local-info-content li:not(:has(strong)) {
    font-size: 1.125rem !important;
}

/* 26.4 FAHRZEUG-TABELLE - Größer + Subtiler Hover wie Mockup */
body#landingpage .lp-table-2026-v2 thead th {
    font-size: 1.2rem !important;
    padding: 1.25rem 1.5rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #6b7280 !important;
}

body#landingpage .lp-table-2026-v2 tbody td {
    font-size: 1.125rem !important;
    padding: 1.5rem !important;
}

body#landingpage .lp-table-2026-v2 .vehicle-name {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
}

body#landingpage .lp-table-2026-v2 .volume {
    font-size: 1.4rem !important;
    font-weight: 500 !important;
}

body#landingpage .lp-table-2026-v2 .license-badge {
    font-size: 1.2rem !important;
    padding: 0.375rem 0.875rem !important;
    font-weight: 500 !important;
    background: #f3f4f6 !important;
    color: #374151 !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 0.375rem !important;
}

body#landingpage .lp-table-2026-v2 .price {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
}

body#landingpage .lp-table-2026-v2 .ideal {
    font-size: 1.4rem !important;
    color: #6b7280 !important;
}

/* SUBTILER HOVER - Nur Farbänderungen, keine Bewegung */
body#landingpage .lp-table-2026-v2 tbody tr:hover {
    background: rgba(249, 250, 251, 0.8) !important;
}

body#landingpage .lp-table-2026-v2 tbody tr:hover .vehicle-icon {
    background: var(--brand-2026, #2d5f41) !important;
    color: #fff !important;
}

body#landingpage .lp-table-footer-2026 {
    font-size: 1rem !important;
    padding: 1rem 1.5rem !important;
}

body#landingpage .lp-table-footer-2026 a {
    font-size: 1.25rem !important;
}

/* 26.5 VORTEILE-SECTION - Größer */
body#landingpage #expertise-section h2,
body#landingpage #advantages-section h2 {
    font-size: 2.5rem !important;
}

@media (min-width: 768px) {
    body#landingpage #expertise-section h2,
    body#landingpage #advantages-section h2 {
        font-size: 3rem !important;
    }
}

body#landingpage #expertise-section > .container > .row:first-child p,
body#landingpage #advantages-section > .container > .row:first-child p {
    font-size: 1.6rem !important;
    color: #4b5563 !important;
    text-align: left;
}

body#landingpage .lp-advantage-card-2026 h3 {
    font-size: 1.75rem !important;
    margin-bottom: 1.5rem !important;
}

body#landingpage .lp-advantage-card-2026 li {
    font-size: 1.25rem !important;
    line-height: 1.6 !important;
    margin-bottom: 1rem !important;
}

/* 26.6 DISTRICT CARDS - Größer */
body#landingpage .lp-district-card-2026 h3 {
    font-size: 1.5rem !important;
}

body#landingpage .lp-district-card-2026 p {
    font-size: 1.125rem !important;
    line-height: 1.7 !important;
}

/* 26.7 FAQ SECTION - Größer */
body#landingpage #faq-section h2 {
    font-size: 2.25rem !important;
}

body#landingpage .lp-faq-2026 .panel-title a,
body#landingpage #faq-accordion .panel-title a {
    font-size: 1.6rem !important;
}

body#landingpage .lp-faq-2026 .panel-body p,
body#landingpage #faq-accordion .panel-body p,
body#landingpage .lp-faq-2026 .panel-body li,
body#landingpage #faq-accordion .panel-body li {
    font-size: 1.3rem !important;
    line-height: 1.7 !important;
}

body#landingpage .lp-local-faq-2026 dt {
    font-size: 1.25rem !important;
    font-weight: 600 !important;
}

body#landingpage .lp-local-faq-2026 dd {
    font-size: 1.125rem !important;
    line-height: 1.7 !important;
}

/* 26.8 SEO SECTION - Größer */
body#landingpage .lp-seo-main-2026 h2 {
    font-size: 2.5rem !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-seo-main-2026 h2 {
        font-size: 3rem !important;
    }
}

body#landingpage .lp-seo-main-2026 p {
    font-size: 1.25rem !important;
    line-height: 1.8 !important;
}

/* 26.9 STATIONEN SECTION - Größer */
body#landingpage .lp-station-card-2026 a {
    font-size: 1.25rem !important;
}

body#landingpage .lp-station-card-2026 span,
body#landingpage .lp-station-card-2026 div:not(:first-child) {
    font-size: 1.0625rem !important;
}

/* 26.10 FINAL CTA - Größer */
body#landingpage .lp-final-cta-2026 h3 {
    font-size: 3rem !important;
    color: white !IMPORTANT;
}

body#landingpage .lp-final-cta-2026 p {
    font-size: 1.5rem !important;
    color: white !IMPORTANT;
    max-width: 559px !IMPORTANT;
    text-align: center;
}

/* 26.11 BENEFIT CARDS - Größer */
body#landingpage .lp-benefit-card-2026 h4 {
    font-size: 1.45rem !important;
}

body#landingpage .lp-benefit-card-2026 p {
    font-size: 1.25rem !important;
    text-align: center;
}

/* 26.12 CATEGORY CARDS - Größer */
body#landingpage .lp-category-card-2026 h3 {
    font-size: 1.5rem !important;
}

body#landingpage .lp-category-card-2026 p {
    font-size: 1.125rem !important;
}

/* 26.13 STEPS - Größer */
body#landingpage .lp-step-2026 h3 {
    font-size: 1.5rem !important;
}

body#landingpage .lp-step-2026 p {
    font-size: 1.125rem !important;
}

/* 26.14 CONTACT BANNER - Größer */
body#landingpage .lp-contact-banner-2026 p {
    font-size: 1.25rem !important;
}

body#landingpage .lp-contact-banner-2026 a {
    font-size: 1.75rem !important;
}

/* ============================================================
   27. KONZEPT2026 LP-Redesign (2026-03-09)
   Visuelle Angleichung an React-Entwurf in KONZEPT2026/LPEntwurf/
   ============================================================ */

/* 27.1 Final CTA - Dunkler Hintergrund (#1f2937) statt grünem Gradient */
body#landingpage .lp-final-cta-2026 {
    background: #1f2937 !important;
    animation: none !important;
    background-size: auto !important;
}

body#landingpage .lp-final-cta-2026::before {
    display: none !important;
}

/* Dekorative Blur-Kreise */
body#landingpage .lp-final-cta-2026 .cta-blur-circle {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
    opacity: 0.15;
}

body#landingpage .lp-final-cta-2026 .cta-blur-circle-1 {
    width: 300px;
    height: 300px;
    background: #4ade80;
    top: -100px;
    right: -50px;
}

body#landingpage .lp-final-cta-2026 .cta-blur-circle-2 {
    width: 200px;
    height: 200px;
    background: #2d5f41;
    bottom: -80px;
    left: -40px;
}

/* CTA Icon in frosted glass circle */
body#landingpage .lp-final-cta-2026 .cta-icon-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 50%;
    margin: 0 auto 1.5rem;
    position: relative;
    z-index: 1;
}

body#landingpage .lp-final-cta-2026 .cta-icon-circle [data-lucide] {
    width: 2rem;
    height: 2rem;
    color: #fff;
}

/* 27.2 Category Cards - Hover → grüner Hintergrund */
body#landingpage .lp-category-card-2026 {
    position: relative !important;
    overflow: hidden !important;
    transition: all 0.4s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
    padding: 2.5rem 2rem !important;
    min-height: 200px !important;
}

/* Background-Truck-Icon */
body#landingpage .lp-category-card-2026 .bg-icon {
    position: absolute;
    bottom: -10px;
    right: -10px;
    width: 120px;
    height: 120px;
    opacity: 0.06;
    transition: opacity 0.4s ease;
    pointer-events: none;
}

body#landingpage .lp-category-card-2026 .bg-icon [data-lucide] {
    width: 100%;
    height: 100%;
}

body#landingpage .lp-category-card-2026:hover {
    background: var(--brand-2026, #2d5f41) !important;
    border-color: var(--brand-2026, #2d5f41) !important;
    transform: translateY(-8px) !important;
    box-shadow: 0 25px 50px -12px rgba(45, 95, 65, 0.3) !important;
}

body#landingpage .lp-category-card-2026:hover h3 {
    color: #fff !important;
}

body#landingpage .lp-category-card-2026:hover p {
    color: rgba(255, 255, 255, 0.85) !important;
}

body#landingpage .lp-category-card-2026:hover .bg-icon {
    opacity: 0.15;
}

/* Mittlere Card standardmäßig grün (highlighted) */
body#landingpage .lp-category-card-2026.highlighted {
    background: var(--brand-2026, #2d5f41) !important;
    border-color: var(--brand-2026, #2d5f41) !important;
}

body#landingpage .lp-category-card-2026.highlighted h3 {
    color: #fff !important;
}

body#landingpage .lp-category-card-2026.highlighted p {
    color: rgba(255, 255, 255, 0.85) !important;
}

body#landingpage .lp-category-card-2026.highlighted .bg-icon {
    opacity: 0.15;
}

/* 27.3 Steps - Große Hintergrundnummern */
body#landingpage .lp-step-2026 {
    position: relative !important;
    padding-top: 1rem !important;
}

body#landingpage .lp-step-2026 .step-bg-number {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 8rem;
    font-weight: 900;
    color: rgba(45, 95, 65, 0.05);
    line-height: 1;
    pointer-events: none;
    z-index: 0;
}

body#landingpage .lp-step-2026:hover .step-bg-number {
    color: rgba(45, 95, 65, 0.1);
}

/* 27.4 Contact Banner - Gradient Hintergrund */
body#landingpage .lp-contact-banner-2026.gradient {
    background: linear-gradient(135deg, #2d5f41 0%, #1e3f2b 100%) !important;
    border: none !important;
    color: #fff !important;
    position: relative !important;
    overflow: hidden !important;
}

body#landingpage .lp-contact-banner-2026.gradient::before {
    content: '';
    position: absolute;
    top: -50px;
    right: -50px;
    width: 200px;
    height: 200px;
    background: rgba(74, 222, 128, 0.15);
    border-radius: 50%;
    filter: blur(60px);
    pointer-events: none;
}

body#landingpage .lp-contact-banner-2026.gradient::after {
    content: '';
    position: absolute;
    bottom: -30px;
    left: -30px;
    width: 150px;
    height: 150px;
    background: rgba(45, 95, 65, 0.2);
    border-radius: 50%;
    filter: blur(50px);
    pointer-events: none;
}

body#landingpage .lp-contact-banner-2026.gradient .contact-text h3,
body#landingpage .lp-contact-banner-2026.gradient .contact-text p,
body#landingpage .lp-contact-banner-2026.gradient .contact-text .hours {
    color: rgba(255, 255, 255, 0.9) !important;
}

body#landingpage .lp-contact-banner-2026.gradient .contact-text h3 {
    color: #fff !important;
}

body#landingpage .lp-contact-banner-2026.gradient .contact-icon {
    background: rgba(255, 255, 255, 0.15) !important;
    color: #fff !important;
}

body#landingpage .lp-contact-banner-2026.gradient .contact-phone a {
    color: #fff !important;
    position: relative;
    z-index: 1;
}

body#landingpage .lp-contact-banner-2026.gradient .contact-phone span {
    color: rgba(255, 255, 255, 0.7) !important;
}

/* 27.5 Nearby Cities - Grüne Dots vor Links */
body#landingpage #nearby-cities-section ul.signed li::before,
body#landingpage #nearby-cities-section li.mark::before {
    display: inline-block !important;
    content: '' !important;
    width: 6px !important;
    height: 6px !important;
    background: var(--brand-2026, #2d5f41) !important;
    border-radius: 50% !important;
    margin-right: 8px !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
}

body#landingpage #nearby-cities-section ul.signed li,
body#landingpage #nearby-cities-section li.mark {
    display: flex !important;
    align-items: center !important;
    padding-left: 0 !important;
}

/* 27.6 Reviews - Größerer Radius (rounded-3xl = 1.5rem) */
body#landingpage #reviews-section .lp-card,
body#landingpage #reviews-section .col-md-4 > div {
    border-radius: 1.5rem !important;
}

/* Review Summary Box */
body#landingpage #reviews-section .review-summary-box {
    background: linear-gradient(135deg, #f0fff4 0%, #e6f7ed 100%);
    padding: 1.5rem 2rem;
    border-radius: 1rem;
    border: 1px solid #c3e6cb;
    display: inline-flex;
    align-items: center;
    gap: 1rem;
}

body#landingpage #reviews-section .review-summary-box .rating-big {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--brand-2026, #2d5f41);
    line-height: 1;
}

body#landingpage #reviews-section .review-summary-box .rating-meta {
    font-size: 0.9375rem;
    color: #6b7280;
}

/* 27.7 FAQ - Zentriertes Layout */
body#landingpage #faq-section .lp-faq-2026,
body#landingpage #faq-section .panel-group {
    max-width: 56rem !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body#landingpage #faq-section h2 {
    text-align: center !important;
}

body#landingpage #faq-section .text-center.mt-40 {
    max-width: 56rem;
    margin-left: auto;
    margin-right: auto;
}

/* FAQ panels - Cleaner rounded styling */
body#landingpage .lp-faq-2026 .panel {
    border-radius: 0.75rem !important;
    margin-bottom: 0.75rem !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
    overflow: hidden !important;
}

/* 27.8 LocalInfo - Rounded outer container like Entwurf */
body#landingpage .lp-local-hints-2026 {
    border-radius: 2rem !important;
    border-left: none !important;
    padding: 2.5rem !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
}

/* Override the green left border from section 23.1 */
body#landingpage #local-info-section .lp-local-hints-2026 {
    border-left: none !important;
    padding-left: 2.5rem !important;
    border-radius: 2rem !important;
}

/* 27.9 Stations - Cleaner 2-col layout */
body#landingpage .lp-stations-grid-2026 {
    gap: 0.75rem !important;
}

body#landingpage .lp-station-card-2026 {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.25rem !important;
}

/* 27.10 Mobile LP Styles */
.mobile-landingpage .mobile-section {
    padding: 2rem 0;
}

.mobile-landingpage .mobile-section-alt {
    background: #f9fafb;
}

.mobile-landingpage .mobile-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1f2937;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.mobile-landingpage .mobile-title [data-lucide] {
    width: 20px;
    height: 20px;
    color: var(--brand-2026, #2d5f41);
}

.mobile-landingpage .mobile-title-lg {
    font-size: 1.375rem;
}

/* Mobile Review Cards */
.mobile-review-card {
    background: #fff;
    border-radius: 1rem;
    padding: 1.25rem;
    border: 1px solid #e5e7eb;
    margin-bottom: 0.75rem;
    border-top: 3px solid var(--brand-2026, #2d5f41);
}

.mobile-review-stars [data-lucide] {
    width: 16px;
    height: 16px;
}

.mobile-review-stars .filled {
    color: #f5c518;
    fill: #f5c518;
}

.mobile-review-text {
    font-size: 0.9375rem;
    color: #4b5563;
    font-style: italic;
    line-height: 1.6;
    margin: 0.5rem 0;
}

.mobile-review-author {
    font-size: 0.875rem;
    color: #6b7280;
}

/* Mobile Vehicle Cards */
.mobile-vehicle-cards {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.mobile-vehicle-card {
    background: #fff;
    border-radius: 1rem;
    padding: 1.25rem;
    border: 1px solid #e5e7eb;
}

.mobile-vehicle-header {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.mobile-vehicle-icon {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mobile-vehicle-icon [data-lucide] {
    width: 1.25rem;
    height: 1.25rem;
}

.mobile-vehicle-title {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0;
}

.mobile-vehicle-specs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
    font-size: 0.875rem;
    color: #6b7280;
}

.mobile-vehicle-specs [data-lucide] {
    width: 14px;
    height: 14px;
    vertical-align: middle;
}

.mobile-license-badge {
    display: inline-block;
    padding: 0.125rem 0.5rem;
    background: #f3f4f6;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: #374151;
}

.mobile-vehicle-price {
    font-weight: 700;
    color: var(--brand-2026, #2d5f41);
    font-size: 1rem;
    margin-bottom: 0.25rem;
}

.mobile-vehicle-use {
    font-size: 0.8125rem;
    color: #9ca3af;
}

.mobile-price-note {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: #6b7280;
    margin-top: 1rem;
}

.mobile-price-note [data-lucide] {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.mobile-price-note a {
    color: var(--brand-2026, #2d5f41);
    font-weight: 600;
}

/* Mobile FAQ */
.mobile-faq {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.mobile-faq-item {
    background: #fff;
    border-radius: 0.75rem;
    border: 1px solid #e5e7eb;
    overflow: hidden;
}

.mobile-faq-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

.mobile-faq-question {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    font-size: 0.9375rem;
    color: #1f2937;
}

.mobile-faq-question [data-lucide] {
    width: 18px;
    height: 18px;
    color: var(--brand-2026, #2d5f41);
    flex-shrink: 0;
}

.mobile-faq-toggle {
    width: 18px;
    height: 18px;
    color: #9ca3af;
    transition: transform 0.3s ease;
    flex-shrink: 0;
}

.mobile-faq-item.open .mobile-faq-toggle {
    transform: rotate(180deg);
}

.mobile-faq-body {
    padding: 0 1rem 1rem;
    display: none;
    font-size: 0.9375rem;
    color: #4b5563;
    line-height: 1.6;
}

.mobile-faq-item.open .mobile-faq-body {
    display: block;
}

.mobile-faq-header.active {
    background: var(--brand-2026-50, #f2f7f4);
}

/* Mobile Check List */
.mobile-check-list {
    list-style: none;
    padding: 0;
    margin: 0.5rem 0;
}

.mobile-check-list li {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0;
    font-size: 0.9375rem;
}

.mobile-check-list [data-lucide] {
    width: 16px;
    height: 16px;
    color: var(--brand-2026, #2d5f41);
    flex-shrink: 0;
}

/* Mobile Vehicle List */
.mobile-vehicle-list {
    list-style: none;
    padding: 0;
    margin: 0.5rem 0;
}

.mobile-vehicle-list li {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0;
}

.mobile-vehicle-list [data-lucide] {
    width: 16px;
    height: 16px;
    color: var(--brand-2026, #2d5f41);
    flex-shrink: 0;
}

/* Mobile Price List */
.mobile-price-list {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin: 0.75rem 0;
}

.mobile-price-item {
    display: flex;
    justify-content: space-between;
    padding: 0.5rem 0;
    border-bottom: 1px solid #f3f4f6;
    font-size: 0.9375rem;
}

.mobile-price-item:last-child {
    border-bottom: none;
}

.mobile-savings {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--brand-2026, #2d5f41);
    margin-top: 0.5rem;
}

.mobile-savings [data-lucide] {
    width: 16px;
    height: 16px;
}

/* Mobile Tip Box */
.mobile-tip-box {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: #ecfdf5;
    padding: 0.75rem;
    border-radius: 0.5rem;
    font-size: 0.875rem;
    color: var(--brand-2026, #2d5f41);
    margin-top: 0.5rem;
}

.mobile-tip-box [data-lucide] {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

/* Mobile CTA Section */
.mobile-cta {
    background: var(--brand-2026, #2d5f41);
    border-radius: 1rem;
    padding: 2rem 1.5rem;
    text-align: center;
    margin-top: 1.5rem;
}

.mobile-cta h2 {
    color: #fff;
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 0.5rem;
}

.mobile-cta p {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.9375rem;
    margin: 0 0 1rem;
}

/* Mobile Buttons */
.mobile-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.875rem 1.5rem;
    border-radius: 0.75rem;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    transition: all 0.2s ease;
    width: 100%;
}

.mobile-btn [data-lucide] {
    width: 18px;
    height: 18px;
}

.mobile-btn-white {
    background: #fff;
    color: var(--brand-2026, #2d5f41);
}

.mobile-btn-outline-white {
    background: transparent;
    border: 2px solid #fff;
    color: #fff;
}

/* Mobile Hero */
.mobile-hero {
    padding: 1.5rem 1rem 1rem;
    text-align: center;
}

.mobile-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--brand-2026, #2d5f41);
    background: var(--brand-2026-50, #f2f7f4);
    padding: 0.375rem 0.75rem;
    border-radius: 9999px;
    margin-bottom: 0.75rem;
}

.mobile-hero-badge [data-lucide] {
    width: 14px;
    height: 14px;
}

.mobile-hero-title {
    font-size: 1.75rem;
    font-weight: 800;
    color: #1f2937;
    line-height: 1.2;
    margin: 0 0 0.75rem;
}

.mobile-hero-title .highlight {
    color: var(--brand-2026, #2d5f41);
}

.mobile-hero-subtitle {
    font-size: 0.9375rem;
    color: #6b7280;
    line-height: 1.5;
    margin: 0;
}

/* Mobile Breadcrumb */
.mobile-breadcrumb {
    padding: 0.75rem 1rem;
    background: #f9fafb;
    border-bottom: 1px solid #e5e7eb;
}

.mobile-breadcrumb ol {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
}

.mobile-breadcrumb li {
    display: flex;
    align-items: center;
    color: #9ca3af;
}

.mobile-breadcrumb li + li::before {
    content: '›';
    margin: 0 0.375rem;
    color: #d1d5db;
}

.mobile-breadcrumb a {
    color: #6b7280;
    text-decoration: none;
}

.mobile-breadcrumb .active {
    color: #1f2937;
    font-weight: 600;
}

/* Mobile Trust Badges */
.mobile-trust-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
}

.mobile-trust-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: #4b5563;
    background: rgba(45, 95, 65, 0.05);
    padding: 0.375rem 0.75rem;
    border-radius: 9999px;
}

.mobile-trust-badge [data-lucide] {
    width: 14px;
    height: 14px;
    color: var(--brand-2026, #2d5f41);
}

.mobile-trust-section {
    padding: 1rem 0;
}

/* Mobile Reviews */
.mobile-reviews-subtitle {
    font-size: 0.875rem;
    color: #9ca3af;
    margin-bottom: 1rem;
}

.mobile-reviews-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Mobile Stations List */
.mobile-stations-list {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.mobile-station-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: #fff;
    border-radius: 0.75rem;
    border: 1px solid #e5e7eb;
    text-decoration: none;
    transition: all 0.2s ease;
}

.mobile-station-item:hover {
    border-color: rgba(45, 95, 65, 0.3);
}

.mobile-station-icon {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mobile-station-icon [data-lucide] {
    width: 1.25rem;
    height: 1.25rem;
}

.mobile-station-info {
    flex: 1;
    min-width: 0;
}

.mobile-station-name {
    font-weight: 700;
    font-size: 0.9375rem;
    color: #1f2937;
}

.mobile-station-address {
    font-size: 0.8125rem;
    color: #6b7280;
}

.mobile-station-arrow {
    width: 16px;
    height: 16px;
    color: #9ca3af;
    flex-shrink: 0;
}

/* ============================================================
   28. KONZEPT2026 Mockup 1:1 - Neue HTML-Elemente (2026-03-09)
   MainContent, LocalInfo, Categories, Steps, Contact
   ============================================================ */

/* 28.1 MainContent - 2-Spalten Grid */
body#landingpage .lp-main-grid-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2.5rem;
    align-items: start;
    padding: 2rem 0 4rem;
}

@media (min-width: 1024px) {
    body#landingpage .lp-main-grid-2026 {
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
        padding: 3rem 0 6rem;
    }
}

/* 28.2 Location Badge (grüner Pill) */
body#landingpage .lp-location-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #f0fdf4;
    color: #2d5f41;
    font-size: 0.75rem !important;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 6px 16px;
    border-radius: 9999px;
    margin-bottom: 1rem;
}

body#landingpage .lp-location-badge [data-lucide] {
    width: 14px;
    height: 14px;
}

/* 28.3 Main Text Column */
body#landingpage .lp-main-text-2026 h2 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    color: #111827 !important;
    margin: 1.5rem 0 !important;
    text-align: left !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-main-text-2026 h2 {
        font-size: 2.75rem !important;
    }
}

body#landingpage .lp-main-text-2026 h2 .accent {
    color: #2d5f41;
}

body#landingpage .lp-main-text-2026 p {
    font-size: 1.125rem !important;
    line-height: 1.7 !important;
    color: #4b5563 !important;
    text-align: left !important;
}

body#landingpage .lp-main-text-2026 p strong {
    color: #111827;
}

/* 28.4 Feature Card with Rotated BG */
body#landingpage .lp-main-features-card-2026 {
    position: relative;
}

body#landingpage .lp-main-features-card-2026 .rotated-bg {
    position: absolute;
    inset: -8px;
    background: #f0fdf4;
    border-radius: 40px;
    transform: rotate(-2deg);
    z-index: 0;
}

body#landingpage .lp-main-features-card-2026 .card-inner {
    position: relative;
    z-index: 1;
    background: #fff;
    border: 1px solid rgba(232, 245, 233, 0.5);
    border-radius: 32px;
    padding: 2rem;
    box-shadow: 0 25px 50px -12px rgba(45, 95, 65, 0.08);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

@media (min-width: 768px) {
    body#landingpage .lp-main-features-card-2026 .card-inner {
        padding: 2rem 2.5rem;
        gap: 2rem;
    }
}

/* Feature Items */
body#landingpage .lp-main-features-card-2026 .feature-item {
    text-align: left;
}

body#landingpage .lp-main-features-card-2026 .feature-icon-circle {
    width: 48px;
    height: 48px;
    background: #f0fdf4;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2d5f41;
    margin-bottom: 0.75rem;
}

body#landingpage .lp-main-features-card-2026 .feature-icon-circle [data-lucide] {
    width: 22px;
    height: 22px;
}

body#landingpage .lp-main-features-card-2026 .feature-item h4 {
    font-size: 1.0625rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 0.25rem 0 !important;
}

body#landingpage .lp-main-features-card-2026 .feature-item p {
    font-size: 0.875rem !important;
    color: #6b7280 !important;
    margin: 0 !important;
    line-height: 1.5 !important;
    text-align: left !important;
}

/* Feature CTA Button */
body#landingpage .lp-main-features-card-2026 .feature-cta {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    background: #2d5f41;
    color: #fff !important;
    padding: 1rem 2rem;
    border-radius: 1rem;
    font-weight: 700;
    font-size: 1.125rem !important;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 10px 25px -5px rgba(45, 95, 65, 0.3);
}

body#landingpage .lp-main-features-card-2026 .feature-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 35px -5px rgba(45, 95, 65, 0.4);
    background: #1e402c;
    text-decoration: none;
    color: #fff !important;
}

body#landingpage .lp-main-features-card-2026 .feature-cta [data-lucide] {
    width: 20px;
    height: 20px;
}

/* 28.5 Info Box Below */
body#landingpage .lp-main-info-box-2026 {
    background: #f9fafb;
    border-radius: 32px;
    padding: 2rem 2.5rem;
    border: 1px solid #f3f4f6;
    margin-top: 2rem;
}

body#landingpage .lp-main-info-box-2026 h3 {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 0.75rem 0 !important;
}

body#landingpage .lp-main-info-box-2026 p {
    font-size: 1.0625rem !important;
    color: #4b5563 !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

/* 28.6 LocalInfo Section */
body#landingpage .lp-localinfo-section-2026 {
    padding: 4rem 0 !important;
}

body#landingpage .lp-localinfo-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #2d5f41;
    font-size: 0.75rem !important;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 1.5rem;
}

body#landingpage .lp-localinfo-label [data-lucide] {
    width: 16px;
    height: 16px;
}

body#landingpage .lp-localinfo-header-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    body#landingpage .lp-localinfo-header-2026 {
        grid-template-columns: 1fr 1fr;
        gap: 3rem;
        align-items: end;
    }
}

body#landingpage .lp-localinfo-header-2026 h2 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    text-align: left !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-localinfo-header-2026 h2 {
        font-size: 2.5rem !important;
    }
}

body#landingpage .lp-localinfo-header-2026 h2 .accent {
    color: #2d5f41;
    font-style: italic;
}

body#landingpage .lp-localinfo-header-2026 .desc {
    font-size: 1.0625rem !important;
    color: #6b7280 !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

/* 28.7 Category Card Icon Box + Badge */
body#landingpage .lp-category-card-2026 .cat-icon-box {
    width: 64px;
    height: 64px;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f0fdf4;
    margin-bottom: 1rem;
    transition: background 0.4s ease;
}

body#landingpage .lp-category-card-2026 .cat-icon-box [data-lucide] {
    width: 28px;
    height: 28px;
    color: #2d5f41;
    transition: color 0.4s ease;
}

body#landingpage .lp-category-card-2026.highlighted .cat-icon-box {
    background: rgba(255, 255, 255, 0.2);
}

body#landingpage .lp-category-card-2026.highlighted .cat-icon-box [data-lucide] {
    color: #fff;
}

body#landingpage .lp-category-card-2026:hover .cat-icon-box {
    background: rgba(255, 255, 255, 0.2);
}

body#landingpage .lp-category-card-2026:hover .cat-icon-box [data-lucide] {
    color: #fff;
}

body#landingpage .lp-category-card-2026 .cat-badge {
    display: inline-block;
    padding: 5px 14px;
    border-radius: 9999px;
    font-size: 13px !important;
    font-weight: 700;
    background: #f9fafb;
    color: #374151;
    border: 1px solid #e5e7eb;
    margin-bottom: 0.75rem;
    transition: all 0.4s ease;
}

body#landingpage .lp-category-card-2026.highlighted .cat-badge {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    border-color: transparent;
}

body#landingpage .lp-category-card-2026:hover .cat-badge {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    border-color: transparent;
}

/* 28.8 Section Labels (Reusable) */
body#landingpage .section-label,
body#landingpage .lp-how-it-works-2026 .section-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #2d5f41;
    font-size: 1.25rem !important;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

body#landingpage .section-label [data-lucide] {
    width: 24px;
    height: 24px;
}

/* 28.9 How It Works - 2-Column Header */
body#landingpage .lp-hiw-header-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    body#landingpage .lp-hiw-header-2026 {
        grid-template-columns: 1fr 1fr;
        gap: 3rem;
        align-items: end;
    }
}

body#landingpage .lp-hiw-header-2026 h2 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    text-align: left !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-hiw-header-2026 h2 {
        font-size: 2.5rem !important;
    }
}

body#landingpage .lp-hiw-header-2026 h2 .accent {
    color: #2d5f41;
}

body#landingpage .lp-hiw-header-2026 .desc {
    font-size: 1.0625rem !important;
    color: #6b7280 !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

/* 28.10 Step Icons */
body#landingpage .lp-step-2026 .step-icon {
    width: 56px;
    height: 56px;
    background: rgba(45, 95, 65, 0.1);
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2d5f41;
    margin: 0 auto 1rem;
    position: relative;
    z-index: 1;
    transition: all 0.3s ease;
}

body#landingpage .lp-step-2026 .step-icon [data-lucide] {
    width: 24px;
    height: 24px;
}

/* Step 3 highlighted */
body#landingpage .lp-step-2026.highlighted {
    background: #2d5f41 !important;
    border-color: #2d5f41 !important;
    color: #fff !important;
}

body#landingpage .lp-step-2026.highlighted h3 {
    color: #fff !important;
}

body#landingpage .lp-step-2026.highlighted p {
    color: rgba(255, 255, 255, 0.8) !important;
}

body#landingpage .lp-step-2026.highlighted .step-icon {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
}

body#landingpage .lp-step-2026.highlighted .step-bg-number {
    color: rgba(255, 255, 255, 0.1) !important;
}

body#landingpage .lp-step-2026.highlighted .step-number {
    background: rgba(255, 255, 255, 0.2) !important;
    border-color: transparent !important;
    color: #fff !important;
}

/* Hide step-number when step-icon exists */
body#landingpage .lp-step-2026:has(.step-icon) .step-number {
    display: none;
}

/* 28.11 Contact Banner - Green phone + pulsing dot */
body#landingpage .lp-contact-banner-2026.gradient .contact-phone a {
    color: #4ade80 !important;
    font-size: 2rem !important;
    font-weight: 900 !important;
}

body#landingpage .lp-contact-banner-2026.gradient .contact-icon {
    background: rgba(255, 255, 255, 0.1) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

/* Pulsing Status Dot */
body#landingpage .status-dot {
    display: inline-block;
    width: 6px;
    height: 6px;
    background: #4ade80;
    border-radius: 50%;
    margin-right: 6px;
    vertical-align: middle;
    animation: statusPulse 2s ease-in-out infinite;
}

@keyframes statusPulse {
    0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.4); }
    50% { opacity: 0.7; box-shadow: 0 0 0 4px rgba(74, 222, 128, 0); }
}

/* 28.12 SEO Section - Red Highlight */
body#landingpage .lp-seo-main-2026 .highlight {
    background: #e4002b;
    color: #fff !important;
    padding: 2px 8px;
    border-radius: 4px;
    font-weight: 600;
    -webkit-text-fill-color: #fff;
}

/* 28.13 Stations - Cleaner divider lines */
body#landingpage #stations-section .lp-stations-grid-2026 {
    gap: 0 !important;
}

body#landingpage #stations-section .lp-station-card-2026 {
    border: none !important;
    border-bottom: 1px solid #f3f4f6 !important;
    border-radius: 0 !important;
    padding: 1rem 0.5rem !important;
    box-shadow: none !important;
}

body#landingpage #stations-section .lp-station-card-2026:hover {
    border-color: #f3f4f6 !important;
    box-shadow: none !important;
    transform: none !important;
    background: #f9fafb !important;
}

body#landingpage #stations-section .lp-station-card-2026 a {
    color: #2d5f41 !important;
    font-weight: 700 !important;
}

/* 28.14 Contact Widget - Green sidebar variant */
body#landingpage .lp-contact-widget-2026 {
    position: relative;
    overflow: hidden;
}

body#landingpage .lp-contact-widget-2026::before {
    content: '';
    position: absolute;
    top: -30px;
    right: -30px;
    width: 100px;
    height: 100px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    filter: blur(40px);
    pointer-events: none;
}

/* Mobile Link Grid */
.mobile-link-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
}

.mobile-link-item {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: #fff;
    border-radius: 0.5rem;
    border: 1px solid #e5e7eb;
    font-size: 0.875rem;
    color: #374151;
    text-decoration: none;
    transition: all 0.2s ease;
}

.mobile-link-item:hover {
    border-color: rgba(45, 95, 65, 0.3);
    color: var(--brand-2026, #2d5f41);
}

.mobile-link-item [data-lucide] {
    width: 14px;
    height: 14px;
    color: #9ca3af;
    flex-shrink: 0;
}

/* Mobile Info Box */
.mobile-info-box {
    background: #fff;
    border-radius: 1rem;
    padding: 1.25rem;
    border: 1px solid #e5e7eb;
}

.mobile-info-box h4 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0 0 0.75rem;
}

.mobile-info-box [data-lucide] {
    width: 18px;
    height: 18px;
    color: var(--brand-2026, #2d5f41);
}

.mobile-info-content {
    font-size: 0.9375rem;
    color: #4b5563;
    line-height: 1.6;
}

/* Mobile Card generic */
.mobile-card {
    background: #fff;
    border-radius: 0.75rem;
    padding: 1.25rem;
    border: 1px solid #e5e7eb;
    font-size: 0.9375rem;
    color: #4b5563;
    line-height: 1.6;
}

/* Mobile Subtitle */
.mobile-subtitle {
    font-size: 0.875rem;
    color: #6b7280;
    margin-bottom: 1rem;
}

/* Mobile District Grid */
.mobile-district-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

.mobile-district-card {
    background: #fff;
    border-radius: 0.75rem;
    padding: 1rem;
    border: 1px solid #e5e7eb;
}

.mobile-district-icon {
    width: 2rem;
    height: 2rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 0.375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

.mobile-district-icon [data-lucide] {
    width: 1rem;
    height: 1rem;
}

.mobile-district-card h4 {
    font-size: 0.9375rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0 0 0.25rem;
}

.mobile-district-card p {
    font-size: 0.8125rem;
    color: #6b7280;
    margin: 0;
    line-height: 1.4;
}

/* Mobile Advantage List */
.mobile-advantage-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.mobile-advantage-card {
    display: flex;
    gap: 1rem;
    background: #fff;
    border-radius: 0.75rem;
    padding: 1.25rem;
    border: 1px solid #e5e7eb;
}

.mobile-advantage-icon {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--brand-2026-50, #f2f7f4);
    color: var(--brand-2026, #2d5f41);
    border-radius: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mobile-advantage-icon [data-lucide] {
    width: 1.25rem;
    height: 1.25rem;
}

.mobile-advantage-content h4 {
    font-size: 1rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0 0 0.5rem;
}

.mobile-advantage-content ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.mobile-advantage-content li {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    color: #4b5563;
    padding: 0.125rem 0;
}

.mobile-advantage-content [data-lucide] {
    width: 14px;
    height: 14px;
    color: var(--brand-2026, #2d5f41);
    flex-shrink: 0;
}

/* Mobile Highlight */
.mobile-highlight {
    color: var(--brand-2026, #2d5f41);
}

/* Mobile Final CTA */
.mobile-final-cta {
    background: #1f2937;
    padding: 2rem 1rem;
    text-align: center;
}

.mobile-final-cta h3 {
    color: #fff;
    font-size: 1.375rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin: 0 0 0.5rem;
}

.mobile-final-cta h3 [data-lucide] {
    width: 20px;
    height: 20px;
}

.mobile-final-cta p {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.9375rem;
    margin: 0 0 1.25rem;
}

.mobile-cta-buttons {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* 27.11 Mobile LP Redesign additions */

/* Mobile Final CTA - position for blur circles */
.mobile-final-cta {
    position: relative;
    overflow: hidden;
}

.mobile-final-cta .cta-blur-circle {
    position: absolute;
    border-radius: 50%;
    filter: blur(60px);
    pointer-events: none;
}

.mobile-final-cta .cta-icon-circle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.5rem;
    height: 3.5rem;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 50%;
}

.mobile-final-cta .cta-icon-circle [data-lucide] {
    color: #fff;
}

/* Mobile link items with green dots (Nearby Cities / Regional) */
.mobile-link-item.green-dot {
    padding-left: 1rem;
}

.mobile-link-item.green-dot::before {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    background: var(--brand-2026, #2d5f41);
    border-radius: 50%;
    flex-shrink: 0;
    margin-right: 0.5rem;
}

/* Mobile CTA gradient variant */
.mobile-cta.gradient {
    background: linear-gradient(135deg, #2d5f41 0%, #1e3f2b 100%);
}

/* Mobile Contact Banner gradient variant */
.mobile-landingpage .lp-contact-banner-2026.gradient .cta-blur-circle {
    position: absolute;
    border-radius: 50%;
    filter: blur(40px);
    pointer-events: none;
}

/* ============================================================
   KONZEPT2026 - 1:1 Mockup Match (Screenshot-Based Redesign)
   ============================================================ */

/* ---- MainContent 2-Column Layout (Screenshot 1) ---- */
.lp-main-grid-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    align-items: start;
    padding: 3rem 0 4rem;
}

@media (min-width: 1024px) {
    .lp-main-grid-2026 {
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
        padding: 4rem 0 6rem;
    }
}

.lp-location-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #f0fdf4;
    color: #2d5f41;
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 6px 16px;
    border-radius: 9999px;
    margin-bottom: 1.5rem;
}

.lp-location-badge [data-lucide] {
    width: 14px;
    height: 14px;
}

.lp-main-text-2026 h2 {
    font-size: 2.25rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    color: #111827 !important;
    margin: 0 0 2rem 0 !important;
}

@media (min-width: 768px) {
    .lp-main-text-2026 h2 {
        font-size: 2.75rem !important;
    }
}

.lp-main-text-2026 h2 .accent {
    color: #2d5f41;
}

.lp-main-text-2026 p {
    font-size: 1.0625rem !important;
    line-height: 1.75 !important;
    color: #4b5563 !important;
    margin-bottom: 1.25rem !important;
}

.lp-main-text-2026 p strong {
    color: #111827;
    font-weight: 600;
}

/* Feature Card with rotated green bg */
.lp-main-features-card-2026 {
    position: relative;
}

.lp-main-features-card-2026 .rotated-bg {
    position: absolute;
    inset: -8px;
    background: #f0fdf4;
    border-radius: 40px;
    transform: rotate(-2deg);
    z-index: 0;
}

.lp-main-features-card-2026 .card-inner {
    position: relative;
    z-index: 1;
    background: white;
    border: 1px solid rgba(232, 245, 233, 0.5);
    border-radius: 32px;
    padding: 2rem;
    box-shadow: 0 25px 50px -12px rgba(45, 95, 65, 0.05);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
}

@media (min-width: 768px) {
    .lp-main-features-card-2026 .card-inner {
        padding: 2.5rem 3rem;
    }
}

.lp-main-features-card-2026 .feature-item {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.lp-main-features-card-2026 .feature-item .feature-icon-circle {
    width: 48px;
    height: 48px;
    background: #f0fdf4;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2d5f41;
    margin-bottom: 0.25rem;
}

.lp-main-features-card-2026 .feature-item .feature-icon-circle [data-lucide] {
    width: 22px;
    height: 22px;
}

.lp-main-features-card-2026 .feature-item h4 {
    font-size: 0.9375rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 !important;
}

.lp-main-features-card-2026 .feature-item p {
    font-size: 0.8125rem !important;
    color: #6b7280 !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.feature-cta {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    background: #2d5f41;
    color: white !important;
    padding: 1rem 2rem;
    border-radius: 1rem;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none !important;
    transition: all 0.3s ease;
    box-shadow: 0 10px 25px -5px rgba(45, 95, 65, 0.3);
}

.feature-cta:hover {
    background: #1e402c;
    transform: translateY(-2px);
    box-shadow: 0 15px 35px -5px rgba(45, 95, 65, 0.4);
    color: white !important;
}

.feature-cta [data-lucide] {
    width: 18px;
    height: 18px;
}

/* Info Box below main grid */
.lp-main-info-box-2026 {
    background: #f9fafb;
    border-radius: 32px;
    padding: 2rem 3rem;
    border: 1px solid #f3f4f6;
    margin-top: 3rem;
}

.lp-main-info-box-2026 h3 {
    font-size: 1.375rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 1rem 0 !important;
}

.lp-main-info-box-2026 p {
    font-size: 1rem !important;
    color: #4b5563 !important;
    line-height: 1.75 !important;
    margin: 0 !important;
}

/* ---- LocalInfo Section (Screenshot 2) ---- */
.lp-localinfo-section-2026 {
    padding: 5rem 0;
}

.lp-localinfo-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #2d5f41;
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.lp-localinfo-label [data-lucide] {
    width: 16px;
    height: 16px;
}

.lp-localinfo-header-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    .lp-localinfo-header-2026 {
        grid-template-columns: 1fr 1fr;
        align-items: end;
    }
}

.lp-localinfo-header-2026 h2 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

@media (min-width: 768px) {
    .lp-localinfo-header-2026 h2 {
        font-size: 2.5rem !important;
    }
}

.lp-localinfo-header-2026 h2 .accent {
    color: #2d5f41;
    font-style: italic;
}

.lp-localinfo-header-2026 .desc {
    font-size: 1rem !important;
    color: #6b7280 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

.lp-localinfo-grid-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1px;
    background: #f3f4f6;
    border: 1px solid #f3f4f6;
    border-radius: 32px;
    overflow: hidden;
}

@media (min-width: 768px) {
    .lp-localinfo-grid-2026 {
        grid-template-columns: 1fr 1fr;
    }
}

.lp-localinfo-grid-2026 .info-item {
    background: white;
    padding: 2rem 2.5rem;
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
}

.lp-localinfo-grid-2026 .info-item .icon-circle {
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 50%;
    border: 1px solid #f3f4f6;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2d5f41;
    flex-shrink: 0;
}

.lp-localinfo-grid-2026 .info-item .icon-circle [data-lucide] {
    width: 20px;
    height: 20px;
}

.lp-localinfo-grid-2026 .info-item h4 {
    font-size: 1.0625rem !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 0.375rem 0 !important;
}

.lp-localinfo-grid-2026 .info-item p {
    font-size: 0.875rem !important;
    color: #6b7280 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* ---- Categories Cards (Screenshot 3) ---- */
.lp-category-card-2026 {
    position: relative;
    overflow: hidden;
    padding: 2rem 2rem 2.5rem;
    border-radius: 2rem;
    transition: all 0.5s ease;
}

.lp-category-card-2026 .cat-icon-box {
    width: 64px;
    height: 64px;
    border-radius: 1rem;
    background: #f0fdf4;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    color: #2d5f41;
}

.lp-category-card-2026 .cat-icon-box [data-lucide] {
    width: 28px;
    height: 28px;
}

.lp-category-card-2026 .cat-badge {
    display: inline-block;
    padding: 6px 16px;
    border-radius: 9999px;
    font-size: 12px !important;
    font-weight: 700;
    margin-bottom: 1rem;
    background: #f9fafb;
    color: #374151;
    border: 1px solid #e5e7eb;
}

.lp-category-card-2026 .bg-icon {
    position: absolute;
    top: 1rem;
    right: 1rem;
    opacity: 0.06;
    color: #111827;
}

.lp-category-card-2026 .bg-icon [data-lucide] {
    width: 120px;
    height: 120px;
}

/* Highlighted middle card */
.lp-category-card-2026.highlighted {
    background: #2d5f41;
    border-color: #2d5f41;
}

.lp-category-card-2026.highlighted h3 {
    color: #fff !important;
}

.lp-category-card-2026.highlighted p {
    color: rgba(255, 255, 255, 0.85) !important;
}

.lp-category-card-2026.highlighted .cat-icon-box {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
}

.lp-category-card-2026.highlighted .cat-badge {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    border-color: transparent;
}

.lp-category-card-2026.highlighted .bg-icon {
    opacity: 0.1;
    color: #fff;
}

/* Hover: card becomes green */
.lp-category-card-2026:not(.highlighted):hover {
    background: #2d5f41;
    border-color: #2d5f41;
}

.lp-category-card-2026:not(.highlighted):hover h3 {
    color: #fff !important;
}

.lp-category-card-2026:not(.highlighted):hover p {
    color: rgba(255, 255, 255, 0.85) !important;
}

.lp-category-card-2026:not(.highlighted):hover .cat-icon-box {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
}

.lp-category-card-2026:not(.highlighted):hover .cat-badge {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    border-color: transparent;
}

/* ---- Steps Section (Screenshot 4 top) ---- */
.lp-how-it-works-2026 .section-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #2d5f41;
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.lp-how-it-works-2026 .section-label [data-lucide] {
    width: 16px;
    height: 16px;
}

.lp-how-it-works-2026 .section-header-row,
.lp-how-it-works-2026 .lp-hiw-header-2026 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    .lp-how-it-works-2026 .section-header-row,
    .lp-how-it-works-2026 .lp-hiw-header-2026 {
        grid-template-columns: 1fr 1fr;
        align-items: end;
    }

    .lp-how-it-works-2026 .section-header-row h2,
    .lp-how-it-works-2026 .lp-hiw-header-2026 h2 {
        text-align: left !important;
        justify-content: flex-start !important;
    }
}

.lp-how-it-works-2026 .section-header-row .desc,
.lp-how-it-works-2026 .lp-hiw-header-2026 .desc {
    font-size: 1rem !important;
    color: #6b7280 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Step cards redesigned */
.lp-step-2026 {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 1.5rem;
    padding: 2rem;
    position: relative;
    overflow: hidden;
}

.lp-step-2026 .step-icon {
    width: 56px;
    height: 56px;
    background: rgba(45, 95, 65, 0.1);
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2d5f41;
    margin-bottom: 1.5rem;
}

.lp-step-2026 .step-icon [data-lucide] {
    width: 24px;
    height: 24px;
}

.lp-step-2026 .step-bg-number {
    position: absolute;
    top: -10px;
    right: 10px;
    font-size: 180px;
    font-weight: 800;
    color: #f9fafb;
    line-height: 1;
    pointer-events: none;
    user-select: none;
    z-index: 0;
    opacity: 0.6;
}

.lp-step-2026 .step-number {
    display: none; /* hidden, replaced by icon */
}

.lp-step-2026 h3,
.lp-step-2026 p {
    position: relative;
    z-index: 1;
}

/* Highlighted Step 3 */
.lp-step-2026.highlighted {
    background: #2d5f41;
    border-color: #2d5f41;
}

.lp-step-2026.highlighted h3 {
    color: #fff !important;
}

.lp-step-2026.highlighted p {
    color: rgba(255, 255, 255, 0.85) !important;
}

.lp-step-2026.highlighted .step-icon {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
}

.lp-step-2026.highlighted .step-bg-number {
    color: rgba(255, 255, 255, 0.1);
}

/* ---- Contact Banner (Screenshot 4 middle) ---- */
.lp-contact-banner-2026.gradient {
    background: linear-gradient(135deg, #1f2937 0%, #2d3748 100%);
    border: none;
    border-radius: 1.5rem;
    color: #fff;
    padding: 2rem 2.5rem;
    position: relative;
    overflow: hidden;
}

.lp-contact-banner-2026.gradient .contact-text h3 {
    color: #fff !important;
}

.lp-contact-banner-2026.gradient .contact-text p {
    color: rgba(255, 255, 255, 0.8) !important;
}

.lp-contact-banner-2026.gradient .contact-text .hours {
    color: rgba(255, 255, 255, 0.6) !important;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lp-contact-banner-2026.gradient .status-dot {
    display: inline-block;
    width: 6px;
    height: 6px;
    background: #4ade80;
    border-radius: 50%;
    animation: lp-status-pulse 2s infinite;
}

@keyframes lp-status-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.5; transform: scale(1.5); }
}

.lp-contact-banner-2026.gradient .contact-icon {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #fff;
}

.lp-contact-banner-2026.gradient .contact-phone a {
    color: #4ade80 !important;
    font-size: 2rem;
    font-weight: 900;
}

.lp-contact-banner-2026.gradient .contact-phone span {
    color: rgba(255, 255, 255, 0.7);
}

.lp-contact-banner-2026.gradient .cta-blur-circle {
    position: absolute;
    border-radius: 50%;
    filter: blur(40px);
    pointer-events: none;
}

/* ---- Stations Grid (Screenshot 5) ---- */
.lp-stations-grid-2026 .stations-col {
    display: flex;
    flex-direction: column;
}

.lp-station-card-2026 {
    border-bottom: 1px solid #f3f4f6;
    border-radius: 0;
    border-left: none;
    border-right: none;
    border-top: none;
    margin-bottom: 0;
}

.lp-station-card-2026:last-child {
    border-bottom: none;
}

.lp-station-card-2026 a {
    color: #2d5f41 !important;
    font-weight: 700;
}

.lp-station-card-2026 .station-city {
    text-align: right;
    margin-left: auto;
}

/* ---- NearbyCities + Regional (Screenshot 6) ---- */
/* Override old grid !important rules with block layout */
body#landingpage #nearby-cities-section .col-xs-12,
body#landingpage #regional-section .col-xs-12 {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
}

body#landingpage #nearby-cities-section .col-xs-12 > h3,
body#landingpage #regional-section .col-xs-12 > h3 {
    width: 100% !important;
    flex: 0 0 100% !important;
}

body#landingpage #nearby-cities-section .link-list,
body#landingpage #regional-section .link-list {
    display: block !important;
    float: none !important;
    width: auto !important;
    flex: 1 1 25% !important;
    min-width: 0 !important;
    margin-right: 0 !important;
    padding-right: 0.5rem !important;
    grid-template-columns: none !important;
}

@media (max-width: 767px) {
    body#landingpage #nearby-cities-section .link-list,
    body#landingpage #regional-section .link-list {
        flex: 1 1 50% !important;
    }
}

body#landingpage #nearby-cities-section .link-list ul,
body#landingpage #regional-section .link-list ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

/* Remove card borders from ul.signed li */
body#landingpage #nearby-cities-section ul.signed li,
body#landingpage #nearby-cities-section .link-list ul li,
body#landingpage #regional-section ul.signed li,
body#landingpage #regional-section .link-list ul li {
    border: none !important;
    margin-bottom: 0 !important;
    padding: 0.375rem 0 !important;
    font-size: 0.9375rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

body#landingpage #nearby-cities-section .link-list ul li::before,
body#landingpage #regional-section .link-list ul li::before {
    content: '' !important;
    display: inline-block !important;
    width: 6px !important;
    height: 6px !important;
    min-width: 6px !important;
    background: #2d5f41 !important;
    border-radius: 50% !important;
    margin-right: 0 !important;
    vertical-align: middle !important;
}

body#landingpage #nearby-cities-section .link-list ul li a {
    color: #2d5f41 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
}

body#landingpage #nearby-cities-section .link-list ul li a:hover {
    text-decoration: underline !important;
}

body#landingpage #regional-section .link-list ul li a {
    color: #374151 !important;
    text-decoration: none !important;
}

body#landingpage #regional-section .link-list ul li a:hover {
    color: #2d5f41 !important;
    text-decoration: underline !important;
}

/* ---- LocalSEO Red Highlight (Screenshot 6 bottom) ---- */
.lp-seo-main-2026 .intro-text .highlight {
    background: #e4002b;
    color: #fff !important;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: 500;
    text-decoration: none;
    -webkit-text-fill-color: #fff;
}

/* Contact widget green sidebar */
.lp-contact-widget-2026 {
    background: #2d5f41;
    border-color: #2d5f41;
    color: #fff;
}

.lp-contact-widget-2026::before {
    display: none;
}

.lp-contact-widget-2026 h4 {
    color: #fff !important;
}

.lp-contact-widget-2026 .subtitle {
    color: rgba(255, 255, 255, 0.8) !important;
}

.lp-contact-widget-2026 .widget-icon {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}

.lp-contact-widget-2026 .phone {
    display: block;
    font-size: 1.5rem;
    font-weight: 900;
    color: #fff !important;
    text-decoration: none;
    margin: 1rem 0 0.25rem;
}

.lp-contact-widget-2026 .hours {
    font-size: 0.875rem !important;
    color: rgba(255, 255, 255, 0.7) !important;
    display: block;
    margin-bottom: 1.5rem;
}

.lp-contact-widget-2026 .cta-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    background: #fff;
    color: #2d5f41 !important;
    font-weight: 700;
    padding: 0.75rem 1.5rem;
    border-radius: 0.75rem;
    text-decoration: none !important;
    transition: all 0.3s ease;
}

.lp-contact-widget-2026 .cta-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

.lp-contact-widget-2026 .cta-btn [data-lucide] {
    width: 16px;
    height: 16px;
}

/* ============================================================
   29. LP Typography Alignment (2026-03-10)
   Match the KONZEPT2026 screenshots more closely
   ============================================================ */
body#landingpage .lp-main-text-2026 h2 {
    font-size: 3rem !important;
    line-height: 1.06 !important;
    letter-spacing: -0.03em;
}

@media (min-width: 1024px) {
    body#landingpage .lp-main-text-2026 h2 {
        font-size: 4rem !important;
    }
}

body#landingpage .lp-main-text-2026 p {
    font-size: 1.25rem !important;
    line-height: 1.72 !important;
    max-width: 40rem;
}

body#landingpage .lp-main-features-card-2026 .feature-item h4 {
    font-size: 1.25rem !important;
    margin-bottom: 0.5rem !important;
}

body#landingpage .lp-main-features-card-2026 .feature-item p {
    font-size: 1rem !important;
    line-height: 1.6 !important;
}

body#landingpage .lp-main-info-box-2026 h3 {
    font-size: 2rem !important;
    margin-bottom: 1rem !important;
}

body#landingpage .lp-main-info-box-2026 p {
    font-size: 1.25rem !important;
    line-height: 1.75 !important;
}

body#landingpage .lp-localinfo-header-2026 h2 {
    font-size: 3rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.03em;
}

@media (min-width: 1024px) {
    body#landingpage .lp-localinfo-header-2026 h2 {
        font-size: 4rem !important;
    }
}

body#landingpage .lp-localinfo-header-2026 .desc {
    font-size: 1.25rem !important;
    line-height: 1.75 !important;
    max-width: 28rem;
}

body#landingpage .lp-localinfo-grid-2026 .info-item h4 {
    font-size: 1.5rem !important;
    margin-bottom: 0.625rem !important;
}

body#landingpage .lp-localinfo-grid-2026 .info-item p {
    font-size: 1.125rem !important;
    line-height: 1.72 !important;
}

body#landingpage .lp-categories-section-2026 h2,
body#landingpage .lp-how-it-works-2026 h2,
body#landingpage #faq-section h2,
body#landingpage #districts-section .lp-section-header-2026 h2,
body#landingpage .lp-seo-main-2026 h2,
body#landingpage #expertise-section h2 {
    font-size: 3rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.03em;
}

@media (min-width: 1024px) {
    body#landingpage .lp-categories-section-2026 h2,
    body#landingpage .lp-how-it-works-2026 h2,
    body#landingpage #faq-section h2,
    body#landingpage #districts-section .lp-section-header-2026 h2,
    body#landingpage .lp-seo-main-2026 h2,
    body#landingpage #expertise-section h2 {
        font-size: 3.5rem !important;
    }
}

body#landingpage .lp-how-it-works-2026 .desc,
body#landingpage #districts-section .lp-section-header-2026 p,
body#landingpage .lp-seo-main-2026 .intro-text {
    font-size: 1.5rem !important;
    line-height: 1.65 !important;
}

body#landingpage .lp-category-card-2026 h3 {
    font-size: 1.875rem !important;
    line-height: 1.14 !important;
}

body#landingpage .lp-category-card-2026 p,
body#landingpage .lp-step-2026 p,
body#landingpage .lp-seo-feature-card-2026 p,
body#landingpage .lp-location-info-2026 span,
body#landingpage .lp-advantage-card-2026 li {
    font-size: 1.125rem !important;
    line-height: 1.72 !important;
}

body#landingpage .lp-step-2026 h3,
body#landingpage .lp-seo-feature-card-2026 h4,
body#landingpage .lp-location-info-2026 h4,
body#landingpage .lp-advantage-card-2026 h3 {
    font-size: 1.5rem !important;
}

body#landingpage .lp-contact-banner-2026.gradient .contact-text h3 {
    font-size: 2rem !important;
}

body#landingpage .lp-contact-banner-2026.gradient .contact-text p,
body#landingpage .lp-contact-banner-2026.gradient .contact-text .hours {
    font-size: 1.125rem !important;
}

body#landingpage .lp-contact-banner-2026.gradient .contact-phone a {
    font-size: 3rem !important;
}

body#landingpage #stations-section .lp-title,
body#landingpage #nearby-cities-section .lp-title,
body#landingpage #regional-section .lp-title {
    font-size: 2.25rem !important;
    line-height: 1.15 !important;
}

body#landingpage #stations-section .lp-station-card-2026 a {
    font-size: 1.25rem !important;
    line-height: 1.45 !important;
}

body#landingpage #stations-section .lp-station-card-2026 .station-street,
body#landingpage #stations-section .lp-station-card-2026 .station-city,
body#landingpage .link-list a {
    font-size: 1.05rem !important;
    line-height: 1.65 !important;
}

body#landingpage .lp-local-faq-2026 dt,
body#landingpage .lp-faq-2026 .panel-title a {
    font-size: 1.375rem !important;
    line-height: 1.45 !important;
}

body#landingpage .lp-local-faq-2026 dd,
body#landingpage .lp-faq-2026 .panel-body p,
body#landingpage .lp-faq-2026 .panel-body li {
    font-size: 1.125rem !important;
    line-height: 1.72 !important;
}

body#landingpage .lp-district-card-2026 h3 {
    font-size: 1.5rem !important;
}

body#landingpage .lp-district-card-2026 p {
    font-size: 1.125rem !important;
    line-height: 1.72 !important;
}

/* ---- FAQ Section (Screenshot 7-8) ---- */
.lp-faq-centered-2026 .lp-faq-icon-circle {
    width: 64px;
    height: 64px;
    background: #f0fdf4;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    color: #2d5f41;
}

.lp-faq-centered-2026 .lp-faq-icon-circle [data-lucide] {
    width: 28px;
    height: 28px;
}

/* Local FAQ card */
.lp-local-faq-2026 {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    padding: 2rem;
    margin-bottom: 2rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

/* FAQ accordion items */
.lp-faq-2026 .panel {
    border-radius: 0.75rem !important;
    border: 1px solid #e5e7eb !important;
    margin-bottom: 0.75rem !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
    overflow: hidden;
}

.lp-faq-2026 .panel-heading {
    background: #fff !important;
    border-bottom: 1px solid #e5e7eb;
    border-radius: 0.75rem 0.75rem 0 0 !important;
    padding: 1rem 1.25rem !important;
}

.lp-faq-2026 .panel-title a {
    background-color: transparent !important;
}

/* ---- Districts Section (Screenshot 8 bottom) ---- */
#districts-section .lp-section-header-2026 {
    text-align: center;
    margin-bottom: 3rem;
}

.lp-district-card-2026 .find-station {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #2d5f41;
    font-weight: 700;
    font-size: 0.875rem;
    margin-top: 1.25rem;
    cursor: pointer;
    transition: gap 0.3s ease;
}

.lp-district-card-2026:hover .find-station {
    gap: 0.75rem;
}

.lp-district-card-2026 .find-station [data-lucide] {
    width: 16px;
    height: 16px;
}

/* ---- CTA Icon Circle (Final CTA + FAQ) ---- */
.cta-icon-circle {
    width: 64px;
    height: 64px;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    color: #fff;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

/* ---- Expertise Cards (TSX spec) ---- */
.lp-advantage-card-2026 {
    background: #f9fafb;
    border: 1px solid #f3f4f6;
    border-radius: 1.5rem;
}

.lp-advantage-card-2026:hover {
    border-color: rgba(45, 95, 65, 0.3);
}

.lp-advantage-icon-2026 {
    background: #fff;
    border-radius: 1rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

/* ---- Guide Section Bar (Screenshot 1 top) ---- */
.lp-guide-accordion-2026 .panel-heading {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 1rem !important;
}

.lp-guide-accordion-2026 {
    border: none;
    box-shadow: none;
    border-radius: 1rem;
}

/* ---- Global Accent Color Class ---- */
body#landingpage .accent {
    color: #2d5f41 !important;
}

body#landingpage .lp-localinfo-header-2026 h2 .accent {
    color: #2d5f41 !important;
    font-style: italic;
}

body#landingpage .lp-main-text-2026 h2 .accent {
    color: #2d5f41 !important;
}

body#landingpage .lp-how-it-works-2026 h2 .accent {
    color: #2d5f41 !important;
}

/* ============================================================
   30. LP Content Fine Alignment (2026-03-10)
   Exact content-section sizing from KONZEPT2026 reference
   Header/Footer intentionally untouched
   ============================================================ */
body#landingpage .lp-main-grid-2026 {
    gap: 40px !important;
    align-items: center !important;
    padding: 24px 0 56px !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-main-grid-2026 {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 64px !important;
        padding: 32px 0 96px !important;
    }
}

body#landingpage .lp-location-badge {
    gap: 6px !important;
    font-size: 12px !important;
    letter-spacing: 0.1em !important;
    padding: 6px 14px !important;
    margin-bottom: 20px !important;
}

body#landingpage .lp-location-badge [data-lucide] {
    width: 12px !important;
    height: 12px !important;
}

body#landingpage .lp-main-text-2026 h2 {
    font-size: 40px !important;
    line-height: 48px !important;
    letter-spacing: normal !important;
    margin: 0 0 32px !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-main-text-2026 h2 {
        font-size: 48px !important;
        line-height: 60px !important;
    }
}

body#landingpage .lp-main-text-2026 p {
    max-width: 528px !important;
    font-size: 18px !important;
    line-height: 29.25px !important;
    color: #6b7280 !important;
    margin: 0 0 24px !important;
}

body#landingpage .lp-main-text-2026 p:last-child {
    margin-bottom: 0 !important;
}

body#landingpage .lp-main-features-card-2026 .rotated-bg {
    inset: -18px !important;
    background: #eef7ee !important;
    border-radius: 32px !important;
    transform: rotate(-2deg) !important;
}

body#landingpage .lp-main-features-card-2026 .card-inner {
    border-radius: 32px !important;
    padding: 40px !important;
    border: 1px solid rgba(220, 241, 227, 0.7) !important;
    box-shadow: 0 25px 50px -12px rgba(45, 95, 65, 0.06) !important;
    gap: 32px !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-main-features-card-2026 .card-inner {
        padding: 48px !important;
    }
}

body#landingpage .lp-main-features-card-2026 .feature-icon-circle {
    width: 48px !important;
    height: 48px !important;
    margin-bottom: 16px !important;
}

body#landingpage .lp-main-features-card-2026 .feature-item h4 {
    font-size: 16px !important;
    line-height: 24px !important;
    margin: 0 0 16px 0 !important;
}

body#landingpage .lp-main-features-card-2026 .feature-item p {
    font-size: 14px !important;
    line-height: 20px !important;
    color: #6b7280 !important;
}

body#landingpage .lp-main-features-card-2026 .feature-cta {
    gap: 8px !important;
    padding: 16px 32px !important;
    border-radius: 16px !important;
    font-size: 16px !important;
    line-height: 24px !important;
}

body#landingpage .lp-main-info-box-2026 {
    background: #f9fafb !important;
    border: 1px solid #f3f4f6 !important;
    border-radius: 32px !important;
    padding: 40px !important;
    margin-top: 0 !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-main-info-box-2026 {
        padding: 48px !important;
    }
}

body#landingpage .lp-main-info-box-2026 h3 {
    font-size: 24px !important;
    line-height: 32px !important;
    margin: 0 0 16px 0 !important;
}

body#landingpage .lp-main-info-box-2026 p {
    max-width: 768px !important;
    font-size: 16px !important;
    line-height: 26px !important;
}

body#landingpage .lp-localinfo-section-2026 {
    padding: 64px 0 !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-localinfo-section-2026 {
        padding: 72px 0 !important;
    }
}

body#landingpage .lp-localinfo-label {
    color: #2d5f41 !important;
    font-size: 12px !important;
    line-height: 20px !important;
    letter-spacing: 0.7px !important;
    margin-bottom: 20px !important;
}

body#landingpage .lp-localinfo-header-2026 {
    gap: 24px !important;
    margin-bottom: 40px !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-localinfo-header-2026 {
        gap: 32px !important;
        align-items: flex-end !important;
    }
}

@media (min-width: 1024px) {
    body#landingpage .lp-localinfo-header-2026 {
        margin-bottom: 80px !important;
    }
}

body#landingpage .lp-localinfo-header-2026 h2 {
    font-size: 40px !important;
    line-height: 48px !important;
    letter-spacing: normal !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-localinfo-header-2026 h2 {
        font-size: 48px !important;
        line-height: 60px !important;
    }
}

body#landingpage .lp-localinfo-header-2026 .desc {
    max-width: 384px !important;
    font-size: 18px !important;
    line-height: 29.25px !important;
    color: #6b7280 !important;
}

body#landingpage .lp-localinfo-grid-2026 {
    gap: 1px !important;
    border: 1px solid #f3f4f6 !important;
    border-radius: 32px !important;
    background: #f3f4f6 !important;
}

body#landingpage .lp-localinfo-grid-2026 .info-item {
    padding: 32px !important;
    gap: 24px !important;
    align-items: flex-start !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-localinfo-grid-2026 .info-item {
        padding: 40px !important;
    }
}

body#landingpage .lp-localinfo-grid-2026 .info-item .icon-circle {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
}

body#landingpage .lp-localinfo-grid-2026 .info-item h4 {
    font-size: 20px !important;
    line-height: 28px !important;
    font-weight: 700 !important;
    margin: 0 0 12px 0 !important;
}

body#landingpage .lp-localinfo-grid-2026 .info-item p {
    font-size: 16px !important;
    line-height: 26px !important;
    margin: 0 !important;
}

body#landingpage .lp-main-grid-2026,
body#landingpage .lp-main-grid-2026 *,
body#landingpage .lp-main-info-box-2026,
body#landingpage .lp-main-info-box-2026 *,
body#landingpage .lp-localinfo-section-2026,
body#landingpage .lp-localinfo-section-2026 *,
body#landingpage .lp-seo-grid-2026,
body#landingpage .lp-seo-grid-2026 * {
    font-family: 'Inter', ui-sans-serif, system-ui, sans-serif !important;
}

body#landingpage .lp-main-text-2026 h2 .accent,
body#landingpage .lp-localinfo-header-2026 h2 .accent,
body#landingpage .lp-seo-main-2026 h2 .text-gradient,
body#landingpage .lp-seo-main-2026 h2 span.text-gradient {
    font-size: inherit !important;
    line-height: inherit !important;
    font-family: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
}

body#landingpage .lp-main-text-2026 h2 .accent {
    color: #2d5f41 !important;
    font-style: normal !important;
}

body#landingpage .lp-localinfo-header-2026 h2 .accent {
    color: inherit !important;
    font-style: normal !important;
}

body#landingpage .lp-localinfo-label,
body#landingpage .lp-seo-main-2026 .section-label {
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 700 !important;
    letter-spacing: 0.7px !important;
    color: #2d5f41 !important;
}

body#landingpage .lp-seo-main-2026 .section-label [data-lucide] {
    width: 16px !important;
    height: 16px !important;
}

body#landingpage .lp-seo-main-2026 h2 {
    font-size: 40px !important;
    line-height: 48px !important;
    letter-spacing: normal !important;
    color: #111827 !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-seo-main-2026 h2 {
        font-size: 48px !important;
        line-height: 60px !important;
    }
}

body#landingpage .lp-seo-main-2026 .intro-text {
    font-size: 18px !important;
    line-height: 29.25px !important;
    color: #6b7280 !important;
}

body#landingpage .lp-seo-main-2026 .intro-text strong {
    color: #111827 !important;
}

body#landingpage .lp-location-info-2026 {
    border-radius: 24px !important;
    padding: 32px !important;
}

body#landingpage .lp-location-info-2026 h4 {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
    color: #111827 !important;
}

body#landingpage .lp-location-info-item-2026,
body#landingpage .lp-location-info-2026 span {
    font-size: 16px !important;
    line-height: 26px !important;
    color: #4b5563 !important;
}

body#landingpage .lp-contact-widget-2026 {
    border-radius: 24px !important;
    padding: 40px 32px !important;
    background: #2d5f41 !important;
    border-color: #2d5f41 !important;
}

body#landingpage .lp-contact-widget-2026 h4 {
    font-size: 20px !important;
    line-height: 28px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

body#landingpage .lp-contact-widget-2026 .subtitle {
    font-size: 16px !important;
    line-height: 26px !important;
    color: rgba(255, 255, 255, 0.82) !important;
}

body#landingpage .lp-contact-widget-2026 .hours {
    font-size: 14px !important;
    line-height: 20px !important;
    color: rgba(255, 255, 255, 0.72) !important;
}

/* ============================================================
   31. Guide Accordion Alignment (2026-03-10)
   Match the reference accordion bar and harmonize open content
   ============================================================ */
body#landingpage .lp-guide-accordion-2026,
body#landingpage .lp-guide-accordion-2026 * {
    font-family: 'Inter', ui-sans-serif, system-ui, sans-serif !important;
}

body#landingpage .lp-guide-accordion-2026 {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.10), 0 1px 2px -1px rgba(0, 0, 0, 0.10) !important;
}

body#landingpage .lp-guide-accordion-2026 .panel {
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-heading {
    background: #ffffff !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-heading:hover {
    background: #f9fafb !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title {
    margin: 0 !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 16px 24px !important;
    min-height: 60px !important;
    background: #ffffff !important;
    color: #111827 !important;
    font-size: 18px !important;
    line-height: 28px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title a:hover,
body#landingpage .lp-guide-accordion-2026 .panel-title a:focus {
    background: #f9fafb !important;
    color: #111827 !important;
    text-decoration: none !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title a > span {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: 0 !important;
    text-transform: none !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title,
body#landingpage .lp-guide-accordion-2026 .panel-title h2,
body#landingpage .lp-guide-accordion-2026 .panel-title h2 a {
    text-transform: none !important;
    letter-spacing: 0 !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title a > span [data-lucide] {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    color: #2d5f41 !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-title .fa-chevron-down {
    font-family: FontAwesome !important;
    font-style: normal !important;
    font-weight: normal !important;
    color: #6b7280 !important;
    font-size: 16px !important;
    line-height: 1 !important;
    text-transform: none !important;
}

body#landingpage .lp-guide-accordion-2026 .panel-body {
    background: #ffffff !important;
    border-top: 1px solid #e5e7eb !important;
    padding: 24px !important;
}

@media (min-width: 1024px) {
    body#landingpage .lp-guide-accordion-2026 .panel-body {
        padding: 32px !important;
    }
}

body#landingpage .lp-guide-title-2026,
body#landingpage #guide-accordion .lp-guide-title-2026 {
    gap: 12px !important;
    font-size: 24px !important;
    line-height: 32px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 20px 0 !important;
}

body#landingpage .lp-guide-title-2026 [data-lucide],
body#landingpage #guide-accordion .lp-guide-title-2026 [data-lucide] {
    width: 20px !important;
    height: 20px !important;
    color: #2d5f41 !important;
}

body#landingpage .lp-guide-intro-2026 {
    font-size: 18px !important;
    line-height: 29.25px !important;
    color: #6b7280 !important;
    margin: 0 0 24px 0 !important;
}

body#landingpage .lp-guide-vehicles-grid-2026 {
    gap: 16px !important;
    margin-bottom: 24px !important;
}

@media (min-width: 768px) {
    body#landingpage .lp-guide-vehicles-grid-2026 {
        gap: 20px !important;
    }
}

body#landingpage .lp-guide-vehicle-card-2026 {
    background: #f9fafb !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 20px !important;
    padding: 24px !important;
}

body#landingpage .lp-guide-vehicle-card-2026 h4 {
    font-size: 20px !important;
    line-height: 28px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 12px 0 !important;
}

body#landingpage .lp-guide-vehicle-card-2026 .volume-badge {
    display: inline-flex !important;
    align-items: center !important;
    padding: 6px 10px !important;
    margin-bottom: 14px !important;
    border-radius: 999px !important;
    background: #eef7ee !important;
    color: #2d5f41 !important;
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
}

body#landingpage .lp-guide-vehicle-card-2026 p {
    font-size: 16px !important;
    line-height: 26px !important;
    color: #4b5563 !important;
}

body#landingpage .lp-guide-license-box-2026,
body#landingpage .lp-guide-warning-box-2026 {
    background: #f9fafb !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 20px !important;
}

body#landingpage .lp-guide-license-box-2026 {
    padding: 24px !important;
    margin-bottom: 20px !important;
}

body#landingpage .lp-guide-license-box-2026 h4 {
    font-size: 20px !important;
    line-height: 28px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 16px 0 !important;
}

body#landingpage .lp-guide-license-box-2026 li {
    align-items: flex-start !important;
    gap: 12px !important;
    padding: 8px 0 !important;
    font-size: 16px !important;
    line-height: 26px !important;
    color: #4b5563 !important;
}

body#landingpage .lp-guide-license-box-2026 li [data-lucide] {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    margin-top: 3px !important;
}

body#landingpage .lp-guide-warning-box-2026 {
    gap: 12px !important;
    padding: 18px 20px !important;
}

body#landingpage .lp-guide-warning-box-2026 [data-lucide] {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    margin-top: 3px !important;
}

body#landingpage .lp-guide-warning-box-2026 div {
    font-size: 16px !important;
    line-height: 26px !important;
    color: #4b5563 !important;
}

body#landingpage .lp-guide-warning-box-2026 strong {
    display: inline !important;
    margin: 0 4px 0 0 !important;
    color: #111827 !important;
}

/* ============================================================
   32. Local Info, FAQ and Link Lists Alignment (2026-03-10)
   Match overview.html for local offer, faq and nearby/regional links
   ============================================================ */
body#landingpage .lp-seo-main-2026 h2 {
    font-size: 36px !important;
    line-height: 45px !important;
    margin: 0 0 24px 0 !important;
}

body#landingpage .lp-seo-main-2026 .intro-text {
    font-size: 18px !important;
    line-height: 29.25px !important;
    color: #6b7280 !important;
}

body#landingpage .lp-contact-widget-2026 {
    padding: 32px !important;
    text-align: left !important;
}

body#landingpage .lp-contact-widget-2026 .widget-icon {
    margin: 0 0 20px 0 !important;
}

body#landingpage .lp-contact-widget-2026 h4 {
    font-size: 20px !important;
    line-height: 28px !important;
    text-align: left !important;
}

body#landingpage .lp-contact-widget-2026 .subtitle {
    font-size: 14px !important;
    line-height: 20px !important;
    text-align: left !important;
}

body#landingpage .lp-contact-widget-2026 .phone {
    font-size: 30px !important;
    line-height: 36px !important;
    text-align: left !important;
}

body#landingpage .lp-contact-widget-2026 .hours {
    font-size: 14px !important;
    line-height: 20px !important;
    text-align: left !important;
}

body#landingpage .lp-contact-widget-2026 .cta-btn {
    width: 100% !important;
    justify-content: center !important;
    padding: 12px 0 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: #2d5f41 !important;
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

body#landingpage .lp-contact-widget-2026 .cta-btn:hover,
body#landingpage .lp-contact-widget-2026 .cta-btn:focus {
    background: #f3f4f6 !important;
    color: #2d5f41 !important;
}

body#landingpage .lp-contact-widget-2026 .cta-btn [data-lucide] {
    color: #2d5f41 !important;
}

body#landingpage .lp-price-widget-2026 {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 24px !important;
    padding: 32px !important;
    box-shadow: none !important;
}

body#landingpage .lp-price-widget-2026::before {
    display: none !important;
}

body#landingpage .lp-price-widget-2026 h5 {
    font-size: 16px !important;
    line-height: 24px !important;
    color: #111827 !important;
}

body#landingpage .lp-price-item-2026 .label,
body#landingpage .lp-price-widget-2026 .label {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 400 !important;
    color: #4b5563 !important;
}

body#landingpage .lp-price-item-2026 .price,
body#landingpage .lp-price-widget-2026 .price {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
    color: #111827 !important;
}

body#landingpage .lp-price-widget-2026 .footer,
body#landingpage .lp-price-widget-2026 .footer span {
    font-size: 14px !important;
    line-height: 20px !important;
}

body#landingpage #faq-section h2 {
    font-size: 36px !important;
    line-height: 40px !important;
    color: #111827 !important;
}

body#landingpage #faq-section .lp-local-faq-2026 {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 16px !important;
    padding: 32px !important;
    box-shadow: none !important;
}

body#landingpage #faq-section .lp-local-faq-2026 h4 {
    font-size: 18px !important;
    line-height: 28px !important;
    color: #111827 !important;
}

body#landingpage #faq-section .lp-local-faq-2026 dt {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
    color: #111827 !important;
}

body#landingpage #faq-section .lp-local-faq-2026 dd {
    font-size: 14px !important;
    line-height: 22.75px !important;
    color: #6b7280 !important;
}

body#landingpage #faq-accordion .panel.panel-default {
    border: 1px solid #e5e7eb !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    margin-bottom: 16px !important;
    overflow: hidden !important;
}

body#landingpage #faq-accordion .panel-heading {
    background: #ffffff !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
}

body#landingpage #faq-accordion .panel-title {
    margin: 0 !important;
}

body#landingpage #faq-accordion .panel-title a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 16px 24px !important;
    background: #ffffff !important;
    color: #111827 !important;
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}

body#landingpage #faq-accordion .panel-title a:hover,
body#landingpage #faq-accordion .panel-title a:focus {
    background: #ffffff !important;
    color: #111827 !important;
    text-decoration: none !important;
}

body#landingpage #faq-accordion .panel-body {
    padding: 24px !important;
    border-top: 1px solid #e5e7eb !important;
    background: #ffffff !important;
}

body#landingpage #faq-accordion .panel-body p,
body#landingpage #faq-accordion .panel-body li {
    font-size: 14px !important;
    line-height: 22.75px !important;
    color: #6b7280 !important;
}

body#landingpage #faq-accordion .panel-body strong,
body#landingpage #faq-accordion .panel-body span strong {
    color: #111827 !important;
}

body#landingpage #nearby-cities-section .link-list ul li,
body#landingpage #regional-section .link-list ul li,
body#landingpage #nearby-cities-section ul.signed li,
body#landingpage #regional-section ul.signed li,
body#landingpage #nearby-cities-section li.mark,
body#landingpage #regional-section li.mark {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

body#landingpage #nearby-cities-section .link-list ul li::before,
body#landingpage #regional-section .link-list ul li::before,
body#landingpage #nearby-cities-section ul.signed li::before,
body#landingpage #regional-section ul.signed li::before,
body#landingpage #nearby-cities-section li.mark::before,
body#landingpage #regional-section li.mark::before {
    content: '' !important;
    display: inline-block !important;
    width: 6px !important;
    height: 6px !important;
    margin-top: 12px !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
    border-radius: 999px !important;
    background: #2d5f41 !important;
    flex: 0 0 6px !important;
}

body#landingpage #nearby-cities-section .link-list a,
body#landingpage #regional-section .link-list a,
body#landingpage #nearby-cities-section ul a,
body#landingpage #regional-section ul a {
    font-size: 14px !important;
    line-height: 20px !important;
    color: #2d5f41 !important;
    text-decoration: none !important;
}

body#landingpage #nearby-cities-section .link-list a::before,
body#landingpage #regional-section .link-list a::before,
body#landingpage #nearby-cities-section ul a::before,
body#landingpage #regional-section ul a::before {
    content: none !important;
    display: none !important;
}

/* ============================================================
   33. Final Local SEO / FAQ Alignment (2026-03-10)
   ============================================================ */

body#landingpage .lp-seo-main-2026 h2 {
    text-align: left !important;
}

body#landingpage .lp-price-widget-2026,
body#landingpage #faq-section .lp-local-faq-2026 {
    font-size: 16px !important;
    line-height: 24px !important;
    color: #111827 !important;
}

body#landingpage .lp-contact-widget-2026 {
    font-size: 16px !important;
    line-height: 24px !important;
    color: #ffffff !important;
}

body#landingpage .lp-contact-widget-2026::before,
body#landingpage .lp-price-widget-2026::before {
    display: none !important;
}

body#landingpage .lp-contact-widget-2026 .widget-icon {
    width: 48px !important;
    height: 48px !important;
    margin: 0 0 24px 0 !important;
    background: rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
}

body#landingpage .lp-contact-widget-2026 .widget-icon [data-lucide] {
    width: 24px !important;
    height: 24px !important;
    color: #ffffff !important;
}

body#landingpage .lp-contact-widget-2026 .phone {
    font-size: 24px !important;
    line-height: 32px !important;
}

body#landingpage .lp-contact-widget-2026 .cta-btn {
    text-align: center !important;
}

body#landingpage .lp-price-widget-2026 {
    color: #111827 !important;
}

body#landingpage .lp-price-list-2026 {
    margin-bottom: 24px !important;
}

body#landingpage .lp-price-item-2026 {
    padding: 16px 0 !important;
    border-bottom: 1px solid #f3f4f6 !important;
}

body#landingpage .lp-price-item-2026:last-child {
    border-bottom: none !important;
}

body#landingpage .lp-price-item-2026 .label,
body#landingpage .lp-price-widget-2026 .label,
body#landingpage .lp-price-item-2026 .price,
body#landingpage .lp-price-widget-2026 .price,
body#landingpage .lp-price-item-2026 .lp-price-label-2026,
body#landingpage .lp-price-widget-2026 .lp-price-label-2026,
body#landingpage .lp-price-item-2026 .lp-price-value-2026,
body#landingpage .lp-price-widget-2026 .lp-price-value-2026 {
    display: inline !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: left !important;
}

body#landingpage .lp-price-item-2026 .label,
body#landingpage .lp-price-widget-2026 .label {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 400 !important;
    color: #4b5563 !important;
}

body#landingpage .lp-price-item-2026 .lp-price-label-2026,
body#landingpage .lp-price-widget-2026 .lp-price-label-2026 {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 400 !important;
    color: #4b5563 !important;
}

body#landingpage .lp-price-item-2026 .price,
body#landingpage .lp-price-widget-2026 .price {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
    color: #111827 !important;
}

body#landingpage .lp-price-item-2026 .lp-price-value-2026,
body#landingpage .lp-price-widget-2026 .lp-price-value-2026 {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
    color: #111827 !important;
}

body#landingpage .lp-price-widget-2026 .footer {
    border-top: 1px solid #f3f4f6 !important;
    color: #6b7280 !important;
}

body#landingpage .lp-price-widget-2026 .footer .since,
body#landingpage .lp-price-widget-2026 .footer .since [data-lucide] {
    color: #6b7280 !important;
}

body#landingpage #faq-section .lp-local-faq-2026 h4 {
    padding-bottom: 16px !important;
    margin-bottom: 24px !important;
    border-bottom: 1px solid #f3f4f6 !important;
}

body#landingpage #faq-section .lp-local-faq-2026 .local-faq-content,
body#landingpage #faq-section .lp-local-faq-2026 dl {
    font-size: 16px !important;
    line-height: 24px !important;
    color: #111827 !important;
}

body#landingpage #faq-section .lp-local-faq-2026 dt {
    padding: 0 !important;
    margin: 0 0 8px 0 !important;
}

body#landingpage #faq-section .lp-local-faq-2026 dd {
    padding: 0 !important;
    margin: 0 0 24px 0 !important;
}

body#landingpage #faq-section .lp-local-faq-2026 dd:last-child {
    margin-bottom: 0 !important;
}

body#landingpage #faq-accordion .panel-body {
    color: #6b7280 !important;
}

body#landingpage #faq-accordion .panel-body p,
body#landingpage #faq-accordion .panel-body li,
body#landingpage #faq-accordion .panel-body span {
    color: #6b7280 !important;
}

body#landingpage #nearby-cities-section .link-list ul li,
body#landingpage #regional-section .link-list ul li,
body#landingpage #nearby-cities-section ul.signed li,
body#landingpage #regional-section ul.signed li,
body#landingpage #nearby-cities-section li.mark,
body#landingpage #regional-section li.mark {
    font-size: 14px !important;
    line-height: 20px !important;
    color: #111827 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body#landingpage #nearby-cities-section .link-list ul li a,
body#landingpage #regional-section .link-list ul li a,
body#landingpage #nearby-cities-section ul.signed li a,
body#landingpage #regional-section ul.signed li a,
body#landingpage #nearby-cities-section li.mark a,
body#landingpage #regional-section li.mark a {
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 400 !important;
    color: #2d5f41 !important;
    text-decoration: none !important;
}

body#landingpage #nearby-cities-section .link-list ul li a:hover,
body#landingpage #regional-section .link-list ul li a:hover,
body#landingpage #nearby-cities-section ul.signed li a:hover,
body#landingpage #regional-section ul.signed li a:hover,
body#landingpage #nearby-cities-section li.mark a:hover,
body#landingpage #regional-section li.mark a:hover {
    color: #2d5f41 !important;
    text-decoration: none !important;
}

body#landingpage #faq-section .lp-faq-2026,
body#landingpage #faq-section .panel-group {
    max-width: 76rem !important;
}

body#landingpage #faq-section .text-center.mt-40 .lp-btn,
body#landingpage #faq-section .text-center.mt-40 .lp-btn-lg {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 700 !important;
}

body#landingpage #expertise-section > .container > .row:first-child h2 span,
body#landingpage #expertise-section h2 span[style*="LKWvermietung.de"] {
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: inherit !important;
}

/* Advantage Cards - alle gleiche Höhe (nur die Card-Reihe, nicht die Header-Reihe) */
body#landingpage #expertise-section .row:has(> .col-md-4 .lp-advantage-card-2026) {
    display: flex;
    flex-wrap: wrap;
}

body#landingpage #expertise-section .row:has(> .col-md-4 .lp-advantage-card-2026) > .col-md-4 {
    display: flex;
}

body#landingpage #expertise-section .row:has(> .col-md-4 .lp-advantage-card-2026) > .col-md-4 > .lp-advantage-card-2026 {
    width: 100%;
}

/* ============================================================
   Nearby Cities & Regional Links - Minimalistisch
   ============================================================ */
body#landingpage #nearby-cities-section,
body#landingpage #regional-section {
    padding-top: 6rem !important;
}

@media (min-width: 1024px) {
    body#landingpage #nearby-cities-section,
    body#landingpage #regional-section {
        padding-top: 7rem !important;
    }
}

body#landingpage #nearby-cities-section ul.signed,
body#landingpage #regional-section ul.signed,
body#landingpage #nearby-cities-section .link-list ul,
body#landingpage #regional-section .link-list ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
    grid-auto-rows: 36px !important;
    gap: 2px 24px !important;
}

body#landingpage #nearby-cities-section li.mark,
body#landingpage #regional-section li.mark,
body#landingpage #nearby-cities-section ul.signed li,
body#landingpage #regional-section ul.signed li,
body#landingpage #nearby-cities-section .link-list ul li,
body#landingpage #regional-section .link-list ul li {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    min-width: 0;
    overflow: hidden;
    transition: none !important;
}

body#landingpage #nearby-cities-section li.mark::before,
body#landingpage #regional-section li.mark::before,
body#landingpage #nearby-cities-section ul.signed li::before,
body#landingpage #regional-section ul.signed li::before,
body#landingpage #nearby-cities-section .link-list ul li::before,
body#landingpage #regional-section .link-list ul li::before {
    content: '' !important;
    flex: 0 0 auto !important;
    width: 8px !important;
    height: 8px !important;
    background: transparent !important;
    border-top: 2px solid #2d5f41 !important;
    border-right: 2px solid #2d5f41 !important;
    transform: rotate(45deg) !important;
    border-radius: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    opacity: 0.6;
    transition: opacity 0.2s ease, transform 0.2s ease !important;
}

body#landingpage #nearby-cities-section li.mark a,
body#landingpage #regional-section li.mark a,
body#landingpage #nearby-cities-section ul.signed li a,
body#landingpage #regional-section ul.signed li a,
body#landingpage #nearby-cities-section .link-list ul li a,
body#landingpage #regional-section .link-list ul li a {
    color: #4b5563 !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: color 0.2s ease !important;
    border-bottom: 1px solid transparent;
    padding-bottom: 1px;
}

body#landingpage #nearby-cities-section li.mark:hover::before,
body#landingpage #regional-section li.mark:hover::before,
body#landingpage #nearby-cities-section ul.signed li:hover::before,
body#landingpage #regional-section ul.signed li:hover::before,
body#landingpage #nearby-cities-section .link-list ul li:hover::before,
body#landingpage #regional-section .link-list ul li:hover::before {
    opacity: 1;
    transform: rotate(45deg) translate(1px, -1px) !important;
}

body#landingpage #nearby-cities-section li.mark:hover a,
body#landingpage #regional-section li.mark:hover a,
body#landingpage #nearby-cities-section ul.signed li:hover a,
body#landingpage #regional-section ul.signed li:hover a,
body#landingpage #nearby-cities-section .link-list ul li:hover a,
body#landingpage #regional-section .link-list ul li:hover a {
    color: #2d5f41 !important;
    border-bottom-color: rgba(45, 95, 65, 0.3);
}
