/*
Theme Name: Base
Theme URI: https://www.invbit.com
Author: Base
Author URI: https://www.invbit.com
Description: Base para Betheme
Template: betheme
Version: 1.6.2
*/
@import './css/variables.css';

/*********************************\
              GENERAL
\*********************************/

html.lenis {
    height: auto;
}


.lenis.lenis-smooth {
    scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
}

.lenis.lenis-stopped {
    overflow: hidden;
}

.validate_email_against_bot,
.otgs-development-site-front-end,
.wpml-ls-statics-footer {
    display: none
}

:root {
    scrollbar-color: #F2B7D2 var(--blanco);
    scrollbar-width: thin;
}

.style-simple,
.style-simple .mfn-header-tmpl {
    --mfn-column-gap-bottom: 0;
    --mfn-column-gap-top: 0;
    --mfn-column-gap-right: 0;
    --mfn-column-gap-left: 0;
}

p:empty {
    margin: 0;
    display: none;
    visibility: hidden;
    opacity: 0;
}

.admin-bar .full-screen .section_wrapper {
    min-height: calc(100vh - 32px);
}

.section.has-video .section_video {
    display: flex;
    align-items: center;
    justify-content: center;
}

.section.has-video .section_video video {
    top: unset;
    left: unset;
    height: 100%;
}

.section.has-video .section_video .mask {
    display: none;
}

.style-simple .responsiveWidth {
    max-width: calc(2 * var(--halfSection));
}

.mobile-side-slide {
    overflow-x: clip !important;
}

.section_wrapper,
.container {
    box-sizing: border-box;
    margin-inline: 4rem;
}

.mfn-popup-tmpl .section_wrapper {
    margin: 0;
}

.slick-list {
    width: 100%;
}

.slick-track {
    display: flex;
}

.joinchat__button {
    right: 0 !important;
    bottom: 0 !important;
    background: #E3252A var(--joinchat-ico) 50%/60% no-repeat !important;
}

.invbit-credits-title {
    font-weight: 500 !important;
    letter-spacing: -0.56px;
}

.invbit-credits-slogan h3 {
    font-weight: 500 !important;
}

#Wrapper li.invbit-credits-feature-item {
    border: 2px solid #e3252a !important;
    border-radius: 100vmax !important;
    padding: 0.5rem 1rem !important;
    color: #e3252a !important;
}

/* Tipografía */
h1,
.single-post #Content .sections_group h2 {
    font-size: var(--size-h1);
    line-height: 1.1;
    font-weight: 400;
    letter-spacing: -1.28px;
}

h2,
.post-header .title_wrapper h1 {
    font-size: var(--size-h2);
    line-height: 1.2;
    font-weight: 400;
    letter-spacing: -0.96px;
}

h3, .size-h3 {
    font-size: var(--size-h3);
    line-height: 1.2;
    font-weight: 400;
    letter-spacing: -0.68px;
}

h4 {
    font-size: var(--size-h4);
    line-height: 1.2;
    font-weight: 400;
    letter-spacing: -0.68px;
}

h5 {
    font-size: var(--size-h5);
    line-height: 1.2;
    font-weight: 400;
}

h6 {
    font-size: var(--size-h6);
    line-height: 1.2;
    font-weight: 400;
}

body,
p {
    font-size: var(--size-p);
    line-height: 1.6;
    font-weight: 400;
    letter-spacing: -0.64px;
}

.lead,
.big {
    font-size: var(--size-plead);
    line-height: 1.6;
    font-weight: 500;
    letter-spacing: -0.8px;
}

.small {
    font-size: var(--size-psmall);
    line-height: 1.2;
    font-weight: 400;
}

a:hover {
    text-decoration: none;
}

.decorative {
    font-family: var(--font-decorative);
}

.principal {
    color: var(--principal);
}

.secundario {
    color: var(--secundario);
}

.blanco {
    color: var(--blanco);
}

.rosa {
    color: var(--rosa);
}

.verde,
.verde * {
    color: var(--verde);
}

.button {
    height: var(--button-height);
}

.fw600,
.fw600 * {
    font-weight: 600;
}

.fs-1-rem,
.fs-1-rem * {
    font-size: 1rem;
}

/* Tipografía. END */

/* Contenedores */
#Wrapper .section_wrapper,
#Wrapper .container {
    max-width: 1600px;
    margin: auto;
}


#Wrapper .medium-box>.section_wrapper {
    max-width: 1184px !important;
    margin: auto;
}

@media (width>=1940px) {
    .elige-camino>.section_wrapper {
        padding-inline: 4rem;
    }

    #Wrapper .testimonios {
        max-width: 1600px !important;
    }

    #Wrapper section.full-width>.section_wrapper,
    #Wrapper section.testimonios>.section_wrapper {
        max-width: 1920px !important;
        margin-inline: auto;
    }

    #Content .section>.section_wrapper {
        max-width: 1600px;
        margin-inline: auto;
    }

}

@media (width>=1024.9px) and (width<=1920px) {
    #Wrapper section.testimonios {
        margin-inline: 4rem;
    }
}

@media (width<=1024px) {

    #Wrapper section.testimonios,
    #Wrapper .form-section,
    #Wrapper .camino,
    #Wrapper .elige-camino,
    #Wrapper .hero {
        margin-inline: 1.5rem;
    }

    #Wrapper #Content .services-section {
        margin-inline: 0;
    }
}

@media (width>=768px) and (width<=1920px) {
    #Content section.section {
        padding-inline: 1.5rem;
        margin-inline: 1.5rem;
    }
}

@media (width<=767.9px) {
    #Content section.section {
        padding-inline: 1rem;
        margin-inline: 1rem;
    }

    #Wrapper .column_breadcrumbs {
        margin-bottom: 1rem;
    }
}

/* Contenedores. END */
.cc2 ul.mfn-list {
    column-count: 2;
}

.mfn-list-top .mfn-list-icon {
    margin-top: 6px;
}

ul.breadcrumbs.no-link a {
    color: #0D2F2D;
    font-weight: 500;
}

.nowrap,
.nowrap>.mcb-wrap-inner {
    flex-wrap: nowrap;
}

.flexColumn,
.flexColumn>.mcb-wrap-inner {
    flex-direction: column;
}

.place-center,
.place-center>.mcb-wrap-inner {
    place-content: center;
}

@media (width<=768px) {

    .nowrap,
    .nowrap>.mcb-wrap-inner {
        flex-wrap: wrap;
    }

    .cc2 ul.mfn-list {
        column-count: 1;
    }

}

.gap-1-rem>.mcb-wrap-inner {
    gap: 1rem;
}

.gap-4-rem>.mcb-wrap-inner {
    gap: 4rem;
}

.gap-120>.mcb-wrap-inner {
    gap: 120px;
}

@media (width<=959px) {
    .gap-120>.mcb-wrap-inner {
        gap: 60px;
    }
}

@media (width<=768px) {
    .gap-120>.mcb-wrap-inner {
        gap: 24px;
    }

    .gap-4-rem>.mcb-wrap-inner {
        gap: 2rem;
    }
}

.br-16,
.br-16>.mcb-background-overlay {
    border-radius: 16px;
}

/* 
p.title {
    text-wrap: balance;
} */

/*********************************\
            COMPLIANZ
\*********************************/
/* Cookies button */
body #cmplz-manage-consent .cmplz-manage-consent {
    background: #F2B7D2;
    right: unset !important;
    left: 10px;
    font-size: 0px;
    color: var(--negro) !important;
    bottom: 10px !important;
    padding: 0 !important;
    min-width: 1px;
    width: 40px;
    height: 40px;
    border-radius: 100px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    -o-border-radius: 100px;
}

body #cmplz-manage-consent .cmplz-manage-consent:before {
    content: "";
    background: transparent url(imagenes/icono-ajustes.svg) center center / contain no-repeat;
    width: 60%;
    height: 60%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.8s ease;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
}

body #cmplz-manage-consent .cmplz-manage-consent:hover:before {
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}

/* Cookies banner */
#cmplz-cookiebanner-container .cmplz-body {
    scrollbar-width: none;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner {
    grid-row-gap: 5px;
    padding: 20px;
}

#cmplz-cookiebanner-container .cmplz-header {
    display: none;
}

