/*
 ██╗    ██╗███████╗██████╗ 
 ██║    ██║██╔════╝██╔══██╗
 ██║ █╗ ██║█████╗  ██████╔╝
 ██║███╗██║██╔══╝  ██╔══██╗
 ╚███╔███╔╝███████╗██████╔╝
  ╚══╝╚══╝ ╚══════╝╚═════╝ 
*/

html:not(.initial-transition-ended) {
    overflow: hidden;
}

#smooth-content {
    overflow: visible;
    width: 100%;
}
.web__inner {
    position: relative;
    overflow-x: hidden !important;
    z-index: 10;
}
.web__lines {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    pointer-events: none;
    z-index: 20;
}
html:not(.has-slider) .web__lines {
    opacity: 0;
}
.web__line {
    width: 1px;
    height: 110vh;
    background-color: var(--white);
    position: absolute;
    transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
    box-sizing: border-box;
}

.module {
    z-index: -1;
}
.module:not(.cabecera):not(.slider) {
    margin-bottom: -1px;
}
.module-parallax {
    z-index: 1;
}

html::-webkit-scrollbar { width: 0 !important }
html { overflow: -moz-scrollbars-none; }
html { -ms-overflow-style: none; }

.opacity-0 {
    opacity: 0 !important;
}
.opacity-50 {
    opacity: .5 !important;
}
.z-index-2 {
    z-index: 2 !important;
}
.display-none {
    display: none !important;
}

.m_s {
    padding-top: 0 !important;
}
.m_i {
    padding-bottom: 0 !important;
}

li:not(.menu__list-item) {
    padding-left: 20px;
    position: relative;
}
li:not(.menu__list-item)::before {
    content: '';
    position: absolute;
    top: 11px;
    left: 0;
    background-color: var(--black);
    opacity: .3;
    width: 8px;
    height: 8px;
    border-radius: 50%;
}
@media screen and (max-width: 1440px) {
    li:not(.menu__list-item)::before {
        top: 7px;
    }
}

/*
 ██╗  ██╗███████╗ █████╗ ██████╗ ███████╗██████╗ 
 ██║  ██║██╔════╝██╔══██╗██╔══██╗██╔════╝██╔══██╗
 ███████║█████╗  ███████║██║  ██║█████╗  ██████╔╝
 ██╔══██║██╔══╝  ██╔══██║██║  ██║██╔══╝  ██╔══██╗
 ██║  ██║███████╗██║  ██║██████╔╝███████╗██║  ██║
 ╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝╚═════╝ ╚══════╝╚═╝  ╚═╝
*/

.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 135px;
    padding: 0 3.385vw; /* 65px */
    z-index: 10;
    color: var(--white);
    pointer-events: none;
    z-index: 20;
    transition: transform 0.8s cubic-bezier(.58,.01,.44,1);

}
.header__inner {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
html.scrolled-down .header {
    transform: translateY(-200%);
}
.header__inner * {
    pointer-events: auto;
    cursor: pointer;
}
.header__logo {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.header__logo svg {
    height: 3.281vw; /* 63px */
}
.header__menu {
    display: flex;
    align-items: center;
    gap: 1.042vw;
}
.header__hamburger {
    height: 15px;
    width: 18px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 4px;
}
.header__line {
    width: 100%;
    height: 1px;
    background-color: var(--white);
}

#menu-header-link {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 8px 16px 4px;
    border-radius: 100vw;
    position: relative;
}

@media screen and (max-width: 1440px) {
    .header {
        padding: 0 2.986vw; /* 43px */
    }
    .header__logo svg {
        height: 50px;
    }
}
@media screen and (max-width: 1366px) {
    .header {
        padding: 0 3.148vw; /* 43px */
    }
}
@media screen and (max-width: 1024px) {
    .header {
        padding: 0 var(--web-margin);
    }
}
@media screen and (max-width: 768px) {
    .header__logo svg {
        height: 45px;
    }
    .header__logo {
        left: var(--web-margin);
        transform: unset;
    }
    .header__item#contact-header-link,
    .header__item#contact-header-link * {
        opacity: 0;
        pointer-events: none;
    }
    #menu-header-link {
        padding: 0;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        aspect-ratio: 1 / 1;
    }
    .menu__word {
        display: none;
    }
    .header__hamburger {
        margin: 0;
    }
    .header {
        height: 55px;
        margin-top: 25px;
    }
}


/*
 ███████╗ ██████╗  ██████╗ ████████╗███████╗██████╗ 
 ██╔════╝██╔═══██╗██╔═══██╗╚══██╔══╝██╔════╝██╔══██╗
 █████╗  ██║   ██║██║   ██║   ██║   █████╗  ██████╔╝
 ██╔══╝  ██║   ██║██║   ██║   ██║   ██╔══╝  ██╔══██╗
 ██║     ╚██████╔╝╚██████╔╝   ██║   ███████╗██║  ██║
 ╚═╝      ╚═════╝  ╚═════╝    ╚═╝   ╚══════╝╚═╝  ╚═╝
*/

.footer {
    width: 100vw;
    display: flex;
    align-items: stretch;
    z-index: 1;
}
.footer__wrapper-el {
    /* padding: 5.208vw 9.896vw;  100px 190px */
    padding: 5.208vw 7.896vw; /* 100px 190px */
    display: flex;
    justify-content: center;
    align-items: center;
}
.footer__left-part {
    width: 30%;
}
.footer__right-part {
    width: 70%;
}

.footer__inner {
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.footer__mac-logo {
    height: 4.375vw; /* 84px */
    width: 100%;
}

.footer__address {
    text-align: center;
}
.footer__subscribe {
    display: flex;
    gap: var(--space-3);
    margin-bottom: var(--space-3);
}
.footer__subscribe > .sub_text {
    font-size: 1.7rem; /* 34px */
    line-height: 1.2;
}
.footer__links-list {
    display: flex;
    gap: 3.125vw; /* 60px */
}
.footer__link-item {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    width: -moz-available;          /* WebKit-based browsers will ignore this. */
    width: -webkit-fill-available;  /* Mozilla-based browsers will ignore this. */
    width: fill-available;
}
.footer__link-item__urls {
    display: flex;
    flex-direction: column;
    max-height: 9.292vw; /* 140px */
    flex-wrap: wrap;
    gap: 10px 3.125vw; /* 60px */
}
.footer__link-item__title {
    margin-bottom: 15px;
}
.footer__net {
    display: flex;  
    justify-content: center;
    gap: 10px;
    margin-bottom: 35px;
}
.footer .menu__social {
    filter: invert(1);
}

@media screen and (max-width: 1440px) {
    .footer__link-item__urls {
        max-height: 9.292vw;
    }
    .footer__wrapper-el {
        padding: 5.124vw 6.249vw; /* 70px 140px */
    }
}
@media screen and (max-width: 1366px) {
    .footer__links-list {
        gap: 5.124vw; /* 70px */
    }
    .footer__mac-logo {
        height: 60px;
    }
    .footer__subscribe > h6 {
        font-size: 1.5; /* 24px */
    }
    .footer__net {
        margin-bottom: 30px;
    }
}
@media screen and (max-width: 1300px) {
    .footer__wrapper-el {
        padding: 6.813vw 6.719vw;
    }
    .footer__links-list {
        gap: 11.719vw; /* 120px */
    }
    .footer__link-item__urls {
        max-height: unset;
    }
    .footer__subscribe {
        margin-bottom: 7.813vw;
    }
    .footer__subscribe > h6 {
        font-size: 20px;
    }
}
@media screen and (max-width: 768px) {
    .footer {
        flex-direction: column;
    }
    .footer__wrapper-el {
        width: 100%;
    }
    .footer__mac-logo {
        margin-bottom: 88px;
    }
    .footer__net {
        gap: 7px;
        margin-bottom: 13px;
    }
    
}
@media screen and (max-width: 600px) {
    .footer__wrapper-el {
        padding: 0 var(--web-margin) 110px;
    }
    .footer__left-part {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .footer__subscribe {
        flex-direction: column;
        text-align: center;
        margin: 0 auto;
        margin-top: 125px;
        margin-bottom: 80px;
        max-width: 310px;
    }
    .footer__subscribe .button {
        margin: 0 auto;
    }
    .footer__links-list {
        gap: 55px;
        flex-direction: column;
        text-align: center;
    }
}


/*
 ██████╗  ██████╗ ████████╗ ██████╗ ███╗   ██╗
 ██╔══██╗██╔═══██╗╚══██╔══╝██╔═══██╗████╗  ██║
 ██████╔╝██║   ██║   ██║   ██║   ██║██╔██╗ ██║
 ██╔══██╗██║   ██║   ██║   ██║   ██║██║╚██╗██║
 ██████╔╝╚██████╔╝   ██║   ╚██████╔╝██║ ╚████║
 ╚═════╝  ╚═════╝    ╚═╝    ╚═════╝ ╚═╝  ╚═══╝
*/

:root {
    --btn-height: 4.479vw; /* 86px */
}

.button {
    height: var(--btn-height);
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 3.438vw; /* 66px */
    width: max-content;
    cursor: pointer;
}
.button {
    padding: 0 5.208vw; /* 66px */
}

.menu.--contact .button {
    height: 59px;
    padding: 0 50px;
}

.button-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: scale .7s ease;
    border-radius: calc(var(--btn-height) / 2);
    border: 1px solid var(--resort);
    overflow: hidden;
    /* mix-blend-mode: difference; */
}

.bg-resort .button-inner,
.bg-golf .button-inner,
.bg-residentials .button-inner,
.bg-hotels .button-inner {
    border: 1px solid var(--black);
}


.button span {
    margin-bottom: -4px;
    color: var(--black);
    text-transform: uppercase;
    z-index: 2;
    transition: color .1s linear;
    transition-delay: .2s;
}

.button-inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: -30px;
    height: 100%;
    width: 0%;
    z-index: 1;
    background-color: var(--black);
    clip-path: polygon(0 0, 0 0, 40% 100%, 0% 100%);
    transition: all .8s ease;
}

.button:hover .button-inner {
    scale: 1.06;
}

.button:hover span {
    color: var(--white);
}

