/* =====================================================================
   Zoy MultiSpeciality Hospitals — UI Enhancements
   Confined to brand colours from the logo:
     Brinjal  #7e0382  (doctor names / primary brand)
     Blue     #21418a  (education / qualifications)
     Grey     #666666  (body / consultant text)
   Additive only — does not override layout structure.
   ===================================================================== */

:root{
    --zoy-brinjal:#7e0382;
    --zoy-brinjal-dark:#5e0263;
    --zoy-blue:#21418a;
    --zoy-text:#666666;
    --zoy-soft:#faf1fc;
}

html{scroll-behavior:smooth;}
img{image-rendering:auto;}

/* ----- Buttons ----------------------------------------------------- */
.btn-1{
    transition:transform .25s ease, box-shadow .25s ease, background .25s ease !important;
}
.btn-1:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 26px rgba(126,3,130,.30);
}

/* ----- Section titles --------------------------------------------- */
.sec-title h2{color:var(--zoy-brinjal);letter-spacing:.5px;}
.sec-title h3{color:#222;}

/* ----- Home / generic Doctors preview cards ----------------------- */
.doctors .doctors-box{
    background:#fff;
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 6px 20px rgba(0,0,0,.06);
    transition:transform .3s ease, box-shadow .3s ease;
}
.doctors .doctors-box:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 38px rgba(126,3,130,.16);
}
.doctors .doctors-box .img-box{overflow:hidden;}
.doctors .doctors-box .img-box img{transition:transform .5s ease;}
.doctors .doctors-box:hover .img-box img{transform:scale(1.06);}

/* doctor name = brinjal (preview grids only; the directory page styles itself) */
.doctors:not(.doctors-2) .doctors-box .text-box h5{
    color:var(--zoy-brinjal);
    font-weight:700;
}
/* remaining lines (speciality / consultant) = standard grey */
.doctors:not(.doctors-2) .doctors-box .text-box span{
    color:var(--zoy-text);
}
/* first text line (qualification) = blue */
.doctors:not(.doctors-2) .doctors-box .text-box span:first-of-type{
    color:var(--zoy-blue);
    font-weight:600;
}

/* ----- Features cards --------------------------------------------- */
.features-item{transition:transform .3s ease, box-shadow .3s ease;}
.features-item:hover{transform:translateY(-5px);}

/* ----- Departments carousel --------------------------------------- */
.departments-item{
    border-radius:14px;
    overflow:hidden;
    transition:transform .3s ease, box-shadow .3s ease;
}
.departments-item:hover{
    transform:translateY(-6px);
    box-shadow:0 16px 34px rgba(126,3,130,.18);
}
.departments-item-img-box span,
.departments-item-img-box img{transition:transform .5s ease;}
.departments-item:hover .departments-item-img-box span{transform:scale(1.07);}

/* ----- About core list icons -------------------------------------- */
.about-core li i{color:var(--zoy-brinjal);}
.about-experience{box-shadow:0 14px 30px rgba(126,3,130,.22);}

/* ----- Breadcrumb header tint ------------------------------------- */
.breadcrumb-header .overlay{
    background:linear-gradient(120deg, rgba(94,2,99,.78) 0%, rgba(33,65,138,.62) 100%);
}
.breadcrumb-header .banner h1{text-shadow:0 2px 14px rgba(0,0,0,.35);}

