/* /Features/Landing/Components/AnnouncementBanner.razor.rz.scp.css */
/* ─── ANNOUNCEMENT BANNER ─── */
.ann-banner[b-gpcswrino6] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 300;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(90deg,
            rgba(124, 77, 255, .18) 0%,
            rgba(0, 230, 255, .12) 40%,
            rgba(124, 77, 255, .18) 100%);
    border-bottom: 1px solid rgba(124, 77, 255, .3);
    backdrop-filter: blur(12px);
    gap: 14px;
    padding: 0 20px;
    transition: transform .4s ease, opacity .4s ease;
}

.ann-banner.hidden[b-gpcswrino6] {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
}

.ann-text[b-gpcswrino6] {
    font-family: 'DM Sans', sans-serif;
    font-size: 12px;
    font-weight: 400;
    color: var(--md);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ann-text strong[b-gpcswrino6] {
    color: var(--hi);
    font-weight: 500;
}

.ann-badge[b-gpcswrino6] {
    font-family: 'Orbitron', monospace;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .1em;
    color: var(--c);
    background: var(--vi);
    padding: 2px 8px;
    border-radius: 4px;
    white-space: nowrap;
    flex-shrink: 0;
}

.ann-cta[b-gpcswrino6] {
    font-family: 'Orbitron', monospace;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    color: var(--cy);
    text-decoration: none;
    white-space: nowrap;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 5px;
    transition: opacity .2s;
}

.ann-cta:hover[b-gpcswrino6] {
    opacity: .75;
}

.ann-cta[b-gpcswrino6]::after {
    content: '→';
    font-size: 12px;
}

.ann-close[b-gpcswrino6] {
    position: absolute;
    right: 16px;
    background: none;
    border: none;
    color: var(--dim);
    cursor: pointer;
    font-size: 16px;
    line-height: 1;
    padding: 4px;
    transition: color .2s;
}

.ann-close:hover[b-gpcswrino6] {
    color: var(--lo);
}

.ann-sep[b-gpcswrino6] {
    width: 1px;
    height: 14px;
    background: rgba(255, 255, 255, .12);
    flex-shrink: 0;
}

@media (max-width: 900px) {
    .ann-text .ann-extra[b-gpcswrino6] {
        display: none;
    }
}

@media (max-width: 600px) {
    .ann-banner[b-gpcswrino6] {
        gap: 8px;
        padding: 0 56px 0 12px;
    }

    .ann-text[b-gpcswrino6] {
        font-size: 11px;
    }

    .ann-sep[b-gpcswrino6] {
        display: none;
    }

    .ann-badge[b-gpcswrino6] {
        padding: 2px 6px;
        font-size: 8px;
    }

    .ann-close[b-gpcswrino6] {
        right: 8px;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
        touch-action: manipulation;
    }
}

@media (max-width: 380px) {
    /* On the very narrow iPhone SE 320px-class width, hide the CTA link too */
    .ann-cta[b-gpcswrino6] {
        display: none;
    }
}
/* /Features/Landing/Components/LandingFooter.razor.rz.scp.css */
.landing-footer[b-xvziz2cmh1] {
    border-top: 1px solid var(--bc);
    padding: 36px 0;
    z-index: 1;
    position: relative;
}

.footer-inner[b-xvziz2cmh1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}

.footer-brand[b-xvziz2cmh1] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
    text-decoration: none;
}

/* Wortmarke kommt aus Wordmark.razor (Kind-Komponente) → ::deep. */
.footer-brand[b-xvziz2cmh1]  .footer-mark {
    display: block;
    height: 24px;
    width: auto;
    opacity: .92;
    transition: opacity .25s ease;
}

.footer-brand:hover[b-xvziz2cmh1]  .footer-mark {
    opacity: 1;
}

.footer-brand[b-xvziz2cmh1]  .footer-mark .lk-word {
    fill: var(--md);
}

.footer-legal[b-xvziz2cmh1] {
    font-size: 10px;
    color: var(--dim);
    letter-spacing: .1em;
    text-transform: uppercase;
    transition: color .2s;
}

.footer-brand:hover .footer-legal[b-xvziz2cmh1] {
    color: var(--lo);
}

.footer-links[b-xvziz2cmh1] {
    display: flex;
    gap: 20px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-links a[b-xvziz2cmh1] {
    font-size: 11px;
    letter-spacing: .09em;
    text-transform: uppercase;
    color: var(--dim);
    text-decoration: none;
    transition: color .2s;
}

.footer-links a:hover[b-xvziz2cmh1] {
    color: var(--cy);
}

.footer-live[b-xvziz2cmh1] {
    font-size: 11px;
    color: var(--dim);
    letter-spacing: .06em;
    display: flex;
    align-items: center;
    gap: 6px;
}

.footer-live[b-xvziz2cmh1]::before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--ok);
    animation: pulse 2s infinite;
}

@media (max-width: 600px) {
    .landing-footer[b-xvziz2cmh1] {
        padding: 28px 0;
    }

    .footer-inner[b-xvziz2cmh1] {
        gap: 14px;
        justify-content: center;
        text-align: center;
    }

    .footer-brand[b-xvziz2cmh1] {
        align-items: center;
    }

    .footer-brand[b-xvziz2cmh1]  .footer-mark {
        height: 21px;
    }

    .footer-links[b-xvziz2cmh1] {
        flex-wrap: wrap;
        justify-content: center;
        gap: 14px 18px;
        order: 2;
    }

    .footer-live[b-xvziz2cmh1] {
        flex-basis: 100%;
        justify-content: center;
        order: 3;
    }
}
/* /Features/Landing/Components/LandingLanguageSwitcher.razor.rz.scp.css */
/*
 * Landing-Sprach-Switcher: Flaggen-Dropdown, abgestimmt auf die Cyberpunk-HUD-Nav.
 * Trigger = aktuelle Flagge + Kürzel + Caret; Klick öffnet ein Dropdown mit allen
 * Sprachen (Flagge + Eigenname). Aktive Sprache akzentuiert (`--vi`-Cyan).
 */

.landing-lang[b-c15108f5wo] {
    position: relative;
    display: inline-flex;
    margin-right: 12px;
    user-select: none;
}

.landing-lang-trigger[b-c15108f5wo] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 6px;
    color: rgba(255, 255, 255, 0.8);
    font-family: inherit;
    font-size: 0.82rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    padding: 5px 9px;
    cursor: pointer;
    transition: border-color 0.18s ease, color 0.18s ease;
}

.landing-lang-trigger:hover[b-c15108f5wo],
.landing-lang.open .landing-lang-trigger[b-c15108f5wo] {
    color: #fff;
    border-color: var(--vi, #00d4ff);
}

.landing-lang-code[b-c15108f5wo] {
    line-height: 1;
}

.landing-lang-caret[b-c15108f5wo] {
    width: 9px;
    height: 6px;
    opacity: 0.7;
    transition: transform 0.18s ease;
}

.landing-lang.open .landing-lang-caret[b-c15108f5wo] {
    transform: rotate(180deg);
}

/* Dropdown-Panel */
.landing-lang-menu[b-c15108f5wo] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 60;
    margin: 0;
    padding: 6px;
    list-style: none;
    min-width: 184px;
    background: #0b121a;
    border: 1px solid rgba(0, 230, 255, 0.18);
    border-radius: 10px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.55);
}

.landing-lang-menu li[b-c15108f5wo] {
    margin: 0;
    padding: 0;
}

.landing-lang-item[b-c15108f5wo] {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    background: transparent;
    border: none;
    border-radius: 7px;
    color: rgba(255, 255, 255, 0.78);
    font-family: inherit;
    font-size: 0.9rem;
    font-weight: 500;
    text-align: left;
    padding: 8px 10px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.landing-lang-item:hover[b-c15108f5wo] {
    background: rgba(0, 230, 255, 0.08);
    color: #fff;
}

.landing-lang-item.active[b-c15108f5wo] {
    color: var(--vi, #00d4ff);
}

/* Mobile (< 1100px): der Switcher sitzt im Nav-Dropdown. Trigger volle Breite, das Menü
 * rendert inline (statisch) statt absolut, damit es nicht aus dem Viewport ragt. */
@media (max-width: 1099.95px) {
    .landing-lang[b-c15108f5wo] {
        margin-right: 0;
        width: 100%;
    }

    .landing-lang-trigger[b-c15108f5wo] {
        width: 100%;
        justify-content: flex-start;
        font-size: 0.95rem;
        padding: 10px 12px;
    }

    .landing-lang-menu[b-c15108f5wo] {
        position: static;
        width: 100%;
        min-width: 0;
        margin-top: 6px;
        box-shadow: none;
    }
}
/* /Features/Landing/Components/LandingNav.razor.rz.scp.css */
/* ─── NAV ─── */
.landing-nav[b-ixyiynxy6c] {
    position: fixed;
    top: 40px;
    left: 0;
    right: 0;
    z-index: 200;
    border-bottom: 1px solid var(--bc);
    background: rgba(5, 7, 10, .92);
    backdrop-filter: blur(16px);
    transition: border-color .4s, top .4s ease;
}

.landing-nav.banner-hidden[b-ixyiynxy6c] {
    top: 0;
}

.landing-nav.scrolled[b-ixyiynxy6c] {
    border-bottom-color: rgba(0, 230, 255, .18);
}

/* When the dropdown menu is open, force the cyan border under the bar so the
   bar and dropdown read as a single panel. */
.landing-nav.menu-open[b-ixyiynxy6c] {
    border-bottom-color: rgba(0, 230, 255, .25);
}

.nav-inner[b-ixyiynxy6c] {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 40px;
    height: 64px;
    display: flex;
    align-items: center;
    gap: 32px;
}

.logo[b-ixyiynxy6c] {
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    flex-shrink: 0;
    line-height: 1;
}

/* Die Wortmarke rendert Wordmark.razor (Kind-Komponente) → ::deep nötig. */
.logo[b-ixyiynxy6c]  .logo-mark {
    display: block;
    height: 30px;
    width: auto;
    transition: filter .25s ease, transform .25s ease;
}

.logo:hover[b-ixyiynxy6c]  .logo-mark {
    filter: drop-shadow(0 0 10px rgba(0, 230, 255, .45)) brightness(1.06);
}

.logo-tag[b-ixyiynxy6c] {
    font-size: 9px;
    color: var(--cy);
    opacity: .6;
    letter-spacing: .17em;
    font-family: "DM Sans", sans-serif;
    font-weight: 400;
    display: block;
    white-space: nowrap;
    transition: opacity .25s ease;
}

.logo:hover .logo-tag[b-ixyiynxy6c] {
    opacity: .85;
}

.nav-links[b-ixyiynxy6c] {
    display: flex;
    gap: 4px;
    list-style: none;
    flex: 1;
    justify-content: center;
    margin: 0;
    padding: 0;
}

.nav-links a[b-ixyiynxy6c] {
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .08em;
    color: var(--lo);
    text-decoration: none;
    padding: 7px 14px;
    border-radius: 6px;
    transition: color .2s, background .2s;
    white-space: nowrap;
}

.nav-links a:hover[b-ixyiynxy6c] {
    color: var(--cy);
    background: rgba(0, 230, 255, .05);
}

.nav-pill[b-ixyiynxy6c] {
    background: var(--cy);
    color: var(--c);
    font-family: 'Orbitron', monospace;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    border: none;
    border-radius: 7px;
    padding: 9px 22px;
    cursor: pointer;
    flex-shrink: 0;
    transition: background .2s, box-shadow .2s;
    text-decoration: none;
    display: inline-block;
    white-space: nowrap;
}

.nav-pill:hover[b-ixyiynxy6c] {
    background: var(--cyi);
    box-shadow: var(--gc);
}

/* ─── HAMBURGER ───
   Hidden on desktop, becomes flex below 1100px. The three spans animate
   into an X when the menu is open. */
.nav-burger[b-ixyiynxy6c] {
    display: none;
    background: transparent;
    border: 1px solid var(--bc);
    border-radius: 8px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    padding: 9px;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    margin-left: auto;
    flex-shrink: 0;
    touch-action: manipulation;
    transition: border-color .2s, background .2s;
}

.nav-burger:hover[b-ixyiynxy6c] {
    border-color: rgba(0, 230, 255, .3);
}

.nav-burger.open[b-ixyiynxy6c] {
    border-color: var(--cy);
    background: rgba(0, 230, 255, .06);
}

.nav-burger span[b-ixyiynxy6c] {
    display: block;
    width: 100%;
    height: 1.5px;
    background: var(--cy);
    border-radius: 1px;
    transition: transform .25s ease, opacity .25s ease;
    transform-origin: center;
}

/* Animate the three bars into an X when open */
.nav-burger.open span:nth-child(1)[b-ixyiynxy6c] {
    transform: translateY(8px) rotate(45deg);
}

.nav-burger.open span:nth-child(2)[b-ixyiynxy6c] {
    opacity: 0;
}

.nav-burger.open span:nth-child(3)[b-ixyiynxy6c] {
    transform: translateY(-8px) rotate(-45deg);
}

/* ─── DROPDOWN PANEL ───
   Position:absolute; top:100% means "right under the nav-inner". Since the
   parent .landing-nav is position:fixed, the dropdown follows the nav as
   the user scrolls — it never detaches from the header. */
.nav-dropdown[b-ixyiynxy6c] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: rgba(5, 7, 10, .96);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid var(--bc);
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    transition: max-height .35s ease, opacity .25s ease;
    /* Render the dropdown above the page content but below the announcement
       banner so the banner can still cover the top when visible. */
    z-index: 199;
}

.nav-dropdown.open[b-ixyiynxy6c] {
    max-height: 560px;
    opacity: 1;
    pointer-events: all;
}

.nav-dropdown-inner[b-ixyiynxy6c] {
    max-width: 1160px;
    margin: 0 auto;
    padding: 12px 40px 20px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.nav-dropdown a[b-ixyiynxy6c] {
    font-family: 'Orbitron', monospace;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--lo);
    text-decoration: none;
    padding: 14px 14px;
    border-radius: 8px;
    min-height: 48px;
    display: flex;
    align-items: center;
    transition: color .2s, background .2s;
    touch-action: manipulation;
}

.nav-dropdown a:hover[b-ixyiynxy6c],
.nav-dropdown a:active[b-ixyiynxy6c] {
    color: var(--cy);
    background: rgba(0, 230, 255, .07);
}

.nav-dropdown a.vi[b-ixyiynxy6c] {
    color: var(--vi);
}

.nav-dropdown a.vi:hover[b-ixyiynxy6c],
.nav-dropdown a.vi:active[b-ixyiynxy6c] {
    color: #9b6dff;
    background: rgba(124, 77, 255, .08);
}

/* CTA at the bottom of the dropdown — uses the same cyan pill style */
.nav-dropdown-cta[b-ixyiynxy6c] {
    background: var(--cy);
    color: var(--c) !important;
    justify-content: center;
    margin-top: 8px;
    border-radius: 8px;
    font-weight: 700;
}

.nav-dropdown-cta:hover[b-ixyiynxy6c],
.nav-dropdown-cta:active[b-ixyiynxy6c] {
    background: var(--cyi);
    color: var(--c) !important;
    box-shadow: var(--gc);
}

/* ─── BACKDROP ───
   Covers the rest of the viewport when the menu is open. Tap-to-close.
   Hidden by default so a stray click on its area before any open never
   prevents normal page interaction. */
.nav-backdrop[b-ixyiynxy6c] {
    position: fixed;
    inset: 0;
    background: rgba(5, 7, 10, .65);
    backdrop-filter: blur(4px);
    z-index: 198;
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease;
}

.nav-backdrop.open[b-ixyiynxy6c] {
    opacity: 1;
    pointer-events: all;
}

/* ─── BREAKPOINTS ───
   1100px is the cutoff where the inline link list stops fitting alongside
   the logo + tagline + language switcher + CTA pill. Below 1100 we switch to the hamburger + dropdown. */
@media (max-width: 1100px) {
    .nav-links[b-ixyiynxy6c],
    .nav-pill-desktop[b-ixyiynxy6c] {
        display: none;
    }

    .nav-burger[b-ixyiynxy6c] {
        display: flex;
    }
}

@media (max-width: 600px) {
    .nav-inner[b-ixyiynxy6c] {
        padding: 0 20px;
        gap: 16px;
    }

    .nav-dropdown-inner[b-ixyiynxy6c] {
        padding: 12px 20px 20px;
    }

    .logo-tag[b-ixyiynxy6c] {
        display: none;
    }

    .logo[b-ixyiynxy6c]  .logo-mark {
        height: 24px;
    }
}

@media (max-width: 380px) {
    .nav-inner[b-ixyiynxy6c] {
        padding: 0 14px;
    }

    .nav-dropdown-inner[b-ixyiynxy6c] {
        padding: 12px 14px 16px;
    }
}
/* /Features/Landing/Components/RoiContactDialog.razor.rz.scp.css */
/* Dialog content uses MudBlazor's MudDialog skeleton but is fully visually
   overridden here so it matches the cyberpunk-HUD aesthetic. The header bar
   gets the cyan→violet gradient line, the body keeps a dark surface. */

[b-02dghyq5gm] .mud-dialog.roi-contact-dialog-root {
    background: var(--s1);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    max-width: 540px;
    width: 100%;
    overflow: hidden;
    position: relative;
}

[b-02dghyq5gm] .mud-dialog.roi-contact-dialog-root::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--cy), var(--vi), transparent);
    pointer-events: none;
    z-index: 1;
}

