/*#omx eyJhbGciOiJITUFDLVNIQTI1NiIsInBheWxvYWQiOnsib3duZXIiOiJKZXPDg8K6cyBPcnRlZ2EgTWF0ZXUiLCJkbmkiOiI3NDM3OTIyMk0iLCJsaWNlbnNlIjoiTGljZW5jaWEgcmVzZXJ2YWRhIC8gUHJvcGllZGFkIGludGVsZWN0dWFsIiwib3JpZ2luIjoiT01fNzQzNzkyMjJNIiwiYnVpbGQiOiIyMDI2LTA4LTI3XzEwNTE1NSIsImZpbGUiOiI0MDUzOTg4ZGQ0IiwicGF0aCI6ImFzc2V0cy9jc3MvY291bnRkb3duUnVudGltZS5jc3MifSwic2lnIjoiMzA1NzhlZjVhOGQ1ZjRhNDZhZGY4NjkwYTIyMmVhN2RkNDM0MTJlMTRiMzZhNmMyMmU1YmRlODk1ZjgxZTQwYSJ9*/
/* Cuenta atrás compartida por canvas, previews y publicación (Fase 2D). */
[data-countdown-runtime],
#CountdownWedding_section {
    --bo-countdown-gap: clamp(10px, 3.2cqw, 26px);
    --bo-countdown-heart-gap: clamp(26px, 6cqw, 48px);
    container-type: inline-size;
    min-width: 0;
    overflow-x: clip;
}

[data-countdown-runtime] #EventTimer_container,
[data-countdown-runtime] [data-countdown-timer],
.section #EventTimer_container,
#CountdownWedding_section #EventTimer_container {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: nowrap;
    width: min(100%, 680px);
    max-width: calc(100% - 20px);
    margin-inline: auto;
    gap: var(--bo-countdown-unit-gap, var(--bo-countdown-gap));
    font-variant-numeric: tabular-nums lining-nums;
}

[data-countdown-runtime] #EventTimer_container .numberElement_section,
[data-countdown-runtime] [data-countdown-timer] [data-countdown-unit],
.section #EventTimer_container .numberElement_section,
#CountdownWedding_section #EventTimer_container .numberElement_section {
    box-sizing: border-box;
    min-width: 0;
    flex: 1 1 0;
    text-align: center;
}

[data-countdown-runtime] #EventTimer_container [data-countdown-number],
[data-countdown-runtime] #EventTimer_container .dinamicNumber,
#CountdownWedding_section #EventTimer_container [data-countdown-number],
#CountdownWedding_section #EventTimer_container .dinamicNumber {
    min-width: 0;
    max-width: 100%;
}

[data-countdown-number],
[data-bo-countdown-derived],
#EventTimer_container .dinamicNumber,
#EventTimer_container .numberElement_section > div:first-child {
    font-variant-numeric: tabular-nums lining-nums;
}

[data-countdown-runtime] .heart-container,
#CountdownWedding_section .heart-container {
    position: relative;
    clear: both;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 34px;
    margin-top: var(--bo-countdown-heart-gap) !important;
    padding-top: 0 !important;
    animation: none !important;
}

[data-countdown-runtime] .heart-container .heart,
#CountdownWedding_section .heart-container .heart {
    animation: bo-countdown-soft-heart 1.8s ease-in-out infinite !important;
    transform-origin: center;
    /*
     * El corazón histórico dibuja su silueta con rotate(-45deg)!important.
     * Animamos la propiedad individual `scale` para no competir con ese
     * transform y conservar exactamente la geometría de cada plantilla.
     */
    scale: 1;
    will-change: scale, opacity;
}

@keyframes bo-countdown-soft-heart {
    0%, 100% { scale: 1; opacity: .82; }
    45% { scale: 1.075; opacity: 1; }
    60% { scale: 1.025; opacity: .92; }
}

[data-countdown-state="finished"] #EventTimer_container,
[data-countdown-state="today"] #EventTimer_container {
    opacity: .72;
}

[data-countdown-state="invalid"] #EventTimer_container,
[data-countdown-state="missing"] #EventTimer_container {
    display: none !important;
}

.bo-countdown-final-message {
    margin: 14px auto 0;
    max-width: 38rem;
    text-align: center;
    font: inherit;
    color: currentColor;
}

.bo-countdown-final-hide {
    display: none !important;
}

[data-countdown-hidden-units~="days"] [data-countdown-unit="days"],
[data-countdown-hidden-units~="hours"] [data-countdown-unit="hours"],
[data-countdown-hidden-units~="minutes"] [data-countdown-unit="minutes"],
[data-countdown-hidden-units~="seconds"] [data-countdown-unit="seconds"],
.bo-countdown-unit-hidden,
.bo-countdown-global-hidden {
    display: none !important;
}

[data-countdown-style][data-countdown-layout="grid-2x2"] #EventTimer_container,
[data-countdown-style].countdown-layout-grid-2x2 #EventTimer_container {
    display: grid;
    grid-template-columns: repeat(var(--bo-countdown-visible-units, 2), minmax(0, 1fr));
}

[data-countdown-style][data-countdown-layout="vertical"] #EventTimer_container,
[data-countdown-style].countdown-layout-vertical #EventTimer_container {
    flex-direction: column;
    align-items: center;
}

