* {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

    font-family: 'Montserrat'!important;

}

html, body{
    max-width: 1920px;
    margin: 0 auto;
}



h1,

h2,

h3,

h4,

h5,

h6 {

    font-family: 'Cormorant Garamond' !important;

}

h1 > span,

h2 > span,

h3 > span,

h4 > span,

h5 > span,

h6 > span{

    font-family: 'Cormorant Garamond' !important;

}



h1,

h2,

h3,

h4,

h5,

h6,

p,

ul,

ol,

li {

    margin: 0;

    padding: 0;

}



img {

    max-width: 100%;

    vertical-align: middle;

}



a {

    display: inline-block;

    text-decoration: none;

}



li {

    list-style: none;

}

b, strong{
    font-weight: 600;
}



:root {
    --ap--bg: #F8F6EC;
    --ap-footer-bg: #F3F0E6;
    --ap--text: #3D5341;
    --ap-footer-text: #737373;
    --ap--dark: #29372e;
    --ap--green: #77B142;
    --ap--green-hover: #659e31;
    --ap--white: #fff;
    --ap--font: "Montserrat", sans-serif;
    --ap--ease: .35s cubic-bezier(.4, 0, .2, 1);
}



.tm_w_100>div {
    width: 100%;
}



/* common css for all editor text start */

.text_wrap p{

    margin-bottom: 20px;

}

.text_wrap p:nth-last-child(1){

    margin-bottom: 0px;

}

.text_wrap ul, .text_wrap ol{

    padding-left: 20px;

}

.text_wrap ul li, .text_wrap ol li{

    list-style-type: unset;

    margin-bottom: 5px;

}
    .service_pricing .e-con-full.e-flex .elementor-widget-heading:last-child {
    min-width:50px;
}

@media only screen and (max-width: 767.98px){

    .text_wrap p{

        margin-bottom: 15px;

    }

}

/* common css for all editor text end */



/* HEADER CSS Start*/

.ap--header {

    position: relative;

    z-index: 1000;

    background: var(--ap--bg);

}



.ap--header .ap--header-inner {

    min-height: 80px;

    display: flex;

    align-items: center;

}



/* LOGO */



.ap--header .ap--header-inner .ap--logo a {

    display: block;

}



.ap--header .ap--header-inner .ap--logo a img {

    width: 180px;

    display: block;

}





/* MENU */



.ap--header .ap--header-inner .ap--navigation {

    margin-left: auto;

}



.ap--header .ap--header-inner .ap--navigation ul {

    display: flex;

    align-items: center;

    gap: 28px;

    margin: 0;

    padding: 0;

    list-style: none;

}



.ap--header .ap--header-inner .ap--navigation ul li {

    margin: 0;

}



.ap--header .ap--header-inner .ap--navigation ul li a {

    position: relative;

    color: var(--ap--text);

    font-family: var(--ap--font);

    font-size: 14px;

    text-decoration: none;

    white-space: nowrap;

    transition: .3s;

}



.ap--header .ap--header-inner .ap--navigation ul li:not(:last-child) a:hover {

    color: var(--ap--green);

}





/* BOOK NOW */


.ap--header .ap--header-inner .ap--navigation ul li:last-child a {
    border: 1px solid #77b142;
}
 
.ap--header .ap--header-inner .ap--navigation ul li:last-child a:hover {
    background-color: #02010100;
    color: #3d5341;
    border: 1px solid #CDCDCD;
}
.ap--header .ap--header-inner .ap--navigation ul li:last-child a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 114px;
    height: 36px;
    padding: 0 20px;
    border-radius: 50px;
    background: var(--ap--green);
    color: var(--ap--white);
    border: 1px solid #77b142;
    font-weight: 600;
}



.ap--header .ap--header-inner .ap--navigation ul li:last-child a:hover {
    background-color: #02010100;
    color: #3d5341;
    border: 1px solid #CDCDCD;

}



.ap--header .ap--header-inner .ap--navigation ul li:not(:last-child) a {

    position: relative;

}