[b-02dghyq5gm] .mud-dialog-content.roi-contact-dialog {
    padding: 0 !important;
    background: var(--s1);
    color: var(--md);
}

.roi-modal-head[b-02dghyq5gm] {
    padding: 26px 30px 18px;
    border-bottom: 1px solid var(--bc);
}

.roi-modal-eye[b-02dghyq5gm] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 5px;
    opacity: .75;
}

.roi-modal-title[b-02dghyq5gm] {
    font-family: 'Orbitron', monospace;
    font-size: 15px;
    font-weight: 700;
    color: var(--hi);
}

.roi-modal-body[b-02dghyq5gm] {
    padding: 22px 30px 30px;
}

/* Summary card (read-only, not a form field) */
.roi-summary[b-02dghyq5gm] {
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    padding: 14px 16px;
    margin-bottom: 20px;
}

.roi-summary-lbl[b-02dghyq5gm] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--lo);
    margin-bottom: 8px;
}

.roi-summary-row[b-02dghyq5gm] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px 0;
    border-bottom: 1px solid var(--bc);
    font-size: 13px;
}

.roi-summary-row:last-child[b-02dghyq5gm] {
    border-bottom: none;
}

.roi-summary-key[b-02dghyq5gm] {
    color: var(--lo);
}

.roi-summary-val[b-02dghyq5gm] {
    color: var(--cy);
    font-family: 'Orbitron', monospace;
    font-size: 11px;
    font-weight: 700;
}

/* Form rows / fields */
.roi-form[b-02dghyq5gm] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.roi-form-row[b-02dghyq5gm] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.roi-form-field[b-02dghyq5gm] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

/* ─── MudTextField visual overrides ─── */
[b-02dghyq5gm] .roi-mud-text .mud-input-outlined .mud-input-outlined-border {
    border-color: var(--bc);
    border-radius: var(--r);
    transition: border-color .2s;
}

[b-02dghyq5gm] .roi-mud-text .mud-input.mud-input-outlined.mud-input-focused .mud-input-outlined-border,
[b-02dghyq5gm] .roi-mud-text .mud-input.mud-input-outlined:hover:not(.mud-disabled) .mud-input-outlined-border {
    border-color: var(--cy) !important;
}

[b-02dghyq5gm] .roi-mud-text .mud-input input,
[b-02dghyq5gm] .roi-mud-text .mud-input textarea {
    color: var(--hi);
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    background: var(--s2);
}

[b-02dghyq5gm] .roi-mud-text .mud-input-outlined.mud-shrink .mud-input-label,
[b-02dghyq5gm] .roi-mud-text .mud-input-label {
    color: var(--lo);
    font-family: 'DM Sans', sans-serif;
}

[b-02dghyq5gm] .roi-mud-text .mud-input-label-animated.mud-input-label-inputcontrol {
    color: var(--lo);
}

[b-02dghyq5gm] .roi-mud-text .mud-input-helper-text {
    color: var(--dim);
    font-size: 11px;
}

/* Make the input wrapper itself have a solid dark background so the inputs
   look "embedded" in the cyan-bordered shell. */
[b-02dghyq5gm] .roi-mud-text .mud-input-outlined .mud-input-slot {
    background: var(--s2);
    border-radius: var(--r);
}

/* Submit button — cyan brand, Orbitron uppercase */
[b-02dghyq5gm] .roi-form-submit-btn.mud-button-filled {
    background: var(--cy);
    color: var(--c) !important;
    font-family: 'Orbitron', monospace;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    border-radius: var(--r);
    padding: 13px;
    margin-top: 6px;
    min-height: 44px;
    transition: background .2s, box-shadow .2s;
}

[b-02dghyq5gm] .roi-form-submit-btn.mud-button-filled:hover {
    background: var(--cyi);
    box-shadow: var(--gc);
}

/* Success state */
.roi-success[b-02dghyq5gm] {
    text-align: center;
    padding: 36px 28px;
}

.roi-success-icon[b-02dghyq5gm] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    border: 1.5px solid var(--ok);
    display: grid;
    place-items: center;
    margin: 0 auto 18px;
    background: rgba(0, 255, 156, .06);
}

.roi-success-title[b-02dghyq5gm] {
    font-family: 'Orbitron', monospace;
    font-size: 15px;
    font-weight: 700;
    color: var(--hi);
    margin-bottom: 8px;
}

.roi-success-sub[b-02dghyq5gm] {
    font-size: 13px;
    color: var(--lo);
    line-height: 1.65;
}

/* Mobile: full width modal, stacked form rows */
@media (max-width: 600px) {
    [b-02dghyq5gm] .mud-dialog.roi-contact-dialog-root {
        max-width: 100%;
        margin: 0;
        border-radius: var(--r);
    }

    .roi-modal-head[b-02dghyq5gm] {
        padding: 22px 22px 16px;
    }

    .roi-modal-body[b-02dghyq5gm] {
        padding: 18px 22px 24px;
    }

    .roi-form-row[b-02dghyq5gm] {
        grid-template-columns: 1fr;
    }
}
/* /Features/Landing/Sections/CitySection.razor.rz.scp.css */
.city-section[b-l69kc2a3ms] {
    padding: 120px 0;
    background: var(--s1);
    border-top: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
}

.city-wrap[b-l69kc2a3ms] {
    margin-top: 56px;
    background: var(--c);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    overflow: hidden;
    position: relative;
}

.city-wrap[b-l69kc2a3ms]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--cy), var(--vi), transparent);
}

.city-topbar[b-l69kc2a3ms] {
    padding: 14px 24px;
    border-bottom: 1px solid var(--bc);
    display: flex;
    align-items: center;
    gap: 12px;
}

.city-dot[b-l69kc2a3ms] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.city-topbar-title[b-l69kc2a3ms] {
    font-family: 'Orbitron', monospace;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .14em;
    color: var(--lo);
    margin-left: 6px;
}

.city-live[b-l69kc2a3ms] {
    margin-left: auto;
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .1em;
    color: var(--ok);
    display: flex;
    align-items: center;
    gap: 5px;
}

.city-live[b-l69kc2a3ms]::before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--ok);
    animation: pulse 2s infinite;
}

.city-svg[b-l69kc2a3ms] {
    display: block;
    width: 100%;
}

/* Building hover highlight. .bld-hl is initially invisible; the parent .bld
   group reveals it on hover by toggling opacity. */
.bld[b-l69kc2a3ms] {
    cursor: pointer;
    touch-action: manipulation;
}

.bld-hl[b-l69kc2a3ms] {
    opacity: 0;
    transition: opacity .2s;
}

.bld:hover .bld-hl[b-l69kc2a3ms] {
    opacity: 1;
}

/* Mobile tile fallback — hidden on desktop, shown below 600px where the SVG
   becomes too small to be tappable. */
.city-tiles[b-l69kc2a3ms] {
    display: none;
    list-style: none;
    margin: 0;
    padding: 18px 18px 6px;
    border-top: 1px solid var(--bc);
    background: var(--c);
}

.city-tile[b-l69kc2a3ms] {
    display: flex;
    align-items: center;
    width: 100%;
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    padding: 14px 16px;
    margin-bottom: 8px;
    cursor: pointer;
    color: var(--md);
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    min-height: 56px;
    text-align: left;
    transition: border-color .2s, background .2s;
    touch-action: manipulation;
    gap: 14px;
    position: relative;
    overflow: hidden;
}

.city-tile[b-l69kc2a3ms]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 2px;
    background: transparent;
    transition: background .2s;
}

.city-tile.active[b-l69kc2a3ms]::before {
    background: var(--cy);
}

.city-tile.active[b-l69kc2a3ms] {
    background: var(--s3);
    border-color: rgba(0, 230, 255, .25);
}

.city-tile:hover[b-l69kc2a3ms] {
    border-color: rgba(0, 230, 255, .2);
}

.city-tile-dot[b-l69kc2a3ms] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    flex-shrink: 0;
    box-shadow: 0 0 6px currentColor;
}

.city-tile-name[b-l69kc2a3ms] {
    flex: 1;
    color: var(--hi);
    font-weight: 400;
    letter-spacing: .02em;
}

.city-tile-arrow[b-l69kc2a3ms] {
    color: var(--lo);
    font-size: 20px;
    line-height: 1;
}

.pring[b-l69kc2a3ms] {
    animation: pulseRing 2.2s ease-in-out infinite;
}

/* Info panel */
.city-info[b-l69kc2a3ms] {
    padding: 28px 32px;
    border-top: 1px solid var(--bc);
    min-height: 160px;
    transition: all .3s;
}

.info-empty[b-l69kc2a3ms] {
    text-align: center;
    padding: 32px 0;
    font-size: 13px;
    color: var(--dim);
}

.info-header[b-l69kc2a3ms] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.info-dot[b-l69kc2a3ms] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

.info-name[b-l69kc2a3ms] {
    font-family: 'Orbitron', monospace;
    font-size: 16px;
    font-weight: 700;
    color: var(--hi);
}

.info-badge[b-l69kc2a3ms] {
    margin-left: auto;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
    padding: 3px 12px;
    border-radius: 4px;
    white-space: nowrap;
}

.badge-hi[b-l69kc2a3ms] {
    background: rgba(0, 255, 156, .1);
    color: var(--ok);
    border: 1px solid rgba(0, 255, 156, .2);
}

.badge-md[b-l69kc2a3ms] {
    background: rgba(0, 230, 255, .08);
    color: var(--cy);
    border: 1px solid rgba(0, 230, 255, .15);
}

.kpi-row[b-l69kc2a3ms] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 18px;
}

.kpi-card[b-l69kc2a3ms] {
    background: var(--s2);
    border-radius: var(--r);
    padding: 14px;
    border: 1px solid var(--bc);
}

.kpi-val[b-l69kc2a3ms] {
    font-family: 'Orbitron', monospace;
    font-size: 18px;
    font-weight: 700;
    color: var(--cy);
    font-variant-numeric: tabular-nums;
}

.kpi-lbl[b-l69kc2a3ms] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--lo);
    margin-top: 3px;
}

.city-section-label[b-l69kc2a3ms] {
    font-size: 11px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--lo);
    margin-bottom: 10px;
    font-weight: 400;
}

.measures[b-l69kc2a3ms] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
}

.mrow[b-l69kc2a3ms] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: var(--s2);
    border-radius: 8px;
    border: 1px solid var(--bc);
}

.mrow-dot[b-l69kc2a3ms] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}

.mrow-text[b-l69kc2a3ms] {
    font-size: 13px;
    color: var(--md);
}

.mrow.off .mrow-text[b-l69kc2a3ms] {
    color: var(--dim);
}

.city-tags[b-l69kc2a3ms] {
    margin-top: 12px;
}

.city-tag[b-l69kc2a3ms] {
    display: inline-block;
    margin: 3px 4px 0 0;
    font-size: 10px;
    padding: 2px 10px;
    border-radius: 4px;
    background: var(--s2);
    color: var(--lo);
    border: 1px solid var(--bc);
}