.button:hover .button-inner::before {
    width: 120%;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

/* Background scenarios */

.bg-black .button span {
    color: var(--white);
}
.bg-black .button-inner::before {
    background-color: var(--white);
}
.bg-black .button:hover span {
    color: var(--black);
}

.footer .button-inner {
    background-color: var(--black);
    border: none;
    box-shadow: 0 0 0 1pt var(--black);
}
.footer .button span {
    color: var(--white);
}
.footer .button:hover span {
    color: var(--black);
}

.footer__right-part.bg-resort .button-inner::before {
    background-color: var(--resort);
}
.footer__right-part.bg-golf .button-inner::before {
    background-color: var(--golf);
}
.footer__right-part.bg-hotels .button-inner::before {
    background-color: var(--hotels);
}
.footer__right-part.bg-residentials .button-inner::before {
    background-color: var(--residentials);
}

@media screen and (max-width: 1440px) {
    :root {
        --btn-height: 59px;
    }
    .button {
        padding: 0 37px;
    }
    .button.--wider {
        width: 100%;
        max-width: 200px;
    }
}
@media screen and (max-width: 600px) {
    .menu.--contact .button {
        width: 100%;
    }
}


/*
 ███╗   ███╗███████╗███╗   ██╗██╗   ██╗
 ████╗ ████║██╔════╝████╗  ██║██║   ██║
 ██╔████╔██║█████╗  ██╔██╗ ██║██║   ██║
 ██║╚██╔╝██║██╔══╝  ██║╚██╗██║██║   ██║
 ██║ ╚═╝ ██║███████╗██║ ╚████║╚██████╔╝
 ╚═╝     ╚═╝╚══════╝╚═╝  ╚═══╝ ╚═════╝ 
*/

:root {
    --menu-width: 50.521vw; /* 970px */
    --menu-padding: 3.646vw; /* 70px */
    --menu-extra-padding: 7.813vw; /* 150px */
    --menu-shape-2-padding: 1.563vw; /* 30px */

    --form-gap: 30px;
    --form-right-padding: 30px;
}

.menu {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: 100vw;
    pointer-events: none;
    z-index: 30;
    transform: translate(0px, 0px);
}
.menu.--contact {
    right: unset;
    left: 0;
}

.menu__bg-clickable {
    z-index: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.menu__veil {
    width: 100%;
    height: 100%;
    background-color: rgb(0, 0, 0, .7);
    transition: opacity 2s ease;
    opacity: 0;
}
.menu.is-active .menu__veil {
    opacity: 1;
}
.menu__cnt {
    height: calc(var(--vh-update, 1vh) * 100);
    width: var(--menu-width);
    z-index: 1;
    background-color: var(--resort);
    clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
    transition: clip-path 1s cubic-bezier(.58,.01,.44,1);
    overflow: hidden;
    text-align: justify;
    margin-left: auto;
}
.menu.--contact .menu__cnt  {
    background-color: var(--black);
    color: var(--white);
    clip-path: polygon(0 0, 0% 0, 0% 100%, 0% 100%);
    margin-left: unset;
    margin-right: auto;
}
.menu.is-active {
    pointer-events: auto;
}
.menu.is-active .menu__cnt {
    clip-path: polygon(var(--menu-extra-padding) 0, 100% 0, 100% 100%, 0% 100%);
}
.menu.is-active.--contact .menu__cnt {
    clip-path: polygon(0 0, calc(100% - var(--menu-extra-padding)) 0, 100% 100%, 0% 100%);
}
.menu__content {
    width: 100%;
    height: 100%;
}
.menu__shape {
    shape-outside: polygon(0px 0px, calc(var(--space-2) + var(--menu-extra-padding) ) 0, var(--space-2) 100%, 0% 100%);
    float: left;
    height: 100vh;
    width: 100%;
}
.menu.--contact .menu__shape {
    shape-outside: polygon(calc(100% - (var(--space-2) + var(--menu-extra-padding))) 0, 100% 0, 100% 100%, calc(100% - var(--space-2)) 100%);
    float: right;
}

.menu__inner {
    padding: 70px;
    height: 100%;
    position: relative;
}

.menu__cross {
    --size: 6.256vw;
    position: absolute;
    top: var(--menu-padding);
    right: var(--menu-padding);
    width: var(--size);
    height: var(--size);
    transition: .2s transform ease;
    cursor: pointer;
}
.menu.--contact .menu__cross {
    top: var(--menu-padding);
    left: var(--menu-padding);
    right: unset
}
.menu__cross-line {
    width: 1px;
    height: 100%;
    background-color: var(--black);
    opacity: .5;
    position: absolute;
    left: 50%;
    transform: scale(1.4);
}
.menu.--contact .menu__cross-line {
    background-color: var(--white);
}
.menu__cross-line:first-of-type {
    transform: scale(1.4) rotate(45deg)
}
.menu__cross-line:last-of-type {
    transform: scale(1.4) rotate(-45deg)
}
.menu__cross:hover {
    transform: scale(.8) !important
}

.menu__list.--lines {
    position: absolute;
    top: 50%;
    transform: translateY(-44%);
    left: calc(var(--menu-extra-padding) + var(--menu-shape-2-padding));
}
.menu.--contact .menu__list.--lines {
    left: var(--menu-padding);
    width: calc(100% - (var(--space-2) + var(--menu-extra-padding)) + var(--form-right-padding));
}

.menu__list-item {
    margin-bottom: 6px;
}
.menu__list-item.--lines {
    margin-bottom: 10px;
}
.menu__list-item.--lines:nth-child(1) {
    margin-left: 30px;
}
.menu__list-item.--lines:nth-child(2) {
    margin-left: 20px;
}
.menu__shape-2 {
    width: var(--menu-shape-2-padding);
    height: 9.375vw;
    float: left;
    shape-outside: polygon(0px 0px, var(--menu-shape-2-padding) 0, 0 100%, 0% 100%);
}
.menu.--contact .menu__shape-2 {
    shape-outside: polygon(var(--menu-shape-2-padding) 0px, 0% 0, 0 100%, 100% 100%);
    float: right;
    
}

.menu__footer {
    position: absolute;
    bottom: var(--menu-padding);
    right: var(--menu-padding);
    left: calc(var(--space-2) + 20px );
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: left;
}
.menu.--contact .menu__footer {
    right: calc(var(--space-2) + 20px );
    left: var(--menu-padding);
    width: 100%;
    padding-right: calc(var(--space-2) + var(--space-3));
    gap: 40px;
}
.menu__socials {
    display: flex;
    gap: 10px;
    align-items: center;
}

:root {
    --social-bnt-size: 58px;
}

.menu__social-cnt {
    position: relative;
    min-width: var(--social-bnt-size);
    height: var(--social-bnt-size);
}
.menu__social {
    display: block;
    --size: var(--social-bnt-size);
    width: var(--size);
    height: var(--size);
    max-width: var(--size);
    max-height: var(--size);
    min-width: var(--size);
    min-height: var(--size);

    position: absolute;
    overflow: hidden;

    display: flex;
    justify-content: center;
    align-items: center;

    border: 1px solid rgb(27, 27, 27, .5);
    border-radius: 50%;
    transition: transform .5s ease
}
.menu__social:hover {
    transform: scale(1.1)
}
.menu__social>div {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    height: 100%;
    width: 100%;
}
.menu.--contact .menu__social {
    filter: invert(1);
}
.menu__social img {
    height: 24px;
    width: 50%;
    transition: transform .4s ease;
}
.menu__social img:first-of-type {
    position: absolute;
    transform: translateX(-200%);
}

.menu__social:hover img:first-of-type {
    transform: translateX(0%) scale(.9);
}
.menu__social:hover img:last-of-type {
    transform: translateX(200%) scale(.9);
}
.menu__social svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 58px;
    height: 58px;
    stroke-dasharray: 812%;
    stroke-dashoffset: 820%;
    transition: stroke-dashoffset .5s ease;
}
.menu__social:hover svg {
    /* stroke-dashoffset: 400%; */
}
.menu__social svg rect {
    width: 270px;
    height: 270px;
    x: 0;
    y: -98px;
    rx: 200;
    fill: transparent;
    stroke: rgb(27, 27, 27, .5);
    stroke-width: 10px;
}

.menu-contact__address {
    display: flex;
    gap: var(--space-3);
    color: var(--white);
    opacity: .5;
}

.menu__form {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--form-gap);
}
.menu__form-row {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--form-gap);
}
.menu__form-row:first-of-type {
    padding-right: var(--form-right-padding);
}
.menu__checkboxes {
    display: flex;
    gap: 20px;
    width: inherit;
    flex-wrap: wrap;
}

.wpcf7-list-item a {
    text-decoration: underline;
}

.menu__form-input {
    width: 100%;
}
.menu__form-input span,
.menu__form-input .form__input {
    display: block;
}
.menu__form-input .form__label  {
    opacity: .5;
}
.menu__form-input .form__input .wpcf7-form-control-wrap input,
.menu__form-input .form__input .wpcf7-form-control-wrap textarea {
    width: 100%;
    padding-top: 7px;
    padding-bottom: 10px;
}
.menu__form-input .form__input .wpcf7-form-control-wrap textarea {
    word-wrap: break-word;
}
.input-btm {
    position: relative;
}
.menu__form-input .form__input .input-btm::before,
.menu__form-input .form__input .input-btm::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: 1px;
    width: 0%;
    background-color: #FDFBFC;
    transition: all .7s ease;
}
.menu__form-input .form__input .input-btm::before {
    width: 100%;
    opacity: .5;
}
.menu__form-input .form__input .wpcf7-form-control-wrap input:focus + .input-btm::after,
.menu__form-input .form__input .wpcf7-form-control-wrap textarea:focus + .input-btm::after {
    width: 100% !important;
}
.menu__form-input.--50p {
    width: 100%;
    max-width: calc(52% - var(--form-gap));
}
textarea {height: 70px;}
textarea::-webkit-scrollbar { width: 0 !important }
textarea { overflow: -moz-scrollbars-none; }
textarea { -ms-overflow-style: none; }

.menu__form-row p {
    /* width: 242px; */
    /* margin-right: 5.208vw; */
}
.menu__form-row {
    margin-bottom: var(--form-gap);
}
.menu__form-row.--first {
    padding-right: var(--form-right-padding);
}
.menu__checkbox input[type="checkbox"] {
    width: 14px;
    min-width: 14px;
    height: 14px;
    min-height: 14px;
    border-radius: 2px;
    border: 1px solid var(--white);
    opacity: .5;
    margin-right: 10px;
    margin-top: 3px;
    transition: all .4s ease;
}
.menu__checkbox input[type="checkbox"]:checked {
    opacity: 1;
    background-color: var(--white);
}
.menu__checkbox .wpcf7-list-item>label {
    display: flex;
    text-align: left;
}
.menu__checkbox.choose-rights {
    display: flex;
    flex-wrap: wrap;
    gap: 0 20px;
}

/* CF7 */
.wpcf7-not-valid-tip {
    color: var(--red);
}
.screen-reader-response {
    display: none;
}

.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.sent .wpcf7-response-output {
    width: 100%;
    padding: 32px;
    border-radius: 8px;
    background-color: var(--red);
    color: var(--white);
    font-size: 16px;
}
.wpcf7-form.sent .wpcf7-response-output {
    background-color: var(--green-form);
}

.wpcf7-list-item {
    margin: 0 !important;
}

.wpcf7-list-item-label {
    font-size: 14px;
}

.menu__form-text-box {
    /* max-height: 100px; */
    /* overflow: scroll; */
    /* padding: 10px; */
    /* background: #00000033; */
    font-size: 11px;
    line-height: 1.3;
    opacity: .3;
    margin-top: 40px;
    text-align: left;
}

.menu__cnt .menu__form-text-box {
    margin-top: 0px;
    /* max-height: 58px; */
    overflow: scroll;
}

@media screen and (min-width: 1441px) and (max-height: 800px) {
    :root {
        --menu-padding: 2.46vw;
    }
    .menu__cnt .menu__form-text-box {
        max-height: 60px;
    }
}

@media screen and (max-width: 1440px) {
    :root {
        --menu-width: 682px; /* 682px */
        --menu-padding: 50px; /* 50px */
        --menu-extra-padding: 100px; /* 100px */
    }
    .menu__cross {
        --size: 88px; /* 118px */
    }
    .menu__inner {
        padding: 50px;
    }
    .menu__list-item {
        margin-bottom: 10px
    }
    .menu__list-item.--lines {
        margin-bottom: 9px;
    }
    .menu__list-item.--lines:nth-child(1) {
        margin-left: 20px;
    }
    .menu__list-item.--lines:nth-child(2) {
        margin-left: 10px;
    }
    .menu-contact__address {
        gap: 10px;
        flex-direction: column;
    }
    .menu__list.--lines {
        top: 46%;
    }
    .menu.--contact .menu__cross {
        top: 40px;
    }
    .menu__cnt .menu__form-text-box {
        max-height: 84px;
    }
}

@media screen and (max-width: 1366px) {
    .menu__cross {
        --size: 70px;
    }
    .menu__list.--lines {
        top: 44%;
    }
    .wpcf7-form.invalid .wpcf7-response-output,
    .wpcf7-form.sent .wpcf7-response-output {
        padding: 25px;
    }
    .menu__cross {
        --size: 60px;
    }
    .menu__form-input .form__input .wpcf7-form-control-wrap input,
    .menu__form-input .form__input .wpcf7-form-control-wrap textarea {
        width: 100%;
        padding-top: 5px;
        padding-bottom: 7px;
    }
}

@media screen and (max-width: 1024px) {
    .menu__cross {
        --size: 7vw;
    }
    .menu__list.--lines {
        top: 45%;
    }
    .wpcf7-form.invalid .wpcf7-response-output,
    .wpcf7-form.sent .wpcf7-response-output {
        padding: 20px;
    }
    .menu__list-item.--lines:nth-child(1) {
        margin-left: 8px;
    }
    .menu__list-item.--lines:nth-child(2) {
        margin-left: 6px;
    }
    .menu.--contact .menu__footer {
        padding-right: calc(var(--space-2) + var(--space-1));
    }
    .menu__form-text-box {
        max-height: 140px;
        overflow: scroll;
        margin-top: 0;
    }
}

@media screen and (max-width: 768px) {
    :root {
        --menu-width: 100vw;
        --menu-padding: 90px 55px 55px;
        --menu-extra-padding: 0px;
        --social-bnt-size: 40px;
    }
    .menu__inner {
        padding: 90px 55px 55px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        overflow-y: scroll;
    }
    .menu__cross {
        --size: 51px; /* 51px */
        top: 20px !important;
        right: 35px !important;
        width: var(--size);
        height: var(--size);
    }
    .menu__list-item.--lines {
        margin-bottom: 10px;
    }
    .menu__socials {
        gap: 7px;
    }
    .menu__social img {
        height: 16px;
    }
    .menu__shape-2 {
        display: none;
    }
    .menu__list.--lines {
        position: static;
        top: unset;
        transform: unset;
        left: unset;
    } 
    .menu__footer {
        position: static;
        bottom: unset;
        right: unset;
        left: unset;
        flex-direction: column-reverse;
        align-items: flex-start;
        gap: 12px;
        margin-top: 40px;
    }   
    .menu__shape {
        display: none;
    }
    
    .menu__form-row {
        flex-direction: column;
        padding-right: 0 !important;
    }
    .menu__form-row p {
        width: 100%;
        margin: 0 !important;
    }
    .menu__list-item.--lines {
        margin-left: 0 !important;
    }
    .menu.--contact .menu__footer {
        padding-right: 0;
    }
    .menu__form-input.--50p {
        max-width: unset;
    }
   
    
}


