
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');

:root {
    /* --primary_color: #F87000; */
    --primary_color: #cb3df7;
    --secondary_color: #3a4386;
    --light_color: #F4F4F7;
}


/* Flaticon CSS */

@font-face {
    font-family: "Flaticon";
    src: url("../webfonts/Flaticon.woff") format("woff");
    font-style: normal;
}


[class^="flaticon-"]:before, [class*=" flaticon-"]:before,
[class^="flaticon-"]:after, [class*=" flaticon-"]:after {   
    font-family: "Flaticon";
    font-style: normal;
}
    

.flaticon-pig:before { content: "\f100"; }
.flaticon-dog:before { content: "\f101"; }
.flaticon-hen:before { content: "\f102"; }
.flaticon-monkey:before { content: "\f103"; }
.flaticon-goat:before { content: "\f104"; }
.flaticon-snake:before { content: "\f105"; }
.flaticon-dragon:before { content: "\f106"; }
.flaticon-rabbit:before { content: "\f107"; }
.flaticon-tiger:before { content: "\f108"; }
.flaticon-ox:before { content: "\f109"; }
.flaticon-rat-looking-right:before { content: "\f10a"; }
.flaticon-shapes:before { content: "\f10b"; }
.flaticon-baby-with-diaper:before { content: "\f10c"; }
.flaticon-giftboxes:before { content: "\f10d"; }
.flaticon-animal:before { content: "\f10e"; }
.flaticon-engagement-ring:before { content: "\f10f"; }
.flaticon-pregnancy:before { content: "\f110"; }
.flaticon-islamic-temple:before { content: "\f111"; }
.flaticon-marry-me:before { content: "\f112"; }
.flaticon-success:before { content: "\f113"; }
.flaticon-aquarius-zodiac-sign-symbol:before { content: "\f114"; }
.flaticon-capricorn:before { content: "\f115"; }
.flaticon-scorpio:before { content: "\f116"; }
.flaticon-libra:before { content: "\f117"; }
.flaticon-virgo-astrological-symbol-sign:before { content: "\f118"; }
.flaticon-leo:before { content: "\f119"; }
.flaticon-cancer:before { content: "\f11a"; }
.flaticon-gemini-zodiac-sign-symbol:before { content: "\f11b"; }
.flaticon-taurus-astrological-sign-symbol:before { content: "\f11c"; }
.flaticon-aries-sign:before { content: "\f11d"; }
.flaticon-coins:before { content: "\f11e"; }
.flaticon-avatar:before { content: "\f11f"; }
.flaticon-home:before { content: "\f120"; }
.flaticon-horse-head:before { content: "\f121"; }
.flaticon-shop:before { content: "\f122"; }

body {
    font-family: "Poppins", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.64px;
    line-height: 20px;
    color: #545454;
    font-size: 15px;

}
img{ max-width: 100%;}
ul, ul li {
    list-style: none;
    margin: 0;
    padding: 0;
}
ol{ padding-left: 20px;}
a {
    color: inherit;
    text-decoration: none;
}