@media (max-width: 900px) {
    .city-section[b-l69kc2a3ms] {
        padding: 96px 0;
    }

    .city-wrap[b-l69kc2a3ms] {
        margin-top: 44px;
    }

    .kpi-row[b-l69kc2a3ms] {
        grid-template-columns: repeat(3, 1fr);
    }

    .measures[b-l69kc2a3ms] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .city-section[b-l69kc2a3ms] {
        padding: 72px 0;
    }

    /* Hide the SVG; show the tile list instead. */
    .city-svg[b-l69kc2a3ms] {
        display: none;
    }

    .city-tiles[b-l69kc2a3ms] {
        display: block;
    }

    .city-topbar[b-l69kc2a3ms] {
        padding: 12px 16px;
        gap: 8px;
    }

    .city-topbar-title[b-l69kc2a3ms] {
        font-size: 9px;
        letter-spacing: .1em;
    }

    .city-info[b-l69kc2a3ms] {
        padding: 22px 18px;
    }

    .kpi-row[b-l69kc2a3ms] {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .info-header[b-l69kc2a3ms] {
        flex-wrap: wrap;
        margin-bottom: 14px;
    }

    .info-badge[b-l69kc2a3ms] {
        margin-left: 0;
        margin-top: 4px;
    }

    .info-name[b-l69kc2a3ms] {
        font-size: 14px;
    }
}
/* /Features/Landing/Sections/ContactSection.razor.rz.scp.css */
/* ─── KONTAKT / TERMIN BUCHEN ─── */
.contact[b-i9wjhnhyz2] {
    padding: 120px 0;
    background: var(--s1);
    border-top: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
}

.book-layout[b-i9wjhnhyz2] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
    margin-top: 48px;
    align-items: start;
}

/* Nur das Kontaktformular (Terminkarte ausgeblendet): eine zentrierte Spalte. */
.book-layout.single[b-i9wjhnhyz2] {
    grid-template-columns: minmax(0, 620px);
    justify-content: center;
}

.book-card[b-i9wjhnhyz2] {
    background: var(--s1);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    overflow: hidden;
    position: relative;
}

.book-card[b-i9wjhnhyz2]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--cy), var(--vi), transparent);
}

.book-head[b-i9wjhnhyz2] {
    padding: 22px 26px;
    border-bottom: 1px solid var(--bc);
}

.book-head-t[b-i9wjhnhyz2] {
    font-family: 'Orbitron', monospace;
    font-size: 14px;
    font-weight: 700;
    color: var(--hi);
    letter-spacing: .03em;
    margin-bottom: 5px;
}

.book-head-s[b-i9wjhnhyz2] {
    font-size: 12px;
    color: var(--lo);
}

.book-body[b-i9wjhnhyz2] {
    padding: 24px 26px;
}

.book-lbl[b-i9wjhnhyz2] {
    font-size: 10px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 14px;
    opacity: .8;
}

.date-row[b-i9wjhnhyz2] {
    display: flex;
    gap: 8px;
    margin-bottom: 24px;
    overflow-x: auto;
    padding-bottom: 4px;
}

.date-chip[b-i9wjhnhyz2] {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    padding: 12px 14px;
    text-align: center;
    cursor: pointer;
    min-width: 62px;
    color: inherit;
    font: inherit;
    transition: border-color .2s, background .2s;
}

.date-chip:hover[b-i9wjhnhyz2] {
    border-color: rgba(0, 230, 255, .3);
}

.date-chip.active[b-i9wjhnhyz2] {
    border-color: var(--cy);
    background: rgba(0, 230, 255, .08);
}

.date-chip.active .date-day[b-i9wjhnhyz2] {
    color: var(--cy);
}

.date-dow[b-i9wjhnhyz2] {
    font-size: 10px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--lo);
    margin-bottom: 4px;
}

.date-day[b-i9wjhnhyz2] {
    font-family: 'Orbitron', monospace;
    font-size: 18px;
    font-weight: 700;
    color: var(--hi);
    line-height: 1;
}

.date-mon[b-i9wjhnhyz2] {
    font-size: 9px;
    color: var(--dim);
    margin-top: 3px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.slots[b-i9wjhnhyz2] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.slot[b-i9wjhnhyz2] {
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: 8px;
    padding: 11px;
    text-align: center;
    cursor: pointer;
    font-family: 'Orbitron', monospace;
    font-size: 12px;
    font-weight: 700;
    color: var(--md);
    transition: border-color .2s, background .2s, color .2s, opacity .2s;
}

.slot:hover:not(:disabled)[b-i9wjhnhyz2] {
    border-color: rgba(0, 230, 255, .3);
    color: var(--cy);
}

.slot.active[b-i9wjhnhyz2] {
    border-color: var(--cy);
    background: rgba(0, 230, 255, .1);
    color: var(--cy);
}

/* Ohne gewählten Tag sind die Uhrzeiten noch nicht wählbar. */
.slot:disabled[b-i9wjhnhyz2] {
    opacity: .35;
    cursor: not-allowed;
}

.book-sum[b-i9wjhnhyz2] {
    margin-top: 22px;
    padding: 16px;
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    display: flex;
    align-items: center;
    gap: 12px;
    opacity: .5;
    transition: opacity .3s, border-color .3s;
}

.book-sum.ready[b-i9wjhnhyz2] {
    opacity: 1;
    border-color: rgba(0, 230, 255, .25);
}

.book-sum-ic[b-i9wjhnhyz2] {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: rgba(0, 230, 255, .08);
    display: grid;
    place-items: center;
    flex-shrink: 0;
}

.book-sum-ic svg[b-i9wjhnhyz2],
.alt-ic svg[b-i9wjhnhyz2] {
    width: 16px;
    height: 16px;
    stroke: var(--cy);
    fill: none;
    stroke-width: 1.5;
}

.book-sum-tx[b-i9wjhnhyz2] {
    font-size: 13px;
    color: var(--md);
}

.book-sum-tx strong[b-i9wjhnhyz2] {
    color: var(--cy);
    font-weight: 400;
}

.book-btn[b-i9wjhnhyz2] {
    width: 100%;
    margin-top: 18px;
    background: var(--cy);
    color: var(--c);
    font-family: 'Orbitron', monospace;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    border: none;
    border-radius: var(--r);
    padding: 14px;
    cursor: pointer;
    transition: background .2s, box-shadow .2s, opacity .2s;
    opacity: .5;
}

.book-btn:disabled[b-i9wjhnhyz2] {
    cursor: not-allowed;
}

.book-btn.ready[b-i9wjhnhyz2] {
    opacity: 1;
}

.book-btn.ready:hover[b-i9wjhnhyz2] {
    background: var(--cyi);
    box-shadow: var(--gc);
}

.book-note[b-i9wjhnhyz2] {
    font-size: 11px;
    color: var(--dim);
    text-align: center;
    margin-top: 10px;
    letter-spacing: .04em;
    line-height: 1.5;
}

.book-note a[b-i9wjhnhyz2] {
    color: var(--lo);
}

.cform[b-i9wjhnhyz2] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.cfield[b-i9wjhnhyz2] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cfield-lbl[b-i9wjhnhyz2] {
    font-size: 11px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--lo);
}

.cinput[b-i9wjhnhyz2],
.ctextarea[b-i9wjhnhyz2] {
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    padding: 12px 14px;
    color: var(--hi);
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    outline: none;
    transition: border-color .2s;
    width: 100%;
}

.cinput:focus[b-i9wjhnhyz2],
.ctextarea:focus[b-i9wjhnhyz2] {
    border-color: var(--cy);
}

.cinput.invalid[b-i9wjhnhyz2] {
    border-color: rgba(255, 107, 107, .6);
}

.cinput[b-i9wjhnhyz2]::placeholder,
.ctextarea[b-i9wjhnhyz2]::placeholder {
    color: var(--dim);
}

.ctextarea[b-i9wjhnhyz2] {
    resize: vertical;
    min-height: 90px;
}

.cfield-err[b-i9wjhnhyz2] {
    font-size: 12px;
    color: #FF6B6B;
}

.crow[b-i9wjhnhyz2] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.cform-sent[b-i9wjhnhyz2] {
    font-size: 13px;
    color: var(--md);
    line-height: 1.6;
    padding: 12px 14px;
    border: 1px solid rgba(0, 255, 156, .25);
    background: rgba(0, 255, 156, .05);
    border-radius: var(--r);
}

.cform-sent a[b-i9wjhnhyz2],
.bs-fallback a[b-i9wjhnhyz2],
.alt-val a[b-i9wjhnhyz2] {
    color: var(--cy);
    text-decoration: none;
}

.alt-c[b-i9wjhnhyz2] {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid var(--bc);
}

.alt-i[b-i9wjhnhyz2] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

.alt-ic[b-i9wjhnhyz2] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1px solid var(--bc);
    display: grid;
    place-items: center;
    flex-shrink: 0;
}

.alt-lbl[b-i9wjhnhyz2] {
    font-size: 10px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--lo);
    margin-bottom: 2px;
}

.alt-val[b-i9wjhnhyz2] {
    font-size: 14px;
    color: var(--hi);
}

.book-success[b-i9wjhnhyz2] {
    text-align: center;
    padding: 50px 26px;
}

.bs-ic[b-i9wjhnhyz2] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border: 1.5px solid var(--ok);
    display: grid;
    place-items: center;
    margin: 0 auto 20px;
    background: rgba(0, 255, 156, .06);
}

.bs-t[b-i9wjhnhyz2] {
    font-family: 'Orbitron', monospace;
    font-size: 16px;
    font-weight: 700;
    color: var(--hi);
    margin-bottom: 10px;
}

.bs-s[b-i9wjhnhyz2] {
    font-size: 14px;
    color: var(--lo);
    line-height: 1.65;
}

.bs-s strong[b-i9wjhnhyz2] {
    color: var(--cy);
    font-weight: 400;
}

.bs-fallback[b-i9wjhnhyz2] {
    margin-top: 16px;
    font-size: 12px;
    color: var(--dim);
    line-height: 1.6;
}

.bs-again[b-i9wjhnhyz2] {
    margin-top: 20px;
    background: none;
    border: 1px solid var(--bc);
    border-radius: var(--r);
    color: var(--lo);
    font-size: 12px;
    padding: 9px 18px;
    cursor: pointer;
    transition: color .2s, border-color .2s;
}

.bs-again:hover[b-i9wjhnhyz2] {
    color: var(--cy);
    border-color: rgba(0, 230, 255, .3);
}

@media (max-width: 900px) {
    .contact[b-i9wjhnhyz2] {
        padding: 96px 0;
    }

    .book-layout[b-i9wjhnhyz2] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .contact[b-i9wjhnhyz2] {
        padding: 72px 0;
    }

    .book-head[b-i9wjhnhyz2],
    .book-body[b-i9wjhnhyz2] {
        padding-left: 20px;
        padding-right: 20px;
    }

    .crow[b-i9wjhnhyz2] {
        grid-template-columns: 1fr;
    }
}
/* /Features/Landing/Sections/CtaSection.razor.rz.scp.css */
.cta-section[b-gl67ytqlki] {
    padding: 120px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.cta-section[b-gl67ytqlki]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: 300px;
    background: radial-gradient(ellipse, rgba(0, 230, 255, .05) 0%, transparent 70%);
    pointer-events: none;
}

