@charset "utf-8";

/* CSS Document */

/* Author : Binod Raj Dhami */



:root{

    --theme-primary-color: #ffffff;

    --theme-secondary-color: #000000;

    --theme-pink-color: #FF4F9D;

    --theme-blue-color: #6A0066;

    --theme-title-color: #00173C;

    --theme-text-color: #666666;

    --theme-grey-color: #6B7280;

    --theme-background-color: #F6F6F6;

    --theme-font-merriweather: "Merriweather", serif;

    --theme-font-poppins: "Poppins", sans-serif;

    --transition: all ease-in-out 0.3s;

}



*,

*::before,

*::after {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

}



/* ================================================== Reset specific tags further */

html, body,

p, ul, ol, dl, li,

figure, blockquote,

span, a {

    margin: 0;

    padding: 0;

    font-family: var(--theme-font-poppins);

}



a{

    text-decoration: none;

}



h1, h2, h3, h4, h5, h6{

    margin: 0;

    padding: 0

    font-family: var(--theme-font-merriweather);

}



/* ================================================== Apply the font globally */

body {

    position: relative;

    margin: 0;

    padding: 0;

    font-size: 14px;

    color: var(--theme-secondary-color);

    font-family: var(--theme-font-merriweather);

    background: var(--theme-primary-color);

}





/* ================================================== Go To Top Section */

#back-top { 

    display: block; 

    position: fixed; 

    bottom: 10px; 

    right: 15px; 

    text-align: center; 

    z-index: 9; 

}



#back-top a { 

    display: block; 

    text-decoration: none;

    border: none;

    background: transparent;

}



#back-top a .fa-solid {

    display: flex;

    justify-content: center;

    align-items: center;

    width: 50px; 

    height: 50px; 

    font-size: 14px; 

    border-radius: 5px; 

    opacity: 1; 

    color: var(--theme-primary-color); 

    background: var(--theme-pink-color);

    -webkit-transition: all linear 0.3s; 

    -moz-transition: all linear 0.3s; 

    transition: all linear 0.3s; 

}



#back-top a .fa-solid:hover { 

    background: var(--theme-pink-color); 

    color: var(--theme-primary-color); 

    transform: scale(1.05, 1.05);  

}



.wrapper{

    position: relative;

    overflow: hidden;

}



/* ================================================== Header Section */

.site-header-top{

    padding: 10px 0;

    background: var(--theme-pink-color);

}



.site-header-top .container{

    display: flex;

    justify-content: space-between;

    align-items: center;

}



.site-header-top-contact-list{

    display: flex;

    align-items: center;

    gap: 20px;

}



.site-header-top-contact-list-item{

    display: flex;

    align-items: center;

    list-style: none;

    gap: 5px;

}



.site-header-top-contact-list-item .fa-solid{

    color: var(--theme-primary-color);

}



.site-header-top-contact-list-item span{

    font-size: 14px;

    font-weight: 400;

    font-family: var(--theme-font-poppins);

    color: var(--theme-primary-color);

}



.site-header-top-social-link{

    display: flex;

    justify-content: flex-end;

    align-items: 10px;

    gap: 10px;

}



.site-header-top-social-link-item{

    list-style: none;

}



.site-header-top-social-link-item a .fa-brands{

    color: var(--theme-primary-color);

    font-size: 14px;

}



.site-header-bottom{

    padding: 15px 0;

    background: var(--theme-primary-color);

}



.site-header-bottom .container{

    display: flex;

    justify-content: space-between;

    align-items: center;

    gap: 100px;

}



.site-header-bottom-logo{

    margin-right: auto;

}



.site-header-bottom-logo img{

    width: 200px;

    height: auto;

}



.site-header-bottom-navigation{

    width: 100%;

}



#mega-menu-wrap-header-menu{

    background: transparent;

}