#cmplz-cookiebanner-container p {
    margin: 0;
}

#cmplz-cookiebanner-container .cmplz-buttons .cmplz-btn {
    letter-spacing: 0;
    font-size: var(--size-psmall) !important;
    line-height: 1.2 !important;
    text-transform: none;
    justify-content: center;
    height: auto;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category:not(:last-child) {
    margin-bottom: 5px;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-category-header .cmplz-category-title,
#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-description>span {
    font-size: var(--size-psmall);
    line-height: 1;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-category-header .cmplz-always-active {
    font-size: 10px;
    line-height: 1;
}

div#cmplz-cookiebanner-container button {
    border-radius: 100vmax;
    text-transform: lowercase !important;
}

/* Complianz documents */
#cmplz-document {
    max-width: 100%;
    padding: 40px 0;
    text-align: justify;
}

#cmplz-document h2,
#cmplz-document h3,
#cmplz-document h4 {
    letter-spacing: -0.56px;
    font-weight: 400;
    border: 0;
    padding: 0;
    margin-bottom: 15px;
    line-height: 1.2;
}

#cmplz-document h2 {
    font-size: 3rem;
    margin-top: 60px;
}

#cmplz-document h2:first-child {
    margin-top: 0;
}

#cmplz-document h3 {
    font-size: var(--size-h3);
}

#cmplz-document h4 {
    font-size: var(--size-h4);
}

#cmplz-document p,
#cmplz-document ul,
#cmplz-document ul li {
    font-size: 1.1rem;

    @media (width<=768px) {
        font-size: 1rem;
    }
}


/*********************************\
              HEADER
\*********************************/
.mfn-header-login {
    --menu-width: 320px;
    position: fixed;
    display: block;
    border-radius: 0;
    box-shadow: 0 0 10px rgb(0 0 0 / 10%);
    width: var(--menu-width);
    height: 100%;
    top: 0 !important;
    left: auto !important;
    right: calc(var(--menu-width) * -1);
    opacity: 0;
    margin: 0;
    transition: right 0.5s ease, opacity 0.5s ease;
    -webkit-transition: right 0.5s ease, opacity 0.5s ease;
    -moz-transition: right 0.5s ease, opacity 0.5s ease;
    -ms-transition: right 0.5s ease, opacity 0.5s ease;
    -o-transition: right 0.5s ease, opacity 0.5s ease;
}

.mfn-show-login-modal .mfn-header-login {
    right: 0;
    opacity: 1;

    p.title {
        font-weight: 700;
    }
}

body.mfn-show-login-modal.no-overlay #body_overlay {
    display: block !important;
}


/* Mi cuenta */
.mfn-header-account-link {
    flex-direction: row;
}

.woocommerce .woocommerce-MyAccount-navigation ul li a {
    color: var(--negro);
}

.woocommerce .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce .woocommerce-MyAccount-navigation ul li a:hover {
    border-radius: 100vmax;
}

.woocommerce .woocommerce-MyAccount-navigation ul li {
    margin-bottom: 6px;
    font-size: 1.125rem;
}

.woocommerce-account #Content .button__flair {
    display: none;
}

.woocommerce .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--gestion-clases a::before {
    content: "\e826";
    font-family: mfn-icons;
}

.woocommerce .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--reserva-clases a:before {
    content: "\e8c4";
    font-family: mfn-icons;
}

.woocommerce-MyAccount-content .woocommerce-info {
    max-width: 100%;
    border-radius: 16px;
    background-color: #F5F5F4;
}

.panel-usuario div#amelia-container,
.amelia-app-booking #am-cabinet .am-cabinet-auth {
    margin: 1.5rem 0 !important;
}

.woocommerce-MyAccount-content h2 {
    max-width: 100%;
    width: 100%;
}

.woocommerce-account .the_content_wrapper>.woocommerce {
    display: grid;
    align-items: start;
    gap: 4rem;
}

.woocommerce-account .the_content_wrapper>.woocommerce {
    grid-template-columns: 400px auto;
}


.woocommerce-account .the_content_wrapper>.woocommerce::before,
.woocommerce-account .the_content_wrapper>.woocommerce::after {
    display: none;
}

.woocommerce .woocommerce-MyAccount-navigation {
    margin: 0;
    clear: both;
    width: 100%;
    height: fit-content;
}

.woocommerce-account .woocommerce-MyAccount-content {
    width: 66%;
    clear: both;
    width: 100%;
}

form.woocommerce-EditAccountForm.edit-account {
    max-width: 600px;
}

form.woocommerce-EditAccountForm.edit-account button.woocommerce-Button.button {
    color: #fff;
    border: 2px solid var(--mfn-button-bg);
    margin-top: 2rem;
}

#Wrapper form.woocommerce-EditAccountForm.edit-account button.woocommerce-Button.button:hover {
    background-color: transparent;
    border: 2px solid var(--mfn-button-bg);
    color: var(--mfn-button-bg);
}

span#account_display_name_description {
    font-size: 1rem;
}

a.edit {
    width: 100%;
    margin-bottom: 2rem;
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: 1px;
}

.amelia-v2-booking #amelia-container .am-sc__top-menu .am-cc__edit-btn {
    display: none;
}

.el-popper.el-popover .am-cc__edit-item:nth-child(2), .el-popper.el-popover .am-cc__edit-item:nth-child(3) {
    display: none;
}


@media (width>=1240px) {

    .woocommerce-MyAccount-content h2 {
        font-size: 3.4rem;
    }
}

@media (width<=1239.9px) {
    .woocommerce-account .the_content_wrapper>.woocommerce {
        grid-template-columns: repeat(2, auto);
        gap: 1rem;
    }

    .woocommerce-MyAccount-content h2 {
        font-size: 2.4rem;
    }

    .woocommerce-account #Wrapper section.section.mcb-section.the_content.has_content {
        margin: 0;
    }
}

@media (width<=1024px) {
    .woocommerce-account .the_content_wrapper>.woocommerce {
        grid-template-columns: 1fr;
    }
}

@media (width<=768px) {
    .u-column1.col-1.woocommerce-Address {
        border-bottom: 1px solid #bdbdbd9e;
        padding-bottom: 40px;
        margin-bottom: 32px;
    }
}


/* Mi cuenta. END */

.mcb-header-section>.section_wrapper {
    padding-inline: 1rem;
}

ul.mfn-header-menu>li {
    padding-block: 2rem;
}

.menu-item a {
    transition: letter-spacing 0.3s ease;
}

.menu-item a:hover {
    letter-spacing: 0.5px;
}

header .column_button .button__flair:before {
    background-color: #E3252A;
}

/* Mega menu */
/* #Wrapper .mfn-megamenu-grid>.mfn-builder-content {
    max-width: 1920px !important;
} */

#Wrapper .mfn-menu-item-megamenu>.mfn-builder-content {
    max-width: 100% !important;
    padding-inline: 0;
    /* left: -64px; */
}

div.mfn-menu-item-megamenu {
    top: 92px;
}

.mega-menu>.section_wrapper>.wrap>.mcb-wrap-inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem 3rem;
}

/* mega menu items */
.mega-menu-item-content {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.mega-menu-item p {
    margin: 0;
    font-size: 0.85rem;
    letter-spacing: -0.532px;
}

.mega-menu-item .left-content {
    min-width: 93px;
    max-width: 93px;
}


.mega-menu-item .left-content img {
    border-radius: 16px;
}

.mega-menu-item .right-content {
    min-width: 200px;
}

.mega-menu-item-content * {
    color: #0D2F2D;
}

.mega-menu-item .right-content p:first-of-type {
    font-family: 'Instrument Serif';
    font-size: 1.75rem;
    letter-spacing: -0.56px;
    display: flex;
    gap: 2rem;
    transition: letter-spacing 0.3s ease;
}

.mega-menu-item a .right-content p:first-of-type img {
    transition: transform 0.3s ease;
}

.mega-menu-item a:hover .right-content p:first-of-type img {
    transform: translateX(12px);
}

.mega-menu-item a:hover .right-content p:first-of-type {
    letter-spacing: 0px;
}

@media (width<=768px) {
    #Wrapper .mcb-header-section>.section_wrapper {
        margin-inline: 1rem;
    }
}