.cta-eyebrow[b-gl67ytqlki] {
    font-size: 11px;
    font-weight: 400;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.cta-eyebrow[b-gl67ytqlki]::before,
.cta-eyebrow[b-gl67ytqlki]::after {
    content: '';
    width: 20px;
    height: 1px;
    background: var(--cy);
}

.cta-h[b-gl67ytqlki] {
    font-family: 'Orbitron', monospace;
    font-size: clamp(24px, 3.5vw, 46px);
    font-weight: 700;
    color: var(--hi);
    line-height: 1.12;
    margin-bottom: 18px;
}

.cta-h em[b-gl67ytqlki] {
    font-style: normal;
    color: var(--cy);
}

.cta-sub[b-gl67ytqlki] {
    font-size: 16px;
    font-weight: 300;
    color: var(--lo);
    max-width: 440px;
    margin: 0 auto 44px;
    line-height: 1.72;
}

.cta-btns[b-gl67ytqlki] {
    display: flex;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
}

@media (max-width: 900px) {
    .cta-section[b-gl67ytqlki] {
        padding: 96px 0;
    }
}

@media (max-width: 600px) {
    .cta-section[b-gl67ytqlki] {
        padding: 72px 0;
    }

    /* Shrink + cap the radial-glow pseudo so it doesn't overflow the
       narrow viewport (was 600x300 — would force horizontal scroll). */
    .cta-section[b-gl67ytqlki]::before {
        width: 90vw;
        max-width: 480px;
        height: 220px;
    }

    .cta-sub[b-gl67ytqlki] {
        margin-bottom: 32px;
    }

    .cta-btns[b-gl67ytqlki] {
        flex-direction: column;
        align-items: stretch;
        padding: 0 20px;
        gap: 10px;
    }

    .cta-btns .btn-main[b-gl67ytqlki],
    .cta-btns .btn-vi[b-gl67ytqlki] {
        text-align: center;
    }
}
/* /Features/Landing/Sections/FaqSection.razor.rz.scp.css */
/* ─── FAQ ─── */
.faq[b-ssxmsdnzib] {
    padding: 120px 0;
}

.faq-tabs-row[b-ssxmsdnzib] {
    display: flex;
    justify-content: center;
}

.faq-tabs[b-ssxmsdnzib] {
    display: flex;
    gap: 0;
    margin: 40px auto 36px;
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    padding: 4px;
    width: fit-content;
}

.faq-tab[b-ssxmsdnzib] {
    font-family: 'Orbitron', monospace;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .06em;
    color: var(--lo);
    background: transparent;
    border: none;
    border-radius: 7px;
    padding: 11px 26px;
    cursor: pointer;
    transition: color .2s, background .2s;
}

.faq-tab.active[b-ssxmsdnzib] {
    background: var(--s3);
    color: var(--cy);
    box-shadow: inset 0 0 0 1px var(--bc);
}

.faq-tab.vi.active[b-ssxmsdnzib] {
    color: var(--vi);
}

.faq-wrap[b-ssxmsdnzib] {
    max-width: 820px;
    margin: 0 auto;
}

.faq-item[b-ssxmsdnzib] {
    border: 1px solid var(--bc);
    border-radius: var(--r);
    margin-bottom: 12px;
    background: var(--s1);
    overflow: hidden;
    transition: border-color .2s;
}

.faq-item:hover[b-ssxmsdnzib] {
    border-color: rgba(0, 230, 255, .2);
}

.faq-q[b-ssxmsdnzib] {
    width: 100%;
    padding: 20px 24px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: none;
    border: none;
    text-align: left;
    color: inherit;
}

.faq-q:focus-visible[b-ssxmsdnzib] {
    outline: 1px solid var(--cy);
    outline-offset: -1px;
}

.faq-q-text[b-ssxmsdnzib] {
    font-family: 'Orbitron', monospace;
    font-size: 13.5px;
    font-weight: 700;
    color: var(--hi);
    letter-spacing: .02em;
    line-height: 1.4;
}

.faq-ic[b-ssxmsdnzib] {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1px solid var(--bc);
    display: grid;
    place-items: center;
    color: var(--cy);
    font-size: 14px;
    transition: transform .25s, background .2s;
}

.faq-item.open .faq-ic[b-ssxmsdnzib] {
    transform: rotate(45deg);
    background: rgba(0, 230, 255, .1);
}

.faq-vi .faq-ic[b-ssxmsdnzib] {
    color: var(--vi);
}

.faq-vi.open .faq-ic[b-ssxmsdnzib] {
    background: rgba(124, 77, 255, .12);
}

.faq-vi:hover[b-ssxmsdnzib] {
    border-color: rgba(124, 77, 255, .25);
}

/* Auf-/Zuklappen ohne JS: 0fr → 1fr animiert die echte Inhaltshöhe. */
.faq-a[b-ssxmsdnzib] {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows .3s ease;
}

.faq-item.open .faq-a[b-ssxmsdnzib] {
    grid-template-rows: 1fr;
}

.faq-a-clip[b-ssxmsdnzib] {
    overflow: hidden;
    min-height: 0;
}

.faq-a-in[b-ssxmsdnzib] {
    padding: 0 24px 22px;
    font-size: 13.5px;
    line-height: 1.72;
    color: var(--lo);
}

.faq-a-in[b-ssxmsdnzib]  strong {
    color: var(--md);
    font-weight: 400;
}

@media (max-width: 900px) {
    .faq[b-ssxmsdnzib] {
        padding: 96px 0;
    }
}

@media (max-width: 600px) {
    .faq[b-ssxmsdnzib] {
        padding: 72px 0;
    }

    .faq-tab[b-ssxmsdnzib] {
        padding: 10px 18px;
    }

    .faq-q[b-ssxmsdnzib] {
        padding: 18px;
    }

    .faq-a-in[b-ssxmsdnzib] {
        padding: 0 18px 20px;
    }
}
/* /Features/Landing/Sections/FounderSection.razor.rz.scp.css */
.founder[b-dnp94lfl23] {
    padding: 140px 0 120px;
    background: var(--s1);
    border-top: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
    position: relative;
    overflow: hidden;
}

.founder[b-dnp94lfl23]::before {
    content: '';
    position: absolute;
    top: 140px;
    right: 40px;
    width: 48px;
    height: 48px;
    border-top: 1px solid rgba(0, 230, 255, .18);
    border-right: 1px solid rgba(0, 230, 255, .18);
    pointer-events: none;
}

.founder[b-dnp94lfl23]::after {
    content: '';
    position: absolute;
    bottom: 120px;
    left: 40px;
    width: 48px;
    height: 48px;
    border-bottom: 1px solid rgba(0, 230, 255, .1);
    border-left: 1px solid rgba(0, 230, 255, .1);
    pointer-events: none;
}

/* quote block */
.quote-block[b-dnp94lfl23] {
    position: relative;
    max-width: 860px;
    margin: 0 auto 72px;
    text-align: center;
    padding: 0 20px;
}

.quote-mark[b-dnp94lfl23] {
    font-family: 'DM Serif Display', serif;
    font-size: 120px;
    line-height: .7;
    color: var(--cy);
    opacity: .1;
    position: absolute;
    top: -16px;
    left: 50%;
    transform: translateX(-50%);
    user-select: none;
    pointer-events: none;
}

.quote-text[b-dnp94lfl23] {
    font-family: 'DM Serif Display', serif;
    font-size: clamp(20px, 3vw, 36px);
    font-style: italic;
    line-height: 1.38;
    color: var(--hi);
    position: relative;
    z-index: 1;
    letter-spacing: -.01em;
}

.quote-text em[b-dnp94lfl23] {
    font-style: normal;
    color: var(--cy);
}

.quote-attr[b-dnp94lfl23] {
    margin-top: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.quote-attr-line[b-dnp94lfl23] {
    width: 32px;
    height: 1px;
    background: var(--bc);
}

.quote-attr-name[b-dnp94lfl23] {
    font-family: 'Orbitron', monospace;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .1em;
    color: var(--lo);
    text-transform: uppercase;
}

.founder-divider-line[b-dnp94lfl23] {
    height: 1px;
    background: var(--bc);
    margin-bottom: 64px;
    position: relative;
}

.founder-divider-line[b-dnp94lfl23]::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--cy);
    opacity: .35;
}

.founder-grid[b-dnp94lfl23] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 72px;
    align-items: start;
}

.founder-intro[b-dnp94lfl23] {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 40px;
}

.founder-avatar[b-dnp94lfl23] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    border: 1.5px solid var(--cy);
    background: var(--s2);
    display: grid;
    place-items: center;
    flex-shrink: 0;
    font-family: 'Orbitron', monospace;
    font-size: 16px;
    font-weight: 700;
    color: var(--cy);
    position: relative;
}

.founder-avatar[b-dnp94lfl23]::after {
    content: '';
    position: absolute;
    inset: -6px;
    border-radius: 50%;
    border: 1px solid rgba(0, 230, 255, .2);
    animation: ringpulse 3s ease-in-out infinite;
}

.founder-name[b-dnp94lfl23] {
    font-family: 'Orbitron', monospace;
    font-size: 17px;
    font-weight: 700;
    color: var(--hi);
    letter-spacing: .04em;
    line-height: 1.2;
}

.founder-role[b-dnp94lfl23] {
    font-size: 11px;
    font-weight: 400;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--cy);
    margin-top: 4px;
    opacity: .8;
}

.story-chapter[b-dnp94lfl23] {
    margin-bottom: 30px;
    padding-left: 20px;
    border-left: 1px solid var(--bc);
    position: relative;
}

.story-chapter[b-dnp94lfl23]::before {
    content: '';
    position: absolute;
    top: 6px;
    left: -3px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--cy);
    opacity: .5;
}

.story-chapter:last-of-type[b-dnp94lfl23] {
    margin-bottom: 0;
}

.chapter-label[b-dnp94lfl23] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 7px;
    opacity: .7;
}

.chapter-text[b-dnp94lfl23] {
    font-size: 15px;
    font-weight: 300;
    line-height: 1.78;
    color: var(--md);
}

.chapter-text strong[b-dnp94lfl23] {
    color: var(--hi);
    font-weight: 400;
}

.skills[b-dnp94lfl23] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 36px;
    padding-top: 28px;
    border-top: 1px solid var(--bc);
}

.skill[b-dnp94lfl23] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .09em;
    text-transform: uppercase;
    padding: 5px 13px;
    border-radius: 5px;
    color: var(--lo);
    background: var(--s2);
    border: 1px solid var(--bc);
    transition: border-color .2s, color .2s;
}

.skill:hover[b-dnp94lfl23] {
    border-color: rgba(0, 230, 255, .25);
    color: var(--cy);
}

.founder-cta[b-dnp94lfl23] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 32px;
    flex-wrap: wrap;
}

/* facts card */
.founder-facts[b-dnp94lfl23] {
    position: sticky;
    top: 100px;
}

.facts-card[b-dnp94lfl23] {
    background: var(--c);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    overflow: hidden;
    position: relative;
}

.facts-card[b-dnp94lfl23]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--cy), var(--vi), transparent);
}

.facts-header[b-dnp94lfl23] {
    padding: 22px 24px 18px;
    border-bottom: 1px solid var(--bc);
}

.facts-header-lbl[b-dnp94lfl23] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 4px;
    opacity: .7;
}

.facts-header-title[b-dnp94lfl23] {
    font-family: 'Orbitron', monospace;
    font-size: 13px;
    font-weight: 700;
    color: var(--hi);
    letter-spacing: .04em;
}

.kpi-grid-card[b-dnp94lfl23] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
}

.kpi-cell[b-dnp94lfl23] {
    padding: 18px 22px;
    border-right: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
    position: relative;
    overflow: hidden;
}

.kpi-cell:nth-child(even)[b-dnp94lfl23] {
    border-right: none;
}

.kpi-cell:nth-last-child(-n+2)[b-dnp94lfl23] {
    border-bottom: none;
}

.kpi-cell[b-dnp94lfl23]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1.5px;
}

.kpi-cell:nth-child(odd)[b-dnp94lfl23]::before {
    background: var(--cy);
    opacity: .5;
}

.kpi-cell:nth-child(even)[b-dnp94lfl23]::before {
    background: var(--vi);
    opacity: .6;
}

.kpi-cell-val[b-dnp94lfl23] {
    font-family: 'Orbitron', monospace;
    font-size: 24px;
    font-weight: 700;
    color: var(--cy);
    font-variant-numeric: tabular-nums;
    line-height: 1;
    margin-bottom: 5px;
}

.kpi-cell:nth-child(even) .kpi-cell-val[b-dnp94lfl23] {
    color: var(--vi);
}

.kpi-cell-lbl[b-dnp94lfl23] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--lo);
}

.tl-wrap[b-dnp94lfl23] {
    padding: 22px 24px;
    border-top: 1px solid var(--bc);
}

.tl-header[b-dnp94lfl23] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--lo);
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.tl-header[b-dnp94lfl23]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--bc);
}

.tl-items[b-dnp94lfl23] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.tl-item[b-dnp94lfl23] {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    position: relative;
    padding-bottom: 18px;
}

.tl-item:last-child[b-dnp94lfl23] {
    padding-bottom: 0;
}

.tl-item:not(:last-child)[b-dnp94lfl23]::after {
    content: '';
    position: absolute;
    top: 22px;
    left: 11px;
    width: 1px;
    bottom: 0;
    background: var(--bc);
}

.tl-dot-col[b-dnp94lfl23] {
    flex-shrink: 0;
    width: 22px;
    display: flex;
    justify-content: center;
    padding-top: 3px;
}

.tl-dot[b-dnp94lfl23] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--s2);
    border: 1.5px solid var(--dim);
    position: relative;
    z-index: 1;
    transition: border-color .3s, background .3s;
}

.tl-item.active .tl-dot[b-dnp94lfl23] {
    border-color: var(--cy);
    background: var(--cy);
    box-shadow: 0 0 8px rgba(0, 230, 255, .4);
}

.tl-year[b-dnp94lfl23] {
    font-family: 'Orbitron', monospace;
    font-size: 10px;
    font-weight: 700;
    color: var(--dim);
    letter-spacing: .08em;
    margin-bottom: 3px;
}

.tl-item.active .tl-year[b-dnp94lfl23] {
    color: var(--cy);
}

.tl-title-text[b-dnp94lfl23] {
    font-size: 13px;
    font-weight: 400;
    color: var(--md);
    line-height: 1.45;
}

.tl-item.active .tl-title-text[b-dnp94lfl23] {
    color: var(--hi);
}

.tl-sub[b-dnp94lfl23] {
    font-size: 11px;
    color: var(--dim);
    margin-top: 2px;
    line-height: 1.4;
}

.edu-note[b-dnp94lfl23] {
    margin-top: 12px;
    padding: 14px 18px;
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.edu-note-lbl[b-dnp94lfl23] {
    font-size: 10px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 3px;
    font-weight: 400;
    opacity: .7;
}

.edu-note-text[b-dnp94lfl23] {
    font-size: 12px;
    color: var(--lo);
    line-height: 1.55;
}

@media (max-width: 900px) {
    .founder[b-dnp94lfl23] {
        padding: 96px 0 80px;
    }

    .founder-grid[b-dnp94lfl23] {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .founder-facts[b-dnp94lfl23] {
        position: static;
    }

    /* Hide the decorative corner ticks — they get cropped on small screens */
    .founder[b-dnp94lfl23]::before,
    .founder[b-dnp94lfl23]::after {
        display: none;
    }
}

@media (max-width: 600px) {
    .founder[b-dnp94lfl23] {
        padding: 72px 0 64px;
    }

    .quote-block[b-dnp94lfl23] {
        padding: 0 8px;
        margin: 0 auto 56px;
    }

    .quote-mark[b-dnp94lfl23] {
        font-size: 80px;
        top: -6px;
    }

    .founder-divider-line[b-dnp94lfl23] {
        margin-bottom: 44px;
    }

    .founder-intro[b-dnp94lfl23] {
        gap: 16px;
        margin-bottom: 32px;
    }

    .founder-avatar[b-dnp94lfl23] {
        width: 52px;
        height: 52px;
        font-size: 14px;
    }

    .founder-name[b-dnp94lfl23] {
        font-size: 15px;
    }

    .chapter-text[b-dnp94lfl23] {
        font-size: 14px;
    }

    .skills[b-dnp94lfl23] {
        gap: 6px;
        margin-top: 28px;
        padding-top: 22px;
    }

    .facts-header[b-dnp94lfl23] {
        padding: 20px 20px 16px;
    }

    .kpi-cell[b-dnp94lfl23] {
        padding: 16px 18px;
    }

    .kpi-cell-val[b-dnp94lfl23] {
        font-size: 20px;
    }

    .tl-wrap[b-dnp94lfl23] {
        padding: 20px;
    }

    .tl-title-text[b-dnp94lfl23] {
        font-size: 12.5px;
    }

    .edu-note[b-dnp94lfl23] {
        padding: 12px 14px;
    }
}
/* /Features/Landing/Sections/FundingSection.razor.rz.scp.css */
/* ─── FÖRDERMITTEL ─── */
.funding[b-v1qevkciqs] {
    padding: 120px 0;
    background: var(--s1);
    border-top: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
}

.foe-colead[b-v1qevkciqs] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--ok);
    background: rgba(0, 255, 156, .06);
    border: 1px solid rgba(0, 255, 156, .2);
    border-radius: 5px;
    padding: 5px 12px;
    margin-bottom: 24px;
}

.foe-colead[b-v1qevkciqs]::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--ok);
}

.foe-grid[b-v1qevkciqs] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: 44px;
}

