/**
 * Theme Name:        gynecologist
 * Theme URI:         https://example.com/fabled-sunset
 * Description:       this is a gynecologist theme...
 * Version:           1.0.0
 * Author:            Amina Rahmani.
 * Author URI:        https://www.linkedin.com/company/vrtual-dex/
 * Tags:              block-patterns, full-site-editing
 * Text Domain:       gynecologist
 * Domain Path:       /assets/lang
 * Tested up to:      6.4
 * Requires at least: 6.2
 * Requires PHP:      7.4
 * License:           GNU General Public License v2.0 or later
 * License URI:       https://www.gnu.org/licenses/gpl-2.0.html
 */

body {
    font-family: 'Poppins', sans-serif;
    background-color: #fff1f8;
}

img {
    width: 100%;
    object-fit: cover;
}

/* --- Navigation Base Styles --- */
.custom-header-nav {
   background-color: rgba(236, 155, 155, 0.3) !important;
    box-shadow: none !important;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    padding-top: 15px;
    padding-bottom: 15px;
    transition: all 0.3s ease;
}
.custom-header-nav .nav-link {
    font-weight: 600;
    color: #fc4b92 !important; 
    border-bottom: 3px solid transparent;
    transition: color 0.4s ease, border-bottom 0.4s ease;
}
.nav-link :focus{
    color: #ec6ea1 !important; 

}
.custom-header-nav .nav-link:hover {
    color: #ec6ea1 !important;
    border-bottom: 3px solid #ec6ea1;
}

#menu-icon {
    font-size: 1.8rem;
    border: none;
    color: #fc4b92!important; /* White burger menu on mobile */
}
.tn{
  width: 100%;
}

.navbar-toggler {
    background-color: #fc4b92 !important;
    border: none !important;
    padding: 8px 12px;
    border-radius: 6px;
}

.navbar-toggler i {
    color: #fc4b92 !important;
    font-size: 22px;
}

/* --- Hero Banner Wrapper --- */
.p01 {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    z-index: 1;
}
.banner-hero-wrapper {
    position: relative;
    z-index: 1;
    padding-top: 120px; 
    
}
.banner-hero-wrapper::before{
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(255, 192, 203, 0.2) !important;



    z-index: -1;
}

.nav-name{
  color: #fc4b92;
}
.text1 {
    font-weight: bolder;
    color: rgb(241, 231, 237);
}

.slider-text {
    align-items: center;
    align-content: center;
}

img.im1 {
    height: 450px;
    max-width: none;
    width: 100%;  
}

a {
    text-decoration: none;
}

.book {
    color: #f7f2f4;
    background-color: #f38ebf;
    font-size: medium;
    font-weight: 600;
    padding: 0px 0px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-right: 10px;
    text-transform: uppercase;
}

.book:hover {
    background-color: #ec6ea1;
    color: #faeaea;
    transform: scale(1.05);
    box-shadow: 0 8px 16px rgba(255, 128, 186, 0.3);
}