/* Sidebar menu */

.sidebar-cta {
    position: absolute;
    bottom: 50px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
}

ul#menu-menu-lateral {
    flex-flow: column nowrap;
}

#menu-menu-lateral .current-menu-ancestor {
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #0d2f2d45;
    padding-bottom: 1rem;
}

ul#menu-menu-lateral li {
    max-width: fit-content;
}

#menu-menu-lateral ul.sub-menu.mfn-submenu {
    flex-flow: column nowrap;
}

.mfn-sidemenu-menu li>.outer-menu-sub {
    right: unset;
    left: 90px;
    top: 15px;
}

.btn-servicios span.button_icon::after {
    content: ' servicios';
    font-family: 'Quicksand';
    color: #E3252A;
    font-weight: 500;
    letter-spacing: -0.64px;
    margin-left: 7px;
}

/* Language selector */
.mfn-language-switcher .wpml-ls-legacy-list-horizontal {
    padding: 0;

    ul {
        display: flex;
    
        .wpml-ls-display {
            display: none !important;
        }
    
        .wpml-ls-current-language .wpml-ls-link {
            text-decoration: underline;
            text-underline-offset: 2px;
        }
    }
} 

/*********************************\
              FOOTER
\*********************************/
#Wrapper footer a {
    transition: letter-spacing 0.3s ease;
}

#Wrapper footer a:hover {
    letter-spacing: 0;
}

.footer-grid>.mcb-wrap-inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

@media (width<=1330px) and (width>=960px) {
    .footer-grid>.mcb-wrap-inner {
        grid-template-columns: 130px repeat(3, 1fr);
        column-gap: 1rem;

        .column_image.footer-logo .mcb-column-inner {
            margin-left: 0 !important;

            .image_frame {
                width: 90px;
            }
        }
    }
}

@media (width<=959px) {
    .footer-grid>.mcb-wrap-inner {
        grid-template-columns: 1fr;
    }
}

ul#mfn-footer-menu-72 li a {
    transition: letter-spacing 0.3s ease;
}

ul#mfn-footer-menu-72 li a:hover {
    letter-spacing: 0.5px;
}

ul#mfn-footer-menu-72 img {
    vertical-align: top;
    margin-top: 5px;
}

/* Footer móvil */
.footer-movil ul {
    list-style: none;
}

.footer-movil .mfn-menu-shortcode>ul {
    margin-left: 0;
}

#Wrapper .footer-movil .title i {
    left: unset;
    right: 0;
}

.style-simple .accordion .question .title {
    box-shadow: unset;
}

.style-simple .accordion .question {
    border-left: 0;
    border-bottom: 1px solid #e3252a3d;
}

.style-simple .accordion .question.active:after {
    display: none;
}

.style-simple .accordion .question .answer {
    background: none;
    padding-inline: 2rem;
    box-shadow: unset;
    padding-block: 0;
    margin-bottom: 1rem;
}

.question .inner-content {
    display: flex;
    flex-direction: column;
    row-gap: 0.5rem;
}

#Wrapper .footer-movil .inner-content a {
    color: #E3252A;
    font-weight: 500;
}

body .mfn-footer-tmpl .mcb-section:not(.full-width) {
    max-width: 100%;
}

body #back_to_top.sticky {
    background-color: #F6C6DE;
    bottom: 100px;
    right: 30px !important;
    width: 40px;
    height: 40px;
    border-radius: 100px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    -o-border-radius: 100px;
    box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}

#back_to_top i {
    position: absolute;
    left: 53%;
    top: 56%;
    transform: translate(-50%, -50%);
    z-index: 10;
}

a#back_to_top>i::before {
    content: url(/wp-content/uploads/2025/08/arrowright-1-2025-08-21-arrowright-1.svg);
    transform: rotate(-90deg);
}

#back_to_top .button__flair:before {
    background-color: #E3252A;
}

body #back_to_top.sticky:before {
    content: none;
}

@media (width<=480px) {
    body #back_to_top.sticky {
        right: 16px !important;
        bottom: 80px;
    }
}

/*Kit digital*/
body #mfn-footer-template .financiacion {
    display: grid;
    grid-template-columns: 1fr 1fr 5fr;
    gap: 20px;
    text-align: left;
    align-items: center;
    max-width: 1600px;
    margin: 0 auto;
}

body #mfn-footer-template .financiacion>div {
    line-height: 0;
}

body #mfn-footer-template .financiacion>div img {
    width: auto;
}

body #mfn-footer-template .financiacion>div p {
    font-size: 13px;
    line-height: 15px;
    margin-bottom: 0;
    color: #0D2F2D;
}

@media only screen and (max-width: 959px) {
    body #mfn-footer-template .financiacion {
        grid-template-columns: 1fr 1fr;
        text-align: center;
        gap: 5px;
    }

    body #mfn-footer-template .financiacion>div:last-child {
        grid-column: 1 / span 2;
    }
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay p.pojo-a11y-toolbar-title {
    line-height: 1.2;
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
    font-size: 26px;
    padding: 8px;
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay p.pojo-a11y-toolbar-title {
    line-height: 1.2;
    font-size: 1rem;
}

#pojo-a11y-toolbar .pojo-a11y-toolbar-overlay,
#pojo-a11y-toolbar .pojo-a11y-toolbar-overlay ul.pojo-a11y-toolbar-items.pojo-a11y-links {
    border-color: #F2B7D2;
    border-radius: 24px 0 0 24px;
    border-right: 0;
}

#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
    background-color: #F2B7D2 !important;
    color: #0d2f2db5 !important;
    border-radius: 100vmax 0 0 100vmax !important;
    border: 2px solid #0d2f2d36;
    border-right: 0;
}


#pojo-a11y-toolbar.pojo-a11y-toolbar-right .pojo-a11y-toolbar-toggle {
    top: 80px;
}


/*********************************\
              INICIO
\*********************************/
/* buscando equilibrio */
.mobile-height .column_image {
    width: 100% !important;
    flex: unset !important;
    max-width: 100% !important;
}

@media (width<=768px) {
    .mobile-height .column_image .image_frame {
        width: 100%;
    }

    .mobile-height .column_image .image_frame img {
        max-height: 400px;
        object-fit: cover;
        margin: auto;
        width: 100%;
    }
}

@media (width<=550px) {
    .mobile-height .column_image .image_frame img {
        max-height: 240px;
    }
}

.valoraciones {
    display: flex;
    justify-content: space-between;
    max-width: 500px;
    flex-wrap: wrap;
    gap: 2rem;
    /* margin: auto; */
}

.valoraciones>div {
    display: flex;
    flex-direction: column;
    row-gap: 8px;
}

.valoraciones p {
    margin: 0;
}

.valoraciones .title {
    font-family: "Instrument Serif", sans-serif;
    font-size: 4rem;
    line-height: 1;
    letter-spacing: -1.28px;
}

.valoraciones .subtitle {
    font-weight: 600;
    letter-spacing: -0.64px;
}

.slider-testimonios .icon-wrapper {
    display: none;
}

.slider-testimonios .slick-track {
    place-items: center;
}

.testimonios .mfn-icon-box .desc-wrapper>div:first-of-type {
    font-family: Quicksand;
    font-size: 13.3px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.532px;
    color: #0D2F2D;
}

.testimonios .slider-controls .slick-arrow {
    padding: 0;
}

@media (width<=768px) {
    .valoraciones .title {
        font-size: 3rem;
    }

    .valoraciones .subtitle {
        font-size: 1;
    }
}

/* Slider testimonios */
#Wrapper section.testimonios {
    padding-inline: 0;
}

.testimonios .slider-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    top: 50%;
    width: 100%;
}

.testimonios .slider-controls button {
    background-color: transparent;
}

@media (width<=1200px) {
    .testimonios .slider-controls {
        top: unset;
        bottom: 0;
    }
}

/* @media (width<=680px) {
    .testimonios .slider-controls {
        display: none;
    }
} */