/* ----- Footer ----------------------------------------------------- */
.footer .links a,
.footer .opening-hours a{transition:color .2s ease, padding-left .2s ease;}
.footer .links a:hover{color:#fff;padding-left:4px;}
.footer-icon li a,
.icon-follow li a{transition:transform .25s ease, background .25s ease;}
.footer-icon li a:hover,
.icon-follow li a:hover{transform:translateY(-3px);}

/* ----- Navbar active / hover -------------------------------------- */
.nav-bar-links .link-level-1{transition:color .2s ease;}

/* ----- Scroll-up button ------------------------------------------- */
.scroll-up a{transition:transform .25s ease, box-shadow .25s ease;}
.scroll-up a:hover{transform:translateY(-4px);box-shadow:0 10px 22px rgba(126,3,130,.3);}

/* ----- Reveal-on-load polish for cards ---------------------------- */
@media (prefers-reduced-motion: no-preference){
    .doctors-2 .doc-item{animation:zoyFade .5s ease both;}
    @keyframes zoyFade{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
}

/* =====================================================================
   Phase 2 — refreshed, modern polish (layout-safe: colour/shadow/radius)
   ===================================================================== */

/* Navbar depth */
.nav-bar{box-shadow:0 2px 18px rgba(0,0,0,.06);}

/* Section-title accent underline under the main heading */
.sec-title h3{position:relative;padding-bottom:14px;}
.sec-title h3::after{
    content:"";position:absolute;left:0;bottom:0;
    width:60px;height:3px;border-radius:3px;
    background:linear-gradient(90deg,var(--zoy-brinjal),var(--zoy-blue));
}

/* Department single-page image + content */
.single-department-box img{border-radius:14px;box-shadow:0 10px 26px rgba(0,0,0,.08);margin-bottom:8px;}
.single-department-box h2{color:var(--zoy-brinjal);font-weight:700;}
.list-core li{position:relative;transition:color .2s ease;}
.list-core li:hover{color:var(--zoy-brinjal);}

/* Department sidebar */
.sidebar-department .categories li.active > a{color:var(--zoy-brinjal);font-weight:700;}
.sidebar-department .categories li a{transition:color .2s ease, padding-left .2s ease;}
.sidebar-department .categories li a:hover{color:var(--zoy-brinjal);padding-left:4px;}

/* Form fields — consistent focus state across appointment / quote / contact forms */
.quote-item input:focus,
.quote-item textarea:focus,
.appoinment-item input:focus,
.appoinment-item textarea:focus,
.contact-form input:focus,
.contact-form textarea:focus,
input.form-control:focus,
textarea:focus{
    border-color:var(--zoy-brinjal) !important;
    box-shadow:0 0 0 3px rgba(126,3,130,.12) !important;
    outline:none !important;
}

/* About-us experience badge + headings */
.about-text-box .sec-title h3{color:var(--zoy-brinjal);}

/* Breadcrumb heading weight */
.breadcrumb-header .banner h1{font-weight:700;letter-spacing:.4px;}

/* Make appointment heading in dept/quote forms */
.quote-box .sec-title h3{color:var(--zoy-brinjal);}

/* Smooth focus-visible for accessibility */
a:focus-visible,button:focus-visible{outline:2px solid var(--zoy-brinjal);outline-offset:2px;}

/* =====================================================================
   Phase 3 — header 24/7 live badge + hero tagline typography
   ===================================================================== */

/* Blinking, attractive "24/7 Open" badge in the top header */
.zoy-247{
    display:inline-flex;
    align-items:center;
    gap:6px;
    font-weight:700;
    letter-spacing:.4px;
    color:var(--zoy-brinjal);
    vertical-align:middle;
}
.zoy-247 .dot{
    width:9px;height:9px;border-radius:50%;
    background:#1fbf4c;
    box-shadow:0 0 0 0 rgba(31,191,76,.7);
    animation:zoyPulse 1.3s infinite;
}
.zoy-247 .txt{animation:zoyBlink 1.4s ease-in-out infinite;}
@keyframes zoyBlink{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes zoyPulse{
    0%{box-shadow:0 0 0 0 rgba(31,191,76,.6)}
    70%{box-shadow:0 0 0 8px rgba(31,191,76,0)}
    100%{box-shadow:0 0 0 0 rgba(31,191,76,0)}
}
@media (prefers-reduced-motion: reduce){
    .zoy-247 .dot,.zoy-247 .txt{animation:none;}
}

/* Hero banner tagline — distinct font + clean 2-line layout */
.header .banner .about-website,
.header .banner .hero-tagline{
    font-family:'Rajdhani', 'Public Sans', sans-serif;
    font-weight:500;
    font-size:22px;
    line-height:1.45;
    letter-spacing:.4px;
    max-width:600px;
}
@media (max-width:575px){
    .header .banner .about-website,
    .header .banner .hero-tagline{font-size:18px;}
    /* let it flow naturally on small screens */
    .header .banner .hero-tagline br{display:none;}
}

/* =====================================================================
   Phase 4 — hero readability scrim (text left, photo action stays visible)
   ===================================================================== */
.header .sec-hero .overlay{
    background:linear-gradient(90deg,
        rgba(74,2,78,.78) 0%,
        rgba(74,2,78,.55) 32%,
        rgba(20,10,30,.22) 58%,
        rgba(0,0,0,0) 100%);
}
@media (max-width:767px){
    .header .sec-hero .overlay{
        background:linear-gradient(90deg, rgba(74,2,78,.80) 0%, rgba(40,5,55,.55) 70%, rgba(0,0,0,.25) 100%);
    }
}

/* =====================================================================
   Phase 5 — contrast fixes (white text where backgrounds are dark/purple)
   ===================================================================== */
.zoy-247{color:#ffffff;}
.about-core li i{color:#ffffff;}
.provide-core li i{color:#ffffff;}
.breadcrumb-header .banner h1{color:#ffffff;}
.breadcrumb-header .banner ul li,
.breadcrumb-header .banner ul li a{color:#ffffff;}

/* =====================================================================
   Phase 6 — UX: scroll progress bar
   ===================================================================== */
#zoy-progress{
    position:fixed;top:0;left:0;height:4px;width:0;z-index:99999;
    background:linear-gradient(90deg,var(--zoy-brinjal),var(--zoy-blue));
    transition:width .08s linear;
}

/* =====================================================================
   Phase 7 — SEO content section + FAQ accordion
   ===================================================================== */
.zoy-seo{padding:70px 0;background:#fff;}
.zoy-seo .zoy-seo-inner{max-width:980px;margin:0 auto;}
.zoy-seo h2{color:var(--zoy-brinjal);font-weight:700;margin-bottom:18px;position:relative;padding-bottom:14px;}
.zoy-seo h2::after{content:"";position:absolute;left:0;bottom:0;width:64px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--zoy-brinjal),var(--zoy-blue));}
.zoy-seo h3{color:var(--zoy-blue);font-weight:700;font-size:21px;margin:26px 0 12px;}
.zoy-seo p{color:#566;line-height:1.8;margin-bottom:16px;}
.zoy-seo .zoy-points{list-style:none;padding:0;margin:0 0 10px;display:grid;grid-template-columns:1fr 1fr;gap:10px 26px;}
.zoy-seo .zoy-points li{position:relative;padding-left:30px;color:#445;line-height:1.6;margin-bottom:6px;}
.zoy-seo .zoy-points li::before{content:"\f058";font-family:"Font Awesome 5 Free";font-weight:900;position:absolute;left:0;top:1px;color:var(--zoy-brinjal);}
@media (max-width:767px){.zoy-seo .zoy-points{grid-template-columns:1fr;}}

.zoy-faq{padding:70px 0 80px;background:linear-gradient(180deg,#faf6fc 0%,#ffffff 100%);}
.zoy-faq .zoy-faq-head{text-align:center;max-width:720px;margin:0 auto 36px;}
.zoy-faq .zoy-faq-head h2{color:var(--zoy-brinjal);font-weight:700;margin-bottom:10px;}
.zoy-faq .zoy-faq-head p{color:#667;}
.zoy-faq-list{max-width:880px;margin:0 auto;}
.zoy-faq-item{background:#fff;border:1px solid #ecdcf0;border-radius:12px;margin-bottom:14px;overflow:hidden;box-shadow:0 4px 16px rgba(126,3,130,.05);transition:box-shadow .25s ease;}
.zoy-faq-item.open{box-shadow:0 10px 28px rgba(126,3,130,.12);}
.zoy-faq-q{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;text-align:left;cursor:pointer;padding:18px 22px;font-weight:600;font-size:16px;color:var(--zoy-brinjal);background:none;border:none;}
.zoy-faq-q .zoy-faq-ic{flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:var(--zoy-brinjal);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;transition:transform .3s ease;}
.zoy-faq-item.open .zoy-faq-ic{transform:rotate(45deg);}
.zoy-faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.zoy-faq-a-inner{padding:0 22px 20px;color:#566;line-height:1.75;}

/* =====================================================================
   Phase 8 — department content + service-list polish
   ===================================================================== */
.single-department-box .dept-lead{font-size:17px;line-height:1.85;color:#4a4a55;margin-bottom:18px;}
.single-department-box p{line-height:1.85;color:#566;}
.single-department-box h3.dept-sub{color:var(--zoy-blue);font-weight:700;font-size:20px;margin:26px 0 14px;}
.single-department-box .list-core{list-style:none;padding-left:0;margin:6px 0 22px;}
.single-department-box .list-core li{position:relative;padding-left:32px;margin-bottom:11px;line-height:1.6;color:#4a4a55;}
.single-department-box .list-core li::before{content:"\f058";font-family:"Font Awesome 5 Free";font-weight:900;position:absolute;left:0;top:2px;color:var(--zoy-brinjal);}
.single-department-box .dept-cta{background:linear-gradient(120deg,#faf1fc,#eef3fb);border-left:4px solid var(--zoy-brinjal);border-radius:10px;padding:18px 22px;margin-top:24px;}
.single-department-box .dept-cta p{margin:0;color:#3f3f49;font-size:16px;}
.single-department-box .dept-cta a{color:var(--zoy-brinjal);font-weight:700;text-decoration:none;}

/* =====================================================================
   Phase 8 — Modern, clean, premium healthcare UI + mobile-first
   ===================================================================== */

/* ---- Base rendering polish ---- */
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
::selection{background:rgba(126,3,130,.16);color:inherit;}
* {scroll-margin-top:90px;}

/* Premium custom scrollbar (desktop) */
@media (min-width:992px){
    ::-webkit-scrollbar{width:11px;height:11px;}
    ::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--zoy-brinjal),var(--zoy-blue));border-radius:10px;border:2px solid #f2eef5;}
    ::-webkit-scrollbar-track{background:#f2eef5;}
}

/* ---- Fluid, premium typography ---- */
.breadcrumb-header .banner h1{font-size:clamp(30px,6vw,60px);line-height:1.1;}
.sec-title h3{font-size:clamp(25px,4vw,38px);line-height:1.2;}
.sec-title h2{
    text-transform:uppercase;font-size:14px;font-weight:700;letter-spacing:2px;
    display:inline-flex;align-items:center;gap:8px;
}
.sec-title h2::before{content:"";width:24px;height:2px;background:var(--zoy-brinjal);display:inline-block;}

/* ---- Premium buttons (pill + gradient on the primary CTAs) ---- */
.btn-1{border-radius:50px !important;}
.btn-2,
.nav-bar-tools .btn-1,
.quote-box .btn-1,
.appoinment-area .btn-1,
button[name="submit"].btn-1{
    background-image:linear-gradient(90deg,#7e0382,#a51fae) !important;
    border-color:transparent !important;color:#fff !important;
}

/* ---- Section / card polish ---- */
.features-item{border-radius:14px;}
.provide-item,.provide-core li,.fact-item,.testimonial-item,.blog-item,.quote-box,.appoinment-area{border-radius:14px;}
.quote-box,.appoinment-area{box-shadow:0 10px 30px rgba(126,3,130,.06);}

/* Floating contact buttons — premium */
.icon-bar-whatsapp .whatsapp,.icon-bar-side .mailto{
    box-shadow:0 8px 22px rgba(0,0,0,.18);transition:transform .25s ease;
}
.icon-bar-whatsapp .whatsapp:hover,.icon-bar-side .mailto:hover{transform:scale(1.08);}

/* =====================================================================
   Mobile-first responsiveness
   ===================================================================== */
@media (max-width:991px){
    .py-100{padding-top:60px !important;padding-bottom:60px !important;}
    .py-100-70{padding-top:60px !important;padding-bottom:30px !important;}
    .single-department .sidebar-department{margin:0 0 34px 0 !important;}
    .single-department .mr-20{margin-right:0 !important;}
}
@media (max-width:767px){
    .py-100{padding-top:46px !important;padding-bottom:46px !important;}
    .py-100-70{padding-top:46px !important;padding-bottom:16px !important;}
    .zoy-seo{padding:46px 0 !important;}
    .zoy-faq{padding:46px 0 54px !important;}
    .zoy-seo h2,.zoy-faq .zoy-faq-head h2{font-size:24px;}
    .about-text-box,.about-img-box{margin-bottom:24px;}
    /* hero buttons: comfortable tap targets, no cramped side margins */
    .header .banner .btn-1{display:inline-block;margin:6px 8px 6px 0 !important;}
    .ml-30{margin-left:0 !important;}
    .breadcrumb-header{min-height:200px;}
    .footer .footer-content [class*="col-"]{margin-bottom:26px;}
    .top-navbar .content-box{flex-wrap:wrap;justify-content:center;gap:6px;text-align:center;}
    .top-navbar .website-info{flex-wrap:wrap;justify-content:center;}
    .doctors-toolbar .doc-pills{gap:8px;}
    .doc-pill{padding:7px 14px;font-size:12.5px;}
}
@media (max-width:575px){
    /* (button padding left to theme default) */
    .btn-1.ml-30{margin-left:0 !important;}
    .zoy-faq-q{font-size:15px;padding:15px 16px;}
    .zoy-faq-a-inner{padding:0 16px 16px;}
    .sec-title h3{font-size:23px;}
    /* stack any 2-up rows that crowd on phones */
    .all-features-item .col-lg-4{margin-bottom:0;}
}

/* Tap-target comfort for nav + links on touch devices */
@media (hover:none){
    .nav-bar-links .link-level-1{padding-top:10px;padding-bottom:10px;}
}

/* =====================================================================
   Phase 9 — fixes: button text alignment kept to theme; uniform preview
   doctor images (home / about) so portraits never spill their card
   ===================================================================== */
.doctors:not(.doctors-2) .doctors-box .img-box{height:300px;}
.doctors:not(.doctors-2) .doctors-box .img-box img{
    width:100% !important;height:100% !important;
    object-fit:cover;object-position:top center;
}
@media (max-width:575px){
    .doctors:not(.doctors-2) .doctors-box .img-box{height:320px;}
}

/* =====================================================================
   Phase 10 — branded CTA panel (replaces the removed video/play panel)
   ===================================================================== */
.zoy-cta-panel{
    height:100%;
    background:linear-gradient(135deg,#7e0382 0%,#5e0263 55%,#21418a 130%);
    border-radius:16px;padding:42px 38px;color:#fff;
    display:flex;flex-direction:column;justify-content:center;
    box-shadow:0 18px 40px rgba(126,3,130,.25);
}
.zoy-cta-panel .zoy-cta-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.16);padding:6px 14px;border-radius:50px;font-size:13px;font-weight:600;align-self:flex-start;margin-bottom:18px;letter-spacing:.3px;}
.zoy-cta-panel .zoy-cta-badge .dot{width:8px;height:8px;border-radius:50%;background:#1fbf4c;animation:zoyBlink 1.4s ease-in-out infinite;}
.zoy-cta-panel h3{color:#fff;font-weight:700;font-size:26px;line-height:1.25;margin-bottom:14px;}
.zoy-cta-panel p{color:rgba(255,255,255,.92);line-height:1.7;margin-bottom:18px;}
.zoy-cta-panel .zoy-cta-list{list-style:none;padding:0;margin:0 0 26px;}
.zoy-cta-panel .zoy-cta-list li{padding:6px 0;font-size:15px;}
.zoy-cta-panel .zoy-cta-list li i{margin-right:9px;}
.zoy-cta-panel .btn-1{align-self:flex-start;background:#fff !important;background-image:none !important;color:#7e0382 !important;border:none !important;}
.zoy-cta-panel .btn-1:hover{box-shadow:0 12px 26px rgba(0,0,0,.28);}
@media (max-width:991px){.zoy-cta-panel{margin-top:24px;padding:32px 26px;}}

/* =====================================================================
   Phase 11 — image download deterrents (block drag / select / long-press)
   ===================================================================== */
img{
    -webkit-user-drag:none;
    -khtml-user-drag:none;
    -moz-user-drag:none;
    -o-user-drag:none;
    user-select:none;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    -webkit-touch-callout:none;   /* stops iOS long-press "Save Image" */
}

/* =====================================================================
   Phase 11 — slightly soften the placeholder (dummy) doctor avatars
   ===================================================================== */
.doctors-2 .doc-item img[src*="Dr_dummy"]{opacity:.85;}
