    :root {
        /* =========================================================
           BRAND COLORS – BLAU / STAHL / THERMO
        ========================================================= */

        /* Brand Blues (Backgrounds, Headlines, UI) */
        --blue-950:#05080C;
        --blue-900:#0F1A26;  /* Haupt-Background dunkel */
        --blue-850:#131F2C;
        --blue-800:#15212F;
        --blue-750:#182333;
        --blue-700:#1B2635;  /* Cards / Panels dunkel */
        --blue-600:#253141;
        --blue-500:#344255;
        --blue-400:#4F5D72;
        --blue-300:#73809A;
        --blue-200:#A0A9BD;
        --blue-100:#CDD4E0;
        --blue-050:#E7ECF4;

        /* Steel / Neutral (Borders, Flächen, Hintergründe) */
        --steel-900:#111315;
        --steel-700:#2B3034;
        --steel-500:#70787E;
        --steel-400:#9AA3AA;
        --steel-300:#DEE3E6;  /* Border Standard */
        --steel-200:#EBEEF0;  /* Panels Hell */
        --steel-150:#F1F3F5;
        --steel-100:#F5F6F7;
        --steel-050:#FAFBFC;

        /* Thermo – Akzent (Buttons, Highlights) */
        --thermo-900:#3D1600;
        --thermo-800:#5C2300;
        --thermo-700:#FF7C3E;  /* Primäre Akzentfarbe */
        --thermo-600:#FF9158;
        --thermo-500:#FFA672;
        --thermo-300:#FFD1AF;
        --thermo-100:#FFE6D6;

        /* Hintergrund-Töne */
        --white-soft:#FAFAF9;
        --white:#FFFFFF;
        --black:#000000;

        /* Semantic State Colors */
        --success-700:#1E7E34;
        --success-500:#28A745;
        --success-100:#DFF5E5;

        --warning-700:#A66A00;
        --warning-500:#FFC107;
        --warning-100:#FFF4D5;

        --danger-700:#8B1D2C;
        --danger-500:#DC3545;
        --danger-100:#F8D7DA;

        /* Overlays & Spezial-Farben (für Video, Modals, etc.) */
        --overlay-strong:rgba(5, 8, 12, 0.85);
        --overlay-soft:rgba(5, 8, 12, 0.6);
        --overlay-gradient-hero:
            linear-gradient(to bottom right,
                rgba(5, 8, 12, 0.70),
                rgba(15, 20, 25, 0.88)
            );

        /* =========================================================
           TYPOGRAPHY SCALE
        ========================================================= */

        /* Font Families */
        --font-head:"Manrope",sans-serif;
        --font-body:"Inter",sans-serif;
        --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

        /* Font Sizes (Desktop-Basis, gern mit clamp in Komponenten) */
        --fs-display:3.8rem;        /* extragroße Statements */
        --fs-hero:clamp(3.2rem,5vw,4.6rem);
        --fs-h1:2.6rem;
        --fs-h2:2.1rem;
        --fs-h3:1.6rem;
        --fs-h4:1.3rem;
        --fs-body-lg:1.15rem;
        --fs-body:1.0rem;
        --fs-body-sm:0.9rem;
        --fs-label:0.78rem;
        --fs-micro:0.7rem;

        /* Line Heights */
        --lh-tight:1.1;
        --lh-normal:1.4;
        --lh-relaxed:1.6;

        /* Font Weights */
        --w-light:300;
        --w-regular:400;
        --w-medium:500;
        --w-semibold:600;
        --w-bold:700;
        --w-extrabold:800;

        /* Letter Spacing Utilities */
        --ls-tight:-0.02em;
        --ls-normal:0;
        --ls-wide:0.08em;

        /* =========================================================
           SPACING SCALE – 8px-basierte Skala
        ========================================================= */
        --space-2:2px;
        --space-4:4px;
        --space-6:6px;
        --space-8:8px;
        --space-10:10px;
        --space-12:12px;
        --space-16:16px;
        --space-20:20px;
        --space-24:24px;
        --space-32:32px;
        --space-40:40px;
        --space-48:48px;
        --space-56:56px;
        --space-64:64px;
        --space-80:80px;
        --space-96:96px;
        --space-120:120px;

        /* Sektion-Padding Standard */
        --section-pad-y:120px;
        --section-pad-y-mobile:80px;

        /* =========================================================
           RADII / BORDERS
        ========================================================= */
        --radius-xxs:4px;
        --radius-xs:8px;
        --radius-sm:12px;
        --radius-md:16px;
        --radius-lg:22px;
        --radius-xl:28px;
        --radius-pill:999px;

        --border-thin:1px;
        --border-thick:2px;

        /* =========================================================
           SHADOWS / ELEVATION
        ========================================================= */
        --shadow-xs:0 1px 4px rgba(0,0,0,.05);
        --shadow-sm:0 4px 18px rgba(0,0,0,.08);
        --shadow-md:0 8px 24px rgba(0,0,0,.12);
        --shadow-lg:0 10px 40px rgba(0,0,0,.16);
        --shadow-inner:inset 0 1px 0 rgba(255,255,255,.06);

        /* =========================================================
           BREAKPOINT TOKENS (nur als Referenz für Media Queries)
        ========================================================= */
        --bp-xs:480px;
        --bp-sm:576px;
        --bp-md:768px;
        --bp-lg:992px;
        --bp-xl:1200px;
        --bp-xxl:1400px;

        /* =========================================================
           Z-INDEX SCALE – hilft dir beim Video / Hero / Navbar
        ========================================================= */
        --z-base:0;
        --z-header:100;
        --z-hero-video:10;
        --z-hero-overlay:20;
        --z-hero-content:30;
        --z-floating-ui:40;   /* z.B. Schnellauswahl-Menü */
        --z-dropdown:900;
        --z-modal:1000;
        --z-toast:1100;

        /* =========================================================
           MOTION / TRANSITIONS
        ========================================================= */
        --ease-soft:cubic-bezier(.25,.46,.45,.94);
        --ease-snappy:cubic-bezier(.4,0,.2,1);

        --duration-fast:150ms;
        --duration-normal:250ms;
        --duration-slow:400ms;

        /* Fokus / Interaktionen */
        --focus-ring-color:rgba(255,124,62,0.5);
        --focus-ring:0 0 0 3px var(--focus-ring-color);
    }

    /* =============================================================
       GLOBAL RESETS / BASE
    ============================================================= */

    * {
        box-sizing:border-box;
    }

    html, body {
        margin:0;
        padding:0;
        min-height:100%;
        background:var(--white-soft);
        color:var(--blue-900);
        font-family:var(--font-body);
        text-rendering:optimizeLegibility;
        -webkit-font-smoothing:antialiased;
    }

    body {
        font-size:var(--fs-body);
        line-height:var(--lh-normal);
    }

    h1, h2, h3, h4, h5, h6 {
        font-family:var(--font-head);
        font-weight:var(--w-bold);
        letter-spacing:var(--ls-tight);
        margin:0;
        color:var(--blue-900);
    }

    h1 { font-size:var(--fs-h1); line-height:var(--lh-tight); }
    h2 { font-size:var(--fs-h2); line-height:var(--lh-tight); }
    h3 { font-size:var(--fs-h3); }

    p {
        margin:0 0 var(--space-16);
        font-size:var(--fs-body);
        color:var(--blue-700);
    }

    a {
        color:var(--thermo-700);
        text-decoration:none;
        transition:color var(--duration-normal) var(--ease-soft);
    }
    a:hover {
        color:var(--thermo-600);
    }

    button {
        font-family:var(--font-body);
    }

    img {
        max-width:100%;
        height:auto;
        display:block;
    }
/* --------------------------------------------------------
NAV NAVIGATION 
--------------------------------------------------------- */

.wt-nav-main{
    background:transparent;
}

/* Sticky Bar --------------------------------------------- */