/* Slider testimonios nuevo */
.resenas-slider {
    .resena {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        color: var(--verde);
        font-weight: 500;

        .resena-inner {
            width: 100%;
            max-width: 470px;

            .resena-content {
                margin-bottom: 24px;

                .read-more {
                    font-style: italic;
                    font-weight: 400;
                    display: block;
                    font-size: .8em;
                    color: var(--verde);

                    &:hover {
                        color: var(--principal);
                    }
                }
            }

            .resena-author {
                font-weight: 500;
                margin: 0;
            }

            .resena-category {
                font-family: var(--font-text);
                font-size: 13.3px;
                font-weight: 400;
                color: var(--verde);
                margin: 0;
            }
        }
    }

    .slick-arrow {
        padding: 0;
        border-radius: 0;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        -ms-border-radius: 0;
        -o-border-radius: 0;
        background: none !important;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1;

        &.slider-prev {
            left: 0;
        }

        &.slider-next {
            right: 0;
        }

        @media (width <= 1200px) {
            top: unset;
            bottom: 0;
        }
    }
}

.resena-content-full {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(20px);

    .resena-content-full-inner {
        max-width: 690px;
        margin: auto;
        padding: 64px 24px;
        background: var(--rosaclaro);
        border-radius: 50px;
        -webkit-border-radius: 50px;
        -moz-border-radius: 50px;
        -ms-border-radius: 50px;
        -o-border-radius: 50px;
        text-align: center;
        color: var(--verde);
        position: relative;
        box-shadow: 0 0 4px rgb(0 0 0 / 45%);
        
        p,li {
            font-weight: 500;
        }

        .close-resena-content-full {
            position: absolute;
            top: 24px;
            right: 34px;
            color: var(--verde);
            font-size: 20px;
        }
    }
}


/* Pasos */

/* Grid Principal */
.services-container>.mcb-wrap-inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 6vw;
    margin-bottom: 4.5rem;
    max-width: 1430px;
}

.services-container.right>.mcb-wrap-inner {
    margin-left: auto;
}

.services-container .pasos-item {
    display: flex;
    /* align-items: center; */
    gap: 2rem;
    height: 100%;
}

.services-container .pasos-item h3 {
    font-size: 2.125rem;
    margin: 0;
}

.services-container .pasos-item p {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: -0.64px;
}

.services-container .pasos-item * {
    color: #0D2F2D;
}

.services-container .pasos-item .left img {
    border-radius: 16px;
    width: 100%;
    max-width: 260px;
    height: auto;
    object-fit: cover;
}

.services-container .pasos-item .left {
    flex: 0 0 auto;
}

.services-container .pasos-item .right {
    /* flex: 0 0 60%; */
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: space-between;
    margin-top: .5rem;
}

.pasos-item .button {
    background-color: transparent;
    border: 2px solid #0D2F2D;
    max-width: fit-content;
}

.pasos-item .button__flair {
    z-index: -1;
}

.pasos-item .button .button__flair:before {
    background-color: #0D2F2D;
}

.rojo .button .button__flair:before {
    background-color: #e3252a;
}

.amarillo .button .button__flair:before {
    background-color: #F7FAE4;
}

.rosa .button .button__flair:before {
    background-color: #FBE5E9;
}

.verde .button .button__flair:before {
    background-color: #D9ECD8;
}

.verde .button .button_label {
    color: #fdfdfc;
}

.verde .button:hover .button_label {
    color: #0D2F2D;
}


.pasos-item .button:hover {
    background-color: #0D2F2D;
    color: #fdfdfc;
}

.services-container .column_icon_box_2 {
    height: 100%;
}

.services-container .mfn-icon-box h2 {
    text-align: left;
}

.services-container .mfn-icon-box {
    min-height: 100%;
}

.services-container .mfn-icon-box i {
    transition: transform 0.3s ease;
}

.services-container .mfn-icon-box:hover i {
    transform: rotate(180deg);
}

#Wrapper .services-container .mfn-icon-box:hover h2 {
    letter-spacing: 0px;
}

@media (width<=1441px) {
    .services-container>.mcb-wrap-inner {
        grid-template-columns: 1fr;
        row-gap: 3.5rem;
    }

    .services-container .pasos-item {
        align-items: center;
    }
}

@media (width<=959px) {
    .mobile-height-imgs .image_frame {
        width: 100%;
    }

    .mobile-height-imgs img {
        width: 100%;
        max-height: 750px;
        object-fit: cover;
    }

    .mobile-height-imgs .mfn-item-inline {
        width: 100% !important;
        max-width: 100% !important;
        flex: unset !important;
    }
}

@media (width<=870px) {
    .services-container>.mcb-wrap-inner {
        row-gap: 3.5rem;
        column-gap: 2rem;
        margin-bottom: 56px;
    }

    .services-container>.mcb-wrap-inner:last-of-type {
        margin: 0;
    }

    .services-container .pasos-item .left img {
        max-height: 450px;
        object-fit: cover;
        max-width: unset;
        width: 100%;
    }

    #Wrapper .servicios .services-container .pasos-item .left img {
        max-width: 100%;
    }

    .services-container .pasos-item .left {
        width: 100%;
    }

    .services-container .pasos-item {
        flex-direction: column;
        align-items: start;
        gap: 1rem;
    }

}

@media (width<=768px) {
    .services-container .pasos-item .right {
        gap: 0.5rem;
    }
}

@media (width<=505px) {
    #Wrapper .services-container>.mcb-wrap-inner {
        grid-template-columns: 1fr;
    }

    .servicios .services-container .pasos-item h3 {
        font-size: 2.2rem;
    }
}

/* Wave Marquee */
.wave-marquee svg {
    font-family: 'Instrument Serif';
    font-size: 2rem;
    user-select: none;
    height: 240px;
    overflow: visible;
}


/*********************************\
             CONTACTO
\*********************************/
/* Formulario contacto */
.contact-form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.contact-form .form-row {
    display: flex;
    gap: 0.5rem;
    justify-content: space-between;
    flex-wrap: wrap;

    &.message-row {
        gap: 0 !important;
    }
}

.contact-form .form-row>div {
    width: 49%;
}

.contact-form label {
    color: #0D2F2D;
    margin-bottom: 10px;
    letter-spacing: -0.8px;
    width: 100%;
}

.contact-form a {
    color: #0D2F2D;
}

.contact-form .form-legal p {
    color: #0D2F2D;
    font-size: 0.8rem;
    line-height: 1.5em;
    text-align: justify;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form select,
.contact-form textarea {
    border: 0;
    min-height: 58px;
    font-weight: 600;
}

.contact-form input:focus,
.contact-form select:focus {
    border: 2px solid #0d2f2d;
}

.contact-form .wpcf7-acceptance a {
    border-bottom: 1px solid;
}

.form-row.button-row button {
    min-width: 100%;
}

.contact-info>.mcb-wrap-inner {
    max-width: 340px;
    margin: auto;
    text-align: center;
    justify-content: center;
    align-items: flex-start;
    align-content: center;

    @media (width<=959px) {
        align-items: center;
    }
}

.contact-info a .desc {
    transition: letter-spacing 0.3s ease;
}

.contact-info a:hover .desc {
    letter-spacing: 0;
}

.mail-icon .icon-wrapper {
    border-radius: 100vmax;
    min-height: 26px;
    min-width: 26px;
    background-color: #E3252A;
}

#Wrapper .mail-icon .icon-wrapper i {
    border-radius: 100vmax;
    color: #fff;
    font-size: 15px;
}

/* Estilo estándar  */
.contact-form select,
::placeholder {
    font-size: 16px;
    letter-spacing: -0.64px;
    font-weight: 600;
}


/* Mapa */
.map-section .column_map_basic img {
    max-height: 660px;
    width: 100%;
    object-fit: cover;
}

/* Otros forms */
.contact-form.habelas-hainas .form-row {
    flex-flow: column nowrap;
}


/*********************************\
            SELECT STYLES
\*********************************/
/* Estilos para las opciones del desplegable */
select option {
    font-size: 1rem;
    font-weight: 500;
}

select option:hover {
    background-color: #0d2f2d;
}

select option:checked {
    background-color: #0d2f2d;
    color: #fff;
    font-weight: 600;
}

.contact-form.contacto select option:hover {
    background-color: #F6C6DE;
}

.contact-form.contacto select option:checked {
    background-color: #F6C6DE;
    color: #0D2F2D;
}