[data-countdown-style][data-countdown-layout="compact"] #EventTimer_container,
[data-countdown-style].countdown-layout-compact #EventTimer_container {
    --bo-countdown-unit-gap: 10px;
}

[data-countdown-style][data-countdown-layout="cards"] #EventTimer_container .numberElement_section,
[data-countdown-style="time-cards"] #EventTimer_container .numberElement_section {
    padding: clamp(8px, 2.5cqw, 15px);
    border: 1px solid color-mix(in srgb, var(--bo-countdown-accent, currentColor) 24%, transparent);
    border-radius: 14px;
    background: color-mix(in srgb, white 82%, transparent);
}

[data-countdown-style="minimal-clean"] #EventTimer_container {
    --bo-countdown-accent: #34303a;
}

[data-countdown-style="elegant-line"] #EventTimer_container {
    padding-block: 12px;
    border-block: 1px solid color-mix(in srgb, var(--bo-countdown-accent, currentColor) 26%, transparent);
}

[data-countdown-style="glass"] #Countdown_container_2,
[data-countdown-style="glass"] #Countdown_container_1,
[data-countdown-style="glass"] #Countdown_container {
    backdrop-filter: blur(12px);
    /* No sustituir background-image definido por la plantilla. */
    background-color: color-mix(in srgb, white 55%, transparent) !important;
}

[data-countdown-show-separators="0"] #EventTimer_container .numberElement_section::after,
.bo-countdown-no-separators #EventTimer_container .numberElement_section::after,
#EventTimer_container .bo-countdown-last-visible::after {
    display: none !important;
}

[data-countdown-labels="hidden"] #EventTimer_container [data-countdown-label],
[data-countdown-labels="hidden"] #EventTimer_container .genericTimePeriods_Text {
    display: none !important;
}

[data-countdown-style] #EventTimer_container [data-countdown-number],
[data-countdown-style] #EventTimer_container .numberElement_section > :not(.genericTimePeriods_Text) {
    transform: scale(var(--bo-countdown-number-scale, 1));
    transform-origin: center bottom;
}

[data-countdown-style] #EventTimer_container [data-countdown-label],
[data-countdown-style] #EventTimer_container .genericTimePeriods_Text {
    transform: scale(var(--bo-countdown-label-scale, 1));
    transform-origin: center top;
}

[data-countdown-style] #Countdown_container,
[data-countdown-style] #Countdown_container_1,
[data-countdown-style] #Countdown_container_2 {
    max-width: min(100%, var(--bo-countdown-max-width, 520px));
    margin-inline: auto;
    border-width: var(--bo-countdown-frame-width, 2px);
    border-style: solid;
    border-color: color-mix(in srgb, var(--bo-countdown-accent, currentColor) 62%, transparent);
}

[data-countdown-frame-type="none"] #Countdown_container,
[data-countdown-frame-type="none"] #Countdown_container_1,
[data-countdown-frame-type="none"] #Countdown_container_2,
.bo-countdown-no-frame #Countdown_container,
.bo-countdown-no-frame #Countdown_container_1,
.bo-countdown-no-frame #Countdown_container_2 {
    border-color: transparent !important;
    box-shadow: none !important;
}

[data-countdown-frame-type="double-line"] #Countdown_container_2 {
    box-shadow: inset 0 0 0 calc(var(--bo-countdown-frame-width, 2px) + 4px) color-mix(in srgb, var(--bo-countdown-accent, currentColor) 24%, transparent);
}

[data-countdown-decoration-intensity="subtle"] [id*="Countdown_deco"],
[data-countdown-decoration-intensity="subtle"] .decoration-image {
    opacity: .42 !important;
}

[data-countdown-decoration-intensity="feature"] [id*="Countdown_deco"],
[data-countdown-decoration-intensity="feature"] .decoration-image {
    opacity: .94 !important;
}

[data-countdown-separator="lines"]:not(.bo-countdown-no-separators) #EventTimer_container [data-countdown-unit]:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after,
[data-countdown-separator="lines"]:not(.bo-countdown-no-separators) #EventTimer_container .numberElement_section:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after {
    content: "";
    position: absolute;
    top: 16%;
    right: calc(var(--bo-countdown-unit-gap, 24px) / -2);
    width: 1px;
    height: 68%;
    background: color-mix(in srgb, var(--bo-countdown-accent, currentColor) 58%, transparent);
}

[data-countdown-separator="dots"] #EventTimer_container [data-countdown-unit]:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: calc(var(--bo-countdown-unit-gap, 24px) / -2 - 2px);
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--bo-countdown-accent, currentColor);
}

[data-countdown-separator="colon"] #EventTimer_container [data-countdown-unit]:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after {
    content: ":";
    position: absolute;
    top: 50%;
    right: calc(var(--bo-countdown-unit-gap, 24px) / -2 - 3px);
    color: var(--bo-countdown-accent, currentColor);
    font-weight: 800;
    transform: translateY(-50%);
}

[data-countdown-style] #EventTimer_container [data-countdown-unit],
[data-countdown-style] #EventTimer_container .numberElement_section {
    position: relative;
}

[data-countdown-animation-heart="none"] .heart-container .heart {
    animation: none !important;
}

[data-countdown-animation-heart="soft-pulse"] .heart-container .heart {
    animation-duration: 2.25s !important;
}

[data-countdown-animation-intensity="soft"] .heart-container .heart {
    animation-duration: 2.6s !important;
}

