@media(min-width: 1025px) {

    .tw2lve-nav-close,
    .tw2lve-nav-backdrop {
        display: none !important
    }
}

@media(max-width: 1024px) {
    .retreat-capacity-heading {
        margin-bottom: 16px;
        text-align: center
    }

    .retreat-capacity-text {
        max-width: 100%;
        text-align: center
    }

    .retreat-capacity-cards {
        position: relative;
        left: 50%;
        top: 50%;
        width: 90%;
        transform: translate(-50%, 8%);
        margin: 0
    }

    .retreat-capacity-left {
        padding-top: 0;
        justify-content: center
    }

    .retreat-capacity-content {
        text-align: center;
        padding-right: 0;
        width: 100%
    }

    .tw2lve-footer__contact {
        gap: 20px
    }

    .tw2lve-footer__content-row {
        gap: 20px
    }
}

@media(max-width: 1024.98px) {
    .tw2lve-vslider__prev {
        display: none !important
    }

    .tw2lve-villas__cta,
    .tw2lve-collections__cta,
    .tw2lve-expectation__cta,
    .tw2lve-about-experience__cta,
    .tw2lve-vslider__cta,
    .tw2lve-villa-listing__cta,
    .tw2lve-footer__cta,
    .tw2lve-contact-form__submit,
    .tw2lve-villa-detail__primary-cta,
    .tw2lve-villa-detail__outline-cta,
    .tw2lve-villa-booking__submit,
    .home-hero .btn-hero,
    .retreats-final-cta-btn,
    .retreats-whychoose-cta,
    .retreat-info-cta,
    .section-host-retreat__cta,
    .btn {
        height: 41px !important
    }

    .section-host-retreat__cta {
        padding: 0 28px !important;
        min-height: unset !important;
    }

    .container-tw2lve,
    .tw2lve-policy-page-content__inner,
    .tw2lve-policy-page-content .post-content,
    .tw2lve-about-video__container,
    .tw2lve-villas__head-wrap,
    .tw2lve-villas__foot-wrap,
    .tw2lve-villa-listing .container-tw2lve,
    .tw2lve-experiences__head-wrap,
    .tw2lve-collections__wrap,
    .tw2lve-reviews__wrap,
    .tw2lve-expectation__wrap,
    .tw2lve-footer__wrap,
    .tw2lve-about-philosophy__text-wrap,
    .tw2lve-about-philosophy__grid,
    .tw2lve-about-team__container,
    .tw2lve-about-experience__container,
    .tw2lve-contact-section__container,
    .tw2lve-villa-detail .container-tw2lve,
    .tw2lve-checkout__wrap {
        max-width: 100%;
        padding-left: 1.25rem;
        padding-right: 1.25rem
    }

    .container-tw2lve {
        flex-wrap: wrap
    }

    .tw2lve-villa-detail__intro-head,
    .tw2lve-villa-detail__intro-top .tw2lve-villa-booking {
        flex: 1 1 100%;
        width: 100%
    }

    .tw2lve-villa-detail__intro-head,
    .tw2lve-villa-detail__meta {
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center
    }

    .tw2lve-villa-detail__meta-price,
    .tw2lve-villa-detail__meta-row {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        gap: 15px
    }

    .tw2lve-villa-booking__submit {
        font-size: 15px;
        line-height: 1.4;
        padding: 0 28px;
        height: 42px
    }

    .retreat-info-content .retreat-info-cta {
        padding: 10px 26px;
        font-size: 12px
    }

    .retreats-whychoose-cta {
        padding: 6px 26px
    }

    .retreat-info-content {
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center
    }

    .retreats-final-cta-btn {
        padding: 10px 26px;
        font-size: 12px
    }

    .retreat-rightfit-card-icon {
        width: 56px;
        height: 56px;
        margin-bottom: 20px
    }

    .retreats-whychoose-text {
        font-size: 16px;
        line-height: 1.5
    }

    .retreat-support-text,
    .retreat-support-text p {
        text-align: center
    }

    .retreat-capacity-card-info h3 {
        font-size: 20px
    }

    .retreat-capacity-card {
        padding: 24px;
        gap: 18px
    }

    .retreat-capacity-text {
        max-width: 100%;
        text-align: center
    }

    .retreat-capacity-left {
        padding: 0px 5% 80px
    }

    .site-navbar {
        padding-top: .75rem;
        padding-bottom: .75rem
    }

    a.custom-logo-link {
        width: auto;
        order: 1
    }

    .navbar-brand {
        flex: 0 0 auto;
        width: auto;
        font-size: 1.1rem;
        order: 1
    }

    .site-navbar .navbar-toggler {
        border: none;
        outline: none;
        box-shadow: none;
        padding: 6px 8px;
        margin-left: auto;
        order: 2;
        position: relative;
        z-index: 1060
    }

    .site-navbar .navbar-toggler:focus {
        box-shadow: none
    }

    img.custom-logo {
        width: 50%;
        height: auto
    }

    .tw2lve-hero {
        min-height: 100svh;
        height: auto;
        margin-top: 0;
        align-items: flex-end
    }

    .site-navbar .navbar-toggler-icon {
        display: block;
        width: 26px;
        height: 22px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        box-shadow: none;
        transition: background-image .2s ease;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='22' viewBox='0 0 26 22' fill='none'%3E%3Crect x='0' y='0'  width='26' height='2' rx='1' fill='%23ffffff'/%3E%3Crect x='0' y='10' width='26' height='2' rx='1' fill='%23ffffff'/%3E%3Crect x='0' y='20' width='26' height='2' rx='1' fill='%23ffffff'/%3E%3C/svg%3E")
    }

    .site-navbar .navbar-toggler-icon::before,
    .site-navbar .navbar-toggler-icon::after {
        display: none
    }

    .site-navbar .navbar-toggler[aria-expanded=true] {
               display: none !important;
        pointer-events: none
    }

    .site-navbar .navbar-toggler[aria-expanded=true] .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22' fill='none'%3E%3Cline x1='1' y1='1' x2='21' y2='21' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'/%3E%3Cline x1='21' y1='1' x2='1' y2='21' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")
    }

    .site-navbar .navbar-nav .nav-link::after {
        bottom: 2px
    }

    .site-navbar .navbar-collapse,
    .site-navbar .navbar-collapse.collapsing {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        display: block !important;
        transform: translateX(100%);
        transition: transform .25s ease-out !important;
        background: rgb(10, 10, 10);
        overflow-y: auto;
        padding: 72px 1.75rem 2.5rem;
        z-index: 1055;
        border-left: 1px solid hsla(0, 0%, 100%, .07);
        box-shadow: -8px 0 32px rgba(0, 0, 0, .45);
        overflow: hidden !important
    }

    .site-navbar .navbar-collapse.show {
        transform: translateX(0) !important;
        overflow-y: auto !important
    }

    .tw2lve-nav-close {
        position: absolute;
        top: 20px;
        right: 20px;
        background: none;
        border: 1px solid hsla(0, 0%, 100%, .25);
        border-radius: 50%;
        color: #fff;
        font-size: 22px;
        line-height: 1;
        width: 38px;
        height: 38px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        padding: 0;
        transition: background .2s ease;
    }
	
	 .tw2lve-nav-close img {
        width: 18px !important;
        height: 18px !important;
        object-fit: contain;
        display: block;
        margin: 0 auto;
    }


    .tw2lve-nav-close:hover {
        background: hsla(0, 0%, 100%, .12)
    }

    .site-navbar .navbar-nav {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
        flex: unset;
        width: 100%
    }

    .site-navbar .navbar-nav .nav-item {
        width: 100%;
        border-bottom: 1px solid hsla(0, 0%, 100%, .08)
    }

    .site-navbar .navbar-nav .nav-link {
        font-size: 16px;
        line-height: 1.4;
        padding: 14px 0;
        width: 100%
    }

    .navbar-tel {
        flex: 0 0 100%;
        justify-content: flex-start;
        padding: 18px 0 0;
        border-top: 0px solid hsla(0, 0%, 100%, .08);
        margin-top: 10px
    }

    .navbar-tel a {
        font-size: 14px;
        letter-spacing: .06em
    }

    .tw2lve-nav-backdrop {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, .55);
        backdrop-filter: blur(2px);
        -webkit-backdrop-filter: blur(2px);
        opacity: 0;
        visibility: hidden;
        transition: opacity .35s ease, visibility .35s ease;
        cursor: pointer
    }

    .tw2lve-nav-backdrop.active {
        opacity: 1;
        visibility: visible
    }

    .tw2lve-hero::before,
    .tw2lve-hero::after {
        top: 0 !important;
        bottom: -1px !important;
        height: 100% !important;
        width: 100% !important;
        left: 0 !important;
        right: 0 !important
    }

    body.tw2lve-menu-open {
        overflow: hidden
    }

    .site-content {
        padding-top: calc(2rem + 60px)
    }

    .home .site-content {
        padding-top: 0
    }

    .tw2lve-hero {
        min-height: 100svh;
        height: auto;
        margin-top: 0;
        align-items: flex-end
    }

    .tw2lve-hero__content {
        width: 90%;
        padding: 0 0rem 11.5rem
    }

    .tw2lve-hero__sub {
        font-size: clamp(18px, 4.5vw, 24px) !important;
        line-height: 1.3
    }

    .tw2lve-hero__pill {
        height: 34px !important;
        font-size: 13px !important;
        padding: 6px 16px
    }

    .tw2lve-hero__arrow {
        display: flex;
        right: 1.25rem;
        transform: translateY(-50%);
        opacity: 1
    }

    .tw2lve-hero__arrow-icon {
        width: 38px;
        height: 38px
    }

    .tw2lve-hero__dots {
        bottom: 1.5rem;
        right: 50%;
        transform: translateX(50%);
        display: flex;
        gap: 8px;
        z-index: 10
    }

    .tw2lve-hero__dot {
        width: 10px;
        height: 10px
    }

    .tw2lve-hero__dot.is-active {
        width: 20px
    }


    .tw2lve-about-banner,
    .tw2lve-contact-banner,
    .tw2lve-villas-banner {
        height: 80vh !important;
        margin-top: 0;
        padding-top: 60px
    }

    .tw2lve-about-banner__title,
    .tw2lve-contact-banner__title,
    .tw2lve-villas-banner__title {
        font-size: clamp(36px, 10vw, 52px) !important
    }

    h1.tw2lve-heading-fadeup,
    h1.tw2lve-heading-fadeup.is-visible,
    h2.tw2lve-heading-fadeup,
    h2.tw2lve-heading-fadeup.is-visible {
        font-size: clamp(32px, 8vw, 44px) !important;
        line-height: 1.1
    }

    .tw2lve-collections__head {
        width: 100%;
        margin-bottom: 24px
    }

    h2.tw2lve-reviews__heading.tw2lve-heading-fadeup,
    h2.tw2lve-reviews__heading.tw2lve-heading-fadeup.is-visible,
    h2.tw2lve-expectation__heading.tw2lve-heading-fadeup,
    h2.tw2lve-expectation__heading.tw2lve-heading-fadeup.is-visible,
    h2.tw2lve-collections__heading.tw2lve-heading-fadeup,
    h2.tw2lve-collections__heading.tw2lve-heading-fadeup.is-visible,
    .tw2lve-experiences__heading,
    .tw2lve-villas__heading,
    .tw2lve-about__heading,
    .retreat-info-heading,
    .retreats-visionary-heading,
    .retreats-whychoose-heading,
    .retreat-connection-heading,
    .retreat-capacity-heading,
    .retreat-rightfit-heading,
    .retreat-support-heading,
    .retreat-enquiry-heading,
    .retreats-final-cta-heading,
    .home h2,
    .page-template-page-retreats h2,
    .tw2lve-collections__label {
        text-align: center !important
    }

    .tw2lve-expectation__content,
    .tw2lve-expectation__text {
        text-align: center
    }

    .tw2lve-expectation__actions {
        justify-content: center
    }

    .tw2lve-about-destination,
    .tw2lve-about-philosophy__gold,
    .tw2lve-about-team,
    .tw2lve-about-experience {
        padding-top: var(--section-spacing);
        padding-bottom: var(--section-spacing)
    }

    .tw2lve-about-video__container {
        flex-direction: column
    }

    .tw2lve-about-video__text,
    .tw2lve-about-video__video {
        width: 100%;
        flex: 0 0 100%
    }

    .tw2lve-about-video__text {
        padding: 40px 1.25rem;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 24px
    }

    .tw2lve-about__titles {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding-left: 0;
        width: 100%
    }

    .tw2lve-about__heading {
        font-size: 32px !important;
        text-align: center !important;
        padding-left: 0 !important;
        margin: 0;
        max-width: 100%
    }

    .tw2lve-about__heading span::before {
        display: none !important
    }

    .tw2lve-about__label,
    span.tw2lve-villas__label,
    .tw2lve-experiences__label,
    .tw2lve-expectation__label,
    .tw2lve-reviews__label {
        text-align: center !important;
        font-size: 14px;
        margin-bottom: 8px
    }

    .tw2lve-about__body,
    .tw2lve-villas__sub {
        max-width: 100%;
        text-align: center !important;
        margin: 0 auto
    }

    .tw2lve-expectation__head-block {
        margin-bottom: 1.5rem
    }

    .tw2lve-expectation__overlay-img {
        width: 42%;
        right: -2% !important
    }

    .tw2lve-about-video__video {
        min-height: 240px
    }

    .tw2lve-about-video__video .tw2lve-video__player {
        margin: auto;
        transform: translateZ(0);
        will-change: transform
    }

    .tw2lve-villas__header {
        width: 90%
    }

    .tw2lve-vslider__slide {
        flex-direction: column;
        height: auto !important;
        min-height: auto !important;
        background-size: 100% auto !important;
        background-position: top !important;
        background-repeat: no-repeat !important;
        background-color: #000;
        align-items: stretch
    }

    .tw2lve-vslider__slide::before {
        content: "";
        display: block;
        width: 100%;
        padding-top: 56.25% !important;
        flex: 0 0 auto !important
    }

    .tw2lve-vslider__panel {
        width: 100%;
        flex: 0 0 auto;
        padding: 2.5rem 1.25rem;
        gap: 20px;
        background: #000 !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        margin-top: 0 !important;
        position: relative
    }

    .tw2lve-vslider__tag {
        height: 28px;
        padding: 0 10px;
        font-size: 10px
    }

    .tw2lve-vslider__specs::-webkit-scrollbar {
        display: none
    }

    .tw2lve-vslider__spec {
        width: 100%;
        height: auto;
        min-height: 100px;
        padding: 15px 12px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 8px;
        border-radius: 12px;
        background: hsla(0, 0%, 100%, .1);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        box-sizing: border-box
    }

    .tw2lve-vslider__spec-icon {
        width: 30px;
        height: 30px;
        display: block
    }

    .tw2lve-vslider__spec-label {
        font-size: 14px;
        line-height: 1.2;
        color: #fff
    }

    .tw2lve-vslider__next {
        top: 9% !important;
        right: 15px !important;
        transform: translateY(-50%) !important;
        width: 48px !important;
        height: 48px !important;
        z-index: 20 !important
    }

    .tw2lve-vslider__next-label {
        display: none !important
    }

    .tw2lve-about-destination__split {
        display: grid;
        grid-template-columns: 1fr !important
    }

    .tw2lve-about-info-card {
        max-width: 100% !important;
        align-items: center;
        text-align: center
    }

    .tw2lve-about-info-card__icon {
        margin: 0 auto
    }

    .tw2lve-about-info-card__title {
        text-align: center
    }

    .tw2lve-about-info-card__text {
        text-align: center
    }

    .tw2lve-about-destination__cards {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        align-items: center
    }

    .tw2lve-about-philosophy__gold {
        padding: 56px 0 80px !important
    }

    .tw2lve-about-team__cards {
        grid-template-columns: 1fr !important
    }

    .tw2lve-team-card {
        height: auto !important;
        min-height: 320px;
        padding: 0 1.25rem !important;
        flex-direction: column
    }

    .tw2lve-team-card__content {
        width: 100% !important;
        padding: 1.5rem 0
    }

    .tw2lve-about-experience__content {
        text-align: center;
        margin-left: auto;
        margin-right: auto
    }

    .tw2lve-about-experience__text {
        text-align: center
    }

    .tw2lve-about-experience__label {
        text-align: center;
        display: block
    }

    .tw2lve-about-experience__desc {
        text-align: center
    }

    .tw2lve-about-experience__cta {
        margin-left: auto;
        margin-right: auto
    }

    .tw2lve-about-experience__media {
        text-align: center
    }

    .tw2lve-about-experience__img-main,
    .tw2lve-about-experience__img-small {
        display: block !important;
        margin: 0 auto !important;
        max-width: 100%
    }

    img.tw2lve-about-experience__img-small {
        margin-top: -49px !important
    }

    .tw2lve-about-destination__head,
    .tw2lve-about-philosophy__text-wrap>* {
        max-width: 100% !important
    }

    .tw2lve-contact-section__body {
        grid-template-columns: 1fr !important;
        min-height: auto !important
    }

    .tw2lve-contact-section__head {
        padding: 48px 0 36px !important;
        max-width: 100% !important
    }

    .tw2lve-contact-section__form-col {
        padding: 36px 1.25rem !important
    }

    .tw2lve-contact-form__row--split {
        flex-direction: column;
        gap: 0
    }

    .tw2lve-contact-general__inner {
        width: 100% !important
    }

    .tw2lve-checkout__wrap {
        flex-direction: column !important
    }

    .tw2lve-checkout__main,
    .tw2lve-checkout__summary {
        flex: 0 0 100% !important
    }

    .tw2lve-checkout__summary {
        position: static !important
    }

    .tw2lve-checkout {
        padding: 80px 0 40px !important
    }

    .tw2lve-checkout__row--split {
        /* flex-direction: column */
    }

    .tw2lve-checkout__pay-btn {
        width: 100%;
        font-size: 1rem;
        padding: 14px 20px
    }

    .tw2lve-vslider__cta {
        width: fit-content;
        font-size: 12px;
        padding: 0 20px
    }

    .tw2lve-villa-detail__quick-spec {
        padding: 16px 14px;
        min-height: 160px;
        gap: 15px
    }
}