@media (width>=959px) and (width<=1220px) {
    .contact-form.contacto .form-row {
        flex-wrap: wrap;
        gap: 1rem;
    }

    .contact-form .form-row>div {
        width: 100%;
    }
}


@media (width<=768px) {
    select {
        padding: 14px 36px 14px 16px;
        font-size: 16px;
        /* Evita zoom en iOS */
        min-height: 52px;
    }

    .select-large {
        padding: 18px 44px 18px 20px;
        min-height: 64px;
    }

    .select-small {
        padding: 10px 28px 10px 12px;
        min-height: 40px;
    }

    .contact-form label {
        font-size: 1rem;
    }

    #Wrapper .form-section {
        margin-inline: 1rem;
    }
}

@media (width<=614px) {
    .contact-form label {
        font-size: 1.2rem;
    }

    .contact-form {
        gap: 1rem;
    }

    .contact-form .form-row {
        flex-wrap: wrap;
        gap: 1rem;
    }

    .contact-form .form-row>div {
        width: 100%;
    }

    .contact-form .wpcf7-form-control-wrap {
        margin: 0;
    }
}

/* WebKit browsers (Chrome, Safari, newer Edge) */
::-webkit-input-placeholder {
    font-size: 16px;
    letter-spacing: -0.64px;
    font-weight: 600;
}

/* Mozilla Firefox 19+ */
::-moz-placeholder {
    font-size: 16px;
    letter-spacing: -0.64px;
    font-weight: 600;
    opacity: 1;
}

/* Mozilla Firefox 4 to 18 */
:-moz-placeholder {
    font-size: 16px;
    letter-spacing: -0.64px;
    font-weight: 600;
    opacity: 1;
}

/* Internet Explorer 10-11 */
:-ms-input-placeholder {
    font-size: 16px;
    letter-spacing: -0.64px;
    font-weight: 600;
}

/* Microsoft Edge (legacy) */
::-ms-input-placeholder {
    font-size: 16px;
    letter-spacing: -0.64px;
    font-weight: 600;
}


body .wpcf7-form [type="submit"] {
    width: 100%;
    margin: 0 !important;
}

body .wpcf7-form .wpcf7-spinner {
    margin: 5px 0 0 -12px;
    left: 50%;
}

body .wpcf7-form .form-legal {
    font-size: 0.7em;
    line-height: 1.5em;
    opacity: 0.7;
    padding: 10px 0;
    text-align: justify;
}

body .wpcf7-form input[name="politica"]+span {
    font-weight: 500;
}

body .column_cf7 input[type="checkbox"] {
    margin: 0;
    min-height: 21px;
    min-width: 21px;
    vertical-align: middle;
    margin-bottom: 3px;
    margin-right: 12px;
}

body .wpcf7-list-item {
    margin: 0;
}

body input[type="checkbox"],
body input[type="radio"] {
    accent-color: var(--principal);
}

.form-popup>.section_wrapper {
    margin: 0;
}


/*********************************\
         PÁGINAS INTERNAS
\*********************************/

/* Sobre mí */
#Wrapper .sobre-mi h1 {
    font-size: clamp(4.6rem, 13vw, 13rem);
    letter-spacing: clamp(1px, 0.32vw, -7.2px);
}


#Wrapper #Content .slider-about-section {
    padding-inline: 0;
    margin-inline: 0;
}

.slider-about .slick-track {
    /* gap: 1.5rem; */
    cursor: grab;
}

.slider-about .slider-controls {
    position: static;
    place-content: center;
}

.slider-about .slider-controls .slick-dots button {
    font-size: 0;
    background-color: #e3252a;
    opacity: 0.5;
    padding: 0;
    min-width: 14px;
    min-height: 14px;
    border-radius: 100vmax;
    transition: width 0.3s ease, height 0.3s ease, opacity 0.3s ease;
}

.slider-about .slick-dots .slick-active button {
    min-width: 20px;
    min-height: 20px;
    opacity: 1;
}

.slider-controls>.slick-dots {
    display: flex;
    justify-content: center;
    flex-direction: row;
    gap: 1rem;
    margin-top: 2rem;
}

.slider-about .image_frame {
    padding: .5rem;
}

.slider-about .image_frame .image_wrapper img {
    border-radius: 16px;
}

/* Sobre mí. END */

/* SERVICIOS */
#Wrapper .intro-servicios p.title {
    font-size: clamp(4.6rem, 22.5vw, 22.5rem);
    letter-spacing: clamp(1px, 0.32vw, -7.2px);
    line-height: 1;
}

.servicios .services-container .pasos-item {
    gap: 1.5rem;
}

.servicios .services-container .pasos-item h3 {
    font-size: 3rem;
    letter-spacing: -0.96px;
}

.servicios .services-container .pasos-item .right {
    justify-content: center;
    margin-top: 0;
}

.servicios .services-container .pasos-item .left img {
    max-width: 132px;
}

.servicios .pasos-item .button .button__flair {
    display: none;
}

.servicios .services-container .pasos-item * {
    color: #e3252a;
}

.servicios .pasos-item .button {
    background-color: transparent;
    border: 0;
    border-bottom: 2px solid #e3252a;
    border-radius: 0;
    padding: 8px 4px;
    max-width: fit-content;
    height: fit-content;
    transition: letter-spacing 0.3s ease;
}

.servicios .pasos-item .button:hover {
    letter-spacing: 0.5px;
}

.servicios .services-container .pasos-item .button img {
    transform: rotate(136deg);
}

@media (width<=1180px) {
    .servicios .services-container .pasos-item h3 {
        font-size: 2rem;
    }
}

@media (width<=768px) {
    .servicios .services-container .pasos-item {
        gap: 0.5rem;
    }
}


/* Row camino */
.camino .logo-svg>div {
    text-align: center;
}

/* Sticky cards */
#Wrapper #Content .sticky-cards {
    padding-inline: 0;
    margin-inline: 0;
}

#Wrapper .sticky-cards>.section_wrapper,
#Wrapper .sticky-card>.section_wrapper {
    max-width: 100%;
}

#clases-individuales section#clases-individuales,
#clases-conversacionales section#clases-conversacion,
#club-lectura section#club-lectura,
#eventos-solidarios section#eventos-solidarios,
#habelas-hainas section#habelas-hainas {
    padding-inline: 4rem;
}


.sticky-card>.section_wrapper {
    display: grid;
    grid-template-columns: 75% 1fr;
    gap: 2rem;
}

.sticky-card .gap>.mcb-wrap-inner {
    gap: 1rem;
}

/* Sticky cards responsive */
.sticky-cards .desc>span>div {
    top: 50px;
}

@media (width<=1100px) {
    .sticky-card>.section_wrapper {
        grid-template-columns: 1fr;
    }

    .sticky-card .col-img {
        display: none;
    }
}


@media (width<=959px) {
    .sticky-card .col-img {
        display: block;
    }

    .sticky-card>.section_wrapper {
        grid-template-columns: 75% 1fr;
    }

    #clases-individuales section#clases-individuales,
    #clases-conversacionales section#clases-conversacion,
    #club-lectura section#club-lectura,
    #eventos-solidarios section#eventos-solidarios,
    #habelas-hainas section#habelas-hainas {
        padding-inline: 2rem;
        margin-inline: 1.5rem;
    }
}

@media (width>=768.9px) {

    .sticky-card,
    .sticky-cards .desc div {
        /* position: sticky; */
        /* will-change: transform; */
    }

}

@media (width<=768px) {
    .sticky-card>.section_wrapper {
        grid-template-columns: 1fr;
    }

    .sticky-card .col-img {
        display: none;
    }

}

/* Sticky cards. end */
/* Row círculos */
.circulos>.mcb-wrap-inner {
    place-items: center;
}

.circulos .mfn-icon-box:not(.mfn-header-icon-box) .desc-wrapper {
    justify-content: center;
}

.circulos .column_icon_box_2.left {
    max-width: 100%;
    position: absolute;
    left: 310px;
    z-index: -1;
}

.circulos .column_icon_box_2.right {
    max-width: 100%;
    position: absolute;
    right: 310px;
    z-index: -1;
}

.circulos .column_icon_box_2 .title.label {
    border: 2px solid;
    border-radius: 100vmax;
    max-width: 300px;
    min-height: 300px;
    place-content: center;
    place-items: center;
}