[data-countdown-animation-intensity="high"] .heart-container .heart {
    animation-duration: 1.25s !important;
}

.bo-countdown-no-heart .heart-container,
.bo-countdown-no-floral .decoration-image,
.bo-countdown-no-floral .floral-decoration,
.bo-countdown-no-floral .flower-decoration {
    display: none !important;
}

/* --------------------------------------------------------------------------
 * Fase 2D · capa de compatibilidad con las plantillas históricas
 *
 * countdownRuntime.css se carga antes del main.css propio de cada plantilla.
 * invitation_general.css conserva reglas !important basadas en IDs; por eso
 * estas reglas usan el root hidratado y una especificidad deliberadamente
 * mayor. Solo fijan mecánica del contador: no sustituyen tipografía, color ni
 * imágenes decorativas de la plantilla.
 * -------------------------------------------------------------------------- */

#CountdownWedding_section[data-countdown-runtime] #EventTimer_container,
[data-countdown-runtime] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2, #WeddingCountdown_Type, #WeddingCountdown_Type_1) #EventTimer_container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: center !important;
    width: min(100%, var(--bo-countdown-max-width, 680px)) !important;
    max-width: calc(100% - 20px) !important;
    margin-inline: auto !important;
    padding-inline: 1px !important;
    gap: var(--bo-countdown-unit-gap, var(--bo-countdown-gap)) !important;
    overflow: visible !important;
}

#CountdownWedding_section[data-countdown-runtime] #EventTimer_container :is([data-countdown-unit], .numberElement_section),
[data-countdown-runtime] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2, #WeddingCountdown_Type, #WeddingCountdown_Type_1) #EventTimer_container :is([data-countdown-unit], .numberElement_section) {
    position: relative !important;
    flex: 1 1 0 !important;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding-inline: 0 !important;
}

