/* =========================================================
   UBD Modular Bonito 1.9.11
   Contraste del menú, descripción completa y precio ETS legible.
   Capa visual: no sustituye inputs, precios, AJAX ni eventos nativos.
   ========================================================= */

#ubd-modular-bonito .ubd-delivery-pill-duplicate-v1911,
#ubd-modular-bonito .ubd-delivery-pill-duplicate-v196 {
    display: none !important;
}

/* ---------- Asistente junto a “Ordenar por” ---------- */
html.ubd-category-ready body#category .products-selection,
html.ubd-category-ready body#category .products-selection.ubd-toolbar-sort-only {
    justify-content: space-between !important;
    gap: 10px !important;
}

html.ubd-category-ready body#category .ubd-gift-assistant-toolbar-v1911,
html.ubd-category-ready body#category .ubd-gift-assistant-toolbar-v196 {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-height: 43px !important;
    margin: 0 !important;
    padding: 9px 15px !important;
    border: 1px solid #102b31 !important;
    border-radius: 999px !important;
    background: #18343a !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-shadow: 0 10px 24px rgba(16, 43, 49, .22) !important;
}

html.ubd-category-ready body#category :is(.ubd-gift-assistant-toolbar-v1911, .ubd-gift-assistant-toolbar-v196) svg {
    width: 21px !important;
    height: 21px !important;
    flex: 0 0 21px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

html.ubd-category-ready body#category .products-selection.ubd-toolbar-sort-only > .ubd-sort-column {
    width: min(58%, 360px) !important;
    margin-left: auto !important;
}

/* ---------- Drawer del menú: sin encimarse con la barra inferior ---------- */
.ubd-mod-menu-backdrop,
.ubd-catalog-shell-backdrop {
    z-index: 2147482000 !important;
}

.ubd-mod-menu-sheet,
.ubd-catalog-shell-menu {
    position: fixed !important;
    top: auto !important;
    right: max(8px, env(safe-area-inset-right)) !important;
    bottom: max(8px, env(safe-area-inset-bottom)) !important;
    left: max(8px, env(safe-area-inset-left)) !important;
    z-index: 2147482001 !important;
    max-height: calc(100dvh - 16px) !important;
    padding: 16px 16px calc(20px + env(safe-area-inset-bottom)) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
    border: 1px solid rgba(24, 51, 58, .10) !important;
    background: rgba(255, 255, 255, .99) !important;
    box-shadow: 0 26px 70px rgba(13, 35, 40, .28) !important;
}

.ubd-mod-menu-head,
.ubd-catalog-shell-menu-head {
    position: sticky !important;
    top: -16px !important;
    z-index: 3 !important;
    margin: -4px -4px 10px !important;
    padding: 8px 4px 10px !important;
    background: rgba(255,255,255,.97) !important;
    backdrop-filter: blur(12px) !important;
}

.ubd-mod-menu-grid,
.ubd-catalog-shell-menu-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 2px !important;
    overflow: visible !important;
}

.ubd-mod-menu-grid > a,
.ubd-catalog-shell-menu-grid > a,
.ubd-mod-menu-grid > a:nth-child(3n),
.ubd-catalog-shell-menu-grid > a:nth-child(3n),
.ubd-catalog-shell-menu-grid > a:last-child {
    grid-column: auto !important;
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 11px !important;
    min-width: 0 !important;
    min-height: 82px !important;
    padding: 13px !important;
    overflow: visible !important;
    border: 1px solid rgba(24, 51, 58, .08) !important;
    border-radius: 20px !important;
    color: #142f35 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    text-align: left !important;
    text-decoration: none !important;
    box-shadow: 0 9px 20px rgba(24, 51, 58, .07) !important;
}