#mega-menu-wrap-header-menu #mega-menu-header-menu{

    display: flex;

    align-items: center;

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link{

    height: inherit;

    font-weight: 600;

    font-size: 16px;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link:hover,

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link:focus,

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link{

    color: var(--theme-pink-color);

    background: transparent;

    font-weight: 600;

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:last-child{

    margin-left: auto;

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:last-child > a.mega-menu-link{

    display: inline-block;

    padding: 10px 20px;

    color: var(--theme-primary-color);

    background: var(--theme-pink-color);

    border: var(--theme-pink-color) solid 1px;

    text-transform: uppercase;

    border-radius: 5px;

    font-weight: 600;

    font-size: 14px;

    line-height: 30px;

    transition: var(--transition);

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:last-child > a.mega-menu-link:hover{  

    background: var(--theme-primary-color);

    color: var(--theme-pink-color);

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:last-child > a.mega-menu-link:before{

    content: '\f1d8';

    font-family: 'fontawesome';

}



/* Drop-down Menu */

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link,

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-toggle-on:hover > a.mega-menu-link{

    background: var(--theme-primary-color);

    color: var(--theme-pink-color);

    font-weight: 600;

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-animating > a.mega-menu-link{

    color: var(--theme-title-color);

    background: var(--theme-primary-color);

    font-weight: 600;

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-flyout ul.mega-sub-menu{

    border-top: var(--theme-primary-color) solid 20px;

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link{

    padding: 5px 15px;

    font-size: 16px;

    font-weight: 600;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

    background: var(--theme-primary-color);

    border-top: rgba(0, 0, 0, 0.1) solid 1px;

}



#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link:hover,

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link:focus{

    font-weight: 600;

    color: var(--theme-pink-color);

    background: var(--theme-primary-color);

}





/* ================================================== Banner Section */

.banner{

    position: relative;

}



.banner-image{

    position: relative;

    z-index: 1;

}



.banner-image img{

    width: 100%;

    height: auto;

}



.banner-container{

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    z-index: 9;

    display: flex;

    align-items: center;

}



.banner-content .banner-subtitle{

    font-size: 18px;

    font-weight: 400;

    color: var(--theme-pink-color);

    font-family: var(--theme-font-poppins);

}



.banner-content .banner-title{

    font-size: 60px;

    font-weight: 700;

    line-height: 80px;

    display: flex;

    flex-direction: column;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-merriweather);

    margin: 15px 0;

}



.banner-content .banner-text{

    margin-bottom: 15px;

    font-size: 16px;

    line-height: 30px;

    font-weight: 400;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-poppins);

}



.banner-content .banner-btn{

    display: inline-block;

    margin-top: 15px;

}



.banner-content .banner-btn a{

    display: flex;

    justify-content: center;

    align-items: center;

    gap: 10px;

    padding: 15px 30px;

    background: var(--theme-primary-color);

    color: var(--theme-pink-color);

    border-radius: 5px;

}



.banner-content .banner-btn a span{

    color: var(--theme-pink-color);

    font-size: 16px;

    font-weight: 600;

}



.banner-content .banner-btn a solid{

    font-size: 14px;

}



#bannerSlider .owl-dots{

    position: absolute;

    top: 50%;

    right: 50px;

    transform: translateY(-50%);

    margin-top: 0;

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

}



#bannerSlider .owl-dots .owl-dot span{

    width: 15px;

    height: 15px;

    background: var(--theme-pink-color);

    opacity: 1;

    transition: var(--transition);

}



#bannerSlider .owl-dots .owl-dot.active span{

    background: var(--theme-pink-color);

    height: 50px;

}



/* ================================================== Common Section */

.section-title{

    margin-bottom: 30px;

}



.section-heading-subtitle{

    position: relative;

    display: inline-block;

    font-size: 18px;

    font-weight: 400;

    color: var(--theme-pink-color);

    font-family: var(--theme-font-merriweather);

}



.section-heading-subtitle::before{

    content: '';

    position: absolute;

    top: 50%;

    right: calc(100% + 10px);

    transform: translateY(-50%);

    height: 5px;

    width: 30px;

    border-radius: 5px;

    background: var(--theme-pink-color);

}



.section-heading-subtitle::after{

    content: '';

    position: absolute;

    top: 50%;

    left: calc(100% + 10px);

    transform: translateY(-50%);

    height: 5px;

    width: 30px;

    border-radius: 5px;

    background: var(--theme-pink-color);

}



.section-heading-title{

    font-size: 36px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}





/* ================================================== Welcome Section */

.welcome{

    padding: 80px 0;

    background: var(--theme-primary-color);

}



.welcome-thumbnails{

    position: relative;

    padding-right: 50px;

}



.welcome-thumbnails img{

    width: 100%;

    height: auto;

}



.welcome-experience {

    position: absolute;

    top: 30px;

    right: 50px;

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 10px 15px;

    background-color: var(--theme-primary-color);

    box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.25);

    border-radius: 4px;

    z-index: 9;

}



.welcome-experience-value{

    font-size: 36px;

    font-weight: 700;

    color: var(--theme-pink-color);

    font-family: var(--theme-font-poppins);

}



.welcome-experience-text{

    display: flex;

    flex-direction: column;

    gap: 0;

    font-size: 18px;

    color: var(--theme-title-color);

    font-family: var(--theme-font-poppins);

    line-height: 24px;

}



.welcome .section-heading-subtitle::before{

    display: none;

}



.welcome .section-heading-title{

    font-size: 58px;

    font-weight: 800;

    line-height: 70px;

    margin-bottom: 15px;

}



.welcome-content-section-text{

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

    font-size: 16px;

    line-height: 36px;

    margin-bottom: 15px;

}



.welcome-content-section-link{

    display: inline-block;

    margin-top: 15px;

}



.welcome-content-section-link a{

    display: flex;

    justify-content: center;

    align-items: center;

    gap: 10px;

    padding: 15px 30px;

    background: var(--theme-pink-color);

    color: var(--theme-primary-color);

    border-radius: 5px;

    transition: var(--transition);

}



.welcome-content-section-link a span{

    color: var(--theme-primary-color);

    font-size: 16px;

    font-weight: 600;

}



.welcome-content-section-link a solid{

    font-size: 14px;

}



.welcome-content-section-link a:hover{

    background: var(--theme-blue-color);

}



/* ================================================== Services Section */

.service-types{

    padding: 80px 0 50px;

    background: var(--theme-background-color);    

}



.service-types .section-title{

    text-align: center;

}



.service-types-card{

    position: relative;

    margin-bottom: 30px;

    transition: var(--transition);

}



.service-types-card:hover{

    transform: translateY(-5px);

}



.service-types-card-thumbnail{

    position: relative;

    overflow: hidden;

    border-top-left-radius: 15px;

    border-top-right-radius: 15px;

}



.service-types-card-thumbnail img{

    width: 100%;

    height: auto;

}



.service-types-card-content{

    position: relative;

    padding: 30px;

    padding-top: 60px;

    text-align: center;

    border-bottom-left-radius: 15px;

    border-bottom-right-radius: 15px;

    background: var(--theme-primary-color);

    border: rgba(255, 79, 157, 0.15) solid 1px;

    border-bottom: var(--theme-pink-color) solid 5px;

}



.service-types-card-content-icon{

    position: absolute;

    top: 0;

    left: 50%;

    transform: translate(-50%,-50%);

    overflow: hidden;

    width: 70px;

    height: 70px;

    border-radius: 50%;

    display: flex;

    justify-content: center;

    align-items: center;

    padding: 15px;

    background: var(--theme-primary-color);

    border: var(--theme-pink-color) solid 2px;

}



.service-types-card-content img{

    width: 100%;

    height: auto;

}



.service-types-card-content-title a{

    display: inline-block;

    margin-bottom: 15px;

    font-size: 24px;

    font-weight: 700;

    transition: var(--transition);

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.service-types-card-content-title a:hover{

    color: var(--theme-pink-color);

}



.service-types-card-content-short-description{

    font-size: 16px;

    font-weight: 400;

    line-height: 30px;

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

    font-family: var(--theme-font-poppins);

}



.service-types-card-content-link{

    display: inline-block;

    margin-top: 15px;

}



.service-types-card-content-link a{

    display: flex;

    justify-content: center;

    align-items: center;

    gap: 10px;

    padding: 12px 20px;

    border-radius: 5px;

    border: var(--theme-pink-color) solid 1px;

    background: var(--theme-primary-color);

    color: var(--theme-pink-color);

    transition: var(--transition);

}



.service-types-card-content-link a span{

    font-size: 16px;

    font-weight: 400;

}



.service-types-card-content-link a solid{

    font-size: 14px;

}



.service-types-card-content-link a:hover{

    background: var(--theme-pink-color);

    color: var(--theme-primary-color);

}



/* ================================================== Team Members Section */

.why-choose-us{

    padding: 80px 0;

    background: var(--theme-primary-color);

}



.why-choose-us .section-content-paragraph{

    font-size: 16px;

    font-weight: 400;

    line-height: 30px;

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

    font-family: var(--theme-font-poppins);

}



.why-choose-us ul li{

    display: flex;

    gap: 15px;

    list-style: none;

    margin-top: 30px;

}



.why-choose-us ul li .fa-solid{

    display: inline-block;

    margin-top: 5px;

    font-size: 20px;

    color: var(--theme-pink-color);

}



.why-choose-us ul li h4{

    font-size: 24px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.why-choose-us ul li p{

    font-size: 16px;

    font-weight: 400;

    line-height: 30px;

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

    font-family: var(--theme-font-poppins);

}



#whyChooseUsSlider img{

    width: 100%;

    height: auto;

    border-radius: 15px;

}



#whyChooseUsSlider .owl-nav button.owl-prev{

    position: absolute;

    top: 50%;

    left: -25px;

    transform: translateY(-50%);

    z-index: 10;

    width: 40px;

    height: 40px;

    color: white;

    background: var(--theme-pink-color);

    border-radius: 5px;

    font-weight: 600;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;

    transition: all 0.3s ease-in-out;

    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);

}



#whyChooseUsSlider .owl-nav button.owl-next{

    position: absolute;

    top: 50%;

    right: -25px;

    transform: translateY(-50%);

    z-index: 10;

    width: 40px;

    height: 40px;

    color: white;

    background: var(--theme-pink-color);

    border-radius: 5px;

    font-weight: 600;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;

    transition: all 0.3s ease-in-out;

    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);

}



