:root {
  --text-xs:   clamp(0.75rem,  0.7rem  + 0.25vw, 0.875rem);
  --text-sm:   clamp(0.875rem, 0.8rem  + 0.35vw, 1rem);
  --text-base: clamp(1rem,     0.95rem + 0.25vw, 1.125rem);
  --text-lg:   clamp(1.125rem, 1rem    + 0.75vw, 1.5rem);
  --text-xl:   clamp(1.5rem,   1.2rem  + 1.25vw, 2.25rem);
  --text-2xl:  clamp(2rem,     1.2rem  + 2.5vw,  3.5rem);
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  
  /* ORIGINAL COLORS PRESERVED */
  --color-bg: #020617;
  --color-surface: #020617;
  --color-surface-soft: #020c1f;
  --color-surface-alt: #0b1120;
  --color-border-soft: rgba(148,163,184,0.35);
  --color-border-strong: rgba(148,163,184,0.7);
  --color-text: #e5e7eb;
  --color-text-muted: #9ca3af;
  --color-text-faint: #6b7280;
  --color-accent: #22c55e;
  --color-accent-soft: rgba(34,197,94,0.16);
  --color-accent-alt: #38bdf8;
  
  --radius-sm: 0.4rem;
  --radius-md: 0.75rem;
  --radius-lg: 1.25rem;
  --radius-pill: 999px;
  --shadow-soft: 0 18px 60px rgba(15,23,42,0.85);
  --shadow-subtle: 0 12px 30px rgba(15,23,42,0.55);
  --content-default: 1120px;
  --transition-fast: 180ms cubic-bezier(0.16, 1, 0.3, 1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;text-size-adjust:none; overflow-x: hidden;}

/* PREVENT HORIZONTAL SCROLL ON MOBILE */
body{
  min-height:100vh;
  max-width: 100vw;
  overflow-x: hidden;
  font-family:'DM Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size:var(--text-base);
  line-height:1.6;
  color:var(--color-text);
  background:radial-gradient(circle at top left,#0f172a 0,#020617 42%),
             radial-gradient(circle at bottom right,#111827 0,#020617 55%);
  -webkit-font-smoothing:antialiased;
}

img{display:block;max-width:100%;height:auto;}
h1,h2,h3,h4,h5,h6{font-family:'Fraunces', 'Times New Roman', serif;line-height:1.15;text-wrap:balance;}
p{max-width:70ch;text-wrap:pretty;}
a{color:inherit;text-decoration:none; transition: color var(--transition-fast);}
a:hover{color:var(--color-accent);}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.mt-3 { margin-top: var(--space-3); }

/* HEADER & STRIP */
header{
  position:sticky;top:0;z-index:100;
  background:linear-gradient(to bottom,rgba(2,6,23,0.98),rgba(2,6,23,0.92));
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(15,23,42,0.9);
}
.top-strip{
  border-bottom:1px solid rgba(148,163,184,0.18);
  font-size:var(--text-xs);
  color:var(--color-text-muted);
}
.top-strip-inner{
  max-width:var(--content-default);
  margin-inline:auto;
  padding:0.45rem var(--space-4);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  flex-wrap: wrap; /* Added for mobile wrap */
}
.top-strip-left,.top-strip-right{
  display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);
}
.chip{
  display:inline-flex;align-items:center;gap:0.45rem;
  border-radius:var(--radius-pill);
  padding:0.15rem 0.65rem;
  border:1px solid rgba(148,163,184,0.4);
  background:rgba(15,23,42,0.9);
}
.chip--danger{
  border-color:rgba(239,68,68,0.7);
  background:radial-gradient(circle at top left,rgba(248,113,113,0.16),transparent 55%);
  color:#fecaca;
}

/* NAVIGATION */
.nav{
  max-width:var(--content-default);
  margin-inline:auto;
  padding:0.7rem var(--space-4);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  position: relative;
}
.brand{
  display:flex;align-items:center;gap:0.7rem;
}
.logo-orb{
  width:42px;height:42px;border-radius:40%;
  background:conic-gradient(from 220deg,#22c55e,#10b981,#38bdf8,#22c55e);
  position:relative;
  box-shadow:0 14px 40px rgba(34,197,94,0.6);
}
.logo-orb::before{
  content:"";position:absolute;inset:4px;border-radius:32%;
  background:radial-gradient(circle at 30% 20%,rgba(226,232,240,0.9),transparent 40%),
             radial-gradient(circle at 70% 80%,rgba(45,212,191,0.35),transparent 55%),
             #020617;
  border:1px solid rgba(148,163,184,0.7);
}
.logo-cross{
  position:absolute;inset:9px;border-radius:22%;border:1px solid rgba(56,189,248,0.7);
  display:flex;align-items:center;justify-content:center;
}
.logo-cross::before,.logo-cross::after{
  content:"";position:absolute;background:#22c55e;border-radius:999px;
}
.logo-cross::before{width:60%;height:2px;}
.logo-cross::after{width:2px;height:60%;}
.brand-text-main{font-weight:600;font-size:var(--text-sm);letter-spacing:0.08em;text-transform:uppercase;}
.brand-text-sub{font-size:var(--text-xs);color:var(--color-text-muted);}

.nav-links{display:flex;align-items:center;gap:var(--space-4);font-size:var(--text-sm);}
.nav-links a{position:relative;padding-block:0.2rem;color:var(--color-text-muted);}    
.nav-links a:hover{color:var(--color-text); text-decoration: none;}

/* BUTTONS */
.nav-cta{display:flex;align-items:center;gap:var(--space-2);}    
.btn{
  border-radius:var(--radius-pill);
  border:1px solid var(--color-border-soft);
  padding:0.55rem 1.2rem;
  font-size:var(--text-sm);
  font-weight:500;
  display:inline-flex;align-items:center;justify-content:center;gap:0.45rem;
  background:rgba(15,23,42,0.9);
  color:var(--color-text);
  transition:all var(--transition-fast);
  cursor:pointer;
  text-decoration:none !important;
}
.btn-primary{
  background:radial-gradient(circle at top left,#4ade80,#22c55e 42%,#22c55e 70%);
  color:#022c22;
  border-color:rgba(74,222,128,0.9);
  box-shadow:0 14px 40px rgba(34,197,94,0.6);
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 55px rgba(34,197,94,0.7);color:#022c22;}    
.btn-ghost{background:transparent;}
.btn-ghost:hover{background:rgba(15,23,42,0.9);box-shadow:0 10px 30px rgba(15,23,42,0.85);color:#fff;}    

.w-100 { width: 100%; }

/* HERO */
.hero{
  padding-block:clamp(var(--space-10),9vh,var(--space-20));
  border-bottom:1px solid rgba(15,23,42,0.9);
  background:
    radial-gradient(circle at 0% 0%,rgba(34,197,94,0.12),transparent 50%),
    radial-gradient(circle at 100% 0%,rgba(56,189,248,0.16),transparent 55%);
}
.hero-grid{
  max-width:var(--content-default);
  margin-inline:auto;
  padding-inline:var(--space-4);
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
  gap:var(--space-10);
  align-items:center;
}
.eyebrow{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.2em;color:var(--color-accent-alt);margin-bottom:var(--space-3);display:inline-flex;align-items:center;gap:0.6rem;}
.eyebrow-dot{width:8px;height:8px;border-radius:999px;background:var(--color-accent-alt);box-shadow:0 0 0 6px rgba(56,189,248,0.28);}    
.hero h1{font-size:clamp(2.6rem,1.4rem + 3vw,3.8rem);margin-bottom:var(--space-4);}
.hero-highlight{color:#bbf7d0;}
.hero p{color:var(--color-text-muted);margin-bottom:var(--space-5);}    
.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-4);}    
.hero-meta-row{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;font-size:var(--text-xs);color:var(--color-text-muted);}    
.meta-pill{
  border-radius:var(--radius-pill);
  padding:0.25rem 0.7rem;
  border:1px dashed rgba(148,163,184,0.7);
  background:rgba(15,23,42,0.85);
}
.kpi-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:var(--space-4);
  margin-top:var(--space-5);
}
.kpi{
  border-radius:var(--radius-md);
  border:1px solid rgba(148,163,184,0.3);
  background:radial-gradient(circle at top left,rgba(34,197,94,0.12),transparent 55%),#020617;
  padding:var(--space-3) var(--space-4);
}
.kpi-value{font-size:var(--text-xl);font-weight:600;}
.kpi-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.16em;color:var(--color-text-faint);}    

.hero-media-wrapper{position:relative;}    
.hero-card{
  border-radius:var(--radius-lg);
  background:radial-gradient(circle at top left,rgba(34,197,94,0.15),transparent 55%),
             radial-gradient(circle at bottom right,rgba(8,47,73,0.8),#020617);
  border:1px solid rgba(148,163,184,0.4);
  box-shadow:var(--shadow-soft);
  overflow:hidden;
}
.hero-card img{width:100%;height:260px;object-fit:cover;opacity:0.94;}
.hero-card-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);}

.hero-badge-stack{
  position:absolute;
  inset:auto 0 -1.3rem auto;
  display:flex;flex-direction:column;gap:0.4rem;
  align-items:flex-end;
}
.floating-badge{
  border-radius:var(--radius-pill);
  padding:0.35rem 0.8rem;
  background:rgba(15,23,42,0.98);
  border:1px solid rgba(148,163,184,0.5);
  font-size:var(--text-xs);
  color:var(--color-text-muted);
  box-shadow:var(--shadow-subtle);
}

/* SECTIONS & GRIDS */
.section{padding-block:clamp(var(--space-10),7vh,var(--space-16));}
.section-alt{background:radial-gradient(circle at top center,rgba(15,23,42,0.92),#020617 55%);}    
.section-inner{max-width:var(--content-default);margin-inline:auto;padding-inline:var(--space-4);}    
.section-header{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6);}    
.section-kicker{font-size:var(--text-xs);letter-spacing:0.18em;text-transform:uppercase;color:var(--color-accent-alt);}    
.section-title{font-size:var(--text-xl);}    
.section-description{color:var(--color-text-muted);}    

.pill-row{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:var(--space-4);font-size:var(--text-xs);}    
.pill-filter{
  border-radius:var(--radius-pill);
  padding:0.4rem 1.1rem;
  border:1px solid rgba(148,163,184,0.45);
  background:rgba(15,23,42,0.9);
  cursor:pointer;
  color:var(--color-text);
}
.pill-filter.active, .pill-filter:hover{ background: var(--color-accent); border-color: var(--color-accent); color: #000; font-weight: 500;}

.grid-3{ display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:var(--space-4); }
.split{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:var(--space-8); align-items:flex-start; }

/* CARDS */
.feature-card{
  border-radius:var(--radius-md);
  border:1px solid rgba(148,163,184,0.35);
  background:radial-gradient(circle at top left,rgba(15,23,42,0.9),#020617);
  padding:var(--space-4);
  display:flex;flex-direction:column;gap:var(--space-2);
  transition: transform var(--transition-fast);
}
.feature-card:hover { transform: translateY(-3px); border-color: var(--color-accent-alt); }
.feature-tag{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.14em;color:var(--color-text-faint);}    
.feature-card p { font-size: var(--text-sm); color: var(--color-text-muted); }

.panel{
  border-radius:var(--radius-lg);
  border:1px solid rgba(148,163,184,0.35);
  background:radial-gradient(circle at top left,rgba(15,23,42,0.9),#020617);
  padding:var(--space-4);
  box-shadow:var(--shadow-subtle);
}
.image-wrapper { border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(148,163,184,0.35);box-shadow:var(--shadow-subtle);background:#020617; }
.image-wrapper img { width: 100%; height: 100%; object-fit: cover; }

.dept-card { border-radius:var(--radius-md);border:1px solid rgba(148,163,184,0.35);overflow:hidden;background:#020617; }
.dept-media img{width:100%;height:180px;object-fit:cover;}
.dept-body{padding:var(--space-3) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:0.3rem;}
.dept-label{font-size:var(--text-xs);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:0.12em;}
.dept-body p { color:var(--color-text-muted);font-size:var(--text-sm); }

/* DOCTORS */
.doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--space-4);}    
.doc-card{
  border-radius:var(--radius-md);
  border:1px solid rgba(148,163,184,0.4);
  background:radial-gradient(circle at 0 0,rgba(34,197,94,0.12),transparent 55%),#020617;
  display:flex;flex-direction:column;overflow:hidden;
}
.doc-head{display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);align-items:center;}
.doc-avatar{
  width:52px;height:52px;border-radius:999px;
  background:radial-gradient(circle at 30% 20%,#e5e7eb,#9ca3af);
  border:2px solid rgba(34,197,94,0.8);
  display:flex;align-items:center;justify-content:center;font-weight:600;color:#03624b;font-size:var(--text-sm);
}
.doc-name { font-weight:600; }
.doc-body{padding:0 var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:0.2rem;font-size:var(--text-sm); color: var(--color-text-muted);}    
.doc-meta{font-size:var(--text-xs);color:var(--color-text-muted);}    

/* TIMELINE & FAQS */
.timeline{border-left:1px dashed rgba(148,163,184,0.6);padding-left:var(--space-4);margin-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4);}
.timeline-item{position:relative;font-size:var(--text-sm);}    
.timeline-item::before{
  content:"";position:absolute;left:-1.45rem;top:0.3rem;width:10px;height:10px;border-radius:999px;
  background:var(--color-accent);box-shadow:0 0 0 6px rgba(34,197,94,0.26);
}
.timeline-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.14em;color:var(--color-text-faint);margin-bottom:0.15rem;}
.timeline p { color: var(--color-text-muted); }

details{
  border-radius:var(--radius-md);
  border:1px solid rgba(148,163,184,0.4);
  background:rgba(15,23,42,0.9);
  padding:var(--space-3) var(--space-4);
  font-size:var(--text-sm);
  margin-bottom: 10px;
}
summary{cursor:pointer;font-weight:500;}
details p{margin-top:var(--space-2);color:var(--color-text-muted);}    

/* RESOURCES */
.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-4);}    
.testimonial-card{
  border-radius:var(--radius-lg);
  border:1px solid rgba(148,163,184,0.35);
  background:radial-gradient(circle at top left,rgba(15,23,42,0.9),#020617);
  padding:var(--space-4);
  display:flex;flex-direction:column;gap:var(--space-3);
}
.quote-mark { font-size:3rem; line-height: 0.6; color:var(--color-accent); font-family: 'Fraunces', serif; margin-top: 10px;}
.testimonial-card p { font-size: var(--text-sm); color: var(--color-text-muted); }

.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--space-4);}    
.blog-card{
  border-radius:var(--radius-md);
  border:1px solid rgba(148,163,184,0.35);
  overflow:hidden;
  background:rgba(15,23,42,0.96);
}
.blog-card img{width:100%;height:180px;object-fit:cover;}
.blog-body{padding:var(--space-3) var(--space-4) var(--space-4);font-size:var(--text-sm);display:flex;flex-direction:column;gap:0.25rem;}
.blog-body p { color: var(--color-text-muted); }
.blog-meta{font-size:var(--text-xs);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:0.14em;}

/* CONTACT & FORMS */
.contact-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--space-8);align-items:flex-start;}
.contact-list{list-style:none;margin-top:var(--space-2);display:flex;flex-direction:column;gap:0.4rem;font-size:var(--text-sm);color:var(--color-text-muted);}    

