:root {
    --padding-section-medium: 5rem;
    --text-sizes-text-tiny: 0.75rem;
    --text-sizes-text-small: 0.875rem;
    --text-sizes-text-regular: 1rem;
    --text-sizes-text-medium: 1.125rem;
    --text-sizes-heading-6: 1.25rem;
    --text-sizes-text-large: 1.25rem;
    --text-sizes-heading-5: 1.5rem;
    --text-sizes-heading-4: 2rem;
    --text-sizes-heading-3: 2.5rem;
    --text-sizes-heading-2: 3rem;
    --text-sizes-heading-1: 3.5rem;
    --spacing-heading: 1.5rem;
    --container-container-small: 48rem;
    --container-container-medium: 64rem;
    --container-container-large: 80rem;
    --max-width-max-width-xxsmall: 20rem;
    --max-width-max-width-xsmall: 25rem;
    --max-width-max-width-small: 30rem;
    --max-width-max-width-medium: 35rem;
    --max-width-max-width-large: 48rem;
    --max-width-max-width-xlarge: 64rem;
    --max-width-max-width-xxlarge: 80rem;
    --page-padding-padding-global: 4rem;
    --section-padding-padding-section-small: 3rem;
    --section-padding-padding-section-medium: 5rem;
    --section-padding-padding-section-large: 7rem;
    --radius-large: 0.5rem;
    --radius-medium: 0.5rem;
    --radius-small: 0.5rem;
    --stroke-border-width: 0rem;
    --stroke-divider-width: 0.0625rem;
}

@media (max-width: 768px) {
    :root {
        --text-sizes-text-tiny: 0.625rem;
        --text-sizes-text-small: 0.75rem;
        --text-sizes-text-regular: 0.875rem;
        --text-sizes-text-medium: 1rem;
        --text-sizes-heading-6: 1.125rem;
        --text-sizes-text-large: 1.125rem;
        --text-sizes-heading-5: 1.25rem;
        --text-sizes-heading-4: 1.5rem;
        --text-sizes-heading-3: 2rem;
        --text-sizes-heading-2: 2.25rem;
        --text-sizes-heading-1: 2.5rem;
        --spacing-heading: 1.25rem;
        --container-container-small: 48rem;
        --container-container-medium: 64rem;
        --container-container-large: 80rem;
        --max-width-max-width-xxsmall: 20rem;
        --max-width-max-width-xsmall: 25rem;
        --max-width-max-width-small: 30rem;
        --max-width-max-width-medium: 35rem;
        --max-width-max-width-large: 48rem;
        --max-width-max-width-xlarge: 64rem;
        --max-width-max-width-xxlarge: 80rem;
        --page-padding-padding-global: 1.25rem;
        --section-padding-padding-section-small: 2rem;
        --section-padding-padding-section-medium: 3rem;
        --section-padding-padding-section-large: 4rem;
    }
}

body {
    color: inherit !important;
    font-size: var(--text-sizes-text-regular) !important;
}
p {
    margin-block-end: 0 !important;
}
p a {
    text-decoration: underline !important;
}

.wb-link-list__list a {
    justify-content: left;
}

/* ========================================
   ICONOS - CENTRADO VERTICAL GLOBAL
   ======================================== */