/*
 ███████╗██╗     ██╗██████╗ ███████╗██████╗ 
 ██╔════╝██║     ██║██╔══██╗██╔════╝██╔══██╗
 ███████╗██║     ██║██║  ██║█████╗  ██████╔╝
 ╚════██║██║     ██║██║  ██║██╔══╝  ██╔══██╗
 ███████║███████╗██║██████╔╝███████╗██║  ██║
 ╚══════╝╚══════╝╚═╝╚═════╝ ╚══════╝╚═╝  ╚═╝
*/

:root {
    --slider-progress-bar-height: 3px;
}
.slider {
    width: 100vw;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    position: relative;
    overflow: hidden;
    z-index: -1;
}
.slider__inner {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--white);
    /* pointer-events: none; */
}
.slider__videos {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.slider-title__wrapper {
    width: calc(100% - ( 50px * 2 ) );
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.slider-title {
    pointer-events: all;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}
.slider.one-slide-only .slider-title {
    top: 55%;
}
.slider__title-line__parent {
    display: block;
    text-align: start;
    position: relative;
    overflow: hidden;
    width: 100vw;
}
.slider__title-line__child {
    display: block;
    text-align: start;
    position: relative;
    translate: none;
    rotate: none;
    scale: none;
    transform: translateY(100%);
    transition: transform .7s cubic-bezier(.58,.01,.44,1), rotate .71s cubic-bezier(.58,.01,.44,1);
    rotate: 2deg;
    transform-origin: 0% 50%;
    text-align: center;
    user-select: none;
}

.slider-title.show {
    z-index: 4;
}
.slider-title.show .slider__title-line__child {
    transform: translateY(0%);
    rotate: 0deg;
}

.video-slide-element {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1;
    scale: 1;
    transition: opacity .5s cubic-bezier(.58,.01,.44,1), scale .9s cubic-bezier(.58,.01,.44,1);
}
.video-slide-element.is-hidden {
    opacity: 0;
    scale: 1.2;
    z-index: -4;
}
.slider__progress-bar__container {
    position: absolute;
    bottom: 6vh;
    left: 50%;
    transform: translateX(-50%);
    height: 30px;
    width: 256px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
    pointer-events: all;
}
.slider__progress-bar__wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    cursor: pointer;
    overflow: hidden;
}
.slider__progress-bar__progress {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    height: var(--slider-progress-bar-height);
    width: 0%;
    background-color: var(--white);
    transition: height .3s ease;
}
.slider__progress-bar__background {
    width: 100%;
    height: 1px;
    background-color: var(--white);
    opacity: .5;
    transform-origin: right center;
}

.slider__progress-bar__wrapper:hover .slider__progress-bar__progress {
    height: calc(var(--slider-progress-bar-height) * 2);
}
.slider__progress-bar__wrapper:hover .slider__progress-bar__background {
    animation: pBline .8s;
}

@keyframes pBline {
    0% {
        transform: translateX(0%);
    }   
    35% {
        transform: translateX(100%);
        opacity: .5;
    }  
    36% {
        opacity: 0;
    }    
    37% {
        transform: translateX(-100%);
    }    
    55% {
        opacity: 0;
    }   
    56% {
        opacity: .5;
        transform: translateX(-100%);
    }   
    100% {
        transform: translateX(0%);
    }      
  }

.slider__play-btn {
    --size: 88px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: var(--size);
    height: var(--size);
    max-width: var(--size);
    max-height: var(--size);
    border: 1px solid var(--white);
    border-radius: 50%;
    margin: 0 auto;
    cursor: pointer;

    position: absolute !important;
    left: 50%;
    transform: translateX(-50%);
    bottom: 19vh;
    transition: transform .4s ease;
}
.slider__play-btn img {
    margin-left: 4px;
    height: 16px;
    transition: transform .4s ease;
}



/* @media screen and (min-width: 1025px) {
    .slider__play-btn {
        display: none;
    }
} */
@media screen and (max-width: 1440px) and (max-height: 800px) {
    .slider__play-btn {
        bottom: 120px;
    }
}
@media screen and (max-width: 1440px) and (max-height: 750px) {
    .slider__play-btn {
        bottom: 100px;
    }
}

@media screen and (min-width: 1025px) {
    .slider__play-btn:hover {
        transform: translateX(-50%) scale(1.1);
    }
    .slider__play-btn:hover img {
        transform: scale(.9);
    }
}
@media screen and (max-width: 1024px) {
    .slider.one-slide-only .slider-title {
        top: 53%;
    }
    .slider__play-btn {
        bottom: 130px;
    }
}
@media screen and (max-width: 768px) {
    .slider {
        display: flex;
        justify-content: center;
    }
    .slider__inner {
        width: 130%;
    }
    .slider-title__wrapper {
        width: 130%;
    }
    .slider.one-slide-only .slider-title {
        top: 50%;
    }
    .slider__play-btn {
        position: relative;
        left: unset;
        bottom: unset;
        transform: unset;
        margin-top: 320px;
    }
}
@media screen and (max-width: 600px) {
    .slider-title {
        max-width: calc(100% - var(--web-margin) / 2);
        font-size: 36px !important;
        top: 44%;
    }
    .slider.one-slide-only .slider-title {
        top: 55%;
    }
    .slider__play-btn {
        margin-top: 190px;
    }
    .slider__progress-bar__container {
        width: 200px;
    }
}


/*
  ██████╗ █████╗ ██████╗ ███████╗ ██████╗███████╗██████╗  █████╗ 
 ██╔════╝██╔══██╗██╔══██╗██╔════╝██╔════╝██╔════╝██╔══██╗██╔══██╗
 ██║     ███████║██████╔╝█████╗  ██║     █████╗  ██████╔╝███████║
 ██║     ██╔══██║██╔══██╗██╔══╝  ██║     ██╔══╝  ██╔══██╗██╔══██║
 ╚██████╗██║  ██║██████╔╝███████╗╚██████╗███████╗██║  ██║██║  ██║
  ╚═════╝╚═╝  ╚═╝╚═════╝ ╚══════╝ ╚═════╝╚══════╝╚═╝  ╚═╝╚═╝  ╚═╝
*/

.cabecera {
    width: 100vw;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: center;
}
.cabecera > img {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    transition: scale 1.8s cubic-bezier(.58,.01,.44,1);
    z-index: 0;
}
html:not(.page-fully-loaded) .cabecera > img,
html.transition-done .cabecera > img {
    transition: scale 0s;
    scale: 1.2
}
.cabecera__inner {
    width: 57rem; 
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    text-align: center;
    clip-path: polygon(0% 0%, 100% 0%, calc(100% - 8.854vw) 100%, 8.854vw 100%); /* 170px */
    z-index: 1;
    /*transition: clip-path 1.3s cubic-bezier(.58,.01,.44,1);*/
    transition-delay: .2s;
    padding-top: 11.198vw; /* 215px */
    overflow: hidden;
}
html:not(.page-fully-loaded) .cabecera__inner,
html.transition-done .cabecera__inner {
    /*transition: clip-path 0s;
    clip-path: polygon(50% 0%, 50% 0%, 50% 100%, 50% 100%);*/
}
.cabecera__subtitle {
    margin-bottom: var(--space-3);
}

.cabecera__description {
    transition: transform 1s cubic-bezier(.58,.01,.44,1), opacity 1s cubic-bezier(.58,.01,.44,1);
    transform: translateY(0px);
    transition-delay: .5s;
    opacity: 1;
    position: absolute;
    bottom: 60px
}

html:not(.page-fully-loaded) .cabecera__description,
html.transition-done .cabecera__description {
    transition: transform 0s;
    transform: translateY(50px);
    opacity: 0;
}

@media screen and (max-width: 1366px) {
    .cabecera__inner {
        width: 50.512vw; /* 690px */
        clip-path: polygon(0 0, 100% 0%, calc(100% - 135px) 100%, 135px 100%);
        padding-top: 175px;
    }
    .cabecera__description {
        bottom: 45px
    }
}
@media screen and (max-width: 1024px) {
    .cabecera__inner {
        width: 591px;
        padding-top: 33vh;
    }
}
@media screen and (max-width: 768px) {
    .cabecera__inner {
        clip-path: polygon(0 0, 100% 0%, calc(100% - 117px) 100%, 117px 100%);
        width: calc( 100vw + 140px );
        position: absolute;
    }
    .cabecera__title-cnt {
        width: calc(100vw - var(--web-margin) * 2);
        margin: 0 auto;
    }
    .cabecera .title-1 {
        font-size: 40px !important;
    }
}


/*
 ██████╗ ███████╗███████╗████████╗ █████╗  ██████╗ █████╗ ██████╗  ██████╗ 
 ██╔══██╗██╔════╝██╔════╝╚══██╔══╝██╔══██╗██╔════╝██╔══██╗██╔══██╗██╔═══██╗
 ██║  ██║█████╗  ███████╗   ██║   ███████║██║     ███████║██║  ██║██║   ██║
 ██║  ██║██╔══╝  ╚════██║   ██║   ██╔══██║██║     ██╔══██║██║  ██║██║   ██║
 ██████╔╝███████╗███████║   ██║   ██║  ██║╚██████╗██║  ██║██████╔╝╚██████╔╝
 ╚═════╝ ╚══════╝╚══════╝   ╚═╝   ╚═╝  ╚═╝ ╚═════╝╚═╝  ╚═╝╚═════╝  ╚═════╝ 
*/

.destacado {
    width: 100vw;
    min-height: 100vh;
    position: relative;
}
.destacado__inner {
    width: 100%;
    display: flex;
    min-height: 100vh;
    justify-content: center;
    align-items: center;
    position: relative;
    padding: var(--space-1) 0 var(--space-1);
    z-index: 1;
}
.destacado-img .destacado__inner {
    padding-top: var(--space-1);
}

.destacado.m_s,
.destacado.m_i,
.destacado.m_s .destacado__inner,
.destacado.m_i .destacado__inner {
    min-height: unset !important;
}

.destacado.m_s .destacado__inner {
    padding-top: 0 !important;
}
.destacado.m_i .destacado__inner {
    padding-bottom: 0 !important;
}

/* Cita */
.cita__content {
    max-width: 72.4vw;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: var(--space-3);
    margin: 0 auto;
}
.cita__quoute {
    text-align: center;
}
.cita__quoute-icon {
    height: 3.646vw;
}
.cita__quoute-icon path {
    stroke: none
}
.cita__quoute-icon svg {
    height: 100%;
    width: unset;
}
.cita__author-cnt {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
}
.cita__img {
    width: 4.479vw;
}

@media screen and (max-width: 1440px) {
    .cita__quoute-icon {
        height: 52px;
    }
    .cita__img {
        width: 60px;
    }
}
@media screen and (max-width: 768px) {
    .cita__quoute-icon {
        height: 42px;
    }
    .cita__content {
        gap: 30px;
        max-width: unset;
        width: calc(100% - (var(--web-margin) * 2));
    }
}

/* Imágenes */

.imagenes__content {
    max-width: 67vw;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: var(--space-3);
    margin: 0 auto;
}
.imagenes__quoute {
    text-align: center;
    z-index: 1;
}
.imagenes__subtitle {
    text-align: center;
    z-index: 1;
}
.imagenes__btn-cnt {
    z-index: 1;
}

.imagenes__img {
    position: absolute;
    height: 10.938vw; /* 210px */
    max-width: 15.625vw; /* 300px */
    display: flex;
    justify-content: center;
    align-items: center;
}

.imagenes__img.img-1 {
    top: 0;
    left: 12.500vw; /* 240px */
}
.imagenes__img.img-2 {
    top: 7.813vw; /* 150px */
    right: 0;
}
.imagenes__img.img-3 {
    bottom: 10.417vw; /* 200px */
    left: -3vw;
}
.imagenes__img.img-4 {
    bottom: 0;
    right: 17.969vw; /* 345px */
}

@media screen and (max-width: 768px) {
    .imagenes__content {
        max-width: 80vw;
    }
    .imagenes__img {
        height: 15.137vw;
    }
    .imagenes__img.img-1 {
        left: 11.523vw;
    }
    .imagenes__img.img-2 {
        right: -6vw;
    }
    .imagenes__img.img-4 {
        right: 11.719vw;
    }
}

@media screen and (max-width: 768px) {
    .imagenes__content {
        max-width: unset;
        width: calc(100% - (var(--web-margin) * 2));
        padding: 130px 0;
    }
    .imagenes__img {
        height: 113px;
        max-width: 158px;
    }
    .imagenes__img.img-1 {
        left: unset;
        right: 0;
    }
    .imagenes__img.img-1 {
        top: 55px;
        right: unset;
        left: 0;
    }
    .imagenes__img.img-3 {
        bottom: 55px;
        right: 0;
        left: unset;
    }
    .imagenes__img.img-4 {
        right: unset;
        left: 0;
    }
    
}
@media screen and (max-width: 600px) {
    .imagenes__content {
        padding: 110px 0;
    }
}


/*
 ███████╗██╗   ██╗██╗     ██╗     ███████╗ ██████╗██████╗ ███████╗███████╗███╗   ██╗    ██████╗  █████╗ ██████╗  █████╗ ██╗     ██╗      █████╗ ██╗  ██╗
 ██╔════╝██║   ██║██║     ██║     ██╔════╝██╔════╝██╔══██╗██╔════╝██╔════╝████╗  ██║    ██╔══██╗██╔══██╗██╔══██╗██╔══██╗██║     ██║     ██╔══██╗╚██╗██╔╝
 █████╗  ██║   ██║██║     ██║     ███████╗██║     ██████╔╝█████╗  █████╗  ██╔██╗ ██║    ██████╔╝███████║██████╔╝███████║██║     ██║     ███████║ ╚███╔╝ 
 ██╔══╝  ██║   ██║██║     ██║     ╚════██║██║     ██╔══██╗██╔══╝  ██╔══╝  ██║╚██╗██║    ██╔═══╝ ██╔══██║██╔══██╗██╔══██║██║     ██║     ██╔══██║ ██╔██╗ 
 ██║     ╚██████╔╝███████╗███████╗███████║╚██████╗██║  ██║███████╗███████╗██║ ╚████║    ██║     ██║  ██║██║  ██║██║  ██║███████╗███████╗██║  ██║██╔╝ ██╗
 ╚═╝      ╚═════╝ ╚══════╝╚══════╝╚══════╝ ╚═════╝╚═╝  ╚═╝╚══════╝╚══════╝╚═╝  ╚═══╝    ╚═╝     ╚═╝  ╚═╝╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝╚══════╝╚═╝  ╚═╝╚═╝  ╚═╝
*/

.fullscreen-parallax {
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.fullscreen-parallax img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

@media screen and (max-width: 1024px) {
    .fullscreen-parallax {
        height: unset;
    }
    .fullscreen-parallax img {
        margin-bottom: -10px;
    }
}


/*
  █████╗  ██████╗ ██████╗███████╗███████╗ ██████╗ ███████╗    ██████╗ ██╗██████╗ ███████╗ ██████╗████████╗ ██████╗ ███████╗
 ██╔══██╗██╔════╝██╔════╝██╔════╝██╔════╝██╔═══██╗██╔════╝    ██╔══██╗██║██╔══██╗██╔════╝██╔════╝╚══██╔══╝██╔═══██╗██╔════╝
 ███████║██║     ██║     █████╗  ███████╗██║   ██║███████╗    ██║  ██║██║██████╔╝█████╗  ██║        ██║   ██║   ██║███████╗
 ██╔══██║██║     ██║     ██╔══╝  ╚════██║██║   ██║╚════██║    ██║  ██║██║██╔══██╗██╔══╝  ██║        ██║   ██║   ██║╚════██║
 ██║  ██║╚██████╗╚██████╗███████╗███████║╚██████╔╝███████║    ██████╔╝██║██║  ██║███████╗╚██████╗   ██║   ╚██████╔╝███████║
 ╚═╝  ╚═╝ ╚═════╝ ╚═════╝╚══════╝╚══════╝ ╚═════╝ ╚══════╝    ╚═════╝ ╚═╝╚═╝  ╚═╝╚══════╝ ╚═════╝   ╚═╝    ╚═════╝ ╚══════╝
*/

:root {
    --access-gap: 2.083vw; /* 40px */
}
.accesos {
    position: relative;
    width: 100vw;
    padding: var(--space-1) calc( ( var(--web-margin) + var(--column-1) ) - var(--access-gap) );
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.accesos__imgs {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.accesos__img {
    transition: opacity .7s ease, scale .8s ease;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    scale: 1.1;
    object-fit: cover;
}
.accesos__img.is-hidden {
    opacity: 0;
    scale: 1;
    transition: opacity .7s ease, scale .8s ease;
    transition-delay: .2s;
}
.accesos__cards {
    width: 100%;
}
.accesos__card-cnt {
    padding: 0 calc( var(--access-gap) / 2 );
    cursor: none !important;
}
.accesos__card {
    position: relative;
    background-color: var(--white);
    aspect-ratio: 3 / 4;
    min-height: 30vw;
    text-align: center;
    display: block;
    overflow: hidden;
    cursor: none !important;
}
.accesos__card-content {
    padding: var(--space-3);
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}
.accesos__card-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}
.accesos__card-bg {
    position: absolute;
    bottom: -20%;
    left: 0;
    width: 102%;
    height: 0%;
    z-index: 0;
    transition: all .9s ease;
    clip-path: polygon(0 0, 100% 100px, 100% 100%, 0% 100%);
}

.accesos__icon {
    height: var(--btn-height);
    width: 8.958vw; /* 172px */
    border-radius: calc(var(--btn-height) / 2);
    border: 1px solid rgb(27, 27, 27, .5);
    padding: 15px;

    display: flex;
    justify-content: center;
    align-items: center;

    position: absolute;
    top: 50%;
    transform: translateY(-50%);

}

.accesos__icon img {
    height: 100%;
}

@media screen and (max-width: 1440px) {
    :root {
        --access-gap: 16px;
    }
    .accesos__icon {
        width: 118px;
    }
    .accesos__card-header {
        gap: 15px;
    }
    .accesos__card-content {
        /* aspect-ratio: 3 / 4; */
        min-height: 29vw;
        height: unset;
    }
}
@media screen and (min-width: 1025px) {
    .accesos__card:hover .accesos__card-bg {
        height: 120%;
        clip-path: polygon(0 0, 100% 0%, 100% 100%, 0% 100%);
    }
}
@media screen and (max-width: 1024px) {
    .slick-center .accesos__card .accesos__card-bg {
        height: 120%;
        clip-path: polygon(0 0, 100% 0%, 100% 100%, 0% 100%);
    }
    .accesos {
        padding: var(--space-1) var(--web-margin);
    }
    .accesos__icon {
        width: 108px;
    }
    .accesos__icon {
        padding: 10px;
    }
    .accesos__card {
        cursor: pointer;
    }
    
}
@media screen and (max-width: 768px) {
    :root {
        --access-gap: 7px;
    }
    .accesos {
        padding: var(--space-1) 0;
    }
    .accesos__img {
        width: unset;
        max-width: unset;
    }
    .accesos_subtitle {
        font-size: 14px;
    }
    .accesos__card-content {
        aspect-ratio: 3 / 4;
        min-height: unset;
        height: unset;
    }
}


/*
  █████╗ ██████╗ ████████╗██╗ ██████╗██╗   ██╗██╗      ██████╗ 
 ██╔══██╗██╔══██╗╚══██╔══╝██║██╔════╝██║   ██║██║     ██╔═══██╗
 ███████║██████╔╝   ██║   ██║██║     ██║   ██║██║     ██║   ██║
 ██╔══██║██╔══██╗   ██║   ██║██║     ██║   ██║██║     ██║   ██║
 ██║  ██║██║  ██║   ██║   ██║╚██████╗╚██████╔╝███████╗╚██████╔╝
 ╚═╝  ╚═╝╚═╝  ╚═╝   ╚═╝   ╚═╝ ╚═════╝ ╚═════╝ ╚══════╝ ╚═════╝ 
*/

.articulo {
    width: 100vw;
    display: flex;
    flex-direction: column;
}

.m_s .articulo__inner {
    padding-top: 0 !important;
}

.articulo__inner {
    width: 100vw;
    display: flex;
    flex-direction: column;
    padding-top: var(--space-1);
    padding-left: calc( var(--web-margin) + var(--column-1) );
    padding-right: calc( var(--web-margin) + var(--column-1) );
    background: linear-gradient(180deg, var(--bg-sup) 0%, var(--bg-sup) calc(100% - var(--space-1)), var(--bg-inf) calc(100% - var(--space-1)));
}

/* Right */
.articulo.img-right:not(.articulo-cajeado) .articulo__inner {
    padding-right: 0;
}
.articulo.img-right:not(.articulo-cajeado) .articulo__media {
    width: calc( var(--web-margin) + var(--column-6) );
}
/* Left */
.articulo.img-left:not(.articulo-cajeado) .articulo__inner {
    padding-left: 0;
}   
.articulo.img-left:not(.articulo-cajeado) .articulo__media {
    width: calc( var(--web-margin) + var(--column-6) );
}  
.articulo.img-left:not(.articulo-cajeado) .articulo__title {
    margin-left: calc( var(--web-margin) + var(--column-1) );
}  

.articulo__content {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.articulo.img-left .articulo__info {
    order: 1;
}
.articulo.img-left .articulo__media {
    order: 0;
}
.articulo.img-right .articulo__info {
    order: 0;
}
.articulo.img-right .articulo__media {
    order: 1;
}

.articulo__info .subtitle-1 {
    font-family: BrasleyRegular;
    font-weight: 400;
}
.articulo__info .subtitle-1 b,
.articulo__info .subtitle-1 strong {
    font-family: Brasley;
    font-weight: 600;
}

/* Título */
.articulo__title {
    width: var(--column-5);
    margin-bottom: var(--space-3);
}
.articulo__title.subtitle-1 {
    padding-right: 12%;
}
.articulo__title.title-3 {
    padding-right: 5%;
}
.articulo.img-right .articulo__title {
    margin-left: var(--column-5);
}

.articulo__title-incontent {
    margin-bottom: 50px;
}

/* Info */
.articulo__info {
    width: var(--column-3);
    margin-left: calc(var(--column-1) / 2);
}
.articulo.img-left .articulo__info {
    margin-left: 0;
    margin-right: calc(var(--column-1) / 2);
}
.articulo__list {
    margin-top: var(--space-3);
}
.articulo__list-item {
    display: flex;
    gap: 1.563vw;
    align-items: center;
    justify-content: flex-start;
    padding-top: 1.302vw;
    padding-bottom: 0.938vw;
    width: 100%;
    border-bottom: 1px solid var(--resort);
}
.articulo__btn-spacer {
    height: var(--space-3);
}

/* Media */
.articulo__media {
    width: var(--column-5);
}
.articulo__media .articulo-img__img {
    transition: scale .4s ease;
    object-fit: cover;
}
.articulo__media.media-vid:hover .articulo-img__img {
    scale: 1.06 !important
}

.play-button__circle {
    transition: scale .4s ease;
}
.articulo__media.media-vid:hover .play-button__circle {
    scale: .95
}

.articulo-img {
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: var(--aspect-ratio);
    overflow: hidden;
}

.articulo-img iframe {
    height: calc(100% + 400px);
    width: 100%;
}

@media screen and (max-width: 1440px) {
    .articulo__list-item {
        gap: 20px;
        padding-top: 15px;
        padding-bottom: 10px;
    }
    .articulo__list-num {
        font-size: 20px !important;
    }
    .articulo__list-text {
        margin-bottom: -2px;
    }
    .articulo__media img {
        transition: scale .4s ease;
        object-fit: cover;
    }
    .articulo-img {
        max-height: 100vh;
    }
    .articulo__title-incontent {
        margin-bottom: 35px;
    }
}

@media screen and (max-width: 1366px) {
    .articulo__list-num {
        font-size: 18px !important;
    }
}
@media screen and (max-width: 1315px) {
    .articulo__list-num {
        font-size: 16px !important;
    }
}

@media screen and (max-width: 1024px) {
    .articulo__inner {
        background: var(--bg-sup);
        padding-left: var(--web-margin) !important;
        padding-right: var(--web-margin) !important;
        padding-bottom: var(--space-1);
    }
    .articulo.no-p-bottom .articulo__inner {
        padding-bottom: 0;
    }
    .articulo__title {
        width: var(--column-6);
    }
    .articulo.img-right .articulo__title {
        margin-left: var(--column-6);
    }
    .articulo__info {
        width: var(--column-6);
        margin-left: 0;
        max-width: 35vw;
    }
    .articulo.img-left .articulo__info {
        margin-right: 0;
    }
    .articulo__media {
        width: var(--column-6);
    }
    .articulo.img-left:not(.articulo-cajeado) .articulo__title {
        margin-left: calc( var(--web-margin) );
    }
    .articulo__title-incontent {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 768px) {
    .articulo__content {
        flex-direction: column;
    }
    .articulo__title {
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
    }
    .articulo__info {
        order: 2 !important;
        width: 100%;
        margin-top: var(--space-3);
        max-width: unset;
    }
    .articulo__media {
        width: 100% !important;
    }
    .articulo__title {
        padding-right: 0% !important;
    }
}


/*
  ██████╗ █████╗ ██████╗ ██████╗ ██╗   ██╗███████╗███████╗██╗          ██████╗ ██████╗ ███╗   ██╗    ████████╗███████╗██╗  ██╗████████╗ ██████╗ 
 ██╔════╝██╔══██╗██╔══██╗██╔══██╗██║   ██║██╔════╝██╔════╝██║         ██╔════╝██╔═══██╗████╗  ██║    ╚══██╔══╝██╔════╝╚██╗██╔╝╚══██╔══╝██╔═══██╗
 ██║     ███████║██████╔╝██████╔╝██║   ██║███████╗█████╗  ██║         ██║     ██║   ██║██╔██╗ ██║       ██║   █████╗   ╚███╔╝    ██║   ██║   ██║
 ██║     ██╔══██║██╔══██╗██╔══██╗██║   ██║╚════██║██╔══╝  ██║         ██║     ██║   ██║██║╚██╗██║       ██║   ██╔══╝   ██╔██╗    ██║   ██║   ██║
 ╚██████╗██║  ██║██║  ██║██║  ██║╚██████╔╝███████║███████╗███████╗    ╚██████╗╚██████╔╝██║ ╚████║       ██║   ███████╗██╔╝ ██╗   ██║   ╚██████╔╝
  ╚═════╝╚═╝  ╚═╝╚═╝  ╚═╝╚═╝  ╚═╝ ╚═════╝ ╚══════╝╚══════╝╚══════╝     ╚═════╝ ╚═════╝ ╚═╝  ╚═══╝       ╚═╝   ╚══════╝╚═╝  ╚═╝   ╚═╝    ╚═════╝ 
*/

.carrusel-img {
    padding: var(--space-1) 0;
}
.carrusel-img__carousel-cnt {
    overflow-x: hidden;
    overflow-x: clip;
    overflow-y: -webkit-paged-x;
    width: calc( var(--web-margin) + var(--column-7) );
}
.carrusel-img__carousel-cnt .slick-list {
    overflow: visible !important;
}
.carrusel-img__carousel {
    width: 100%;
}
.carrusel-img__carousel-item {
    padding: 0 0.625vw;
    visibility: hidden;
}
html.mobile-resized .carrusel-img__carousel-item {
    visibility: inherit;
}
/* .slick-cloned .carrusel-img__carousel-item {
    visibility: visible;
} */

.carrusel-img__content {
    display: flex;
}
.car-right .carrusel-img__content {
    flex-direction: row-reverse;
}

.carrusel-img__info {
    width: var(--column-3);
    margin-right: calc(var(--column-1) / 2);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.carrusel-img__title {
    width: calc(var(--column-3) + 5px);
}
.car-left .carrusel-img__info {
    margin-left: calc(var(--column-1) / 2);
    margin-right: unset;
}

.car-img__info-item {
    position: relative;
}

.carrusel-img__title-cnt {
    position: absolute;
    top: 0;
    left: 0;
    /* overflow: hidden; */
    width: 100%;
}
.carrusel-img__title-cnt .split-child-car-img {
    /* padding-left: 2px;
    margin-left: -2px; */
}
.carrusel-img__description-cnt {
    position: absolute;
    bottom: 0;
    left: 0;
    /* overflow: hidden; */
    width: 100%;
    padding: 0 2px;
}

.carrusel-img__description-cnt ul {
    margin-top: 15px;
}

.carrusel-img__button {
    margin-top: var(--space-3)
}

.carrusel-img__title, .carrusel-img__description__inner {
    transform: translate(0px, 0px);
    /* transition: transform .4s ease; */
}

.carrusel-img__title.is-hidden-up,
.carrusel-img__description__inner.is-hidden-up {
    display: block;
    transform: translateY(-100%);
}
.carrusel-img__title.is-hidden-down,
.carrusel-img__description__inner.is-hidden-down {
    display: block;
    transform: translateY(100%);
}

.carrusel-img__carousel-arrows {
    width: calc( var(--web-margin) + var(--column-7) );
    position: relative;
}
.car-right .carrusel-img__carousel-arrows {
    margin-left: auto;
}
.carrusel-img__carousel-arrows__inner {
    display: flex;
    gap: 15px;
    margin-left: 20.208vw;
}
.car-right .carrusel-img__carousel-arrows__inner {
    margin-right: 20.208vw;
    margin-left: 0;
    justify-content: flex-end;
}

:root {
    --img-car-btn-size: 4.479vw;
}

.img-carousel-btn__cnt {
    position: relative;
    width: var(--img-car-btn-size);
    height: var(--img-car-btn-size);
}

.img-carousel-btn {
    --size: var(--img-car-btn-size);
    width: var(--size);
    min-width: var(--size);
    height: var(--size);
    min-height: var(--size);
    border: 1px solid rgb(255, 255, 255, .2);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    overflow: hidden;
    transition: transform .5s ease
}
.img-carousel-btn:hover {
    transform: scale(1.1)
}
.img-carousel-btn svg {
    height: 1.250vw;
    transition: transform .4s ease;
}

.img-carousel-btn svg:first-of-type {
    position: absolute;
    transform: translateX(-300%);
}
.img-carousel-btn:hover svg:first-of-type {
    transform: translateX(0%) scale(.9);
}
.img-carousel-btn:hover svg:last-of-type {
    transform: translateX(300%) scale(.9);
}
.img-carousel-btn.img-carousel-prev svg:first-of-type {
    transform: translateX(300%);
}
.img-carousel-btn.img-carousel-prev:hover svg:last-of-type {
    transform: translateX(-300%) scale(.9);
}
.img-carousel-btn.img-carousel-prev:hover svg:first-of-type {
    transform: translateX(0%) scale(.9);
}

.bg-light-grey .img-carousel-btn,
.bg-resort .img-carousel-btn,
.bg-golf .img-carousel-btn,
.bg-hotels .img-carousel-btn,
.bg-residentials .img-carousel-btn,
.bg-none .img-carousel-btn {
    filter: invert(1);
}

.carrusel-img__carousel-item img {
    height: 100%;
}

.carrusel-img__carousel-arrows {
    margin-top: 25px;
}

.carrusel-img__carousel .slick-list {
    padding-left: 50px;
}
.car-right .carrusel-img__carousel .slick-list {
    padding-right: 50px;
    padding-left: 0;
}

:root {
    --img-car-height: 35.938vw;
}

.carrusel-img__carousel .slick-slide {
    height: var(--img-car-height);
}

.carrusel-img__carousel .slick-slide img {
    height: var(--img-car-height);
    object-fit: cover;
}

.carrusel-img__counter {
    position: absolute;
    top: 0;
    right: 0.625vw;
}
.car-right .carrusel-img__counter {
    left: 0.625vw;
    right: unset;
}
.carrusel-img__counter>span:not(:first-of-type) {
    opacity: .5;
}

.carrusel-img .articulo__list-num {
    opacity: .5;
}
.carrusel-img .articulo__list-item {
    padding-top: 0.538vw;
    padding-bottom: 0.538vw;
    border: none;
}

@media screen and (max-width: 1440px) {
    :root {
        --img-car-height: 35.542vw;
        --img-car-btn-size: 60px;
    }
    .carrusel-img__carousel-item {
        padding: 0 0.403vw;
    }
    .carrusel-img__counter {
        right: 0.403vw;
    }
    .car-right .carrusel-img__counter {
        left: 0.403vw;
        right: unset;
    }
    .carrusel-img__info {
        width: var(--column-4);
        padding-left: 5.556vw;
    }
    .carrusel-img__title {
        width: 100%;
    }
    .car-left .carrusel-img__info {
        padding-right: 5.556vw;
        padding-left: 0;
    }
    .carrusel-img__carousel-arrows__inner {
        gap: 10px;
    }
    .carrusel-img__carousel-arrows {
        margin-top: 20px;
    }
    .img-carousel-btn svg {
        height: 17px;
    }
}

@media screen and (max-width: 1024px) {
    :root {
        --img-car-height: 56.542vw;
    }

    .carrusel-img__content {
        flex-direction: column !important;
    }
    .carrusel-img__carousel-cnt {
        width: 100%;
        order: 2;
    }
    .carrusel-img__carousel-item {
        padding: 0 0.977vw;
    }
    .carrusel-img__carousel-cnt {
        padding-right: 6.836vw;
    }
    .car-right .carrusel-img__carousel-cnt {
        padding-left: 6.836vw;
        padding-right: 0;
    }
    .carrusel-img__carousel .slick-list {
        margin-left: -6.836vw;
    }
    

    .carrusel-img__info {
        width: calc(100% - ( var(--web-margin) ));
        padding-right: 0;
        padding-left: 6.556vw;
        flex-direction: row;
        order: 1;
        gap: 1.172vw;
        margin-bottom: 6.836vw;
    }
    .carrusel-img__title {
        width: calc(100% - ( var(--web-margin) ));
    }
    .carrusel-img__info>div {
        width: 50%;
    }

    .carrusel-img__carousel .slick-slide {
        height: 100%;
    }
    .carrusel-img__carousel .slick-list {
        padding-left: 5.859vw;
    }
    .carrusel-img__carousel .slick-list {
        margin-left: unset;
    }

    .carrusel-img__carousel-arrows {
        margin-top: 15px;
    }
    .carrusel-img__carousel-arrows {
        width: calc(100% - ( var(--web-margin) * 2 ) );
        padding: 0 var(--web-margin);
    }
    .carrusel-img__carousel-arrows__inner {
        margin-left: 33vw;
    }
    .car-right .carrusel-img__carousel-arrows__inner {
        margin-left: 41vw;
        justify-content: unset;
    }
    
    .carrusel-img__description-cnt {
        bottom: unset;
        top: 0;
    }
    .car-left .carrusel-img__info {
        margin-left: var(--web-margin);
    }
}

@media screen and (max-width: 768px) {
    .car-left .carrusel-img__carousel-arrows__inner {
        margin-left: 0 !important;
    }
    .carrusel-img__button {
        margin-top: 30px;
    }
    .car-right .carrusel-img__counter {
        left: unset;
        right: var(--web-margin);
    }
    .car-right .carrusel-img__carousel-arrows {
        padding: 0;
    }
    .car-right .carrusel-img__carousel-arrows__inner {
        margin-left: 0;
    }
}

@media screen and (min-width: 601px) {
    .carrusel-img__counter.less-than-2 {
        display: none;
    }
}
@media screen and (max-width: 600px) {
    :root {
        --img-car-height: 100%;
    }
    .carrusel-img__carousel {
        margin-bottom: 50px;
    }
    .carrusel-img__carousel-arrows {
        margin-top: 15px;
    }
    .carrusel-img__carousel-cnt {
        padding-right: unset !important;
        padding-left: unset !important;
    }
    .carrusel-img__carousel .slick-list {
        padding-left: 0;
    }
    .carrusel-img__carousel-item {
        padding: 0 7px;
    }
    .carrusel-img__info {
        width: calc(100% - ( var(--web-margin) * 2 ));
        margin: 0 auto;
        margin-left: var(--web-margin) !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-bottom: 40px;
        padding: 0;
        flex-direction: column;
        gap: 30px;
        margin-bottom: 40px;
    }
    .carrusel-img__title {
        /* width: calc(100% - ( var(--web-margin) * 2 )); */
        width: 100%;
        padding-left: 0;
    }
    .carrusel-img__info>div {
        width: 100%;
    }
    .carrusel-img__carousel-arrows {
        width: calc( 100% - var(--web-margin) );
    }
    .carrusel-img__carousel .slick-slide {
        height: var(--img-car-height);
        aspect-ratio: var(--aspect-ratio);
    }
    .carrusel-img__carousel .slick-slide div, .carrusel-img__carousel .slick-slide img {
        height: unset;
    }
    .carrusel-img__carousel .slick-slide {
        height: unset;
    }

}


/*
  ██████╗ █████╗ ██████╗ ██████╗ ██╗   ██╗███████╗███████╗██╗         ██████╗ ███████╗    ████████╗ █████╗ ██████╗      ██╗███████╗████████╗ █████╗ ███████╗
 ██╔════╝██╔══██╗██╔══██╗██╔══██╗██║   ██║██╔════╝██╔════╝██║         ██╔══██╗██╔════╝    ╚══██╔══╝██╔══██╗██╔══██╗     ██║██╔════╝╚══██╔══╝██╔══██╗██╔════╝
 ██║     ███████║██████╔╝██████╔╝██║   ██║███████╗█████╗  ██║         ██║  ██║█████╗         ██║   ███████║██████╔╝     ██║█████╗     ██║   ███████║███████╗
 ██║     ██╔══██║██╔══██╗██╔══██╗██║   ██║╚════██║██╔══╝  ██║         ██║  ██║██╔══╝         ██║   ██╔══██║██╔══██╗██   ██║██╔══╝     ██║   ██╔══██║╚════██║
 ╚██████╗██║  ██║██║  ██║██║  ██║╚██████╔╝███████║███████╗███████╗    ██████╔╝███████╗       ██║   ██║  ██║██║  ██║╚█████╔╝███████╗   ██║   ██║  ██║███████║
  ╚═════╝╚═╝  ╚═╝╚═╝  ╚═╝╚═╝  ╚═╝ ╚═════╝ ╚══════╝╚══════╝╚══════╝    ╚═════╝ ╚══════╝       ╚═╝   ╚═╝  ╚═╝╚═╝  ╚═╝ ╚════╝ ╚══════╝   ╚═╝   ╚═╝  ╚═╝╚══════╝
*/

:root {
    --tar-size: 28.333vw;
    --tar-btn-size: 4.635vw; /* 89px */
}

.carrusel-tar {
    padding: var(--space-1) 0 var(--space-1);
}

.carrusel-tar__header {
    width: 100vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 calc( var(--web-margin) + var(--column-1) );
    margin-bottom: var(--space-3);
}

.car-tar__title {
    display: flex;
    align-items: center;
    gap: 40px;
}
.car-tar__link-cnt {
    width: var(--tar-btn-size);
    height: var(--tar-btn-size);
}
.car-tar__link {
    --size: var(--tar-btn-size);
    width: var(--size);
    height: var(--size);
    max-width: var(--size);
    max-height: var(--size);

    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    border: 1px solid var(--resort);
    margin-bottom: 12px;
    position: absolute;
    overflow: hidden;

    transform: rotate(-45deg) scale(1);

    transition: transform .5s ease
}
.car-tar__link img {
    height: 1.250vw; /* 24px */
}

.grid-tarjetas__tarjeta:hover .car-tar__link,
.car-tar__link:hover {
    transform: rotate(-45deg) scale(1.1);
}
.car-tar__link img {
    transition: transform .4s ease, scale .5s ease;
}
.grid-tarjetas__tarjeta:hover .car-tar__link img,
.car-tar__link:hover img {
    scale: .9;
}

.car-tar__link img:first-of-type {
    position: absolute;
    transform: translateX(-300%);
}
.grid-tarjetas__tarjeta:hover .car-tar__link img:first-of-type,
.car-tar__link:hover img:first-of-type {
    transform: translateX(0%);
}
.grid-tarjetas__tarjeta:hover .car-tar__link img:last-of-type,
.car-tar__link:hover img:last-of-type {
    transform: translateX(300%);
}

.car-tar__description {
    max-width: 20.625vw;
}

.carrusel-tar__carousel {
    width: 100vw;
}

.car-tar__carousel {
    height: var(--tar-size);
    cursor: none !important;
}
.car-tar__carousel.dragging .car-tar__item-cnt {
    scale: .95 !important;
}
.car-tar__item-cnt {
    padding: 0 13px;
    transition: scale .5s ease-in-out;
}
.car-tar__item {
    width: var(--tar-size);
    height: var(--tar-size);
    max-width: var(--tar-size);
    max-height: var(--tar-size);
    aspect-ratio: 1 / 1;

    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;

    text-align: center;
    padding: var(--space-3);
    overflow: hidden;
}
.car-tar__item img {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    object-fit: cover;
    transition: scale .5s ease;
}
.car-tar__item:hover img,
.slick-center .car-tar__item img {
    scale: 1.07
}
.car-tar__veil {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0,0,0,.5) 0%, rgba(0,0,0,0) 100%);
    opacity: .5;
    transition: opacity .4s ease;
}
.car-tar__veil.--second {
    opacity: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.5) 100%);
}
.car-tar__item p {
    z-index: 2;
    color: var(--white);
}
.car-tar__item p:last-of-type {
    opacity: 0;
    transition: opacity .4s ease;
}

.car-tar__item:hover p:last-of-type,
.slick-center .car-tar__item p:last-of-type {
    opacity: 1;
}
.car-tar__item:hover .car-tar__veil,
.slick-center .car-tar__item .car-tar__veil {
    opacity: .8;
}

@media screen and (max-width: 1440px) {
    :root {
        --tar-size: 26.806vw; /* 386px */
        --tar-btn-size: 4.236vw; /* 61px */
    }
    .car-tar__link img {
        height: 1.181vw; /* 17px */
    }
    .car-tar__item-cnt {
        padding: 0 10px;
    }
}
@media screen and (max-width: 1366px) {
    :root {
        --tar-size: 28.258vw; /* 386px */
        --tar-btn-size: 4.466vw; /* 61px */
    }
    .car-tar__link img {
        height: 1.245vw; /* 17px */
    }
}
@media screen and (max-width: 1024px) {
    :root {
        --tar-size: 33.984vw; /* 348px */
        --tar-btn-size: 5.762vw; /* 59px */
    }
    .carrusel-tar__header {
        padding: 0 calc( var(--web-margin) );
    }
    .car-tar__description {
        max-width: 30.625vw;
    }
    .car-tar__link img {
        height: 1.953vw; /* 20px */
    }
    .car-tar__item-cnt {
        padding: 0 7px;
    }
    .car-tar__item {
        padding: 40px 60px 40px;
    }
    .car-tar__carousel {
        cursor: auto;
    }
}
@media screen and (max-width: 768px) {
    :root {
        --tar-size: 305px; /* 305px */
        --tar-btn-size: 53px; /* 53px */
    }
    .car-tar__link img {
        height: 17px; /* 17px */
    }
    .car-tar__item-cnt {
        padding: 0 5px;
    }
    .car-tar__item {
        padding: 40px;
    }
    .car-tar__title {
        gap: 20px;
    }
}
@media screen and (max-width: 767px) {
    .carrusel-tar__header {
        flex-direction: column;
        padding: 0 var(--web-margin);
        margin-bottom: 30px;
        gap: 30px;
    }
    .car-tar__title {
        gap: 20px;
        justify-content: space-between;
        width: 100%;
    }
    .car-tar__description {
        max-width: unset;
    }
}
@media screen and (max-width: 600px) {
    :root {
        --tar-size: calc(100vw - (35px * 2));
    }
}


/*
 ███╗   ███╗ █████╗ ██████╗  ██████╗ ██╗   ██╗███████╗███████╗██╗███╗   ██╗ █████╗ 
 ████╗ ████║██╔══██╗██╔══██╗██╔═══██╗██║   ██║██╔════╝██╔════╝██║████╗  ██║██╔══██╗
 ██╔████╔██║███████║██████╔╝██║   ██║██║   ██║█████╗  ███████╗██║██╔██╗ ██║███████║
 ██║╚██╔╝██║██╔══██║██╔══██╗██║▄▄ ██║██║   ██║██╔══╝  ╚════██║██║██║╚██╗██║██╔══██║
 ██║ ╚═╝ ██║██║  ██║██║  ██║╚██████╔╝╚██████╔╝███████╗███████║██║██║ ╚████║██║  ██║
 ╚═╝     ╚═╝╚═╝  ╚═╝╚═╝  ╚═╝ ╚══▀▀═╝  ╚═════╝ ╚══════╝╚══════╝╚═╝╚═╝  ╚═══╝╚═╝  ╚═╝
*/

.marquee__part {
    flex-shrink: 0;
    padding: 0 4px;
    font-smooth: always;
}

.marquee {
    text-transform: uppercase;
    padding: var(--space-1) 0;
  
    position: relative;
    /* overflow: hidden; */
}

.page-404__marquee {
    height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 2 !important;
}
.marquee {
    z-index: 2 !important;
}
  
.page-404__marquee .marquee {
    padding: var(--space-4) 0;
}

.marquee__inner {
    -webkit-font-smoothing: antialiased;
    width: fit-content;
    display: flex;
    flex: auto;
    flex-direction: row;
}
  
.marquee img {
    height: 10.573vw;
    margin-left: 0.521vw;
    margin-right: 3.646vw;
}

@media screen and (max-width: 1440px) {
    .marquee img {
        margin-bottom: -4px
    }
}
@media screen and (max-width: 1366px) {
    .marquee img {
        height: 10.3vw;
        margin-left: 0.732vw;
        margin-right: 4.124vw;
    }
}
@media screen and (max-width: 1024px) {
    .marquee img {
        height: 10.645vw;
        margin-left: 0.977vw;
        margin-right: 3.836vw;
    }
}
@media screen and (max-width: 768px) {
    .marquee img {
        height: 14vw;
        margin-left: 1.302vw;
        margin-right: 5.115vw;
    }
}
@media screen and (max-width: 600px) {
    .marquee img {
        height: 70px;
        margin-left: 10px;
        margin-right: 24px;
    }
}


/*
  ██████╗ ██████╗ ██╗██████╗     ████████╗ █████╗ ██████╗      ██╗███████╗████████╗ █████╗ ███████╗
 ██╔════╝ ██╔══██╗██║██╔══██╗    ╚══██╔══╝██╔══██╗██╔══██╗     ██║██╔════╝╚══██╔══╝██╔══██╗██╔════╝
 ██║  ███╗██████╔╝██║██║  ██║       ██║   ███████║██████╔╝     ██║█████╗     ██║   ███████║███████╗
 ██║   ██║██╔══██╗██║██║  ██║       ██║   ██╔══██║██╔══██╗██   ██║██╔══╝     ██║   ██╔══██║╚════██║
 ╚██████╔╝██║  ██║██║██████╔╝       ██║   ██║  ██║██║  ██║╚█████╔╝███████╗   ██║   ██║  ██║███████║
  ╚═════╝ ╚═╝  ╚═╝╚═╝╚═════╝        ╚═╝   ╚═╝  ╚═╝╚═╝  ╚═╝ ╚════╝ ╚══════╝   ╚═╝   ╚═╝  ╚═╝╚══════╝
*/

.grid-tarjetas {
    padding: var(--space-1) calc(var(--space-1) + 30px);
}
.grid-tarjetas__title-cnt {
    max-width: 33.958vw;
    margin: 0 auto;
    text-align: center;
    margin-bottom: var(--space-3);
}
.grid-tarjetas__title-cnt > p {
    margin-bottom: 30px;
}

.grid-tarjetas__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 2.917vw;
}
.grid-tarjetas__tarjeta {
    aspect-ratio: 1 / 1;
    background-color: var(--white);
    padding: 2.083vw;
    
    display: flex;
    flex-direction: column;
    justify-content: space-between;

    visibility: hidden;

    position: relative;
}
.grid-tarjetas__icono-tarjeta {
    --height: 3.125vw;
    height: var(--height);
    border-radius: calc(var(--height) / 2);
    width: 5.469vw;
    display: flex;
    justify-content: center;
    align-items: center;
}
.grid-tarjetas__icono-tarjeta img {
    height: 100%;
}
.grid-tarjetas__info-tarjeta {
    height: 44%;
    width: 73%;
}
.grid-tarjetas__titulo-tarjeta {
    margin-bottom: 30px;
}

:root {
    --grid-tar-btn-size: 60px;
}

.grid-tarjetas__tarjeta:hover .grid-tarjetas__link-cnt.car-tar__link-cnt {
    opacity: 1;
}

.grid-tarjetas__link-cnt.car-tar__link-cnt {
    width: var(--grid-tar-btn-size);
    height: var(--grid-tar-btn-size);
    position: absolute;
    top: 2.083vw;
    right: 2.083vw;
    opacity: 0;
    transition: opacity .5s ease;
}
.grid-tarjetas__link.car-tar__link {
    --size: var(--grid-tar-btn-size);
}

@media screen and (max-width: 1440px) {
    .grid-tarjetas__info-tarjeta {
        height: 42%;
        width: 96%;
    }
}
@media screen and (max-width: 1300px) {
    .grid-tarjetas__grid {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 2.917vw;
    }
    .grid-tarjetas__info-tarjeta {
        height: 30%;
    }
}
@media screen and (max-width: 1024px) {
    :root {
        --grid-tar-btn-size: 50px;
    }
    
    .grid-tarjetas__info-tarjeta {
        height: 38%;
    }
    .grid-tarjetas__title-cnt {
        max-width: 43.958vw;
    }
    .grid-tarjetas__link-cnt.car-tar__link-cnt {
        opacity: 1;
    }
}
@media screen and (max-width: 768px) {
    .grid-tarjetas__grid {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 20px;
    }
    .grid-tarjetas {
        padding-left: var(--web-margin);
        padding-right: var(--web-margin);
    }
    .grid-tarjetas__tarjeta {
        padding: 30px;
    }
    .grid-tarjetas__link-cnt.car-tar__link-cnt {
        top: 30px;
        right: 30px;
    }
    .grid-tarjetas__icono-tarjeta {
        --height: 45px;
        width: 85px;
    }
    .grid-tarjetas__titulo-tarjeta {
        margin-bottom: 15px;
    }
    .grid-tarjetas__info-tarjeta {
        height: unset;
        width: 100%;
    }
}
@media screen and (max-width: 600px) {
    .grid-tarjetas__grid {
        grid-template-columns: repeat(1, 1fr);
    }
    .grid-tarjetas__title-cnt {
        max-width: calc(100vw - var(--web-margin) * 2);
    }
}


/*
 ███████╗███████╗██████╗  █████╗  ██████╗██╗ █████╗ ██████╗  ██████╗ 
 ██╔════╝██╔════╝██╔══██╗██╔══██╗██╔════╝██║██╔══██╗██╔══██╗██╔═══██╗
 █████╗  ███████╗██████╔╝███████║██║     ██║███████║██║  ██║██║   ██║
 ██╔══╝  ╚════██║██╔═══╝ ██╔══██║██║     ██║██╔══██║██║  ██║██║   ██║
 ███████╗███████║██║     ██║  ██║╚██████╗██║██║  ██║██████╔╝╚██████╔╝
 ╚══════╝╚══════╝╚═╝     ╚═╝  ╚═╝ ╚═════╝╚═╝╚═╝  ╚═╝╚═════╝  ╚═════╝ 
*/

.espaciado {
    width: 100vw;
}
.height-0 {
    height: 0;
}
.height-1 {
    height: var(--space-1);
}
.height-2 {
    height: var(--space-2);
}
.height-3 {
    height: var(--space-3);
}
.height-4 {
    height: var(--space-4);
}

@media screen and (max-width: 768px) {
    .height-mobile-0 {
        height: 0;
    }
    .height-mobile-1 {
        height: var(--space-1);
    }
    .height-mobile-2 {
        height: var(--space-2);
    }
    .height-mobile-3 {
        height: var(--space-3);
    }
    .height-mobile-4 {
        height: var(--space-4);
    }
}


/*
 
 ██╗     ███████╗ ██████╗  █████╗ ██╗     
 ██║     ██╔════╝██╔════╝ ██╔══██╗██║     
 ██║     █████╗  ██║  ███╗███████║██║     
 ██║     ██╔══╝  ██║   ██║██╔══██║██║     
 ███████╗███████╗╚██████╔╝██║  ██║███████╗
 ╚══════╝╚══════╝ ╚═════╝ ╚═╝  ╚═╝╚══════╝
                                          
 
*/

:root {
    --legal-title: 1.9rem; /* 38px */
}

.legal__cnt {
    padding-top: var(--space-1);
    padding-bottom: var(--space-1);
    width: 100vw;
}

.legal__cnt + .legal__cnt {
    padding-top: 0;
}

.derechos .menu__form-input .form__label {
    opacity: 1;
}

.derechos .menu__form-input .form__input .input-btm::before, .derechos .menu__form-input .form__input .input-btm::after {
    background-color: #1B1B1B;
}

.derechos .menu__checkbox input[type="checkbox"] {
    border: 1px solid var(--black);
}
.derechos .menu__checkbox input[type="checkbox"]:checked {
    background-color: var(--black);
}

.legal {
    max-width: 36.458vw; /* 700px */
    margin: 0 auto;
}

.legal__title {
    margin-bottom: 4.167vw; /* 80px */
}

.legal__content h2,
.legal__content h3,
.legal__content h4,
.legal__content h5,
.legal__content h6 {
    font-size: var(--legal-title);
    margin-bottom: 2.604vw; /* 50px */ 
}

.legal__content p + p:not(.menu__checkbox) {
    margin-top: 40px
}

@media screen and (max-width: 1920px) {
    .legal {
        max-width: 700px;
    }
}

@media screen and (max-width: 1440px) {
    :root {
        --legal-title: 1.625rem; /* 26px */
    }
}
@media screen and (max-width: 1366px) {
    .legal__title {
        margin-bottom: 60px;
    }
    .legal__content h2,
    .legal__content h3,
    .legal__content h4,
    .legal__content h5,
    .legal__content h6 {
        margin-bottom: 30px;
    }
    .legal__content p + .legal__content p {
        margin-top: 30px
    }
}

@media screen and (max-width: 768px) {
    .legal {
        max-width: 454px;
    }
}

@media screen and (max-width: 768px) {
    .legal__cnt {
        padding-top: 185px;
        padding-bottom: 120px;
    }
    .legal {
        max-width: unset;
        width: calc(100% - var(--web-margin) * 2)
    }
    .legal__title {
        margin-bottom: 60px;
    }
    .legal__content h2,
    .legal__content h3,
    .legal__content h4,
    .legal__content h5,
    .legal__content h6 {
        margin-bottom: 30px;
    }
    .legal__content p + .legal__content p {
        margin-top: 30px
    }
}






/*
  ██████╗ ██████╗  ██████╗ ██╗  ██╗██╗███████╗███████╗
 ██╔════╝██╔═══██╗██╔═══██╗██║ ██╔╝██║██╔════╝██╔════╝
 ██║     ██║   ██║██║   ██║█████╔╝ ██║█████╗  ███████╗
 ██║     ██║   ██║██║   ██║██╔═██╗ ██║██╔══╝  ╚════██║
 ╚██████╗╚██████╔╝╚██████╔╝██║  ██╗██║███████╗███████║
  ╚═════╝ ╚═════╝  ╚═════╝ ╚═╝  ╚═╝╚═╝╚══════╝╚══════╝
*/

div[data-cky-tag="detail-powered-by"] {
    display: none !important;
}
.cky-notice-btn-wrapper {
    flex-direction: row-reverse !important; 
    margin-top: 20px !important;
}
.cky-btn {
    font-weight: 700 !important;
    height: 59px !important;
    border-radius: calc(59px / 2) !important;
}
.cky-btn.cky-btn-accept {
    overflow: hidden;
    position: relative;
    transition: color .1s linear, background-color .1s linear;
    transition-delay: .2s;
    border: 1px solid rgb(27, 27, 27, .5) !important;
}
.cky-btn:not(.cky-btn-accept) {
    transition: opacity .3s ease !important;
}
.cky-btn:not(.cky-btn-accept):hover {
    opacity: .6 !important;
}
.cky-btn.cky-btn-accept::after {
    content: '';
    position: absolute;
    top: 0;
    left: -30px;
    height: 100%;
    width: 0%;
    z-index: -1;
    background-color: var(--black);
    clip-path: polygon(0 0, 0 0, 40% 100%, 0% 100%);
    transition: all .8s ease;
}

.cky-btn-revisit-wrapper {
    display: none !important;
}

.cky-btn.cky-btn-accept:hover {
    color: var(--white) !important;
}
.cky-consent-container .cky-consent-bar {
    box-shadow: none !important;
    padding: 40px !important
}
.cky-notice .cky-title {
    display: none !important;
}
.cky-btn.cky-btn-accept:hover::after {
    width: 120%;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

.cky-btn:hover {
    opacity: 1 !important;
}
.cky-consent-container .cky-consent-bar {
    opacity: 0;
}
.cky-notice-group {
    font-family: Brasley !important;
}

.cky-preference-center .cky-btn-accept {
    transition-delay: 0s !important;
}
.cky-preference-center .cky-btn-accept:hover {
    background-color: var(--black) !important;
}

@media (max-width: 1440px) {
    .cky-consent-container .cky-consent-bar {
        padding: 35px !important
    }
}
@media (max-width: 576px) {
    .cky-box-bottom-left {
        bottom: 15px !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
    }
    .cky-consent-container .cky-consent-bar {
        padding: 35px 20px !important
    }
    .cky-consent-container {
        width: calc(100% - 30px) !important;
    }
    .cky-notice-des,.cky-notice-btn-wrapper {
        padding: 0 !important
    }
    .cky-notice-btn-wrapper {
        flex-wrap: nowrap !important;
        flex-direction: row !important;
    }
    .cky-preference-center {
        padding-top: 25px !important;
    }
}

/*
  █████╗ ███╗   ██╗██╗███╗   ███╗ █████╗  ██████╗██╗ ██████╗ ███╗   ██╗███████╗███████╗
 ██╔══██╗████╗  ██║██║████╗ ████║██╔══██╗██╔════╝██║██╔═══██╗████╗  ██║██╔════╝██╔════╝
 ███████║██╔██╗ ██║██║██╔████╔██║███████║██║     ██║██║   ██║██╔██╗ ██║█████╗  ███████╗
 ██╔══██║██║╚██╗██║██║██║╚██╔╝██║██╔══██║██║     ██║██║   ██║██║╚██╗██║██╔══╝  ╚════██║
 ██║  ██║██║ ╚████║██║██║ ╚═╝ ██║██║  ██║╚██████╗██║╚██████╔╝██║ ╚████║███████╗███████║
 ╚═╝  ╚═╝╚═╝  ╚═══╝╚═╝╚═╝     ╚═╝╚═╝  ╚═╝ ╚═════╝╚═╝ ╚═════╝ ╚═╝  ╚═══╝╚══════╝╚══════╝
*/

.image-clip {
    clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
}

.drag-ball {
    width: 50px;
    height: 50px;
    position: fixed;
    top: 0;
    left: 0;
    border: 3px solid dodgerblue;
    border-radius: 50%;
    pointer-events: none;
    z-index: 40;
}
.cursor-follower {
    position: fixed;
    border:1px solid var(--white);
    width: 196px;
    height: 196px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    z-index: 1;
    user-select: none;
    pointer-events: none;
    z-index: 10000;
    scale: 0
}
.cursor-follower.is-black {
    border-color: var(--black);
}
.cursor-follower.is-black #cursor-follower-text {
    color: var(--black);
}
.cursor-follower.active {
    transition: 0.3s cubic-bezier(.55,-0.01,.47,1.01) scale,
        0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) background;
    opacity: 1;
    scale: 1;
}
.cursor-follower.hovered {
    opacity: 1;
}
/* .flickity-enabled.is-draggable .flickity-viewport {
    cursor: none !important;
} */
.play-hover,
.play-hover .video-slide-element {
    cursor: none !important;
}
.play-hover-icon {
    height: 30px;
    margin-top: 4px;
    margin-left: 6px;
}