@media(max-width: 480px) {
    .tw2lve-collections__grid {
        grid-template-columns: 1fr !important
    }

    .tw2lve-collection-card__image-wrap {
        height: 250px !important
    }

    .tw2lve-villa-detail__bedroom-item,
    .tw2lve-villa-detail__amenity-grid {
        grid-template-columns: repeat(2, 1fr) !important
    }

    .tw2lve-villa-detail__bedroom-item {
        flex: 0 0 100% !important;
        max-width: 100% !important
    }

    .tw2lve-villa-detail__quick-spec {
        flex: 0 0 50% !important;
        max-width: 100% !important;
        padding: 12px 8px !important;
        min-height: 130px !important;
        border-radius: 12px !important;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center
    }

    .tw2lve-footer__mail,
    .tw2lve-footer__phone {
        font-size: 18px !important
    }

    .tw2lve-villas__header {
        padding: 0px;
        padding-bottom: 40px
    }

    .tw2lve-vslider__cta {
        width: fit-content;
        font-size: 11px;
        padding: 0 16px
    }

    .tw2lve-collection-card {
        padding: 0px;
        padding-bottom: 20px
    }

    .tw2lve-footer__brand .custom-logo-link,
    .tw2lve-footer__brand img {
        width: 96px;
        height: auto;
        margin-right: auto
    }

    .tw2lve-footer__legal a {
        font-size: 14px
    }

    .tw2lve-footer__copyright {
        font-size: 12px
    }

    .tw2lve-footer__main {
        gap: 20px
    }

    .retreats-final-cta-content,
    .retreats-final-cta-desc {
        text-align: center
    }

    .retreats-final-cta-desc {
        margin-left: auto;
        margin-right: auto
    }

    .retreats-final-cta-desc p {
        text-align: center;
        font-size: 18px;
        line-height: 32px
    }

    .retreats-final-cta-btn-wrap {
        display: flex;
        justify-content: center;
        width: 100%
    }

    .retreats-final-cta-btn {
        margin-left: auto;
        margin-right: auto
    }

    .tw2lve-footer__top {
        gap: 6px
    }

    .tw2lve-footer__watermark {
        text-align: center
    }

    .tw2lve-footer__headline {
        font-size: 20px !important
    }

    .tw2lve-villa-detail__location-images img.absolute-img-location {
        position: absolute;
        left: 15%;
        top: 60%;
        width: 70%;
        height: 55%
    }
}