.ubd-mod-menu-grid > a:nth-child(8n + 1),
.ubd-catalog-shell-menu-grid > a:nth-child(8n + 1) { background: #ffe4bd !important; }
.ubd-mod-menu-grid > a:nth-child(8n + 2),
.ubd-catalog-shell-menu-grid > a:nth-child(8n + 2) { background: #dff1d4 !important; }
.ubd-mod-menu-grid > a:nth-child(8n + 3),
.ubd-catalog-shell-menu-grid > a:nth-child(8n + 3) { background: #fbded3 !important; }
.ubd-mod-menu-grid > a:nth-child(8n + 4),
.ubd-catalog-shell-menu-grid > a:nth-child(8n + 4) { background: #d8eeeb !important; }
.ubd-mod-menu-grid > a:nth-child(8n + 5),
.ubd-catalog-shell-menu-grid > a:nth-child(8n + 5) { background: #ffecad !important; }
.ubd-mod-menu-grid > a:nth-child(8n + 6),
.ubd-catalog-shell-menu-grid > a:nth-child(8n + 6) { background: #eadcf5 !important; }
.ubd-mod-menu-grid > a:nth-child(8n + 7),
.ubd-catalog-shell-menu-grid > a:nth-child(8n + 7) { background: #dbeaff !important; }
.ubd-mod-menu-grid > a:nth-child(8n + 8),
.ubd-catalog-shell-menu-grid > a:nth-child(8n + 8) { background: #dff1e2 !important; }

.ubd-mod-menu-grid > a strong,
.ubd-catalog-shell-menu-grid > a strong {
    color: #142f35 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
}

.ubd-mod-menu-grid > a small,
.ubd-catalog-shell-menu-grid > a small {
    display: block !important;
    overflow: visible !important;
    color: #4c656b !important;
    font-size: 10px !important;
    font-weight: 750 !important;
    line-height: 1.28 !important;
    white-space: normal !important;
    text-overflow: clip !important;
}

.ubd-mod-menu-grid .ubd-menu-card-copy,
.ubd-catalog-shell-menu-grid .ubd-menu-card-copy,
.ubd-mod-menu-grid > a > span:last-child {
    min-width: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
}

.ubd-mod-menu-grid .ubd-menu-card-icon,
.ubd-catalog-shell-menu-grid .ubd-menu-card-icon,
.ubd-mod-menu-grid .ubd-mod-menu-icon {
    width: 44px !important;
    height: 44px !important;
    color: #142f35 !important;
    background: rgba(255,255,255,.72) !important;
}

.ubd-mod-menu-grid > a.ubd-gift-assistant-menu-v1911,
.ubd-catalog-shell-menu-grid > a.ubd-gift-assistant-menu-v1911,
.ubd-mod-menu-grid > a.ubd-gift-assistant-menu-v196,
.ubd-catalog-shell-menu-grid > a.ubd-gift-assistant-menu-v196 {
    grid-column: 1 / -1 !important;
    grid-template-columns: 52px minmax(0, 1fr) auto !important;
    min-height: 88px !important;
    border-color: #0c252a !important;
    background: linear-gradient(135deg, #1d4249, #102d33 58%, #081f24) !important;
    color: #fff !important;
    box-shadow: 0 16px 34px rgba(8, 31, 36, .30) !important;
}

:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > :is(a.ubd-gift-assistant-menu-v1911, a.ubd-gift-assistant-menu-v196) :is(strong, small, b) {
    color: #fff !important;
}

:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > :is(a.ubd-gift-assistant-menu-v1911, a.ubd-gift-assistant-menu-v196) strong {
    font-size: 16px !important;
    font-weight: 950 !important;
}

:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > :is(a.ubd-gift-assistant-menu-v1911, a.ubd-gift-assistant-menu-v196) small {
    color: rgba(255,255,255,.86) !important;
    font-weight: 700 !important;
}

:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > :is(a.ubd-gift-assistant-menu-v1911, a.ubd-gift-assistant-menu-v196) .ubd-menu-card-icon {
    width: 52px !important;
    height: 52px !important;
    color: #fff !important;
    background: rgba(255,255,255,.16) !important;
}

:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > :is(a.ubd-gift-assistant-menu-v1911, a.ubd-gift-assistant-menu-v196) > b {
    font-size: 30px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
}

body.ubd-menu-drawer-open-v1911 :is(.ubd-mod-bottom-nav, .ubd-catalog-bottom-nav, .ubd-preview-fab, .ubd-catalog-preview-toggle) {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(18px) !important;
}

/* La frase comercial corta continúa disponible en modo experto, pero en
   modo sencillo se sustituye visualmente por la descripción larga real. */
html.ubd-product-ready.ubd-catalog-simple body#product .tvproduct-page-decs {
    display: none !important;
}

/* ---------- Descripción larga correcta, fuera de PayPal ---------- */
html.ubd-product-ready.ubd-catalog-simple body#product #ubd-simple-product-description.ubd-simple-product-description-v1911 {
    display: block !important;
    visibility: visible !important;
    width: 100% !important;
    margin: 16px 0 0 !important;
    padding: clamp(15px, 3.8vw, 21px) !important;
    overflow: visible !important;
    border: 1px solid rgba(24, 51, 58, .10) !important;
    border-radius: clamp(18px, 4vw, 24px) !important;
    background: linear-gradient(145deg, #fff 0%, #fffaf4 100%) !important;
    color: #20383d !important;
    box-shadow: 0 14px 34px rgba(24, 51, 58, .08) !important;
    opacity: 1 !important;
}

html.ubd-product-ready.ubd-catalog-simple body#product #ubd-simple-product-description.ubd-simple-product-description-v1911 > summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 0 0 13px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid rgba(24, 51, 58, .10) !important;
    color: #18333a !important;
    font-size: clamp(17px, 4.5vw, 21px) !important;
    font-weight: 950 !important;
    line-height: 1.15 !important;
    letter-spacing: -.02em !important;
    list-style: none !important;
    cursor: default !important;
    pointer-events: none !important;
}

html.ubd-product-ready.ubd-catalog-simple body#product #ubd-simple-product-description.ubd-simple-product-description-v1911 > summary::-webkit-details-marker {
    display: none !important;
}

html.ubd-product-ready.ubd-catalog-simple body#product #ubd-simple-product-description.ubd-simple-product-description-v1911 > summary span {
    color: #e7923c !important;
}

html.ubd-product-ready.ubd-catalog-simple body#product .ubd-simple-product-description-content-v1911 {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    color: #3f575d !important;
    font-size: clamp(14px, 3.7vw, 16px) !important;
    font-weight: 650 !important;
    line-height: 1.55 !important;
    overflow-wrap: anywhere !important;
}

html.ubd-product-ready.ubd-catalog-simple body#product .ubd-simple-product-description-content-v1911 p {
    margin: 0 0 10px !important;
}

html.ubd-product-ready.ubd-catalog-simple body#product :is(.ubd-simple-product-description-content-v1911 ul, .ubd-simple-product-description-content-v1911 ol) {
    display: grid !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html.ubd-product-ready.ubd-catalog-simple body#product .ubd-simple-product-description-content-v1911 li {
    position: relative !important;
    margin: 0 !important;
    padding: 9px 11px 9px 36px !important;
    border: 1px solid rgba(24, 51, 58, .07) !important;
    border-radius: 13px !important;
    background: rgba(255,255,255,.78) !important;
    color: #29454b !important;
    font-weight: 750 !important;
}

html.ubd-product-ready.ubd-catalog-simple body#product .ubd-simple-product-description-content-v1911 li::before {
    content: '✓' !important;
    position: absolute !important;
    top: 50% !important;
    left: 11px !important;
    display: grid !important;
    place-items: center !important;
    width: 17px !important;
    height: 17px !important;
    border-radius: 50% !important;
    background: #e7923c !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 950 !important;
    transform: translateY(-50%) !important;
}

/* ---------- ETS Extra Options ---------- */
html.ubd-product-ready body#product .block-product-attribute-custom .from-group-option,
html.ubd-product-ready body#product .block-product-attribute-custom .ubd-eto-modular-track,
html.ubd-product-ready body#product .block-product-attribute-custom .ubd-eto-modular-track > :is(.radio, .checkbox),
html.ubd-product-ready body#product .block-product-attribute-custom .ubd-eto-modular-track > :is(.radio, .checkbox) > label,
html.ubd-product-ready body#product .block-product-attribute-custom .ubd-eto-modular-track > :is(.radio, .checkbox) > label.control-label > div:first-child {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

html.ubd-product-ready body#product .block-product-attribute-custom .ubd-eto-modular-track > :is(.radio, .checkbox) {
    min-height: 196px !important;
    padding-bottom: 13px !important;
}