#whyChooseUsSlider .owl-nav button.owl-prev:hover,

#whyChooseUsSlider .owl-nav button.owl-next:hover{

    background: var(--theme-blue-color);

}



/* ================================================== How It Works Section */

.how-it-works{

    padding: 80px 0 150px;

    background: var(--theme-background-color);

}



.how-it-works .section-title{

    margin-bottom: 50px;

    text-align: center;

}



.how-it-works-card{

    padding-top: 30px;

    text-align: center;

    border-radius: 30px;

    background: var(--theme-primary-color);

}



.how-it-works-card-cicle{

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    text-align: center;

    margin: 0 auto;

    width: 100px;

    height: 100px;

    border-radius: 50%;

    transition: all 0.5s ease-in-out;

}



.how-it-works-card-cicle span{

    font-size: 30px;

    font-weight: 700;

    font-family: var(--theme-font-merriweather);

}



.how-it-works-card-content{

    padding: 30px 15px;

}



.how-it-works-card-content h4{

    margin-bottom: 15px;

    font-size: 24px;

    font-weight: 700;

    font-family: var(--theme-font-merriweather);

    color: var(--theme-title-color)

}



.how-it-works-card-content p{

    font-size: 16px;

    font-weight: 400;

    font-family: var(--theme-font-poppins);

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

}