.direct-call-banner {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
  background: rgba(34, 197, 94, 0.1); border: 1px solid rgba(34, 197, 94, 0.3);
  padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); margin-bottom: var(--space-4);
}
.call-link { font-size: var(--text-lg); font-weight: 600; color: var(--color-accent); }

form{display:grid;gap:var(--space-3);}
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
label{font-size:var(--text-sm);font-weight:500;}
input,select,textarea{
  width:100%;padding:0.6rem 0.8rem;border-radius:var(--radius-sm);
  border:1px solid var(--color-border-soft);
  background:rgba(15,23,42,0.95);
  color:var(--color-text);
  font:inherit;
  transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);
}
input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:none;border-color:var(--color-accent);
  box-shadow:0 0 0 1px rgba(34,197,94,0.75),0 0 0 12px rgba(34,197,94,0.18);
  background:#020617;
}
input[type="date"]::-webkit-calendar-picker-indicator { filter: invert(1); cursor: pointer; opacity: 0.6; }

.map-shell{margin-top:var(--space-3);border-radius:var(--radius-md);border:1px solid rgba(148,163,184,0.35);overflow:hidden;}
.map-shell iframe{width:100%;border:0;height:260px;}

/* FOOTER */
footer{
  border-top:1px solid rgba(15,23,42,1);
  background:#020617;
  margin-top:var(--space-12);
}
.footer-inner{max-width:var(--content-default);margin-inline:auto;padding:var(--space-8) var(--space-4);display:grid;grid-template-columns:1.6fr repeat(3,minmax(0,1fr));gap:var(--space-6);font-size:var(--text-sm);}
.footer-heading{font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-2);}    
.footer-list{list-style:none;display:flex;flex-direction:column;gap:0.35rem;color:var(--color-text-muted);}    
.footer-bottom{border-top:1px solid rgba(15,23,42,0.95);padding:var(--space-4);font-size:var(--text-xs);color:var(--color-text-faint);display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;max-width:var(--content-default);margin-inline:auto;}    
.footer-links a { margin-left: 10px; }