.link{ color: #973BB4;}
.url{ color: #007BFF;}

.container {
/*    max-width: 1600px;*/
}

/* p{text-align: justify;} */

/*h1,h2,h3,h4,h5,h6{font-weight: 700; color: #000; transition: all 0.4s ease-in-out;font-family: "Playfair Display", serif;}*/

section, footer {
    padding: 70px 0; position: relative; overflow: hidden;
}

.btn{ font-size: 16px; line-height: 24px; font-weight: 600; border-radius: 5px; padding: 8px 15px;}
.theme_btn {
    /* background-color: var(--primary_color) !important; */
    background-image: linear-gradient(to right, #973BB4 , #EF3470);
    color: #fff;
    transition: all 0.4s ease-out ;
    box-shadow: 0 0px 0px rgba(58,67,134, 0);
    overflow: hidden; position: relative; z-index: 1; border: none; border-radius: 0;
}
.theme_btn:hover{ 
    color: #222;
    box-shadow: 0 8px 15px rgba(58,67,134, 0.5);
}

.theme_btn::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 0%;
    /* background-color: var(--primary_color); */
    background-color: #fff; color: #222;
    transition: all 0.5s;
    z-index: -1;
}
.theme_btn:hover::after {right: unset; left: 0; width: 100%; }


header .theme_btn,
.banner_section .theme_btn{ 
    /* background-color: #fff !important; 
    color: #000;  */
    border-radius: 5px; 
}


.dark_btn {
    background-color: var(--primary_color) !important;
    color: #fff;
    transition: all 0.4s ease-out ;
    box-shadow: 0 0px 0px rgba(58,67,134, 0);
}
.dark_btn:hover{ 
    color: #fff;
    box-shadow: 0 8px 15px rgba(58,67,134, 0.5);
}

.url{ color:var(--primary_color); font-weight:500; text-decoration:underline; }

/* Scroll to top */
.scroll-top{
    position: fixed;
    bottom: 50%;
    right: 30px;
    z-index: 99999;
    transition: 0.8s ease;
    opacity: 0;
    visibility: hidden;
}
.scroll-top.show{
    bottom: 120px;
    opacity: 1;
    visibility: visible;
}
.top_btn{
    width: 40px; height: 40px; border-radius: 100%; 
    background-color: #fff; color: #000;
    border: none;
}

/* Page Loader Start */
.preloader {
    width: 100%;
    min-height: 100vh;
    position: fixed; width: 100%; height: 100%; top: 0; left: 0;
    display: flex; justify-content: center; align-items: center;
    background: rgba(6,21,40,1); z-index: 99;
}
  
.loader_box {
    position: relative; width: 100%; height: 200px;
    display: flex; justify-content: center; align-items: center;
    -webkit-box-reflect: below 0 linear-gradient(transparent, transparent, #0005);
}

.loader_box .loader {
    position: absolute; width: 100px; height: 100px; border-radius: 50%;
    animation: animateLoading 2s linear infinite;
}

.loader_box .loader:nth-child(2),
.loader_box .loader:nth-child(4) {
    animation-delay: -1s;
    filter: hue-rotate(290deg);
}
  
@keyframes animateLoading {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
}
  
.loader_box .loader:nth-child(1)::before,
.loader_box .loader:nth-child(2)::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: linear-gradient(to top, transparent, rgba(0, 255, 249, 0.5));
    background-size: 100px 180px;
    background-repeat: no-repeat;
    border-top-left-radius: 100px;
    border-bottom-left-radius: 100px;
}
  
.preloader .loader i {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 10px;
    height: 10px;
    background: #00fff9;
    border-radius: 50%;
    box-shadow: 0 0 10px #00fff9,
        0 0 20px #00fff9,
        0 0 30px #00fff9,
        0 0 40px #00fff9,
        0 0 50px #00fff9,
        0 0 60px #00fff9,
        0 0 70px #00fff9,
        0 0 80px #00fff9,
        0 0 90px #00fff9,
        0 0 100px #00fff9;
    z-index: 10;
}
  
.loader_box .loader span {
    position: absolute;
    inset: 10px;
    background: rgba(6,21,40,1);
    border-radius: 50%;
    z-index: 1;
}

/* Page Loader End */

/* For Landing Page */
.landing_section{
    background: url('../images/banner_bg.jpg') no-repeat center center;
    background-size: cover;
    display: flex; justify-content: center; align-items: center;
    min-height: 100vh; padding-bottom: 110px;
}
.landing_section::before{
    content: '';
    position: absolute;
    width: 100%; height: 100%; left: 0; top: 0;
    background-color: rgba(0,0,0,0.5);
}
.landing_content{position: relative;display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 30px; z-index: 2;}

.logo_box img{ height: 130px;}

.landing_section h6{ color: #fff; position: relative; text-align: center; font-weight: normal; line-height: 30px;}
.landing_section .copyriight{ position: absolute; bottom: 0; left: 0; width: 100%; background-color: transparent; color: #999; z-index: 2; }


.dot_list li{position: relative; padding-left: 15px; line-height: 20px; margin-bottom: 10px;}
.dot_list li::before{
    content: '';
    position: absolute;
    left: 0; top: 6px;
    width: 6px; height: 6px; border-radius: 100%;
    background-color: #999;
}


/* Header Section */
header{ position: absolute; left: 0; right: 0;z-index: 9;}
header .bg-light { background-color: rgba(29,34,104,0.45) !important; min-height: 100px;}
header.sticky{
    position: sticky;
    top: 0;
    background-color: rgba(6,21,40,1) !important;
    animation: mymove 0.4s linear;
}
@keyframes mymove {
    0% {
      -webkit-transform: translateY(-100%);
      -moz-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
      -o-transform: translateY(-100%);
      transform: translateY(-100%);
    }
    100% {
      -webkit-transform: translateY(0px);
      -moz-transform: translateY(0px);
      -ms-transform: translateY(0px);
      -o-transform: translateY(0px);
      transform: translateY(0px);
    }
}

.navbar {
    flex-wrap: wrap;
    padding: 0;
}
.navbar>.container{ gap: 15px; flex-wrap: nowrap;}
.navbar_menu {
    /* width: 100%;
    background-color: var(--primary_color); */
    /* padding: 0 15px; */
    justify-content: center;
    flex: 1;
}
.logo { padding: 15px 0; margin: 0; /*flex: 1;*/ max-width: 190px;}
.logo img{ max-height:70px; }

.navbar_menu .nav-link{ padding: 12px 15px !important; font-weight: 500; color: #fff; transition: all 0.3s ease-in-out;}
.navbar_menu .nav-link.active,.navbar_menu .nav-link:hover{ color: #fff;}
.navbar_menu .navbar-nav .nav-link.active,.navbar_menu .navbar-nav .nav-link.show{ color: #fff;}

.navbar_menu .navbar-nav{ flex-wrap: wrap;}

.dropdown-toggle { display: flex; align-items: center; gap: 5px;}
.dropdown-toggle::after {
    font-family: FontAwesome;
    content: "\f107";
    font-size: 13px;
    border: none;
    line-height: 15px;
}

.navbar_menu .dropdown-item:focus,.navbar_menu .dropdown-item:hover {
    color: #ffffff;
    background-color: #f87000;
}

.top_links{ display: flex; align-items: center; gap: 20px; margin: 0 0 0 auto;}
.top_links .address_info p{ color: #fff;}
.appointment_btn{ display:flex; align-items:center; justify-content: center; gap:10px; }


.contact_info{ display: flex; align-items: center; gap: 40px;}
.contact_info li{ display: flex;  align-items: center; gap: 15px;}
.address_info{ flex: 1;}
.address_info p{ font-size: 14px; line-height: 20px; text-align: left; }
.address_info a{ font-weight: 600; line-height: 22px;}
header .address_info a{ color: #fff;}

.navbar-toggler{ background-color: #fff;}

.m_visible{ display:none; }


/* Banner Section */
.banner_section{ 
    min-height: 100vh; 
    /* background-color: #f2f0f9;  */
    background: url('../images/banner_bg.jpg') no-repeat center center; background-size: cover;
    display: flex; 
    align-items: center;
    padding: 0;
}

.banner_content{
    display: flex; justify-content: space-between; align-items: center;
    gap: 50px;
}

.banner_img{ max-width: 50%; width: 450px; position: relative; z-index: 2;}
.banner_img img{
    animation: spin 11s infinite linear;
    -webkit-animation: spin 11s infinite linear;
    -moz-animation: spin 11s infinite linear;
    display: inline-block;
    width: 100%;
}
@-webkit-keyframes spin {
    0%  {-webkit-transform: rotate(0deg);}
    100% {-webkit-transform: rotate(360deg);}   
}

.banner_text{ padding: 100px 0; 
    display: flex; flex-direction: column; align-items: flex-start; gap: 0px;  
    max-width: 725px; z-index: 2; flex: 1;
    position: relative;
}
.banner_text h2{ 
    font-size: 90px; line-height: 94px; margin-bottom:25px;
    background: -webkit-linear-gradient(#973BB4, #EF3470);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
}
.banner_text h3{ font-size: 46px; line-height: 55px; font-weight: normal;}
.banner_text p{ max-width: 500px;}

.stars{ position: absolute; left: 0; top: 0; z-index: 1; width: 100%; height: 100%; opacity: 0.5;}

@keyframes fade-in {
    from {
        opacity: 0;
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.banner_text :is(h2, h3, p, .theme_btn){
    animation-name: fade-in;
    animation-fill-mode: both; 
}

.banner_text h3{ animation-duration: 1s;animation-delay: 0.2s;color: #fff; }
.banner_text h2{ animation-duration: 1.5s;animation-delay: 1s;color: #fff; }
.banner_text p{ animation-duration: 1.5s;animation-delay: 1.5s;color: #fff;}
.banner_text .theme_btn{ animation-duration: 1.6s;animation-delay: 2s;}

.btn_group{ display:flex; flex-wrap:wrap; gap:10px; }

/* section .row{ gap: 30px 0;} */


.page_title{display: flex;flex-direction: column; align-items: flex-start; margin-bottom: 30px;}
.page_title h2 {
    display: flex; align-items: center;gap: 25px;
    margin: 0;
    font-size: 30px;
    font-weight: 700;
}
.page_title h2 span{ flex: 1;}
.page_title h2::before,.page_title h2::after {
    content: "";
    width: 35px;
    height: 3px;
    /* background-color: var(--primary_color); */
    background-image: linear-gradient(to right, #973BB4 , #EF3470);

}
.page_title h2::before{ display: none;}

.left_title h2::before,.left_title h2::after{ display: none;}
.left_title.page_title h6::after {
    content: "";
    width: 35px;
    height: 3px;
    /* background-color: var(--primary_color); */
    background-image: linear-gradient(to right, #973BB4 , #EF3470);

}

.page_title p{ margin: 25px 0 0;}
.page_title h6{ 
    font-family: "Poppins", sans-serif;
    font-weight: 600; font-size: 16px; line-height: 26px; color: #973BB4; margin: 0;
    position: relative;
    display: flex; align-items: center;gap: 15px;
}

.page_title.text-center{ align-items: center; margin-bottom: 40px;}
.page_title.text-center p{ max-width: 800px; text-align: center; }
.page_title.text-center h2::before{ display: block;}


/* .card{
    border: none;
    border-radius: 10px;
    box-shadow: 0px 4px 15px 2px #0000000F;
    overflow: hidden;transition: all 0.3s ease-in-out;
} */

.card-title{ font-size: 18px; font-weight: 600; line-height: 30px; color: #973BB4; /*position: relative;*/}
.card-body p{ font-size: 14px;}

.card_img{ display: flex; justify-content: center; align-items: center; }


/* Services Section */
.services_section{
    background: url('../images/service_bg.jpg') no-repeat center center;
    background-size: cover;
}
.services_section h2,.services_section .page_title{ color: #fff;}
.services_card{ 
    min-height: 100%;
    background-color: #061528; box-shadow: 0px 10px 20px 2px rgb(0 0 0 / 0);
    border: 1px dashed rgba(255, 255, 255, 0.32); 
    padding: 20px; border-radius: 10px;
    /* transition: all 0.3s ease-in-out;  */
    position: relative;
}
/* .services_card::before{
    content: '';
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%; border-radius: 10PX;
    opacity: 0;transition: all 0.2s ease-in-out;
    border: 1px dashed #061528;
    background: linear-gradient(#061528 0 0) padding-box,
                linear-gradient(to bottom, #973BB4, #EF3470) border-box; 
    
} */
/* .services_card:hover{ border: none; box-shadow: 0px 10px 20px 2px rgb(0 0 0 / 70%);} */
.services_card:hover::before{
    /* border-image-source: linear-gradient(to right, #973BB4 , #EF3470);
    border-image-slice: 1; */
    /* border-image: linear-gradient(to right, #973BB4, #EF3470) 1; */
    opacity: 1;
    
   
}




.card-body{ z-index: 2; padding: 10px;}
.icon_box{
     border-radius: 100%;border: 1px dashed #cecece;
    padding: 10px; margin: 10px auto; z-index: 2;
    width: 40px; height: 40px;
    display: flex; align-items: center; justify-content: center;
}
.services_card .icon_box{ width: auto; height: auto; border: none;}
.icon_box_inner {
    position: relative;
    border: 1px dashed #cecece;background-color: #fff;
    border-radius: 100%;
    transition: all 0.5s;
    width: 90px; height: 90px;
    display: flex; align-items: center; justify-content: center;
}
.icon_box_inner::after{
    content: "";
    width: 0;
    height: 0;
    border-radius: 100%;
    background-color: var(--primary_color);
    position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
    transition: all 0.5s ease-in-out;
    z-index: -1;
}
.services_card:hover .icon_box_inner::after{width: 100%;height: 100%;}
.services_card .icon_box_inner i{
    background: -webkit-linear-gradient(#973BB4, #EF3470);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
}

.icon_box_inner i{ font-size: 40px;transition: all 0.5s ease-in-out; line-height: normal;}

.services_card:after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -135px 0 0 -135px;
    background-image: url(../images/service-circle.png);
    width: 271px;
    height: 270px;
    animation: spin 9s infinite linear;
    -webkit-animation: spin 9s infinite linear;
    -moz-animation: spin 9s infinite linear;
    z-index: 1;opacity: 0;transition: all 0.3s ease-in-out;
    filter: invert(1);

}
.services_card:hover{ box-shadow: 0px 10px 15px 2px #0000000F;}
.services_card:hover:after{ opacity: 0.3;}

.services_card .card-title{ color: #fff; padding-bottom: 20px; margin-bottom: 20px; font-size: 24px; position: relative; z-index: 2;}
.services_card .card-title::after {
    content: "";
    width: 45px;
    height: 3px;
    /* background-color: var(--primary_color); */
    background-image: linear-gradient(to right, #973BB4 , #EF3470);
    position: absolute;
    left: 50%; bottom: 0;
    transform: translateX(-50%); opacity: 0.5;

}

.services_card p{ color: #eee;}

@keyframes spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}

.g_30{ gap: 30px 0;}

.form_box{
    background-color: #09243b;
    padding: 30px;
    display: flex; align-items: flex-end; gap: 20px;
}
.form-control{ border-radius: 0; border-color: #efefef;}
.form_field{flex: 1;}
.form_field label{ text-align: center; font-size: 20px; display: block;}
.form_box .form-label{ color: #fff;font-size: 18px;}

.contact_form .form-label{ color: #fff;font-size: 18px;}


.light_bg{ background-color: #f5f4f4;}

.dark_bg{ background-color: #061528; color: #fff;}

.star_bg{
    background: url('../images/star_bg_1.png') no-repeat center center; background-size: cover;
    color: #fff;
}
.star_bg .page_title h2{ color: #fff;}

.star_bg2{
    background: url('../images/star_bg_2.jpg') no-repeat center center; background-size: cover;
    color: #fff;
}

.dark_bg h5,.dark_bg h3{ color: #fff;}

.pro_card{ border: none; border-radius: 0; box-shadow: 0px 5px 15px 2px rgb(0 0 0 / 6%);transition: all 0.3s ease-in-out;}
.pro_card:hover{ box-shadow: 0px 10px 15px 2px rgb(0 0 0 / 15%);}

/* Sub Header For internal pages */
.sub_header{
    text-align: center; 
    /* background: #0a051d url('../images/sub_header_bg.jpg') no-repeat right center;  */
    background: #0a051d; 
    /* background-size: cover;  */
    padding: 150px 0 50px;
    position: relative;
}
.sub_header:before {
    content: '';
    position: absolute;
    top: 0%;
    bottom: 0%;
    left: 0%;
    right: 0%;
    /* background: rgb(10 5 29 / 80%); */
    background: #0a051d url('../images/sub_header_bg.jpg') no-repeat left center; 
    opacity: 0.5;

}
.sub_header .container{ position: relative;}
.breadcrumb{ display: flex; justify-content: center; margin-bottom: 0;font-size: 16px;}
.sub_header h1{
    font-weight: 700;
    font-size: 30px;
    color: #fff;
    margin-bottom: 20px;
}
.breadcrumb a{ color: #fff; font-weight: 500;}
.breadcrumb-item.active { color: var(--primary_color); font-weight: 600;}
.breadcrumb-item+.breadcrumb-item::before {
    font-family: FontAwesome;
    content: "\f105";
    color: #fff;
}

/* Faqs Section */

#accordion .card + .card{ margin-top: 20px;}
#accordion .card{ border: none; border-radius: 0;}
#accordion .card-header{ border: none; padding: 0; background-color: transparent; border-radius: 0;}
#accordion .card-header a{ 
    border-bottom: 1px dashed #cecece; padding: 10px 15px; 
    /* background-color: var(--primary_color);  */
    background-image: linear-gradient(to right, #973BB4 , #EF3470); text-align:left;
    color: #fff;
    border-radius: 0; position: relative;
    display: flex; justify-content: space-between; align-items: center;
}
#accordion .card-header a.collapsed{ border: 1px dashed #cecece; background-color: transparent; color: #fff;}
#accordion .card-body{ border: 1px dashed #cecece; border-top: 0;}

#accordion .card-header a::after {
    font-family: FontAwesome;
    content: "\f068";
    font-size: 13px;
    border: none;
    line-height: 15px;
}

#accordion .card-header a.collapsed::after {
    content: "\2b";
}

/* Testimonial Section */
.testimonial_section{ background: url('../images/testi_bg.webp') no-repeat center center; background-size: cover;}
.testimonialSwiper{ position: relative; overflow: hidden;}
.testimonialSwiper .swiper-wrapper{ height: auto;}
.testimonial_card{ display: flex; flex-direction: column; gap: 30px;}
.testimonial_data{ 
    position: relative; padding: 30px; 
    background-color: #fff;
    display: flex; align-items: flex-start; gap: 10px;
}
.testimonial_data::before{
    content: "";
    border: 1px dashed #cecece;
    position: absolute; left: 15px; top: 15px;
    width: calc(100% - 30px); height: calc(100% - 30px);
}
.testimonial_data:after {
    content: '';
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #ffffff;
    position: absolute;
    bottom: -20px;
    right: 30px;
    filter: drop-shadow(0px -4px 4px rgba(0,0,0,0.5));
    z-index: -1;
}
   
.qoote_icon{ 
    background: -webkit-linear-gradient(#973BB4, #EF3470);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
    font-size: 28px;
}
.text_data{ margin-top: 5px;}
.testimonial_data p:last-child{ margin: 0;}

.testimonial_user{ align-self: flex-end;}

/* Contact Section */
.contact_form{ background-color: var(--secondary_color); padding: 40px;}
.contact_form .form-control,.contact_form .form-select{ border-radius: 0; border: none; padding: 10px 12px;}
.contact_form .theme_btn{ margin-top: 15px;}
.contact_form .theme_btn span{ padding: 8px 24px;}
.contact_form h2{ font-size: 24px; font-weight: 700;margin-bottom: 30px; color: #fff;}
.contact_form > p{ margin-bottom: 30px; margin-top: -15px;}

.contact_detail .contact_info li{ align-items: flex-start; margin-bottom: 30px;}
.contact_detail .icon_box{ margin: 0;}

.contact_form .form-check-label{ color:#fff; }

.appointment_section{
    background: #061528 url('../images/appointment_bg.jpg') no-repeat left center; 
    position: relative; color: #fff;
}
.appointment_section:before {
    content: '';
    position: absolute;
    top: 0%;
    bottom: 0%;
    left: 0%;
    right: 0%;
    /* background: rgb(10 5 29 / 80%); */
    /* background: url('../images/appointment_bg.jpg') no-repeat left center;  */
    background-color: #061528;
    opacity: 0.7;

}
.appointment_section .container{ color: #fff; position: relative;}
.appointment_section h3{ color: #fff; position: relative;}


/* Product Detail Page */
.product_detail_info {
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: flex-start;
}
.product_detail_info .card-title {
    font-size: 30px;
    font-weight: 700;
}
.price {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px; font-weight: 500;
    font-family: "Poppins", sans-serif;
    gap: 10px;
    margin: 0;
}
.old_price {
    font-weight: 400;
    color: #666;
    text-decoration: line-through;
    font-size: 16px;
}
.prod_description{
    border: 1px dashed #ccc;
    width: 100%;
    padding: 15px;
}
.product_detail_info .social_links{ margin-top: 10px;}
.qty_box {
    display: flex;
    align-items: center;
    gap: 10px;
}
.gap_15 {
    gap: 15px;
}
.form-select {border-radius: 0;}
.qty_box .form-select { width: auto;}
.galleryThumbSwiper {
    overflow: hidden;
    margin: 15px 60px;
}
.galleryThumbSwiper .swiper-slide{transform: scale(0.8); border: 1px solid #ddd; transition: all 0.2s ease-in-out;}
.galleryThumbSwiper .swiper-slide.swiper-slide-thumb-active{transform: scale(0.9);box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);}


.product_cart_table .price{ justify-content:flex-start; }

.cart_icons {
    display: flex;
    justify-content: center;
    gap: 10px;
    padding: 15px;
    position: absolute;
    top: -70px;
    left: 0;
    right: 0;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}
.cart_icons li {
    position: relative;
}
.cart_icons li a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    border: 1px solid #ddd;
    background-color: #fff;
    transition: all 0.3s ease-in-out;
}
.pro_card .card-body{ position: relative;}
/*.pro_card::before{
    content: "";
    width: 100%; height: 100%;
    position: absolute; left: 0; top: 0;
    background-color: rgba(0,0,0,0.5);
    opacity: 0;
}*/
.pro_card:hover::before{ opacity: 1;}
.pro_card:hover .cart_icons {
    opacity: 1;
}
.pro_card:hover .cart_icons li:nth-child(1) a {
    animation: fade-in-down 0.3s ease-in-out;
    -webkit-animation: fade-in-down 0.3s ease-in-out;
}
.pro_card:hover .cart_icons li:nth-child(2) a {
    animation: fade-in-down 0.5s ease-in-out;
    -webkit-animation: fade-in-down 0.5s ease-in-out;
}

@keyframes fade-in-down {
    0% { opacity: 0; transform: translateY(25px);}

    100% { opacity: 1; transform: translateY(0);}
}


.swiper-button-next, .swiper-button-prev {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    background-color: #fff;
    border-radius: 100%;
    transition: all 0.2s ease-in-out;
}
.swiper-button-next::after,.swiper-button-prev::after{
    font-family: FontAwesome;
    content: "\f105";
    color: #000;
    font-size: 20px;
    transition: all 0.2s ease-in-out;
}
.swiper-button-prev::after{
    content: "\f104";
}



.product_cart_table table tr td {
    vertical-align: middle;
    padding: 25px 8px;
}
.pro_cart_box {
    display: flex;
    gap: 20px;
    align-items: center;
}
.pro_cart_img {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 120px;
    height: 140px;
    border: 1px solid #E5E5E5;
}
.pro_cart_info {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
    flex: 1;
}
.pro_cart_info .card-title{ color: #000; font-size: 20px;}
.order_summary_box {
    background-color: #e5e8ff;
    padding: 20px;
}
.summary_list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.summary_list p, .summary_list h6 {
    display: flex;
    justify-content: space-between;
    margin: 0;
    font-family: "Urbanist", sans-serif;
    font-size: 16px;
}

/* Checkout Page */
.checkout_card {
    border: 1px solid #E5E5E5;
    text-align: left;
    border-radius: 0;
    margin-bottom: 20px;
}
.checkout_card .card-header {
    border: none; background: transparent; margin-bottom: 0;
}
.checkout_card .cart_form{ margin: 0;}
.cart_form .form-select {
    width: 100%;
}
.cart_form .row {
    gap: 12px 0;
}
.select_group {
    display: flex;
    gap: 15px;
}
.sub_title {
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.debit_card_list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
}
.form_title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.flex_form {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}
.flex_form .form-control {
    flex: 1;
}
.flex_form input {
    min-width: 200px;
}


/* Appointment Page  */
  .appointment_box{
    background-color: #fff;
    border-radius: 10px; overflow: hidden;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
    display: flex; flex-wrap: wrap;
  }
/*  .appointment_info{ width:50%; padding:30px; }*/
  .appointment_info .contact_info{ display:block; }
  .appointment_form{ flex:1 }
  .appointment_form .contact_form{ height:100%; }

  @media only screen and (max-width: 767.98px) {
    .appointment_info{ width:100%; }
  }


.modal { font-weight:300; font-size:14px; }
.modal b{font-weight:600;}
.modal-title{ font-size:20px;}

.testimonial_section{ display:none;}

.rashi_card{ flex-direction:row; align-items:center; padding:15px; box-shadow:0 5px 15px rgba(0, 0, 0, 0.1); border:none; }
.rashi_card .img_box{ width:100px; height:100px; margin-right:10px; display:flex; align-items:center; justify-content:center;  }
.rashi_card .card-body{ flex:1; border-left:1px dashed #ccc; padding:0 0 0 20px; }
.rashi_card .card-title{ color:#000 }
.rashi_card .theme_btn{ padding:8px 15px; border-radius:30px; font-weight:400; }


/* Kwnoladge center */
.nakshatra_section .page_title.text-center p{ max-width:100%; }
.nakshatra_list{
    display: flex; flex-wrap: wrap; 
}
.nakshatra_list li{ width:33.33%; padding-right:15px }
.nakshatra_list a{ text-decoration:underline; }

.num{ font-family: "Poppins", sans-serif; }
h5 .num{ font-weight:500; }
p b,li b{ font-weight:600; }

table p{ margin:0; }

/* Footer Section */
/* footer{ color: #fff;  background-color: #09243b;} */
footer{
    background: #061528 url('../images/appointment_bg.jpg') no-repeat left center; 
    position: relative; color: #fff;
}
footer:before {
    content: '';
    position: absolute;
    top: 0%;
    bottom: 0%;
    left: 0%;
    right: 0%;
    /* background: rgb(10 5 29 / 80%); */
    /* background: url('../images/appointment_bg.jpg') no-repeat left center;  */
    background-color: #061528;
    opacity: 0.7;

}
footer .container{ color: #fff; position: relative;}


footer p{ text-align: justify;}
.footer_title{ 
    position: relative; display: block; 
    font-size: 22px; line-height: 25px;
    margin-bottom: 25px; color: #fff;
}

.footer_links{ margin-bottom: 30px;}
.footer_links li{ margin-bottom: 10px; transition: all 0.3s ease-in-out; position: relative; }
.footer_links li:last-child{ margin-bottom: 0;}
.footer_links li a{ position: relative; padding-bottom: 5px;}

.footer_links li:hover{ padding-left: 10px;}
.footer_links li:hover a{ color: #973BB4;}

footer .icon_box{  margin: 0; color: #fff; font-size: 20px;}
footer .contact_info li{ align-items: center; margin-bottom: 20px;}
footer .contact_info li:last-child{ margin-bottom: 0;}

footer .logo{ display: block; padding: 0; margin-bottom: 25px;}
.social_links{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px;}
.social_links li a{ 
    width: 40px; height: 40px; border-radius: 5px; background-color: var(--light_color); color: #000;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px; transition: all 0.2s ease-in-out;

}
.social_links li a:hover{ background-color: var(--secondary_color); color: #fff;  }


.copyriight{  background-color: #061528;padding: 8px 15px; margin-top: 50px; text-align: center; font-size: 14px; color: #fff; z-index: 1; position: relative; }
.copyriight p{ margin: 0; text-align: center;}


.whatsapp_icon a {
    background-color: #3AB54A !important;
    position: fixed;
    left: 10px;
    bottom: 38px;
    display: inline-block;
    font-size: 20px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    color: #fff;
    background: #3B5998;
    border: 1px solid #fff;
    border-radius: 50%;
    z-index: 9;
}

.alert-success {
    color: #155724;
    background-color: #d4edda;
    border-color: #c3e6cb;
}
.alert-dismissible {
    padding-right: 4rem;
}
.alert {
    position: relative;
    padding: .75rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: .25rem;
}

.alert-dismissible .close {
    position: absolute;
    top: 0;
    right: 0;
    padding: .75rem 1.25rem;
    color: inherit;
}




/* For Classic Menu Nested Dropdown */
.menu_link .dropdown-menu{ padding: 0;}
.menu_link .nav-link.dropdown-toggle{ justify-content: space-between;}

.classic_menu .dropdown-menu .nav-link {
    color: #000;
    padding: 5px 15px !important;
    border-bottom: 1px solid #ddd;
    font-weight: normal;
    font-size: 15px;
}
.dropdown-submenu {
    position: relative;
    min-width: 235px;
}
.dropdown-submenu .dropdown-menu {
    top: 0;
}
@media only screen and (min-width: 1199.98px) {
    .classic_menu .dropdown .dropdown-menu {
        display: none;
   }
   .dropdown-submenu .dropdown-menu {
        min-width: 220px;
    }
    .classic_menu .dropdown:hover > .dropdown-menu, .classic_menu .dropdown-submenu:hover > .dropdown-menu {
        display: block;
        margin: 0;
   }
}
@media only screen and (max-width: 1199.98px) {
    
    .classic_menu .dropdown-menu {
        position: relative;
        left: 0 !important;
        margin: 8px;
   }
    .classic_menu .dropdown-menu:before {
        content: "";
        width: 0;
        height: 0;
        border-left: 8px solid transparent;
        border-right: 8px solid transparent;
        border-bottom: 8px solid #000;
        position: absolute;
        top: -8px;
        left: 30px;
   }
    .classic_menu .menu_link > .dropdown-menu:before {
        border-bottom: 8px solid var(--secondary_color);;
   }
}


/* All Media Query */

@media only screen and (max-width: 1500px) {
    .banner_content .container{ display: flex; align-items: center; gap: 15px;}
    .banner_text{ flex: 1;}
    .banner_img{ position: relative; transform: none; top: 0; right: 0; max-width: 100%; width: 445px; }
}


@media only screen and (max-width: 1199.98px) {
   .navbar>.container{ position: relative;}
   .navbar_menu{ position: absolute; top: 100%; z-index: 9; width: 100%; left: 0; right: 0; }
   .navbar_menu .navbar-nav{ background-color: #fff;box-shadow: 0 0 10px rgba(0,0,0,0.2); margin-bottom: 15px;}
   .navbar_menu .navbar-nav li{ border-bottom: 1px solid #ddd;}
   .navbar_menu .navbar-nav li:last-child{ border-bottom: none;}
   .navbar_menu .nav-link{ color: #000;}
   .navbar_menu .navbar-nav .nav-link.active, .navbar_menu .navbar-nav .nav-link.show {color: #000;}
   .navbar_menu .nav-link.active, .navbar_menu .nav-link:hover { color: #000;}

   .navbar_menu .dropdown-menu{ margin: 10px; padding: 0;}

   .top_links .nav-link span{ display: none;}

   .navbar-toggler:focus{ box-shadow: none;}


   .top_links{gap: 15px; margin-left: auto; }
   .top_links .contact_info{ gap: 15px;}
   .top_links .address_info{ display: none;}

   .social_links{ border-bottom: 1px solid #ddd; padding-bottom: 30px; margin-bottom: 30px;}

   .container > .row.align-items-center{ align-items: flex-start !important;}
   

}

@media only screen and (max-width: 991.98px) {
    .banner_text{ flex: unset; max-width: 400px;}
    .banner_img{ flex: 1; width: auto; }
    .banner_text h3{ font-size: 35px;}
    .banner_text h2{ font-size: 50px; line-height: 60px; }
}

@media only screen and (max-width: 767.98px) {
/*    header .theme_btn{ display: none;}*/
    .appointment_btn{ width:40px;height:40px; padding:0;  }
    .appointment_btn span{ display:none; }
    .appointment_btn i{ font-size:22px; }
    .footer_links{border-bottom: 1px solid #ddd; padding-bottom: 30px; margin-bottom: 30px;}

    section{ padding: 50px 0;}
    .icon_list_box{ margin-bottom: 0;}

    .info_card_container{ flex-direction: column; align-items: center;}
    .info_card{ width: 100%;}

    .banner_content{ flex-direction: column;}
    .banner_text{ order: 2; flex: unset; max-width: 100%; padding-top: 0; align-items: center; text-align: center;}
    .banner_text p{ text-align: center;}
    .banner_img{ width: 100%; max-width: 300px; margin-top: 130px;}

    .btn_group{ justify-content:center; }

    .form_box{ flex-direction: column; align-items: normal;}
    .form_field label{ text-align: left;}

    /*  For Cart Page  */
    .product_cart_table .pro_cart_box {
         width: 100%;
    }
     .product_cart_table thead {
         display: none;
    }
     .product_cart_table tr {
         display: flex;
         flex-wrap: wrap;
         justify-content: space-between;
         gap: 5px;
         border: 1px solid #ddd;
         padding: 10px;
         margin-bottom: 10px;
    }
     .product_cart_table td {
         padding: 0 !important;
         border: none;
         display: flex;
         justify-content: space-between;
         gap: 10px;
    }
     .product_cart_table td::before {
         content: attr(data-title);
         font-weight: 600;
    }
     .product_cart_table .product_data_info {
         width: 100%;
         gap: 0;
         margin-bottom: 10px;
    }
     .product_cart_table .pro_cart_info .theme_btn {
         padding: 5px 10px;
    }

    .m_visible{ display:block; }
     
}

@media only screen and (max-width: 575px) {
    body{font-size:14px;}
    .logo{ padding: 10px 5px;}
    .top_links .contact_info{ gap: 10px;}

    .page_title h2{ font-size: 26px; gap: 15px;}

    .banner_img{ max-width: 200px; margin: 80px 0 10px;}
    .banner_content{ gap: 0;}
    /*.banner_text h2{ margin: 0;}*/
    .banner_text h3{ line-height: 40px;}
    /*.banner_text{ gap: 15px;}*/
    .banner_text .btn{ font-size:15px; padding:8px 10px;font-weight:500; line-height:20px;}

    .page_title h2{font-size: 25px; gap: 12px;}
    .page_title h2::before, .page_title h2::after{ width: 20px;}
    
}