.ap--header .ap--header-inner .ap--navigation ul li:not(:last-child) a::after {

    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 0;
    height: 2px;
    background: var(--ap--green);
    transition: width .3s ease;
}
@media only screen and (min-width: 991.98px){
    .ap--header .ap--header-inner .ap--navigation ul li:not(:last-child) a::after {
        bottom: -7px;
    }
}



.ap--header .ap--header-inner .ap--navigation ul li:not(:last-child) a:hover::after {

    width: 100%;

}





/* HAMBURGER */



.ap--header .ap--header-inner .ap--hamburger {

    display: none;

    position: relative;



    width: 44px;

    height: 44px;



    margin-left: auto;

    padding: 0;



    border: 0;

    background: transparent;



    cursor: pointer;

}



.ap--header .ap--header-inner .ap--hamburger span {

    position: absolute;

    right: 2px;



    display: block;



    width: 26px;

    height: 2px;



    background: var(--ap--dark);



    transition:

        width .25s ease,

        transform .25s ease;

}



.ap--header .ap--header-inner .ap--hamburger span:nth-child(1) {

    top: 12px;

}



.ap--header .ap--header-inner .ap--hamburger span:nth-child(2) {

    top: 20px;

    width: 19px;

}



.ap--header .ap--header-inner .ap--hamburger span:nth-child(3) {

    top: 28px;

}





/* OVERLAY */



.ap--header .ap--overlay {

    position: fixed;

    inset: 0;

    z-index: 1100;



    background: rgba(0, 0, 0, .55);



    opacity: 0;

    visibility: hidden;

    transition: var(--ap--ease);

}





/* CLOSE */



.ap--header .ap--close {

    position: fixed;

    top: 20px;

    right: 20px;

    z-index: 1300;



    display: none;



    width: 42px;

    height: 42px;

    border: 0;

    background: transparent;

}



.ap--header .ap--close span {

    position: absolute;

    top: 20px;

    left: 9px;



    width: 25px;

    height: 2px;

    background: var(--ap--dark);

}



.ap--header .ap--close span:first-child {

    transform: rotate(45deg);

}



.ap--header .ap--close span:last-child {

    transform: rotate(-45deg);

}





/* MOBILE */



@media (max-width: 991.98px) {



    .ap--header .ap--header-inner {

        min-height: 70px;

    }



    .ap--header .ap--header-inner .ap--logo a img {

        width: 160px;

    }



    .ap--header .ap--header-inner .ap--hamburger {

        display: block;

    }



    .ap--header .ap--header-inner .ap--navigation {

        position: fixed;

        top: 0;

        right: 0;

        z-index: 1200;



        width: min(380px, 88vw);

        height: 100vh;



        margin: 0;

        padding: 80px 25px 30px;



        background: var(--ap--bg);



        overflow-y: auto;



        transform: translateX(100%);

        transition: transform var(--ap--ease);

    }



    .ap--header .ap--header-inner .ap--navigation ul {

        display: flex;

        flex-direction: column;

        align-items: stretch;

        gap: 0;

    }



    .ap--header .ap--header-inner .ap--navigation ul li a {

        display: flex;

        align-items: center;



        min-height: 58px;

        padding: 0 5px;



        border-bottom: 1px solid rgba(0, 0, 0, .08);



        font-size: 16px;

    }



    .ap--header .ap--header-inner .ap--navigation ul li:last-child {

        margin-top: 25px;

    }



    .ap--header .ap--header-inner .ap--navigation ul li:last-child a {

        justify-content: center;

        min-height: 48px;

        border: 0;

    }



    /* OPEN */



    .ap--header.ap--menu-open .ap--header-inner .ap--navigation {

        transform: translateX(0);

    }



    .ap--header.ap--menu-open .ap--overlay {

        opacity: 1;

        visibility: visible;

    }



    .ap--header.ap--menu-open .ap--close {

        display: block;

    }



    body.ap--menu-open {

        overflow: hidden;

    }

}









/* =========================================

   FOOTER

========================================= */