/*# sourceMappingURL=responsive-mobile.css.map */

@media(min-width: 1025px) {

    .tw2lve-nav-close,
    .tw2lve-nav-backdrop {
        display: none !important
    }
}

@media(max-width: 1024px) {
    .retreat-capacity-heading {
        margin-bottom: 16px;
        text-align: center
    }

    .retreat-capacity-text {
        max-width: 100%;
        text-align: center
    }

    .retreat-capacity-cards {
        position: relative;
        left: 50%;
        top: 50%;
        width: 90%;
        transform: translate(-50%, 8%);
        margin: 0
    }

    .retreat-capacity-left {
        padding-top: 0;
        justify-content: center
    }

    .retreat-capacity-content {
        text-align: center;
        padding-right: 0;
        width: 100%
    }
}

@media(max-width: 1024.98px) {
    .tw2lve-vslider__prev {
        display: none !important
    }

    .tw2lve-villas__cta,
    .tw2lve-collections__cta,
    .tw2lve-expectation__cta,
    .tw2lve-about-experience__cta,
    .tw2lve-vslider__cta,
    .tw2lve-villa-listing__cta,
    .tw2lve-footer__cta,
    .tw2lve-contact-form__submit,
    .tw2lve-villa-detail__primary-cta,
    .tw2lve-villa-detail__outline-cta,
    .home-hero .btn-hero,
    .retreats-final-cta-btn,
    .retreats-whychoose-cta,
    .retreat-info-cta,
    .btn {
        height: 41px !important
    }

    .container-tw2lve,
    .tw2lve-policy-page-content__inner,
    .tw2lve-policy-page-content .post-content,
    .tw2lve-about-video__container,
    .tw2lve-villas__head-wrap,
    .tw2lve-villas__foot-wrap,
    .tw2lve-villa-listing .container-tw2lve,
    .tw2lve-experiences__head-wrap,
    .tw2lve-collections__wrap,
    .tw2lve-reviews__wrap,
    .tw2lve-expectation__wrap,
    .tw2lve-footer__wrap,
    .tw2lve-about-philosophy__text-wrap,
    .tw2lve-about-philosophy__grid,
    .tw2lve-about-team__container,
    .tw2lve-about-experience__container,
    .tw2lve-contact-section__container,
    .tw2lve-villa-detail .container-tw2lve,
    .tw2lve-checkout__wrap {
        max-width: 100%;
        padding-left: 1.25rem;
        padding-right: 1.25rem
    }

    .container-tw2lve {
        flex-wrap: wrap
    }

    .tw2lve-villa-detail__intro-head,
    .tw2lve-villa-detail__intro-top .tw2lve-villa-booking {
        flex: 1 1 100%;
        width: 100%
    }

    .tw2lve-villa-booking__submit {
        font-size: 18px;
        line-height: 1.4;
        padding: 0 28px
    }

    .retreat-info-content .retreat-info-cta {
        padding: 10px 26px;
        font-size: 12px
    }

    .retreats-whychoose-cta {
        padding: 6px 26px
    }

    .retreat-info-content {
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center
    }

    .retreats-final-cta-btn {
        padding: 10px 26px;
        font-size: 12px
    }

    .retreat-rightfit-card-icon {
        width: 56px;
        height: 56px;
        margin-bottom: 20px
    }

    .retreats-whychoose-text {
        font-size: 16px;
        line-height: 1.5
    }

    .retreat-support-text,
    .retreat-support-text p {
        text-align: center
    }

    .retreat-capacity-card-info h3 {
        font-size: 20px
    }

    .retreat-capacity-card {
        padding: 24px;
        gap: 18px
    }

    .retreat-capacity-text {
        max-width: 100%;
        text-align: center
    }

    .retreat-capacity-left {
        padding: 0px 5% 80px
    }

    .site-navbar {
        padding-top: .75rem;
        padding-bottom: .75rem
    }

    a.custom-logo-link {
        width: auto;
        order: 1
    }

    .navbar-brand {
        flex: 0 0 auto;
        width: auto;
        font-size: 1.1rem;
        order: 1
    }

    .site-navbar .navbar-toggler {
        border: none;
        outline: none;
        box-shadow: none;
        padding: 6px 8px;
        margin-left: auto;
        order: 2;
        position: relative;
        z-index: 1060
    }

    .site-navbar .navbar-toggler:focus {
        box-shadow: none
    }

    img.custom-logo {
        width: 50%;
        height: auto
    }

    .tw2lve-hero {
        min-height: 100svh;
        height: auto;
        min-height: unset;
        margin-top: 0;
        align-items: flex-end
    }

    .site-navbar .navbar-toggler-icon {
        display: block;
        width: 26px;
        height: 22px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        box-shadow: none;
        transition: background-image .2s ease;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='22' viewBox='0 0 26 22' fill='none'%3E%3Crect x='0' y='0'  width='26' height='2' rx='1' fill='%23ffffff'/%3E%3Crect x='0' y='10' width='26' height='2' rx='1' fill='%23ffffff'/%3E%3Crect x='0' y='20' width='26' height='2' rx='1' fill='%23ffffff'/%3E%3C/svg%3E")
    }

    .site-navbar .navbar-toggler-icon::before,
    .site-navbar .navbar-toggler-icon::after {
        display: none
    }

    .site-navbar .navbar-toggler[aria-expanded=true] {
         display: none !important;
        pointer-events: none
    }

    .site-navbar .navbar-toggler[aria-expanded=true] .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22' fill='none'%3E%3Cline x1='1' y1='1' x2='21' y2='21' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'/%3E%3Cline x1='21' y1='1' x2='1' y2='21' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")
    }

    .site-navbar .navbar-nav .nav-link::after {
        bottom: 2px
    }

    .site-navbar .navbar-collapse,
    .site-navbar .navbar-collapse.collapsing {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        display: block !important;
        transform: translateX(100%);
        transition: transform .15s cubic-bezier(0.4, 0, 0.2, 1) !important;
        background: rgb(10, 10, 10);
        overflow-y: auto;
        padding: 72px 1.75rem 2.5rem;
        z-index: 1055;
        border-left: 1px solid hsla(0, 0%, 100%, .07);
        box-shadow: -8px 0 32px rgba(0, 0, 0, .45);
        overflow: hidden !important
    }

    .site-navbar .navbar-collapse.show {
        transform: translateX(0) !important;
        overflow-y: auto !important
    }

    .tw2lve-nav-close {
        position: absolute;
        top: 20px;
        right: 20px;
        background: none;
        border: 1px solid hsla(0, 0%, 100%, .25);
        border-radius: 50%;
        color: #fff;
        font-size: 22px;
        line-height: 1;
        width: 38px;
        height: 38px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        padding: 0;
        transition: background .2s ease
    }

    .tw2lve-nav-close:hover {
        background: hsla(0, 0%, 100%, .12)
    }

    .site-navbar .navbar-nav {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
        flex: unset;
        width: 100%
    }

    .site-navbar .navbar-nav .nav-item {
        width: 100%;
        border-bottom: 1px solid hsla(0, 0%, 100%, .08)
    }

    .site-navbar .navbar-nav .nav-link {
        font-size: 16px;
        line-height: 1.4;
        padding: 14px 0;
        width: 100%
    }

    .navbar-tel {
        flex: 0 0 100%;
        justify-content: flex-start;
        padding: 18px 0 0;
        border-top: 0px solid hsla(0, 0%, 100%, .08);
        margin-top: 10px
    }

    .navbar-tel a {
        font-size: 14px;
        letter-spacing: .06em
    }


    .tw2lve-hero::before,
    .tw2lve-hero::after {
        top: 0 !important;
        bottom: -1px !important;
        height: 100% !important;
        width: 100% !important;
        left: 0 !important;
        right: 0 !important
    }

    body.tw2lve-menu-open {
        overflow: hidden
    }

    .site-content {
        padding-top: calc(2rem + 60px)
    }

    .home .site-content {
        padding-top: 0
    }

    .tw2lve-hero {
        min-height: 100svh;
        height: auto;
        margin-top: 0;
        align-items: flex-end
    }

    .tw2lve-hero__content {
        width: 90%;
        padding: 0 0rem 11.5rem
    }

    .tw2lve-hero__sub {
        font-size: clamp(18px, 4.5vw, 24px) !important;
        line-height: 1.3
    }

    .tw2lve-hero__pill {
        height: 34px !important;
        font-size: 13px !important;
        padding: 6px 16px
    }

    .tw2lve-hero__arrow {
        display: flex;
        right: 1.25rem;
        transform: translateY(-50%);
        opacity: 1
    }

    .tw2lve-hero__arrow-icon {
        width: 38px;
        height: 38px
    }

    .tw2lve-about-banner,
    .tw2lve-contact-banner,
    .tw2lve-villas-banner {
        height: 320px !important;
        margin-top: 0;
        padding-top: 60px
    }

    .tw2lve-about-banner__title,
    .tw2lve-contact-banner__title,
    .tw2lve-villas-banner__title {
        font-size: clamp(36px, 10vw, 52px) !important
    }

    h1.tw2lve-heading-fadeup,
    h1.tw2lve-heading-fadeup.is-visible,
    h2.tw2lve-heading-fadeup,
    h2.tw2lve-heading-fadeup.is-visible {
        font-size: clamp(32px, 8vw, 44px) !important;
        line-height: 1.1
    }

    .tw2lve-collections__head {
        width: 100%;
        margin-bottom: 24px
    }

    h2.tw2lve-reviews__heading.tw2lve-heading-fadeup,
    h2.tw2lve-reviews__heading.tw2lve-heading-fadeup.is-visible,
    h2.tw2lve-expectation__heading.tw2lve-heading-fadeup,
    h2.tw2lve-expectation__heading.tw2lve-heading-fadeup.is-visible,
    h2.tw2lve-collections__heading.tw2lve-heading-fadeup,
    h2.tw2lve-collections__heading.tw2lve-heading-fadeup.is-visible,
    .tw2lve-experiences__heading,
    .tw2lve-villas__heading,
    .tw2lve-about__heading,
    .retreat-info-heading,
    .retreats-visionary-heading,
    .retreats-whychoose-heading,
    .retreat-connection-heading,
    .retreat-capacity-heading,
    .retreat-rightfit-heading,
    .retreat-support-heading,
    .retreat-enquiry-heading,
    .retreats-final-cta-heading,
    .home h2,
    .page-template-page-retreats h2,
    .tw2lve-collections__label {
        text-align: center !important
    }

    .tw2lve-expectation__content,
    .tw2lve-expectation__text {
        text-align: center
    }

    .tw2lve-expectation__actions {
        justify-content: center
    }

    .tw2lve-about-destination,
    .tw2lve-about-philosophy__gold,
    .tw2lve-about-team,
    .tw2lve-about-experience {
        padding-top: var(--section-spacing);
        padding-bottom: var(--section-spacing)
    }

    .tw2lve-about-video__container {
        flex-direction: column
    }

    .tw2lve-about-video__text,
    .tw2lve-about-video__video {
        width: 100%;
        flex: 0 0 100%
    }

    .tw2lve-about-video__text {
        padding: 40px 1.25rem;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 24px
    }

    .tw2lve-about__titles {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding-left: 0;
        width: 100%
    }

    .tw2lve-about__heading {
        font-size: 32px !important;
        text-align: center !important;
        padding-left: 0 !important;
        margin: 0;
        max-width: 100%
    }

    .tw2lve-about__heading span::before {
        display: none !important
    }

    .tw2lve-about__label,
    span.tw2lve-villas__label,
    .tw2lve-experiences__label,
    .tw2lve-expectation__label,
    .tw2lve-reviews__label {
        text-align: center !important;
        font-size: 14px;
        margin-bottom: 8px
    }

    .tw2lve-about__body,
    .tw2lve-villas__sub {
        max-width: 100%;
        text-align: center !important;
        margin: 0 auto
    }

    .tw2lve-expectation__head-block {
        margin-bottom: 1.5rem
    }

    .tw2lve-expectation__overlay-img {
        width: 42%;
        right: -2% !important
    }

    .tw2lve-about-video__video {
        min-height: 240px
    }

    .tw2lve-about-video__video .tw2lve-video__player {
        margin: auto;
        transform: translateZ(0);
        will-change: transform
    }

    .tw2lve-villas__header {
        width: 90%
    }

    .tw2lve-vslider__slide {
        flex-direction: column;
        height: auto !important;
        min-height: auto !important;
        background-size: 100% auto !important;
        background-position: top !important;
        background-repeat: no-repeat !important;
        background-color: #000;
        align-items: stretch
    }

    .tw2lve-vslider__slide::before {
        content: "";
        display: block;
        width: 100%;
        padding-top: 56.25% !important;
        flex: 0 0 auto !important
    }

    .tw2lve-vslider__panel {
        width: 100%;
        flex: 0 0 auto;
        padding: 2.5rem 1.25rem;
        gap: 20px;
        background: #000 !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        margin-top: 0 !important;
        position: relative
    }

    .tw2lve-vslider__tag {
        height: 28px;
        padding: 0 10px;
        font-size: 10px
    }

    .tw2lve-vslider__specs::-webkit-scrollbar {
        display: none
    }

    .tw2lve-vslider__spec {
        width: 100%;
        height: auto;
        min-height: 100px;
        padding: 15px 12px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 8px;
        border-radius: 12px;
        background: hsla(0, 0%, 100%, .1);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        box-sizing: border-box
    }

    .tw2lve-vslider__spec-icon {
        width: 30px;
        height: 30px;
        display: block
    }

    .tw2lve-vslider__spec-label {
        font-size: 14px;
        line-height: 1.2;
        color: #fff
    }

    .tw2lve-vslider__next {
        top: 9% !important;
        right: 15px !important;
        transform: translateY(-50%) !important;
        width: 48px !important;
        height: 48px !important;
        z-index: 20 !important
    }

    .tw2lve-vslider__next-label {
        display: none !important
    }

    .tw2lve-about-destination__split {
        display: grid;
        grid-template-columns: 1fr !important
    }

    .tw2lve-about-info-card {
        max-width: 100% !important;
        align-items: center;
        text-align: center
    }

    .tw2lve-about-info-card__icon {
        margin: 0 auto
    }

    .tw2lve-about-info-card__title {
        text-align: center
    }

    .tw2lve-about-info-card__text {
        text-align: center
    }

    .tw2lve-about-destination__cards {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        align-items: center
    }

    .tw2lve-about-philosophy__gold {
        padding: 56px 0 80px !important
    }

    .tw2lve-about-team__cards {
        grid-template-columns: 1fr !important
    }

    .tw2lve-team-card {
        height: auto !important;
        min-height: 320px;
        padding: 0 1.25rem !important;
        flex-direction: column
    }

    .tw2lve-team-card__content {
        width: 100% !important;
        padding: 1.5rem 0
    }

    .tw2lve-about-experience__content {
        text-align: center;
        margin-left: auto;
        margin-right: auto
    }

    .tw2lve-about-experience__text {
        text-align: center
    }

    .tw2lve-about-experience__label {
        text-align: center;
        display: block
    }

    .tw2lve-about-experience__desc {
        text-align: center
    }

    .tw2lve-about-experience__cta {
        margin-left: auto;
        margin-right: auto
    }

    .tw2lve-about-experience__media {
        text-align: center
    }

    .tw2lve-about-experience__img-main,
    .tw2lve-about-experience__img-small {
        display: block !important;
        margin: 0 auto !important;
        max-width: 100%
    }

    img.tw2lve-about-experience__img-small {
        margin-top: -49px !important
    }

    .tw2lve-about-destination__head,
    .tw2lve-about-philosophy__text-wrap>* {
        max-width: 100% !important
    }

    .tw2lve-contact-section__body {
        grid-template-columns: 1fr !important;
        min-height: auto !important
    }

    .tw2lve-contact-section__head {
        padding: 48px 0 36px !important;
        max-width: 100% !important
    }

    .tw2lve-contact-section__form-col {
        padding: 36px 1.25rem !important
    }

    .tw2lve-contact-form__row--split {
        flex-direction: column;
        gap: 0
    }

    .tw2lve-contact-general__inner {
        width: 100% !important
    }

    .tw2lve-vslider__cta {
        width: fit-content;
        font-size: 12px;
        padding: 0 20px
    }
}