/* El layout se recompone con 4/3/2/1 columnas según las unidades visibles. */
#CountdownWedding_section[data-countdown-runtime][data-countdown-layout="grid-2x2"] #EventTimer_container,
#CountdownWedding_section[data-countdown-runtime].countdown-layout-grid-2x2 #EventTimer_container,
[data-countdown-runtime][data-countdown-layout="grid-2x2"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container,
[data-countdown-runtime].countdown-layout-grid-2x2 :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container {
    display: grid !important;
    grid-template-columns: repeat(var(--bo-countdown-visible-units, 2), minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    align-items: stretch !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-layout="vertical"] #EventTimer_container,
#CountdownWedding_section[data-countdown-runtime].countdown-layout-vertical #EventTimer_container,
[data-countdown-runtime][data-countdown-layout="vertical"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container,
[data-countdown-runtime].countdown-layout-vertical :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-layout="compact"] #EventTimer_container,
#CountdownWedding_section[data-countdown-runtime].countdown-layout-compact #EventTimer_container,
[data-countdown-runtime][data-countdown-layout="compact"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container,
[data-countdown-runtime].countdown-layout-compact :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container {
    --bo-countdown-unit-gap: 10px;
    gap: var(--bo-countdown-unit-gap) !important;
}

/* El wrap es una capacidad responsive explícita; nunca depende del CSS legacy. */
#CountdownWedding_section[data-countdown-runtime].bo-countdown-grid-if-needed #EventTimer_container,
[data-countdown-runtime].bo-countdown-grid-if-needed :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container {
    flex-wrap: wrap !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-layout="cards"] #EventTimer_container :is([data-countdown-unit], .numberElement_section),
#CountdownWedding_section[data-countdown-runtime][data-countdown-style="time-cards"] #EventTimer_container :is([data-countdown-unit], .numberElement_section),
[data-countdown-runtime][data-countdown-layout="cards"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container :is([data-countdown-unit], .numberElement_section),
[data-countdown-runtime][data-countdown-style="time-cards"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container :is([data-countdown-unit], .numberElement_section) {
    min-width: min(72px, 100%) !important;
    padding: clamp(8px, 2.5cqw, 15px) !important;
    border: 1px solid color-mix(in srgb, var(--bo-countdown-accent, currentColor) 24%, transparent) !important;
    border-radius: 14px !important;
    background-color: color-mix(in srgb, white 82%, transparent) !important;
    box-shadow: 0 10px 24px rgba(31, 36, 49, .08) !important;
}

/* Separadores: el último elemento visible nunca conserva una marca colgante. */
#CountdownWedding_section[data-countdown-runtime][data-countdown-show-separators="0"] #EventTimer_container [data-countdown-unit]::after,
#CountdownWedding_section[data-countdown-runtime].bo-countdown-no-separators #EventTimer_container [data-countdown-unit]::after,
[data-countdown-runtime][data-countdown-show-separators="0"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container [data-countdown-unit]::after,
[data-countdown-runtime].bo-countdown-no-separators :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container [data-countdown-unit]::after,
#CountdownWedding_section[data-countdown-runtime] #EventTimer_container .bo-countdown-last-visible::after {
    content: none !important;
    display: none !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-separator="lines"]:not(.bo-countdown-no-separators) #EventTimer_container [data-countdown-unit]:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after,
[data-countdown-runtime][data-countdown-separator="lines"]:not(.bo-countdown-no-separators) :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container [data-countdown-unit]:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 16% !important;
    right: calc(var(--bo-countdown-unit-gap, 24px) / -2) !important;
    width: 1px !important;
    height: 68% !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--bo-countdown-accent, currentColor) 58%, transparent) !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-separator="dots"] #EventTimer_container [data-countdown-unit]:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after,
[data-countdown-runtime][data-countdown-separator="dots"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container [data-countdown-unit]:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    right: calc(var(--bo-countdown-unit-gap, 24px) / -2 - 2px) !important;
    width: 5px !important;
    height: 5px !important;
    border-radius: 50% !important;
    background: var(--bo-countdown-accent, currentColor) !important;
    transform: translateY(-50%) !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-separator="colon"] #EventTimer_container [data-countdown-unit]:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after,
[data-countdown-runtime][data-countdown-separator="colon"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container [data-countdown-unit]:not(.bo-countdown-unit-hidden):not(.bo-countdown-last-visible)::after {
    content: ":" !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    right: calc(var(--bo-countdown-unit-gap, 24px) / -2 - 3px) !important;
    width: auto !important;
    height: auto !important;
    color: var(--bo-countdown-accent, currentColor) !important;
    background: transparent !important;
    font-weight: 800 !important;
    transform: translateY(-50%) !important;
}

/* --------------------------------------------------------------------------
 * Variantes públicas. Se modifica solo la superficie visual seleccionada;
 * background-image, tipografía y paleta heredadas continúan perteneciendo a
 * la plantilla.
 * -------------------------------------------------------------------------- */

[data-countdown-runtime][data-countdown-style="romantic-circle"] #Countdown_container_2,
[data-countdown-runtime][data-countdown-style="romantic-circle"] #Countdown_container_1:not(:has(#Countdown_container_2)),
[data-countdown-runtime][data-countdown-style="romantic-circle"] #Countdown_container:not(:has(#Countdown_container_1, #Countdown_container_2)) {
    inline-size: min(92%, 560px) !important;
    max-inline-size: 560px !important;
    block-size: auto !important;
    min-block-size: 0 !important;
    aspect-ratio: 1 / 1 !important;
    box-sizing: border-box !important;
    padding: clamp(28px, 6cqi, 56px) !important;
    border-radius: 999px !important;
    background-color: color-mix(in srgb, white 76%, transparent) !important;
    background-image: none !important;
    margin-inline: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

[data-countdown-runtime][data-countdown-style="romantic-circle"] #WeddingCountdown_Type > .editableStyle {
    block-size: auto !important;
    min-block-size: 0 !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #WeddingCountdown_Title,
[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #WeddingCountdown_Title {
    inline-size: min(100%, 20ch) !important;
    margin: 0 auto clamp(14px, 3cqi, 24px) !important;
    font-size: clamp(1.15rem, 3.4cqi, 2rem) !important;
    line-height: 1.15 !important;
    text-align: center !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container,
[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container {
    inline-size: min(100%, 480px) !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(10px, 2.6cqi, 22px) !important;
    margin-inline: auto !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-number], .dinamicNumber, .numberElement_section > div:first-child),
[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container :is([data-countdown-number], .dinamicNumber, .numberElement_section > div:first-child) {
    font-size: clamp(2rem, 7.2cqi, 4rem) !important;
    font-variant-numeric: tabular-nums !important;
    line-height: .95 !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-label], .genericTimePeriods_Text),
[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container :is([data-countdown-label], .genericTimePeriods_Text) {
    margin-block-start: 8px !important;
    font-size: clamp(.72rem, 1.65cqi, .95rem) !important;
    line-height: 1.15 !important;
    letter-spacing: .055em !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_heart_container, .heart-container),
[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) :is(#Countdown_heart_container, .heart-container) {
    margin-block: clamp(18px, 4cqi, 32px) 8px !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#countdown_bottomTitle, .bo-countdown-final-message),
[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) :is(#countdown_bottomTitle, .bo-countdown-final-message) {
    inline-size: min(100%, 30ch) !important;
    max-inline-size: calc(100% - 24px) !important;
    margin-inline: auto !important;
    text-align: center !important;
    overflow-wrap: anywhere !important;
}

@media (max-width: 480px) {
    [data-countdown-runtime][data-countdown-style="romantic-circle"] #Countdown_container_2,
    [data-countdown-runtime][data-countdown-style="romantic-circle"] #Countdown_container_1:not(:has(#Countdown_container_2)),
    [data-countdown-runtime][data-countdown-style="romantic-circle"] #Countdown_container:not(:has(#Countdown_container_1, #Countdown_container_2)) {
        inline-size: calc(100% - 20px) !important;
        max-inline-size: 390px !important;
        padding: clamp(22px, 6vw, 32px) !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container,
    [data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container {
        gap: clamp(7px, 2.5vw, 12px) !important;
    }
}

[data-countdown-runtime][data-countdown-style="minimal-clean"] #Countdown_container_2,
[data-countdown-runtime][data-countdown-style="minimal-clean"] #Countdown_container_1:not(:has(#Countdown_container_2)),
[data-countdown-runtime][data-countdown-style="minimal-clean"] #Countdown_container:not(:has(#Countdown_container_1, #Countdown_container_2)) {
    border-color: color-mix(in srgb, #34303a 14%, transparent) !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

[data-countdown-runtime][data-countdown-style="editorial-floral"] #Countdown_container_2,
[data-countdown-runtime][data-countdown-style="editorial-floral"] #Countdown_container_1:not(:has(#Countdown_container_2)),
[data-countdown-runtime][data-countdown-style="editorial-floral"] #Countdown_container:not(:has(#Countdown_container_1, #Countdown_container_2)) {
    border-radius: 28px !important;
    background-color: color-mix(in srgb, var(--bo-countdown-accent, currentColor) 7%, transparent) !important;
}

[data-countdown-runtime][data-countdown-style="editorial-floral"] :is([id*="Countdown_deco"], .floral-decoration, .flower-decoration, .decoration-image) {
    opacity: max(.68, var(--bo-countdown-frame-opacity, .7)) !important;
    filter: saturate(1.08) !important;
}

[data-countdown-runtime][data-countdown-style="glass"] #Countdown_container_2,
[data-countdown-runtime][data-countdown-style="glass"] #Countdown_container_1:not(:has(#Countdown_container_2)),
[data-countdown-runtime][data-countdown-style="glass"] #Countdown_container:not(:has(#Countdown_container_1, #Countdown_container_2)) {
    border-radius: 28px !important;
    background-color: color-mix(in srgb, white 55%, transparent) !important;
    backdrop-filter: blur(12px) !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="elegant-line"] #EventTimer_container,
[data-countdown-runtime][data-countdown-style="elegant-line"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container {
    padding-block: 12px !important;
    border-block: 1px solid color-mix(in srgb, var(--bo-countdown-accent, currentColor) 26%, transparent) !important;
}

/* La posición decorativa compone sobre la imagen existente, nunca la cambia. */
[data-countdown-runtime][data-countdown-decoration-position="top"] :is([id*="Countdown_deco"], .floral-decoration, .flower-decoration, .decoration-image) {
    transform: translateY(-8px) scale(.96) !important;
    transform-origin: center !important;
}

[data-countdown-runtime][data-countdown-decoration-position="bottom"] :is([id*="Countdown_deco"], .floral-decoration, .flower-decoration, .decoration-image) {
    transform: translateY(8px) scale(.96) !important;
    transform-origin: center !important;
}

[data-countdown-runtime][data-countdown-decoration-position="corners"] :is([id*="Countdown_deco"], .floral-decoration, .flower-decoration, .decoration-image) {
    transform: translate(-10px, -8px) scale(.82) !important;
    transform-origin: center !important;
}

/* --------------------------------------------------------------------------
 * Animaciones compartidas: exactamente los valores expuestos por el inspector.
 * Son CSS puro y no se sincronizan con el tick temporal.
 * -------------------------------------------------------------------------- */

[data-countdown-runtime][data-countdown-animation-entry="fade"] {
    animation: bo-countdown-entry-fade 520ms ease both !important;
}

[data-countdown-runtime][data-countdown-animation-entry="zoom"] {
    animation: bo-countdown-entry-zoom 520ms ease both !important;
}

[data-countdown-runtime][data-countdown-animation-entry="slide-up"] {
    animation: bo-countdown-entry-slide-up 520ms ease both !important;
}

[data-countdown-runtime][data-countdown-animation-entry="none"] {
    animation: none !important;
}

[data-countdown-runtime][data-countdown-animation-numbers="tick"] #EventTimer_container :is([data-countdown-number], .dinamicNumber) {
    animation: bo-countdown-number-tick 1.8s ease-in-out infinite !important;
}

[data-countdown-runtime][data-countdown-animation-numbers="flip"] #EventTimer_container :is([data-countdown-number], .dinamicNumber) {
    animation: bo-countdown-number-flip 2.4s ease-in-out infinite !important;
    transform-origin: center !important;
}

[data-countdown-runtime][data-countdown-animation-numbers="fade"] #EventTimer_container :is([data-countdown-number], .dinamicNumber) {
    animation: bo-countdown-number-fade 2s ease-in-out infinite !important;
}

[data-countdown-runtime][data-countdown-animation-numbers="none"] #EventTimer_container :is([data-countdown-number], .dinamicNumber) {
    animation: none !important;
}

[data-countdown-runtime][data-countdown-animation-intensity="soft"][data-countdown-animation-entry] {
    animation-duration: 760ms !important;
}

[data-countdown-runtime][data-countdown-animation-intensity="high"][data-countdown-animation-entry] {
    animation-duration: 420ms !important;
}

[data-countdown-runtime][data-countdown-animation-intensity="soft"] #EventTimer_container :is([data-countdown-number], .dinamicNumber) {
    animation-duration: 2.2s !important;
}

[data-countdown-runtime][data-countdown-animation-intensity="high"] #EventTimer_container :is([data-countdown-number], .dinamicNumber) {
    animation-duration: 1s !important;
}

@keyframes bo-countdown-entry-fade {
    from { opacity: .35; }
    to { opacity: 1; }
}

@keyframes bo-countdown-entry-zoom {
    from { opacity: .4; transform: scale(.96); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes bo-countdown-entry-slide-up {
    from { opacity: .35; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes bo-countdown-number-tick {
    0%, 92%, 100% { filter: none; }
    96% { filter: brightness(1.08); }
}

@keyframes bo-countdown-number-flip {
    0%, 94%, 100% { rotate: x 0deg; }
    97% { rotate: x 9deg; }
}

@keyframes bo-countdown-number-fade {
    0%, 92%, 100% { opacity: 1; }
    96% { opacity: .72; }
}

/* El heartbeat legacy se neutraliza con mayor especificidad aunque su hoja se
 * cargue después. `scale` se combina con el rotate(-45deg)!important original. */
#CountdownWedding_section[data-countdown-runtime] .heart-container .heart,
[data-countdown-runtime] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2, #WeddingCountdown_Type, #WeddingCountdown_Type_1) .heart-container .heart {
    animation: bo-countdown-soft-heart 1.8s ease-in-out infinite !important;
    scale: 1;
    transform-origin: center !important;
    will-change: scale, opacity;
}

/*
 * El editor histórico añade un ID de shell (#invitation-preview o
 * #template-content) y otro al host del corazón. Igualamos esa especificidad
 * para que la misma animación compartida venza aunque invitationManager.css
 * se evalúe después. El tercer selector cubre la preview del configurador.
 */
#invitation-preview #CountdownWedding_section[data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
#template-content #CountdownWedding_section[data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
.bo-countdown-modal-preview #CountdownWedding_section[data-countdown-runtime] #Countdown_heart_container.heart-container .heart {
    animation: bo-countdown-soft-heart 1.8s ease-in-out infinite !important;
    scale: 1;
    transform-origin: center !important;
    will-change: scale, opacity;
}

/* Algunas superficies hidratan el root fuera del wrapper legacy, pero conservan
 * los dos IDs usados por la cascada del editor. Este selector mantiene la misma
 * prioridad sin exigir una estructura concreta alrededor del contador. */
#invitation-preview [data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
#template-content [data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
.bo-countdown-modal-preview [data-countdown-runtime] #Countdown_heart_container.heart-container .heart {
    animation: bo-countdown-soft-heart 1.8s ease-in-out infinite !important;
    scale: 1;
    transform-origin: center !important;
    will-change: scale, opacity;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-animation-heart="none"] .heart-container .heart,
[data-countdown-runtime][data-countdown-animation-heart="none"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2, #WeddingCountdown_Type, #WeddingCountdown_Type_1) .heart-container .heart {
    animation: none !important;
    scale: 1 !important;
}

#invitation-preview #CountdownWedding_section[data-countdown-runtime][data-countdown-animation-heart="none"] #Countdown_heart_container.heart-container .heart,
#template-content #CountdownWedding_section[data-countdown-runtime][data-countdown-animation-heart="none"] #Countdown_heart_container.heart-container .heart,
.bo-countdown-modal-preview #CountdownWedding_section[data-countdown-runtime][data-countdown-animation-heart="none"] #Countdown_heart_container.heart-container .heart {
    animation: none !important;
    scale: 1 !important;
}

#invitation-preview [data-countdown-runtime][data-countdown-animation-heart="none"] #Countdown_heart_container.heart-container .heart,
#template-content [data-countdown-runtime][data-countdown-animation-heart="none"] #Countdown_heart_container.heart-container .heart,
.bo-countdown-modal-preview [data-countdown-runtime][data-countdown-animation-heart="none"] #Countdown_heart_container.heart-container .heart {
    animation: none !important;
    scale: 1 !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-animation-heart="soft-pulse"] .heart-container .heart,