.circulos .fondo.column_icon_box_2 .title.label {
    background-image:
        linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%),
        url(/wp-content/uploads/2025/08/servicios-2025-08-29-servicios-2.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    max-width: 450px;
    min-height: 450px;
}

.circulos .fondo.column_icon_box_2 .title.label {
    max-width: 450px;
    min-height: 450px;
}

@media (width<=1000px) {
    .circulos .fondo.column_icon_box_2 .title.label {
        max-width: 400px;
        min-height: 400px;
    }

    .circulos .column_icon_box_2 .title.label {
        max-width: 250px;
        min-height: 250px;
    }

    .circulos .column_icon_box_2.left {
        left: 260px;
    }

    .circulos .column_icon_box_2.right {
        right: 260px;
    }

}

@media (width<=822px) {
    .circulos .desc-wrapper .desc {
        margin-inline: 1rem;
    }

    .circulos .fondo.column_icon_box_2 .title.label {
        max-width: 300px;
        min-height: 300px;
        font-size: 3rem;
    }

    .circulos .column_icon_box_2 .title.label {
        max-width: 150px;
        min-height: 150px;
        font-size: 2rem;
    }

    .circulos .column_icon_box_2.left {
        left: 68%;
        max-width: fit-content;
    }

    .circulos .column_icon_box_2.right {
        right: 68%;
        max-width: fit-content;
    }
}

@media (width<=600px) {
    .circulos .desc-wrapper .desc {
        margin-inline: 0;
    }

    .circulos .column_icon_box_2.left,
    .circulos .column_icon_box_2.right {
        position: static;
        max-width: 100%;
    }

}


/* Circulos.END */

/* Popups servicios */
#mfn-popup-template-846 .mfn-popup-tmpl-content,
#mfn-popup-template-845 .mfn-popup-tmpl-content {
    background-color: transparent !important;
    box-shadow: 0 0 4px #00000073;
}

#mfn-popup-template-848 .mfn-popup-tmpl-content,
#mfn-popup-template-847 .mfn-popup-tmpl-content {
    box-shadow: 0 0 4px #00000073;
}


#mfn-popup-template-846 .mfn-popup-tmpl-content .mfn-popup-tmpl-content-wrapper,
#mfn-popup-template-845 .mfn-popup-tmpl-content .mfn-popup-tmpl-content-wrapper {
    border-radius: 50px;
}

/* Popups servicios. END */
/* Single servicios */
#Wrapper #Content .fondo-color-full {
    margin-inline: 0;
}

.h-deco * {
    font-size: clamp(3rem, 7.5vw, 7.5rem);
}

.indicador>.mcb-column-inner,
.indicador .mfn-html-editor-wrapper,
.indicator-container {
    height: 97%;
}

.line {
    height: 100%;
    background-color: #E3252A;
    border-radius: 4px;
    max-width: 2px;
    position: relative;
}

.pointer {
    position: absolute;
    width: 12px;
    height: 12px;
    left: -4.6px;
    background-color: #E3252A;
    border-radius: 100vmax;
}

#Wrapper .sticky>.mcb-wrap-inner>.column {
    position: sticky;
    top: 70px;
}

.nivel>.mcb-wrap-inner {
    display: grid;
    grid-template-columns: 690px 1fr;
    gap: 1.5rem;
}

#intermedio.nivel>.mcb-wrap-inner {
    grid-template-columns: 1fr 690px;
}

@media (width<=1100px) {
    #Wrapper .nivel>.mcb-wrap-inner {
        grid-template-columns: 1fr;
    }

    .nivel .right {
        order: -1;
    }

    #intermedio.nivel .right {
        order: 0;
    }

    .nivel .mfn-list {
        column-count: 2;
    }

    #Wrapper .nivel .column_list_2 {
        width: 100%;
    }

    #intermedio.nivel .left>.mcb-wrap-inner,
    #Wrapper .nivel .right>.mcb-wrap-inner {
        min-height: 423px;
    }
}

@media (width<=959px) {
    .temario .sticky {
        grid-column: span 3;
    }

    .temario .lista-indicador {
        grid-column: span 2;
    }
}

@media (width<=768px) {
    .nivel .mfn-list {
        column-count: 1;
    }

}

@media (width<=480px) {

    #intermedio.nivel .left>.mcb-wrap-inner,
    #Wrapper .nivel .right>.mcb-wrap-inner {
        min-height: 300px;
    }
}



/* Single servicios.END */

/* Servicios.END */

/* Método */

@media (width>=768px) {
    .camino-card {
        position: sticky;
        top: 100px;
    }
}

/* Método. END */


/*********************************\
          AMELIA
\*********************************/

#amelia-container ::-webkit-input-placeholder {
    font-weight: 400 !important;
}

/* Mozilla Firefox 19+ */
#amelia-container ::-moz-placeholder {
    font-weight: 400 !important;
    opacity: 1;
}

/* Mozilla Firefox 4 to 18 */
#amelia-container :-moz-placeholder {
    font-weight: 400 !important;
    opacity: 1;
}

/* Internet Explorer 10-11 */
#amelia-container :-ms-input-placeholder {
    font-weight: 400 !important;
}

/* Microsoft Edge (legacy) */
#amelia-container ::-ms-input-placeholder {
    font-weight: 400 !important;
}

div#amelia-step-booking0,
div#amelia-step-booking1 {
    margin: 0 !important;
    border-radius: 50px !important;
}


.amelia-app-booking #amelia-booking-wrap #am-step-booking .am-select-service .am-select-service-title,
.amelia-app-booking #amelia-booking-wrap .am-step-booking-catalog .am-select-service .am-select-service-title,
.amelia-app-booking #amelia-booking-wrap #am-step-booking .am-select-date .am-select-service-title,
.amelia-app-booking #amelia-booking-wrap .am-step-booking-catalog .am-select-date .am-select-service-title,
.amelia-app-booking #amelia-booking-wrap #am-step-booking .am-select-service .am-select-date-title,
.amelia-app-booking #amelia-booking-wrap .am-step-booking-catalog .am-select-service .am-select-date-title,
.amelia-app-booking #amelia-booking-wrap #am-step-booking .am-select-date .am-select-date-title,
.amelia-app-booking #amelia-booking-wrap .am-step-booking-catalog .am-select-date .am-select-date-title {
    font-size: 20px !important;
    margin-bottom: 24px !important;
}

td.product-name p {
    font-size: 1.125rem;
}

/*********************************\
          BLOG / NOTICIAS
\*********************************/
/* Archive */
/* Single post */
.single-post .post .section img {
    border-radius: 16px;
}

.single-post .mcb-sidebar .widget-area {
    background-color: #FBE5E9;
    border-radius: 16px;
    margin-top: 22px;
    padding-inline: 1.5rem;
}

.single-post #Wrapper .aside_left .widget:after {
    display: none;
}

.single-post #Content .sections_group {
    margin-top: 50px;

    a {
        text-decoration: underline;
        transition: color 0.3s ease;
        -webkit-transition: color 0.3s ease;
        -moz-transition: color 0.3s ease;
        -ms-transition: color 0.3s ease;
        -o-transition: color 0.3s ease;
        
        &:hover {
            color: var(--verde);
        }
    }
}

/* Single post. END */
/* Blog */
#Wrapper .posts_group article img {
    min-width: 100%;
}

body.blog .column_blog,
body.archive.category .column_blog,
body.archive.tag .column_blog {
    padding-bottom: 120px;
}

body.archive.category .mcb-sidebar,
body.archive.tag .mcb-sidebar {
    display: none;
}

/* Fixed nav arrows */
body .fixed-nav {
    box-shadow: 0 0 10px rgb(0 0 0 / 10%);
}