.ap--footer {

    background: var(--ap-footer-bg);

    color: var(--ap-footer-text);

    font-family: var(--ap--font);

}





/* TOP */



.ap--footer .ap--footer-top {

    min-height: 188px;

    display: flex;

    align-items: center;

}





.ap--footer .ap--footer-top .ap--footer-brand {

    width: 37%;

}





.ap--footer .ap--footer-top .ap--footer-brand a {

    display: inline-block;

}





.ap--footer .ap--footer-top .ap--footer-brand a img {

    display: block;

    width: 230px;

    height: auto;

}





/* HOURS */



.ap--footer .ap--footer-top .ap--footer-hours {

    width: 63%;

}





.ap--footer .ap--footer-heading {

    margin-bottom: 17px;



    color: var(--ap--text);



    font-size: 12px;

    font-weight: 500;



    letter-spacing: 4px;

}





.ap--footer .ap--footer-info {

    display: flex;

    flex-direction: column;

    gap: 5px;



    font-size: 14px;

    line-height: 1.45;

}



.ap--footer .ap--footer-info>div {

    display: flex;

    flex-wrap: wrap;

}



.ap--footer .ap--footer-info a {

    color: var(--ap-footer-text);

    text-decoration: none;

}



.ap--footer .ap--footer-info>div a:last-child {

    margin-left: 10px;

}



.ap--footer .ap--footer-info a:hover {

    color: var(--ap-footer-text);

}



.ap--footer .ap--footer-info strong {

    color: var(--ap-footer-text);

    font-weight: 600;

}





.ap--footer .ap--footer-info span {

    color: var(--ap-footer-text);

}





/* MIDDLE */



.ap--footer .ap--footer-middle {

    border-top: 1px solid rgba(83, 96, 87, .18);

    border-bottom: 1px solid rgba(83, 96, 87, .18);

}





.ap--footer .ap--footer-middle .ap--footer-middle-inner {

    min-height: 188px;



    display: flex;

    align-items: center;

}





.ap--footer .ap--footer-middle .ap--footer-visit {

    width: 37%;

}





.ap--footer .ap--footer-middle .ap--footer-reach {

    width: 63%;

}





/* BOTTOM */



.ap--footer .ap--footer-bottom {

    min-height: 60px;



    display: flex;

    align-items: center;

    justify-content: space-between;



    gap: 30px;

}





.ap--footer .ap--footer-bottom .ap--footer-copyright {

    font-size: 13px;

}





.ap--footer .ap--footer-bottom .ap--footer-links ul {

    display: flex;

    align-items: center;



    gap: 28px;



    margin: 0;

    padding: 0;



    list-style: none;

}





.ap--footer .ap--footer-bottom .ap--footer-links ul li {

    margin: 0;

    padding: 0;

}





.ap--footer .ap--footer-bottom .ap--footer-links ul li a {

    color: var(--ap-footer-text);

    font-size: 13px;

    text-decoration: none;

    transition: color .3s ease;

    position: relative;

    text-decoration: none;

}





.ap--footer .ap--footer-bottom .ap--footer-links ul li a::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: -7px;

    width: 0;

    height: 2px;

    background: var(--ap--green);

    transition: width .3s ease;

}





.ap--footer .ap--footer-bottom .ap--footer-links ul li a:hover::after {

    width: 100%;

}





.ap--footer .ap--footer-bottom .ap--footer-links ul li a:hover {

    color: var(--ap--green);

}





/* =========================================

   TABLET

========================================= */



@media (max-width: 991.98px) {



    .ap--footer .ap--footer-top {

        padding: 45px 0;



        align-items: flex-start;

        flex-direction: column;



        gap: 40px;

    }





    .ap--footer .ap--footer-top .ap--footer-brand,

    .ap--footer .ap--footer-top .ap--footer-hours {

        width: 100%;

    }





    .ap--footer .ap--footer-middle .ap--footer-middle-inner {

        padding: 45px 0;



        align-items: flex-start;

        flex-direction: column;



        gap: 40px;

    }





    .ap--footer .ap--footer-middle .ap--footer-visit,

    .ap--footer .ap--footer-middle .ap--footer-reach {

        width: 100%;

    }





    .ap--footer .ap--footer-bottom {

        padding: 25px 0;



        align-items: flex-start;

        flex-direction: column;



        gap: 20px;

    }



}





