/* Premium Deluxe — page styles (isolated copy from shop-app + default theme.css, scoped to .pd-body) */


.shop-header-search {
    max-width: 36rem;
    flex: 1 1 10rem;
    min-width: 5rem;
}


.shop-account-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    max-width: 100%;
}


.shop-account-toggle__label {
    min-width: 0;
    flex: 0 1 auto;
    max-width: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: start;
    line-height: 1.2;
}


.shop-account-avatar {
    width: 1.45rem;
    height: 1.45rem;
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 999px;
    object-fit: cover;
    background: rgba(255, 255, 255, 0.18);
}


@media (min-width: 1200px) {
    .shop-header-search {
        flex: 2 1 22rem !important;
        max-width: min(42rem, 48vw);
    }
}


@media (max-width: 1199.98px) {
    .shop-header-search {
        max-width: 100%;
    }
}


[data-bs-theme="dark"] .shop-navbar .shop-header-search .input-group-text,
[data-bs-theme="dark"] .shop-navbar .shop-header-search .form-control {
    color: #cbd5e1;
    background-color: #0b1220;
    border-color: rgba(148, 163, 184, 0.28);
}


[data-bs-theme="dark"] .shop-navbar .shop-header-search .form-control::placeholder {
    color: #7b8798;
    opacity: 1;
}


[data-bs-theme="dark"] .shop-navbar .shop-header-search .form-control:focus {
    color: #e2e8f0;
    background-color: #0f172a;
    border-color: rgba(59, 130, 246, 0.65);
    box-shadow: 0 0 0 0.15rem rgba(59, 130, 246, 0.22);
}


[data-bs-theme="dark"] .shop-footer {
    color: #9ca3af !important;
    background-color: #2b3038 !important;
    border-top-color: rgba(255, 255, 255, 0.08) !important;
}


[data-bs-theme="dark"] .shop-footer .text-body,
[data-bs-theme="dark"] .shop-footer h2,
[data-bs-theme="dark"] .shop-footer h3 {
    color: #e5e7eb !important;
}


[data-bs-theme="dark"] .shop-footer .text-body-secondary,
[data-bs-theme="dark"] .shop-footer .text-body-tertiary,
[data-bs-theme="dark"] .shop-footer .cms-html,
[data-bs-theme="dark"] .shop-footer p,
[data-bs-theme="dark"] .shop-footer span {
    color: #9ca3af !important;
}


[data-bs-theme="dark"] .shop-footer .link-secondary,
[data-bs-theme="dark"] .shop-footer .btn-link.link-secondary {
    color: #aeb6c2 !important;
}


[data-bs-theme="dark"] .shop-footer .link-secondary:hover,
[data-bs-theme="dark"] .shop-footer .link-secondary:focus-visible,
[data-bs-theme="dark"] .shop-footer .btn-link.link-secondary:hover,
[data-bs-theme="dark"] .shop-footer .btn-link.link-secondary:focus-visible {
    color: #e5e7eb !important;
}


[data-bs-theme="dark"] .shop-footer .bg-body-tertiary {
    background-color: #23282f !important;
    color: #9ca3af !important;
}


.shop-shell-content-row--ad-grid > .shop-ad-rail--left {
    grid-column: 1;
}


.shop-shell-content-row--ad-grid > .shop-ad-rail--right {
    grid-column: 3;
}


@media (min-width: 992px) {
    .shop-shell-content-row--ad-grid > .shop-ad-rail {
        justify-self: center;
        width: min(var(--shop-ad-rail-width), 100%);
        max-width: var(--shop-ad-rail-width);
        position: sticky;
        top: calc(var(--shop-app-chrome-height, 7rem) + 0.75rem);
        align-self: start;
        z-index: 1;
    }
}


.shop-ad-rail .shop-advertising-zone {
    margin-block: 0;
}


.shop-ad-rail--left {
    padding-left: 0.35rem;
    padding-right: 0.25rem;
}


.shop-ad-rail--right {
    padding-right: 0.35rem;
    padding-left: 0.25rem;
}


.product-premium-header,
.product-price-panel,
.product-sales-stock,
.product-digital-panel,
.product-variant-panel {
    border: 1px solid var(--bs-border-color);
    border-radius: 1.1rem;
    background-color: color-mix(in srgb, var(--bs-card-bg) 88%, var(--bs-body-bg));
    padding: 1rem;
}


.product-profile-hero .product-sales-stock {
    margin-top: 1.25rem;
}

.product-profile-hero .product-post-gallery-spaced {
    margin-top: 1.25rem;
}


.shop-product-card {
    transition: transform 0.18s ease, box-shadow 0.18s ease;
    min-width: 0;
}


:root[data-theme="light"] .shop-product-card,
:root[data-bs-theme="light"] .shop-product-card,
html.theme-light .shop-product-card {
    background-color: #ffffff;
    color: #050f1c;
}


:root[data-theme="light"] .shop-product-card .card-body,
:root[data-bs-theme="light"] .shop-product-card .card-body,
html.theme-light .shop-product-card .card-body {
    background-color: #ffffff !important;
    color: #050f1c !important;
}


:root[data-theme="light"] .shop-product-card .text-body,
:root[data-bs-theme="light"] .shop-product-card .text-body,
html.theme-light .shop-product-card .text-body {
    color: #0f172a !important;
}


:root[data-theme="light"] .shop-product-card .text-body-secondary,
:root[data-bs-theme="light"] .shop-product-card .text-body-secondary,
html.theme-light .shop-product-card .text-body-secondary {
    color: #475569 !important;
}


:root[data-theme="dark"] .shop-product-card,
:root[data-bs-theme="dark"] .shop-product-card,
html.theme-dark .shop-product-card {
    background-color: #050f1c;
    color: #e2e8f0;
}


:root[data-theme="dark"] .shop-product-card .card-body,
:root[data-bs-theme="dark"] .shop-product-card .card-body,
html.theme-dark .shop-product-card .card-body {
    background-color: #050f1c !important;
    color: #e2e8f0 !important;
}


:root[data-theme="dark"] .shop-product-card .text-body,
:root[data-bs-theme="dark"] .shop-product-card .text-body,
html.theme-dark .shop-product-card .text-body {
    color: #e2e8f0 !important;
}


:root[data-theme="dark"] .shop-product-card .text-body-secondary,
:root[data-bs-theme="dark"] .shop-product-card .text-body-secondary,
html.theme-dark .shop-product-card .text-body-secondary {
    color: #cbd5e1 !important;
}


.shop-product-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 1rem 2.25rem rgba(15, 23, 42, 0.14) !important;
}


.shop-ad-banner {
    overflow: hidden;
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    background-color: var(--bs-card-bg);
    box-shadow: 0 0.75rem 1.8rem rgba(15, 23, 42, 0.08);
}


.product-premium-meta {
    padding: 0.9rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    background-color: color-mix(in srgb, var(--bs-card-bg) 82%, var(--bs-primary-bg-subtle));
}


@media (max-width: 991.98px) {
    .shop-navbar-inner {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        column-gap: 0.5rem;
    }

    .shop-navbar .navbar-brand {
        order: 1;
        flex: 0 1 auto;
        max-width: calc(100% - 3.25rem);
    }

    .shop-navbar-toggler {
        order: 2;
        margin-left: auto;
    }

    .shop-header-search--navbar {
        order: 3;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100% !important;
        min-width: 0;
        margin: 0.35rem 0 0.15rem !important;
    }

    .shop-header-search--navbar .input-group {
        width: 100%;
    }

    .shop-header-search--navbar .form-control {
        font-size: 16px;
    }

    .shop-header-collapse {
        order: 4;
        flex: 0 0 100%;
        width: 100%;
    }

    .shop-header-collapse.navbar-collapse.show {
        display: flex !important;
        flex-direction: column;
        align-items: stretch;
        padding-top: 0.15rem;
    }

    .shop-navbar-primary > .nav-item.dropdown-mega {
        position: static;
        width: 100%;
    }

    .shop-navbar-primary > .nav-item.dropdown-mega > .nav-link.dropdown-toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
    }

    .shop-navbar .dropdown-mega .dropdown-menu.shop-mega {
        position: static !important;
        inset: auto !important;
        transform: none !important;
        float: none;
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 0.35rem !important;
        padding: 0.75rem !important;
        border-radius: 0.5rem;
        max-height: min(65vh, 24rem);
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.14);
    }

    .shop-mega .container-fluid {
        padding-left: 0;
        padding-right: 0;
    }

    .shop-mega .col-lg-4 {
        display: none;
    }

    .shop-mega-cat-grid > .col {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .shop-mega-link {
        word-break: break-word;
    }

    .shop-header-actions {
        justify-content: flex-start;
        width: 100%;
        padding-top: 0.35rem;
        border-top: 1px solid rgba(255, 255, 255, 0.12);
        margin-top: 0.35rem;
    }

    .shop-live-search-dropdown.shop-live-search-dropdown--header-wide.is-open {
        border-radius: 0.65rem;
    }

    .shop-live-search-dropdown--xonic .shop-live-search-card {
        flex: 0 0 clamp(104px, 30vw, 132px);
    }

    .shop-topbar-usp span:nth-child(2) {
        display: none;
    }
}


@media (min-width: 992px) {
    .shop-navbar-inner {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        column-gap: clamp(0.35rem, 1.1vw, 1rem);
    }

    .shop-navbar .shop-header-search--navbar {
        flex: 1 1 20rem;
        min-width: 8rem;
        max-width: min(52rem, 58vw);
        width: auto;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        overflow: visible;
    }

    .shop-navbar .shop-header-search--navbar .input-group {
        position: relative;
        display: flex;
        flex-wrap: nowrap;
        align-items: stretch;
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .shop-navbar-inner:not(:has(.shop-header-collapse--cart-rich)) .shop-header-search--navbar {
        flex: 2 1 26rem;
        max-width: min(44rem, 50vw);
    }

    .shop-navbar-inner:has(.shop-header-collapse--cart-rich) .shop-header-search--navbar {
        flex: 2 1 20rem !important;
        max-width: min(38rem, 46vw) !important;
    }
}


.shop-footer .letter-spacing-1 {
    letter-spacing: 0.04em;
}


.shop-search-strip .shop-live-search-dropdown {
    left: 0;
    right: 0;
    width: auto;
}


.shop-header-search {
    min-width: 5rem;
    max-width: min(44rem, 50vw);
}


@media (min-width: 992px) {
    /*
     * Kopfzeile: Suche + Hauptnav + Icon-Leiste teilen sich die Breite ohne Überlappung
     * (langer Firmenname + Warenkorb-Preis dürfen die Konten-Zeile nicht unter die Sprache schieben).
     */
    .shop-navbar .navbar-collapse.shop-header-collapse {
        flex-wrap: nowrap !important;
        align-items: center;
        column-gap: clamp(0.35rem, 1.1vw, 1rem);
        min-width: 0;
    }

    .shop-navbar .shop-header-collapse .shop-header-primary-nav.shop-navbar-primary {
        flex: 1 1 0%;
        min-width: 0;
        margin-inline-end: 0 !important;
        justify-content: flex-end;
        overflow-x: visible;
    }

    .shop-navbar-primary > .nav-item.shop-nav-item--account {
        min-width: 0;
        flex: 0 0 auto;
    }

    .shop-navbar-primary > .nav-item.shop-nav-item--account > .nav-link.shop-account-toggle {
        max-width: 100%;
        min-width: 0;
        flex-wrap: nowrap;
        white-space: nowrap;
        align-items: center;
    }

    /* Nav-Links dürfen unter Mindestbreite schrumpfen (sonst Überlappung mit Sprache/Theme) */
    .shop-navbar-primary > .nav-item {
        min-width: 0;
    }

    .shop-navbar-primary > .nav-item:first-child {
        flex-shrink: 0;
        min-width: auto;
    }

    .shop-navbar .shop-header-actions.shop-nav-collapse-order-actions {
        margin-inline-start: 0 !important;
        column-gap: 0.35rem !important;
        flex-wrap: nowrap !important;
        flex-shrink: 0;
    }
}


@supports (container-type: inline-size) {
    @media (min-width: 992px) {
        .shop-navbar > .container.shop-navbar-inner {
            container-type: inline-size;
            container-name: shopnav;
        }

        @container shopnav (max-width: 1180px) {
            .shop-navbar .shop-header-search {
                flex: 1 1 14rem !important;
                max-width: min(34rem, 44cqw) !important;
                min-width: 6rem;
            }

            .shop-navbar-primary {
                column-gap: 0.55rem !important;
            }
        }

        @container shopnav (max-width: 1020px) {
            .shop-navbar .shop-header-search {
                flex: 1 1 11rem !important;
                max-width: min(26rem, 38cqw) !important;
                min-width: 5rem;
            }
        }
    }
}


/* Logged-in account menu: as wide as the longest label (icons + text one line), capped to viewport */
.shop-header .shop-account-dropdown.dropdown-menu {
    width: max-content;
    max-width: min(100vw - 1rem, 24rem);
}


.shop-header .shop-account-dropdown .dropdown-item {
    white-space: nowrap;
}


.shop-live-search-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 0.35rem);
    left: 0;
    right: 0;
    z-index: 2050;
    max-height: min(28rem, 72vh);
    overflow: auto;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.9rem;
    background-color: var(--bs-body-bg);
    box-shadow: 0 12px 40px rgba(15, 23, 42, 0.16);
}


html.theme-dark .shop-live-search-dropdown,
:root[data-bs-theme="dark"] .shop-live-search-dropdown {
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}


.shop-live-search-dropdown.is-open {
    display: block;
}


/* Breiter Ergebnisbereich: Maße per JS (position:fixed) an Navbar / Streifen angeglichen */
.shop-live-search-dropdown.shop-live-search-dropdown--header-wide.is-open {
    top: auto;
    left: auto;
    right: auto;
    border-radius: 0.85rem;
    overflow: hidden;
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.28);
}


html.theme-dark .shop-live-search-dropdown.shop-live-search-dropdown--header-wide.is-open,
:root[data-bs-theme="dark"] .shop-live-search-dropdown.shop-live-search-dropdown--header-wide.is-open {
    box-shadow: 0 22px 56px rgba(0, 0, 0, 0.55);
}