[data-countdown-runtime][data-countdown-animation-heart="soft-pulse"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2, #WeddingCountdown_Type, #WeddingCountdown_Type_1) .heart-container .heart {
    animation-duration: 2.25s !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-animation-intensity="soft"] .heart-container .heart,
[data-countdown-runtime][data-countdown-animation-intensity="soft"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2, #WeddingCountdown_Type, #WeddingCountdown_Type_1) .heart-container .heart {
    animation-duration: 2.6s !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-animation-intensity="high"] .heart-container .heart,
[data-countdown-runtime][data-countdown-animation-intensity="high"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2, #WeddingCountdown_Type, #WeddingCountdown_Type_1) .heart-container .heart {
    animation-duration: 1.25s !important;
}

@container (max-width: 430px) {
    [data-countdown-runtime] #EventTimer_container,
    [data-countdown-runtime] [data-countdown-timer],
    .section #EventTimer_container,
    #CountdownWedding_section #EventTimer_container {
        gap: clamp(6px, 2.7cqw, 12px);
        max-width: calc(100% - 12px);
    }

    [data-countdown-runtime] #EventTimer_container .genericTimePeriods_Text,
    .section #EventTimer_container .genericTimePeriods_Text,
    #CountdownWedding_section #EventTimer_container .genericTimePeriods_Text {
        font-size: clamp(9px, 3.2cqw, 12px) !important;
        white-space: nowrap;
    }
}

