﻿/*==================================================
GENERAL
==================================================*/

body{

    font-family:'Poppins',sans-serif;
    color:#444;
    overflow-x:hidden;

}

a{

    text-decoration:none;
    transition:.3s;

}

img{

    max-width:100%;

}

/*==================================================
HEADER
==================================================*/

.header{

    position:sticky;
    top:0;
    z-index:9999;
    background:#fff;
    box-shadow:0 4px 18px rgba(0,0,0,.06);

}

.navbar{

    padding:18px 0;

}

.navbar-brand img{

    height:58px;

}

.navbar-nav{

    gap:18px;

}

.nav-link{

    color:#222;
    font-size:14px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5px;
    position:relative;

}

.nav-link:hover{

    color:#ec5598;

}

.nav-link.active{

    color:#ec5598;

}

.nav-link::after{

    content:"";
    position:absolute;
    left:0;
    bottom:-8px;
    width:0;
    height:2px;
    background:#ec5598;
    transition:.3s;

}

.nav-link:hover::after{

    width:100%;

}

/*==================================================
OFFCANVAS
==================================================*/

.offcanvas{

    width:290px;

}

.offcanvas-body .nav-link{

    padding:12px 0;
    border-bottom:1px solid #f3f3f3;

}


/*==================================================
HERO
==================================================*/

.hero-section{

    position:relative;

}

.hero-slide{

    height:90vh;

    background-size:cover;

    background-position:center;

    position:relative;

    display:flex;

    align-items:center;

}

.hero-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(to right,
    rgba(0,0,0,.75),
    rgba(0,0,0,.25));

}

.hero-content{

    position:relative;

    z-index:10;

    color:#fff;

}

.hero-subtitle{

    display:inline-block;

    color:#ffb7d4;

    text-transform:uppercase;

    font-weight:600;

    letter-spacing:3px;

    margin-bottom:18px;

}

.hero-content h1{

    font-size:62px;

    line-height:1.1;

    font-weight:700;

    margin-bottom:25px;

}

.hero-content p{

    font-size:18px;

    line-height:1.8;

    margin-bottom:35px;

    max-width:600px;

}

.hero-buttons{

    display:flex;

    gap:15px;

    flex-wrap:wrap;

}

.btn-primary{

    background:#ec5598;

    border:none;

    padding:15px 38px;

    border-radius:50px;

    font-weight:600;

}

.btn-primary:hover{

    background:#ec5598;

}

.btn-outline-light{

    border-radius:50px;

    padding:15px 38px;

}

.swiper-pagination-bullet{

    background:#fff;

    opacity:.5;

}

.swiper-pagination-bullet-active{

    background:#ec5598;

    opacity:1;

}


/*=============================
HOME ABOUT
==============================*/

.about-home{

    padding:90px 0;
    background:#fff;

}

.about-text{

    max-width:620px;
    margin:auto;

}

.about-text h2{

    text-align:eft;
    color:#ec5598;
    font-size:42px;
    font-weight:700;
    margin-bottom:35px;

}

.about-text p{

    font-size:16px;
    line-height:2.0;
    color:#222;
    text-align:left;
    margin-bottom:20px;

}

.about-image{

    text-align:center;

}

.about-image img{

    width:100%;
    max-width:670px;

}


/*=========================================
OUR SERVICES
=========================================*/

.services-section{

    background:#faf8fb;
    padding:90px 0;
    position:relative;

}

.services-section .section-title{

    margin-bottom:50px;

}

.services-section .section-title h2{

    font-size:42px;
    font-weight:700;
    color:#ec5598;
    margin:0;

}

/*----------------------------------
Swiper
----------------------------------*/

.servicesSlider{

    position:relative;
    overflow:hidden;
    padding:0 65px;

}

.servicesSlider .swiper-slide{

    height:auto;

}

/*----------------------------------
Card
----------------------------------*/

.service-card{

    background:#fff;
    height:100%;
    border-bottom:2px solid rgba(236,85,152,.28);
    transition:.35s;
    overflow:hidden;

}

.service-card:hover{

    transform:translateY(-8px);
    box-shadow:0 18px 40px rgba(0,0,0,.10);

}

.service-title{

    padding:22px 15px 18px;
    text-align:center;

}

.service-title h4{

    margin:0;
    color:#222;
    font-size:18px;
    font-weight:600;
    line-height:1.3;

}

.service-card img{

    width:100%;
    height:270px;
    object-fit:cover;
    display:block;
    transition:.4s;

}

.service-card:hover img{

    transform:scale(1.05);

}

.service-content{

    padding:22px 22px 30px;
    text-align:center;

}

.service-content p{

    color:#333;
    font-size:15px;
    
    margin-bottom:25px;

}

/*----------------------------------
Button
----------------------------------*/

.service-btn{

    display:inline-block;
    background:#ec5598;
    color:#fff;
    font-weight:600;
    padding:11px 28px;
    border-radius:30px;
    transition:.3s;

}

.service-btn:hover{

    background:#ec5598;
    color:#fff;

}

/*----------------------------------
Navigation
----------------------------------*/

.services-prev,
.services-next{

    width:46px;
    height:46px;
    border-radius:50%;
    background:#ec5598;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:20;
    cursor:pointer;
    transition:.3s;

}

.services-prev{

    left:0;

}

.services-next{

    right:0;

}

.services-prev:hover,
.services-next:hover{

    background:#ec5598;

}

.services-prev i,
.services-next i{

    font-size:22px;

}

/*----------------------------------
Swiper spacing
----------------------------------*/

.servicesSlider .swiper-wrapper{

    align-items:stretch;

}



/*====================================
CTA
====================================*/

.cta-section{

    position:relative;

    background:url("../images/cta/cta-bg.webp") center center;

    background-size:cover;

    background-repeat:no-repeat;

    padding:120px 0;

    overflow:hidden;

}

.cta-overlay{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.52);

}

.cta-content{

    position:relative;

    z-index:2;

    text-align:center;

    color:#fff;

}

.cta-content h2{

    font-size:42px;

    font-weight:700;

    margin-bottom:18px;

    letter-spacing:1px;

}

.cta-content h4{

    font-size:22px;

    font-weight:600;

    margin-bottom:28px;

}

.cta-content p{

    max-width:760px;

    margin:auto;

    font-size:16px;

    line-height:1.8;

    margin-bottom:30px;

    font-weight:500;

}

.cta-btn{

    display:inline-block;

    background:#ec5598;

    color:#fff;

    padding:16px 42px;

    border-radius:40px;

    font-size:18px;

    font-weight:600;

    transition:.35s;

}

.cta-btn:hover{

    background:#ec5598;

    color:#fff;

    transform:translateY(-3px);

}

.cta-section{

    background-attachment:fixed;

}


/*==========================================
TESTIMONIAL
===========================================*/

.testimonial-section{

    padding:90px 0;

    background:#fff;

}

.testimonial-section .section-title{

    margin-bottom:45px;

}

.testimonial-section h2{

    color:#ec5598;

    font-size:42px;

    font-weight:700;

}

.testimonialSlider{

    position:relative;

    padding:0 90px;

}

.testimonial-item{

    text-align:center;

}

.testimonial-item p{

    font-size:20px;

    color:#222;

    line-height:1.5;

    max-width:900px;

    margin:auto auto 45px;

    font-weight:400;

}

.testimonial-item h5{

    font-size:22px;

    font-weight:600;

    color:#222;

}