.split-parent, .split-parent-car-img, .split-parent-slider {
    overflow: hidden;
    padding-left: 5px;
    margin-left: -5px;
    padding-bottom: 5px;
    margin-bottom: -5px;
}
.split-child, .split-child-car-img, .split-child-slider, .split-child-s, .split-child-m {
    display: inline-block;
    transform-origin: 0% 50%;
}
.split-child-s, .split-child-m {
    /* padding-left: 5px;
    margin-left: -5px; */
}

.split-child, .split-child-slider {
    margin-top: 7px;
    margin-bottom: -7px;
}

.mac_link {
    position: relative;
}
.mac_link::after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    height: 1px;
    background-color: var(--black);
    width: 0%;
    transition: width .5s cubic-bezier(.58,.01,.44,1);
}
.mac_link:hover::after {
    width: 100%;
}
.mac_link.current-url:not(.footer-link)::after {
    width: 100%;
}

@media screen and (max-width: 1366px) {
    .split-child, .split-child-slider {
        margin-top: 4px;
        margin-bottom: -4px;
    }
}


/*
 ████████╗██████╗  █████╗ ███╗   ██╗███████╗██╗ ██████╗██╗ ██████╗ ███╗   ██╗
 ╚══██╔══╝██╔══██╗██╔══██╗████╗  ██║██╔════╝██║██╔════╝██║██╔═══██╗████╗  ██║
    ██║   ██████╔╝███████║██╔██╗ ██║███████╗██║██║     ██║██║   ██║██╔██╗ ██║
    ██║   ██╔══██╗██╔══██║██║╚██╗██║╚════██║██║██║     ██║██║   ██║██║╚██╗██║
    ██║   ██║  ██║██║  ██║██║ ╚████║███████║██║╚██████╗██║╚██████╔╝██║ ╚████║
    ╚═╝   ╚═╝  ╚═╝╚═╝  ╚═╝╚═╝  ╚═══╝╚══════╝╚═╝ ╚═════╝╚═╝ ╚═════╝ ╚═╝  ╚═══╝
*/