.prog-card[b-v1qevkciqs] {
    background: var(--s1);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    padding: 26px;
    transition: border-color .25s, transform .25s;
}

.prog-card:hover[b-v1qevkciqs] {
    border-color: rgba(0, 230, 255, .25);
    transform: translateY(-3px);
}

.prog-tag[b-v1qevkciqs] {
    font-family: 'Orbitron', monospace;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    color: var(--cy);
    margin-bottom: 14px;
    display: inline-block;
    padding: 3px 10px;
    border-radius: 4px;
    background: rgba(0, 230, 255, .07);
    border: 1px solid rgba(0, 230, 255, .18);
}

.prog-rate[b-v1qevkciqs] {
    font-family: 'Orbitron', monospace;
    font-size: 22px;
    font-weight: 900;
    color: var(--ok);
    line-height: 1;
}

.prog-rate-lbl[b-v1qevkciqs] {
    font-size: 11px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--lo);
    margin-top: 4px;
}

.prog-body[b-v1qevkciqs] {
    font-size: 13px;
    line-height: 1.66;
    color: var(--lo);
    margin-top: 14px;
}

.foe-steps[b-v1qevkciqs] {
    max-width: 760px;
    margin: 36px auto 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.foe-step[b-v1qevkciqs] {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    background: var(--s1);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    padding: 20px 24px;
}

.foe-step-n[b-v1qevkciqs] {
    font-family: 'Orbitron', monospace;
    font-size: 14px;
    font-weight: 700;
    color: var(--cy);
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 1px solid var(--bc);
    display: grid;
    place-items: center;
    background: var(--c);
}

.foe-step-title[b-v1qevkciqs] {
    font-family: 'Orbitron', monospace;
    font-size: 13px;
    color: var(--hi);
    font-weight: 700;
    margin-bottom: 5px;
}

.foe-step-body[b-v1qevkciqs] {
    font-size: 13px;
    color: var(--lo);
    line-height: 1.6;
}

.foe-note[b-v1qevkciqs] {
    font-size: 12px;
    color: var(--dim);
    margin: 20px auto 0;
    max-width: 760px;
    line-height: 1.6;
    text-align: center;
}

@media (max-width: 900px) {
    .funding[b-v1qevkciqs] {
        padding: 96px 0;
    }

    .foe-grid[b-v1qevkciqs] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .funding[b-v1qevkciqs] {
        padding: 72px 0;
    }

    .foe-step[b-v1qevkciqs] {
        padding: 18px;
        gap: 14px;
    }
}
/* /Features/Landing/Sections/HeroSection.razor.rz.scp.css */
/* ─── HERO ─── */
.hero[b-diipfy7rzo] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding: 150px 0 80px;
    position: relative;
    overflow: hidden;
}

.hero-grid[b-diipfy7rzo] {
    display: grid;
    grid-template-columns: 1fr 460px;
    gap: 64px;
    align-items: center;
    width: 100%;
}

/* decorative arcs */
.hero-arc[b-diipfy7rzo] {
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(0, 230, 255, .045);
    pointer-events: none;
}

.arc1[b-diipfy7rzo] {
    width: 800px;
    height: 800px;
    top: -200px;
    right: -220px;
}

.arc2[b-diipfy7rzo] {
    width: 1200px;
    height: 1200px;
    top: -400px;
    right: -420px;
    border-color: rgba(0, 230, 255, .022);
}

.arc3[b-diipfy7rzo] {
    width: 400px;
    height: 400px;
    top: 40px;
    right: 60px;
    border-color: rgba(124, 77, 255, .05);
}

/* corner ticks */
.hero[b-diipfy7rzo]::before {
    content: '';
    position: absolute;
    top: 110px;
    left: 40px;
    width: 40px;
    height: 40px;
    border-top: 1px solid rgba(0, 230, 255, .4);
    border-left: 1px solid rgba(0, 230, 255, .4);
}

.hero[b-diipfy7rzo]::after {
    content: '';
    position: absolute;
    bottom: 80px;
    right: 40px;
    width: 40px;
    height: 40px;
    border-bottom: 1px solid rgba(0, 230, 255, .15);
    border-right: 1px solid rgba(0, 230, 255, .15);
}

/* ─── HERO COPY ─── */
.hero-badge[b-diipfy7rzo] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 32px;
    opacity: 0;
    animation: fadeUp .6s ease forwards .15s;
}

.hero-badge > span[b-diipfy7rzo] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.hero-badge > span[b-diipfy7rzo]::before {
    content: '';
    width: 28px;
    height: 1px;
    background: var(--cy);
}

.hero-badge > span[b-diipfy7rzo]::after {
    content: '';
    width: 5px;
    height: 5px;
    border: 1px solid var(--cy);
    border-radius: 50%;
}

.hero-badge-pill[b-diipfy7rzo] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(124, 77, 255, .15);
    border: 1px solid rgba(124, 77, 255, .35);
    border-radius: 5px;
    padding: 2px 10px;
    font-size: 10px;
    font-weight: 600;
    color: var(--vi);
    letter-spacing: .1em;
    text-decoration: none;
    white-space: nowrap;
}

.hero h1[b-diipfy7rzo] {
    opacity: 0;
    animation: fadeUp .75s ease forwards .3s;
}

.hero-sub[b-diipfy7rzo] {
    font-size: 17px;
    font-weight: 300;
    line-height: 1.72;
    color: var(--md);
    max-width: 520px;
    margin-top: 22px;
    opacity: 0;
    animation: fadeUp .7s ease forwards .48s;
}

.hero-actions[b-diipfy7rzo] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 42px;
    flex-wrap: wrap;
    opacity: 0;
    animation: fadeUp .7s ease forwards .62s;
}

.hero-proof[b-diipfy7rzo] {
    display: flex;
    gap: 40px;
    margin-top: 60px;
    padding-top: 40px;
    border-top: 1px solid var(--bc);
    opacity: 0;
    animation: fadeUp .7s ease forwards .78s;
}

.proof-num[b-diipfy7rzo] {
    font-family: 'Orbitron', monospace;
    font-size: 28px;
    font-weight: 700;
    color: var(--cy);
    letter-spacing: -.01em;
}

.proof-lbl[b-diipfy7rzo] {
    font-size: 11px;
    font-weight: 400;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--lo);
    margin-top: 3px;
}

/* ─── HERO RetrofitMate mockup card ─── */
.hero-rm-panel[b-diipfy7rzo] {
    opacity: 0;
    animation: fadeLeft .9s ease forwards .7s;
}

.hero-rm-card[b-diipfy7rzo] {
    background: var(--s1);
    border: 1px solid rgba(124, 77, 255, .3);
    border-radius: var(--rl);
    overflow: hidden;
    position: relative;
}

.hero-rm-card[b-diipfy7rzo]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--vi), var(--cy), transparent);
}

.hero-rm-topbar[b-diipfy7rzo] {
    padding: 13px 18px;
    border-bottom: 1px solid rgba(124, 77, 255, .15);
    display: flex;
    align-items: center;
    gap: 8px;
}

.hero-rm-dot[b-diipfy7rzo] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
}

.hero-rm-title[b-diipfy7rzo] {
    font-family: 'Orbitron', monospace;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .14em;
    color: var(--lo);
    margin-left: 4px;
}

.hero-rm-status[b-diipfy7rzo] {
    margin-left: auto;
    font-size: 10px;
    color: var(--vi);
    display: flex;
    align-items: center;
    gap: 5px;
    letter-spacing: .08em;
}

.hero-rm-status[b-diipfy7rzo]::before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--vi);
    animation: pulse 2s infinite;
}

.hero-rm-body[b-diipfy7rzo] {
    padding: 18px;
}

.hero-rm-logo-row[b-diipfy7rzo] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(124, 77, 255, .12);
}

.hero-rm-logo-name[b-diipfy7rzo] {
    font-family: 'Orbitron', monospace;
    font-size: 13px;
    font-weight: 700;
    color: var(--hi);
    letter-spacing: .06em;
}

.hero-rm-logo-sub[b-diipfy7rzo] {
    font-size: 9px;
    color: var(--vi);
    letter-spacing: .1em;
    text-transform: uppercase;
    opacity: .8;
}

.hero-rm-modules[b-diipfy7rzo] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 12px;
}

.hero-rm-mod[b-diipfy7rzo] {
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: 8px;
    padding: 11px 13px;
    position: relative;
    overflow: hidden;
    transition: border-color .2s;
}

.hero-rm-mod:hover[b-diipfy7rzo] {
    border-color: rgba(124, 77, 255, .3);
}

.hero-rm-mod[b-diipfy7rzo]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1.5px;
}

.hero-rm-mod.vi[b-diipfy7rzo]::before {
    background: var(--vi);
    opacity: .7;
}

.hero-rm-mod.cy[b-diipfy7rzo]::before {
    background: var(--cy);
    opacity: .5;
}

.hero-rm-mod-lbl[b-diipfy7rzo] {
    font-size: 9px;
    font-weight: 400;
    letter-spacing: .1em;
    text-transform: uppercase;
    margin-bottom: 4px;
}

.hero-rm-mod.vi .hero-rm-mod-lbl[b-diipfy7rzo] {
    color: var(--vi);
    opacity: .8;
}

.hero-rm-mod.cy .hero-rm-mod-lbl[b-diipfy7rzo] {
    color: var(--cy);
    opacity: .7;
}

.hero-rm-mod-val[b-diipfy7rzo] {
    font-family: 'Orbitron', monospace;
    font-size: 12px;
    font-weight: 700;
    color: var(--hi);
    line-height: 1.2;
}

.hero-rm-progress[b-diipfy7rzo] {
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: 8px;
    padding: 13px;
}

.hero-rm-prog-lbl[b-diipfy7rzo] {
    font-size: 9px;
    font-weight: 400;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--vi);
    margin-bottom: 9px;
    opacity: .85;
}

.hero-rm-steps[b-diipfy7rzo] {
    display: flex;
    gap: 5px;
    align-items: center;
}

.hero-rm-step[b-diipfy7rzo] {
    flex: 1;
    height: 3px;
    border-radius: 2px;
    background: var(--s3);
}

.hero-rm-step.done[b-diipfy7rzo] {
    background: var(--vi);
}

.hero-rm-step.active[b-diipfy7rzo] {
    background: linear-gradient(90deg, var(--vi), var(--cy));
    animation: stepPulse 1.5s ease-in-out infinite;
}

.hero-rm-step-labels[b-diipfy7rzo] {
    display: flex;
    justify-content: space-between;
    margin-top: 5px;
    font-size: 9px;
    color: var(--dim);
}

@media (max-width: 1100px) {
    .hero-grid[b-diipfy7rzo] {
        grid-template-columns: 1fr 380px;
        gap: 40px;
    }

    .hero-proof[b-diipfy7rzo] {
        gap: 24px;
        flex-wrap: wrap;
    }
}

@media (max-width: 900px) {
    .hero[b-diipfy7rzo] {
        padding: 110px 0 60px;
        min-height: auto;
    }

    .hero-grid[b-diipfy7rzo] {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    /* Keep the mockup — it's a key selling point — just below the copy. */
    .hero-rm-panel[b-diipfy7rzo] {
        display: block;
        max-width: 460px;
        margin: 0 auto;
        width: 100%;
    }

    /* Re-trigger fadeUp instead of fadeLeft on mobile so it doesn't slide
       in from the right (would be cut off on a narrow viewport). */
    .hero-rm-panel[b-diipfy7rzo] {
        animation-name: fadeUp;
    }
}

@media (max-width: 600px) {
    .hero[b-diipfy7rzo] {
        padding: 96px 0 56px;
    }

    .hero-proof[b-diipfy7rzo] {
        gap: 18px;
        margin-top: 44px;
        padding-top: 28px;
    }

    .hero-sub[b-diipfy7rzo] {
        font-size: 15px;
        line-height: 1.65;
        margin-top: 18px;
    }

    .hero-actions[b-diipfy7rzo] {
        margin-top: 32px;
        gap: 12px;
    }

    .hero-badge[b-diipfy7rzo] {
        margin-bottom: 24px;
    }

    .proof-num[b-diipfy7rzo] {
        font-size: 22px;
    }

    .proof-lbl[b-diipfy7rzo] {
        font-size: 10px;
    }

    /* Hide decorative corner ticks (cropped on small screens) */
    .hero[b-diipfy7rzo]::before,
    .hero[b-diipfy7rzo]::after {
        display: none;
    }

    /* Soften the giant arcs so they don't dominate the small viewport */
    .arc1[b-diipfy7rzo] {
        width: 500px;
        height: 500px;
        top: -140px;
        right: -160px;
    }

    .arc2[b-diipfy7rzo] {
        width: 700px;
        height: 700px;
        top: -240px;
        right: -260px;
    }

    .arc3[b-diipfy7rzo] {
        display: none;
    }
}

@media (max-width: 400px) {
    .hero-rm-card[b-diipfy7rzo] {
        font-size: 11px;
    }

    .hero-rm-modules[b-diipfy7rzo] {
        gap: 6px;
    }

    .hero-rm-mod[b-diipfy7rzo] {
        padding: 9px 11px;
    }
}
/* /Features/Landing/Sections/HowSection.razor.rz.scp.css */
.how[b-w2ifl7trcs] {
    padding: 120px 0;
}

.steps[b-w2ifl7trcs] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    margin-top: 64px;
    position: relative;
}

.steps[b-w2ifl7trcs]::before {
    content: '';
    position: absolute;
    top: 28px;
    left: calc(12.5%);
    right: calc(12.5%);
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--cyd), var(--vi), transparent);
    opacity: .25;
}

.step[b-w2ifl7trcs] {
    text-align: center;
    padding: 0 20px;
    position: relative;
}

.step-ring[b-w2ifl7trcs] {
    width: 56px;
    height: 56px;
    margin: 0 auto 20px;
    border-radius: 50%;
    border: 1px solid var(--bc);
    display: grid;
    place-items: center;
    background: var(--s2);
    font-family: 'Orbitron', monospace;
    font-size: 14px;
    font-weight: 700;
    color: var(--cy);
    position: relative;
    z-index: 1;
}

.step-ring.violet[b-w2ifl7trcs] {
    border-color: rgba(124, 77, 255, .3);
    color: var(--vi);
}