html.ubd-product-ready body#product .block-product-attribute-custom .attr-text {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    text-align: center !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
    text-wrap: balance !important;
}

html.ubd-product-ready body#product .block-product-attribute-custom :is(.product-discount, .attribute_price_save, .attr-text > .price, .ubd-ets-price-clean-v1911) {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 7px 0 0 !important;
    overflow: visible !important;
    color: #fff !important;
    font-size: clamp(19px, 4.8vw, 24px) !important;
    font-weight: 950 !important;
    line-height: 1.05 !important;
    letter-spacing: -.025em !important;
    white-space: nowrap !important;
    text-align: center !important;
    text-overflow: clip !important;
    opacity: 1 !important;
}

html.ubd-product-ready body#product .block-product-attribute-custom :is(.product-discount, .attribute_price_save, .attr-text > .price, .ubd-ets-price-clean-v1911) > :is(strong, span) {
    display: inline !important;
    width: auto !important;
    margin: 0 !important;
    color: inherit !important;
    font: inherit !important;
    line-height: inherit !important;
    white-space: inherit !important;
}

@media (max-width: 520px) {
    html.ubd-category-ready body#category .products-selection,
    html.ubd-category-ready body#category .products-selection.ubd-toolbar-sort-only {
        display: grid !important;
        grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
        align-items: stretch !important;
        padding: 7px !important;
        gap: 7px !important;
    }

    html.ubd-category-ready body#category :is(.ubd-gift-assistant-toolbar-v1911, .ubd-gift-assistant-toolbar-v196) {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 44px !important;
        padding: 8px 9px !important;
        font-size: 10.5px !important;
        white-space: normal !important;
        text-align: center !important;
    }

    html.ubd-category-ready body#category .products-selection.ubd-toolbar-sort-only > .ubd-sort-column {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    .ubd-mod-menu-grid,
    .ubd-catalog-shell-menu-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    .ubd-mod-menu-grid > a,
    .ubd-catalog-shell-menu-grid > a,
    .ubd-mod-menu-grid > a:nth-child(3n),
    .ubd-catalog-shell-menu-grid > a:nth-child(3n),
    .ubd-catalog-shell-menu-grid > a:last-child,
    .ubd-mod-menu-grid > a.ubd-gift-assistant-menu-v1911,
    .ubd-catalog-shell-menu-grid > a.ubd-gift-assistant-menu-v1911,
    .ubd-mod-menu-grid > a.ubd-gift-assistant-menu-v196,
    .ubd-catalog-shell-menu-grid > a.ubd-gift-assistant-menu-v196 {
        grid-column: 1 !important;
        min-height: 74px !important;
    }

    .ubd-mod-menu-grid > a.ubd-gift-assistant-menu-v1911,
    .ubd-catalog-shell-menu-grid > a.ubd-gift-assistant-menu-v1911,
    .ubd-mod-menu-grid > a.ubd-gift-assistant-menu-v196,
    .ubd-catalog-shell-menu-grid > a.ubd-gift-assistant-menu-v196 {
        grid-template-columns: 48px minmax(0, 1fr) auto !important;
        min-height: 82px !important;
    }

    html.ubd-product-ready body#product .block-product-attribute-custom .from-group-option > .ubd-eto-modular-track,
    html.ubd-product-ready body#product .block-product-attribute-custom .ubd-eto-modular-track {
        grid-template-rows: repeat(2, minmax(196px, max-content)) !important;
        grid-auto-columns: clamp(146px, 42vw, 180px) !important;
        align-items: stretch !important;
    }

    html.ubd-product-ready body#product .block-product-attribute-custom .ubd-eto-modular-track > :is(.radio, .checkbox) {
        min-height: 196px !important;
        padding: 9px 8px 12px !important;
    }

    html.ubd-product-ready body#product .block-product-attribute-custom .attr-text {
        font-size: 10.5px !important;
        line-height: 1.22 !important;
    }

    html.ubd-product-ready body#product .block-product-attribute-custom :is(.product-discount, .attribute_price_save, .attr-text > .price, .ubd-ets-price-clean-v1911) {
        font-size: 19px !important;
    }
}