@media(max-width: 480px) {
    .tw2lve-collections__grid {
        grid-template-columns: 1fr !important
    }

    .tw2lve-collection-card__image-wrap {
        height: 250px !important
    }

    .tw2lve-villa-detail__bedroom-item,
    .tw2lve-villa-detail__amenity-grid {
        grid-template-columns: repeat(2, 1fr) !important
    }

    .tw2lve-villa-detail__bedroom-item {
        flex: 0 0 100% !important;
        max-width: 100% !important
    }

    .tw2lve-villa-detail__quick-spec {
        flex: 0 0 50% !important;
        max-width: 100% !important;
        padding: 12px 8px !important;
        min-height: 130px !important;
        border-radius: 12px !important;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center
    }

    .tw2lve-footer__mail,
    .tw2lve-footer__phone {
        font-size: 18px !important
    }

    .tw2lve-villas__header {
        padding: 0px;
        padding-bottom: 40px
    }

    .tw2lve-vslider__cta {
        width: fit-content;
        font-size: 11px;
        padding: 0 16px
    }

    .tw2lve-collection-card {
        padding: 0px;
        padding-bottom: 20px
    }

    .tw2lve-footer__brand .custom-logo-link,
    .tw2lve-footer__brand img {
        width: 96px;
        height: auto;
        margin-right: auto
    }

    .tw2lve-footer__legal a {
        font-size: 14px
    }

    .tw2lve-footer__copyright {
        font-size: 12px
    }

    .tw2lve-footer__main {
        gap: 20px
    }

    .retreats-final-cta-content,
    .retreats-final-cta-desc {
        text-align: center
    }

    .retreats-final-cta-desc {
        margin-left: auto;
        margin-right: auto
    }

    .retreats-final-cta-desc p {
        text-align: center;
        font-size: 18px;
        line-height: 32px
    }

    .retreats-final-cta-btn-wrap {
        display: flex;
        justify-content: center;
        width: 100%
    }

    .retreats-final-cta-btn {
        margin-left: auto;
        margin-right: auto
    }

    .tw2lve-footer__top {
        gap: 6px
    }

    .tw2lve-footer__watermark {
        text-align: center
    }

    .tw2lve-footer__headline {
        font-size: 20px !important
    }

    .tw2lve-villa-detail__location-images img.absolute-img-location {
        position: absolute;
        left: 15%;
        top: 60%;
        width: 70%;
        height: 55%
    }
}