.testimonial-prev,
.testimonial-next{

    position:absolute;

    top:45%;

    width:56px;

    height:56px;

    border-radius:50%;

    background:#ec5598;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    cursor:pointer;

    transition:.3s;

    z-index:5;

}

.testimonial-prev{

    left:0;

}

.testimonial-next{

    right:0;

}

.testimonial-prev:hover,
.testimonial-next:hover{

    background:#ec5598;

}

.testimonial-prev i,
.testimonial-next i{

    font-size:24px;

}

/*=========================================
WHO WE ARE
==========================================*/

.who-we-are{

    position:relative;

    padding:0;

    background:#fff;

}

.who-image{

    height:640px;

}

.who-image img{

    width:100%;

    height:100%;

    object-fit:cover;

}

.who-content{

    background:#fff;

    padding:60px;

    box-shadow:0 10px 35px rgba(0,0,0,.12);

    border-radius:8px;

    position:absolute;

    left:-110px;

    top:50%;

    transform:translateY(-50%);

    width:650px;

    z-index:10;

}

.who-content h2{

    font-size:42px;

    font-weight:700;

    color:#222;

    margin-bottom:30px;

}

.who-content p{

    font-size:16px;

    color:#666;

    margin-bottom:25px;

}

.theme-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    background:#ec5598;

    color:#fff;

    padding:16px 36px;

    border-radius:35px;

    font-weight:600;

    transition:.3s;

}

.theme-btn:hover{

    background:#ec5598;

    color:#fff;

}

.theme-btn i{

    transition:.3s;

}

.theme-btn:hover i{

    transform:translateX(5px);

}


/*=========================================
WHY CHOOSE US
==========================================*/

.why-choose-section{

    background:#faf8fb;

    overflow:hidden;

}

.why-left{

    padding:40px 20px;

}

.feature-box{

    text-align:center;

    margin-bottom:65px;

    padding:0 20px;

}
.feature-icon {
    width: 60px;
    height: 60px;
    border: 2px solid #ec5598;
    border-radius: 50%;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
}

.feature-icon img{

    width:42px;

}

.feature-box:hover .feature-icon{

    background:#ec5598;

    transform:translateY(-6px);

}

.feature-box:hover .feature-icon img{

    filter:brightness(0) invert(1);

}

.feature-box h3{

    font-size:22px;

    font-weight:600;

    color:#111;

    margin-bottom:20px;

}

.feature-box p{

    color:#666;

    line-height:1.9;

    font-size:16px;

}

.why-image{

    height:100%;

}

.why-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    display:block;

}

/*=========================================
BLOG
==========================================*/

.blog-section{

    padding:100px 0;

    background:#fff;

}

.blog-section .section-title{

    margin-bottom:60px;

}

.blog-section .section-title h2{

    font-size:42px;

    font-weight:700;

    color:#ec5598;

    margin-bottom:10px;

}

.blog-section .section-title p{

    font-size:20px;

    font-weight:600;

    color:#111;

}

.blog-card{

    background:#fff;

    border-radius:15px;

    overflow:hidden;

    box-shadow:0 8px 30px rgba(0,0,0,.08);

    transition:.35s;

    height:100%;

    display:flex;

    flex-direction:column;

}

.blog-card:hover{

    transform:translateY(-10px);

    box-shadow:0 18px 45px rgba(0,0,0,.15);

}

.blog-card img{

    width:100%;

    height:240px;

    object-fit:cover;

    transition:.4s;

}

.blog-card:hover img{

    transform:scale(1.05);

}

.blog-content{

    padding:28px;

    display:flex;

    flex-direction:column;

    flex-grow:1;

}

.blog-content h3 {
    font-size: 22px;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 20px;
    min-height: 70px;
}

.blog-content h3 a{

    color:#111;

    text-decoration:none;

}

.blog-content h3 a:hover{

    color:#ec5598;

}

.blog-date{

    color:#888;

    font-size:16px;

    margin-bottom:22px;

}

.blog-date i{

    color:#ec5598;

    margin-right:8px;

}

.blog-content p{

    color:#666;


    font-size:16px;

    margin-bottom:35px;

    flex-grow:1;

}

.blog-content .theme-btn{

    align-self:flex-start;

}

/*====================================================
FOOTER
====================================================*/

.footer{

    background:#2b2727;
    color:#fff;
    position:relative;

}

/*==========================
Top
==========================*/

.footer-top{

    padding:90px 0 70px;

}

.footer-widget{

    height:100%;

}

.footer-widget h3{

font-size: 20px;

font-weight:500;

color:#fff;

margin-bottom:18px;

font-family:Georgia, serif;
}

.footer-line{

    width:100%;
    height:1px;
    background:rgba(255,255,255,.18);
    margin-bottom:35px;

}

/*==========================
Social
==========================*/

.social-icons{

    list-style:none;
    padding:0;
    margin:0;
    display:flex;
    gap:18px;

}

.social-icons li{

    margin:0;

}

.social-icons a{

width: 40px;

height: 40px;

border-radius:50%;

border:2px solid rgba(255,255,255,.85);

display:flex;

align-items:center;

justify-content:center;

color:#fff;

text-decoration:none;

font-size: 20px;

transition:.35s;
}

.social-icons a:hover{

    background:#ec5598;
    border-color:#ec5598;
    transform:translateY(-4px);

}

/*==========================
Working Hours
==========================*/

.working-hours{

font-size: 16px;

line-height:2;

color:#fff;

font-weight:400;
}

/*==========================
Recent Posts
==========================*/

.footer-post{

    display:flex;
    align-items:flex-start;
    margin-bottom:30px;

}

.footer-post:last-child{

    margin-bottom:0;

}

.footer-post img{

    
    height:100px;
    object-fit:cover;
    border-radius:4px;
    flex-shrink:0;

}

.footer-post div{

    padding-left:20px;

}

.footer-post h5{

margin:0 0 12px;

font-size: 16px;

font-weight:500;
}

.footer-post h5 a{

    color:#fff;
    text-decoration:none;
    transition:.3s;

}

.footer-post h5 a:hover{

    color:#ec5598;

}

.footer-post span{

color:#bfbfbf;

font-size: 14px;

text-transform:uppercase;

letter-spacing:.5px;
}


/*=========================================
CONTACT
==========================================*/

.footer-contact{

    list-style:none;

    padding:0;

    margin:0;

}

.footer-contact li{

display:flex;

align-items:flex-start;

margin-bottom: 10px;

color:#fff;
}

.footer-contact li:last-child{

    margin-bottom:0;

}

.footer-contact i{

    width:26px;

    margin-right:18px;

    font-size:22px;

    color:#b8b8b8;

    margin-top:4px;

}

.footer-contact a{

color:#fff;

text-decoration:none;

font-size: 16px;

transition:.3s;
}

.footer-contact span{

font-size: 16px;
}

.footer-contact a:hover{

    color:#ec5598;

}


/*=========================================
FOOTER BOTTOM
==========================================*/

.footer-bottom{

    border-top:1px solid rgba(255,255,255,.08);

    padding:28px 0;

    margin-top:20px;

}