/* Material Icons - Alineación y centrado completo */
.material-symbols-outlined {
    line-height: 1 !important;
    vertical-align: middle !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Font Awesome - Alineación y centrado completo */
.fa, .fas, .far, .fal, .fab, .fad, .fass, .fasr, .fasl,
i[class*="fa-"],
i[class*="fab-"],
i[class*="fas-"],
i[class*="far-"],
i[class*="fal-"] {
    line-height: 1 !important;
    vertical-align: middle !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Elementor Icons - Alineación y centrado completo */
.elementor-icon,
i[class*="eicon-"] {
    line-height: 1 !important;
    vertical-align: middle !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Elementor Button Icons - Alineación específica */
.elementor-button .elementor-button-icon {
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* SVG Icons - Centrado vertical */
svg {
    vertical-align: middle !important;
}

/* Contenedores de iconos - Centrado vertical */
.wb-button__icon,
.wb-icon 
{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Botones con iconos - Alineación */
.button .wb-button__icon,
.btn .wb-button__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.button.is-link {
    justify-content: left;
}

footer {
    padding-top: var(--padding-section-medium) !important;
}
.wb-accordion-sticky-sections__sticky-top{
    font-size: var(--text-sizes-text-medium);
}
[class*="__tagline"] {
    justify-content: center;
    align-items: center;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
}
.wb-accordion-sticky-sections__content-item{
    border-top: var(--stroke-divider-width) solid var(--_primitives---opacity--neutral-darkest-15);
}
img{
    border-radius: var(--radius-medium) !important;
}


a.js-wpml-ls-item-toggle.wpml-ls-item-toggle {
    border-radius: 12px;
    border: 1px solid var(--Opacity-Transparent, rgba(255, 255, 255, 0.00));
    background: var(--Opacity-Neutral-Darkest-5, rgba(11, 0, 6, 0.05));
    display: flex;
    padding: 8px 12px;
    align-items: center;
    gap: 8px;
    align-self: stretch;
}

li .wpml-ls-sub-menu a {
    border: 1px solid var(--Opacity-Transparent, rgba(255, 255, 255, 0.00));
    background: var(--Opacity-Neutral-Darkest-5, rgba(11, 0, 6, 0.05));
}

.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
    margin-top: 0.2rem !important;
    border: none !important;
    border-radius: 12px;
    background: var(--Opacity-Neutral-Darkest-5, rgba(11, 0, 6, 0.05)) !important;
    overflow: hidden;
}

/* Heading spacing */

.wb-heading__spacing + * {
    margin-top: var(--spacing-heading);
}

.wb-heading__spacing > * {
    margin-bottom: 0;
}

/* cookies styles */

.cky-notice-group {
    display: flex;
    gap: 2rem;
}

.cky-notice-group .cky-notice-des {
    flex-shrink: 1;
}

.cky-notice-group .cky-notice-btn-wrapper {
    flex-grow: 1;
    margin-top: 0;
    flex-shrink: 0;
}

.cky-consent-container {
    width: 1024px !important;
    max-width: 80%;
    font-family: "Lato", sans-serif;
}

.cky-btn.cky-btn-preferences,
.cky-btn.cky-btn-preferences:hover {
    background: transparent !important;
    border: unset !important;
    box-shadow: unset !important;
    transform: unset !important;
}

.cky-btn {
    border-radius: 100px !important;
    padding: 10px 24px !important;
}

@media screen and (max-width: 768px) {
    .cky-notice-group {
        flex-direction: column !important;
        gap: 2rem !important;
    }

    .cky-notice-group .cky-notice-des {
        flex-grow: 1 !important;
    }

    .cky-notice-group .cky-notice-btn-wrapper {
        flex-grow: 1 !important;
    }

    .cky-consent-container {
        width: 90% !important;
        max-width: 90% !important;
        left: 50%;
        transform: translateX(-50%);
        bottom: 1rem;
    }
}

/* Animaciones */

[data-wb-animation] {
    transition: all 0.5s;
    transition-timing-function: cubic-bezier(0.075, 0.5, 0.865, 1);
}
/* scale aniation*/
[data-wb-animation="scale-up"] {
    transform: scale(0.8);
}

[data-wb-animation="scale-up"].wb-animated {
    transform: scale(1);
}

/* zoom aniation*/
[data-wb-animation="zoom-in"] {
    transform: scale(0.8);
    opacity: 0;
}

[data-wb-animation="zoom-in"].wb-animated {
    transform: scale(1);
    opacity: 1;
}

/* fade aniation*/
[data-wb-animation="fade-in"] {
    opacity: 0;
}

[data-wb-animation="fade-in"].wb-animated {
    opacity: 1;
}

/* rotate aniation*/
[data-wb-animation="rotate-in"] {
    transform: rotate(-15deg);
    opacity: 0;
}

[data-wb-animation="rotate-in"].wb-animated {
    transform: rotate(0);
    opacity: 1;
}

/* slide aniation */
[data-wb-animation="slide-in-left"] {
    transform: translateX(-50%);
    opacity: 0;
}

[data-wb-animation="slide-in-left"].wb-animated {
    transform: translateX(0);
    opacity: 1;
}

[data-wb-animation="slide-in-right"] {
    transform: translateX(50%);
    opacity: 0;
}

[data-wb-animation="slide-in-right"].wb-animated {
    transform: translateX(0);
    opacity: 1;
}

[data-wb-animation="slide-in-up"] {
    transform: translateY(50%);
    opacity: 0;
}

[data-wb-animation="slide-in-up"].wb-animated {
    transform: translateY(0);
    opacity: 1;
}

[data-wb-animation="slide-in-down"] {
    transform: translateY(-50%);
    opacity: 0;
}

[data-wb-animation="slide-in-down"].wb-animated {
    transform: translateY(0);
    opacity: 1;
}

/* skew aniation*/
[data-wb-animation="skew-in"] {
    transform: skew(20deg);
    opacity: 0;
}

[data-wb-animation="skew-in"].wb-animated {
    transform: skew(0);
    opacity: 1;
}