#howItWorksSlider .owl-nav button.owl-prev{

    position: absolute;

    top: 50%;

    left: -70px;

    transform: translateY(-50%);

    z-index: 10;

    width: 40px;

    height: 40px;

    color: white;

    background: var(--theme-pink-color);

    border-radius: 5px;

    font-weight: 600;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;

    transition: all 0.3s ease-in-out;

    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);

}



#howItWorksSlider .owl-nav button.owl-next{

    position: absolute;

    top: 50%;

    right: -70px;

    transform: translateY(-50%);

    z-index: 10;

    width: 40px;

    height: 40px;

    color: white;

    background: var(--theme-pink-color);

    border-radius: 5px;

    font-weight: 600;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;

    transition: all 0.3s ease-in-out;

    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);

}



#howItWorksSlider .owl-nav button.owl-prev:hover,

#howItWorksSlider .owl-nav button.owl-next:hover{

    background: var(--theme-blue-color);

}



#howItWorksSlider .owl-dots{

    position: absolute;

    top: calc(100% + 50px);

    left: 50%;

    transform: translateX(-50%);

}



#howItWorksSlider .owl-dots .owl-dot span{

    width: 15px;

    height: 15px;

    background: var(--theme-pink-color);

    opacity: 1;

    transition: var(--transition);

}



#howItWorksSlider .owl-dots .owl-dot.active span{

    background: var(--theme-pink-color);

    width: 50px;

}



/* ================================================== Gallery Section */

.gallery{

    padding: 80px 0;

    background: var(--theme-primary-color);

}



.gallery .section-title{

    text-align: center;

}



.gallery-card{

    position: relative;

    margin-bottom: 30px;

    border-radius: 15px;

    border: var(--theme-primary-color) solid 15px;

    box-shadow: 0 5px 15px -10px var(--theme-secondary-color);

    overflow: hidden;

}



.gallery-card img{

    width: 100%;

    height: auto;

}



.gallery-card .fa-solid{

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    font-size: 36px;

    background: rgba(0, 0, 0, 0.5);

    color: var(--theme-primary-color);

    display: flex;

    justify-content: center;

    align-items: center;

}



/* ================================================== Get In Touch Section */

.appointment{

    position: relative;

    padding: 80px 0;

    background: url('../images/appointment.jpeg') no-repeat center center;

    background-size: cover;

}



.appointment::before{

    content: '';

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    background: var(--theme-pink-color);

    opacity: 0.2;

}



.appointment .container{

    position: relative;

    z-index: 1;

}



.appointment .section-title{

    text-align: center;

}



.appointment-form{

    padding: 50px;

    border-radius: 15px;

    background: var(--theme-primary-color);

}



.appointment-form label{

    display: block;

    margin-bottom: 5px;

    font-size: 16px;

    font-weight: 600;

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

    font-family: var(--theme-font-poppins);

}



.appointment-form br{

    display: none;

}



.appointment-form .wpcf7-form-control-wrap{

    position: relative;

}



.appointment-form .form-control{

    margin-bottom: 30px;

    height: 50px;

    border-radius: 3px;

    font-size: 14px;

    font-weight: 400;

    border: rgba(0, 0, 0, 0.1) solid 1px;

    background: rgba(0, 0, 0, 0.05);

    color: var(--theme-secondary-color);

    font-family: var(--theme-font-poppins);

}



.appointment-form textarea.form-control{

    height: 150px;

}