.footer-bottom-inner{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.footer-bottom p{

margin:0;

color:#d7d7d7;

font-size: 14px;
}

.footer-bottom a{

    color:#fff;

    text-decoration:none;

    transition:.3s;

}

.footer-bottom a:hover{

    color:#ec5598;

}


/*=========================================
BACK TO TOP
==========================================*/

.backToTop{

    position:fixed;

    right:28px;

    bottom:28px;

    width:62px;

    height:62px;

    border-radius:50%;

    background:#fff;

    border:3px solid rgba(236,85,152,.35);

    display:flex;

    align-items:center;

    justify-content:center;

    text-decoration:none;

    color:#111;

    font-size:26px;

    box-shadow:0 8px 25px rgba(0,0,0,.15);

    transition:.35s;

    z-index:999;

}

.backToTop:hover{

    background:#ec5598;

    border-color:#ec5598;

    color:#fff;

    transform:translateY(-5px);

}



/*=========================================
PAGE BANNER
==========================================*/

.page-banner{

    position:relative;

    background:url('../images/about-banner.webp') center center;

    background-size:cover;

    background-repeat:no-repeat;

    height:380px;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

}

.page-banner-overlay{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.35);

}

.page-banner-content{

    position:relative;

    z-index:2;

    text-align:center;

}

.page-banner-content h1{

    color:#fff;

    font-size:42px;

    font-weight:700;

    margin-bottom:20px;

}

.breadcrumb{

    margin:0;

    background:none;

}

.breadcrumb-item{

    font-size:14px;

    font-weight:500;

}

.breadcrumb-item a{

    color:#fff;

    text-decoration:none;

    transition:.3s;

}

.breadcrumb-item a:hover{

    color:#ec5598;

}

.breadcrumb-item+.breadcrumb-item::before{

    content:">";

    color:#fff;

    padding:0 12px;

}

.breadcrumb-item.active{

    color:#fff;

}


/*=========================================
ABOUT CONTENT
==========================================*/

.about-content-section{

    padding:90px 0;

    background:#fff;

}

.about-content{

    color:#222;

}

.about-content p{

font-size: 18px;

line-height:2;

margin-bottom:28px;

color:#222;
}

.about-content h3{

margin: 40px 0 30px;

font-size: 26px;

font-weight:600;

color:#111;
}

.therapy-list{

    margin:0;

    padding-left:35px;

}

.therapy-list li{

font-size: 18px;

line-height:2;

margin-bottom:6px;

color:#111;
}



/*=========================================
Gallery
==========================================*/

.gallery-section{

    padding:90px 0;

    background:#fff;

}

.gallery-item{

    display:block;

    overflow:hidden;

    position:relative;

    border-radius:4px;

}

.gallery-item img{

    width:100%;

    height:285px;

    object-fit:cover;

    transition:.45s;

}

.gallery-item::before{

    content:'';

    position:absolute;

    inset:0;

    background:rgba(226,63,149,.25);

    opacity:0;

    transition:.35s;

    z-index:1;

}

.gallery-item::after{

    content:'+';

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    width:70px;

    height:70px;

    border-radius:50%;

    background:#fff;

    color:#ec5598;

    font-size:42px;

    font-weight:300;

    display:flex;

    align-items:center;

    justify-content:center;

    opacity:0;

    transition:.35s;

    z-index:2;

}

.gallery-item:hover img{

    transform:scale(1.08);

}

.gallery-item:hover::before,

.gallery-item:hover::after{

    opacity:1;

}


/*=========================================
Contact
==========================================*/

.contact-section{

    background:#fff;

    padding:90px 0;

}

.contact-section .form-label{

    font-size:18px;

    color:#444;

    font-weight:500;

    margin-bottom:10px;

}

.contact-section .form-control{

    height:48px;

    border:1px solid #d9d9d9;

    border-radius:4px;

    box-shadow:none;

    padding:12px 16px;

    transition:.3s;

}

.contact-section textarea.form-control{

    height:120px;

    resize:none;

}

.contact-section .form-control:focus{

    border-color:#ec5598;

    box-shadow:0 0 0 .15rem rgba(223,75,151,.15);

}

.btn-contact{

    background:#ec5598;

    color:#fff;

    padding:12px 34px;

    border-radius:50px;

    font-weight:600;

    text-transform:uppercase;

    letter-spacing:.5px;

    border:none;

    transition:.3s;

}

.btn-contact:hover{

    background:#ec5598;

    color:#fff;

}

.form-check{

    display:flex;

    align-items:flex-start;

    gap:10px;

}

.form-check-input{

    margin-top:5px;

}

.form-check-label{

    line-height:1.8;

    color:#444;

}

.contact-info{

    margin-top:50px;

}

.contact-item{

    display:flex;

    gap:20px;

    margin-bottom:24px;

    font-size:19px;

    color:#555;

}

.contact-item i{

    color:#8d8d8d;

    width:22px;

    margin-top:5px;

}

.contact-item a{

    color:#555;

    text-decoration:none;

}

.contact-item a:hover{

    color:#ec5598;

}

.map-box{

    height:485px;

    overflow:hidden;

}

.map-box iframe{

    width:100%;

    height:100%;

    border:0;

}


/*=========================
Desktop Dropdown
=========================*/

.package-dropdown{

    position:relative;

}

.package-dropdown .dropdown-menu{

    display:block;

    opacity:0;

    visibility:hidden;

    transform:translateY(15px);

    transition:.35s;

    border:0;

    border-radius:8px;

    box-shadow:0 15px 40px rgba(0,0,0,.15);

    min-width:270px;

    padding:10px 0;

    margin-top:20px;

}

.package-dropdown:hover .dropdown-menu{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}

.dropdown-item{

    padding:8px 15px;

    transition:.3s;

}

.dropdown-item:hover{

    background:#ec5598;

    color:#fff;

    padding-left:28px;

}

/*=========================
Mobile
=========================*/

.mobile-dropdown-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.mobile-menu-toggle{

    background:none;

    border:none;

    font-size:18px;

    padding:0;

}

.mobile-submenu{

    display:none;

    list-style:none;

    padding:0;

    margin:0;

    background:#fafafa;

}

.mobile-submenu li a{

    display:block;

    padding:12px 20px;

    color:#444;

    text-decoration:none;

    border-bottom:1px solid #eee;

}

.mobile-submenu li a:hover{

    color:#ec5598;

}


/*==============================
    BLOG CARD
==============================*/

.blog-card{
    background:#fff;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
    transition:all .35s ease;
    display:flex;
    flex-direction:column;
    height:100%;
}

.blog-card:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 45px rgba(0,0,0,.15);
}

/* Image */

.blog-card img{
    width:100%;
    height:230px;
    object-fit:contain;
    transition:transform .5s ease;
}

.blog-card:hover img{
    transform:scale(1.08);
}

/* Body */

.blog-card-body{
    padding:25px;
    flex:1;
    display:flex;
    flex-direction:column;
}

.blog-card-body h5{
    margin-bottom:15px;
    font-size:18px;
    font-weight:700;
    line-height:1.4;
}

.blog-card-body h5 a{
    color:#222;
    text-decoration:none;
    transition:.3s;
}

.blog-card-body h5 a:hover{
    color:#ec5598;
}

/* Date */

.blog-date{
    font-size:14px;
    color:#999;
    margin-bottom:18px;
    display:flex;
    align-items:center;
}

.blog-date i{
    color:#ec5598;
    margin-right:8px;
    font-size:15px;
}

/* Description */

.blog-card-body p{
    color:#666;
    font-size:15px;
    line-height:1.8;
    margin-bottom:0;
    flex:1;
}

/* Footer */

.blog-footer{
    padding:0 25px 25px;
}

.blog-btn{
    width:48px;
    height:48px;
    border-radius:50%;
    background:#ec5598;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    transition:.3s;
}