/*# sourceMappingURL=responsive-mobile.css.map */


@media (max-width: 1024px) {
    .retreat-capacity-left {
        padding-top: 70px !important;
        justify-content: center;
    }

    .retreats-final-cta-content {
        position: relative;
        z-index: 10;
        max-width: 900px;
        text-align: left;
        margin: auto;
    }

    h2.retreats-final-cta-heading.twelve-1227-h2.tw2lve-heading-fadeup.is-visible {
        text-align: center;
    }

    .retreat-capacity-card-info p {
        font-family: 'Nexa', sans-serif;
        margin: 0;
        opacity: 0.9;
        font-size: 14px;
        line-height: 20px;
    }

    .retreats-visionary-card-title {

        font-size: 20px;
    }

}

@media (max-width: 1024.98px) {
    /* ── Horizontal vslider on mobile ─────────────────────── */

    /* Container: let height follow the slide content */
    .tw2lve-vslider {
        height: auto !important;
        overflow: hidden;
    }

    /* Slick track & list: auto height in horizontal mode */
    .tw2lve-vslider__track,
    .tw2lve-vslider__track.slick-slider,
    .tw2lve-vslider__track .slick-list,
    .tw2lve-vslider__track .slick-track {
        height: auto !important;
    }

    /* Show prev button (was hidden on mobile) */
    .tw2lve-vslider__prev {
        display: flex !important;
        left: 10px !important;
        right: auto !important;
        top: calc(28.125vw) !important;
        /* centre of the 56.25vw image area */
        transform: translateY(-50%) !important;
        width: 38px !important;
        height: 38px !important;
        z-index: 20 !important;
    }

    /* Reposition next button to match */
    .tw2lve-vslider__next {
        right: 10px !important;
        left: auto !important;
        top: calc(28.125vw) !important;
        transform: translateY(-50%) !important;
        width: 38px !important;
        height: 38px !important;
        z-index: 20 !important;
    }

    .tw2lve-vslider__prev img,
    .tw2lve-vslider__next img {
        width: 38px !important;
        height: 38px !important;
        max-width: 38px !important;
        max-height: 38px !important;
    }

    .container-tw2lve.retreats-visionary-header h2 {
        width: 100%;
    }

    .retreat-capacity-left {
        padding: 40px;
    }

    .retreat-support-content {

        max-width: 100%;

    }

    .tw2lve-villa-listing__body {
        justify-content: center;
        padding: 30px 10px !important
    }

    .tw2lve-villa-listing__features {
        grid-template-columns: 1fr 1fr;
        margin: auto;
        width: 100%;
    }

    section.retreats-final-cta-section {
        padding: 40px 10px;
    }

    .retreat-rightfit-card {
        background: #1a1a1a;
        padding: 40px 25px;
        border-radius: 12px;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .tw2lve-villas__footer {
        display: flex;
        justify-content: center;
        padding-top: 0
    }



}

@media (min-width: 400px) and (max-width: 1024.98px) {

    h1.tw2lve-heading-fadeup,
    h1.tw2lve-heading-fadeup.is-visible,
    h2.tw2lve-heading-fadeup,
    h2.tw2lve-heading-fadeup.is-visible {
        font-size: clamp(26px, 6.9vw, 44px) !important;
        line-height: 1.1;
    }
}

@media (max-width: 576px) {
    .tw2lve-villa-booking {
        padding: 20px 15px !important;
    }

    .tw2lve-villa-booking__design-title {
        font-size: 24px !important;
        line-height: 1.2 !important;
        margin-bottom: 20px !important;
    }

    .tw2lve-villa-booking__field label,
    .lbk-addons-heading {
        font-size: 13px !important;
    }

    .tw2lve-checkout__summary-villa {
        font-size: 1rem !important;
        text-align: center !important;
        margin-bottom: 15px !important;
    }

    .tw2lve-villa-booking__row--split {
        gap: 10px !important;
    }

    .tw2lve-villa-booking__input-pill {
        height: 46px !important;
        padding: 0 12px !important;
        gap: 10px !important;
    }

    .tw2lve-villa-booking__input-pill svg.pill-icon {
        width: 18px !important;
        height: 18px !important;
    }

    .tw2lve-villa-booking__input-pill .date-display,
    .tw2lve-villa-booking__input-pill--guests input#guests-display {
        font-size: 14px !important;
    }

    .tw2lve-villa-booking__input-pill--guests button.guest-btn svg {
        width: 26px !important;
        height: 26px !important;
    }

    form#villa-booking-form .select2-container--default .select2-selection--multiple {
        min-height: 46px !important;
        padding: 6px 12px !important;
        gap: 4px !important;
    }

    form#villa-booking-form .select2-container--default .select2-selection--multiple .select2-selection__choice {
        font-size: 12px !important;
        padding: 2px 8px 2px 24px !important;
    }

    .tw2lve-villa-booking__submit {
        height: 45px !important;
        font-size: 13px !important;
        padding: 0 15px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 15px !important;
    }

    .tw2lve-villa-booking__price-preview {
        margin: 15px 0 !important;
        padding: 15px !important;
    }

    .lbk-price-row {
        margin-bottom: 8px !important;
        font-size: 14px !important;
    }

    .lbk-price-row--total {
        margin-top: 10px !important;
        padding-top: 10px !important;
    }

    .lbk-price-row--total .lbk-price-label {
        font-size: 16px !important;
    }

    .lbk-price-row--total .lbk-total,
    .lbk-price-row--total .lbk-price-value {
        font-size: 20px !important;
    }
}