.appointment-form .btn-primary{

    padding: 15px 50px;

    font-size: 18px;

    font-weight: 500;

    font-family: var(--theme-font-poppins);

    border-color: var(--theme-pink-color);

    color: var(--theme-primary-color);

    background: var(--theme-pink-color);

    transition: var(--transition);

}



.appointment-form .wpcf7-form-control-wrap .wpcf7-not-valid-tip{

    position: absolute;

    top: 100%;

    left: 0;

    width: 100%;

    font-size: 14px;

    font-weight: 400;

    color: var(--theme-pink-color);

    font-family: var(--theme-font-poppins);

}



/* ================================================== Footer Section */

.site-footer{

    background: #884CD2;

}



.footer-content{

    padding: 80px 0 50px;

}



.footer-content-block .footer-logo img{

    width: calc(100% - 50px);

    height: auto;

}



.footer-content-paragraph-block{

    margin: 30px 0;

    font-size: 16px;

    line-height: 30px;

    font-weight: 400;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-poppins);

}



.footer-content-block h4{

    position: relative;

    margin-bottom: 30px;

    padding-bottom: 15px;

    font-size: 22px;

    font-weight: 700;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-merriweather);

}



.footer-social-link h4{

    position: relative;

    margin-top: 30px;

    margin-bottom: 15px;

    padding-bottom: 15px;

    font-size: 22px;

    font-weight: 700;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-merriweather);

}



.footer-content-block h4::before,

.footer-social-link h4::before{

    content: '';

    position: absolute;

    top: 100%;

    left: 0;

    width: 100px;

    height: 2px;

    background: var(--theme-pink-color);

}



.footer-content-block ul li{

    list-style: none;

    line-height: 42px;

}



.footer-content-block ul li a{

    position: relative;

    display: inline-block;

    padding-left: 15px;

    font-size: 16px;

    font-weight: 400;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-poppins);

    transition: var(--transition);

}



.footer-content-block ul li a::before{

    content: '\f105';

    position: absolute;

    top: 0;

    left: 0;

    font-family: 'fontawesome';

    font-size: 12px;

}



.footer-content-block ul li a:hover{

    color: var(--theme-pink-color);

}



.footer-content-block ul li .fa-solid{

    color: var(--theme-primary-color);

    font-size: 12px;

}



.footer-content-block ul li span{

    display: block;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-poppins);

}



.footer-content-block ul li span.week-days{

    font-size: 18px;

    font-weight: 700;

}



.footer-content-block ul li span.week-time{

    font-size: 14px;

    font-weight: 400;

}



.footer-social-link ul{

    display: flex;

    justify-content: flex-start;

    align-items: center;

    gap: 5px;

    list-style: none;

}



.footer-social-link ul li a .fa-brands{

    display: flex;

    justify-content: center;

    align-items: center;

    width: 40px;

    height: 40px;

    font-size: 14px;

    border-radius: 5px;

    color: var(--theme-pink-color);

    background: var(--theme-primary-color);

}



.footer-copyright{

    padding: 20px 0;

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-top: 50px;

    border-top: rgba(255, 255, 255, 0.1) solid 1px;



}



.footer-ontent-contact-block ul li{

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 10px;

}



.footer-ontent-contact-block ul li .fa-solid{

    display: flex;

    justify-content: center;

    align-items: center;

    width: 40px;

    height: 40px;

    font-size: 14px;

    border-radius: 5px;

    color: var(--theme-pink-color);

    background: var(--theme-primary-color);

}



.copyright{

    padding: 20px 0;

    border-top: rgba(255, 255, 255, 0.1) solid 1px;

}



.copyright p{

    text-align: center;

    font-size: 16px;

    color: var(--theme-primary-color);

    font-size: 16px;

}



.copyright p a{

    position: relative;

    color: var(--theme-primary-color);

}



.copyright p span{

    color: var(--theme-primary-color);

    font-weight: 700;

}





/* ================================================== Page Banner */

.page-banner{

    padding: 30px 0;

    background: var(--theme-pink-color);

}



.page-breadcrumb h1{

    margin-bottom: 5px;

    font-size: 30px;

    font-weight: 700;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-merriweather);

}



.page-breadcrumb-links{

    display: flex;

    align-items: center;

    gap: 30px;

    list-style: none;

}



.page-breadcrumb-links li span{

    font-size: 16px;

    font-weight: 400;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-poppins);

}



.page-breadcrumb-links li a{

    position: relative;

    display: inline-block;

    font-size: 16px;

    font-weight: 400;

    color: var(--theme-primary-color);

    font-family: var(--theme-font-poppins);

}



.page-breadcrumb-links li a::before{

    content: '\f101';

    position: absolute;

    left: calc(100% + 10px);

    top: 6px;

    width: 10px;

    font-size: 10px;

    font-family: 'fontawesome';

    color: var(--theme-primary-color);

}



/* ================================================== Page Content */

.page-content{

    padding: 80px 0;

    background: var(--theme-primary-color);

}