body .fixed-nav .desc h6 {
    line-height: 1.3;
    display: -webkit-box;
    line-clamp: 2;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

body .fixed-nav .desc .date {
    font-size: 13px;
    color: var(--gris);
    border: 0;
}

body .fixed-nav .desc .date .icon-clock {
    display: none;
}

body .fixed-nav .photo img,
body .Recent_posts ul li .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Barra lateral */
body .Recent_posts ul li a .desc {
    padding: 8px 10px 3px;
    min-height: 80px;
}

body .Recent_posts ul li a .desc h6 {
    display: -webkit-box;
    line-clamp: 2;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 14px;
    line-height: 20px;
}

body .Recent_posts ul li a .desc .date {
    font-size: 12px;
    line-height: 14px;
}

body .widget:not(.widget_block)>h3 {
    font-size: 21px;
    line-height: 29px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: -1px;
    color: var(--verde);
}

body .mcb-sidebar select {
    width: 100%;
}

body .widget_categories ul {
    list-style: none;
    padding: 0;
    background: none;
}

body .widget_categories ul li:after {
    content: none
}

body .widget_categories ul li a {
    padding: 5px 10px;
    background: var(--principal);
    display: block;
    border-radius: 3px;
    margin-bottom: 6px;
}

body .widget_categories ul li a:hover {
    background: var(--secundario);
}

.post-excerpt * {
    font-family: 'Quicksand';
}

body .widget .tagcloud a {
    color: var(--verde);

    &:hover {
        color: var(--principal);
    }
} 

/*********************************\
           WOOCOMMERCE
\*********************************/
.woocommerce button .button__flair {
    display: none !important;
}

body .woocommerce ul.products li.product .woocommerce-placeholder {
    border: 0;
}

body .woocommerce .quantity .qty {
    padding: 10px 30px !important;
}

body .woocommerce table.shop_table tr.order-total .includes_tax {
    display: block;
}

body .woocommerce table.shop_table tr.order-total .includes_tax .woocommerce-Price-amount {
    font-size: 1em;
    font-weight: 400;
    color: #767676;
}

.woocommerce div.product form.cart .reset_variations,
.woocommerce .sku_wrapper {
    display: none;
}

.woocommerce ul.products {
    display: grid;
    gap: 40px;
}

.woocommerce.columns-2 ul.products {
    grid-template-columns: repeat(2, 1fr);
}

.woocommerce.columns-3 ul.products,
.woocommerce ul.products.columns-3 {
    grid-template-columns: repeat(3, 1fr);
}

.woocommerce.columns-4 ul.products,
.woocommerce ul.products.columns-4 {
    grid-template-columns: repeat(4, 1fr);
}

.woocommerce ul.products:before,
.woocommerce ul.products:after {
    display: none;
}

.woocommerce ul.products li.product {
    height: inherit;
    margin: 0;
    width: auto !important;
}


/* SINGLE PRODUCT */
.product-cols>.section_wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 4rem;
}

#Wrapper div.product div.images .woocommerce-product-gallery__trigger {
    top: 24px;
    right: 24px;
}

.woocommerce #Wrapper div.product div.images .woocommerce-product-gallery__trigger:before,
.woocommerce #Wrapper .mfn-product-gallery-grid .woocommerce-product-gallery__trigger:before,
.woocommerce #Wrapper div.product div.images .woocommerce-product-gallery__trigger:before {
    transition: border-color 0.3s ease;
}

.woocommerce #Wrapper div.product div.images .woocommerce-product-gallery__trigger:after,
.woocommerce #Wrapper .mfn-product-gallery-grid .woocommerce-product-gallery__trigger:after,
.woocommerce #Wrapper div.product div.images .woocommerce-product-gallery__trigger:after {
    transition: background-color 0.3s ease;
}

.woocommerce #Wrapper div.product div.images .woocommerce-product-gallery__trigger:hover:before,
.woocommerce #Wrapper .mfn-product-gallery-grid .woocommerce-product-gallery__trigger:hover:before,
.woocommerce #Wrapper div.product div.images .woocommerce-product-gallery__trigger:hover:before {
    border-color: var(--principal);
}

.woocommerce #Wrapper div.product div.images .woocommerce-product-gallery__trigger:hover:after,
.woocommerce #Wrapper .mfn-product-gallery-grid .woocommerce-product-gallery__trigger:hover:after {
    background-color: var(--principal);
}

.woocommerce #Content .column_product_cart_button .cart .button {
    padding: 1rem 2rem;
    text-transform: lowercase;
    max-width: fit-content;
    letter-spacing: -0.64px;
    font-weight: 600;
    font-size: 1.1rem;
}

.woocommerce .column_product_cart_button .cart .quantity .input-text,
.woocommerce .quantity a.quantity-change {
    border-radius: 100vmax;
}

.woocommerce .quantity a:hover.quantity-change {
    background-color: rgba(0, 0, 0, .04);
}

/* .single_add_to_cart_button .button__flair:before {
    background-color: #FBE5E9;
} */

.single_add_to_cart_button:hover {
    color: var(--verde);
}

.woocommerce div.product form.cart div.quantity {
    margin-right: 1rem;
}

#Wrapper .woocommerce-product-gallery__image {
    transition: border-radius 0.3s ease;
}


#Wrapper .woocommerce-product-gallery__image:hover {
    border-radius: 16px 216px 216px 216px;
}

.woocommerce .quantity input.qty {
    box-shadow: inset 0 0 2px 1px #0d2f2d45;
    border: 0;
}

/*********************************\
    CAMPOS ACF PRODUCTOS
\*********************************/
/* Estilos para campos ACF personalizados de productos con tabs */
.info-personalizada-producto {
    margin: 2rem 0;
    background: #fff;
    border-radius: 50px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

/* Contenedor de tabs */
.tabs-container {
    display: flex;
    border-bottom: 1px solid #e9ecef;
    padding: 1rem;
    gap: 1rem;
}

/* Botones de tabs */
.tab-button {
    flex: 1;
    padding: .5rem;
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: 0.85rem;
    font-weight: 500;
    color: #6c757d;
    transition: all 0.3s ease;
    position: relative;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: -0.56px;
}

.tab-button:hover {
    background: #e9ecef;
    color: #495057;
}

.tab-button.active {
    background: #fff;
    color: var(--verde);
    font-weight: 600;
    box-shadow: 0 2px 10px rgb(100 100 100 / 20%);
}

.tab-button.active::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--verde);
}

/* Contenido de tabs */
.tab-content {
    display: none;
    padding: 1.5rem 2rem 2rem;
    animation: fadeIn 0.3s ease-in-out;
}

.tab-content.active {
    display: block;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Estilos específicos para cada campo */
.tab-content .contenido {
    color: #555;
    line-height: 1.6;
}

.tab-content .contenido p {
    margin-bottom: 0.75rem;
    font-size: 1rem;
}

.tab-content .contenido p:last-child {
    margin-bottom: 0;
}

/* Estilos para listas en el tab "¿Qué ofrece?" */
.tab-content .contenido ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.tab-content .contenido ul li {
    position: relative;
    padding-left: 1.5rem;
    margin-bottom: 0.75rem;
    font-size: 1rem;
}

.tab-content .contenido ul li:before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    color: var(--verde);
    font-weight: bold;
    font-size: 1.1rem;
}

.tab-content .contenido ul li:last-child {
    margin-bottom: 0;
}

/* Responsive */
@media (max-width: 768px) {
    .info-personalizada-producto {
        margin: 1rem 0;
    }

    .tabs-container {
        flex-direction: column;
    }

    .tab-button {
        padding: 0.75rem 1rem;
        font-size: 0.9rem;
        border-bottom: 1px solid #e9ecef;
    }

    .tab-button:last-child {
        border-bottom: none;
    }

    .tab-content {
        padding: 1.5rem;
    }
}

@media (max-width: 480px) {
    .tab-content {
        padding: 1rem;
    }

    .tab-button {
        padding: 0.6rem 0.8rem;
        font-size: 0.85rem;
    }
}

/*********************************\
            CHECKOUT
\*********************************/
#add_payment_method #payment ul.payment_methods li.active-payment,
.woocommerce-cart #payment ul.payment_methods li.active-payment,
.woocommerce-checkout #payment ul.payment_methods li.active-payment {
    border-color: var(--verde);
}

#Wrapper #payment ul.payment_methods li.wc_payment_method .mfn-payment-check {
    background-color: #FBE5E9;
    border: 2px solid;
}

.woocommerce-additional-fields.custom-info-checkout {
    margin: 60px 0;
}

form.checkout.woocommerce-checkout {
    margin-top: 34px;
}

.woocommerce form *,
.woocommerce div#order_review * {
    color: var(--verde);
}

#customer_details>.col-1 {
    margin-bottom: 34px;
}