@media (max-width: 350px) {
    .ubd-mod-menu-sheet,
    .ubd-catalog-shell-menu {
        padding-right: 11px !important;
        padding-left: 11px !important;
    }

    .ubd-mod-menu-grid > a,
    .ubd-catalog-shell-menu-grid > a {
        grid-template-columns: 40px minmax(0, 1fr) !important;
        padding: 11px !important;
    }
}


/* =========================================================
   1.9.11 · Fotos siempre dentro de su tarjeta o galería
   ========================================================= */
html.ubd-product-ready body#product .block-product-attribute-custom .ubd-eto-modular-track > :is(.radio, .checkbox) > label.control-label > div:first-child {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-inline: auto !important;
    overflow: hidden !important;
}

html.ubd-product-ready body#product .block-product-attribute-custom img.ets_zoom_img {
    position: static !important;
    display: block !important;
    flex: 0 1 auto !important;
    width: clamp(70px, 46%, 98px) !important;
    min-width: 0 !important;
    max-width: min(100%, 98px) !important;
    height: auto !important;
    max-height: 98px !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 auto 7px !important;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
}

html.ubd-product-ready body#product :is(.tv-product-page-image, .tv-product-page-image > .theiaStickySidebar, .product-cover, .product-cover picture, .product-cover a) {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