#swup {
    position: relative;
    overflow-x: hidden !important;
    z-index: 10;
}

#transition-layer {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: 200vw;
    background-color: var(--black);
    clip-path: polygon(3% 0%, 100% 0%, 97% 100%, 0% 100%);
    transform: translateX(100%);
    z-index: 99999;
    opacity: 0;
}
.transition-cape {
    transition: transform 0s ease;
}
html.is-animating #transition-layer {
    clip-path: polygon(3% 0%, 100% 0%, 100% 100%, 3% 100%);
    transition: transform 2.5s ease, clip-path 2s ease;
    opacity: 1;
    transform: translateX(0%);
}
html.is-rendering #transition-layer {
    clip-path: polygon(3% 0%, 97% 0%, 100% 100%, 3% 100%);
    transition: transform 2s ease, clip-path 2s ease;
    opacity: 1;
    transform: translateX(-55%);
}


#loading {
    height: 100vh;
    width: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}
#loading svg {
    z-index: 100000;
    height: 100px;
}
#loading-bar {
    position: absolute;
    bottom: 87px;
    width: 200px;
    height: 3px;
    display: flex;
    z-index: 999999;
}
#loading-bar::before {
    content: '';
    position: absolute;
    top: 1px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--white);
    opacity: .35;
    z-index: 0;
}
#loading-progress {
    height: 100%;
    width: 0%;
    transition: width 1s cubic-bezier(.58,.01,.44,1);
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--white);
    z-index: 1;
}