.step-ring[b-w2ifl7trcs]::after {
    content: '';
    position: absolute;
    inset: -5px;
    border-radius: 50%;
    border: 1px solid rgba(0, 230, 255, .08);
}

.step-title[b-w2ifl7trcs] {
    font-family: 'Orbitron', monospace;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--hi);
    margin-bottom: 8px;
}

.step-body[b-w2ifl7trcs] {
    font-size: 13px;
    line-height: 1.65;
    color: var(--lo);
}

@media (max-width: 900px) {
    .how[b-w2ifl7trcs] {
        padding: 96px 0;
    }

    .steps[b-w2ifl7trcs] {
        grid-template-columns: 1fr 1fr;
        gap: 36px;
        margin-top: 48px;
    }

    .steps[b-w2ifl7trcs]::before {
        display: none;
    }
}

@media (max-width: 600px) {
    .how[b-w2ifl7trcs] {
        padding: 72px 0;
    }

    .steps[b-w2ifl7trcs] {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .step[b-w2ifl7trcs] {
        text-align: center;
        padding: 22px 18px;
        background: var(--s1);
        border: 1px solid var(--bc);
        border-radius: var(--rl);
    }

    .step-ring[b-w2ifl7trcs] {
        margin: 0 auto 14px;
    }
}
/* /Features/Landing/Sections/ImpressumSection.razor.rz.scp.css */
.impressum-section[b-xxtwk778e2] {
    padding: 80px 0;
    border-top: 1px solid var(--bc);
    position: relative;
    z-index: 1;
}

.impressum-grid[b-xxtwk778e2] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.impressum-card[b-xxtwk778e2] {
    background: var(--s1);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    padding: 24px;
}

.impressum-card-eye[b-xxtwk778e2] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 12px;
    opacity: .75;
}

.impressum-card-divider[b-xxtwk778e2] {
    height: 1px;
    background: var(--bc);
    margin-bottom: 12px;
}

.impressum-card-text[b-xxtwk778e2] {
    font-size: 13px;
    color: var(--lo);
    line-height: 1.9;
}

.impressum-card-text a[b-xxtwk778e2] {
    color: var(--cy);
    text-decoration: none;
}

.impressum-card-text a:hover[b-xxtwk778e2] {
    text-decoration: underline;
}

.impressum-card-text strong[b-xxtwk778e2] {
    color: var(--md);
    font-weight: 400;
}

.impressum-brand[b-xxtwk778e2] {
    color: var(--cy);
    opacity: .8;
}

@media (max-width: 900px) {
    .impressum-section[b-xxtwk778e2] {
        padding: 64px 0;
    }

    .impressum-grid[b-xxtwk778e2] {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}

@media (max-width: 600px) {
    .impressum-section[b-xxtwk778e2] {
        padding: 56px 0;
    }

    .impressum-card[b-xxtwk778e2] {
        padding: 22px 20px;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }

    .impressum-card-text[b-xxtwk778e2] {
        font-size: 12.5px;
    }
}
/* /Features/Landing/Sections/PaketSection.razor.rz.scp.css */
.paket-section[b-zsevj4rzm8] {
    padding: 120px 0;
    background: var(--s1);
    border-top: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
}

.paket-intro[b-zsevj4rzm8] {
    text-align: center;
    max-width: 640px;
    margin: 0 auto 64px;
}

.paket-grid[b-zsevj4rzm8] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    overflow: hidden;
}

.paket-col[b-zsevj4rzm8] {
    padding: 36px 32px;
    position: relative;
}

.paket-col:not(:last-child)[b-zsevj4rzm8] {
    border-right: 1px solid var(--bc);
}

.paket-col[b-zsevj4rzm8]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2.5px;
}

/* Modifier heißen col-* statt cyan/violet/ok: MudBlazor.min.css definiert global
   .cyan{background-color:#00bcd4} — das färbte die ganze erste Spalte. */
.paket-col.col-cyan[b-zsevj4rzm8]::before {
    background: var(--cy);
}

.paket-col.col-violet[b-zsevj4rzm8]::before {
    background: var(--vi);
}

.paket-col.col-ok[b-zsevj4rzm8]::before {
    background: var(--ok);
}

.paket-col-eye[b-zsevj4rzm8] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.paket-col.col-cyan .paket-col-eye[b-zsevj4rzm8] {
    color: var(--cy);
    opacity: .8;
}

.paket-col.col-violet .paket-col-eye[b-zsevj4rzm8] {
    color: var(--vi);
    opacity: .85;
}

.paket-col.col-ok .paket-col-eye[b-zsevj4rzm8] {
    color: var(--ok);
    opacity: .8;
}

.paket-col-title[b-zsevj4rzm8] {
    font-family: 'Orbitron', monospace;
    font-size: 15px;
    font-weight: 700;
    color: var(--hi);
    margin-bottom: 20px;
    letter-spacing: .03em;
}

.paket-items[b-zsevj4rzm8] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.paket-item[b-zsevj4rzm8] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.paket-item-dot[b-zsevj4rzm8] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 5px;
}

.paket-col.col-cyan .paket-item-dot[b-zsevj4rzm8] {
    background: var(--cy);
}

.paket-col.col-violet .paket-item-dot[b-zsevj4rzm8] {
    background: var(--vi);
}

.paket-col.col-ok .paket-item-dot[b-zsevj4rzm8] {
    background: var(--ok);
}

.paket-item-text[b-zsevj4rzm8] {
    font-size: 13px;
    font-weight: 300;
    line-height: 1.55;
    color: var(--md);
}

.paket-item-text strong[b-zsevj4rzm8] {
    color: var(--hi);
    font-weight: 400;
}

.paket-footer[b-zsevj4rzm8] {
    margin-top: 0;
    border: 1px solid var(--bc);
    border-top: none;
    border-radius: 0 0 var(--rl) var(--rl);
    padding: 20px 32px;
    background: var(--s2);
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.paket-footer-icon[b-zsevj4rzm8] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1px solid var(--bc);
    display: grid;
    place-items: center;
    flex-shrink: 0;
}

.paket-footer-icon svg[b-zsevj4rzm8] {
    width: 16px;
    height: 16px;
    stroke: var(--cy);
    fill: none;
    stroke-width: 1.5;
}

.paket-footer-text[b-zsevj4rzm8] {
    font-size: 13px;
    color: var(--md);
    line-height: 1.55;
}

.paket-footer-text strong[b-zsevj4rzm8] {
    color: var(--cy);
    font-weight: 400;
}

.paket-footer-cta[b-zsevj4rzm8] {
    margin-left: auto;
    flex-shrink: 0;
}

@media (max-width: 900px) {
    .paket-section[b-zsevj4rzm8] {
        padding: 96px 0;
    }

    .paket-grid[b-zsevj4rzm8] {
        grid-template-columns: 1fr;
    }

    .paket-col:not(:last-child)[b-zsevj4rzm8] {
        border-right: none;
        border-bottom: 1px solid var(--bc);
    }

    .paket-footer[b-zsevj4rzm8] {
        flex-direction: column;
        align-items: stretch;
        text-align: left;
    }

    .paket-footer-cta[b-zsevj4rzm8] {
        margin-left: 0;
    }
}

@media (max-width: 600px) {
    .paket-section[b-zsevj4rzm8] {
        padding: 72px 0;
    }

    .paket-intro[b-zsevj4rzm8] {
        margin: 0 auto 44px;
    }

    .paket-col[b-zsevj4rzm8] {
        padding: 28px 22px;
    }

    .paket-footer[b-zsevj4rzm8] {
        padding: 22px 22px;
    }
}
/* /Features/Landing/Sections/PrivacySection.razor.rz.scp.css */
/* ─── DATENSCHUTZ ─── (Karten-Optik wie ImpressumSection) */
.privacy-section[b-t0g51sy5n1] {
    padding: 80px 0;
    border-top: 1px solid var(--bc);
    position: relative;
    z-index: 1;
}

.privacy-grid[b-t0g51sy5n1] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    align-items: start;
}

.privacy-card[b-t0g51sy5n1] {
    background: var(--s1);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    padding: 24px;
}

.privacy-card-eye[b-t0g51sy5n1] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 12px;
    opacity: .75;
    display: flex;
    gap: 10px;
}

.privacy-num[b-t0g51sy5n1] {
    font-family: 'Orbitron', monospace;
    font-weight: 700;
    color: var(--dim);
}

.privacy-card-divider[b-t0g51sy5n1] {
    height: 1px;
    background: var(--bc);
    margin-bottom: 12px;
}

.privacy-card-text[b-t0g51sy5n1] {
    font-size: 13px;
    color: var(--lo);
    line-height: 1.75;
}

.privacy-card-text[b-t0g51sy5n1]  a {
    color: var(--cy);
    text-decoration: none;
}

.privacy-card-text[b-t0g51sy5n1]  strong {
    color: var(--md);
    font-weight: 400;
}

/* landing.css setzt list-style global zurück — hier sind echte Aufzählungen gewollt. */
.privacy-card-text[b-t0g51sy5n1]  ul {
    margin: 8px 0 0;
    padding-left: 18px;
    list-style: disc;
}

.privacy-card-text[b-t0g51sy5n1]  li {
    margin-bottom: 2px;
}

.privacy-card-text[b-t0g51sy5n1]  code {
    font-size: 12px;
    color: var(--md);
}

.privacy-updated[b-t0g51sy5n1] {
    margin-top: 24px;
    font-size: 12px;
    color: var(--dim);
}

@media (max-width: 900px) {
    .privacy-section[b-t0g51sy5n1] {
        padding: 64px 0;
    }

    .privacy-grid[b-t0g51sy5n1] {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}

@media (max-width: 600px) {
    .privacy-section[b-t0g51sy5n1] {
        padding: 56px 0;
    }

    .privacy-card[b-t0g51sy5n1] {
        padding: 22px 20px;
        overflow-wrap: break-word;
    }

    .privacy-card-text[b-t0g51sy5n1] {
        font-size: 12.5px;
    }
}
/* /Features/Landing/Sections/ProblemSection.razor.rz.scp.css */
.problem[b-xtkmqhuoha] {
    padding: 120px 0;
    background: var(--s1);
    border-top: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
}

.problem-grid[b-xtkmqhuoha] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    margin-top: 60px;
}

.prob-card[b-xtkmqhuoha] {
    padding: 32px 28px;
    border-radius: var(--rl);
    background: var(--c);
    border: 1px solid var(--bc);
    position: relative;
    overflow: hidden;
    transition: border-color .25s;
}

.prob-card[b-xtkmqhuoha]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, #FF6B6B, #FF3B30, transparent);
    opacity: 1;
}

.prob-card:hover[b-xtkmqhuoha] {
    border-color: rgba(255, 80, 80, .25);
}

.prob-num[b-xtkmqhuoha] {
    font-family: 'Orbitron', monospace;
    font-size: 36px;
    font-weight: 900;
    color: rgba(255, 107, 107, .3);
    line-height: 1;
    margin-bottom: 16px;
}

.prob-title[b-xtkmqhuoha] {
    font-family: 'Orbitron', monospace;
    font-size: 13px;
    font-weight: 600;
    color: var(--hi);
    letter-spacing: .05em;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.prob-body[b-xtkmqhuoha] {
    font-size: 14px;
    line-height: 1.68;
    color: var(--lo);
}

.prob-cta[b-xtkmqhuoha] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 16px;
    font-size: 12px;
    color: var(--cy);
    font-weight: 400;
}

.prob-cta[b-xtkmqhuoha]::before {
    content: '';
    width: 16px;
    height: 1px;
    background: var(--cy);
}

@media (max-width: 900px) {
    .problem[b-xtkmqhuoha] {
        padding: 96px 0;
    }

    .problem-grid[b-xtkmqhuoha] {
        grid-template-columns: 1fr;
        margin-top: 48px;
    }
}

@media (max-width: 600px) {
    .problem[b-xtkmqhuoha] {
        padding: 72px 0;
    }

    .prob-card[b-xtkmqhuoha] {
        padding: 28px 22px;
    }
}
/* /Features/Landing/Sections/ResultsSection.razor.rz.scp.css */
.results[b-lgejzj0xrl] {
    padding: 120px 0;
}

.results-grid[b-lgejzj0xrl] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
    margin-top: 60px;
}

.result-kpis[b-lgejzj0xrl] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.rk[b-lgejzj0xrl] {
    background: var(--s1);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    padding: 28px 24px;
    position: relative;
    overflow: hidden;
}

.rk[b-lgejzj0xrl]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1.5px;
}

.rk:nth-child(odd)[b-lgejzj0xrl]::before {
    background: var(--cy);
}

.rk:nth-child(even)[b-lgejzj0xrl]::before {
    background: var(--vi);
}

.rk-lbl[b-lgejzj0xrl] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--lo);
    margin-bottom: 10px;
}

.rk-val[b-lgejzj0xrl] {
    font-family: 'Orbitron', monospace;
    font-size: 32px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.rk:nth-child(odd) .rk-val[b-lgejzj0xrl] {
    color: var(--cy);
}

.rk:nth-child(even) .rk-val[b-lgejzj0xrl] {
    color: var(--vi);
}

.rk-sub[b-lgejzj0xrl] {
    font-size: 12px;
    color: var(--lo);
    margin-top: 6px;
}

.checklist[b-lgejzj0xrl] {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 28px;
    padding: 0;
}

.checklist li[b-lgejzj0xrl] {
    display: flex;
    gap: 12px;
    font-size: 14px;
    color: var(--md);
    line-height: 1.55;
}

.checklist li[b-lgejzj0xrl]::before {
    content: '\203A';
    color: var(--cy);
    font-size: 20px;
    line-height: 1;
    flex-shrink: 0;
    margin-top: -1px;
}

@media (max-width: 1100px) {
    .results-grid[b-lgejzj0xrl] {
        grid-template-columns: 1fr;
        gap: 48px;
    }
}

@media (max-width: 900px) {
    .results[b-lgejzj0xrl] {
        padding: 96px 0;
    }

    .results-grid[b-lgejzj0xrl] {
        margin-top: 44px;
    }
}

@media (max-width: 600px) {
    .results[b-lgejzj0xrl] {
        padding: 72px 0;
    }

    /* Keep 2×2 — looks better than a single column for KPI tiles. */
    .result-kpis[b-lgejzj0xrl] {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .rk[b-lgejzj0xrl] {
        padding: 22px 18px;
    }

    .rk-val[b-lgejzj0xrl] {
        font-size: 26px;
    }
}
/* /Features/Landing/Sections/RetrofitMateSection.razor.rz.scp.css */
.rm-section[b-duvnpo8xux] {
    padding: 140px 0;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.rm-section[b-duvnpo8xux]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 80% 60% at 60% 50%,
            rgba(124, 77, 255, .07) 0%, transparent 70%);
    pointer-events: none;
}

.rm-grid[b-duvnpo8xux] {
    display: grid;
    grid-template-columns: 1fr 480px;
    gap: 80px;
    align-items: center;
    margin-top: 64px;
}

.rm-eyebrow-row[b-duvnpo8xux] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.rm-badge[b-duvnpo8xux] {
    font-family: 'Orbitron', monospace;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--c);
    background: var(--vi);
    padding: 3px 10px;
    border-radius: 4px;
}