.design {
    background: linear-gradient(135deg, #f180b7 0%, #f180b7 100%);
    height: 30px;
    border-radius: 0 0 100% 100%;
    margin-bottom: 20px;
}

@media (max-width: 768px) {
     .banner-hero-wrapper {
        background-position: center center !important;
        background-size: cover !important;
        background-repeat: no-repeat !important;
    }

    .slide-img {
        height: 450px;
        display: flex;
        width: 100%;
        flex-direction: column;  
        position: relative;

    }
   
    .slider-text {
       padding-top: 50px;
       position: absolute;
       width: 80%; 
       
       
    }
    
    .im1 img {
       display: none;
    }
   

    .book {
        font-size: 16px;
        padding: 5px 10; 
        width: 90%; 
        border-radius: 6px; 
        margin-top:8px ;
    
    }

   
    .custom-header-nav .nav-link {
    background-color:#ec6ea1 !important;
    text-align: center;
    color: #ffff !important;

    }
    .custom-header-nav .nav-link:hover {
    color: #f8ebeb !important;
    border-bottom: 3px solid #ffff;

    }
    .slide_banner-heading, .slide-text_color{
        width: 90;
        text-align: center;
    }
    .gallery-card{
        width: 90%;
        margin: auto;
    }
    .gallery-img{
        margin-left: 10px;
        width: 100%;
    }
    .gallery-tex{
        padding-bottom: 30px;
    }

    .service-box{
        width: 90% !important;
    }
.col-lg-4.col-md-6.col-12.gallery-card {
    width: 100%;

}
.col-lg-4.col-md-6.col-12.g-4.gallery-card.mobile-css {
    padding-bottom: 30px;
}
}

/* Tablet */
@media (min-width: 768px) and (max-width: 991px) {
    /* Tablet CSS */
    .col-lg-4.col-md-6.col-sm-12.mb-4.service-mobile {
    width: 100%;
}
}



 [type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
    cursor: pointer;
    /* margin: auto; */
    width: auto;
}






/* mobile css end */
img.d-block.w-100 {
    height: 400px;
}
.banner-main{
    height: 300px !important;
    width:100%;
}

.bg-carousel-caption{
    padding: 20px;
   background-color: rgba(0, 0, 0, 0.2);
}
.carousel,
.carousel-inner,
.carousel-item {
    overflow: hidden;
}

.carousel-item img {
    width: 100%;
    height: 500px;
    object-fit: cover;
    display: block;
}
section#services {
    background-color: #f180b7 !important;
}
.content_color{
    text-align: justify;
    hyphens: auto;
    overflow-wrap: break-word;
    word-break: normal;
}
.icon_color{
    color: #f38ebf;
}
img.img-fluid.rounded.shadow.wp-post-image {
    height: 350px;
}
a.book {
    padding: 8px;
}
.servicepadding {
    background: #f180b7;
   
}
.headtext{
    font-weight: bolder !important;
}

.no-review{
    text-align: center;
    font-size: 30px;
}
.gallery-button{
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px 20px;
}
/*=========================================
        PREMIUM TESTIMONIAL SECTION
=========================================*/

.testimonial-section{
    max-width:900px;
    margin:60px auto;
    padding:50px 35px;
     background: #f180b7;
    border-radius:25px;
    box-shadow:0 20px 50px rgba(236,110,161,.15);
    border:1px solid rgba(243,142,191,.2);
}

.testimonial-heading{
    text-align:center;
    font-size:36px;
    font-weight:700;
    color:#d84d8d;
    margin-bottom:45px;
    position:relative;
}

.testimonial-heading::after{
    content:"";
    width:80px;
    height:4px;
    background:#f38ebf;
    border-radius:30px;
    display:block;
    margin:15px auto 0;
}

.swiper{
    overflow:hidden;
    padding-bottom:20px;
}

.testimonial{
    background:#fff;
    border-radius:18px;
    padding:45px 35px;
    text-align:center;
    transition:.35s;
    position:relative;
    min-height:280px;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
}

.testimonial:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 45px rgba(243,142,191,.25);
}

.quote-icon{
    position:static;
    display:block;
    font-size:60px;
    color:#f38ebf;
    line-height:1;
    margin-bottom:18px;
}

.testimonial-p{
    font-size:17px;
    color:#555;
    line-height:1.9;
    margin-bottom:30px;
    text-align:center;
}

.author{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin-top:auto;
}

.review-avatar{
    width:65px;
    height:65px;
    border-radius:50%;
    background:linear-gradient(135deg,#f38ebf,#d94b8b);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:26px;
    font-weight:700;
    box-shadow:0 10px 25px rgba(236,110,161,.3);
}

.reviewer-name{
    font-size:18px;
    font-weight:600;
    color:#444;
}

.swiper-pagination{
    margin-top:30px;
    position:relative !important;
}

.swiper-pagination-bullet{
    width:12px;
    height:12px;
    background:#fffefe !important;
    opacity:1;
    transition:.3s;
}

.swiper-pagination-bullet-active{
    width:32px;
    border-radius:30px;
    background:#fffefe !important;
}

/*=============================
      REVIEW BUTTON
=============================*/

#toggleReviewForm{
    background:#ec6ea1;
    color:#fff;
    border:none;
    margin-top: -40px;
    padding:12px 35px;
    border-radius:50px;
    font-weight:600;
    transition:.3s;
}