#loading-layer {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: 100vw;
    background-color: var(--black);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    transform: translateY(0%);
    z-index: 999999;

    transition: transform 1.6s cubic-bezier(.58,.01,.44,1), clip-path 2s cubic-bezier(.58,.01,.44,1), height 1.2s cubic-bezier(.58,.01,.44,1);

    display: flex;
    justify-content: center;
    align-items: center;
}
html.page-fully-loaded #loading-layer {
    transform: translateY(150%);
    height: 80vh;
    clip-path: polygon(0% 40%, 100% 0%, 100% 100%, 0% 100%);
}

@media screen and (max-width: 1366px) {
    #loading svg {
        height: 71px;
    }
    #loading-bar {
        position: absolute;
        bottom: 67px;
        width: 142px;
    }
}
@media screen and (max-width: 600px) {
    #loading-bar {
        bottom: 90px;
    }
}

.current-url {
    pointer-events: none !important;
}

.link-swap {
    position: relative;
    overflow: hidden;
    display: block;
}
.link-swap span {
    transition: transform 0.4s cubic-bezier(.58,.01,.44,1);
}
.link-swap span:nth-child(1) {
    position: absolute;
    color: var(--white);
    transform-origin: left center;
    transform: translateY(100%)/*  rotate(20deg) */;
}
.link-swap span:nth-child(2) {
    transform-origin: right center;
    display: block;
}
.link-swap:hover span:nth-child(1) {
    transform: translateY(0%) rotate(0deg);
}
.link-swap:hover span:nth-child(2) {
    transform: translateY(-100%)/*  rotate(20deg) */;
}
.link-swap.current-url span:nth-child(1) {
    transform: translateY(0%) rotate(0deg);
}
.link-swap.current-url span:nth-child(2) {
    transform: translateY(-100%)/*  rotate(20deg) */;
}

