/* Schrift für mobile Überschriften aus dem eigenen Template; kein Fremdserver. */
@font-face {
    font-family: 'FuersBaby Friendly';
    src: url('../fonts/fuersbaby-friendly.woff') format('woff');
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}





:root {
    --baby-primary: #5dade2;      
    --baby-secondary: #fce4ec;    
    --baby-success: #2ecc71;      
    --baby-cta: #e74c3c;          
    --text-dark: #2c3e50;
    --border-radius-soft: 16px;   
}

html, body, .productdetails-view, .vm-product-container, .vm-product-details-container {
    overflow: visible !important;
    overflow-x: visible !important;
    contain: none !important;
}

body {
    max-width: 100vw !important;
    overflow-x: clip !important; 
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    color: #2c3e50;
    background-color: #fcfcfc;
    margin: 0;
}

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible {
    outline: 3px solid var(--baby-primary) !important;
    outline-offset: 2px;
}

.visually-hidden-focusable:not(:focus):not(:focus-within) {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* ==========================================================================
   2. HEADER, BURGER-BUTTON & LOGIN-ICON
   ========================================================================== */
.top-trust-bar {
    background: linear-gradient(to right, var(--baby-primary), #7fb3d5);
    background-color: var(--baby-primary);
    color: #ffffff;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.5px;
}

.custom-burger-btn {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 30px;
    height: 20px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    flex-shrink: 0;
    position: relative;
}
.burger-bar {
    width: 100%;
    height: 3px;
    background-color: var(--text-dark);
    border-radius: 4px;
    transition: all 0.3s ease-in-out;
}
.burger-transformed .burger-bar:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.burger-transformed .burger-bar:nth-child(2) { opacity: 0; }
.burger-transformed .burger-bar:nth-child(3) { transform: translateY(-9px) rotate(-45deg); }

.fb-login-icon-link {
    color: var(--text-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s ease;
    text-decoration: none;
}
.fb-login-icon-link:hover, .fb-login-icon-link.fb-user-active {
    color: var(--baby-primary) !important;
}

.baby-main-nav ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
}

/* ==========================================================================
   3. MOBIL-STYLING (Smartphone & Tablet bis 991px)
   ========================================================================== */
@media (max-width: 991.98px) {
    .fb-master-header { position: relative !important; padding-top: 0 !important; }
    
    .fb-master-header:not(.fb-is-scrolled) .fb-row-utility {
        position: relative !important;
        background-color: #ffffff !important;
        padding-top: 5px !important;  
        padding-bottom: 5px !important; 
        box-shadow: none !important;
        transition: all 0.2s ease-in-out !important;
    }

    .fb-master-header:not(.fb-is-scrolled) .fb-logo-brand { 
        max-width: 230px !important; display: block !important;
        margin-top: -17px !important; margin-bottom: -22px !important; 
    }

    .fb-master-header:not(.fb-is-scrolled) .fb-row-nav {
        position: relative !important; top: 0 !important; background-color: #ffffff !important;
        padding: 5px 15px 15px 15px !important; border-bottom: 1px solid rgba(0,0,0,0.05) !important;
        display: block !important; box-sizing: border-box !important;
    }

    .fb-header-layout-grid {
        display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important;
        align-items: center !important; justify-content: space-between !important;
        padding-left: 15px !important; padding-right: 15px !important;
        box-sizing: border-box !important; width: 100% !important;
    }

    .fb-logo-brand { flex-shrink: 0 !important; transition: all 0.25s ease-in-out !important; }
    .fb-logo-brand img { max-width: 100% !important; height: auto !important; }

    .fb-row-utility .fb-search-desktop { display: none !important; }

    .fb-actions-wrap { display: flex !important; align-items: center !important; gap: 15px !important; flex-shrink: 0 !important; }
    .fb-actions-wrap .custom-burger-btn { display: flex !important; }

    .fb-row-nav .fb-user-logged-menu-desktop { display: none !important; }
    .fb-row-nav .fb-row-nav-container { display: block !important; width: 100% !important; }
    .fb-row-nav #desktopBurgerBtn { display: none !important; }
    .fb-search-mobile-row { display: block !important; width: 100% !important; }

    .fb-search-wrap form, .fb-search-wrap input[type="text"], .fb-search-wrap input[type="search"] { width: 100% !important; box-sizing: border-box !important; }
    .fb-search-wrap input[type="text"], .fb-search-wrap input[type="search"] {
        border-radius: 50px !important; padding: 10px 20px !important;
        background-color: rgba(93, 173, 226, 0.12) !important; border: 2px solid rgba(93, 173, 226, 0.35) !important;
        color: #2c3e50 !important; font-weight: 500 !important;
    }

    /* SCROLL-ZUSTAND AKTIV MOBIL */
    .fb-is-scrolled .fb-row-utility {
        position: fixed !important; top: 0 !important; left: 0 !important; width: 100% !important;
        z-index: 10000 !important; background-color: #ffffff !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
        padding-top: 8px !important; padding-bottom: 8px !important; height: auto !important;
    }

    .fb-is-scrolled .fb-logo-brand { max-width: 0 !important; opacity: 0 !important; visibility: hidden !important; display: none !important; }
    .fb-is-scrolled .fb-row-nav .fb-search-mobile-row { display: none !important; }
    .fb-is-scrolled .fb-row-utility .fb-search-desktop { 
        display: block !important; flex-grow: 1 !important; max-width: calc(100% - 100px) !important; margin-right: 15px !important;
    }

    /* GEÖFFNETES MOBILES MENÜ */
    #babyNavbar.fb-nav-collapse:not(.open-active) { display: none !important; }
    .fb-master-header:not(.fb-is-scrolled) #babyNavbar.fb-nav-collapse.open-active {
        display: flex !important; flex-direction: column !important; width: 100% !important;
        background: #ffffff !important; padding: 15px 15px 40px 15px !important;
        position: absolute !important; top: 100% !important; left: 0 !important;
        height: auto !important; max-height: 70vh !important; overflow-y: auto !important;
        box-shadow: 0 15px 30px rgba(0,0,0,0.1) !important; z-index: 99999 !important;
    }

    .fb-is-scrolled #babyNavbar.fb-nav-collapse.open-active {
        display: flex !important; flex-direction: column !important; width: 100% !important;
        background: #ffffff !important; padding: 15px 15px 40px 15px !important; 
        position: fixed !important; top: 56px !important; left: 0 !important;
        height: auto !important; max-height: 65vh !important; overflow-y: auto !important; 
        box-shadow: 0 15px 30px rgba(0,0,0,0.1) !important; z-index: 99999 !important;
    }

    .baby-main-nav { width: 100% !important; }
    .baby-main-nav ul { flex-direction: column !important; width: 100% !important; gap: 8px !important; }
    .baby-main-nav ul li a {
        display: block !important; padding: 12px 16px !important;
        background-color: #f4f6f7 !important; color: var(--text-dark) !important;
        border-radius: 12px !important; font-weight: 600 !important;
    }
    .baby-main-nav ul li.active > a { background-color: var(--baby-primary) !important; color: #ffffff !important; }

    .hero-section, .fb-welcome-section { padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box !important; }

    .fb-user-logged-menu-desktop { display: none !important; }
    .fb-user-logged-menu-mobile {
        width: 100% !important; margin-top: 15px !important; padding-top: 15px !important;
        border-top: 1px dashed rgba(0,0,0,0.1) !important; box-sizing: border-box !important;
    }
    .fb-user-logged-menu-mobile ul { display: flex !important; flex-direction: column !important; width: 100% !important; gap: 8px !important; padding: 0 !important; margin: 0 !important; }
    .fb-user-logged-menu-mobile ul li a {
        display: block !important; text-align: center !important; padding: 12px !important;
        font-size: 1rem !important; font-weight: 600 !important; color: #ffffff !important;
        background-color: var(--baby-primary) !important; border-radius: 12px !important; text-decoration: none !important;
    }
}

/* ==========================================================================
   4. DESKTOP FIXIERUNG (Ab 992px)
   ========================================================================== */
@media (min-width: 992px) {
    .fb-logo-brand img { max-width: 320px !important; height: auto !important; margin-top: -18px !important; margin-bottom: -15px !important; display: block !important; transition: none !important; }
    .fb-row-utility { position: fixed !important; top: 0 !important; left: 0 !important; width: 100% !important; z-index: 10000 !important; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important; background-color: #ffffff !important; padding-top: 12px !important; padding-bottom: 12px !important; transition: none !important; }
    .fb-master-header { padding-top: 96px !important; transition: padding 0.25s ease-in-out !important; }
    .fb-is-scrolled .fb-master-header { padding-top: 86px !important; }

    .fb-header-layout-grid { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: space-between !important; width: 100% !important; padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box !important; }
    .fb-logo-brand { flex-shrink: 0 !important; }

    .fb-search-wrap.fb-search-desktop { display: block !important; flex-grow: 1 !important; max-width: 550px !important; margin: 0 auto !important; }
    .fb-search-wrap input[type="text"], .fb-search-wrap input[type="search"] {
        border-radius: 50px !important; padding: 12px 24px !important; background-color: rgba(93, 173, 226, 0.12) !important; 
        border: 2px solid rgba(93, 173, 226, 0.35) !important; box-shadow: inset 0 2px 4px rgba(0,0,0,0.02), 0 3px 12px rgba(93, 173, 226, 0.1) !important;
        width: 100% !important; font-weight: 500 !important; color: #2c3e50 !important; transition: all 0.25s ease-in-out;
    }
    .fb-search-wrap input[type="text"]:focus, .fb-search-wrap input[type="search"]:focus {
        background-color: #ffffff !important; border-color: var(--baby-primary) !important; box-shadow: 0 0 0 5px rgba(93, 173, 226, 0.25) !important; outline: none !important;
    }
    
    .fb-actions-wrap { flex-shrink: 0 !important; display: flex !important; align-items: center !important; justify-content: flex-end !important; gap: 20px !important; padding-right: 50px !important; position: relative !important; }
    .header-cart-desktop { display: block !important; }
    .fb-actions-wrap #menuToggleBtn { display: none !important; }

    .fb-row-nav .fb-row-nav-container { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: space-between !important; padding-left: 20px !important; padding-right: 20px !important; position: relative !important; margin-bottom: 5px !important; }
    .fb-row-nav .fb-search-mobile-row { display: none !important; visibility: hidden !important; }
    .fb-row-nav #desktopBurgerBtn { margin-left: auto !important; display: flex !important; }
    .fb-is-scrolled .fb-row-nav #desktopBurgerBtn { position: fixed !important; top: 34px !important; right: 20px !important; z-index: 10001 !important; }
    .fb-is-scrolled #babyNavbar.fb-nav-collapse.open-active { position: fixed !important; top: 74px !important; right: 20px !important; }

    #babyNavbar.fb-nav-collapse:not(.open-active) { display: flex !important; flex-shrink: 1 !important; height: 42px !important; max-height: 42px !important; overflow: hidden !important; padding: 0 !important; margin: 0 !important; }
    #babyNavbar.fb-nav-collapse.open-active {
        display: flex !important; position: absolute !important; top: 100% !important; margin-top: 5px !important; right: 20px !important; 
        background-color: #ffffff !important; box-shadow: 0 15px 40px rgba(0,0,0,0.15) !important; border-radius: 16px !important;
        padding: 0 !important; overflow: hidden !important; z-index: 9999 !important; min-width: 280px !important; max-width: 350px !important; border: 1px solid rgba(0,0,0,0.05) !important;
    }

    #babyNavbar.fb-nav-collapse:not(.open-active) .baby-main-nav > ul { flex-direction: row !important; flex-wrap: wrap !important; gap: 6px !important; padding: 0 !important; margin: 0 !important; height: 42px !important; }
    #babyNavbar.fb-nav-collapse.open-active .baby-main-nav > ul { flex-direction: column !important; gap: 0 !important; width: 100% !important; padding: 0 !important; margin: 0 !important; }
    #babyNavbar.fb-nav-collapse.open-active .baby-main-nav > ul > li { width: 100% !important; padding: 0 !important; margin: 0 !important; }

    .baby-main-nav ul li a {
        font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
        color: var(--text-dark) !important; font-weight: 600 !important; text-decoration: none !important;
        padding: 8px 18px !important; border-radius: 50px !important; white-space: nowrap !important;
        font-size: 1.02rem !important; line-height: 26px !important; display: inline-block !important; letter-spacing: -0.2px !important; transition: all 0.2s ease-in-out !important;
    }
    #babyNavbar.fb-nav-collapse.open-active .baby-main-nav ul li a { display: block !important; width: 100% !important; box-sizing: border-box !important; background-color: #f8f9fa !important; border-radius: 0 !important; padding: 12px 20px !important; border-bottom: 1px solid rgba(0,0,0,0.03) !important; }
    .baby-main-nav ul li a:hover, .baby-main-nav ul li.active > a { background-color: var(--baby-secondary) !important; }

    #babyNavbar:not(.open-active) .fb-user-logged-menu-desktop {
        display: flex !important; align-items: center !important; margin-left: auto !important; padding-left: 35px !important; margin-right: 45px !important; height: 42px !important; z-index: 1000 !important;
    }
    .fb-user-logged-menu-desktop ul { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex !important; flex-direction: row !important; gap: 8px !important; }
    .fb-user-logged-menu-desktop ul li a {
        font-size: 0.88rem !important; font-weight: 700 !important; color: #ffffff !important; background-color: var(--baby-primary) !important; 
        padding: 6px 14px !important; border-radius: 50px !important; text-decoration: none !important; white-space: nowrap !important; display: inline-block !important;
    }
    .fb-user-logged-menu-mobile { display: none !important; }
    #babyNavbar.open-active .fb-user-logged-menu-mobile { display: block !important; width: 100% !important; margin-top: 15px !important; padding: 15px 15px 0 15px !important; border-top: 1px dashed rgba(0,0,0,0.1) !important; box-sizing: border-box !important; }
    #babyNavbar.open-active .fb-user-logged-menu-mobile ul { display: flex !important; flex-direction: column !important; width: 100% !important; gap: 6px !important; padding: 0 !important; margin: 0 !important; }
    #babyNavbar.open-active .fb-user-logged-menu-mobile ul li a { display: block !important; text-align: center !important; width: 100% !important; box-sizing: border-box !important; font-size: 0.92rem !important; font-weight: 700 !important; color: #ffffff !important; background-color: var(--baby-primary) !important; padding: 10px !important; border-radius: 10px !important; text-decoration: none !important; }
    .fb-user-logged-menu-desktop ul li a:hover, .fb-user-logged-menu-mobile ul li a:hover { background-color: #4a90e2 !important; }
}

/* ==========================================================================
   5. STARTSEITEN-HERO & CARDS
   ========================================================================== */
.fb-welcome-section {
    border-bottom: 1px solid rgba(0,0,0,0.05); margin-bottom: 30px;
    background: linear-gradient(135deg, rgba(93, 173, 226, 0.08) 0%, rgba(252, 228, 236, 0.4) 100%);
    border: 1px solid rgba(93, 173, 226, 0.15); border-radius: var(--border-radius-soft);
}
.fb-welcome-section h1 { font-size: 2.25rem !important; line-height: 1.3 !important; font-weight: 800 !important; color: var(--text-dark) !important; }
@media (min-width: 992px) { .fb-welcome-section h1 { font-size: 2.85rem !important; } }
.text-baby-blue { color: var(--baby-primary) !important; display: inline-block; }
.fb-b2b-banner { background: #ffffff !important; border: 1px solid rgba(93, 173, 226, 0.2) !important; }
.fb-b2b-banner .btn-primary { background-color: var(--baby-primary) !important; border: none !important; }
.card, .hero-section, .home-teaser-section .module, .home-products-section .card, .product-card {
    border-radius: var(--border-radius-soft) !important; border: none !important; box-shadow: 0 10px 30px rgba(168, 218, 220, 0.12) !important;
}

/* ==========================================================================
   6. TRUST-BANNER & BEWERTUNGEN
   ========================================================================== */
.fb-trust-banner { border-color: rgba(93, 173, 226, 0.15) !important; background-color: #ffffff !important; transition: transform 0.2s ease; }
.fb-trust-banner:hover { transform: translateY(-2px); }
.fb-hb-logo-link { display: inline-block; transition: opacity 0.2s ease; }
.fb-hb-logo-link:hover { opacity: 0.9; }
.fb-trust-logo { height: auto !important; max-height: 55px !important; object-fit: contain; }
.fb-trust-badges-row { width: 100% !important; }
.fb-widget-item { display: flex !important; align-items: center !important; justify-content: center !important; min-height: 55px !important; }
.shopauskunft-widget { margin: 0 !important; display: inline-block !important; }
.fb-trust-block-modern { border: 1px solid rgba(93, 173, 226, 0.15) !important; background-color: #ffffff !important; max-width: 960px !important; margin-left: auto !important; margin-right: auto !important; margin-bottom: 35px !important; border-radius: 16px !important; overflow: hidden !important; }
.fb-trust-flex-container { display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; }

@media (min-width: 992px) {
    .fb-trust-flex-container { flex-direction: row !important; justify-content: space-between !important; gap: 40px !important; padding: 10px 20px !important; width: 100% !important; box-sizing: border-box !important; }
    .fb-trust-text-block { text-align: left !important; flex-shrink: 0 !important; max-width: 480px !important; }
    .fb-trust-text-block p { line-height: 1.6 !important; font-size: 1.05rem !important; }
    .fb-trust-flex-container .fb-mobile-inline-siegel { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 25px !important; margin-right: 0 !important; padding-right: 0 !important; flex-shrink: 0 !important; }
    .fb-trust-widget-block, .fb-trust-logo-block { margin-right: 0 !important; }
}

@media (max-width: 991.98px) {
    .fb-trust-banner { padding: 20px !important; }
    .fb-trust-banner .row { gap: 20px !important; }
    .fb-trust-flex-container { flex-direction: column !important; gap: 25px !important; }
    .fb-trust-text-block { text-align: left !important; width: 100% !important; max-width: 450px !important; padding: 0 10px !important; }
    .fb-trust-text-block p { line-height: 1.6 !important; font-size: 1rem !important; }
    .fb-mobile-inline-siegel { width: 100% !important; display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; justify-content: center !important; align-items: center; }
    .fb-mobile-inline-siegel a, .fb-mobile-inline-siegel img, .fb-mobile-inline-siegel .shopauskunft-widget { display: flex !important; align-items: center !important; margin: 0 !important; padding: 0 !important; }
    .fb-mobile-inline-siegel img { height: 55px !important; object-fit: contain !important; }
    .fb-trust-block-modern { padding-left: 15px !important; padding-right: 15px !important; padding-top: 20px !important; padding-bottom: 20px !important; margin-bottom: 30px !important; border-radius: 16px !important; }
}

.fb-google-reviews-section { width: 100% !important; box-sizing: border-box; }
.fb-cute-mod-title { font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; font-size: 1.8rem !important; line-height: 1.3 !important; font-weight: 700 !important; color: #5DADE2 !important; text-align: center !important; text-transform: none !important; letter-spacing: -0.5px !important; margin: 0 auto 1rem auto !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 15px !important; flex-wrap: wrap !important; width: 100% !important; }
.google-reviews-module { width: 100%; max-width: 1400px; margin: 0 auto; padding: 10px; box-sizing: border-box; text-align: center; }
.google-reviews-module .google-business-card { display: flex !important; align-items: center !important; justify-content: center !important; flex-direction: column !important; text-align: center !important; background: #ffffff !important; padding: 25px !important; border-radius: 12px !important; border: 1px solid #e2e8f0 !important; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05) !important; max-width: 450px !important; margin: 0 auto 35px auto !important; }
.google-reviews-module .g-business-title { margin: 10px 0 2px 0 !important; color: #1a202c !important; font-size: 1.4rem !important; font-weight: 800 !important; display: flex !important; justify-content: center !important; align-items: center !important; width: 100% !important; }
.google-reviews-module .g-business-title img { max-height: 45px !important; width: auto !important; object-fit: contain !important; }
.google-reviews-module .reviews-list { display: flex !important; flex-wrap: wrap !important; justify-content: center !important; gap: 15px !important; width: 100% !important; box-sizing: border-box !important; }
.google-reviews-module .review-item { flex: 1 1 260px !important; max-width: 300px !important; min-width: 250px !important; border: 1px solid #edf2f7 !important; padding: 20px !important; border-radius: 10px !important; background: #ffffff !important; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.02) !important; display: flex !important; flex-direction: column !important; justify-content: space-between !important; box-sizing: border-box !important; text-align: left !important; }
.google-reviews-module .review-header { display: flex !important; align-items: center !important; justify-content: space-between !important; margin-bottom: 12px !important; }
.google-reviews-module .review-header strong { color: #2d3748 !important; font-size: 0.95rem !important; }
.google-reviews-module .stars { color: #ffc107 !important; font-size: 1.1rem !important; letter-spacing: 1px !important; }
.google-reviews-module .review-text { margin: 0 !important; font-size: 0.9rem !important; color: #4a5568 !important; line-height: 1.6 !important; font-style: italic !important; }
.google-reviews-module small { color: #a0aec0 !important; display: block !important; margin-top: 15px !important; font-size: 0.8rem !important; }

/* ==========================================================================
   7. WARENKORB HEADER ICON
   ========================================================================== */
.header-cart-desktop { display: block !important; position: relative !important; }
.header-cart-desktop .vmCartNeu { display: inline-block !important; position: relative !important; }
.header-cart-desktop a.open_cart_button {
    display: inline-flex !important; align-items: center !important; position: relative !important; min-width: 44px !important; min-height: 44px !important; padding-left: 36px !important;
    text-decoration: none !important; background: transparent !important; border: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://w3.org' width='24' height='24' fill='none' stroke='%232c3e50' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'%3E%3C/circle%3E%3Ccircle cx='20' cy='21' r='1'%3E%3C/circle%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'%3E%3C/path%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important; background-position: left center !important; background-size: 26px 26px !important; transition: background-image 0.2s ease-in-out !important;
}
.header-cart-desktop a.open_cart_button:hover { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://w3.org' width='24' height='24' fill='none' stroke='%235dade2' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'%3E%3C/circle%3E%3Ccircle cx='20' cy='21' r='1'%3E%3C/circle%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'%3E%3C/path%3E%3C/svg%3E") !important; }
.header-cart-desktop .vmCartNeu i.fa, .header-cart-desktop .vmCartNeu .fa, .header-cart-desktop .vmCartNeu style { display: none !important; visibility: hidden !important; opacity: 0 !important; }

.header-cart-desktop .disp_total_prod {
    position: absolute !important; top: -6px !important; left: 18px !important; background-color: var(--baby-primary, #5dade2) !important;
    color: #ffffff !important; font-size: 10px !important; font-weight: 800 !important; font-family: system-ui, -apple-system, sans-serif !important;
    min-width: 18px !important; max-width: 18px !important; height: 18px !important; border: 2px solid #ffffff !important; border-radius: 50% !important;
    display: flex !important; align-items: center !important; justify-content: center !important; box-sizing: border-box !important; padding: 0 !important;
    line-height: 1 !important; box-shadow: 0 3px 8px rgba(93, 173, 226, 0.3) !important; z-index: 1050 !important;
    bottom: auto !important; right: auto !important; margin: 0 !important; float: none !important; font-style: normal !important;
}

/* ==========================================================================
   8. KATEGORIEN & PRODUKT KACHELN
   ========================================================================== */
.category-view { width: 100% !important; }
.fb-category-hero-header {
    background: linear-gradient(135deg, rgba(93, 173, 226, 0.08) 0%, rgba(241, 169, 160, 0.08) 100%) !important;
    border: 1px solid rgba(93, 173, 226, 0.15) !important; border-radius: 16px !important; overflow: hidden !important;
    padding: 24px 20px !important; margin-left: 15px !important; margin-right: 15px !important; box-sizing: border-box !important;
    text-align: center !important; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03) !important;
}
.fb-category-hero-header .vm-category-title { font-size: 1.8rem !important; color: #2c3e50 !important; font-weight: 800 !important; text-align: center !important; }
.fb-cat-desc-text, .fb-cat-desc-text p, .fb-cat-desc-text span, .fb-cat-desc-text div { max-width: 750px !important; font-size: 1.05rem !important; text-align: center !important; margin: 0 auto !important; line-height: 1.6 !important; }

@media (min-width: 992px) {
    .fb-category-hero-header { padding: 40px 50px !important; margin-left: 20px !important; margin-right: 20px !important; border-radius: 16px !important; }
    .fb-category-hero-header .vm-category-title { font-size: 2.4rem !important; }
}

.fb-modern-categories-grid .row, .category-view .row { display: grid !important; grid-template-columns: repeat(1, 1fr) !important; gap: 20px !important; width: 100% !important; margin: 0 auto !important; padding-left: 15px !important; padding-right: 15px !important; box-sizing: border-box !important; }
@media (min-width: 992px) { .fb-modern-categories-grid .row, .category-view .row { grid-template-columns: repeat(4, 1fr) !important; gap: 24px !important; padding-left: 20px !important; padding-right: 20px !important; } }
.fb-modern-categories-grid .col, .category-view .col, .category-view .category { width: 100% !important; max-width: 100% !important; float: none !important; padding: 0 !important; margin: 0 !important; box-sizing: border-box !important; }

.fb-screenshot-tile, .category-view .spacer h2 a, .fb-screenshot-tile:link, .fb-screenshot-tile:visited {
    background-color: #ffffff !important; border: 1px solid rgba(0, 0, 0, 0.06) !important; border-radius: 16px !important; padding: 24px 20px !important; height: 100% !important; min-height: 320px !important; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important; text-decoration: none !important; display: flex !important; flex-direction: column !important; justify-content: flex-start !important; align-items: center !important; transition: all 0.25s ease-in-out !important; box-sizing: border-box !important;
}
.fb-screenshot-tile:hover, .category-view .spacer h2 a:hover { border-color: var(--baby-primary) !important; text-decoration: none !important; transform: translateY(-4px) !important; box-shadow: 0 12px 25px rgba(93, 173, 226, 0.1) !important; }
.fb-screenshot-tile-title, .category-view .spacer h2 { font-size: 1.2rem !important; font-weight: 700 !important; color: #2c3e50 !important; line-height: 1.3 !important; text-align: center !important; text-decoration: none !important; border: none !important; margin: 0 0 15px 0 !important; padding: 0 !important; white-space: normal !important; overflow: visible !important; width: 100% !important; }
.fb-screenshot-img-wrap, .category-view .spacer h2 a img { width: 100% !important; height: 230px !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; margin-top: auto !important; border: none !important; }
.fb-screenshot-img-wrap img.fb-screenshot-img, .category-view .spacer h2 a img { max-height: 100% !important; max-width: 100% !important; width: auto !important; height: auto !important; object-fit: contain !important; transition: transform 0.25s ease-in-out !important; }
.fb-screenshot-tile:hover img.fb-screenshot-img, .category-view .spacer h2 a:hover img { transform: scale(1.03) !important; }

/* Virtuemart Product Tiles (nur Kategorien) */
.category-view .product, .category-view .vm-col, .category-view .fb-products-modern-grid .product { background: transparent !important; background-color: transparent !important; border: none !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important; display: flex !important; }
.category-view .spacer, .category-view .fb-product-premium-box, .category-view .fb-products-modern-grid .spacer { background-color: #ffffff !important; border: 1px solid rgba(0, 0, 0, 0.06) !important; border-radius: 16px !important; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important; padding: 20px !important; width: 100% !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: flex-start !important; transition: all 0.25s ease-in-out !important; box-sizing: border-box !important; margin: 0 !important; }
.category-view .spacer:hover, .category-view .fb-product-premium-box:hover { border-color: var(--baby-primary) !important; transform: translateY(-4px) !important; box-shadow: 0 12px 25px rgba(93, 173, 226, 0.1) !important; }
.category-view .fb-product-main-block-link { width: 100% !important; display: flex !important; flex-direction: column !important; align-items: center !important; }
.category-view .spacer h2, .category-view .fb-product-title { border: none !important; background: transparent !important; box-shadow: none !important; margin: 0 0 4px 0 !important; padding: 0 !important; width: 100% !important; text-align: center !important; height: auto !important; min-height: 0 !important; }
.category-view .spacer h2 a, .category-view .fb-product-title a { font-size: 1.15rem !important; font-weight: 700 !important; color: #2c3e50 !important; line-height: 1.3 !important; display: block !important; border: none !important; background: transparent !important; box-shadow: none !important; padding: 0 !important; }
.category-view .fb-product-img-wrap, .category-view .vm-product-media-container { width: 100% !important; height: auto !important; max-height: 220px !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: visible !important; margin: 10px 0 15px 0 !important; background: transparent !important; border: none !important; }
.category-view .spacer img, .category-view .browseProductImage { max-height: 220px !important; max-width: 100% !important; width: auto !important; height: auto !important; object-fit: contain !important; border: none !important; box-shadow: none !important; }
@media (min-width: 992px) { .category-view .fb-product-img-wrap, .category-view .vm-product-media-container { max-height: 260px !important; } .category-view .spacer img, .category-view .browseProductImage { max-height: 260px !important; } }
.category-view .fb-product-price-section { width: 100% !important; margin-top: auto !important; padding-top: 15px !important; border-top: 1px dashed rgba(0, 0, 0, 0.08) !important; text-align: center !important; background: transparent !important; box-shadow: none !important; }
.category-view .PricesalesPrice { font-size: 1.45rem !important; font-weight: 800 !important; color: #2c3e50 !important; display: block !important; text-align: center !important; margin: 5px auto !important; }

/* ==========================================================================
   8.1. BABY-PREIS-DESIGN & KATEGORIE-KACHELN (FINAL)
   ========================================================================== */

/* Die äußere Preis-Box */
.fb-products-modern-grid .fb-custom-price-box {
    background: linear-gradient(135deg, rgba(255, 240, 245, 0.6) 0%, rgba(240, 248, 255, 0.6) 100%) !important;
    border: 1.5px solid rgba(255, 182, 193, 0.5) !important;
    border-radius: 16px !important;
    padding: 10px 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 8px !important;
    transition: all 0.25s ease !important;
}

.fb-products-modern-grid .fb-custom-price-box:hover {
    border-color: var(--baby-primary) !important;
    box-shadow: 0 5px 15px rgba(93, 173, 226, 0.15) !important;
}

/* Der kleine Text oben ("🌟 Dieses Lieblingsstück" / "💕 Dein Unikat ab") */
.fb-products-modern-grid .fb-custom-price-prefix {
    font-family: 'Inter', system-ui, sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    color: #7f8c8d !important;
    margin-bottom: 4px !important;
    text-align: center !important;
    display: block !important;
    width: 100% !important;
}

/* WOLKEN-KILLER: Löscht die Hintergrund-Wolke restlos */
.fb-products-modern-grid .product-price,
.fb-products-modern-grid #productPrice2,
.fb-products-modern-grid [id^="productPrice"] {
    background: none !important;
    background-image: none !important;
    background-color: transparent !important;
    width: 100% !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    filter: none !important;
    animation: none !important;
    display: block !important;
    transform: none !important;
    position: static !important;
    text-align: center !important;
}

/* Versteckt überflüssige VirtueMart-Standardtexte */
.fb-products-modern-grid .vm-price-desc,
.fb-products-modern-grid .product-price > a {
    display: none !important;
}

/* ⚡ PERFEKTE PREIS-ZENTRIERUNG (Ohne fehlerhaftes Flexbox) */
.fb-products-modern-grid .fb-price-wrapper,
.fb-products-modern-grid .product-price .vm-display {
    width: 100% !important;
    text-align: center !important;
    display: block !important;
}

.fb-products-modern-grid .PricesalesPrice {
    font-family: 'Inter', system-ui, sans-serif !important;
    font-size: 1.5rem !important;
    font-weight: 900 !important;
    color: #d81b60 !important;
    display: block !important;
    text-align: center !important;
    margin: 2px auto !important;
    text-shadow: none !important;
    transform: none !important;
    line-height: 1.1 !important;
    width: 100% !important;
    float: none !important;
}

/* "zzgl. Versandkosten" mit sauberem Abstand zum Button */
.fb-products-modern-grid .fb-tax-shipping-hint {
    font-family: 'Inter', system-ui, sans-serif !important;
    font-size: 0.7rem !important;
    color: #95a5a6 !important;
    margin-top: 4px !important;
    margin-bottom: 15px !important; /* Erzwungener Abstand zum Button */
    display: block !important;
    text-align: center !important;
    width: 100% !important;
}

.fb-products-modern-grid .fb-tax-shipping-hint a {
    color: #95a5a6 !important;
    text-decoration: underline !important;
    text-decoration-style: dotted !important;
}

.fb-products-modern-grid .fb-tax-shipping-hint a:hover {
    color: var(--baby-primary) !important;
}

/* Der finale Kategorie-Button */
.fb-products-modern-grid .fb-category-cart-btn {
    width: 100% !important;
    max-width: 100% !important;
    background-image: linear-gradient(to right, #ff69b4, #ff1493) !important;
    border-radius: 30px !important;
    color: white !important;
    font-family: 'Inter', system-ui, sans-serif !important;
    font-weight: 800 !important;
    font-size: 0.92rem !important;
    border: none !important;
    padding: 10px 12px !important;
    box-shadow: 0 4px 12px rgba(255, 105, 180, 0.3) !important;
    cursor: pointer !important;
    text-align: center !important;
    display: block !important;
    box-sizing: border-box !important;
    transition: transform 0.2s ease, background-image 0.2s ease !important;
}

.fb-products-modern-grid .fb-category-cart-btn:hover {
    background-image: linear-gradient(to right, #ff1493, #d81b60) !important;
    transform: translateY(-2px) !important;
    color: white !important;
}/* ========================================================================
   9. PRODUKTDETAILSEITE & WARENKORB-POPUP
   ======================================================================== */
.fb-legacy-short-desc { display: none !important; }
.section-title-heart::before { content: "🌸 "; margin-right: 5px; }
#fb-shipping-hook { display: none !important; } /* Zzgl Versandkosten dauerhaft ausgeblendet */

/* ⚡ Desktop Grid: Text links, Sticky Wolke in eigener Spalte rechts */
@media (min-width: 992px) {
    .vm-product-container { display: flex !important; flex-wrap: nowrap !important; gap: 50px !important; align-items: stretch !important; max-width: 1100px; margin: 0 auto; }
    .vm-product-media-container { flex: 0 0 calc(50% - 25px); max-width: calc(50% - 25px); position: sticky; top: 90px; }
    
    .vm-product-details-container { 
        flex: 0 0 calc(50% - 25px); 
        max-width: calc(50% - 25px); 
        display: grid !important; 
        grid-template-columns: 1fr 240px !important; 
        align-items: start !important; 
        gap: 15px !important;
        position: relative !important; 
        height: 100% !important; 
        min-height: 100vh !important; 
    }
    
    .spacer-buy-area {
        grid-column: 1 !important; 
        grid-row: 1 !important; 
        width: 100% !important;
    }
}

/* Mobile Fix Grid */
@media (max-width: 991px) {
    .vm-product-container { display: flex; flex-direction: column; width: 100%; }
    .vm-product-media-container { width: 100%; max-width: 100%; position: relative; margin-bottom: 20px; }
    .vm-product-details-container { width: 100%; max-width: 100%; display: block !important; }
    .vm-product-media-container .main-image { width: 100%; display: block; margin-bottom: 15px; }
    .additional-images { display: flex; flex-wrap: wrap; justify-content: center; width: 100%; }
}

/* Breadcrumbs & Navigation */
.product-neighbours { display: flex; justify-content: center; flex-wrap: wrap; gap: 15px; margin-bottom: 25px; width: 100%; padding-top: 10px; }
.product-neighbours a { background: #ffffff; border: 2px solid #ffb6c1; padding: 6px 18px; border-radius: 20px; color: #d81b60; font-size: 0.85rem; font-weight: bold; text-decoration: none; transition: all 0.3s ease; box-shadow: 0 2px 8px rgba(0,0,0,0.03); display: inline-flex; align-items: center; font-family: 'Inter', system-ui, sans-serif; }
.product-neighbours a.previous-page::before { content: '«'; margin-right: 6px; font-size: 1.1rem; line-height: 1; color: #5dade2; }
.product-neighbours a.next-page::after { content: '»'; margin-left: 6px; font-size: 1.1rem; line-height: 1; color: #5dade2; }
.product-neighbours a:hover { background: #ffb6c1; color: #ffffff; transform: translateY(-2px); box-shadow: 0 5px 12px rgba(255,182,193,0.3); }

.fb-breadcrumbs { margin: 0 auto 20px auto; max-width: 1100px; font-size: 0.85rem; font-weight: 600; font-family: 'Inter', system-ui, sans-serif; }
.fb-breadcrumbs ul { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.fb-breadcrumbs li { display: flex; align-items: center; color: #95a5a6; }
.fb-breadcrumbs li a { color: #5dade2; text-decoration: none; transition: color 0.2s; }
.fb-breadcrumbs li a:hover { color: #d81b60; }
.fb-breadcrumbs li:not(:last-child)::after { content: '»'; margin-left: 8px; color: #bdc3c7; font-size: 1.1rem; line-height: 1; }

h1[itemprop="name"] { font-family: 'Inter', system-ui, sans-serif !important; font-size: 2.2rem !important; font-weight: 900 !important; text-align: center !important; background: linear-gradient(to right, #5dade2, #ffb6c1); -webkit-background-clip: text; -webkit-text-fill-color: transparent; margin-bottom: 30px !important; text-shadow: 0px 5px 15px rgba(93, 173, 226, 0.15); line-height: 1.2 !important; }

/* Bilder & Unikat Box */
.vm-product-media-container .main-image { text-align: center; margin-bottom: 15px; }
.vm-product-media-container .main-image img { border-radius: 20px !important; box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important; border: 4px solid #fff; width: 100%; height: auto; }
.fb-unikat-box { background: linear-gradient(135deg, rgba(255, 240, 245, 0.9), rgba(240, 248, 255, 0.9)); border: 2px dashed #ffb6c1; border-radius: 24px; padding: 20px; margin-top: 30px; text-align: center; box-shadow: 0 5px 20px rgba(0,0,0,0.03); width: 100%; box-sizing: border-box; }
.fb-unikat-title { font-size: 1.05rem; font-weight: 900; color: #d81b60; margin-bottom: 15px; font-family: 'Inter', sans-serif; }
.fb-unikat-items { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.fb-unikat-item { background: #ffffff; width: 135px; padding: 12px 10px; border-radius: 16px; box-shadow: 0 5px 15px rgba(0,0,0,0.04); display: flex; flex-direction: column; align-items: center; text-align: center; border: 1px solid rgba(255,182,193,0.4); }
.fb-unikat-item img { width: 105px; height: 105px; border-radius: 12px; object-fit: contain !important; background-color: transparent !important; border: 2px solid #ffb6c1; margin-bottom: 8px; box-shadow: 0 3px 8px rgba(0,0,0,0.08); }
.fb-unikat-text-wrap { display: flex; flex-direction: column; gap: 2px; width: 100%; }
.fb-unikat-label { font-size: 0.7rem; font-weight: 700; color: #95a5a6; text-transform: uppercase; letter-spacing: 0.5px; line-height: 1.1; }
.fb-unikat-value { font-size: 0.8rem; font-weight: 800; color: #2c3e50; word-break: break-word; line-height: 1.2; }

.additional-images { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; justify-content: center !important; margin-top: 15px !important; }
.additional-images .floatleft { float: none !important; margin: 0 !important; }
.additional-images .product-image { width: 75px !important; height: 75px !important; border-radius: 12px !important; object-fit: cover !important; box-shadow: 0 4px 10px rgba(0,0,0,0.05) !important; border: 2px solid transparent; }
.vm-img-desc { display: none !important; }

/* ⚡ Wolke Basis-Styling */
#productPrice2, .product-price {
    background: url('../../../images/stories/virtuemart/buttons/wolke.webp') no-repeat center center !important;
    background-size: contain !important; width: 240px !important; height: 170px !important; 
    display: flex !important; flex-direction: column !important; justify-content: center !important; align-items: center !important; text-align: center !important;
    border: none !important; box-shadow: none !important; padding: 15px !important; filter: drop-shadow(0 8px 12px rgba(0,0,0,0.05)); animation: wackelWolke 6s ease-in-out infinite;
}

/* ⚡ Wolke Desktop: 90px wiederhergestellt! */
@media (min-width: 992px) {
    #productPrice2, .product-price { 
        grid-column: 2 !important; 
        grid-row: 1 !important; 
        position: -webkit-sticky !important; 
        position: sticky !important; 
        top: 90px !important; /* Exakt dein Wert */
        margin: 0 !important; 
        z-index: 1000 !important; 
    }
    .productdetails-view .product-field-display { max-width: 350px !important; margin-left: auto !important; margin-right: auto !important; text-align: center !important; line-height: 1.5 !important; }
}

/* Wolke Mobile */
@media (max-width: 991px) {
    #productPrice2, .product-price { margin-left: auto !important; margin-right: 12px !important; float: right !important; position: -webkit-sticky !important; position: sticky !important; top: 40px !important; z-index: 1050 !important; transform-origin: right top !important; clear: both !important; }
}

@keyframes wackelWolke { 0%, 100% { transform: translateY(0) rotate(0deg); } 25% { transform: translateY(-5px) rotate(1.5deg); } 75% { transform: translateY(5px) rotate(-1.5deg); } }
.price-update-glow { animation: sunburst 1.5s ease-out !important; }

#productPrice2 .vm-price-desc, .product-price .vm-price-desc { display: none !important; }
.PricesalesPrice { font-size: 1.9rem !important; color: #b71540 !important; font-weight: 900 !important; margin: 0 0 6px 0 !important; z-index: 2; text-shadow: 1px 1px 2px rgba(255,255,255,0.8); line-height: 1; transform: translateY(-3px); width: 100%; text-align: center; }
a font.versandkosten { font-size: 0.8rem !important; color: #2c3e50 !important; font-weight: 800 !important; text-decoration: underline; text-decoration-style: dotted; }
#productPrice2 > a font.versandkosten, .product-price > a font.versandkosten, #productPrice2 > a .versandkosten, .product-price > a .versandkosten { font-size: 0.65rem !important; }
#productPrice2 .PricesalesPrice, .product-price .PricesalesPrice { transform: translate(27px, 5px) !important; }
#productPrice2 > a, .product-price > a { display: inline-block !important; transform: translate(25px, 17px) !important; }

/* ⚡ Warenkorb & Buttons Desktop */
.addtocart-area { order: -1; margin-bottom: 25px !important; width: 100%; display: flex; justify-content: center; }
@media (min-width: 992px) {
    .addtocart-bar { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: center !important; gap: 20px !important; margin: 0 !important; padding: 0 !important; width: 100%; }
    span.quantity-box { display: flex !important; align-items: center !important; margin: 0 !important; flex-shrink: 0 !important; }
    span.quantity-controls { display: flex !important; flex-direction: column !important; gap: 5px !important; margin-left: 8px !important; margin-right: 0 !important; flex-shrink: 0 !important; }
    span.addtocart-button { display: inline-flex !important; flex-grow: 1 !important; flex-shrink: 1 !important; margin: 0 !important; }
    input.addtocart-button { width: 100% !important; max-width: 350px !important; padding: 15px 25px !important; font-size: 1.15rem !important; margin: 0 !important; white-space: nowrap !important; text-align: center !important; }
}

.quantity-input { width: 50px !important; height: 45px !important; text-align: center !important; border: 2px solid #5dade2 !important; border-radius: 12px !important; font-size: 1.2rem !important; font-weight: bold !important; color: #2c3e50 !important; margin: 0 !important; }
input.quantity-plus, input.quantity-minus { width: 28px !important; height: 20px !important; background-color: #5dade2 !important; border: none !important; border-radius: 6px !important; cursor: pointer !important; padding: 0 !important; margin: 0 !important; color: transparent !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 14px !important; }
input.quantity-plus { background-image: url('data:image/svg+xml;utf8,<svg fill="%23ffffff" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/></svg>') !important; }
input.quantity-minus { background-image: url('data:image/svg+xml;utf8,<svg fill="%23ffffff" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M19 13H5v-2h14v2z"/></svg>') !important; }
input.addtocart-button { background-color: transparent !important; background-image: linear-gradient(to right, #ff69b4, #ff1493) !important; border-radius: 30px !important; color: white !important; font-weight: 800 !important; border: none !important; box-shadow: 0 5px 15px rgba(255,105,180,0.3) !important; cursor: pointer !important; }

/* Zusatztexte unter Warenkorb */
.post-cart-texts { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; margin-top: 15px; font-size: 0.9rem; color: #7f8c8d; text-align: center; }
.post-cart-texts a font.versandkosten { font-size: 0.85rem !important; color: #5dade2 !important; font-weight: 700 !important; text-decoration: underline; text-decoration-style: dotted; }
.ask-a-question_neu a { color: #5dade2 !important; font-weight: bold; text-decoration: none; }

/* Produkt-Felder */
.product-field.fb-master-field-box { display: grid !important; grid-template-rows: auto auto !important; justify-items: center !important; align-items: center !important; width: 100% !important; margin-bottom: 25px !important; }
.fb-field-text-title { font-family: 'Inter', system-ui, sans-serif; font-size: 1.15rem; font-weight: 800; color: #2c3e50; margin-bottom: 10px; text-align: center; cursor: pointer; }
.product-field.fb-master-field-box > .fb-title-element { grid-row: 1 !important; max-width: 100% !important; height: auto !important; cursor: pointer; transition: transform 0.3s ease; margin-bottom: 8px !important; border-radius: 20px !important; display: block !important; }
img.fb-konfig-image { box-shadow: 0 4px 15px rgba(0,0,0,0.05); }
.product-field.fb-master-field-box > .fb-konfig-wrapper, .product-field.fb-master-field-box > .product-field-display { grid-row: 2 !important; width: 100% !important; display: flex !important; justify-content: center !important; }
.fb-konfig-wrapper { cursor: pointer !important; width: 100%; display: flex; justify-content: center; }
.fb-konfig-input-wrapper { width: 100% !important; display: flex !important; justify-content: center !important; pointer-events: none !important; }
.fb-cute-input { background: linear-gradient(to right, #fff0f5, #fce4ec) !important; border: 2px dashed #ffb6c1 !important; border-radius: 25px !important; color: #d81b60 !important; font-family: 'Inter', system-ui, sans-serif !important; font-size: 1.05rem !important; font-weight: 700 !important; text-align: center !important; padding: 12px 20px !important; width: 100% !important; max-width: 350px !important; margin: 0 auto !important; box-shadow: 0 4px 10px rgba(255, 182, 193, 0.2) !important; outline: none !important; box-sizing: border-box !important; cursor: pointer !important; }
.fb-delivery-info { pointer-events: none; background: linear-gradient(to right, #e0f7fa, #f0f8ff) !important; border: 2px dashed #81d4fa !important; color: #0277bd !important; font-weight: 800 !important; font-size: 0.95rem !important; box-shadow: none !important; line-height: 1.4 !important; padding: 15px !important; height: auto !important; margin-top: 35px !important; cursor: default !important; }
.fb-blue-select, select.fb-blue-select, .chzn-container, .chzn-container-single .chzn-single { background: linear-gradient(to right, #f0f8ff, #e0f7fa) !important; border: 2px solid #5dade2 !important; border-radius: 25px !important; color: #2c3e50 !important; font-family: 'Inter', system-ui, sans-serif !important; font-size: 1.05rem !important; font-weight: 700 !important; text-align: center !important; text-align-last: center !important; padding: 12px 20px !important; width: 100% !important; max-width: 350px !important; margin: 0 auto !important; box-shadow: 0 4px 10px rgba(93, 173, 226, 0.2) !important; outline: none !important; box-sizing: border-box !important; appearance: none !important; background-image: url("data:image/svg+xml;utf8,<svg fill='%232c3e50' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>") !important; background-repeat: no-repeat !important; background-position: right 15px center !important; cursor: pointer !important; }
.chzn-container { background: transparent !important; border: none !important; box-shadow: none !important; padding: 0 !important; display: block !important; float: none !important; }
.chzn-container-single .chzn-single { display: block !important; height: auto !important; line-height: normal !important; padding: 12px 20px !important; }
.chzn-container-single .chzn-single div { display: none !important; }

/* Offcanvas */
.offcanvas.offcanvas-end, #fbKonfiguratorOffcanvas { position: fixed !important; top: 0 !important; right: 0 !important; bottom: 0 !important; left: auto !important; width: 85vw !important; max-width: 1200px !important; height: 100vh !important; z-index: 106000 !important; background-color: #ffffff !important; box-shadow: -20px 0 60px rgba(0,0,0,0.2) !important; border-top-left-radius: 24px !important; border-bottom-left-radius: 24px !important; border-left: none !important; transform: translateX(100%); transition: transform 0.85s cubic-bezier(0.25, 1, 0.5, 1) !important; }
.offcanvas.offcanvas-end.show, #fbKonfiguratorOffcanvas.show { transform: translateX(0) !important; }
.offcanvas-backdrop.show { background-color: rgba(0, 0, 0, 0.5) !important; backdrop-filter: blur(4px) !important; transition: opacity 0.6s ease !important; }

/* Beschreibung & Kundenbewertungen */
.fb-desc-wrapper { max-width: 900px; margin: 60px auto 40px auto; position: relative; background: linear-gradient(135deg, rgba(255, 230, 240, 1) 0%, rgba(225, 245, 255, 1) 100%); border-radius: 30px; padding: 40px 50px; text-align: center; border: 2px dashed rgba(255, 182, 193, 0.5); }
.fb-desc-title { color: #d81b60; font-weight: 900; margin-bottom: 20px; font-family: 'Inter', system-ui, sans-serif; font-size: 1.5rem; }
.fb-desc-content { position: relative; max-height: 120px; overflow: hidden; transition: max-height 0.6s ease; line-height: 1.8; color: #2c3e50; text-align: center; font-size: 1.05rem; }
.fb-desc-content.expanded { max-height: 2500px; }
.fb-desc-content:not(.expanded)::after { content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 50px; background: linear-gradient(to bottom, rgba(225, 245, 255, 0), rgba(225, 245, 255, 1)); pointer-events: none; }
.fb-readmore-btn { background: #ffffff; border: 2px solid #ffb6c1; color: #d81b60; border-radius: 20px; padding: 10px 30px; margin-top: 20px; cursor: pointer; font-weight: 800; font-size: 1.05rem; position: relative; z-index: 2; box-shadow: 0 4px 10px rgba(0,0,0,0.05); }

.customer-reviews { max-width: 1000px; margin: 40px auto; border: 2px dashed #81d4fa; border-radius: 30px; padding: 40px; background: #ffffff; text-align: center; }
.customer-reviews h4 { color: #5dade2 !important; font-weight: 900 !important; font-size: 1.5rem !important; margin-bottom: 30px !important; font-family: 'Inter', sans-serif !important; }
.list-reviews { display: flex; flex-wrap: wrap; gap: 25px; justify-content: center; }
.list-reviews .normal, .list-reviews .highlight { flex: 1 1 300px; max-width: 450px; text-align: left; background: #fdfbfb; border-left: 5px solid #ffb6c1; padding: 25px; border-radius: 15px; box-shadow: 0 5px 15px rgba(0,0,0,0.03); margin: 0; }
.list-reviews .date { font-size: 0.85rem; color: #95a5a6; display: block; margin-bottom: 10px; }
.list-reviews blockquote { font-style: italic; color: #34495e; border: none; padding: 0; margin: 10px 0 0 0; line-height: 1.6; }

/* 🌟 POP-UP (Fancybox / Buttons) MODERNISIERUNG */
.ui-dialog, .vm-notify-dialog, .ui-dialog-content { border-radius: 20px !important; font-family: 'Inter', system-ui, sans-serif !important; }
.vm-btn, a.vm-btn { border-radius: 30px !important; font-weight: 800 !important; padding: 12px 26px !important; border: none !important; text-shadow: none !important; transition: transform 0.2s ease !important; cursor: pointer !important; }
.vm-btn.vm-btn-secondary { background: #5dade2 !important; color: #ffffff !important; box-shadow: 0 4px 12px rgba(93, 173, 226, 0.3) !important; }
.vm-btn.vm-btn-secondary:hover { background: #3498db !important; transform: translateY(-2px) !important; color: #ffffff !important; }
.vm-btn.vm-btn-primary { background: linear-gradient(to right, #ff69b4, #ff1493) !important; color: #ffffff !important; box-shadow: 0 4px 15px rgba(255, 105, 180, 0.3) !important; }
.vm-btn.vm-btn-primary:hover { background: linear-gradient(to right, #ff1493, #d81b60) !important; transform: translateY(-2px) !important; color: #ffffff !important; }

#fancybox-bg-n, #fancybox-bg-ne, #fancybox-bg-e, #fancybox-bg-se, #fancybox-bg-s, #fancybox-bg-sw, #fancybox-bg-w, #fancybox-bg-nw { display: none !important; }
#fancybox-outer { background: #ffffff !important; border-radius: 16px !important; box-shadow: 0 15px 50px rgba(0,0,0,0.3) !important; }
#fancybox-img { border-radius: 12px !important; }
#fancybox-title { width: 100% !important; max-width: 100% !important; white-space: normal !important; word-wrap: break-word !important; text-align: center !important; left: 0 !important; padding: 10px !important; box-sizing: border-box !important; }
#fancybox-title-inside { color: #2c3e50 !important; font-family: 'Inter', system-ui, sans-serif !important; font-weight: 700 !important; font-size: 1rem !important; text-align: center !important; }
#fancybox-close { top: -15px !important; right: -15px !important; background: #ff69b4 !important; border-radius: 50% !important; border: 3px solid #fff !important; box-shadow: 0 4px 10px rgba(0,0,0,0.2) !important; width: 32px !important; height: 32px !important; background-image: none !important; display: flex !important; align-items: center !important; justify-content: center !important; z-index: 11000 !important; }
#fancybox-close::after { content: "✖" !important; color: #ffffff !important; font-size: 14px !important; font-weight: bold !important; line-height: 1 !important; }

/* ========================================================================
   📱 MOBILE FIXES (Abgeschnittene Ränder, Bild-Zentrierung & Fancybox)
   ======================================================================== */
@media (max-width: 767px) {
    .productdetails-view > br { display: none !important; }
    
    h1[itemprop="name"] { 
        padding-left: 15px !important; 
        padding-right: 15px !important; 
        box-sizing: border-box !important; 
        font-size: 1.6rem !important; 
        margin-top: 5px !important; 
        margin-bottom: 15px !important; 
        line-height: 1.1 !important; 
    }
    
    .vm-product-media-container { overflow: hidden !important; width: 100% !important; max-width: 100vw !important; box-sizing: border-box !important; display: flex !important; flex-direction: column !important; align-items: center !important; }
    .vm-product-media-container .main-image { float: none !important; display: flex !important; justify-content: center !important; width: 100% !important; padding: 0 15px !important; box-sizing: border-box !important; margin: 0 auto 15px auto !important; }
    .vm-product-media-container .main-image img { width: 75% !important; max-width: 260px !important; height: auto !important; margin: 0 auto !important; display: block !important; box-sizing: border-box !important; }
    .vm-product-media-container > b { display: block !important; text-align: center !important; width: 100% !important; margin-top: 15px !important; }
    .additional-images .floatleft { float: none !important; margin: 0 !important; }
    
    /* ⚡ Warenkorb Mobile: Deine Wunsch-Struktur (Großer Button, exakt in einer Zeile) */
    .addtocart-area { width: 100% !important; max-width: 100vw !important; box-sizing: border-box !important; padding: 0 10px !important; }
    
    .addtocart-bar { 
        display: flex !important; 
        flex-direction: row !important; 
        flex-wrap: nowrap !important; /* Verhindert das Umbrechen */
        justify-content: center !important; 
        align-items: center !important; 
        width: 100% !important; 
        gap: 8px !important; 
        padding: 10px 0 !important; 
        box-sizing: border-box !important; 
    }
    
    span.quantity-box { display: flex !important; align-items: center !important; margin: 0 !important; flex-shrink: 0 !important; }
    .quantity-input { width: 42px !important; height: 42px !important; font-size: 1.1rem !important; text-align: center !important; padding: 0 !important; }
    
    span.quantity-controls { display: flex !important; flex-direction: column !important; justify-content: center !important; gap: 4px !important; margin: 0 !important; flex-shrink: 0 !important; }
    input.quantity-plus, input.quantity-minus { width: 26px !important; height: 18px !important; }

    span.addtocart-button { 
        display: flex !important; 
        flex-grow: 1 !important; 
        flex-shrink: 1 !important; 
        margin-left: 8px !important; 
        width: auto !important; 
    }
    input.addtocart-button { 
        width: 100% !important; 
        max-width: none !important; /* Erlaubt dem Button die volle Restbreite */
        padding: 12px 10px !important; 
        font-size: 0.95rem !important; 
        margin: 0 !important; 
        white-space: nowrap !important; /* Erzwingt zwingend eine einzige Zeile */
        text-align: center !important; 
        overflow: visible !important; 
    }

    /* ⚡ Abstand zur Beschreibung massiv verkleinert! */
    .spacer-buy-area { margin-bottom: 0 !important; padding-bottom: 0 !important; }
    .post-cart-texts { margin-bottom: 0 !important; }
    
    .fb-desc-wrapper { 
        margin-top: 0 !important; /* Harter Reset auf 0! */
        margin-bottom: 30px !important; 
        margin-left: 15px !important; 
        margin-right: 15px !important; 
        width: calc(100% - 30px) !important; 
        padding: 25px 15px !important; 
        box-sizing: border-box !important; 
    }

    .fb-cute-input, .fb-blue-select, .fb-delivery-info { width: calc(100% - 2px) !important; max-width: 100% !important; margin-left: auto !important; margin-right: auto !important; box-sizing: border-box !important; }
    .customer-reviews { margin-left: 15px !important; margin-right: 15px !important; width: calc(100% - 30px) !important; padding: 25px 15px !important; box-sizing: border-box !important; }

    /* Unikat-Box (display: block entfernt, damit JavaScript es ausblenden kann, wenn es leer ist) */
    .fb-unikat-box { width: calc(100vw - 40px) !important; max-width: 100% !important; position: relative !important; left: 50% !important; transform: translateX(-50%) !important; margin-top: 25px !important; margin-bottom: 25px !important; box-sizing: border-box !important; }
    .fb-unikat-items { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 15px !important; padding: 0 5px !important; }
    .fb-unikat-item { width: 100% !important; padding: 10px 5px !important; box-sizing: border-box !important; }
    .fb-unikat-item img { width: 100% !important; max-width: 80px !important; height: 80px !important; object-fit: contain !important; }
    .fb-unikat-value { font-size: 0.75rem !important; word-wrap: break-word !important; }

    #fancybox-content, .ui-dialog, .vm-notify-dialog { width: 90vw !important; max-width: 380px !important; box-sizing: border-box !important; }
    #fancybox-content > div, .ui-dialog .ui-dialog-content, .vm-notify-dialog, .ui-dialog-buttonpane { display: flex !important; flex-direction: column !important; align-items: center !important; padding-bottom: 20px !important; }
    .vm-btn.continue_link, .vm-btn.showcart, .ui-dialog .vm-btn { float: none !important; display: flex !important; justify-content: center !important; align-items: center !important; width: 100% !important; max-width: 280px !important; margin: 6px auto !important; padding: 14px 15px !important; font-size: 0.95rem !important; box-sizing: border-box !important; white-space: normal !important; line-height: 1.2 !important; }
    .vm-btn.showcart { order: 1 !important; margin-top: 15px !important; }
    .vm-btn.continue_link { order: 2 !important; }
    
    #fancybox-wrap { width: 90vw !important; left: 5vw !important; box-sizing: border-box !important; }
    #fancybox-close { right: 0px !important; top: -15px !important; }
    #fancybox-img { width: 100% !important; height: auto !important; }
}

/* ==========================================================================
   10. GESCHENKEFINDER
   ========================================================================== */
.fb-quiz-container { background: linear-gradient(135deg, rgba(93, 173, 226, 0.06) 0%, rgba(252, 228, 236, 0.3) 100%); border: 1px solid rgba(93, 173, 226, 0.15); border-radius: var(--border-radius-soft, 24px); padding: 40px 20px; box-shadow: 0 10px 30px rgba(168, 218, 220, 0.12); text-align: center; max-width: 900px; margin: 0 auto 40px auto; }
.fb-quiz-header h3 { font-size: 2rem !important; font-weight: 800 !important; color: var(--text-dark, #2c3e50) !important; margin-bottom: 15px !important; letter-spacing: -0.5px; }
.fb-quiz-intro-text { font-size: 1.05rem; color: #4a5568; line-height: 1.6; margin-bottom: 35px; }
.fb-quiz-question-text { font-size: 1.5rem !important; color: var(--baby-primary, #5dade2) !important; font-weight: 700 !important; margin-bottom: 25px !important; }
.fb-quiz-btn-group { display: flex; justify-content: center; gap: 20px; flex-wrap: wrap; }
.fb-quiz-btn { background: #ffffff !important; border: 2px solid rgba(93, 173, 226, 0.2) !important; border-radius: 16px !important; padding: 20px 30px !important; min-width: 180px; flex: 1; max-width: 250px; cursor: pointer !important; transition: all 0.3s ease !important; display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; box-shadow: 0 4px 15px rgba(0,0,0,0.03) !important; }
.fb-quiz-btn:hover { border-color: var(--baby-primary, #5dade2) !important; transform: translateY(-5px) !important; box-shadow: 0 12px 25px rgba(93, 173, 226, 0.15) !important; }
.fb-quiz-btn-icon { font-size: 2.5rem !important; line-height: 1 !important; }
.fb-quiz-btn-text { font-size: 1.1rem !important; font-weight: 700 !important; color: var(--text-dark, #2c3e50) !important; }
.fb-quiz-divider { border: 0; height: 1px; background: dashed 1px rgba(93, 173, 226, 0.3); margin: 40px 0 30px 0; }
.fb-quiz-result-title { font-size: 1.35rem !important; color: var(--baby-primary, #5dade2) !important; font-weight: 800 !important; margin-bottom: 30px !important; text-align: center !important; }

/* ==========================================================================
   11. FOOTER, IMPRESSUM & KONTAKT
   ========================================================================== */
.fb-master-footer { background-color: #f8f9fa !important; border-top: 1px solid #e0e0e0 !important; }
.fb-master-footer h3, .fb-master-footer h2, .fb-master-footer .mod-menu h3, .fb-master-footer [class*="title"] { font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; font-size: 1.15rem !important; font-weight: 700 !important; color: #5DADE2 !important; margin-bottom: 18px !important; margin-top: 0 !important; text-transform: none !important; }
.fb-master-footer ul { list-style: none !important; list-style-type: none !important; padding: 0 !important; margin: 0 !important; }
.fb-master-footer ul li { padding: 0 !important; margin: 0 0 12px 0 !important; line-height: 1.4 !important; }
.fb-master-footer ul li a { font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; color: #2c3e50 !important; text-decoration: none !important; font-size: 0.92rem !important; font-weight: 600 !important; letter-spacing: -0.1px !important; transition: all 0.2s ease-in-out !important; display: inline-flex !important; align-items: center !important; }
.fb-master-footer ul li a::before { content: "♥" !important; color: #5DADE2 !important; font-size: 0.85rem !important; margin-right: 10px !important; display: inline-block !important; }
.fb-master-footer ul li a:hover { color: #5DADE2 !important; text-decoration: underline !important; }

@media (min-width: 768px) {
    .fb-master-footer .row, .fb-footer-table-row { display: block !important; width: 100% !important; content: "" !important; clear: both !important; }
    .fb-master-footer .fb-footer-col, .fb-master-footer .col-md-4, .fb-master-footer .col-md-5, .fb-master-footer .col-md-7 { width: 33.333% !important; max-width: 33.333% !important; float: left !important; box-sizing: border-box !important; }
    .fb-master-footer .fb-footer-col:first-child, .fb-master-footer .fb-col-left { padding-left: 12% !important; padding-right: 15px !important; margin-top: 10px !important; }
    .fb-master-footer .fb-footer-col:nth-child(2), .fb-master-footer .fb-col-center { text-align: center !important; margin-top: 60px !important; padding-left: 15px !important; padding-right: 15px !important; }
    .fb-master-footer .fb-footer-col:last-child, .fb-master-footer .fb-col-right { padding-left: 15% !important; padding-right: 15px !important; margin-top: 10px !important; }
}

@media (max-width: 767px) {
    .fb-footer-table-row { display: flex !important; flex-direction: column !important; align-items: center !important; width: 100% !important; padding: 0 15px !important; box-sizing: border-box !important; }
    .fb-master-footer .fb-footer-col, .fb-master-footer .col-md-4, .fb-master-footer .col-md-5, .fb-master-footer .col-md-7 { width: 100% !important; max-width: 100% !important; float: none !important; padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; margin-bottom: 30px !important; box-sizing: border-box !important; text-align: center !important; }
    .fb-col-center { order: 1 !important; margin-top: 15px !important; }
    .fb-col-right { order: 2 !important; }
    .fb-col-left { order: 3 !important; margin-bottom: 80px !important; }
    .fb-master-footer h3, .fb-master-footer h2, .fb-master-footer .mod-menu h3 { text-align: center !important; }
    .fb-master-footer ul { display: inline-block !important; text-align: left !important; margin: 0 auto !important; padding: 0 !important; }
    .fb-master-footer ul li a { display: flex !important; align-items: flex-start !important; white-space: normal !important; text-align: left !important; }
    .fb-master-footer ul li a[href*="versandkosten"], .fb-master-footer ul li a[title*="Zahlungen"] { max-width: 210px !important; }
    .fb-master-footer ul li a[href*="batterie"], .fb-master-footer ul li a[title*="Batterie"], .fb-master-footer ul li a[href*="entsorgung"] { max-width: 140px !important; }
    .fb-master-footer ul li a::before { margin-right: 12px !important; flex-shrink: 0 !important; }
}

div.com-content-article.item-page, .com-contact.contact {
    background: linear-gradient(135deg, rgba(93, 173, 226, 0.08) 0%, rgba(252, 228, 236, 0.4) 100%) !important;
    border: 1px solid rgba(93, 173, 226, 0.15) !important; border-radius: var(--border-radius-soft, 16px) !important;
    box-shadow: 0 10px 30px rgba(168, 218, 220, 0.12) !important; padding: 25px 20px !important; 
    margin-top: 30px !important; margin-bottom: 40px !important; margin-left: 15px !important; margin-right: 15px !important; box-sizing: border-box !important; width: auto !important;
    font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; letter-spacing: -0.1px !important;
}
div.com-content-article.item-page .page-header h1, .com-contact.contact h1 {
    text-align: center !important; justify-content: center !important; display: flex !important; flex-wrap: wrap !important; width: 100% !important; margin-left: auto !important; margin-right: auto !important; padding-left: 0 !important; padding-right: 0 !important; margin-bottom: 30px !important; font-weight: 700 !important; color: var(--text-dark, #2c3e50) !important; letter-spacing: -0.2px !important;
}

@media (min-width: 992px) {
    div.com-content-article.item-page { padding: 45px 50px !important; max-width: 960px !important; margin-top: 40px !important; margin-left: auto !important; margin-right: auto !important; }
    .com-contact.contact { padding: 40px 45px !important; max-width: 840px !important; margin-top: 40px !important; margin-left: auto !important; margin-right: auto !important; }
}

.fb-impressum-container { display: flex !important; flex-direction: column !important; gap: 24px !important; width: 100% !important; box-sizing: border-box !important; text-align: left !important; font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; letter-spacing: -0.1px !important; }
.fb-impressum-card { background: rgba(255, 255, 255, 0.85) !important; border: 1px solid rgba(93, 173, 226, 0.15) !important; border-radius: 12px !important; padding: 24px !important; box-sizing: border-box !important; }
.fb-impressum-section-title { font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; font-size: 1.3rem !important; color: var(--text-dark, #2c3e50) !important; font-weight: 700 !important; margin-top: 0 !important; margin-bottom: 24px !important; border-bottom: 2px solid rgba(93, 173, 226, 0.15) !important; padding-bottom: 10px !important; letter-spacing: -0.2px !important; }
.fb-impressum-sub-title { font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; font-size: 1.05rem !important; color: #2c3e50 !important; font-weight: 700 !important; margin-top: 20px !important; margin-bottom: 6px !important; letter-spacing: -0.1px !important; }
.fb-impressum-row { display: flex !important; flex-wrap: wrap !important; margin-bottom: 14px !important; font-size: 0.95rem !important; line-height: 1.5 !important; }
.fb-impressum-row:last-child { margin-bottom: 0 !important; }
.fb-impressum-row.fb-align-center { align-items: center !important; }
.fb-impressum-label { flex: 0 0 120px !important; font-weight: 600 !important; color: #7f8c8d !important; }
.fb-impressum-value, .fb-impressum-value a { flex: 1 !important; color: #2c3e50 !important; font-weight: 600 !important; text-decoration: none !important; }
.fb-impressum-value a:hover { color: var(--baby-primary, #5dade2) !important; text-decoration: underline !important; }
.fb-impressum-icon { display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 24px !important; height: 24px !important; margin-right: 14px !important; color: var(--baby-primary, #5dade2) !important; flex-shrink: 0 !important; }
.fb-impressum-icon svg { width: 18px !important; height: 18px !important; display: block !important; }
.fb-legal-text { font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; font-size: 0.92rem !important; line-height: 1.6 !important; color: #4a5568 !important; margin-bottom: 12px !important; }
.fb-legal-text a { color: var(--baby-primary, #5dade2) !important; font-weight: 600 !important; text-decoration: none !important; }
.fb-legal-text a:hover { text-decoration: underline !important; }
.fb-highlight-text { background-color: rgba(93, 173, 226, 0.04) !important; padding: 16px !important; border-left: 4px solid var(--baby-primary, #5dade2) !important; border-radius: 4px !important; }
.fb-impressum-badge-wrapper { margin-top: 24px !important; text-align: center !important; }
.fb-impressum-badge { height: auto !important; max-height: 55px !important; object-fit: contain !important; transition: transform 0.2s ease-in-out !important; }
.fb-impressum-badge:hover { transform: scale(1.03) !important; }
.fb-width-full { width: 100% !important; }

@media (min-width: 768px) {
    .fb-impressum-container { flex-direction: row !important; flex-wrap: wrap !important; }
    .fb-impressum-card { flex: 1 1 calc(50% - 12px) !important; }
    .fb-impressum-card.fb-width-full { flex: 0 0 100% !important; }
}

.com-contact.contact h2:has(.contact-category) { text-align: center !important; margin-bottom: 30px !important; }
.com-contact.contact .contact-category { display: inline-block !important; background-color: rgba(46, 204, 113, 0.08) !important; color: #27ae60 !important; border: 1px solid rgba(46, 204, 113, 0.2) !important; padding: 10px 20px !important; border-radius: 50px !important; font-size: 0.95rem !important; font-weight: 600 !important; }
.com-contact__container h2, .com-contact__form h2, .com-contact__form legend { display: none !important; }
.com-contact__container { display: flex !important; flex-direction: column !important; gap: 30px !important; width: 100% !important; }
.com-contact__info { background: rgba(255, 255, 255, 0.85) !important; border: 1px solid rgba(93, 173, 226, 0.15) !important; border-radius: 12px !important; padding: 24px !important; box-sizing: border-box !important; width: 100% !important; max-width: 100% !important; }
.com-contact__info dl.contact-address, .com-contact__info dl.dl-horizontal { margin: 0 !important; padding: 0 !important; display: flex !important; flex-direction: column !important; gap: 16px !important; width: 100% !important; max-width: 100% !important; }
.com-contact__info dl.contact-address dt, .com-contact__info dl.dl-horizontal dt { display: none !important; }
.com-contact__info dl.contact-address dd, .com-contact__info dl.dl-horizontal dd { margin-left: 0 !important; padding: 0 !important; display: flex !important; align-items: center !important; font-size: 0.98rem !important; color: #2c3e50 !important; font-weight: 600 !important; width: 100% !important; max-width: 100% !important; }
.com-contact__info dd::before { display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 24px !important; height: 24px !important; margin-right: 14px !important; color: var(--baby-primary, #5dade2) !important; flex-shrink: 0 !important; font-family: inherit !important; }
.com-contact__info dd:has(.contact-street)::before { content: "🏠" !important; font-size: 1.1rem; }
.com-contact__info dd:has(.contact-emailto)::before { content: "✉️" !important; font-size: 1.1rem; }
.com-contact__info dd:has(.contact-telephone)::before { content: "📞" !important; font-size: 1.1rem; }
.com-contact__info dd:has(.contact-mobile)::before { content: "📱" !important; font-size: 1.1rem; }
.com-contact__info dd:has(.contact-webpage)::before { content: "🌐" !important; font-size: 1.1rem; }
.com-contact__info .contact-street { line-height: 1.6 !important; }
.com-contact__info .contact-state { display: none !important; }
.com-contact__info a { color: #2c3e50 !important; text-decoration: none !important; }
.com-contact__info a:hover { color: var(--baby-primary, #5dade2) !important; text-decoration: underline !important; }
.com-contact__form { width: 100% !important; }
.com-contact__form form#contact-form { background: transparent !important; border: none !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important; }
.com-contact__form .field-spacer { display: none !important; }
.com-contact__form .control-group { margin-bottom: 20px !important; display: flex !important; flex-direction: column !important; gap: 8px !important; }
.com-contact__form .control-label label { font-size: 0.95rem !important; font-weight: 700 !important; color: #2c3e50 !important; }
.com-contact__form .control-label .star { color: var(--baby-cta, #e74c3c) !important; margin-left: 4px !important; }
.com-contact__form input[type="text"], .com-contact__form input[type="email"], .com-contact__form textarea, .com-contact__form .controls input, .com-contact__form .controls textarea { font-family: "Inter", system-ui, sans-serif !important; width: 100% !important; max-width: 100% !important; min-width: 100% !important; box-sizing: border-box !important; padding: 12px 16px !important; border-radius: 12px !important; border: 1px solid #dcdde1 !important; background-color: rgba(255, 255, 255, 0.9) !important; color: #2c3e50 !important; font-weight: 600 !important; font-size: 0.98rem !important; outline: none !important; transition: all 0.2s ease-in-out !important; box-shadow: inset 0 2px 4px rgba(0,0,0,0.02) !important; }
.com-contact__form input:focus, .com-contact__form textarea:focus, .com-contact__form .controls input:focus, .com-contact__form .controls textarea:focus { background-color: #ffffff !important; border-color: var(--baby-primary, #5dade2) !important; box-shadow: 0 0 0 4px rgba(93, 173, 226, 0.2) !important; }
.com-contact__form textarea, .com-contact__form .controls textarea { resize: vertical !important; min-height: 140px !important; }
.com-contact__form .control-group:has(#jform_contact_email_copy) { display: flex !important; flex-direction: row !important; justify-content: flex-start !important; align-items: center !important; width: 100% !important; margin-bottom: 25px !important; gap: 12px !important; }
.com-contact__form .control-group:has(#jform_contact_email_copy) .control-label { margin: 0 !important; padding: 0 !important; order: 2 !important; }
.com-contact__form .control-group:has(#jform_contact_email_copy) label { font-family: "Inter", system-ui, sans-serif !important; font-size: 0.95rem !important; font-weight: 700 !important; color: #2c3e50 !important; cursor: pointer !important; margin: 0 !important; }
.com-contact__form .control-group:has(#jform_contact_email_copy) .controls, .com-contact__form .control-group:has(#jform_contact_email_copy) .form-check-inline { margin: 0 !important; padding: 0 !important; display: inline-flex !important; align-items: center !important; order: 1 !important; }
.com-contact__form input#jform_contact_email_copy { width: 20px !important; height: 20px !important; cursor: pointer !important; margin: 0 !important; flex-shrink: 0 !important; }
.com-contact__form button.validate { width: 100% !important; height: 48px !important; background: linear-gradient(135deg, var(--baby-primary, #5dade2) 0%, #3498db 100%) !important; color: #ffffff !important; font-weight: 700 !important; font-size: 1.05rem !important; border-radius: 12px !important; border: none !important; box-shadow: 0 5px 15px rgba(52, 152, 219, 0.3) !important; cursor: pointer !important; transition: transform 0.2s ease, box-shadow 0.2s ease !important; }
.com-contact__form button.validate:hover { transform: translateY(-2px) !important; box-shadow: 0 8px 20px rgba(52, 152, 219, 0.4) !important; }

@media (min-width: 992px) {
    .com-contact__container { flex-direction: column !important; gap: 25px !important; width: 100% !important; }
    .com-contact__info { width: 100% !important; max-width: 100% !important; flex-shrink: 0 !important; }
    .com-contact__form { width: 100% !important; max-width: 100% !important; flex-shrink: 0 !important; }
}
/* Startseite 2026: klarer Einstieg mit Originalbildern und kurzen Kaufwegen */
.is-homepage .fb-home-hero {
    margin: 12px 14px 0;
    padding: clamp(24px, 3.2vw, 48px) 0 15px;
    border: 1px solid #dceaf5;
    border-radius: 28px;
    background: linear-gradient(115deg, #eff8ff 0%, #fff7f8 100%);
    overflow: hidden;
}
.is-homepage .fb-home-hero-inner {
    max-width: 1320px;
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    align-items: center;
    gap: clamp(22px, 4vw, 64px);
}
.is-homepage .fb-home-hero-copy { padding: 12px 0 18px; }
.is-homepage .fb-home-hero-eyebrow {
    display: inline-block;
    margin-bottom: 14px;
    color: #93506c;
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.is-homepage .fb-home-hero h1 {
    max-width: 620px;
    margin: 0 0 17px;
    color: #24384e;
    font-size: clamp(2rem, 3.15vw, 3.45rem);
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -.035em;
}
.is-homepage .fb-home-hero-copy p {
    max-width: 510px;
    margin: 0 0 24px;
    color: #43576a;
    font-size: clamp(1rem, 1.2vw, 1.13rem);
    line-height: 1.55;
}
.is-homepage .fb-home-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 14px 20px; }
.is-homepage .fb-home-hero-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 50px;
    padding: 12px 21px;
    border-radius: 13px;
    background: #236c99;
    color: #fff !important;
    font-weight: 800;
    text-decoration: none !important;
    box-shadow: 0 5px 14px rgba(35, 108, 153, .18);
}
.is-homepage .fb-home-hero-button:hover,
.is-homepage .fb-home-hero-button:focus-visible { background: #174d6e; }
.is-homepage .fb-home-hero-link { color: #235e83 !important; font-weight: 750; text-underline-offset: 4px; }
.is-homepage .fb-home-hero-gallery {
    display: grid;
    grid-template-columns: 1.28fr .82fr;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 13px;
    height: clamp(300px, 25vw, 450px);
}
.is-homepage .fb-home-hero-image {
    position: relative;
    display: block;
    overflow: hidden;
    border: 5px solid #fff;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(38, 73, 107, .1);
}
.is-homepage .fb-home-hero-image-main { grid-row: 1 / 3; }
.is-homepage .fb-home-hero-image img { width: 100%; height: 100%; display: block; object-fit: cover; }
.is-homepage .fb-home-hero-image span {
    position: absolute;
    bottom: 10px;
    left: 10px;
    max-width: calc(100% - 20px);
    padding: 7px 11px;
    border-radius: 9px;
    background: rgba(255, 255, 255, .96);
    color: #24384e;
    font-size: .79rem;
    font-weight: 800;
    line-height: 1.2;
}
.is-homepage .fb-home-hero-image:hover { transform: translateY(-3px); }
.is-homepage .fb-home-benefits {
    display: flex;
    justify-content: space-between;
    gap: 8px 24px;
    margin-top: 24px;
    color: #334b61;
    font-size: .88rem;
    font-weight: 700;
}
.is-homepage .home-teaser-section { margin-top: 30px !important; margin-bottom: 28px !important; }
.is-homepage .fb-featured-products-section { padding-top: 28px !important; }
@media (max-width: 900px) {
    .is-homepage .fb-home-hero-inner { grid-template-columns: 1fr; gap: 14px; }
    .is-homepage .fb-home-hero-copy { padding: 0; }
    .is-homepage .fb-home-hero-gallery { height: clamp(260px, 50vw, 410px); }
    .is-homepage .fb-home-benefits { justify-content: center; flex-wrap: wrap; }
}
@media (max-width: 600px) {
    .is-homepage .fb-home-hero { margin: 8px 8px 0; padding: 21px 0 14px; border-radius: 21px; }
    .is-homepage .fb-home-hero-inner { padding-left: 19px; padding-right: 19px; }
    .is-homepage .fb-home-hero-eyebrow { margin-bottom: 9px; }
    .is-homepage .fb-home-hero h1 { font-size: clamp(1.85rem, 8vw, 2.4rem); }
    .is-homepage .fb-home-hero-copy p { margin-bottom: 17px; }
    .is-homepage .fb-home-hero-button { width: 100%; }
    .is-homepage .fb-home-hero-gallery { height: 240px; gap: 7px; }
    .is-homepage .fb-home-hero-image { border-width: 3px; border-radius: 14px; }
    .is-homepage .fb-home-hero-image span { bottom: 5px; left: 5px; padding: 5px 7px; font-size: .66rem; }
    .is-homepage .fb-home-benefits { justify-content: flex-start; padding: 0 19px; margin-top: 16px; font-size: .76rem; }
}

.is-homepage main.container { margin-top: 24px !important; margin-bottom: 32px !important; }

/* 2.9.1: Die Hero-Grafik kommt aus einer Joomla-Modulposition, Trust und Finder bleiben oben. */
.is-homepage .fb-home-hero-inner { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
.is-homepage .fb-home-hero-visual { min-width: 0; }
.is-homepage .fb-home-hero-visual img {
    display: block;
    width: 100%;
    max-height: 360px;
    height: auto;
    object-fit: contain;
    border-radius: 22px;
}
.is-homepage .fb-home-hero-visual a:focus-visible,
.is-homepage .fb-home-hero-actions a:focus-visible { outline: 3px solid #1c587d; outline-offset: 3px; }
.is-homepage .fb-home-hero:has(.fb-home-hero-visual) { padding-top: 24px; padding-bottom: 24px; }
.is-homepage .fb-home-hero:not(:has(.fb-home-hero-visual)) { padding-top: 22px; padding-bottom: 22px; }
.is-homepage .fb-home-proof { padding-top: 14px; padding-bottom: 14px; }
/* Im bisherigen Hero-Modul nur die lange Einleitung ausblenden, bestehende Badges behalten. */
.is-homepage .fb-home-proof .fb-welcome-section { display: none !important; }
.is-homepage .fb-home-proof .fb-trust-block-modern {
    max-width: 100% !important;
    margin: 0 auto 10px !important;
    border: 2px solid #e4d8e9 !important;
    border-radius: 24px !important;
    background: linear-gradient(110deg, #fff8fb, #f1f9ff) !important;
    box-shadow: 0 9px 25px rgba(60, 91, 122, .1) !important;
}
.is-homepage .fb-home-proof .fb-trust-flex-container {
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 14px 22px !important;
}
.is-homepage .fb-home-proof .fb-trust-text-block { max-width: none !important; }
.is-homepage .fb-home-proof .fb-trust-text-block p { margin-bottom: 6px !important; line-height: 1.35 !important; }
.is-homepage .fb-home-proof .fb-mobile-inline-siegel { flex-shrink: 0 !important; gap: 16px !important; }
.is-homepage .fb-home-proof .fb-mobile-inline-siegel img { max-height: 82px !important; width: auto !important; }
.is-homepage .home-teaser-section { margin-top: 10px !important; margin-bottom: 22px !important; }
.is-homepage .home-teaser-section .module { border: 2px solid #e5dbe9 !important; border-radius: 24px !important; }
@media (max-width: 900px) {
    .is-homepage .fb-home-hero-inner { grid-template-columns: 1fr; }
    .is-homepage .fb-home-hero-visual img { max-height: 300px; }
    .is-homepage .fb-home-proof .fb-trust-flex-container { flex-direction: column !important; align-items: stretch !important; }
    .is-homepage .fb-home-proof .fb-mobile-inline-siegel { justify-content: center !important; }
}
@media (max-width: 600px) {
    .is-homepage .fb-home-hero-visual img { max-height: 240px; }
    .is-homepage .fb-home-proof { padding-left: 9px; padding-right: 9px; }
    .is-homepage .fb-home-proof .fb-trust-flex-container { padding: 16px !important; }
    .is-homepage .fb-home-proof .fb-mobile-inline-siegel { flex-wrap: wrap !important; gap: 10px !important; }
    .is-homepage .fb-home-proof .fb-mobile-inline-siegel img { max-height: 65px !important; }
}

/* 2.9.2 – wechselnde VirtueMart-Produkte in der Dreiergruppe */
.is-homepage .fb-home-hero-visual .vmgroup { width: 100%; }
.is-homepage .fb-home-hero-visual .vmheader,
.is-homepage .fb-home-hero-visual .vmfooter,
.is-homepage .fb-home-hero-visual .clear { display: none !important; }
.is-homepage .fb-home-hero-visual ul.vmproduct {
    display: grid !important;
    grid-template-columns: 1.2fr .86fr;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 12px;
    height: 370px;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
.is-homepage .fb-home-hero-visual ul.vmproduct > li.product-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    float: none !important;
    border: 4px solid #fff !important;
    border-radius: 19px !important;
    box-shadow: 0 8px 24px rgba(45, 76, 102, .12) !important;
    background: #fff !important;
    overflow: hidden !important;
}
.is-homepage .fb-home-hero-visual ul.vmproduct > li:first-child { grid-row: 1 / 3; }
.is-homepage .fb-home-hero-visual ul.vmproduct .spacer {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 4px !important;
    height: 100% !important;
    padding: 8px 12px !important;
    box-sizing: border-box !important;
    text-align: center !important;
}
.is-homepage .fb-home-hero-visual ul.vmproduct .spacer > a:first-child {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 0 !important;
    flex: 1 1 auto !important;
    overflow: hidden !important;
}
.is-homepage .fb-home-hero-visual ul.vmproduct img.featuredProductImage {
    max-width: 100% !important;
    width: auto !important;
    height: 100% !important;
    max-height: 125px !important;
    object-fit: contain !important;
    border-radius: 0 !important;
}
.is-homepage .fb-home-hero-visual ul.vmproduct > li:first-child img.featuredProductImage { max-height: 270px !important; }
.is-homepage .fb-home-hero-visual ul.vmproduct .spacer > a:not(:first-child) {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    color: #293f54 !important;
    font-size: .83rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
}
.is-homepage .fb-home-hero-visual ul.vmproduct .productdetails { font-size: .82rem !important; font-weight: 700; color: #286b98; }
.is-homepage .fb-home-hero-visual ul.vmproduct > li:hover { transform: translateY(-2px); }

/* 2.9.2 – Vorteile und echte Siegel direkt unter der Bilderwelt */
.is-homepage .fb-home-proof { max-width: 1320px; padding-top: 15px; padding-bottom: 10px; }
.is-homepage .fb-home-proof .fb-trust-block-modern {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 20px;
    align-items: center;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 20px 25px !important;
    border: 1px solid #ead8e5 !important;
    border-radius: 24px !important;
    background: linear-gradient(105deg, #fff4f8 0%, #fff 48%, #f0f9ff 100%) !important;
    box-shadow: 0 8px 24px rgba(53, 90, 117, .08) !important;
}
.is-homepage .fb-trust-eyebrow { color: #955473; font-size: .75rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.is-homepage .fb-trust-copy h2 { margin: 5px 0 14px; color: #293e52; font-size: clamp(1.14rem, 1.5vw, 1.4rem); font-weight: 800; }
.is-homepage .fb-trust-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px 18px; margin: 0; padding: 0; list-style: none; }
.is-homepage .fb-trust-benefits li { display: flex; align-items: center; gap: 8px; min-width: 0; color: #344b5d; font-size: .83rem; font-weight: 700; line-height: 1.3; }
.is-homepage .fb-trust-icon { display: inline-grid; place-items: center; width: 29px; height: 29px; min-width: 29px; border-radius: 50%; background: #fff; box-shadow: 0 2px 9px rgba(70, 93, 113, .1); font-size: 1rem; }
.is-homepage .fb-trust-seals { display: flex; align-items: center; justify-content: center; gap: 16px; padding-left: 18px; border-left: 1px solid #e2e7ee; }
.is-homepage .fb-trust-seals .shopauskunft-widget { flex: 0 0 auto; }
.is-homepage .fb-trust-hb-link { display: inline-flex; align-items: center; justify-content: center; }
.is-homepage .fb-trust-hb-link img { max-width: 120px; max-height: 82px; height: auto; object-fit: contain; }
@media (max-width: 1000px) {
    .is-homepage .fb-home-proof .fb-trust-block-modern { grid-template-columns: 1fr; }
    .is-homepage .fb-trust-seals { padding: 13px 0 0; border-left: 0; border-top: 1px solid #e2e7ee; }
}
@media (max-width: 600px) {
    .is-homepage .fb-home-hero-visual ul.vmproduct { height: 260px; gap: 7px; }
    .is-homepage .fb-home-hero-visual ul.vmproduct img.featuredProductImage { max-height: 85px !important; }
    .is-homepage .fb-home-hero-visual ul.vmproduct > li:first-child img.featuredProductImage { max-height: 180px !important; }
    .is-homepage .fb-home-hero-visual ul.vmproduct .spacer > a:not(:first-child) { font-size: .68rem !important; }
    .is-homepage .fb-home-proof .fb-trust-block-modern { padding: 16px !important; }
    .is-homepage .fb-trust-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .is-homepage .fb-trust-benefits li { font-size: .75rem; }
}

/* 2.9.3 – drei unabhängig wechselnde, im Backend gefilterte VM-Module */
.is-homepage .fb-home-hero-gallery { display: grid !important; grid-template-columns: 1.22fr .85fr !important; grid-template-rows: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; height: 370px !important; }
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot { min-width: 0; min-height: 0; overflow: hidden; border: 4px solid #fff; border-radius: 20px; background: #fff; box-shadow: 0 8px 24px rgba(45, 76, 102, .12); }
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot-main { grid-row: 1 / 3; }
.is-homepage .fb-home-hero-gallery .vmgroup,
.is-homepage .fb-home-hero-gallery ul.vmproduct,
.is-homepage .fb-home-hero-gallery li.product-container,
.is-homepage .fb-home-hero-gallery .spacer { width: 100% !important; height: 100% !important; max-width: 100% !important; min-height: 0 !important; margin: 0 !important; }
.is-homepage .fb-home-hero-gallery ul.vmproduct { display: block !important; padding: 0 !important; list-style: none !important; }
.is-homepage .fb-home-hero-gallery li.product-container { display: block !important; float: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.is-homepage .fb-home-hero-gallery .spacer { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; padding: 10px 12px !important; box-sizing: border-box !important; text-align: center !important; }
.is-homepage .fb-home-hero-gallery .spacer > a:first-child { flex: 1 1 auto !important; min-height: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; overflow: hidden !important; }
.is-homepage .fb-home-hero-gallery .featuredProductImage { width: auto !important; height: auto !important; max-width: 100% !important; max-height: 110px !important; object-fit: contain !important; }
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot-main .featuredProductImage { max-height: 285px !important; }
.is-homepage .fb-home-hero-gallery .spacer > a:not(:first-child) { color: #293f54 !important; font-weight: 800 !important; font-size: .83rem !important; line-height: 1.2 !important; text-decoration: none !important; }
.is-homepage .fb-home-hero-gallery .productdetails { font-size: .8rem !important; font-weight: 700 !important; color: #286b98 !important; }
.is-homepage .fb-home-hero-gallery .clear,
.is-homepage .fb-home-hero-gallery .vmheader,
.is-homepage .fb-home-hero-gallery .vmfooter { display: none !important; }
@media (max-width: 600px) {
    .is-homepage .fb-home-hero-gallery { height: 260px !important; gap: 7px !important; }
    .is-homepage .fb-home-hero-gallery .featuredProductImage { max-height: 80px !important; }
    .is-homepage .fb-home-hero-gallery .fb-home-hero-slot-main .featuredProductImage { max-height: 180px !important; }
    .is-homepage .fb-home-hero-gallery .spacer > a:not(:first-child) { font-size: .69rem !important; }
}

/* 2.9.4 – sichtbare Abstände und zentrierte Überschrift */
.is-homepage .fb-home-hero-inner.container {
    width: min(calc(100% - 32px), 1440px) !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(20px, 3vw, 48px) !important;
    padding-right: clamp(20px, 3vw, 48px) !important;
    box-sizing: border-box !important;
}
.is-homepage .fb-home-hero-copy { padding-left: 0 !important; }
.is-homepage .fb-home-proof.container {
    width: calc(100% - 28px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 14px 0 10px !important;
    box-sizing: border-box !important;
}
.is-homepage .fb-home-proof .fb-trust-block-modern {
    display: block !important;
    padding: 22px clamp(22px, 3vw, 50px) !important;
}
.is-homepage .fb-home-proof .fb-trust-heading { text-align: center; margin-bottom: 17px; }
.is-homepage .fb-home-proof .fb-trust-heading h2 {
    margin: 6px 0 0 !important;
    color: #293e52 !important;
    font-size: clamp(1.35rem, 1.8vw, 1.8rem) !important;
    font-weight: 800 !important;
}
.is-homepage .fb-home-proof .fb-trust-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(20px, 3vw, 50px);
    align-items: center;
}
@media (max-width: 1000px) {
    .is-homepage .fb-home-proof .fb-trust-content { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .is-homepage .fb-home-hero-inner.container { width: 100% !important; padding-left: 23px !important; padding-right: 23px !important; }
    .is-homepage .fb-home-proof.container { width: calc(100% - 16px) !important; }
    .is-homepage .fb-home-proof .fb-trust-block-modern { padding: 18px !important; }
}
@media (min-width: 601px) {
    .is-homepage .fb-home-hero-inner.container {
        width: calc(100% - 28px) !important;
        max-width: none !important;
    }
}

/* 2.9.6 – Überschrift über den wechselnden VirtueMart-Artikeln */
.is-homepage .fb-home-hero-products { min-width: 0; width: 100%; }
.is-homepage .fb-home-hero-products-title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .55em;
    width: fit-content;
    max-width: 100%;
    margin: 0 auto 14px !important;
    padding: 9px 20px;
    border: 1px solid #f4dce8;
    border-radius: 999px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 6px 20px rgba(127, 83, 112, .08);
    color: #80516f;
    font-size: clamp(.95rem, 1.3vw, 1.2rem) !important;
    font-weight: 800;
    line-height: 1.3;
    text-align: center;
}
.is-homepage .fb-home-hero-products-heart { color: #ed9eb9; font-size: 1.15em; }
.is-homepage .fb-home-hero-products-sparkle { color: #78b5df; font-size: 1.1em; }
@media (max-width: 600px) {
    .is-homepage .fb-home-hero-products-title { padding: 8px 12px; margin-bottom: 10px !important; font-size: .94rem !important; }
}

/* 2.9.7 – Produktkarten, kompakte Vorteile und sichtbarer Geschenkfinder-Anker */
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot {
    position: relative;
    border: 1px solid #f1dfeb !important;
    background: linear-gradient(145deg, #fff 63%, #fff4f8 100%) !important;
    box-shadow: 0 12px 28px rgba(84, 91, 126, .11) !important;
    transition: transform .2s ease, box-shadow .2s ease;
}
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot:nth-child(2) {
    border-color: #daebf8 !important;
    background: linear-gradient(145deg, #fff 65%, #edf8ff 100%) !important;
}
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 34px rgba(84, 91, 126, .17) !important;
}
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot::after {
    content: '♡';
    position: absolute;
    top: 10px;
    right: 13px;
    color: #e79cbb;
    font-size: 1.25rem;
    line-height: 1;
    pointer-events: none;
}
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot:nth-child(2)::after { color: #84b9da; }
.is-homepage .fb-home-hero-gallery .spacer > a:not(:first-child) { position: relative; z-index: 1; }

.is-homepage .fb-home-proof .fb-trust-block-modern {
    width: min(100%, 1380px) !important;
    max-width: 1380px !important;
    margin: 0 auto !important;
    padding: 20px clamp(18px, 2.1vw, 34px) !important;
}
.is-homepage .fb-home-proof .fb-trust-heading { margin-bottom: 14px; }
.is-homepage .fb-home-proof .fb-trust-content {
    gap: clamp(16px, 2vw, 32px);
    max-width: 1210px;
    margin-inline: auto;
}
.is-homepage .fb-home-proof .fb-trust-benefits {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
}
.is-homepage .fb-home-proof .fb-trust-benefits li {
    min-height: 43px;
    padding: 6px 9px;
    border: 1px solid #f2e9f0;
    border-radius: 12px;
    background: rgba(255, 255, 255, .82);
    box-sizing: border-box;
}
.is-homepage .fb-home-proof .fb-trust-seals {
    gap: 12px;
    padding: 8px 0 8px 18px;
}
.is-homepage #fb-gift-finder { scroll-margin-top: 116px; }
@media (max-width: 1000px) {
    .is-homepage .fb-home-proof .fb-trust-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .is-homepage .fb-home-proof .fb-trust-seals { padding: 12px 0 0; }
}
@media (max-width: 600px) {
    .is-homepage .fb-home-proof .fb-trust-benefits { grid-template-columns: 1fr; }
    .is-homepage .fb-home-hero-gallery .fb-home-hero-slot::after { top: 6px; right: 7px; font-size: 1rem; }
    .is-homepage #fb-gift-finder { scroll-margin-top: 92px; }
}

/* 2.9.8 – beide Sprungziele mit Abstand zur fixierten Suche */
.is-homepage #main-content-anchor { scroll-margin-top: 116px; }
@media (max-width: 600px) {
    .is-homepage #main-content-anchor { scroll-margin-top: 92px; }
}

/* Produktnamen und Bildflächen als kleine, warme Schaufenster gestalten */
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot-main {
    background: linear-gradient(155deg, #fff 58%, #fff0f5 100%) !important;
}
.is-homepage .fb-home-hero-gallery .spacer > a:not(:first-child) {
    display: inline-block !important;
    flex: 0 1 auto;
    max-width: calc(100% - 12px);
    margin: 4px auto 5px !important;
    padding: 7px 12px;
    border-radius: 12px;
    background: #fff4f8;
    box-shadow: 0 2px 7px rgba(131, 81, 104, .06);
    text-align: center;
}
.is-homepage .fb-home-hero-gallery .fb-home-hero-slot:nth-child(2) .spacer > a:not(:first-child) {
    background: #edf8ff;
}
@media (max-width: 600px) {
    .is-homepage .fb-home-hero-gallery .spacer > a:not(:first-child) { padding: 4px 6px; }
}

/* 2.9.9 – illustrierte Babywelt aus eigenen Dekorationsbildern */
@media (min-width: 1200px) {
    .is-homepage .fb-home-hero-inner.container {
        grid-template-columns: minmax(0, .98fr) minmax(0, .54fr) minmax(0, 1.38fr) !important;
        gap: clamp(12px, 1.5vw, 28px);
    }
}
.is-homepage .fb-home-hero {
    background:
        radial-gradient(ellipse at 0% 100%, rgba(203, 232, 252, .72), transparent 26%),
        radial-gradient(ellipse at 100% 100%, rgba(255, 221, 234, .68), transparent 27%),
        linear-gradient(110deg, #f1f9ff 0%, #fff 55%, #fff6f9 100%);
}
.is-homepage .fb-home-hero-copy { position: relative; z-index: 1; }
.is-homepage .fb-home-hero h1 {
    font-family: 'FuersBaby Friendly', Georgia, serif;
    font-weight: 700;
    letter-spacing: -.045em;
    font-size: clamp(2rem, 2.7vw, 3.15rem);
    line-height: 1.13;
    font-style: italic;
}
.is-homepage .fb-home-hero-title-pink { display: inline; color: #da537e; }
.is-homepage .fb-home-hero-baby-picture { display: block; align-self: end; justify-self: center; width: 100%; min-width: 0; }
.is-homepage .fb-home-hero-baby {
    display: block;
    width: 120%;
    max-width: none;
    height: auto;
    align-self: end;
    justify-self: center;
    margin: 0 -12% -14px;
    object-fit: contain;
    pointer-events: none;
}
.is-homepage .fb-home-hero-button { background: #df4d7b; box-shadow: 0 7px 17px rgba(223, 77, 123, .2); }
.is-homepage .fb-home-hero-button:hover,
.is-homepage .fb-home-hero-button:focus-visible { background: #bb3563; }
.is-homepage .fb-home-hero-products-title {
    border-color: #f4d4e0;
    background: linear-gradient(100deg, #fff7f2, #ffe5ee);
    font-family: 'FuersBaby Friendly', Georgia, serif;
    font-weight: 700;
    font-style: italic;
}
.is-homepage .fb-home-proof .fb-trust-block-modern {
    background: linear-gradient(110deg, #fff1f6, #fff 57%, #edf8ff) !important;
}
.is-homepage .fb-home-proof .fb-trust-content {
    grid-template-columns: minmax(130px, 185px) minmax(0, 1fr) auto;
    max-width: none;
}
.is-homepage .fb-trust-mascot-picture { display: block; align-self: end; justify-self: center; max-width: 100%; }
.is-homepage .fb-trust-mascot {
    display: block;
    width: min(100%, 175px);
    height: auto;
    align-self: end;
    justify-self: center;
    margin: -28px 0 -22px;
}
.is-homepage .fb-home-proof .fb-trust-heading h2 {
    font-family: 'FuersBaby Friendly', Georgia, serif;
    font-weight: 700 !important;
    font-style: italic;
}
.is-homepage .home-teaser-section .module {
    background:
        radial-gradient(ellipse at 2% 100%, rgba(251, 218, 231, .48), transparent 26%),
        radial-gradient(ellipse at 100% 100%, rgba(213, 237, 254, .6), transparent 26%),
        linear-gradient(110deg, #f2f9ff, #fff7fb) !important;
}
@media (max-width: 1199px) and (min-width: 901px) {
    .is-homepage .fb-home-hero-inner.container { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr) !important; }
    .is-homepage .fb-home-hero-baby-picture { display: none; }
}
@media (max-width: 1000px) {
    .is-homepage .fb-home-proof .fb-trust-content { grid-template-columns: minmax(110px, 150px) minmax(0, 1fr); }
    .is-homepage .fb-home-proof .fb-trust-seals { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
    .is-homepage .fb-home-hero-inner.container { grid-template-columns: 1fr !important; }
    .is-homepage .fb-home-hero-baby { width: min(62vw, 290px); max-width: 100%; margin: -12px auto -6px; }
}
@media (max-width: 600px) {
    .is-homepage .fb-home-proof .fb-trust-content { grid-template-columns: 1fr; }
    .is-homepage .fb-trust-mascot { width: 112px; margin: -9px auto -5px; }
    .is-homepage .fb-home-proof .fb-trust-seals { grid-column: auto; }
    .is-homepage .fb-home-hero h1 { font-size: clamp(1.8rem, 7.5vw, 2.45rem); }
}

/* 2.9.11 – größere Illustrationen, dekorative Akzente und Geschenkfinder */
.is-homepage .fb-home-hero { position: relative; isolation: isolate; overflow: hidden; }
.is-homepage .fb-home-hero-inner.container { position: relative; }
.is-homepage .fb-home-hero-copy { z-index: 3; }
.is-homepage .fb-home-hero-products { position: relative; z-index: 2; }
.is-homepage .fb-home-hero-baby-picture { position: relative; z-index: 1; overflow: visible; pointer-events: none; }
.is-homepage .fb-home-hero-baby {
    width: 170%; max-width: none; margin: -52px 0 -20px -45%;
    mask-image: linear-gradient(to right, transparent 0, #000 15%, #000 100%);
}
.is-homepage .fb-home-hero::before,
.is-homepage .fb-home-hero::after,
.is-homepage .fb-home-proof .fb-trust-block-modern::before,
.is-homepage .fb-home-proof .fb-trust-block-modern::after {
    position: absolute; pointer-events: none; line-height: 1; z-index: 0;
}
.is-homepage .fb-home-hero::before { content: '♡'; color: #ee91b5; font-size: clamp(3rem, 5vw, 6rem); left: 28%; top: 14%; transform: rotate(-15deg); }
.is-homepage .fb-home-hero::after { content: '🎀'; font-size: clamp(1.4rem, 2.5vw, 2.4rem); right: 7%; bottom: 2%; transform: rotate(15deg); }
.is-homepage .fb-home-proof .fb-trust-block-modern { position: relative; isolation: isolate; overflow: hidden; min-height: 245px; }
.is-homepage .fb-home-proof .fb-trust-block-modern::before { content: '♡'; color: #f19bbc; left: 2%; top: 10%; font-size: 2.5rem; }
.is-homepage .fb-home-proof .fb-trust-block-modern::after { content: '♡'; color: #99cbee; right: 2%; bottom: 10%; font-size: 2rem; transform: rotate(18deg); }
.is-homepage .fb-home-proof .fb-trust-heading { position: relative; z-index: 1; }
.is-homepage .fb-home-proof .fb-trust-content { position: relative; z-index: 1; }
.is-homepage .fb-trust-review-link,
.is-homepage .fb-trust-hb-link { display: inline-flex; align-items: center; gap: .5rem; max-width: 170px; min-height: 80px; padding: 12px; background: #fff; color: #263f55; border: 1px solid #e8d9e6; border-radius: 16px; box-shadow: 0 4px 13px rgba(51,77,109,.08); text-align: center; font-size: .82rem; font-weight: 750; line-height: 1.3; text-decoration: none; }
.is-homepage .fb-trust-review-link:focus-visible,
.is-homepage .fb-trust-hb-link:focus-visible { outline: 3px solid #226d9b; outline-offset: 3px; }
.is-homepage .fb-trust-review-symbol { font-size: 1.8rem; color: #e9a928; }
.is-homepage .fb-trust-hb-symbol { font-size: 1.8rem; color: #3885ad; }
@media (min-width: 1001px) {
    .is-homepage .fb-home-proof .fb-trust-block-modern { padding-left: clamp(185px, 18vw, 235px) !important; }
    .is-homepage .fb-home-proof .fb-trust-content { grid-template-columns: minmax(0, 1fr) auto; }
    .is-homepage .fb-trust-mascot-picture { position: absolute; top: -77px; left: calc(-1 * clamp(165px, 16vw, 215px)); width: clamp(165px, 17vw, 220px); }
    .is-homepage .fb-trust-mascot { width: 100%; margin: 0; }
}
@media (max-width: 1199px) and (min-width: 901px) {
    .is-homepage .fb-home-hero-baby-picture { display: none; }
}
@media (max-width: 900px) {
    .is-homepage .fb-home-hero-baby { width: min(76vw, 360px); max-width: 100%; margin: -12px auto -8px; mask-image: none; }
}
@media (max-width: 600px) {
    .is-homepage .fb-home-proof .fb-trust-block-modern { min-height: 0; }
    .is-homepage .fb-trust-mascot-picture { max-width: 112px; }
    .is-homepage .fb-trust-seals { flex-wrap: wrap; }
    .is-homepage .fb-home-hero::after { right: 3%; bottom: 30%; }
}
/* Das Quiz gehört dem Joomla-Modul: ausschließlich seine Optik ändern. */
.is-homepage #vm-quiz-container.fb-quiz-container { position: relative; overflow: hidden; max-width: 940px; padding: clamp(24px, 4vw, 48px); background: linear-gradient(120deg, #f2f9ff, #fff9fc); border: 1px solid #ebddec; border-radius: 28px; }
.is-homepage #vm-quiz-container::before,
.is-homepage #vm-quiz-container::after { position: absolute; pointer-events: none; font-family: sans-serif; line-height: 1; }
.is-homepage #vm-quiz-container::before { content: '♡'; top: 10px; left: 18px; color: #e99bbc; font-size: 2.7rem; transform: rotate(-18deg); }
.is-homepage #vm-quiz-container::after { content: '♡'; bottom: 8px; right: 18px; color: #97c9e9; font-size: 2.3rem; transform: rotate(14deg); }
.is-homepage #vm-quiz-container .fb-quiz-header h3 { max-width: 740px; margin: 0 auto 18px !important; color: #30445a !important; font-family: 'FuersBaby Friendly', Georgia, serif !important; font-size: clamp(1.6rem, 2.2vw, 2.4rem) !important; font-weight: 700 !important; line-height: 1.3 !important; letter-spacing: -.03em; text-wrap: balance; font-style: italic !important; }
.is-homepage #vm-quiz-container .fb-quiz-intro-text { max-width: 680px; margin-left: auto; margin-right: auto; }
.is-homepage #vm-quiz-container .fb-quiz-btn:focus-visible { outline: 3px solid #226d9b; outline-offset: 3px; }
@media (max-width: 600px) { .is-homepage #vm-quiz-container .fb-quiz-btn { min-width: min(100%, 230px); padding: 14px 16px !important; } }
@media (prefers-reduced-motion: reduce) { .is-homepage #vm-quiz-container .fb-quiz-btn { transition: none !important; } }

/* 2.9.12 – Vertrauensblock am Handy, Geschenkfinder und Kategorien */
.is-homepage .fb-home-categories-intro { margin: clamp(12px, 2vw, 26px) auto 20px; padding: 10px 16px; text-align: center; }
.is-homepage .fb-home-categories-intro h2 {
    display: inline-block; margin: 0; color: #293e52;
    font-family: 'FuersBaby Friendly', Georgia, serif;
    font-size: clamp(1.6rem, 2.5vw, 2.6rem); font-weight: 700;
    line-height: 1.25; text-wrap: balance; font-style: italic;
}
.is-homepage .fb-home-categories-intro h2::before,
.is-homepage .fb-home-categories-intro h2::after { content: '♡'; color: #eb8bab; display: inline-block; margin: 0 .5em; transform: rotate(-14deg); }
.is-homepage .fb-home-categories-intro h2::after { color: #92c9ea; transform: rotate(15deg); }
.is-homepage #vm-quiz-container.fb-quiz-container { width: 100%; box-sizing: border-box; min-width: 0; }
@media (min-width: 761px) {
    .is-homepage #vm-quiz-container.fb-quiz-container { max-width: 1080px; padding-left: clamp(205px, 26%, 280px); }
    .is-homepage #vm-quiz-container .fb-quiz-btn-group { gap: 12px; }
    .is-homepage #vm-quiz-container .fb-quiz-btn { min-width: 0; padding: 15px 13px !important; }
}
.is-homepage #vm-quiz-container .fb-quiz-question-text { color: #477dab !important; }
.is-homepage #vm-quiz-container .fb-quiz-btn {
    border-color: #e8d9eb !important; border-radius: 20px !important;
    background: #fff !important; box-shadow: 0 5px 16px rgba(87, 111, 144, .1) !important;
}
.is-homepage #vm-quiz-container .fb-quiz-btn:hover,
.is-homepage #vm-quiz-container .fb-quiz-btn:focus-visible { border-color: #d96492 !important; background: #fff7fa !important; }
.is-homepage #vm-quiz-container .fb-quiz-btn-text { font-size: clamp(.94rem, 1.5vw, 1.06rem) !important; line-height: 1.35 !important; }
@media (max-width: 760px) {
    .is-homepage #vm-quiz-container.fb-quiz-container {
        padding: 150px clamp(15px, 5vw, 24px) 27px !important;
        background-position: center top 8px, center, center;
        background-size: 154px auto, cover, cover;
    }
    .is-homepage #vm-quiz-container .fb-quiz-header h3 { font-size: clamp(1.5rem, 5.2vw, 2rem) !important; }
    .is-homepage #vm-quiz-container .fb-quiz-btn-group { gap: 10px; }
    .is-homepage #vm-quiz-container .fb-quiz-btn { flex: 1 1 100%; max-width: 100%; width: 100%; }
}
@media (max-width: 600px) {
    .is-homepage .fb-home-proof.container {
        display: block; width: calc(100% - 16px) !important; max-width: calc(100% - 16px) !important;
        min-width: 0; margin: 0 8px !important; padding: 14px 0 10px !important;
        box-sizing: border-box; overflow: visible;
    }
    .is-homepage .fb-home-proof .fb-trust-block-modern {
        display: block; width: 100% !important; max-width: 100% !important; min-width: 0;
        padding: 18px 15px !important; margin: 0 !important; box-sizing: border-box !important;
    }
    .is-homepage .fb-home-proof .fb-trust-heading,
    .is-homepage .fb-home-proof .fb-trust-content,
    .is-homepage .fb-home-proof .fb-trust-benefits,
    .is-homepage .fb-home-proof .fb-trust-seals { min-width: 0; width: 100%; max-width: 100%; box-sizing: border-box; }
    .is-homepage .fb-home-proof .fb-trust-heading { overflow-wrap: anywhere; }
    .is-homepage .fb-home-proof .fb-trust-eyebrow { display: block; white-space: normal; line-height: 1.45; letter-spacing: .025em; }
    .is-homepage .fb-home-proof .fb-trust-heading h2 { font-size: clamp(1.3rem, 6vw, 1.75rem) !important; overflow-wrap: anywhere; }
    .is-homepage .fb-home-proof .fb-trust-content { display: grid; grid-template-columns: minmax(0, 1fr) !important; gap: 12px; }
    .is-homepage .fb-home-proof .fb-trust-benefits { grid-template-columns: minmax(0, 1fr); }
    .is-homepage .fb-home-proof .fb-trust-benefits li { min-width: 0; overflow-wrap: anywhere; }
    .is-homepage .fb-home-proof .fb-trust-seals { justify-content: center; gap: 8px; }
    .is-homepage .fb-trust-review-link, .is-homepage .fb-trust-hb-link { flex: 1 1 140px; min-width: 0; max-width: 185px; }
    .is-homepage .fb-home-categories-intro h2::before,
    .is-homepage .fb-home-categories-intro h2::after { margin: 0 .2em; }
}

/* 2.9.13 – lokale Quiz-Grafik als echtes Bild mit ALT-Text und PNG-Fallback */
.is-homepage .home-teaser-section { position: relative; }
.is-homepage .home-teaser-section .fb-quiz-illustration {
    position: absolute; z-index: 2; width: clamp(185px, 22vw, 245px);
    left: max(0px, calc(50% - 530px)); bottom: 35px; pointer-events: none;
}
.is-homepage .home-teaser-section .fb-quiz-illustration img { display: block; width: 100%; height: auto; }
.is-homepage #vm-quiz-container.fb-quiz-container {
    background-image: radial-gradient(circle at 4% 85%, #ffe1ee, transparent 34%), linear-gradient(110deg, #fff4f9, #f0f9ff);
    background-position: center; background-size: cover;
}
@media (max-width: 760px) {
    .is-homepage .home-teaser-section .fb-quiz-illustration {
        width: 145px; left: 50%; top: 18px; bottom: auto; transform: translateX(-50%);
    }
}

/* 2.9.14 – echte Prüfsiegel wieder als Originalwidget und Logo */
.is-homepage .fb-home-proof .fb-trust-seals .shopauskunft-widget { flex: 0 1 auto; min-width: 0; max-width: 100%; }
.is-homepage .fb-home-proof .fb-trust-hb-link {
    flex: 0 0 auto; min-height: 0; max-width: 120px; padding: 0;
    border: 0; background: transparent; box-shadow: none;
}
.is-homepage .fb-home-proof .fb-trust-hb-link img { display: block; width: 120px; max-width: 100%; height: auto; }
@media (max-width: 600px) {
    .is-homepage .fb-home-proof .fb-trust-seals { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 12px; }
    .is-homepage .fb-home-proof .fb-trust-hb-link { flex: 0 0 120px; }
}

/* 2.9.15 – Finder so breit wie der Vertrauensblock, Figur rechts ohne Überlagerung */
.is-homepage .home-teaser-section.container {
    width: calc(100% - 28px) !important; max-width: none !important;
    margin-left: auto !important; margin-right: auto !important;
    padding-left: 0 !important; padding-right: 0 !important;
    box-sizing: border-box;
}
.is-homepage #vm-quiz-container.fb-quiz-container {
    width: min(100%, 1380px) !important; max-width: 1380px !important;
    min-height: 330px; margin: 0 auto 32px !important; box-sizing: border-box;
    background-image:
        radial-gradient(circle at 95% 12%, rgba(255, 194, 216, .55), transparent 20%),
        radial-gradient(circle at 3% 95%, rgba(190, 226, 250, .65), transparent 22%),
        linear-gradient(110deg, #f2f9ff, #fff9fc);
}
.is-homepage .home-teaser-section .fb-quiz-illustration {
    left: auto; top: auto; bottom: 38px;
    right: max(18px, calc((100% - 1380px) / 2 + 25px));
    width: clamp(210px, 22vw, 325px); transform: none;
}
.is-homepage #vm-quiz-container::before { content: '♡'; top: 13%; left: 3%; color: #ef8eaf; font-size: 3rem; }
.is-homepage #vm-quiz-container::after { content: '♡'; right: 4%; top: 8%; bottom: auto; color: #91c7e7; font-size: 2.6rem; }
@media (min-width: 761px) {
    .is-homepage #vm-quiz-container.fb-quiz-container {
        padding: clamp(30px, 4vw, 55px) clamp(235px, 26vw, 355px) 36px clamp(28px, 4vw, 58px) !important;
    }
    .is-homepage #vm-quiz-container .fb-quiz-header,
    .is-homepage #vm-quiz-container #vm-quiz-interactive,
    .is-homepage #vm-quiz-container #vm-quiz-live-results { position: relative; z-index: 3; }
}
@media (min-width: 761px) and (max-width: 1050px) {
    .is-homepage #vm-quiz-container.fb-quiz-container { padding-right: 205px !important; }
    .is-homepage .home-teaser-section .fb-quiz-illustration { width: 190px; }
}
@media (max-width: 760px) {
    .is-homepage .home-teaser-section.container { width: calc(100% - 16px) !important; }
    .is-homepage #vm-quiz-container.fb-quiz-container { min-height: 0; }
    .is-homepage .home-teaser-section .fb-quiz-illustration {
        left: 50%; right: auto; top: 18px; bottom: auto;
        width: 145px; transform: translateX(-50%);
    }
}

/* 2.9.16 – Quizbreite optisch an den Vertrauensblock angleichen */
@media (min-width: 1001px) {
    .is-homepage #vm-quiz-container.fb-quiz-container {
        width: min(100%, 1650px) !important; max-width: 1650px !important;
    }
    .is-homepage .home-teaser-section .fb-quiz-illustration {
        right: max(18px, calc((100% - 1650px) / 2 + 32px));
    }
}
/* Die Schleife sitzt in der freien Randzone neben der letzten Produktkarte. */
.is-homepage .fb-home-hero::after {
    right: 10px; bottom: 18px; z-index: 4;
    font-size: clamp(1.7rem, 2.4vw, 2.4rem);
    transform: rotate(-14deg);
}
@media (max-width: 600px) {
    .is-homepage .fb-home-hero::after {
        right: 4px; bottom: 4px; top: auto; font-size: 1.25rem;
    }
}

/* 2.9.17 – mobile Überschriften ohne geräteabhängige Schreibschrift */
@media (max-width: 760px) {
    .is-homepage .home-teaser-section .fb-quiz-illustration { top: 6px; }
    .is-homepage .fb-home-hero h1,
    .is-homepage .fb-home-hero-products-title,
    .is-homepage .fb-home-proof .fb-trust-heading h2,
    .is-homepage #vm-quiz-container .fb-quiz-header h3,
    .is-homepage .fb-home-categories-intro h2 {
        font-family: 'FuersBaby Friendly', Georgia, serif !important;
        font-style: italic !important;
        font-weight: 700 !important; letter-spacing: -.02em !important;
    }
    .is-homepage #vm-quiz-container .fb-quiz-header h3 { line-height: 1.28 !important; }
}

/* FUERSBABY CATEGORY STORY: category override styling */
.fb-story-category{width:100%;max-width:100%;min-width:0;box-sizing:border-box;color:#203954}
.fb-story-category *{box-sizing:border-box}
.fb-story-category .fb-story-hero{position:relative;min-height:205px;margin:0 15px 25px!important;padding:30px 26% 24px!important;border:1px solid #f5e7ed;border-radius:20px;background-color:#fff;display:grid;place-items:center;text-align:center;overflow:hidden}
.fb-story-hero-art{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}.fb-story-hero-copy{position:relative;z-index:1;max-width:720px}
.fb-story-ornament{color:#e8729d;font-size:26px;line-height:1}
.fb-story-category .fb-story-hero .vm-category-title{font-family:'FuersBaby Friendly',Georgia,serif!important;font-style:italic;font-weight:700!important;font-size:clamp(1.9rem,3.5vw,3.6rem)!important;line-height:1.15;color:#173656!important;margin:7px 0 8px!important;text-wrap:balance}
.fb-story-hero p{font-size:clamp(.95rem,1.4vw,1.25rem);margin:0;line-height:1.4}
.fb-story-category .fb-story-grid{margin:0 15px 29px!important}
.fb-story-category .fb-story-list{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:18px!important;width:100%!important;margin:0!important;padding:0!important}
.fb-story-category .fb-story-tile{grid-column:span 3;position:relative;display:block!important;min-width:0;width:100%!important;height:320px!important;min-height:0!important;margin:0!important;padding:16px 18px!important;border:2px solid #e8d9e7!important;border-radius:19px!important;background:linear-gradient(155deg,#fff 68%,#fff9fc)!important;box-shadow:0 7px 19px #243b531c!important;overflow:hidden;text-decoration:none!important;cursor:pointer!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important}
.fb-story-category .fb-story-tile:nth-child(n+5){grid-column:span 4}
.fb-story-category .fb-story-tile:hover{transform:translateY(-5px)!important;border-color:#ef9bbb!important;box-shadow:0 14px 28px #243b5326!important}.fb-story-category .fb-story-tile:hover .fb-story-tile-action,.fb-story-category .fb-story-tile:focus-visible .fb-story-tile-action{background:#d94d7d;color:#fff}
.fb-story-category .fb-story-tile:focus-visible{outline:3px solid #e45083;outline-offset:3px}
.fb-story-tile::after{content:'♡';position:absolute;bottom:11px;left:16px;color:#ed90ae;font-size:28px;pointer-events:none}
.fb-story-category .fb-story-tile-name{display:block!important;position:relative;z-index:2;max-width:78%;font-family:'FuersBaby Friendly',Georgia,serif;font-style:italic;font-weight:700;font-size:clamp(1rem,1.4vw,1.42rem);line-height:1.2;color:#173656!important;text-align:left!important;margin:0!important;overflow-wrap:anywhere}
.fb-story-arrow{position:absolute;right:17px;top:17px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#ffe1eb;color:#244662;font-size:31px;line-height:1;z-index:2}
.fb-story-tile-action{position:absolute;z-index:3;right:14px;bottom:11px;display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:#ffe2ec;color:#9c315b;font-size:.84rem;font-weight:700;line-height:1.3;transition:background .2s ease,color .2s ease;pointer-events:none}.fb-story-tile-action span{font-size:1.1em}
.fb-story-category .fb-story-image-wrap{position:absolute!important;top:72px!important;right:10px!important;bottom:44px!important;left:10px!important;display:flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:auto!important;margin:0!important;overflow:visible!important;background:radial-gradient(ellipse at 50% 84%,#e9f5ff 0,#fff1f6 37%,transparent 65%);pointer-events:none}
.fb-story-category .fb-story-image-wrap .fb-story-image{display:block!important;flex:none!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;filter:drop-shadow(0 3px 4px #48516b13)}
.fb-story-category .fb-category-products-wrapper{margin:20px 15px!important;max-width:100%;min-width:0}
.fb-story-category .fb-story-description{position:relative;min-height:165px;margin:29px 15px 15px!important;padding:24px clamp(20px,23vw,380px)!important;border:1px solid #dceafb;border-radius:17px;background:#fff;display:grid;place-items:center;text-align:center;overflow:hidden}
.fb-story-category .fb-story-footer-art{position:absolute;inset:0;display:block;width:100%;height:100%}.fb-story-category .fb-story-footer-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.fb-story-category .fb-story-description .fb-cat-desc-text{position:relative;z-index:1}.fb-story-category .fb-cat-desc-text,.fb-story-category .fb-cat-desc-text p{max-width:800px!important;margin:0 auto!important;color:#263b52!important;font-size:clamp(.95rem,1.2vw,1.09rem)!important;line-height:1.55!important}
@media(max-width:991px){.fb-story-category .fb-story-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}.fb-story-category .fb-story-tile,.fb-story-category .fb-story-tile:nth-child(n+5){grid-column:span 1}.fb-story-category .fb-story-hero{padding:28px 16% 22px!important}.fb-story-category .fb-story-description{padding:24px 18%!important}.fb-story-category .fb-story-description::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#ffffff44,#ffffffcf 22%,#ffffffcf 78%,#ffffff44)}.fb-story-category .fb-story-description .fb-cat-desc-text{z-index:2}}
@media(max-width:575px){.fb-story-category .fb-story-hero{min-height:165px;margin:0 10px 20px!important;padding:18px 12px!important;}.fb-story-category .fb-story-hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#ffffffdd,#ffffffeb)}.fb-story-category .fb-story-hero .vm-category-title{font-size:clamp(1.55rem,7vw,2.15rem)!important}.fb-story-hero p{font-size:.93rem}.fb-story-category .fb-story-grid{margin:0 10px 23px!important}.fb-story-category .fb-story-list{gap:10px!important}.fb-story-category .fb-story-tile{height:245px!important;padding:12px!important}.fb-story-category .fb-story-tile-name{font-size:1rem;max-width:100%;padding-right:30px}.fb-story-arrow{right:9px;top:9px;width:26px;height:26px;font-size:22px}.fb-story-category .fb-story-image-wrap{top:58px!important;right:6px!important;bottom:36px!important;left:6px!important}.fb-story-category .fb-category-products-wrapper{margin:16px 10px!important}.fb-story-category .fb-story-description{margin:23px 10px!important;padding:24px 16px!important}.fb-story-category .fb-story-description::before{background:#fffffff0}}
@media(max-width:360px){.fb-story-category .fb-story-list{grid-template-columns:minmax(0,1fr)!important}.fb-story-category .fb-story-tile{height:270px!important}}
@media(prefers-reduced-motion:reduce){.fb-story-category .fb-story-tile{transition:none!important}}


/* Shared wrapper galleries: standalone pages linked directly to this template.css. */
body.fb-choice-page{width:100%!important;max-width:100%!important;margin:0!important;padding:clamp(12px,2.2vw,30px)!important;overflow-x:hidden!important;background:linear-gradient(150deg,#eef8ff 0%,#fffafc 55%,#fff 100%)!important;color:#213b54!important;font:400 16px/1.5 system-ui,-apple-system,'Segoe UI',sans-serif!important}
.fb-choice-page,.fb-choice-page *{box-sizing:border-box}
.fb-choice-page>div{width:100%!important;max-width:1330px!important;min-width:0!important;margin:0 auto!important;text-align:center!important}
.fb-choice-page h1.Stil1{max-width:980px!important;margin:0 auto 15px!important;color:#1b3955!important;font-family:'FuersBaby Friendly',Georgia,serif!important;font-size:clamp(1.65rem,3.2vw,2.65rem)!important;font-style:italic;font-weight:700!important;line-height:1.18!important;overflow-wrap:anywhere}
.fb-choice-page h2.Stil2{max-width:880px!important;margin:0 auto 16px!important;color:#445d75!important;font:400 clamp(.98rem,1.5vw,1.15rem)/1.48 system-ui,-apple-system,'Segoe UI',sans-serif!important}
.fb-choice-page p.Stil3{display:table;max-width:100%;padding:8px 17px!important;margin:13px auto 26px!important;background:#fff!important;border:1px solid #f4d6e4!important;border-radius:999px!important;box-shadow:0 3px 12px #e385ab20;color:#a83d67!important;font:700 .9rem/1.35 system-ui,-apple-system,'Segoe UI',sans-serif!important;overflow-wrap:anywhere}
.fb-choice-page.fb-choice-legacy>div p:first-child{max-width:850px;margin:4px auto 16px!important;color:#24445f!important;font:700 clamp(1.4rem,2.9vw,2.3rem)/1.2 Georgia,serif!important}
.fb-choice-page.fb-choice-legacy>div p:first-child font,.fb-choice-page.fb-choice-legacy>div p:first-child span{color:inherit!important;font:inherit!important}
.fb-choice-page table{width:100%!important;max-width:100%!important;table-layout:fixed!important;border:0!important;border-collapse:separate!important;border-spacing:10px 5px!important;background:none!important;margin:0 auto 20px!important}
.fb-choice-page table td,.fb-choice-page table th{width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;box-sizing:border-box!important;padding:7px!important;border:0!important;text-align:center!important;vertical-align:middle!important;overflow-wrap:anywhere}
.fb-choice-page.fb-choice-gallery table td:has(img),.fb-choice-page.fb-choice-overview table td:has(img){background:#fff!important;border:1px solid #e7dbe8!important;border-radius:15px!important;box-shadow:0 4px 14px #304b6319!important}
.fb-choice-page table td a:has(img){display:flex!important;align-items:center!important;justify-content:center!important;min-height:100px;width:100%;padding:5px;border-radius:12px;text-decoration:none!important;transition:background .18s ease,transform .18s ease}
.fb-choice-page table td a:has(img):hover,.fb-choice-page table td a:has(img):focus-visible{background:#fff0f7!important;transform:translateY(-2px);outline:2px solid #de71a0!important;outline-offset:1px}
.fb-choice-page table img{display:block!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:220px!important;object-fit:contain!important;margin:auto!important}
.fb-choice-page.fb-choice-overview table td{padding:15px!important;background:#fff!important;border:1px solid #e5dbe9!important;border-radius:17px!important;box-shadow:0 5px 16px #304b6315!important}
.fb-choice-page.fb-choice-overview table img{max-height:490px!important}
.fb-choice-page.fb-choice-overview table h3,.fb-choice-page.fb-choice-overview table .Stil4{font-family:Georgia,serif!important;font-size:clamp(1rem,1.8vw,1.3rem)!important;line-height:1.3!important;font-weight:700!important;color:#25445f!important;margin:2px 0 12px!important}
.fb-choice-page.fb-choice-gallery table td.border_top{padding:3px 3px 14px!important;color:#263e57!important;font:650 clamp(.74rem,1.25vw,.96rem)/1.3 system-ui,-apple-system,'Segoe UI',sans-serif!important;background:transparent!important}
.fb-choice-page table td a:focus-visible{outline:3px solid #de71a0!important}
@media(max-width:767px){body.fb-choice-page{padding:12px 5px!important}.fb-choice-page table{border-spacing:3px 3px!important}.fb-choice-page.fb-choice-gallery table td{padding:2px!important}.fb-choice-page.fb-choice-gallery table td a:has(img){min-height:65px;padding:2px}.fb-choice-page.fb-choice-gallery table img{max-height:100px!important}.fb-choice-page.fb-choice-gallery table td.border_top{font-size:clamp(.62rem,2.5vw,.8rem)!important;padding:2px 0 9px!important}.fb-choice-page.fb-choice-overview table,.fb-choice-page.fb-choice-overview table tbody,.fb-choice-page.fb-choice-overview table tr,.fb-choice-page.fb-choice-overview table td{display:block!important;width:100%!important;max-width:100%!important}.fb-choice-page.fb-choice-overview table td{margin:0 0 13px!important;padding:12px!important}.fb-choice-page.fb-choice-overview table img{max-height:480px!important}}
@media(prefers-reduced-motion:reduce){.fb-choice-page table td a:has(img){transition:none}}

/* 2.9.25 — wrapper pages in both main site and /J5_Test/: a proper shop-style gallery. */
body.fb-choice-page{background:radial-gradient(circle at 12% 7%,#e6f5ff 0,transparent 24%),radial-gradient(circle at 88% 12%,#ffeaf2 0,transparent 24%),#fffafc!important;color:#1e3c57!important}
.fb-choice-page>div{max-width:1320px!important;padding:0 8px 28px!important}
.fb-choice-page h1.Stil1{position:relative;max-width:none!important;margin:12px 0 0!important;padding:44px 18px 10px!important;border-radius:24px 24px 0 0;background:linear-gradient(115deg,#eaf7ff,#fff8fc 65%,#ffedf4);font-family:'FuersBaby Friendly',Georgia,serif!important;font-style:italic!important;font-size:clamp(1.7rem,3.3vw,3.15rem)!important;font-weight:700!important;color:#1d425d!important;text-wrap:balance}
.fb-choice-page h1.Stil1::before{content:'♡  ♡  ♡';display:block;margin-bottom:4px;font:400 1.25rem/1 system-ui,sans-serif;color:#ef84a8;letter-spacing:.5em}
.fb-choice-page h2.Stil2{max-width:none!important;margin:0!important;padding:5px max(14px,12%) 18px!important;background:linear-gradient(115deg,#eaf7ff,#fff8fc 65%,#ffedf4);font:400 clamp(.95rem,1.45vw,1.13rem)/1.5 system-ui,sans-serif!important;color:#37536b!important;text-wrap:balance}
.fb-choice-page p.Stil3{display:block!important;width:100%;max-width:none!important;border:0!important;border-radius:0 0 24px 24px!important;margin:0 auto 23px!important;padding:4px 14px 22px!important;background:linear-gradient(115deg,#eaf7ff,#fff8fc 65%,#ffedf4)!important;box-shadow:none!important;color:#bb4577!important;font:700 .88rem/1.4 system-ui,sans-serif!important;letter-spacing:.04em}
.fb-choice-page.fb-choice-gallery table,.fb-choice-page.fb-choice-overview table{border-spacing:12px 7px!important}
.fb-choice-page.fb-choice-gallery table td:has(img){border:1px solid #f0dce7!important;border-radius:17px!important;background:linear-gradient(145deg,#fff,#fffafb)!important;box-shadow:0 7px 22px #26496312!important;vertical-align:middle!important;padding:12px!important;transition:transform .2s,box-shadow .2s}
.fb-choice-page.fb-choice-gallery table td:has(img):hover{transform:translateY(-3px);box-shadow:0 13px 25px #e188ae33!important}
.fb-choice-page.fb-choice-gallery table td a:has(img){min-height:158px!important;cursor:pointer!important}
.fb-choice-page.fb-choice-gallery table td.border_top{background:#fff7fb!important;border:1px solid #f1dfeb!important;border-radius:12px!important;color:#24435e!important;vertical-align:middle!important;padding:7px 5px 9px!important;font-weight:700!important}
.fb-choice-page.fb-choice-overview table td{position:relative;padding:21px 22px 18px!important;vertical-align:top!important;text-align:left!important;color:#1b3e5c!important;font:700 clamp(1.05rem,1.8vw,1.45rem)/1.32 'FuersBaby Friendly',Georgia,serif!important;border:1px solid #eddfeb!important;border-radius:20px!important;background:linear-gradient(145deg,#fff 55%,#fff5fa)!important;box-shadow:0 8px 24px #304b6317!important;transition:transform .2s,box-shadow .2s}
.fb-choice-page.fb-choice-overview table td:has(a):hover{transform:translateY(-4px);box-shadow:0 15px 31px #d586ad30!important}
.fb-choice-page.fb-choice-overview table td a:has(img){margin-top:12px;min-height:160px!important;max-height:420px;cursor:pointer}
.fb-choice-page.fb-choice-overview table td a:has(img)::before{content:'';position:absolute;inset:0;border-radius:20px}
.fb-choice-page.fb-choice-overview table td a:has(img)::after{content:'›';position:absolute;top:16px;right:17px;display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#ffe0ec;color:#25435e;font:700 28px/1 system-ui,sans-serif}
.fb-choice-page.fb-choice-overview table img{max-height:370px!important}
@media(max-width:767px){body.fb-choice-page{padding:8px 3px!important}.fb-choice-page>div{padding:0 2px 15px!important}.fb-choice-page h1.Stil1{padding:24px 9px 7px!important;margin-top:3px!important}.fb-choice-page h2.Stil2{padding:3px 13px 13px!important}.fb-choice-page p.Stil3{padding:3px 9px 17px!important;margin-bottom:12px!important}.fb-choice-page.fb-choice-gallery table{border-spacing:3px 5px!important}.fb-choice-page.fb-choice-gallery table td:has(img){padding:3px!important;border-radius:9px!important}.fb-choice-page.fb-choice-gallery table td a:has(img){min-height:65px!important;padding:1px!important}.fb-choice-page.fb-choice-gallery table td.border_top{font-size:clamp(.64rem,2.45vw,.82rem)!important;padding:3px 1px 6px!important}.fb-choice-page.fb-choice-overview table td{padding:15px!important;text-align:left!important}.fb-choice-page.fb-choice-overview table img{max-height:420px!important}}
@media(prefers-reduced-motion:reduce){.fb-choice-page table td{transition:none!important}}

/* 2.9.26 — Motif image and name belong to the same card. */
body.fb-choice-page{padding-top:10px!important}
.fb-choice-page>div>br:first-child{display:none!important}
.fb-choice-page h1.Stil1{margin-top:0!important;padding-top:18px!important}
.fb-choice-page h2.Stil2{border-radius:0 0 24px 24px}
.fb-choice-page.fb-choice-gallery p.Stil3{position:sticky!important;top:8px;z-index:20;display:table!important;width:auto;max-width:calc(100% - 12px)!important;margin:10px auto 20px!important;padding:10px 22px!important;background:#fff!important;border:1px solid #f0c9dc!important;border-radius:999px!important;box-shadow:0 5px 18px #233c5520!important;color:#a83e6d!important;font:700 clamp(.85rem,1.4vw,1rem)/1.4 system-ui,sans-serif!important;letter-spacing:0!important}
.fb-choice-page .fb-choice-card-grid{display:grid;grid-template-columns:repeat(var(--fb-cols,4),minmax(0,1fr));gap:clamp(7px,1.2vw,17px);width:100%;max-width:100%;margin:0 auto 26px;padding:0 4px}
.fb-choice-page .fb-choice-card{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #efdbeb;border-radius:17px;background:linear-gradient(145deg,#fff 65%,#fff6fa);box-shadow:0 7px 20px #23445e15;transition:transform .2s,box-shadow .2s}
.fb-choice-page .fb-choice-card:hover{transform:translateY(-3px);box-shadow:0 13px 26px #d987ae33}
.fb-choice-page .fb-choice-card:focus-within{outline:3px solid #eb5b95;outline-offset:2px}
.fb-choice-page .fb-choice-card-picture{display:flex;align-items:center;justify-content:center;min-width:0;min-height:clamp(108px,17vw,234px);flex:1;padding:clamp(6px,1vw,13px);font-size:0}
.fb-choice-page .fb-choice-card-picture a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;min-height:95px;padding:0;text-decoration:none}
.fb-choice-page .fb-choice-card-picture img{display:block;width:auto!important;max-width:100%!important;height:auto!important;max-height:215px;object-fit:contain}
.fb-choice-page .fb-choice-card-label{min-width:0;min-height:42px;display:flex;align-items:center;justify-content:center;padding:7px 5px;background:#fff1f8;color:#20405b;font:700 clamp(.77rem,1.1vw,.98rem)/1.3 system-ui,sans-serif;overflow-wrap:anywhere;text-align:center}
.fb-choice-page .fb-choice-card-label a{color:inherit;text-decoration:none}
.fb-choice-page .fb-choice-grid-note{grid-column:1/-1;padding:7px 12px;text-align:center;color:#36526c}
@media(max-width:767px){body.fb-choice-page{padding-top:5px!important}.fb-choice-page h1.Stil1{padding-top:14px!important}.fb-choice-page .fb-choice-card-grid{gap:5px;padding:0 2px}.fb-choice-page .fb-choice-card{border-radius:10px}.fb-choice-page .fb-choice-card-picture{min-height:76px;padding:3px}.fb-choice-page .fb-choice-card-picture a{min-height:70px}.fb-choice-page .fb-choice-card-picture img{max-height:105px}.fb-choice-page .fb-choice-card-label{min-height:37px;padding:4px 2px;font-size:clamp(.62rem,2.35vw,.8rem)}.fb-choice-page.fb-choice-gallery p.Stil3{top:5px;padding:9px 12px!important;margin:8px auto 11px!important}}
@media(prefers-reduced-motion:reduce){.fb-choice-page .fb-choice-card{transition:none}}

/* 2.9.27 — home trust block: keep both original seals visible and trim whitespace. */
.is-homepage .fb-home-proof.container{
  display:block!important;width:calc(100% - 28px)!important;max-width:1650px!important;
  min-width:0!important;margin:0 auto!important;padding:10px 0 8px!important;
  box-sizing:border-box!important;
}
.is-homepage .fb-home-proof .fb-trust-block-modern{
  width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;
  margin:0!important;padding-top:14px!important;padding-bottom:12px!important;
  box-sizing:border-box!important;
}
.is-homepage .fb-home-proof .fb-trust-heading{margin-bottom:4px!important}
.is-homepage .fb-home-proof .fb-trust-heading h2{margin-top:3px!important}
.is-homepage .fb-home-proof .fb-trust-content{
  width:100%;max-width:100%!important;min-width:0!important;
  gap:16px!important;align-items:start!important;
}
.is-homepage .fb-home-proof .fb-trust-benefits{min-width:0!important;align-self:center}
.is-homepage .fb-home-proof .fb-trust-seals{
  min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
  align-self:start!important;justify-content:center!important;gap:10px!important;
  padding-top:0!important;padding-bottom:0!important;
}
.is-homepage .fb-home-proof .fb-trust-seals .shopauskunft-widget{
  flex:0 1 175px!important;min-width:0!important;max-width:175px!important;
}
.is-homepage .fb-home-proof .fb-trust-hb-link{flex:0 0 120px!important;max-width:120px!important}
.is-homepage .fb-home-proof .fb-trust-hb-link img{display:block!important;width:120px!important;max-width:100%!important;height:auto!important}
@media(min-width:1001px){
  .is-homepage .fb-home-proof .fb-trust-content{grid-template-columns:minmax(0,1fr) minmax(0,330px)!important}
  .is-homepage .fb-home-proof .fb-trust-mascot-picture{top:-92px!important}
  .is-homepage .fb-home-proof .fb-trust-mascot{margin-bottom:-27px!important}
}
@media(max-width:1000px){
  .is-homepage .fb-home-proof .fb-trust-content{grid-template-columns:minmax(0,1fr)!important}
  .is-homepage .fb-home-proof .fb-trust-seals{flex-wrap:wrap!important;border-left:0!important;padding-left:0!important}
}
@media(max-width:600px){
  .is-homepage .fb-home-proof.container{width:calc(100% - 16px)!important;max-width:calc(100% - 16px)!important;margin:0 8px!important;padding:8px 0!important}
  .is-homepage .fb-home-proof .fb-trust-block-modern{padding:13px 12px 10px!important}
  .is-homepage .fb-home-proof .fb-trust-content{gap:8px!important}
  .is-homepage .fb-home-proof .fb-trust-mascot{margin:-17px auto -12px!important}
  .is-homepage .fb-home-proof .fb-trust-seals{width:100%!important;gap:10px!important}
}

/* 2.9.28 — sticky category hint, navigation and bottom clearance in standalone selections. */
.fb-choice-page .fb-choice-nav{
  position:fixed;top:10px;left:8px;z-index:80;display:grid;place-items:center;
  width:43px;height:43px;padding:0;border:2px solid #fff;border-radius:50%;
  background:#d83778;color:#fff;font:700 29px/1 system-ui,sans-serif;
  box-shadow:0 4px 12px #29455840;cursor:pointer;
}
.fb-choice-page .fb-choice-nav:hover{background:#b52563;transform:translateY(-1px)}
.fb-choice-page .fb-choice-nav:focus-visible{outline:3px solid #193a59;outline-offset:3px}
.fb-choice-page.fb-choice-overview p.Stil3{
  position:sticky!important;top:8px;z-index:30;display:table!important;width:auto!important;
  max-width:calc(100% - 24px)!important;margin:10px auto 20px!important;
  padding:10px 21px!important;background:#fff!important;border:1px solid #f0c9dc!important;
  border-radius:999px!important;box-shadow:0 5px 18px #233c5520!important;
  color:#a83e6d!important;font:700 clamp(.85rem,1.4vw,1rem)/1.4 system-ui,sans-serif!important;
  letter-spacing:0!important;
}
.fb-choice-page .fb-choice-bottom-space{display:block;min-height:3.2rem;clear:both}
@media(max-width:767px){
  .fb-choice-page .fb-choice-nav{top:6px;left:5px;width:38px;height:38px;font-size:25px}
  .fb-choice-page.fb-choice-overview p.Stil3{top:5px;margin:8px auto 11px!important;padding:9px 12px!important}
  .fb-choice-page .fb-choice-bottom-space{min-height:4rem}
}
@media(prefers-reduced-motion:reduce){.fb-choice-page .fb-choice-nav:hover{transform:none}}

/* 2.9.29 – start page categories share the subcategory tile design. */
.fb-home-category-grid{width:calc(100% - 30px)!important;max-width:none!important;margin:28px 15px 32px!important;min-width:0}
.fb-home-category-grid .fb-story-tile:nth-child(n){grid-column:span 3}
@media(max-width:991px){.fb-home-category-grid .fb-story-tile:nth-child(n){grid-column:span 1}}
@media(max-width:575px){.fb-home-category-grid{width:calc(100% - 20px)!important;margin:22px 10px 27px!important}}

/* 2.9.30 – repeat four cards, then three; give phones one readable card per row. */
@media(min-width:992px){
  .fb-story-category .fb-story-tile:nth-child(n){grid-column:span 3}
  .fb-story-category .fb-story-tile:nth-child(7n+5),
  .fb-story-category .fb-story-tile:nth-child(7n+6),
  .fb-story-category .fb-story-tile:nth-child(7n+7){grid-column:span 4}
}
@media(max-width:767px){
  .fb-story-category .fb-story-list{grid-template-columns:minmax(0,1fr)!important}
  .fb-story-category .fb-story-tile:nth-child(n){grid-column:span 1;height:315px!important}
  .fb-story-category .fb-story-tile-name{max-width:calc(100% - 46px);padding-right:0;font-size:clamp(1.08rem,4.5vw,1.33rem);overflow-wrap:normal;word-break:normal}
  .fb-story-category .fb-story-image-wrap{top:63px!important;bottom:52px!important}
  .fb-story-category .fb-story-tile-action{bottom:8px;right:12px;padding:5px 12px}
  .fb-story-category .fb-story-hero-art{object-position:left center}
  .fb-story-category .fb-story-hero::before{background:linear-gradient(90deg,#ffffff18 0%,#ffffffb8 36%,#ffffffd1 62%,#ffffff26 100%)!important}
}

/* 2.9.31 – warm invitation after the reviews and shared handwritten headings. */
.is-homepage .fb-google-reviews-section h2,
.is-homepage .fb-google-reviews-section h3,
.is-homepage .fb-google-reviews-section .module-title{
  font-family:'FuersBaby Friendly',Georgia,serif!important;
  font-style:italic!important;font-weight:700!important;
  color:#1e3d57!important;letter-spacing:-.02em!important;
  line-height:1.2!important;
}
.is-homepage .fb-home-final-invitation{
  width:calc(100% - 32px);max-width:1150px;margin:24px auto 35px;
  padding:clamp(25px,4vw,46px) clamp(18px,4vw,50px);
  border:1px solid #efdce8;border-radius:26px;
  background:radial-gradient(circle at 8% 12%,#fff3f9 0,transparent 28%),
             radial-gradient(circle at 92% 88%,#eaf7ff 0,transparent 30%),
             linear-gradient(115deg,#fff9fc,#f3faff 60%,#fff7fa);
  box-shadow:0 10px 30px #253c5410;text-align:center;box-sizing:border-box;
}
.is-homepage .fb-home-final-inner{max-width:760px;margin:auto}
.is-homepage .fb-home-final-ornament{display:block;color:#e78dad;font-size:2rem;line-height:1}
.is-homepage .fb-home-final-invitation h2{
  margin:8px 0 12px;color:#1e3d57;
  font:italic 700 clamp(1.65rem,3.5vw,2.6rem)/1.18 'FuersBaby Friendly',Georgia,serif;
}
.is-homepage .fb-home-final-invitation p{max-width:620px;margin:0 auto 22px;color:#3b5368;font-size:clamp(.98rem,1.4vw,1.13rem);line-height:1.55}
.is-homepage .fb-home-final-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:11px}
.is-homepage .fb-home-final-actions a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 20px;border-radius:13px;font-weight:750;text-align:center;text-decoration:none!important;transition:transform .18s,box-shadow .18s}
.is-homepage .fb-home-final-actions a:hover{transform:translateY(-2px)}
.is-homepage .fb-home-final-actions a:focus-visible{outline:3px solid #193a59;outline-offset:3px}
.is-homepage .fb-home-final-primary{background:#df4b7f;color:#fff!important;box-shadow:0 6px 14px #c9527833}
.is-homepage .fb-home-final-secondary{border:1px solid #a8d7ef;background:#fff;color:#23648a!important}
.fb-master-footer .fb-footer-copyright{margin:28px auto 0;padding:17px 10px 2px;border-top:1px solid #e8e9ee;text-align:center;color:#51667a;font-size:.88rem}
@media(max-width:600px){
  .is-homepage .fb-home-final-invitation{width:calc(100% - 20px);margin:18px 10px 25px;padding:27px 17px}
  .is-homepage .fb-home-final-actions{flex-direction:column;align-items:stretch}
  .is-homepage .fb-home-final-actions a{width:100%}
}
@media(prefers-reduced-motion:reduce){.is-homepage .fb-home-final-actions a{transition:none}}

/* 2.9.32 – consent dialog styled like the shop; choices keep equal size. */
.ccm-modal--body{
  box-sizing:border-box!important;max-width:100%!important;
  padding:clamp(18px,3vw,30px)!important;
  border:1px solid #efd9e6!important;border-radius:22px!important;
  box-shadow:0 14px 38px #29445c1e!important;
  background:linear-gradient(125deg,#fffafd 0%,#fff 52%,#f2faff 100%)!important;
  color:#263f59!important;
  font-family:system-ui,-apple-system,'Segoe UI',sans-serif!important;
}
.ccm-modal--body .ccm-widget--text{color:#314b62!important}
.ccm-modal--body .ccm-widget--title{
  margin:0 0 15px!important;color:#1f415d!important;
  font-family:'FuersBaby Friendly',Georgia,serif!important;
  font-style:italic!important;font-weight:700!important;
  font-size:clamp(1.4rem,2.6vw,2rem)!important;line-height:1.28!important;
  letter-spacing:-.02em!important;
}
.ccm-modal--body .ccm-widget--introduction{
  font-size:clamp(.9rem,1.15vw,1rem)!important;
  line-height:1.6!important;color:#314b62!important;
}
.ccm-modal--body .ccm-widget--buttons{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;align-items:stretch!important;
  width:100%!important;margin:22px 0 0!important;padding:0!important;
}
.ccm-modal--body .ccm-widget--buttons > button{
  box-sizing:border-box!important;display:flex!important;align-items:center!important;
  justify-content:center!important;min-width:0!important;width:100%!important;
  min-height:49px!important;margin:0!important;padding:10px 12px!important;
  border:2px solid #e475a1!important;border-radius:14px!important;
  background:#fff!important;color:#934168!important;
  box-shadow:0 4px 12px #293d5712!important;
  font:700 clamp(.88rem,1.25vw,1rem)/1.28 system-ui,-apple-system,'Segoe UI',sans-serif!important;
  text-align:center!important;white-space:normal!important;cursor:pointer!important;
  transition:background .18s,box-shadow .18s,transform .18s!important;
}
.ccm-modal--body .ccm-widget--buttons > button.ccm--decline-cookies,
.ccm-modal--body .ccm-widget--buttons > button.ccm--save-settings{
  border-color:#db5385!important;background:#df5889!important;color:#fff!important;
}
.ccm-modal--body .ccm-widget--buttons > button:hover{
  box-shadow:0 8px 18px #293d5724!important;transform:translateY(-2px)!important;
}
.ccm-modal--body .ccm-widget--buttons > button:focus-visible{
  outline:3px solid #1e5b83!important;outline-offset:3px!important;
}
@media(max-width:640px){
  .ccm-modal--body{padding:19px 16px!important}
  .ccm-modal--body .ccm-widget--buttons{grid-template-columns:minmax(0,1fr)!important;gap:9px!important;margin-top:18px!important}
  .ccm-modal--body .ccm-widget--buttons > button{min-height:46px!important}
}
@media(prefers-reduced-motion:reduce){
  .ccm-modal--body .ccm-widget--buttons > button{transition:none!important}
}

/* 2.9.33 – illustrated invitation before the footer. */
.is-homepage .fb-home-final-invitation{
  position:relative;display:grid;grid-template-columns:minmax(190px,32%) minmax(0,1fr);
  align-items:center;gap:clamp(12px,2.5vw,35px);
  width:calc(100% - 32px);max-width:1500px;min-height:300px;
  padding:16px clamp(18px,3vw,42px) 16px 0;overflow:hidden;
}
.is-homepage .fb-home-final-picture{align-self:end;display:block;width:100%;max-width:100%;margin:0 0 -16px 0;pointer-events:none}
.is-homepage .fb-home-final-picture img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain;object-position:left bottom}
.is-homepage .fb-home-final-inner{position:relative;z-index:1;max-width:850px;min-width:0;margin:0 auto;text-align:center}
.is-homepage .fb-home-final-invitation::after{
  content:'♡  ♡';position:absolute;right:2.5%;top:13%;color:#ef96b6;
  font-size:clamp(1.5rem,2.8vw,2.5rem);letter-spacing:clamp(14px,5vw,80px);
  opacity:.75;pointer-events:none;
}
@media(max-width:767px){
  .is-homepage .fb-home-final-invitation{
    grid-template-columns:minmax(0,1fr);gap:0;min-height:0;
    width:calc(100% - 20px);margin:18px 10px 25px;padding:12px 18px 26px;
  }
  .is-homepage .fb-home-final-picture{width:min(76%,290px);margin:0 auto -6px}
  .is-homepage .fb-home-final-picture img{max-height:205px;object-position:center bottom}
  .is-homepage .fb-home-final-invitation::after{right:8px;top:18px;font-size:1.8rem;letter-spacing:14px}
  .is-homepage .fb-home-final-inner{width:100%}
}

/* 2.9.34 – CTA width includes padding and border; no horizontal page scroll. */
.is-homepage .fb-home-final-invitation,
.is-homepage .fb-home-final-invitation *{box-sizing:border-box}
.is-homepage .fb-home-final-actions,
.is-homepage .fb-home-final-inner{min-width:0;max-width:100%}
.is-homepage .fb-home-final-actions a{max-width:100%;min-width:0}
@media(max-width:767px){
  .is-homepage .fb-home-final-actions{width:100%;max-width:100%}
  .is-homepage .fb-home-final-actions a{
    display:flex!important;width:100%!important;max-width:100%!important;
    min-width:0!important;padding:10px 12px!important;
    white-space:normal!important;overflow-wrap:anywhere;
  }
}

/* 2.9.35 – Produktkacheln der Kategorieansicht */
.category-view .fb-products-modern-grid { row-gap: 22px !important; margin-top: 14px !important; margin-bottom: 24px !important; }
.category-view .fb-products-modern-grid > [class*="col-"] { min-width: 0; }
.category-view .fb-products-modern-grid .fb-product-premium-box {
  position: relative !important; overflow: hidden !important;
  align-items: stretch !important; padding: 18px !important;
  border: 1px solid #f0dce8 !important; border-radius: 22px !important;
  background: linear-gradient(155deg,#fff 55%,#fff8fc 100%) !important;
  box-shadow: 0 8px 22px rgba(30,57,77,.075) !important;
}
.category-view .fb-products-modern-grid .fb-product-premium-box:hover,
.category-view .fb-products-modern-grid .fb-product-premium-box:focus-within {
  border-color: #eaaac9 !important; box-shadow: 0 14px 32px rgba(30,57,77,.12) !important;
}
.category-view .fb-products-modern-grid .fb-product-premium-box::after {
  content: '♡'; position: absolute; top: 9px; right: 14px;
  color: #f38bb7; font: 28px/1 system-ui,sans-serif; pointer-events: none;
}
.category-view .fb-products-modern-grid .fb-product-main-block-link {
  color: #1d3e56 !important; text-align: left !important; text-decoration: none !important;
}
.category-view .fb-products-modern-grid .fb-product-title {
  min-height: 2.7em !important; margin: 0 22px 8px 0 !important;
  color: #173c59 !important; font-size: clamp(1rem,1.2vw,1.2rem) !important;
  line-height: 1.35 !important; font-weight: 750 !important;
  text-align: left !important; text-decoration: none !important;
}
.category-view .fb-products-modern-grid .fb-product-main-block-link:hover .fb-product-title { color: #b63672 !important; }
.category-view .fb-products-modern-grid .vm-product-rating-container {
  display: flex !important; flex-wrap: wrap; align-items: center; gap: 5px 10px;
  min-height: 30px; margin-bottom: 9px !important; text-align: left !important;
}
.category-view .fb-products-modern-grid .fb-product-stock-note {
  display: inline-block; max-width: 100%; padding: 3px 9px;
  border-radius: 20px; background: #edf7fd; color: #325a72;
  font-size: .76rem; line-height: 1.35; white-space: normal;
}
.category-view .fb-products-modern-grid .fb-product-stock-note .small { color: inherit !important; font-weight: 600; }
.category-view .fb-products-modern-grid .fb-product-img-wrap {
  height: 245px !important; min-height: 245px; max-height: none !important;
  margin: 5px 0 9px !important; padding: 12px !important;
  border-radius: 16px !important; background: #fff !important;
}
.category-view .fb-products-modern-grid .fb-product-img-wrap img {
  display: block; max-width: 100% !important; max-height: 100% !important;
  width: auto !important; height: auto !important; object-fit: contain !important;
}
.category-view .fb-products-modern-grid .fb-prod-short-desc {
  min-height: 2.8em; margin: 6px 0 12px !important;
  font-size: .87rem !important; line-height: 1.5 !important; color: #4e6171 !important;
}
.category-view .fb-products-modern-grid .fb-product-price-section {
  padding: 12px 0 0 !important; border-top: 1px solid #f0dce8 !important;
}
.category-view .fb-products-modern-grid .fb-cute-price-box {
  display: flex; flex-direction: column; align-items: stretch;
}
.category-view .fb-products-modern-grid .fb-price-prefix {
  color: #41647a !important; font-size: .8rem !important;
}
.category-view .fb-products-modern-grid .PricesalesPrice {
  color: #c63876 !important; font-size: 1.55rem !important; line-height: 1.2 !important;
}
.category-view .fb-products-modern-grid .fb-tax-shipping-hint {
  margin: 5px 0 14px !important; color: #697c8a !important;
}
.category-view .fb-products-modern-grid form.fb-category-product-form {
  display: block !important; width: 100%; background: none !important;
  border: 0 !important; box-shadow: none !important; padding: 0 !important;
}
.category-view .fb-products-modern-grid .addtocart-bar { width: 100%; margin: 0; padding: 0; }
.category-view .fb-products-modern-grid .fb-category-cart-btn {
  min-height: 44px; padding: 10px 14px !important;
  border-radius: 13px !important; background: #e54782 !important;
  background-image: none !important; box-shadow: 0 6px 14px rgba(229,71,130,.18) !important;
  font-size: .88rem !important; text-decoration: none !important; line-height: 1.35;
}
.category-view .fb-products-modern-grid .fb-category-cart-btn:hover,
.category-view .fb-products-modern-grid .fb-category-cart-btn:focus-visible {
  background: #ca316d !important; background-image: none !important;
}
.category-view .fb-products-modern-grid a:focus-visible,
.category-view .fb-products-modern-grid button:focus-visible {
  outline: 3px solid #63b2e2 !important; outline-offset: 3px;
}
@media(max-width:767px) {
  .category-view .fb-products-modern-grid > [class*="col-"] { flex: 0 0 100%; max-width: 100%; }
  .category-view .fb-products-modern-grid .fb-product-img-wrap { height: 220px !important; min-height: 220px; }
  .category-view .fb-products-modern-grid .fb-product-title { min-height: 0 !important; }
}

/* 2.9.36 – Produktkarten wie die rosa Kategoriekacheln; Lagerstatus an fester Stelle. */
.category-view .fb-products-modern-grid .fb-product-premium-box {
  background: linear-gradient(155deg,#fff 22%,#fff7fb 67%,#fff0f6 100%) !important;
  border: 1px solid #ebd4e4 !important;
}
.category-view .fb-products-modern-grid .fb-product-title {
  font-family: 'FuersBaby Friendly', Georgia, serif !important;
  font-style: italic !important;
  font-weight: 700 !important;
  font-size: clamp(1.15rem,1.45vw,1.42rem) !important;
  line-height: 1.2 !important;
  color: #173656 !important;
  text-align: left !important;
}
.category-view .fb-products-modern-grid .fb-product-img-wrap {
  background: transparent !important;
  border-radius: 18px !important;
}
.category-view .fb-products-modern-grid .fb-prod-short-desc {
  text-align: center !important;
  min-height: 2.8em;
  margin-bottom: 8px !important;
}
.category-view .fb-products-modern-grid .fb-product-stock-row {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 5px 8px !important;
  width: 100%;
  min-height: 30px;
  margin: 0 0 10px !important;
  text-align: center !important;
  color: #325a72 !important;
  font-size: .82rem !important;
}
.category-view .fb-products-modern-grid .fb-product-stock-row .fb-product-stock-note,
.category-view .fb-products-modern-grid .fb-product-stock-row :is(span,div):not(.vmicon) {
  line-height: 1.4;
}
.category-view .fb-products-modern-grid .fb-product-stock-row .fb-product-stock-note {
  display: inline-block;
  padding: 5px 11px;
  border-radius: 20px;
  background: #eaf6fd !important;
  color: #325a72 !important;
  font-weight: 650 !important;
}
.category-view .fb-products-modern-grid .fb-product-stock-row .fb-product-stock-low {
  background: #fff0f6 !important;
  color: #a52e67 !important;
}
.category-view .fb-products-modern-grid .fb-product-price-section {
  margin-top: auto !important;
  padding: 12px 0 0 !important;
  text-align: center !important;
}
.category-view .fb-products-modern-grid .fb-cute-price-box,
.category-view .fb-products-modern-grid .fb-price-wrapper {
  width: 100% !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}
.category-view .fb-products-modern-grid .fb-price-wrapper .product-price,
.category-view .fb-products-modern-grid .fb-price-wrapper .vm-display,
.category-view .fb-products-modern-grid .fb-price-wrapper .PricesalesPrice,
.category-view .fb-products-modern-grid .fb-price-wrapper .PricebasePrice,
.category-view .fb-products-modern-grid .fb-price-wrapper .PricepriceWithoutTax {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: center !important;
}
.category-view .fb-products-modern-grid .fb-price-wrapper .PricesalesPrice {
  font-size: 1.65rem !important;
  font-weight: 850 !important;
  color: #c63876 !important;
}
@media (max-width:767px) {
  .category-view .fb-products-modern-grid .fb-product-title { min-height: 0 !important; }
}

/* 2.9.37 – nur Produktkarten: alte Preisverschiebung der Detailseite neutralisieren. */
.category-view .fb-products-modern-grid .fb-product-premium-box .fb-product-title {
  box-sizing:border-box !important;
  width:calc(100% - 23px) !important;
  margin-left:0 !important;
  padding-left:12px !important;
  padding-right:4px !important;
}
.category-view .fb-products-modern-grid .fb-category-only-price,
.category-view .fb-products-modern-grid .fb-category-only-price .fb-cute-price-box,
.category-view .fb-products-modern-grid .fb-category-only-price .fb-price-wrapper,
.category-view .fb-products-modern-grid .fb-category-only-price .product-price {
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  float:none !important;
  transform:none !important;
  text-align:center !important;
}
.category-view .fb-products-modern-grid .fb-category-only-price .product-price {
  position:static !important;
  top:auto !important;
  clear:none !important;
}
.category-view .fb-products-modern-grid .fb-category-only-price .product-price .PricesalesPrice,
.category-view .fb-products-modern-grid .fb-category-only-price .product-price [class*="Price"] {
  transform:none !important;
  float:none !important;
  display:block !important;
  width:100% !important;
  margin:0 auto !important;
  text-align:center !important;
}
.category-view .fb-products-modern-grid .fb-category-only-price .product-price > a {
  transform:none !important;
}
/* Produktdetailseite: kurze Konfigurationen lassen die Beschreibung aufrücken. */
@media (min-width: 992px) {
  .productdetails-view .vm-product-container { align-items: flex-start !important; }
  .productdetails-view .vm-product-details-container {
    height: auto !important;
    min-height: 0 !important;
    align-self: flex-start !important;
  }
}
.productdetails-view .fb-desc-wrapper { margin-top: clamp(20px, 3vw, 36px) !important; }

/* Abschluss vor dem Footer: die Vorteile der Startseite ohne Teddy. */
.productdetails-view .fb-detail-proof {
  clear: both;
  box-sizing: border-box;
  max-width: 1100px;
  margin: 28px auto 42px;
  padding: clamp(20px, 3vw, 34px);
  border: 1px solid #f3d8e7;
  border-radius: 28px;
  background: linear-gradient(110deg, #fff1f7 0%, #fff 55%, #eaf7ff 100%);
  color: #193b57;
}
.productdetails-view .fb-detail-proof-heading { text-align: center; margin-bottom: 20px; }
.productdetails-view .fb-detail-proof-eyebrow { color: #a74974; font-size: .83rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.productdetails-view .fb-detail-proof h2 { margin: 6px 0 0; color: #193b57; font-family: 'FuersBaby Friendly', Georgia, serif; font-size: clamp(2rem, 3.2vw, 3rem); line-height: 1.15; font-style: italic; }
.productdetails-view .fb-detail-proof-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; list-style: none; padding: 0; margin: 0; }
.productdetails-view .fb-detail-proof-benefits li { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 12px 14px; border: 1px solid #f4e0ea; border-radius: 15px; background: rgba(255,255,255,.9); font-weight: 700; line-height: 1.4; }
.productdetails-view .fb-detail-proof-benefits li span { flex: none; }
@media (max-width: 767px) {
  .productdetails-view .fb-detail-proof { margin: 22px 12px 32px; padding: 18px 14px; }
  .productdetails-view .fb-detail-proof-benefits { grid-template-columns: 1fr; gap: 8px; }
}
/* Kategorie: VirtueMarts originales Warenkorbformular im Kachel-Design. */
.category-view .fb-products-modern-grid .fb-category-direct-cart,
.category-view .fb-products-modern-grid .fb-category-direct-cart form.product {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.category-view .fb-products-modern-grid .fb-category-direct-cart .addtocart-bar {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 8px !important;
}
.category-view .fb-products-modern-grid .fb-category-direct-cart .addtocart-button {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  border: 0 !important;
  border-radius: 13px !important;
  background: #e54782 !important;
  color: #fff !important;
  font: 800 .88rem/1.35 'Inter', system-ui, sans-serif !important;
  box-shadow: 0 6px 14px rgba(229,71,130,.18) !important;
  cursor: pointer !important;
}
.category-view .fb-products-modern-grid .fb-category-direct-cart .addtocart-button:hover,
.category-view .fb-products-modern-grid .fb-category-direct-cart .addtocart-button:focus-visible {
  background: #ca316d !important;
}
.category-view .fb-products-modern-grid .fb-category-direct-cart span.addtocart-button { flex: 1 1 100% !important; }
.category-view .fb-products-modern-grid .fb-category-direct-cart .quantity-box { margin: 0 auto 4px !important; }
/* Die Preiswolke liegt als eigenes Grid-Element rechts neben der Konfiguration. */
@media (min-width: 992px) {
  .productdetails-view .vm-product-details-container > .spacer-buy-area {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
  }
  .productdetails-view .vm-product-details-container > .product-price,
  .productdetails-view .vm-product-details-container > #productPrice2 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
    position: sticky !important;
    top: 90px !important;
    margin: 0 !important;
  }
}
.productdetails-view .product-description.fb-desc-wrapper {
  width: min(900px, calc(100% - 30px)) !important;
  margin: clamp(20px, 3vw, 36px) auto 40px !important;
  padding: clamp(24px, 4vw, 40px) !important;
  box-sizing: border-box !important;
  clear: both;
}
.productdetails-view .fb-desc-content.expanded { max-height: none !important; overflow: visible !important; }
.productdetails-view .fb-desc-content.expanded::after { display: none !important; }
/* Nur im products_1-Kachelformular: Menge 1 bleibt im Formular, wird aber nicht angezeigt. */
.category-view .fb-products-modern-grid .fb-category-direct-cart .quantity-box,
.category-view .fb-products-modern-grid .fb-category-direct-cart .quantity-controls,
.category-view .fb-products-modern-grid .fb-category-direct-cart .quantity-input,
.category-view .fb-products-modern-grid .fb-category-direct-cart .quantity-plus,
.category-view .fb-products-modern-grid .fb-category-direct-cart .quantity-minus {
  display: none !important;
}
.category-view .fb-products-modern-grid .fb-category-direct-cart .addtocart-bar {
  gap: 0 !important;
  padding: 0 !important;
}
.category-view .fb-products-modern-grid .fb-category-direct-cart span.addtocart-button {
  width: 100% !important;
  flex: 1 1 100% !important;
  margin: 0 !important;
}
/* Detailseite: Bild, Konfiguration und Preiswolke mit klaren eigenen Spalten. */
@media (min-width: 992px) {
  .productdetails-view .vm-product-container {
    width: 100% !important;
    max-width: 1100px !important;
    gap: 26px !important;
  }
  .productdetails-view .vm-product-media-container {
    flex: 0 0 44% !important;
    max-width: 44% !important;
    min-width: 0 !important;
  }
  .productdetails-view .vm-product-details-container {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0, 1fr) 240px !important;
    column-gap: 22px !important;
  }
  .productdetails-view .vm-product-details-container > .product-price,
  .productdetails-view .vm-product-details-container > #productPrice2 {
    box-sizing: border-box !important;
    width: 240px !important;
    max-width: 100% !important;
  }
  .productdetails-view .spacer-buy-area,
  .productdetails-view .spacer-buy-area .product-field-display,
  .productdetails-view .spacer-buy-area .addtocart-area,
  .productdetails-view .spacer-buy-area form.product,
  .productdetails-view .spacer-buy-area .addtocart-bar {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  .productdetails-view .spacer-buy-area .fb-cute-input,
  .productdetails-view .spacer-buy-area .fb-blue-select {
    box-sizing: border-box !important;
    max-width: 100% !important;
  }
  .productdetails-view .spacer-buy-area span.addtocart-button,
  .productdetails-view .spacer-buy-area input.addtocart-button {
    min-width: 0 !important;
  }
}
/* Beschreibung und Vorteils-Kasten erhalten dieselbe Außenkante. */
.productdetails-view .product-description.fb-desc-wrapper {
  width: 100% !important;
  max-width: 1100px !important;
  margin: clamp(20px, 3vw, 36px) auto 40px !important;
}
.productdetails-view .additional-images { gap: 22px !important; }
.productdetails-view .fb-unikat-items { gap: 18px !important; }
.productdetails-view .fb-unikat-item { box-sizing: border-box; }
@media (max-width: 767px) {
  .productdetails-view .product-description.fb-desc-wrapper {
    width: calc(100% - 24px) !important;
    margin: 22px 12px 30px !important;
  }
  .productdetails-view .additional-images { gap: 16px !important; }
.productdetails-view .fb-unikat-items { gap: 15px !important; }
}

/* Produktdetail: gut lesbarer Kategoriepfad und gleiche Außenkante für alle Infokästen. */
.productdetails-view .fb-breadcrumbs {
  width: min(1100px, calc(100% - 30px));
  box-sizing: border-box;
  font-size: 1rem !important;
  line-height: 1.55;
}
.productdetails-view .product-description.fb-desc-wrapper,
.productdetails-view .customer-reviews,
.productdetails-view .fb-detail-proof {
  box-sizing: border-box !important;
  width: min(1100px, calc(100% - 30px)) !important;
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Die komplette Wolke bleibt innerhalb ihrer eigenen Grid-Spalte. */
@media (min-width: 992px) {
  .productdetails-view .vm-product-details-container {
    grid-template-columns: minmax(0, 1fr) 240px !important;
    column-gap: 36px !important;
    align-items: start !important;
  }
  .productdetails-view .vm-product-details-container > .fb-price-column {
    grid-column: 2 !important;
    grid-row: 1 !important;
    position: sticky !important;
    top: 90px !important;
    align-self: start !important;
    width: 240px !important;
    min-width: 0 !important;
    height: 170px !important;
    box-sizing: border-box !important;
    z-index: 10;
  }
  .productdetails-view .vm-product-details-container > .spacer-buy-area {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
  }
  .productdetails-view .fb-price-column #productPrice2,
  .productdetails-view .fb-price-column .product-price {
    position: relative !important;
    top: auto !important;
    float: none !important;
    box-sizing: border-box !important;
    width: 240px !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .productdetails-view .vm-product-container { flex-direction: column !important; align-items: center !important; }
  .productdetails-view .vm-product-media-container { width: 100% !important; max-width: 650px !important; flex: none !important; }
  .productdetails-view .vm-product-details-container { width: 100% !important; max-width: 100% !important; flex: none !important; }
}
@media (max-width: 991px) {
  .productdetails-view .fb-price-column {
    display: flex;
    justify-content: center;
    width: 100%;
    position: sticky !important;
    top: 90px !important;
    z-index: 10;
    align-self: flex-start;
  }
  .productdetails-view .fb-price-column #productPrice2,
  .productdetails-view .fb-price-column .product-price {
    position: relative !important;
    top: auto !important;
    float: none !important;
    box-sizing: border-box !important;
  }
}
/* Auf schmalen Displays schließt die Preiswolke an die feste Suchleiste an. */
@media (max-width: 767px) {
  .productdetails-view .fb-price-column {
    top: 82px !important;
    margin-top: -30px !important;
    margin-bottom: 30px !important;
  }
}
/* Nur mobil rückt die Übersicht nach dem Warenkorb vor die Versandangaben. */
@media (max-width: 991px) {
  .productdetails-view .spacer-buy-area > .fb-unikat-box {
    position: relative !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px auto 18px !important;
  }
}
@media (max-width: 767px) {
  .productdetails-view .product-description.fb-desc-wrapper,
  .productdetails-view .customer-reviews,
  .productdetails-view .fb-detail-proof {
    width: calc(100% - 24px) !important;
    margin-left: 12px !important;
    margin-right: 12px !important;
  }
}

/* Die Konfiguration behält ihre Lesebreite; die Preiswolke sitzt eigenständig rechts daneben. */
@media (min-width: 992px) {
  .productdetails-view .vm-product-details-container {
    grid-template-columns: minmax(350px, 1fr) 240px !important;
    column-gap: 42px !important;
    overflow: visible !important;
  }
  .productdetails-view .vm-product-details-container > .spacer-buy-area {
    width: 100% !important;
    min-width: 350px !important;
    overflow: visible !important;
  }
}

/* In der eingebetteten Auswahl liegt das einzige X am linken Rand des Off-Canvas. */
body.fb-product-page #fbKonfiguratorOffcanvas > .fb-offcanvas-close {
  top: 13px !important;
  left: 14px !important;
  right: auto !important;
}
body.fb-product-page #fbKonfiguratorOffcanvas > .offcanvas-header {
  padding-left: 62px !important;
  padding-right: 62px !important;
  justify-content: center !important;
}
body.fb-product-page #fbKonfiguratorOffcanvas #fbKonfiguratorTitle {
  flex: 1 1 auto;
  min-width: 0;
  text-align: center !important;
}

/* Nur die Produktbild-Fancybox auf schmalen Displays: das Bild bleibt im weißen Rahmen. */
@media (max-width: 767px) {
  body.fb-product-page #fancybox-outer { width: 100% !important; box-sizing: border-box !important; }
  body.fb-product-page #fancybox-content {
    box-sizing: border-box !important;
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  body.fb-product-page #fancybox-img {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }
}

/* Feste Kaufspalte wie vor dem Wolken-Umbau; die Wolke darf rechts über die Infokästen hinausstehen. */
@media (min-width: 992px) {
  .productdetails-view .vm-product-container { gap: 64px !important; overflow: visible !important; }
  .productdetails-view .vm-product-details-container {
    flex: 0 0 674px !important;
    width: 674px !important;
    max-width: none !important;
    grid-template-columns: 390px 240px !important;
    column-gap: 44px !important;
  }
  .productdetails-view .vm-product-details-container > .spacer-buy-area {
    width: 390px !important;
    min-width: 390px !important;
    max-width: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1399px) {
  .productdetails-view .vm-product-container { flex-direction: column !important; align-items: center !important; }
  .productdetails-view .vm-product-media-container { flex: none !important; width: 100% !important; max-width: 650px !important; }
  .productdetails-view .vm-product-details-container { flex: none !important; }
}
/* Startseite: nur auf dem Handy acht Hauptkategorien, weitere auf Wunsch. */
.is-homepage .fb-home-categories-toggle { display: none; }
@media (max-width: 760px) {
  .is-homepage .fb-home-category-grid .fb-story-tile {
    order: var(--fb-mobile-rank, 99);
  }
  .is-homepage .fb-home-category-grid.fb-mobile-categories-ready:not(.fb-categories-expanded) .fb-home-category-extra {
    display: none !important;
  }
  .is-homepage .fb-home-categories-toggle {
    display: none;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    gap: .5em;
    width: calc(100% - 48px);
    max-width: 390px;
    min-height: 58px;
    margin: 12px auto 30px;
    padding: 12px 18px;
    border: 2px dashed #f5aac5;
    border-radius: 28px;
    background: linear-gradient(110deg, #fff0f5, #fce4ec);
    box-shadow: 0 6px 16px rgba(222, 75, 132, .12);
    color: #c02268;
    font: 800 1.05rem/1.35 system-ui, sans-serif;
    text-align: center;
    cursor: pointer;
  }
  .is-homepage .fb-home-categories-toggle::before {
    content: '♥';
    color: #e94b8e;
    font-size: 1.25em;
    line-height: 1;
  }
  .is-homepage .fb-home-category-grid.fb-mobile-categories-ready + .fb-home-categories-toggle {
    display: flex;
  }
  .is-homepage .fb-home-categories-toggle:hover,
  .is-homepage .fb-home-categories-toggle:focus-visible {
    border-color: #e875a5;
    color: #a71d5c;
  }
  .is-homepage .fb-home-hero-products {
    width: calc(100% - 20px);
    margin: 16px auto 28px;
  }
}

/* Zusatzangaben nur mobil etwas vom linken Rand lösen. */
.productdetails-view .fb-product-aftercart-meta { display: contents; }
@media (max-width: 767px) {
  .productdetails-view .fb-product-aftercart-meta {
    display: block;
    box-sizing: border-box;
    padding-inline: 18px;
  }
}

/* VirtueMart: verwandte Produkte auf der Detailseite als ruhige Geschenkkarten. */
.productdetails-view .product-related-products {
  box-sizing: border-box;
  width: min(1100px, calc(100% - 32px));
  margin: 36px auto;
  padding: 30px clamp(18px, 4vw, 44px);
  border: 1px solid #f5d7e6;
  border-radius: 26px;
  background: linear-gradient(115deg, #fff2f8, #f0f8ff);
  text-align: center;
}
.productdetails-view .product-related-products .product-fields-title-wrapper {
  display: block !important;
  margin: 0 0 24px;
  color: #173e5d;
  font-size: clamp(1.25rem, 2.4vw, 1.75rem);
  line-height: 1.3;
}
.productdetails-view .product-related-products .fb-title-element { display: none !important; }
.productdetails-view .product-related-products .product-field-display {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center !important;
  gap: 18px;
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
}
.productdetails-view .product-related-products .product-field,
.productdetails-view .product-related-products .product-container {
  min-width: 0;
}
.productdetails-view .product-related-products .product-container {
  box-sizing: border-box;
  width: min(220px, 100%);
  padding: 14px;
  border: 1px solid #f1d8e6;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(50, 71, 91, .07);
}
.productdetails-view .product-related-products .vm-product-media-container {
  position: static !important;
  display: block !important;
  box-sizing: border-box;
  flex: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  overflow: visible !important;
}
.productdetails-view .product-related-products .vm-product-media-container a {
  display: block;
  color: #143b5b;
  font-family: Georgia, serif;
  font-size: 1.05rem;
  font-style: italic;
  font-weight: 700;
  line-height: 1.35;
  text-decoration: none;
}
.productdetails-view .product-related-products .vm-product-media-container a:hover,
.productdetails-view .product-related-products .vm-product-media-container a:focus-visible { color: #b7286b; }
.productdetails-view .product-related-products .vm-product-media-container img {
  display: block;
  width: 100% !important;
  max-width: 170px !important;
  height: 170px !important;
  margin: 0 auto 12px !important;
  object-fit: contain;
}
.productdetails-view .product-related-products .vm-img-desc { display: none; }

/* Produktdetail mobil: Kaufabschluss kompakter und Wolke direkt an der Suchleiste. */
@media (max-width: 767px) {
  .productdetails-view .fb-price-column {
    margin-top: -65px !important;
    top: 42px !important;
  }
  .productdetails-view .spacer-buy-area .addtocart-area {
    margin-bottom: 8px !important;
  }
  .productdetails-view .fb-product-aftercart-meta > br:first-child {
    display: none;
  }
  .productdetails-view .product-description.fb-desc-wrapper {
    margin-top: 12px !important;
  }
}

/* Warenkorb ohne Artikel: bestehende VirtueMart-Funktionen bleiben unverändert. */
.fb-empty-cart {
  box-sizing: border-box;
  width: min(1280px, calc(100% - 40px));
  margin: 30px auto 55px;
  color: #173b59;
}
.fb-empty-cart-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(24px, 5vw, 72px);
}
.fb-empty-cart-art { min-width: 0; }
.fb-empty-cart-art picture, .fb-empty-cart-art img {
  display: block;
  width: 100%;
  height: auto;
}
.fb-empty-cart-message { min-width: 0; text-align: center; }
.fb-empty-cart-message h1 {
  box-sizing: border-box;
  max-width: 650px;
  margin: 0 auto 22px;
  padding: 30px 38px;
  border-radius: 48% 52% 45% 55% / 55% 45% 55% 45%;
  background: linear-gradient(135deg, #e9f6ff, #f6fbff 55%, #fff0f6);
  color: #163e5b;
  font-family: 'FuersBaby Friendly', Georgia, serif;
  font-size: clamp(2.1rem, 4vw, 3.5rem);
  font-weight: 700;
  line-height: 1.2;
  text-wrap: balance;
  font-style: italic;
}
.fb-empty-cart-intro {
  max-width: 560px;
  margin: 0 auto 26px;
  font-size: clamp(1rem, 1.5vw, 1.2rem);
  line-height: 1.65;
}
.fb-empty-cart-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.fb-empty-cart-primary, .fb-empty-cart-secondary a {
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: min(100%, 380px);
  min-height: 54px;
  padding: 12px 20px;
  border-radius: 999px;
  text-align: center;
  text-decoration: none !important;
  font-size: 1.05rem;
  font-weight: 750;
  line-height: 1.35;
}
.fb-empty-cart-primary {
  background: #e84085;
  border: 1px solid #e84085;
  box-shadow: 0 8px 16px rgba(232, 64, 133, .18);
  color: #fff !important;
}
.fb-empty-cart-primary:hover, .fb-empty-cart-primary:focus-visible {
  background: #c72a6d;
  color: #fff !important;
}
.fb-empty-cart-secondary { width: min(100%, 380px); }
.fb-empty-cart-secondary a {
  border: 1px solid #9bd3f5;
  background: #fff;
  color: #163e5b !important;
}
.fb-empty-cart-secondary a:hover, .fb-empty-cart-secondary a:focus-visible {
  background: #eff9ff;
}
.fb-empty-cart-benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  max-width: 1100px;
  margin: 40px auto 0;
  padding: 0;
  list-style: none;
}
.fb-empty-cart-benefits li {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  padding: 14px 18px;
  border: 1px solid #f2d9e8;
  border-radius: 18px;
  background: linear-gradient(115deg, #fff6fa, #f0f9ff);
  font-weight: 700;
  line-height: 1.4;
}
.fb-empty-cart-benefit-icon {
  display: grid;
  flex: 0 0 44px;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #e8f6ff;
  font-size: 1.35rem;
}
@media (max-width: 760px) {
  .fb-empty-cart { width: calc(100% - 28px); margin: 18px auto 34px; }
  .fb-empty-cart-hero { grid-template-columns: 1fr; gap: 6px; }
  .fb-empty-cart-art { width: min(100%, 470px); margin: 0 auto; }
  .fb-empty-cart-message h1 { padding: 22px 22px; font-size: clamp(1.9rem, 7vw, 2.6rem); }
  .fb-empty-cart-intro { margin-bottom: 22px; }
  .fb-empty-cart-benefits { grid-template-columns: 1fr; gap: 10px; margin-top: 30px; }
}

/* Geschenkefinder im leeren Warenkorb als eigenständiger Weg zur Produktauswahl. */
.fb-empty-cart-finder {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: min(100%, 380px);
  min-height: 50px;
  padding: 10px 20px;
  border: 2px dashed #f3a8c5;
  border-radius: 999px;
  background: #fff2f8;
  color: #ba2e6e !important;
  font-weight: 750;
  text-align: center;
  text-decoration: none !important;
}
.fb-empty-cart-finder:hover, .fb-empty-cart-finder:focus-visible {
  background: #ffe4f0;
  color: #9d205b !important;
}
/* Nur die Darstellung des befüllten Warenkorbs; Eingaben und Rechtstexte bleiben sichtbar. */
.vm-cart-header-container:has(+ .fb-cart-checkout),
.fb-cart-checkout { box-sizing: border-box; width: min(1160px, calc(100% - 32px)); margin-inline: auto; }
.fb-cart-checkout .vm-fieldset-pricelist,
.fb-cart-checkout .billto-shipto,
.fb-cart-checkout > fieldset {
  box-sizing: border-box;
  min-width: 0;
  margin: 0 0 20px;
  padding: clamp(15px, 2vw, 26px);
  border: 1px solid #e7dce7;
  border-radius: 20px;
  background: linear-gradient(115deg, #fff, #fff8fb);
  box-shadow: 0 7px 22px rgba(34, 63, 87, .06);
}
.fb-cart-checkout .vm-fieldset-pricelist { overflow-x: auto; }
.fb-cart-checkout .cart-summary {
  width: 100%;
  min-width: 520px;
  margin: 0 0 20px;
  border: 1px solid #e3edf4;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 13px;
  overflow: hidden;
  background: white;
}
.fb-cart-checkout .cart-summary th {
  padding: 12px;
  background: #edf7ff;
  color: #143b5b;
  text-align: left;
}
.fb-cart-checkout .cart-summary td {
  padding: 14px 12px;
  border-top: 1px solid #e7edf3;
  vertical-align: middle;
}
.fb-cart-checkout .fb-cart-products .vm-cart-item-name a { color: #a42765; font-weight: 700; }
.fb-cart-checkout .fb-cart-products .cart-images img {
  max-width: 90px;
  height: auto;
  border-radius: 12px;
}
.fb-cart-checkout .billto-shipto {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.fb-cart-checkout .billto-shipto > .width50 {
  box-sizing: border-box;
  flex: 1 1 290px;
  float: none;
  width: auto;
  min-width: 0;
  padding: 16px;
  border: 1px solid #e3edf4;
  border-radius: 14px;
  background: #f7fbff;
}
.fb-cart-checkout .vm-payment-shipment-select {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  border: 0;
  padding: 0;
}
.fb-cart-checkout .vm-payment-plugin-single,
.fb-cart-checkout .vm-shipment-plugin-single {
  box-sizing: border-box;
  flex: 1 1 180px;
  min-width: 0;
  padding: 12px;
  border: 1px solid #d9e9f5;
  border-radius: 14px;
  background: #f8fcff;
}
.fb-cart-checkout .fb-cart-final-summary {
  box-sizing: border-box;
  margin: 20px 0 12px;
  padding: 18px 22px;
  border: 1px solid #f2c8da;
  border-radius: 18px;
  background: #fff3f8;
  color: #173b59;
}
.fb-cart-checkout .fb-cart-final-items { margin: 0 0 12px; padding: 0; list-style: none; }
.fb-cart-checkout .fb-cart-final-items li { margin-bottom: 6px; }
.fb-cart-checkout .fb-cart-final-total {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  padding-top: 12px;
  border-top: 1px solid #eec5d7;
  color: #b72063;
  font-size: 1.15rem;
}
.fb-cart-checkout .checkout-button-top { display: flex; justify-content: flex-end; margin: 0 0 24px; }
.fb-cart-checkout .checkout-button-top button,
.fb-cart-checkout .checkout-button-top input[type="submit"],
.fb-cart-checkout .checkout-button-top a {
  box-sizing: border-box;
  max-width: 100%;
  padding: 14px 22px;
  border-radius: 999px;
  background: #e93f88;
  color: white;
  font-weight: 750;
  text-align: center;
}
@media (max-width: 767px) {
  .vm-cart-header-container:has(+ .fb-cart-checkout),
  .fb-cart-checkout { width: calc(100% - 20px); }
  .fb-cart-checkout .cart-summary { min-width: 460px; }
  .fb-cart-checkout .checkout-button-top > * { width: 100%; }
}
.fb-cart-checkout .fb-cart-final-item-details { margin: 4px 0 10px; color: #52687b; font-size: .9rem; }
.fb-cart-checkout .fb-cart-final-shipping { display: flex; justify-content: space-between; gap: 12px; margin: 4px 0 10px; }
@media (max-width: 767px) {
  .fb-cart-checkout .cart-summary { min-width: 0; font-size: .85rem; }
  .fb-cart-checkout .cart-summary th,
  .fb-cart-checkout .cart-summary td { padding: 9px 6px; overflow-wrap: anywhere; }
  .fb-cart-checkout .fb-cart-products .vm-cart-item-quantity { min-width: 84px; }
  .fb-cart-checkout .fb-cart-products .cart-images img { max-width: 64px; }
}
/* Warenkorb-Hinweis: Text bleibt im Override rein textuell; Links werden im Template gebaut. */
.fb-empty-cart-intro p { margin: 0 0 14px; }
.fb-empty-cart-intro p:first-child { color: #c42e69; font-weight: 700; }
.fb-empty-cart-intro .fb-empty-cart-contact {
  display: inline-block;
  color: #176aa2;
  font-size: .95rem;
  font-weight: 700;
  text-underline-offset: 3px;
}
.fb-empty-cart-intro .fb-empty-cart-contact:hover,
.fb-empty-cart-intro .fb-empty-cart-contact:focus-visible { color: #b62a6b; }

/* Der leere Warenkorb: drei illustrierte Vorteile und ein abschließender Shop-Link. */
.fb-empty-cart-benefits {
  gap: 0;
  max-width: 1080px;
  margin-top: 48px;
  border-block: 1px solid #e5dfe5;
}
.fb-empty-cart-benefits li {
  justify-content: center;
  gap: 16px;
  padding: 18px 24px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #173a56;
  font-size: clamp(1rem, 1.25vw, 1.2rem);
}
.fb-empty-cart-benefits li + li { border-left: 1px solid #e5dfe5; }
.fb-empty-cart-benefits picture { display: block; flex: 0 0 104px; width: 104px; }
.fb-empty-cart-benefits picture img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
@media (max-width: 760px) {
  .fb-empty-cart-benefits { gap: 0; margin-top: 30px; }
  .fb-empty-cart-benefits li { justify-content: flex-start; gap: 18px; padding: 9px 14px; }
  .fb-empty-cart-benefits li + li { border-left: 0; border-top: 1px solid #e5dfe5; }
  .fb-empty-cart-benefits picture { flex-basis: 88px; width: 88px; }
}

/* Befüllter Warenkorb: dieselben Farben, Flächen und Rundungen wie im leeren Warenkorb. */
.vm-cart-header-container:has(+ .fb-cart-checkout) {
  box-sizing: border-box;
  display: flow-root;
  margin-top: 22px;
  margin-bottom: 18px;
  padding: 18px clamp(16px, 3vw, 32px);
  border: 1px solid #f0d9e5;
  border-radius: 22px;
  background: linear-gradient(105deg, #fff1f7, #f0f9ff);
}
.vm-cart-header-container:has(+ .fb-cart-checkout) > br { display: none; }
.vm-cart-header-container:has(+ .fb-cart-checkout) .vm-cart-header { width: auto; float: none; }
.vm-cart-header-container:has(+ .fb-cart-checkout) .vm-cart-header h1 {
  float: none !important;
  margin: 0;
  color: #153d5e;
  font-family: Georgia, 'Times New Roman', serif;
  font-style: italic;
  font-size: clamp(1.7rem, 2.7vw, 2.5rem);
  line-height: 1.2;
}
.vm-cart-header-container:has(+ .fb-cart-checkout) .vm-continue-shopping { width: auto; float: right; margin: 3px 0 0 12px; }
.vm-cart-header-container:has(+ .fb-cart-checkout) .vm-continue-shopping a {
  display: inline-flex; align-items: center; min-height: 38px;
  padding: 7px 16px; border: 1px solid #d0e9f8; border-radius: 999px;
  background: #fff; color: #165780; font-size: .9rem; font-weight: 700;
  text-decoration: none; box-sizing: border-box;
}
.fb-cart-checkout .vm-fieldset-pricelist,
.fb-cart-checkout .billto-shipto,
.fb-cart-checkout > fieldset { border-color: #f0d9e5; background: linear-gradient(130deg,#fff 45%,#fff6fa); }
.fb-cart-checkout .cart-summary { border-color: #f3dfe9; box-shadow: 0 4px 14px rgba(25,65,95,.04); }
.fb-cart-checkout .cart-summary th { background: linear-gradient(110deg,#fff0f6,#ebf7ff); font-weight: 700; }
.fb-cart-checkout .fb-cart-products td { border-top-color: #f2e5ec; }
.fb-cart-checkout .fb-cart-products .cart-images { display: inline-block; vertical-align: top; margin: 0 16px 8px 0; }
.fb-cart-checkout .fb-cart-products .cart-images img { box-sizing: border-box; padding: 3px; border: 1px solid #f1d9e5; background: #fff; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-name { line-height: 1.55; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-name a { color: #143d5b; font-size: 1.04rem; text-decoration-color: #f5aaca; text-underline-offset: 3px; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-quantity .quantity-input {
  box-sizing: border-box; width: 56px; max-width: 100%; min-height: 40px;
  padding: 5px; border: 1px solid #9ed1f0; border-radius: 11px;
  background: #fff; color: #153d5e; text-align: center;
}
.fb-cart-checkout .fb-cart-products .vm-cart-item-total,
.fb-cart-checkout .fb-cart-totals tr:last-child strong { color: #c82e70; font-weight: 800; }
.fb-cart-checkout .cart-summary + br { display: none; }
.fb-cart-checkout .fb-cart-methods,
.fb-cart-checkout .fb-cart-totals { margin-top: 16px; }
.fb-cart-checkout .billto-shipto > .width50 { border-color: #e6dfe8; background: #f5faff; }
.fb-cart-checkout .fb-cart-final-summary { background: linear-gradient(110deg,#fff2f8,#eaf7ff); }
.fb-cart-checkout .checkout-button-top button,
.fb-cart-checkout .checkout-button-top input[type="submit"],
.fb-cart-checkout .checkout-button-top a {
  min-height: 52px; border: 1px solid #e93f88; box-shadow: 0 7px 17px rgba(232,64,133,.18);
  cursor: pointer;
}
@media (max-width: 767px) {
  .vm-cart-header-container:has(+ .fb-cart-checkout) { padding: 16px; margin-top: 12px; }
  .vm-cart-header-container:has(+ .fb-cart-checkout) .vm-continue-shopping { float: none; margin: 0 0 12px; }
  .fb-cart-checkout .vm-fieldset-pricelist { padding: 12px; }
  .fb-cart-checkout .cart-summary { width: 100%; }
  .fb-cart-checkout .fb-cart-products .cart-images { margin-right: 8px; }
  .fb-cart-checkout .fb-cart-products .vm-cart-item-name a { font-size: .96rem; }
  .fb-cart-checkout .fb-cart-products .vm-cart-item-quantity { min-width: 80px; }
}

/* Bestellweg: Übersicht rechts, alle checkout-relevanten Eingaben und Hinweise bleiben erhalten. */
.vm-cart-header-container:has(+ .fb-cart-checkout) .fb-cart-intro {
  clear: both; margin: 12px 0 0; color: #405c73; font-size: 1rem; line-height: 1.45;
}
.fb-cart-checkout .vm-fieldset-pricelist {
  display: grid;
  grid-template-columns: minmax(0, 1.75fr) minmax(290px, .85fr);
  gap: 14px 20px;
  align-items: start;
  overflow: visible;
  background: #fff;
}
.fb-cart-checkout .vm-fieldset-pricelist > br { display: none; }
.fb-cart-checkout .fb-cart-items-heading { grid-column: 1; grid-row: 1; margin: 0 0 3px; }
.fb-cart-checkout .fb-cart-products { grid-column: 1; grid-row: 2; margin: 0; }
.fb-cart-checkout .fb-cart-methods { grid-column: 1; grid-row: 3; margin: 0; }
.fb-cart-checkout .fb-cart-summary-panel { grid-column: 2; grid-row: 1 / span 3; min-width: 0; padding: 18px; border: 1px solid #f3d4e3; border-radius: 18px; background: linear-gradient(145deg,#fff8fb,#f3fbff); }
.fb-cart-checkout .fb-cart-tax-info { grid-column: 1 / -1; color: #52687b; font-size: .86rem; line-height: 1.5; }
.fb-cart-checkout .vm-fieldset-pricelist h2,
.fb-cart-checkout .fb-cart-address > h2,
.fb-cart-checkout .fb-cart-legal > h2 {
  color: #153d5e; font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(1.28rem, 1.65vw, 1.55rem); font-style: italic;
  font-weight: 700; line-height: 1.3;
}
.fb-cart-checkout .fb-cart-summary-panel h2 { margin: 0 0 14px; padding: 0 0 12px; border-bottom: 1px solid #f2d6e3; }
.fb-cart-checkout .fb-cart-totals { min-width: 0; margin: 0; table-layout: auto; background: transparent; border: 0; box-shadow: none; }
.fb-cart-checkout .fb-cart-totals td { border-color: #f3dfeb; padding: 12px 5px; overflow-wrap: anywhere; }
.fb-cart-checkout .fb-cart-totals td:first-child { text-align: left !important; }
.fb-cart-checkout .fb-cart-totals td:last-child { white-space: nowrap; }
.fb-cart-checkout .fb-cart-totals tr:last-child { background: #fff0f6; }
.fb-cart-checkout .fb-cart-methods h3,
.fb-cart-checkout .fb-cart-methods h4 { position: relative; min-height: 42px; margin: 4px 0 10px; padding: 9px 52px 6px 0; color: #153d5e; }
.fb-cart-checkout .fb-cart-shipment-title::after,
.fb-cart-checkout .fb-cart-payment-title::after {
  content: ''; position: absolute; right: 4px; top: 0; width: 44px; height: 44px;
  background: center / contain no-repeat;
}
.fb-cart-checkout .fb-cart-shipment-title::after { background-image: url('../../../images/stories/virtuemart/cart/cart-paper-plane.svg'); }
.fb-cart-checkout .fb-cart-payment-title::after { background-image: url('../../../images/stories/virtuemart/cart/cart-wallet.svg?v=2'); }
.fb-cart-checkout .fb-cart-methods > tbody > tr > td:first-child { background: #fff; }
.fb-cart-checkout .fb-cart-methods > tbody > tr + tr > td { border-top: 12px solid #fff; }
.fb-cart-checkout .fb-cart-methods .vm-payment-plugin-single,
.fb-cart-checkout .fb-cart-methods .vm-shipment-plugin-single { background: #f4faff; }
.fb-cart-checkout .fb-cart-address,
.fb-cart-checkout .fb-cart-legal { box-sizing: border-box; margin: 0 0 20px; padding: clamp(15px, 2vw, 26px); border: 1px solid #ecd9e5; border-radius: 20px; background: linear-gradient(120deg,#fff,#fff7fb); }
.fb-cart-checkout .fb-cart-address > h2,
.fb-cart-checkout .fb-cart-legal > h2 { margin: 0 0 16px; }
.fb-cart-checkout .fb-cart-address .billto-shipto { margin: 0; border: 0; padding: 0; background: transparent; box-shadow: none; }
.fb-cart-checkout .fb-cart-legal > fieldset { box-sizing: border-box; width: 100%; margin: 0 0 10px; padding: 12px 16px; border: 1px solid #e8ecf1; border-radius: 12px; background: #f7fbff; }
.fb-cart-checkout .fb-cart-legal > fieldset:last-child { margin-bottom: 0; }
.fb-cart-checkout .fb-cart-legal > fieldset[class*='phone'] { border: 2px solid #e67d9e; background: #fff7fa; }
.fb-cart-checkout .fb-cart-legal input:not([type='checkbox']):not([type='radio']),
.fb-cart-checkout .fb-cart-legal select { box-sizing: border-box; max-width: 100%; min-height: 38px; border: 1px solid #bfdcf0; border-radius: 9px; background: #fff; }
@media (max-width: 900px) {
  .fb-cart-checkout .vm-fieldset-pricelist { display: block; overflow-x: auto; }
  .fb-cart-checkout .fb-cart-items-heading { margin-bottom: 14px; }
  .fb-cart-checkout .fb-cart-products,
  .fb-cart-checkout .fb-cart-methods { margin-bottom: 16px; }
  .fb-cart-checkout .fb-cart-summary-panel { margin: 18px 0; }
}

/* Warenkorb v63: großzügige Karten statt schmaler Tabellenzellen. */
.vm-cart-header-container:has(+ .fb-cart-checkout),
.fb-cart-checkout { width: min(1480px, calc(100% - 40px)); }
.vm-cart-header-container:has(+ .fb-cart-checkout) {
  position: relative; min-height: 128px; padding: 28px clamp(22px, 3vw, 44px);
  background: linear-gradient(105deg, #f8fcff 5%, #fff 52%, #fff2f8);
}
.vm-cart-header-container:has(+ .fb-cart-checkout) .vm-cart-header h1 {
  font-family: 'FuersBaby Friendly', Georgia, serif; font-style: italic;
  font-size: clamp(2rem, 3.1vw, 2.9rem);
}
.vm-cart-header-container:has(+ .fb-cart-checkout) .vm-cart-header h1::after {
  content: ' ♥'; color: #f58fbb; font-size: .72em;
}
.fb-cart-checkout .vm-fieldset-pricelist {
  grid-template-columns: minmax(0, 2.2fr) minmax(330px, .9fr);
  column-gap: 22px; row-gap: 16px; padding: clamp(18px, 2vw, 28px);
  background: transparent;
}
.fb-cart-checkout .vm-fieldset-pricelist h2,
.fb-cart-checkout .fb-cart-address > h2,
.fb-cart-checkout .fb-cart-legal > h2 {
  font-family: 'FuersBaby Friendly', Georgia, serif; font-style: italic; font-weight: 700;
}
.fb-cart-checkout .fb-cart-items-heading { margin: 0; }
.fb-cart-checkout .fb-cart-products { border: 1px solid #d8ebf7; border-radius: 15px; }
.fb-cart-checkout .fb-cart-product-heading { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 12px; }
.fb-cart-checkout .fb-cart-product-heading .cart-images { flex: 0 0 auto; margin: 0; }
.fb-cart-checkout .fb-cart-product-heading .cart-images img { max-width: 96px; }
.fb-cart-checkout .fb-cart-product-title { align-self: center; }
.fb-cart-checkout .fb-cart-product-custom { margin-left: 110px; color: #435d73; }
.fb-cart-checkout .fb-cart-products td { vertical-align: middle; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-name { vertical-align: top; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-quantity { text-align: center; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-total { font-size: 1.25rem; white-space: nowrap; }
.fb-cart-checkout .fb-cart-methods {
  display: block; min-width: 0; width: 100%; overflow: visible;
  border: 0; border-radius: 0; background: transparent; box-shadow: none;
}
.fb-cart-checkout .fb-cart-methods tbody { display: block; }
.fb-cart-checkout .fb-cart-methods > tbody > tr {
  box-sizing: border-box; display: flex; gap: 14px; align-items: flex-start;
  width: 100%; margin: 0 0 15px; padding: 16px 18px;
  border: 1px solid #d8ebf7; border-radius: 17px;
  background: linear-gradient(120deg, #fff, #f8fcff);
}
.fb-cart-checkout .fb-cart-methods > tbody > tr > td,
.fb-cart-checkout .fb-cart-methods > tbody > tr + tr > td {
  box-sizing: border-box; display: block; width: auto !important; padding: 0;
  border: 0 !important; background: transparent !important;
}
.fb-cart-checkout .fb-cart-methods > tbody > tr > td:first-child { flex: 1 1 auto; min-width: 0; }
.fb-cart-checkout .fb-cart-methods > tbody > tr > td:last-child:not(:first-child) { flex: 0 0 auto; margin-top: 12px; }
.fb-cart-checkout .fb-cart-methods h3,
.fb-cart-checkout .fb-cart-methods h4 {
  box-sizing: border-box; min-height: 66px; margin: 0 0 5px;
  padding: 13px 76px 4px 0; font-family: 'FuersBaby Friendly', Georgia, serif;
  font-size: 1.2rem;
  font-style: italic;
}
.fb-cart-checkout .fb-cart-shipment-title::after,
.fb-cart-checkout .fb-cart-payment-title::after { width: 66px; height: 66px; }
.fb-cart-checkout .vm-shipment-plugin-single,
.fb-cart-checkout .vm-payment-plugin-single {
  min-height: 78px; border-radius: 13px; background: #f5faff;
}
.fb-cart-checkout .vm-fieldset-pricelist .vm-button-correct { border-radius: 9px; }
.fb-cart-checkout .fb-cart-summary-panel { grid-row: 1 / span 2; align-self: start; border-color: #f0d0e0; background: #fff8fb; }
.fb-cart-checkout .fb-cart-summary-panel h2 { padding-bottom: 14px; }
.fb-cart-checkout .fb-cart-totals,
.fb-cart-checkout .fb-cart-totals tbody { display: block; width: 100%; }
.fb-cart-checkout .fb-cart-totals tr {
  display: flex; justify-content: space-between; gap: 12px; align-items: center;
  width: 100%; padding: 10px 0; border-bottom: 1px solid #f2dfe9;
}
.fb-cart-checkout .fb-cart-totals tr:last-child { padding: 13px 10px; border: 0; border-radius: 12px; }
.fb-cart-checkout .fb-cart-totals td,
.fb-cart-checkout .fb-cart-totals td:first-child,
.fb-cart-checkout .fb-cart-totals td:last-child {
  box-sizing: border-box; display: block; width: auto !important; min-width: 0;
  padding: 0; border: 0; text-align: left !important;
}
.fb-cart-checkout .fb-cart-totals td:first-child { flex: 1 1 auto; }
.fb-cart-checkout .fb-cart-totals td:last-child { flex: 0 0 auto; text-align: right !important; }
.fb-cart-checkout .fb-cart-sidebar-art {
  grid-column: 2; grid-row: 3; align-self: start; text-align: center;
}
.fb-cart-checkout .fb-cart-sidebar-trust {
  padding: 14px; border: 1px solid #d7eaf6; border-radius: 15px;
  background: #f3fbff; color: #18496c; font-weight: 700;
}
.fb-cart-checkout .fb-cart-sidebar-trust span { color: #ec78a9; font-size: 1.4rem; vertical-align: middle; }
.fb-cart-checkout .fb-cart-sidebar-art picture img { display: block; width: min(100%, 280px); height: auto; margin: 12px auto 0; }
.fb-cart-checkout .fb-cart-sidebar-art > p {
  max-width: 290px; margin: 4px auto 0; color: #194265;
  font-family: 'FuersBaby Friendly', Georgia, serif; font-size: 1.18rem; line-height: 1.5;
}
.fb-cart-checkout .fb-cart-tax-info { margin-top: 5px; }
.fb-cart-checkout .fb-cart-address,
.fb-cart-checkout .fb-cart-legal { background: #fffafb; }
.fb-cart-checkout .fb-cart-legal > fieldset { margin-bottom: 8px; padding: 14px 16px; }
.fb-cart-checkout .checkout-button-top > * { min-width: min(100%, 320px); }
@media (max-width: 900px) {
  .vm-cart-header-container:has(+ .fb-cart-checkout), .fb-cart-checkout { width: calc(100% - 20px); }
  .vm-cart-header-container:has(+ .fb-cart-checkout) { min-height: 0; padding: 18px; }
  .fb-cart-checkout .vm-fieldset-pricelist { display: block; overflow-x: auto; }
  .fb-cart-checkout .fb-cart-methods > tbody > tr { display: block; }
  .fb-cart-checkout .fb-cart-methods > tbody > tr > td:last-child:not(:first-child) { margin-top: 10px; text-align: left !important; }
  .fb-cart-checkout .fb-cart-summary-panel { margin-top: 18px; }
  .fb-cart-checkout .fb-cart-sidebar-art { margin-bottom: 14px; }
}
@media (max-width: 600px) {
  .fb-cart-checkout .fb-cart-product-heading { gap: 8px; }
  .fb-cart-checkout .fb-cart-product-heading .cart-images img { max-width: 58px; }
  .fb-cart-checkout .fb-cart-product-custom { margin-left: 0; }
  .fb-cart-checkout .fb-cart-products .vm-cart-item-total { font-size: 1rem; }
}
@media (min-width: 901px) {
  body:has(.fb-cart-checkout) main.container { box-sizing: border-box; width: min(100% - 32px, 1540px); max-width: 1540px; }
}

/* Anmerkungen separat; zusammengehörige Hinweise und Felder bilden jeweils eine Karte. */
.fb-cart-checkout .fb-cart-notes {
  box-sizing: border-box;
  margin: 0 0 20px;
  padding: clamp(15px, 2vw, 26px);
  border: 1px solid #ecd9e5;
  border-radius: 20px;
  background: #fffafb;
}
.fb-cart-checkout .fb-cart-notes-field {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 14px 16px;
  border: 1px solid #e8ecf1;
  border-radius: 12px;
  background: #f7fbff;
}
.fb-cart-checkout .fb-cart-notes-field .cart > span { display: block; margin-bottom: 8px; }
.fb-cart-checkout .fb-cart-notes textarea { box-sizing: border-box; display: block; width: 100%; max-width: 100%; min-height: 85px; border: 1px solid #bedbed; border-radius: 9px; background: #fff; }
.fb-cart-checkout .fb-cart-legal > fieldset.fb-cart-merged-field { padding: 15px 16px; background: #f7fbff; }
.fb-cart-checkout .fb-cart-legal .fb-cart-merged-field > .cart:first-child { margin-bottom: 11px; line-height: 1.5; }
.fb-cart-checkout .fb-cart-legal .fb-cart-merged-field > .cart + .cart { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.fb-cart-checkout .fb-cart-legal .fb-cart-merged-field > .cart + .cart > span { flex: 0 0 auto; }
.fb-cart-checkout .fb-cart-legal > fieldset.fb-cart-phone-group { border: 1px solid #ee9bb7; background: #fff4f8; }
.fb-cart-checkout .fb-cart-legal .fb-cart-phone-group input:not([type='checkbox']):not([type='radio']),
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card select {
  border: 2px solid #e987a9;
  background: #fff0f6;
  color: #173b59;
  padding-inline: 10px;
}
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card select:focus,
.fb-cart-checkout .fb-cart-legal .fb-cart-phone-group input:focus {
  outline: 2px solid #a9d9f3;
  outline-offset: 2px;
}
@media (max-width: 767px) {
  .fb-cart-checkout .fb-cart-legal .fb-cart-merged-field > .cart + .cart { align-items: stretch; flex-direction: column; }
  .fb-cart-checkout .fb-cart-legal .fb-cart-legal-card select { width: 100%; }
}

/* Anmerkungen als Abschnittstitel; beim Telefon ist nur die Eingabe rosa. */
.fb-cart-checkout .fb-cart-notes > h2 {
  margin: 0 0 16px;
  color: #153d5e;
  font-family: 'FuersBaby Friendly', Georgia, serif;
  font-size: clamp(1.28rem, 1.65vw, 1.55rem);
  font-weight: 700;
  line-height: 1.3;
  font-style: italic;
}
.fb-cart-checkout .fb-cart-legal > fieldset.fb-cart-phone-group {
  border: 1px solid #e8ecf1;
  background: #f7fbff;
}
.fb-cart-checkout .fb-cart-legal .fb-cart-phone-group input:not([type='checkbox']):not([type='radio']) {
  background: #fff0f6;
  border: 2px solid #e987a9;
}

/* Warenkorb v66: Artikel und Übersicht auf einer Höhe, Versandhinweise am passenden Ort. */
@media (min-width: 901px) {
  .fb-cart-checkout .fb-cart-sidebar { grid-column: 2; grid-row: 2 / span 2; align-self: start; min-width: 0; }
}
.fb-cart-checkout .fb-cart-sidebar .fb-cart-summary-panel { min-width: 0; margin: 0; }
.fb-cart-checkout .fb-cart-sidebar .fb-cart-sidebar-art { margin-top: 15px; }
.fb-cart-checkout .fb-cart-product-heading .cart-images img { width: 116px; max-width: 116px; height: auto; }
.fb-cart-checkout .fb-cart-product-custom { margin-left: 130px; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-quantity { width: 90px; min-width: 90px; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-quantity .quantity-input { width: 42px !important; height: 34px !important; min-height: 34px; font-size: .91rem !important; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-total { font-size: 1.05rem; }
.fb-cart-checkout .fb-cart-products .vm-cart-item-total .PricesalesPrice,
.fb-cart-checkout .fb-cart-totals tr:first-child .PricesalesPrice { font-size: 1.05rem !important; transform: none; line-height: 1.2; margin: 0 !important; }
.fb-cart-checkout .fb-cart-totals tr:first-child td:last-child { color: #c82e70; font-size: 1.05rem; font-weight: 800; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total { align-items: center; padding: 13px 10px; border: 0; border-radius: 12px; background: #fff0f6; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total td:first-child,
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total td:first-child strong { color: #24384b; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total td:last-child,
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total td:last-child strong { color: #c82e70; font-size: 1.42rem; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total .PricebillTotal { color: #c82e70 !important; font-size: 1.42rem !important; transform: none; margin: 0 !important; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-shipping-progress { padding: 4px 0 12px; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-shipping-progress td { width: 100% !important; flex: 1 1 100%; text-align: center !important; white-space: normal; }
.fb-cart-checkout .fb-cart-free-shipping { padding: 11px 13px; border: 1px solid #d7eaf6; border-radius: 12px; background: #f1faff; color: #15537d; line-height: 1.45; }
.fb-cart-checkout .fb-cart-totals tr:not(.fb-cart-shipping-progress) { align-items: center; }
.fb-cart-checkout .fb-cart-totals tr:not(.fb-cart-shipping-progress) > td { align-self: center; }
.fb-cart-checkout .fb-cart-tax-info { margin: 8px 4px 0; color: #52687b; font-size: .82rem; line-height: 1.5; }
.fb-cart-checkout .fb-cart-shipment-note { max-width: 100%; margin: 12px 0 0; padding: 10px 14px; border: 1px solid #f0dce7; border-radius: 12px; background: #fffafb; color: #194265; font-family: inherit; font-size: .91rem; line-height: 1.45; text-align: left; }
@media (max-width: 900px) {
  .fb-cart-checkout .fb-cart-sidebar { margin: 18px 0; }
  .fb-cart-checkout .fb-cart-sidebar .fb-cart-summary-panel { margin: 0; }
  .fb-cart-checkout .fb-cart-product-heading .cart-images img { width: 72px; max-width: 72px; }
  .fb-cart-checkout .fb-cart-product-custom { margin-left: 0; }
}

/* Warenkorb v67: Preise bleiben in ihrer Zeile, der Gutscheincode erhält Platz. */
.fb-cart-checkout .fb-cart-totals { overflow: visible; }
.fb-cart-checkout .fb-cart-totals tr:not(.fb-cart-shipping-progress) { min-width: 0; align-items: center; }
.fb-cart-checkout .fb-cart-totals tr:not(.fb-cart-shipping-progress) > td { min-width: 0; align-self: center; line-height: 1.35; }
.fb-cart-checkout .fb-cart-totals tr:not(.fb-cart-shipping-progress) > td:first-child { padding-right: 6px; }
.fb-cart-checkout .fb-cart-totals tr:not(.fb-cart-shipping-progress) > td:last-child { flex-shrink: 0; white-space: nowrap; }
.fb-cart-checkout .fb-cart-totals .PricesalesPrice,
.fb-cart-checkout .fb-cart-totals .PricebillTotal,
.fb-cart-checkout .fb-cart-totals .PricesalesPriceShipment {
  display: inline-block !important; width: auto !important; max-width: none;
  margin: 0 !important; text-align: right !important; vertical-align: middle;
  line-height: 1.2 !important; white-space: nowrap; transform: none !important;
}
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total { gap: 6px; padding-inline: 9px; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total > td:first-child,
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total > td:first-child strong { font-size: .9rem; line-height: 1.2; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total > td:last-child,
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total > td:last-child strong,
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total .PricebillTotal { font-size: 1.23rem !important; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-shipping-total > td,
.fb-cart-checkout .fb-cart-totals tr.fb-cart-shipping-total > td * { line-height: 1.25 !important; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-shipping-total > td:last-child,
.fb-cart-checkout .fb-cart-totals tr.fb-cart-shipping-total > td:last-child :is(div,span),
.fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method > td:last-child:not(:first-child),
.fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method > td:last-child:not(:first-child) :is(div,span) {
  color: #c82e70; font-size: 1.05rem !important; font-weight: 800;
}
.fb-cart-checkout .fb-cart-totals tr.fb-cart-shipping-total br { display: none; }
.fb-cart-checkout .fb-cart-coupon-row > td:first-child { width: 100% !important; }
.fb-cart-checkout .fb-cart-coupon-row span.details-button { box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1fr) 106px; align-items: stretch; gap: 8px; width: 100%; max-width: 100%; }
.fb-cart-checkout .fb-cart-coupon-row input.coupon { box-sizing: border-box; display: block; width: 100% !important; min-width: 0; max-width: 100%; min-height: 40px; padding: 8px 11px; border: 1px solid #bdddf1; border-radius: 9px; background: #fff; }
.fb-cart-checkout .fb-cart-coupon-row input.details-button[type="submit"] { box-sizing: border-box; display: block; width: 106px !important; min-width: 0; max-width: 106px; min-height: 40px; margin: 0; padding: 8px 5px; border-radius: 9px; font-size: .84rem; white-space: nowrap; }
@media (max-width: 420px) {
  .fb-cart-checkout .fb-cart-coupon-row span.details-button { grid-template-columns: minmax(0, 1fr) 100px; gap: 6px; }
  .fb-cart-checkout .fb-cart-coupon-row input.details-button[type="submit"] { width: 100px !important; max-width: 100px; }
}

/* Warenkorb v69: einheitliche Text- und Betragskanten in der Bestellübersicht. */
.fb-cart-checkout .fb-cart-totals tr:not(.fb-cart-shipping-progress) > td:first-child { text-align: left !important; }
.fb-cart-checkout .fb-cart-totals tr:not(.fb-cart-shipping-progress) > td:last-child { text-align: right !important; }
.fb-cart-checkout .fb-cart-totals tr.fb-cart-grand-total { padding: 12px 0; }
.fb-cart-checkout .fb-cart-coupon-row > td:first-child { padding-right: 0 !important; }
.fb-cart-checkout .fb-cart-coupon-row span.details-button { margin: 0 !important; padding: 0 !important; }
.fb-cart-checkout .fb-cart-coupon-row input.coupon { margin: 0 !important; font-size: .97rem !important; }
.fb-cart-checkout .fb-cart-coupon-row input.coupon::placeholder { color: #557089; font-size: .93rem !important; opacity: 1; }
.fb-cart-checkout .fb-cart-coupon-row input.details-button[type="submit"] { margin: 0 !important; }

/* Warenkorb v70: Auswahlkarten als ganze Fläche bedienbar. */
.fb-cart-checkout .vm-shipment-plugin-single,
.fb-cart-checkout .vm-payment-plugin-single,
.fb-cart-checkout .fb-cart-address .billto-shipto > .width50 { cursor: pointer; transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease; }
.fb-cart-checkout .vm-shipment-plugin-single:hover,
.fb-cart-checkout .vm-payment-plugin-single:hover,
.fb-cart-checkout .fb-cart-address .billto-shipto > .width50:hover { border-color: #e998b9; box-shadow: 0 4px 14px rgba(194,64,112,.1); }
.fb-cart-checkout .vm-shipment-plugin-single:focus-visible,
.fb-cart-checkout .vm-payment-plugin-single:focus-visible,
.fb-cart-checkout .fb-cart-address .billto-shipto > .width50:focus-visible { outline: 2px solid #69b8e4; outline-offset: 2px; }
.fb-cart-checkout .vm-shipment-plugin-single:has(input[type="radio"]:checked),
.fb-cart-checkout .vm-payment-plugin-single:has(input[type="radio"]:checked) { border-color: #a5d9f2; background: #eff9ff; }
.fb-cart-checkout .fb-cart-methods button.vm-button-correct[name="updatecart"] {
  box-sizing: border-box; min-height: 40px; margin: 10px 0 0; padding: 8px 18px;
  border: 1px solid #eaa4bf !important; border-radius: 10px !important;
  background: linear-gradient(105deg,#fff2f8,#edf8ff) !important; color: #a42561 !important;
  font-size: .93rem; font-weight: 700; line-height: 1.2;
  box-shadow: 0 3px 10px rgba(174,72,112,.11); cursor: pointer;
}
.fb-cart-checkout .fb-cart-methods button.vm-button-correct[name="updatecart"]:hover,
.fb-cart-checkout .fb-cart-methods button.vm-button-correct[name="updatecart"]:focus-visible { border-color: #dc6d9d !important; background: #ffe8f2 !important; }

/* Warenkorb v71: Kontaktweg unter dem zentrierten Hinweis beim Teddy. */
.fb-cart-checkout .fb-cart-shipment-note { text-align: center; }
.fb-cart-checkout .fb-cart-sidebar-art .fb-cart-contact-link { margin: 15px auto 0; width: min(100%, 290px); }

/* Warenkorb v72: Eingaben unter ihren Hinweisen und kompakte Endsumme. */
.fb-cart-checkout .fb-cart-legal .fb-cart-merged-field > .cart + .cart,
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card .cart:has(select) {
  display: flex; flex-direction: column; align-items: flex-start; gap: 8px;
}
.fb-cart-checkout .fb-cart-legal .fb-cart-phone-group > .cart + .cart > span {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card select { margin: 0; max-width: 100%; }
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; margin: 0; padding: 8px 0; line-height: 1.4;
}
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line > span:first-child { min-width: 0; }
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line > span:last-child {
  flex: 0 0 auto; color: #c82e70; font-size: 1.05rem; font-weight: 800;
  text-align: right; white-space: nowrap;
}
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line > span:last-child :is(div,span),
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line .PricesalesPrice,
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line .PricesalesPriceShipment {
  display: inline-block !important; width: auto !important; margin: 0 !important;
  color: #c82e70 !important; font-size: 1.05rem !important;
  font-weight: 800; line-height: 1.2; transform: none !important;
}
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-total { align-items: center; margin-top: 4px; }
.fb-cart-checkout .fb-cart-final-tax-info { margin-top: 9px; color: #52687b; font-size: .82rem; line-height: 1.5; }
@media (max-width: 767px) {
  .fb-cart-checkout .fb-cart-legal .fb-cart-legal-card select { width: 100%; }
}

/* Warenkorb v73: Preisbeträge leichter; Einwilligungstexte ohne Leerzeile am Kartenanfang. */
.fb-cart-checkout :is(.fb-cart-products, .fb-cart-totals, .fb-cart-methods, .fb-cart-final-summary) :is([class^="Price"], [class*=" Price"], .vm-price-value),
.fb-cart-checkout :is(.fb-cart-products, .fb-cart-totals, .fb-cart-methods, .fb-cart-final-summary) :is([class^="Price"], [class*=" Price"], .vm-price-value) *,
.fb-cart-checkout .fb-cart-products .vm-cart-item-total,
.fb-cart-checkout .fb-cart-totals td:last-child,
.fb-cart-checkout .fb-cart-totals td:last-child strong,
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line > span:last-child,
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line > span:last-child *,
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-total > strong:last-child,
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-total > strong:last-child *,
.fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method > td:last-child:not(:first-child) :is(div,span) {
  font-weight: 400 !important;
}
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card:has(select) > .cart:first-child > :is(p,div):first-child {
  margin-top: 0;
}
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card:has(select) > .cart:first-child > br:first-child,
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card:has(select) > .cart:first-child > span.cart + br,
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card:has(select) > .cart:first-child > span.cart:empty {
  display: none;
}

/* Warenkorb v74: sanft betonte Preise und eine Preisübersicht im Abschnittsdesign. */
.fb-cart-checkout :is(.fb-cart-products, .fb-cart-totals, .fb-cart-methods, .fb-cart-final-summary) :is([class^="Price"], [class*=" Price"], .vm-price-value),
.fb-cart-checkout :is(.fb-cart-products, .fb-cart-totals, .fb-cart-methods, .fb-cart-final-summary) :is([class^="Price"], [class*=" Price"], .vm-price-value) *,
.fb-cart-checkout .fb-cart-products .vm-cart-item-total,
.fb-cart-checkout .fb-cart-totals td:last-child,
.fb-cart-checkout .fb-cart-totals td:last-child strong,
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line > span:last-child,
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-line > span:last-child *,
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-total > strong:last-child,
.fb-cart-checkout .fb-cart-final-summary .fb-cart-final-total > strong:last-child *,
.fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method > td:last-child:not(:first-child) :is(div,span) {
  font-weight: 600 !important;
}
.fb-cart-checkout .fb-cart-final-section {
  box-sizing: border-box; margin: 20px 0 12px; padding: clamp(15px, 2vw, 26px);
  border: 1px solid #ecd9e5; border-radius: 20px; background: #fffafb;
}
.fb-cart-checkout .fb-cart-final-section > h2 {
  margin: 0 0 16px; color: #153d5e;
  font-family: 'FuersBaby Friendly', Georgia, serif;
  font-size: clamp(1.28rem, 1.65vw, 1.55rem);
  font-style: italic; font-weight: 700; line-height: 1.3;
}
.fb-cart-checkout .fb-cart-final-section > .fb-cart-final-summary {
  margin: 0; padding: 14px 16px;
  border: 1px solid #d8eaf5; border-radius: 12px;
  background: #f1f9ff; box-shadow: none;
}
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card:not(.fb-cart-merged-field):has(select) > .cart:first-child > span.cart > br:first-child,
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card:not(.fb-cart-merged-field):has(select) > .cart:first-child > span.cart > p:first-child > br:first-child {
  display: none;
}
.fb-cart-checkout .fb-cart-legal .fb-cart-legal-card:not(.fb-cart-merged-field):has(select) > .cart:first-child > span.cart > p:first-child {
  margin-top: 0;
}

/* Warenkorb v76: Gewährleistungslabel unter dem Checkout mit großer Ansicht. */
.fb-cart-checkout .checkout-button-top { margin-bottom: 8px; }
.fb-cart-checkout .fb-cart-warranty {
  display: flex; justify-content: flex-end; margin: 0 0 24px;
}
.fb-cart-checkout .fb-cart-warranty-trigger {
  display: block; width: min(100%, 240px); padding: 6px;
  border: 1px solid #d8eaf5; border-radius: 12px; background: #fff;
  box-shadow: 0 4px 14px rgba(34,63,87,.08); line-height: 0;
}
.fb-cart-checkout .fb-cart-warranty-trigger:hover,
.fb-cart-checkout .fb-cart-warranty-trigger:focus-visible {
  border-color: #e987a9; outline: 2px solid #e987a9; outline-offset: 2px;
}
.fb-cart-checkout .fb-cart-warranty-trigger img {
  display: block; width: 100%; height: auto; border-radius: 7px;
}
.fb-cart-warranty-dialog {
  box-sizing: border-box; width: min(960px, calc(100vw - 24px));
  max-width: none; max-height: min(94dvh, 1400px); padding: 12px;
  border: 1px solid #d8eaf5; border-radius: 17px; background: #fff;
  box-shadow: 0 18px 65px rgba(19,48,74,.27); overflow: hidden;
}
.fb-cart-warranty-dialog::backdrop { background: rgba(25,45,65,.66); }
.fb-cart-warranty-full {
  max-height: calc(min(94dvh, 1400px) - 24px); overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.fb-cart-warranty-full img {
  display: block; width: 908px; max-width: none; height: auto; margin: 0 auto;
}
.fb-cart-warranty-close {
  position: absolute; z-index: 2; top: 18px; right: 18px;
  display: grid; place-items: center; width: 42px; height: 42px;
  border: 2px solid #fff; border-radius: 50%; background: #eb4b90;
  box-shadow: 0 2px 12px rgba(31,55,75,.25); color: #fff;
  font-size: 1.7rem; line-height: 1; cursor: pointer;
}
@media (max-width: 767px) {
  .fb-cart-checkout .fb-cart-warranty-trigger { width: min(100%, 230px); }
  .fb-cart-warranty-dialog { width: calc(100vw - 16px); padding: 8px; }
}

/* Warenkorb v77: mittige Seitenbreite und Label links unter dem Kassenbereich. */
.vm-cart-header-container:has(+ .fb-cart-checkout),
.fb-cart-checkout {
  box-sizing: border-box;
  width: min(1200px, calc(100% - 32px));
  margin-inline: auto;
}
.fb-cart-checkout .fb-cart-warranty { justify-content: flex-start; }
@media (max-width: 900px) {
  .vm-cart-header-container:has(+ .fb-cart-checkout),
  .fb-cart-checkout { width: calc(100% - 20px); }
}

/* Warenkorb v78: volle Inhaltsbreite ohne Sidebar, Label und Kassenbutton auf einer Höhe. */
@media (min-width: 901px) {
  body:has(.fb-cart-checkout) main.container { margin-inline: auto; }
  .vm-cart-header-container:has(+ .fb-cart-checkout),
  .fb-cart-checkout { width: min(1480px, calc(100% - 40px)); margin-inline: auto; }
}
.fb-cart-checkout .fb-cart-checkout-actions {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 24px; margin: 0 0 24px;
}
.fb-cart-checkout .fb-cart-checkout-actions .fb-cart-warranty,
.fb-cart-checkout .fb-cart-checkout-actions .checkout-button-top { margin: 0; }
.fb-cart-checkout .fb-cart-checkout-actions .fb-cart-warranty { flex: 0 0 auto; }
.fb-cart-checkout .fb-cart-checkout-actions .checkout-button-top { flex: 0 1 320px; }
@media (max-width: 767px) {
  .fb-cart-checkout .fb-cart-checkout-actions { flex-direction: column; gap: 16px; }
  .fb-cart-checkout .fb-cart-checkout-actions .fb-cart-warranty,
  .fb-cart-checkout .fb-cart-checkout-actions .checkout-button-top { width: 100%; flex: none; }
}

/* Warenkorb v79: mobile Reihenfolge und zweispaltige Artikelansicht. */
.fb-cart-checkout .fb-cart-mobile-free-shipping { display: none; }
@media (max-width: 767px) {
  .vm-cart-header-container:has(+ .fb-cart-checkout) .vm-continue-shopping { display: none !important; }
  .fb-cart-checkout { display: flex; flex-direction: column; min-width: 0; }
  .fb-cart-checkout .vm-fieldset-pricelist,
  .fb-cart-checkout .fb-cart-sidebar,
  .fb-cart-checkout .fb-cart-checkout-actions { display: contents; }
  .fb-cart-checkout .vm-fieldset-pricelist > br { display: none; }
  .fb-cart-checkout .fb-cart-items-heading { order: 1; margin: 0 0 10px; }
  .fb-cart-checkout .fb-cart-products { order: 2; margin: 0 0 16px; }
  .fb-cart-checkout .fb-cart-mobile-free-shipping {
    display: block; order: 3; box-sizing: border-box; margin: 0 0 16px;
    text-align: center;
  }
  .fb-cart-checkout .fb-cart-methods { order: 4; margin: 0 0 18px; }
  .fb-cart-checkout .fb-cart-address { order: 5; }
  .fb-cart-checkout .fb-cart-notes { order: 6; }
  .fb-cart-checkout .fb-cart-legal { order: 7; }
  .fb-cart-checkout #checkout-advertise-box { order: 7; }
  .fb-cart-checkout .fb-cart-summary-panel { order: 8; margin: 0 0 18px !important; }
  .fb-cart-checkout .fb-cart-totals tr.fb-cart-shipping-progress { display: none; }
  .fb-cart-checkout .fb-cart-final-section { display: none; }
  .fb-cart-checkout .fb-cart-warranty { order: 9; margin: 0 0 16px !important; }
  .fb-cart-checkout .fb-cart-checkout-actions .checkout-button-top {
    order: 10; width: 100%; flex: none; margin: 0 0 18px !important;
  }
  .fb-cart-checkout .fb-cart-sidebar-art { order: 11; margin: 0 auto 24px !important; }

  .fb-cart-checkout table.fb-cart-products,
  .fb-cart-checkout table.fb-cart-products tbody {
    box-sizing: border-box; display: block; width: 100%; min-width: 0;
  }
  .fb-cart-checkout .fb-cart-products tr {
    box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1fr) 112px;
    grid-template-rows: auto auto 1fr; width: 100%; min-width: 0;
  }
  .fb-cart-checkout .fb-cart-products tr > :is(th,td) {
    box-sizing: border-box; display: block; width: auto !important; min-width: 0 !important;
    border-left: 0; border-right: 0; overflow-wrap: normal; word-break: normal;
  }
  .fb-cart-checkout .fb-cart-products tr > .vm-cart-item-name { grid-column: 1; grid-row: 1 / span 3; }
  .fb-cart-checkout .fb-cart-products tr > .vm-cart-item-total { grid-column: 2; grid-row: 1; align-self: start; }
  .fb-cart-checkout .fb-cart-products tr > .vm-cart-item-quantity { grid-column: 2; grid-row: 2; align-self: start; }
  .fb-cart-checkout .fb-cart-products th.vm-cart-item-quantity { display: none; }
  .fb-cart-checkout .fb-cart-products td.vm-cart-item-quantity {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end;
    gap: 3px; padding-top: 14px;
  }
  .fb-cart-checkout .fb-cart-products td.vm-cart-item-quantity .quantity-input { flex: 0 0 42px; margin: 0; }
  .fb-cart-checkout .fb-cart-products td.vm-cart-item-total {
    padding-top: 12px; text-align: right !important; white-space: nowrap;
  }
  .fb-cart-checkout .fb-cart-products .fb-cart-product-heading {
    display: flex; flex-direction: column; align-items: flex-start; gap: 8px;
  }
  .fb-cart-checkout .fb-cart-products .fb-cart-product-title { align-self: flex-start; }
  .fb-cart-checkout .fb-cart-products .fb-cart-product-title a,
  .fb-cart-checkout .fb-cart-products .fb-cart-product-custom {
    overflow-wrap: break-word; word-break: normal; hyphens: auto;
  }
  .fb-cart-checkout .fb-cart-products .fb-cart-product-custom { margin: 12px 0 0; }
  .fb-cart-checkout .fb-cart-products .cart-images { margin: 0; }
  .fb-cart-checkout .fb-cart-products .cart-images img { width: 80px; max-width: 80px; }
  .fb-cart-checkout .fb-cart-methods > tbody > tr { padding: 14px 12px; }
  .fb-cart-checkout .fb-cart-methods h3,
  .fb-cart-checkout .fb-cart-methods h4 {
    min-height: 0; padding: 4px 36px 4px 0;
    font-size: clamp(.96rem, 4.2vw, 1.12rem); letter-spacing: -.02em;
  }
  .fb-cart-checkout .fb-cart-shipment-title::after,
  .fb-cart-checkout .fb-cart-payment-title::after { width: 34px; height: 34px; }
  .fb-cart-checkout .fb-cart-methods .vm-shipment-plugin-single,
  .fb-cart-checkout .fb-cart-methods .vm-payment-plugin-single { overflow-wrap: normal; word-break: normal; }
}

/* Warenkorb v80: Tabellenkopf, mobile Abfolge und gut erreichbare Bedienelemente. */
.fb-cart-checkout .fb-cart-products th.vm-cart-item-name,
.fb-cart-checkout .fb-cart-products th.vm-cart-item-total {
  color: #143b5b !important; font-family: inherit !important;
  font-size: 1rem !important; font-weight: 700 !important; line-height: 1.3;
}
.fb-cart-checkout .fb-cart-mobile-trust,
.fb-cart-checkout .fb-cart-warranty-mobile,
.fb-cart-checkout .fb-cart-pickup-label { display: none; }
@media (max-width: 767px) {
  .fb-cart-checkout .fb-cart-mobile-trust {
    display: block; order: 3; margin: 0 0 16px; padding: 12px 16px;
    border: 1px solid #f3d8e6; border-radius: 16px;
    background: #fff4f9; color: #153d5e; text-align: center; font-weight: 700;
  }
  .fb-cart-checkout .fb-cart-sidebar-art .fb-cart-sidebar-trust { display: none; }
  .fb-cart-checkout .fb-cart-mobile-free-shipping { order: 8; margin: 2px 0 14px; }
  .fb-cart-checkout .fb-cart-summary-panel { order: 9; }
  .fb-cart-checkout .fb-cart-warranty { order: 10; width: 100%; }
  .fb-cart-checkout .fb-cart-checkout-actions .checkout-button-top { order: 11; }
  .fb-cart-checkout .fb-cart-sidebar-art { order: 12; }
  .fb-cart-checkout .fb-cart-products tr { grid-template-columns: minmax(0, 1fr) 92px; }
  .fb-cart-checkout .fb-cart-products td.vm-cart-item-quantity {
    flex-direction: column; flex-wrap: nowrap; justify-content: flex-start;
    align-items: center; gap: 9px; padding: 12px 12px 14px 0;
  }
  .fb-cart-checkout .fb-cart-products td.vm-cart-item-quantity :is(input,button) {
    float: none !important; margin: 0 !important;
  }
  .fb-cart-checkout .fb-cart-products td.vm-cart-item-quantity button {
    min-width: 30px; min-height: 30px; cursor: pointer;
  }
  .fb-cart-checkout .fb-cart-products td.vm-cart-item-total { padding-right: 10px; }
  .fb-cart-checkout .fb-cart-methods h3:not(.fb-cart-shipment-title):not(.fb-cart-payment-title),
  .fb-cart-checkout .fb-cart-methods h4:not(.fb-cart-shipment-title):not(.fb-cart-payment-title) {
    padding-right: 0; font-size: .95rem !important; letter-spacing: -.03em;
  }
  .fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method { position: relative; padding-bottom: 17px; }
  .fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method > td:last-child:not(:first-child) {
    position: absolute; right: 16px; bottom: 22px; margin: 0 !important;
    width: auto !important; text-align: right !important; white-space: nowrap;
  }
  .fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method .fb-cart-shipment-amount:has(.fb-cart-pickup-label) .fb-cart-shipment-price { display: none; }
  .fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method .fb-cart-pickup-label {
    display: inline; color: #153d5e; font-weight: 600;
  }
  .fb-cart-checkout .fb-cart-warranty-trigger,
  .fb-cart-checkout .fb-cart-warranty-dialog { display: none !important; }
  .fb-cart-checkout .fb-cart-warranty-mobile { display: block; width: 100%; }
  .fb-cart-checkout .fb-cart-warranty-mobile img { display: block; width: 100%; height: auto; }
}

/* Warenkorb v86: Adresslinks und Gutscheinbutton mit derselben Schriftfarbe. */
.fb-cart-checkout .fb-cart-address .billto-shipto a.details,
.fb-cart-checkout .fb-cart-address .billto-shipto a.details:visited,
.fb-cart-checkout .fb-cart-coupon-row input.details-button[type="submit"] {
  color: #155b89 !important;
}

/* Rechnungsadresse im Checkout: bewusst nur auf der VirtueMart-Adressansicht. */
body.is-addresspage { background: #fcfbfd; }
.is-addresspage #main-content-anchor { scroll-margin-top: 110px; }
.is-addresspage main[role="main"] { max-width: 1120px; margin: 26px auto 65px !important; padding-inline: clamp(16px, 3vw, 42px); }
.is-addresspage main[role="main"] > .row { margin-inline: 0; }
.is-addresspage main[role="main"] > .row > .col-12 { min-width: 0; padding-inline: 0; }
.is-addresspage .fb-address-intro { display: grid; grid-template-columns: minmax(0,1fr) minmax(210px,370px); align-items: center; gap: 18px; background: linear-gradient(108deg,#fff1f7,#f0f9ff); border: 1px solid #f1d7e5; border-radius: 25px; padding: 14px 24px 8px 35px; margin: 0 0 24px; overflow: hidden; }
.is-addresspage .fb-address-eyebrow { display: block; color: #c72970; font-weight: 800; font-size: clamp(1.2rem, 2vw, 1.7rem); line-height: 1.25; }
.is-addresspage .fb-address-intro p { margin: 10px 0 0; color: #2c4359; font-size: 1rem; line-height: 1.6; max-width: 44ch; }
.is-addresspage .fb-address-intro img { width: 100%; height: auto; max-height: 180px; object-fit: contain; object-position: right center; }
.is-addresspage h1.kontodaten { color: #263e56; font-size: clamp(1.55rem, 3vw, 2rem); font-weight: 750; margin: 6px 0 18px; }
.is-addresspage #com-form-login, .is-addresspage #userForm { width: 100%; max-width: none; margin: 0 0 20px; box-sizing: border-box; }
.is-addresspage #com-form-login { background: #f0f8ff; border: 1px solid #d5eafa; border-radius: 20px; padding: 20px 24px; }
.is-addresspage #com-form-login fieldset { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)) auto; align-items: end; gap: 12px 18px; padding: 0; margin: 0; border: 0; }
.is-addresspage #com-form-login fieldset > p { grid-column: 1/-1; color: #254461; font-weight: 750; font-size: 1.07rem; margin: 0; }
.is-addresspage #com-form-login .width30 { width: auto; float: none; min-width: 0; }
.is-addresspage #com-form-login #com-form-login-remember { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.is-addresspage #com-form-login #com-form-login-remember br { display: none; }
.is-addresspage #com-form-login .clr { display: none; }
.is-addresspage #com-form-login input:not([type="hidden"]):not([type="checkbox"]):not([type="submit"]) { box-sizing: border-box; width: 100%; min-height: 44px; padding: 9px 12px; background: #fff; border: 1px solid #a9d7ef; border-radius: 12px; }
.is-addresspage #com-form-login input[type="submit"] { border: 0; border-radius: 12px; background: #5dade2; color: #fff; font-weight: 750; padding: 11px 20px; cursor: pointer; }
.is-addresspage #userForm { background: linear-gradient(135deg,#fff 58%,#fff7fb); border: 1px solid #f0d7e4; border-radius: 24px; box-shadow: 0 10px 25px rgba(29,51,76,.06); padding: clamp(18px,3vw,36px); }
.is-addresspage #userForm fieldset { border: 0; padding: 0; margin: 0 0 26px; min-width: 0; }
.is-addresspage #userForm h2, .is-addresspage #userForm legend.userfields_info { display: block; width: 100%; color: #273f57; font-size: clamp(1.17rem,2vw,1.45rem); font-weight: 800; line-height: 1.35; padding: 0 0 12px; margin: 0 0 18px; border-bottom: 1px solid #f1dbe7; }
.is-addresspage #userForm table.adminForm.user-details, .is-addresspage #userForm table.adminForm.user-details tbody { display: block; width: 100%; border: 0; }
.is-addresspage #userForm table.adminForm.user-details tr { display: grid; grid-template-columns: minmax(170px, 31%) minmax(0, 1fr); align-items: center; gap: 12px 18px; margin: 0 0 12px; }
.is-addresspage #userForm table.adminForm.user-details td { display: block; padding: 0; min-width: 0; border: 0; background: transparent; }
.is-addresspage #userForm table.adminForm.user-details label { color: #2a4057; font-weight: 650; margin: 0; }
.is-addresspage #userForm .asterisk { color: #ce3474; }
.is-addresspage #userForm :is(input.form-control, select.form-select, textarea) { display: block; box-sizing: border-box; width: 100% !important; max-width: 600px; min-height: 46px; margin: 0; padding: 10px 14px; background: #fff; border: 1px solid #c9ddea; border-radius: 12px; color: #243e56; box-shadow: none; }
.is-addresspage #userForm :is(input.form-control, select.form-select, textarea):focus { border-color: #e6679f; outline: 3px solid #fbe2ee; }
.is-addresspage #userForm #recaptcha_wrapper { background: #f2f9fe; border: 1px solid #d9ebf7; padding: 14px 18px; border-radius: 15px; }
.is-addresspage #userForm #recaptcha_wrapper .userfields_info { border: 0; margin: 0 0 7px; padding: 0; font-size: .95rem; }
.is-addresspage #userForm .reg_text { color: #42556b; margin: 0 0 16px; line-height: 1.55; }
.is-addresspage #userForm .control-buttons { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.is-addresspage #userForm .control-buttons .reg_text { width: 100%; }
.is-addresspage #userForm .control-buttons button { min-height: 44px; border: 1px solid #ea8ab6; border-radius: 13px; padding: 10px 19px; background: #fff; color: #be2b6b; font-weight: 750; cursor: pointer; }
.is-addresspage #userForm .control-buttons button[name="save"] { background: #e54287; border-color: #e54287; color: #fff; }
.is-addresspage #userForm .control-buttons button:hover, .is-addresspage #com-form-login input[type="submit"]:hover { filter: brightness(.96); }
@media (max-width: 720px) {
  .is-addresspage .fb-address-intro { grid-template-columns: 1fr 130px; padding: 17px; }
  .is-addresspage .fb-address-intro img { max-height: 130px; }
  .is-addresspage #com-form-login fieldset { grid-template-columns: 1fr; }
  .is-addresspage #userForm table.adminForm.user-details tr { grid-template-columns: 1fr; gap: 5px; margin-bottom: 17px; }
  .is-addresspage #userForm .control-buttons button { width: 100%; }
}
@media (max-width: 430px) {
  .is-addresspage .fb-address-intro { grid-template-columns: 1fr; text-align: center; }
  .is-addresspage .fb-address-intro p { margin-inline: auto; }
  .is-addresspage .fb-address-intro img { max-height: 120px; object-position: center; }
}
@media (max-width: 760px) {
  .is-homepage .fb-home-categories-toggle {
    background: linear-gradient(110deg, #eaf7ff, #d4ecfc);
    border-color: #76b9e3;
    color: #174c70;
    box-shadow: 0 6px 16px rgba(65, 143, 194, .16);
  }

  .is-homepage .fb-home-categories-toggle::before {
    color: #3286bb;
  }

  .is-homepage .fb-home-categories-toggle:hover,
  .is-homepage .fb-home-categories-toggle:focus-visible {
    background: linear-gradient(110deg, #def2ff, #c6e5f9);
    border-color: #3286bb;
    color: #123d5b;
  }
}
/* Nur Benutzerkonto und Bestellungen. */
.is-accountpage main.container {
  box-sizing: border-box;
  width: calc(100% - 36px);
  max-width: 1100px;
  margin: 32px auto 48px !important;
  padding: 0;
}
.is-accountpage main .col-12 { min-width: 0; }
.is-accountpage main h1 { margin: 24px 0; color: #174563; line-height: 1.3; }
.is-accountpage .fb-account-profile, .is-accountpage .vm-orders-list {
  padding: clamp(18px, 3vw, 32px);
  background: linear-gradient(130deg, #fff8fb, #f2faff);
  border: 1px solid #efd8e6;
  border-radius: 24px;
  box-shadow: 0 8px 26px rgba(39, 67, 85, .06);
}
.is-accountpage main #form-login { margin: 18px 0 28px; padding: 18px 20px; background: #edf7fd; border-radius: 16px; line-height: 1.8; }
.is-accountpage main #form-login input[type=submit],
.is-accountpage main .buttonBar-right input[type=submit],
.is-accountpage main button, .is-accountpage main input.vm-button-correct {
  width: auto; max-width: 100%; min-height: 42px; padding: 10px 22px;
  border: 1px solid #eca9c4; border-radius: 24px; background: #fbe3ed;
  color: #a52260; font: 700 1rem/1.3 system-ui, sans-serif; cursor: pointer;
}
.is-accountpage main #form-login input[type=submit] { margin-left: 12px; }
.is-accountpage main #adminForm .buttonBar-right { float: none; text-align: left; margin: 18px 0 24px; }
.is-accountpage main #adminForm fieldset { min-width: 0; border: 0; padding: 12px 0; }
.is-accountpage main #adminForm table { width: 100%; border-spacing: 0 10px; }
.is-accountpage main #adminForm td { padding: 6px 10px; vertical-align: middle; }
.is-accountpage main #adminForm td.key { width: 32%; }
.is-accountpage main #adminForm input:not([type=hidden]):not([type=submit]):not([type=checkbox]):not([type=radio]),
.is-accountpage main #adminForm select, .is-accountpage main #adminForm textarea {
  box-sizing: border-box; width: 100%; max-width: 540px; min-height: 44px;
  padding: 10px 14px; background: #fff; border: 1px solid #aed6ee;
  border-radius: 12px; color: #254457; font: inherit;
}
.is-accountpage main #adminForm input:focus, .is-accountpage main #adminForm select:focus { outline: 2px solid #67b5e6; outline-offset: 2px; }
.is-accountpage main #adminForm .tabs, .is-accountpage main #adminForm ul.tabs { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; }
.is-accountpage main #adminForm .tabs li { border-radius: 18px; padding: 10px 16px; background: #e7f3fb; }
.is-accountpage main #adminForm .tabs li.current { background: #fbe3ed; }
.is-accountpage main .fb-account-orders { width: 100%; border-collapse: collapse; table-layout: auto; }
.is-accountpage main .fb-account-orders th { text-align: left; background: #e6f3fb; color: #174563; padding: 16px 14px; }
.is-accountpage main .fb-account-orders td { padding: 15px 14px; border-bottom: 1px solid #e0eaf0; vertical-align: middle; overflow-wrap: anywhere; }
.is-accountpage main .fb-account-orders tr:nth-child(even) td { background: rgba(255,255,255,.8); }
.is-accountpage main .fb-account-orders th:last-child, .is-accountpage main .fb-account-orders td:last-child { text-align: right; white-space: nowrap; }
.is-accountpage main .fb-account-orders a { color: #2275a8; text-underline-offset: 3px; }
@media (max-width: 760px) {
  .is-accountpage main.container { width: calc(100% - 24px); }
  .is-accountpage main #adminForm table, .is-accountpage main #adminForm tbody, .is-accountpage main #adminForm tr, .is-accountpage main #adminForm td { display: block; width: 100% !important; box-sizing: border-box; }
  .is-accountpage main #adminForm td { padding: 5px 0; }
  .is-accountpage main #adminForm tr { margin-bottom: 12px; }
  .is-accountpage main #adminForm .buttonBar-right { text-align: left; }
  .is-accountpage main .fb-account-orders thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .is-accountpage main .fb-account-orders, .is-accountpage main .fb-account-orders tbody { display: block; }
  .is-accountpage main .fb-account-orders tr { display: block; margin: 12px 0; padding: 10px; background: #fff; border: 1px solid #d7e7f1; border-radius: 16px; }
  .is-accountpage main .fb-account-orders td { display: grid; grid-template-columns: minmax(90px, 38%) minmax(0, 1fr); gap: 10px; padding: 10px 4px; text-align: left !important; white-space: normal !important; }
  .is-accountpage main .fb-account-orders td::before { content: attr(data-label); color: #174563; font-weight: 600; }
}

/* Login nach dem Ausloggen: VirtueMart verwendet com-form-login. */
.is-accountpage main #com-form-login {
  box-sizing: border-box;
  margin: 24px 0 32px;
  padding: clamp(18px, 3vw, 26px);
  background: #edf7fd;
  border: 1px solid #cce5f5;
  border-radius: 18px;
  color: #254457;
}
.is-accountpage main #com-form-login fieldset.userdata {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(180px, .8fr);
  gap: 18px;
  min-width: 0;
  margin: 0 0 18px;
  padding: 0;
  border: 0;
}
.is-accountpage main #com-form-login fieldset.userdata > div:first-child {
  grid-column: 1 / -1;
}
.is-accountpage main #com-form-login h2 {
  margin: 0 0 4px;
  color: #174563;
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  line-height: 1.4;
}
.is-accountpage main #com-form-login .width30 {
  float: none;
  width: auto;
  min-width: 0;
  padding: 0;
}
.is-accountpage main #com-form-login input[type=text],
.is-accountpage main #com-form-login input[type=password] {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 46px;
  padding: 11px 14px;
  border: 1px solid #aed6ee;
  border-radius: 12px;
  background: #fff;
  color: #254457;
  font: inherit;
}
.is-accountpage main #com-form-login input[type=submit] {
  box-sizing: border-box;
  min-height: 46px;
  max-width: 100%;
  margin: 0;
  padding: 11px 24px;
  border: 1px solid #eca9c4;
  border-radius: 24px;
  background: #fbe3ed;
  color: #a52260;
  font: 700 1rem/1.3 system-ui, sans-serif;
  cursor: pointer;
}
.is-accountpage main #com-form-login input[type=submit]:hover {
  background: #f7d2e2;
}
.is-accountpage main #com-form-login input:focus-visible,
.is-accountpage main #com-form-login a:focus-visible {
  outline: 2px solid #67b5e6;
  outline-offset: 3px;
}
.is-accountpage main #com-form-login #com-form-login-remember {
  line-height: 1.8;
}
.is-accountpage main #com-form-login #com-form-login-remember br { display: none; }
.is-accountpage main #com-form-login #com-form-login-remember input[type=submit] {
  display: block;
  margin-bottom: 12px;
}
.is-accountpage main #com-form-login input[type=checkbox] {
  width: 18px;
  height: 18px;
  margin: 0 6px 0 0;
  vertical-align: middle;
  accent-color: #a52260;
}
.is-accountpage main #com-form-login label { font: inherit; }
.is-accountpage main #com-form-login > .width30 {
  display: inline-block;
  margin: 4px 24px 4px 0;
}
.is-accountpage main #com-form-login a {
  color: #2275a8;
  text-underline-offset: 3px;
  overflow-wrap: anywhere;
}
.is-accountpage main #com-form-login .clr { display: none; }
@media (max-width: 760px) {
  .is-accountpage main #com-form-login fieldset.userdata { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .is-accountpage main #com-form-login input[type=submit] { width: 100%; }
  .is-accountpage main #com-form-login > .width30 { display: block; margin: 10px 0; }
}

/* Aktionen nach Feldern und Captcha. */
.is-accountpage main #adminForm .fb-account-actions {
 display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 12px;
 margin: 24px 0 8px; float: none;
}
.is-accountpage main .fb-account-captcha { margin: 24px 0 16px; }
.is-accountpage main #com-form-login fieldset.userdata {
 grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.is-accountpage main #com-form-login #com-form-login-remember { grid-column: 1 / -1; }
.is-accountpage main #com-form-login .fb-login-actions { display: block; margin: 20px 0; }
.is-accountpage main #com-form-login .fb-login-captcha { margin-bottom: 16px; }
@media (max-width: 760px) {
 .is-accountpage main #com-form-login fieldset.userdata { grid-template-columns: minmax(0, 1fr); }
 .is-accountpage main #adminForm .fb-account-actions { justify-content: flex-start; }
 .is-accountpage main #adminForm .fb-account-actions button { width: 100%; }
}


/* ===== Zentrale Frontend-Styles aus Template-Overrides (30.09.2026) ===== */

/* Aus html/com_virtuemart/cart/default_address.php */
.fb-cart-address .fb-address-postal { margin-top: 1em; }
.fb-cart-address .output-billto, .fb-cart-address #output-shipto-display { line-height: 1.65; }

/* Aus html/com_virtuemart/user/edit_address.php */
.is-addresspage main .kontodaten {
    margin: 28px 0 20px;
    line-height: 1.3;
    color: #174563;
}
.is-addresspage main #form-login {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    margin: 0 0 28px;
    padding: 20px 24px;
    border: 1px solid #e9dce5;
    border-radius: 20px;
    background: linear-gradient(110deg, #fff4f8, #edf8ff);
    color: #254457;
    line-height: 1.6;
}
.is-addresspage main #form-login input[type="submit"] {
    appearance: none;
    width: auto;
    min-height: 42px;
    margin: 0;
    padding: 10px 24px;
    border: 1px solid #e9aac4;
    border-radius: 24px;
    background: #fce4ee;
    color: #a52260;
    font: 700 1rem/1.3 system-ui, sans-serif;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(188, 65, 118, .1);
}
.is-addresspage main #form-login input[type="submit"]:hover {
    background: #f9d5e5;
}
.is-addresspage main #form-login input[type="submit"]:focus-visible {
    outline: 3px solid #5dade2;
    outline-offset: 3px;
}
@media (max-width: 760px) {
    .is-addresspage main #form-login { padding: 18px; gap: 12px; }
}

/* Aus html/mod_virtuemart_cart/default.php */
.header-cart-desktop style, 
.vmCartNeu style,
.disp_total_prod {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
}

/* Aus index.php */
html.fb-cart-restoring body { visibility: hidden !important; }

:is(#fb-template-style-priority, [data-fb-style="fb-001"]):is(#fb-template-style-priority, [data-fb-style="fb-001"]):is(#fb-template-style-priority, [data-fb-style="fb-001"]):is(#fb-template-style-priority, [data-fb-style="fb-001"]) { display:none; }

:is(#fb-template-style-priority, [data-fb-style="fb-002"]):is(#fb-template-style-priority, [data-fb-style="fb-002"]):is(#fb-template-style-priority, [data-fb-style="fb-002"]):is(#fb-template-style-priority, [data-fb-style="fb-002"]) { width: 200px }

:is(#fb-template-style-priority, [data-fb-style="fb-003"]):is(#fb-template-style-priority, [data-fb-style="fb-003"]):is(#fb-template-style-priority, [data-fb-style="fb-003"]):is(#fb-template-style-priority, [data-fb-style="fb-003"]) { border:0px !important; }

:is(#fb-template-style-priority, [data-fb-style="fb-004"]):is(#fb-template-style-priority, [data-fb-style="fb-004"]):is(#fb-template-style-priority, [data-fb-style="fb-004"]):is(#fb-template-style-priority, [data-fb-style="fb-004"]) { border:0px; }

:is(#fb-template-style-priority, [data-fb-style="fb-005"]):is(#fb-template-style-priority, [data-fb-style="fb-005"]):is(#fb-template-style-priority, [data-fb-style="fb-005"]):is(#fb-template-style-priority, [data-fb-style="fb-005"]) { margin-left: 10px; }

:is(#fb-template-style-priority, [data-fb-style="fb-006"]):is(#fb-template-style-priority, [data-fb-style="fb-006"]):is(#fb-template-style-priority, [data-fb-style="fb-006"]):is(#fb-template-style-priority, [data-fb-style="fb-006"]) { text-align: left; font-size: 18px; }

:is(#fb-template-style-priority, [data-fb-style="fb-007"]):is(#fb-template-style-priority, [data-fb-style="fb-007"]):is(#fb-template-style-priority, [data-fb-style="fb-007"]):is(#fb-template-style-priority, [data-fb-style="fb-007"]) { float: left; }

:is(#fb-template-style-priority, [data-fb-style="fb-008"]):is(#fb-template-style-priority, [data-fb-style="fb-008"]):is(#fb-template-style-priority, [data-fb-style="fb-008"]):is(#fb-template-style-priority, [data-fb-style="fb-008"]) { vertical-align: top }

:is(#fb-template-style-priority, [data-fb-style="fb-009"]):is(#fb-template-style-priority, [data-fb-style="fb-009"]):is(#fb-template-style-priority, [data-fb-style="fb-009"]):is(#fb-template-style-priority, [data-fb-style="fb-009"]) { text-align: right; }

:is(#fb-template-style-priority, [data-fb-style="fb-010"]):is(#fb-template-style-priority, [data-fb-style="fb-010"]):is(#fb-template-style-priority, [data-fb-style="fb-010"]):is(#fb-template-style-priority, [data-fb-style="fb-010"]) { text-align: left; }

:is(#fb-template-style-priority, [data-fb-style="fb-011"]):is(#fb-template-style-priority, [data-fb-style="fb-011"]):is(#fb-template-style-priority, [data-fb-style="fb-011"]):is(#fb-template-style-priority, [data-fb-style="fb-011"]) { vertical-align:top; }

:is(#fb-template-style-priority, [data-fb-style="fb-012"]):is(#fb-template-style-priority, [data-fb-style="fb-012"]):is(#fb-template-style-priority, [data-fb-style="fb-012"]):is(#fb-template-style-priority, [data-fb-style="fb-012"]) { align:left;vertical-align:top; }

:is(#fb-template-style-priority, [data-fb-style="fb-013"]):is(#fb-template-style-priority, [data-fb-style="fb-013"]):is(#fb-template-style-priority, [data-fb-style="fb-013"]):is(#fb-template-style-priority, [data-fb-style="fb-013"]) { text-align: left;border-bottom: 1px solid #333; }

:is(#fb-template-style-priority, [data-fb-style="fb-014"]):is(#fb-template-style-priority, [data-fb-style="fb-014"]):is(#fb-template-style-priority, [data-fb-style="fb-014"]):is(#fb-template-style-priority, [data-fb-style="fb-014"]) { text-align:right !important; }

:is(#fb-template-style-priority, [data-fb-style="fb-015"]):is(#fb-template-style-priority, [data-fb-style="fb-015"]):is(#fb-template-style-priority, [data-fb-style="fb-015"]):is(#fb-template-style-priority, [data-fb-style="fb-015"]) { text-align: right; width: 15%; vertical-align: middle; }

:is(#fb-template-style-priority, [data-fb-style="fb-016"]):is(#fb-template-style-priority, [data-fb-style="fb-016"]):is(#fb-template-style-priority, [data-fb-style="fb-016"]):is(#fb-template-style-priority, [data-fb-style="fb-016"]) { text-align:left !important; }

:is(#fb-template-style-priority, [data-fb-style="fb-017"]):is(#fb-template-style-priority, [data-fb-style="fb-017"]):is(#fb-template-style-priority, [data-fb-style="fb-017"]):is(#fb-template-style-priority, [data-fb-style="fb-017"]) { text-align:right !important; vertical-align: middle; }

:is(#fb-template-style-priority, [data-fb-style="fb-018"]):is(#fb-template-style-priority, [data-fb-style="fb-018"]):is(#fb-template-style-priority, [data-fb-style="fb-018"]):is(#fb-template-style-priority, [data-fb-style="fb-018"]) { border:0px; width: 5%; }

:is(#fb-template-style-priority, [data-fb-style="fb-019"]):is(#fb-template-style-priority, [data-fb-style="fb-019"]):is(#fb-template-style-priority, [data-fb-style="fb-019"]):is(#fb-template-style-priority, [data-fb-style="fb-019"]) { margin-left: 10px;width:100px }

:is(#fb-template-style-priority, [data-fb-style="fb-020"]):is(#fb-template-style-priority, [data-fb-style="fb-020"]):is(#fb-template-style-priority, [data-fb-style="fb-020"]):is(#fb-template-style-priority, [data-fb-style="fb-020"]) { float:right; }

:is(#fb-template-style-priority, [data-fb-style="fb-021"]):is(#fb-template-style-priority, [data-fb-style="fb-021"]):is(#fb-template-style-priority, [data-fb-style="fb-021"]):is(#fb-template-style-priority, [data-fb-style="fb-021"]) { clear:both }

:is(#fb-template-style-priority, [data-fb-style="fb-022"]):is(#fb-template-style-priority, [data-fb-style="fb-022"]):is(#fb-template-style-priority, [data-fb-style="fb-022"]):is(#fb-template-style-priority, [data-fb-style="fb-022"]) { text-align: center; }

:is(#fb-template-style-priority, [data-fb-style="fb-023"]):is(#fb-template-style-priority, [data-fb-style="fb-023"]):is(#fb-template-style-priority, [data-fb-style="fb-023"]):is(#fb-template-style-priority, [data-fb-style="fb-023"]) { vertical-align: top; }

:is(#fb-template-style-priority, [data-fb-style="fb-024"]):is(#fb-template-style-priority, [data-fb-style="fb-024"]):is(#fb-template-style-priority, [data-fb-style="fb-024"]):is(#fb-template-style-priority, [data-fb-style="fb-024"]) { border-top-style:double }

:is(#fb-template-style-priority, [data-fb-style="fb-025"]):is(#fb-template-style-priority, [data-fb-style="fb-025"]):is(#fb-template-style-priority, [data-fb-style="fb-025"]):is(#fb-template-style-priority, [data-fb-style="fb-025"]) { padding-right: 5px; }

:is(#fb-template-style-priority, [data-fb-style="fb-026"]):is(#fb-template-style-priority, [data-fb-style="fb-026"]):is(#fb-template-style-priority, [data-fb-style="fb-026"]):is(#fb-template-style-priority, [data-fb-style="fb-026"]) { font-weight: bold; background-color: #f9f9f9; }

:is(#fb-template-style-priority, [data-fb-style="fb-027"]):is(#fb-template-style-priority, [data-fb-style="fb-027"]):is(#fb-template-style-priority, [data-fb-style="fb-027"]):is(#fb-template-style-priority, [data-fb-style="fb-027"]) { display: none; }

:is(#fb-template-style-priority, [data-fb-style="fb-028"]):is(#fb-template-style-priority, [data-fb-style="fb-028"]):is(#fb-template-style-priority, [data-fb-style="fb-028"]):is(#fb-template-style-priority, [data-fb-style="fb-028"]) { border-top-left-radius: 24px; border-bottom-left-radius: 24px; box-shadow: -20px 0 60px rgba(0,0,0,0.2); border-left: none; position: fixed; }

:is(#fb-template-style-priority, [data-fb-style="fb-029"]):is(#fb-template-style-priority, [data-fb-style="fb-029"]):is(#fb-template-style-priority, [data-fb-style="fb-029"]):is(#fb-template-style-priority, [data-fb-style="fb-029"]) { position: absolute; z-index: 105000; background-color: #ff69b4; color: #ffffff; border-radius: 50%; width: 40px; height: 40px; border: 3px solid #fff; font-size: 26px; font-weight: bold; line-height: 1; cursor: pointer; display: flex; justify-content: center; align-items: center; box-shadow: 0 4px 10px rgba(0,0,0,0.3); transition: transform 0.2s; padding-bottom: 3px; }

:is(#fb-template-style-priority, [data-fb-style="fb-030"]):is(#fb-template-style-priority, [data-fb-style="fb-030"]):is(#fb-template-style-priority, [data-fb-style="fb-030"]):is(#fb-template-style-priority, [data-fb-style="fb-030"]) { background: linear-gradient(135deg, rgba(93, 173, 226, 0.15) 0%, rgba(252, 228, 236, 0.45) 100%); border-bottom: 2px solid rgba(255,182,193,0.3); padding: 20px 60px 20px 20px; }

:is(#fb-template-style-priority, [data-fb-style="fb-031"]):is(#fb-template-style-priority, [data-fb-style="fb-031"]):is(#fb-template-style-priority, [data-fb-style="fb-031"]):is(#fb-template-style-priority, [data-fb-style="fb-031"]) { font-family: 'Inter', system-ui, sans-serif; font-size: 1.35rem; font-weight: 800; color: #2c3e50; margin: 0; }

:is(#fb-template-style-priority, [data-fb-style="fb-032"]):is(#fb-template-style-priority, [data-fb-style="fb-032"]):is(#fb-template-style-priority, [data-fb-style="fb-032"]):is(#fb-template-style-priority, [data-fb-style="fb-032"]) { padding: 0; overflow: hidden; position: relative; }

:is(#fb-template-style-priority, [data-fb-style="fb-033"]):is(#fb-template-style-priority, [data-fb-style="fb-033"]):is(#fb-template-style-priority, [data-fb-style="fb-033"]):is(#fb-template-style-priority, [data-fb-style="fb-033"]) { width:100%; height:100%; min-height:100vh; border:none; margin:0; padding:0; display:block; }

:is(#fb-template-style-priority, [data-fb-style="fb-034"]):is(#fb-template-style-priority, [data-fb-style="fb-034"]):is(#fb-template-style-priority, [data-fb-style="fb-034"]):is(#fb-template-style-priority, [data-fb-style="fb-034"]) { pointer-events:none; cursor:pointer; }

:is(#fb-template-style-priority, [data-fb-style="fb-035"]):is(#fb-template-style-priority, [data-fb-style="fb-035"]):is(#fb-template-style-priority, [data-fb-style="fb-035"]):is(#fb-template-style-priority, [data-fb-style="fb-035"]) { clear:both; margin:20px 0; }

:is(#fb-template-style-priority, [data-fb-style="fb-036"]):is(#fb-template-style-priority, [data-fb-style="fb-036"]):is(#fb-template-style-priority, [data-fb-style="fb-036"]):is(#fb-template-style-priority, [data-fb-style="fb-036"]) { text-decoration: underline; text-decoration-style: dotted; }

:is(#fb-template-style-priority, [data-fb-style="fb-037"]):is(#fb-template-style-priority, [data-fb-style="fb-037"]):is(#fb-template-style-priority, [data-fb-style="fb-037"]):is(#fb-template-style-priority, [data-fb-style="fb-037"]) { text-align: center; font-weight: bold; font-size: 24px; }

:is(#fb-template-style-priority, [data-fb-style="fb-038"]):is(#fb-template-style-priority, [data-fb-style="fb-038"]):is(#fb-template-style-priority, [data-fb-style="fb-038"]):is(#fb-template-style-priority, [data-fb-style="fb-038"]) { width:0% }

:is(#fb-template-style-priority, [data-fb-style="fb-039"]):is(#fb-template-style-priority, [data-fb-style="fb-039"]):is(#fb-template-style-priority, [data-fb-style="fb-039"]):is(#fb-template-style-priority, [data-fb-style="fb-039"]) { text-decoration: line-through; }

:is(#fb-template-style-priority, [data-fb-style="fb-040"]):is(#fb-template-style-priority, [data-fb-style="fb-040"]):is(#fb-template-style-priority, [data-fb-style="fb-040"]):is(#fb-template-style-priority, [data-fb-style="fb-040"]) { display: inline-block !important; position: relative !important; margin: 0 !important; padding: 0 !important; }

:is(#fb-template-style-priority, [data-fb-style="fb-041"]):is(#fb-template-style-priority, [data-fb-style="fb-041"]):is(#fb-template-style-priority, [data-fb-style="fb-041"]):is(#fb-template-style-priority, [data-fb-style="fb-041"]) { display: inline-flex !important; align-items: center !important; position: relative !important; text-decoration: none !important; min-width: 40px !important; min-height: 40px !important; padding: 0 !important; margin: 0 !important; }

:is(#fb-template-style-priority, [data-fb-style="fb-042"]):is(#fb-template-style-priority, [data-fb-style="fb-042"]):is(#fb-template-style-priority, [data-fb-style="fb-042"]):is(#fb-template-style-priority, [data-fb-style="fb-042"]) { display: inline-block !important; transition: stroke 0.2s ease-in-out !important; }

:is(#fb-template-style-priority, [data-fb-style="fb-043"]):is(#fb-template-style-priority, [data-fb-style="fb-043"]):is(#fb-template-style-priority, [data-fb-style="fb-043"]):is(#fb-template-style-priority, [data-fb-style="fb-043"]) { position: absolute !important; top: -6px !important; right: 2px !important; background-color: #5dade2 !important; color: #ffffff !important; font-size: 10px !important; font-weight: 800 !important; font-family: system-ui, -apple-system, sans-serif !important; min-width: 18px !important; max-width: 18px !important; height: 18px !important; border: 2px solid #ffffff !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; box-sizing: border-box !important; padding: 0 !important; line-height: 1 !important; box-shadow: 0 3px 8px rgba(93, 173, 226, 0.3) !important; z-index: 1050 !important; bottom: auto !important; left: auto !important; margin: 0 !important; float: none !important; font-style: normal !important; }

:is(#fb-template-style-priority, [data-fb-style="fb-044"]):is(#fb-template-style-priority, [data-fb-style="fb-044"]):is(#fb-template-style-priority, [data-fb-style="fb-044"]):is(#fb-template-style-priority, [data-fb-style="fb-044"]) { clear:both; }

:is(#fb-template-style-priority, [data-fb-style="fb-045"]):is(#fb-template-style-priority, [data-fb-style="fb-045"]):is(#fb-template-style-priority, [data-fb-style="fb-045"]):is(#fb-template-style-priority, [data-fb-style="fb-045"]) { vertical-align:middle }

:is(#fb-template-style-priority, [data-fb-style="fb-046"]):is(#fb-template-style-priority, [data-fb-style="fb-046"]):is(#fb-template-style-priority, [data-fb-style="fb-046"]):is(#fb-template-style-priority, [data-fb-style="fb-046"]) { color:green;margin:0 0 0 0 }

:is(#fb-template-style-priority, [data-fb-style="fb-047"]):is(#fb-template-style-priority, [data-fb-style="fb-047"]):is(#fb-template-style-priority, [data-fb-style="fb-047"]):is(#fb-template-style-priority, [data-fb-style="fb-047"]) { color:red;margin:0 0 0 0 }

:is(#fb-template-style-priority, [data-fb-style="fb-048"]):is(#fb-template-style-priority, [data-fb-style="fb-048"]):is(#fb-template-style-priority, [data-fb-style="fb-048"]):is(#fb-template-style-priority, [data-fb-style="fb-048"]) { margin:0 0 0 0 }

:is(#fb-template-style-priority, [data-fb-style="fb-049"]):is(#fb-template-style-priority, [data-fb-style="fb-049"]):is(#fb-template-style-priority, [data-fb-style="fb-049"]):is(#fb-template-style-priority, [data-fb-style="fb-049"]) { color:green; }

:is(#fb-template-style-priority, [data-fb-style="fb-050"]):is(#fb-template-style-priority, [data-fb-style="fb-050"]):is(#fb-template-style-priority, [data-fb-style="fb-050"]):is(#fb-template-style-priority, [data-fb-style="fb-050"]) { color:red; }

/* Vollständiger Name: nur in Formularen mit Vorname UND Nachname verbergen. */
form:has(#first_name_field):has(#last_name_field) tr:has(#name_field),
form:has(#first_name_field):has(#last_name_field) .control-group:has(#name_field),
form:has(#first_name_field):has(#last_name_field) .form-group:has(#name_field),
form:has(#first_name_field):has(#last_name_field) .control-group:has(#jform_name),
form:has(#first_name_field):has(#last_name_field) .form-group:has(#jform_name),
.fb-derived-name-row { display: none !important; }
.fb-account-captcha { margin: 24px 0 16px; }
.fb-login-actions { clear: both; margin: 20px 0; }

/* Ähnliche Produkte: ganze Karten umbrechen und jede Zeile zentrieren. */
.productdetails-view .product-related-products {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 18px;
}
.productdetails-view .product-related-products > .product-fields-title-wrapper {
  flex: 0 0 100%;
  width: 100%;
  margin-bottom: 6px;
}
.productdetails-view .product-related-products > .product-field {
  display: block !important;
  box-sizing: border-box;
  flex: 0 1 220px;
  width: min(220px, 100%) !important;
  max-width: 100%;
  min-width: 0;
  float: none !important;
  margin: 0 !important;
  padding: 0;
}
.productdetails-view .product-related-products > .product-field > .product-field-display {
  height: 100%;
  margin: 0 !important;
}
.productdetails-view .product-related-products .product-container {
  width: 100%;
  max-width: 220px;
  margin: 0;
}
.productdetails-view .product-related-products > .clear,
.productdetails-view .product-related-products > .clr { display: none; }

/* Ähnliche Produkte im Hinzugefügt-Popup: dieselben ruhigen Geschenkkacheln. */
:is(.fb-popup-related, #fancybox-content .product-related-products) {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 18px;
  width: 100%;
  min-width: 0;
  margin: 24px 0 8px;
  padding: clamp(16px, 3vw, 26px);
  border: 1px solid #f5d7e6;
  border-radius: 24px;
  background: linear-gradient(115deg, #fff2f8, #f0f8ff);
  text-align: center;
}
:is(.fb-popup-related, #fancybox-content .product-related-products) > h4 {
  flex: 0 0 100%;
  box-sizing: border-box;
  width: 100%;
  margin: 0 0 6px;
  color: #173e5d;
  font-size: clamp(1.2rem, 2.4vw, 1.5rem);
  line-height: 1.35;
}
:is(.fb-popup-related, #fancybox-content .product-related-products) > .product-field {
  display: block !important;
  box-sizing: border-box;
  flex: 0 1 220px;
  width: min(220px, 100%) !important;
  max-width: 100%;
  min-width: 0;
  float: none !important;
  margin: 0 !important;
  padding: 0;
}
:is(.fb-popup-related, #fancybox-content .product-related-products) .product-field-display { height: 100%; width: 100% !important; }
:is(.fb-popup-related, #fancybox-content .product-related-products) .product-container {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 14px;
  border: 1px solid #f1d8e6;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(50, 71, 91, .07);
}
:is(.fb-popup-related, #fancybox-content .product-related-products) .vm-product-media-container {
  position: static !important;
  display: block !important;
  box-sizing: border-box;
  flex: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
:is(.fb-popup-related, #fancybox-content .product-related-products) .vm-product-media-container a {
  display: block;
  color: #143b5b;
  font-family: Georgia, serif;
  font-size: 1.05rem;
  font-style: italic;
  font-weight: 700;
  line-height: 1.35;
  text-decoration: none;
  overflow-wrap: anywhere;
}
:is(.fb-popup-related, #fancybox-content .product-related-products) .vm-product-media-container a:hover,
:is(.fb-popup-related, #fancybox-content .product-related-products) .vm-product-media-container a:focus-visible { color: #b7286b; }
:is(.fb-popup-related, #fancybox-content .product-related-products) .vm-product-media-container img {
  display: block;
  width: 100% !important;
  max-width: 170px !important;
  height: 170px !important;
  margin: 0 auto 12px !important;
  object-fit: contain;
}
:is(.fb-popup-related, #fancybox-content .product-related-products) .vm-img-desc { display: none; }


/* Unterkategorien v9: schmale transparente Motive, Produkte im Mittelpunkt. */
.fb-story-category .fb-story-hero {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 3fr) minmax(0, 1fr);
    align-items: center; gap: 18px; width: calc(100% - 30px); min-height: 0;
    margin: 0 15px 22px !important; padding: 10px 18px !important;
    background: transparent; border: 0; border-radius: 0; overflow: visible;
}
.fb-story-category .fb-story-hero::before { content: none !important; }
.fb-story-category .fb-story-hero-copy { grid-column: 2; grid-row: 1; max-width: 100%; }
.fb-story-category .fb-story-hero .vm-category-title {
    font-size: clamp(1.5rem, 2.4vw, 2.6rem) !important;
    line-height: 1.2; margin: 0 !important; overflow-wrap: anywhere;
}
.fb-story-category .fb-category-decoration {
    position: static; display: block; width: 100%; height: 110px;
    max-width: 240px; object-fit: contain; margin: 0; pointer-events: none;
}
.fb-story-category .fb-category-decoration--left { grid-column: 1; grid-row: 1; justify-self: start; }
.fb-story-category .fb-category-decoration--right { grid-column: 3; grid-row: 1; justify-self: end; }
.fb-story-category .fb-category-bottom { margin: 20px 15px 15px; }
.fb-story-category .fb-category-bottom-banner {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 3fr) minmax(0, 1fr);
    gap: 18px; align-items: center; padding: 0 18px;
}
.fb-story-category .fb-category-bottom .fb-cat-desc-text { padding: 12px 20px; }
@media (max-width: 760px) {
    .fb-story-category .fb-story-hero {
        grid-template-columns: minmax(0, 1fr); gap: 6px;
        width: calc(100% - 20px); margin: 0 10px 16px !important; padding: 4px 10px 10px !important;
    }
    .fb-story-category .fb-story-hero .fb-category-decoration--left {
        grid-column: 1; grid-row: 1; justify-self: center; width: 170px; height: 70px;
    }
    .fb-story-category .fb-category-decoration--right { display: none; }
    .fb-story-category .fb-story-hero-copy { grid-column: 1; grid-row: 2; }
    .fb-story-category .fb-story-hero .vm-category-title { font-size: clamp(1.45rem, 5.5vw, 2rem) !important; }
    .fb-story-category .fb-category-bottom { margin: 16px 10px 12px; }
    .fb-story-category .fb-category-bottom-banner { grid-template-columns: minmax(0, 1fr); padding: 0; gap: 0; }
    .fb-story-category .fb-category-bottom-banner .fb-category-decoration--left {
        grid-column: 1; grid-row: 1; justify-self: center; width: 170px; height: 70px;
    }
    .fb-story-category .fb-category-bottom .fb-cat-desc-text { padding: 10px 6px; }
}

/* Unterkategorien v10: Beschreibung zwischen den Wolken; mobil Wolke darunter. */
.fb-story-category .fb-category-bottom {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 3fr) minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    padding: 0 18px;
    text-align: center;
}
.fb-story-category .fb-category-bottom-banner { display: contents; }
.fb-story-category .fb-category-bottom .fb-cat-desc-text {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    width: 100%;
    min-width: 0;
    padding: 12px 0;
    text-align: center;
    overflow-wrap: anywhere;
}
.fb-story-category .fb-category-bottom-banner .fb-category-decoration {
    align-self: center;
}
@media (max-width: 760px) {
    .fb-story-category .fb-category-bottom {
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
        padding: 0 6px;
    }
    .fb-story-category .fb-category-bottom .fb-cat-desc-text {
        grid-column: 1;
        grid-row: 1;
        padding: 10px 0;
    }
    .fb-story-category .fb-category-bottom-banner .fb-category-decoration--left {
        grid-column: 1;
        grid-row: 2;
        justify-self: center;
        width: 170px;
        height: 70px;
    }
}

/* Galerie v11: Phoca Gallery und die zugehörige PhotoSwipe-Großansicht. */
#phocagallery {
    box-sizing: border-box; width: calc(100% - 40px); max-width: 1440px;
    margin: 28px auto 40px !important; padding: 0; color: #173656;
}
#phocagallery *, #phocagallery *::before, #phocagallery *::after { box-sizing: border-box; }
#phocagallery .pg-categories-items-box,
#phocagallery .pg-category-items-box,
#phocagallery .pg-category-categories-top-box:not(:empty) {
    display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px; position: relative; height: auto !important; width: 100% !important;
    margin: 0 !important; padding: 0 !important; align-items: stretch;
}
#phocagallery .pg-category-box, #phocagallery .pg-item-box {
    position: relative !important; inset: auto !important; transform: none !important;
    float: none !important; display: flex !important; flex-direction: column;
    width: 100% !important; min-width: 0; max-width: none !important;
    height: auto !important; margin: 0 !important; padding: 12px !important;
    border: 1px solid #efd9e6 !important; border-radius: 22px;
    background: linear-gradient(155deg, #fff 65%, #fff6fa) !important;
    box-shadow: 0 5px 18px #2039540c; overflow: hidden;
    transition: border-color .2s ease, box-shadow .2s ease;
}
#phocagallery .pg-category-box:hover, #phocagallery .pg-item-box:hover {
    border-color: #e99bbd !important; box-shadow: 0 9px 24px #20395418;
}
#phocagallery figure { margin: 0 !important; padding: 0; width: 100%; }
#phocagallery .pg-category-box-image,
#phocagallery .pg-item-box-image {
    position: relative !important; width: 100% !important; max-width: none !important;
    height: auto !important; aspect-ratio: 4 / 3; margin: 0 !important;
    padding: 0 !important; overflow: hidden; border-radius: 14px;
    background: #f5f8fb !important;
}
#phocagallery .pg-category-box-image > a { display: block; width: 100%; height: 100%; }
#phocagallery .pg-category-box-image img,
#phocagallery .pg-item-box-image img {
    display: block; width: 100% !important; height: 100% !important;
    max-width: none !important; max-height: none !important;
    object-fit: contain; border: 0 !important; border-radius: 0;
    box-shadow: none !important; margin: 0 !important; padding: 0 !important;
}
#phocagallery .pg-category-box-info,
#phocagallery .pg-item-box-info {
    position: static !important; inset: auto !important; width: 100% !important;
    height: auto !important; margin: 0 !important; padding: 14px 4px 3px !important;
    background: transparent !important; opacity: 1 !important; color: #173656 !important;
}
#phocagallery .pg-category-box-title,
#phocagallery .pg-item-box-title {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
    gap: 6px; width: 100%; min-width: 0; margin: 0 !important;
    padding: 0 !important; background: transparent !important; text-align: center;
    font-family: Georgia, serif; font-style: italic; font-size: 1.13rem;
    font-weight: 700; line-height: 1.35; color: #173656 !important;
}
#phocagallery .pg-category-box-title > a,
#phocagallery .pg-item-box-title > a {
    color: #173656 !important; text-decoration: none; overflow-wrap: anywhere;
    min-width: 0; max-width: 100%;
}
#phocagallery .pg-category-box-title > a:hover,
#phocagallery .pg-item-box-title > a:hover { color: #b7286b !important; }
#phocagallery .pg-category-box-title > svg,
#phocagallery .pg-item-box-title > svg { display: none; }
#phocagallery .pg-category-box-count {
    display: inline-block; padding: 3px 9px; border-radius: 999px;
    background: #eaf5fd; color: #406784 !important;
    font: 600 .78rem/1.3 Arial, sans-serif;
}
#phocagallery .pg-item-box-icons-box {
    position: static !important; display: flex; justify-content: center; gap: 8px;
    margin: 12px 0 0 !important; padding: 0 !important; background: transparent !important;
}
#phocagallery .pg-item-box-icons-box > a {
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; margin: 0 !important; border-radius: 50%;
    background: #ffe8f0 !important; color: #9f315f !important;
    border: 1px solid #f4cddd; opacity: 1 !important;
}
#phocagallery .pg-item-box-icons-box > a:nth-child(2) {
    background: #eaf5fd !important; color: #365f7e !important; border-color: #cfE5f6;
}
#phocagallery .pg-item-box-icons-box .ph-si { width: 20px; height: 20px; fill: currentColor; }
#phocagallery a:focus-visible { outline: 3px solid #b7286b; outline-offset: 4px; }
#phocagallery .pg-category-desc {
    width: 100%; max-width: 1000px; margin: 0 auto 24px !important;
    padding: 20px 24px; border: 1px solid #e0eaf4; border-radius: 20px;
    background: linear-gradient(120deg, #f0f8ff, #fff5f9); text-align: center;
    line-height: 1.65;
}
#phocagallery .pg-category-desc p { margin: 0 !important; }
#phocagallery .pg-category-categories-top-box:empty,
#phocagallery .pg-category-box-label-box:empty,
#phocagallery figcaption:empty { display: none; }
#phocagallery .pg-category-items-box > .ph-cb { display: none; }
/* Der vorhandene Zurück-Link bleibt erhalten, beansprucht aber keine Bildkachel. */
#phocagallery .pg-item-box:has(.pg-svg-box) {
    grid-column: 1 / -1; justify-self: start; width: 64px !important;
    height: 52px !important; padding: 8px !important; border-radius: 16px;
    background: #eaf5fd !important;
}
#phocagallery .pg-item-box:has(.pg-svg-box) .pg-item-box-info { display: none; }
#phocagallery .pg-item-box .pg-svg-box {
    aspect-ratio: auto !important; height: 34px !important;
    background: transparent !important; overflow: visible;
}
#phocagallery .pg-svg-box svg { width: 34px !important; height: 34px !important; fill: #436d8d; box-shadow: none !important; }
#phocagallery .pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 26px auto; }
@media (max-width: 1100px) {
    #phocagallery .pg-categories-items-box, #phocagallery .pg-category-items-box,
    #phocagallery .pg-category-categories-top-box:not(:empty) { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
}
@media (max-width: 760px) {
    #phocagallery { width: calc(100% - 24px); margin: 18px auto 28px !important; }
    #phocagallery .pg-categories-items-box, #phocagallery .pg-category-items-box,
    #phocagallery .pg-category-categories-top-box:not(:empty) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    #phocagallery .pg-category-box, #phocagallery .pg-item-box { padding: 9px !important; border-radius: 18px; }
    #phocagallery .pg-category-box-title, #phocagallery .pg-item-box-title { font-family: inherit; font-style: normal; font-size: .98rem; }
    #phocagallery .pg-category-desc { padding: 16px; }
}
@media (max-width: 480px) {
    #phocagallery .pg-categories-items-box, #phocagallery .pg-category-items-box,
    #phocagallery .pg-category-categories-top-box:not(:empty) { grid-template-columns: minmax(0, 1fr); }
}
/* PhotoSwipe bleibt für Zoom, Wischen, Tastatur und Bildwechsel zuständig. */
body:has(#phocagallery) .pswp { z-index: 2147483000 !important; }
body:has(#phocagallery) .pswp .pswp__bg { background: #eaf1f8 !important; }
body:has(#phocagallery) .pswp .pswp__top-bar {
    height: 56px; background: #ffffffed; border-bottom: 1px solid #e0dce8;
}
body:has(#phocagallery) .pswp .pswp__counter { color: #173656; font-weight: 700; height: 56px; line-height: 56px; opacity: 1; }
body:has(#phocagallery) .pswp .pswp__button {
    border-radius: 50%; color: #173656; opacity: 1; box-shadow: none;
}
body:has(#phocagallery) .pswp .pswp__top-bar > .pswp__button {
    width: 44px; height: 44px; margin: 6px 4px; background-color: #ffe8f0;
}
body:has(#phocagallery) .pswp .pswp__button:focus-visible { outline: 3px solid #b7286b; outline-offset: 2px; }
body:has(#phocagallery) .pswp .pswp__button:hover { background-color: #f7cddd; }
/* Eigene Zeichen vermeiden unsichtbare dunkle Sprite-Icons auf hellen Flächen. */
body:has(#phocagallery) .pswp .pswp__button--close,
body:has(#phocagallery) .pswp .pswp__button--share,
body:has(#phocagallery) .pswp .pswp__button--fs,
body:has(#phocagallery) .pswp .pswp__button--zoom { background-image: none !important; }
body:has(#phocagallery) .pswp .pswp__button--close::after { content: '×'; }
body:has(#phocagallery) .pswp .pswp__button--share::after { content: '↗'; }
body:has(#phocagallery) .pswp .pswp__button--fs::after { content: '⛶'; }
body:has(#phocagallery) .pswp .pswp__button--zoom::after { content: '+'; }
body:has(#phocagallery) .pswp.pswp--zoomed-in .pswp__button--zoom::after { content: '−'; }
body:has(#phocagallery) .pswp .pswp__top-bar > .pswp__button::after { font: 28px/44px Arial, sans-serif; }
body:has(#phocagallery) .pswp .pswp__button--arrow--left,
body:has(#phocagallery) .pswp .pswp__button--arrow--right {
    width: 48px; height: 48px; margin-top: -24px; background: #fff !important;
    border: 1px solid #e9d2df; box-shadow: 0 4px 18px #17365624;
}
body:has(#phocagallery) .pswp .pswp__button--arrow--left { left: 12px; }
body:has(#phocagallery) .pswp .pswp__button--arrow--right { right: 12px; }
body:has(#phocagallery) .pswp .pswp__button--arrow--left::before,
body:has(#phocagallery) .pswp .pswp__button--arrow--right::before { display: none; }
body:has(#phocagallery) .pswp .pswp__button--arrow--left::after { content: '‹'; font: 36px/44px Arial, sans-serif; }
body:has(#phocagallery) .pswp .pswp__button--arrow--right::after { content: '›'; font: 36px/44px Arial, sans-serif; }
body:has(#phocagallery) .pswp .pswp__caption { background: #ffffffed; }
body:has(#phocagallery) .pswp .pswp__caption__center { color: #173656; text-align: center; font-size: 1rem; line-height: 1.5; padding: 14px 20px; overflow-wrap: anywhere; }
body:has(#phocagallery) .pswp img.pswp__img { border-radius: 12px; }
body:has(#phocagallery) .pswp .pswp__share-tooltip { border-radius: 16px; overflow: hidden; box-shadow: 0 8px 25px #17365622; }
@media (max-width: 480px) {
    body:has(#phocagallery) .pswp .pswp__top-bar > .pswp__button { margin: 6px 1px; }
    body:has(#phocagallery) .pswp .pswp__button--arrow--left { left: 6px; }
    body:has(#phocagallery) .pswp .pswp__button--arrow--right { right: 6px; }
}
@media (prefers-reduced-motion: reduce) {
    #phocagallery .pg-category-box, #phocagallery .pg-item-box { transition: none; }
}

/* Galerie v12: alte absolute Titelpositionen und SVG-Themestile zurücksetzen. */
#phocagallery .pg-item-box-info, #phocagallery .pg-category-box-info {
    display: flex !important; flex-direction: column; align-items: stretch;
    flex: 1 0 auto; gap: 12px;
}
#phocagallery .pg-item-box-title, #phocagallery .pg-category-box-title {
    position: static !important; inset: auto !important; transform: none !important;
    float: none !important; order: 0; height: auto !important;
}
#phocagallery .pg-item-box-icons-box {
    position: static !important; inset: auto !important; float: none !important;
    transform: none !important; order: 1; margin: auto 0 0 !important;
    flex: 0 0 auto; clear: both;
}
#phocagallery .pg-item-box-icons-box svg.ph-si {
    color: inherit !important; fill: currentColor !important; background: none !important;
    padding: 0 !important; border-radius: 0 !important; width: 22px !important;
    height: 22px !important; margin: 0 !important;
}
#phocagallery .pg-item-box:has(.pg-svg-box) > a {
    display: flex !important; align-items: center; justify-content: center;
    width: 100%; height: 100%; border-radius: 12px; color: #b7286b;
    background: #ffe2ed; text-decoration: none;
}
#phocagallery .pg-item-box:has(.pg-svg-box) > a::before {
    content: '←'; display: block; font: 30px/1 Arial, sans-serif;
}
#phocagallery .pg-item-box:has(.pg-svg-box) .pg-svg-box { display: none !important; }
/* Direkte PhotoSwipe-Regeln greifen auch bei umgehängtem Dialog. */
.pswp {
    position: fixed !important; inset: 0 !important; width: 100% !important;
    height: 100% !important; z-index: 2147483000 !important;
}
.pswp .pswp__bg,
body:has(#phocagallery) .pswp .pswp__bg {
    background: linear-gradient(135deg, #fde8f1 0%, #f8f4fb 45%, #e2f2ff 100%) !important;
}
.pswp.pswp--open .pswp__ui {
    opacity: 1 !important; visibility: visible !important;
}
.pswp.pswp--open .pswp__top-bar,
.pswp.pswp--open .pswp__caption {
    opacity: 1 !important; visibility: visible !important;
    background: #fffffff0 !important;
}
.pswp .pswp__top-bar { height: 56px !important; }
.pswp .pswp__counter { color: #173656 !important; line-height: 56px; font-weight: 700; opacity: 1 !important; }
.pswp img.pswp__img,
body:has(#phocagallery) .pswp img.pswp__img {
    border-radius: 20px !important; overflow: hidden;
    box-shadow: 0 10px 36px #23476220;
}
.pswp .pswp__caption__center { color: #173656 !important; text-align: center; padding: 14px 20px; }
.pswp .pswp__button--arrow--left,
.pswp .pswp__button--arrow--right,
body:has(#phocagallery) .pswp .pswp__button--arrow--left,
body:has(#phocagallery) .pswp .pswp__button--arrow--right {
    display: block !important; position: absolute !important; top: 50% !important;
    width: 52px !important; height: 52px !important; margin-top: -26px !important;
    background: #f9cfe0 !important; background-image: none !important;
    color: #a32762 !important; border: 1px solid #e9a8c3 !important;
    border-radius: 50% !important; opacity: 1 !important; visibility: visible !important;
    box-shadow: 0 5px 18px #803f6226; z-index: 5;
}
.pswp .pswp__button--arrow--left { left: 16px !important; }
.pswp .pswp__button--arrow--right { right: 16px !important; }
.pswp .pswp__button--arrow--left::before,
.pswp .pswp__button--arrow--right::before { display: none !important; }
.pswp .pswp__button--arrow--left::after { content: '‹' !important; }
.pswp .pswp__button--arrow--right::after { content: '›' !important; }
.pswp .pswp__button--arrow--left::after,
.pswp .pswp__button--arrow--right::after {
    display: block !important; position: static !important;
    font: 40px/48px Arial, sans-serif !important; color: #a32762 !important;
}
.pswp .pswp__button--arrow--left:hover,
.pswp .pswp__button--arrow--right:hover { background: #f5b7d0 !important; }
.pswp .pswp__top-bar > .pswp__button {
    width: 44px; height: 44px; margin: 6px 3px;
    border-radius: 50%; background-color: #f9d9e7 !important;
    color: #a32762 !important; opacity: 1 !important;
}
.pswp .pswp__button--close, .pswp .pswp__button--share,
.pswp .pswp__button--fs, .pswp .pswp__button--zoom { background-image: none !important; }
.pswp .pswp__button--close::after { content: '×'; }
.pswp .pswp__button--share::after { content: '↗'; }
.pswp .pswp__button--fs::after { content: '⛶'; }
.pswp .pswp__button--zoom::after { content: '+'; }
.pswp.pswp--zoomed-in .pswp__button--zoom::after { content: '−'; }
.pswp .pswp__top-bar > .pswp__button::after { font: 28px/44px Arial, sans-serif; }
.pswp .pswp__button:focus-visible { outline: 3px solid #b7286b; outline-offset: 3px; }
@media (max-width: 480px) {
    .pswp .pswp__button--arrow--left { left: 6px !important; }
    .pswp .pswp__button--arrow--right { right: 6px !important; }
    .pswp .pswp__top-bar > .pswp__button { margin: 6px 1px; }
    .pswp img.pswp__img { border-radius: 14px !important; }
}

/* FuersBaby Produktsuche 1.0: alle Stile zentral in der Haupt-CSS. */
.fb-smart-search { display:flex; align-items:center; width:100%; min-width:0; margin:0; border:2px solid #b5def7; border-radius:999px; background:#eef7fd; overflow:hidden; }
.fb-smart-search input[type="search"] { flex:1 1 auto; min-width:0; width:100%!important; height:48px!important; margin:0!important; padding:10px 18px!important; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; color:#173656; font:inherit; }
.fb-smart-search button { flex:0 0 48px; width:48px; height:48px; margin:0; padding:12px; border:0; border-radius:50%; background:#ffe2ed; color:#ac3269; cursor:pointer; }
.fb-smart-search svg, .fb-search-submit svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:2; }
.fb-smart-search:focus-within { outline:2px solid #b7286b; outline-offset:3px; }
.fb-search-results { --fb-search-sticky-top:12px; width:calc(100% - 40px); max-width:1180px; margin:28px auto 42px; color:#173656; min-width:0; }
.fb-search-results *, .fb-search-results *::before, .fb-search-results *::after { box-sizing:border-box; }
.fb-search-results [hidden] { display:none!important; }
.fb-search-heading { text-align:center; margin:0 0 22px; }
.fb-search-heading h1 { font-family:Georgia,serif; font-style:italic; color:#173656; font-size:clamp(1.7rem,3vw,2.6rem); margin:0 0 8px; line-height:1.25; }
.fb-search-heading p { margin:0; color:#496783; }
.fb-search-toolbar { position:sticky; top:var(--fb-search-sticky-top); z-index:110; margin:0 0 22px; padding:18px; border:1px solid #edd6e5; border-radius:22px; background:linear-gradient(120deg,#f0f8ff,#fff4f8); box-shadow:0 6px 22px #17365615; }
.fb-search-toolbar-main { display:grid; grid-template-columns:minmax(0,1fr) minmax(210px,.42fr); gap:16px; align-items:end; }
.fb-search-toolbar label { display:flex; flex-direction:column; gap:6px; min-width:0; color:#173656; font-size:.92rem; font-weight:600; margin:0; }
.fb-search-query-wrap { display:flex; align-items:center; min-width:0; border:1px solid #bfdaee; border-radius:14px; background:#fff; overflow:hidden; }
.fb-search-toolbar input:not([type="checkbox"]):not([type="range"]), .fb-search-toolbar select { display:block; width:100%!important; max-width:100%; min-width:0; height:44px!important; padding:9px 12px!important; margin:0!important; border:1px solid #c9ddeb!important; border-radius:12px!important; background:#fff!important; color:#173656!important; font:inherit; font-weight:400; box-shadow:none!important; }
.fb-search-toolbar .fb-search-query-wrap input { flex:1; border:0!important; border-radius:0!important; }
.fb-search-submit { flex:0 0 44px; display:grid; place-items:center; width:44px; height:44px; border:0; background:#ffe2ed; color:#a62c63; cursor:pointer; }
.fb-search-filters { margin-top:12px; }
.fb-search-filters summary { cursor:pointer; color:#a62c63; font-weight:700; padding:8px 0; }
.fb-search-filter-grid { display:grid; grid-template-columns:1fr 1fr minmax(100px,.6fr) minmax(100px,.6fr); gap:14px; padding-top:6px; }
.fb-search-toolbar label.fb-search-check { display:flex; flex-direction:row; align-items:center; gap:8px; font-weight:400; }
.fb-search-check input { width:18px; height:18px; flex:0 0 18px; margin:0!important; accent-color:#cc3e7b; }
.fb-search-filter-actions { grid-column:3 / 5; display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:14px; }
.fb-search-results .fb-search-primary { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 20px; border:0; border-radius:999px; background:#d73c7c; color:#fff!important; font:inherit; font-weight:700; text-decoration:none!important; cursor:pointer; }
.fb-search-results .fb-search-primary:hover { background:#b92c66; }
.fb-search-filter-actions > a { color:#9e3161; font-size:.88rem; text-underline-offset:3px; }
.fb-search-notice, .fb-search-empty, .fb-search-error { padding:15px 18px; border-radius:16px; background:#edf6ff; color:#173656; margin:16px 0; line-height:1.5; }
.fb-search-notice a { display:inline-block; margin-left:8px; color:#a62c63; text-underline-offset:3px; }
.fb-search-error { background:#fff0f4; }
.fb-search-list { display:flex; flex-direction:column; gap:12px; }
.fb-search-list[aria-busy="true"] { opacity:.65; }
.fb-search-item { display:grid; grid-template-columns:100px minmax(0,1fr) minmax(125px,auto); gap:18px; align-items:center; padding:14px 18px 14px 14px; border:1px solid #eddde7; border-radius:20px; background:linear-gradient(125deg,#fff 65%,#fff7fa); box-shadow:0 3px 12px #17365608; }
.fb-search-item-image { display:grid; place-items:center; width:100px; height:100px; border-radius:14px; overflow:hidden; background:#f1f7fc; text-decoration:none; }
.fb-search-item-image img { display:block; width:100%!important; height:100%!important; max-width:100%!important; object-fit:contain; border-radius:14px; }
.fb-search-item-image > span { color:#e68eaf; font-size:48px; }
.fb-search-item-copy { min-width:0; }
.fb-search-item-copy h2 { margin:0 0 7px; font:700 1.15rem/1.35 Georgia,serif; font-style:italic; }
.fb-search-item-copy h2 a { color:#173656!important; text-decoration:none!important; overflow-wrap:anywhere; }
.fb-search-item-copy h2 a:hover { color:#b7286b!important; }
.fb-search-item-copy p { margin:0; color:#617588; font-size:.92rem; line-height:1.45; overflow-wrap:anywhere; }
.fb-search-item-price { display:flex; flex-direction:column; align-items:flex-end; gap:5px; text-align:right; }
.fb-search-item-price strong { color:#c32c72; font-size:1.3rem; line-height:1.25; }
.fb-search-item-price small { color:#617588; font-size:.73rem; line-height:1.4; }
.fb-search-more-wrap { display:flex; justify-content:center; margin:24px 0 0; }
.fb-search-more[aria-disabled="true"] { pointer-events:none; opacity:.65; }
.fb-search-results :is(a,button,input,select,summary):focus-visible { outline:3px solid #b7286b; outline-offset:3px; }
@media(max-width:760px) {
 .fb-search-results { width:calc(100% - 24px); margin:20px auto 28px; }
 .fb-search-heading h1 { font-family:inherit; font-style:normal; font-size:1.7rem; }
 .fb-search-toolbar { padding:12px; border-radius:18px; top:var(--fb-search-sticky-top); }
 .fb-search-toolbar-main { grid-template-columns:minmax(0,1fr); gap:10px; }
 .fb-search-filter-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; max-height:48vh; overflow:auto; padding:6px 3px 3px; }
 .fb-search-filter-actions { grid-column:1 / -1; justify-content:flex-start; }
 .fb-search-item { grid-template-columns:74px minmax(0,1fr); gap:10px 12px; padding:12px; border-radius:17px; }
 .fb-search-item-image { width:74px; height:74px; grid-row:1 / 3; }
 .fb-search-item-copy h2 { font-family:inherit; font-style:normal; font-size:1rem; }
 .fb-search-item-copy p { font-size:.82rem; }
 .fb-search-item-price { grid-column:2; align-items:flex-start; text-align:left; gap:3px; }
 .fb-search-item-price strong { font-size:1.15rem; }
 .fb-search-notice a { display:block; margin:6px 0 0; }
 .fb-smart-search input[type="search"] { height:44px!important; padding:8px 14px!important; font-size:16px; }
 .fb-smart-search button { flex-basis:44px; width:44px; height:44px; padding:10px; }
}
/* Auf der Ergebnisseite erhält die Liste die volle Inhaltsbreite. */
body:has(.fb-search-results) main[role="main"] > .row > .col-lg-9 { width:100%; flex:0 0 100%; max-width:100%; }
body:has(.fb-search-results) main[role="main"] > .row > aside { display:none; }

/* FuersBaby Suche 1.1: kompakte Filter, Trefferzahl und Suchmotiv. */
.fb-search-heading{display:flex;align-items:center;justify-content:center;gap:20px;text-align:center;margin:22px 0 28px}
.fb-search-heading .fb-search-mascot{width:110px;height:110px;object-fit:contain;flex:none}
.fb-search-heading h1{margin:0 0 12px}
.fb-search-heading [data-fb-total]{display:inline-block;margin:0;padding:10px 24px;border-radius:999px;background:linear-gradient(120deg,#fce4ed,#e3f3fc);color:#5d4760;font-size:1.2rem;font-weight:800;box-shadow:0 4px 14px #ddbbce40}
.fb-search-filters summary{display:inline-flex;align-items:center;gap:9px;padding:9px 17px;border-radius:22px;background:#fff;border:1px solid #edcad9;color:#86536c;font-weight:700;cursor:pointer;list-style:none}
.fb-search-filters summary::-webkit-details-marker{display:none}
.fb-search-filters summary::after{content:'⌄';font-size:20px}
.fb-search-filters[open] summary::after{transform:rotate(180deg)}
.fb-search-filters[open] .fb-search-filter-grid{max-height:42vh;overflow-y:auto;padding:14px 4px 4px;overscroll-behavior:contain}
.fb-search-price-range{grid-column:span 2;border:0;padding:0;margin:0;min-width:0}
.fb-search-price-range legend{font-size:inherit;font-weight:700;margin:0 0 8px}
.fb-search-slider-pair{display:grid;grid-template-columns:1fr;align-items:center;height:38px;margin:8px 10px;position:relative;background:linear-gradient(#edb3cb,#edb3cb) center/100% 6px no-repeat}
.fb-search-slider-pair label{display:contents}
.fb-search-slider-pair label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.fb-search-slider-pair input[type=range]{grid-area:1/1;appearance:none;-webkit-appearance:none;width:100%;height:30px;padding:0;margin:0;border:0;background:transparent;pointer-events:none;box-shadow:none}
.fb-search-slider-pair input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#df8ab0;border:3px solid white;box-shadow:0 1px 5px #9e6c85;pointer-events:auto;cursor:ew-resize}
.fb-search-slider-pair input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#df8ab0;border:3px solid white;box-shadow:0 1px 5px #9e6c85;pointer-events:auto;cursor:ew-resize}
.fb-search-slider-pair input[type=range]:focus-visible{outline:2px solid #638cac;outline-offset:3px}
.fb-search-price-values{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:760px){
 .fb-search-heading{flex-direction:column;gap:8px;margin:16px 0 20px}
 .fb-search-heading .fb-search-mascot{width:82px;height:82px}
 .fb-search-heading [data-fb-total]{font-size:1.05rem;padding:9px 18px}
 .fb-search-toolbar{padding:12px}
 .fb-search-toolbar-main{display:flex;flex-wrap:wrap;gap:8px}
 .fb-search-query-label{flex:0 0 100%;order:0}
 .fb-search-sort-label{flex:1;order:2;min-width:0}
 .fb-search-filters{margin-top:8px}
 .fb-search-filters[open] .fb-search-filter-grid{max-height:38vh}
 .fb-search-price-range{grid-column:1/-1}
}
@media(max-width:760px){.fb-search-toolbar{display:flex;flex-direction:column}.fb-search-toolbar-main{display:contents}.fb-search-query-label{order:0}.fb-search-filters{order:1}.fb-search-sort-label{order:2;margin-top:9px}}


/* FuersBaby Suche 1.2: nur Kopfsuche, kompakte Sticky-Bedienung. */
.fb-search-heading .fb-search-mascot{width:180px;height:190px}
.fb-search-heading .fb-search-total-heading{display:none}
.fb-search-toolbar{display:block;padding:16px 18px;min-height:78px}
.fb-search-filters{margin:0}
.fb-search-filters>summary{display:flex;align-items:center;gap:20px;min-height:44px;width:100%;padding:0 280px 0 0;background:none;border:0;border-radius:0;list-style:none}
.fb-search-filters>summary::after{display:none}
.fb-search-filter-toggle,.fb-search-sort-details>summary{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:9px 17px;border:1px solid #edcad9;border-radius:24px;background:white;color:#86536c;font-weight:700;cursor:pointer;white-space:nowrap;flex:none}
.fb-search-filter-chevron{font-size:20px;line-height:1}
.fb-search-filters[open] .fb-search-filter-chevron{transform:rotate(180deg)}
.fb-search-total-toolbar,.fb-search-total-footer{font-size:1rem;font-weight:800;color:#5d4760;text-align:center;line-height:1.35}
.fb-search-total-toolbar{flex:1;cursor:default}
.fb-search-filters[open]>summary .fb-search-total-toolbar{display:none}
.fb-search-filter-mobile-label{display:none}
.fb-search-filters[open] .fb-search-filter-grid{padding-top:18px;max-height:min(42vh,var(--fb-search-panel-max-height,42vh));margin:6px 0 16px}
.fb-search-filter-actions{display:none}
.fb-search-toolbar:has(.fb-search-filters[open])>.fb-search-filter-actions{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:16px;align-items:center;grid-column:unset}
.fb-search-total-footer{justify-self:center}
.fb-search-sort-details{position:absolute;top:16px;right:18px;width:260px;margin:0;z-index:2}
.fb-search-sort-details>summary{display:none}
.fb-search-sort-label>span{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
.fb-search-toolbar .fb-search-sort-label{display:block;margin:0}
@media(min-width:761px) and (max-width:1050px){
 .fb-search-sort-details{width:200px}
 .fb-search-filters>summary{padding-right:218px;gap:10px}
 .fb-search-filter-toggle{padding:9px 12px;font-size:.9rem}
 .fb-search-total-toolbar,.fb-search-total-footer{font-size:.9rem}
}
@media(max-width:760px){
 .fb-search-heading .fb-search-mascot{width:145px;height:155px}
 .fb-search-heading .fb-search-total-heading{display:inline-block}
 .fb-search-toolbar{display:block;padding:12px;min-height:70px}
 .fb-search-filters{margin:0}
 .fb-search-filters>summary{padding:0;width:calc(50% - 5px);min-height:44px}
 .fb-search-filter-toggle{width:100%;padding:9px 10px}
 .fb-search-filter-mobile-label{display:inline}
 .fb-search-filter-desktop-label,.fb-search-total-toolbar,.fb-search-total-footer{display:none}
 .fb-search-sort-details{top:12px;right:12px;width:calc(50% - 17px)}
 .fb-search-sort-details>summary{display:flex;width:100%;padding:9px 10px;list-style:none}
 .fb-search-sort-details>summary::-webkit-details-marker{display:none}
 .fb-search-sort-details>summary::after{content:'⌄';font-size:20px;line-height:1}
 .fb-search-sort-details[open]>summary::after{transform:rotate(180deg)}
 .fb-search-sort-details[open] .fb-search-sort-label{position:absolute;right:0;top:calc(100% + 8px);width:calc(200% + 10px);padding:12px;margin:0;border:1px solid #edcad9;border-radius:14px;background:#fff9fc;box-shadow:0 6px 18px #17365620}
 .fb-search-filters[open] .fb-search-filter-grid{max-height:min(38vh,var(--fb-search-panel-max-height,38vh));margin-bottom:12px}
 .fb-search-toolbar:has(.fb-search-filters[open])>.fb-search-filter-actions{grid-template-columns:1fr 1fr;gap:8px}
 .fb-search-filter-actions .fb-search-primary{padding:10px;font-size:.86rem}
 .fb-search-filter-actions a{font-size:.84rem;text-align:center}
}
@media(max-width:760px){.fb-search-sort-details>summary{font-size:.9rem;gap:6px;padding:9px 6px}}


/* FuersBaby Suche 1.2.1: Desktop-Trefferbadge und aufklappbare Sortierung. */
@media(min-width:761px){
 .fb-search-total-toolbar,.fb-search-total-footer{display:inline-block;flex:0 1 auto;padding:10px 22px;border:1px solid #ecd2e2;border-radius:999px;background:linear-gradient(120deg,#fce4ed,#e3f3fc);box-shadow:0 4px 14px #ddbbce40}
 .fb-search-total-toolbar{margin-left:auto;margin-right:auto}
 .fb-search-filters[open]>summary .fb-search-total-toolbar{display:none}
 .fb-search-sort-details>summary{display:flex;width:100%;list-style:none}
 .fb-search-sort-details>summary::-webkit-details-marker{display:none}
 .fb-search-sort-details>summary::after{content:'⌄';font-size:20px;line-height:1}
 .fb-search-sort-details[open]>summary::after{transform:rotate(180deg)}
 .fb-search-sort-details[open] .fb-search-sort-label{position:absolute;right:0;top:calc(100% + 8px);width:100%;min-width:240px;padding:12px;margin:0;border:1px solid #edcad9;border-radius:14px;background:#fff9fc;box-shadow:0 6px 18px #17365620}
}
@media(min-width:761px) and (max-width:1050px){.fb-search-total-toolbar,.fb-search-total-footer{padding:9px 13px}}

/* Login-Einstieg: flaches Aquarell-Motiv mit Schlüssel und Schloss. */
.fb-login-intro,.is-addresspage .fb-login-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(108deg,#fff1f7,#f0f9ff);border:1px solid #f1d7e5;border-radius:25px;padding:16px 28px;margin:0 0 20px}
.fb-login-intro .fb-address-intro-text{flex:1;min-width:0}
.fb-login-intro .fb-address-eyebrow{color:#d22b73;font-size:clamp(1.4rem,2.4vw,1.9rem);font-weight:800;line-height:1.3}
.fb-login-intro p{margin:8px 0 0;color:#2c4359;font-size:1rem;line-height:1.5;max-width:48ch}
.fb-login-intro picture{display:block;flex:0 1 330px;align-self:center;text-align:center;min-width:0}
.fb-login-intro picture img{display:block;margin:auto;width:330px!important;height:120px!important;max-width:100%;max-height:none!important;object-fit:contain;object-position:center}
@media(max-width:760px){
 .fb-login-intro,.is-addresspage .fb-login-intro{flex-direction:column;gap:8px;padding:12px 18px 16px;text-align:center}
 .fb-login-intro picture{flex:0 0 auto;order:-1;width:250px;max-width:100%}
 .fb-login-intro picture img{width:250px!important;height:90px!important}
 .fb-login-intro p{margin:6px auto 0;font-size:.95rem;line-height:1.45}
}

/* Warenkorb: Versand und Zahlungsart automatisch übernehmen. */
.fb-cart-save-status{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;min-height:0;color:#37566d;font-size:.9rem;text-align:center}
.fb-cart-save-status[data-state]{padding:10px 14px;margin:0 0 18px;border:1px solid #e9d4e2;border-radius:14px;background:linear-gradient(110deg,#fff4f8,#eef8ff)}
.fb-cart-save-status[data-state="error"],.fb-cart-save-status[data-state="rejected"]{color:#913454;border-color:#e4abc3}
.fb-cart-save-retry{border:1px solid #e3abc3;border-radius:999px;background:#fff;color:#ac3268;padding:8px 16px;font:inherit;cursor:pointer}
.fb-cart-save-retry[hidden]{display:none!important}
.fb-cart-checkout[aria-busy="true"] .fb-cart-final-summary{opacity:.65}
.fb-cart-checkout[aria-busy="true"] #checkoutFormSubmit{cursor:progress}
.fb-cart-autosave-ready .fb-cart-shipment-method .buttonBar-right,.fb-cart-autosave-ready .fb-cart-payment-method .buttonBar-right{display:none}
@media(max-width:760px){.fb-cart-save-status{font-size:.85rem}.fb-cart-save-status[data-state]{padding:9px 12px;margin-bottom:14px}}

/* Suchergebnisse: ganze Kachel als Produktlink, Versandkosten separat. */
.fb-search-item{position:relative;isolation:isolate;cursor:pointer}
.fb-search-item-copy,.fb-search-item-copy h2,.fb-search-item-copy h2 a{position:static}
.fb-search-item-copy h2 a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.fb-search-item-copy h2 a:focus-visible::after{outline:3px solid #c32c72;outline-offset:3px}
.fb-search-item:focus-within{border-color:#df99bc}
.fb-search-item-price .fb-search-shipping-link{position:relative;z-index:2;color:inherit;text-decoration:underline;text-underline-offset:2px}
.fb-search-item-price .fb-search-shipping-link:hover,.fb-search-item-price .fb-search-shipping-link:focus-visible{color:#b7286b}

/* Geschenkefinder 6.5.1: bisherige Modulregeln jetzt in der Haupt-CSS. */

.fb-quiz-container {
    background: linear-gradient(135deg, rgba(93, 173, 226, 0.06) 0%, rgba(252, 228, 236, 0.3) 100%) !important;
    border: 1px solid rgba(93, 173, 226, 0.15) !important;
    border-radius: 24px !important;
    padding: 40px 20px !important;
    box-shadow: 0 10px 30px rgba(168, 218, 220, 0.12) !important;
    text-align: center !important;
    max-width: 900px !important;
    margin: 0 auto 40px auto !important;
}

.fb-quiz-header h3 {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: #2c3e50 !important;
    margin-bottom: 15px !important;
    letter-spacing: -0.5px !important;
}

.fb-quiz-intro-text {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1.05rem !important;
    color: #4a5568 !important;
    line-height: 1.6 !important;
    margin-bottom: 35px !important;
}

.fb-quiz-question-text {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1.5rem !important;
    color: #5dade2 !important;
    font-weight: 700 !important;
    margin-bottom: 25px !important;
}

.fb-quiz-btn-group {
    display: flex !important;
    justify-content: center !important;
    gap: 20px !important;
    flex-wrap: wrap !important;
}

.fb-quiz-btn {
    background: #ffffff !important;
    border: 2px solid rgba(93, 173, 226, 0.2) !important;
    border-radius: 16px !important;
    padding: 20px 30px !important;
    min-width: 180px !important;
    flex: 1 !important;
    max-width: 250px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.03) !important;
}

.fb-quiz-btn:hover {
    border-color: #5dade2 !important;
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 25px rgba(93, 173, 226, 0.15) !important;
}

.fb-quiz-btn-icon {
    font-size: 2.8rem !important;
    line-height: 1 !important;
    display: block !important;
}

.fb-quiz-btn-text {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #2c3e50 !important;
    display: block !important;
}

.fb-quiz-divider {
    border: 0 !important;
    height: 1px !important;
    background: dashed 1px rgba(93, 173, 226, 0.3) !important;
    margin: 40px 0 30px 0 !important;
}

.fb-quiz-result-title {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1.35rem !important;
    color: #5dade2 !important;
    font-weight: 800 !important;
    margin-bottom: 30px !important;
    text-align: center !important;
}

/* --- KACHEL-LAYOUT (Formstabil & mit perfekten Abständen) --- */
.fb-products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 25px;
    padding: 10px;
    text-align: left;
    align-items: stretch;
}

.fb-product-card-link {
    text-decoration: none !important;
    color: inherit !important;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.fb-product-card {
    background: #fff;
    border-radius: 16px;
    padding: 15px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 15px rgba(0,0,0,0.04);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid rgba(0,0,0,0.03);
}

.fb-product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(93, 173, 226, 0.15);
}

.fb-product-image {
    width: 100%;
    height: 180px;
    min-height: 180px;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 15px;
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.fb-product-image img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.fb-product-info {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.fb-product-title {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #2c3e50 !important;
    margin: 0 0 15px 0 !important;
    line-height: 1.4 !important;
}

.fb-product-price-box {
    margin-top: auto;
    text-align: right;
    border-top: 1px solid rgba(0,0,0,0.05);
    padding-top: 12px;
}

.fb-price-prefix {
    font-size: 0.85rem;
    color: #7f8c8d;
    margin-right: 5px;
}

.fb-price-value {
    font-size: 1.25rem;
    font-weight: 800;
    color: #e83e8c;
}
#vm-quiz-container .fb-quiz-more {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    width: auto !important;
    max-width: 100% !important;
    min-height: 54px !important;
    margin: 28px auto 0 !important;
    padding: 14px 26px !important;
    border: 1px dashed #ef9dbd !important;
    border-radius: 999px !important;
    background: linear-gradient(110deg, #ffe5ef 0%, #fff3f7 50%, #e7f5ff 100%) !important;
    color: #a91f58 !important;
    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    white-space: normal !important;
    box-shadow: 0 5px 14px rgba(213, 74, 129, .12) !important;
    cursor: pointer !important;
    transition: box-shadow .18s ease, border-color .18s ease !important;
}
#vm-quiz-container .fb-quiz-more::before { content: '♡'; font-size: 23px; line-height: 1; }
#vm-quiz-container .fb-quiz-more::after { content: '↓'; font-size: 19px; line-height: 1; }
#vm-quiz-container .fb-quiz-more:hover { border-color: #d9367c !important; box-shadow: 0 7px 18px rgba(213, 74, 129, .2) !important; }
#vm-quiz-container .fb-quiz-more:focus-visible { outline: 3px solid #5dade2 !important; outline-offset: 4px !important; }
#vm-quiz-container .fb-quiz-more:disabled { opacity: .65; cursor: wait !important; }
@media (max-width: 767px) {
    #vm-quiz-container .fb-quiz-more { width: 100% !important; padding: 13px 15px !important; gap: 8px !important; }
}
@media (prefers-reduced-motion: reduce) { #vm-quiz-container .fb-quiz-more { transition: none !important; } }
#vm-quiz-container .fb-quiz-back-top { position: fixed; right: 18px; bottom: 24px; z-index: 1000; width: 46px; height: 46px; border: 2px solid white; border-radius: 50%; background: #e83e8c; color: white; font-size: 25px; cursor: pointer; box-shadow: 0 3px 12px #0002; }
#vm-quiz-container [hidden] { display: none !important; }

/* Lesbarkeit und Tastaturbedienung – vollständige Hauptdatei, Version 2.9.97 */
[hidden] { display: none !important; }
.fb-skip-link { position: fixed; top: 8px; left: 12px; transform: translateY(-180%); z-index: 100000; background: #fff; color: #173656; padding: 14px 20px; border: 3px solid #173656; border-radius: 12px; font: 700 1rem/1.5 Arial, sans-serif; }
.fb-skip-link:focus { transform: none; }
body :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline: 3px solid #173656 !important; outline-offset: 4px !important; box-shadow: 0 0 0 6px #fff !important; }
#fb-main-content :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline: 3px solid #173656 !important; outline-offset: 4px !important; }
:where(a,button,input,select,textarea,summary,[tabindex]) { scroll-margin-top: var(--fb-focus-offset, 160px); }
#menuToggleBtn, #desktopBurgerBtn, #fancybox-close, #fancybox-left, #fancybox-right { min-width: 44px; min-height: 44px; }
@media (prefers-reduced-motion: reduce) {
 html { scroll-behavior: auto !important; }
 *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* Warenkorb: mobile Preisübersicht, Desktop Bestellübersicht. */
.fb-cart-summary-title-mobile { display: none; }
@media (max-width: 767px) {
 .fb-cart-summary-title-desktop { display: none; }
 .fb-cart-summary-title-mobile { display: inline; }
}

/* Menü: große Bedienfläche, ursprüngliches kompaktes Symbol. */
#menuToggleBtn, #desktopBurgerBtn {
 box-sizing: border-box; width: 44px; height: 44px;
 min-width: 44px; min-height: 44px;
 padding: 0; align-items: center; justify-content: center; gap: 5.5px;
}
#menuToggleBtn .burger-bar, #desktopBurgerBtn .burger-bar {
 width: 30px; height: 3px; min-height: 3px; flex: 0 0 3px;
}
:is(#menuToggleBtn, #desktopBurgerBtn).burger-transformed .burger-bar:nth-child(1) { transform: translateY(8.5px) rotate(45deg); }
:is(#menuToggleBtn, #desktopBurgerBtn).burger-transformed .burger-bar:nth-child(3) { transform: translateY(-8.5px) rotate(-45deg); }

/* Detail und Warenkorb: mobile Ausgangsabstände, Sticky-Ziel unverändert. */
@media (max-width: 767px) {
 .productdetails-view .fb-price-column { margin-top: 12px !important; }
 .fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method { padding-bottom: 48px !important; }
 .fb-cart-checkout .fb-cart-methods tr.fb-cart-shipment-method > td:last-child:not(:first-child) { bottom: 10px !important; }
}
/* Detail-Fancybox 1.x: Pfeile sofort sichtbar, vorhandene Navigation verwenden.
   Kein display-Override: Fancybox blendet nicht verfügbare Richtungen selbst aus. */
body.fb-product-page :is(#fancybox-left, #fancybox-right) {
 position: absolute !important; top: 50% !important; bottom: auto !important;
 width: 48px !important; height: 48px !important; min-width: 48px; min-height: 48px;
 transform: translateY(-50%) !important; z-index: 11001 !important;
 background: #b72967 !important; border: 2px solid #fff !important;
 border-radius: 50% !important; box-sizing: border-box !important;
 box-shadow: 0 3px 12px #17365630; opacity: 1 !important; visibility: visible !important;
}
body.fb-product-page #fancybox-left { left: 8px !important; right: auto !important; }
body.fb-product-page #fancybox-right { right: 8px !important; left: auto !important; }
body.fb-product-page :is(#fancybox-left-ico, #fancybox-right-ico) { display: none !important; }
body.fb-product-page :is(#fancybox-left, #fancybox-right)::after {
 content: '' !important; position: absolute; top: 50%; left: 50%;
 width: 12px; height: 12px; border-top: 3px solid #fff; border-right: 3px solid #fff;
}
body.fb-product-page #fancybox-left::after { transform: translate(-35%, -50%) rotate(-135deg); }
body.fb-product-page #fancybox-right::after { transform: translate(-65%, -50%) rotate(45deg); }
body.fb-product-page :is(#fancybox-left, #fancybox-right):hover { background: #982052 !important; }
@media (max-width: 767px) {
 body.fb-product-page :is(#fancybox-left, #fancybox-right) { width: 44px !important; height: 44px !important; min-width: 44px; min-height: 44px; }
 body.fb-product-page #fancybox-left { left: 4px !important; }
 body.fb-product-page #fancybox-right { right: 4px !important; }
}

/* Unterhalb des zweispaltigen Desktoplayouts scrollt die Bildspalte normal. */
@media (max-width: 1399px) {
 .productdetails-view .vm-product-container > .vm-product-media-container {
  position: relative !important; top: auto !important; bottom: auto !important;
  align-self: auto !important;
 }
 .productdetails-view .vm-product-media-container .fb-unikat-box {
  position: relative !important; top: auto !important; bottom: auto !important;
 }
}

/* Checkout-Ausweichseiten: dieselben Auswahlkarten wie im Warenkorb. */
.fb-checkout-step.fb-cart-checkout { display: block; width: 100%; max-width: 1100px; margin: 24px auto 38px; padding: clamp(18px,3vw,30px); box-sizing: border-box; border: 1px solid #e6dce7; border-radius: 24px; background: linear-gradient(120deg,#f3faff,#fff5f9); color: #173656; }
.fb-checkout-step .fb-cart-methods { display: block; width: 100%; border: 0; padding: 0; background: transparent; }
.fb-checkout-step h1 { margin: 0 0 22px; font-family: 'FuersBaby Friendly',Georgia,serif; font-style: italic; font-weight: 700; font-size: clamp(1.6rem,3vw,2.3rem); line-height: 1.3; }
.fb-checkout-step-intro { margin: 0 0 14px; line-height: 1.6; }
.fb-checkout-step .vm-payment-shipment-select { display: flex; flex-wrap: wrap; gap: 14px; margin: 0; padding: 0; min-width: 0; }
.fb-checkout-step :is(.vm-shipment-plugin-single,.vm-payment-plugin-single) { flex: 1 1 260px; padding: 18px; border: 1px solid #c9dfed; border-radius: 18px; background: #edf7ff; line-height: 1.6; overflow-wrap: anywhere; }
.fb-checkout-step :is(.vm-shipment-plugin-single,.vm-payment-plugin-single):has(input[type=radio]:checked) { border-color: #b72967; box-shadow: 0 0 0 2px #b7296720; background: linear-gradient(120deg,#e8f5ff,#fff2f8); }
.fb-checkout-step :is(.vm-shipment-plugin-single,.vm-payment-plugin-single) label { cursor: pointer; }
.fb-checkout-step input[type=radio] { accent-color: #b72967; width: 20px; height: 20px; margin-right: 8px; vertical-align: middle; }
.fb-checkout-step-actions { display: flex; justify-content: flex-start; margin-top: 24px; }
.fb-checkout-step-actions button, .fb-order-plugin-output :is(a.vm-button-correct,button.vm-button-correct,input.vm-button-correct) { display: inline-flex !important; align-items: center; justify-content: center; min-height: 48px; max-width: 100%; padding: 14px 24px !important; border: 0 !important; border-radius: 16px !important; background: #b72967 !important; color: #fff !important; text-decoration: none !important; font: 700 1rem/1.4 system-ui,sans-serif !important; text-align: center; white-space: normal; cursor: pointer; box-shadow: 0 6px 18px #b7296725; }
.fb-checkout-step-actions button:hover, .fb-order-plugin-output a.vm-button-correct:hover { background: #982052 !important; }
/* Bestellabschluss: Zahlungsplugin-Inhalt und Formulare bleiben unverändert. */
.fb-order-complete { max-width: 1100px; width: 100%; margin: 24px auto 42px; color: #173656; box-sizing: border-box; }
.fb-order-hero { display: grid; grid-template-columns: minmax(210px,34%) minmax(0,1fr); align-items: center; gap: 24px; padding: clamp(18px,3vw,32px); border: 1px solid #edd6e5; border-radius: 26px; background: linear-gradient(120deg,#eaf7ff,#fff2f8); margin-bottom: 24px; }
.fb-order-hero picture, .fb-order-hero img { display: block; width: 100%; max-width: 100%; height: auto; }
.fb-order-hero h1 { font: italic 700 clamp(1.8rem,3.3vw,2.8rem)/1.25 'FuersBaby Friendly',Georgia,serif; margin: 8px 0 16px; }
.fb-order-hero p { margin: 0; line-height: 1.65; }
.fb-order-eyebrow { color: #8b3a5c; font-weight: 700; }
.fb-order-plugin-output { padding: 20px; margin: 0 0 22px; border: 1px solid #d6e7f2; border-radius: 20px; background: #f5fbff; overflow-wrap: anywhere; }
.fb-order-plugin-output:empty { display: none; }
.fb-order-plugin-output a.vm-button-correct { margin-top: 14px; }
.fb-order-has-summary :is(.post_payment_order_number,.post_payment_order_total,.post_payment_payment_name) { display: none; }
.fb-order-card { padding: clamp(18px,2.5vw,26px); border: 1px solid #e0e7ed; border-radius: 20px; background: #fff; margin: 0 0 20px; min-width: 0; box-sizing: border-box; }
.fb-order-card h2 { font: 700 clamp(1.2rem,2vw,1.55rem)/1.4 system-ui,sans-serif; margin: 0 0 18px; }
.fb-order-card h3 { font: 700 1rem/1.5 system-ui,sans-serif; margin: 0 0 8px; }
.fb-order-card dl { margin: 0; }
.fb-order-card dl > div { display: flex; justify-content: space-between; gap: 20px; padding: 12px 0; border-bottom: 1px solid #edf0f4; }
.fb-order-card dt { font-weight: 600; }
.fb-order-card dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.fb-order-address-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.fb-order-card address { font-style: normal; line-height: 1.7; overflow-wrap: anywhere; }
.fb-order-items { list-style: none; margin: 0; padding: 0; }
.fb-order-items li { display: flex; justify-content: space-between; gap: 22px; border-top: 1px solid #e3eaf0; padding: 18px 0; }
.fb-order-items li:first-child { border-top: 0; padding-top: 0; }
.fb-order-items li > div { min-width: 0; overflow-wrap: anywhere; }
.fb-order-items li > strong { white-space: nowrap; }
.fb-order-items p { margin: 4px 0 0; line-height: 1.6; }
.fb-order-attributes { font-size: .9rem; color: #44596b; }
.fb-order-card .fb-order-grand-total { background: #fff0f6; border: 0; border-radius: 14px; padding: 16px; margin-top: 14px; font-weight: 700; font-size: 1.15rem; }
.fb-order-next-note { margin: 22px 0 0; line-height: 1.6; color: #44596b; }
@media (max-width: 767px) {
 .fb-checkout-step :is(.vm-shipment-plugin-single,.vm-payment-plugin-single) { flex-basis: 100%; }
 .fb-checkout-step-actions button { width: 100%; }
 .fb-order-hero { grid-template-columns: 1fr; text-align: center; gap: 14px; }
 .fb-order-hero picture { width: min(300px,100%); margin: auto; }
 .fb-order-address-grid { grid-template-columns: 1fr; gap: 0; }
 .fb-order-card dl > div { flex-wrap: wrap; gap: 6px 14px; }
 .fb-order-card dd { margin-left: auto; }
 .fb-order-items li { gap: 12px; }
 .fb-order-plugin-output a.vm-button-correct { width: 100%; box-sizing: border-box; }
}

/* Abschluss v8: Produktbild, Steuerhinweis und Bestelllink unten. */
.fb-order-items li { align-items: flex-start; justify-content: flex-start; }
.fb-order-items .fb-order-product-image { flex: 0 0 88px; width: 88px; height: 88px; object-fit: contain; border: 1px solid #dce7ef; border-radius: 14px; background: #fff; box-sizing: border-box; }
.fb-order-items .fb-order-item-copy { flex: 1 1 0; }
.fb-order-tax-note { font-size: .85rem; line-height: 1.6; color: #44596b; margin: 16px 0 0; }
.fb-order-bottom-action { text-align: center; margin-top: 22px; }
.fb-order-bottom-action a.vm-button-correct { margin-top: 0; }
@media (max-width: 767px) {
 .fb-order-items .fb-order-product-image { width: 64px; height: 64px; flex-basis: 64px; }
 .fb-order-items li { flex-wrap: wrap; }
 .fb-order-items li > strong { margin-left: auto; }
 .fb-order-items .fb-order-item-copy { min-width: 120px; }
}

/* Bestellabschluss v9: größere Artikelbilder, Preise nur in der Preisübersicht. */
.fb-order-items .fb-order-product-image { width: 108px; height: 108px; flex-basis: 108px; }
@media (max-width: 767px) {
 .fb-order-items .fb-order-product-image { width: 80px; height: 80px; flex-basis: 80px; }
}

/* Mobile Startseite: Herz neben dem Einleitungstext, außerhalb der Headline. */
@media (max-width: 767px) {
 .is-homepage .fb-home-hero::before { content: none; }
 .is-homepage .fb-home-hero-eyebrow { position: relative; box-sizing: border-box; max-width: 100%; padding-right: 36px; line-height: 1.5; }
 .is-homepage .fb-home-hero-eyebrow::after {
  content: '♡'; position: absolute; right: 0; top: -.2em;
  color: #ee91b5; font: 32px/1 Georgia,serif;
  transform: rotate(-15deg); pointer-events: none;
 }
}

/* Geschenkefinder: bisherige Modulgestaltung, zentral zusammengeführt */

.fb-quiz-container {
    background: linear-gradient(135deg, rgba(93, 173, 226, 0.06) 0%, rgba(252, 228, 236, 0.3) 100%) !important;
    border: 1px solid rgba(93, 173, 226, 0.15) !important;
    border-radius: 24px !important;
    padding: 40px 20px !important;
    box-shadow: 0 10px 30px rgba(168, 218, 220, 0.12) !important;
    text-align: center !important;
    max-width: 900px !important;
    margin: 0 auto 40px auto !important;
}

.fb-quiz-header h3 {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: #2c3e50 !important;
    margin-bottom: 15px !important;
    letter-spacing: -0.5px !important;
}

.fb-quiz-intro-text {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1.05rem !important;
    color: #4a5568 !important;
    line-height: 1.6 !important;
    margin-bottom: 35px !important;
}

.fb-quiz-question-text {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1.5rem !important;
    color: #5dade2 !important;
    font-weight: 700 !important;
    margin-bottom: 25px !important;
}

.fb-quiz-btn-group {
    display: flex !important;
    justify-content: center !important;
    gap: 20px !important;
    flex-wrap: wrap !important;
}

.fb-quiz-btn {
    background: #ffffff !important;
    border: 2px solid rgba(93, 173, 226, 0.2) !important;
    border-radius: 16px !important;
    padding: 20px 30px !important;
    min-width: 180px !important;
    flex: 1 !important;
    max-width: 250px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.03) !important;
}

.fb-quiz-btn:hover {
    border-color: #5dade2 !important;
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 25px rgba(93, 173, 226, 0.15) !important;
}

.fb-quiz-btn-icon {
    font-size: 2.8rem !important;
    line-height: 1 !important;
    display: block !important;
}

.fb-quiz-btn-text {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #2c3e50 !important;
    display: block !important;
}

.fb-quiz-divider {
    border: 0 !important;
    height: 1px !important;
    background: dashed 1px rgba(93, 173, 226, 0.3) !important;
    margin: 40px 0 30px 0 !important;
}

.fb-quiz-result-title {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1.35rem !important;
    color: #5dade2 !important;
    font-weight: 800 !important;
    margin-bottom: 30px !important;
    text-align: center !important;
}

/* --- KACHEL-LAYOUT (Formstabil & mit perfekten Abständen) --- */
.fb-products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 25px;
    padding: 10px;
    text-align: left;
    align-items: stretch;
}

.fb-product-card-link {
    text-decoration: none !important;
    color: inherit !important;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.fb-product-card {
    background: #fff;
    border-radius: 16px;
    padding: 15px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 15px rgba(0,0,0,0.04);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid rgba(0,0,0,0.03);
}

.fb-product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(93, 173, 226, 0.15);
}

.fb-product-image {
    width: 100%;
    height: 180px;
    min-height: 180px;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 15px;
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.fb-product-image img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.fb-product-info {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.fb-product-title {
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #2c3e50 !important;
    margin: 0 0 15px 0 !important;
    line-height: 1.4 !important;
}

.fb-product-price-box {
    margin-top: auto;
    text-align: right;
    border-top: 1px solid rgba(0,0,0,0.05);
    padding-top: 12px;
}

.fb-price-prefix {
    font-size: 0.85rem;
    color: #7f8c8d;
    margin-right: 5px;
}

.fb-price-value {
    font-size: 1.25rem;
    font-weight: 800;
    color: #e83e8c;
}
#vm-quiz-container .fb-quiz-more {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    width: auto !important;
    max-width: 100% !important;
    min-height: 54px !important;
    margin: 28px auto 0 !important;
    padding: 14px 26px !important;
    border: 1px dashed #ef9dbd !important;
    border-radius: 999px !important;
    background: linear-gradient(110deg, #ffe5ef 0%, #fff3f7 50%, #e7f5ff 100%) !important;
    color: #a91f58 !important;
    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    white-space: normal !important;
    box-shadow: 0 5px 14px rgba(213, 74, 129, .12) !important;
    cursor: pointer !important;
    transition: box-shadow .18s ease, border-color .18s ease !important;
}
#vm-quiz-container .fb-quiz-more::before { content: '♡'; font-size: 23px; line-height: 1; }
#vm-quiz-container .fb-quiz-more::after { content: '↓'; font-size: 19px; line-height: 1; }
#vm-quiz-container .fb-quiz-more:hover { border-color: #d9367c !important; box-shadow: 0 7px 18px rgba(213, 74, 129, .2) !important; }
#vm-quiz-container .fb-quiz-more:focus-visible { outline: 3px solid #5dade2 !important; outline-offset: 4px !important; }
#vm-quiz-container .fb-quiz-more:disabled { opacity: .65; cursor: wait !important; }
@media (max-width: 767px) {
    #vm-quiz-container .fb-quiz-more { width: 100% !important; padding: 13px 15px !important; gap: 8px !important; }
}
@media (prefers-reduced-motion: reduce) { #vm-quiz-container .fb-quiz-more { transition: none !important; } }
#vm-quiz-container .fb-quiz-back-top { position: fixed; right: 18px; bottom: 24px; z-index: 1000; width: 46px; height: 46px; border: 2px solid white; border-radius: 50%; background: #e83e8c; color: white; font-size: 25px; cursor: pointer; box-shadow: 0 3px 12px #0002; }
#vm-quiz-container [hidden] { display: none !important; }

/* Geschenkefinder 6.6: Verlauf und optionale Hinweise */
.gf-question-path{padding:16px;border:1px solid #b9dfea;border-radius:18px;background:#f0f9ff;margin:0 0 22px;text-align:left;color:#234355}
.gf-question-path[hidden],.gf-question-hint[hidden]{display:none!important}
.gf-question-path>strong{display:block;margin-bottom:10px}
.gf-question-path ol{padding-left:24px;margin:12px 0}
.gf-question-path button{background:#fff;border:1px solid #a55b79;border-radius:12px;color:#234355;padding:10px 14px;min-height:44px;cursor:pointer;text-align:left;max-width:100%;overflow-wrap:anywhere}
.gf-question-path li{margin:8px 0}.gf-question-path li button span,.gf-question-path li button small{display:block}.gf-question-path li button small{color:#675260;margin-top:4px}
.gf-question-path button:focus-visible,.fb-quiz-btn:focus-visible{outline:3px solid #234355;outline-offset:3px}
.gf-answer-copy{display:flex;flex-direction:column;gap:6px}.gf-answer-hint,.gf-question-hint{font:400 .9rem/1.5 system-ui,sans-serif;color:#465568;white-space:pre-line}.gf-question-hint{margin:0 auto 20px;max-width:650px}

/* Geschenkefinder 6.6.1: kompakter, klar lesbarer Weg zum Geschenk */
#vm-quiz-container .gf-question-path{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:18px 20px;margin:0 0 26px;border:1px solid #bcddea;border-radius:22px;background:linear-gradient(120deg,#f0f9ff,#fff3f8);box-shadow:0 6px 18px #29485c0a;text-align:left}
#vm-quiz-container .gf-question-path>strong{flex:1 1 180px;margin:0;color:#22465c;font:700 1rem/1.4 system-ui,sans-serif}
#vm-quiz-container .gf-question-path button{appearance:none;font:600 .9rem/1.4 system-ui,sans-serif;border:1px solid #baddec;background:#fff;border-radius:16px;padding:11px 16px;box-shadow:0 3px 9px #29485c09;transition:background .18s,border-color .18s;color:#234355;white-space:normal}
#vm-quiz-container .gf-question-path .gf-path-back{background:#fce9f2;border-color:#efc1d5;color:#923653;border-radius:999px}
#vm-quiz-container .gf-question-path .gf-path-reset{background:transparent;box-shadow:none;color:#466276;border-color:#c6dce7;border-radius:999px;font-size:.85rem}
#vm-quiz-container .gf-question-path ol{display:flex;flex-wrap:wrap;gap:10px;flex:0 0 100%;list-style:none;padding:0;margin:0;counter-reset:gf-step}
#vm-quiz-container .gf-question-path li{flex:1 1 180px;min-width:0;margin:0;counter-increment:gf-step}
#vm-quiz-container .gf-question-path li button{width:100%;height:100%;position:relative;padding-left:43px}
#vm-quiz-container .gf-question-path li button::before{content:counter(gf-step);position:absolute;top:13px;left:12px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#e7f4fb;color:#27566d;font-size:.8rem}
#vm-quiz-container .gf-question-path li button span{font-size:.82rem;font-weight:500;color:#526676}
#vm-quiz-container .gf-question-path li button small{display:block;margin-top:5px;font-size:.95rem;font-weight:700;color:#943655;line-height:1.4}
#vm-quiz-container .gf-question-path button:hover{background:#fff0f6;border-color:#d88aa9}
#vm-quiz-container .fb-quiz-btn{border-radius:20px!important;border:1px solid #b9ddea!important;box-shadow:0 5px 15px #2443590a!important;min-height:84px;padding:18px 20px!important}
#vm-quiz-container .fb-quiz-btn:hover{background:#fff0f7!important;border-color:#e7a8c3!important}
#vm-quiz-container .gf-answer-copy{gap:8px}.gf-retry[hidden]{display:none!important}
@media(max-width:767px){#vm-quiz-container .gf-question-path{padding:14px;gap:10px}#vm-quiz-container .gf-question-path>strong{flex-basis:100%}#vm-quiz-container .gf-question-path li{flex-basis:100%}#vm-quiz-container .gf-question-path .gf-path-back{flex:1}#vm-quiz-container .gf-question-path .gf-path-reset{margin-left:auto}}
/* Popup: unabhängig vom älteren oder neueren Override-Markup */
:is(.fb-popup-related,#fancybox-content .product-related-products) .product-field-display{display:block!important;box-sizing:border-box;padding:14px;border:1px solid #eed6e3;border-radius:19px;background:#fff;box-shadow:0 6px 16px #29485c0a}
:is(.fb-popup-related,#fancybox-content .product-related-products) .product-container{border:0;padding:0;box-shadow:none}
:is(.fb-popup-related,#fancybox-content .product-related-products) .product-field-display a{display:block;color:#23465e!important;font:700 1rem/1.45 system-ui,sans-serif!important;text-decoration:none!important;overflow-wrap:anywhere}
:is(.fb-popup-related,#fancybox-content .product-related-products) .product-field-display img{display:block;width:100%!important;max-width:180px!important;height:170px!important;object-fit:contain;margin:0 auto 12px!important;border-radius:14px}
:is(.fb-popup-related,#fancybox-content .product-related-products)>.product-field{flex-basis:220px;float:none!important}
@media(max-width:767px){:is(.fb-popup-related,#fancybox-content .product-related-products){gap:12px;padding:14px}:is(.fb-popup-related,#fancybox-content .product-related-products)>.product-field{flex:1 1 150px;max-width:220px}:is(.fb-popup-related,#fancybox-content .product-related-products) .product-field-display img{height:140px!important}}

/* Geschenkefinder 6.6.2: weniger Leerraum und aufklappbarer Verlauf */
body:not(.is-homepage) .com-content-article:has(#vm-quiz-container){padding:14px!important;margin-top:10px!important}
body:not(.is-homepage) .com-content-article:has(#vm-quiz-container) .com-content-article__body{padding-top:0!important;margin-top:0!important}
body:not(.is-homepage) #vm-quiz-container.fb-quiz-container{padding:18px 20px!important;margin-top:0!important}
#vm-quiz-container .fb-quiz-header h3{margin-top:0!important;margin-bottom:16px!important}
#vm-quiz-container .gf-question-path{gap:12px;padding:14px 16px;margin-bottom:20px}
#vm-quiz-container .gf-path-toggle{margin-right:auto;background:#eaf6ff!important;border-color:#b4dbea!important;color:#234355!important;border-radius:999px!important}
#vm-quiz-container .gf-path-toggle::after{content:'⌄';display:inline-block;margin-left:12px;font-size:1.1rem;line-height:1}
#vm-quiz-container .gf-path-toggle[aria-expanded="true"]::after{transform:rotate(180deg)}
#vm-quiz-container .gf-path-back{margin-left:auto}
#vm-quiz-container .gf-path-panel{flex:0 0 100%;min-width:0;display:flex;flex-direction:column;gap:12px}
#vm-quiz-container .gf-path-panel[hidden]{display:none!important}
#vm-quiz-container .gf-path-panel .gf-path-reset{align-self:flex-start}
#vm-quiz-container .fb-quiz-btn{justify-content:center!important;align-items:center!important;text-align:center!important}
#vm-quiz-container .gf-answer-copy{justify-content:center;align-items:center;text-align:center;width:100%}
#vm-quiz-container .gf-question-path li button{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:90px}
#vm-quiz-container .gf-question-path li button span,#vm-quiz-container .gf-question-path li button small{text-align:center}
@media(max-width:767px){
 body:not(.is-homepage) .com-content-article:has(#vm-quiz-container){padding:10px!important;margin-top:6px!important}
 body:not(.is-homepage) #vm-quiz-container.fb-quiz-container{padding:14px 12px!important}
 #vm-quiz-container .fb-quiz-header h3{font-size:clamp(1.35rem,6vw,1.65rem)!important;line-height:1.3!important}
 #vm-quiz-container .gf-question-path{padding:12px;gap:9px}
 #vm-quiz-container .gf-question-path>.gf-path-toggle,#vm-quiz-container .gf-question-path>.gf-path-back{flex:0 0 100%;width:100%;margin:0;text-align:center}
 #vm-quiz-container .gf-path-panel .gf-path-reset{margin-left:0}
}