/* The romantic preset rule above has two IDs and wins over the generic
 * surgical rule in the real canvas.  Add the host ID so the intended scale
 * wins on the actual editor root as well as its preview clone. */
#template-content #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-number], .dinamicNumber, .numberElement_section > div:first-child),
#invitation-preview #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-number], .dinamicNumber, .numberElement_section > div:first-child) {
    font-size: clamp(36px, 3.4vw, 48px) !important;
    line-height: .95 !important;
}

#template-content #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-label], .genericTimePeriods_Text),
#invitation-preview #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-label], .genericTimePeriods_Text) {
    font-size: clamp(12px, 1.2vw, 16px) !important;
    line-height: 1.15 !important;
}

@media (max-width: 420px) {
    [data-countdown-runtime] #EventTimer_container,
    .section #EventTimer_container,
    #CountdownWedding_section #EventTimer_container {
        gap: 7px;
    }

    [data-countdown-runtime] #EventTimer_container .numberElement_section,
    #CountdownWedding_section #EventTimer_container .numberElement_section {
        padding-inline: 0 !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-countdown-runtime][data-countdown-animation-entry],
    [data-countdown-runtime][data-countdown-animation-numbers] #EventTimer_container :is([data-countdown-number], .dinamicNumber),
    [data-countdown-runtime] .heart-container,
    [data-countdown-runtime] .heart-container .heart,
    #CountdownWedding_section .heart-container,
    #CountdownWedding_section .heart-container .heart {
        animation: none !important;
        transition: none !important;
    }

    [data-countdown-runtime] .heart-container .heart,
    #CountdownWedding_section[data-countdown-runtime] .heart-container .heart,
    #invitation-preview #CountdownWedding_section[data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
    #template-content #CountdownWedding_section[data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
    .bo-countdown-modal-preview #CountdownWedding_section[data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
    #invitation-preview [data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
    #template-content [data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
    .bo-countdown-modal-preview [data-countdown-runtime] #Countdown_heart_container.heart-container .heart {
        scale: 1 !important;
        opacity: 1;
        will-change: auto;
    }

    /* Gana también a los selectores de dos IDs declarados después por el
     * editor y por invitation_general.css. */
    #invitation-preview [data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
    #template-content [data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
    .bo-countdown-modal-preview [data-countdown-runtime] #Countdown_heart_container.heart-container .heart,
    #CountdownWedding_section[data-countdown-runtime] #Countdown_heart_container.heart-container .heart {
        animation: none !important;
        animation-duration: 0s !important;
        transition: none !important;
        scale: 1 !important;
        opacity: 1;
        will-change: auto;
    }
}