/*Hide menu Language Switcher*/
.wpml-ls-menu-item {
    display: none !important;
}
 
/*Hide footer Language Switcher*/
.wpml-ls {
    display: none !important;
}

.otgs-development-site-front-end {
    display: none !important;
}

.wpcf7 form.invalid .wpcf7-response-output {
    border: none !important;
}


/*
 ██╗      █████╗ ███╗   ██╗ ██████╗ ██╗   ██╗ █████╗  ██████╗ ███████╗    ███████╗███████╗██╗     ███████╗ ██████╗████████╗ ██████╗ ██████╗ 
 ██║     ██╔══██╗████╗  ██║██╔════╝ ██║   ██║██╔══██╗██╔════╝ ██╔════╝    ██╔════╝██╔════╝██║     ██╔════╝██╔════╝╚══██╔══╝██╔═══██╗██╔══██╗
 ██║     ███████║██╔██╗ ██║██║  ███╗██║   ██║███████║██║  ███╗█████╗      ███████╗█████╗  ██║     █████╗  ██║        ██║   ██║   ██║██████╔╝
 ██║     ██╔══██║██║╚██╗██║██║   ██║██║   ██║██╔══██║██║   ██║██╔══╝      ╚════██║██╔══╝  ██║     ██╔══╝  ██║        ██║   ██║   ██║██╔══██╗
 ███████╗██║  ██║██║ ╚████║╚██████╔╝╚██████╔╝██║  ██║╚██████╔╝███████╗    ███████║███████╗███████╗███████╗╚██████╗   ██║   ╚██████╔╝██║  ██║
 ╚══════╝╚═╝  ╚═╝╚═╝  ╚═══╝ ╚═════╝  ╚═════╝ ╚═╝  ╚═╝ ╚═════╝ ╚══════╝    ╚══════╝╚══════╝╚══════╝╚══════╝ ╚═════╝   ╚═╝    ╚═════╝ ╚═╝  ╚═╝
*/

