:root {
  --kg-blue:#362C6A; --kg-blue-mid:#4a3d8a; --kg-blue-soft:#5c4fa0;
  --gold:#c9962a; --gold-light:#f0c965;
  --ivory:#faf6ef; --ivory-mid:#f5efe0; --white:#ffffff;
  --slate:#4a5568; --slate-light:#718096; --text-dark:#1a202c;
  --green-acc:#1a6b4a; --green-bg:#e8f5ef;
  --red-acc:#b91c1c; --red-bg:#fef2f2;
  --violet-tint:#e8e2f5; --amber-light:#f2e3bb;
  --font-display:'Playfair Display',Georgia,serif;
  --font-body:'DM Sans',system-ui,sans-serif;
  --sh-sm:0 1px 3px rgba(54,44,106,.07);
  --sh-md:0 4px 16px rgba(54,44,106,.10);
  --sh-lg:0 8px 32px rgba(54,44,106,.16);
  --r:10px; --rlg:16px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);color:var(--text-dark);background:var(--ivory);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;}
a{text-decoration:none;color:inherit;}
.container{max-width:1140px;margin:0 auto;padding:0 24px;}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:10px;}

/* NAV */
.top-bar{background:var(--white);border-bottom:1px solid rgba(54,44,106,.08);position:sticky;top:0;z-index:100;box-shadow:var(--sh-sm);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:72px;gap:24px;}
.logo-wrap{display:flex;align-items:center;gap:14px;}
.logo-mark{width:46px;height:46px;border-radius:10px;background:var(--kg-blue);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--gold-light);flex-shrink:0;}
.logo-text-primary{font-family:var(--font-display);font-size:17px;font-weight:700;color:var(--kg-blue);line-height:1.2;}
.logo-text-sub{font-size:11px;color:var(--slate-light);}
.nabh-pill{display:inline-block;font-size:10px;font-weight:600;padding:1px 6px;border-radius:3px;background:var(--green-bg);color:var(--green-acc);vertical-align:middle;}
.nav-links{display:flex;gap:4px;}
.nav-links a{font-size:13px;font-weight:500;color:var(--slate);padding:5px 6px;border-radius:6px;transition:color .2s,background .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--kg-blue);background:rgba(54,44,106,.05);}
.nav-cta{display:flex;gap:10px;align-items:center;}
.btn-emergency{background:var(--red-acc);color:#fff;font-size:14px;font-weight:700;padding:10px 22px;border-radius:8px;border:none;cursor:pointer;transition:background .2s,transform .15s;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);}
.btn-emergency:hover{background:#9b1616;transform:translateY(-1px);}
.btn-call{background:transparent;color:var(--kg-blue);font-size:13px;font-weight:600;padding:10px 16px;border-radius:8px;border:1.5px solid rgba(54,44,106,.2);display:inline-flex;align-items:center;gap:6px;transition:all .2s;font-family:var(--font-body);}
.btn-call:hover{border-color:var(--kg-blue);background:rgba(54,44,106,.04);}
.btn-ghost{background:transparent;color:var(--kg-blue);font-size:14px;font-weight:600;padding:12px 22px;border-radius:8px;border:1.5px solid rgba(54,44,106,.22);display:inline-flex;align-items:center;gap:6px;transition:all .2s;font-family:var(--font-body);}
.btn-ghost:hover{background:rgba(54,44,106,.04);border-color:var(--kg-blue);}

/* BREADCRUMB */
.breadcrumb{background:var(--ivory-mid);border-bottom:1px solid rgba(54,44,106,.07);padding:10px 0;}
.bc-inner{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--slate-light);}
.bc-inner a{color:var(--kg-blue-mid);font-weight:500;}
.bc-inner a:hover{color:var(--kg-blue);}
.bc-sep{opacity:.4;}
.bc-current{color:var(--kg-blue);font-weight:600;}

/* EMERGENCY BANNER — always-visible urgent strip */
.emergency-banner{background:var(--red-acc);padding:12px 0;}
.eb-inner{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;}
.eb-text{font-size:14px;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px;}
.eb-text .pulse{display:inline-block;width:10px;height:10px;border-radius:50%;background:#fff;animation:pulse 1.4s ease infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.5;transform:scale(1.3);}}
.eb-number{font-size:18px;font-weight:800;color:#fff;letter-spacing:.02em;}
.eb-tag{font-size:11px;font-weight:600;background:rgba(255,255,255,.18);color:#fff;padding:3px 10px;border-radius:12px;}

/* HERO */
.hero{background:var(--ivory);padding:56px 0 48px;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;top:-80px;right:-60px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(185,28,28,.07) 0%,transparent 70%);pointer-events:none;}
.hero::after{content:'';position:absolute;bottom:-60px;left:-40px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(54,44,106,.06) 0%,transparent 70%);pointer-events:none;}
.hero-grid{display:grid;grid-template-columns:1fr 380px;gap:48px;align-items:center;position:relative;z-index:1;}
.hero-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;}
.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 13px;border-radius:20px;font-size:12px;font-weight:600;}
.badge-247{background:var(--red-bg);color:var(--red-acc);border:1px solid rgba(185,28,28,.2);font-weight:800;}
.badge-trauma{background:var(--amber-light);color:#7a4a0a;border:1px solid rgba(201,150,42,.3);}
.badge-nabh{background:var(--green-bg);color:var(--green-acc);border:1px solid rgba(26,107,74,.2);}
.hero h1{font-family:var(--font-display);font-size:clamp(26px,3.4vw,42px);font-weight:700;color:var(--kg-blue);line-height:1.16;margin-bottom:16px;}
.hero h1 em{font-style:normal;color:var(--red-acc);display:block;font-size:85%;}
.hero-desc{font-size:15px;color:var(--slate);line-height:1.72;margin-bottom:24px;max-width:480px;}
.hero-desc strong{color:var(--kg-blue);}
.hero-ctas{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px;}
.btn-hero-emergency{background:var(--red-acc);color:#fff;font-size:15px;font-weight:700;padding:13px 28px;border-radius:9px;border:none;cursor:pointer;font-family:var(--font-body);display:inline-flex;align-items:center;gap:8px;transition:all .2s;}
.btn-hero-emergency:hover{background:#9b1616;transform:translateY(-2px);box-shadow:0 6px 20px rgba(185,28,28,.3);}
.hero-tags{display:flex;flex-wrap:wrap;gap:6px;}
.hero-tag{font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;background:var(--white);border:1px solid rgba(54,44,106,.1);color:var(--slate);}

/* EMERGENCY CONTACT CARD */
.emerg-card{background:var(--white);border-radius:var(--rlg);border:2px solid var(--red-acc);padding:26px;box-shadow:0 4px 20px rgba(185,28,28,.12);}
.emerg-card-title{font-size:12px;font-weight:700;color:var(--red-acc);letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;display:flex;align-items:center;gap:8px;}
.emerg-number{display:block;font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--red-acc);margin-bottom:4px;text-decoration:none;transition:color .2s;}
.emerg-number:hover{color:#9b1616;}
.emerg-sub{font-size:12px;color:var(--slate-light);margin-bottom:18px;}
.emerg-row{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid rgba(54,44,106,.07);}
.emerg-row:last-of-type{border-bottom:none;}
.emerg-icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;}
.emerg-label{font-size:11px;color:var(--slate-light);margin-bottom:1px;}
.emerg-val{font-size:13px;font-weight:600;color:var(--kg-blue);line-height:1.4;}
.wa-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:14px;background:#25d366;color:#fff;font-size:14px;font-weight:700;padding:11px;border-radius:9px;transition:all .2s;font-family:var(--font-body);}
.wa-btn:hover{background:#1db954;}
.avail-badge{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:12px;font-weight:600;color:var(--green-acc);}
.avail-dot{width:8px;height:8px;border-radius:50%;background:var(--green-acc);}

/* CAPABILITIES STRIP */
.cap-strip{background:var(--kg-blue);padding:20px 0;}
.cap-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.cap-item{display:flex;align-items:center;gap:0;color:rgba(255,255,255,.85);font-size:13px;font-weight:500;}
.cap-item strong{color:#fff;font-weight:700;}

/* SERVICES GRID */
.services-section{padding:72px 0;background:var(--white);}
.section-head{margin-bottom:44px;}
.section-head h2{font-family:var(--font-display);font-size:clamp(22px,2.8vw,32px);font-weight:700;color:var(--kg-blue);margin-bottom:8px;}
.section-head p{font-size:15px;color:var(--slate);max-width:580px;}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.service-card{background:var(--ivory);border-radius:var(--rlg);padding:22px;border:1px solid rgba(54,44,106,.07);position:relative;overflow:hidden;transition:box-shadow .2s,transform .2s;}
.service-card:hover{box-shadow:var(--sh-md);transform:translateY(-3px);background:var(--white);}
.service-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--red-acc);transform:scaleX(0);transition:transform .25s;transform-origin:left;}
.service-card:hover::before{transform:scaleX(1);}
.service-name{font-size:15px;font-weight:700;color:var(--kg-blue);margin-bottom:7px;}
.service-desc{font-size:13px;color:var(--slate);line-height:1.65;}
.service-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px;}
.service-tag{font-size:10px;font-weight:500;padding:2px 8px;border-radius:4px;background:var(--red-bg);color:var(--red-acc);}

/* APPROACH */
.approach-section{padding:72px 0;background:var(--ivory);}
.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.approach-text h2{font-family:var(--font-display);font-size:clamp(22px,2.8vw,32px);font-weight:700;color:var(--kg-blue);line-height:1.25;margin-bottom:16px;}
.approach-text p{font-size:15px;color:var(--slate);line-height:1.72;margin-bottom:14px;}
.approach-text p:last-child{margin-bottom:0;}
.approach-text strong{color:var(--kg-blue);}
.approach-points{display:flex;flex-direction:column;gap:12px;}
.ap-item{display:flex;align-items:flex-start;padding:14px 16px;background:var(--white);border-radius:var(--r);border:1px solid rgba(54,44,106,.07);}
.ap-title{font-size:14px;font-weight:700;color:var(--kg-blue);margin-bottom:3px;}
.ap-desc{font-size:12px;color:var(--slate);line-height:1.55;}

/* DOCTORS */
.doctors-section{padding:72px 0;background:var(--white);}
.doctors-section h2{font-family:var(--font-display);font-size:clamp(22px,2.8vw,32px);font-weight:700;color:var(--kg-blue);margin-bottom:8px;}
.doctors-section .sub{font-size:15px;color:var(--slate);margin-bottom:40px;}
.doctors-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:820px;}
.doctor-card{background:var(--ivory);border-radius:var(--rlg);padding:22px;border:1px solid rgba(54,44,106,.08);text-align:center;transition:box-shadow .2s,transform .2s;}
.doctor-card:hover{box-shadow:var(--sh-md);transform:translateY(-2px);background:var(--white);}
.doctor-avatar{width:76px;height:76px;border-radius:50%;overflow:hidden;background:var(--violet-tint);margin:0 auto 12px;border:3px solid var(--ivory-mid);}
.doctor-avatar img{width:100%;height:100%;object-fit:cover;}
.doctor-qual{font-size:11px;font-weight:600;color:var(--gold);margin-bottom:3px;letter-spacing:.04em;text-transform:uppercase;}
.doctor-name{font-size:15px;font-weight:700;color:var(--kg-blue);margin-bottom:3px;line-height:1.3;}
.doctor-role{font-size:12px;color:var(--slate-light);margin-bottom:12px;}
.doctor-links{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;}
.doc-link{font-size:12px;font-weight:600;padding:5px 12px;border-radius:6px;display:inline-flex;align-items:center;gap:4px;transition:all .2s;}
.doc-link.profile{background:var(--violet-tint);color:var(--kg-blue);}
.doc-link.profile:hover{background:var(--kg-blue);color:#fff;}
.doc-link.appt{background:var(--kg-blue);color:#fff;}
.doc-link.appt:hover{background:var(--kg-blue-mid);}
.deg-note{font-size:10px;color:var(--slate-light);font-style:italic;margin-top:4px;}

/* FAQ */
.faq-section{padding:72px 0;background:var(--ivory);}
.faq-layout{display:grid;grid-template-columns:260px 1fr;gap:60px;align-items:start;}
.faq-sidebar{position:sticky;top:88px;}
.faq-sidebar h2{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--kg-blue);margin-bottom:10px;}
.faq-sidebar p{font-size:13px;color:var(--slate);line-height:1.65;margin-bottom:6px;}
.faq-item{border-bottom:1px solid rgba(54,44,106,.09);padding:15px 0;}
.faq-q{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;cursor:pointer;}
.faq-q-text{font-size:14px;font-weight:600;color:var(--kg-blue);line-height:1.4;}
.faq-toggle{font-size:20px;color:var(--gold);flex-shrink:0;transition:transform .25s;font-weight:300;line-height:1;margin-top:2px;}
.faq-a{font-size:13px;color:var(--slate);line-height:1.7;max-height:0;overflow:hidden;transition:max-height .35s ease,margin-top .2s;}
.faq-item.open .faq-a{max-height:300px;margin-top:10px;}
.faq-item.open .faq-toggle{transform:rotate(45deg);}

/* BOTTOM CTA */
.bottom-cta{background:var(--red-acc);padding:64px 0;text-align:center;position:relative;overflow:hidden;}
.bottom-cta::before{content:'';position:absolute;top:-80px;right:-80px;width:400px;height:400px;border-radius:50%;background:rgba(255,255,255,.05);pointer-events:none;}
.bottom-cta h2{font-family:var(--font-display);font-size:clamp(24px,3vw,38px);font-weight:700;color:#fff;margin-bottom:10px;position:relative;z-index:1;}
.bottom-cta p{font-size:15px;color:rgba(255,255,255,.8);margin-bottom:30px;position:relative;z-index:1;}
.cta-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;position:relative;z-index:1;}
.btn-cta-white-solid{background:#fff;color:var(--red-acc);font-size:16px;font-weight:800;padding:15px 36px;border-radius:10px;border:none;cursor:pointer;font-family:var(--font-body);display:inline-flex;align-items:center;gap:8px;transition:all .2s;}
.btn-cta-white-solid:hover{background:var(--ivory);transform:translateY(-2px);}
.btn-cta-outline{background:rgba(255,255,255,.12);color:#fff;font-size:15px;font-weight:600;padding:15px 32px;border-radius:10px;border:1.5px solid rgba(255,255,255,.35);font-family:var(--font-body);display:inline-flex;align-items:center;gap:8px;transition:all .2s;}
.btn-cta-outline:hover{background:rgba(255,255,255,.2);}
.cta-note{font-size:12px;color:rgba(255,255,255,.55);margin-top:14px;position:relative;z-index:1;}

/* ══════════════════════════
   FOOTER
══════════════════════════ */
footer { background:var(--kg-blue); color:rgba(255,255,255,.75); padding:60px 0 28px; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; margin-bottom:40px; }
.footer-brand-desc { font-size:13px; color:rgba(255,255,255,.55); line-height:1.7; margin:14px 0 18px; max-width:280px; }
.footer-col-title { font-size:12px; font-weight:700; color:white; letter-spacing:.07em; text-transform:uppercase; margin-bottom:14px; }
.footer-links { list-style:none; display:flex; flex-direction:column; gap:8px; }
.footer-links a { font-size:13px; color:rgba(255,255,255,.6); transition:color .2s; }
.footer-links a:hover { color:var(--gold-light); }
.footer-bottom { border-top:1px solid rgba(255,255,255,.08); padding-top:22px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; }
.footer-bottom-text { font-size:12px; color:rgba(255,255,255,.4); }
.footer-cert-badge { font-size:11px; font-weight:600; padding:4px 10px; border-radius:4px; background:rgba(201,150,42,.15); color:var(--gold-light); border:1px solid rgba(201,150,42,.25); }


/* STICKY — emergency gets red call button */
.sticky-actions{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:1000;}
.sticky-btn{width:52px;height:52px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;font-size:22px;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.22);transition:all .2s;text-decoration:none;}
.sticky-btn.wa{background:#25d366;}
.sticky-btn.call{background:var(--red-acc);}
.sticky-btn:hover{transform:scale(1.1);}

@keyframes fadeUp{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}
.hero-left>*{opacity:0;animation:fadeUp .55s ease forwards;}
.hero-badges{animation-delay:.05s;}.hero h1{animation-delay:.1s;}
.hero-desc{animation-delay:.18s;}.hero-ctas{animation-delay:.26s;}.hero-tags{animation-delay:.34s;}
.hero-right{opacity:0;animation:fadeUp .55s ease .2s forwards;}

@media(max-width:1024px){.services-grid{grid-template-columns:repeat(2,1fr);}.footer-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:768px){
  .hero-grid{grid-template-columns:1fr;}.emerg-card{display:none;}
  .approach-grid{grid-template-columns:1fr;}.faq-layout{grid-template-columns:1fr;gap:32px;}
  .faq-sidebar{position:static;}.nav-links{display:none;}
  .doctors-grid{grid-template-columns:repeat(2,1fr);}
  .cap-inner{justify-content:flex-start;gap:12px;}
  .footer-grid{grid-template-columns:1fr;}
}
@media(max-width:480px){
  .services-grid{grid-template-columns:1fr;}.cta-buttons{flex-direction:column;}
  .doctors-grid{grid-template-columns:1fr;}.eb-inner{gap:10px;}
}