/* 2.X.2: the real InvitationManager template uses #Countdown_container (the
 * older editor rules only addressed #Countdown_container_2).  Keep the
 * correction scoped to the selected romantic/circular preset and share it
 * with canvas, configurator and public markup.  !important is intentional:
 * legacy template declarations and the editor sheet are loaded after this
 * runtime and otherwise win on the same properties. */
#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) {
    box-sizing: border-box !important;
    padding: clamp(24px, 5%, 40px) !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) #EventTimer_container {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    inline-size: 100% !important;
    width: 100% !important;
    max-inline-size: 520px !important;
    max-width: 520px !important;
    gap: clamp(12px, 2.4vw, 24px) !important;
    margin-inline: auto !important;
    align-items: start !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-number], .dinamicNumber, .numberElement_section > div:first-child) {
    font-size: clamp(2.5rem, 5vw, 4rem) !important;
    line-height: .95 !important;
    white-space: nowrap !important;
}

#CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-label], .genericTimePeriods_Text) {
    margin-block-start: 8px !important;
    font-size: clamp(.8rem, 1.4vw, 1rem) !important;
    line-height: 1.15 !important;
    letter-spacing: .055em !important;
    white-space: nowrap !important;
}

@media (max-width: 480px) {
    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] :is(#Countdown_container, #Countdown_container_1, #Countdown_container_2) {
        padding: clamp(22px, 6vw, 32px) !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container {
        gap: clamp(8px, 2.5vw, 14px) !important;
    }
}

/* Surgical hierarchy correction: the counter, not its decorative frame, owns the scale. */
[data-countdown-runtime] #EventTimer_container,
#CountdownWedding_section[data-countdown-runtime] #EventTimer_container {
    width: min(100%, 760px) !important;
    gap: clamp(12px, 2vw, 28px) !important;
}
[data-countdown-runtime] #EventTimer_container .numberElement_section > div:first-child,
#CountdownWedding_section[data-countdown-runtime] #EventTimer_container .dinamicNumber {
    font-size: clamp(36px, 3.4vw, 48px) !important;
    line-height: .94 !important;
    font-weight: 800 !important;
    letter-spacing: -.03em;
}
[data-countdown-runtime] #EventTimer_container .genericTimePeriods_Text,
#CountdownWedding_section[data-countdown-runtime] #EventTimer_container .genericTimePeriods_Text {
    font-size: clamp(12px, 1.2vw, 16px) !important;
    line-height: 1.1 !important;
    letter-spacing: .08em;
    font-weight: 700;
}
[data-countdown-runtime] #Countdown_container,
[data-countdown-runtime] #Countdown_container_1,
[data-countdown-runtime] #Countdown_container_2,
#CountdownWedding_section[data-countdown-runtime] #Countdown_container,
#CountdownWedding_section[data-countdown-runtime] #Countdown_container_1,
#CountdownWedding_section[data-countdown-runtime] #Countdown_container_2 {
    width: min(100%, var(--bo-countdown-max-width, 760px)) !important;
    padding-inline: clamp(20px, 4vw, 42px) !important;
}
@container (max-width: 430px) {
  [data-countdown-runtime] #EventTimer_container .numberElement_section > div:first-child,
  #CountdownWedding_section[data-countdown-runtime] #EventTimer_container .dinamicNumber { font-size: clamp(36px, 11vw, 46px) !important; }
  [data-countdown-runtime] #EventTimer_container .genericTimePeriods_Text,
  #CountdownWedding_section[data-countdown-runtime] #EventTimer_container .genericTimePeriods_Text { font-size: clamp(11px, 3.2vw, 14px) !important; }
}