.emergency-fab{position:fixed;right:1.3rem;bottom:1.3rem;z-index:50;}
.emergency-fab button{
  border-radius:var(--radius-pill);
  padding:0.6rem 1rem;
  border:none;
  background:radial-gradient(circle at 0 0,#f97373,#ef4444);
  color:#fee2e2;
  font-size:var(--text-xs);
  font-weight:600;
  display:flex;align-items:center;gap:0.45rem;
  box-shadow:0 18px 55px rgba(248,113,113,0.7);
  cursor:pointer;
}

/* =========================================
   RESPONSIVENESS (MOBILE, TABLET FIXES)
   ========================================= */

/* Hamburger Menu default hidden */
.mobile-menu-btn { display: none; background: transparent; border: none; cursor: pointer; flex-direction: column; gap: 5px; z-index: 101; }
.mobile-menu-btn span { display: block; width: 25px; height: 2px; background: var(--color-text); transition: 0.3s; }
.mobile-only-cta { display: none; margin-top: 15px; }

@media (max-width: 960px) {
  .hero-grid, .split, .contact-grid { grid-template-columns: 1fr; }
  .footer-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hero-card img { height: 350px; }
}

@media (max-width: 840px) {
  /* Hide Desktop Nav Elements */
  .desktop-only-cta { display: none; }
  
  /* Show Hamburger Menu */
  .mobile-menu-btn { display: flex; }
  
  /* Mobile Navigation Dropdown */
  .nav-links {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: rgba(2, 6, 23, 0.98);
    backdrop-filter: blur(20px);
    flex-direction: column;
    padding: var(--space-6) var(--space-4);
    border-bottom: 1px solid var(--color-border-soft);
    display: none; /* hidden by default */
    align-items: flex-start;
  }
  
  /* Active Class for Javascript toggle */
  .nav-links.active { display: flex; }
  .mobile-only-cta { display: block; width: 100%; }
}

@media (max-width: 640px) {
  .hide-mobile { display: none; }
  .form-row { grid-template-columns: 1fr; }
  .footer-inner { grid-template-columns: 1fr; text-align: center; }
  .footer-list { align-items: center; }
  .brand { justify-content: center; margin-bottom: 15px; }
  .hero-card img { height: 250px; }
  .direct-call-banner { flex-direction: column; text-align: center; gap: 10px; }
  .footer-bottom { justify-content: center; flex-direction: column; text-align: center; }
}