/* ==================================================
   GLOBAL STYLES & TYPOGRAPHY
   ================================================== */

h1, h2 {
    margin: 0;
    font-weight: 500;
    color: #252E38;
}

.title {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.1;
    margin: 0;
    color: #252E38;
}

.title-medium {
    font-size: 40px;
    line-height: 1.2;
    font-weight: 500;
}

.mini-title {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1.4px;
}

.caps {
    text-transform: uppercase;
}

/* ==================================================
   UTILITY CLASSES
   ================================================== */

.image-cover {
    position: relative;
}

.image-cover > img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.image-cover > div:not('.container') {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.image-cover.cover-right img {
    object-position: 100% center;
}

.content-right {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.margin-center {
    margin: 0 auto;
}

.text-center {
    text-align: center;
}

.vertical-center {
    align-items: center;
}

.color-white {
    color: #FFFFFF;
}

.swap-column {
    flex-direction: row-reverse;
}

.item-connector {
    opacity: 0;
    transition: 1s all;
}

.item-connector.active {
    opacity: 1;
    transition: 1s all;
    z-index: 1;
}

.item-button {
    display: inline-block;
    text-decoration: none;
    text-align: center;
    padding: 16px 32px;
    background-color: #68BF4B;
    color: #F3F3F3 !important;
    font-size: 14px;
    border-radius: 32px;
    letter-spacing: 1.4px;
    transition: 0.5s all;
}

.item-button:hover {
    background-color: #4A8835;
    transition: 0.5s all;
}

/* ==================================================
   TOP BANNER SECTION
   ================================================== */

.top-banner {
    position: relative;
    color: #303030;
}

.banners-slider {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
}

.banners-track {
    height: 100%;
    width: 100%;
    position: relative;
}

.banner-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    opacity: 0;
    transition: opacity 0.8s ease-in-out;
}

.banner-item.active {
    opacity: 1;
}

.banner-indicator ul {
    width: 100%;
    background: #D0D0AA;
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
}

.banner-indicator ul li {
    height: 8px;
    cursor: pointer;
    transition: 0.3s all;
}

.banner-indicator ul li.active {
    background: #68BF4B;
}

.main-top {
    position: relative;
    pointer-events: none;
    z-index: 2;
    min-height:calc(100vh - 130px);
}

.main-top a {
    pointer-events: auto;
}

.main-title {
    font-size: 48px;
    font-weight: 500;
    line-height: 1;
    margin: 0;
    padding-bottom: 4px;
    max-width: 640px;
}
h1.main-title{
    color:#FAF8F2;
}

.main-subtext {
    font-size: 20px;
    max-width: 600px;
}

.book-button {
    display: flex;
    align-items: center;
    color: #F3F3F3 !important;
    text-decoration: none;
    position: relative;
    width: fit-content;
    border-radius: 8px;
    overflow: hidden;
    transition: 0.5s all;
}

.book-button:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0px;
    width: 100%;
    height: 100%;
    background: #000000;
    opacity: 1;
    line-height: 1;
    transition: 0.5s all;
}

.book-button:hover {
    color: #1f1f1f !important;
    transition: 0.5s all;
}

.book-button:hover:before {
    opacity: 0.2;
    transition: 0.5s all;
}

.book-button span:first-of-type {
    position: relative;
    width: 80px;
    height: 80px;
}

.book-button span:last-of-type {
    flex-grow: 1;
    line-height: 1;
    padding: 16px;
    position: relative;
}

.book-button span img {
    width: 100%;
    height: 100%;
}

.banner-nav{
    position: absolute;
    width:100%;
    left:0;
    bottom:80px;
}

.banner-nav .banner-prev {
    margin-right: 12px;
}
.banner-nav-button{
    cursor: pointer;
}
.banner-nav-button svg rect {
    fill: #68BF4B;
}

.banner-nav-button:not(.disable):hover svg rect {
    fill: #4A8835;
}

.banner-nav-button svg path {
    stroke: #F5F5F5;
}
.banner-bullet{
    margin:0;
    padding:0;
    list-style: none;
    display: flex;
    gap:8px;
}

.banner-bullet li{
    border-radius:10px;
    width:10px;
    height:10px;
    cursor: pointer;
    background:#d0d0aa;
}
.banner-bullet li.active{
    background:#68bf4b;
}
@media(max-width:992px){
    .banner-nav{
        bottom:40px;
    }
}
@media(max-width:767px){
    .banner-nav .content-right{
        justify-content: center;
    }
}

/* ==================================================
   PROMO SECTION
   ================================================== */

.promo-holder {
    display: flex;
    min-height: calc(100vh - 160px);
    align-items: flex-end;
    position: relative;
    color: #ffffff;
}

.promo-title {
    font-size: 48px;
    font-weight: 500;
    color: #ffffff;
    line-height: 1.4;
}