/* ============================== Page Heading Title */

.page-content .page-description h1{

    margin-bottom: 30px;

    font-size: 42px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.page-content .page-description h2{

    margin-bottom: 30px;

    font-size: 36px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.page-content .page-description h3{

    margin-bottom: 24px;

    font-size: 30px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.page-content .page-description h4{

    margin-bottom: 20px;

    font-size: 24px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.page-content .page-description h5{

    margin-bottom: 15px;

    font-size: 20px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.page-content .page-description h6{

    margin-bottom: 10px;

    font-size: 16px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



/* ============================== Page Paragraph */

.page-content .page-description p{

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

    font-size: 16px;

    line-height: 30px;

    margin-bottom: 15px;

}



/* ============================== Page Ul/Ol/Li */

.page-content .page-description ul,

.page-content .page-description ol{

    margin-left: 20px;

    margin-bottom: 30px;

}



.page-content .page-description li{

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

    font-size: 16px;

    line-height: 30px;

}



/* ================================================== Services Page */

.page-template-page-services .section-content{

    margin-top: 50px;

}



/* ================================================== Single Service Page */

.service-types-aside h3{

    padding-bottom: 15px;

    margin-bottom: 15px;

    font-weight: 700;

    font-size: 30px;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

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

}



.service-types-aside-card{

    display: block;

    padding: 20px;

    border: rgba(0, 0, 0, 0.3) solid 1px;

    border-bottom: none;

    transition: var(--transition);

}



.service-types-aside-card:hover{

    background: var(--theme-background-color);

}



.service-types-aside-card:last-child{

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

}



.service-types-aside-card-title{

    display: block;

    margin-bottom: 5px;

    font-size: 18px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-poppins);

}



.service-types-aside-card-price,

.service-types-aside-card-duration{

    display: flex;

    justify-content: space-between;

    align-items: center;

    font-size: 16px;

    font-weight: 400;

    line-height: 30px;

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

    font-family: var(--theme-font-poppins);

}



/* ================================================== Service Archive Page */

.service-card{

    position: relative;

    margin-bottom: 30px;

    padding: 30px;

    text-align: left;

    border-radius: 15px;

    background: var(--theme-primary-color);

    border: rgba(255, 79, 157, 0.3) solid 1px;

    border-bottom: var(--theme-pink-color) solid 5px;

}



.service-card-price-duration{

    display: flex;

    align-items: center;

    gap: 5px;

    margin-bottom: 25px;

}



.service-card-price-duration span{

    display: inline-block;

    padding: 5px 10px;

    font-size: 14px;

    font-weight: 400;

    border-radius: 3px;

    color: var(--theme-title-color);

    background: rgba(255, 79, 157, 0.3);

    font-family: var(--theme-font-poppins);

}



.service-card-title a{

    display: inline-block;

    margin-bottom: 15px;

    font-size: 24px;

    font-weight: 700;

    transition: var(--transition);

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.service-card-title a:hover{

    color: var(--theme-pink-color);

}



.service-card-short-description{

    font-size: 16px;

    font-weight: 400;

    line-height: 30px;

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

    font-family: var(--theme-font-poppins);

    display: -webkit-box;

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 2;

    overflow: hidden;

    text-overflow: ellipsis;

    height: 60px;

}



.service-card-link{

    display: inline-block;

    margin-top: 15px;

}



.service-card-link a{

    display: flex;

    justify-content: center;

    align-items: center;

    gap: 10px;

    padding: 12px 20px;

    border-radius: 5px;

    border: var(--theme-pink-color) solid 1px;

    background: var(--theme-primary-color);

    color: var(--theme-pink-color);

    transition: var(--transition);

}



.service-card-link a span{

    font-size: 16px;

    font-weight: 400;

}



.service-card-link a solid{

    font-size: 14px;

}



.service-card-link a:hover{

    background: var(--theme-pink-color);

    color: var(--theme-primary-color);

}



/* ================================================== Prices Page */

.page-template-page-prices .section-content{

    margin-top: 50px;

}



.page-template-page-prices .accordion-item .accordion-header .accordion-button{

    font-size: 20px;

    font-weight: 700;

    color: var(--theme-primary-color);

    background: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.page-template-page-prices .accordion-item .accordion-header .accordion-button.collapsed::after{

    content: '\2b';

    font-family: 'fontawesome';

    color: var(--theme-primary-color);

}



.page-template-page-prices .accordion-item .accordion-header .accordion-button::after{

    content: '\f068';

    font-family: 'fontawesome';

    color: var(--theme-primary-color);

}



.page-template-page-prices .accordion-item .accordion-body{

    background: var(--theme-background-color);

}



.page-template-page-prices .accordion-item .accordion-body .table thead th{

    font-size: 18px;

    font-weight: 700;

    color: var(--theme-primary-color);

    background: var(--theme-pink-color);

    font-family: var(--theme-font-merriweather);

}



.page-template-page-prices .accordion-item .accordion-body .table tbody tr td{

    vertical-align: middle;

}



.page-template-page-prices .accordion-item .accordion-body .table tbody tr td a,

.page-template-page-prices .accordion-item .accordion-body .table tbody tr td span{

    font-size: 16px;

    font-weight: 400;

    line-height: 24px;

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

    font-family: var(--theme-font-poppins);

    transition: var(--transition);

}



.page-template-page-prices .accordion-item .accordion-body .table tbody tr td a:hover{

    color: var(--theme-pink-color);

}



.page-template-page-prices .accordion-item .accordion-body .table tbody tr td .btn-primary{

    color: var(--theme-pink-color);

    border: var(--theme-pink-color) solid 1px;

    background: var(--theme-primary-color);

    transition: var(--transition);    

}



.page-template-page-prices .accordion-item .accordion-body .table tbody tr td .btn-primary span{

    color: var(--theme-pink-color);

    transition: var(--transition);  

    font-size: 14px;

}



.page-template-page-prices .accordion-item .accordion-body .table tbody tr td .btn-primary:hover{

    background: var(--theme-pink-color);

    color: var(--theme-primary-color);

}



.page-template-page-prices .accordion-item .accordion-body .table tbody tr td .btn-primary:hover span{

    color: var(--theme-primary-color);

}



/* ================================================== Prices Page */

.page-template-page-book-an-appointment .page-content{

    background: var(--theme-background-color);

}



.page-template-page-book-an-appointment .appointment-form{

    box-shadow: 0 5px 30px -15px var(--theme-secondary-color);

}



/* ================================================== Contact Page Page */

.page-template-page-contact-us .google-map-location{

    margin-right: 30px;

    position: relative;

    overflow: hidden;

    height: 800px;

    border: rgba(0, 0, 0, 0.1) solid 1px;

}



.page-template-page-contact-us .contact-page-form h2{

    margin-bottom: 30px;

    font-size: 36px;

    font-weight: 700;

    color: var(--theme-title-color);

    font-family: var(--theme-font-merriweather);

}



.page-template-page-contact-us .contact-page-form label{

    display: inline-block;

    margin-bottom: 5px;

    color: var(--theme-title-color);

    font-size: 16px;

}



.page-template-page-contact-us .contact-page-form label span{

    color: red;

}



.page-template-page-contact-us .contact-page-form .form-control{

    display: block;

    height: 50px;

    background: rgba(0, 0, 0, 0.05);

    border: rgba(0, 0, 0, 0.1) solid 1px;

    border-radius: 3px;

    margin-bottom: 30px;

    font-size: 14px;

}



.page-template-page-contact-us .contact-page-form textarea.form-control{

    height: 150px;

}



.page-template-page-contact-us .contact-page-form .btn-submit{

    display: block;

    width: 100%;

    border-radius: 3px;

    min-height: 50px;

    padding: 15px;

    font-weight: 700;

    font-size: 18px;

    text-transform: uppercase;

    background: var(--theme-blue-color);

    color: var(--theme-primary-color);

    text-transform: var(--transition);

}



.page-template-page-contact-us .contact-page-form .btn-submit:hover{

    background: var(--theme-pink-color);

}


.service-types-table thead tr th{
    font-size: 18px;
    background: var(--theme-pink-color);
    color: var(--theme-primary-color);
}

.service-types-table tbody tr td h4{
    font-size: 18px;
}

.service-types-table tbody tr td h4 span{
    color: var(--theme-pink-color);
    font-size: 16px;
}

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

   Responsive Breakpoints (Professional Setup)

   Based on Bootstrap / Tailwind Standards

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



/* XXL (≥1400px) - Large desktops / 2K+ */

@media (min-width: 1400px) {

   

}



/* XL (1200px – 1399px) - Desktops */

@media (min-width: 1200px) and (max-width: 1399px) {

    

}



/* LG (992px – 1199px) - Small laptops */

@media (min-width: 992px) and (max-width: 1199px) {

    

}



/* MD (768px – 991px) - Tablets */

@media (min-width: 768px) and (max-width: 991px) {

    

}



/* SM (576px – 767px) - Large phones */

@media (min-width: 576px) and (max-width: 767px) {

    



}



/* XS (≤575px) - Phones */

@media (max-width: 575px) {



    /* Header Menus */

    #mega-menu-wrap-header-menu .mega-menu-toggle{

        background: var(--theme-blue-color);

        margin-left: auto;

        width: 45px;

    }



    #mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-blocks-left,

    #mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-blocks-center{

        display: none;

    }



    #mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-blocks-right .mega-toggle-block:only-child{

        margin-left: 6px;

    }



    #mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner,

    #mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::before,

    #mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::after{

        width: 30px;

    }



    #mega-menu-wrap-header-menu .mega-menu-toggle.mega-menu-open ~ button.mega-close{

        left: calc(min(100vw - 40px, 260px));

        width: 40px;

        height: 40px;

        background: var(--theme-primary-color);

    }



    #mega-menu-wrap-header-menu .mega-menu-toggle ~ button.mega-close:before{

        color: var(--theme-blue-color);

    }



    #mega-menu-wrap-header-menu .mega-menu-toggle + #mega-menu-header-menu{

        padding: 30px 15px;

        background: var(--theme-blue-color);

    }



    #mega-menu-wrap-header-menu .mega-menu-toggle.mega-menu-open + #mega-menu-header-menu{

        flex-direction: column;

        text-align: left;

    }



    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item{

        display: block;

        width: 100%;

    }



    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link{

        display: block;

        position: relative;

        color: var(--theme-primary-color);

        line-height: 48px;

        font-weight: 400;

    }



    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link:hover,

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link:focus,

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link{

        color: var(--theme-primary-color);

        font-weight: 400;

    }



    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:last-child > a.mega-menu-link{

        padding: 5px 10px;

        text-transform: capitalize;

        font-size: 16px;

        font-weight: 400;

    }



    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:last-child > a.mega-menu-link::before{

        display: none;

    }



    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-flyout ul.mega-sub-menu{

        border-top: none;

    }



    /* Header Section */

    .site-header-top .container{

        flex-direction: column;

        gap: 15px;

    }



    .site-header-top-contact-list{

        flex-wrap: wrap;

        justify-content: center;

        align-items: center;

        gap: 10px;

    }



    /* Banner Section */

    .banner-content{

        text-align: center;

    }



    .banner-content .banner-subtitle{

        font-size: 14px;

    }



    .banner-content .banner-title{

        margin: 10px 0;

        font-size: 20px;

        line-height: 30px;

    }



    .banner-content .banner-text{

        display: none;

    }



    .banner-content .banner-btn{

        margin-top: 0;

    }



    .banner-content .banner-btn a{

        padding: 10px 15px;

    }



    .banner-content .banner-btn a span{

        font-size: 14px;

    }



    #bannerSlider .owl-dots{

        top: calc(100% + 15px);

        right: initial;

        left: 50%;

        transform: translate(-50%,0);

        display: block;

    }



    #bannerSlider .owl-dots .owl-dot span{

        margin: 0 2px;

    }



    #bannerSlider .owl-dots .owl-dot.active span{

        height: 15px;

        width: 50px;

    }



    /* Common Section */

    .section-heading-subtitle{

        font-size: 16px;

    }



    .section-heading-title{

        font-size: 30px;

    }



    /* Welcome Section */

    .welcome-thumbnails{

        padding-right: 0;

        margin-bottom: 50px;

    }



    .welcome .section-heading-title{

        font-size: 36px;

        line-height: 42px;

    }



    .welcome-content-section-text{

        line-height: 30px;

    }



    /* Service Types Section */

    .service-types-card-content-title a{

        font-size: 20px;

    }



    /* Why Choose Us Section */

    .why-choose-us ul{

        margin-bottom: 50px;

    }



    .why-choose-us ul li h4{

        font-size: 20px;

    }



    #whyChooseUsSlider .owl-nav button.owl-prev{

        left: 0;

    }



    #whyChooseUsSlider .owl-nav button.owl-next{

        right: 0;

    }



    /* How It Works Section */

    .how-it-works{

        padding: 80px 0 100px;

    }



    #howItWorksSlider .owl-dots{

        top: calc(100% + 30px);

    }



    /* Get Appointment */

    .appointment-form{

        padding: 30px;

    }



    /* Footer Section */

    .footer-content-paragraph-block{

        margin-bottom: 0;

    }



    .footer-content-block h4{

        margin-bottom: 15px;

        margin-top: 30px;

    }



    .footer-content-block ul li{

        line-height: 36px;

    }



    /* Page Breadcrumb */

    .page-breadcrumb h1{

        font-size: 24px;

    }



    .page-content{

        padding: 50px 0;

    }



    /* Prices Page */

    .page-template-page-prices .accordion-item .accordion-body .table thead th:last-child,

    .page-template-page-prices .accordion-item .accordion-body .table tbody td:last-child{

        display: none;

    }



    /* Contact Page */

    .page-template-page-contact-us .page-content{

        padding: 50px 0 20px;

    }



    .page-template-page-contact-us .google-map-location{

        margin-bottom: 30px;

        margin-right: 0;

        height: 250px;

    }



    .page-template-page-contact-us .contact-page-form h2{

        margin-bottom: 15px;

        font-size: 24px;

    }



    .page-template-page-contact-us .contact-page-form .form-control{

        margin-bottom: 15px;

    }

}