.lang-selector {
    text-transform: uppercase;
}

.mac_link:not(.current_lang) {
    cursor: pointer;
}
.mac_link.current_lang::after {
    pointer-events: none;
    width: 100%;
}


/*
 ███╗   ██╗███████╗██╗    ██╗███████╗██╗     ███████╗████████╗████████╗███████╗██████╗ 
 ████╗  ██║██╔════╝██║    ██║██╔════╝██║     ██╔════╝╚══██╔══╝╚══██╔══╝██╔════╝██╔══██╗
 ██╔██╗ ██║█████╗  ██║ █╗ ██║███████╗██║     █████╗     ██║      ██║   █████╗  ██████╔╝
 ██║╚██╗██║██╔══╝  ██║███╗██║╚════██║██║     ██╔══╝     ██║      ██║   ██╔══╝  ██╔══██╗
 ██║ ╚████║███████╗╚███╔███╔╝███████║███████╗███████╗   ██║      ██║   ███████╗██║  ██║
 ╚═╝  ╚═══╝╚══════╝ ╚══╝╚══╝ ╚══════╝╚══════╝╚══════╝   ╚═╝      ╚═╝   ╚══════╝╚═╝  ╚═╝
                                                                                      
*/

.newsletter__popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    opacity: 0;
    z-index: 999998;
    justify-content: center;
    align-items: center;
    background-color: #00000050;
    pointer-events: none;

    transition: all .4s ease;
}

.newsletter__popup.is-active {
    opacity: 1;
    pointer-events: all;
}

.newsletter__popup-cnt {
    width: calc(100% - var(--web-margin) );
    max-width: 600px;
    padding: 50px;
    padding-top: 90px;
    position: relative;
}
.newsletter__popup-cnt .menu__cross-line {
    background-color: var(--white);
}
.newsletter__popup-cnt .menu__cross {
    --size: 40px !important;
    top: 30px !important;
    right: 30px !important;
}

.menu__form-text-box a {
    text-decoration: underline;
}

.legal__content .button {
    margin-top: 20px;
}

@media screen and (max-width: 768px) {
    .newsletter__popup-cnt .menu__cross {
        --size: 30px !important;
        top: 20px !important;
        right: 20px !important;
        z-index: 10;
    }
    .newsletter__popup-cnt {
        padding: 30px;
        padding-top: 60px;
    }
    .menu__cnt .menu__form-text-box {
        max-height: unset;
        overflow: unset;
        font-size: 12px;
    }
}




/*Nuevos cambios*/

/*Nuevos cambios > Lineas cabecera*/
.cabecera__inner {
    position: relative;
    background:transparent;
}

.cabecera__inner:before {
    content: "";
    position: absolute;
    width: 1px;
    height: calc(100% + 100px);
    background: #fff;
    top: -50px;
    left: 97px;
    transform: rotate(-11deg);
    transition: all 1.3s cubic-bezier(.58,.01,.44,1) .3s;
    background:#fff!important;
}

.cabecera__inner:after {
    content: "";
    position: absolute;
    width: 1px;
    height: calc(100% + 100px);
    background: #fff;
    top: -50px;
    right: 97px;
    transform: rotate(11deg);
    transition: all 1.3s cubic-bezier(.58,.01,.44,1) .3s;
    background:#fff!important;
}


html:not(.page-fully-loaded) .cabecera .cabecera__inner:before,
html.transition-done .cabecera .cabecera__inner:before {
    left: 25%;
    transform: rotate(-4deg);
    transition: all 1.3s cubic-bezier(.58,.01,.44,1);
}


html:not(.page-fully-loaded) .cabecera .cabecera__inner:after,
html.transition-done .cabecera .cabecera__inner:after {
    right: 25%;
    transform: rotate(4deg);
    transition: all 1.3s cubic-bezier(.58,.01,.44,1);
}


@media (max-width: 1100px) {
    .cabecera__inner:before {
        left: 75px;
    }

    .cabecera__inner:after {
        right: 75px;
    }
}


@media (max-width: 600px) {
    .cabecera__inner {
        clip-path: none;
    }

    .cabecera__inner:before {
        left: -5px;
    }

    .cabecera__inner:after {
        right: -5px;
    }
}


/*Nuevos cambios > Error maqueta módulo artículo solo si es texto único*/

.unique-texto .carrusel-img__description-cnt, .unique-texto .carrusel-img__title-cnt {
    position:relative;
}
.unique-texto .carrusel-img__description-cnt {
     margin-top: 30px;
}


/*MODULO CRM*/

.crm .articulo__inner {
    padding-top:0px;
}

.crm .articulo__info {
    margin-left:0px;
    width: var(--column-4);
    /*margin-right: calc(var(--column-1) / 2);*/
    /*margin-right: 1.25vw;*/
    margin-right:20px!important;
    background-size:cover;
    background-position: center center;
}

.crm .articulo__media {
    width: var(--column-7);
}

.crm .accesos__card {
    background:initial;
    cursor:initial!important;
    height:100%;
}


.crm .accesos__card-content {
    height: 100%;
    min-height: 100%;
}

.crm p {
    color:#FDFBFC;
}

.crm .articulo__media, .crm .accesos__card-content {
    padding: var(--space-4);
}

.crm__entrance {
    max-width: 460px;
    margin-bottom: 60px;
}

.crm__entrance p {
    color: #282828;
    font-size: 20px;
    font-weight: 400;
}

.crm__form {
    height: calc(100% - var(--space-4)* 2 - 30px);
}

.crm .accesos__card {
    aspect-ratio:initial; 
}


.crm__form .menu__form-row_group_form  .menu__form-row_group .menu__form-row:last-child {
    margin-bottom: var(--form-gap);
}


.crm__form .menu__form-row_group_form .menu__form-row:last-child {
    margin-bottom: 0px;
}



/* PA ALINEAR BOTON ABAJO
.crm__form .menu__form-row_group_form {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.crm__form .wpcf7, .crm__form .wpcf7 form {
    height:100%;
}
*/
.crm__form .menu__form-input .form__label {
    color: #1B1B1B;
}

.crm__form .menu__form-input .form__input .input-btm::before, .crm__form .menu__form-input .form__input .input-btm::after {
    background-color:#1B1B1B;
}

.crm__form .menu__form-text-box {
    opacity: .5;
    color: #282828;
}

.crm__form .menu__checkbox input[type="checkbox"] {
    border: 1px solid #000;
}

.crm__form span.wpcf7-form-control.wpcf7-acceptance {
    color: #1B1B1B;
}

.crm__form .menu__form-text-box {
    margin-top:0px;
}

.crm__form .wpcf7-list-item-label, .wpcf7-list-item-label span {
    font-size: 14px !important;
}

.crm__form .menu__checkboxes {
    flex-direction: column;
    gap:0px;
}

.crm__form .menu__form-text-box {
    margin-top:10px;
}

@media (max-width: 1024px) {

    .crm .articulo__info {
        max-width: 100%!important;
        width:100%!important;
    }
}

/*Cabecera*/
.cabecera h1.title-1, .cabecera .cabecera__description, .cabecera .cabecera__subtitle {
    color: #fff;
}


/*
.header__logo svg path  {
    fill: #fff !important;
}
*/


/*Modificaciones módulo */

.list__descargas .articulo__list-item {
    border-bottom: none;
    padding-top: 0px;
    gap: 10px;
    padding-bottom: 14px;
}

.list__descargas .button-2 {
    font-size: 14px;
    position: relative;
    overflow: hidden;
    font-weight: 600;
}

.list__descargas .button-2:after {
    content:"";
    position: absolute;
    bottom:0px;
    left:0px;
    height:1px;
    background:#fff;
    width:0%;
    transition: all .3s cubic-bezier(.58,.01,.44,1);
}

.list__descargas .button-2:hover:after {
    width:1000%;
    transition: all .3s cubic-bezier(.58,.01,.44,1);
}

.articulo__list.list__descargas {
    margin-top:30px;
}


/*Carrusel horizontal*/
.carrusel-hor .title-4 {
    font-size: 2rem;
}

.carrusel-hor .carrusel-img__carousel .slick-slide img, .carrusel-hor .carrusel-img__carousel .slick-slide {
    height: 31vw;
}

.carrusel-hor .carrusel-img__carousel-arrows__inner {
    margin-left: 10.208vw;
}


@media (max-width: 1440px) {
    .crm__entrance p {
        font-size: 16px;
    }

    .crm__entrance {
        max-width: 100%;
    }

    .crm span.form__label.button-2 {
        font-size: 12px;
    }

    .carrusel-hor .title-4 {
        font-size: 1.7rem;
    }

}

@media (max-width: 1140px) { 

    .carrusel-hor .carrusel-img__carousel .slick-slide img, .carrusel-hor .carrusel-img__carousel .slick-slide {
        height: 34vw;
    }

}


@media (max-width: 1024px) {
    .crm .articulo__info {
        width: var(--column-5);
        max-width: var(--column-5);
    }

    .crm .articulo__media {
        width: var(--column-7);
    }

    .carrusel-hor .carrusel-img__carousel .slick-slide img, .carrusel-hor .carrusel-img__carousel .slick-slide {
        height: 49vw;
    }

    .crm__entrance {
        margin-bottom: 30px;
    }

}

@media (max-width:768px) {
    .crm .articulo__info {
        order: 1 !important;
    }

    .crm .articulo__media {
        order:2;
    }

    .crm .articulo__info {
        margin-bottom: var(--space-3);
    }

    .crm .articulo__info {
        width: var(--column-5);
    }

    .crm  .menu__form-text-box {
        max-height: 40px;
        overflow-y: scroll;
        }
    }

}

@media (max-width:600px) {
    .carrusel-hor .carrusel-img__carousel .slick-slide {
        aspect-ratio:initial;
    }

    .crm__entrance {
        margin-bottom: 30px;
    }

}

@media (max-width:440px) {
    .crm__form .button {
        width:100%;
    }

    .crm .articulo__media {
        padding: 24px;
    }

}