/* =========================================

   MOBILE

========================================= */



@media (max-width: 575.98px) {



    .ap--footer .ap--footer-top {

        padding: 40px 0;

    }





    .ap--footer .ap--footer-top .ap--footer-brand a img {

        width: 200px;

    }





    .ap--footer .ap--footer-heading {

        margin-bottom: 15px;



        font-size: 11px;

        letter-spacing: 3.5px;

    }





    .ap--footer .ap--footer-info {

        font-size: 13px;

    }





    .ap--footer .ap--footer-top .ap--footer-hours .row>div+div {

        margin-top: 25px;

    }





    .ap--footer .ap--footer-middle .ap--footer-middle-inner {

        padding: 40px 0;

    }





    .ap--footer .ap--footer-middle .ap--footer-reach .row>div+div {

        margin-top: 25px;

    }





    .ap--footer .ap--footer-bottom {

        padding: 25px 0;

    }





    .ap--footer .ap--footer-bottom .ap--footer-links ul {

        flex-wrap: wrap;

        gap: 12px 22px;

    }





    .ap--footer .ap--footer-bottom .ap--footer-copyright,

    .ap--footer .ap--footer-bottom .ap--footer-links ul li a {

        font-size: 12px;

    }



}



 

/* ================ */

/* SERVICE CAROUSEL */

/* ================ */



 

.ap--services-slider {

    padding: 21px 25px 30px;

    background: var(--ap--yellow);

    overflow: hidden;

}

 

 

.ap--services-slider .ap--services-carousel {

    position: relative;

}

 

 

.ap--services-slider .ap--services-carousel .ap--services-swiper {

    width: 100%;

    overflow: hidden;

}

 

 

.ap--services-slider .ap--services-swiper .swiper-slide {

    border-radius: 27px;

    overflow: hidden;

}

 

 

.ap--services-slider .ap--services-swiper .swiper-slide > a {

    position: relative;

    display: block;

    width: 100%;

    height: 100%;

    color: var(--ap--white);

    text-decoration: none;

}

 

 

.ap--services-slider .ap--services-swiper .swiper-slide > a::after {

    content: "";

    position: absolute;

    inset: 0;

    background: linear-gradient(

        to top,

        rgba(0, 0, 0, .72) 0%,

        rgba(0, 0, 0, .18) 45%,

        rgba(0, 0, 0, 0) 70%

    );

}

 

 

.ap--services-slider .ap--services-swiper .swiper-slide > a img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

}

 

 

.ap--services-slider .ap--services-swiper .swiper-slide > a .ap--service-content {

    position: absolute;

    z-index: 2;

    left: 20px;

    right: 20px;

    bottom: 24px;

 

    display: flex;

    flex-direction: column;

}

 

 

.ap--services-slider .ap--services-swiper .swiper-slide > a .ap--service-content h3 {

    margin: 0 0 2px;

    color: var(--ap--white);

    font-size: 16px;

    line-height: 1.25;

    font-weight: 500;

    /* width: 200px; */

}

.our_services .ap--services-slider .ap--services-swiper .swiper-slide > a .ap--service-content h3 {

    font-family: 'Montserrat'!important;

}

 

 

.ap--services-slider .ap--services-swiper .swiper-slide > a .ap--service-content span {

    color: var(--ap--white);

    font-size: 15px;

    line-height: 1.45;
    font-weight: 400;

}

 

 

/* ARROWS */

 

.ap--services-slider .ap--services-carousel .ap--services-prev,

.ap--services-slider .ap--services-carousel .ap--services-next {

    position: absolute;

    z-index: 5;

    top: 50%;

 

    width: 48px;

    height: 48px;

 

    display: flex;

    align-items: center;

    justify-content: center;

 

    padding: 0;

    border: 0;

    border-radius: 50%;

 

    background: var(--ap--white);

    color: var(--ap--dark);

 

    cursor: pointer;

    transform: translateY(-50%);

}

 

 