/* .woocommerce-additional-fields.custom-info-checkout, */
div#order_review,
.mfn-cart-step form.checkout-form-toggle {
    background-color: #FBE5E9;
    border-radius: 16px;
    padding: 32px;
    max-width: fit-content;
}

.mfn-cart-step form.checkout-form-toggle {
    margin: auto;
    max-width: 400px;
}

.woocommerce-form-coupon-toggle,
.woocommerce-form-coupon-toggle * {
    color: var(--verde);
}

.woocommerce-info {
    max-width: 400px;
    flex-flow: column nowrap;
    align-items: center;
    margin: auto;
}

.woocommerce-form-coupon-toggle {
    place-items: center;
}

.woocommerce-additional-fields.custom-info-checkout * {
    color: var(--verde);
}

#Wrapper form div#customer_details>div {
    background-color: #FBE5E9;
    padding: 32px;
    border-radius: 16px;
}

#Wrapper #payment label {
    color: var(--verde);
    font-weight: 600;
}

.woocommerce button,
.woocommerce .mfn-woo-cart-link {
    text-transform: lowercase;
    /* color: #fff; */
}

#Wrapper button#place_order {
    color: #fff;
}

#Wrapper button#place_order:hover {
    color: var(--verde);
}

#Wrapper .cart-collaterals {
    background-color: #fbe5e9;
}

#Wrapper .cart-collaterals table *,
#Wrapper .woocommerce .cart-collaterals h4 {
    color: var(--verde);
}



/*********************************\
            RESPONSIVE
\*********************************/
@media (width>=1240px) {
    .with_aside #Wrapper .content_wrapper {
        max-width: 1600px;
    }
}

@media only screen and (min-width: 960px) and (max-width: 1239px) {}

@media only screen and (min-width: 768px) and (max-width: 1239px) {
    body .Recent_posts ul li .photo {
        display: none;
    }

    body .Recent_posts ul li a .desc {
        margin: 0;
    }
}

@media only screen and (max-width: 959px) {
    body .animate {
        animation-delay: 0ms !important;
    }

    html.mfn-header-tmpl-burger-sidebar-opened #pojo-a11y-toolbar {
        display: none;
    }
}

@media only screen and (min-width: 768px) {}

@media only screen and (max-width: 767px) {
    .joinchat {
        --bottom: 20px;
    }

    .joinchat--left .joinchat__button {
        bottom: 0;
    }

    body .hideMobile {
        display: none !important;
    }

    body.style-simple .responsiveWidth {
        max-width: 670px;
        padding: 0 33px;
    }

    .content_wrapper .section_wrapper,
    .container,
    .four.columns .widget-area {
        padding-left: 0;
        padding-right: 0;
    }

    /* #Wrapper .section_wrapper,
    #Wrapper .container {
        padding-inline: 1rem !important;
    } */

    body .content_wrapper .mcb-column-inner {
        margin: 0;
    }
}

@media only screen and (max-width: 480px) {
    body .woocommerce-variation-add-to-cart {
        flex-direction: column;
    }

    body .woocommerce .quantity {
        width: 100%;
        margin: 0 0 5px !important;
    }

    body .woocommerce .product div.entry-summary .cart .button {
        width: 100%;
    }

    body .woocommerce .product div.entry-summary .accordion table.shop_attributes tr {
        display: flex;
        flex-direction: column;
        padding: 0 0 10px;
    }

    body .woocommerce .product div.entry-summary .accordion table.shop_attributes tr:last-child {
        padding: 0;
    }

    body .woocommerce .product div.entry-summary .accordion table.shop_attributes th,
    body .woocommerce .product div.entry-summary .accordion table.shop_attributes td {
        width: 100%;
        padding: 0;
        text-align: left;
    }
}

/*********************************\
            WAVE ANIMATION
\*********************************/
.wave-animation {
    position: relative;
    overflow: hidden;
    width: 100%;
}

/* Estilos para la onda de fondo */
.wave {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    overflow: visible;
}

/* Estilos específicos para el elemento object */
.wave object {
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.wave path {
    fill: var(--principal, #0D2F2D);
    stroke: var(--principal, #0D2F2D);
    stroke-width: 1;
    opacity: 0.9;
    transition: all 0.3s ease;
}

/* Asegurar que la onda sea visible */
.wave-animation {
    min-height: 200px;
    background: linear-gradient(180deg, rgba(242, 183, 210, 0.1) 0%, rgba(255, 255, 255, 0) 100%);
}

/* Estilos para la línea animada */
.anim-line {
    position: relative;
    z-index: 2;
    width: 100%;
    height: auto;
}

.anim-line path {
    stroke: var(--secundario, #c2d6f2);
    stroke-width: 4;
    fill: none;
}

/* Estilos para el texto animado */
.anim-line text {
    font-size: 14px;
    font-weight: 500;
    fill: var(--negro, #000000);
}

.anim-line textPath {
    font-size: 14px;
    font-weight: 500;
}

/* Responsive para la onda */
@media only screen and (max-width: 959px) {
    .top-bg-slider path {
        stroke-width: 1;
    }

    .anim-line path {
        stroke-width: 2;
    }

    .anim-line text {
        font-size: 12px;
    }
}

@media only screen and (max-width: 767px) {
    .top-bg-slider path {
        stroke-width: 1;
    }

    .anim-line path {
        stroke-width: 2;
    }

    .anim-line text {
        font-size: 10px;
    }
}

/* Popup compra packs */
.group-class-book {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.mfn-popup-tmpl .amelia-app-booking #am-service-booking {
    .am-service-gallery {
        display: none;
    }

    .am-service {
        margin-top: 0;
        background: none !important;

        .am-service-header{
            margin-bottom: 24px;
            text-align: left !important;

            .am-service-image {
                display: none;
            }

            .am-service-title h2 {
                font-family: var(--font-decorative) !important;
                font-size: var(--size-h3) !important;
                line-height: 1.2;
            }

            .am-service-data {
                margin-bottom: 0 !important;
                padding: 0;
            }

            .am-service-price {
                background-color: transparent;
                padding: 0;
                color: var(--principal);
                border-radius: 0;
                -webkit-border-radius: 0;
                -moz-border-radius: 0;
                -ms-border-radius: 0;
                -o-border-radius: 0;
            }
        }

        .am-package-selected {
            display: flex;
            flex-direction: column-reverse;

            .am-package-selected-col {
                width: 100%;
            }

            .am-package-service {
                display: none;
            }

            .am-package-rule {
                margin: 0;

                & > div {
                    padding: 0;

                    span {
                        background: none !important;
                        padding: 0;
                    }
                }
            }
        }

        .am-step-booking-catalog {
            box-shadow: none;
            background: none;
            border: 0;
            margin: 0;
            border-radius: 0;
            -webkit-border-radius: 0;
            -moz-border-radius: 0;
            -ms-border-radius: 0;
            -o-border-radius: 0;
            
            .am-confirm-booking {
                width: 100%;
                left: 0;
                background: none;
                padding: 24px 0 0;
                border-top: solid 1px var(--negro);
                border-radius: 0;
                -webkit-border-radius: 0;
                -moz-border-radius: 0;
                -ms-border-radius: 0;
                -o-border-radius: 0;

                .el-form-item__label {
                    font-weight: 400 !important;
                }

                .el-input__inner, .el-input-group__prepend {
                    border: 0 !important;
                }
                
                .am-confirmation-booking-cost {
                    display: none;
                }

                .el-button.el-button--primary {
                    background: var(--principal);
                    color: var(--blanco);
                    border: 0;
                    font-weight: 700;
                    text-transform: lowercase;
                    padding: 16px 32px;
                    border-radius: 100px;
                    -webkit-border-radius: 100px;
                    -moz-border-radius: 100px;
                    -ms-border-radius: 100px;
                    -o-border-radius: 100px;
                    min-height: var(--button-height);
                    display: flex;
                    align-items: center;

                    span {
                        color: var(--blanco);
                    }

                    &:hover {
                        background: var(--blanco);
                        color: var(--negro);

                        span {
                            color: var(--negro);
                        }
                    }
                }
            }
        }
    }
}

/* ERROR 13/04: Ocultar volver a hacer pedido */
.order-again {
    display: none !important;
}