.rm-h[b-duvnpo8xux] {
    font-family: 'Orbitron', monospace;
    font-size: clamp(26px, 3.5vw, 44px);
    font-weight: 700;
    line-height: 1.1;
    color: var(--hi);
    letter-spacing: -.01em;
    margin-bottom: 16px;
}

.rm-h em[b-duvnpo8xux] {
    font-style: normal;
    color: var(--vi);
}

.rm-lead[b-duvnpo8xux] {
    font-size: 16px;
    font-weight: 300;
    line-height: 1.75;
    color: var(--md);
    max-width: 520px;
    margin-bottom: 36px;
}

.rm-features[b-duvnpo8xux] {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 40px;
}

.rm-feat[b-duvnpo8xux] {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 14px 0;
    border-bottom: 1px solid var(--bc);
}

.rm-feat:last-child[b-duvnpo8xux] {
    border-bottom: none;
}

.rm-feat-icon[b-duvnpo8xux] {
    width: 32px;
    height: 32px;
    border-radius: 7px;
    border: 1px solid rgba(124, 77, 255, .3);
    background: rgba(124, 77, 255, .08);
    display: grid;
    place-items: center;
    flex-shrink: 0;
    margin-top: 1px;
}

.rm-feat-icon svg[b-duvnpo8xux] {
    width: 14px;
    height: 14px;
    stroke: var(--vi);
    fill: none;
    stroke-width: 1.5;
}

.rm-feat-title[b-duvnpo8xux] {
    font-family: 'Orbitron', monospace;
    font-size: 12px;
    font-weight: 700;
    color: var(--hi);
    letter-spacing: .04em;
    text-transform: uppercase;
    margin-bottom: 4px;
}

.rm-feat-body[b-duvnpo8xux] {
    font-size: 13px;
    font-weight: 300;
    line-height: 1.6;
    color: var(--lo);
}

.rm-actions[b-duvnpo8xux] {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

/* right: app mockup */
.rm-mockup[b-duvnpo8xux] {
    position: relative;
}

.rm-card[b-duvnpo8xux] {
    background: var(--s1);
    border: 1px solid rgba(124, 77, 255, .3);
    border-radius: var(--rl);
    overflow: hidden;
    position: relative;
}

.rm-card[b-duvnpo8xux]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--vi), var(--cy), transparent);
}

.rm-card[b-duvnpo8xux]::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 300px;
    height: 300px;
    background: radial-gradient(ellipse, rgba(124, 77, 255, .12) 0%, transparent 70%);
    pointer-events: none;
    z-index: 0;
}

.rm-topbar[b-duvnpo8xux] {
    padding: 14px 20px;
    border-bottom: 1px solid rgba(124, 77, 255, .15);
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
    z-index: 1;
}

.rm-tb-dot[b-duvnpo8xux] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
}

.rm-tb-title[b-duvnpo8xux] {
    font-family: 'Orbitron', monospace;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .12em;
    color: var(--lo);
    margin-left: 6px;
}

.rm-tb-status[b-duvnpo8xux] {
    margin-left: auto;
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .1em;
    color: var(--vi);
    display: flex;
    align-items: center;
    gap: 5px;
}

.rm-tb-status[b-duvnpo8xux]::before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--vi);
    animation: pulse 2s infinite;
}

.rm-body[b-duvnpo8xux] {
    padding: 20px;
    position: relative;
    z-index: 1;
}

.rm-logo-wrap[b-duvnpo8xux] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.rm-logo-name[b-duvnpo8xux] {
    font-family: 'Orbitron', monospace;
    font-size: 14px;
    font-weight: 700;
    color: var(--hi);
    letter-spacing: .06em;
}

.rm-logo-sub[b-duvnpo8xux] {
    font-size: 10px;
    color: var(--vi);
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: 400;
    opacity: .8;
}

.rm-modules[b-duvnpo8xux] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 12px;
}

.rm-mod[b-duvnpo8xux] {
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    padding: 12px 14px;
    position: relative;
    overflow: hidden;
    transition: border-color .2s;
}

.rm-mod:hover[b-duvnpo8xux] {
    border-color: rgba(124, 77, 255, .3);
}

.rm-mod[b-duvnpo8xux]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1.5px;
}

.rm-mod.vi[b-duvnpo8xux]::before {
    background: var(--vi);
    opacity: .7;
}

.rm-mod.cy[b-duvnpo8xux]::before {
    background: var(--cy);
    opacity: .5;
}

.rm-mod-label[b-duvnpo8xux] {
    font-size: 9px;
    font-weight: 400;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--lo);
    margin-bottom: 5px;
}

.rm-mod-label.vi[b-duvnpo8xux] {
    color: var(--vi);
    opacity: .85;
}

.rm-mod-label.cy[b-duvnpo8xux] {
    color: var(--cy);
    opacity: .7;
}

.rm-mod-val[b-duvnpo8xux] {
    font-family: 'Orbitron', monospace;
    font-size: 13px;
    font-weight: 700;
    color: var(--hi);
    line-height: 1.2;
}

.rm-progress[b-duvnpo8xux] {
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    padding: 14px;
}

.rm-progress-label[b-duvnpo8xux] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--vi);
    margin-bottom: 10px;
    opacity: .85;
}

.rm-steps-row[b-duvnpo8xux] {
    display: flex;
    gap: 6px;
    align-items: center;
}

.rm-step-item[b-duvnpo8xux] {
    flex: 1;
    height: 4px;
    border-radius: 2px;
    background: var(--s3);
}

.rm-step-item.done[b-duvnpo8xux] {
    background: var(--vi);
}

.rm-step-item.active[b-duvnpo8xux] {
    background: linear-gradient(90deg, var(--vi), var(--cy));
    animation: stepPulse 1.5s ease-in-out infinite;
}

.rm-step-labels[b-duvnpo8xux] {
    display: flex;
    justify-content: space-between;
    margin-top: 6px;
    font-size: 9px;
    color: var(--dim);
    letter-spacing: .06em;
}

@media (max-width: 1100px) {
    .rm-grid[b-duvnpo8xux] {
        grid-template-columns: 1fr 400px;
        gap: 56px;
    }
}

@media (max-width: 900px) {
    .rm-section[b-duvnpo8xux] {
        padding: 96px 0;
    }

    .rm-grid[b-duvnpo8xux] {
        grid-template-columns: 1fr;
        gap: 56px;
        margin-top: 48px;
    }

    .rm-mockup[b-duvnpo8xux] {
        max-width: 480px;
        margin: 0 auto;
        width: 100%;
    }

    .rm-modules[b-duvnpo8xux] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 600px) {
    .rm-section[b-duvnpo8xux] {
        padding: 72px 0;
    }

    .rm-grid[b-duvnpo8xux] {
        gap: 40px;
        margin-top: 36px;
    }

    .rm-lead[b-duvnpo8xux] {
        font-size: 15px;
        margin-bottom: 28px;
    }

    .rm-feat[b-duvnpo8xux] {
        gap: 14px;
        padding: 12px 0;
    }

    .rm-feat-body[b-duvnpo8xux] {
        font-size: 12.5px;
    }

    .rm-actions[b-duvnpo8xux] {
        gap: 12px;
    }
}

@media (max-width: 400px) {
    .rm-modules[b-duvnpo8xux] {
        gap: 6px;
    }

    .rm-mod[b-duvnpo8xux] {
        padding: 10px 12px;
    }
}
/* /Features/Landing/Sections/RoiCalculatorSection.razor.rz.scp.css */
.roi-section[b-tppo3a43zb] {
    padding: 120px 0;
    background: var(--s1);
    border-top: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
    position: relative;
    z-index: 1;
}

/* Type switcher */
.type-switcher[b-tppo3a43zb] {
    display: flex;
    gap: 0;
    margin-bottom: 36px;
    background: var(--s2);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    padding: 4px;
    width: fit-content;
}

.type-btn[b-tppo3a43zb] {
    font-family: 'Orbitron', monospace;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--lo);
    background: transparent;
    border: none;
    border-radius: 8px;
    padding: 10px 24px;
    cursor: pointer;
    transition: color .2s, background .2s;
    white-space: nowrap;
    min-height: 40px;
    touch-action: manipulation;
}

.type-btn.active[b-tppo3a43zb] {
    background: var(--s3);
    color: var(--cy);
    box-shadow: inset 0 0 0 1px var(--bc);
}

/* Calculator card */
.calc-card[b-tppo3a43zb] {
    background: var(--c);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    overflow: hidden;
    position: relative;
}

.calc-card[b-tppo3a43zb]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--cy), var(--vi), transparent);
}

.calc-inner[b-tppo3a43zb] {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 0;
}

.calc-left[b-tppo3a43zb] {
    padding: 36px 36px;
    border-right: 1px solid var(--bc);
}

.input-group-title[b-tppo3a43zb] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 18px;
    opacity: .75;
    display: flex;
    align-items: center;
    gap: 8px;
}

.input-group-title[b-tppo3a43zb]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--bc);
}

.input-grid[b-tppo3a43zb] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-bottom: 28px;
}

.input-grid.single[b-tppo3a43zb] {
    grid-template-columns: 1fr;
}

.field[b-tppo3a43zb] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.field-label[b-tppo3a43zb] {
    font-size: 11px;
    font-weight: 400;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--lo);
}

.field-hint[b-tppo3a43zb] {
    font-size: 10px;
    color: var(--dim);
    margin-top: 3px;
    line-height: 1.4;
}

/* ─── MudBlazor input visual overrides ─────────────────────────────────
   We use Variant.Outlined for MudNumericField + MudSelect, then re-style
   the outline to match the dark/cyan brand. The ::deep rules pierce the
   scoped-CSS isolation barrier into the MudBlazor markup. */

[b-tppo3a43zb] .roi-mud-field {
    margin: 0 !important;
}

[b-tppo3a43zb] .roi-mud-field .mud-input.mud-input-outlined {
    background: var(--s2);
    border-radius: var(--r);
}

[b-tppo3a43zb] .roi-mud-field .mud-input-outlined .mud-input-outlined-border {
    border-color: var(--bc);
    border-radius: var(--r);
    border-width: 1px;
    transition: border-color .2s, box-shadow .2s;
}

[b-tppo3a43zb] .roi-mud-field .mud-input.mud-input-outlined:hover:not(.mud-disabled) .mud-input-outlined-border {
    border-color: rgba(0, 230, 255, .25);
}

[b-tppo3a43zb] .roi-mud-field .mud-input.mud-input-outlined.mud-input-focused .mud-input-outlined-border {
    border-color: var(--cy);
    border-width: 1px;
    box-shadow: 0 0 0 2px rgba(0, 230, 255, .08);
}

/* Hide the floating label — we render our own <div class="field-label"> above
   each input to match the rest of the section. */
[b-tppo3a43zb] .roi-mud-field .mud-input-label {
    display: none !important;
}

/* Numeric input + select-trigger text styling */
[b-tppo3a43zb] .roi-mud-field input,
[b-tppo3a43zb] .roi-mud-field .mud-select-input,
[b-tppo3a43zb] .roi-mud-field .mud-select-input input {
    color: var(--hi);
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    padding: 11px 12px;
    background: transparent;
    min-height: 44px;
}

/* Adornment text (kW, h/yr, €/kWh, pcs.) */
[b-tppo3a43zb] .roi-mud-field .mud-input-adornment .mud-typography {
    color: var(--dim);
    font-size: 11px;
    letter-spacing: .06em;
    white-space: nowrap;
}

/* Spin buttons */
[b-tppo3a43zb] .roi-mud-field .mud-button-root.mud-icon-button.mud-numeric-input-button .mud-icon-root {
    color: var(--lo);
}

[b-tppo3a43zb] .roi-mud-field .mud-button-root.mud-icon-button.mud-numeric-input-button:hover .mud-icon-root {
    color: var(--cy);
}

/* Select dropdown arrow */
[b-tppo3a43zb] .roi-mud-field .mud-select .mud-input-adornment-end .mud-icon-root {
    color: var(--lo);
}

/* Slider */
.slider-row[b-tppo3a43zb] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.slider-top[b-tppo3a43zb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.slider-val[b-tppo3a43zb] {
    font-family: 'Orbitron', monospace;
    font-size: 14px;
    font-weight: 700;
    color: var(--cy);
}

[b-tppo3a43zb] .roi-mud-slider {
    padding: 8px 0;
}

[b-tppo3a43zb] .roi-mud-slider .mud-slider-track {
    background: var(--s3);
    height: 4px;
    border-radius: 2px;
}

[b-tppo3a43zb] .roi-mud-slider .mud-slider-track-filled {
    background: var(--cy);
    height: 4px;
    border-radius: 2px;
}

[b-tppo3a43zb] .roi-mud-slider .mud-slider-thumb {
    background: var(--cy);
    border: 2px solid var(--c);
    box-shadow: 0 0 8px rgba(0, 230, 255, .4);
    width: 18px;
    height: 18px;
}

[b-tppo3a43zb] .roi-mud-slider .mud-slider-thumb:hover,
[b-tppo3a43zb] .roi-mud-slider .mud-slider-thumb:focus-visible {
    box-shadow: 0 0 14px rgba(0, 230, 255, .55);
}

/* Right panel */
.calc-right[b-tppo3a43zb] {
    padding: 32px 28px;
    background: var(--s2);
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.results-label-top[b-tppo3a43zb] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--cy);
    display: flex;
    align-items: center;
    gap: 8px;
    opacity: .75;
}

.results-label-top[b-tppo3a43zb]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--bc);
}