#toggleReviewForm:hover{
    background:#d84d8d;
    transform:translateY(-3px);
}

.review-form-card{
    max-width:700px;
    border:none;
    border-radius:20px;
    padding:35px;
    background:#fff;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.review-form-card input,
.review-form-card textarea{
    border-radius:10px;
    border:1px solid #ffd2e4;
    padding:12px;
}

.review-form-card input:focus,
.review-form-card textarea:focus{
    border-color:#ec6ea1;
    box-shadow:0 0 0 .2rem rgba(236,110,161,.2);
}

.review-form-card .book{
    width:100%;
    padding:12px;
    border-radius:10px;
}

/*=============================
        TABLET
=============================*/

@media(max-width:992px){

.testimonial-section{
    width:95%;
    padding:40px 25px;
}

}

/*=============================
        MOBILE
=============================*/

@media(max-width:768px){

.testimonial-section{
    width:100%;
    padding:30px 18px;
    border-radius:18px;
}

.testimonial-heading{
    font-size:28px;
}

.testimonial{
    padding:30px 20px;
    min-height:auto;
}

.quote-icon{
    font-size:48px;
}

.testimonial-p{
    font-size:15px;
}

.review-avatar{
    width:55px;
    height:55px;
    font-size:22px;
}

.reviewer-name{
    font-size:16px;
}

.review-form-card{
    padding:25px;
}

}

/*=============================
      SMALL MOBILE
=============================*/

@media(max-width:480px){

.testimonial-heading{
    font-size:24px;
}

.testimonial{
    padding:25px 15px;
}

.testimonial-p{
    font-size:14px;
}

.review-avatar{
    width:50px;
    height:50px;
}

}
.admin-bar .navbar {
    margin-top: 30px;
}

@media (max-width: 782px) {
    .admin-bar .navbar {
        margin-top: 30px;
       
    }
    
   
}
img.gallery-img.wp-post-image {
    height: 400px;
}
.img-fluid{
    width: 100%;
    object-fit: cover;
}
.doctor-banner-img{
    height:600px !important;
}
.back-top {
    position: fixed;
    right: 10px;
    bottom: 10px;
    z-index: 9999;
}

.back-top a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 15px;
    color: #fff;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff5fa2, #d63384);
    box-shadow: 0 10px 30px rgba(214, 51, 132, 0.35);
    transition: all .35s ease;
    position: relative;
    overflow: hidden;
}

/* Shine Effect */
.back-top a::before{
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,.35);
    transform: skewX(-25deg);
    transition: .6s;
}

.back-top a:hover::before{
    left: 130%;
}

.back-top a:active{
    transform: scale(.95);
}

.back-top i{
    line-height: 1;
}
.cv-container.aos-init.aos-animate {
    margin-top: 100px;
   background-color: #fff0fd;
}
.servicecss{
    margin-top: 60px !important;
}
.appointmentcss{
    margin-top: 100px !important;

}



.gallery-title{
    margin-top: -20px;
    background: #fff !important;
    padding: 20px;
    border-radius: 0 0 18px 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
    text-align: center;
    transition: .35s ease;
}


/* Modern browsers */
.gallery-tex{
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    color: #2d3748;
    line-height: 1.5;
    text-align: center;
    word-spacing: normal;
    letter-spacing: normal;
    white-space: normal;
    text-wrap: balance; 
    transition: .35s ease;
}