/* XONIC-style wide panel: light surface, horizontal product cards */
.shop-live-search-dropdown.shop-live-search-dropdown--xonic.is-open {
    background-color: #ffffff;
    color: #1a1d23;
    border: 1px solid rgba(15, 23, 42, 0.12);
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-xonic {
    text-align: left;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-section {
    padding: 0.35rem 0.75rem 0.5rem;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-section--border {
    border-top: 1px solid rgba(15, 23, 42, 0.1);
    padding-top: 0.5rem;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-section-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #64748b;
    margin-bottom: 0.35rem;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-scroller {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-inline: -0.15rem;
    padding-bottom: 0.15rem;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-cards {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.65rem;
    padding: 0.15rem 0.15rem 0.35rem;
}


.shop-live-search-dropdown--xonic .shop-live-search-card {
    flex: 0 0 clamp(118px, 22vw, 168px);
    max-width: 168px;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 0.55rem;
    padding: 0.45rem;
    background: #ffffff;
    color: #0f172a;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    text-decoration: none;
    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease,
        background-color 0.15s ease;
}


.shop-live-search-dropdown--xonic .shop-live-search-card:hover,
.shop-live-search-dropdown--xonic .shop-live-search-card.active {
    border-color: rgba(37, 99, 235, 0.45);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.1);
    background-color: #f8fafc;
}


.shop-live-search-dropdown--xonic .shop-live-search-card__figure {
    position: relative;
    aspect-ratio: 1 / 1;
    border-radius: 0.4rem;
    overflow: hidden;
    background: #e2e8f0;
}


.shop-live-search-dropdown--xonic .shop-live-search-card__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}


.shop-live-search-dropdown--xonic .shop-live-search-card__ph {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 3.5rem;
    background: linear-gradient(135deg, #e2e8f0, #f1f5f9);
}


.shop-live-search-dropdown--xonic .shop-live-search-card__ph i {
    font-size: 1.35rem;
    line-height: 1;
}


.shop-live-search-dropdown--xonic .shop-live-search-card__ph--domain {
    background: linear-gradient(135deg, rgba(13, 110, 253, 0.16), rgba(13, 202, 240, 0.1));
}


.shop-live-search-dropdown--xonic .shop-live-search-card__ph--domain i {
    color: #0d6efd;
}


.shop-live-search-dropdown--xonic .shop-live-search-card__ph--generic i {
    color: #64748b;
    font-size: 1.2rem;
}


.shop-live-search-dropdown--xonic .shop-live-search-card__title {
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.3;
    color: #0f172a;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 2.45rem;
}


.shop-live-search-dropdown--xonic .shop-live-search-card__price {
    font-size: 0.82rem;
    font-weight: 800;
    color: #0f172a;
}


.shop-live-search-dropdown--xonic .shop-live-search-hl {
    background-color: #fff3cd;
    color: #1a1d23;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 0.75rem;
    padding: 0.45rem 0.15rem;
    text-decoration: none;
    color: #0f172a;
    font-size: 0.88rem;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link:last-child {
    border-bottom: 0;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link:hover,
.shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link.active {
    background-color: #f1f5f9;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-name {
    font-weight: 600;
    min-width: 0;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-meta {
    font-size: 0.72rem;
    color: #64748b;
    white-space: nowrap;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-footer--xonic {
    border-top: 1px solid rgba(15, 23, 42, 0.1);
    background: #ffffff;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-all-btn {
    font-weight: 600;
    letter-spacing: 0.02em;
}


.shop-live-search-dropdown--xonic .shop-live-search-dd-all-chevron {
    font-weight: 700;
    margin-left: 0.15rem;
}


/* Dark theme: breite XONIC-Suche — gleiche Flächen wie kompakte Live-Suche (Bootstrap body tokens) */
:root[data-bs-theme="dark"] .shop-live-search-dropdown.shop-live-search-dropdown--xonic.is-open,
html.theme-dark .shop-live-search-dropdown.shop-live-search-dropdown--xonic.is-open {
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
    border-color: var(--bs-border-color);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-dd-section-label,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-dd-section-label {
    color: var(--bs-secondary-color);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-dd-section--border,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-dd-section--border {
    border-top-color: var(--bs-border-color);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card {
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    border-color: var(--bs-border-color);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card:hover,
:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card.active,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card:hover,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card.active {
    background-color: color-mix(in srgb, var(--bs-primary) 14%, var(--bs-body-bg));
    border-color: rgba(59, 130, 246, 0.55);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.35);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card__figure,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card__figure {
    background: var(--bs-secondary-bg);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card__ph,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card__ph {
    background: linear-gradient(135deg, var(--bs-secondary-bg), var(--bs-tertiary-bg));
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card__ph--domain,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card__ph--domain {
    background: linear-gradient(
        135deg,
        color-mix(in srgb, var(--bs-primary) 24%, var(--bs-secondary-bg)),
        var(--bs-tertiary-bg)
    );
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card__ph--domain i,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card__ph--domain i {
    color: var(--bs-primary);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card__ph--generic i,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card__ph--generic i {
    color: var(--bs-secondary-color);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card__title,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card__title {
    color: var(--bs-emphasis-color);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-card__price,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-card__price {
    color: var(--bs-primary);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-hl,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-hl {
    background-color: color-mix(in srgb, var(--bs-warning) 55%, rgba(255, 255, 255, 0.08));
    color: var(--bs-emphasis-color);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link {
    color: var(--bs-body-color);
    border-bottom-color: var(--bs-border-color);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link:hover,
:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link.active,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link:hover,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-link.active {
    background-color: var(--bs-secondary-bg);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-meta,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-dd-inhalt-meta {
    color: var(--bs-secondary-color);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-dd-footer--xonic,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-dd-footer--xonic {
    border-top-color: var(--bs-border-color);
    background: var(--bs-body-bg);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-dd-all-btn,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-dd-all-btn {
    background-color: var(--bs-body-color);
    border-color: var(--bs-body-color);
    color: var(--bs-body-bg);
}


:root[data-bs-theme="dark"] .shop-live-search-dropdown--xonic .shop-live-search-dd-all-btn:hover,
html.theme-dark .shop-live-search-dropdown--xonic .shop-live-search-dd-all-btn:hover {
    background-color: var(--bs-emphasis-color);
    border-color: var(--bs-emphasis-color);
    color: var(--bs-body-bg);
}


.shop-live-search-backdrop {
    position: fixed;
    inset: 0;
    /* Unter .shop-header (1030), damit Live-Suche & Header klickbar bleiben */
    z-index: 1010;
    background: rgba(15, 23, 42, 0.42);
}

body.pd-body .shop-live-search-backdrop {
    z-index: 1040;
    pointer-events: none;
}

body.pd-body .shop-live-search-dropdown.is-open {
    z-index: 2080 !important;
    pointer-events: auto;
}

body.pd-body:not([data-pd-theme="dark"]) .shop-live-search-dropdown--xonic .shop-live-search-dd-section-label,
body.pd-body[data-bs-theme="light"] .shop-live-search-dropdown--xonic .shop-live-search-dd-section-label {
    color: var(--pd-primary, #008374);
}

body.pd-body .hp-field,
body.pd-body .hp-field-wrap .hp-field {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
}

.pd-block--hd .shop-home-section {
    margin-bottom: 0;
}

.pd-block--hd .shop-section-heading .text-primary {
    color: var(--pd-primary) !important;
}


[data-bs-theme="light"] .shop-live-search-backdrop {
    background: rgba(15, 23, 42, 0.22);
}


.shop-live-search-dropdown:not(.shop-live-search-dropdown--xonic) .shop-live-search-hit {
    border: 0;
    border-bottom: 1px solid var(--bs-border-color);
    text-decoration: none;
}


.shop-live-search-dropdown:not(.shop-live-search-dropdown--xonic) .shop-live-search-hit:last-of-type {
    border-bottom: 0;
}


.shop-live-search-dropdown:not(.shop-live-search-dropdown--xonic) .shop-live-search-hit:hover,
.shop-live-search-dropdown:not(.shop-live-search-dropdown--xonic) .shop-live-search-hit.active {
    background-color: color-mix(in srgb, var(--bs-primary) 14%, var(--bs-body-bg));
}


.shop-live-search-dropdown .shop-live-search-title {
    font-size: 0.9rem;
    line-height: 1.35;
    word-break: break-word;
}


.shop-live-search-dropdown .shop-live-search-hl {
    background-color: color-mix(in srgb, var(--bs-warning) 42%, transparent);
    color: inherit;
    padding: 0 0.12em;
}


html.theme-dark .shop-live-search-dropdown .shop-live-search-hl,
:root[data-bs-theme="dark"] .shop-live-search-dropdown .shop-live-search-hl {
    background-color: color-mix(in srgb, var(--bs-warning) 55%, rgba(255, 255, 255, 0.08));
}


.shop-live-search-dropdown .shop-live-search-type-badge {
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.02em;
}


.shop-live-search-dropdown .shop-live-search-price {
    font-size: 0.9rem;
    color: var(--bs-primary);
}


.shop-live-search-dd-footer {
    position: sticky;
    bottom: 0;
    padding: 0;
    margin: 0;
    border-top: 1px solid var(--bs-border-color);
    background-color: var(--bs-body-bg);
}


.shop-live-search-dropdown:not(.shop-live-search-dropdown--xonic) .shop-live-search-dd-footer .btn {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}


.shop-live-search-thumb,
.shop-live-search-vendor-ph {
    width: 3rem;
    height: 3rem;
}


.shop-live-search-vendor-ph {
    font-size: 1rem;
}


.shop-live-search-thumb.shop-live-search-thumb--product-ph {
    width: 3rem;
    height: 3rem;
    font-size: 1.05rem;
}


.shop-cart-nav-qty {
    font-size: 0.65rem;
    min-width: 1.1rem;
    padding: 0.2em 0.35em;
    line-height: 1;
}


.shop-navbar .nav-link .shop-cart-nav-total {
    font-weight: 500;
    max-width: 6.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    vertical-align: bottom;
}


@media (max-width: 1399.98px) {
    .shop-cart-nav-total {
        display: none !important;
    }
}


@media (min-width: 992px) {
    .shop-navbar .shop-header-collapse {
        column-gap: clamp(0.5rem, 1.2vw, 1.35rem);
    }

    .shop-navbar-inner:has(.shop-header-collapse--cart-rich) .shop-header-search--navbar {
        flex: 1 1 16rem !important;
        max-width: min(44rem, 52vw) !important;
        min-width: 6rem;
    }

    .shop-navbar .shop-header-collapse.shop-header-collapse--cart-rich .shop-navbar-primary {
        column-gap: clamp(0.45rem, 0.9vw, 1rem) !important;
    }
}


@media (max-width: 991.98px) {
    .shop-header-search {
        max-width: none;
    }

    .shop-header-actions {
        justify-content: flex-end;
    }
}


.shop-footer {
    position: relative;
}


/* Column width = chip width + gap only (no 1fr stretch — that caused huge empty gaps). */
.footer-method-list {
    display: grid;
    grid-template-columns: repeat(4, max-content);
    gap: 0.38rem;
    align-items: center;
    justify-items: start;
    justify-content: start;
    width: 100%;
}


/* Payments: max. 4 icons per row (second row via explicit chunks in shop_footer.php). */
.footer-method-list--stacked {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.42rem;
    width: 100%;
}


.footer-method-list--stacked .footer-method-row {
    display: grid;
    grid-template-columns: repeat(4, max-content);
    gap: 0.38rem;
    align-items: center;
    justify-items: start;
    justify-content: start;
    width: 100%;
}


/* Payments use the same grid as shipping: chips fill each cell (left-aligned block, same width/gap). */

/* Shipping: trucks read heavier at equal em-size — keep slightly smaller than payment icons */
.shop-footer .footer-method-list:not(.footer-method-list--stacked) .footer-method-icon > i {
    font-size: 1.06rem;
    line-height: 1;
}


.shop-footer .footer-method-list:not(.footer-method-list--stacked) .footer-method-icon {
    min-height: 2.35rem;
}


/* Payment block (stacked): FA / Bootstrap icons a touch larger for balance */
.shop-footer .footer-method-list--stacked .footer-method-icon > i {
    font-size: 1.44rem;
    line-height: 1;
}


.shop-footer .footer-method-icon .footer-method-img {
    display: block;
    flex: 1 1 auto;
    align-self: center;
    width: 100%;
    min-width: 0;
    height: 1.85rem;
    object-fit: contain;
    object-position: center center;
}


.footer-method-icon--image {
    filter: none;
    opacity: 1;
}


.footer-method-icon--image:hover,
.footer-method-icon--image:focus-within {
    filter: none;
    opacity: 1;
}


.footer-method-icon {
    position: relative;
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: 2.5rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.7rem;
    padding: 0.6rem;
    color: var(--bs-body-color);
    background-color: color-mix(in srgb, var(--bs-body-bg) 84%, var(--bs-card-bg));
    filter: grayscale(1);
    opacity: 0.72;
    transition: filter 0.18s ease, opacity 0.18s ease, transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}


.footer-method-icon i {
    width: auto;
    font-size: 1rem;
    color: var(--bs-primary);
}


.footer-method-icon span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: left;
}


.footer-method-icon:hover,
.footer-method-icon:focus-within {
    border-color: rgba(var(--bs-primary-rgb), 0.45);
    box-shadow: 0 0.75rem 1.6rem rgba(15, 23, 42, 0.12);
    filter: grayscale(0);
    opacity: 1;
    transform: translateY(-2px);
}


.footer-method-icon--paypal i {
    color: #003087;
}


.footer-method-icon--stripe i {
    color: #635bff;
}


.footer-method-icon--klarna i {
    color: #ffb3c7;
}


.footer-method-icon--wero i {
    color: #0d9488;
}


.footer-method-icon--sofort i,
.footer-method-icon--dhl i {
    color: #ffcc00;
}


.footer-method-icon--giropay i,
.footer-method-icon--banktransfer i,
.footer-method-icon--ups i {
    color: #6f42c1;
}


.footer-method-icon--invoice i,
.footer-method-icon--sepa i {
    color: #198754;
}


[data-bs-theme="dark"] .footer-method-icon {
    background-color: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.14);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    filter: grayscale(0);
    opacity: 0.96;
}


[data-bs-theme="dark"] .footer-method-icon i {
    color: rgba(255, 255, 255, 0.82);
    text-shadow: 0 0 0.55rem rgba(255, 255, 255, 0.18);
}


[data-bs-theme="dark"] .footer-method-icon:hover {
    box-shadow: 0 0.75rem 1.8rem rgba(0, 0, 0, 0.28);
}


[data-bs-theme="dark"] .footer-method-icon--paypal:hover i {
    color: #4da3ff;
}


[data-bs-theme="dark"] .footer-method-icon--stripe:hover i {
    color: #9b8cff;
}


[data-bs-theme="dark"] .footer-method-icon--klarna:hover i {
    color: #fecdd3;
}


[data-bs-theme="dark"] .footer-method-icon--wero:hover i {
    color: #5eead4;
}


[data-bs-theme="dark"] .footer-method-icon--banktransfer:hover i {
    color: #ffb15c;
}


[data-bs-theme="dark"] .footer-method-icon--dhl:hover i {
    color: #ffd84d;
}


[data-bs-theme="dark"] .footer-method-icon--ups:hover i {
    color: #b9783f;
}


[data-bs-theme="dark"] .footer-method-icon--gls:hover i {
    color: #4da3ff;
}


[data-bs-theme="dark"] .footer-method-icon--dpd:hover i {
    color: #ff5c6c;
}


[data-bs-theme="dark"] .footer-method-icon--hermes:hover i {
    color: #7dd3fc;
}


@media (max-width: 575.98px) {
    .shop-footer .container {
        padding-top: 2.25rem !important;
        padding-bottom: 2.25rem !important;
    }

    .footer-method-list:not(.footer-method-list--stacked),
    .footer-method-list--stacked .footer-method-row {
        grid-template-columns: repeat(4, max-content);
        gap: 0.35rem;
    }
}


/* Account / support data tables: light header strip (like Werbebanner table-light), readable in dark storefront */
.shop-datatable-thead > tr > th {
    background-color: #fff !important;
    color: #212529 !important;
    border-color: rgba(33, 37, 41, 0.12) !important;
}


.shop-datatable-thead .btn-link {
    color: #212529 !important;
}


.shop-datatable-thead .btn-link:hover,
.shop-datatable-thead .btn-link:focus {
    color: #000 !important;
}


.shop-datatable-thead .text-body-secondary {
    color: #495057 !important;
}


/* Hellmodus: Link-Farben aus dem Theme überschreiben (sonst helle Schrift auf hellem Streifen). */
html[data-bs-theme="light"] .shop-datatable-thead > tr > th,
:root[data-bs-theme="light"] .shop-datatable-thead > tr > th {
    background-color: #fff !important;
    color: #212529 !important;
}


html[data-bs-theme="light"] .shop-datatable-thead .btn-link,
:root[data-bs-theme="light"] .shop-datatable-thead .btn-link {
    color: #212529 !important;
}


html[data-bs-theme="light"] .shop-datatable-thead .btn-link:hover,
html[data-bs-theme="light"] .shop-datatable-thead .btn-link:focus,
:root[data-bs-theme="light"] .shop-datatable-thead .btn-link:hover,
:root[data-bs-theme="light"] .shop-datatable-thead .btn-link:focus {
    color: #000 !important;
}


.shop-nav-link-icon {
    margin-inline-end: 0.4rem;
}


@media (min-width: 992px) {
    .shop-nav-link-icon {
        margin-inline-end: 0.28rem;
    }

    /* Primary nav: more horizontal rhythm + slightly smaller labels so the bar breathes */
    .shop-navbar-primary {
        column-gap: 0.85rem !important;
        row-gap: 0.35rem !important;
        flex-wrap: nowrap !important;
        min-width: 0;
    }

    .shop-navbar-primary > .nav-item > .nav-link {
        font-size: 0.8125rem;
        padding-left: 0.45rem !important;
        padding-right: 0.45rem !important;
        flex-wrap: nowrap !important;
        white-space: nowrap;
    }

    .shop-navbar-primary .shop-nav-link-icon {
        font-size: 1.05rem;
        margin-inline-end: 0.32rem;
    }
}


@media (min-width: 992px) and (max-width: 1199.98px) {
    .shop-navbar-primary {
        column-gap: 0.42rem !important;
    }

    .shop-navbar-primary > .nav-item > .nav-link {
        font-size: 0.72rem;
        padding-left: 0.32rem !important;
        padding-right: 0.32rem !important;
    }

    .shop-navbar-primary .shop-nav-link-icon {
        font-size: 0.92rem;
        margin-inline-end: 0.22rem;
    }

    .shop-navbar .navbar-brand {
        max-width: min(200px, 42vw);
    }

    .shop-brand-logos .logo-light,
    .shop-brand-logos .logo-dark {
        max-height: 38px;
    }

    .shop-header-search {
        min-width: 10rem;
        max-width: min(40rem, 52vw);
        flex: 1 1 20rem !important;
    }

    .shop-header-actions {
        gap: 0.35rem !important;
    }
}


@media (min-width: 1200px) and (max-width: 1399.98px) {
    .shop-navbar-primary {
        column-gap: 0.55rem !important;
    }

    .shop-navbar-primary > .nav-item > .nav-link {
        font-size: 0.76rem;
        padding-left: 0.38rem !important;
        padding-right: 0.38rem !important;
    }

    .shop-navbar-primary .shop-nav-link-icon {
        font-size: 0.98rem;
    }

    .shop-header-search {
        flex: 2 1 24rem !important;
        max-width: min(40rem, 46vw);
    }

    .shop-brand-logos .logo-light,
    .shop-brand-logos .logo-dark {
        max-height: 42px;
    }
}


/* Wishlist heart/globe on product cards: visible on dark gradients and light cards */
.shop-wishlist-toggle-btn {
    line-height: 1;
    padding: 0.38rem 0.48rem;
    border-radius: 999px;
    background-color: rgba(var(--bs-body-bg-rgb), 0.94);
    border: 1px solid var(--bs-border-color-translucent);
    color: var(--bs-body-color);
}


.shop-wishlist-toggle-btn:focus-visible {
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.35);
}


[data-bs-theme="dark"] .shop-wishlist-toggle-btn {
    background-color: color-mix(in srgb, var(--pd-card, #0f172a) 92%, var(--pd-secondary, #1e293b));
    border-color: color-mix(in srgb, var(--pd-text, #e2e8f0) 22%, var(--pd-primary, #38bdf8) 16%);
    box-shadow: 0 0.08rem 0.35rem color-mix(in srgb, #000 38%, transparent);
}


.shop-wishlist-toggle-icon-off {
    color: rgba(33, 37, 41, 0.72) !important;
    opacity: 1;
}


[data-bs-theme="dark"] .shop-wishlist-toggle-icon-off {
    color: color-mix(in srgb, var(--pd-text, #e2e8f0) 52%, var(--pd-primary, #38bdf8)) !important;
}

[data-bs-theme="dark"] .shop-wishlist-toggle-btn[data-in-wishlist="1"],
[data-bs-theme="dark"] .shop-wishlist-toggle-btn.is-in-wishlist {
    background-color: var(--pd-primary, #38bdf8) !important;
    border-color: var(--pd-primary, #38bdf8) !important;
}

[data-bs-theme="dark"] .shop-wishlist-toggle-btn[data-in-wishlist="1"] .shop-wishlist-toggle-icon-off,
[data-bs-theme="dark"] .shop-wishlist-toggle-btn.is-in-wishlist .shop-wishlist-toggle-icon-off,
[data-bs-theme="dark"] .shop-wishlist-toggle-btn[data-in-wishlist="1"] i,
[data-bs-theme="dark"] .shop-wishlist-toggle-btn.is-in-wishlist i {
    color: #fff !important;
}


/* Wishlist page */
.shop-wishlist-toolbar .form-label {
    color: var(--bs-secondary-color);
}


.shop-wishlist-card .card-title a:hover {
    text-decoration: underline !important;
}


body.pd-body .shop-wishlist-card__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    max-width: calc(100% - 1rem);
}

body.pd-body .shop-wishlist-card__badge,
body.pd-body .shop-wishlist-card .product-badge-stack .pd-badge {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    white-space: nowrap;
    padding: 0.22rem 0.55rem;
    border-radius: 999px;
    font-size: 0.65rem;
    font-weight: 700;
    line-height: 1.2;
    background: var(--pd-primary) !important;
    color: #fff !important;
    border: 0;
    box-shadow: 0 0.15rem 0.45rem color-mix(in srgb, var(--pd-primary) 35%, transparent);
}

.shop-wishlist-card .position-relative.bg-body-secondary {
    overflow: hidden;
    border-top-left-radius: var(--bs-card-inner-border-radius, 0.375rem);
    border-top-right-radius: var(--bs-card-inner-border-radius, 0.375rem);
}


.shop-wishlist-card__img {
    object-fit: cover;
    object-position: center center;
    padding: 0;
    background-color: var(--bs-secondary-bg);
}


/* Product grid: slightly shorter teaser so action rows align more evenly */
.card.shop-product-card .shop-product-card-teaser {
    -webkit-line-clamp: 3;
    line-clamp: 3;
}


.shop-hd-hosting-carousel-slide-row .hd-pkg {
    flex: 1 1 auto;
    width: 100%;
    max-width: 22rem;
    margin-left: auto;
    margin-right: auto;
}


/* Hosting-Pakete: etwas schmalere Karten im Raster */
.hd-hosting-packages-row {
    --bs-gutter-x: 1.25rem;
    --bs-gutter-y: 1.25rem;
}


@media (min-width: 992px) {
    .hd-hosting-packages-row .hd-pkg {
        max-width: 22rem;
        margin-left: auto;
        margin-right: auto;
    }
}


.hd-pkg {
    border-radius: calc(var(--pd-radius) * 1.35);
    border: 2px solid color-mix(in srgb, var(--pd-text) 12%, transparent);
    height: 100%;
    position: relative;
    overflow: hidden;
    background: var(--pd-card);
    box-shadow: var(--pd-shadow);
}


.hd-pkg-featured {
    border-color: color-mix(in srgb, var(--pd-primary) 55%, #20c997);
    box-shadow: 0 0.75rem 1.5rem color-mix(in srgb, var(--pd-primary) 28%, transparent);
}

/* Hosting-CTA (shop-app.css wird im Premium-Theme nicht geladen) */
body.pd-body {
    --hp-cta-green: #1a6f5c;
    --hp-cta-green-hover: #145a4a;
    --hp-cta-green-border: #124f42;
}

body.pd-body .hosting-pkg-cta {
    background-color: var(--hp-cta-green) !important;
    border: 2px solid var(--hp-cta-green-border) !important;
    color: #fff !important;
    font-weight: 700;
    border-radius: calc(var(--pd-radius) * 1.1);
    box-shadow: 0 0.2rem 0.5rem color-mix(in srgb, var(--hp-cta-green) 40%, transparent);
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

body.pd-body .hosting-pkg-cta:hover,
body.pd-body .hosting-pkg-cta:focus-visible {
    background-color: var(--hp-cta-green-hover) !important;
    border-color: var(--hp-cta-green-hover) !important;
    color: #fff !important;
    box-shadow: 0 0.25rem 0.65rem color-mix(in srgb, var(--hp-cta-green) 45%, transparent);
}

body.pd-body .hosting-pkg-cta--ghost {
    background-color: transparent !important;
    color: var(--hp-cta-green) !important;
    border: 2px solid color-mix(in srgb, var(--hp-cta-green) 50%, transparent) !important;
    box-shadow: none;
}

body.pd-body .hosting-pkg-cta--ghost:hover,
body.pd-body .hosting-pkg-cta--ghost:focus-visible {
    background-color: color-mix(in srgb, var(--hp-cta-green) 12%, var(--pd-card)) !important;
    border-color: var(--hp-cta-green) !important;
    color: var(--hp-cta-green-hover) !important;
}

body.pd-body .hosting-popular-corner-badge {
    position: absolute;
    top: 0;
    right: 0;
    left: auto;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.42rem 0.72rem 0.48rem 0.8rem;
    border-radius: 0 0 0 0.85rem;
    background: linear-gradient(135deg, var(--pd-primary), var(--pd-hover));
    color: #fff;
    font-size: 0.62rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.055em;
    line-height: 1;
    white-space: nowrap;
    box-shadow: 0 0.2rem 0.65rem color-mix(in srgb, var(--pd-primary) 35%, transparent);
    max-width: min(10.5rem, 100%);
}

body.pd-body .hosting-popular-corner-badge span {
    display: inline-block;
    line-height: 1;
}

body.pd-body button.btn.hosting-pkg-cta.hosting-pkg-cta--featured,
body.pd-body a.btn.hosting-pkg-cta.hosting-pkg-cta--featured {
    background: var(--pd-primary) !important;
    border-color: var(--pd-primary) !important;
    color: #fff !important;
    box-shadow: 0 0.2rem 0.55rem color-mix(in srgb, var(--pd-primary) 35%, transparent);
}

body.pd-body button.btn.hosting-pkg-cta.hosting-pkg-cta--featured:hover,
body.pd-body a.btn.hosting-pkg-cta.hosting-pkg-cta--featured:hover {
    background: color-mix(in srgb, var(--pd-primary) 78%, #0c1a33) !important;
    border-color: color-mix(in srgb, var(--pd-primary) 78%, #0c1a33) !important;
}


/* Innenfläche unter dem Eck-Badge (Paketkarten: Padding nicht auf .hd-pkg, damit „Beliebt“ wirklich in der Ecke sitzt) */
.hd-pkg__inner {
    min-height: 0;
}


.hd-pkg ul {
    padding-left: 1.1rem;
    margin: 0;
}


.hd-pkg li {
    margin-bottom: 0.35rem;
    font-size: 0.9rem;
}


/* Cart: avoid inline width (CSP); narrow quantity field */
.shop-cart-table {
    table-layout: fixed;
    width: 100%;
}


.shop-cart-table .shop-cart-col-product,
.shop-cart-table td.shop-cart-col-product,
.shop-cart-product-name {
    overflow-wrap: anywhere;
    word-break: break-word;
}


@media (min-width: 768px) {
    .shop-cart-table .shop-cart-col-product {
        width: 38%;
    }

    .shop-cart-table .shop-cart-col-price {
        width: 16%;
    }

    .shop-cart-table .shop-cart-col-qty,
    .shop-cart-th-qty {
        width: 22%;
    }

    .shop-cart-table .shop-cart-col-line {
        width: 14%;
    }
}


.shop-cart-th-qty {
    width: 9rem;
}


.shop-cart-qty-input {
    max-width: 4.5rem;
}


@media (max-width: 767.98px) {
    .shop-cart-table-wrap {
        overflow-x: visible;
    }

    .shop-cart-table thead {
        display: none;
    }

    .shop-cart-table tbody tr {
        display: grid;
        gap: 0.65rem;
        padding: 1rem 0.85rem;
        border-bottom: 1px solid var(--bs-border-color);
    }

    .shop-cart-table tbody td {
        display: block;
        width: 100% !important;
        max-width: 100%;
        padding: 0;
        border: 0;
        text-align: start !important;
        white-space: normal !important;
    }

    .shop-cart-table tbody td.shop-cart-col-product {
        padding-bottom: 0.15rem;
    }

    .shop-cart-table tbody td.shop-cart-col-price::before,
    .shop-cart-table tbody td.shop-cart-col-qty::before,
    .shop-cart-table tbody td.shop-cart-col-line::before {
        display: block;
        font-size: 0.72rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        color: var(--bs-secondary-color);
        margin-bottom: 0.25rem;
        content: attr(data-label);
    }

    .shop-cart-table tbody td.shop-cart-col-line {
        font-size: 1.05rem;
    }

    .shop-cart-qty-form {
        flex-wrap: wrap;
    }

    .shop-cart-table tbody td.shop-cart-col-actions {
        display: flex;
        justify-content: flex-end;
        padding-top: 0.15rem;
    }

    .shop-cart-table tbody td.shop-cart-col-actions::before {
        display: none;
    }
}


/* Product profile: prevent horizontal overflow on small screens */
.product-profile-hero .row > [class*="col"] {
    min-width: 0;
}


@media (max-width: 767.98px) {
    .product-profile-hero {
        overflow-x: clip;
    }

    .product-profile-hero .product-premium-header h1.display-6 {
        font-size: clamp(1.35rem, 5.5vw, 2rem);
        line-height: 1.25;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .product-header-facts .product-fact-badge {
        white-space: normal;
        text-align: start;
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    .product-price-panel .d-flex.flex-wrap.align-items-end {
        flex-direction: column;
        align-items: flex-start !important;
        gap: 0.5rem !important;
    }

    .product-price-main {
        font-size: clamp(1.65rem, 7vw, 2.25rem);
    }

    .product-line-band-inner {
        flex-direction: column;
        align-items: flex-start !important;
    }

    .product-description--html {
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    .product-description--html table {
        display: block;
        max-width: 100%;
        overflow-x: auto;
    }

    .product-description--html pre {
        max-width: 100%;
        overflow-x: auto;
        white-space: pre-wrap;
    }

    nav[aria-label="breadcrumb"] .breadcrumb-item.active {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .product-variant-panel .form-select-lg {
        font-size: 1rem;
    }
}


/* Konto: Kontotyp-Pille (Profil-Kachel) */
.shop-account-type-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.28rem 0.65rem 0.28rem 0.5rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border: 1px solid transparent;
    line-height: 1.1;
    box-shadow: 0 0.25rem 0.85rem rgba(15, 23, 42, 0.12);
}


.shop-account-type-pill__icon {
    font-size: 1rem;
    line-height: 1;
    opacity: 0.92;
}


.shop-account-type-pill--private {
    color: #0f172a;
    border-color: rgba(100, 116, 139, 0.45);
    background: linear-gradient(135deg, #f8fafc 0%, #e0e7ff 100%);
}


[data-bs-theme="dark"] .shop-account-type-pill--private {
    color: #e2e8f0;
    border-color: rgba(148, 163, 184, 0.4);
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.95) 0%, rgba(79, 70, 229, 0.38) 100%);
    box-shadow: 0 0.35rem 1rem rgba(0, 0, 0, 0.35);
}


.shop-account-type-pill--business {
    color: #fff;
    border-color: rgba(147, 197, 253, 0.55);
    background: linear-gradient(120deg, #1d4ed8 0%, #6d28d9 48%, #0ea5e9 100%);
    box-shadow: 0 0.35rem 1rem rgba(37, 99, 235, 0.4);
}


.shop-account-type-pill--business .shop-account-type-pill__icon {
    color: rgba(255, 255, 255, 0.95);
}


.catalog-thumb-wrap {
    width: 56px;
    height: 56px;
    flex-shrink: 0;
    line-height: 0;
}


.catalog-thumb-wrap > a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 0;
}


.catalog-thumb-wrap--ph-domain {
    background: linear-gradient(
        145deg,
        color-mix(in srgb, var(--bs-primary) 16%, var(--bs-secondary-bg)),
        var(--bs-secondary-bg)
    ) !important;
}


.shop-search-grid-card__ph--domain {
    background: linear-gradient(
        135deg,
        color-mix(in srgb, var(--bs-primary) 12%, var(--bs-secondary-bg)),
        var(--bs-secondary-bg)
    ) !important;
}


.catalog-thumb-img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
    display: block;
    vertical-align: top;
}


/* Startseite / Katalog: „Details“ und Warenkorb — gleiche kompakte Hoehe (btn-sm-aehnlich) */
.shop-product-card-actions,
.catalog-card-actions {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}


.shop-product-card-actions .shop-product-card-quick-cart-form,
.catalog-card-actions .shop-product-card-quick-cart-form {
    display: flex;
    align-items: center;
}


.shop-product-card-actions > a.btn-sm.btn-outline-primary,
.shop-product-card-actions .shop-product-card-quick-cart-form .btn-sm,
.catalog-card-actions > a.btn-sm.btn-outline-primary,
.catalog-card-actions .shop-product-card-quick-cart-form .btn-sm {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.95rem;
    height: 1.95rem;
    max-height: 1.95rem;
    padding: 0 0.42rem;
    font-size: 0.75rem;
    line-height: 1.1;
}


.shop-product-card-actions .shop-product-card-quick-cart-form .btn-sm,
.catalog-card-actions .shop-product-card-quick-cart-form .btn-sm {
    min-width: 1.95rem;
    width: auto;
}


.shop-product-card-actions .shop-product-card-quick-cart-form .btn-sm .fa-solid,
.shop-product-card-actions .shop-product-card-quick-cart-form .btn-sm .bi,
.catalog-card-actions .shop-product-card-quick-cart-form .btn-sm .fa-solid,
.catalog-card-actions .shop-product-card-quick-cart-form .btn-sm .bi {
    font-size: 0.82rem;
    line-height: 1;
}


/* Fußzeile: Bewertung und Aktionen vertikal mittig */
.shop-product-card-footer-row.d-flex {
    align-items: center;
}


.shop-product-card-footer-row .product-card-ratings {
    align-self: center;
    flex-shrink: 0;
}


/* Highlight-Banner: Warenkorb rechts, groesseres Touch-Ziel */
.shop-spotlight-home__cta {
    width: 100%;
}


.shop-spotlight-home__cart-wrap {
    margin-inline-start: auto;
}


.shop-spotlight-home__cart-wrap .shop-product-card-quick-cart-form .btn {
    min-width: 3.5rem;
    min-height: 3.15rem;
    padding: 0.55rem 0.65rem;
    font-size: 1.35rem;
    line-height: 1;
}


.shop-spotlight-home__cart-wrap .shop-product-card-quick-cart-form .btn .fa-solid,
.shop-spotlight-home__cart-wrap .shop-product-card-quick-cart-form .btn .bi {
    font-size: 1.25em;
    line-height: 1;
}


/* CMS-Seiten: Inhalt nutzt volle Card-Breite (kein künstliches max-width mehr). */

.shop-footer-support-card {
    border-color: color-mix(in srgb, var(--pd-primary) 45%, transparent) !important;
    background: color-mix(in srgb, var(--pd-primary) 28%, var(--pd-secondary));
}

.pd-estore-footer .shop-footer-support-card {
    background: color-mix(in srgb, var(--pd-primary) 28%, var(--pd-secondary)) !important;
    border-color: color-mix(in srgb, var(--pd-primary) 45%, transparent) !important;
}

.pd-estore-footer .shop-footer-support-card .text-body,
.pd-estore-footer .shop-footer-support-card h3 {
    color: #fff !important;
}

.pd-estore-footer .shop-footer-support-card .text-body-secondary,
.pd-estore-footer .shop-footer-support-card .bi-headset,
.pd-estore-footer .shop-footer-support-card .text-primary {
    color: color-mix(in srgb, #fff 82%, var(--pd-primary)) !important;
}

.pd-estore-footer .shop-footer-support-card .border-secondary-subtle {
    border-color: color-mix(in srgb, #fff 18%, transparent) !important;
}

.shop-footer-support-iconlink {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    margin: 0;
    border-radius: 0.35rem;
    color: var(--pd-primary);
    text-decoration: none;
}

.pd-estore-footer .shop-footer-support-iconlink {
    color: var(--pd-primary) !important;
}

.shop-footer-support-iconlink:hover,
.shop-footer-support-iconlink:focus-visible {
    color: #fff !important;
    background: var(--pd-primary) !important;
}


.home-media-slider--full {
    position: relative;
    left: 50%;
    right: 50%;
    width: 100vw;
    margin-left: -50vw;
    margin-right: -50vw;
}


.home-media-slider--full .carousel {
    border-radius: 0;
}


.home-media-slider--box {
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto;
}

body.pd-body .home-media-slider .carousel-control-prev,
body.pd-body .home-media-slider .carousel-control-next {
    width: 2.75rem;
    height: 2.75rem;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    opacity: 1;
}

body.pd-body .home-media-slider .carousel-control-prev-icon,
body.pd-body .home-media-slider .carousel-control-next-icon {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background-color: color-mix(in srgb, var(--pd-text) 68%, transparent) !important;
    background-size: 55% 55%;
}


.home-media-slider__frame {
    aspect-ratio: 16 / 6;
    min-height: 260px;
    background: #05070d;
}


.home-media-slider__img,
.home-media-slider__video,
.home-media-slider__embed {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: cover;
}


.home-media-slider__video {
    object-fit: contain;
}


@media (max-width: 767.98px) {
    .home-media-slider__frame {
        aspect-ratio: 16 / 10;
        min-height: 220px;
    }
}


.shop-product-card .shop-product-card-teaser,
.card .shop-product-card-teaser {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    line-height: 1.45;
}


.product-media-carousel .product-media-image,
.shop-product-card .product-card-media-img,
.vendor-product-card-img {
    object-fit: contain !important;
    background-color: var(--bs-secondary-bg);
}

.shop-product-card .product-card-media-img,
.vendor-product-card-img {
    padding: 0.75rem;
}

body.pd-body .pd-product-card__img .product-card-media-img {
    padding: 0 !important;
    object-fit: cover !important;
    background-color: color-mix(in srgb, var(--pd-primary) 10%, var(--pd-card)) !important;
}


/* Footer: optional “Made in Germany” badge (Admin → Einstellungen → Shop) */
.shop-made-in-germany {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.35rem 0.65rem 0.35rem 0.45rem;
    border-radius: 0.65rem;
    border: 1px solid rgba(15, 23, 42, 0.12);
    background: linear-gradient(165deg, #fff 0%, #f8fafc 55%, #f1f5f9 100%);
    box-shadow: 0 0.08rem 0.35rem rgba(15, 23, 42, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    color: #0f172a;
    font-family: var(--bs-font-sans-serif);
    text-decoration: none;
    line-height: 1.1;
    vertical-align: middle;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}


a.shop-made-in-germany:hover {
    transform: translateY(-1px);
    border-color: rgba(15, 23, 42, 0.2);
    box-shadow: 0 0.2rem 0.65rem rgba(15, 23, 42, 0.1);
    color: #0f172a;
}


.shop-made-in-germany__flag {
    display: flex;
    flex-direction: column;
    width: 0.55rem;
    height: 2.1rem;
    border-radius: 0.12rem;
    overflow: hidden;
    flex-shrink: 0;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.08);
}


.shop-made-in-germany__stripe {
    flex: 1;
    min-height: 0;
}


.shop-made-in-germany__stripe--black {
    background: #1a1a1a;
}


.shop-made-in-germany__stripe--red {
    background: #c1121f;
}


.shop-made-in-germany__stripe--gold {
    background: #ffce00;
}


.shop-made-in-germany__text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}


.shop-made-in-germany__line1 {
    font-size: 0.62rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #475569;
}


.shop-made-in-germany__line2 {
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: -0.01em;
}


[data-bs-theme="dark"] .shop-made-in-germany,
[data-theme="dark"] .shop-made-in-germany {
    border-color: rgba(248, 250, 252, 0.12);
    background: linear-gradient(165deg, rgba(30, 41, 59, 0.95) 0%, rgba(15, 23, 42, 0.98) 100%);
    color: #f8fafc;
    box-shadow: 0 0.12rem 0.5rem rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}


[data-bs-theme="dark"] .shop-made-in-germany__line1,
[data-theme="dark"] .shop-made-in-germany__line1 {
    color: #94a3b8;
}


[data-bs-theme="dark"] a.shop-made-in-germany:hover,
[data-theme="dark"] a.shop-made-in-germany:hover {
    color: #fff;
    border-color: rgba(248, 250, 252, 0.22);
}


.shop-copy-code-btn--icon {
    width: 2.125rem;
    min-width: 2.125rem;
    height: 2.125rem;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    line-height: 1;
}


.shop-copy-code-btn--icon .bi {
    font-size: 1rem;
}


/* Share buttons: Bootstrap success green is too bright on Premium Deluxe dark */
body.pd-body .shop-share__btn.is-copied {
    border-color: color-mix(in srgb, var(--hp-cta-green, #1a6f5c) 62%, transparent);
    color: color-mix(in srgb, #8aab9a 85%, var(--pd-text));
    background-color: color-mix(in srgb, var(--hp-cta-green, #1a6f5c) 11%, var(--pd-card));
}


/* Sales-Badge: kompakt Feuer + Prozent (Karten) */
.shop-promo-sales-badge--pct {
    display: inline-flex;
    align-items: center;
    gap: 0.15em;
    font-weight: 700;
    white-space: nowrap;
    line-height: 1.1;
}


.shop-promo-sales-badge--pct .shop-promo-sales-badge__hot {
    display: inline-flex;
    align-items: center;
    gap: 0.15em;
}


.shop-promo-sales-badge--pct .bi-fire {
    font-size: 1.05em;
    line-height: 1;
    opacity: 0.95;
}


.shop-promo-sales-badge--pct .shop-promo-sales-badge__pct {
    font-variant-numeric: tabular-nums;
}


.shop-promo-sales-badge-on-card {
    box-shadow: 0 0.3rem 0.65rem rgba(15, 23, 42, 0.18);
}


/* Startseite: seitliches Aktions-Widget (fixiert, schließbar) */
.shop-promo-index-widget {
    position: fixed;
    z-index: 1040;
    width: min(17.5rem, calc(100vw - 1.25rem));
    max-height: min(72vh, 30rem);
    display: flex;
    flex-direction: column;
    min-height: 0;
    background: transparent;
    color: var(--bs-body-color);
    border: none;
    box-shadow: none;
    top: 50%;
    transform: translateY(-50%);
}


.shop-promo-index-widget__panel {
    flex: 1 1 auto;
    min-height: 0;
    max-height: 100%;
    display: flex;
    flex-direction: column;
}


.shop-promo-index-widget__panel > .card {
    min-height: 0;
}


.shop-promo-index-widget--right {
    right: 0;
    left: auto;
}


.shop-promo-index-widget--right .shop-promo-index-widget__panel > .card {
    border-radius: 0.75rem 0 0 0.75rem !important;
    border: 1px solid var(--bs-border-color-translucent) !important;
    box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.18) !important;
    background: var(--bs-body-bg);
}


.shop-promo-index-widget--left {
    right: auto;
    left: 0;
}


.shop-promo-index-widget--left .shop-promo-index-widget__panel > .card {
    border-radius: 0 0.75rem 0.75rem 0 !important;
    border: 1px solid var(--bs-border-color-translucent) !important;
    box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.18) !important;
    background: var(--bs-body-bg);
}


.shop-promo-index-widget--right .shop-promo-index-widget__panel--slide-in {
    animation: shop-promo-panel-slide-in-right 3s ease-out forwards;
}


.shop-promo-index-widget--left .shop-promo-index-widget__panel--slide-in {
    animation: shop-promo-panel-slide-in-left 3s ease-out forwards;
}


.shop-promo-index-widget__body {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}


.shop-promo-index-widget__item:last-child {
    border-bottom: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}


.shop-promo-index-widget__code {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    border-radius: 0.35rem;
    background: var(--bs-tertiary-bg);
    border: 1px solid var(--bs-border-color-translucent);
}


[data-bs-theme="dark"] .shop-promo-index-widget__code {
    background: var(--bs-secondary-bg, #2b3035);
    border-color: var(--bs-border-color-translucent, rgba(255, 255, 255, 0.12));
}


@media (max-width: 767.98px) {
    .shop-promo-index-widget {
        top: auto;
        bottom: calc(var(--shop-app-chrome-height, 56px) + 0.75rem);
        transform: none;
        border-radius: 0.75rem !important;
        max-height: min(50vh, 22rem);
        width: min(18rem, calc(100vw - 1.3rem));
    }

    .shop-promo-index-widget--right {
        right: 0.65rem;
        left: auto;
    }

    .shop-promo-index-widget--left {
        left: 0.65rem;
        right: auto;
    }

    .shop-promo-index-widget__panel > .card {
        border-radius: 0.75rem !important;
    }

    @keyframes shop-promo-slide-in-mobile {
        from {
            opacity: 0;
            transform: translateY(10px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .shop-promo-index-widget__panel--slide-in {
        animation: shop-promo-slide-in-mobile 3s ease-out forwards !important;
    }
}


/* Homepage promo widget: collapsed “peek” mode (percent tab only — clip, no squashed shell) */
.shop-promo-index-widget--peek {
    display: flex;
    flex-direction: unset;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    width: auto;
    max-width: min(22rem, calc(100vw - 1rem));
    max-height: none;
    overflow: visible;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    height: fit-content;
    transform: none;
    --shop-promo-shell-w: min(17.5rem, calc(100vw - 1.25rem));
    --shop-promo-peek-tab-w: 3.125rem;
    transition: max-width 0.32s ease, box-shadow 0.32s ease;
}


/* Collapsed: narrow viewport clips inner — only the handle stays visible (right: last column, left: first) */
.shop-promo-index-widget--peek.shop-promo-index-widget--peek-collapsed {
    max-width: var(--shop-promo-peek-tab-w);
    overflow: hidden;
    border-radius: 0.65rem 0 0 0.65rem;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.14);
}


.shop-promo-index-widget--peek.shop-promo-index-widget--peek-collapsed.shop-promo-index-widget--left {
    border-radius: 0 0.65rem 0.65rem 0;
    justify-content: flex-start;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--peek-collapsed.shop-promo-index-widget--right {
    border-radius: 0.65rem 0 0 0.65rem;
    justify-content: flex-end;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--peek-expanded {
    max-width: min(22rem, calc(100vw - 1rem));
    overflow: visible;
}


/* Ausgeklappt: nur das Panel, kein blauer Prozent-Streifen am Rand */
.shop-promo-index-widget--peek.shop-promo-index-widget--peek-expanded .shop-promo-index-widget__peek-tab {
    display: none !important;
}


.shop-promo-index-widget--peek .shop-promo-index-widget__inner {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    flex-shrink: 0;
    width: max-content;
    max-width: none;
    transform: none;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--right .shop-promo-index-widget__inner {
    flex-direction: row-reverse;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--left .shop-promo-index-widget__inner {
    flex-direction: row;
}


.shop-promo-index-widget--peek .shop-promo-index-widget__inner--slide-in {
    animation: shop-promo-peek-inner-slide-in 3s ease-out forwards;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--left .shop-promo-index-widget__inner--slide-in {
    animation: shop-promo-peek-inner-slide-in-left 3s ease-out forwards;
}


.shop-promo-index-widget__peek-tab {
    flex: 0 0 var(--shop-promo-peek-tab-w, 3.125rem);
    width: var(--shop-promo-peek-tab-w, 3.125rem);
    min-height: 5.75rem;
    border: none;
    border-radius: inherit;
    background: var(--bs-primary);
    color: #fff;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;
    padding: 0.4rem 0.2rem;
    cursor: pointer;
    line-height: 1.05;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--peek-collapsed .shop-promo-index-widget__peek-tab {
    border-radius: inherit;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--right .shop-promo-index-widget__peek-tab {
    border-radius: 0.65rem 0 0 0.65rem;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--left .shop-promo-index-widget__peek-tab {
    border-radius: 0 0.65rem 0.65rem 0;
}


.shop-promo-index-widget__peek-label {
    font-size: 0.58rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: rgba(255, 255, 255, 0.88);
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}


.shop-promo-index-widget__peek-pct {
    font-size: 1.15rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}


.shop-promo-index-widget--peek .shop-promo-index-widget__shell {
    width: var(--shop-promo-shell-w, min(17.5rem, calc(100vw - 1.25rem)));
    max-height: min(72vh, 30rem);
    display: flex;
    flex-direction: column;
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    border: 1px solid var(--bs-border-color-translucent) !important;
    box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.18) !important;
    overflow: hidden;
    border-radius: 0.75rem 0 0 0.75rem !important;
}


.shop-promo-index-widget--peek .shop-promo-index-widget__body {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--left .shop-promo-index-widget__shell {
    border-radius: 0 0.75rem 0.75rem 0 !important;
}


.shop-promo-index-widget--peek.shop-promo-index-widget--peek-collapsed .shop-promo-index-widget__peek-tab {
    animation: shop-promo-peek-pulse 2.6s ease-in-out infinite;
}


@media (max-width: 767.98px) {
    /* Peek: stacked above accessibility FAB; compact “-25%” only (see accessibilityCertificate.css :root) */
    .shop-promo-index-widget--peek {
        top: auto;
        bottom: var(--shop-promo-stack-bottom, calc(5.25rem + 3rem + 0.5rem));
        margin-top: 0;
        margin-bottom: 0;
        height: auto;
        --shop-promo-shell-w: min(16rem, calc(100vw - 3.5rem));
    }

    .shop-promo-index-widget--peek.shop-promo-index-widget--right {
        right: 0.75rem;
        left: auto;
    }

    .shop-promo-index-widget--peek.shop-promo-index-widget--left {
        left: 0.75rem;
        right: auto;
    }

    @media (min-width: 576px) {
        .shop-promo-index-widget--peek.shop-promo-index-widget--right {
            right: 1rem;
        }

        .shop-promo-index-widget--peek.shop-promo-index-widget--left {
            left: 1rem;
        }
    }

    .shop-promo-index-widget--peek .shop-promo-index-widget__peek-label {
        display: none !important;
    }

    .shop-promo-index-widget--peek .shop-promo-index-widget__peek-pct {
        writing-mode: horizontal-tb;
        transform: none;
        font-size: 0.8125rem;
        font-weight: 800;
        letter-spacing: -0.04em;
        line-height: 1;
    }

    /* Collapsed: round chip, panel hidden (fit-content on aside was showing tab + banner) */
    .shop-promo-index-widget--peek.shop-promo-index-widget--peek-collapsed {
        display: flex !important;
        align-items: center;
        justify-content: center !important;
        width: 2.875rem !important;
        height: 2.875rem !important;
        max-width: 2.875rem !important;
        max-height: 2.875rem !important;
        padding: 0 !important;
        border-radius: 50% !important;
        box-shadow: 0 0.35rem 1.1rem rgba(0, 0, 0, 0.22) !important;
        overflow: hidden !important;
    }

    .shop-promo-index-widget--peek.shop-promo-index-widget--peek-collapsed .shop-promo-index-widget__shell {
        display: none !important;
    }

    .shop-promo-index-widget--peek.shop-promo-index-widget--peek-collapsed .shop-promo-index-widget__inner {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        max-width: none;
        flex-direction: row;
    }

    .shop-promo-index-widget--peek.shop-promo-index-widget--peek-collapsed .shop-promo-index-widget__peek-tab {
        animation: none !important;
        flex: 1 1 auto !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 50% !important;
        display: flex !important;
        flex-direction: row;
        align-items: center;
        justify-content: center;
    }

    /* Expanded: full panel only after tap */
    .shop-promo-index-widget--peek.shop-promo-index-widget--peek-expanded {
        width: auto !important;
        height: auto !important;
        max-width: min(17rem, calc(100vw - 2rem)) !important;
        max-height: none !important;
        border-radius: 0 !important;
        overflow: visible !important;
        box-shadow: none !important;
    }

    .shop-promo-index-widget--peek.shop-promo-index-widget--peek-expanded .shop-promo-index-widget__shell {
        display: flex !important;
        flex-direction: column;
    }

    .shop-promo-index-widget--peek.shop-promo-index-widget--peek-expanded .shop-promo-index-widget__inner {
        width: max-content;
        max-width: min(17rem, calc(100vw - 2rem));
        transform: none !important;
    }

    .shop-promo-index-widget--peek.shop-promo-index-widget--peek-expanded.shop-promo-index-widget--right .shop-promo-index-widget__inner {
        flex-direction: row-reverse;
    }

    .shop-promo-index-widget--peek.shop-promo-index-widget--peek-expanded.shop-promo-index-widget--left .shop-promo-index-widget__inner {
        flex-direction: row;
    }

    .shop-promo-index-widget--peek .shop-promo-index-widget__shell {
        width: var(--shop-promo-shell-w, min(16rem, calc(100vw - 3.5rem)));
        max-height: min(58vh, 24rem);
    }
}

/* Premium eStore header: Admin header.search_layout (compact vs fullwidth) */
@media (min-width: 992px) {
    .pd-estore-main__inner[data-pd-search-layout="fullwidth"],
    .pd-estore-main__inner:has(.pd-estore-search--fullwidth) {
        display: flex !important;
        flex-wrap: nowrap;
        align-items: center;
        gap: 1rem 1.25rem;
    }

    .pd-estore-main__inner[data-pd-search-layout="fullwidth"] .pd-estore-brand {
        flex: 0 0 auto;
    }

    .pd-estore-main__inner[data-pd-search-layout="fullwidth"] .pd-estore-search.shop-header-search--navbar,
    .pd-estore-search.pd-estore-search--fullwidth.shop-header-search--navbar {
        flex: 1 1 0% !important;
        max-width: none !important;
        min-width: 0 !important;
        width: 1% !important;
    }

    .pd-estore-main__inner[data-pd-search-layout="fullwidth"] .pd-estore-actions {
        flex: 0 0 auto;
    }

    .pd-estore-main__inner[data-pd-search-layout="compact"] .pd-estore-search.shop-header-search--navbar {
        flex: 0 1 auto !important;
        max-width: min(26rem, 42vw) !important;
        width: 100% !important;
        justify-self: start;
    }
}

/* Account: Hinweise-Badges (wie Konto-Kachel) */
body.pd-body .shop-notice-tile-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.65rem;
    padding: 0.28rem 0.55rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1;
    color: #fff;
    border: 1px solid color-mix(in srgb, var(--pd-primary) 55%, #fff 45%);
    border-radius: 999px;
    background: linear-gradient(
        160deg,
        color-mix(in srgb, var(--pd-primary) 92%, #fff 8%) 0%,
        color-mix(in srgb, var(--pd-primary) 55%, #0f172a 45%) 100%
    );
    box-shadow: 0 0.2rem 0.55rem color-mix(in srgb, var(--pd-primary) 35%, transparent);
}

body.pd-body .shop-notice-read-pill.pd-badge {
    font-size: 0.72rem;
    font-weight: 700;
    padding: 0.3rem 0.65rem;
    color: #fff;
    background: color-mix(in srgb, var(--pd-primary) 88%, #fff 12%);
    border: 1px solid color-mix(in srgb, var(--pd-primary) 40%, transparent);
    box-shadow: 0 0.15rem 0.45rem color-mix(in srgb, var(--pd-primary) 28%, transparent);
}

/* Ein Logo pro Theme (Hinweise, Banner-Fallback) */
body.pd-body .shop-brand-logo-single__img {
    max-height: var(--shop-brand-logo-max, 40px);
    width: auto;
    object-fit: contain;
}

html[data-bs-theme="light"] body.pd-body .shop-brand-logo-single__img--dark,
body.pd-body:not([data-bs-theme="dark"]) .shop-brand-logo-single__img--dark {
    display: none !important;
}

html[data-bs-theme="dark"] body.pd-body .shop-brand-logo-single__img--light {
    display: none !important;
}

/* HD Portal: leere Zustände & Hub */
body.pd-body .hd-portal-empty {
    border-radius: calc(var(--pd-radius) * 1.35);
    border: 1px solid color-mix(in srgb, var(--pd-primary) 14%, transparent);
}

body.pd-body .hd-portal-empty .btn-primary {
    border-radius: 999px;
    font-weight: 700;
    background: var(--pd-primary);
    border-color: var(--pd-primary);
}

body.pd-body .hd-portal-body .nav-pills .nav-link.active {
    background: var(--pd-primary);
    color: #fff;
}

body.pd-body .hd-portal-password-form .btn-primary {
    border-radius: 999px;
    font-weight: 700;
}

body.pd-body .hd-pkg__inner {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 100%;
}

body.pd-body .hd-pkg .hosting-pkg-cta {
    margin-top: auto;
}

/* Konto: leere Zustände (Bewertungen, Preisvorschläge, …) */
body.pd-body .pd-account-empty {
    border-radius: calc(var(--pd-radius) * 1.35);
    border: 1px solid color-mix(in srgb, var(--pd-primary) 14%, transparent);
}

body.pd-body .pd-account-empty__visual {
    background: linear-gradient(145deg, color-mix(in srgb, var(--pd-primary) 88%, #0f172a) 0%, var(--pd-primary) 55%, color-mix(in srgb, var(--pd-hover) 70%, #1e3a8a) 100%);
}

body.pd-body .pd-account-empty__icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4.5rem;
    height: 4.5rem;
    border-radius: 1.25rem;
    background: color-mix(in srgb, #fff 18%, transparent);
    color: #fff;
    font-size: 2.25rem;
}

body.pd-body .pd-account-empty .btn-primary {
    border-radius: 999px;
    font-weight: 700;
}

/* HD Portal leere Zustände (Domains, DNS, Hosting) */
body.pd-body .pd-hd-portal-empty:not(.pd-hd-portal-empty--wide) {
    border-radius: calc(var(--pd-radius) * 1.35);
    border: 1px solid color-mix(in srgb, var(--pd-primary) 14%, transparent);
}

body.pd-body .pd-hd-portal-empty__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4.25rem;
    height: 4.25rem;
    border-radius: 1.15rem;
    background: color-mix(in srgb, var(--pd-primary) 12%, var(--pd-card));
    color: var(--pd-primary);
    font-size: 2rem;
}


body.pd-body .pd-hd-portal-empty .btn-primary {
    border-radius: 999px;
    font-weight: 700;
    min-width: 12rem;
}

/* Hinweis-Banner Startseite: Light */
body.pd-mode-light .pd-shop-notice-banner--strip-mode-light {
    background: linear-gradient(135deg, var(--pd-notice-grad-start, #dbeafe), var(--pd-notice-grad-end, #eff6ff));
    border: 1px solid color-mix(in srgb, var(--pd-primary) 22%, #cbd5e1);
    box-shadow: 0 0.35rem 1.25rem color-mix(in srgb, var(--pd-primary) 12%, transparent);
}

body.pd-mode-light .pd-shop-notice-banner--strip-mode-light .pd-shop-notice-banner__title {
    color: var(--pd-notice-title-color, #0f172a);
}

body.pd-mode-light .pd-shop-notice-banner--strip-mode-light .pd-shop-notice-banner__text {
    color: var(--pd-notice-text-color, #334155);
}

body.pd-mode-light .pd-shop-notice-banner--strip-mode-light .pd-shop-notice-banner__btn {
    border-color: color-mix(in srgb, var(--pd-primary) 35%, transparent);
}

/* Hinweis-Banner Startseite: Dark */
body.pd-mode-dark .pd-shop-notice-banner--strip-mode-dark {
    background: linear-gradient(135deg, var(--pd-notice-grad-start, #1e3a8a), var(--pd-notice-grad-end, #2563eb));
    border: 1px solid color-mix(in srgb, #fff 14%, transparent);
    box-shadow: 0 0.5rem 1.5rem color-mix(in srgb, #000 35%, transparent);
}

body.pd-mode-dark .pd-shop-notice-banner--strip-mode-dark .pd-shop-notice-banner__title {
    color: var(--pd-notice-title-color, #f8fafc);
}

body.pd-mode-dark .pd-shop-notice-banner--strip-mode-dark .pd-shop-notice-banner__text {
    color: var(--pd-notice-text-color, #e2e8f0);
}

/* Hinweise Konto */
body.pd-body .pd-shop-notice-banner.pd-shop-notice-banner--account {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0 1.5rem;
    align-items: start;
    padding-top: 2.35rem;
}

body.pd-body .pd-shop-notice-banner--account-mode-light {
    background: linear-gradient(135deg, var(--pd-notice-grad-start, #dbeafe), var(--pd-notice-grad-end, #eff6ff));
    border: 1px solid color-mix(in srgb, var(--pd-primary) 16%, transparent);
}

body.pd-body .pd-shop-notice-banner--account-mode-light .pd-shop-notice-banner__title {
    color: var(--pd-notice-title-color, #0f172a);
}

body.pd-body .pd-shop-notice-banner--account-mode-light .pd-shop-notice-banner__text {
    color: var(--pd-notice-text-color, #334155);
}

body.pd-body .pd-shop-notice-banner--account-mode-dark {
    background: linear-gradient(135deg, var(--pd-notice-grad-start, #1e3a8a), var(--pd-notice-grad-end, #2563eb));
    border: 1px solid color-mix(in srgb, #fff 10%, transparent);
}

body.pd-body .pd-shop-notice-banner--account-mode-dark .pd-shop-notice-banner__title {
    color: var(--pd-notice-title-color, #f8fafc);
}

body.pd-body .pd-shop-notice-banner--account-mode-dark .pd-shop-notice-banner__text {
    color: var(--pd-notice-text-color, #e2e8f0);
}

body.pd-body .pd-shop-notice-banner--account .pd-shop-notice-banner__status-corner {
    position: absolute;
    top: 0.75rem;
    right: 0.85rem;
    z-index: 5;
}

body.pd-body .pd-shop-notice-banner--account .pd-shop-notice-banner__body {
    grid-column: 1 !important;
    padding-right: 0 !important;
    max-width: none;
}

body.pd-body .pd-shop-notice-banner--account .pd-shop-notice-banner__logo-slot {
    grid-column: 2;
    align-self: center;
    justify-self: end;
    min-width: 5.5rem;
    max-width: 9.5rem;
    padding-top: 0.25rem;
}

body.pd-body .pd-shop-notice-banner--account-has-logo .pd-shop-notice-banner__logo-slot {
    padding-top: 1.75rem;
}

body.pd-body .pd-shop-notice-banner--account .pd-shop-notice-banner__logo {
    position: static !important;
    top: auto !important;
    right: auto !important;
    max-height: 48px;
    max-width: 100%;
    width: auto;
    display: block;
    margin: 0 0 0 auto;
}

body.pd-body .pd-account-notice-read-pill {
    background: #1e3a8a !important;
    color: #fff !important;
    border: 1px solid color-mix(in srgb, #1e3a8a 80%, #fff) !important;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 0.3rem 0.7rem;
    border-radius: 999px;
    box-shadow: 0 0.15rem 0.45rem color-mix(in srgb, #1e3a8a 35%, transparent);
}

body.pd-body .pd-shop-notice-banner--account-mode-dark .pd-account-notice-read-pill {
    background: #0f172a !important;
    border-color: color-mix(in srgb, #fff 28%, #0f172a) !important;
}

body.pd-body .pd-shop-notice-banner--account-has-logo .shop-notice-body img,
body.pd-body .pd-shop-notice-banner--account-has-logo .shop-notice-body .shop-brand-logos,
body.pd-body .pd-shop-notice-banner--account-has-logo .shop-notice-body picture {
    display: none !important;
}

body.pd-body .pd-account-notice-item.pd-shop-notice-banner {
    max-width: 100%;
}

@media (max-width: 575.98px) {
    body.pd-body .pd-shop-notice-banner--account {
        grid-template-columns: 1fr;
    }

    body.pd-body .pd-shop-notice-banner--account .pd-shop-notice-banner__logo-slot {
        grid-column: 1;
        justify-self: end;
        margin-bottom: 0.5rem;
    }
}

body.pd-body .pd-account-notice-mark-read {
    background: #fff !important;
    color: var(--pd-primary) !important;
    border: 2px solid #fff !important;
    font-size: 0.8rem;
    padding: 0.4rem 0.9rem;
}

body.pd-body .pd-account-notice-item .shop-notice-body ul {
    margin-bottom: 0;
    padding-left: 1.1rem;
}

body.pd-body .hd-portal-body .nav-pills .nav-link {
    border-radius: 999px;
    font-weight: 600;
}

body.pd-body .hd-portal-body .nav-pills .nav-link.active {
    background: var(--pd-primary);
    color: #fff;
}

body.pd-body .hd-portal-body h2.h5 {
    font-weight: 800;
}

/* HD Hub (Hosting & Domains Übersicht) */
body.pd-body .pd-hd-hub-lead {
    font-size: 1rem;
    max-width: 40rem;
}

body.pd-body .pd-hd-hub-tile {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    height: 100%;
    min-height: 13.5rem;
    padding: 1.35rem 1.4rem 1.25rem;
    border-radius: calc(var(--pd-radius) * 1.35);
    background: var(--pd-card);
    border: 1px solid color-mix(in srgb, var(--pd-primary) 14%, transparent);
    box-shadow: var(--pd-shadow);
    text-decoration: none;
    color: inherit;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

body.pd-body .pd-hd-hub-tile:hover {
    transform: translateY(-3px);
    box-shadow: var(--pd-shadow-lg, var(--pd-shadow));
    border-color: color-mix(in srgb, var(--pd-primary) 35%, transparent);
    color: inherit;
}

body.pd-body .pd-hd-hub-tile__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.5rem;
    height: 3.5rem;
    margin-bottom: 1rem;
    border-radius: 1.1rem;
    font-size: 1.75rem;
    background: color-mix(in srgb, var(--pd-primary) 12%, var(--pd-card));
    color: var(--pd-primary);
}

body.pd-body .pd-hd-hub-tile--domains .pd-hd-hub-tile__icon,
body.pd-body .pd-hd-hub-tile--dns .pd-hd-hub-tile__icon,
body.pd-body .pd-hd-hub-tile--hosting .pd-hd-hub-tile__icon {
    width: 4.75rem;
    height: 4.75rem;
    font-size: 2.35rem;
    margin-bottom: 1.15rem;
}

body.pd-body .pd-hd-hub-tile--domains .pd-hd-hub-tile__icon {
    background: color-mix(in srgb, #198754 14%, var(--pd-card));
    color: #198754;
}

body.pd-body .pd-hd-hub-tile__title {
    margin: 0 0 0.5rem;
    font-size: 1.15rem;
    font-weight: 800;
    font-family: var(--pd-font-heading);
    color: var(--pd-text);
}

body.pd-body .pd-hd-hub-tile__text {
    margin: 0 0 1rem;
    flex-grow: 1;
    font-size: 0.9rem;
    line-height: 1.5;
    color: color-mix(in srgb, var(--pd-text) 68%, transparent);
}

body.pd-body .pd-hd-hub-tile__cta {
    display: inline-flex;
    align-items: center;
    gap: 0.15rem;
    margin-top: auto;
    padding: 0.45rem 1rem;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--pd-primary);
    background: color-mix(in srgb, var(--pd-primary) 10%, var(--pd-card));
    border: 1px solid color-mix(in srgb, var(--pd-primary) 22%, transparent);
    border-radius: 999px;
    transition: background 0.15s ease, color 0.15s ease;
}

body.pd-body a.pd-hd-hub-tile:hover .pd-hd-hub-tile__cta {
    background: var(--pd-primary);
    color: #fff;
    border-color: var(--pd-primary);
}

body.pd-body .pd-hd-hub__grid {
    max-width: 100%;
}

body.pd-body a.pd-hd-hub-tile--status-card {
    text-decoration: none;
    color: inherit;
}

body.pd-body .pd-hd-hub-tile--status-card .pd-hd-hub-tile__icon {
    background: color-mix(in srgb, #0ea5e9 14%, var(--pd-card));
    color: #0284c7;
}

body.pd-body .pd-hd-portal-empty__visual {
    background: linear-gradient(145deg, color-mix(in srgb, var(--pd-primary) 88%, #0f172a) 0%, var(--pd-primary) 55%, color-mix(in srgb, var(--pd-hover) 70%, #1e3a8a) 100%);
}

body.pd-body .pd-hd-portal-empty__icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4.5rem;
    height: 4.5rem;
    border-radius: 1.25rem;
    background: color-mix(in srgb, #fff 18%, transparent);
    color: #fff;
    font-size: 2.25rem;
}

body.pd-body .pd-hd-portal-empty__lead {
    font-size: 1rem;
    line-height: 1.55;
    color: color-mix(in srgb, var(--pd-text) 72%, transparent);
}

/* Preisvorschläge */
body.pd-body .pd-account-offer-card {
    position: relative;
    border-radius: calc(var(--pd-radius) * 1.25);
    border: 1px solid color-mix(in srgb, var(--pd-primary) 12%, transparent);
    box-shadow: var(--pd-shadow);
}

body.pd-body .pd-account-offer-card__accent {
    height: 4px;
    background: linear-gradient(90deg, var(--pd-primary), color-mix(in srgb, var(--pd-hover) 80%, var(--pd-primary)));
}

body.pd-body .pd-account-offer-card__vendor {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.35rem 0.5rem;
    font-size: 0.85rem;
}

body.pd-body .pd-account-offer-card__vendor-label {
    color: color-mix(in srgb, var(--pd-text) 55%, transparent);
    font-weight: 600;
}

body.pd-body .pd-account-offer-card__vendor-name {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--pd-primary) 8%, var(--pd-card));
    border: 1px solid color-mix(in srgb, var(--pd-primary) 18%, transparent);
    font-weight: 700;
    color: var(--pd-text);
}

body.pd-body .pd-account-offer-card__vendor-name::before {
    content: "";
    display: inline-block;
    width: 0.45rem;
    height: 0.45rem;
    margin-right: 0.4rem;
    border-radius: 50%;
    background: var(--pd-primary);
}

body.pd-body .pd-account-offer-card__product a {
    color: var(--pd-primary);
    font-weight: 700;
}

body.pd-body .pd-account-offer-card__metric {
    padding: 1rem 1.25rem;
    border-right: 1px solid color-mix(in srgb, var(--pd-text) 8%, transparent);
}

body.pd-body .pd-account-offer-card__metric:last-child {
    border-right: 0;
}

body.pd-body .pd-account-offer-card__metric-label {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: color-mix(in srgb, var(--pd-text) 55%, transparent);
    margin-bottom: 0.35rem;
}

body.pd-body .pd-account-offer-card__metric-value {
    display: block;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--pd-text);
}

body.pd-body .pd-account-offer-card__metric--highlight {
    background: color-mix(in srgb, var(--pd-primary) 6%, var(--pd-card));
}

body.pd-body .pd-account-offer-card__price {
    font-size: 1.35rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    color: var(--pd-primary);
    letter-spacing: -0.02em;
}

body.pd-body .pd-account-offer-card__metric--counter .pd-account-offer-card__price {
    color: color-mix(in srgb, var(--pd-primary) 85%, #0d9488);
}

@media (max-width: 575.98px) {
    body.pd-body .pd-account-offer-card__metric {
        border-right: 0;
        border-bottom: 1px solid color-mix(in srgb, var(--pd-text) 8%, transparent);
    }

    body.pd-body .pd-account-offer-card__metric:last-child {
        border-bottom: 0;
    }
}

/* KeyHelp Hosting-Detail: Verwaltung & Kurzlinks */
body.pd-body .hd-hosting-show .hd-hosting-account-card .btn-primary,
body.pd-body .hd-hosting-show .hd-hosting-account-card .btn-outline-primary {
    border-radius: 999px;
    font-weight: 700;
}

body.pd-body .hd-hosting-show .hd-portal-password-form .form-label {
    font-size: 0.8rem;
    font-weight: 600;
}

body.pd-body .hd-hosting-show .hd-hosting-account-card .row.g-2.pt-1 .btn-outline-secondary {
    border-radius: calc(var(--pd-radius) * 0.85);
    min-height: 4.5rem;
    border-color: color-mix(in srgb, var(--pd-primary) 22%, transparent);
}

body.pd-body .hd-hosting-show .hd-hosting-account-card .nav-tabs .nav-link.active {
    background: var(--pd-primary);
    color: #fff;
    border-color: var(--pd-primary);
}

body.pd-body .pd-account-notice-item .shop-notice-body img,
body.pd-body .pd-account-notice-item .shop-notice-body .shop-brand-logos {
    display: none !important;
}

/* Footer: App Store / Google Play ohne Link */
body.pd-body .pd-footer-store-btn--soon {
    position: relative;
    cursor: help;
    opacity: 0.92;
}

body.pd-body .pd-footer-store-soon {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
    border-radius: inherit;
    background: color-mix(in srgb, #dc2626 88%, #0f172a 12%);
    color: #fff;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-align: center;
    line-height: 1.2;
    opacity: 0;
    visibility: hidden;
    transform: scale(0.96);
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
    pointer-events: none;
    z-index: 2;
    box-shadow: 0 0.35rem 1rem color-mix(in srgb, #dc2626 45%, transparent);
}

body.pd-body .pd-footer-store-btn--soon:hover .pd-footer-store-soon,
body.pd-body .pd-footer-store-btn--soon:focus-visible .pd-footer-store-soon {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
}

/* Suche: Filter in einer Zeile (Desktop) */
body.pd-body .pd-search-form__body {
    display: block;
}

body.pd-body .shop-search-form-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 0.65rem 0.75rem;
}

body.pd-body .shop-search-form-toolbar__q {
    flex: 1 1 10rem;
    min-width: min(100%, 10rem);
}

body.pd-body .shop-search-form-toolbar__field {
    flex: 0 1 10.5rem;
    min-width: min(100%, 9.5rem);
}

body.pd-body .shop-search-form-toolbar__submit {
    flex: 0 0 auto;
    min-width: min(100%, 7.5rem);
}

body.pd-body .pd-search-form__view {
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid color-mix(in srgb, var(--pd-primary) 12%, transparent);
}

@media (max-width: 991.98px) {
    body.pd-body .pd-search-form .card-body {
        padding: 0.85rem 0.9rem;
    }

    body.pd-body .shop-search-form-toolbar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: end;
        gap: 0.55rem 0.65rem;
    }

    body.pd-body .shop-search-form-toolbar__q,
    body.pd-body .shop-search-form-toolbar__submit {
        grid-column: 1 / -1;
    }

    body.pd-body .pd-search-form__view {
        margin-top: 0.35rem;
        padding-top: 0.65rem;
    }

    body.pd-body .pd-search-form__view .btn-group {
        width: 100%;
    }

    body.pd-body .pd-search-view-toggle .btn {
        flex: 1 1 50%;
    }

    body.pd-body .pd-search-result-item {
        display: grid;
        grid-template-columns: 3.25rem minmax(0, 1fr);
        grid-template-areas:
            "media body"
            "actions actions";
        gap: 0.45rem 0.65rem;
        align-items: start;
        padding: 0.75rem 0.85rem;
    }

    body.pd-body .pd-search-result-item__media {
        grid-area: media;
    }

    body.pd-body .pd-search-result-item__body {
        grid-area: body;
        min-width: 0;
    }

    body.pd-body .pd-search-result-item__actions {
        grid-area: actions;
        display: flex;
        justify-content: flex-end;
        padding-top: 0.35rem;
        margin-top: 0.1rem;
        border-top: 1px solid color-mix(in srgb, var(--pd-primary) 10%, transparent);
    }

    body.pd-body .pd-search-result-item__thumb,
    body.pd-body .pd-search-result-item__media .shop-live-search-thumb {
        width: 3.25rem;
        height: 3.25rem;
        min-width: 3.25rem;
        min-height: 3.25rem;
        object-fit: cover;
    }

    body.pd-body .pd-search-result-item__title {
        font-size: 0.92rem;
        line-height: 1.35;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
    }

    body.pd-body .pd-search-result-item__price .small.text-body-secondary {
        font-size: 0.72rem;
        line-height: 1.35;
        margin-bottom: 0 !important;
    }

    body.pd-body .shop-search-result-actions--premium {
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        justify-content: flex-end;
        gap: 0.5rem;
        width: 100%;
    }

    body.pd-body .shop-search-result-actions--premium .shop-product-card-quick-cart-form {
        flex: 0 0 auto;
        flex-direction: row;
    }

    body.pd-body .shop-search-result-actions__details--premium {
        min-height: 2.35rem;
        padding: 0.4rem 0.95rem;
        font-size: 0.8rem;
    }

    body.pd-body .shop-search-result-actions--premium .shop-product-card-quick-cart-form .btn {
        width: 2.35rem;
        height: 2.35rem;
        min-width: 2.35rem;
        min-height: 2.35rem;
    }
}

@media (min-width: 992px) {
    body.pd-body .pd-search-form__body {
        display: flex;
        flex-wrap: nowrap;
        align-items: flex-end;
        gap: 0.75rem;
    }

    body.pd-body .shop-search-form-toolbar {
        flex: 1 1 auto;
        flex-wrap: nowrap;
        gap: 0.55rem;
        min-width: 0;
    }

    body.pd-body .shop-search-form-toolbar__q {
        flex: 1 1 8rem;
        min-width: 6.5rem;
        max-width: none;
    }

    body.pd-body .shop-search-form-toolbar__field {
        flex: 0 1 8.5rem;
        width: auto;
        min-width: 6.75rem;
        max-width: 9.5rem;
    }

    body.pd-body .shop-search-form-toolbar__submit {
        flex: 0 0 auto;
        min-width: 6.5rem;
    }

    body.pd-body .shop-search-form-toolbar__submit .btn {
        white-space: nowrap;
    }

    body.pd-body .pd-search-form__view {
        flex: 0 0 auto;
        margin: 0;
        padding: 0;
        border: 0;
        min-width: 9.5rem;
    }

    body.pd-body .pd-search-view-toggle .btn {
        min-width: 4.1rem;
    }
}

/* Suche: Premium-Aktionen in der Listenansicht */
body.pd-body .pd-search-result-item {
    padding-top: 0.85rem;
    padding-bottom: 0.85rem;
}

@media (min-width: 992px) {
    body.pd-body .pd-search-result-item {
        display: flex;
        flex-wrap: nowrap;
        align-items: flex-start;
        gap: 0.75rem;
    }

    body.pd-body .pd-search-result-item__media {
        flex: 0 0 auto;
    }

    body.pd-body .pd-search-result-item__body {
        flex: 1 1 auto;
        min-width: 0;
    }

    body.pd-body .pd-search-result-item__actions {
        flex: 0 0 auto;
        align-self: center;
    }

    body.pd-body .pd-search-result-item__thumb,
    body.pd-body .pd-search-result-item__media .shop-live-search-thumb {
        width: 3rem;
        height: 3rem;
        min-width: 3rem;
        min-height: 3rem;
        object-fit: cover;
    }
}

body.pd-body .shop-search-result-actions--premium {
    display: inline-flex;
    flex-flow: row nowrap;
    align-items: center;
    gap: 0.55rem;
}

body.pd-body .shop-search-result-actions--premium .shop-product-card-quick-cart-form {
    margin: 0;
}

body.pd-body .shop-search-result-actions--premium .shop-product-card-quick-cart-form .btn {
    width: 2.45rem;
    height: 2.45rem;
    min-width: 2.45rem;
    min-height: 2.45rem;
    padding: 0;
    border-radius: 50%;
    border: none;
    background: var(--pd-primary);
    color: #fff !important;
    box-shadow: 0 6px 16px color-mix(in srgb, var(--pd-primary) 34%, transparent);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

body.pd-body .shop-search-result-actions--premium .shop-product-card-quick-cart-form .btn:hover {
    background: color-mix(in srgb, var(--pd-primary) 88%, #000);
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 8px 18px color-mix(in srgb, var(--pd-primary) 40%, transparent);
}

body.pd-body .shop-search-result-actions--premium .shop-product-card-quick-cart-form .btn .fa-solid,
body.pd-body .shop-search-result-actions--premium .shop-product-card-quick-cart-form .btn .bi {
    font-size: 0.95rem;
    line-height: 1;
    color: #fff !important;
}

body.pd-body .shop-search-result-actions__details--premium {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.45rem;
    padding: 0.45rem 1.05rem;
    border-radius: 999px;
    border: 1.5px solid color-mix(in srgb, var(--pd-primary) 55%, transparent);
    background: color-mix(in srgb, var(--pd-primary) 6%, var(--pd-card));
    color: var(--pd-primary);
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

body.pd-body .shop-search-result-actions__details--premium:hover {
    background: var(--pd-primary);
    border-color: var(--pd-primary);
    color: #fff;
    transform: translateY(-1px);
}

/* Suche: Raster = Katalog-Karten */
body.pd-body .pd-search-results-grid {
    margin-top: 0.25rem;
}

@media (min-width: 992px) {
    body.pd-body .pd-search-results-grid.pd-grid--catalog,
    body.pd-body .pd-brand-page-grid.pd-grid--catalog {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Merkzettel: Platzhalter füllen Media-Bereich wie Katalogkarten */
body.pd-body .shop-wishlist-card .shop-card-media-ph {
    background: transparent !important;
}

body.pd-body .shop-wishlist-card .shop-card-media-ph > .catalog-thumb-placeholder {
    position: absolute;
    inset: 0;
    border-radius: 0;
    width: 100%;
    height: 100%;
    min-height: 100%;
    display: flex !important;
    background: linear-gradient(145deg, color-mix(in srgb, var(--pd-primary) 18%, var(--pd-secondary)), color-mix(in srgb, var(--pd-primary) 8%, var(--pd-card))) !important;
}

body.pd-body .shop-wishlist-card .shop-card-media-ph .catalog-thumb-placeholder__icon,
body.pd-body .shop-wishlist-card .shop-card-media-ph .pd-catalog-line-icon {
    font-size: clamp(2.75rem, 22%, 4rem) !important;
    color: color-mix(in srgb, var(--pd-primary) 55%, #fff) !important;
}

/* Konto: monatliche Abos — lange Produktnamen */
body.pd-body .account-orders-subs-app .account-subs-label {
    display: block;
    max-width: 13.5rem;
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1.35;
    word-break: break-word;
    overflow-wrap: anywhere;
    hyphens: auto;
}

body.pd-body .account-orders-subs-app td:first-child {
    max-width: 14rem;
    width: 14rem;
}

/* Hosting & Domains (Kundenportal) */
body.pd-body .pd-hd-portal-shell__nav .nav-link.active {
    background: var(--pd-primary);
    color: #fff;
    border-radius: 999px;
}

body.pd-body .pd-hd-portal-shell__body {
    max-width: min(100%, 88rem);
}

body.pd-body .pd-hd-portal-empty {
    border-radius: calc(var(--pd-radius) * 1.25);
    border: 1px solid color-mix(in srgb, var(--pd-primary) 12%, transparent);
}

body.pd-body .pd-hd-portal-empty .col-md-8 {
    flex: 1 1 auto;
    max-width: 100%;
}

body.pd-body .pd-hd-portal-shell__body .hd-hosting-index > .d-flex.mb-4 {
    padding-bottom: 0.75rem;
    border-bottom: 1px solid color-mix(in srgb, var(--pd-primary) 12%, transparent);
}

body.pd-body .pd-hd-hosting-card {
    border-radius: calc(var(--pd-radius) * 1.25);
    border: 1px solid color-mix(in srgb, var(--pd-primary) 12%, transparent);
    transition: box-shadow 0.2s ease;
}

body.pd-body .pd-hd-hosting-card:hover {
    box-shadow: var(--pd-shadow-lg, var(--pd-shadow)) !important;
}

body.pd-body .pd-hd-hosting-card .btn-primary {
    border-radius: 999px;
    font-weight: 700;
}

body.pd-body .pd-hd-portal-shell__body .hd-hosting-show {
    max-width: 100%;
}

body.pd-body .pd-hd-portal-shell__body .hd-hosting-show .card,
body.pd-body .pd-hd-portal-shell__body .hd-hosting-show .hd-hosting-account-card {
    border-radius: calc(var(--pd-radius) * 1.15);
    border: 1px solid color-mix(in srgb, var(--pd-primary) 10%, transparent);
    box-shadow: var(--pd-shadow);
}

/* HD Portal — zentrierter Empty State (DNS / Domains) */
/* DNS / Domains / Hosting — kompakte Empty State Card */
body.pd-body .pd-hd-portal-empty--wide,
body.pd-body .pd-hd-portal-empty {
    width: 100%;
    max-width: 100%;
    border-radius: calc(var(--pd-radius) * 1.35);
}

body.pd-body .pd-hd-portal-empty--wide .hd-portal-empty__lead,
body.pd-body .pd-hd-portal-empty .hd-portal-empty__lead {
    max-width: none;
    width: 100%;
    font-size: 1.02rem;
    line-height: 1.55;
    color: color-mix(in srgb, var(--pd-text) 72%, transparent);
}

body.pd-body .pd-hd-portal-empty--wide:not(.pd-hd-portal-empty--icon-rail) .hd-portal-empty__icon,
body.pd-body .pd-hd-portal-empty:not(.pd-hd-portal-empty--icon-rail) .hd-portal-empty__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    border-radius: 1.1rem;
    background: linear-gradient(145deg, color-mix(in srgb, var(--pd-primary) 88%, #0f172a) 0%, var(--pd-primary) 55%, color-mix(in srgb, var(--pd-hover) 70%, #1e3a8a) 100%);
    color: #fff;
    font-size: 2rem;
    box-shadow: 0 0.5rem 1.25rem color-mix(in srgb, var(--pd-primary) 22%, transparent);
}

body.pd-body .pd-hd-portal-empty--icon-rail {
    overflow: hidden;
}

body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__layout {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    min-height: 12.5rem;
}

body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__icon-rail {
    flex: 0 0 clamp(10rem, 32%, 17rem);
    width: clamp(10rem, 32%, 17rem);
    min-width: 10rem;
    max-width: 17rem;
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    padding: 1.5rem 1rem;
    background: linear-gradient(165deg, color-mix(in srgb, var(--pd-primary) 92%, #0f172a) 0%, var(--pd-primary) 48%, color-mix(in srgb, var(--pd-hover) 75%, #1e3a8a) 100%);
    color: #fff;
    container-type: size;
}

body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__icon-rail .hd-portal-empty__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 7rem !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: clamp(4.5rem, 12vw, 8.5rem) !important;
    font-size: min(8.5rem, 72cqmin, 88cqh) !important;
    line-height: 1 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__icon-rail .hd-portal-empty__icon i,
body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__icon-rail .hd-portal-empty__glyph {
    font-size: 1em !important;
    line-height: 1 !important;
    width: 1em;
    height: 1em;
    display: block;
}

body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__content {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1.25rem;
    padding: 1.35rem 1.5rem 1.5rem 1.65rem;
}

body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__lead {
    text-align: left;
    max-width: none;
}

body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__actions {
    justify-content: flex-start;
}

@media (max-width: 575.98px) {
    body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__icon-rail {
        flex: 0 0 6.5rem;
        width: 6.5rem;
        min-width: 6.5rem;
        max-width: 6.5rem;
        padding: 1rem 0.65rem;
    }

    body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__icon-rail .hd-portal-empty__icon {
        font-size: 3.75rem !important;
        min-height: 5rem !important;
    }

    body.pd-body .pd-hd-portal-empty--icon-rail .hd-portal-empty__content {
        padding: 1rem 1rem 1.15rem 1.1rem;
        gap: 1rem;
    }
}

body.pd-body .pd-hd-portal-empty--wide .hd-portal-empty__actions .btn,
body.pd-body .pd-hd-portal-empty .hd-portal-empty__actions .btn {
    border-radius: 999px;
    font-weight: 700;
}

/* KeyHelp Hosting-Übersicht */
body.pd-body .hd-keyhelp-overview-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
    gap: 1.5rem 2rem;
    align-items: start;
}

@media (max-width: 991.98px) {
    body.pd-body .hd-keyhelp-overview-layout {
        grid-template-columns: 1fr;
    }
}

body.pd-body .hd-keyhelp-panel-pw {
    width: 100%;
}

body.pd-body .hd-keyhelp-overview-layout__aside {
    position: sticky;
    top: 1rem;
}

body.pd-body .hd-keyhelp-overview-layout__aside .btn {
    border-radius: 999px;
    font-weight: 700;
}

/* KeyHelp Hosting-Detail: Footer nebeneinander */
body.pd-body .hd-keyhelp-overview-footer {
    margin-top: 1.25rem !important;
}

@media (min-width: 992px) {
    body.pd-body .hd-keyhelp-overview-main {
        align-items: stretch !important;
    }

    body.pd-body .hd-keyhelp-overview-footer__quick .col-4 {
        flex: 1 1 0;
        max-width: none;
    }
}

body.pd-body .hd-keyhelp-overview-footer__quick .btn-outline-secondary {
    border-radius: calc(var(--pd-radius) * 0.85);
    min-height: 4.25rem;
}

/* Produkt — Medien-Karussell & Lightbox */
.product-media-carousel .product-media-expand {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    z-index: 4;
    border-radius: 999px;
    width: 2.5rem;
    height: 2.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.product-media-carousel.carousel-fade .carousel-item:not(.active) {
    opacity: 0 !important;
    pointer-events: none;
    z-index: 0;
}

.product-media-carousel.carousel-fade .carousel-item.active {
    opacity: 1 !important;
    z-index: 1;
}

.product-media-carousel .ratio.product-media-embed-frame > .product-media-embed-iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.account-subs-status-badge {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.pd-product-media-lightbox--premium .modal-content {
    background: radial-gradient(ellipse 120% 80% at 50% 0%, color-mix(in srgb, var(--pd-primary) 22%, #0a0f1a) 0%, #05070d 55%, #030508 100%);
    color: #f8fafc;
    border: 0;
}

.pd-product-media-lightbox--premium .modal-header {
    padding: 1.25rem 1.5rem 0.5rem;
    gap: 1rem;
    flex-wrap: wrap;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__eyebrow {
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: color-mix(in srgb, #fff 55%, transparent);
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__titles {
    flex: 1 1 auto;
    min-width: 0;
}

.pd-product-media-lightbox--premium .modal-title {
    color: #fff;
    font-weight: 700;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__counter {
    background: color-mix(in srgb, #fff 12%, transparent);
    color: #fff;
    font-weight: 700;
    font-size: 0.8rem;
    padding: 0.35rem 0.75rem;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__stage-wrap {
    min-height: min(68vh, 520px);
    padding: 0 3.5rem 1rem;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__stage {
    width: min(100%, 920px);
    max-height: min(68vh, 520px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__img {
    max-width: 100%;
    max-height: min(68vh, 520px);
    object-fit: contain;
    border-radius: calc(var(--pd-radius) * 1.1);
    box-shadow: 0 1.5rem 3rem color-mix(in srgb, #000 45%, transparent);
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__embed,
.pd-product-media-lightbox--premium .pd-product-media-lightbox__video {
    width: min(100%, 920px);
    aspect-ratio: 16 / 9;
    max-height: min(68vh, 520px);
    border: 0;
    border-radius: calc(var(--pd-radius) * 1.1);
    background: #000;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 50%;
    border: 1px solid color-mix(in srgb, #fff 18%, transparent);
    background: color-mix(in srgb, #fff 10%, transparent);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__nav--prev {
    left: 0.75rem;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__nav--next {
    right: 0.75rem;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__thumbs {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.5rem;
    justify-content: center;
    overflow-x: auto;
    padding: 0.75rem 1.25rem 1.25rem;
    scrollbar-width: thin;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__thumb {
    position: relative;
    flex: 0 0 auto;
    width: 4.5rem;
    height: 4.5rem;
    padding: 0;
    border: 2px solid color-mix(in srgb, #fff 15%, transparent);
    border-radius: 0.65rem;
    overflow: hidden;
    background: color-mix(in srgb, #fff 8%, transparent);
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__thumb.is-active {
    border-color: var(--pd-primary);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--pd-primary) 45%, transparent);
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__thumb-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: var(--pd-primary);
    font-size: 1.75rem;
}

.pd-product-media-lightbox--premium .pd-product-media-lightbox__thumb-play {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, #000 35%, transparent);
    color: #fff;
    font-size: 1.25rem;
    pointer-events: none;
}

/* HD portal + hosting — mobile */
@media (max-width: 767.98px) {
    body.pd-body .pd-hd-hub__grid > [class*="col-"] {
        flex: 0 0 100%;
        max-width: 100%;
        display: flex;
        justify-content: center;
    }

    body.pd-body .pd-hd-hub__grid .pd-hd-hub-tile {
        width: 100%;
        max-width: 24rem;
    }

    body.pd-body .pd-hd-hub-tile {
        min-height: 0;
        padding: 1.15rem 1rem;
    }

    body.pd-body .pd-hd-hosting-card {
        margin-left: auto;
        margin-right: auto;
        max-width: 24rem;
    }

    body.pd-body .hd-hosting-show .table-responsive table tbody tr {
        display: block;
        border-bottom: 1px solid color-mix(in srgb, var(--pd-text) 10%, transparent);
    }

    body.pd-body .hd-hosting-show .table-responsive table tbody td {
        display: block;
        width: 100% !important;
        text-align: left !important;
        border: 0;
        padding: 0.5rem 0.75rem;
    }

    body.pd-body .hd-hosting-show .table-responsive table tbody td:last-child {
        padding-bottom: 0.75rem;
        font-weight: 600;
    }

    body.pd-body .pd-hd-portal-mobile-nav__tabs .nav-link.active {
        background: var(--pd-primary);
        color: #fff;
    }

    body.pd-body .pd-hd-hosting-mobile-accordion .accordion-button {
        font-size: 0.88rem;
        font-weight: 700;
        padding: 0.85rem 1rem;
    }

    body.pd-body .pd-hd-hosting-mobile-accordion .accordion-body {
        padding: 0.85rem 1rem 1rem;
    }

    body.pd-body .pd-home-hd-fold__summary {
        list-style: none;
        cursor: pointer;
        margin-bottom: 0.75rem;
        padding: 0.65rem 1rem;
        border-radius: 999px;
        border: 1px solid color-mix(in srgb, var(--pd-primary) 28%, transparent);
        background: color-mix(in srgb, var(--pd-primary) 8%, var(--pd-card));
        color: var(--pd-primary);
        font-size: 0.82rem;
        font-weight: 700;
        text-align: center;
    }

    body.pd-body .pd-home-hd-fold__summary:not(.collapsed)::after {
        content: ' ▲';
        font-size: 0.65rem;
        opacity: 0.75;
    }

    body.pd-body .pd-home-hd-fold__summary.collapsed::after {
        content: ' ▼';
        font-size: 0.65rem;
        opacity: 0.75;
    }

    body.pd-body .pd-hd-hub-mobile-acc .accordion-button {
        font-size: 0.9rem;
        font-weight: 700;
    }

    body.pd-body .pd-hd-hub-mobile-acc .pd-hd-hub-tile {
        min-height: 0;
        box-shadow: none;
        border: 0;
        padding: 0.5rem 0 0;
    }
}

@media (min-width: 768px) {
    body.pd-body .pd-home-hd-fold__summary {
        display: none !important;
    }

    body.pd-body .pd-home-hd-fold__collapse.collapse {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
    }

    body.pd-body .pd-home-hd-fold__collapse.collapsing {
        height: auto !important;
        transition: none !important;
    }
}

/* Auktionskatalog — nur Premium Deluxe, nur mobil */
@media (max-width: 767.98px) {
    body.pd-body .pd-page--auctions .auction-list-page.container {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }

    body.pd-body .pd-page--auctions .auction-list-page__hero {
        margin-bottom: 1.25rem;
    }

    body.pd-body .pd-page--auctions .auction-list-page__title {
        font-size: clamp(1.35rem, 5.5vw, 1.65rem);
    }

    body.pd-body .pd-page--auctions .auction-list-page__filters {
        padding: 0.85rem 0.9rem;
        margin-bottom: 1.25rem;
    }

    body.pd-body .pd-page--auctions .auction-list-page__filters .row > [class*="col-"] {
        flex: 0 0 100%;
        max-width: 100%;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid > [class*="col-"] {
        flex: 0 0 100%;
        max-width: 100%;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card {
        display: grid;
        grid-template-columns: 6.75rem minmax(0, 1fr);
        grid-template-areas:
            "media body"
            "footer footer";
        overflow: hidden;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card:hover {
        transform: none;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__media-wrap {
        grid-area: media;
        align-self: stretch;
        min-height: 6.75rem;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__media {
        aspect-ratio: 1;
        height: 100%;
        min-height: 6.75rem;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__live {
        top: 0.35rem;
        left: 0.35rem;
        font-size: 0.58rem;
        padding: 0.12rem 0.38rem;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__phase {
        top: 0.35rem;
        right: 0.35rem;
        left: auto;
        max-width: calc(100% - 0.5rem);
        font-size: 0.58rem;
        padding: 0.18em 0.42em;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__wishlist--card {
        bottom: 0.35rem;
        right: 0.35rem;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__wishlist--card .shop-wishlist-toggle-btn {
        width: 1.85rem;
        height: 1.85rem;
        font-size: 0.82rem;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__body {
        grid-area: body;
        padding: 0.55rem 0.65rem 0.3rem;
        gap: 0.28rem;
        min-width: 0;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__title {
        font-size: 0.88rem;
        line-height: 1.3;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__meta {
        font-size: 0.68rem;
        line-height: 1.25;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__countdown {
        margin: 0.1rem 0 0 !important;
        padding: 0.32rem 0.45rem !important;
        font-size: 0.66rem !important;
        line-height: 1.3 !important;
        word-break: break-word;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__footer {
        grid-area: footer;
        padding: 0.55rem 0.65rem 0.65rem;
        margin-top: 0;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__prices {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 0.5rem 0.75rem;
        margin-bottom: 0.55rem;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__prices > div {
        flex: 1 1 0;
        min-width: 0;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__price-label {
        font-size: 0.58rem !important;
        letter-spacing: 0.04em !important;
        line-height: 1.2 !important;
        white-space: normal;
        overflow-wrap: anywhere;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__price-value {
        font-size: 1.05rem !important;
        line-height: 1.15 !important;
        word-break: break-word;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__price-value--min {
        font-size: 0.95rem !important;
    }

    body.pd-body .pd-page--auctions .auction-list-page__grid .auction-home-card__btn {
        font-size: 0.82rem;
        padding: 0.45rem 0.75rem;
    }
}

/* Live-Suche (Dropdown) — Premium Deluxe, nur mobil: zentrieren + kompakte Karten */
@media (max-width: 991.98px) {
    html.pd-live-search-open,
    body.pd-body.pd-live-search-open {
        overflow: hidden !important;
        height: 100%;
    }

    body.pd-body.pd-live-search-open .shop-live-search-backdrop {
        pointer-events: auto !important;
        z-index: 2070 !important;
        touch-action: none;
    }

    body.pd-body .shop-live-search-dropdown.shop-live-search-dropdown--header-wide.is-open {
        left: 0.625rem !important;
        right: 0.625rem !important;
        width: auto !important;
        max-width: none;
        border-radius: calc(var(--pd-radius) * 1.15) !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }

    body.pd-body .shop-live-search-dropdown--xonic .shop-live-search-dd-scroller {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
        margin-inline: -0.15rem;
        padding-bottom: 0.15rem;
    }

    body.pd-body .shop-live-search-dropdown--xonic .shop-live-search-dd-cards {
        display: flex;
        flex-wrap: nowrap;
        gap: 0.5rem;
        padding: 0.15rem 0.15rem 0.35rem;
    }

    body.pd-body .shop-live-search-dropdown--xonic .shop-live-search-card {
        flex: 0 0 clamp(100px, 28vw, 128px);
        max-width: 128px;
        width: auto;
        min-width: 0;
    }

    body.pd-body .shop-live-search-dropdown--xonic .shop-live-search-dd-all-btn {
        width: 100%;
        max-width: 100%;
        border-radius: 999px !important;
    }
}