html.ubd-product-ready body#product :is(.product-cover img, .product-cover .js-qv-product-cover) {
    position: static !important;
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: min(74dvh, 760px) !important;
    margin-inline: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
    box-sizing: border-box !important;
}

#ubd-modular-bonito img,
.ubd-mod-menu-sheet img,
.ubd-catalog-shell-menu img,
[id^="ubd-"][role="dialog"] img,
[class*="ubd-"][role="dialog"] img {
    max-width: 100% !important;
    height: auto !important;
    margin-inline: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
    box-sizing: border-box !important;
}

/* PayPal sigue visible; la descripción es un bloque hermano colocado después. */
html.ubd-product-ready.ubd-catalog-simple body#product :is(
    #ps_checkout-payment-method-logo-block-container,
    .ps_checkout-payment-method-logo-block-container,
    [id*="payment-method-logo-block"],
    [class*="payment-method-logo-block"]
) {
    display: block !important;
    visibility: visible !important;
    max-height: none !important;
    overflow: visible !important;
    opacity: 1 !important;
}

/* =========================================================
   1.9.11 · Pantalla inicial moderna tipo app
   Se carga al final para vencer la regla antigua que la ocultaba.
   ========================================================= */
.ubd-boot-splash {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: grid !important;
    place-items: center !important;
    min-width: 100vw !important;
    min-height: 100dvh !important;
    padding: max(20px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left)) !important;
    overflow: hidden !important;
    background:
        radial-gradient(circle at 12% 15%, rgba(247, 176, 87, .34), transparent 32%),
        radial-gradient(circle at 88% 18%, rgba(126, 190, 157, .30), transparent 30%),
        radial-gradient(circle at 75% 88%, rgba(242, 153, 126, .27), transparent 35%),
        linear-gradient(145deg, #fffaf5 0%, #f6fbf7 48%, #fff7ed 100%) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transition: opacity .42s cubic-bezier(.22,.8,.22,1), visibility .42s ease, transform .42s ease !important;
    isolation: isolate !important;
    box-sizing: border-box !important;
}