.gallery-tex::after{
    content: "";
    position: absolute;
    left: 50%;
    bottom: -8px;
    transform: translateX(-50%);
    width: 45px;
    height: 3px;
    border-radius: 50px;
    background: linear-gradient(90deg,#f38ebf,#d63384);
    transition: .35s ease;
}

.gallery-card:hover .card-title{
    background: linear-gradient(135deg,#fff,#fff5f8);
}

.gallery-card:hover .gallery-tex{
    color: #f38ebf;
}

.gallery-card:hover .gallery-tex::after{
    width: 80px;
}
.container-blog{
    margin-top: 100px;
}
/* ===========================
   Navbar Social Icons
=========================== */

.navbar-social{
    display:flex;
    align-items:center;
    justify-content:center;
    margin-left:20px;
}

.navbar-social .wp-block-social-links{
    display:flex;
    align-items:center;
    gap:10px;
    margin:0;
    padding:0;
    list-style:none;
}

.navbar-social .wp-block-social-link{
    margin:0;
    padding:0;
}

/* Icon Box */
.navbar-social .wp-block-social-link-anchor{
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#d63384;
    border-radius:50%;
    text-decoration:none;
    transition:all .35s ease;
    box-shadow:0 5px 15px rgba(214,51,132,.25);
}

/* SVG Icon */
.navbar-social .wp-block-social-link-anchor svg{
    width:20px;
    height:20px;
    fill:#fff;
    transition:.35s;
}





/* Responsive */
@media (max-width:991px){

    .navbar-social{
        margin-left:0;
        justify-content:center;
    }

    .navbar-social .wp-block-social-links{
        gap:8px;
    }

    .navbar-social .wp-block-social-link-anchor{
        width:38px;
        height:38px;
    }

    .navbar-social .wp-block-social-link-anchor svg{
        width:18px;
        height:18px;
    }
}
.documentation-box{
    background:#fff;
    padding:50px;
    border-radius:15px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.documentation-box h2{
    color:#d63384;
    font-weight:700;
    margin-bottom:20px;
}

.documentation-box h3{
    margin-top:40px;
    margin-bottom:15px;
    color:#333;
    border-left:5px solid #d63384;
    padding-left:12px;
}

.documentation-box h4{
    color:#444;
    margin-top:25px;
}

.documentation-box p,
.documentation-box li{
    color:#666;
    line-height:1.9;
}

.documentation-box ul,
.documentation-box ol{
    padding-left:25px;
}

.documentation-box hr{
    margin:35px 0;
}

.documentation-box blockquote{
    background:#f8f9fa;
    border-left:4px solid #d63384;
    padding:15px 20px;
    border-radius:8px;
    font-weight:600;
    margin:20px 0;
}
.recent-thumb{
    display: flex;
    align-items: center;      /* Vertical center */
    justify-content: center;  /* Horizontal center */
}

.recent-thumb img{
    width: 100px;
    height: 50px;
    object-fit: cover;
}
section.post-content-area.single-post-area.section-gap.mt-5 {
    margin-top: 100px !important;
}
.doctor-chamber-widget, .appointment-wrapper{
    margin-left: -48px;
    margin-right: -48px;
}
.appointment-wrapper{
    margin-bottom: -50px;
}
/* Contact Form 7 Spinner */
.wpcf7-spinner {
    width: 22px;
    height: 22px;
    margin-left: 10px;
    display: inline-block;
    vertical-align: middle;
    visibility: hidden;
    opacity: 0;
    background: transparent;
    border: 3px solid #ffd6e5;
    border-top: 3px solid #e91e63;
    border-radius: 50%;
    animation: cf7-spinner .8s linear infinite;
    transition: opacity .3s ease;
}

.wpcf7 form.submitting .wpcf7-spinner {
    visibility: visible;
    opacity: 1;
}

@keyframes cf7-spinner {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.btn.book {
    padding-top: 10px;
    /* padding: 10px 10px 10px 1px; */
    padding-bottom: 30px;
    padding-left: 10px;
    padding-right: 10px;
}
a.tag-btn {
    width: 100%;
}
h1.entry-title.mt-3.mb-3 {
    font-size: 28px;
    font-weight: 500;
}