.wt-nav-sticky{
    position:sticky;
    top:0;
    z-index:999;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    background:rgba(255,255,255,0.92);
    border-bottom:1px solid var(--steel-150,#E2E8F0);
    transition:
        background-color 180ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        box-shadow 180ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        transform 180ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.wt-nav-sticky .wt-nav-container{
    max-width:1320px;
}

.wt-nav-sticky.is-scrolled{
    background:rgba(255,255,255,0.98);
    box-shadow:var(--shadow-sm,0 10px 24px rgba(15,23,42,0.06));
    transform:translateY(-1px);
}

/* Brand / Logo ------------------------------------------- */

.wt-nav-brand{
    font-family:var(--font-head,system-ui);
    font-size:1.7rem;
    font-weight:var(--w-extrabold,800);
    letter-spacing:var(--ls-tight,-0.02em);
    color:var(--blue-900,#0F172A);
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    gap:0.25rem;
}

.wt-nav-brand span{
    color:var(--thermo-700,#ea580c);
}

.wt-nav-brand:hover{
    color:var(--blue-900,#0F172A);
}

/* optional: leicht kleiner im scrolled-State */
.wt-nav-sticky.is-scrolled .wt-nav-brand{
    font-size:1.6rem;
}

/* Toggle / Mobile ---------------------------------------- */

.wt-nav-toggler{
    border-radius:999px;
    border:1px solid var(--steel-300,#CBD5E1);
    padding:0.3rem 0.6rem;
    background-color:#fff;
}

.navbar-light .navbar-toggler-icon{
    background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(15,23,42,0.85)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Links / Mittlere Navigation ---------------------------- */

.wt-nav-main .navbar-nav{
    align-items:center;
}

.wt-nav-link{
    font-size:0.98rem;
    font-weight:var(--w-medium,500);
    color:var(--blue-700,#334155) !important;
    position:relative;
    padding:0.6rem 0.5rem;
    transition:
        color 160ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

/* Underline-Indikator als einziges „Signal“ */
.wt-nav-link::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:0.15rem;
    width:0;
    height:2px;
    border-radius:999px;
    background:var(--thermo-700,#ea580c);
    transform:translateX(-50%);
    transition:width 160ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.wt-nav-link:hover{
    color:var(--blue-900,#0F172A) !important;
}

.wt-nav-link:hover::after,
.wt-nav-link.is-active::after{
    width:22px;
}

/* Chevron für Dropdowns ---------------------------------- */

.wt-nav-chevron{
    margin-left:6px;
    width:9px;
    height:9px;
    border-right:2px solid var(--blue-700,#334155);
    border-bottom:2px solid var(--blue-700,#334155);
    transform:rotate(45deg);
    transition:
        transform 180ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        border-color 160ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.show > .dropdown-toggle-custom .wt-nav-chevron{
    transform:rotate(-135deg);
    border-color:var(--blue-900,#0F172A);
}

/* Dropdown-Menü ------------------------------------------ */

.wt-nav-dropdown.custom-menu{
    border-radius:var(--radius-md,0.75rem);
    border:1px solid var(--steel-200,#E5E7EB);
    background:#FFFFFF;
    padding:0.35rem 0;
    box-shadow:var(--shadow-md,0 20px 40px rgba(15,23,42,0.12));
    min-width:240px;
    margin-top:0.45rem;
}

.wt-nav-dropdown .dropdown-item{
    padding:0.55rem 1.1rem;
    font-size:0.95rem;
    color:var(--blue-800,#1E293B);
    background:transparent;
    transition:
        background-color 150ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        color 150ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.wt-nav-dropdown .dropdown-item:hover{
    background:var(--steel-050,#F9FAFB);
    color:var(--blue-900,#0F172A);
}

/* CTA rechts --------------------------------------------- */

.wt-nav-cta{
    background:var(--thermo-700,#ea580c);
    color:#fff;
    border-radius:var(--radius-md,0.75rem);
    font-weight:var(--w-semibold,600);
    font-size:0.95rem;
    padding:0.55rem 1.4rem;
    box-shadow:var(--shadow-sm,0 8px 20px rgba(234,88,12,0.25));
    border:none;
    white-space:nowrap;
    transition:
        background-color 160ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        box-shadow 160ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        transform 140ms var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.wt-nav-cta:hover{
    background:var(--thermo-600,#f97316);
    color:#fff;
    transform:translateY(-1px);
    box-shadow:var(--shadow-md,0 12px 26px rgba(234,88,12,0.35));
}

/* --------------------------------------------------------
   NAV: Fokus-/Kachel-Effekte komplett entfernen
   (kein blauer Balken, kein zusätzlicher Rahmen)
--------------------------------------------------------- */

.wt-nav-main a:focus,
.wt-nav-main a:focus-visible,
.wt-nav-main button:focus,
.wt-nav-main button:focus-visible{
    outline:none !important;
    box-shadow:none !important;
    background:transparent;
}

/* speziell: Links im Hauptmenü */
.wt-nav-link:focus,
.wt-nav-link:focus-visible{
    outline:none !important;
    box-shadow:none !important;
}

/* speziell: Dropdown-Items – kein Fokus-Balken */
.wt-nav-dropdown .dropdown-item:focus,
.wt-nav-dropdown .dropdown-item:focus-visible{
    outline:none !important;
    box-shadow:none !important;
    background:transparent;
    color:var(--blue-800,#1E293B);
}

/* Brand & CTA ohne Fokus-Ring */
.wt-nav-brand:focus,
.wt-nav-brand:focus-visible,
.wt-nav-cta:focus,
.wt-nav-cta:focus-visible{
    outline:none !important;
    box-shadow:none !important;
}

/* Toggler: kein blauer Fokus-Schatten */
.wt-nav-toggler:focus,
.wt-nav-toggler:focus-visible{
    outline:none !important;
    box-shadow:none !important;
}

/* Responsive Anpassungen --------------------------------- */

@media (max-width: 991.98px){
    .wt-nav-main .navbar-nav{
        align-items:flex-start;
    }
    .wt-nav-link{
        padding:0.55rem 0;
    }
    .wt-nav-dropdown.custom-menu{
        box-shadow:none;
        border-radius:0;
        border-left:none;
        border-right:none;
        border-bottom:1px solid var(--steel-200,#E5E7EB);
    }
    .wt-nav-cta{
        margin-top:0.75rem;
        width:100%;
        justify-content:center;
    }
}

/* --------------------------------------------------------
HERO INDEX SEITE 
--------------------------------------------------------- */


    .wt-hero{
        position:relative;
        min-height:90vh;
        padding:140px 0 120px;
        overflow:hidden;
        z-index:1;
    }

    .wt-hero-video-layer{
        position:absolute;
        inset:0;
        z-index:1;
        overflow:hidden;
        background:#000;
    }
    .wt-hero-video-layer iframe{
        width:100%;
        height:100%;
        display:block;
        border:0;
        object-fit:cover;
        pointer-events:none;
    }

    .wt-hero-overlay{
        position:absolute;
        inset:0;
        z-index:2;
        background:var(--overlay-gradient-hero);
    }

    .wt-hero-inner{
        position:relative;
        z-index:3;
    }

    .wt-hero-title{
        font-size:var(--fs-hero);
        font-weight:var(--w-extrabold);
        color:#fff;
        line-height:var(--lh-tight);
        letter-spacing:var(--ls-tight);
    }
    .wt-hero-title span{
        color:var(--thermo-700);
    }
    .wt-hero-sub{
        margin-top:var(--space-20);
        font-size:var(--fs-body-lg);
        color:rgba(255,255,255,.9);
        max-width:32rem;
        line-height:var(--lh-relaxed);
    }

    .wt-hero-cta-primary{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        padding:13px 32px;
        border-radius:var(--radius-md);
        background:var(--thermo-700);
        color:#fff;
        text-decoration:none;
        font-weight:var(--w-semibold);
        box-shadow:var(--shadow-sm);
    }
    .wt-hero-cta-primary:hover{
        background:var(--thermo-600);
    }

    .wt-hero-cta-ghost{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        padding:13px 26px;
        border-radius:var(--radius-md);
        border:1px solid rgba(255,255,255,.35);
        color:#fff;
        text-decoration:none;
        font-weight:var(--w-medium);
    }

    .wt-hero-form{
        background:#fff;
        border-radius:var(--radius-md);
        padding:24px 24px 26px;
    }
    .wt-hero-form .form-title{
        font-size:1.35rem;
        font-weight:var(--w-semibold);
        margin-bottom:4px;
        color:var(--blue-900);
    }
    .wt-hero-form .form-sub{
        font-size:.98rem;
        color:var(--blue-700);
        margin-bottom:16px;
    }
    .wt-hero-form .form-control,
    .wt-hero-form .form-select{
        padding:11px 12px;
        border-radius:var(--radius-md);
        border:1px solid var(--steel-300);
        font-size:.98rem;
    }
    .wt-hero-form .form-control:focus,
    .wt-hero-form .form-select:focus{
        border-color:var(--thermo-700);
        box-shadow:0 0 0 3px rgba(255,124,62,.25);
    }
    .wt-form-btn{
        width:100%;
        border:none;
        border-radius:var(--radius-md);
        background:var(--thermo-700);
        color:#fff;
        padding:12px 18px;
        font-weight:var(--w-semibold);
        font-size:1rem;
    }

    @media(max-width:991px){
        .wt-hero{
            padding:120px 0 80px;
        }
        .wt-hero-form{
            margin-top:24px;
        }
    }


/* --------------------------------------------------------
SCHNELLAUSWAHL – FLOATING UNTER HERO
--------------------------------------------------------- */


    .wt-quick-select{
        position:relative;
        z-index:var(--z-floating-ui,40);
        margin-top:-36px;
        margin-bottom:80px;
    }

    .wt-quick-inner{
        background:var(--white);
        border-radius:var(--radius-md);
        padding:24px 24px 26px;
        box-shadow:var(--shadow-sm);
        border:1px solid var(--steel-200);
        position:relative;
    }

    .wt-quick-header{
        gap:16px;
        margin-bottom:24px;
    }

    .wt-quick-kicker{
        font-size:0.8rem;
        text-transform:uppercase;
        letter-spacing:0.08em;
        color:var(--thermo-700);
        font-weight:var(--w-semibold);
        margin-bottom:4px;
    }

    .wt-quick-title{
        font-size:1.6rem;
        color:var(--blue-900);
        font-weight:var(--w-semibold);
        margin-bottom:4px;
    }

    .wt-quick-sub{
        font-size:0.9rem;
        color:var(--blue-700);
        margin:0;
        max-width:28rem;
        line-height:1.45;
    }

    .wt-quick-pill{
        display:inline-flex;
        align-items:center;
        gap:8px;
        padding:7px 14px;
        border-radius:999px;
        border:1px solid var(--steel-300);
        background:var(--white-soft);
        color:var(--blue-700);
        font-size:0.86rem;
        white-space:nowrap;
        text-align:center;
    }

    .wt-quick-pill-dot{
        width:8px;
        height:8px;
        border-radius:50%;
        background:var(--thermo-700);
        box-shadow:0 0 0 4px rgba(255,124,62,0.15);
    }

    .wt-quick-row .col-md-4{
        display:flex;
    }

    .wt-quick-card{
        position:relative;
        display:block;
        width:100%;
        text-decoration:none;
        color:var(--blue-900);
        border-radius:var(--radius-md);
        background:var(--white);
        border:1px solid var(--steel-200);
        box-shadow:0 0 0 rgba(0,0,0,0);
        transform:translateY(0);
        --quick-accent:var(--thermo-700);
        transition:
            transform 180ms ease-out,
            box-shadow 180ms ease-out,
            border-color 180ms ease-out,
            background-color 180ms ease-out;
    }

    .wt-quick-card--primary  { --quick-accent:var(--thermo-700); }
    .wt-quick-card--secondary{ --quick-accent:var(--blue-600);  }
    .wt-quick-card--tertiary { --quick-accent:var(--steel-500); }

    .wt-quick-card-inner{
        display:flex;
        gap:16px;
        align-items:flex-start;
        padding:18px 18px 20px;
    }

    .wt-quick-card:hover{
        transform:translateY(-4px);
        box-shadow:var(--shadow-md,0 8px 24px rgba(0,0,0,0.12));
        border-color:var(--quick-accent);
        background:#F6F8FB;
    }

    .wt-quick-icon{
        flex-shrink:0;
    }

    .wt-quick-icon-circle{
        width:56px;
        height:56px;
        border-radius:18px;
        background:#F1F4F8;
        display:flex;
        align-items:center;
        justify-content:center;
        box-shadow:0 4px 12px rgba(0,0,0,0.08);
        border:1px solid var(--steel-200);
        transform:translateY(0);
        transition:
            transform 180ms ease-out,
            box-shadow 180ms ease-out,
            border-color 180ms ease-out,
            background-color 180ms ease-out;
    }

    .wt-quick-icon-circle svg{
        width:26px;
        height:26px;
        stroke:var(--blue-800);
        stroke-width:1.7;
        fill:none;
        stroke-linecap:round;
        stroke-linejoin:round;
    }

    .wt-quick-card:hover .wt-quick-icon-circle{
        transform:translateY(-2px);
        box-shadow:0 8px 22px rgba(0,0,0,0.16);
        border-color:var(--quick-accent);
        background:#E5EBF6;
    }

    .wt-quick-content{
        flex:1;
    }

    .wt-quick-label{
        font-size:0.8rem;
        text-transform:uppercase;
        letter-spacing:0.08em;
        color:var(--quick-accent);
        font-weight:var(--w-semibold);
        margin-bottom:6px;
    }

    .wt-quick-card h3{
        font-size:1.05rem;
        font-weight:var(--w-semibold);
        margin-bottom:4px;
        color:var(--blue-900);
    }

    .wt-quick-card p{
        font-size:0.88rem;
        margin:0;
        color:var(--blue-700);
        line-height:1.45;
    }

    .wt-quick-link{
        display:inline-flex;
        align-items:center;
        gap:6px;
        margin-top:8px;
        font-size:0.85rem;
        color:var(--blue-800);
        font-weight:var(--w-medium);
    }

    .wt-quick-card:hover .wt-quick-link{
        color:var(--blue-900);
    }

    .wt-quick-chevron{
        width:18px;
        height:18px;
        border-radius:50%;
        border:1px solid var(--steel-300);
        display:flex;
        align-items:center;
        justify-content:center;
        transform:translateX(0);
        transition:
            transform 180ms ease-out,
            border-color 180ms ease-out,
            background-color 180ms ease-out;
    }

    .wt-quick-chevron svg{
        width:10px;
        height:10px;
        stroke:var(--blue-800);
        stroke-width:1.8;
        fill:none;
        stroke-linecap:round;
        stroke-linejoin:round;
    }

    .wt-quick-card:hover .wt-quick-chevron{
        transform:translateX(3px);
        border-color:var(--quick-accent);
        background:#FFFFFF;
    }

    @media (max-width: 991px){
        .wt-quick-inner{
            padding:22px 18px 24px;
        }
        .wt-quick-header{
            align-items:flex-start;
        }
        .wt-quick-pill{
            margin-top:8px;
            white-space:normal;
        }
    }

    @media (max-width: 767px){
        .wt-quick-select{
            margin-top:-24px;
            margin-bottom:64px;
        }
        .wt-quick-card-inner{
            padding:16px 14px 18px;
        }
        .wt-quick-icon-circle{
            width:52px;
            height:52px;
        }
    }




/* --------------------------------------------------------
ÜBER-UNS (DIENSTLEISTUNG) – BILD LINKS, TEXT RECHTS  
--------------------------------------------------------- */

    .wt-about-service{
        position:relative;
        background:var(--white-soft);              /* wie Body/Schnellauswahl */
        padding:var(--space-64) 0 var(--space-80);
        border-top:none;
    }

    /* Auf Desktop leicht nach oben ziehen (weniger Lücke nach Quick-Select) */
    @media (min-width: 992px){
        .wt-about-service{
            margin-top:-24px;
        }
    }

    /* Container breiter machen, damit Bild/Text mehr Raum haben – aber weiterhin Bootstrap */
    .wt-about-service > .container{
        max-width:1320px;
    }

    .wt-about-service-inner{
        margin:0 auto;
    }

    /* =========================================================
       BILD – mehr Präsenz, aus der Mitte raus Richtung Rand
    ========================================================= */
    .wt-about-service-media{
        position:relative;
        max-width:560px;
        margin:0 auto;
    }

    /* Auf Desktop Bild etwas zum linken Rand schieben -> mehr Luft zum Text */
    @media (min-width: 992px){
        .wt-about-service-media{
            margin-left:-24px;      /* leicht über den Col-Rand hinaus */
            margin-right:auto;
        }
    }

    .wt-about-service-media::before{
        content:"";
        position:absolute;
        inset:8% -8% 14% 14%;
        background:linear-gradient(
            135deg,
            rgba(15,26,38,0.08),
            rgba(255,124,62,0.10)
        );
        border-radius:var(--radius-xl);
        z-index:0;
    }

    .wt-about-service-photo{
        position:relative;
        z-index:1;
        width:100%;
        aspect-ratio:4 / 5;
        object-fit:cover;
        border-radius:var(--radius-xl);
        box-shadow:var(--shadow-lg);
        border:1px solid rgba(255,255,255,0.6);
    }

    .wt-about-service-tag{
        position:absolute;
        left:10%;
        bottom:10%;
        z-index:2;
        padding:var(--space-6) var(--space-12);
        border-radius:var(--radius-pill);
        background:rgba(15,26,38,0.9);
        color:#fff;
        font-size:var(--fs-micro);
        letter-spacing:var(--ls-wide);
        text-transform:uppercase;
        display:inline-flex;
        align-items:center;
        gap:var(--space-6);
        box-shadow:var(--shadow-sm);
    }

    .wt-about-service-tag::before{
        content:"";
        width:8px;
        height:8px;
        border-radius:50%;
        background:var(--thermo-700);
        box-shadow:0 0 0 3px rgba(255,124,62,0.35);
    }

    /* =========================================================
       TEXTBLOCK – an Grid rechts angelehnt, mit max-width zum Atmen
    ========================================================= */
    .wt-about-service-content{
        max-width:560px;
        margin-left:auto;
    }

    .wt-about-service-kicker{
        display:inline-block;
        font-size:var(--fs-label);
        text-transform:uppercase;
        letter-spacing:var(--ls-wide);
        color:var(--blue-500);
        font-weight:var(--w-semibold);
        margin-bottom:var(--space-8);
    }

    .wt-about-service-title{
        font-size:var(--fs-h2);
        line-height:var(--lh-tight);
        font-weight:var(--w-extrabold);
        color:var(--blue-900);
        margin:0 0 var(--space-12);
    }

    .wt-about-service-lead{
        font-size:var(--fs-body-lg);
        color:var(--blue-700);
        margin:0 0 var(--space-10);
    }

    .wt-about-service-text{
        font-size:var(--fs-body);
        color:var(--blue-700);
        margin:0 0 var(--space-12);
        line-height:var(--lh-relaxed);
    }

    .wt-about-service-points{
        list-style:none;
        padding:0;
        margin:0 0 var(--space-16);
    }

    .wt-about-service-points li{
        position:relative;
        padding-left:var(--space-20);
        margin-bottom:var(--space-6);
        font-size:var(--fs-body-sm);
        color:var(--blue-700);
        line-height:var(--lh-relaxed);
    }

    .wt-about-service-points li::before{
        content:"";
        position:absolute;
        left:0;
        top:0.6em;
        width:8px;
        height:8px;
        border-radius:50%;
        background:var(--thermo-700);
        box-shadow:0 0 0 3px rgba(255,124,62,0.18);
    }

    /* =========================================================
       CTAs – wie bisher, nur sauber angeordnet
    ========================================================= */
    .wt-about-service-cta-wrap{
        display:flex;
        flex-wrap:wrap;
        gap:var(--space-8);
        margin-top:var(--space-4);
    }

    .wt-about-service-cta{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        padding:var(--space-10) var(--space-24);
        border-radius:var(--radius-md);
        background:var(--thermo-700);
        color:#fff;
        font-size:var(--fs-body);
        font-weight:var(--w-semibold);
        text-decoration:none;
        box-shadow:var(--shadow-sm);
        border:none;
        white-space:nowrap;
    }

    .wt-about-service-cta:hover{
        background:var(--thermo-600);
    }

    .wt-about-service-ghost{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        padding:var(--space-10) var(--space-20);
        border-radius:var(--radius-md);
        border:1px solid var(--steel-300);
        background:transparent;
        color:var(--blue-800);
        font-size:var(--fs-body-sm);
        font-weight:var(--w-medium);
        cursor:pointer;
        white-space:nowrap;
    }

    /* =========================================================
       RESPONSIVE
    ========================================================= */
    @media (max-width: 991.98px){
        .wt-about-service{
            padding:var(--space-64) 0 var(--space-72);
            margin-top:0;
        }
        .wt-about-service-media{
            margin-left:auto;
        }
        .wt-about-service-content{
            max-width:100%;
            margin-top:var(--space-16);
            margin-left:0;
        }
    }

    @media (max-width: 575.98px){
        .wt-about-service{
            padding:var(--space-56) 0 var(--space-64);
        }
        .wt-about-service-title{
            font-size:1.9rem;
        }
        .wt-about-service-media::before{
            inset:10% -4% 16% 12%;
        }
        .wt-about-service-tag{
            left:12%;
            bottom:8%;
            font-size:var(--fs-label);
        }
    }



    /* =========================================================
    WT-Leistungs-Finder
     ========================================================= */

/* Grundlayout – in den Flow von Über-uns & Standorte eingebettet ---- */

.wt-service-finder--variant2{
    padding:var(--space-72,4.25rem) 0 var(--space-80,5rem);
    background:var(--white-soft,#f7f9fc);
    border-top:1px solid var(--steel-100,#dde3ea);
}

/* gleiche Max-Breite wie Über-uns & Standorte (1320px) */
.wt-service-finder--variant2 > .container{
    max-width:1320px;
}

/* Header ------------------------------------------------------ */

.wt-finder-header{
    max-width:720px;
    margin:0 0 var(--space-24,1.5rem);
}

.wt-finder-kicker{
    display:inline-block;
    font-size:var(--fs-label,0.8rem);
    text-transform:uppercase;
    letter-spacing:var(--ls-wide,0.08em);
    color:var(--blue-500,#2563eb);
    font-weight:var(--w-semibold,600);
    margin-bottom:var(--space-6,0.35rem);
}

.wt-finder-title{
    font-size:var(--fs-h2,2.1rem);
    line-height:var(--lh-tight,1.15);
    font-weight:var(--w-extrabold,800);
    margin:0 0 var(--space-10,0.6rem);
    color:var(--blue-900,#0f172a);
}

.wt-finder-lead{
    margin:0;
    font-size:var(--fs-body,1rem);
    color:var(--blue-700,#334155);
}

/* Progress / Stepper ------------------------------------------ */

.wt-finder-progress{
    display:flex;
    gap:var(--space-12,0.75rem);
    list-style:none;
    padding:0;
    margin:0 0 var(--space-24,1.5rem);
}

.wt-finder-progress-item{
    flex:1;
    display:flex;
    align-items:center;
    gap:var(--space-8,0.5rem);
    padding:var(--space-8,0.5rem) var(--space-10,0.6rem);
    border-radius:999px;
    border:1px solid var(--steel-200,#cbd5e1);
    background:var(--white,#fff);
    font-size:var(--fs-body-sm,0.9rem);
    color:var(--blue-700,#334155);
}

.wt-finder-progress-step{
    width:24px;
    height:24px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:0.8rem;
    font-weight:var(--w-semibold,600);
    background:var(--steel-100,#e2e8f0);
    color:var(--blue-800,#1e293b);
}

.wt-finder-progress-label{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* Aktiver Schritt */
.wt-finder-progress-item.is-active{
    border-color:var(--thermo-600,#f97316);
    box-shadow:0 0 0 1px rgba(249,115,22,0.15);
    background:#FFF7F2;
    color:var(--blue-900,#0f172a);
}

.wt-finder-progress-item.is-active .wt-finder-progress-step{
    background:var(--thermo-600,#f97316);
    color:#fff;
}

/* Schritte / Formular ----------------------------------------- */

.wt-finder-form{
    margin:0;
}

.wt-finder-steps{
    border-radius:var(--radius-lg,1rem);
    border:1px solid var(--steel-200,#cbd5e1);
    background:var(--white,#fff);
    box-shadow:var(--shadow-sm,0 8px 20px rgba(15,23,42,0.04));
    padding:var(--space-20,1.25rem);
}

.wt-finder-step{
    display:none;
}

.wt-finder-step.is-active{
    display:block;
}

.wt-finder-step-header{
    margin-bottom:var(--space-16,1rem);
}

.wt-finder-step-title{
    margin:0 0 var(--space-6,0.35rem);
    font-size:var(--fs-h3,1.35rem);
    font-weight:var(--w-extrabold,800);
    color:var(--blue-900,#0f172a);
}

.wt-finder-step-text{
    margin:0;
    font-size:var(--fs-body,1rem);
    color:var(--blue-700,#334155);
}

/* Fieldset / Legend ------------------------------------------- */

.wt-finder-fieldset{
    margin:0 0 var(--space-20,1.25rem);
    padding:0;
    border:0;
}

.wt-finder-legend{
    margin-bottom:var(--space-10,0.6rem);
    font-size:0.92rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-800,#1e293b);
}

/* Screenreader-only */
.sr-only{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    border:0;
}

/* Karten / Optionen ------------------------------------------- */

.wt-finder-options--grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--space-12,0.75rem);
}

.wt-finder-card{
    position:relative;
    display:flex;
    cursor:pointer;
}

.wt-finder-card input{
    position:absolute;
    inset:0;
    opacity:0;
    pointer-events:none;
}

.wt-finder-card-body{
    flex:1;
    border-radius:var(--radius-md,0.75rem);
    border:1px solid var(--steel-200,#cbd5e1);
    background:var(--white,#fff);
    padding:var(--space-12,0.75rem) var(--space-12,0.75rem);
    display:flex;
    flex-direction:column;
    gap:var(--space-4,0.25rem);
    transition:
        border-color var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        box-shadow var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        background-color var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        transform var(--duration-fast,120ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.wt-finder-card-title{
    font-size:0.98rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0f172a);
}

.wt-finder-card-text{
    font-size:0.88rem;
    color:var(--blue-700,#334155);
}

/* Badge "Empfohlen für Ihre Situation" auf Step-2-Karten */
.wt-finder-card-badge{
    position:absolute;
    top:10px;
    left:12px;
    padding:2px 8px;
    border-radius:999px;
    font-size:0.72rem;
    text-transform:uppercase;
    letter-spacing:0.06em;
    background:var(--steel-050,#f8fafc);
    border:1px solid var(--steel-200,#cbd5e1);
    color:var(--steel-700,#475569);
    display:none;
}

/* Hover / Fokus / Checked ------------------------------------ */
.wt-finder-card:hover .wt-finder-card-body{
    border-color:var(--thermo-300,#fed7aa);
    box-shadow:var(--shadow-xs,0 4px 12px rgba(15,23,42,0.06));
    transform:translateY(-1px);
}

.wt-finder-card input:focus-visible + .wt-finder-card-body{
    outline:3px solid rgba(249,115,22,0.55);
    outline-offset:2px;
}

.wt-finder-card input:checked + .wt-finder-card-body{
    border-color:var(--thermo-600,#f97316);
    background:#FFF7F2;
    box-shadow:0 0 0 1px rgba(249,115,22,0.2);
}

/* Checkbox-Karten: Haken-Effekt */
.wt-finder-card--checkbox .wt-finder-card-body::after{
    content:"";
    position:absolute;
    right:10px;
    top:10px;
    width:16px;
    height:16px;
    border-radius:999px;
    border:2px solid var(--steel-300,#cbd5e1);
    background:var(--white,#fff);
}

.wt-finder-card--checkbox input:checked + .wt-finder-card-body::after{
    background:var(--thermo-600,#f97316);
    border-color:var(--thermo-600,#f97316);
    box-shadow:0 0 0 2px rgba(249,115,22,0.2);
}

/* Empfohlene Services in Step 2 hervorheben */
.wt-finder-card--checkbox.is-recommended .wt-finder-card-body{
    border-color:var(--thermo-500,#fb923c);
    background:linear-gradient(135deg,#fffaf3,#fff);
    box-shadow:0 0 0 1px rgba(251,146,60,0.3);
}

.wt-finder-card--checkbox.is-recommended .wt-finder-card-badge{
    display:inline-flex;
}

/* Prioritäts-Chips ------------------------------------------- */

.wt-finder-fieldset--priority{
    border-top:1px dashed var(--steel-200,#cbd5e1);
    padding-top:var(--space-16,1rem);
    margin-top:var(--space-8,0.5rem);
}

.wt-finder-priority-group{
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-8,0.5rem);
}

.wt-finder-chip{
    position:relative;
    display:inline-flex;
    cursor:pointer;
}

.wt-finder-chip input{
    position:absolute;
    inset:0;
    opacity:0;
    pointer-events:none;
}

.wt-finder-chip-label{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 12px;
    border-radius:999px;
    border:1px solid var(--steel-200,#cbd5e1);
    font-size:0.85rem;
    color:var(--blue-700,#334155);
    background:var(--steel-050,#f9fafb);
    transition:
        border-color var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        background-color var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        color var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.wt-finder-chip:hover .wt-finder-chip-label{
    border-color:var(--thermo-300,#fed7aa);
}

.wt-finder-chip input:checked + .wt-finder-chip-label{
    background:#FFF7F2;
    border-color:var(--thermo-600,#f97316);
    color:var(--blue-900,#0f172a);
}

/* Helper-Text ------------------------------------------------- */

.wt-finder-helper{
    margin-top:var(--space-8,0.5rem);
    font-size:0.8rem;
    color:var(--steel-600,#64748b);
}

/* Mini-Zusammenfassung ---------------------------------------- */

.wt-finder-summary-mini{
    margin-top:var(--space-16,1rem);
    border-radius:var(--radius-md,0.75rem);
    background:var(--steel-050,#f8fafc);
    border:1px dashed var(--steel-200,#cbd5e1);
    padding:var(--space-12,0.75rem) var(--space-12,0.75rem);
}

.wt-finder-summary-mini-title{
    margin:0 0 var(--space-8,0.5rem);
    font-size:0.9rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-800,#1e293b);
}

.wt-finder-summary-mini-list{
    margin:0;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:var(--space-8,0.5rem);
    font-size:0.82rem;
}

.wt-finder-summary-mini-list dt{
    font-weight:var(--w-semibold,600);
    color:var(--steel-700,#475569);
}

.wt-finder-summary-mini-list dd{
    margin:2px 0 0 0;
    color:var(--blue-800,#1e293b);
}

/* Fehlerhinweise ---------------------------------------------- */

.wt-finder-error{
    min-height:1.2em;
    margin:var(--space-8,0.5rem) 0 0;
    font-size:0.8rem;
    color:var(--thermo-700,#c2410c);
}

/* Navigation / Buttons ---------------------------------------- */

.wt-finder-nav{
    display:flex;
    justify-content:flex-end;
    gap:var(--space-8,0.5rem);
    margin-top:var(--space-16,1rem);
}

.wt-finder-nav--bottom{
    justify-content:flex-start;
    margin-top:var(--space-12,0.75rem);
}

.wt-finder-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:var(--radius-md,0.75rem);
    padding:var(--space-8,0.5rem) var(--space-16,1rem);
    font-size:0.9rem;
    font-weight:var(--w-semibold,600);
    cursor:pointer;
    border:1px solid transparent;
    background:transparent;
    transition:
        background-color var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        border-color var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        box-shadow var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        transform var(--duration-fast,120ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.wt-finder-btn--primary{
    background:var(--thermo-700,#ea580c);
    color:#fff;
    border-color:var(--thermo-700,#ea580c);
    box-shadow:var(--shadow-sm,0 8px 20px rgba(234,88,12,0.25));
}

.wt-finder-btn--primary:hover{
    background:var(--thermo-600,#f97316);
    border-color:var(--thermo-600,#f97316);
    transform:translateY(-1px);
}

.wt-finder-btn--ghost{
    background:var(--white,#fff);
    color:var(--blue-800,#1e293b);
    border-color:var(--steel-200,#cbd5e1);
}

.wt-finder-btn--ghost:hover{
    background:var(--steel-050,#f8fafc);
}

/* Ergebnis / Empfehlung --------------------------------------- */

.wt-finder-result{
    border-radius:var(--radius-md,0.75rem);
    border:1px solid var(--steel-200,#cbd5e1);
    background:var(--steel-050,#f8fafc);
    padding:var(--space-16,1rem) var(--space-16,1rem);
    margin-bottom:var(--space-16,1rem);
}

.wt-finder-result-title{
    margin:0 0 var(--space-8,0.5rem);
    font-size:1rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0f172a);
}

.wt-finder-result-intro{
    margin:0 0 var(--space-12,0.75rem);
    font-size:0.95rem;
    color:var(--blue-700,#334155);
}

.wt-finder-result-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--space-16,1rem);
}

.wt-finder-result-section{
    font-size:0.9rem;
    color:var(--blue-800,#1e293b);
}

.wt-finder-result-subtitle{
    margin:0 0 var(--space-6,0.35rem);
    font-size:0.9rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-800,#1e293b);
}

.wt-finder-result-services{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:var(--space-8,0.5rem);
}

.wt-finder-result-services li{
    padding-left:var(--space-18,1.1rem);
    position:relative;
    line-height:1.4;
}

.wt-finder-result-services li::before{
    content:"";
    position:absolute;
    left:0;
    top:0.55em;
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--thermo-700,#ea580c);
}

.wt-finder-result-services strong{
    display:block;
    font-weight:var(--w-semibold,600);
}

/* Badge im Ergebnis für empfohlene Services */
.wt-finder-result-badge{
    display:inline-block;
    margin-top:2px;
    padding:1px 6px;
    border-radius:999px;
    font-size:0.72rem;
    text-transform:uppercase;
    letter-spacing:0.05em;
    background:#FFF7F2;
    color:var(--thermo-700,#ea580c);
}

.wt-finder-result-priority{
    margin:0 0 var(--space-8,0.5rem);
}

.wt-finder-result-note{
    margin:0;
    font-size:0.85rem;
    color:var(--steel-700,#475569);
}

/* Footer / CTA ----------------------------------------------- */

.wt-finder-footer{
    margin-top:var(--space-8,0.5rem);
    display:flex;
    flex-direction:column;
    gap:var(--space-8,0.5rem);
}

.wt-finder-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:var(--space-10,0.6rem) var(--space-22,1.4rem);
    border-radius:var(--radius-md,0.75rem);
    background:var(--thermo-700,#ea580c);
    color:#fff;
    font-size:0.92rem;
    font-weight:var(--w-semibold,600);
    text-decoration:none;
    box-shadow:var(--shadow-md,0 12px 25px rgba(234,88,12,0.28));
    white-space:nowrap;
}

.wt-finder-cta:hover{
    background:var(--thermo-600,#f97316);
}

.wt-finder-footer-note{
    margin:0;
    font-size:0.82rem;
    color:var(--steel-600,#64748b);
}

/* Responsive -------------------------------------------------- */

@media (max-width: 991.98px){
    .wt-service-finder--variant2{
        padding:var(--space-64,3.5rem) 0 var(--space-72,4rem);
    }
}

@media (max-width: 767.98px){
    .wt-service-finder--variant2 > .container{
        max-width:100%;
    }
    .wt-finder-header{
        max-width:100%;
    }
    .wt-finder-progress{
        flex-direction:column;
    }
    .wt-finder-summary-mini-list{
        grid-template-columns:1fr;
    }
    .wt-finder-result-grid,
    .wt-finder-options--grid{
        grid-template-columns:1fr;
    }
    .wt-finder-title{
        font-size:1.7rem;
    }
}

@media (max-width: 575.98px){
    .wt-finder-steps{
        padding:var(--space-16,1rem);
    }
    .wt-finder-nav{
        flex-direction:column-reverse;
        align-items:stretch;
    }
    .wt-finder-btn,
    .wt-finder-cta{
        width:100%;
    }
}




    /* =========================================================
    STANDORTE NRW – OVERLAY LIGHT ( Bewertungen)
     ========================================================= */

.wt-location-b--overlay{
    padding:var(--space-72,72px) 0 var(--space-88,88px);
    background:
        radial-gradient(circle at 0% 0%,
            rgba(255,124,62,0.06) 0%,
            rgba(255,124,62,0) 40%),
        radial-gradient(circle at 100% 100%,
            rgba(37,99,235,0.05) 0%,
            rgba(37,99,235,0) 46%),
        linear-gradient(
            135deg,
            var(--white-soft,#F7F9FC) 0%,
            #FFFFFF 55%,
            var(--steel-050,#F9FAFB) 100%
        );
}

.wt-location-b--overlay > .container{
    max-width:1320px;
}

/* Zentrierter Header oben */
.wt-location-b-header{
    max-width:760px;
    margin:0 auto var(--space-24,1.5rem);
    text-align:center;
}

.wt-location-b-header .wt-location-b-kicker{
    display:inline-block;
    font-size:var(--fs-label,0.78rem);
    text-transform:uppercase;
    letter-spacing:var(--ls-wide,0.08em);
    color:var(--thermo-700,#FF7C3E);
    font-weight:var(--w-semibold,600);
    margin-bottom:var(--space-8,8px);
}

.wt-location-b-header .wt-location-b-title{
    font-size:var(--fs-h2,2.1rem);
    font-weight:var(--w-extrabold,800);
    color:var(--blue-900,#0F1A26);
    line-height:var(--lh-tight,1.1);
    margin:0 0 var(--space-10,10px);
}

.wt-location-b-header .wt-location-b-lead{
    max-width:640px;
    margin:0 auto;
    font-size:var(--fs-body-lg,1.05rem);
    color:var(--blue-700,#1B2635);
}

/* Textbereich links */
.wt-location-b-content{
    max-width:520px;
}

.wt-location-b-subtitle{
    font-size:1rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
    margin:0 0 var(--space-6,6px);
}

.wt-location-b-text{
    font-size:var(--fs-body,1rem);
    color:var(--blue-700,#1B2635);
    margin:0 0 var(--space-14,14px);
}

/* Städte-Pills */
.wt-location-b-cities{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--space-6,6px);
    margin-bottom:var(--space-16,16px);
}

.wt-location-b-city-pill{
    border-radius:var(--radius-pill,999px);
    border:1px solid var(--steel-300,#DEE3E6);
    padding:6px 14px;
    background:var(--white,#FFFFFF);
    font-size:0.88rem;
    color:var(--blue-800,#15212F);
    cursor:pointer;
    font-weight:var(--w-medium,500);
    display:inline-flex;
    align-items:center;
    gap:6px;
    transition:
        background var(--duration-fast,150ms) var(--ease-soft,cubic-bezier(.25,.46,.45,.94)),
        border-color var(--duration-fast,150ms) var(--ease-soft,cubic-bezier(.25,.46,.45,.94)),
        color var(--duration-fast,150ms) var(--ease-soft,cubic-bezier(.25,.46,.45,.94)),
        box-shadow var(--duration-fast,150ms) var(--ease-soft,cubic-bezier(.25,.46,.45,.94));
}

.wt-location-b-city-pill.is-main{
    border-color:var(--thermo-700,#FF7C3E);
    background:var(--thermo-100,#FFE6D6);
    color:var(--blue-900,#0F1A26);
    box-shadow:0 0 0 1px rgba(255,124,62,0.18);
}

.wt-location-b-city-pill:hover{
    border-color:var(--thermo-700,#FF7C3E);
    background:var(--white,#FFFFFF);
}

.wt-location-b-city-pill:focus-visible{
    outline:3px solid rgba(255,124,62,0.45);
    outline-offset:2px;
}

.wt-location-b-city-note{
    font-size:0.86rem;
    color:var(--blue-500,#344255);
    margin-left:4px;
}

/* Info-Block + Meta-Liste */
.wt-location-b-info{
    padding:var(--space-10,10px) var(--space-12,12px);
    border-radius:var(--radius-sm,12px);
    background:var(--white,#FFFFFF);
    border:1px solid var(--steel-200,#EBEEF0);
    box-shadow:var(--shadow-xs,0 1px 4px rgba(0,0,0,.05));
    margin-bottom:var(--space-16,16px);
}

.wt-location-b-info h3{
    font-size:1.0rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
    margin:0 0 4px;
}

.wt-location-b-info p{
    margin:0;
    font-size:0.92rem;
    color:var(--blue-700,#1B2635);
}

.wt-location-b-meta{
    list-style:none;
    padding:0;
    margin:var(--space-6,6px) 0 0;
    font-size:0.88rem;
    color:var(--blue-700,#1B2635);
}

.wt-location-b-meta li{
    position:relative;
    padding-left:14px;
    margin-bottom:3px;
}

.wt-location-b-meta li::before{
    content:"";
    position:absolute;
    left:0;
    top:0.6em;
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--thermo-700,#FF7C3E);
}

/* BEWERTUNGEN / TESTIMONIAL ---------------------------------- */

.wt-location-b-rating{
    margin-top:var(--space-12,12px);
    margin-bottom:var(--space-16,16px);
    padding:var(--space-10,10px) var(--space-12,12px);
    border-radius:var(--radius-md,14px);
    background:rgba(15,26,38,0.02);
    border:1px solid var(--steel-150,#E4E9F0);
}

.wt-location-b-rating-head{
    display:flex;
    align-items:center;
    gap:var(--space-10,10px);
    margin-bottom:var(--space-8,8px);
}

.wt-location-b-stars{
    display:inline-flex;
    align-items:center;
    gap:3px;
    color:var(--thermo-600,#FF9158);
}

.wt-location-b-star{
    width:16px;
    height:16px;
    fill:currentColor;
}

.wt-location-b-star--half{
    fill:url(#wt-star-half-grad);
}

.wt-location-b-rating-score{
    margin:0;
    font-size:0.82rem;
    color:var(--blue-700,#1B2635);
    line-height:1.4;
}

.wt-location-b-rating-score strong{
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
}

/* Testimonial-Card */
.wt-location-b-testimonial{
    margin:0;
}

.wt-location-b-testimonial-text{
    margin:0 0 var(--space-8,8px);
    font-size:0.9rem;
    color:var(--blue-800,#15212F);
    line-height:1.5;
}

.wt-location-b-testimonial-text::before,
.wt-location-b-testimonial-text::after{
    content:"„";
    color:var(--steel-400,#9CA3AF);
    font-size:1.1rem;
}

.wt-location-b-testimonial-text::after{
    content:"“";
}

.wt-location-b-testimonial-meta{
    display:flex;
    align-items:center;
    gap:var(--space-8,8px);
}

.wt-location-b-testimonial-avatar{
    width:32px;
    height:32px;
    border-radius:50%;
    overflow:hidden;
    border:1px solid rgba(148,163,184,0.5);
    flex-shrink:0;
}

.wt-location-b-testimonial-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.wt-location-b-testimonial-person{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.wt-location-b-testimonial-name{
    font-size:0.86rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
}

.wt-location-b-testimonial-role{
    font-size:0.8rem;
    color:var(--steel-700,#475569);
}

/* Dots / Tabs */
.wt-location-b-testimonial-dots{
    margin-top:var(--space-8,8px);
    display:flex;
    gap:6px;
}

.wt-location-b-testimonial-dot{
    width:8px;
    height:8px;
    border-radius:999px;
    border:none;
    padding:0;
    background:var(--steel-300,#CBD5E1);
    cursor:pointer;
    transition:
        background-color var(--duration-fast,140ms) var(--ease-soft,cubic-bezier(.25,.46,.45,.94)),
        transform var(--duration-fast,140ms) var(--ease-soft,cubic-bezier(.25,.46,.45,.94)),
        width var(--duration-fast,140ms) var(--ease-soft,cubic-bezier(.25,.46,.45,.94));
}

.wt-location-b-testimonial-dot.is-active{
    width:16px;
    background:var(--thermo-700,#FF7C3E);
    transform:translateY(-1px);
}

/* CTA-Reihe */
.wt-location-b-cta-row{
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-8,8px);
    margin-top:var(--space-4,4px);
}

.wt-location-b-cta-primary,
.wt-location-b-cta-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:var(--radius-md,0.75rem);
    font-size:var(--fs-body-sm,0.95rem);
    font-weight:var(--w-semibold,600);
    text-decoration:none;
    white-space:nowrap;
    cursor:pointer;
    transition:
        background-color var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        border-color var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        box-shadow var(--duration-normal,150ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1)),
        transform var(--duration-fast,120ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

/* Primärbutton */
.wt-location-b-cta-primary{
    padding:var(--space-10,10px) var(--space-24,24px);
    background:var(--thermo-700,#FF7C3E);
    color:#fff;
    border:none;
    box-shadow:var(--shadow-sm,0 8px 20px rgba(255,124,62,0.25));
}

.wt-location-b-cta-primary:hover{
    background:var(--thermo-600,#FF9158);
    transform:translateY(-1px);
}

.wt-location-b-cta-primary:focus-visible{
    outline:3px solid rgba(255,124,62,0.45);
    outline-offset:2px;
}

/* Sekundärbutton */
.wt-location-b-cta-secondary{
    padding:var(--space-10,10px) var(--space-20,20px);
    background:transparent;
    color:var(--blue-800,#15212F);
    border:1px solid var(--steel-300,#DEE3E6);
}

.wt-location-b-cta-secondary:hover{
    background:var(--white,#FFFFFF);
    border-color:var(--blue-500,#344255);
}

.wt-location-b-cta-secondary:focus-visible{
    outline:3px solid rgba(148,163,184,0.6);
    outline-offset:2px;
}

/* MAPBEREICH RECHTS – größer auf Desktop */
.wt-location-b-map-wrap{
    height:100%;
    border-radius:var(--radius-md,16px);
    background:var(--white,#FFFFFF);
    border:1px solid var(--steel-200,#EBEEF0);
    box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06));
    display:flex;
    flex-direction:column;
    overflow:hidden;
}

.wt-location-b-map{
    width:100%;
    border:0;
    display:block;
    aspect-ratio:4 / 3;
    min-height:320px;
}

.wt-location-b-map-footer{
    padding:10px 14px;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:6px;
    border-top:1px solid var(--steel-200,#EBEEF0);
    background:var(--steel-100,#F5F6F7);
}

.wt-location-b-map-label{
    font-size:0.86rem;
    color:var(--blue-700,#1B2635);
}

.wt-location-b-map-city{
    font-size:0.86rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
}

.wt-location-b-map-link{
    font-size:0.86rem;
    font-weight:var(--w-medium,500);
    color:var(--thermo-700,#FF7C3E);
    text-decoration:none;
    margin-left:auto;
}

.wt-location-b-map-link:hover{
    text-decoration:underline;
}

/* Responsive Anpassungen */
@media (min-width: 992px){
    .wt-location-b-map{
        min-height:420px;
    }
}

@media (max-width: 991.98px){
    .wt-location-b-content{
        max-width:100%;
        margin-bottom:var(--space-16,16px);
    }
}

@media (max-width: 767.98px){
    .wt-location-b--overlay{
        padding:var(--space-56,56px) 0 var(--space-72,72px);
    }
    .wt-location-b-header{
        margin-bottom:var(--space-20,20px);
    }
}

@media (max-width: 575.98px){
    .wt-location-b-cta-row{
        flex-direction:column;
        align-items:stretch;
    }
    .wt-location-b-cta-primary,
    .wt-location-b-cta-secondary{
        width:100%;
        justify-content:center;
    }
}


    /* =========================================================
     KONTAKT / BERATUNGSANFRAGE
     ========================================================= */


/* =========================================================
   KONTAKT – ANGEPASST AN STANDORTE-OVERLAY
========================================================= */

.wt-contact--premium{
    padding:var(--space-72,72px) 0 var(--space-88,88px);
    background:
        radial-gradient(circle at 0% 0%,
            rgba(255,124,62,0.06) 0%,
            rgba(255,124,62,0) 40%),
        radial-gradient(circle at 100% 100%,
            rgba(37,99,235,0.05) 0%,
            rgba(37,99,235,0) 46%),
        linear-gradient(
            135deg,
            var(--white-soft,#F7F9FC) 0%,
            #FFFFFF 55%,
            var(--steel-050,#F9FAFB) 100%
        );
    border-top:1px solid var(--steel-100,#E2E8F0);
}

.wt-contact--premium > .container{
    max-width:1320px; /* gleiche Breite wie Standort-Sektion */
}

@media (max-width: 767.98px){
    .wt-contact--premium{
        padding:var(--space-56,56px) 0 var(--space-72,72px);
    }
}

/* ZENTRIERTER HEADER – wie Standort-Header ----------------- */

.wt-contact-header{
    max-width:760px; /* wie .wt-location-b-header */
    margin:0 auto var(--space-24,1.5rem);
    text-align:center;
}

.wt-contact-kicker{
    display:inline-block;
    font-size:var(--fs-label,0.78rem);
    text-transform:uppercase;
    letter-spacing:var(--ls-wide,0.08em);
    color:var(--thermo-700,#FF7C3E);
    font-weight:var(--w-semibold,600);
    margin-bottom:var(--space-8,8px);
}

.wt-contact-title{
    font-size:var(--fs-h2,2.1rem);
    font-weight:var(--w-extrabold,800);
    color:var(--blue-900,#0F1A26);
    line-height:var(--lh-tight,1.1);
    margin:0 0 var(--space-10,10px);
}

.wt-contact-lead{
    max-width:640px;
    margin:0 auto;
    font-size:var(--fs-body-lg,1.05rem);
    color:var(--blue-700,#1B2635);
}

/* LINKER BLOCK --------------------------------------------- */

.wt-contact-left{
    max-width:520px;
}

.wt-contact-left-subtitle{
    font-size:1rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
    margin:var(--space-4,4px) 0 var(--space-10,10px);
}

.wt-contact-highlights{
    display:flex;
    flex-direction:column;
    gap:var(--space-8,8px);
    margin-bottom:var(--space-18,18px);
}

.wt-contact-highlight{
    display:flex;
    gap:var(--space-10,10px);
    align-items:flex-start;
}

.wt-contact-dot{
    flex-shrink:0;
    width:10px;
    height:10px;
    border-radius:50%;
    margin-top:6px;
    background:var(--thermo-700,#FF7C3E);
    box-shadow:0 0 0 4px rgba(255,124,62,0.15);
}

.wt-contact-highlight strong{
    display:block;
    font-size:0.95rem;
    color:var(--blue-900,#0F1A26);
    margin-bottom:2px;
}

.wt-contact-highlight p{
    font-size:0.9rem;
    color:var(--blue-700,#1B2635);
    margin:0;
    line-height:1.5;
}

/* 3-Schritte-Ablauf ---------------------------------------- */

.wt-contact-steps{
    margin-bottom:var(--space-18,18px);
    padding:var(--space-10,10px) var(--space-12,12px);
    border-radius:var(--radius-md,14px);
    background:rgba(15,26,38,0.02);
    border:1px solid var(--steel-150,#E4E9F0);
}

.wt-contact-steps-title{
    margin:0 0 var(--space-8,8px);
    font-size:0.9rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
}

.wt-contact-steps-list{
    list-style:none;
    padding:0;
    margin:0;
    display:flex;
    flex-direction:column;
    gap:var(--space-8,8px);
}

.wt-contact-step{
    display:flex;
    align-items:flex-start;
    gap:var(--space-8,8px);
}

.wt-contact-step-number{
    width:22px;
    height:22px;
    border-radius:999px;
    background:var(--thermo-100,#FFE6D6);
    color:var(--thermo-800,#5C2300);
    font-size:0.8rem;
    font-weight:var(--w-semibold,600);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.wt-contact-step-body{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.wt-contact-step-label{
    font-size:0.86rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
}

.wt-contact-step-text{
    font-size:0.84rem;
    color:var(--blue-700,#1B2635);
}

/* DIREKTKONTAKT -------------------------------------------- */

.wt-contact-direct{
    display:flex;
    flex-direction:column;
    gap:var(--space-8,8px);
    padding-top:var(--space-12,12px);
    border-top:1px solid var(--steel-200,#E5E7EB);
}

.wt-contact-direct-box{
    display:inline-flex;
    flex-direction:column;
    align-items:flex-start;
    padding:var(--space-10,10px) var(--space-14,14px);
    border-radius:var(--radius-md,16px);
    background:var(--white,#FFFFFF);
    border:1px solid var(--steel-200,#EBEEF0);
    box-shadow:var(--shadow-sm,0 4px 16px rgba(15,23,42,0.06));
}

.wt-contact-direct-label{
    font-size:0.8rem;
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:var(--steel-500,#70787E);
    margin-bottom:2px;
}

.wt-contact-direct-phone{
    font-size:1.06rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
    text-decoration:none;
}

.wt-contact-direct-phone:hover{
    text-decoration:underline;
}

.wt-contact-direct-note{
    font-size:0.86rem;
    color:var(--blue-700,#1B2635);
    margin-top:3px;
}

.wt-contact-direct-mail{
    font-size:0.9rem;
    color:var(--blue-700,#1B2635);
}

.wt-contact-direct-mail a{
    font-weight:var(--w-medium,500);
    color:var(--blue-900,#0F1A26);
    text-decoration:none;
    margin-left:4px;
}

.wt-contact-direct-mail a:hover{
    text-decoration:underline;
}

.wt-contact-direct-hint{
    font-size:0.82rem;
    color:var(--steel-600,#64748B);
    margin:0;
}

/* RECHTER BLOCK – PANEL ------------------------------------ */

.wt-contact-panel{
    border-radius:var(--radius-lg,18px);
    border:1px solid var(--steel-200,#EBEEF0);
    background:var(--white,#FFFFFF);
    box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,0.06));
    padding:var(--space-20,20px) var(--space-20,20px) var(--space-22,22px);
    height:100%;
    display:flex;
    flex-direction:column;
}

.wt-contact-panel-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--space-10,10px);
    margin-bottom:var(--space-12,12px);
}

.wt-contact-panel-title{
    font-size:1.3rem;
    font-weight:var(--w-semibold,600);
    color:var(--blue-900,#0F1A26);
    margin:0 0 4px;
}

.wt-contact-panel-sub{
    font-size:0.95rem;
    color:var(--blue-700,#1B2635);
    margin:0;
}

.wt-contact-badge{
    align-self:flex-start;
    font-size:0.78rem;
    text-transform:uppercase;
    letter-spacing:0.08em;
    padding:5px 10px;
    border-radius:999px;
    background:var(--thermo-100,#FFE6D6);
    color:var(--thermo-800,#5C2300);
    font-weight:var(--w-semibold,600);
    white-space:nowrap;
}

/* Formular ------------------------------------------------- */

.wt-contact-form{
    margin-top:var(--space-4,4px);
}

.wt-contact-form-group-title{
    font-size:0.84rem;
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:var(--steel-600,#64748B);
    margin:var(--space-6,6px) 0 0;
}

/* Labels & Controls */

.wt-form-label{
    display:block;
    font-size:0.86rem;
    font-weight:var(--w-medium,500);
    color:var(--blue-800,#15212F);
    margin-bottom:4px;
}

.wt-form-control,
.wt-form-select{
    width:100%;
    border-radius:var(--radius-md,16px);
    border:1px solid var(--steel-300,#DEE3E6);
    padding:9px 11px;
    font-size:0.95rem;
    color:var(--blue-900,#0F1A26);
    background:#FFFFFF;
    outline:none;
    transition:
        border-color 160ms ease-out,
        box-shadow 160ms ease-out,
        background-color 160ms ease-out;
}

.wt-form-control::placeholder{
    color:var(--steel-500,#70787E);
}

.wt-form-control:focus,
.wt-form-select:focus{
    border-color:var(--thermo-700,#FF7C3E);
    box-shadow:0 0 0 3px rgba(255,124,62,0.25);
}

textarea.wt-form-control{
    resize:vertical;
    min-height:130px;
}

/* Screenreader-only */

.sr-only{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    border:0;
}

/* Checkbox / Datenschutz */

.wt-form-checkbox-row{
    display:flex;
    align-items:flex-start;
    gap:8px;
    font-size:0.86rem;
    color:var(--blue-700,#1B2635);
    margin-top:4px;
}

.wt-form-checkbox{
    flex-shrink:0;
    margin-top:3px;
}

.wt-form-checkbox-row a{
    color:var(--thermo-700,#FF7C3E);
    text-decoration:none;
    font-weight:var(--w-medium,500);
}

.wt-form-checkbox-row a:hover{
    text-decoration:underline;
}

/* Submit-Zeile */

.wt-contact-submit-row{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
    margin-top:var(--space-4,4px);
}

.wt-contact-submit-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:11px 24px;
    border-radius:var(--radius-md,16px);
    background:var(--thermo-700,#FF7C3E);
    color:#fff;
    border:none;
    font-size:0.96rem;
    font-weight:var(--w-semibold,600);
    cursor:pointer;
    box-shadow:var(--shadow-sm,0 8px 20px rgba(255,124,62,0.25));
    transition:
        background-color 160ms ease-out,
        box-shadow 160ms ease-out,
        transform 120ms ease-out;
}

.wt-contact-submit-btn:hover{
    background:var(--thermo-600,#FF9158);
    transform:translateY(-1px);
    box-shadow:var(--shadow-md,0 12px 26px rgba(255,124,62,0.35));
}

.wt-contact-submit-btn:focus-visible{
    outline:3px solid rgba(255,124,62,0.5);
    outline-offset:2px;
}

.wt-contact-form-hint{
    font-size:0.8rem;
    color:var(--steel-500,#70787E);
    margin:4px 0 0;
}

.wt-contact-form-process{
    font-size:0.82rem;
    color:var(--steel-600,#64748B);
    margin:2px 0 0;
}

/* RESPONSIVE ----------------------------------------------- */

@media (max-width: 991.98px){
    .wt-contact-left{
        max-width:100%;
        margin-bottom:var(--space-8,8px);
    }
    .wt-contact-panel{
        padding:var(--space-18,18px);
    }
}

@media (max-width: 767.98px){
    .wt-contact-panel-head{
        flex-direction:column;
        align-items:flex-start;
    }
    .wt-contact-badge{
        margin-top:4px;
    }
}

@media (max-width: 575.98px){
    .wt-contact-title{
        font-size:1.9rem;
    }
    .wt-contact-submit-btn{
        width:100%;
        justify-content:center;
    }
}



/* =========================================================
         FOOTER – HELLER, HARMONISIERT MIT KONTAKT/OVERLAY
========================================================= */


.wt-footer-main{
    padding:var(--space-56,3.5rem) 0 var(--space-40,2.5rem);
    background:
        radial-gradient(circle at 0% 0%,
            rgba(255,124,62,0.08) 0%,
            rgba(255,124,62,0) 38%),
        radial-gradient(circle at 100% 100%,
            rgba(148,163,184,0.16) 0%,
            rgba(148,163,184,0) 45%),
        linear-gradient(
            180deg,
            #0b1120 0%,
            #020617 100%
        );
    color:var(--steel-050,#F9FAFB);
    border-top:1px solid rgba(148,163,184,0.4);
}

.wt-footer-main > .container{
    max-width:1320px; /* Harmonisch zu Kontakt / Standort */
}

@media (max-width: 991.98px){
    .wt-footer-main{
        padding:var(--space-48,3rem) 0 var(--space-32,2rem);
    }
}

/* OBERER BEREICH ----------------------------------------- */

.wt-footer-main-top{
    padding-bottom:var(--space-24,1.5rem);
    border-bottom:1px solid rgba(148,163,184,0.26);
}

/* Brand / Claim / Rating --------------------------------- */

.wt-footer-main-brand{
    max-width:360px;
}

.wt-footer-main-logo{
    display:inline-block;
    font-family:var(--font-head,system-ui);
    font-size:1.7rem;
    font-weight:var(--w-extrabold,800);
    letter-spacing:var(--ls-tight,-0.02em);
    color:#F9FAFB;
    text-decoration:none;
    margin-bottom:var(--space-8,0.5rem);
}

.wt-footer-main-logo span{
    color:var(--thermo-400,#fb923c);
}

.wt-footer-main-logo:hover{
    color:#FFFFFF;
}

.wt-footer-main-logo:focus-visible{
    outline:3px solid rgba(251,146,60,0.7);
    outline-offset:3px;
}

.wt-footer-main-claim{
    margin:0 0 var(--space-16,1rem);
    font-size:var(--fs-body-sm,0.92rem);
    line-height:var(--lh-relaxed,1.6);
    color:rgba(226,232,240,0.92);
}

/* Rating-Block */

.wt-footer-main-rating{
    display:flex;
    align-items:center;
    gap:var(--space-10,0.6rem);
}

.wt-footer-main-rating-score{
    display:flex;
    align-items:flex-end;
    gap:3px;
}

.wt-footer-main-rating-value{
    font-size:2.3rem;
    line-height:1;
    font-weight:var(--w-extrabold,800);
    color:var(--thermo-400,#fb923c);
}

.wt-footer-main-rating-max{
    font-size:var(--fs-body,1rem);
    color:rgba(209,213,219,0.95);
    margin-bottom:3px;
}

.wt-footer-main-rating-meta{
    display:flex;
    flex-direction:column;
    gap:var(--space-4,0.25rem);
}

.wt-footer-main-rating-stars{
    font-size:1.1rem;
    color:var(--thermo-400,#fb923c);
    letter-spacing:2px;
}

.wt-footer-main-rating-text{
    margin:0;
    font-size:var(--fs-body-sm,0.9rem);
    color:rgba(209,213,219,0.98);
}

.wt-footer-main-rating-source{
    display:block;
    font-size:var(--fs-micro,0.75rem);
    color:rgba(148,163,184,0.9);
}

/* SPALTEN – GENERELL ------------------------------------- */

.wt-footer-main-column{
    min-width:0;
}

.wt-footer-main-heading{
    font-size:var(--fs-body-sm,0.86rem);
    text-transform:uppercase;
    letter-spacing:var(--ls-wide,0.12em);
    color:rgba(229,231,235,0.96);
    margin:0 0 var(--space-10,0.6rem);
    font-weight:var(--w-semibold,600);
}

.wt-footer-main-links{
    list-style:none;
    padding:0;
    margin:0;
    display:flex;
    flex-direction:column;
    gap:var(--space-6,0.35rem);
}

.wt-footer-main-links li{
    font-size:var(--fs-body-sm,0.9rem);
}

/* Normale Links */
.wt-footer-main-links a{
    color:rgba(226,232,240,0.96);
    text-decoration:none;
    transition:
        color var(--duration-normal,160ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.wt-footer-main-links a:hover{
    color:var(--thermo-400,#fb923c);
}

.wt-footer-main-links a:focus-visible{
    outline:3px solid rgba(251,146,60,0.75);
    outline-offset:2px;
}

/* Muted-Liste (Schwerpunkte, nicht klickbar) */
.wt-footer-main-links--muted li{
    color:rgba(209,213,219,0.9);
}

/* Kontakt-Spalte ----------------------------------------- */

.wt-footer-main-contact-text{
    margin:0 0 var(--space-16,1rem);
    font-size:var(--fs-body-sm,0.9rem);
    color:rgba(226,232,240,0.9);
}

.wt-footer-main-contact-lines{
    display:flex;
    flex-direction:column;
    gap:var(--space-8,0.5rem);
    margin-bottom:var(--space-16,1rem);
}

.wt-footer-main-contact-label{
    font-size:var(--fs-micro,0.75rem);
    text-transform:uppercase;
    letter-spacing:0.12em;
    color:rgba(148,163,184,0.96);
}

.wt-footer-main-contact-link{
    font-size:var(--fs-body-sm,0.9rem);
    color:rgba(226,232,240,0.98);
    text-decoration:none;
}

.wt-footer-main-contact-link:hover{
    color:var(--thermo-400,#fb923c);
}

.wt-footer-main-contact-link:focus-visible{
    outline:3px solid rgba(251,146,60,0.75);
    outline-offset:2px;
}

/* Notdienst-Bereich -------------------------------------- */

.wt-footer-main-notfall{
    padding:var(--space-10,0.6rem) var(--space-12,0.75rem);
    border-radius:var(--radius-md,0.75rem);
    background:rgba(15,23,42,0.96);
    border:1px solid rgba(248,113,62,0.5);
    box-shadow:0 0 0 1px rgba(15,23,42,0.9);
    display:flex;
    flex-direction:column;
    gap:var(--space-4,0.25rem);
}

.wt-footer-main-notfall-label{
    font-size:var(--fs-micro,0.75rem);
    text-transform:uppercase;
    letter-spacing:0.12em;
    color:rgba(252,211,77,0.96);
}

.wt-footer-main-notfall-phone{
    font-size:var(--fs-body,1rem);
    font-weight:var(--w-semibold,600);
    color:#F9FAFB;
    text-decoration:none;
}

.wt-footer-main-notfall-phone:hover{
    color:var(--thermo-200,#fed7aa);
}

.wt-footer-main-notfall-phone:focus-visible{
    outline:3px solid rgba(252,211,77,0.85);
    outline-offset:2px;
}

.wt-footer-main-notfall-time{
    font-size:var(--fs-micro,0.75rem);
    color:rgba(209,213,219,0.9);
}

/* UNTERER BEREICH ---------------------------------------- */

.wt-footer-main-bottom{
    padding-top:var(--space-16,1rem);
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-10,0.6rem);
    align-items:center;
    justify-content:space-between;
}

.wt-footer-main-copy{
    margin:0;
    font-size:var(--fs-body-sm,0.88rem);
    color:rgba(156,163,175,0.96);
}

.wt-footer-main-legal{
    list-style:none;
    padding:0;
    margin:0;
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-10,0.6rem);
}

.wt-footer-main-legal li{
    font-size:var(--fs-body-sm,0.88rem);
}

.wt-footer-main-legal a{
    color:rgba(209,213,219,0.96);
    text-decoration:none;
    transition:
        color var(--duration-normal,160ms) var(--ease-soft,cubic-bezier(0.22,0.61,0.36,1));
}

.wt-footer-main-legal a:hover{
    color:var(--thermo-400,#fb923c);
}

.wt-footer-main-legal a:focus-visible{
    outline:3px solid rgba(251,146,60,0.75);
    outline-offset:2px;
}

/* RESPONSIVE --------------------------------------------- */

@media (max-width: 991.98px){
    .wt-footer-main-brand{
        margin-bottom:var(--space-8,0.5rem);
    }
}

@media (max-width: 575.98px){
    .wt-footer-main-rating{
        flex-direction:column;
        align-items:flex-start;
        gap:var(--space-6,0.4rem);
    }
    .wt-footer-main-bottom{
        flex-direction:column;
        align-items:flex-start;
        gap:var(--space-6,0.4rem);
    }
}