.ap--services-slider .ap--services-carousel .ap--services-prev {

    left: -24px;

}

 

 

.ap--services-slider .ap--services-carousel .ap--services-next {

    right: -24px;

}

 

 

.ap--services-slider .ap--services-carousel .ap--services-prev span,

.ap--services-slider .ap--services-carousel .ap--services-next span {

    width: 100%;

}

 

 

.ap--services-slider .ap--services-carousel .swiper-button-disabled {

    opacity: .45;

}

 

 

/* MOBILE */

 

@media (max-width: 575.98px) {

 

    .ap--services-slider .ap--services-carousel .ap--services-prev {

        left: -25px;

    }

 

    .ap--services-slider .ap--services-carousel .ap--services-next {

        right: -25px;

    }

 

}

/* Operational-Hours css start */

.operational_hours .left_side, .operational_hours .right_side{
    position: relative;
    width: 100%;
}

.operational_hours .left_side{
    max-width: calc((1140px - 60%) / 2);
    margin-left: auto;

}

.operational_hours .right_side{
    max-width: calc((1140px + 40%) / 2);
    margin-right: auto;

}

@media only screen and (max-width: 1199.98px){
    .operational_hours .left_side, .operational_hours .right_side{
        position: relative;
        width: 100%;
    }

    .operational_hours .left_side{
        max-width: calc((865px - 60%) / 2);
        margin-left: auto;
    }

    .operational_hours .right_side{
        max-width: calc((865px + 40%) / 2);
        margin-right: auto;
    }
}

@media only screen and (max-width: 991.98px){
    .operational_hours .left_side{
        max-width: 100%;
        margin-left: unset;
    }

    .operational_hours .right_side{
        max-width: 100%;
        margin-right: unset;
    }
}

/* membership privleges css start */
.membership_privileges .privileges_wrap{
    position: relative;
}
.membership_privileges .privileges_wrap::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 28px;
    top: 101%;
    left: 0;
    background: #fff;
    border-radius: 0px;
    border: none;
    z-index: 10;
}

/* global icon css start */
.global_social_icon{
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 60px;
    right: 60px;
    z-index: 999;
}
.global_social_icon img{
    width: 60px;
    height: 60px;
    object-fit: contain;
}
@media only screen and (max-width: 991.98px){
    .global_social_icon{
        /* bottom: 100px; */
        right: 20px;
    }
}
@media only screen and (max-width: 767.98px){
    .global_social_icon{
        /* bottom: 60px; */
        right: 10px;
    }
}

/* about carousel css start */
.about-slider-wrap img{
    width: 100%;
}

.text_decoration_cta a {
    text-decoration: underline !important;
}

.ap--footer-info-underline a{
text-decoration: underline!important;
}

.our-guest-list ul li {
    list-style: disc;
}
 
.our-guest-list ul {
    padding-left: 30px;
}
.video_wrapper .elementor-custom-embed-play svg{
    width: 60px;
    height: 60px;
}
.treatment_sec .treatment_sec_wrap > div:nth-child(1){
    position: relative;
}
.treatment_sec .treatment_sec_wrap > div:nth-child(1)::before{
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    top: 0;
    right: 12px;
    left: unset;
    background-color: #D9D4C8;
}
@media only screen and (max-width: 767.98px){
    .treatment_sec .treatment_sec_wrap > div:nth-child(1){
        margin-bottom: 20px;
        padding-bottom: 20px;
    }   
    .treatment_sec .treatment_sec_wrap > div:nth-child(1)::before{
        width: 50%;
        height: 1px;
        top: unset;
        right: unset;
        left: 50%;
        bottom: 0;
        transform: translateX(-50%);
    }
}
@media only screen and (max-width: 575.98px){ 
    .treatment_sec .treatment_sec_wrap > div:nth-child(1)::before{
        width: 250px;
        max-width: 100%;
    }
}