.blog-btn i{
    font-size:18px;
}

.blog-btn:hover{
    background:#222;
    color:#fff;
    transform:translateX(5px);
}

/* Responsive */

@media(max-width:991px){

    .blog-card img{
        height:210px;
    }

    .blog-card-body h5{
        font-size:20px;
    }

}

@media(max-width:767px){

    .blog-card{
        margin-bottom:25px;
    }

    .blog-card img{
        height:220px;
    }

    .blog-card-body{
        padding:20px;
    }

    .blog-footer{
        padding:0 20px 20px;
    }

}

/* Final responsive safeguards (kept last to override legacy breakpoints). */
@media(max-width:767px){
    .hero-slide{height:570px!important;min-height:570px;background-position:62% center}
    .hero-overlay{background:linear-gradient(90deg,rgba(24,16,17,.84),rgba(39,22,26,.56))}
    .hero-content{padding:48px 8px;text-align:left}
    .hero-content h1{font-size:48px;line-height:.96;margin-bottom:22px}
    .hero-content p{font-size:15px;line-height:1.7;margin-bottom:25px}
    .hero-buttons{justify-content:flex-start}
    .hero-buttons .btn{width:100%;padding:13px 22px}
    .about-home,.services-section,.testimonial-section,.blog-section{padding:72px 0}
    .about-text{margin-top:20px}
    .about-text p{text-align:left}
    .servicesSlider{padding:0 6px}
    .testimonialSlider{padding:0 8px}
}

/*==================================================
2026 VISUAL REFRESH
==================================================*/
:root{
    --brand:#ec5598;
    --brand-dark:#ec5598;
    --ink:#27201f;
    --muted:#574f4d;
    --cream:#fbf7f2;
    --blush:rgba(236,85,152,.10);
    --line:rgba(76,49,43,.12);
    --shadow:0 18px 50px rgba(65,39,34,.10);
}

html{scroll-behavior:smooth;scroll-padding-top:92px}
body{color:var(--ink);background:var(--cream);line-height:1.75}
h1,h2,h3,h4,h5,h6{font-family:'Cormorant Garamond',serif;letter-spacing:-.02em}

.header{background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);box-shadow:none}
.navbar{padding:12px 0}
.navbar-brand img{height:54px}
.navbar-nav{gap:10px}
.nav-link{padding:12px 14px!important;font-size:13px;letter-spacing:.08em}
.nav-link::after{left:14px;right:14px;bottom:5px;background:var(--brand)}
.nav-link:hover::after{width:auto}
.dropdown-menu{border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:var(--shadow)!important;padding:10px!important}
.dropdown-item{border-radius:9px;padding:9px 12px!important}