.main-result[b-tppo3a43zb] {
    text-align: center;
    padding: 22px 14px 18px;
    background: var(--c);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    position: relative;
    overflow: hidden;
}

.main-result[b-tppo3a43zb]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1.5px;
    background: var(--cy);
}

.main-result-label[b-tppo3a43zb] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--lo);
    margin-bottom: 6px;
}

.main-result-val[b-tppo3a43zb] {
    font-family: 'Orbitron', monospace;
    font-size: 44px;
    font-weight: 900;
    color: var(--cy);
    font-variant-numeric: tabular-nums;
    line-height: 1;
    transition: all .35s ease;
}

.main-result-sub[b-tppo3a43zb] {
    font-size: 11px;
    color: var(--lo);
    margin-top: 5px;
}

.kpi-mini-grid[b-tppo3a43zb] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.kpi-mini[b-tppo3a43zb] {
    background: var(--c);
    border: 1px solid var(--bc);
    border-radius: var(--r);
    padding: 12px;
    position: relative;
    overflow: hidden;
}

.kpi-mini[b-tppo3a43zb]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1.5px;
}

.kpi-mini:nth-child(odd)[b-tppo3a43zb]::before {
    background: var(--cy);
    opacity: .5;
}

.kpi-mini:nth-child(even)[b-tppo3a43zb]::before {
    background: var(--vi);
    opacity: .6;
}

.kpi-mini-val[b-tppo3a43zb] {
    font-family: 'Orbitron', monospace;
    font-size: 16px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    line-height: 1;
    margin-bottom: 4px;
    transition: all .3s;
}

.kpi-mini:nth-child(odd) .kpi-mini-val[b-tppo3a43zb] {
    color: var(--cy);
}

.kpi-mini:nth-child(even) .kpi-mini-val[b-tppo3a43zb] {
    color: var(--vi);
}

.kpi-mini-lbl[b-tppo3a43zb] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--lo);
}

.foerder-hint[b-tppo3a43zb] {
    background: rgba(0, 255, 156, .05);
    border: 1px solid rgba(0, 255, 156, .14);
    border-radius: var(--r);
    padding: 10px 12px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

.foerder-hint-text[b-tppo3a43zb] {
    font-size: 11px;
    color: var(--lo);
    line-height: 1.55;
}

.foerder-hint-text strong[b-tppo3a43zb] {
    color: var(--ok);
    font-weight: 400;
}

.roi-disclaimer[b-tppo3a43zb] {
    font-size: 11px;
    color: var(--dim);
    line-height: 1.5;
    padding-top: 8px;
    border-top: 1px solid var(--bc);
}

.roi-cta-btn[b-tppo3a43zb] {
    background: var(--cy);
    color: var(--c);
    font-family: 'Orbitron', monospace;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    border: none;
    border-radius: var(--r);
    padding: 13px;
    cursor: pointer;
    width: 100%;
    margin-top: 4px;
    min-height: 44px;
    transition: background .2s, box-shadow .2s;
    touch-action: manipulation;
}

.roi-cta-btn:hover[b-tppo3a43zb] {
    background: var(--cyi);
    box-shadow: var(--gc);
}

.roi-cta-block[b-tppo3a43zb] {
    background: var(--c);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    padding: 32px 36px;
    margin-top: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    flex-wrap: wrap;
    position: relative;
    overflow: hidden;
}

.roi-cta-block[b-tppo3a43zb]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1.5px;
    background: linear-gradient(90deg, var(--cy), var(--vi), transparent);
}

.roi-cta-block-title[b-tppo3a43zb] {
    font-family: 'Orbitron', monospace;
    font-size: 16px;
    font-weight: 700;
    color: var(--hi);
    margin-bottom: 6px;
}

.roi-cta-block-sub[b-tppo3a43zb] {
    font-size: 13px;
    font-weight: 300;
    color: var(--lo);
    line-height: 1.65;
    max-width: 460px;
}

/* ─── RESPONSIVE ─── */
@media (max-width: 900px) {
    .calc-inner[b-tppo3a43zb] {
        /* Mobile: result panel ABOVE inputs so the user sees the live result
           while typing instead of scrolling down. */
        grid-template-columns: 1fr;
        grid-template-rows: auto auto;
    }

    .calc-right[b-tppo3a43zb] {
        order: 1;
    }

    .calc-left[b-tppo3a43zb] {
        order: 2;
        border-right: none;
        border-top: 1px solid var(--bc);
    }

    .roi-cta-block[b-tppo3a43zb] {
        flex-direction: column;
        align-items: stretch;
        gap: 20px;
        padding: 28px 24px;
    }

    .roi-cta-block-sub[b-tppo3a43zb] {
        max-width: none;
    }
}

@media (max-width: 600px) {
    .roi-section[b-tppo3a43zb] {
        padding: 80px 0;
    }

    .calc-left[b-tppo3a43zb] {
        padding: 24px 18px;
    }

    .calc-right[b-tppo3a43zb] {
        padding: 24px 18px;
    }

    .input-grid[b-tppo3a43zb] {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-bottom: 22px;
    }

    .type-switcher[b-tppo3a43zb] {
        width: 100%;
    }

    .type-btn[b-tppo3a43zb] {
        flex: 1;
        padding: 12px 16px;
        font-size: 10px;
    }

    /* Bigger slider thumb on touch */
    [b-tppo3a43zb] .roi-mud-slider .mud-slider-thumb {
        width: 24px;
        height: 24px;
    }

    .main-result-val[b-tppo3a43zb] {
        font-size: 36px;
    }

    .roi-cta-block-title[b-tppo3a43zb] {
        font-size: 14px;
    }
}
/* /Features/Landing/Sections/StoriesSection.razor.rz.scp.css */
.stories[b-76ed0os899] {
    padding: 100px 0;
    background: var(--s1);
    border-top: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
}

.stories-header[b-76ed0os899] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 52px;
    flex-wrap: wrap;
}

.stories-note[b-76ed0os899] {
    font-size: 12px;
    color: var(--dim);
    font-style: italic;
    padding-bottom: 4px;
    border-bottom: 1px solid var(--bc);
    white-space: nowrap;
}

.stories-grid[b-76ed0os899] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.story-card[b-76ed0os899] {
    background: var(--c);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    overflow: hidden;
    transition: border-color .25s, transform .25s, box-shadow .25s;
}

.story-card:hover[b-76ed0os899] {
    border-color: rgba(0, 230, 255, .25);
    transform: translateY(-3px);
    box-shadow: var(--gc);
}

.story-bar[b-76ed0os899] {
    height: 3px;
    width: 100%;
}

.story-head[b-76ed0os899] {
    padding: 22px 24px 16px;
    border-bottom: 1px solid var(--bc);
}

.story-segment[b-76ed0os899] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 6px;
}

.story-title[b-76ed0os899] {
    font-family: 'Orbitron', monospace;
    font-size: 14px;
    font-weight: 700;
    color: var(--hi);
    line-height: 1.3;
    margin-bottom: 3px;
}

.story-location[b-76ed0os899] {
    font-size: 12px;
    color: var(--lo);
}

.story-kpis[b-76ed0os899] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
}

.story-kpi[b-76ed0os899] {
    padding: 14px 16px;
    border-right: 1px solid var(--bc);
    position: relative;
    overflow: hidden;
}

.story-kpi:last-child[b-76ed0os899] {
    border-right: none;
}

.story-kpi[b-76ed0os899]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--bc);
}

.story-kpi-val[b-76ed0os899] {
    font-family: 'Orbitron', monospace;
    font-size: 18px;
    font-weight: 700;
    color: var(--cy);
    font-variant-numeric: tabular-nums;
    line-height: 1;
    margin-bottom: 3px;
}

.story-kpi-lbl[b-76ed0os899] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--lo);
}

.story-foot[b-76ed0os899] {
    padding: 14px 24px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.story-tag[b-76ed0os899] {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 3px 9px;
    border-radius: 4px;
    color: var(--lo);
    background: var(--s2);
    border: 1px solid var(--bc);
}

@media (max-width: 900px) {
    .stories[b-76ed0os899] {
        padding: 80px 0;
    }

    .stories-grid[b-76ed0os899] {
        grid-template-columns: 1fr;
    }

    .stories-header[b-76ed0os899] {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
        margin-bottom: 36px;
    }

    .stories-note[b-76ed0os899] {
        white-space: normal;
    }
}

@media (max-width: 600px) {
    .stories[b-76ed0os899] {
        padding: 64px 0;
    }

    .story-head[b-76ed0os899] {
        padding: 20px 20px 14px;
    }

    .story-kpi[b-76ed0os899] {
        padding: 12px 14px;
    }

    .story-kpi-val[b-76ed0os899] {
        font-size: 16px;
    }
}
/* /Features/Landing/Sections/WhoSection.razor.rz.scp.css */
.who[b-00eck8bfot] {
    padding: 120px 0;
    background: var(--s1);
    border-top: 1px solid var(--bc);
    border-bottom: 1px solid var(--bc);
}

.who-cards[b-00eck8bfot] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-top: 56px;
    align-items: start;
}

.who-card[b-00eck8bfot] {
    background: var(--c);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    padding: 28px 22px;
    transition: border-color .25s, transform .25s;
}

.who-card:hover[b-00eck8bfot] {
    border-color: rgba(0, 230, 255, .25);
    transform: translateY(-3px);
}

/* 4. Karte (Investoren) — violett abgesetzt wie in der Spec. */
.who-card-invest[b-00eck8bfot] {
    border-color: rgba(124, 77, 255, .25);
    background: linear-gradient(160deg, rgba(124, 77, 255, .05), transparent);
}

.who-card-invest:hover[b-00eck8bfot] {
    border-color: rgba(124, 77, 255, .4);
}

.who-chip[b-00eck8bfot] {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--cy);
    background: rgba(0, 230, 255, .07);
    border: 1px solid rgba(0, 230, 255, .18);
    display: inline-block;
    padding: 3px 10px;
    border-radius: 4px;
    margin-bottom: 16px;
}

.who-chip-vi[b-00eck8bfot] {
    color: var(--vi);
    background: rgba(124, 77, 255, .1);
    border-color: rgba(124, 77, 255, .25);
}

.who-title[b-00eck8bfot] {
    font-family: 'Orbitron', monospace;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--hi);
    margin-bottom: 10px;
}

.who-body[b-00eck8bfot] {
    font-size: 13px;
    line-height: 1.68;
    color: var(--lo);
}

.who-pain[b-00eck8bfot] {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--bc);
    font-size: 12px;
    color: var(--lo);
    line-height: 1.6;
}

.who-pain strong[b-00eck8bfot] {
    color: var(--cy);
    font-weight: 400;
}

.who-pain a[b-00eck8bfot] {
    color: var(--vi);
    text-decoration: none;
}

.who-pain a:hover[b-00eck8bfot] {
    text-decoration: underline;
}

@media (max-width: 1100px) {
    .who-cards[b-00eck8bfot] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 900px) {
    .who[b-00eck8bfot] {
        padding: 96px 0;
    }

    .who-cards[b-00eck8bfot] {
        grid-template-columns: 1fr;
        margin-top: 44px;
    }
}

@media (max-width: 600px) {
    .who[b-00eck8bfot] {
        padding: 72px 0;
    }

    .who-card[b-00eck8bfot] {
        padding: 26px 22px;
    }
}
/* /Features/Landing/Sections/WhySection.razor.rz.scp.css */
.why[b-b7ttcg5snl] {
    padding: 120px 0;
}

.why-grid[b-b7ttcg5snl] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.why-card[b-b7ttcg5snl] {
    background: var(--s1);
    border: 1px solid var(--bc);
    border-radius: var(--rl);
    padding: 32px;
    transition: border-color .25s, box-shadow .25s;
}

.why-card:hover[b-b7ttcg5snl] {
    border-color: rgba(0, 230, 255, .22);
    box-shadow: var(--gc);
}

.why-card.full[b-b7ttcg5snl] {
    grid-column: span 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
}

.why-icon[b-b7ttcg5snl] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    border: 1px solid var(--bc);
    display: grid;
    place-items: center;
    margin-bottom: 18px;
}

.why-icon svg[b-b7ttcg5snl] {
    width: 18px;
    height: 18px;
    stroke: var(--cy);
    fill: none;
    stroke-width: 1.5;
}

.why-title[b-b7ttcg5snl] {
    font-family: 'Orbitron', monospace;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--hi);
    margin-bottom: 10px;
}

.why-body[b-b7ttcg5snl] {
    font-size: 14px;
    line-height: 1.68;
    color: var(--lo);
}

.why-tag[b-b7ttcg5snl] {
    display: inline-block;
    margin-top: 14px;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
    padding: 3px 10px;
    border-radius: 4px;
    color: var(--cy);
    background: rgba(0, 230, 255, .07);
    border: 1px solid rgba(0, 230, 255, .15);
}

.why-regulatory[b-b7ttcg5snl] {
    background: var(--s2);
    border-radius: var(--r);
    padding: 24px;
    border: 1px solid var(--bc);
}

.why-reg-label[b-b7ttcg5snl] {
    font-size: 11px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--cy);
    margin-bottom: 14px;
    font-weight: 400;
}

.why-reg-list[b-b7ttcg5snl] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.why-reg-item[b-b7ttcg5snl] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.why-reg-dot[b-b7ttcg5snl] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
}

.why-reg-dot.cyan[b-b7ttcg5snl] {
    background: var(--cy);
}

.why-reg-dot.violet[b-b7ttcg5snl] {
    background: var(--vi);
}

.why-reg-text[b-b7ttcg5snl] {
    font-size: 13px;
    color: var(--md);
}

@media (max-width: 900px) {
    .why[b-b7ttcg5snl] {
        padding: 96px 0;
    }

    .why-grid[b-b7ttcg5snl] {
        grid-template-columns: 1fr;
    }

    .why-card.full[b-b7ttcg5snl] {
        grid-column: auto;
        grid-template-columns: 1fr;
        gap: 28px;
    }
}

@media (max-width: 600px) {
    .why[b-b7ttcg5snl] {
        padding: 72px 0;
    }

    .why-card[b-b7ttcg5snl] {
        padding: 26px 22px;
    }

    .why-regulatory[b-b7ttcg5snl] {
        padding: 18px;
    }

    .why-reg-text[b-b7ttcg5snl] {
        font-size: 12.5px;
    }
}