.ubd-boot-splash::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: -1 !important;
    opacity: .22 !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E") !important;
    mix-blend-mode: soft-light !important;
    pointer-events: none !important;
}

.ubd-boot-splash.is-leaving {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: scale(1.018) !important;
}

.ubd-boot-ambient,
.ubd-boot-ambient i {
    position: absolute !important;
    pointer-events: none !important;
}

.ubd-boot-ambient {
    inset: 0 !important;
    z-index: -1 !important;
}

.ubd-boot-ambient i {
    width: clamp(170px, 42vw, 390px) !important;
    aspect-ratio: 1 !important;
    border-radius: 50% !important;
    filter: blur(4px) !important;
    opacity: .42 !important;
    animation: ubdBootFloat 5.8s ease-in-out infinite alternate !important;
}

.ubd-boot-ambient i:nth-child(1) { top: -9%; left: -10%; background: rgba(244, 165, 76, .55) !important; }
.ubd-boot-ambient i:nth-child(2) { top: 12%; right: -14%; background: rgba(89, 170, 138, .42) !important; animation-delay: -.9s !important; }
.ubd-boot-ambient i:nth-child(3) { right: 18%; bottom: -17%; background: rgba(237, 130, 111, .36) !important; animation-delay: -1.8s !important; }

.ubd-boot-splash-card {
    position: relative !important;
    display: grid !important;
    justify-items: center !important;
    width: min(100%, 390px) !important;
    max-width: 390px !important;
    margin: 0 !important;
    padding: clamp(26px, 7vw, 40px) clamp(20px, 6vw, 34px) !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.86) !important;
    border-radius: clamp(28px, 8vw, 42px) !important;
    background: rgba(255,255,255,.70) !important;
    box-shadow: 0 30px 90px rgba(25, 57, 62, .16), inset 0 1px 0 rgba(255,255,255,.96) !important;
    backdrop-filter: blur(24px) saturate(145%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(145%) !important;
    text-align: center !important;
    animation: ubdBootCardIn .64s cubic-bezier(.16,1,.3,1) both !important;
    box-sizing: border-box !important;
}

.ubd-boot-logo-stage {
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    width: clamp(112px, 32vw, 142px) !important;
    aspect-ratio: 1 !important;
    margin: 0 0 17px !important;
}

.ubd-boot-ring {
    position: absolute !important;
    inset: 0 !important;
    border: 1px solid rgba(24, 58, 63, .12) !important;
    border-radius: 50% !important;
    animation: ubdBootSpin 6s linear infinite !important;
}

.ubd-boot-ring::before,
.ubd-boot-ring::after {
    content: '' !important;
    position: absolute !important;
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
    background: #ef973e !important;
    box-shadow: 0 0 0 6px rgba(239,151,62,.13) !important;
}

.ubd-boot-ring::before { top: 9px !important; left: 20px !important; }
.ubd-boot-ring::after { right: 8px !important; bottom: 28px !important; background: #63a98d !important; box-shadow: 0 0 0 6px rgba(99,169,141,.13) !important; }
.ubd-boot-ring-two { inset: 12px !important; animation-direction: reverse !important; animation-duration: 4.8s !important; opacity: .55 !important; }

.ubd-boot-logo {
    position: relative !important;
    z-index: 2 !important;
    display: grid !important;
    place-items: center !important;
    width: clamp(82px, 24vw, 104px) !important;
    aspect-ratio: 1 !important;
    padding: 13px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.88) !important;
    border-radius: 30% !important;
    background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(255,247,237,.92)) !important;
    color: #18383d !important;
    box-shadow: 0 17px 40px rgba(25, 57, 62, .18), inset 0 1px 0 #fff !important;
    font-size: 25px !important;
    font-weight: 950 !important;
    animation: ubdBootLogoPulse 2.1s ease-in-out infinite !important;
    box-sizing: border-box !important;
}