.hero-slide{height:min(790px,calc(100vh - 79px));min-height:580px;background-position:center}
.hero-overlay{background:linear-gradient(90deg,rgba(24,16,17,.82) 0%,rgba(39,22,26,.53) 43%,rgba(0,0,0,.08) 78%)}
.hero-content{max-width:680px;padding:70px 0}
.hero-subtitle{color:#ec5598;font-size:13px;letter-spacing:.22em;margin-bottom:16px}
.hero-content h1{font-size:clamp(58px,6vw,88px);font-weight:600;line-height:.92;margin-bottom:28px;text-wrap:balance}
.hero-content p{font-size:17px;line-height:1.8;color:rgba(255,255,255,.86);max-width:570px}
.btn-primary,.theme-btn,.btn-contact{background:var(--brand)!important;border:1px solid var(--brand)!important;color:#fff!important;box-shadow:0 10px 25px rgba(236,85,152,.22)}
.btn-primary:hover,.theme-btn:hover,.btn-contact:hover{background:var(--brand-dark)!important;border-color:var(--brand-dark)!important;transform:translateY(-2px)}
.btn-outline-light{border-width:1px;font-weight:600}
.swiper-pagination-bullet{width:9px;height:9px}
.swiper-pagination-bullet-active{width:28px;border-radius:8px}

.about-home,.services-section,.testimonial-section,.blog-section{padding:110px 0}
.about-home{background:var(--cream)}
.about-text{padding-right:40px}
.about-text h2,.services-section .section-title h2,.testimonial-section h2,.blog-section .section-title h2{font-size:clamp(42px,5vw,62px);font-weight:600;color:var(--ink);line-height:1.05}
.about-text h2::before,.section-title h2::before{content:'VEDAS SPA';display:block;font-family:'Poppins',sans-serif;font-size:11px;font-weight:600;letter-spacing:.22em;color:var(--brand);margin-bottom:14px}
.about-text p,.who-content p,.feature-box p{color:var(--muted)}
.about-image{position:relative;padding:0 0 24px 24px}
.about-image::before{content:'';position:absolute;inset:24px 24px 0 0;border:1px solid rgba(236,85,152,.35);border-radius:160px 160px 22px 22px}
.about-image img{position:relative;border-radius:160px 160px 22px 22px;box-shadow:var(--shadow)}

.services-section{background:#fff}
.service-card,.blog-card,.testimonial-item{border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 35px rgba(65,39,34,.06)}
.service-card{border-bottom:1px solid var(--line);display:flex;flex-direction:column}
.service-title{padding:25px 18px 18px}
.service-title h4{font-size:27px;color:var(--ink)}
.service-card img{height:245px}
.service-content{display:flex;flex:1;flex-direction:column;align-items:center}
.service-content p{color:var(--muted)}
.service-btn,.service-btn:hover,.service-btn:focus{margin-top:auto;color:#fff;font-weight:600}

.cta-section{background-attachment:scroll;padding:130px 0}
.cta-overlay{background:linear-gradient(90deg,rgba(32,19,20,.88),rgba(56,27,38,.68))}
.cta-content h2,.cta-content h4{font-family:'Cormorant Garamond',serif}
.testimonial-section{background:var(--cream)}
.testimonial-item{background:#fff;padding:38px}
.who-content{border-radius:20px;border:1px solid var(--line);box-shadow:var(--shadow)}
.who-content h2{font-size:54px;font-weight:600}
.why-choose-section{background:#fff}
.why-left{padding:65px clamp(25px,5vw,80px)}
.feature-box{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:28px 22px;margin:10px;height:calc(100% - 20px);transition:.3s}
.feature-box:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.feature-box h3{font-size:25px}
.blog-section{background:var(--cream)}
.blog-card{overflow:hidden}
.footer{background:#201b1b}
.footer-top{padding:75px 0 55px}
.page-banner{min-height:340px;display:flex;align-items:center}
.page-banner-content h1{font-size:clamp(46px,6vw,70px)}
.contact-section,.gallery-section,.about-content-section{background:var(--cream)}
.contact-section .form-control{border-radius:10px;border-color:var(--line);padding:13px 15px;background:#fff}

@media(max-width:991px){
    .hero-slide{height:660px;min-height:0}
    .hero-content{max-width:610px}
    .about-text{padding-right:0}
    .who-content{border-radius:0;box-shadow:none}
}

@media(max-width:767px){
    .navbar{padding:10px 0}
    .navbar-brand img{height:36px}
    .hero-slide{height:570px;background-position:62% center}
    .hero-overlay{background:linear-gradient(90deg,rgba(24,16,17,.82),rgba(39,22,26,.52))}
    .hero-content{padding:50px 8px;text-align:left}
    .hero-content h1{font-size:48px}
    .hero-content p{font-size:15px}
    .hero-buttons{justify-content:flex-start}
    .btn-primary,.btn-outline-light{width:100%;text-align:center;padding:13px 24px}
    .about-home,.services-section,.testimonial-section,.blog-section{padding:72px 0}
    .about-text p{text-align:left}
    .about-image{padding:0 0 14px 14px}
    .about-image img,.about-image::before{border-radius:90px 90px 16px 16px}
    .servicesSlider{padding:0 6px}
    .testimonialSlider{padding:0 8px}
    .page-banner{min-height:250px}
}

/*==================================================
CONTACT PAGE REDESIGN
==================================================*/
.contact-page-redesign{padding:105px 0;background:var(--cream)}
.contact-intro{max-width:720px;margin:0 auto 52px}
.contact-eyebrow,.contact-card-heading span,.contact-map-heading span{display:block;font-family:'Poppins',sans-serif;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--brand);margin-bottom:10px}
.contact-intro h2{font-size:clamp(44px,5vw,64px);font-weight:600;line-height:1;margin-bottom:18px}
.contact-intro p{font-size:17px;color:var(--muted);margin:0}
.contact-form-card,.contact-details-card{height:100%;border:1px solid var(--line);border-radius:24px}
.contact-form-card{padding:44px;background:#fff;box-shadow:var(--shadow)}
.contact-details-card{padding:44px;background:linear-gradient(145deg,#302526,#20191a);color:#fff;box-shadow:0 18px 50px rgba(35,24,24,.18)}
.contact-card-heading{margin-bottom:30px}
.contact-card-heading h3,.contact-map-heading h3{font-size:36px;font-weight:600;margin:0;line-height:1.1}
.contact-page-redesign .form-label{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:7px}
.contact-page-redesign .form-control{height:54px;border-radius:11px;border:1px solid var(--line);background:#fdfbf9;padding:13px 16px;font-size:14px}
.contact-page-redesign textarea.form-control{height:132px;resize:vertical}
.contact-page-redesign .form-control::placeholder{color:#aaa19f}
.contact-page-redesign .form-check-label{font-size:12px;line-height:1.65;color:var(--muted)}
.contact-page-redesign .form-check-input{margin-top:5px}
.contact-page-redesign .btn-contact{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 28px;text-transform:none;letter-spacing:0;min-width:180px}
.contact-detail-row{display:flex;align-items:flex-start;gap:16px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.11);color:#fff}
.contact-detail-row:hover{color:#fff;transform:translateX(4px)}
.contact-detail-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:50%;background:rgba(255,255,255,.09);color:#f29cc3}
.contact-detail-row>span:last-child{display:flex;flex-direction:column;min-width:0}
.contact-detail-row small,.contact-hours small{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:4px}
.contact-detail-row strong{font-size:14px;font-weight:500;line-height:1.7;overflow-wrap:anywhere}
.contact-hours{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:28px 0}
.contact-hours>div{display:flex;flex-direction:column}
.contact-hours strong{font-size:15px;font-weight:500}
.contact-hours>span{font-family:'Cormorant Garamond',serif;font-size:20px;color:#f4bfd5;white-space:nowrap}
.contact-call-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;border-radius:50px;background:#fff;color:var(--ink);font-size:13px;font-weight:600}
.contact-call-button:hover{background:var(--brand);color:#fff;transform:translateY(-2px)}
.contact-map-wrap{margin-top:44px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:var(--shadow)}
.contact-map-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px 26px}
.contact-map-heading h3{font-size:30px}
.contact-map-heading a{color:var(--brand);font-size:13px;font-weight:600;white-space:nowrap}
.contact-map-heading a:hover{color:var(--brand-dark)}
.contact-page-redesign .map-box{height:430px;border-radius:16px;overflow:hidden}

@media(max-width:991px){
    .contact-page-redesign{padding:80px 0}
    .contact-form-card,.contact-details-card{padding:36px}
}

@media(max-width:575px){
    .contact-page-redesign{padding:65px 0}
    .contact-intro{margin-bottom:35px;text-align:left!important}
    .contact-intro h2{font-size:42px}
    .contact-intro p{font-size:15px}
    .contact-form-card,.contact-details-card{padding:27px 22px;border-radius:18px}
    .contact-card-heading h3{font-size:31px}
    .contact-page-redesign .btn-contact{width:100%}
    .contact-hours{align-items:flex-start;flex-direction:column}
    .contact-map-wrap{padding:10px;border-radius:18px}
    .contact-map-heading{align-items:flex-start;flex-direction:column;padding:16px 12px 22px}
    .contact-page-redesign .map-box{height:340px;border-radius:12px}
}

/*==================================================
ABOUT PAGE REDESIGN
==================================================*/
.about-page-redesign{padding:110px 0;background:var(--cream)}
.about-story-row{margin-bottom:120px}
.about-story-image{position:relative;padding:0 28px 28px 0}
.about-story-image::before{content:'';position:absolute;inset:28px 0 0 28px;border:1px solid rgba(236,85,152,.32);border-radius:22px}
.about-story-image img{position:relative;width:100%;height:570px;object-fit:cover;border-radius:22px;box-shadow:var(--shadow)}
.about-experience-badge{position:absolute;right:-5px;bottom:0;display:flex;align-items:center;gap:12px;padding:19px 23px;border-radius:16px;background:var(--brand);color:#fff;box-shadow:0 15px 30px rgba(236,85,152,.25)}
.about-experience-badge strong{font-family:'Cormorant Garamond',serif;font-size:46px;line-height:.8}
.about-experience-badge span{font-size:10px;font-weight:600;line-height:1.45;letter-spacing:.08em;text-transform:uppercase}
.about-eyebrow{display:block;font-family:'Poppins',sans-serif;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--brand);margin-bottom:14px}
.about-story-content{padding-left:24px}
.about-story-content h2,.about-section-heading h2,.about-cta-panel h2{font-size:clamp(44px,5vw,64px);font-weight:600;line-height:1.02;color:var(--ink);margin-bottom:26px}
.about-story-content p{font-size:16px;line-height:1.9;color:var(--muted);margin-bottom:20px}
.about-quick-points{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin:28px 0 34px}
.about-quick-points span{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:var(--ink)}
.about-quick-points i{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:var(--blush);color:var(--brand)}
.about-values-section{margin-bottom:120px}
.about-expanded-copy{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:-55px 0 120px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(65,39,34,.06);overflow:hidden}
.about-expanded-copy p{margin:0;padding:30px;font-size:13px;line-height:1.85;color:var(--muted);border-right:1px solid var(--line)}
.about-expanded-copy p:last-child{border-right:0}
.about-section-heading{max-width:720px;margin:0 auto 48px}
.about-section-heading h2{margin-bottom:14px}
.about-section-heading p,.about-treatments-intro{color:var(--muted);margin:0}
.about-value-card{position:relative;height:100%;padding:38px 32px;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:.35s}
.about-value-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.about-value-number{position:absolute;right:22px;top:17px;font-family:'Cormorant Garamond',serif;font-size:52px;color:rgba(236,85,152,.08)}
.about-value-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--blush);color:var(--brand);font-size:24px;margin-bottom:26px}
.about-value-card h3{font-size:29px;font-weight:600;margin-bottom:12px}
.about-value-card p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}
.about-therapies-section{margin-bottom:90px}
.about-therapies-section .about-section-heading{max-width:none;margin:0}
.therapy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.therapy-grid a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;min-height:86px;padding:17px 19px;background:#fff;border:1px solid var(--line);border-radius:14px;color:var(--ink);font-size:14px;font-weight:600}
.therapy-grid a>i:first-child{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--blush);color:var(--brand);font-size:17px}
.therapy-grid a>i:last-child{color:#b4a8a5;font-size:13px;transition:.3s}
.therapy-grid a:hover{border-color:rgba(236,85,152,.38);box-shadow:0 12px 28px rgba(65,39,34,.08);transform:translateY(-3px);color:var(--brand)}
.therapy-grid a:hover>i:last-child{color:var(--brand);transform:translate(2px,-2px)}
.about-cta-panel{display:flex;align-items:center;justify-content:space-between;gap:45px;padding:55px 60px;border-radius:24px;background:linear-gradient(135deg,#302526,#20191a);color:#fff;box-shadow:0 18px 50px rgba(35,24,24,.18)}
.about-cta-panel .about-eyebrow{color:#ec5598}
.about-cta-panel h2{font-size:48px;color:#fff;margin-bottom:10px}
.about-cta-panel p{color:rgba(255,255,255,.65);margin:0}
.about-cta-actions{display:flex;align-items:center;gap:14px;flex:0 0 auto}
.about-call-link{display:inline-flex;align-items:center;gap:9px;color:#fff;font-size:14px;font-weight:600;padding:13px 0}
.about-call-link:hover{color:#ec5598}

@media(max-width:991px){
    .about-page-redesign{padding:85px 0}
    .about-story-row,.about-values-section{margin-bottom:90px}
    .about-story-content{padding-left:0}
    .about-story-image img{height:500px}
    .therapy-grid{grid-template-columns:repeat(2,1fr)}
    .about-cta-panel{align-items:flex-start;flex-direction:column;padding:48px}
    .about-expanded-copy{grid-template-columns:1fr;margin-top:-35px;margin-bottom:90px}
    .about-expanded-copy p{border-right:0;border-bottom:1px solid var(--line)}
    .about-expanded-copy p:last-child{border-bottom:0}
}

@media(max-width:575px){
    .about-page-redesign{padding:65px 0}
    .about-story-row,.about-values-section{margin-bottom:70px}
    .about-story-image{padding:0 14px 18px 0}
    .about-story-image::before{inset:18px 0 0 14px}
    .about-story-image img{height:390px;border-radius:16px}
    .about-experience-badge{right:0;padding:16px 18px}
    .about-story-content h2,.about-section-heading h2{font-size:42px}
    .about-quick-points{grid-template-columns:1fr}
    .about-value-card{padding:30px 25px}
    .therapy-grid{grid-template-columns:1fr}
    .about-cta-panel{padding:36px 25px;border-radius:18px}
    .about-cta-panel h2{font-size:40px}
    .about-cta-actions{align-items:stretch;flex-direction:column;width:100%}
    .about-cta-actions .theme-btn{justify-content:center}
}

/*==================================================
GALLERY PAGE REDESIGN
==================================================*/
.gallery-page-redesign{padding:105px 0;background:var(--cream)}
.gallery-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);align-items:end;gap:70px;margin-bottom:52px}
.gallery-eyebrow{display:block;font-family:'Poppins',sans-serif;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--brand);margin-bottom:13px}
.gallery-intro h2,.gallery-visit-panel h2{font-size:clamp(44px,5vw,64px);font-weight:600;line-height:1.02;color:var(--ink);margin:0}
.gallery-intro p{color:var(--muted);line-height:1.85;margin:0}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:225px;grid-auto-flow:dense;gap:18px}
.gallery-page-redesign .gallery-card{height:100%;border-radius:16px;background:#e8dfda;box-shadow:0 8px 24px rgba(65,39,34,.06)}
.gallery-page-redesign .gallery-card-featured{grid-column:span 2;grid-row:span 2}
.gallery-page-redesign .gallery-card::before,.gallery-page-redesign .gallery-card::after{display:none}
.gallery-page-redesign .gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease,filter .4s ease}
.gallery-card-overlay{position:absolute;inset:auto 14px 14px 14px;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border:1px solid rgba(255,255,255,.25);border-radius:10px;background:rgba(31,23,23,.72);backdrop-filter:blur(8px);color:#fff;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translateY(9px);transition:.35s}
.gallery-card-overlay i{font-size:14px}
.gallery-card:hover img{transform:scale(1.045);filter:saturate(.9) brightness(.82)}
.gallery-card:hover .gallery-card-overlay,.gallery-card:focus .gallery-card-overlay{opacity:1;transform:translateY(0)}
.gallery-visit-panel{display:flex;align-items:center;justify-content:space-between;gap:45px;margin-top:75px;padding:52px 58px;border-radius:24px;background:linear-gradient(135deg,#302526,#20191a);color:#fff;box-shadow:0 18px 50px rgba(35,24,24,.18)}
.gallery-visit-panel .gallery-eyebrow{color:#ec5598}
.gallery-visit-panel h2{font-size:46px;color:#fff;margin-bottom:10px}
.gallery-visit-panel p{color:rgba(255,255,255,.65);margin:0}
.gallery-visit-actions{display:flex;align-items:center;gap:16px;flex:0 0 auto}
.gallery-phone-link{display:inline-flex;align-items:center;gap:9px;padding:12px 0;color:#fff;font-size:14px;font-weight:600}
.gallery-phone-link:hover{color:#ec5598}

@media(max-width:991px){
    .gallery-page-redesign{padding:80px 0}
    .gallery-intro{grid-template-columns:1fr;gap:18px}
    .gallery-intro p{max-width:650px}
    .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:230px}
    .gallery-visit-panel{align-items:flex-start;flex-direction:column;padding:45px}
}

@media(max-width:575px){
    .gallery-page-redesign{padding:65px 0}
    .gallery-intro{margin-bottom:35px}
    .gallery-intro h2{font-size:42px}
    .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:155px;gap:10px}
    .gallery-page-redesign .gallery-card{border-radius:10px}
    .gallery-page-redesign .gallery-card-featured{grid-column:span 2;grid-row:span 2}
    .gallery-card-overlay{inset:auto 8px 8px 8px;padding:9px 10px;opacity:1;transform:none;font-size:9px}
    .gallery-visit-panel{margin-top:50px;padding:35px 24px;border-radius:18px}
    .gallery-visit-panel h2{font-size:40px}
    .gallery-visit-actions{align-items:stretch;flex-direction:column;width:100%}
    .gallery-visit-actions .theme-btn{justify-content:center}
}

/*==================================================
PACKAGE / TREATMENT PAGE REDESIGN
==================================================*/
.package-page-redesign{position:relative;padding:105px 0 85px;background:var(--cream)}
.package-page-redesign::before{content:'';position:absolute;left:0;right:0;top:0;height:250px;background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,0) 100%);pointer-events:none}
.package-page-redesign .container{position:relative}
.package-page-redesign .about-content{position:relative;padding:60px 68px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}
.package-page-redesign .about-content::before{content:'ABOUT THIS TREATMENT';display:block;font-family:'Poppins',sans-serif;font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--brand);margin-bottom:18px}
.package-page-redesign .about-content::after{content:'';position:absolute;left:0;top:58px;width:4px;height:68px;border-radius:0 4px 4px 0;background:var(--brand)}
.package-page-redesign .about-content p{font-size:16px;line-height:1.95;color:var(--muted);margin-bottom:23px}
.package-page-redesign .about-content p:first-of-type{font-family:'Cormorant Garamond',serif;font-size:25px;line-height:1.55;color:var(--ink)}
.package-page-redesign .about-content p:last-child{margin-bottom:0}
.package-page-redesign .about-content h2,.package-page-redesign .about-content h3,.package-page-redesign .about-content h4{font-size:34px;font-weight:600;color:var(--ink);margin:38px 0 18px}
.package-page-redesign .about-content ul,.package-page-redesign .about-content ol{display:grid;gap:10px;padding-left:22px;color:var(--muted)}
.package-page-redesign .about-content li{padding-left:6px;line-height:1.8}
.package-page-redesign .about-content strong{color:var(--ink)}
.package-visit-section{padding:0 0 105px;background:var(--cream)}
.package-visit-card{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:65px;padding:58px 62px;border-radius:24px;background:linear-gradient(135deg,#302526,#20191a);color:#fff;box-shadow:0 18px 50px rgba(35,24,24,.18)}
.package-eyebrow,.package-booking-label{display:block;font-family:'Poppins',sans-serif;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#ec5598;margin-bottom:13px}
.package-visit-copy h2{font-size:clamp(42px,5vw,58px);font-weight:600;line-height:1;color:#fff;margin-bottom:18px}
.package-visit-copy>p{max-width:650px;color:rgba(255,255,255,.65);line-height:1.8;margin-bottom:26px}
.package-trust-list{display:flex;flex-wrap:wrap;gap:12px 22px}
.package-trust-list span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:rgba(255,255,255,.88)}
.package-trust-list i{color:#ec5598}
.package-booking-box{padding:30px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.06)}
.package-booking-box strong{display:block;font-family:'Cormorant Garamond',serif;font-size:30px;line-height:1.1;margin-bottom:6px}
.package-booking-box>p{font-size:13px;color:rgba(255,255,255,.58);margin-bottom:22px}
.package-booking-box .theme-btn{display:flex;justify-content:center;width:100%;padding:13px 20px}
.package-phone-link{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:17px;color:#fff;font-size:13px;font-weight:600}
.package-phone-link:hover{color:#ec5598}

@media(max-width:991px){
    .package-page-redesign{padding:80px 0 65px}
    .package-page-redesign .about-content{padding:48px}
    .package-visit-card{grid-template-columns:1fr;padding:48px;gap:38px}
}

@media(max-width:575px){
    .package-page-redesign{padding:65px 0 50px}
    .package-page-redesign .about-content{padding:36px 24px;border-radius:18px}
    .package-page-redesign .about-content::after{top:34px;height:58px}
    .package-page-redesign .about-content p{font-size:15px;line-height:1.85}
    .package-page-redesign .about-content p:first-of-type{font-size:22px;line-height:1.55}
    .package-visit-section{padding-bottom:65px}
    .package-visit-card{padding:36px 24px;border-radius:18px}
    .package-visit-copy h2{font-size:40px}
    .package-trust-list{align-items:flex-start;flex-direction:column}
    .package-booking-box{padding:25px 20px}
}

/*==================================================
PREMIUM HOMEPAGE REFINEMENTS
==================================================*/
.hero-section{background:#171213}
.hero-section .hero-slide{background-color:#171213}
.hero-section .swiper-pagination{bottom:28px!important}
.hero-section .swiper-pagination-bullet{width:9px;height:9px;border:1px solid rgba(255,255,255,.75);background:rgba(255,255,255,.4)}
.hero-section .swiper-pagination-bullet-active{width:30px;border-color:var(--brand);background:var(--brand)}
.home-assurance{position:relative;z-index:20;margin-top:-38px;background:transparent}
.home-assurance-grid{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 55px rgba(65,39,34,.14);overflow:hidden}
.home-assurance-item{display:flex;align-items:center;gap:15px;padding:25px 30px;border-right:1px solid var(--line)}
.home-assurance-item:last-child{border-right:0}
.home-assurance-icon{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:50%;background:var(--blush);color:var(--brand);font-size:19px}
.home-assurance-item>div{display:flex;flex-direction:column}
.home-assurance-item strong{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:600;line-height:1.2;color:var(--ink)}
.home-assurance-item small{font-size:11px;color:var(--muted);margin-top:4px}
.about-home{padding-top:145px!important;padding-bottom:125px!important}
.about-home .row{gap:0}
.about-text h2{font-size:clamp(48px,5vw,66px);line-height:1}
.about-text p{font-size:15px;line-height:1.95;color:var(--muted)}
.about-image::after{content:'A quiet space to reconnect with yourself';position:absolute;left:-25px;bottom:8px;max-width:210px;padding:18px 20px;border-radius:13px;background:#fff;box-shadow:var(--shadow);font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;line-height:1.3;color:var(--ink)}
.services-section{padding:120px 0;background:linear-gradient(180deg,#fff 0%,#fcf8f5 100%)}
.services-section .section-title,.testimonial-section .section-title{max-width:720px;margin:0 auto 58px}
.services-section .section-title p,.testimonial-section .section-title p{margin:17px auto 0;max-width:620px;color:var(--muted);font-size:15px;line-height:1.8}
.services-section .section-title h2::before{content:'SIGNATURE WELLNESS'}
.service-card{border-radius:20px;box-shadow:0 15px 40px rgba(65,39,34,.07)}
.service-card:hover{transform:translateY(-9px);box-shadow:0 24px 55px rgba(65,39,34,.14)}
.servicesSlider .service-title h4{font-size:21px;text-transform:uppercase;letter-spacing:.03em}
.service-content{padding:24px 24px 32px}
.service-content p{font-size:13px;line-height:1.8;color:var(--muted)}
.service-btn{padding:11px 26px;background:var(--brand);box-shadow:0 8px 20px rgba(236,85,152,.18)}
.cta-section{padding:145px 0}
.cta-content{max-width:680px}
.cta-content h2{font-size:clamp(48px,5vw,66px);font-weight:600}
.testimonial-section{padding:120px 0;background:var(--cream)}
.testimonial-section h2::before{content:'GUEST STORIES';display:block;font-family:'Poppins',sans-serif;font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--brand);margin-bottom:14px}
.testimonial-item{position:relative;padding:45px 42px;border-radius:20px}
.testimonial-item::before{content:'â€œ';position:absolute;left:22px;top:2px;font-family:'Cormorant Garamond',serif;font-size:82px;line-height:1;color:rgba(236,85,152,.13)}
.testimonial-item p{position:relative;color:var(--muted)}
.testimonial-item h5{font-size:22px;color:var(--ink)}
.who-we-are{background:var(--cream);padding:110px 0}
.who-we-are .container-fluid{max-width:1320px;padding-left:24px!important;padding-right:24px!important}
.who-we-are .row{border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}
.who-image{height:620px}
.who-content{left:-85px;padding:62px;border-radius:20px}
.who-content h2::before{content:'OUR STORY';display:block;font-family:'Poppins',sans-serif;font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--brand);margin-bottom:14px}
.why-choose-section{padding:110px 0;background:#fff}
.why-choose-section>.container-fluid{max-width:1320px;padding-left:24px!important;padding-right:24px!important}
.why-choose-section>.container-fluid>.row{border-radius:24px;overflow:hidden;background:var(--cream)}
.why-left{padding:65px 50px}
.why-section-heading{margin-bottom:28px;padding:0 10px}
.why-section-heading>span{display:block;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--brand);margin-bottom:12px}
.why-section-heading h2{font-size:44px;font-weight:600;line-height:1.05;margin-bottom:14px}
.why-section-heading p{font-size:13px;line-height:1.75;color:var(--muted);margin:0}
.feature-box{padding:25px 19px;margin:8px;height:calc(100% - 16px);background:#fff}
.feature-icon{width:62px;height:62px;margin:0 auto 17px}
.feature-box h3{font-size:22px}
.feature-box p{font-size:12px;line-height:1.7}
.why-image,.why-image img{height:100%;min-height:720px;object-fit:cover}
.blog-section{padding:120px 0;background:var(--cream)}
.blog-section .section-title h2::before{content:'WELLNESS JOURNAL'}
.blog-card{border-radius:20px;box-shadow:0 14px 38px rgba(65,39,34,.07)}
.blog-content{padding:28px}

@media(max-width:991px){
    .home-assurance{margin-top:0;background:#fff}
    .home-assurance-grid{border-radius:0;border-left:0;border-right:0;box-shadow:none}
    .home-assurance-item{padding:22px 18px}
    .about-home{padding-top:95px!important}
    .about-image::after{left:20px}
    .who-we-are,.why-choose-section{padding:80px 0}
    .who-content{left:auto;border-radius:0}
    .why-image,.why-image img{min-height:500px}
}

@media(max-width:767px){
    .hero-section .hero-slide{height:auto!important;min-height:0!important;aspect-ratio:1920/840;background-size:cover;background-position:center}
    .hero-section .swiper-pagination{bottom:10px!important}
    .home-assurance-grid{display:none}
    .home-assurance-item{border-right:0;border-bottom:1px solid var(--line);padding:18px 22px}
    .home-assurance-item:last-child{border-bottom:0}
    .about-home{padding-top:32px!important;padding-bottom:75px!important}
    .about-home .row{--bs-gutter-y:0}
    .about-home .about-image-column{display:none}
    .about-home .about-text{margin-top:0}
    .about-home .about-image{display:none}
    .servicesSlider .service-title h4{font-size:18px}
    .about-image::after{display:none}
    .services-section,.testimonial-section,.blog-section{padding:80px 0}
    .cta-section{padding:95px 0}
    .who-we-are,.why-choose-section{padding:65px 0}
    .who-we-are .container-fluid,.why-choose-section>.container-fluid{padding-left:12px!important;padding-right:12px!important}
    .who-content{padding:38px 25px}
    .why-left{padding:45px 20px}
    .why-section-heading h2{font-size:38px}
    .feature-box{margin:7px 0;height:auto}
    .why-image,.why-image img{min-height:360px}
}

/* Readability and contrast refinements */
body{color:#332d2b}
p{color:var(--muted)}
.about-text p,.who-content p,.feature-box p,.service-content p,.blog-content p,.testimonial-item p,.about-content p{color:var(--muted)}
.services-section .section-title p,.testimonial-section .section-title p,.blog-section .section-title p,.why-section-heading p{color:#574f4d}
.home-assurance-item small,.blog-date{color:#665c59}
.nav-link{color:#241f1e}
.contact-page-redesign .form-check-label{color:#574f4d}
.contact-page-redesign .form-control::placeholder{color:#786f6c;opacity:1}
.package-page-redesign .about-content p{color:#574f4d}
.about-value-card p,.about-treatments-intro,.gallery-intro p{color:#574f4d}
.footer-widget p,.footer-contact span,.footer-contact a,.working-hours{color:rgba(255,255,255,.78)}
.package-visit-copy>p,.gallery-visit-panel p,.about-cta-panel p{color:rgba(255,255,255,.78)}
.contact-detail-row small,.contact-hours small{color:rgba(255,255,255,.72)}
.contact-detail-row strong{color:#fff}

@media(max-width:767px){
    body{font-size:15px}
    .service-content p,.feature-box p,.home-assurance-item small{font-size:13px}
}

/* Structured treatment content from the approved website copy */
.treatment-benefits{margin:42px 0;padding:38px 40px;border-radius:18px;background:var(--cream);border:1px solid var(--line)}
.treatment-benefits-label{display:block;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--brand);margin-bottom:9px}
.package-page-redesign .treatment-benefits h2{font-size:32px;margin:0 0 24px}
.treatment-benefits ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 25px;padding:0;margin:0;list-style:none}
.treatment-benefits li{display:flex;align-items:flex-start;gap:10px;padding:0!important;font-size:14px;color:#4f4745}
.treatment-benefits li i{display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:50%;background:#fff;color:var(--brand);box-shadow:0 4px 12px rgba(65,39,34,.08)}
.treatment-note{display:flex;align-items:flex-start;gap:14px;margin:32px 0;padding:22px 24px;border-left:4px solid var(--brand);border-radius:10px;background:rgba(236,85,152,.07)}
.treatment-note>i{color:var(--brand);font-size:20px;margin-top:2px}
.package-page-redesign .treatment-note p{font-size:13px;line-height:1.75;margin:0;color:#554b49}
.package-page-redesign .treatment-book-line{font-family:'Cormorant Garamond',serif;font-size:27px!important;font-weight:600;color:var(--brand)!important;margin-top:34px}

@media(max-width:575px){
    .treatment-benefits{padding:28px 22px;margin:32px 0}
    .treatment-benefits ul{grid-template-columns:1fr}
    .package-page-redesign .treatment-benefits h2{font-size:27px}
}

/* Premium homepage opening-hours CTA */
.cta-section{padding:110px 0!important;background:var(--cream)!important;overflow:visible}
.cta-premium-card{display:grid;grid-template-columns:1.05fr .95fr;min-height:520px;border-radius:26px;background:#241c1d;box-shadow:0 24px 65px rgba(41,27,28,.18);overflow:hidden}
.cta-copy-panel{display:flex;align-items:center;padding:65px}
.cta-content{max-width:560px;text-align:left;color:#fff}
.cta-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#ec5598;margin-bottom:17px}
.cta-content h2{font-size:clamp(48px,5vw,66px);font-weight:600;line-height:.98;letter-spacing:-.025em;margin-bottom:30px}
.cta-hours-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:25px}
.cta-hours-row span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.66)}
.cta-hours-row strong{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:600;color:#f4bfd5;white-space:nowrap}
.cta-content p{max-width:520px;margin:0 0 30px;font-size:14px;line-height:1.85;font-weight:400;color:rgba(255,255,255,.74)}
.cta-btn{display:inline-flex;align-items:center;gap:11px;padding:13px 25px;border-radius:50px;background:var(--brand);font-size:13px;font-weight:600;box-shadow:0 10px 25px rgba(236,85,152,.24)}
.cta-btn:hover{background:#fff;color:var(--ink);transform:translateY(-2px)}
.cta-visual{min-height:520px;background:url('../images/gallery/2.jpg') center/cover no-repeat}

@media(max-width:991px){
    .cta-premium-card{grid-template-columns:1fr}
    .cta-copy-panel{padding:55px}
    .cta-visual{min-height:390px}
}

@media(max-width:575px){
    .cta-section{padding:70px 12px!important}
    .cta-premium-card{border-radius:19px}
    .cta-copy-panel{padding:39px 25px}
    .cta-content h2{font-size:42px}
    .cta-hours-row{align-items:flex-start;flex-direction:column;gap:7px}
    .cta-hours-row strong{font-size:21px}
    .cta-btn{justify-content:center;width:100%}
    .cta-visual{min-height:280px;background-position:center}
}