/* 2.X.2V.1: deterministic desktop romantic-circle composition.
 *
 * The font selector loads another face named "Montserrat" asynchronously.
 * Depending on when that unawaited catalogue load completed, the Countdown
 * could switch between the variable face from main.css and the catalogue face
 * after the editor had already reported ready.  A private family makes this
 * component's metrics independent from that late registration; because this
 * face is declared in the initial stylesheet, document.fonts.ready includes it.
 */
@font-face {
    font-family: "BO Countdown Montserrat";
    src: url("../fonts/Montserrat/Montserrat-VariableFont_wght.ttf") format("truetype");
    font-style: normal;
    font-weight: 100 900;
    font-display: block;
}

/* The section itself is the inline-size container.  This branch therefore
 * follows the real canvas/preview width instead of the browser viewport and
 * leaves the validated mobile composition untouched. */
@container (min-width: 600px) {
    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #WeddingCountdown_Type {
        width: 100% !important;
        max-width: none !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #WeddingCountdown_Type > .editableStyle {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #Countdown_container:not(:has(#Countdown_container_1, #Countdown_container_2)) {
        width: min(94%, 680px) !important;
        max-width: 680px !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 1 / 1 !important;
        margin-inline: auto !important;
        padding: 210px 70px 76px !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: auto auto auto auto !important;
        align-content: start !important;
        justify-items: center !important;
        row-gap: 0 !important;
        border-radius: 0 !important;
        background-color: transparent !important;
        background-image: url("../images/bg/frames/22.svg") !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: contain !important;
        overflow: visible !important;
        font-family: "BO Countdown Montserrat", sans-serif !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #WeddingCountdown_Title {
        width: auto !important;
        max-width: 20ch !important;
        margin: 0 auto 22px !important;
        padding: 4px 18px !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, .94) !important;
        color: var(--templateColor-3, #a3ab98) !important;
        -webkit-text-fill-color: var(--templateColor-3, #a3ab98) !important;
        font-family: "BO Countdown Montserrat", sans-serif !important;
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: .02em !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container {
        width: 100% !important;
        max-width: 500px !important;
        margin: 0 auto !important;
        padding: 14px 18px !important;
        gap: 22px !important;
        align-items: start !important;
        overflow: visible !important;
        border: 1px solid rgba(223, 164, 155, .22) !important;
        border-radius: 24px !important;
        background: rgba(255, 255, 255, .94) !important;
        box-shadow: 0 10px 28px rgba(90, 57, 56, .08) !important;
        font-family: "BO Countdown Montserrat", sans-serif !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container .numberElement_section,
    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container .numberElement_section > div {
        font-family: "BO Countdown Montserrat", sans-serif !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-number], .dinamicNumber, .numberElement_section > div:first-child) {
        font-size: 48px !important;
        font-weight: 800 !important;
        line-height: .95 !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #EventTimer_container :is([data-countdown-label], .genericTimePeriods_Text) {
        margin-top: 9px !important;
        font-family: "BO Countdown Montserrat", sans-serif !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #Countdown_container > :is(#Countdown_heart_container, .heart-container) {
        width: 100% !important;
        margin: 30px auto 0 !important;
        justify-self: center !important;
    }

    #CountdownWedding_section[data-countdown-runtime][data-countdown-style="romantic-circle"] #Countdown_container > :is(#countdown_bottomTitle, .countdown_bottomTitle, .bo-countdown-final-message) {
        position: relative !important;
        z-index: 1 !important;
        width: min(100%, 22ch) !important;
        max-width: 22ch !important;
        margin: 18px auto 0 !important;
        padding: 8px 16px !important;
        transform: none !important;
        justify-self: center !important;
        font-family: "BO Countdown Montserrat", sans-serif !important;
        font-size: 17px !important;
        line-height: 1.35 !important;
        text-align: center !important;
        overflow-wrap: anywhere !important;
        border-radius: 16px !important;
        background: rgba(255, 255, 255, .94) !important;
        box-shadow: 0 8px 24px rgba(90, 57, 56, .07) !important;
    }
}

._omx_4053988dd4{--omx:"30578ef5a8d5"}

/* Â© 2026 JesÃºs Ortega Mateu (DNI 74379222M) â€” Licencia reservada / Propiedad intelectual. Prohibida reproducciÃ³n/copia. Build 2026-08-27_105155 | File 4053988dd4 | Sig 30578ef5a8d5 | assets/css/countdownRuntime.css */
/*@omx eyJhbGciOiJITUFDLVNIQTI1NiIsInBheWxvYWQiOnsib3duZXIiOiJKZXPDg8K6cyBPcnRlZ2EgTWF0ZXUiLCJkbmkiOiI3NDM3OTIyMk0iLCJsaWNlbnNlIjoiTGljZW5jaWEgcmVzZXJ2YWRhIC8gUHJvcGllZGFkIGludGVsZWN0dWFsIiwib3JpZ2luIjoiT01fNzQzNzkyMjJNIiwiYnVpbGQiOiIyMDI2LTA4LTI3XzEwNTE1NSIsImZpbGUiOiI0MDUzOTg4ZGQ0IiwicGF0aCI6ImFzc2V0cy9jc3MvY291bnRkb3duUnVudGltZS5jc3MifSwic2lnIjoiMzA1NzhlZjVhOGQ1ZjRhNDZhZGY4NjkwYTIyMmVhN2RkNDM0MTJlMTRiMzZhNmMyMmU1YmRlODk1ZjgxZTQwYSJ9*/