.ubd-boot-logo img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    margin: auto !important;
    object-fit: contain !important;
    object-position: center !important;
}

.ubd-boot-eyebrow {
    margin: 0 0 8px !important;
    color: #df7e2d !important;
    font-size: 10px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    letter-spacing: .19em !important;
    text-transform: uppercase !important;
}

.ubd-boot-splash-card > strong {
    margin: 0 !important;
    color: #17383d !important;
    font-family: inherit !important;
    font-size: clamp(26px, 8vw, 38px) !important;
    font-weight: 950 !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    text-transform: none !important;
    text-wrap: balance !important;
}

.ubd-boot-copy {
    max-width: 280px !important;
    margin: 11px 0 19px !important;
    color: #577074 !important;
    font-size: clamp(12px, 3.5vw, 14px) !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
}

.ubd-boot-progress {
    position: relative !important;
    width: min(100%, 238px) !important;
    height: 7px !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: rgba(24, 56, 61, .09) !important;
    box-shadow: inset 0 1px 2px rgba(24,56,61,.08) !important;
}

.ubd-boot-progress i {
    position: absolute !important;
    inset: 0 auto 0 0 !important;
    width: 45% !important;
    border-radius: inherit !important;
    background: linear-gradient(90deg, #ef973e, #f4bd58 48%, #66aa8f) !important;
    box-shadow: 0 0 16px rgba(239,151,62,.34) !important;
    animation: ubdBootProgress 1.25s cubic-bezier(.4,0,.2,1) infinite !important;
}

.ubd-boot-dots {
    display: flex !important;
    gap: 6px !important;
    margin-top: 15px !important;
}

.ubd-boot-dots i {
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: #31575c !important;
    animation: ubdBootDot 1.1s ease-in-out infinite !important;
}
.ubd-boot-dots i:nth-child(2) { animation-delay: .13s !important; }
.ubd-boot-dots i:nth-child(3) { animation-delay: .26s !important; }

@keyframes ubdBootFloat {
    from { transform: translate3d(-8px, -7px, 0) scale(.96); }
    to { transform: translate3d(14px, 12px, 0) scale(1.07); }
}
@keyframes ubdBootCardIn {
    from { opacity: 0; transform: translateY(18px) scale(.965); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes ubdBootSpin { to { transform: rotate(360deg); } }
@keyframes ubdBootLogoPulse {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-4px) scale(1.025); }
}
@keyframes ubdBootProgress {
    0% { left: -50%; width: 38%; }
    55% { width: 58%; }
    100% { left: 108%; width: 34%; }
}
@keyframes ubdBootDot {
    0%, 100% { opacity: .28; transform: translateY(0); }
    50% { opacity: 1; transform: translateY(-4px); }
}

@media (max-width: 520px) {
    html.ubd-product-ready body#product .block-product-attribute-custom img.ets_zoom_img {
        width: clamp(66px, 55%, 88px) !important;
        max-width: min(100%, 88px) !important;
        max-height: 88px !important;
    }

    html.ubd-product-ready body#product :is(.product-cover img, .product-cover .js-qv-product-cover) {
        max-height: min(64dvh, 620px) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ubd-boot-splash,
    .ubd-boot-splash *,
    .ubd-boot-splash *::before,
    .ubd-boot-splash *::after {
        animation: none !important;
        transition-duration: .01ms !important;
    }
}