.promo-text {
    font-size: 20px;
}
.promo-text i{
    font-size:16px;
}
.promo-button-holder {
    display: flex;
    justify-content: flex-end;
    height: 100%;
    align-items: flex-end;
}

.about-text{
    margin-left:auto;
    margin-right:auto;
    max-width:860px;
}

.promo-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-image: linear-gradient(to top, #000000, transparent 50%);
}

/* ==================================================
   DESIGN SECTION
   ================================================== */

.section-design {
    position: relative;
}

.design {
    position: relative;
}

.design-overlay-background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.design-circle {
    position: absolute;
    width: 320px;
    height: 320px;
    left: 0;
    top: 0px;
    transform: translateX(-40%);
    background: radial-gradient(circle, #6DB6E5 0%, transparent 70%);
    opacity: 0.2;
}

.design-list {
    display: flex;
    align-items: flex-start;
}

.design-image {
    flex: 0 0 32px;
    width: 32px;
    height: auto;
    min-height: 32px;
}

.design-text {
    padding: 0px 10px 7px 24px;
    line-height: 1.4;
    font-size: 22px;
}
/* ==================================================
   APARTMENT SECTION
   ================================================== */

.apartment-list {
    margin: 0;
    padding: 0;
    list-style: none;
    max-width: 530px;
    width: 100%;
}

.apartment-text-holder {
    overflow-x: hidden;
    width: 100%;
    max-width: 530px;
}

.apartment-item {
    padding: 20px 32px;
    border-bottom: 1px solid #C0CED1;
    cursor: pointer;
    position: relative;
    opacity: 0.5;
    transition: 1s all linear;
}

.apartment-item.animate:not(.active) {
    opacity: 0.5;
}

.apartment-item.active {
    opacity: 1;
    transition: 1s all linear;
}

.apartment-item:before {
    content: "";
    background: #F0F9ED;
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: 1s all linear;
}

.apartment-item.active:before {
    opacity: 1;
    transition: 1s all linear;
}

.apartment-item-holder {
    display: flex;
    flex-grow: 1;
    position: relative;
    color: #252E38;
}

.apartment-item-holder-text {
    flex-grow: 1;
}

.apartment-size {
    display: flex;
    align-items: center;
}

.apartment-size div {
    padding-left: 16px;
    font-size: 14px;
}

.apartment-title {
    font-size: 24px;
    margin-bottom: 10px;
    line-height: 1.2;
    font-weight: 500;
}

.apartment-text {
    width: 100%;
}

.apartment-text .item-button{
    font-size: 16px;
}
@media(min-width:768px){
    .apartment-text{
        font-size: 20px;
    }
    .font-20{
        font-size: 20px;
    }
}

.apartment-image-holder {
    max-width: 620px;
    width: 100%;
    overflow-x: hidden;
}

.apartment-image-holder-slide {
    position: relative;
    width: 100%;
    padding-top: 89%;
    overflow: hidden;
}

.apartment-image-slide {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 8px;
    overflow: hidden;
}

.apartment-image {
    width: 100%;
    padding-top: 100%;
    overflow: hidden;
    border-radius: 8px;
    opacity: 1;
    z-index: 0;
    clip-path: inset(0 0% 0 0);
}

.apartment-image.active {
    z-index: 1;
    clip-path: inset(0 0% 0 0);
    opacity: 1;
}

.apartment-image.gone {
    z-index: 2;
    clip-path: inset(0 100% 0 0);
    transition: clip-path 0.5s linear;
    opacity: 1;
}

.apartment-mobile-image {
    opacity: 0;
    z-index: 0;
    clip-path: inset(0 0% 0 0);
}

.apartment-mobile-image.active {
    z-index: 1;
    clip-path: inset(0 0% 0 0);
    opacity: 1;
}

.apartment-mobile-image.gone {
    z-index: 2;
    clip-path: inset(0 100% 0 0);
    transition: clip-path 0.5s linear;
    opacity: 1;
}

.apartment-thumbnail {
    padding-top: 64px;
    width: 64px;
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
}

.apartment-desktop-thumbnail {
    display: flex;
    gap: 8px;
    margin-top: 16px;
}

.apartment-image-track {
    transition: 0.5s all;
}

.apartment-track {
    display: flex;
    width: fit-content;
    padding-left: 4px;
    padding-right: 4px;
    transition: 0.5s all;
}

.apartment-circle {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: transparent;
    position: relative;
    opacity: 0;
    transition: 1s all linear;
}

.apartment-circle::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    background: conic-gradient(#68BF4B 0% 75%, #BBBB99 75% 100%);
    mask: radial-gradient(circle at center, transparent 12px, black 14px);
    -webkit-mask: radial-gradient(circle at center, transparent 12px, black 14px);
}

.apartment-item.active .apartment-circle {
    opacity: 0;
    transition: 1s all linear;
}

/* ==================================================
   WELLNESS SECTION
   ================================================== */

.wellness-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.wellness-item {
    font-size: 40px;
    line-height: 1.2;
    color: #838383;
    transition: 1s all;
    cursor: pointer;
}

.wellness-item.active {
    color: #F3F3F3;
    transition: 1s all;
}

.wellness-item-holder {
    display: flex;
    align-items: center;
}

.wellness-icon {
    padding-right: 16px;
    display: none;
}

.wellness-item.active .wellness-icon {
    display: block;
}

.wellness-text-holder {
    overflow-x: hidden;
    width: 100%;
}

.wellness-text {
    width: 100%;
}

.wellness-image-pass {
    width: 100%;
}

.wellness-image-holder {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    position: relative;
}

.wellness-image {
    width: 100%;
    padding-top: 100%;
    border-radius: 8px;
    overflow: hidden;
}

.wellness-circle-holder {
    position: absolute;
    bottom: 32px;
    right: 32px;
}

.wellness-circle {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: transparent;
    position: relative;
    opacity: 0;
    transition: 1s all linear;
}

.wellness-circle::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    background: conic-gradient(#68BF4B 0% 75%, #BBBB99 75% 100%);
    mask: radial-gradient(circle at center, transparent 12px, black 14px);
    -webkit-mask: radial-gradient(circle at center, transparent 12px, black 14px);
}
/* ==================================================
   TREATMENT SECTION
   ================================================== */

.treat-image {
    padding-top: 89%;
    overflow: hidden;
    border-radius: 8px;
    width: 100%;
}

.treat-content-text ul {
    display: flex;
    margin: 16px -20px 0 -20px;
    padding: 0;
    flex-wrap: wrap;
    list-style: none;
}

.treat-content-text ul li {
    flex: 0 0 calc(50% - 40px);
    border-bottom: 1px solid #D0D0AA;
    margin-left: 20px;
    margin-right: 20px;
    padding-bottom: 8px;
    margin-bottom: 16px;
    font-size:18px;
}

/* ==================================================
   EXTENDED TREATMENT SECTION
   ================================================== */

.treat-banner {
    min-height: 780px;
}

.ext-treat-content {
    max-width: 620px;
}

.one-for-all {
    position: relative;
}

.bg-holder {
    height: 100%;
    width: 100%;
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
}

.bg-holder .image-cover {
    width: 100%;
    height: 100%;
}

.ext-treat-slider-holder{
    position: relative;
}
.ext-treat-slider{
    position: absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    overflow-x:hidden;
}
.ext-treat-slider .image-cover{
    height:100%;
    width:100%;
}
.ext-treat-track{
    height:100%;
}
.ext-treat-slider-item  {
    overflow: hidden;
    border-radius: 8px;
    opacity: 1;
    z-index: 0;
    clip-path: inset(0 0% 0 0);
}

.ext-treat-slider-item.active {
    z-index: 1;
    clip-path: inset(0 0% 0 0);
    opacity: 1;
}

.ext-treat-slider-item.gone {
    z-index: 2;
    clip-path: inset(0 100% 0 0);
    transition: clip-path 0.5s linear;
    opacity: 1;
}

.treat-thumbnail {
    padding-top: 64px;
    width: 64px;
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
}

.ext-treat-thumbnail {
    display: flex;
    gap: 8px;
    margin-top: 16px;
    width:100%;
    max-width:620px;
}
/* ==================================================
   MIDDLE BANNER SECTION
   ================================================== */

.middle-banner-title {
    font-size: 48px;
    font-weight: 400;
    margin: 0;
    line-height: 1.2;
}

.middle-banner-container {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.middle-banner-container > .row:first-of-type {
    flex-grow: 1;
}

.middle-ornament {
    position: absolute;
    right: 0;
    bottom: 0;
    max-width: 100%;
    text-align: right;
    line-height: 1;
    width: 100%;
    mix-blend-mode: multiply;
}

.middle-ornament img {
    max-width: 90%;
    margin-bottom: -3px;
}

/* ==================================================
   GALLERY SECTION
   ================================================== */

.gallery {
    background: #F0F9ED;
    position: relative;
}

.gallery-overlay-background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none;
}

.gallery-circle {
    position: absolute;
    width: 600px;
    height: 600px;
    left: 50%;
    top: 0px;
    transform: translate(-50%, -40%);
    background: radial-gradient(circle, #6DB6E5 0%, transparent 70%);
    opacity: 0.25;
}

.gallery-title {
    text-align: center;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.gallery-text {
    text-align: center;
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
}

.gallery-slider {
    overflow-x: hidden;
    width: 100%;
}

.gallery-slider-track {
    width: fit-content;
    display: flex;
}

.gallery-item {
    padding: 0 8px;
    display: inline-block;
    height: 378px;
}

.gallery-item div {
    border-radius: 8px;
    overflow: hidden;
    height: 100%;
}

.gallery-item img {
    width: auto;
    height: 100%;
}
@media(max-width:767px){
    .gallery-item{
        height:240px;
    }
}
/* ==================================================
   IMAGES SECTION
   ================================================== */

.images-slider {
    width: 100%;
    overflow-x: hidden;
    height: 439px;
}

.image-item {
    padding-left: 20px;
    padding-right: 20px;
    max-width: 100%;
    width: 328px;
    position: relative;
    transition: width 0.5s ease;
}

.image-thumbnail {
    border-radius: 8px;
    overflow: hidden;
    padding-top: 121%;
    width: 100%;
    cursor: pointer;
}

.image-title {
    width: 100%;
    max-width: 360px;
    font-size: 24px;
    line-height: 1.2;
    padding-top:16px;
    font-weight: 500;
}

.image-text{
    font-size:20px;
    width: 100%;
    max-width: 360px;
    padding-top:8px;
    line-height: 1.4;
}

.image-overlay {
    opacity: 0;
    transition: 1s all;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, transparent 0%, #000000 100%);
}

.images-track {
    display: flex;
    width: fit-content;
    padding-left: 4px;
    padding-right: 4px;
    transition: 0.5s all;
    align-items: flex-start;
}

.unbold{
    font-weight:400 !important;
}

/* ==================================================
   NAVIGATION ELEMENTS
   ================================================== */

/* Images Navigation */
.images-nav .images-prev {
    margin-right: 12px;
}

.images-nav-button {
    cursor: pointer;
}

.images-nav-button svg rect {
    fill: #68BF4B;
}

.images-nav-button:not(.disable):hover svg rect {
    fill: #4A8835;
}

.images-nav-button svg path {
    stroke: #F5F5F5;
}

.images-nav-button.disable svg rect {
    fill: #F5F5F5;
}

.images-nav-button.disable svg path {
    stroke: #1E1E1E;
}

/* Design Navigation */
.design-nav .design-prev {
    margin-right: 12px;
}

.design-nav-button {
    cursor: pointer;
}

.design-nav-button svg rect {
    fill: #68BF4B;
}

.design-nav-button:not(.disable):hover svg rect {
    fill: #4A8835;
}

.design-nav-button svg path {
    stroke: #F5F5F5;
}

.design-nav-button.disable svg rect {
    fill: #F5F5F5;
}

.design-nav-button.disable svg path {
    stroke: #1E1E1E;
}

.design-track {
    display: flex;
    width: fit-content;
    padding-left: 4px;
    padding-right: 4px;
    transition: 0.5s all;
    align-items: center;
}

.extended-treat-nav .extended-treat-prev {
    margin-right: 12px;
}

.extended-treat-nav-button {
    cursor: pointer;
}

.extended-treat-nav-button svg rect {
    fill: #68BF4B;
}

.extended-treat-nav-button:not(.disable):hover svg rect {
    fill: #4A8835;
}

.extended-treat-nav-button svg path {
    stroke: #F5F5F5;
}

.extended-treat-nav-button.disable svg rect {
    fill: #F5F5F5;
}

.extended-treat-nav-button.disable svg path {
    stroke: #1E1E1E;
}

.extended-about-banner{
    width:100%;
    padding-top:42%;
}
.extended-about-sutitle{
    font-size:24px;
}
.extended-about-text{
    display: flex;
    text-align:left;
    max-width:1180px;
}
.extended-about-text p{
    padding:0 16px;
    width:50%;
    flex:0 0 50%;
}

@media(max-width:767px){
.extended-about-text{
    display: block;
}
.extended-about-text p{
    width:100%;
    padding:0;
}
}


.app-title{
    max-width:530px;
}
.app-logo{
    display: flex;
    width: 126px;
    height: 126px;
    padding: 8px 16px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 16px;
    /*border: 1px solid #ECEEF0;
    background: #ffffff;*/
}
.app-logo img{
    max-width:100%;
    height:auto
}
.app-blanker{
    width:100%;
    min-height: 600px;
}
.app-list{
    display: flex;
    gap:10px;
}
.app-list a{
    display: block;
    width:120px;
    line-height: 1;
}
.app-list a img{
    width:100%;
    height:auto;
}
@media(min-width:768px){
    .vertical-middle{
        align-items: center;
    }
}
/* ==================================================
   SPACING UTILITIES
   ================================================== */

/* Padding Top */
.pt-120 { padding-top: 120px; }
.pt-80 { padding-top: 80px; }
.pt-60 { padding-top: 60px; }

/* Padding Bottom */
.pb-120 { padding-bottom: 120px; }
.pb-80 { padding-bottom: 80px; }
.pb-60 { padding-bottom: 60px; }

/* Margin Top */
.mt-120 { margin-top: 120px; }
.mt-80 { margin-top: 80px; }
.mt-64 { margin-top: 64px; }
.mt-60 { margin-top: 60px; }
.mt-56 { margin-top: 56px; }
.mt-48 { margin-top: 48px; }
.mt-40 { margin-top: 40px; }
.mt-32 { margin-top: 32px; }
.mt-24 { margin-top: 24px; }

/* Margin Bottom */
.mb-120 { margin-bottom: 120px; }
.mb-80 { margin-bottom: 80px; }
.mb-64 { margin-bottom: 64px; }
.mb-60 { margin-bottom: 60px; }
.mb-56 { margin-bottom: 56px; }
.mb-48 { margin-bottom: 48px; }
.mb-40 { margin-bottom: 40px; }
.mb-32 { margin-bottom: 32px; }
.mb-24 { margin-bottom: 24px; }

.max-w-600{
 max-width:600px;
}

/* ==================================================
   RESPONSIVE DESIGN - DESKTOP
   ================================================== */

@media (min-width: 992px) {
    .wellness-image-holder {
        width: 620px;
    }
    
    .wellness-image-pass {
        width: fit-content;
        max-width: 100%;
    }
    
    .wellness-text-holder {
        max-width: 530px;
    }
    
    .treat-image {
        max-width: 550px;
    }
    
    .treat-image.ext-treat-image {
        max-width: 620px;
    }
    .treat-content {
        max-width: 620px;
    }

    .treat-content.ext-treat-content{
        max-width: 530px;
    }
    
    .ext-treat-content-text {
        max-width: 380px;
    }
    
    .image-item:hover {
        width: 328px;
    }
    
    .image-item:hover .image-thumbnail .image-text {
        opacity: 1;
        transition: 1s all;
    }
    
    .image-item:hover .image-thumbnail .image-overlay {
        opacity: 1;
        transition: 1s all;
    }
    
    .treat-banner-column {
        flex-direction: column;
    }
}
@media (min-width: 1200px) {
    .desktop-banner-hide {
        display: none;
    }
    
    .ext-treat-content-text {
        max-width: 470px;
    }
}

@media (min-width: 1199px) {
    .wellness-item {
        font-size: 40px;
    }
}

@media(min-width:1024px){
    .app-part-section{
        min-height:500px;
    }
}

/* ==================================================
   RESPONSIVE DESIGN - TABLET
   ================================================== */

@media (min-width: 768px) and (max-width: 1199px) {
    .tablet-banner-hide {
        display: none;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .tmax-480{
    max-width:480px;
    }
    .tpt-56{
        padding-top:56px;
    }
    .tpb-56{
        padding-bottom:56px;
    }
    .app-blanker{
        height:0;
        min-height: 0;
    }
    .app-logo{
        width:72px;
        height:72px;
        padding:8px;
    }
    .treat-banner {
        display: flex;
        flex-direction: column-reverse;
    }
    
    .treat-banner.image-cover > img {
        position: relative;
    }
    
    .main-subtext {
        font-size: 20px;
        max-width: 480px;
    }
    
    .middle-banner-container {
        min-height: 700px;
    }
    .tmb-24{
        margin-bottom:24px;
    }
}

@media (min-width: 768px) {
    .desktop-hide {
        display: none !important;
    }
}

/* ==================================================
   RESPONSIVE DESIGN - TABLET & MOBILE
   ================================================== */

@media (max-width: 991px) {
    .switch-tablet {
        flex-direction: column-reverse;
    }
    
    .tcontent-left {
        justify-content: flex-start;
    }
    
    .tmt-32 {
        margin-top: 32px;
    }
    
    .tpt-56 {
        padding-top: 56px;
    }
    
    .tpb-0 {
        padding-bottom: 0px;
    }
    
    .image-item.active {
        width: 328px;
    }
    
    .image-item.active .image-thumbnail .image-text {
        opacity: 1;
        transition: 1s all;
    }
    
    .image-item.active .image-thumbnail .image-overlay {
        opacity: 1;
        transition: 1s all;
    }
    
    .apartment-slider {
        width: 100%;
        overflow-x: hidden;
    }
    
    .apartment-item {
        padding-left: 8px;
        padding-right: 8px;
        max-width: 100%;
        width: 346px;
        position: relative;
        border: none;
    }
    
    .apartment-image-slide {
        position: relative;
        height: auto;
        border-radius: 8px;
    }
    
    .promo-holder {
        display: block;
        height: 100%;
        min-height: 0;
    }
    
    .promo-holder .container {
        display: flex;
        flex-direction: column;
        height: calc(100vh - 160px);
    }
    
    .promo-holder .container .row.mobile-full {
        flex-grow: 1;
    }
    
    .tpt-40 {
        padding-top: 40px;
    }
    
    .tpb-40 {
        padding-bottom: 40px;
    }
}

.extended-treat-slider{
    width: 100%;
    overflow: hidden;
}
.extended-treat-track{
    display: flex;
    width:fit-content;
    justify-content: flex-start;
    align-items: center;
}
.extended-treat-banner-image-item{
    width:40vw;
    padding:0 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    opacity: 0.5;
    transition: all 0.5s;
}
.extended-treat-banner-image-item.active{
    width:40vw;
    opacity: 1;
    transition: all 0.5s;
    
}

.extended-treat-banner-image-thumbnail{
    padding-top:41.6%;
}
.notrans{
    transition: none !important;

}
.doctor-slider{
    width:100%;
    overflow-x: hidden;
}

.doctor-track{
    display: flex;
    width:fit-content;
}
.doctor-item{
    width:440px;
    max-width:100%;
    padding:0 20px;
    cursor: pointer;
}

.doctor-item:first-of-type{
    padding-left:12px;
}
.doctor-item:last-of-type{
    padding-right:12px;
}
.doctor-thumbnail{
    width:100%;
    padding-top:60%;
}
.doctor-name{
    font-size:24px;
    line-height: 2;
}
.doctor-text{
    font-size:20px;
    line-height: 1.4;
}

.doctor-text-item{
    max-width: 620px;
    z-index: 0;
    opacity:1;
    /*transition: all 0.5s;*/
}

.doctor-text-slider{
    width:100%;
    overflow-x:hidden;
}

.doctor-text-item.active{
    opacity: 1;
    transition: all 0.5s;
    z-index:1;
}

.doctor-title-bold{
    font-weight:500;
}

.extended-treat-banner-image-thumbnail{
    border-radius: 8px;
    overflow: hidden;
}

.item-button.button-white{
    background-color: #ffffff;
    color:#252E38 !important;
    transition: all 0.5s;
}

.item-button.button-white:hover{
  background-color: #68bf4b;
 color: #f3f3f3 !important;  
 transition: all 0.5s;  
}

.i-27 input{
    height:24px;
}

.doctors-tab{
    display: flex;
    padding:0;
    margin:0;
    list-style: none;;
}
.doctors-tab li{
    padding-right:24px;
}

.doctors-tab-item{
    cursor: pointer;
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 24px;
}
.doctors-tab-item.active{
    font-weight: 500;
}

.doctors-tab-item .bullet{
    width:16px;
    height:16px;
    line-height: 1;
    border-radius: 50%;
    background-color: #68BF4B;
    margin-right: 16px;
    opacity: 0;
    transition: all 0.5 linear;
}
.doctors-tab-item.active .bullet{
    opacity: 1;
    transition: all 0.5 linear;
}

.doctors-part{
    width:100%;
    overflow-x: hidden;
    display: block;
    position: relative;
}
.doctor-part-track{
    display: flex;
}
.doctor-part-item{
    opacity: 0;
    transition: 0.5s all linear;
}
.doctor-part-item.active{
    opacity: 1;
    transition: 0.5s all linear;
}
.doctor-slider{
    z-index: 0;
}
.doctor-slider.active{
    z-index: 1;
}
.doctor-slider-nav-button svg rect {
    fill: #68BF4B;
}

.doctor-slider-nav-button svg path {
    stroke: #F5F5F5;
}

.doctor-slider-nav-button.disable svg rect {
    fill: #F5F5F5;
}

.doctor-slider-nav-button.disable svg path {
    stroke: #1E1E1E;
}

.doctor-slider-nav .doctor-slider-prev {
    margin-right: 12px;
}

.doctor-slider-nav-button {
    cursor: pointer;
}

.doctor-tab-holder{
    border-bottom:1px solid #A9B0B8;
}

.doctor-part-item{
    display: flex;
    flex-direction: column;
}
.doctor-part-item-track{
    flex-grow:1;
}

.xpt-120{
  padding-top:60px;
}
.xpb-120{
  padding-bottom:60px;
}

.xmb-120{
  margin-bottom:60px;
}
.xmt-120{
    margin-top:60px;
}

.xpt-80{
  padding-top:60px;
}
.xpb-80{
  padding-bottom:60px;
}

.xmb-80{
  margin-bottom:60px;
}
.xmt-80{
    margin-top:60px;
}

@media (min-width:768px) and (max-width:1023px){
    .main-top{
    min-height:620px;
    }
    .tmb-24{
    margin-bottom:24px;
    }
}
/* ==================================================
   RESPONSIVE DESIGN - MOBILE
   ================================================== */

@media (max-width: 767px) {
    .max-w-600{
    max-width:100%;
    }
    .doctor-tab-holder{
        border:none;
    }
    .doctors-tab-item{
        font-size: 20;
    }
    .doctors-tab{
        display: block;
    }
    .app-blanker{
        min-height:250px;
    }
    .image-text{
        font-size: 16px;
    }
    .app-logo{
        width:56px;
        height:56px;
        padding:8px;
    }
    .design-text{
        font-size: 16px;
    }
    .extended-about-banner{
        padding-top:69%;
    }
    .mobile-banner-hide {
        display: none;
    }
    
    .doctor-item{
        width:330px;
        max-width: 100%;
        padding:0 8px;
    }
    .doctor-thumbnail{
        padding-top:85%;
    }
    .doctors-part{
        display: flex;
        flex-direction: column-reverse;
    }
    .image-item {
    padding-left: 8px;
    padding-right: 8px;
    width: 330px;
    }
    .image-item.active {
        width: 330px;
    }
    .app-part{
        display: flex;
        flex-direction: column-reverse;
    }
    .app-list{
        justify-content: center;;
    }
    .app-logo{
        margin-left:auto;
        margin-right:auto;
    }
    
    .promo-holder .container {
        height: calc(100vh - 80px);
    }
    
    .design-track {
        justify-content: flex-start;
        align-items: flex-start;
    }
    
    .promo-holder {
        display: block;
        height: 100%;
    }
    
    .design-image-item {
        width: 80vw;
    }
    
    .design-image-item.active {
        width: 80vw;
    }
    
    .design-image-thumbnail {
        padding-top: 114%;
    }


    .extended-treat-track {
        justify-content: flex-start;
        align-items: flex-start;
    }

    .extended-treat-banner-image-item {
        width: 80vw;
        padding:0 8px;
    }
    
    .extended-treat-banner-image-item.active {
        width: 80vw;
    }

    .extended-treat-banner-image-thumbnail{
        padding-top: 114%;
    }
    
    .promo-title {
        font-size: 24px;
        text-align: center;
    }
    
    .promo-text {
        font-size: 16px;
        text-align: center;
    }
    .promo-text i{
        font-size:14px;
    }
    
    .promo-text-holder {
        display: flex;
        flex-direction: column;
        height: 100%;
    }
    
    .promo-text-holder h2 {
        flex-grow: 1;
    }
    
    .promo-button-holder {
        justify-content: center;
        align-self: center;
    }
    
    .promo-button-holder .mfull {
        width: auto;
        max-width: 100%;
    }
    
    .mobile-full {
        flex-grow: 1;
    }
    
    .treat-banner {
        min-height: 690px;
    }
    
    .treat-content-text ul {
        margin: 16px -10px 0 -10px;
    }
    
    .treat-content-text ul li {
        flex: 0 0 calc(100% - 20px);
        margin-left: 10px;
        margin-right: 10px;
        font-size:16px;
    }
    
    .main-title {
        font-size: 32px;
    }
    
    .main-subtext {
        font-size: 20px;
    }
    
    .book-button {
        width: 100%;
    }
    
    .title {
        font-size: 32px;
    }
    
    .title-medium {
        font-size: 32px;
        font-weight: 500;
    }
    
    .middle-banner-title {
        font-size: 24px;
        font-weight: 500;
    }
    
    .wellness-item {
        font-size: 24px;
        margin-bottom: 8px;
    }
    
    .wellness-item:last-of-type {
        margin-bottom: 0px;
    }
    
    .switch-mobile {
        flex-direction: column-reverse;
    }
    
    .mobile-hide {
        display: none !important;
    }
    
    .apartment-item.active:before {
        display: none;
    }
    
    .apartment-title {
        font-size: 20px;
    }
    
    .apartment-size {
        font-size: 14px;
    }
    
    .apartment-text-holder {
        max-width: none;
    }
    
    .gallery-title {
        text-align: left;
    }
    
    .gallery-text {
        text-align: left;
    }

    .main-top {
        height: 100%;
        display: flex;
        flex-direction: column;
        min-height: 650px;
    }

    .main-top > .row:last-of-type {
        flex-grow: 1;
    }
    
    /*.main-subtext {
        flex-grow: 1;
    }*/
    
    .main-subbutton {
        flex: 0 0 auto;
    }
    
    .main-col {
        flex-direction: column;
    }
    
    .mobile-swap {
        flex-direction: column-reverse;
    }
    
    .mcontent-left {
        flex-direction: flex-start;
    }
    
    .middle-banner-container {
        min-height: 434px;
        display: flex;
        flex-direction: column;
    }
    
    .middle-banner-container > .row:first-of-type {
        flex-grow: 1;
    }
    
    .mtext-left {
        text-align: left;
    }
    
    .mfull {
        width: 100%;
    }
    
    .mblock {
        display: block;
    }
    
    .design-circle {
        width: 240px;
        height: 240px;
    }
    
    /* Mobile Spacing */
    .mpt-24 { padding-top: 24px; }
    .mpb-24 { padding-bottom: 24px; }
    .mpt-48 { padding-top: 48px; }
    .mpb-48 { padding-bottom: 48px; }
    .mmt-m30 { margin-top: -80px; }
    .mmt-48 { margin-top: 48px; }
    .mmb-48 { margin-bottom: 48px; }
    .mmt-56 { margin-top: 56px; }
    .mmb-56 { margin-bottom: 56px; }
    .mmt-40 { margin-top: 40px; }
    .mmb-40 { margin-bottom: 40px; }
    .mmt-32 { margin-top: 32px; }
    .mmb-32 { margin-bottom: 32px; }
    .mmt-30 { margin-top: 30px; }
    .mmb-30 { margin-bottom: 30px; }
    .mmt-24 { margin-top: 24px; }
    .mmb-24 { margin-bottom: 24px; }
    .mmt-16 { margin-top: 16px; }
    .mmb-16 { margin-bottom: 16px; }
    .mmt-10 { margin-top: 10px; }
    .mmb-10 { margin-bottom: 10px; }
    .mmt-0 { margin-top: 0px; }
    .mmb-0 { margin-bottom: 0px; }
    .mpt-26 { padding-top: 26px; }
    .mpb-26 { padding-bottom: 26px; }
    .mpt-56 { padding-top: 56px; }
    .mpb-56 { padding-bottom: 56px; }
    .mpt-36 { padding-top: 36px; }
    .mpb-36 { padding-bottom: 36px; }
    .mpt-0 { padding-top: 0px; }
    .mpb-0 { padding-bottom: 0px; }
}

/* ==================================================
   CONTAINER RESPONSIVE PADDING
   ================================================== */

@media (min-width: 576px) {
    .images-track {
        padding-left: calc(((100vw - 540px) / 2) + 4px);
        padding-right: calc(((100vw - 540px) / 2) + 4px);
    }
    
    .apartment-track {
        padding-left: calc(((100vw - 540px) / 2) + 4px);
        padding-right: calc(((100vw - 540px) / 2) + 4px);
    }
    
    .design-track {
        padding-left: calc(((100vw - 540px) / 2) + 4px);
        padding-right: calc(((100vw - 540px) / 2) + 4px);
    }
    .extended-treat-track {
        padding-left: calc(((100vw - 540px) / 2) + 4px);
        padding-right: calc(((100vw - 540px) / 2) + 4px);
    }
    .doctor-track {
        padding-left: calc(((100vw - 540px) / 2) + 4px);
        padding-right: calc(((100vw - 540px) / 2) + 4px);
    }
}

@media (min-width: 768px) {
    .apartment-track {
        padding-left: calc(((100vw - 720px) / 2) + 4px);
        padding-right: calc(((100vw - 720px) / 2) + 4px);
    }
    
    .images-track {
        padding-left: calc(((100vw - 720px) / 2) + 4px);
        padding-right: calc(((100vw - 720px) / 2) + 4px);
    }
    
    .design-track {
        padding-left: calc(((100vw - 720px) / 2) + 4px);
        padding-right: calc(((100vw - 720px) / 2) + 4px);
    }
    .extended-treat-track {
        padding-left: calc(((100vw - 720px) / 2) + 4px);
        padding-right: calc(((100vw - 720px) / 2) + 4px);
    }
    .doctor-track {
        padding-left: calc(((100vw - 720px) / 2) + 4px);
        padding-right: calc(((100vw - 720px) / 2) + 4px);
    }
}

@media (min-width: 992px) {
    .images-track {
        padding-left: calc(((100vw - 960px) / 2) + 4px);
        padding-right: calc(((100vw - 960px) / 2) + 4px);
    }
    
    .design-track {
        padding-left: calc(((100vw - 960px) / 2) + 4px);
        padding-right: calc(((100vw - 960px) / 2) + 4px);
    }
    .extended-treat-track {
        padding-left: calc(((100vw - 960px) / 2) + 4px);
        padding-right: calc(((100vw - 960px) / 2) + 4px);
    }
    .doctor-track {
        padding-left: calc(((100vw - 1140px) / 2) + 4px);
        padding-right: calc(((100vw - 1140px) / 2) + 4px);
    }
}

@media (min-width: 1200px) {
    .design-track {
        padding-left: calc(((100vw - 1140px) / 2) + 4px);
        padding-right: calc(((100vw - 1140px) / 2) + 4px);
    }

    .extended-treat-track {
        padding-left: calc(((100vw - 1140px) / 2) + 4px);
        padding-right: calc(((100vw - 1140px) / 2) + 4px);
    }
    
    .images-track {
        padding-left: calc(((100vw - 1140px) / 2) + 4px);
        padding-right: calc(((100vw - 1140px) / 2) + 4px);
    }
    .doctor-track {
        padding-left: calc(((100vw - 1140px) / 2) + 4px);
        padding-right: calc(((100vw - 1140px) / 2) + 4px);
    }
}

@media (min-width: 1400px) {
    .design-track {
        padding-left: calc(((100vw - 1320px) / 2) + 4px);
        padding-right: calc(((100vw - 1320px) / 2) + 4px);
    }
    .extended-treat-track {
        padding-left: calc(((100vw - 1320px) / 2) + 4px);
        padding-right: calc(((100vw - 1320px) / 2) + 4px);
    }
    
    .images-track {
        padding-left: calc(((100vw - 1320px) / 2) + 4px);
        padding-right: calc(((100vw - 1320px) / 2) + 4px);
    }

    .doctor-track {
        padding-left: calc(((100vw - 1320px) / 2) + 4px);
        padding-right: calc(((100vw - 1320px) / 2) + 4px);
    }
}