/* === SOURCE: styles.css === */
/* ============================================================
   NAAM HOSPITALS – styles.css
   Premium Healthcare Website
   ============================================================ */

/* ---- RESET & BASE ---- */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }
body {
  font-family: "DM Sans", system-ui, sans-serif;
  color: #1a2535;
  background: #fff;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
ul { list-style: none; }
button { cursor: pointer; font-family: inherit; border: none; background: none; }

/* ---- CSS VARIABLES ---- */
:root {
  --blue:       #0a5c8a;
  --blue-dark:  #07415f;
  --blue-light: #e8f4fb;
  --teal:       #4bb8a9;
  --teal-light: #eaf7f5;
  --navy:       #0d1e30;
  --grey-1:     #f4f7fa;
  --grey-2:     #e8edf3;
  --grey-3:     #a3b3c6;
  --text:       #1a2535;
  --text-muted: #526275;
  --white:      #ffffff;
  --shadow-sm:  0 2px 8px rgba(10,92,138,.08);
  --shadow-md:  0 6px 24px rgba(10,92,138,.12);
  --shadow-lg:  0 12px 40px rgba(10,92,138,.16);
  --radius:     12px;
  --radius-lg:  20px;
  --header-h:   72px;
  --transition: .25s ease;
}

/* ---- TYPOGRAPHY ---- */
h1, h2, h3, h4 {
  font-family: "Cormorant Garamond", Georgia, serif;
  line-height: 1.2;
  font-weight: 600;
  color: var(--navy);
}
h1 { font-size: clamp(2rem, 5vw, 3.5rem); }
h2 { font-size: clamp(1.6rem, 3.5vw, 2.6rem); }
h3 { font-size: clamp(1.1rem, 2vw, 1.4rem); font-weight: 600; }
p { color: var(--text-muted); }
.body-text { font-size: 1.05rem; line-height: 1.75; color: var(--text-muted); margin-bottom: 1rem; }

/* ---- UTILITIES ---- */
.container { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.section { padding: 80px 0; }
.bg-light { background: var(--grey-1); }
.text-center { text-align: center; }
.mt-2 { margin-top: 1.5rem; }
.mt-4 { margin-top: 2.5rem; }
.section-label {
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--teal);
  margin-bottom: .6rem;
  display: block;
}
.section-title { margin-bottom: 1rem; }
.section-sub {
  font-size: 1.05rem;
  color: var(--text-muted);
  max-width: 640px;
  margin: 0 auto 2.5rem;
}

/* ---- BUTTONS ---- */
.btn {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .75rem 1.75rem;
  border-radius: 50px;
  font-size: .95rem;
  font-weight: 500;
  font-family: "DM Sans", sans-serif;
  transition: all var(--transition);
  white-space: nowrap;
}
.btn-primary {
  background: var(--blue);
  color: var(--white);
  box-shadow: 0 4px 16px rgba(10,92,138,.3);
}
.btn-primary:hover { background: var(--blue-dark); transform: translateY(-2px); box-shadow: 0 6px 24px rgba(10,92,138,.4); }
.btn-white { background: var(--white); color: var(--blue); font-weight: 600; }
.btn-white:hover { background: var(--grey-1); transform: translateY(-2px); }
.btn-outline { border: 2px solid var(--blue); color: var(--blue); padding: calc(.75rem - 2px) calc(1.75rem - 2px); }
.btn-outline:hover { background: var(--blue); color: var(--white); }
.btn-outline-white { border: 2px solid rgba(255,255,255,.7); color: var(--white); padding: calc(.75rem - 2px) calc(1.75rem - 2px); }
.btn-outline-white:hover { background: rgba(255,255,255,.15); }
.btn-full { width: 100%; justify-content: center; padding: 1rem 1.75rem; border-radius: 10px; }
.btn-sm { padding: .5rem 1.2rem; font-size: .85rem; }
.btn-wa { background: #25d366; color: var(--white); }
.btn-wa:hover { background: #1ebe5c; }
.btn-danger { background: #e53935; color: var(--white); border-radius: 50px; padding: .75rem 1.75rem; display: inline-block; font-weight: 600; margin-top: .5rem; }
.btn-danger:hover { background: #c62828; }

/* ============================================================
   HEADER
   ============================================================ */
.site-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  height: var(--header-h);
  background: rgba(255,255,255,.97);
  backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 var(--grey-2);
  transition: box-shadow var(--transition);
}
.site-header.scrolled { box-shadow: var(--shadow-md); }
.header-inner {
  display: flex;
  align-items: center;
  height: var(--header-h);
  gap: 2rem;
}
.logo-link { text-decoration: none; }
.logo { display: flex; align-items: center; gap: .7rem; }
.logo-icon { flex-shrink: 0; }
.logo-text { display: flex; flex-direction: column; line-height: 1.1; }
.logo-name { font-family: "Cormorant Garamond", serif; font-size: 1.5rem; font-weight: 700; color: var(--blue); letter-spacing: .04em; }
.logo-tagline { font-size: .68rem; font-weight: 500; text-transform: uppercase; letter-spacing: .14em; color: var(--text-muted); }
.main-nav { margin-left: auto; }
.nav-list { display: flex; gap: .25rem; }
.nav-link {
  font-size: .9rem;
  font-weight: 500;
  padding: .5rem .85rem;
  border-radius: 8px;
  color: var(--text);
  transition: all var(--transition);
}
.nav-link:hover, .nav-link.active { color: var(--blue); background: var(--blue-light); }
.header-cta { margin-left: .5rem; }
.hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  padding: 8px;
  margin-left: auto;
}
.hamburger span {
  display: block; width: 22px; height: 2px;
  background: var(--navy); border-radius: 2px;
  transition: all var(--transition);
}
.hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity: 0; }
.hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ============================================================
   HERO
   ============================================================ */
.hero {
  margin-top: var(--header-h);
  min-height: calc(100vh - var(--header-h));
  display: flex;
  flex-direction: column;
  position: relative;
}
.hero-slider { flex: 1; position: relative; }
.hero-slide {
  min-height: calc(100vh - var(--header-h));
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.hero-slide::before {
  content: none;
}
.hero-overlay {
  display: none;
}
.hero-content {
  position: relative; z-index: 2;
  padding: 5rem 0;
}
.hero-location {
  font-size: .85rem;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(255,255,255,.7);
  margin-bottom: 1rem;
}
.hero-headline {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.5rem, 6vw, 5rem);
  font-weight: 700;
  color: var(--white);
  line-height: 1.08;
  margin-bottom: 1.5rem;
}
.hero-accent {
  color: #7ee8df;
  display: block;
}
.hero-sub {
  font-size: clamp(1rem, 2vw, 1.25rem);
  color: rgba(255,255,255,.85);
  max-width: 560px;
  line-height: 1.65;
  margin-bottom: 2.5rem;
}
.hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 3rem; }
.hero-stats {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
}
.hero-stat {
  display: flex;
  flex-direction: column;
  border-left: 2px solid rgba(255,255,255,.3);
  padding-left: 1rem;
}
.stat-num {
  font-family: "Cormorant Garamond", serif;
  font-size: 2rem;
  font-weight: 700;
  color: var(--white);
  line-height: 1;
}
.stat-num sup { font-size: .9rem; }
.stat-label { font-size: .78rem; color: rgba(255,255,255,.65); font-weight: 500; letter-spacing: .05em; text-transform: uppercase; margin-top: .2rem; }
.hero-scroll-indicator {
  position: absolute; bottom: 2rem; left: 50%; transform: translateX(-50%);
  z-index: 10;
}
.hero-scroll-indicator span {
  display: block; width: 1px; height: 48px;
  background: linear-gradient(to bottom, rgba(255,255,255,.7), transparent);
  margin: 0 auto;
  animation: scrollFade 2s ease-in-out infinite;
}
@keyframes scrollFade { 0%, 100% { opacity: 0; } 50% { opacity: 1; } }

/* ============================================================
   EMERGENCY BANNER
   ============================================================ */
.emergency-banner {
  background: linear-gradient(90deg, #c62828, #e53935);
  padding: .9rem 0;
}
.emergency-inner {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
  justify-content: center;
}
.emergency-pulse {
  width: 10px; height: 10px;
  background: var(--white); border-radius: 50%;
  animation: pulse 1.5s ease-in-out infinite;
  flex-shrink: 0;
}
@keyframes pulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.5); opacity: .6; } }
.emergency-text { color: var(--white); font-weight: 600; font-size: .95rem; }
.emergency-call {
  background: var(--white);
  color: #c62828;
  font-weight: 700;
  padding: .4rem 1.2rem;
  border-radius: 50px;
  font-size: .9rem;
  transition: all var(--transition);
}
.emergency-call:hover { background: var(--grey-1); }

/* ============================================================
   ABOUT PREVIEW
   ============================================================ */
.about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}
.about-values-mini {
  display: flex; gap: .6rem; flex-wrap: wrap; margin: 1.5rem 0;
}
.value-chip {
  background: var(--blue-light);
  color: var(--blue);
  padding: .45rem 1rem;
  border-radius: 50px;
  font-size: .82rem;
  font-weight: 600;
  display: flex; align-items: center; gap: .4rem;
}
.value-icon { font-size: .9rem; }
.about-card-stack {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.about-card {
  background: var(--white);
  border-radius: var(--radius);
  padding: 1.5rem;
  box-shadow: var(--shadow-md);
  display: flex;
  flex-direction: column;
  gap: .5rem;
  border-left: 4px solid var(--teal);
  transition: transform var(--transition);
}
.about-card:hover { transform: translateY(-3px); }
.ac-icon { font-size: 1.8rem; }
.ac-num {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--blue);
  line-height: 1;
}
.ac-desc { font-size: .82rem; color: var(--text-muted); font-weight: 500; }
.ac-1 { border-left-color: var(--blue); }
.ac-2 { border-left-color: var(--teal); }
.ac-3 { border-left-color: #7c5cbf; }
.ac-4 { border-left-color: #e07a4f; }

/* ============================================================
   SPECIALTIES PREVIEW
   ============================================================ */
.specialties-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin-bottom: 2rem;
}
.specialty-card {
  background: var(--white);
  border-radius: var(--radius);
  padding: 1.5rem 1rem;
  text-align: center;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  transition: all var(--transition);
  display: block;
}
.specialty-card:hover {
  border-color: var(--blue);
  box-shadow: var(--shadow-md);
  transform: translateY(-4px);
}
.sc-icon { font-size: 2rem; margin-bottom: .6rem; }
.sc-name { font-size: .88rem; font-weight: 600; color: var(--navy); line-height: 1.35; }

/* ============================================================
   WHY CHOOSE US
   ============================================================ */
.why-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}
.why-card {
  background: var(--white);
  border-radius: var(--radius);
  padding: 2rem 1.5rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  transition: all var(--transition);
}
.why-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); border-color: var(--teal-light); }
.why-icon { margin-bottom: 1rem; }
.why-card h3 { font-size: 1.1rem; margin-bottom: .6rem; color: var(--navy); }
.why-card p { font-size: .9rem; color: var(--text-muted); }

/* ============================================================
   DOCTOR HIGHLIGHTS (HOME)
   ============================================================ */
.doctors-grid-mini {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
}
.doctor-mini-card {
  background: var(--white);
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  transition: all var(--transition);
}
.doctor-mini-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.dmc-avatar {
  padding: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.dmc-info { padding: 0 1.25rem 1.25rem; }
.dmc-name { font-family: "Cormorant Garamond", serif; font-size: 1.05rem; font-weight: 600; color: var(--navy); margin-bottom: .25rem; }
.dmc-spec { font-size: .82rem; color: var(--blue); font-weight: 600; margin-bottom: .2rem; }
.dmc-exp { font-size: .78rem; color: var(--text-muted); }

/* ============================================================
   APPOINTMENT CTA
   ============================================================ */
.appt-cta { background: linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%); }
.appt-cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}
.appt-cta-text h2 { color: var(--white); font-size: clamp(1.5rem, 3vw, 2.2rem); margin-bottom: .5rem; }
.appt-cta-text p { color: rgba(255,255,255,.8); font-size: 1rem; }
.appt-cta-actions { display: flex; gap: 1rem; flex-wrap: wrap; }

/* ============================================================
   PAGE HERO (inner pages)
   ============================================================ */
.page-hero {
  margin-top: var(--header-h);
  background: linear-gradient(120deg, var(--navy) 0%, var(--blue) 100%);
  padding: 5rem 0 4rem;
  position: relative;
  overflow: hidden;
}
.page-hero::before {
  content: "";
  position: absolute; inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E");
}
.page-hero-content { position: relative; max-width: 700px; }
.breadcrumb { font-size: .82rem; color: rgba(255,255,255,.6); margin-bottom: .8rem; }
.breadcrumb a { color: rgba(255,255,255,.7); }
.breadcrumb a:hover { color: var(--white); }
.page-hero h1 { color: var(--white); margin-bottom: .75rem; }
.page-hero p { color: rgba(255,255,255,.8); font-size: 1.1rem; max-width: 560px; }

/* ============================================================
   ABOUT (full page)
   ============================================================ */
.about-full-grid {
  display: grid;
  grid-template-columns: 3fr 2fr;
  gap: 4rem;
  align-items: start;
}
.about-highlight-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  background: var(--white);
  border-radius: var(--radius-lg);
  padding: 2rem;
  box-shadow: var(--shadow-md);
  border: 1px solid var(--grey-2);
  position: sticky;
  top: 100px;
}
.ahb-item {
  padding: 1rem;
  background: var(--grey-1);
  border-radius: var(--radius);
  text-align: center;
}
.ahb-num {
  font-family: "Cormorant Garamond", serif;
  font-size: 2rem;
  font-weight: 700;
  color: var(--blue);
  line-height: 1;
  margin-bottom: .25rem;
}
.ahb-label { font-size: .8rem; color: var(--text-muted); font-weight: 600; }
.vm-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.vm-card {
  background: var(--white);
  border-radius: var(--radius-lg);
  padding: 2.5rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  border-top: 4px solid var(--blue);
}
.mission-card { border-top-color: var(--teal); }
.vm-icon { font-size: 2.5rem; margin-bottom: 1rem; }
.vm-card h2 { font-size: 1.6rem; margin-bottom: .75rem; }
.vm-card p { font-size: 1.05rem; line-height: 1.7; }
.values-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.25rem; }
.value-card {
  background: var(--white);
  border-radius: var(--radius);
  padding: 1.75rem 1.25rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  transition: all var(--transition);
  position: relative;
}
.value-card:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); border-color: var(--teal); }
.value-num {
  position: absolute; top: 1rem; right: 1.25rem;
  font-family: "Cormorant Garamond", serif;
  font-size: 2.5rem;
  font-weight: 700;
  color: var(--grey-2);
  line-height: 1;
}
.value-emoji { font-size: 1.8rem; margin-bottom: .6rem; display: block; }
.value-card h3 { font-size: 1rem; margin-bottom: .5rem; }
.value-card p { font-size: .85rem; }
.apart-list { display: flex; flex-direction: column; gap: 2rem; }
.apart-item {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  background: var(--white);
  border-radius: var(--radius);
  padding: 1.75rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  transition: all var(--transition);
}
.apart-item:hover { box-shadow: var(--shadow-md); border-color: var(--teal); }
.apart-icon { flex-shrink: 0; margin-top: .1rem; }
.apart-text h3 { font-size: 1.15rem; margin-bottom: .4rem; }
.apart-text p { font-size: .95rem; }
.approach-section { background: linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%); }
.approach-inner {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 4rem;
  align-items: center;
}
.approach-quote { position: relative; }
.quote-mark {
  font-family: "Cormorant Garamond", serif;
  font-size: 8rem;
  color: rgba(255,255,255,.15);
  line-height: 0;
  position: absolute;
  top: 1.5rem;
  left: -1rem;
}
blockquote {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.2rem, 2.5vw, 1.7rem);
  font-style: italic;
  color: var(--white);
  line-height: 1.5;
  position: relative;
  z-index: 1;
  margin-bottom: 1rem;
}
cite { font-size: .9rem; color: rgba(255,255,255,.65); font-style: normal; }
.approach-cta {
  background: rgba(255,255,255,.1);
  border-radius: var(--radius-lg);
  padding: 2rem;
  border: 1px solid rgba(255,255,255,.2);
  text-align: center;
}
.approach-cta h3 { color: var(--white); font-size: 1.5rem; margin-bottom: .5rem; }
.approach-cta p { color: rgba(255,255,255,.75); margin-bottom: 1.25rem; }

/* ============================================================
   SERVICES (full page)
   ============================================================ */
.services-full-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}
.service-full-card {
  display: flex;
  gap: 1.25rem;
  align-items: flex-start;
  background: var(--white);
  border-radius: var(--radius);
  padding: 1.75rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  transition: all var(--transition);
}
.service-full-card:hover { box-shadow: var(--shadow-md); border-color: var(--teal); transform: translateY(-2px); }
.sfc-icon { font-size: 2rem; flex-shrink: 0; margin-top: .1rem; }
.sfc-body h3 { font-size: 1.1rem; margin-bottom: .5rem; color: var(--navy); }
.sfc-body p { font-size: .9rem; line-height: 1.6; }

/* ============================================================
   DOCTORS (full page)
   ============================================================ */
.doctors-full-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
.doctor-card {
  background: var(--white);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  transition: all var(--transition);
}
.doctor-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-4px); }
.dc-header {
  display: flex;
  gap: 1rem;
  align-items: center;
  padding: 1.5rem 1.5rem 1rem;
  border-bottom: 1px solid var(--grey-2);
  background: var(--grey-1);
}
.dc-avatar {
  width: 72px; height: 72px;
  border-radius: 50%;
  background: var(--avatar-bg, var(--blue-light));
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  overflow: hidden;
}
.dc-header-text { flex: 1; min-width: 0; }
.dc-name { font-family: "Cormorant Garamond", serif; font-size: 1.05rem; font-weight: 700; color: var(--navy); margin-bottom: .2rem; line-height: 1.25; }
.dc-specialty { font-size: .82rem; font-weight: 600; color: var(--blue); margin-bottom: .3rem; }
.dc-exp-badge {
  display: inline-block;
  background: var(--teal-light);
  color: #2a7a70;
  font-size: .72rem;
  font-weight: 600;
  padding: .2rem .7rem;
  border-radius: 50px;
}
.dc-body { padding: 1.25rem 1.5rem 1.5rem; }
.dc-qual { font-size: .83rem; color: var(--text-muted); margin-bottom: .85rem; border-left: 3px solid var(--teal); padding-left: .75rem; }
.dc-qual-label { font-weight: 700; color: var(--navy); }
.dc-strengths { margin-bottom: 1rem; }
.dc-strengths li {
  font-size: .85rem;
  color: var(--text-muted);
  padding: .3rem 0 .3rem 1.1rem;
  position: relative;
}
.dc-strengths li::before {
  content: "▸";
  position: absolute; left: 0;
  color: var(--teal);
  font-size: .85rem;
}
.dc-appt-btn {
  display: inline-block;
  background: var(--blue-light);
  color: var(--blue);
  font-size: .85rem;
  font-weight: 600;
  padding: .55rem 1.2rem;
  border-radius: 8px;
  transition: all var(--transition);
}
.dc-appt-btn:hover { background: var(--blue); color: var(--white); }

/* ============================================================
   FACILITIES
   ============================================================ */
.fac-stats-section { background: var(--blue); padding: 3.5rem 0; }
.fac-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; text-align: center; }
.fac-stat { color: var(--white); }
.fs-icon { font-size: 2rem; margin-bottom: .5rem; }
.fs-num { font-family: "Cormorant Garamond", serif; font-size: 2.5rem; font-weight: 700; line-height: 1; margin-bottom: .3rem; }
.fs-label { font-size: .82rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: rgba(255,255,255,.7); }
.fac-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.fac-card {
  background: var(--white);
  border-radius: var(--radius);
  padding: 2rem 1.75rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  border-top: 4px solid var(--grey-2);
  transition: all var(--transition);
}
.fac-card.fac-primary { border-top-color: var(--blue); grid-column: span 2; }
.fac-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.facc-icon { font-size: 2rem; margin-bottom: .75rem; }
.fac-card h3 { font-size: 1.15rem; margin-bottom: .6rem; }
.fac-card p { font-size: .9rem; line-height: 1.65; }
.fac-list-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.25rem; }
.fac-list-item {
  display: flex;
  gap: 1.25rem;
  background: var(--white);
  border-radius: var(--radius);
  padding: 1.5rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  transition: all var(--transition);
}
.fac-list-item:hover { box-shadow: var(--shadow-md); border-color: var(--teal); }
.fli-icon { font-size: 1.8rem; flex-shrink: 0; margin-top: .1rem; }
.fli-text h3 { font-size: 1rem; margin-bottom: .35rem; }
.fli-text p { font-size: .88rem; }
.digital-section { background: var(--grey-1); }
.digital-inner { display: grid; grid-template-columns: 3fr 2fr; gap: 4rem; align-items: center; }
.digital-features { list-style: none; margin-top: 1.25rem; }
.digital-features li { padding: .4rem 0; font-size: .95rem; color: var(--text-muted); }
.digital-visual { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.dv-badge {
  background: var(--white);
  border-radius: var(--radius);
  padding: 1.25rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  text-align: center;
  transition: all var(--transition);
}
.dv-badge:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
.dvb-icon { font-size: 1.75rem; margin-bottom: .4rem; }
.dvb-text { font-size: .82rem; font-weight: 600; color: var(--navy); line-height: 1.3; }

/* ============================================================
   APPOINTMENT PAGE
   ============================================================ */
.appt-layout {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 3rem;
  align-items: start;
}
.appt-info h2 { font-size: 1.6rem; margin-bottom: 1.5rem; }
.appt-why-list { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 2rem; }
.awl-item {
  display: flex; gap: 1rem; align-items: flex-start;
  background: var(--grey-1);
  padding: 1rem 1.25rem;
  border-radius: var(--radius);
}
.awl-icon { font-size: 1.4rem; flex-shrink: 0; margin-top: .1rem; }
.awl-item strong { font-size: .9rem; display: block; color: var(--navy); margin-bottom: .2rem; }
.awl-item p { font-size: .82rem; margin: 0; }
.appt-emergency-box {
  background: var(--blue);
  border-radius: var(--radius);
  padding: 1.5rem;
  color: var(--white);
}
.aeb-label { font-size: .8rem; text-transform: uppercase; letter-spacing: .1em; font-weight: 600; color: rgba(255,255,255,.7); margin-bottom: .4rem; }
.appt-emergency-box p { color: rgba(255,255,255,.8); font-size: .9rem; margin-bottom: 1rem; }
.appt-form-box {
  background: var(--white);
  border-radius: var(--radius-lg);
  padding: 2.5rem;
  box-shadow: var(--shadow-md);
  border: 1px solid var(--grey-2);
}
.afb-header { margin-bottom: 2rem; border-bottom: 1px solid var(--grey-2); padding-bottom: 1.25rem; }
.afb-header h2 { font-size: 1.6rem; margin-bottom: .3rem; }
.afb-header p { font-size: .88rem; }
.appt-form { display: flex; flex-direction: column; gap: 1.25rem; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.form-group { display: flex; flex-direction: column; gap: .4rem; }
.form-group label { font-size: .87rem; font-weight: 600; color: var(--navy); }
.form-group input,
.form-group select,
.form-group textarea {
  padding: .75rem 1rem;
  border: 1.5px solid var(--grey-2);
  border-radius: 10px;
  font-family: "DM Sans", sans-serif;
  font-size: .95rem;
  color: var(--text);
  background: var(--white);
  transition: border-color var(--transition);
  outline: none;
}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(10,92,138,.1); }
.form-group input.error,
.form-group select.error,
.form-group textarea.error { border-color: #e53935; }
.field-error { font-size: .78rem; color: #e53935; min-height: 1rem; display: block; }
.form-note { font-size: .78rem; color: var(--text-muted); text-align: center; margin-top: .5rem; }
.appointment-confirmation-note {
  padding: .58rem .78rem;
  border: 1px solid #ead59a;
  border-radius: 9px;
  background: #fff9e8;
  color: #6b5724;
  font-size: .8rem;
  line-height: 1.35;
}
.appointment-confirmation-note strong { color: #594514; }
.success-msg {
  background: #e8f5e9;
  border: 1.5px solid #a5d6a7;
  border-radius: var(--radius);
  padding: 2rem;
  text-align: center;
}
.sm-icon { font-size: 2.5rem; margin-bottom: .75rem; }
.success-msg h3 { font-size: 1.3rem; color: #2e7d32; margin-bottom: .5rem; }
.success-msg p { font-size: .95rem; color: #388e3c; }
.success-msg a { color: var(--blue); font-weight: 600; }

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.contact-layout {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 3rem;
  align-items: start;
}
.contact-info-col h2 { margin-bottom: .75rem; }
.contact-cards { display: flex; flex-direction: column; gap: 1rem; margin: 1.5rem 0; }
.contact-card {
  display: flex; gap: 1.25rem;
  background: var(--white);
  border-radius: var(--radius);
  padding: 1.25rem 1.5rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--grey-2);
  transition: all var(--transition);
}
.contact-card:hover { box-shadow: var(--shadow-md); border-color: var(--teal); }
.contact-card.emergency-card { border-color: #ffcdd2; background: #fff5f5; }
.cc-icon { font-size: 1.8rem; flex-shrink: 0; }
.cc-body h3 { font-size: .95rem; margin-bottom: .35rem; }
.cc-body p { font-size: .9rem; }
.cc-body a { color: var(--blue); font-weight: 600; }
.cc-body .btn-primary { color: var(--white); }
.cc-actions { display: flex; gap: .6rem; flex-wrap: wrap; margin-top: .75rem; }
.visiting-hours { background: var(--grey-1); border-radius: var(--radius); padding: 1.5rem; }
.visiting-hours h3 { font-size: 1.1rem; margin-bottom: 1rem; color: var(--navy); }
.vh-grid { display: flex; flex-direction: column; gap: .5rem; }
.vh-item { display: flex; justify-content: space-between; gap: 1rem; font-size: .85rem; border-bottom: 1px solid var(--grey-2); padding-bottom: .5rem; }
.vh-item span { color: var(--text-muted); }
.vh-item strong { font-weight: 600; color: var(--navy); text-align: right; }
.contact-map-col h2 { margin-bottom: 1rem; }
.map-container { border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); margin-bottom: 1rem; border: 1px solid var(--grey-2); }
.map-address-note { font-size: .88rem; background: var(--grey-1); padding: .75rem 1rem; border-radius: 8px; color: var(--text-muted); margin-bottom: 1rem; }
.directions-actions { display: flex; gap: .75rem; margin-bottom: 2rem; flex-wrap: wrap; }
.contact-form-mini { background: var(--grey-1); border-radius: var(--radius-lg); padding: 1.75rem; }
.contact-form-mini h3 { font-size: 1.25rem; margin-bottom: 1.25rem; }

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer {
  background: var(--navy);
  color: rgba(255,255,255,.8);
  padding-top: 4rem;
}
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1.2fr; gap: 2rem; padding-bottom: 3rem; }
.footer-brand {}
.footer-logo { margin-bottom: 1rem; }
.footer-desc { font-size: .88rem; color: rgba(255,255,255,.6); line-height: 1.65; margin-bottom: 1.25rem; max-width: 280px; }
.footer-contact-mini { font-size: .83rem; color: rgba(255,255,255,.55); line-height: 1.8; }
.footer-links h4 { font-family: "DM Sans", sans-serif; font-size: .8rem; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; color: rgba(255,255,255,.5); margin-bottom: 1rem; }
.footer-links ul { display: flex; flex-direction: column; gap: .45rem; }
.footer-links a { font-size: .88rem; color: rgba(255,255,255,.7); transition: color var(--transition); }
.footer-links a:hover { color: var(--teal); }
.footer-emergency p { font-size: .85rem; color: rgba(255,255,255,.6); margin-bottom: .5rem; }
.footer-emerg-btn {
  display: block;
  background: rgba(255,255,255,.1);
  color: var(--white);
  font-weight: 700;
  font-size: .88rem;
  padding: .55rem 1rem;
  border-radius: 8px;
  text-align: center;
  margin-bottom: .5rem;
  transition: background var(--transition);
}
.footer-emerg-btn:hover { background: rgba(255,255,255,.2); }
.footer-wa-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  background: #25d366;
  color: var(--white);
  font-size: .88rem;
  font-weight: 600;
  padding: .55rem 1rem;
  border-radius: 8px;
  transition: background var(--transition);
}
.footer-wa-btn:hover { background: #1ebe5c; }
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,.08);
  padding: 1.25rem 0;
}
.footer-bottom .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: .5rem;
  font-size: .8rem;
  color: rgba(255,255,255,.4);
}
.footer-reg { font-size: .72rem; }

/* ============================================================
   ABOUT PAGE – additional layout
   ============================================================ */

/* ============================================================
   ANIMATIONS & SCROLL
   ============================================================ */
.fade-up {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .55s ease, transform .55s ease;
}
.fade-up.visible { opacity: 1; transform: translateY(0); }

/* ============================================================
   MOBILE NAVIGATION
   ============================================================ */
@media (max-width: 900px) {
  .hamburger { display: flex; }
  .header-cta { display: none; }
  .main-nav {
    position: fixed;
    top: var(--header-h); left: 0; right: 0;
    background: var(--white);
    padding: 1rem 1.5rem 2rem;
    box-shadow: var(--shadow-lg);
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
    transition: all var(--transition);
    z-index: 999;
    margin-left: 0;
  }
  .main-nav.open { transform: translateY(0); opacity: 1; pointer-events: all; }
  .nav-list { flex-direction: column; gap: .25rem; }
  .nav-link { display: block; padding: .75rem 1rem; font-size: 1rem; border-radius: 10px; }
}

/* ============================================================
   RESPONSIVE BREAKPOINTS
   ============================================================ */
@media (max-width: 1100px) {
  .values-grid { grid-template-columns: repeat(3, 1fr); }
  .why-grid { grid-template-columns: repeat(2, 1fr); }
  .specialties-grid { grid-template-columns: repeat(4, 1fr); }
  .doctors-full-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1.5fr 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 860px) {
  .section { padding: 56px 0; }
  .about-grid { grid-template-columns: 1fr; gap: 2rem; }
  .about-full-grid { grid-template-columns: 1fr; }
  .about-highlight-box { position: static; }
  .vm-grid { grid-template-columns: 1fr; }
  .values-grid { grid-template-columns: repeat(2, 1fr); }
  .specialties-grid { grid-template-columns: repeat(2, 1fr); }
  .why-grid { grid-template-columns: 1fr 1fr; }
  .doctors-grid-mini { grid-template-columns: repeat(2, 1fr); }
  .doctors-full-grid { grid-template-columns: 1fr; }
  .services-full-grid { grid-template-columns: 1fr; }
  .fac-grid { grid-template-columns: 1fr; }
  .fac-card.fac-primary { grid-column: auto; }
  .fac-list-grid { grid-template-columns: 1fr; }
  .fac-stats-grid { grid-template-columns: repeat(2, 1fr); }
  .digital-inner { grid-template-columns: 1fr; }
  .appt-layout { grid-template-columns: 1fr; }
  .contact-layout { grid-template-columns: 1fr; }
  .approach-inner { grid-template-columns: 1fr; }
  .appt-cta-inner { flex-direction: column; align-items: flex-start; }
  .hero-stats { gap: 1.25rem; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 580px) {
  .container { padding: 0 16px; }
  .hero-headline { font-size: 2.2rem; }
  .hero-sub { font-size: 1rem; }
  .hero-actions { flex-direction: column; }
  .hero-stats { flex-wrap: wrap; gap: 1rem; }
  .specialties-grid { grid-template-columns: repeat(2, 1fr); }
  .why-grid { grid-template-columns: 1fr; }
  .about-card-stack { grid-template-columns: 1fr 1fr; }
  .doctors-grid-mini { grid-template-columns: 1fr; }
  .values-grid { grid-template-columns: 1fr 1fr; }
  .form-row { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom .container { flex-direction: column; align-items: flex-start; }
  .vm-card { padding: 1.75rem; }
  .digital-visual { grid-template-columns: 1fr 1fr; }
  .directions-actions { flex-direction: column; }
}

@media (max-width: 400px) {
  .about-card-stack { grid-template-columns: 1fr; }
  .specialties-grid { grid-template-columns: 1fr 1fr; }
}


/* === Final scope overrides === */
:root {
  --topbar-h: 46px;
}
body {
  font-family: "Inter", Arial, sans-serif;
}
h1, h2, h3, h4, .logo-name, .hero-headline, .dc-name, .fs-num, .ahb-num, blockquote {
  font-family: "Inter", Arial, sans-serif;
}
p, .body-text, .btn, .nav-link, .section-label, .logo-tagline, .form-group input, .form-group select, .form-group textarea, .footer-links h4 {
  font-family: "Inter", Arial, sans-serif;
}
.top-bar {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: var(--topbar-h);
  background: linear-gradient(90deg, #0b4d75 0%, #0a5c8a 55%, #1d7f72 100%);
  z-index: 1001;
  box-shadow: 0 1px 0 rgba(255,255,255,.08);
}
.top-bar-inner {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.top-bar-copy {
  color: rgba(255,255,255,.82);
  font-size: .82rem;
  font-weight: 600;
  letter-spacing: .04em;
}
.top-call-badge {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  background: rgba(255,255,255,.14);
  color: #fff;
  border: 1px solid rgba(255,255,255,.2);
  padding: .45rem .9rem;
  border-radius: 999px;
  font-size: .84rem;
  font-weight: 600;
}
.top-call-badge strong { color: #fff; }
.top-call-badge:hover { background: rgba(255,255,255,.22); }
.site-header { top: var(--topbar-h); }
.header-inner { min-height: var(--header-h); }
.hero, .page-hero { margin-top: calc(var(--header-h) + var(--topbar-h)); }
.main-nav { margin-left: auto; }
.logo-brandmark {
  background: linear-gradient(180deg, #ffffff 0%, #f3fbff 100%);
  border: 1px solid rgba(10,92,138,.08);
  border-radius: 16px;
  padding: .38rem .7rem;
  box-shadow: 0 10px 30px rgba(10,92,138,.08);
}
.brand-logo-img {
  display: block;
  width: 250px;
  max-width: min(30vw, 250px);
  height: auto;
}
.logo-brandmark-footer {
  display: inline-flex;
  background: rgba(255,255,255,.98);
  padding: .45rem .75rem;
  box-shadow: none;
}
.logo-brandmark-footer .brand-logo-img {
  width: 220px;
  max-width: 220px;
}
.hero {
  min-height: calc(100vh - var(--header-h) - var(--topbar-h));
  overflow: hidden;
}
.hero-slider {
  position: absolute;
  inset: 0;
  min-height: calc(100vh - var(--header-h) - var(--topbar-h));
}
.hero-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 1.5s ease;
  background-size: cover !important;
  background-position: center center !important;
}
.hero-slide.active { opacity: 1; }
.hero-content {
  position: relative;
  z-index: 2;
  padding: 5rem 0;
}
.hero-overlay {
  display: none;
}
.appt-form-box select:disabled {
  background: #f5f8fb;
  color: #7f8c99;
  cursor: not-allowed;
}
.appt-form-box select option:disabled {
  background: #f2f4f6;
  color: #9aa7b1;
}
.site-footer .logo { align-items: center; }
@media (max-width: 900px) {
  .main-nav { top: calc(var(--header-h) + var(--topbar-h)); }
}
@media (max-width: 760px) {
  :root { --topbar-h: 58px; }
  .top-bar-inner {
    justify-content: center;
    flex-wrap: wrap;
    padding-top: .3rem;
    padding-bottom: .3rem;
  }
  .top-bar-copy { display: none; }
  .brand-logo-img { width: 185px; max-width: 46vw; }
  .logo-brandmark { padding: .3rem .55rem; border-radius: 14px; }
}
@media (max-width: 580px) {
  .top-call-badge { width: 100%; justify-content: center; font-size: .8rem; }
  .brand-logo-img { width: 165px; max-width: 48vw; }
}


/* === Refinement scope updates === */
.logo-link {
  display: inline-flex;
  align-items: center;
  min-height: calc(var(--header-h) - 10px);
}
.logo-brandmark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: .26rem .58rem;
  border-radius: 14px;
}
.brand-logo-img {
  width: 236px;
  max-width: min(28vw, 236px);
  height: auto;
}
.header-inner {
  align-items: center;
}
.section-soft-blue {
  background: linear-gradient(180deg, #f8fcff 0%, #f4f9fd 100%);
}
.section-soft-teal {
  background: linear-gradient(180deg, #f7fcfb 0%, #eff8f6 100%);
}
.section-soft-white {
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}
.section-soft-blue .section-label,
.section-soft-teal .section-label,
.section-soft-white .section-label {
  color: var(--blue);
}
@media (max-width: 760px) {
  .logo-link { min-height: calc(var(--header-h) - 14px); }
  .logo-brandmark { min-height: 50px; padding: .22rem .5rem; }
  .brand-logo-img { width: 176px; max-width: 45vw; }
}
@media (max-width: 580px) {
  .brand-logo-img { width: 160px; max-width: 46vw; }
}


/* === Current refinement adjustments === */
.logo-link {
  flex-shrink: 0;
  min-height: calc(var(--header-h) - 18px);
}
.logo-brandmark {
  min-height: 48px;
  max-height: calc(var(--header-h) - 16px);
  padding: .2rem .46rem;
  border-radius: 12px;
  overflow: hidden;
}
.brand-logo-img {
  width: 198px;
  max-width: min(22vw, 198px);
}
.header-inner {
  gap: 1.4rem;
}

.services-hero-slider-wrap {
  margin-top: calc(var(--header-h) + var(--topbar-h));
  position: relative;
  height: clamp(260px, 42vw, 520px);
  overflow: hidden;
  background: #eef6fb;
}
.services-hero-slider {
  position: absolute;
  inset: 0;
}
.services-hero-slider .hero-slide {
  transition: opacity 1s ease-in-out;
  background-size: cover !important;
  background-position: center center !important;
}
.services-page-intro {
  margin-top: 0;
  padding-top: 54px;
}

.section-soft-blue,
.section-soft-teal,
.section-soft-white {
  position: relative;
  background-blend-mode: normal;
}
.section-soft-blue::before,
.section-soft-teal::before,
.section-soft-white::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: radial-gradient(circle at 1px 1px, rgba(10,92,138,.05) 1px, transparent 0);
  background-size: 26px 26px;
  opacity: .35;
}
.section-soft-blue > .container,
.section-soft-teal > .container,
.section-soft-white > .container {
  position: relative;
  z-index: 1;
}
.service-full-card, .doctor-card, .facility-card, .why-card, .specialty-card {
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.service-full-card:hover, .doctor-card:hover, .facility-card:hover, .why-card:hover, .specialty-card:hover {
  box-shadow: 0 12px 28px rgba(10,92,138,.12);
}

@media (max-width: 900px) {
  .brand-logo-img { width: 184px; max-width: 30vw; }
}
@media (max-width: 760px) {
  .logo-link { min-height: calc(var(--header-h) - 20px); }
  .logo-brandmark { min-height: 44px; max-height: calc(var(--header-h) - 18px); padding: .16rem .4rem; }
  .brand-logo-img { width: 162px; max-width: 42vw; }
  .services-hero-slider-wrap { height: clamp(220px, 52vw, 360px); }
}
@media (max-width: 580px) {
  .brand-logo-img { width: 150px; max-width: 44vw; }
  .services-page-intro { padding-top: 44px; }
}


/* === Final pre-CMS refinements === */
.top-bar {
  background: linear-gradient(90deg, #0b5b87 0%, #0f6a99 48%, #0f7b83 100%);
}
.top-bar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.top-bar-actions {
  display: flex;
  align-items: center;
  gap: .7rem;
  flex-wrap: wrap;
}
.top-call-badge {
  background: linear-gradient(180deg, #d93434 0%, #b91c1c 100%);
  border-color: rgba(255,255,255,.18);
  box-shadow: 0 8px 20px rgba(127, 29, 29, .22);
}
.top-call-badge:hover {
  background: linear-gradient(180deg, #e04242 0%, #c62828 100%);
}
.top-call-text strong { color: #fff; }

.logo-link {
  min-height: calc(var(--header-h) - 22px);
}
.logo-brandmark {
  min-height: 44px;
  max-height: calc(var(--header-h) - 24px);
  padding: .16rem .42rem;
  border-radius: 12px;
}
.brand-logo-img {
  width: 178px;
  max-width: min(20vw, 178px);
}

.doctor-filter-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .75rem;
  margin: 2rem 0 1.75rem;
}
.doctor-filter-btn {
  border: 1px solid rgba(10,92,138,.16);
  background: #fff;
  color: var(--navy);
  border-radius: 999px;
  padding: .72rem 1.15rem;
  font-size: .9rem;
  font-weight: 600;
  line-height: 1;
  box-shadow: 0 6px 18px rgba(10,92,138,.06);
  transition: all var(--transition);
}
.doctor-filter-btn:hover,
.doctor-filter-btn.active {
  background: var(--blue);
  color: #fff;
  border-color: var(--blue);
  transform: translateY(-1px);
}
.doctor-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}
.doctor-card.is-hidden { display: none; }
.doctors-full-grid { align-items: stretch; }
.dc-header {
  min-height: 126px;
  background: linear-gradient(180deg, #f5f9fc 0%, #eef5fa 100%);
}
.dc-name {
  font-size: 1.12rem;
  color: #0c3553;
}
.dc-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.dc-strengths {
  display: grid;
  gap: .2rem;
  margin-bottom: 1rem;
}
.dc-appt-btn { margin-top: auto; }

.page-hero.services-page-intro {
  background: linear-gradient(135deg, #0f3554 0%, #0b5c8a 72%, #147e87 100%);
}
.page-hero.services-page-intro::before {
  background: transparent;
}
.page-hero.services-page-intro .breadcrumb,
.page-hero.services-page-intro .breadcrumb a,
.page-hero.services-page-intro p,
.page-hero.services-page-intro h1 {
  color: #fff;
}
.page-hero.services-page-intro,
.page-hero.facilities-page-intro {
  margin-top: 0;
}
.service-full-card {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
}
.sfc-body h3,
.sfc-body p {
  color: #143246;
}
.sfc-body p { opacity: .92; }

.footer-social-row {
  display: flex;
  align-items: center;
  gap: .65rem;
  flex-wrap: wrap;
  margin-top: 1rem;
}
.footer-social-link {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.92);
  border: 1px solid rgba(255,255,255,.14);
  transition: all var(--transition);
}
.footer-social-link svg { width: 18px; height: 18px; }
.footer-social-link:hover {
  background: var(--teal);
  color: #0a2130;
  border-color: var(--teal);
  transform: translateY(-1px);
}

@media (max-width: 900px) {
  .brand-logo-img { width: 166px; max-width: 26vw; }
}
@media (max-width: 760px) {
  :root { --topbar-h: 84px; }
  .top-bar-copy { width: 100%; text-align: center; }
  .top-bar-inner { justify-content: center; }
  .top-bar-actions { justify-content: center; width: 100%; }
  .logo-brandmark { min-height: 42px; max-height: calc(var(--header-h) - 18px); }
  .brand-logo-img { width: 156px; max-width: 42vw; }
  .doctors-full-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 580px) {
  :root { --topbar-h: 118px; }
  .top-call-badge { width: 100%; justify-content: center; }
  .brand-logo-img { width: 146px; max-width: 44vw; }
  .doctors-full-grid { grid-template-columns: 1fr; }
  .doctor-filter-btn { width: calc(50% - .4rem); text-align: center; }
}


/* === April 2026 visibility and polish refinements === */
.site-header .logo-brandmark {
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
  padding: 0;
  min-height: auto;
  max-height: none;
}
.site-header .logo-link {
  min-height: 0;
}
.site-header .brand-logo-img {
  width: 176px;
  max-width: min(19vw, 176px);
  height: auto;
  display: block;
}
.logo-brandmark-footer {
  background: linear-gradient(180deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,.03) 100%);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
  border-radius: 14px;
  padding: .55rem .75rem;
}
.logo-brandmark-footer .brand-logo-img {
  width: 212px;
  max-width: min(100%, 212px);
}
.services-hero-slider-wrap {
  height: clamp(180px, 28vw, 340px);
}
.page-hero.services-page-intro {
  background: linear-gradient(135deg, #0e3552 0%, #0b5c8a 72%, #147e87 100%);
}
.page-hero.services-page-intro .breadcrumb,
.page-hero.services-page-intro .breadcrumb a,
.page-hero.services-page-intro p,
.page-hero.services-page-intro h1,
.services-full-grid .section-label,
.services-full-grid .section-title,
.services-full-grid .section-sub {
  color: #fff;
}
.section.fac-stats-section,
.fac-stats-section.section-soft-blue {
  background: linear-gradient(135deg, #0d3a59 0%, #0b5c8a 70%, #0f7c83 100%) !important;
}
.fac-stats-section.section-soft-blue::before {
  opacity: .12;
  background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,.18) 1px, transparent 0);
}
.fac-stat,
.fac-stat .fs-num,
.fac-stat .fs-label {
  color: #fff;
  text-shadow: 0 1px 1px rgba(0,0,0,.12);
}
.fac-stat .fs-label { color: rgba(255,255,255,.88); }
.service-full-card,
.doctor-card,
.fac-card,
.facility-card,
.why-card,
.specialty-card {
  border-color: rgba(11,92,138,.10);
  box-shadow: 0 10px 24px rgba(10,92,138,.06);
}
.service-full-card:hover,
.doctor-card:hover,
.fac-card:hover,
.facility-card:hover,
.why-card:hover,
.specialty-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 34px rgba(10,92,138,.12);
}
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity .7s ease, transform .7s ease, box-shadow .25s ease, border-color .25s ease;
  will-change: opacity, transform;
}
.reveal-on-scroll.in-view {
  opacity: 1;
  transform: translateY(0);
}
.top-emergency-badge {
  background: linear-gradient(180deg, #c81e1e 0%, #a81515 100%);
}
.top-ambulance-badge {
  background: linear-gradient(180deg, #df2f2f 0%, #be1d1d 100%);
}
@media (max-width: 900px) {
  .site-header .brand-logo-img { width: 164px; max-width: 25vw; }
}
@media (max-width: 760px) {
  .site-header .brand-logo-img { width: 152px; max-width: 40vw; }
  .logo-brandmark-footer .brand-logo-img { width: 188px; }
  .services-hero-slider-wrap { height: clamp(165px, 38vw, 250px); }
}
@media (max-width: 580px) {
  .site-header .brand-logo-img { width: 142px; max-width: 43vw; }
  .logo-brandmark-footer .brand-logo-img { width: 174px; }
}


/* === Final hero, card, and logo refinements === */
.services-hero-slider-wrap {
  height: clamp(240px, 31vw, 380px);
  background: linear-gradient(180deg, #eef6fb 0%, #f7fbfe 100%);
}
.services-hero-slider {
  position: absolute;
  inset: 0;
  display: block;
}
.services-hero-slider .hero-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 1.5s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 4.5rem;
  background: linear-gradient(180deg, #eef6fb 0%, #f7fbfe 100%);
}
.services-hero-slider .hero-slide.active { opacity: 1; }
.services-hero-slider .hero-slide.hero-slide-contain {
  background-image: none !important;
  background-size: initial !important;
}
.services-hero-slider .hero-slide-image {
  display: block;
  width: auto;
  max-width: min(100%, 1180px);
  max-height: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  margin: 0 auto;
}
.hero-slider-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(10,92,138,.18);
  background: rgba(255,255,255,.88);
  color: #0b5c8a;
  box-shadow: 0 10px 24px rgba(10,92,138,.12);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  line-height: 1;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.hero-slider-control:hover {
  transform: translateY(-50%) scale(1.04);
  background: #ffffff;
  box-shadow: 0 14px 28px rgba(10,92,138,.18);
}
.hero-slider-prev { left: 1rem; }
.hero-slider-next { right: 1rem; }

.site-header .logo-link {
  min-height: calc(var(--header-h) - 18px);
  display: inline-flex;
  align-items: center;
}
.site-header .logo-brandmark {
  background: linear-gradient(180deg, #ffffff 0%, #f4f9fc 100%);
  border: 1px solid rgba(10,92,138,.14);
  box-shadow: 0 10px 24px rgba(10,92,138,.08);
  border-radius: 14px;
  padding: .3rem .58rem;
}
.site-header .brand-logo-img {
  width: 170px;
  max-width: min(18vw, 170px);
}

.service-full-card,
.doctor-card,
.fac-card,
.facility-card,
.why-card,
.specialty-card,
.contact-card,
.appt-card,
.info-card,
.form-card {
  border: 1px solid rgba(10,92,138,.16) !important;
  box-shadow: 0 10px 24px rgba(10,92,138,.07);
  background-clip: padding-box;
}
.service-full-card:hover,
.doctor-card:hover,
.fac-card:hover,
.facility-card:hover,
.why-card:hover,
.specialty-card:hover,
.contact-card:hover,
.appt-card:hover,
.info-card:hover,
.form-card:hover {
  border-color: rgba(10,92,138,.24) !important;
}
.doctor-card,
.service-full-card,
.fac-card,
.facility-card,
.why-card,
.specialty-card {
  border-radius: 18px;
}

.site-footer .footer-logo,
.site-footer .logo-brandmark-footer { display: none !important; }
.site-footer .footer-brand .footer-title {
  margin-top: 0;
}

@media (max-width: 900px) {
  .site-header .brand-logo-img { width: 160px; max-width: 24vw; }
  .services-hero-slider-wrap { height: clamp(220px, 34vw, 340px); }
}
@media (max-width: 760px) {
  .site-header .logo-brandmark { padding: .24rem .48rem; }
  .site-header .brand-logo-img { width: 148px; max-width: 40vw; }
  .services-hero-slider-wrap { height: clamp(205px, 42vw, 300px); }
  .services-hero-slider .hero-slide { padding: .8rem 3.4rem; }
  .hero-slider-control { width: 40px; height: 40px; }
}
@media (max-width: 580px) {
  .site-header .brand-logo-img { width: 138px; max-width: 42vw; }
  .services-hero-slider-wrap { height: clamp(190px, 48vw, 260px); }
  .services-hero-slider .hero-slide { padding: .75rem 2.9rem; }
  .hero-slider-control { width: 36px; height: 36px; font-size: 1.2rem; }
  .hero-slider-prev { left: .5rem; }
  .hero-slider-next { right: .5rem; }
}


/* === Fine-tuning: hero hover controls and footer visibility === */
.services-hero-slider-wrap {
  height: clamp(300px, 38vw, 460px);
}

.hero-slider.has-controls .hero-slider-control,
.services-hero-slider.has-controls .hero-slider-control {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.hero-slider.has-controls:hover .hero-slider-control,
.services-hero-slider.has-controls:hover .hero-slider-control,
.hero-slider.has-controls:focus-within .hero-slider-control,
.services-hero-slider.has-controls:focus-within .hero-slider-control {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.hero-slider-control {
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, opacity .2s ease, visibility .2s ease;
}

.site-footer .footer-title,
.site-footer .footer-bottom span,
.site-footer .footer-reg {
  color: #ffffff !important;
}
.site-footer .footer-desc {
  color: rgba(255,255,255,.82);
}
.site-footer .footer-contact-mini,
.site-footer .footer-links a,
.site-footer .footer-links h4,
.site-footer .footer-emergency p {
  color: rgba(255,255,255,.86);
}
.site-footer .footer-links h4 {
  color: rgba(255,255,255,.92);
}

@media (max-width: 900px) {
  .services-hero-slider-wrap { height: clamp(280px, 42vw, 400px); }
}
@media (max-width: 760px) {
  .services-hero-slider-wrap { height: clamp(245px, 50vw, 340px); }
}
@media (max-width: 580px) {
  .services-hero-slider-wrap { height: clamp(220px, 58vw, 300px); }
}


/* === Final facilities gallery, footer QR, and hero behavior refinements === */
.services-hero-slider-wrap {
  height: clamp(340px, 42vw, 520px);
}
.hero-slider .hero-slide {
  transition: opacity 1.6s ease-in-out;
}
.hero-slider.has-controls .hero-slider-control,
.services-hero-slider.has-controls .hero-slider-control {
  transform: translateY(-50%) scale(.96);
}
.hero-slider.has-controls:hover .hero-slider-control,
.services-hero-slider.has-controls:hover .hero-slider-control,
.hero-slider.has-controls:focus-within .hero-slider-control,
.services-hero-slider.has-controls:focus-within .hero-slider-control {
  transform: translateY(-50%) scale(1);
}
.footer-brand {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.footer-qr-card {
  width: fit-content;
  padding: .9rem;
  border-radius: 16px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.footer-qr-title {
  color: #fff;
  font-size: .86rem;
  font-weight: 700;
  margin-bottom: .55rem;
}
.footer-qr-img {
  width: 112px;
  height: 112px;
  object-fit: contain;
  border-radius: 10px;
  background: #fff;
  padding: .35rem;
}
.footer-qr-note {
  margin-top: .45rem;
  font-size: .76rem;
  color: rgba(255,255,255,.78);
}
.facilities-gallery-section {
  position: relative;
}
.facility-gallery-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}
.facility-gallery-item {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(10,92,138,.16);
  box-shadow: 0 10px 24px rgba(10,92,138,.08);
  background: #fff;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.facility-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
}
.facility-gallery-item:hover {
  transform: translateY(-4px);
  border-color: rgba(10,92,138,.24);
  box-shadow: 0 18px 34px rgba(10,92,138,.12);
}
.facility-gallery-item:hover img {
  transform: scale(1.04);
}
.gallery-modal {
  position: fixed;
  inset: 0;
  z-index: 2200;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .25s ease, visibility .25s ease;
}
.gallery-modal.open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.gallery-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(8, 18, 33, .72);
}
.gallery-modal-dialog {
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}
.gallery-modal-image {
  max-width: min(92vw, 1100px);
  max-height: 86vh;
  width: auto;
  height: auto;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 22px 56px rgba(0,0,0,.32);
}
.gallery-modal-close {
  position: absolute;
  top: 1.2rem;
  right: 1.2rem;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: rgba(255,255,255,.94);
  color: #0b3551;
  font-size: 1.8rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 18px rgba(0,0,0,.18);
}
body.gallery-open {
  overflow: hidden;
}
@media (max-width: 1100px) {
  .facility-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .services-hero-slider-wrap { height: clamp(310px, 48vw, 440px); }
}
@media (max-width: 760px) {
  .services-hero-slider-wrap { height: clamp(280px, 56vw, 390px); }
  .facility-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-qr-card { width: 100%; max-width: 220px; }
}
@media (max-width: 580px) {
  .services-hero-slider-wrap { height: clamp(250px, 64vw, 340px); }
  .facility-gallery-grid { grid-template-columns: 1fr; }
  .gallery-modal-dialog { padding: 1rem; }
  .gallery-modal-close { top: .8rem; right: .8rem; }
}


/* === Final responsive/footer/appointment refinements === */
:root{
  --topbar-h: 46px;
}
.footer-qr-title,
.footer-qr-note{
  display:none !important;
}
.footer-qr-card{
  padding:.45rem !important;
  border-radius:14px !important;
  width:auto !important;
  max-width:none !important;
  align-self:flex-start;
}
.footer-qr-img{
  width:84px !important;
  height:84px !important;
  padding:.2rem !important;
  border-radius:10px !important;
}
.site-footer{
  padding-top:2.7rem !important;
}
.footer-grid{
  align-items:start;
  gap:1.35rem !important;
}
.footer-brand{
  gap:.65rem !important;
}
.footer-desc{
  max-width:360px;
}
.footer-contact-mini{
  display:grid;
  gap:.25rem;
}
.footer-links ul{
  gap:.4rem;
}
.top-bar-copy{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.top-bar-actions{
  display:flex;
  align-items:center;
  gap:.65rem;
  flex-wrap:nowrap;
}
.top-call-badge{
  min-width:0;
  padding:.42rem .82rem !important;
  font-size:.8rem !important;
  line-height:1.15;
}
.top-call-text{
  white-space:nowrap;
}
.services-hero-slider-wrap{
  height:clamp(380px, 46vw, 560px) !important;
}
.services-hero-slider .hero-slide{
  padding:1rem 4rem;
}
.services-hero-slider .hero-slide-image{
  max-width:min(100%, 1200px);
  max-height:100%;
  height:100%;
  object-fit:contain;
}
@media (max-width: 1100px){
  .footer-grid{
    grid-template-columns:1.35fr 1fr 1fr 1fr !important;
  }
}
@media (max-width: 900px){
  .services-hero-slider-wrap{
    height:clamp(340px, 52vw, 480px) !important;
  }
  .footer-grid{
    grid-template-columns:1fr 1fr !important;
  }
  .footer-brand{
    grid-column:1 / -1;
  }
  .top-bar-copy{
    font-size:.78rem;
  }
  .top-call-badge{
    font-size:.76rem !important;
    padding:.4rem .7rem !important;
  }
}
@media (max-width: 760px){
  :root{
    --topbar-h: 90px;
  }
  .top-bar{
    height:auto !important;
    min-height:var(--topbar-h);
    padding:.45rem 0 !important;
  }
  .top-bar-inner{
    height:auto !important;
    min-height:0 !important;
    flex-wrap:wrap;
    justify-content:center !important;
    gap:.45rem !important;
  }
  .top-bar-copy{
    display:block !important;
    width:100%;
    text-align:center;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    line-height:1.3;
    font-size:.75rem;
  }
  .top-bar-actions{
    width:100%;
    justify-content:center;
    flex-wrap:wrap;
    gap:.45rem !important;
  }
  .top-call-badge{
    justify-content:center;
    max-width:100%;
    font-size:.74rem !important;
  }
  .site-header{
    top:var(--topbar-h) !important;
  }
  .hero, .page-hero{
    margin-top:calc(var(--header-h) + var(--topbar-h)) !important;
  }
  .main-nav{
    top:calc(var(--header-h) + var(--topbar-h)) !important;
  }
  .footer-qr-card{
    max-width:96px !important;
  }
  .footer-qr-img{
    width:78px !important;
    height:78px !important;
  }
  .services-hero-slider-wrap{
    height:clamp(300px, 60vw, 420px) !important;
  }
}
@media (max-width: 580px){
  :root{
    --topbar-h: 98px;
  }
  .container{
    padding:0 14px;
  }
  .header-inner{
    gap:.8rem;
  }
  .site-header .brand-logo-img{
    width:132px !important;
    max-width:42vw !important;
  }
  .top-call-badge{
    width:calc(50% - .3rem);
    min-width:146px;
    padding:.38rem .55rem !important;
    border-radius:16px !important;
  }
  .top-call-icon{
    font-size:.95rem;
  }
  .top-call-text{
    white-space:normal;
    text-align:center;
    line-height:1.2;
  }
  .footer-grid{
    grid-template-columns:1fr !important;
    gap:1.15rem !important;
    padding-bottom:2rem !important;
  }
  .footer-brand{
    gap:.65rem !important;
  }
  .footer-desc{
    font-size:.84rem;
    max-width:none;
  }
  .footer-contact-mini{
    font-size:.78rem;
    line-height:1.55;
  }
  .footer-qr-card{
    padding:.35rem !important;
    max-width:88px !important;
  }
  .footer-qr-img{
    width:72px !important;
    height:72px !important;
  }
  .footer-links h4{
    margin-bottom:.55rem;
  }
  .footer-bottom .container{
    gap:.35rem;
  }
  .services-hero-slider-wrap{
    height:clamp(280px, 68vw, 380px) !important;
  }
  .services-hero-slider .hero-slide{
    padding:.75rem 2.5rem !important;
  }
}



.home-doctor-photo,
.dmc-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.dmc-avatar {
  padding: 0;
  width: 112px;
  height: 112px;
  border-radius: 18px;
  overflow: hidden;
  margin: 1.35rem 1.25rem 0;
  background: #eef5fa;
  border: 1px solid rgba(10, 92, 138, .08);
}
.dmc-info { padding: 1rem 1.25rem 1.25rem; }
.dmc-name { font-size: 1.12rem; line-height: 1.2; }
.dmc-spec { font-size: .9rem; line-height: 1.45; }
.dmc-exp { font-size: .82rem; }

.dc-header {
  align-items: flex-start;
  gap: 1.1rem;
}
.dc-photo,
.dc-avatar {
  width: 104px;
  height: 120px;
  border-radius: 20px;
  overflow: hidden;
  flex-shrink: 0;
  border: 1px solid rgba(10, 92, 138, .10);
  background: #eef5fa;
}
.dc-photo {
  object-fit: cover;
  display: block;
}
.dc-header-text {
  padding-top: .1rem;
}
.dc-name {
  font-size: 1.28rem;
  line-height: 1.15;
  margin-bottom: .35rem;
}
.dc-qual {
  font-size: .95rem;
  line-height: 1.45;
  color: #29465c;
  margin-bottom: .45rem;
  border-left: 0;
  padding-left: 0;
  overflow-wrap: anywhere;
}
.dc-specialty {
  font-size: .98rem;
  line-height: 1.4;
  margin-bottom: .8rem;
}
.dc-exp-badge {
  font-size: .8rem;
  padding: .38rem .82rem;
}
.dc-strength-title {
  font-size: .86rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #0b6a7b;
  margin-bottom: .7rem;
}
.dc-strengths li {
  line-height: 1.55;
}

.admin-inline-form-row {
  display: grid;
  grid-template-columns: minmax(0, 2fr) 110px 110px 110px;
  gap: .75rem;
  align-items: center;
  padding: .85rem 0;
  border-top: 1px solid rgba(10,92,138,.08);
}
.admin-inline-form-row:first-child { border-top: 0; }
.admin-inline-form-row input[type="text"],
.admin-inline-form-row input[type="number"] {
  width: 100%;
}
.admin-inline-form-row .admin-toggle-inline {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-size: .9rem;
  color: #355168;
}
.admin-card-departments .admin-card-head { margin-bottom: .75rem; }
.admin-image-tools {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: .75rem;
}
.admin-check-inline {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  color: #355168;
  font-size: .9rem;
}
.admin-doctor-thumb {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  object-fit: cover;
  border: 1px solid rgba(10,92,138,.08);
  background: #eef5fa;
}
.admin-list-item.has-thumb {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr) auto;
  gap: .85rem;
  align-items: center;
}
@media (max-width: 900px) {
  .admin-inline-form-row {
    grid-template-columns: 1fr;
  }
  .dc-photo,
  .dc-avatar {
    width: 96px;
    height: 110px;
  }
}
@media (max-width: 640px) {
  .dc-header {
    align-items: center;
  }
  .dc-photo,
  .dc-avatar {
    width: 88px;
    height: 102px;
  }
  .dmc-avatar {
    width: 96px;
    height: 96px;
  }
}

/* === Mobile UX hotfix: April 2026 === */
html, body {
  overflow-x: hidden;
}
body {
  width: 100%;
}
.hero-content,
.page-hero-content,
.section,
.site-footer,
.top-bar,
.site-header {
  width: 100%;
}
.main-nav {
  overflow-y: auto;
  max-height: calc(100vh - var(--header-h) - var(--topbar-h) - 8px);
}
.nav-list li {
  width: 100%;
}
.nav-link {
  word-break: break-word;
}
.footer-emergency,
.footer-social-row,
.cc-actions,
.hero-actions,
.appt-cta-actions,
.directions-actions {
  row-gap: .65rem;
}
.hero-slide,
.services-hero-slider .hero-slide {
  backface-visibility: hidden;
}

@media (max-width: 1024px) {
  .container {
    padding-left: 18px;
    padding-right: 18px;
  }
  .header-inner {
    gap: 1rem;
  }
  .nav-list {
    gap: .15rem;
  }
  .nav-link {
    padding: .5rem .7rem;
    font-size: .88rem;
  }
  .header-cta {
    padding: .72rem 1.2rem;
  }
}

@media (max-width: 900px) {
  .site-header {
    height: var(--header-h);
  }
  .header-inner {
    justify-content: space-between;
    gap: .75rem;
  }
  .logo-link {
    min-width: 0;
    flex: 1 1 auto;
  }
  .site-header .logo-brandmark {
    padding: .18rem .42rem;
    border-radius: 12px;
  }
  .site-header .brand-logo-img {
    width: 150px !important;
    max-width: 38vw !important;
  }
  .main-nav {
    border-top: 1px solid rgba(10,92,138,.08);
    border-radius: 0 0 18px 18px;
  }
  .main-nav.open {
    transform: translateY(0);
  }
  .nav-link {
    font-size: .98rem;
  }
  .hero {
    min-height: auto;
  }
  .hero-slider,
  .hero-slide {
    min-height: calc(100svh - var(--header-h) - var(--topbar-h));
  }
  .hero-content {
    padding: 4rem 0 3rem;
  }
  .hero-headline {
    font-size: clamp(2.2rem, 7vw, 3.5rem);
  }
  .hero-sub {
    max-width: 100%;
  }
}

@media (max-width: 760px) {
  :root {
    --header-h: 68px;
    --topbar-h: 86px;
  }
  .top-bar {
    padding: .35rem 0 !important;
  }
  .top-bar-inner {
    gap: .4rem !important;
  }
  .top-bar-copy {
    font-size: .74rem !important;
    font-weight: 600;
    letter-spacing: .02em;
  }
  .top-bar-actions {
    gap: .4rem !important;
  }
  .top-call-badge {
    flex: 1 1 220px;
    min-height: 38px;
    max-width: 320px;
    padding: .42rem .7rem !important;
    border-radius: 14px !important;
  }
  .top-call-text {
    font-size: .73rem;
    line-height: 1.15;
    text-align: center;
  }
  .site-header .brand-logo-img {
    width: 138px !important;
    max-width: 44vw !important;
  }
  .hamburger {
    margin-left: 0;
    flex-shrink: 0;
  }
  .header-cta {
    display: none;
  }
  .hero,
  .page-hero,
  .services-hero-slider-wrap {
    margin-top: calc(var(--header-h) + var(--topbar-h)) !important;
  }
  .page-hero {
    padding: 3.25rem 0 2.75rem;
  }
  .page-hero p {
    font-size: .98rem;
  }
  .hero-content {
    padding: 3.5rem 0 2.75rem;
  }
  .hero-actions .btn,
  .appt-cta-actions .btn,
  .cc-actions .btn,
  .directions-actions .btn {
    width: 100%;
    justify-content: center;
  }
  .hero-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
  }
  .hero-stat {
    padding: .85rem .9rem;
    border-left: 0;
    border-radius: 12px;
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(3px);
  }
  .stat-num {
    font-size: 1.55rem;
  }
  .stat-label {
    margin-top: .3rem;
    font-size: .72rem;
  }
  .about-card,
  .service-full-card,
  .doctor-card,
  .fac-card,
  .fac-list-item,
  .contact-card,
  .appt-form-box,
  .vm-card,
  .apart-item,
  .why-card {
    padding-left: 1.1rem;
    padding-right: 1.1rem;
  }
  .footer-grid {
    gap: 1rem !important;
  }
  .footer-links,
  .footer-emergency {
    width: 100%;
  }
  .footer-social-row {
    gap: .5rem;
  }
  .footer-social-link {
    width: 36px;
    height: 36px;
  }
}

@media (max-width: 580px) {
  :root {
    --header-h: 64px;
    --topbar-h: 96px;
  }
  .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .top-bar-copy {
    font-size: .7rem !important;
  }
  .top-bar-actions {
    width: 100%;
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: .35rem !important;
  }
  .top-call-badge {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: .42rem .45rem !important;
  }
  .top-call-icon {
    font-size: .88rem;
  }
  .top-call-text {
    font-size: .68rem !important;
  }
  .site-header .brand-logo-img {
    width: 126px !important;
    max-width: 46vw !important;
  }
  .site-header .logo-brandmark {
    padding: .12rem .34rem;
    border-radius: 10px;
  }
  .main-nav {
    padding: .85rem 1rem 1.35rem;
  }
  .nav-link {
    padding: .72rem .9rem;
    font-size: .95rem;
  }
  .hero-slider,
  .hero-slide {
    min-height: calc(92svh - var(--header-h) - var(--topbar-h));
  }
  .hero-headline {
    font-size: 2rem;
    line-height: 1.08;
  }
  .hero-sub {
    font-size: .95rem;
    line-height: 1.55;
  }
  .hero-actions {
    gap: .75rem;
  }
  .hero-stats {
    grid-template-columns: 1fr 1fr;
  }
  .about-card-stack,
  .digital-visual,
  .specialties-grid,
  .values-grid,
  .fac-stats-grid {
    grid-template-columns: 1fr;
  }
  .fac-stats-grid {
    gap: 1.1rem;
  }
  .doctor-filter-btn {
    width: 100%;
  }
  .dc-header {
    padding: 1rem 1rem .85rem;
    min-height: 0;
  }
  .dc-avatar {
    width: 60px;
    height: 60px;
  }
  .dc-body {
    padding: 1rem;
  }
  .appt-form-box {
    padding: 1.2rem;
  }
  .afb-header {
    margin-bottom: 1.2rem;
    padding-bottom: 1rem;
  }
  .contact-form-mini {
    padding: 1.2rem;
  }
  .site-footer {
    padding-top: 2rem !important;
  }
  .footer-grid {
    padding-bottom: 1.5rem !important;
  }
  .footer-title {
    font-size: 1.15rem;
  }
  .footer-qr-card {
    max-width: 82px !important;
    padding: .28rem !important;
  }
  .footer-qr-img {
    width: 66px !important;
    height: 66px !important;
  }
  .footer-emerg-btn,
  .footer-wa-btn {
    font-size: .84rem;
    padding: .6rem .85rem;
  }
  .footer-bottom {
    padding: 1rem 0;
  }
  .footer-bottom .container {
    align-items: flex-start;
  }
}

@media (max-width: 380px) {
  :root {
    --topbar-h: 102px;
  }
  .site-header .brand-logo-img {
    width: 118px !important;
    max-width: 48vw !important;
  }
  .hero-headline {
    font-size: 1.85rem;
  }
  .hero-stats {
    grid-template-columns: 1fr;
  }
  .top-call-text {
    font-size: .66rem !important;
  }
}

/* === 2026-04 global header/footer/mobile refinement overrides === */
html, body {
  overflow-x: hidden;
}

.site-header {
  background: rgba(255,255,255,.98);
}

.header-inner {
  justify-content: space-between;
  gap: 1rem;
  min-height: var(--header-h);
}

.logo-link {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
}

.site-header .logo-brandmark {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

.site-header .brand-logo-img {
  width: 158px !important;
  max-width: 100%;
  height: auto;
  display: block;
}

.main-nav {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  justify-content: center;
  margin-left: 0;
}

.nav-list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: .1rem;
}

.nav-link {
  white-space: nowrap;
  font-size: .94rem;
  padding: .5rem .68rem;
}

.header-cta {
  flex: 0 0 auto;
  margin-left: .25rem;
  padding: .78rem 1.28rem;
}

.top-bar {
  height: auto !important;
  min-height: 46px;
  padding: 0;
}

.top-bar-inner {
  min-height: 46px;
  flex-wrap: nowrap;
  align-items: center;
}

.top-bar-copy {
  flex: 1 1 auto;
  min-width: 0;
}

.top-bar-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: .5rem;
}

.top-call-badge {
  padding: .42rem .78rem !important;
  font-size: .78rem !important;
}

.top-call-text {
  white-space: nowrap;
}

.site-footer {
  padding-top: 2.1rem !important;
}

.footer-grid {
  gap: 1.2rem !important;
  align-items: start;
}

.footer-qr-card {
  padding: .32rem !important;
  max-width: 78px !important;
  border-radius: 12px !important;
}

.footer-qr-img {
  width: 62px !important;
  height: 62px !important;
  padding: .15rem !important;
}

.footer-social-row {
  gap: .5rem;
}

.footer-social-link {
  width: 34px;
  height: 34px;
}

.footer-social-link svg {
  width: 16px;
  height: 16px;
}

@media (max-width: 1280px) {
  .site-header .brand-logo-img {
    width: 150px !important;
  }

  .nav-link {
    font-size: .9rem;
    padding: .46rem .56rem;
  }

  .header-cta {
    font-size: .88rem;
    padding: .72rem 1.08rem;
  }
}

@media (min-width: 1181px) {
  .main-nav {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    transform: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
  }

  .hamburger {
    display: none !important;
  }
}

@media (max-width: 1180px) {
  .header-cta {
    display: none;
  }

  .hamburger {
    display: flex;
    margin-left: 0;
    flex: 0 0 auto;
  }

  .main-nav {
    position: fixed;
    top: calc(var(--header-h) + var(--topbar-h));
    left: 16px;
    right: 16px;
    display: block;
    background: rgba(255,255,255,.98);
    padding: .9rem;
    border-radius: 16px;
    box-shadow: 0 16px 36px rgba(10,92,138,.16);
    transform: translateY(-10px);
    opacity: 0;
    pointer-events: none;
    z-index: 1100;
  }

  .main-nav.open {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }

  .nav-list {
    flex-direction: column;
    align-items: stretch;
    gap: .28rem;
  }

  .nav-link {
    display: block;
    font-size: 1rem;
    padding: .8rem 1rem;
    border-radius: 10px;
  }
}

@media (max-width: 760px) {
  :root {
    --topbar-h: 88px;
  }

  .top-bar {
    min-height: var(--topbar-h);
    padding: .35rem 0 !important;
  }

  .top-bar-inner {
    min-height: 0;
    flex-wrap: wrap;
    justify-content: center;
    gap: .42rem !important;
  }

  .top-bar-copy {
    width: 100%;
    text-align: center;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    line-height: 1.25;
    font-size: .74rem;
  }

  .top-bar-actions {
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
    gap: .42rem !important;
  }

  .top-call-badge {
    flex: 1 1 220px;
    max-width: calc(50% - .21rem);
    min-width: 0;
    justify-content: center;
    border-radius: 16px !important;
  }

  .top-call-text {
    text-align: center;
  }

  .site-header .brand-logo-img {
    width: 136px !important;
  }

  .footer-social-link {
    width: 32px;
    height: 32px;
  }

  .footer-social-link svg {
    width: 15px;
    height: 15px;
  }
}

@media (max-width: 580px) {
  :root {
    --topbar-h: 96px;
  }

  .container {
    padding: 0 14px;
  }

  .header-inner {
    gap: .55rem;
  }

  .top-call-badge {
    flex: 1 1 calc(50% - .21rem);
    padding: .36rem .42rem !important;
    font-size: .72rem !important;
  }

  .top-call-text {
    white-space: normal;
    line-height: 1.15;
  }

  .main-nav {
    left: 12px;
    right: 12px;
  }

  .site-footer {
    padding-top: 1.8rem !important;
  }

  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
    padding-bottom: 1.4rem !important;
  }

  .footer-qr-card {
    max-width: 72px !important;
  }

  .footer-qr-img {
    width: 56px !important;
    height: 56px !important;
  }
}


/* === Final header stability and premium hero motion fix === */
@media (min-width: 901px) {
  .main-nav {
    overflow: visible !important;
    max-height: none !important;
  }
  .nav-list {
    flex-wrap: nowrap;
    align-items: center;
  }
}

.site-header,
.header-inner,
.main-nav,
.nav-list {
  overflow: visible;
}

.hero-slider,
.services-hero-slider {
  overflow: hidden;
}

.hero-slider .hero-slide,
.services-hero-slider .hero-slide {
  will-change: opacity, transform;
  transform: translateX(0) scale(1.02);
  transition: opacity 2.6s ease-in-out, transform 3.2s cubic-bezier(.22, .61, .36, 1);
}

.hero-slider .hero-slide.active,
.hero-slider .hero-slide.is-active,
.services-hero-slider .hero-slide.active,
.services-hero-slider .hero-slide.is-active {
  opacity: 1;
  transform: translateX(0) scale(1);
}

.hero-slider .hero-slide.is-entering-from-next,
.services-hero-slider .hero-slide.is-entering-from-next {
  opacity: 0;
  transform: translateX(3%) scale(1.02);
}

.hero-slider .hero-slide.is-entering-from-prev,
.services-hero-slider .hero-slide.is-entering-from-prev {
  opacity: 0;
  transform: translateX(-3%) scale(1.02);
}

.hero-slider .hero-slide.is-leaving-to-next,
.services-hero-slider .hero-slide.is-leaving-to-next {
  opacity: 0;
  transform: translateX(-2%) scale(1.01);
}

.hero-slider .hero-slide.is-leaving-to-prev,
.services-hero-slider .hero-slide.is-leaving-to-prev {
  opacity: 0;
  transform: translateX(2%) scale(1.01);
}

.services-hero-slider-wrap {
  height: clamp(330px, 44vw, 540px) !important;
}

.services-hero-slider .hero-slide {
  padding: 1rem 4.25rem !important;
}

.services-hero-slider .hero-slide-image {
  max-width: min(100%, 1240px);
  max-height: 100%;
  object-fit: contain;
  object-position: center center;
}

@media (max-width: 900px) {
  .main-nav {
    overflow-y: auto;
    max-height: calc(100vh - var(--header-h) - var(--topbar-h) - 8px);
  }
  .services-hero-slider-wrap {
    height: clamp(300px, 54vw, 420px) !important;
  }
}

@media (max-width: 760px) {
  .services-hero-slider-wrap {
    height: clamp(270px, 62vw, 360px) !important;
  }
  .services-hero-slider .hero-slide {
    padding: .85rem 3rem !important;
  }
}

@media (max-width: 580px) {
  .services-hero-slider-wrap {
    height: clamp(245px, 70vw, 320px) !important;
  }
  .services-hero-slider .hero-slide {
    padding: .75rem 2.5rem !important;
  }
}


/* Services hero uses the contained page-showcase implementation in modern.css. */

/* === Final branding and security refinements === */

.site-header .logo-link {
  min-height: calc(var(--header-h) - 16px);
  display: inline-flex;
  align-items: center;
}
.site-header .logo-brandmark {
  background: linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(243,249,252,.98) 100%);
  border: 1px solid rgba(10,92,138,.12);
  box-shadow: 0 8px 20px rgba(10,92,138,.06), inset 0 1px 0 rgba(255,255,255,.65);
  border-radius: 16px;
  padding: .28rem .56rem;
}
.site-header .brand-logo-img {
  width: 170px;
  max-width: min(18vw, 170px);
  height: auto;
  display: block;
}
.site-footer .footer-brand {
  gap: .85rem;
}
.footer-brand-row {
  display: inline-flex;
  align-items: center;
  gap: .8rem;
}
.footer-brand-badge {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.06));
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}
.footer-brand-icon {
  width: 40px;
  height: 40px;
  object-fit: contain;
  display: block;
}
.site-footer .footer-title {
  margin: 0;
}
.footer-qr-card {
  padding: .72rem;
}
.footer-qr-img {
  width: 96px;
  height: 96px;
}
.appointment-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
@media (max-width: 760px) {
  .site-header .logo-brandmark {
    border-radius: 14px;
    padding: .22rem .46rem;
  }
  .site-header .brand-logo-img {
    width: 146px;
    max-width: 42vw;
  }
  .footer-brand-row {
    gap: .65rem;
  }
  .footer-brand-badge {
    width: 46px;
    height: 46px;
    border-radius: 14px;
  }
  .footer-brand-icon {
    width: 34px;
    height: 34px;
  }
}
@media (max-width: 520px) {
  .site-header .brand-logo-img {
    width: 138px;
    max-width: 44vw;
  }
  .footer-qr-img {
    width: 84px;
    height: 84px;
  }
}

/* === Doctor CMS admin === */
.dc-photo {
  width: 72px;
  height: 72px;
  border-radius: 18px;
  object-fit: cover;
  background: #eef6fb;
  border: 1px solid rgba(10,92,138,.08);
}
.admin-auth-wrap {
  min-height: calc(100vh - 140px);
  display: flex;
  align-items: center;
}
.admin-auth-container { max-width: 680px; }
.admin-card {
  background: #fff;
  border-radius: 24px;
  border: 1px solid rgba(10,92,138,.08);
  box-shadow: 0 18px 50px rgba(10,92,138,.08);
  padding: 24px;
}
.admin-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 24px;
}
.admin-form .form-group { margin-bottom: 16px; }
.admin-form input,
.admin-form select,
.admin-form textarea {
  width: 100%;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(10,92,138,.15);
  font: inherit;
  background: #fff;
}
.admin-form textarea { resize: vertical; }
.admin-actions-row,
.admin-inline-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.admin-list { display: grid; gap: 12px; }
.admin-list-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid rgba(10,92,138,.08);
  border-radius: 16px;
  padding: 14px;
  background: #f9fcfe;
}
.admin-subtle { font-size: .92rem; color: #5c7181; margin-top: 4px; }
.admin-alert {
  margin: 0 auto 18px;
  max-width: 720px;
  border-radius: 14px;
  padding: 12px 14px;
  font-weight: 600;
}
.admin-alert.success { background: #e7f8ef; color: #136c43; border: 1px solid #b7e8cb; }
.admin-alert.error { background: #fff1f0; color: #9b2d20; border: 1px solid #f1c0ba; }
.admin-inline-form {
  display: grid;
  grid-template-columns: 2fr .7fr auto auto auto;
  gap: 12px;
  align-items: center;
}
.admin-toggle label { display: inline-flex; align-items: center; gap: 8px; }
.btn-small { padding: 8px 12px; font-size: .9rem; }
@media (max-width: 960px) {
  .admin-grid { grid-template-columns: 1fr; }
  .admin-inline-form { grid-template-columns: 1fr; }
}


/* === April 2026 doctor card, logo, and admin refinement overrides === */
.site-header .logo-link { display:flex; align-items:center; }
.site-header .logo-brandmark {
  padding: .28rem .42rem !important;
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(255,255,255,.95) 0%, rgba(245,249,252,.98) 100%);
  box-shadow: 0 6px 18px rgba(10,92,138,.08);
}
.site-header .brand-logo-img {
  width: 194px !important;
  max-width: min(24vw, 194px) !important;
}
.doctor-card { overflow: hidden; }
.dc-header {
  display: grid;
  grid-template-columns: 116px minmax(0,1fr);
  gap: 1.15rem;
  align-items: start;
  min-height: 176px;
  padding: 1.3rem 1.35rem 1rem;
  border-bottom: 1px solid rgba(11,92,138,.08);
}
.dc-photo,
.dc-avatar {
  width: 102px;
  height: 102px;
  border-radius: 26px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: linear-gradient(180deg, #eff8fd 0%, #e4f1fa 100%);
  border: 1px solid rgba(11,92,138,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
  overflow:hidden;
}
.dc-photo { object-fit: cover; }
.dc-header-text { display:flex; flex-direction:column; gap:.5rem; padding-top:.1rem; }
.dc-name { margin: 0; line-height:1.22; font-size:1.28rem; }
.dc-qual { margin:0; font-size:.96rem; color:#22445a; line-height:1.45; }
.dc-strength-title {
  font-size: .73rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #0e7b86;
}
.dc-specialty { font-weight:700; color:#0a5c8a; font-size:1rem; line-height:1.35; }
.dc-exp-badge {
  display:inline-flex;
  align-self:flex-start;
  margin-top:.1rem;
  padding:.44rem .78rem;
  border-radius:999px;
  background: rgba(24,126,135,.10);
  color:#11707a;
  font-weight:700;
}
.dc-body { padding: 1rem 1.35rem 1.35rem; }
.dc-strength-title { margin-bottom: .72rem; }
.dc-strengths { margin: 0 0 1rem; padding: 0; list-style:none; gap:.52rem; }
.dc-strengths li { position:relative; padding-left:1rem; line-height:1.55; color:#335569; }
.dc-strengths li::before { content:"›"; position:absolute; left:0; top:0; color:#12a8b2; font-weight:800; }
.admin-grid-dashboard { align-items:start; grid-template-columns: minmax(320px, 0.95fr) minmax(420px, 1.25fr); }
.admin-card { padding: 1.35rem; border-radius: 22px; }
.admin-card-head { margin-bottom: 1rem; }
.admin-card-head h3 { margin-bottom: .3rem; }
.admin-card-head p, .admin-field-help { color:#617889; font-size:.92rem; }
.admin-form-doctor { display:flex; flex-direction:column; gap: 1rem; }
.admin-form .form-row { display:grid; gap: 1rem; }
.admin-form .form-row-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
.admin-form .form-row-3 { grid-template-columns: 1.2fr .8fr 1fr; }
.admin-form .form-group { margin-bottom: 0; }
.admin-form label { display:block; margin-bottom:.45rem; font-weight:700; color:#13374c; }
.form-section-title { padding-top:.2rem; margin-bottom:-.2rem; font-size:.83rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:#0e7b86; }
.form-group-wide { min-width:0; }
.admin-toggle-group { display:flex; align-items:flex-end; }
.admin-toggle { display:inline-flex; align-items:center; gap:.55rem; font-weight:700; }
.admin-image-preview {
  margin-top:.75rem; min-height:110px; border:1px dashed rgba(11,92,138,.22); border-radius:16px;
  display:flex; align-items:center; justify-content:center; background:#f7fbfe; color:#6a8191; overflow:hidden;
}
.admin-image-preview img { width:100%; max-height:180px; object-fit:cover; display:block; }
.admin-list { display:grid; gap:.8rem; }
.admin-list-item { align-items:center; gap:1rem; padding:1rem 1.05rem; border-radius:16px; }
.admin-list-main { min-width:0; }
.admin-inline-grid { display:grid; grid-template-columns: minmax(220px, 1.3fr) 120px auto auto; gap:.85rem; align-items:end; }
@media (max-width: 1024px) {
  .site-header .brand-logo-img { width: 178px !important; max-width: 30vw !important; }
  .admin-grid-dashboard { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .site-header .brand-logo-img { width: 150px !important; max-width: 44vw !important; }
  .dc-header { grid-template-columns: 88px minmax(0,1fr); min-height: unset; padding: 1.15rem 1.15rem .95rem; }
  .dc-body { padding: .95rem 1.15rem 1.15rem; }
  .admin-form .form-row-2, .admin-form .form-row-3, .admin-inline-grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .dc-header { grid-template-columns: 1fr; }
  .dc-photo, .dc-avatar { width: 92px; height: 92px; }
}

/* === April 2026 admin workflow alignment update === */
.admin-dashboard-stack {
  display: grid;
  gap: 24px;
}
.admin-section-card {
  padding: 1.5rem;
}
.admin-card-head-split {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}
.admin-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  padding: .45rem .8rem;
  border-radius: 999px;
  background: rgba(10,92,138,.08);
  color: #0a5c8a;
  font-weight: 800;
  font-size: .82rem;
}
.admin-grid-dashboard-v2 {
  grid-template-columns: minmax(420px, 1.35fr) minmax(280px, .65fr);
  align-items: start;
}
.admin-department-form,
.admin-form-doctor {
  margin-top: .35rem;
}
.admin-dept-grid {
  grid-template-columns: minmax(280px, 1.5fr) 150px minmax(200px, .9fr) !important;
}
.admin-table-wrap {
  margin-top: 1rem;
  overflow-x: auto;
  border: 1px solid rgba(10,92,138,.08);
  border-radius: 18px;
  background: #fff;
}
.admin-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 720px;
}
.admin-table th,
.admin-table td {
  padding: .95rem 1rem;
  border-bottom: 1px solid rgba(10,92,138,.08);
  text-align: left;
  vertical-align: top;
}
.admin-table thead th {
  background: #f4f9fc;
  color: #14384d;
  font-size: .88rem;
  font-weight: 800;
  white-space: nowrap;
}
.admin-table tbody tr:hover {
  background: #fbfdff;
}
.admin-empty-row {
  text-align: center;
  color: #647a8a;
  font-weight: 600;
}
.admin-status-pill {
  display: inline-flex;
  align-items: center;
  padding: .3rem .7rem;
  border-radius: 999px;
  font-size: .8rem;
  font-weight: 700;
}
.admin-status-pill.is-active {
  background: #e7f8ef;
  color: #136c43;
}
.admin-status-pill.is-inactive {
  background: #fff1f0;
  color: #9b2d20;
}
.admin-table-name {
  font-weight: 700;
  color: #13374c;
}
.admin-table-specialty {
  font-weight: 700;
  color: #0a5c8a;
  margin-bottom: .2rem;
}
.admin-table-strengths {
  color: #5f7483;
  font-size: .9rem;
  line-height: 1.45;
}
.admin-import-note {
  display: grid;
  gap: .8rem;
  color: #355168;
  font-size: .95rem;
}
.admin-import-note code {
  background: #f4f8fb;
  border: 1px solid rgba(10,92,138,.08);
  padding: .12rem .42rem;
  border-radius: 8px;
}
.admin-card-listing .admin-table {
  min-width: 980px;
}
@media (max-width: 1100px) {
  .admin-grid-dashboard-v2 {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  .admin-card-head-split {
    flex-direction: column;
  }
  .admin-dept-grid {
    grid-template-columns: 1fr !important;
  }
}


.doctor-empty-state{width:100%;padding:28px 22px;border:1px solid rgba(10,92,138,.14);border-radius:18px;background:#fff;text-align:center;color:#4c6280;font-weight:600}.dc-empty-copy{color:#5f7190;font-size:.95rem;line-height:1.6;min-height:1.6em}


/* === April 2026 doctors/admin UI refinement update === */
.doctors-full-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1.75rem;
}
.doctor-card {
  min-height: 100%;
}
.dc-header {
  align-items: flex-start;
  padding: 1.4rem 1.4rem 1.1rem;
}
.dc-photo,
.dc-avatar {
  width: 104px;
  height: 104px;
  border-radius: 24px;
  flex-shrink: 0;
  overflow: hidden;
}
.dc-photo {
  object-fit: cover;
  display: block;
}
.dc-header-text {
  display: flex;
  flex-direction: column;
  gap: .45rem;
  padding-top: .15rem;
}
.dc-name {
  font-size: 1.18rem;
  line-height: 1.18;
  margin-bottom: 0;
}
.dc-qual {
  margin-bottom: 0;
  border-left: 0;
  padding-left: 0;
  color: #355168;
  font-size: .97rem;
  line-height: 1.5;
}
.dc-specialty {
  font-size: 1rem;
  line-height: 1.45;
  margin-bottom: 0;
}
.dc-experience {
  color: #476477;
  font-size: .95rem;
  font-weight: 600;
  line-height: 1.4;
}
.dc-body {
  padding: 1.2rem 1.4rem 1.35rem;
}
.dc-strength-title {
  font-size: .92rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-weight: 800;
  color: #0a6e81;
  margin-bottom: .55rem;
}
.dc-strengths li {
  font-size: .94rem;
  line-height: 1.55;
}

.admin-tabs {
  display: flex;
  gap: .85rem;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 1.25rem;
}
.admin-tab {
  border: 1px solid rgba(10,92,138,.14);
  background: #fff;
  color: #123a51;
  border-radius: 999px;
  padding: .8rem 1.35rem;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(10,92,138,.06);
  transition: all .2s ease;
}
.admin-tab.active,
.admin-tab:hover {
  background: #0a5c8a;
  color: #fff;
  border-color: #0a5c8a;
}
.admin-tab-panel[hidden] {
  display: none !important;
}
.admin-tab-panel.is-active {
  display: block;
}
.admin-section-card {
  padding: 1.6rem;
}
.admin-card-head {
  margin-bottom: 1rem;
}
.admin-card-head h3 {
  margin-bottom: .35rem;
}
.admin-card-head p {
  color: #496277;
}
.admin-dept-grid {
  grid-template-columns: minmax(320px, 1.8fr) 170px minmax(220px, 1fr) !important;
  align-items: end;
}
.form-group-span-2 {
  grid-column: span 2;
}
.admin-card-listing {
  margin-top: 1.25rem;
}

@media (max-width: 900px) {
  .doctors-full-grid {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 760px) {
  .dc-photo,
  .dc-avatar {
    width: 96px;
    height: 96px;
  }
  .admin-dept-grid,
  .form-group-span-2 {
    grid-template-columns: 1fr !important;
    grid-column: auto;
  }
}


/* Homepage feature control and doctor image handling */
.doctor-image-trigger {
  appearance: none;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
}
.doctor-image-trigger:focus-visible {
  outline: 2px solid rgba(10,92,138,.5);
  outline-offset: 3px;
}
.dmc-avatar .doctor-image-trigger,
.dc-header .doctor-image-trigger {
  width: 100%;
}
.dmc-avatar,
.dc-header .doctor-image-trigger {
  background: linear-gradient(180deg,#f4f9fd 0%,#edf5fb 100%);
}
.home-doctor-photo,
.dc-photo {
  object-fit: contain !important;
  object-position: center center !important;
  background: linear-gradient(180deg,#f4f9fd 0%,#edf5fb 100%);
  padding: 6px;
}
.home-doctor-photo { border-radius: 18px; }
.dc-photo { border-radius: 20px; }
.dc-languages {
  margin-top: .45rem;
  font-size: .88rem;
  line-height: 1.4;
  color: #446179;
}
.dc-languages span {
  color: #0a5c8a;
  font-weight: 700;
}
.doctor-image-modal {
  position: fixed;
  inset: 0;
  z-index: 3000;
}
.doctor-image-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(7, 24, 40, .7);
}
.doctor-image-modal__dialog {
  position: relative;
  width: min(92vw, 720px);
  margin: 6vh auto;
  background: #fff;
  border-radius: 24px;
  box-shadow: 0 30px 70px rgba(0,0,0,.28);
  padding: 1.25rem 1.25rem 1rem;
}
.doctor-image-modal__media-wrap {
  background: linear-gradient(180deg,#f8fbfe 0%,#edf4fb 100%);
  border-radius: 18px;
  padding: 1rem;
}
.doctor-image-modal__img {
  display: block;
  width: 100%;
  max-height: 72vh;
  object-fit: contain;
  object-position: center center;
}
.doctor-image-modal__title {
  margin-top: .85rem;
  color: #0b3655;
  font-weight: 700;
  text-align: center;
}
.doctor-image-modal__close {
  position: absolute;
  top: .8rem;
  right: .8rem;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 999px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 10px 20px rgba(0,0,0,.08);
  font-size: 1.7rem;
  line-height: 1;
  cursor: pointer;
}
body.modal-open { overflow: hidden; }
.admin-visibility-group { display:flex; flex-direction:column; gap:.85rem; justify-content:center; }

/* SEO profile pages and crawlable doctor links */
.dc-name a,
.dmc-name a,
.dc-department a,
.sfc-body h3 a {
  color: inherit;
  text-decoration: none;
}
.dc-name a:hover,
.dmc-name a:hover,
.dc-department a:hover,
.sfc-body h3 a:hover {
  text-decoration: underline;
}
.dc-secondary-btn {
  margin-top: 8px;
  background: transparent;
  color: var(--primary, #0a5c8a);
  border: 1px solid rgba(10, 92, 138, 0.22);
}
.doctor-filter-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.doctor-profile-section,
.department-profile-section {
  background: #f8fbfd;
}
.doctor-profile-card,
.profile-content-card {
  background: #fff;
  border: 1px solid rgba(9, 44, 72, 0.08);
  border-radius: 24px;
  box-shadow: 0 16px 45px rgba(11, 70, 110, 0.08);
}
.doctor-profile-card {
  display: grid;
  grid-template-columns: minmax(220px, 300px) 1fr;
  gap: 32px;
  padding: 32px;
  align-items: center;
}
.doctor-profile-photo,
.doctor-profile-avatar {
  width: 100%;
  max-width: 280px;
  aspect-ratio: 1 / 1;
  border-radius: 22px;
  object-fit: cover;
  background: #e8f4fb;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 72px;
}
.doctor-profile-info h2,
.profile-content-card h2 {
  margin-bottom: 10px;
}
.profile-meta-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px;
  margin: 22px 0;
}
.profile-meta-grid > div {
  padding: 14px 16px;
  border-radius: 16px;
  background: #f3f8fb;
}
.profile-meta-grid strong,
.profile-meta-grid span,
.profile-meta-grid a {
  display: block;
}
.profile-meta-grid strong {
  font-size: 0.82rem;
  color: #607283;
  margin-bottom: 4px;
}
.profile-meta-grid a {
  color: var(--primary, #0a5c8a);
  font-weight: 700;
  text-decoration: none;
}
.profile-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 18px;
}
.profile-content-card {
  padding: 28px;
  margin-top: 28px;
}
.profile-strengths {
  columns: 2;
  column-gap: 36px;
}
.related-doctor-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
}
.related-doctor-card {
  display: block;
  padding: 18px;
  border: 1px solid rgba(9, 44, 72, 0.08);
  border-radius: 18px;
  text-decoration: none;
  color: inherit;
  background: #f8fbfd;
}
.related-doctor-card strong,
.related-doctor-card span {
  display: block;
}
.related-doctor-card span {
  color: #607283;
  margin-top: 4px;
}
.server-doctor-grid .dc-avatar {
  width: 82px;
  height: 82px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e8f4fb;
  font-size: 36px;
}
@media (max-width: 768px) {
  .doctor-profile-card {
    grid-template-columns: 1fr;
    padding: 22px;
  }
  .profile-strengths {
    columns: 1;
  }
}

/* === Social media top bar + floating WhatsApp integration === */
.top-social-links {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  flex: 0 0 auto;
  min-width: max-content;
}
.top-social-label {
  color: rgba(255,255,255,.82);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1;
  text-transform: uppercase;
}
.top-social-link {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #fff;
  border: 1px solid rgba(255,255,255,.28);
  box-shadow: 0 8px 22px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.22);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.top-social-link svg {
  width: 17px;
  height: 17px;
  display: block;
}
.top-social-link:hover,
.top-social-link:focus-visible {
  transform: translateY(-2px);
  color: #fff;
  box-shadow: 0 12px 28px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.28);
  filter: saturate(1.08);
}
.top-social-instagram { background: radial-gradient(circle at 28% 108%, #fdf497 0 16%, #fd5949 36%, #d6249f 62%, #285AEB 100%); }
.top-social-facebook { background: #1877f2; }
.top-social-youtube { background: #ff0000; }

.floating-whatsapp {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 1010;
  display: inline-flex;
  align-items: center;
  gap: .72rem;
  min-height: 58px;
  padding: .72rem 1.15rem .72rem .86rem;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #25d366 0%, #13b84f 100%);
  border: 1px solid rgba(255,255,255,.28);
  box-shadow: 0 18px 42px rgba(16, 185, 129, .36), 0 8px 20px rgba(0,0,0,.18);
  font-weight: 800;
  letter-spacing: .01em;
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.floating-whatsapp:hover,
.floating-whatsapp:focus-visible {
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 24px 54px rgba(16, 185, 129, .44), 0 10px 24px rgba(0,0,0,.22);
  filter: saturate(1.04);
}
.floating-whatsapp-icon {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22);
  flex: 0 0 auto;
}
.floating-whatsapp-icon svg {
  width: 23px;
  height: 23px;
  display: block;
}
.floating-whatsapp-text {
  font-size: 1rem;
  line-height: 1;
  white-space: nowrap;
}

@media (max-width: 1180px) {
  .top-social-label { display: none; }
  .top-social-link { width: 32px; height: 32px; }
  .top-social-link svg { width: 16px; height: 16px; }
}
@media (max-width: 980px) {
  .top-bar-inner { gap: .62rem !important; }
  .top-social-links { gap: .34rem; }
  .top-call-badge { padding-left: .68rem !important; padding-right: .68rem !important; }
}
@media (max-width: 760px) {
  :root { --topbar-h: 124px !important; }
  .top-bar { min-height: var(--topbar-h) !important; }
  .top-bar-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    align-content: center !important;
    justify-content: center !important;
    gap: .44rem .55rem !important;
  }
  .top-bar-copy {
    flex: 1 0 100% !important;
    order: 1;
  }
  .top-social-links {
    order: 2;
    flex: 0 0 auto;
  }
  .top-bar-actions {
    order: 3;
    flex: 1 0 100%;
  }
  .top-social-link { width: 30px; height: 30px; }
  .top-social-link svg { width: 15px; height: 15px; }
  .site-header { top: var(--topbar-h) !important; }
  .hero, .page-hero { margin-top: calc(var(--header-h) + var(--topbar-h)) !important; }
  .main-nav { top: calc(var(--header-h) + var(--topbar-h)) !important; }
  .floating-whatsapp {
    right: 15px;
    bottom: 16px;
    min-height: 54px;
    padding: .62rem .92rem .62rem .72rem;
  }
  .floating-whatsapp-icon { width: 34px; height: 34px; }
  .floating-whatsapp-icon svg { width: 21px; height: 21px; }
  .floating-whatsapp-text { font-size: .94rem; }
}
@media (max-width: 460px) {
  :root { --topbar-h: 132px !important; }
  .top-call-badge { width: auto !important; min-width: 138px !important; }
  .top-call-text { font-size: .72rem; }
  .floating-whatsapp {
    right: 12px;
    bottom: 12px;
    gap: .45rem;
    min-height: 50px;
    padding: .56rem .76rem .56rem .62rem;
  }
  .floating-whatsapp-icon { width: 32px; height: 32px; }
  .floating-whatsapp-text { font-size: .88rem; }
}

/* ================================================================
   Testimonials and Patient Feedback Module
   ================================================================ */
.testimonial-page-hero,
.feedback-page-hero {
  background:
    radial-gradient(circle at 86% 18%, rgba(35, 190, 170, .18), transparent 30%),
    linear-gradient(135deg, #eaf7ff 0%, #f7fcff 55%, #ebfbf6 100%);
}
.testimonial-page-hero .page-hero-content,
.feedback-page-hero .page-hero-content { max-width: 780px; }

.testimonial-video-section { background: #fff; }
.testimonial-player-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(300px, .75fr);
  gap: 1.25rem;
  align-items: start;
  margin-top: 2.2rem;
}
.testimonial-main-player,
.testimonial-playlist,
.testimonial-review-card,
.feedback-invite-card,
.feedback-form-card,
.feedback-language-bar,
.feedback-success-card {
  border: 1px solid rgba(15, 99, 145, .12);
  background: #fff;
  box-shadow: 0 18px 48px rgba(10, 64, 101, .09);
}
.testimonial-main-player { border-radius: 24px; overflow: hidden; }
.testimonial-iframe-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #08131d;
  display: grid;
  place-items: center;
}
.testimonial-iframe-wrap.is-short {
  aspect-ratio: 16 / 9;
  background: radial-gradient(circle at center, #172d3b, #071019 65%);
}
.testimonial-iframe-wrap.is-short iframe { max-width: 390px; }
.testimonial-iframe-wrap iframe { width: 100%; height: 100%; border: 0; display: block; }
.testimonial-player-caption { padding: 1.15rem 1.3rem 1.35rem; }
.testimonial-player-caption h3 { margin: .45rem 0 0; color: #11384f; font-size: clamp(1.08rem, 2vw, 1.34rem); }
.testimonial-video-badge {
  display: inline-flex;
  align-items: center;
  min-height: 27px;
  padding: .25rem .68rem;
  border-radius: 999px;
  background: #e9f6ff;
  color: #0c6699;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.testimonial-playlist {
  border-radius: 22px;
  padding: .72rem;
  display: flex;
  flex-direction: column;
  gap: .55rem;
  max-height: 590px;
  overflow-y: auto;
}
.testimonial-playlist-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: .85rem;
  border: 1px solid transparent;
  background: #f7fbfe;
  border-radius: 16px;
  padding: .84rem;
  text-align: left;
  cursor: pointer;
  color: #173d55;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.testimonial-playlist-item:hover { transform: translateY(-1px); border-color: rgba(16, 115, 171, .22); }
.testimonial-playlist-item.active { background: #eaf7ff; border-color: #7fc2e8; box-shadow: inset 3px 0 #0d79b7; }
.testimonial-play-icon {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(135deg, #e62117, #b9100b);
  box-shadow: 0 8px 18px rgba(214, 28, 20, .22);
}
.testimonial-play-icon svg { width: 20px; height: 20px; fill: currentColor; }
.testimonial-playlist-copy { min-width: 0; display: flex; flex-direction: column; gap: .25rem; }
.testimonial-playlist-copy strong { font-size: .94rem; line-height: 1.35; }
.testimonial-playlist-copy small { color: #6b8190; font-size: .78rem; }

.testimonial-review-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 1.65rem;
}
.testimonial-review-heading .section-title,
.testimonial-review-heading .section-sub { text-align: left; margin-left: 0; }



.testimonial-review-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(300px, 31.5%);
  gap: 1rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: inline mandatory;
  scrollbar-width: thin;
  padding: .25rem .1rem 1rem;
}
.testimonial-review-card {
  scroll-snap-align: start;
  border-radius: 22px;
  padding: 1.35rem;
  height: 370px;
  min-height: 370px;
  max-height: 370px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.testimonial-review-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.google-review-mark {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font: 800 1.25rem/1 Arial, sans-serif;
  color: #fff;
  background: conic-gradient(from -45deg, #4285f4 0 25%, #34a853 0 50%, #fbbc05 0 75%, #ea4335 0);
  box-shadow: inset 0 0 0 7px #fff, 0 5px 14px rgba(31, 73, 105, .13);
}
.testimonial-stars { color: #f5a623; letter-spacing: .08em; font-size: 1.05rem; }
.testimonial-review-card blockquote {
  margin: 1.15rem 0;
  color: #31536a;
  font-size: .98rem;
  line-height: 1.75;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: .45rem;
  scrollbar-width: thin;
  scrollbar-color: #9fc6d8 #edf6fa;
}
.testimonial-review-card blockquote::-webkit-scrollbar { width: 7px; }
.testimonial-review-card blockquote::-webkit-scrollbar-track { background: #edf6fa; border-radius: 999px; }
.testimonial-review-card blockquote::-webkit-scrollbar-thumb { background: #9fc6d8; border-radius: 999px; }
.testimonial-review-card blockquote:focus-visible { outline: 2px solid rgba(13,119,181,.35); outline-offset: 3px; border-radius: 6px; }
.testimonial-review-person { display: flex; align-items: center; gap: .75rem; }
.testimonial-review-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #0d77b5, #139a91);
  color: #fff;
  font-weight: 800;
}
.testimonial-review-person div { display: flex; flex-direction: column; gap: .14rem; }
.testimonial-review-person strong { color: #15394f; }
.testimonial-review-person small { color: #788c99; }
.testimonial-source-link { margin-top: 1rem; font-size: .82rem; font-weight: 700; color: #0b6fa8; }
.testimonial-empty-state {
  border: 1px dashed rgba(15, 99, 145, .25);
  background: #f8fcff;
  border-radius: 24px;
  padding: 3rem 1.5rem;
  text-align: center;
  color: #5e7889;
}
.testimonial-empty-state.compact { padding: 2rem 1.2rem; }
.testimonial-empty-state svg { width: 58px; height: 58px; fill: none; stroke: #1587bd; stroke-width: 1.5; margin-bottom: .65rem; }
.testimonial-empty-state h3 { margin: 0 0 .45rem; color: #173d55; }
.testimonial-empty-state p { margin: 0; }

.feedback-invite-section { background: #fff; }
.feedback-invite-card {
  border-radius: 26px;
  padding: clamp(1.4rem, 4vw, 2.3rem);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 1.35rem;
  background:
    radial-gradient(circle at 90% 10%, rgba(44, 190, 166, .14), transparent 28%),
    #fff;
}
.feedback-invite-icon,
.feedback-section-icon {
  display: grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(135deg, #0d77b5, #159688);
  box-shadow: 0 12px 28px rgba(12, 118, 157, .2);
}
.feedback-invite-icon { width: 66px; height: 66px; border-radius: 20px; }
.feedback-invite-icon svg { width: 32px; height: 32px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.feedback-invite-card h2 { margin: .25rem 0 .45rem; color: #123950; }
.feedback-invite-card p { margin: 0; color: #5a7486; line-height: 1.65; }

.feedback-form-section { background: linear-gradient(180deg, #f5fbff, #fff); }
.feedback-shell { max-width: 1040px; }
.feedback-language-bar {
  position: sticky;
  top: calc(var(--header-h) + var(--topbar-h) + 10px);
  z-index: 20;
  border-radius: 18px;
  padding: .85rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.feedback-language-bar > div:first-child { display: flex; flex-direction: column; gap: .1rem; color: #163c54; }
.feedback-language-bar > div:first-child span { font-size: .8rem; color: #718694; }
.feedback-language-options { display: inline-flex; background: #edf6fb; padding: .25rem; border-radius: 999px; }
.feedback-language-options button {
  border: 0;
  background: transparent;
  color: #31596f;
  padding: .62rem 1rem;
  border-radius: 999px;
  font-weight: 800;
  cursor: pointer;
}
.feedback-language-options button.active { color: #fff; background: linear-gradient(135deg, #0d74b3, #0a5e96); box-shadow: 0 5px 14px rgba(8, 92, 148, .2); }
.feedback-progress { display: grid; grid-template-columns: repeat(4, 1fr); gap: .55rem; margin: 0 0 1.2rem; }
.feedback-progress span { height: 5px; border-radius: 999px; background: linear-gradient(90deg, #0c77b6, #17a18d); opacity: .78; }
.feedback-form { display: flex; flex-direction: column; gap: 1.15rem; }
.feedback-form-card { border-radius: 24px; padding: clamp(1.2rem, 3vw, 2rem); }
.feedback-section-head { display: flex; gap: 1rem; align-items: flex-start; margin-bottom: 1.4rem; }
.feedback-section-icon { width: 50px; height: 50px; flex: 0 0 50px; border-radius: 16px; }
.feedback-section-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.feedback-step-label { display: block; color: #0b789d; font-size: .76rem; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; margin-bottom: .2rem; }
.feedback-section-head h2 { margin: 0 0 .25rem; color: #143c53; font-size: clamp(1.2rem, 2.4vw, 1.55rem); }
.feedback-section-head p { margin: 0; color: #6b8190; line-height: 1.55; }
.feedback-grid { display: grid; gap: 1rem; }
.feedback-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.feedback-field-full { grid-column: 1 / -1; }
.feedback-field { min-width: 0; }
.feedback-form fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.feedback-field label,
.feedback-field legend,
.feedback-rating-row legend { color: #173d55; font-weight: 750; margin-bottom: .5rem; }
.feedback-field small { font-size: .72rem; font-weight: 600; color: #889aa5; margin-left: .25rem; }
.feedback-field input,
.feedback-field select,
.feedback-field textarea {
  width: 100%;
  border: 1px solid rgba(15, 99, 145, .2);
  border-radius: 14px;
  padding: .86rem .95rem;
  background: #fff;
  color: #163a50;
  font: inherit;
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.feedback-field input:focus,
.feedback-field select:focus,
.feedback-field textarea:focus { border-color: #1384bd; box-shadow: 0 0 0 4px rgba(19, 132, 189, .11); }
.feedback-field input.is-invalid,
.feedback-field select.is-invalid,
.feedback-field textarea.is-invalid { border-color: #ce4336; box-shadow: 0 0 0 4px rgba(206, 67, 54, .1); }
.feedback-field textarea { resize: vertical; min-height: 145px; line-height: 1.6; }
.feedback-choice-row { display: grid; gap: .8rem; }
.feedback-choice-row-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.feedback-choice-card {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  gap: .1rem .8rem;
  align-items: center;
  border: 1px solid rgba(15, 99, 145, .16);
  border-radius: 17px;
  padding: .95rem;
  cursor: pointer;
  background: #fbfdff;
}
.feedback-choice-card input { position: absolute; opacity: 0; pointer-events: none; }
.feedback-choice-card:has(input:checked) { border-color: #1992bd; background: #edf9ff; box-shadow: inset 0 0 0 1px #1992bd; }
.choice-icon { grid-row: 1 / 3; width: 42px; height: 42px; border-radius: 13px; display: grid; place-items: center; color: #0d78ad; background: #e8f6fc; }
.choice-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.feedback-choice-card strong { color: #153b52; }
.feedback-choice-card small { color: #718795; font-size: .78rem; }
.feedback-rating-list { display: flex; flex-direction: column; gap: 1rem; }
.feedback-rating-row { border: 0; padding: 0; margin: 0; }
.feedback-rating-row legend { width: 100%; margin-bottom: .55rem; }
.feedback-rating-options { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .55rem; }
.feedback-rating-options label { position: relative; cursor: pointer; }
.feedback-rating-options input { position: absolute; opacity: 0; pointer-events: none; }
.feedback-rating-options span {
  min-height: 44px;
  padding: .65rem .55rem;
  border: 1px solid rgba(15, 99, 145, .16);
  border-radius: 13px;
  display: grid;
  place-items: center;
  text-align: center;
  background: #fbfdff;
  color: #365b70;
  font-size: .84rem;
  font-weight: 700;
  line-height: 1.25;
}
.feedback-rating-options input:checked + span { border-color: #0e88b8; background: #eaf8fd; color: #075f86; box-shadow: inset 0 0 0 1px #0e88b8; }
.recommendation-options { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 520px; }
.feedback-voice-row { margin-top: .65rem; display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.feedback-voice-btn {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  border: 1px solid #72bbda;
  border-radius: 999px;
  background: #edf9ff;
  color: #076991;
  padding: .62rem .9rem;
  font-weight: 800;
  cursor: pointer;
}
.feedback-voice-btn svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; }
.feedback-voice-btn.is-listening { color: #fff; background: #c0392b; border-color: #c0392b; animation: feedbackPulse 1.2s infinite; }
.feedback-voice-btn.is-disabled { opacity: .55; cursor: not-allowed; }
#feedbackVoiceStatus { color: #748995; font-size: .8rem; }
@keyframes feedbackPulse { 50% { box-shadow: 0 0 0 8px rgba(192, 57, 43, .12); } }
.feedback-consent { display: flex; align-items: flex-start; gap: .6rem; margin: 1rem 0; color: #486678; font-size: .9rem; line-height: 1.45; }
.feedback-consent input { margin-top: .18rem; accent-color: #0d79ae; }
.feedback-submit-btn { width: 100%; min-height: 52px; display: inline-flex; gap: .55rem; }
.feedback-submit-btn svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 2.1; }
.feedback-submit-btn:disabled { opacity: .65; cursor: wait; }
.feedback-privacy { margin: .75rem 0 0; text-align: center; color: #7b909c; font-size: .77rem; line-height: 1.45; }
.feedback-form-message { margin: .8rem 0; padding: .8rem .9rem; border-radius: 12px; font-weight: 700; font-size: .88rem; }
.feedback-form-message:empty { display: none; }
.feedback-form-message.error { background: #fff1f0; border: 1px solid #efc1bb; color: #8f3026; }
.feedback-form-message.success { background: #eaf9f0; border: 1px solid #b9e4c8; color: #19623d; }
.feedback-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.feedback-service-alert { padding: 1rem; border-radius: 15px; background: #fff4e6; border: 1px solid #f1d1a1; color: #76511b; }
.feedback-success-card { border-radius: 26px; padding: clamp(2rem, 5vw, 3.5rem); text-align: center; }
.feedback-success-icon { width: 76px; height: 76px; display: grid; place-items: center; margin: 0 auto 1rem; border-radius: 50%; color: #fff; background: linear-gradient(135deg, #1a9b70, #0f7d7b); box-shadow: 0 16px 34px rgba(20, 137, 110, .22); }
.feedback-success-icon svg { width: 38px; height: 38px; fill: none; stroke: currentColor; stroke-width: 2.1; }
.feedback-success-card h2 { margin: 0 0 .5rem; color: #153d52; }
.feedback-success-card p { color: #657d8b; }
.feedback-reference { display: inline-flex; flex-direction: column; gap: .25rem; background: #eef8fc; border-radius: 14px; padding: .8rem 1.2rem; margin: .5rem 0 1.4rem; color: #5a7485; }
.feedback-reference strong { color: #0d6f9d; font-size: 1.12rem; letter-spacing: .05em; }

@media (min-width: 901px) and (max-width: 1220px) {
  .nav-link { padding-left: .58rem !important; padding-right: .58rem !important; font-size: .82rem !important; }
}
@media (max-width: 900px) {
  .testimonial-player-layout { grid-template-columns: 1fr; }
  .testimonial-playlist { max-height: 370px; }
  .testimonial-review-track { grid-auto-columns: minmax(290px, 78%); }
  .feedback-invite-card { grid-template-columns: auto 1fr; }
  .feedback-invite-card .btn { grid-column: 1 / -1; width: 100%; }
  .feedback-language-bar { top: calc(var(--header-h) + var(--topbar-h) + 6px); }
}
@media (max-width: 680px) {
  .testimonial-review-heading { align-items: flex-start; }
  
  .testimonial-review-track { grid-auto-columns: 88%; }
  .feedback-invite-card { grid-template-columns: 1fr; text-align: center; }
  .feedback-invite-icon { margin: 0 auto; }
  .feedback-grid-2,
  .feedback-choice-row-2 { grid-template-columns: 1fr; }
  .feedback-rating-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .feedback-rating-options label:last-child:nth-child(odd) { grid-column: 1 / -1; }
  .recommendation-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .feedback-language-bar { position: relative; top: auto; }
  .feedback-section-head { gap: .75rem; }
  .feedback-section-icon { width: 44px; height: 44px; flex-basis: 44px; border-radius: 14px; }
}
@media (max-width: 440px) {
  .testimonial-review-track { grid-auto-columns: 94%; }
  .feedback-form-card { padding: 1rem; border-radius: 19px; }
  .feedback-language-bar { align-items: stretch; flex-direction: column; }
  .feedback-language-options { width: 100%; }
  .feedback-language-options button { flex: 1; }
  .recommendation-options { grid-template-columns: 1fr; }
  .recommendation-options label:last-child:nth-child(odd) { grid-column: auto; }
}

/* ================================================================
   Testimonials & Feedback UI refinement - July 2026
   ================================================================ */
.testimonial-page-hero,
.feedback-page-hero {
  min-height: 0;
  padding: clamp(3.2rem, 7vw, 5.4rem) 0 clamp(3rem, 6vw, 4.8rem);
  background:
    radial-gradient(circle at 83% 22%, rgba(37, 179, 159, .20), transparent 27%),
    radial-gradient(circle at 12% 82%, rgba(40, 132, 202, .13), transparent 30%),
    linear-gradient(135deg, #eef9ff 0%, #ffffff 50%, #effcf8 100%);
  border-bottom: 1px solid rgba(11, 102, 151, .09);
}
.testimonial-page-hero::before,
.feedback-page-hero::before {
  opacity: .55;
  background-image:
    linear-gradient(rgba(16, 112, 161, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(16, 112, 161, .035) 1px, transparent 1px);
  background-size: 34px 34px;
}
.testimonial-page-hero .page-hero-content,
.feedback-page-hero .page-hero-content {
  max-width: 820px;
  padding-left: 88px;
}
.testimonial-page-hero .breadcrumb,
.feedback-page-hero .breadcrumb,
.testimonial-page-hero .breadcrumb a,
.feedback-page-hero .breadcrumb a {
  color: #527487;
}
.testimonial-page-hero .breadcrumb a:hover,
.feedback-page-hero .breadcrumb a:hover { color: #086b9e; }
.testimonial-page-hero h1,
.feedback-page-hero h1 {
  color: #0c3047;
  margin: .45rem 0 .8rem;
  font-size: clamp(2.2rem, 5vw, 4rem);
  letter-spacing: -.02em;
}
.testimonial-page-hero p,
.feedback-page-hero p {
  color: #496a7d;
  max-width: 690px;
  line-height: 1.7;
  font-size: clamp(1rem, 1.7vw, 1.16rem);
}
.page-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  color: #0b7e8f;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.testimonial-hero-icon,
.feedback-hero-icon {
  position: absolute;
  left: 0;
  top: 1.75rem;
  width: 66px;
  height: 66px;
  display: grid;
  place-items: center;
  border-radius: 21px;
  color: #fff;
  background: linear-gradient(135deg, #0a79b8, #16a18d);
  box-shadow: 0 18px 38px rgba(12, 110, 154, .22);
}
.testimonial-hero-icon svg,
.feedback-hero-icon svg {
  width: 33px;
  height: 33px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.testimonial-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
  margin-top: 1.6rem;
}
.testimonial-page-hero .btn-outline {
  background: rgba(255,255,255,.75);
  border-color: rgba(9, 103, 154, .35);
}
.testimonial-wide-container { max-width: 1280px; }
.testimonial-video-section { padding-top: clamp(3.5rem, 7vw, 5.5rem); }
.testimonial-section-head .section-sub { margin-bottom: 0; }
.testimonial-player-layout {
  grid-template-columns: minmax(0, 1.75fr) minmax(310px, .72fr);
  gap: 1.4rem;
  margin-top: 2rem;
}
.testimonial-main-player {
  border-radius: 28px;
  padding: 7px;
  overflow: visible;
  background: linear-gradient(145deg, #0a2940, #0d6d91 48%, #1ca18e);
  border: 0;
  box-shadow: 0 24px 64px rgba(8, 48, 76, .20);
}
.testimonial-iframe-frame {
  overflow: hidden;
  border-radius: 22px 22px 15px 15px;
  background: #07131c;
}
.testimonial-iframe-wrap { min-height: 400px; }
.testimonial-iframe-wrap.is-short {
  min-height: 500px;
  background: radial-gradient(circle at center, #163145, #061019 70%);
}
.testimonial-iframe-wrap.is-short iframe { max-width: 430px; }
.testimonial-player-caption {
  padding: 1.15rem 1.25rem 1.25rem;
  background: #fff;
  border-radius: 0 0 21px 21px;
}
.testimonial-player-caption h3 { font-size: clamp(1.15rem, 2vw, 1.45rem); }
.testimonial-playlist-panel {
  border: 1px solid rgba(15, 99, 145, .13);
  border-radius: 25px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(10, 64, 101, .10);
  overflow: hidden;
}
.testimonial-playlist-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1rem .9rem;
  border-bottom: 1px solid rgba(15, 99, 145, .10);
  background: linear-gradient(135deg, #f0f9ff, #f5fffb);
}
.testimonial-playlist-heading > div { display: flex; flex-direction: column; gap: .15rem; }
.testimonial-playlist-heading span {
  color: #0b7a94;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.testimonial-playlist-heading strong { color: #143b52; font-size: .96rem; }
.testimonial-playlist-heading svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: #1779a8;
  stroke-width: 1.8;
  stroke-linecap: round;
}
.testimonial-playlist {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  max-height: 570px;
  padding: .8rem;
  scrollbar-color: #7cb8d1 #edf6fa;
  scrollbar-width: thin;
}
.testimonial-playlist::-webkit-scrollbar,
.testimonial-review-track::-webkit-scrollbar { height: 8px; width: 8px; }
.testimonial-playlist::-webkit-scrollbar-track,
.testimonial-review-track::-webkit-scrollbar-track { background: #edf6fa; border-radius: 999px; }
.testimonial-playlist::-webkit-scrollbar-thumb,
.testimonial-review-track::-webkit-scrollbar-thumb { background: #7cb8d1; border-radius: 999px; }
.testimonial-playlist-item {
  align-items: stretch;
  padding: .65rem;
  border-color: rgba(15, 99, 145, .08);
  background: #fbfdff;
}
.testimonial-playlist-item.active {
  box-shadow: inset 4px 0 #0d79b7, 0 9px 22px rgba(9, 95, 143, .10);
}
.testimonial-thumbnail {
  position: relative;
  width: 112px;
  aspect-ratio: 16 / 9;
  flex: 0 0 112px;
  overflow: hidden;
  border-radius: 12px;
  background: #102333;
}
.testimonial-thumbnail img { width: 100%; height: 100%; object-fit: cover; }
.testimonial-thumbnail .testimonial-play-icon {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: 36px;
  height: 36px;
  flex-basis: 36px;
  box-shadow: 0 8px 18px rgba(0,0,0,.28);
}
.testimonial-playlist-copy { justify-content: center; }
.testimonial-playlist-copy strong {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.testimonial-review-section { padding-top: clamp(3.5rem, 7vw, 5.5rem); }
.testimonial-review-card {
  border-top: 4px solid #f6b51d;
  background:
    radial-gradient(circle at 100% 0, rgba(67, 133, 244, .08), transparent 30%),
    #fff;
}
.testimonial-source-link { display: inline-flex; gap: .25rem; align-items: center; }

.feedback-form-section { padding-top: clamp(2.5rem, 5vw, 4rem); }
.feedback-shell { max-width: 1100px; }
.feedback-language-bar {
  border-radius: 22px;
  padding: .95rem 1.1rem;
  box-shadow: 0 14px 38px rgba(10, 64, 101, .10);
}
.feedback-language-copy { display: flex !important; flex-direction: row !important; align-items: center; gap: .75rem !important; }
.feedback-language-copy > div { display: flex; flex-direction: column; gap: .08rem; }
.feedback-language-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  color: #0a769f;
  background: linear-gradient(135deg, #e5f6ff, #e9fbf4);
}
.feedback-language-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.feedback-progress span { opacity: .22; transition: opacity .2s ease, transform .2s ease; }
.feedback-progress span.is-complete { opacity: 1; transform: scaleY(1.25); }
.feedback-form { gap: 1.35rem; }
.feedback-form-card {
  position: relative;
  overflow: hidden;
  border-radius: 27px;
  box-shadow: 0 18px 50px rgba(10, 64, 101, .085);
}
.feedback-form-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 5px;
  background: linear-gradient(180deg, #0b79b5, #19a08c);
  opacity: .55;
}
.feedback-form-card.is-complete::before { opacity: 1; }
.feedback-section-icon-visit { background: linear-gradient(135deg, #147bd1, #0e9db6); }
.feedback-section-icon-clinical { background: linear-gradient(135deg, #7a55c7, #4a7ed0); }
.feedback-section-icon-care { background: linear-gradient(135deg, #ed5f75, #e8953f); }
.feedback-section-icon-comment { background: linear-gradient(135deg, #14976f, #0e7e92); }
.feedback-input-with-icon,
.feedback-select-with-icon { position: relative; }
.feedback-input-with-icon > span,
.feedback-select-with-icon > span {
  position: absolute;
  left: .9rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 22px;
  height: 22px;
  color: #5d8295;
  pointer-events: none;
}
.feedback-input-with-icon > span svg,
.feedback-select-with-icon > span svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.feedback-input-with-icon input,
.feedback-select-with-icon select { padding-left: 3rem; }
.feedback-select-with-icon select { appearance: auto; }
.feedback-choice-card {
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-template-rows: 1fr;
  min-height: 104px;
  padding: 1rem 1.05rem;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.feedback-choice-card:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(10, 77, 115, .09); }
.feedback-choice-card .choice-icon { grid-row: auto; }
.feedback-choice-copy { display: flex; flex-direction: column; gap: .18rem; }
.feedback-choice-check {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: transparent;
  background: #edf3f6;
  border: 1px solid #d7e3e9;
}
.feedback-choice-check svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.feedback-choice-card:has(input:checked) .feedback-choice-check { color: #fff; background: #1191aa; border-color: #1191aa; }
.feedback-choice-op:has(input:checked) { border-color: #198aca; background: #edf8ff; }
.feedback-choice-ip:has(input:checked) { border-color: #7657c8; background: #f4f0ff; box-shadow: inset 0 0 0 1px #7657c8; }
.feedback-choice-ip .choice-icon { color: #684cc2; background: #eee8ff; }
.feedback-patient-context {
  margin-top: .8rem;
  padding: .75rem .9rem;
  border-radius: 13px;
  font-size: .84rem;
  line-height: 1.55;
  font-weight: 650;
}
.feedback-patient-context.is-op { color: #13618c; background: #edf8ff; border: 1px solid #cce8f7; }
.feedback-patient-context.is-ip { color: #5d479b; background: #f5f1ff; border: 1px solid #ded3fb; }
.feedback-rating-list { gap: .85rem; }
.feedback-question-card {
  padding: 1rem !important;
  border: 1px solid rgba(15, 99, 145, .11) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, #fff, #fbfdff);
  transition: border-color .18s ease, box-shadow .18s ease;
}
.feedback-question-card.has-invalid-field { border-color: #d45145 !important; box-shadow: 0 0 0 4px rgba(212, 81, 69, .08); }
.feedback-rating-row legend { font-size: .96rem; margin-bottom: .72rem; }
.feedback-rating-options { gap: .65rem; }
.feedback-rating-options span.feedback-option-content {
  min-height: 78px;
  display: flex;
  flex-direction: column;
  gap: .35rem;
  padding: .65rem .45rem;
  border-radius: 15px;
}
.feedback-option-content svg {
  width: 26px;
  height: 26px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.feedback-option-content b { font-size: .78rem; line-height: 1.25; }
.feedback-rating-options label[data-rating-value="excellent"] .feedback-option-content { color: #16764b; background: #f4fbf7; border-color: #cbe9d8; }
.feedback-rating-options label[data-rating-value="good"] .feedback-option-content { color: #176796; background: #f3f9fd; border-color: #c9e3f1; }
.feedback-rating-options label[data-rating-value="average"] .feedback-option-content { color: #94620e; background: #fffaf0; border-color: #f0ddb1; }
.feedback-rating-options label[data-rating-value="poor"] .feedback-option-content { color: #a13d35; background: #fff6f5; border-color: #efcfcb; }
.feedback-rating-options label[data-rating-value="not_applicable"] .feedback-option-content { color: #637480; background: #f5f7f8; border-color: #dce3e7; }
.feedback-rating-options label[data-rating-value="under_15"] .feedback-option-content,
.feedback-rating-options label[data-rating-value="15_30"] .feedback-option-content { color: #16764b; background: #f4fbf7; border-color: #cbe9d8; }
.feedback-rating-options label[data-rating-value="30_60"] .feedback-option-content { color: #94620e; background: #fffaf0; border-color: #f0ddb1; }
.feedback-rating-options label[data-rating-value="over_60"] .feedback-option-content { color: #a13d35; background: #fff6f5; border-color: #efcfcb; }
.feedback-rating-options label[data-rating-value="yes"] .feedback-option-content { color: #16764b; background: #f4fbf7; border-color: #cbe9d8; }
.feedback-rating-options label[data-rating-value="maybe"] .feedback-option-content { color: #94620e; background: #fffaf0; border-color: #f0ddb1; }
.feedback-rating-options label[data-rating-value="no"] .feedback-option-content { color: #a13d35; background: #fff6f5; border-color: #efcfcb; }
.feedback-rating-options input:checked + .feedback-option-content {
  color: #fff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, #0d7bb3, #159887) !important;
  box-shadow: 0 10px 22px rgba(11, 112, 147, .22) !important;
  transform: translateY(-2px);
}
.feedback-comments-shell { position: relative; }
.feedback-comments-shell textarea { padding-right: 3rem; }
.feedback-comments-decoration {
  position: absolute;
  right: 1rem;
  top: 1rem;
  width: 25px;
  height: 25px;
  color: #8aa7b5;
  pointer-events: none;
}
.feedback-comments-decoration svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.5; }
.feedback-voice-panel {
  margin-top: .75rem;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .8rem;
  align-items: center;
  padding: .75rem;
  border: 1px solid #d6e8f0;
  border-radius: 16px;
  background: linear-gradient(135deg, #f3faff, #f5fffb);
}
.feedback-voice-btn {
  min-height: 44px;
  border-radius: 13px;
  padding: .55rem .9rem .55rem .55rem;
  background: #fff;
  box-shadow: 0 7px 18px rgba(8, 92, 148, .10);
}
.feedback-mic-icon {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: #fff;
  background: linear-gradient(135deg, #0b7db7, #14a08a);
}
.feedback-voice-btn.is-listening .feedback-mic-icon { background: transparent; }
.feedback-voice-copy { display: flex; min-width: 0; flex-direction: column; gap: .12rem; }
.feedback-voice-copy strong { color: #33596d; font-size: .83rem; line-height: 1.4; }
.feedback-voice-copy small { color: #78909d; font-size: .73rem; line-height: 1.4; }
.feedback-voice-help {
  margin-top: .6rem;
  padding: .7rem .8rem;
  border-radius: 12px;
  color: #536f80;
  background: #f3f7f9;
  border: 1px solid #dde7ec;
  font-size: .78rem;
  line-height: 1.5;
}
.feedback-voice-help.error { color: #8e352c; background: #fff4f2; border-color: #efcec9; }
.feedback-website-grid { margin-top: 1.15rem; }
.feedback-consent { position: relative; padding: .85rem .9rem; border: 1px solid #d8e8ee; border-radius: 14px; background: #f9fcfd; cursor: pointer; }
.feedback-consent > input { position: absolute; opacity: 0; }
.feedback-consent-box {
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  border: 1px solid #a9c3cf;
  background: #fff;
  color: transparent;
}
.feedback-consent-box svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.feedback-consent:has(input:checked) .feedback-consent-box { color: #fff; background: #0d83ac; border-color: #0d83ac; }
body[data-feedback-language="ta"] .feedback-form,
body[data-feedback-language="ta"] .feedback-page-hero { font-family: "Noto Sans Tamil", "Latha", "Arial Unicode MS", sans-serif; }
body[data-feedback-language="ta"] .feedback-option-content b { font-size: .75rem; line-height: 1.5; }

@media (max-width: 980px) {
  .testimonial-player-layout { grid-template-columns: 1fr; }
  .testimonial-playlist-panel { overflow: visible; }
  .testimonial-playlist {
    max-height: none;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(265px, 74%);
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: inline mandatory;
  }
  .testimonial-playlist-item { scroll-snap-align: start; }
}
@media (max-width: 760px) {
  .testimonial-page-hero,
  .feedback-page-hero { padding: 2.7rem 0 2.8rem; }
  .testimonial-page-hero .page-hero-content,
  .feedback-page-hero .page-hero-content { padding-left: 0; }
  .testimonial-hero-icon,
  .feedback-hero-icon {
    position: static;
    width: 54px;
    height: 54px;
    margin-bottom: 1rem;
    border-radius: 17px;
  }
  .testimonial-hero-icon svg,
  .feedback-hero-icon svg { width: 28px; height: 28px; }
  .testimonial-hero-actions .btn { width: 100%; justify-content: center; }
  .testimonial-iframe-wrap { min-height: 0; }
  .testimonial-iframe-wrap.is-short { min-height: 460px; }
  .testimonial-thumbnail { width: 94px; flex-basis: 94px; }
  .feedback-language-bar { position: relative; top: auto; }
  .feedback-question-card { padding: .85rem !important; }
  .feedback-rating-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .feedback-rating-options span.feedback-option-content { min-height: 74px; }
  .feedback-voice-panel { grid-template-columns: 1fr; }
  .feedback-voice-btn { width: 100%; justify-content: center; }
}
@media (max-width: 480px) {
  .testimonial-playlist { grid-auto-columns: 91%; }
  .testimonial-playlist-item { flex-direction: column; }
  .testimonial-thumbnail { width: 100%; flex-basis: auto; }
  .feedback-form-card { padding: 1.05rem; }
  .feedback-section-head { align-items: flex-start; }
  .feedback-section-head p { font-size: .87rem; }
  .feedback-language-copy { width: 100%; }
  .feedback-rating-options,
  .recommendation-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .recommendation-options label:last-child { grid-column: 1 / -1; }
}

/* ============================================================
   HOMEPAGE SPECIALIST PROMOTIONAL CARD CAROUSEL
   ============================================================ */
.home-specialist-cards[hidden] { display: none !important; }
.home-specialist-cards {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 8%, rgba(75,184,169,.10), transparent 28%),
    radial-gradient(circle at 92% 84%, rgba(10,92,138,.08), transparent 30%),
    var(--grey-1, #f7fafc);
}
.home-doctor-carousel {
  --home-card-gap: 1.15rem;
  position: relative;
  margin-top: 2rem;
  padding: 0;
}
.home-doctor-carousel::before,
.home-doctor-carousel::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: .7rem;
  z-index: 3;
  width: clamp(22px, 4vw, 64px);
  pointer-events: none;
}
.home-doctor-carousel::before {
  left: 0;
  background: linear-gradient(90deg, var(--grey-1, #f7fafc), rgba(247,250,252,0));
}
.home-doctor-carousel::after {
  right: 0;
  background: linear-gradient(270deg, var(--grey-1, #f7fafc), rgba(247,250,252,0));
}
.home-doctor-carousel-viewport {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
  padding: .45rem .2rem 1rem;
  cursor: grab;
}
.home-doctor-carousel-viewport:active { cursor: grabbing; }
.home-doctor-carousel-viewport::-webkit-scrollbar { display: none; }
.home-doctor-carousel-viewport:focus-visible {
  outline: 3px solid rgba(75,184,169,.45);
  outline-offset: 5px;
  border-radius: 18px;
}
.home-doctor-carousel-track {
  display: flex;
  gap: var(--home-card-gap);
  align-items: stretch;
  width: max-content;
  min-width: 100%;
  will-change: transform;
}
.home-doctor-promo-card {
  flex: 0 0 281px;
  width: 281px;
  min-width: 0;
  border-radius: 22px;
  background: #fff;
  border: 1px solid rgba(10,92,138,.14);
  box-shadow: 0 14px 34px rgba(10,73,112,.11);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.home-doctor-promo-card:hover,
.home-doctor-promo-card:focus-within {
  transform: translateY(-5px);
  border-color: rgba(75,184,169,.55);
  box-shadow: 0 22px 46px rgba(10,73,112,.17);
}
.home-doctor-card-trigger {
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  border: 0;
  background: #fff;
  cursor: zoom-in;
  text-align: inherit;
}
.home-doctor-card-trigger:focus-visible {
  outline: 4px solid rgba(75,184,169,.55);
  outline-offset: -4px;
}
.home-doctor-card-image {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center;
  background: #fff;
}

.doctor-image-modal__profile-link {
  display: block;
  border-radius: 14px;
  cursor: default;
}
.doctor-image-modal__profile-link.is-enabled { cursor: pointer; }
.doctor-image-modal__profile-link.is-enabled:focus-visible {
  outline: 4px solid rgba(75,184,169,.55);
  outline-offset: 4px;
}
.doctor-image-modal__hint {
  margin: .35rem auto .1rem;
  color: #5c7180;
  font-size: .84rem;
  font-weight: 600;
  text-align: center;
}

@media (max-width: 1180px) {
  .home-doctor-promo-card {
    flex-basis: calc(33.333vw - 1.77rem);
    width: calc(33.333vw - 1.77rem);
  }
}
@media (max-width: 820px) {
  .home-doctor-promo-card {
    flex-basis: calc(50vw - 2.08rem);
    width: calc(50vw - 2.08rem);
  }
}
@media (max-width: 560px) {
  .home-doctor-carousel {
    --home-card-gap: .85rem;
    margin-top: 1.4rem;
    padding: 0;
  }
  .home-doctor-carousel::before,
  .home-doctor-carousel::after { width: 18px; }
  .home-doctor-carousel-viewport { padding-left: .1rem; padding-right: .1rem; }
  .home-doctor-promo-card {
    flex-basis: min(82vw, 320px);
    width: min(82vw, 320px);
  }
  .doctor-image-modal__dialog {
    width: min(94vw, 720px);
    margin: 3vh auto;
    padding: .9rem .9rem .8rem;
  }
  .doctor-image-modal__media-wrap { padding: .45rem; }
  .doctor-image-modal__img { max-height: 78vh; }
}

@media (prefers-reduced-motion: reduce) {
  .home-doctor-promo-card { transition: none; }
  .home-doctor-carousel-viewport { scroll-behavior: auto; }
}

/* 2026-08-22 testimonial media sizing and controlled playlist refinement */
.testimonial-player-layout {
  align-items: stretch;
  grid-template-columns: minmax(0, 1.65fr) minmax(320px, .72fr);
}
.testimonial-main-player {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.testimonial-iframe-frame {
  flex: 1 1 auto;
  display: flex;
  align-items: stretch;
}
.testimonial-iframe-wrap {
  min-height: 0;
  aspect-ratio: 16 / 9;
}
.testimonial-iframe-wrap.is-short {
  min-height: 0;
  aspect-ratio: auto;
  height: clamp(430px, 46vw, 560px);
}
.testimonial-iframe-wrap.is-short iframe {
  width: min(100%, 330px);
  max-width: 330px;
  margin: 0 auto;
}
.testimonial-playlist-panel {
  display: flex;
  flex-direction: column;
  min-height: 0;
  max-height: 590px;
}
.testimonial-playlist {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.testimonial-playlist-heading {
  flex: 0 0 auto;
}
.testimonial-playlist-menu-icon {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: #1779a8;
  stroke-width: 1.8;
  stroke-linecap: round;
}
.testimonial-video-controls {
  display: flex;
  align-items: center;
  gap: .45rem;
}
.testimonial-video-controls button {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(15, 99, 145, .16);
  border-radius: 50%;
  background: #fff;
  color: #0b679c;
  cursor: pointer;
  box-shadow: 0 6px 14px rgba(10, 64, 101, .08);
}
.testimonial-video-controls button:hover {
  background: #edf7fc;
}
.testimonial-video-controls button:focus-visible {
  outline: 2px solid rgba(13,119,181,.35);
  outline-offset: 2px;
}
.testimonial-video-controls svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.testimonial-review-card {
  height: 410px;
  min-height: 410px;
  max-height: 410px;
}

@media (max-width: 980px) {
  .testimonial-player-layout { grid-template-columns: 1fr; }
  .testimonial-playlist-panel { max-height: none; }
  .testimonial-playlist {
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
  }
  .testimonial-video-controls svg { transform: rotate(0deg); }
  .testimonial-review-card {
    height: 400px;
    min-height: 400px;
    max-height: 400px;
  }
}

@media (max-width: 760px) {
  .testimonial-main-player { border-radius: 20px; }
  .testimonial-iframe-wrap { aspect-ratio: 16 / 9; }
  .testimonial-iframe-wrap.is-short {
    height: min(72vh, 520px);
    min-height: 390px;
  }
  .testimonial-iframe-wrap.is-short iframe {
    width: min(100%, 300px);
    max-width: 300px;
  }
  .testimonial-review-card {
    height: 390px;
    min-height: 390px;
    max-height: 390px;
  }
}

@media (max-width: 480px) {
  .testimonial-iframe-wrap.is-short {
    height: min(70vh, 480px);
    min-height: 360px;
  }
  .testimonial-review-card {
    height: 400px;
    min-height: 400px;
    max-height: 400px;
  }
}

:root {
  --surface: #ffffff;
  --surface-soft: #f6fafc;
  --ink: #102a3a;
  --muted: #5d7180;
  --line: #dbe7ed;
  --brand: #0a5c8a;
  --brand-strong: #07496e;
  --accent: #2c9f93;
  --danger: #b4232d;
  --shadow-soft: 0 14px 40px rgba(15, 59, 82, .09);
  --shadow-lift: 0 20px 55px rgba(15, 59, 82, .14);
  --radius-lg: 22px;
  --radius-md: 16px;
}
html { scroll-behavior: smooth; }
body { color: var(--ink); background: var(--surface); text-rendering: optimizeLegibility; }
a, button, input, select, textarea { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid rgba(44,159,147,.34); outline-offset: 3px; }
.top-call-icon { display:inline-grid; place-items:center; width:22px; height:22px; }
.top-call-icon svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.patient-quick-actions { position:relative; z-index:5; padding: 0 0 34px; margin-top:-1px; background:linear-gradient(180deg,#f5fbfd 0%,#fff 100%); }
.patient-quick-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; transform:translateY(-18px); }
.patient-quick-card { display:flex; align-items:center; gap:14px; min-height:92px; padding:18px; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow-soft); color:var(--ink); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.patient-quick-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lift); border-color:rgba(10,92,138,.26); }
.patient-quick-card strong,.patient-quick-card small { display:block; }
.patient-quick-card small { margin-top:4px; color:var(--muted); line-height:1.35; }
.pqa-icon { flex:0 0 44px; width:44px; height:44px; border-radius:14px; display:grid; place-items:center; background:#eaf6f8; color:var(--brand); }
.pqa-icon svg,.sc-icon svg,.ac-icon svg { width:26px; height:26px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.sc-icon,.ac-icon { display:grid; place-items:center; }
.specialty-card,.why-card,.service-full-card,.doctor-card,.fac-card,.facility-card,.profile-content-card { border-color:var(--line); box-shadow:0 8px 26px rgba(15,59,82,.06); }
.specialty-card:hover,.why-card:hover,.service-full-card:hover,.doctor-card:hover,.fac-card:hover,.facility-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-lift); }
.service-full-card { position:relative; overflow:hidden; }
.service-full-card h3 a { color:inherit; text-decoration:none; }
.service-card-link { display:inline-flex; align-items:center; margin:16px 0 0; font-weight:700; color:var(--brand); text-decoration:none; }
.service-card-link:hover { color:var(--brand-strong); }
.doctor-discovery-panel { display:flex; align-items:end; justify-content:space-between; gap:20px; margin:24px auto 18px; padding:20px; max-width:960px; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:var(--shadow-soft); }
.doctor-search-field { flex:1; display:grid; gap:8px; font-weight:700; color:var(--ink); }
.doctor-search-field input { width:100%; min-height:50px; border:1px solid #cbdbe3; border-radius:13px; padding:0 16px; font:inherit; background:#fbfdfe; }
.doctor-search-field input:focus { border-color:var(--brand); background:#fff; }
.doctor-result-count { white-space:nowrap; color:var(--muted); font-weight:600; padding-bottom:13px; }
.doctor-filter-bar { scrollbar-width:thin; padding-bottom:6px; }
.doctor-filter-btn { min-height:42px; }
.doctor-card { overflow:hidden; }
.doctor-card .dc-body { display:flex; gap:10px; flex-wrap:wrap; margin-top:auto; }
.doctor-card .dc-appt-btn { flex:1 1 140px; text-align:center; }
.branded-doctor-placeholder { background:linear-gradient(145deg,#eef8fb,#dfeff5); color:var(--brand); }
.branded-doctor-placeholder svg { width:72px; height:72px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; opacity:.72; }
.doctor-availability { margin:20px 0 0; padding:16px 18px; border:1px solid var(--line); background:#f8fbfc; border-radius:14px; }
.doctor-availability strong { display:block; margin-bottom:10px; }
.availability-chips { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:8px; }
.availability-chip { display:inline-flex; align-items:center; min-height:34px; padding:6px 11px; border-radius:999px; font-size:.86rem; font-weight:700; }
.availability-chip.is-available { color:#116153; background:#e4f7f2; border:1px solid #bce7dd; }
.availability-chip.is-unavailable { color:#7d8890; background:#eef2f4; border:1px solid #dce4e8; text-decoration:none; }
.doctor-availability small { color:var(--muted); }
.department-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:20px 0; }
.clinical-list { display:grid; gap:10px; margin:16px 0 0; padding:0; list-style:none; }
.clinical-list li { position:relative; padding-left:24px; color:var(--muted); line-height:1.55; }
.clinical-list li::before { content:"✓"; position:absolute; left:0; top:0; color:var(--accent); font-weight:800; }
.footer-staff-link { opacity:.72; font-size:.92em; }
.footer-contact-mini a { color:inherit; text-decoration:none; }
.footer-contact-mini a:hover { text-decoration:underline; }
.mobile-patient-dock { display:none; }
.testimonial-review-text.is-collapsed { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:6; overflow:hidden; }
.review-expand-btn { margin-top:10px; border:0; background:transparent; color:var(--brand); padding:0; font:inherit; font-weight:700; cursor:pointer; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; } }
@media (max-width: 900px) {
  .patient-quick-grid { grid-template-columns:repeat(2,minmax(0,1fr)); transform:none; padding-top:20px; }
  .doctor-discovery-panel { align-items:stretch; flex-direction:column; }
  .doctor-result-count { padding:0; }
  .department-info-grid { grid-template-columns:1fr; }
}
@media (max-width: 720px) {
  body { padding-bottom:72px; }
  .floating-whatsapp { display:none !important; }
  .mobile-patient-dock { position:fixed; z-index:9998; left:0; right:0; bottom:0; display:grid; grid-template-columns:repeat(4,1fr); min-height:66px; padding:max(5px,env(safe-area-inset-bottom)) 6px 5px; border-top:1px solid #d6e3e9; background:rgba(255,255,255,.97); backdrop-filter:blur(12px); box-shadow:0 -10px 35px rgba(15,59,82,.12); }
  .mobile-patient-dock a { display:grid; place-items:center; align-content:center; gap:3px; min-width:0; color:var(--ink); text-decoration:none; font-size:.72rem; font-weight:700; }
  .mobile-patient-dock svg { width:22px; height:22px; fill:none; stroke:var(--brand); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  .patient-quick-card { min-height:84px; padding:14px; }
}
@media (max-width: 480px) {
  .patient-quick-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .patient-quick-card { align-items:flex-start; gap:10px; min-height:112px; flex-direction:column; }
  .pqa-icon { width:38px; height:38px; flex-basis:38px; }
}

.mobile-patient-dock{display:none!important}.floating-whatsapp{display:flex!important}

/* === SOURCE: modern.css === */
/* Consistent line-icon treatment */
.sfc-icon svg,.fs-icon svg,.facc-icon svg,.fli-icon svg,.dvb-icon svg,.vm-icon svg,.value-emoji svg,.value-icon svg,.awl-icon svg,.btn-icon svg{width:1.4em;height:1.4em;display:block}
.value-icon svg{width:1em;height:1em}
.btn-icon{display:inline-flex;align-items:center;margin-right:.45rem;vertical-align:middle}
.btn-icon svg{width:1.1em;height:1.1em}

/* Modern public UI pass */
:root {
  --topbar-h: 40px;
  --header-h: 70px;
  --page-max: 1220px;
  --brand: #076b9b;
  --brand-2: #0f9eaa;
  --brand-3: #1bb98f;
  --navy: #0d2338;
  --ink: #173247;
  --muted: #627687;
  --line: #dde8ee;
  --surface: #ffffff;
  --surface-2: #f6f9fc;
  --surface-3: #eef8fa;
  --sky: #4a8df6;
  --violet: #7a60df;
  --coral: #f06b72;
  --amber: #f3b83f;
  --mint: #23b58f;
  --cyan: #2cb6c7;
  --danger: #c83c48;
  --radius-sm: 12px;
  --radius-md: 18px;
  --radius-lg: 26px;
  --shadow-sm: 0 8px 24px rgba(14, 51, 73, .07);
  --shadow-md: 0 18px 46px rgba(14, 51, 73, .11);
  --shadow-lg: 0 28px 70px rgba(14, 51, 73, .16);
  --ease: cubic-bezier(.2,.75,.25,1);
}
html { font-size: 16px; }
body {
  font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: #fff;
  line-height: 1.6;
}
h1,h2,h3,h4,h5,h6 {
  font-family: "Manrope","Inter",system-ui,sans-serif;
  color: var(--navy);
  letter-spacing: -.025em;
  line-height: 1.16;
}
h1 { font-size: clamp(2.15rem, 4.8vw, 4.15rem); font-weight: 800; }
h2 { font-size: clamp(1.75rem, 3.2vw, 2.7rem); font-weight: 800; }
h3 { font-size: clamp(1.03rem, 1.55vw, 1.28rem); font-weight: 750; }
p { color: var(--muted); }
.container { width: min(calc(100% - 40px), var(--page-max)); max-width: var(--page-max); padding: 0; margin-inline: auto; }
.section { padding: clamp(48px, 6vw, 72px) 0; }
.section.bg-light { background: var(--surface-2); }
.section-soft-blue { background: linear-gradient(180deg,#f5faff 0%,#fff 100%); }
.section-soft-teal { background: linear-gradient(180deg,#f2fbf9 0%,#fff 100%); }
.section-soft-white { background: #fff; }
.section-label, .eyebrow{
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: var(--brand-2);
  font-family: "Manrope","Inter",sans-serif;
  font-weight: 800;
  font-size: .75rem;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.section-label::before, .eyebrow::before{
  content: "";
  width: 22px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg,var(--brand-2),var(--mint));
}
.section-title { margin: .55rem 0 .8rem; }
.section-sub { max-width: 680px; margin: 0 auto 2rem; color: var(--muted); font-size: 1rem; }
.section-head { margin-bottom: 1.6rem; }
.body-text { font-size: 1rem; line-height: 1.75; margin-bottom: 1rem; }

.btn {
  min-height: 46px;
  padding: .72rem 1.2rem;
  border-radius: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  font-family: "Manrope","Inter",sans-serif;
  font-size: .9rem;
  font-weight: 800;
  transition: transform .2s var(--ease), box-shadow .2s var(--ease), background .2s ease, border-color .2s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary { color: #fff; background: linear-gradient(135deg,var(--brand),#1189af); box-shadow: 0 10px 24px rgba(7,107,155,.22); }
.btn-primary:hover { background: linear-gradient(135deg,#055b86,#0f819f); box-shadow: 0 14px 32px rgba(7,107,155,.28); }
.btn-outline { color: var(--brand); border: 1.5px solid #a7cad9; background: #fff; }
.btn-outline:hover { color: var(--brand); border-color: var(--brand); background: #f2f9fc; }
.btn-white { color: var(--brand); background: #fff; box-shadow: 0 12px 30px rgba(0,0,0,.12); }
.btn-outline-white { color: #fff; border: 1.5px solid rgba(255,255,255,.65); background: rgba(255,255,255,.08); backdrop-filter: blur(8px); }
.btn-outline-white:hover { background: rgba(255,255,255,.16); }
.btn-full { width: 100%; }
.btn-sm { min-height: 38px; padding: .55rem .85rem; font-size: .8rem; }

.top-bar {
  position: fixed !important;
  z-index: 1100;
  inset: 0 0 auto 0;
  height: var(--topbar-h) !important;
  min-height: var(--topbar-h) !important;
  background: linear-gradient(90deg,#071c2d,#0b3550 58%,#075f75) !important;
  color: #fff;
}
.top-bar-inner { height: 100%; min-height: 0 !important; display: flex !important; align-items: center; justify-content: space-between; gap: 1rem !important; }
.top-bar-copy { font-size: .76rem; font-weight: 700; letter-spacing: .02em; color: rgba(255,255,255,.78); }
.top-social-links { display: flex; align-items: center; gap: .36rem; margin-left: auto; }
.top-social-label { font-size: .63rem; letter-spacing: .12em; font-weight: 800; color: rgba(255,255,255,.78); margin-right: .15rem; }
.top-social-link { width: 25px !important; height: 25px !important; border-radius: 8px !important; display: grid; place-items: center; color: #fff; box-shadow: none !important; }
.top-social-link svg { width: 13px !important; height: 13px !important; }
.top-bar-actions { display: flex !important; align-items: center; gap: .45rem !important; }
.top-call-badge { min-height: 29px !important; padding: .25rem .62rem !important; border-radius: 9px !important; display: inline-flex; align-items: center; gap: .35rem; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.08) !important; color: #fff; }
.top-emergency-badge { background: rgba(238,88,96,.17) !important; border-color: rgba(255,157,163,.25); }
.top-ambulance-badge { background: rgba(26,184,144,.16) !important; border-color: rgba(115,229,199,.24); }
.top-call-icon,.top-call-icon svg { width: 15px !important; height: 15px !important; }
.top-call-text { font-size: .69rem !important; color: #fff; }
.top-call-text strong { font-weight: 850; }

.site-header {
  position: fixed !important;
  z-index: 1050;
  top: var(--topbar-h) !important;
  left: 0; right: 0;
  height: var(--header-h) !important;
  background: rgba(255,255,255,.96) !important;
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(211,225,233,.85);
  box-shadow: 0 8px 28px rgba(18,53,74,.05) !important;
}
.header-inner { height: var(--header-h) !important; display: flex; align-items: center; gap: 1.4rem; }
.logo-link { flex: 0 0 auto; }
.logo-brandmark { display:flex;align-items:center;min-height:0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important; }
.brand-logo-img { width:auto !important;height:44px !important;max-width:210px !important;object-fit:contain; }
.main-nav { margin-left: auto; }
.nav-list { display: flex; align-items: center; gap: .08rem; }
.nav-link { padding: .55rem .7rem; border-radius: 9px; color: #29485c; font-size: .84rem; font-weight: 700; transition: .18s ease; }
.nav-link:hover,.nav-link.active { color: var(--brand); background: #eef7fb; }
.header-cta { min-height:40px !important;height:40px !important;padding:.55rem .9rem !important;border-radius:11px !important;margin-left:.2rem;white-space:nowrap; }
.hamburger { display: none; }

.hero, .page-hero{ margin-top: calc(var(--topbar-h) + var(--header-h)) !important; }
.hero {
  position: relative;
  min-height: 530px !important;
  height: 530px;
  overflow: hidden;
  background: #0c2b3e;
}
.hero-slider { position: absolute !important; inset: 0; height: 100% !important; min-height: 0 !important; }
.hero-slide { position: absolute !important; inset: 0; min-height: 0 !important; height: 100% !important; opacity: 0; transition: opacity .7s ease, transform 7s linear; }
.hero-slide.active,.hero-slide.is-active { opacity: 1; }
.hero-slide-image { width: 100%; height: 100%; object-fit: cover; }
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg,rgba(4,24,39,.82) 0%,rgba(5,43,64,.64) 42%,rgba(4,28,43,.12) 78%,rgba(4,28,43,.22) 100%);
  pointer-events: none;
}
.hero::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: -8%; bottom: -170px;
  width: 520px; height: 300px;
  background: radial-gradient(circle,rgba(36,196,177,.23),transparent 68%);
}
.hero-content { position: relative !important; z-index: 3 !important; padding: 88px 0 55px !important; max-width: 710px; margin: 0 auto 0 max(20px,calc((100vw - var(--page-max))/2)); }
.hero-location { margin-bottom: .8rem; color: #95e1da; font-size: .72rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.hero-headline { margin: 0 0 1rem; color: #fff; font-size: clamp(2.7rem,5.2vw,4.85rem); line-height: 1.02; }
.hero-accent { color: #81e2d6; }
.hero-sub { max-width: 560px; margin-bottom: 1.45rem; color: rgba(255,255,255,.82); font-size: 1.05rem; line-height: 1.65; }
.hero-actions { display: flex; gap: .75rem; flex-wrap: wrap; margin-bottom: 1.6rem; }
.hero-stats { display: flex; gap: .65rem; flex-wrap: wrap; }
.hero-stat { min-width: 118px; padding: .7rem .85rem; border: 1px solid rgba(255,255,255,.18); border-left: 1px solid rgba(255,255,255,.18) !important; border-radius: 13px; background: rgba(255,255,255,.08); backdrop-filter: blur(10px); }
.stat-num { color: #fff; font-family: "Manrope","Inter",sans-serif; font-size: 1.28rem; font-weight: 800; }
.stat-label { margin-top: .12rem; color: rgba(255,255,255,.68); font-size: .66rem; letter-spacing: .04em; }
.hero-float-stack { position: absolute; z-index: 4; right: max(28px,calc((100vw - var(--page-max))/2)); bottom: 40px; display: flex; flex-direction: column; gap: 10px; }
.hero-float-card { min-width: 210px; padding: .85rem 1rem; border: 1px solid rgba(255,255,255,.22); border-radius: 16px; color: #fff; background: rgba(7,37,53,.66); backdrop-filter: blur(16px); box-shadow: 0 18px 44px rgba(0,0,0,.18); }
.hero-float-card strong,.hero-float-card small { display: block; }
.hero-float-card strong { font-family: "Manrope","Inter",sans-serif; font-size: .95rem; }
.hero-float-card small { margin-top: .12rem; color: rgba(255,255,255,.7); font-size: .72rem; }
.hero-float-card--trust { align-self: flex-end; min-width: 145px; background: linear-gradient(135deg,rgba(20,155,163,.8),rgba(22,177,139,.72)); }
.hero-float-card--trust strong { font-size: 1.25rem; }
.hero-float-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #5ee4a5; box-shadow: 0 0 0 5px rgba(94,228,165,.13); margin-right: .4rem; }
.hero-scroll-indicator { display: none !important; }
.hero-slider-control { position: absolute; z-index: 5; top: 50%; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; background: rgba(7,30,45,.42); color: #fff; border: 1px solid rgba(255,255,255,.18); opacity: 0; transition: .2s ease; }
.hero:hover .hero-slider-control{ opacity: 1; }
.hero-slider-prev { left: 18px; }
.hero-slider-next { right: 18px; }

.emergency-banner { padding: 0 !important; background: #fff !important; }
.emergency-inner { min-height: 48px; display: flex; align-items: center; justify-content: center; gap: .75rem; color: #92303a; }
.emergency-pulse { width: 8px; height: 8px; border-radius: 50%; background: #e94f5e; box-shadow: 0 0 0 6px rgba(233,79,94,.12); }
.emergency-text { font-size: .83rem; font-weight: 750; }
.emergency-call { padding: .3rem .7rem; border-radius: 8px; background: #fff0f1; color: #b72d3b; font-size: .78rem; font-weight: 850; }

.patient-quick-actions { position: relative; z-index: 6; padding: 0 0 28px !important; background: linear-gradient(180deg,#f5fafc,#fff); }
.patient-quick-grid { grid-template-columns: repeat(4,1fr) !important; gap: 12px !important; transform: translateY(-22px) !important; }
.patient-quick-card { position: relative; overflow: hidden; min-height: 88px !important; padding: 15px 16px !important; border-radius: 17px !important; border: 1px solid #e1ebf0 !important; background: #fff !important; box-shadow: var(--shadow-md) !important; }
.patient-quick-card::after { content:""; position:absolute; width:70px; height:70px; border-radius:50%; right:-28px; top:-28px; background:var(--card-glow,#edf7fa); }
.patient-quick-card:nth-child(1){--card-accent:#247bd5;--card-glow:#e8f2ff}.patient-quick-card:nth-child(2){--card-accent:#14a08f;--card-glow:#e2f8f2}.patient-quick-card:nth-child(3){--card-accent:#775bd6;--card-glow:#eeeaff}.patient-quick-card:nth-child(4){--card-accent:#e59527;--card-glow:#fff3dc}
.patient-quick-card:hover { transform: translateY(-5px) !important; box-shadow: var(--shadow-lg) !important; }
.pqa-icon { width: 43px !important; height: 43px !important; flex: 0 0 43px !important; border-radius: 13px !important; color: #fff !important; background: var(--card-accent) !important; box-shadow: 0 9px 20px color-mix(in srgb,var(--card-accent) 28%,transparent); }
.patient-quick-card strong { position: relative; z-index: 1; font-family:"Manrope","Inter",sans-serif; font-size: .88rem; color: var(--navy); }
.patient-quick-card small { position: relative; z-index: 1; font-size: .72rem; line-height: 1.35; color: #5a7080; }

.about-grid,.about-full-grid { gap: clamp(32px,5vw,64px) !important; align-items: center; }
.about-preview { background: #fff; }
.about-values-mini { display: flex; flex-wrap: wrap; gap: .55rem; margin: 1.25rem 0; }
.value-chip { min-height: 36px; padding: .45rem .7rem; border: 1px solid #e0ebef; border-radius: 999px; background: #f8fbfc; color: #375568; font-size: .77rem; font-weight: 700; }
.value-chip:nth-child(1) .value-icon{color:#e35f70}.value-chip:nth-child(2) .value-icon{color:#e9a530}.value-chip:nth-child(3) .value-icon{color:#6d61d5}.value-chip:nth-child(4) .value-icon{color:#16a58e}
.about-card-stack { display: grid !important; grid-template-columns: repeat(2,1fr); gap: 12px !important; transform: none !important; }
.about-card { position: relative !important; inset: auto !important; width: auto !important; min-height: 142px; padding: 1.2rem !important; border-radius: 20px !important; border: 1px solid #e1ebef; box-shadow: var(--shadow-sm) !important; background: #fff; transform: none !important; }
.about-card:nth-child(1){background:linear-gradient(145deg,#f1f7ff,#fff);--ac:#3f83e8}.about-card:nth-child(2){background:linear-gradient(145deg,#eefaf6,#fff);--ac:#19a687}.about-card:nth-child(3){background:linear-gradient(145deg,#f5f1ff,#fff);--ac:#7e5dd9}.about-card:nth-child(4){background:linear-gradient(145deg,#fff6e9,#fff);--ac:#e89f32}
.about-card:hover { transform: translateY(-4px) !important; box-shadow: var(--shadow-md) !important; }
.ac-icon { width: 42px; height: 42px; border-radius: 13px; color: #fff; background: var(--ac); }
.ac-num { font-family:"Manrope","Inter",sans-serif; font-size: 1.35rem; font-weight: 850; color: var(--navy); }
.ac-desc { font-size: .74rem; color: var(--muted); }

.home-facility-showcase { background: linear-gradient(135deg,#eef8fb 0%,#f8fbff 55%,#f2faf7 100%); }
.home-facility-grid { display: grid; grid-template-columns: .86fr 1.14fr; align-items: center; gap: clamp(32px,5vw,70px); }
.home-facility-copy { max-width: 510px; }
.facility-mini-stats { display: flex; gap: 9px; flex-wrap: wrap; margin: 1.25rem 0 1.35rem; }
.facility-mini-stats > div { min-width: 105px; padding: .75rem .85rem; border-radius: 14px; border: 1px solid #d7e8ef; background: rgba(255,255,255,.78); }
.facility-mini-stats strong,.facility-mini-stats span { display: block; }
.facility-mini-stats strong { font-family:"Manrope","Inter",sans-serif; color: var(--brand); font-size: 1rem; }
.facility-mini-stats span { margin-top:.1rem; color:#6d8190; font-size:.68rem; }
.home-facility-mosaic { position: relative; display: grid; grid-template-columns: 1.25fr .75fr; grid-template-rows: 180px 180px; gap: 10px; }
.home-facility-mosaic figure { margin:0; overflow:hidden; border-radius: 20px; box-shadow: var(--shadow-md); }
.home-facility-mosaic .hfm-large { grid-row: 1 / 3; }
.home-facility-mosaic img { width:100%; height:100%; object-fit:cover; transition: transform .55s var(--ease); }
.home-facility-mosaic figure:hover img { transform: scale(1.045); }
.hfm-badge { position:absolute; left:18px; bottom:18px; padding:.65rem .85rem; border-radius:12px; color:#fff; background:rgba(8,38,54,.76); backdrop-filter:blur(12px); font-size:.76rem; font-weight:800; }

.specialities-preview { background: #fff !important; }
.specialities-grid { display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap: 12px !important; }
.specialty-card { position:relative; overflow:hidden; min-height: 142px !important; padding: 1.15rem !important; border-radius: 18px !important; border: 1px solid #e0eaf0 !important; background:#fff !important; box-shadow: var(--shadow-sm) !important; }
.specialty-card::before { content:""; position:absolute; inset:0 auto 0 0; width:4px; background:var(--spec); }
.specialty-card::after { content:""; position:absolute; width:90px; height:90px; border-radius:50%; right:-45px; top:-45px; background:color-mix(in srgb,var(--spec) 10%,white); }
.specialty-card:nth-child(8n/**/+1){--spec:#1768b5}.specialty-card:nth-child(8n/**/+2){--spec:#0b8a83}.specialty-card:nth-child(8n/**/+3){--spec:#1379a8}.specialty-card:nth-child(8n/**/+4){--spec:#238b67}.specialty-card:nth-child(8n/**/+5){--spec:#0c5f96}.specialty-card:nth-child(8n/**/+6){--spec:#188aa4}.specialty-card:nth-child(8n/**/+7){--spec:#3b8f73}.specialty-card:nth-child(8n/**/+8){--spec:#2b7bb9}
.specialty-card:hover { transform:translateY(-4px) !important; box-shadow:var(--shadow-md) !important; }
.sc-icon { width:42px; height:42px; border-radius:13px; color:#fff; background:var(--spec); margin-bottom:.8rem; }
.sc-name { font-family:"Manrope","Inter",sans-serif; font-size:.88rem; font-weight:800; color:var(--navy); line-height:1.35; }

.why-us { background: linear-gradient(180deg,#f8fbfd,#fff); }
.why-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:13px; }
.why-card { padding:1.25rem !important; border-radius:18px !important; border:1px solid #e0e9ee !important; background:#fff; box-shadow:var(--shadow-sm) !important; }
.why-card:nth-child(1){--why:#3f83e8}.why-card:nth-child(2){--why:#16a58d}.why-card:nth-child(3){--why:#755fd3}.why-card:nth-child(4){--why:#ea9b31}
.why-icon { width:44px; height:44px; display:grid; place-items:center; border-radius:13px; color:#fff; background:var(--why); margin-bottom:.8rem; }
.why-icon svg { width:23px;height:23px; }
.why-card h3 { font-size:1rem; margin-bottom:.4rem; }
.why-card p { font-size:.82rem; line-height:1.55; }

.appt-cta { padding: 62px 0 !important; background: linear-gradient(115deg,#052d48,#075d76 55%,#0d998f) !important; overflow:hidden; position:relative; }
.appt-cta::before { content:""; position:absolute; width:320px;height:320px;border-radius:50%;right:-80px;top:-150px;background:rgba(255,255,255,.08); }
.appt-cta-inner { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.appt-cta h2,.appt-cta p { color:#fff; }
.appt-cta p { color:rgba(255,255,255,.76); }

.page-hero {
  position: relative;
  overflow: hidden;
  padding: 66px 0 58px !important;
  min-height: 0 !important;
  background: linear-gradient(125deg,#0a3652 0%,#076b86 58%,#12a095 100%) !important;
}
.page-hero::before { content:"" !important; position:absolute; width:340px;height:340px;border-radius:50%;right:-80px;top:-170px;background:rgba(255,255,255,.09) !important; }
.page-hero::after { content:""; position:absolute; width:210px;height:210px;border-radius:50%;right:18%;bottom:-160px;background:rgba(74,141,246,.2); }
.page-hero-content { position:relative;z-index:2;max-width:800px !important; }
.page-hero h1 { margin:.3rem 0 .7rem; color:#fff !important; font-size:clamp(2.1rem,4vw,3.35rem); }
.page-hero p { color:rgba(255,255,255,.78) !important; font-size:1rem !important; }
.breadcrumb { margin-bottom:.65rem; color:rgba(255,255,255,.66); font-size:.75rem; font-weight:650; }
.breadcrumb a { color:rgba(255,255,255,.88); }










.showcase-pills { display:flex; flex-wrap:wrap; gap:.45rem; margin:1.15rem 0 1.35rem; }
.showcase-pills span { padding:.42rem .68rem; border-radius:999px; background:#fff; border:1px solid #d9e7ed; color:#496577; font-size:.7rem; font-weight:750; box-shadow:0 5px 14px rgba(20,58,78,.04); }






.showcase-float-card { position:absolute;z-index:4;left:18px;bottom:18px;max-width:270px;padding:.8rem .9rem;border-radius:14px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);box-shadow:0 12px 30px rgba(7,40,59,.14); }
.showcase-float-card strong,.showcase-float-card span { display:block; }
.showcase-float-card strong { color:var(--navy);font-family:"Manrope","Inter",sans-serif;font-size:.86rem; }
.showcase-float-card span { margin-top:.15rem;color:#647c8a;font-size:.69rem; }

.speciality-search-wrap { max-width:760px; margin:0 auto 1.65rem; text-align:left; }
.speciality-search-wrap > label { display:block; margin:0 0 .4rem .15rem; color:#4f6878; font-size:.72rem; font-weight:750; }
.speciality-search-field { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.6rem; min-height:50px; padding:0 .9rem; border:1px solid #d4e3e9; border-radius:14px; background:#fff; box-shadow:var(--shadow-sm); }
.speciality-search-field svg { width:20px;height:20px;fill:none;stroke:#6f8a99;stroke-width:1.8;stroke-linecap:round; }
.speciality-search-field input { min-width:0;border:0;outline:0;background:transparent;font:inherit;color:var(--ink); }
.speciality-search-field span { color:#7c909d;font-size:.72rem;white-space:nowrap; }

.services-full-grid { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:13px !important; }
.service-full-card { position:relative; display:flex !important; flex-direction:column; min-height:205px !important; padding:1.15rem !important; border-radius:18px !important; border:1px solid #e0eaf0 !important; background:#fff !important; box-shadow:var(--shadow-sm) !important; overflow:hidden; }
.service-full-card[hidden] { display:none !important; }
.service-full-card::before { content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--svc); }
.service-full-card:nth-child(6n/**/+1){--svc:#347fdc}.service-full-card:nth-child(6n/**/+2){--svc:#18a28d}.service-full-card:nth-child(6n/**/+3){--svc:#765bd9}.service-full-card:nth-child(6n/**/+4){--svc:#ec6e74}.service-full-card:nth-child(6n/**/+5){--svc:#eaa036}.service-full-card:nth-child(6n/**/+6){--svc:#2aa9bb}
.service-full-card:hover { transform:translateY(-4px) !important;box-shadow:var(--shadow-md) !important;border-color:#d0e1e8 !important; }
.sfc-icon { width:43px;height:43px;display:grid;place-items:center;border-radius:13px;color:#fff;background:var(--svc);margin-bottom:.8rem; }
.sfc-icon svg { width:23px;height:23px; }
.sfc-body { flex:1; }
.sfc-body h3 { margin:0 0 .42rem;font-size:1rem;line-height:1.35; }
.sfc-body p { display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:.8rem;line-height:1.55; }
.service-card-link { margin-top:.7rem !important; color:#24617f !important; font-size:.75rem; font-weight:800; text-decoration-thickness:1px; text-underline-offset:3px; }

.fac-stats-section { padding: 34px 0 !important; }
.fac-stats-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:12px; }
.fac-stat { min-height:126px;padding:1rem;border:1px solid #dce9ef;border-radius:18px;background:#fff;box-shadow:var(--shadow-sm);text-align:left !important; }
.fac-stat:nth-child(1){--fac:#367edb}.fac-stat:nth-child(2){--fac:#795ed9}.fac-stat:nth-child(3){--fac:#18a88e}.fac-stat:nth-child(4){--fac:#e2676d}
.fs-icon { width:39px;height:39px;display:grid;place-items:center;border-radius:12px;color:#fff;background:var(--fac);margin-bottom:.7rem; }
.fs-num { font-family:"Manrope","Inter",sans-serif;font-size:1.22rem;font-weight:850;color:var(--navy); }
.fs-label { margin-top:.12rem;font-size:.72rem;color:#6d8391; }
.facility-photo-strip { padding:0 0 48px;background:linear-gradient(180deg,#f5faff,#fff); }
.facility-photo-grid { display:grid;grid-template-columns:1.5fr .75fr .75fr;grid-template-rows:150px 150px;gap:10px; }
.facility-photo-grid figure { margin:0;overflow:hidden;border-radius:18px;box-shadow:var(--shadow-sm); }
.facility-photo-main { grid-row:1/3; }
.facility-photo-grid figure:nth-child(4) { grid-column:2/4; }
.facility-photo-grid img { width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease); }
.facility-photo-grid figure:hover img { transform:scale(1.04); }
.fac-grid { display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:12px !important; }
.fac-card { min-height:210px;padding:1.1rem !important;border-radius:18px !important;border:1px solid #e0eaf0 !important;background:#fff;box-shadow:var(--shadow-sm) !important; }
.fac-card:nth-child(6n/**/+1){--fac:#347fdc}.fac-card:nth-child(6n/**/+2){--fac:#18a28d}.fac-card:nth-child(6n/**/+3){--fac:#765bd9}.fac-card:nth-child(6n/**/+4){--fac:#ec6e74}.fac-card:nth-child(6n/**/+5){--fac:#eaa036}.fac-card:nth-child(6n/**/+6){--fac:#2aa9bb}
.facc-icon { width:43px;height:43px;display:grid;place-items:center;border-radius:13px;color:#fff;background:var(--fac);margin-bottom:.8rem; }
.fac-card h3 { font-size:.98rem;margin-bottom:.4rem; }
.fac-card p { font-size:.79rem;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden; }
.fac-list-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }
.fac-list-item { display:flex;align-items:flex-start;gap:.8rem;padding:1rem;border:1px solid #e0eaf0;border-radius:17px;background:#fff;box-shadow:var(--shadow-sm); }
.fac-list-item:nth-child(6n/**/+1){--fl:#347fdc}.fac-list-item:nth-child(6n/**/+2){--fl:#e2676d}.fac-list-item:nth-child(6n/**/+3){--fl:#765bd9}.fac-list-item:nth-child(6n/**/+4){--fl:#18a28d}.fac-list-item:nth-child(6n/**/+5){--fl:#2aa9bb}.fac-list-item:nth-child(6n/**/+6){--fl:#eaa036}
.fli-icon { flex:0 0 39px;width:39px;height:39px;display:grid;place-items:center;border-radius:12px;color:#fff;background:var(--fl); }
.fli-text h3 { font-size:.92rem;margin:0 0 .28rem; }
.fli-text p { font-size:.76rem;line-height:1.5; }
.digital-section { background:linear-gradient(120deg,#092b43,#075c72 57%,#128d84) !important; }
.digital-inner { display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center; }
.digital-section h2,.digital-section .section-label,.digital-section p { color:#fff; }
.digital-section p { color:rgba(255,255,255,.74); }
.digital-features { display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:1rem; }
.digital-features li { padding:.55rem .65rem;border-radius:10px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.85);font-size:.76rem; }
.digital-visual { display:grid;grid-template-columns:1fr 1fr;gap:10px; }
.dv-badge { min-height:105px;padding:1rem;border:1px solid rgba(255,255,255,.14);border-radius:17px;background:rgba(255,255,255,.08);backdrop-filter:blur(10px); }
.dvb-icon { width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:#063246;background:#8de6d7;margin-bottom:.6rem; }
.dvb-text { color:#fff;font-size:.8rem;font-weight:750; }

.about-full-grid { display:grid;grid-template-columns:1.15fr .85fr; }
.about-highlight-box { display:grid !important;grid-template-columns:1fr 1fr;gap:10px;padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important; }
.ahb-item { min-height:120px;padding:1rem;border:1px solid #dfe9ef;border-radius:18px;background:#fff;box-shadow:var(--shadow-sm); }
.ahb-item:nth-child(1){background:linear-gradient(145deg,#eef6ff,#fff)}.ahb-item:nth-child(2){background:linear-gradient(145deg,#eefaf6,#fff)}.ahb-item:nth-child(3){background:linear-gradient(145deg,#f4f0ff,#fff)}.ahb-item:nth-child(4){background:linear-gradient(145deg,#fff5e7,#fff)}
.ahb-num { font-family:"Manrope","Inter",sans-serif;font-size:1.5rem;font-weight:850;color:var(--brand); }
.ahb-label { margin-top:.18rem;color:#6b8190;font-size:.73rem; }
.vm-grid { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.vm-card { min-height:230px;padding:1.6rem;border-radius:23px;border:1px solid #dfe9ef;box-shadow:var(--shadow-sm); }
.vision-card { background:linear-gradient(145deg,#eaf4ff,#fff); }.mission-card { background:linear-gradient(145deg,#e9faf5,#fff); }
.vm-icon { width:48px;height:48px;display:grid;place-items:center;border-radius:14px;color:#fff;background:var(--brand);margin-bottom:1rem; }
.mission-card .vm-icon { background:var(--mint); }
.vm-card p { margin-top:.55rem;font-size:.9rem;line-height:1.7; }
.values-grid { display:grid !important;grid-template-columns:repeat(5,1fr) !important;gap:11px !important; }
.value-card { position:relative;overflow:hidden;min-height:250px;padding:1.15rem !important;border-radius:18px !important;border:1px solid #e0eaf0 !important;background:#fff;box-shadow:var(--shadow-sm); }
.value-card:nth-child(1){--val:#e36070}.value-card:nth-child(2){--val:#e6a431}.value-card:nth-child(3){--val:#775fd4}.value-card:nth-child(4){--val:#2587cf}.value-card:nth-child(5){--val:#1ba58a}
.value-num { position:absolute;right:12px;top:9px;color:color-mix(in srgb,var(--val) 16%,white);font-family:"Manrope",sans-serif;font-size:2.7rem;font-weight:850;line-height:1; }
.value-emoji { width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#fff;background:var(--val);margin-bottom:.9rem; }
.value-card h3 { font-size:.96rem;margin-bottom:.4rem; }
.value-card p { font-size:.76rem;line-height:1.55; }
.apart-list { display:grid !important;grid-template-columns:1fr 1fr;gap:12px !important; }
.apart-item { padding:1.1rem;border:1px solid #dfe9ef;border-radius:18px;background:#fff;box-shadow:var(--shadow-sm); }
.apart-icon { flex:0 0 44px;width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#eef7fb; }
.apart-text h3 { font-size:.95rem; }.apart-text p { font-size:.78rem;line-height:1.55; }
.approach-section { background:#fff; }
.approach-inner { display:grid !important;grid-template-columns:1.15fr .85fr;gap:18px;align-items:stretch; }
.approach-quote,.approach-cta { padding:1.5rem;border-radius:22px; }
.approach-quote { background:linear-gradient(135deg,#0b3753,#0a6a80); }.approach-quote blockquote,.approach-quote cite,.quote-mark { color:#fff; }
.approach-cta { display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,#eef9f5,#fff);border:1px solid #d9e9e4; }

.doctor-discovery-panel { display:grid !important;max-width:980px !important;margin:1.3rem auto 1rem !important;padding:13px 14px !important;border-radius:16px !important;background:#fff !important;border:1px solid #d9e6ec !important;box-shadow:var(--shadow-sm) !important; }
.doctor-search-field { gap:.35rem !important;font-size:.74rem; }
.doctor-search-field input { min-height:44px !important;border-radius:11px !important;padding:0 .9rem !important;font-size:.86rem; }
.doctor-result-count { padding-bottom:10px !important;font-size:.75rem; }
.doctor-filter-bar { display:flex !important;gap:6px !important;overflow-x:auto !important;padding:.2rem 0 .8rem !important;margin-bottom:1rem;scrollbar-width:thin; }
.doctor-filter-btn { min-height:34px !important;padding:.4rem .68rem !important;border-radius:999px !important;border:1px solid #d9e5eb !important;background:#fff !important;color:#577080 !important;font-size:.68rem !important;font-weight:750 !important;white-space:nowrap; }
.doctor-filter-btn.active,.doctor-filter-btn:hover { color:#fff !important;background:var(--brand) !important;border-color:var(--brand) !important; }
.doctors-full-grid { display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;align-items:stretch; }
.doctor-card { position:relative;min-width:0;display:flex !important;flex-direction:column;overflow:hidden;border:1px solid #dfe9ee !important;border-radius:18px !important;background:#fff !important;box-shadow:var(--shadow-sm) !important;transition:transform .22s var(--ease),box-shadow .22s var(--ease); }
.doctor-card:nth-child(6n/**/+1){--doctor-accent:#347fdc}.doctor-card:nth-child(6n/**/+2){--doctor-accent:#18a28d}.doctor-card:nth-child(6n/**/+3){--doctor-accent:#765bd9}.doctor-card:nth-child(6n/**/+4){--doctor-accent:#ec6e74}.doctor-card:nth-child(6n/**/+5){--doctor-accent:#eaa036}.doctor-card:nth-child(6n/**/+6){--doctor-accent:#2aa9bb}
.doctor-card::before { content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--doctor-accent,var(--brand)); }
.doctor-card:hover { transform:translateY(-4px) !important;box-shadow:var(--shadow-md) !important; }
.doctor-card.is-hidden { display:none !important; }
.dc-header { display:grid !important;grid-template-columns:82px minmax(0,1fr) !important;gap:12px !important;align-items:start;padding:1rem 1rem .8rem !important;background:linear-gradient(180deg,#fbfdfe,#fff) !important; }
.dc-photo,.dc-avatar { width:82px !important;height:96px !important;border-radius:14px !important;object-fit:cover !important;border:1px solid #dce7ec !important;background:#edf6f8 !important; }
.dc-avatar { display:grid;place-items:center; }
.branded-doctor-placeholder { color:var(--doctor-accent,var(--brand)) !important;background:color-mix(in srgb,var(--doctor-accent,var(--brand)) 9%,#fff) !important; }
.branded-doctor-placeholder svg { width:48px !important;height:48px !important; }
.dc-header-text { min-width:0;display:flex !important;flex-direction:column !important;gap:.26rem !important;padding:0 !important; }
.dc-name { margin:0 !important;font-size:.98rem !important;line-height:1.28 !important; }
.dc-name a:hover { color:var(--brand); }
.dc-qual { margin:0 !important;padding:0 !important;border:0 !important;color:#607788 !important;font-size:.72rem !important;line-height:1.38 !important; }
.dc-specialty { margin:0 !important;color:var(--doctor-accent,var(--brand)) !important;font-size:.75rem !important;font-weight:800 !important;line-height:1.35 !important; }
.dc-department a { display:inline-flex;padding:.22rem .45rem;border-radius:999px;background:#eef7fb;color:#3f718b;font-size:.61rem;font-weight:750; }
.dc-experience { align-self:flex-start;display:inline-flex !important;margin-top:.1rem;padding:.23rem .48rem;border-radius:999px;background:#edf9f5;color:#17765f;font-size:.62rem !important;font-weight:800 !important; }
.dc-languages { color:#718592 !important;font-size:.64rem !important;line-height:1.35; }
.dc-languages span { font-weight:750;color:#506777; }
.dc-body { display:grid !important;grid-template-columns:1fr 1fr !important;gap:7px !important;margin-top:auto !important;padding:.75rem 1rem 1rem !important;border-top:1px solid #edf2f5; }
.dc-appt-btn { min-height:37px !important;margin:0 !important;padding:.5rem .55rem !important;border-radius:10px !important;display:flex !important;align-items:center;justify-content:center;color:var(--brand) !important;background:#f1f8fb !important;border:1px solid #d3e6ef !important;font-size:.67rem !important;font-weight:800 !important; }
.dc-appt-btn:hover { color:#fff !important;background:var(--brand) !important;border-color:var(--brand) !important; }
.dc-secondary-btn { color:#fff !important;background:linear-gradient(135deg,var(--brand),#118fa4) !important;border-color:transparent !important; }
.doctor-empty-state { grid-column:1/-1;padding:2rem;text-align:center;color:var(--muted);border:1px dashed #cddde4;border-radius:16px; }

.doctor-profile-section,.department-profile-section { background:linear-gradient(180deg,#f7fafc,#fff 26%); }
.doctor-profile-card { display:grid !important;grid-template-columns:260px minmax(0,1fr) !important;gap:26px !important;padding:1.25rem !important;border:1px solid #dfe9ee;border-radius:24px;background:#fff;box-shadow:var(--shadow-md); }
.doctor-profile-media { min-height:290px;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#eaf5f8,#f7fafc); }
.doctor-profile-photo,.doctor-profile-avatar { width:100% !important;height:100% !important;min-height:290px;object-fit:cover;border-radius:0 !important; }
.doctor-profile-info { padding:.5rem .5rem .5rem 0; }
.doctor-profile-info h2 { margin:.35rem 0 .45rem;font-size:2rem; }
.profile-meta-grid { display:grid !important;grid-template-columns:repeat(2,1fr) !important;gap:8px !important;margin:1rem 0; }
.profile-meta-grid > div { padding:.75rem .8rem;border-radius:12px;background:#f7fafc;border:1px solid #e4edf1; }
.profile-meta-grid strong,.profile-meta-grid span,.profile-meta-grid a { display:block; }
.profile-meta-grid strong { margin-bottom:.18rem;color:#7b8d99;font-size:.61rem;letter-spacing:.08em;text-transform:uppercase; }
.profile-meta-grid span,.profile-meta-grid a { color:#27485c;font-size:.76rem;font-weight:750; }
.doctor-availability { margin:1rem 0 0 !important;padding:.8rem !important;border-radius:13px !important;background:#f6fafb !important; }
.doctor-availability strong { font-size:.75rem; }
.availability-chip { min-height:30px !important;padding:.32rem .55rem !important;font-size:.65rem !important; }
.profile-actions { display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1rem; }
.profile-content-card { margin-top:14px;padding:1.25rem !important;border:1px solid #dfe9ee !important;border-radius:20px !important;background:#fff !important;box-shadow:var(--shadow-sm) !important; }
.profile-content-card > h2 { margin-bottom:.8rem;font-size:1.35rem; }
.profile-content-card > p { font-size:.88rem;line-height:1.7; }
.profile-strengths { display:grid !important;grid-template-columns:1fr 1fr;gap:8px 24px; }
.profile-strengths li,.clinical-list li { font-size:.8rem !important; }
.related-doctor-grid { display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:9px !important; }
.related-doctor-card { padding:.85rem;border:1px solid #dce8ee;border-radius:13px;background:#f9fcfd; }
.related-doctor-card strong,.related-doctor-card span { display:block; }.related-doctor-card strong{font-size:.78rem;color:var(--navy)}.related-doctor-card span{margin-top:.2rem;font-size:.67rem;color:var(--muted)}
.department-info-grid { gap:12px !important; }
.clinical-list { gap:7px !important; }
.server-doctor-grid { margin-top:1rem; }

.appt-layout,.contact-layout { display:grid !important;grid-template-columns:.78fr 1.22fr !important;gap:20px !important;align-items:start; }
.appt-info,.contact-info-col { position:sticky;top:calc(var(--topbar-h) + var(--header-h) + 18px); }
.appt-why-list,.contact-cards { display:grid;gap:9px; }
.awl-item,.contact-card { display:flex;gap:.75rem;padding:.9rem;border:1px solid #dfe8ee;border-radius:15px;background:#fff;box-shadow:var(--shadow-sm); }
.awl-icon,.cc-icon { flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:#fff;background:var(--brand); }
.awl-item:nth-child(2) .awl-icon,.contact-card:nth-child(2) .cc-icon{background:var(--mint)}.awl-item:nth-child(3) .awl-icon,.contact-card:nth-child(3) .cc-icon{background:var(--violet)}.awl-item:nth-child(4) .awl-icon,.contact-card:nth-child(4) .cc-icon{background:var(--amber)}
.awl-item strong,.contact-card h3 { color:var(--navy);font-size:.86rem; }.awl-item p,.contact-card p,.cc-body{font-size:.75rem;line-height:1.5; }
.appt-emergency-box,.emergency-card { margin-top:10px;padding:1rem;border-radius:16px;background:linear-gradient(145deg,#fff2f3,#fff);border:1px solid #f1d0d3; }
.appt-form-box,.contact-form-mini { padding:1.35rem !important;border-radius:22px !important;border:1px solid #dce8ee !important;background:#fff !important;box-shadow:var(--shadow-md) !important; }
.afb-header { margin-bottom:1rem; }.afb-header h2{font-size:1.4rem}.afb-header p{font-size:.8rem}
.appt-form { gap:.8rem !important; }
.form-row { gap:10px !important; }
.form-group { gap:.35rem !important; }
.form-group label { color:#385567;font-size:.72rem;font-weight:750; }
.form-group input,.form-group select,.form-group textarea,.contact-form-mini input,.contact-form-mini select,.contact-form-mini textarea { width:100%;min-height:46px;padding:.7rem .8rem;border:1px solid #cfdfe6;border-radius:11px;background:#fbfdfe;color:var(--ink);font:inherit;font-size:.84rem;transition:.18s ease; }
.form-group textarea,.contact-form-mini textarea { min-height:110px;resize:vertical; }
.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.contact-form-mini input:focus,.contact-form-mini select:focus,.contact-form-mini textarea:focus { outline:0;border-color:#69aac7;box-shadow:0 0 0 4px rgba(58,144,181,.1);background:#fff; }
.form-help,.form-note,.appointment-confirmation-note { font-size:.68rem !important;line-height:1.45;color:#596f80; }
.field-error { font-size:.67rem;color:#b83d49; }
.success-msg { padding:1rem !important;border-radius:14px !important;background:#eefaf6 !important;border:1px solid #cce9df !important; }
.vh-grid { display:grid;grid-template-columns:1fr 1fr;gap:8px; }.vh-item{padding:.7rem;border-radius:11px;background:#f6fafb;font-size:.72rem}
.map-container { border-radius:20px !important;overflow:hidden;border:1px solid #dce8ee;box-shadow:var(--shadow-sm); }
.directions-actions,.cc-actions { display:flex;gap:.55rem;flex-wrap:wrap; }

.testimonial-page-hero,.feedback-page-hero { background:linear-gradient(135deg,#f1f8fd,#fff 52%,#edf9f5) !important; }
.testimonial-page-hero { padding:52px 0 !important; }
.testimonial-player-layout { gap:14px !important; }
.testimonial-main-player,.testimonial-playlist,.testimonial-review-card,.feedback-invite-card,.feedback-form-card,.feedback-language-bar,.feedback-success-card { border-color:#dce8ee !important;box-shadow:var(--shadow-sm) !important; }
.testimonial-main-player { border-radius:20px !important; }
.testimonial-playlist { border-radius:18px !important; }
.testimonial-review-track { grid-auto-columns:minmax(280px,31.8%) !important;gap:10px !important; }
.testimonial-review-card { height:330px !important;min-height:330px !important;max-height:330px !important;padding:1.05rem !important;border-radius:18px !important; }
.testimonial-review-card blockquote { font-size:.86rem !important;line-height:1.62 !important; }
.feedback-form-card { border-radius:20px !important; }
.feedback-choice-card { min-height:86px !important; }
.feedback-question-card { border-radius:15px !important; }
.feedback-rating-options span.feedback-option-content { min-height:68px !important; }

.site-footer { background:#071e30 !important;color:#c8d6df; }
.footer-grid { display:grid;grid-template-columns:1.55fr .8fr .9fr .85fr;gap:34px;padding:46px 0 38px; }
.footer-brand-row { display:flex;align-items:center;gap:.65rem; }.footer-brand-badge{width:38px;height:38px;border-radius:11px;background:#fff;display:grid;place-items:center}.footer-brand-icon{width:28px;height:28px;object-fit:contain}.footer-title{color:#fff;font-size:1.06rem}.footer-desc{max-width:390px;font-size:.76rem;line-height:1.6;color:#91a8b6}.footer-contact-mini{display:grid;gap:.3rem;margin-top:.8rem;color:#a7b9c4;font-size:.72rem}.footer-qr-card{margin-top:.8rem;width:64px;padding:5px;border-radius:9px;background:#fff}.footer-qr-img{width:54px;height:54px}.footer-links h4{margin-bottom:.75rem;color:#fff;font-size:.8rem}.footer-links ul{display:grid;gap:.4rem}.footer-links a{color:#a8bbc6;font-size:.72rem}.footer-links a:hover{color:#fff}.footer-emergency{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.footer-emergency p{color:#fff;font-size:.74rem;font-weight:750}.footer-emerg-btn,.footer-wa-btn{padding:.4rem .55rem;border-radius:8px;background:rgba(255,255,255,.08);color:#fff !important;font-size:.7rem !important}.footer-wa-btn{background:#168a63}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:12px 0 !important}.footer-bottom .container{display:flex;justify-content:space-between;gap:1rem;color:#778f9d;font-size:.64rem}.footer-staff-link{opacity:.65}

.floating-whatsapp { right:18px !important;bottom:18px !important;min-height:50px !important;padding:.55rem .75rem !important;border-radius:15px !important;gap:.45rem !important;box-shadow:0 14px 36px rgba(18,151,92,.28) !important; }
.floating-whatsapp-icon{width:30px !important;height:30px !important}.floating-whatsapp-icon svg{width:18px !important;height:18px !important}.floating-whatsapp-text{font-size:.78rem !important}
.mobile-patient-dock{display:none}

@media (max-width: 1080px) {
  .nav-link { padding:.5rem .48rem;font-size:.79rem; }
  .header-cta { padding-inline:.8rem;font-size:.78rem; }
  .services-full-grid,.doctors-full-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .fac-grid { grid-template-columns:repeat(2,1fr) !important; }
  .values-grid { grid-template-columns:repeat(3,1fr) !important; }
  .why-grid { grid-template-columns:repeat(2,1fr); }
  
  
  .fac-list-grid{grid-template-columns:1fr 1fr}
}

@media (max-width: 900px) {
  :root { --header-h: 64px; }
  .top-social-links,.top-bar-copy { display:none !important; }
  .top-bar-inner { justify-content:center !important; }
  .top-bar-actions { width:100%;justify-content:center; }
  .top-call-badge { flex:0 1 auto; }
  .main-nav { position:fixed !important;top:calc(var(--topbar-h) + var(--header-h)) !important;left:12px !important;right:12px !important;width:auto !important;max-height:calc(100vh - var(--topbar-h) - var(--header-h) - 20px);overflow:auto;padding:.75rem !important;border:1px solid #dae6ec;border-radius:17px;background:#fff;box-shadow:var(--shadow-lg);transform:translateY(-8px);opacity:0;visibility:hidden;transition:.2s ease; }
  .main-nav.open { transform:none;opacity:1;visibility:visible; }
  .nav-list { flex-direction:column;align-items:stretch;gap:3px; }.nav-link{display:block;padding:.68rem .75rem;font-size:.84rem}.header-cta{margin-left:auto}.hamburger{display:flex !important;flex-direction:column;gap:5px;width:40px;height:40px;align-items:center;justify-content:center;border-radius:11px;background:#eef7fa}.hamburger span{width:20px;height:2px;background:var(--navy)}
  .hero { height:520px;min-height:520px !important; }.hero-content{padding:65px 0 42px !important;margin-left:20px;margin-right:20px}.hero-float-stack{display:none}.hero-stats{gap:6px}.hero-stat{min-width:105px;padding:.6rem .7rem}.hero-headline{font-size:clamp(2.45rem,8vw,4rem)}
  .patient-quick-grid{grid-template-columns:repeat(2,1fr) !important;transform:none !important;padding-top:18px}.patient-quick-actions{padding-bottom:30px !important}
  .home-facility-grid, .about-full-grid, .digital-inner, .approach-inner, .appt-layout, .contact-layout{ grid-template-columns:1fr !important; }
  
  .about-card-stack{max-width:620px}.specialities-grid{grid-template-columns:repeat(2,1fr) !important}.fac-stats-grid{grid-template-columns:repeat(2,1fr)}.facility-photo-grid{grid-template-columns:1.2fr .8fr;grid-template-rows:180px 140px 140px}.facility-photo-main{grid-row:1/4}.facility-photo-grid figure:nth-child(4){grid-column:2;}.fac-list-grid{grid-template-columns:1fr 1fr}.digital-inner{gap:22px}.values-grid{grid-template-columns:repeat(2,1fr) !important}.apart-list{grid-template-columns:1fr !important}
  .doctor-profile-card{grid-template-columns:240px minmax(0,1fr) !important;gap:22px !important}.doctor-profile-media,.doctor-profile-photo,.doctor-profile-avatar{min-height:290px}.related-doctor-grid{grid-template-columns:1fr 1fr !important}
  .appt-info,.contact-info-col{position:static}.footer-grid{grid-template-columns:1.2fr 1fr 1fr;}.footer-grid>div:last-child{grid-column:1/-1}.footer-emergency{flex-direction:row;align-items:center;flex-wrap:wrap}
}

@media (max-width: 720px) {
  :root { --topbar-h: 36px; --header-h: 60px; }
  .container { width:min(calc(100% - 28px),var(--page-max)); }
  .top-bar { height:36px !important;min-height:36px !important; }.top-call-badge{min-height:25px !important;padding:.18rem .45rem !important;border:0}.top-call-text{font-size:.61rem !important}.top-call-icon,.top-call-icon svg{width:13px !important;height:13px !important}.brand-logo-img{height:40px}.header-inner{gap:.55rem}.header-cta{min-height:37px;padding:.5rem .68rem;font-size:.68rem;border-radius:10px}.hamburger{width:37px;height:37px}
  body { padding-bottom:68px !important; }
  .hero { height:auto;min-height:500px !important; }.hero::before{background:linear-gradient(90deg,rgba(4,25,39,.82),rgba(4,34,50,.58))}.hero-content{padding:58px 0 40px !important}.hero-sub br{display:none}.hero-headline{font-size:clamp(2.3rem,11vw,3.2rem)}.hero-sub{font-size:.92rem}.hero-actions{margin-bottom:1.15rem}.hero-stats{display:grid;grid-template-columns:1fr 1fr;width:min(100%,310px)}.hero-stat{min-width:0}.stat-num{font-size:1.08rem}.stat-label{font-size:.6rem}
  .emergency-inner{min-height:44px;gap:.5rem;justify-content:flex-start;overflow-x:auto}.emergency-text{white-space:nowrap;font-size:.7rem}.emergency-call{white-space:nowrap;font-size:.67rem}.emergency-pulse{flex:0 0 7px}
  .section{padding:44px 0}.section-title{font-size:clamp(1.65rem,7vw,2.2rem)}.section-sub{font-size:.88rem;margin-bottom:1.5rem}.body-text{font-size:.9rem}
  .patient-quick-grid{gap:9px !important}.patient-quick-card{min-height:108px !important;flex-direction:column !important;align-items:flex-start !important;gap:8px !important;padding:13px !important}.pqa-icon{width:38px !important;height:38px !important;flex-basis:38px !important}.patient-quick-card small{font-size:.66rem}
  .home-facility-mosaic{grid-template-columns:1.15fr .85fr;grid-template-rows:140px 140px}.facility-mini-stats>div{min-width:90px}.specialities-grid{gap:9px !important}.specialty-card{min-height:126px !important;padding:.9rem !important}.sc-icon{width:37px;height:37px}.sc-name{font-size:.78rem}.why-grid{grid-template-columns:1fr 1fr;gap:9px}.why-card{padding:.95rem !important}.why-card p{font-size:.72rem}
  .appt-cta-inner{flex-direction:column;align-items:flex-start}.appt-cta{padding:48px 0 !important}
  .page-hero{padding:46px 0 40px !important}.page-hero h1{font-size:clamp(1.9rem,8vw,2.55rem)}.page-hero p{font-size:.88rem !important}.breadcrumb{font-size:.67rem;white-space:normal}
  .showcase-float-card{left:12px;bottom:12px}.showcase-pills{margin:.9rem 0 1rem}.showcase-pills span{font-size:.64rem}
  .services-full-grid,.doctors-full-grid{grid-template-columns:1fr !important;gap:9px !important}.service-full-card{min-height:0 !important;padding:1rem !important}.sfc-body p{-webkit-line-clamp:2}.service-card-link{margin-top:.55rem !important}.doctor-discovery-panel{margin-top:1rem !important}.doctor-filter-bar{margin-left:-2px;margin-right:-2px}.dc-header{grid-template-columns:72px minmax(0,1fr) !important;padding:.85rem !important}.dc-photo,.dc-avatar{width:72px !important;height:84px !important}.dc-body{padding:.65rem .85rem .85rem !important}.dc-appt-btn{min-height:35px !important}.doctor-profile-card{grid-template-columns:1fr !important;padding:1rem !important}.doctor-profile-media{max-height:390px;min-height:0;aspect-ratio:4/4.5}.doctor-profile-photo,.doctor-profile-avatar{min-height:0}.doctor-profile-info{padding:.2rem 0}.profile-meta-grid{grid-template-columns:1fr 1fr !important}.profile-strengths{grid-template-columns:1fr}.related-doctor-grid{grid-template-columns:1fr !important}.profile-content-card{padding:1rem !important}
  .fac-stats-grid{gap:9px}.fac-stat{min-height:110px;padding:.85rem}.facility-photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:190px 120px}.facility-photo-main{grid-column:1/3;grid-row:1}.facility-photo-grid figure:nth-child(4){grid-column:auto}.fac-grid{grid-template-columns:1fr 1fr !important;gap:9px !important}.fac-card{min-height:210px;padding:.9rem !important}.fac-card p{-webkit-line-clamp:4}.fac-list-grid{grid-template-columns:1fr}.digital-features,.digital-visual{grid-template-columns:1fr 1fr}.dv-badge{min-height:90px}
  .vm-grid{grid-template-columns:1fr}.values-grid{grid-template-columns:1fr 1fr !important;gap:9px !important}.value-card{min-height:225px;padding:.95rem !important}.value-card p{font-size:.7rem}.about-highlight-box{grid-template-columns:1fr 1fr}.ahb-item{min-height:105px}.approach-inner{gap:10px}.approach-quote,.approach-cta{padding:1.1rem}
  .appt-form-box,.contact-form-mini{padding:1rem !important}.form-row{grid-template-columns:1fr !important}.vh-grid{grid-template-columns:1fr}.testimonial-review-track{grid-auto-columns:86% !important}.testimonial-review-card{height:315px !important;min-height:315px !important;max-height:315px !important}
  .footer-grid{grid-template-columns:1fr 1fr;gap:24px;padding:34px 0}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom .container{flex-direction:column;gap:.25rem}.footer-qr-card{display:none}
  .floating-whatsapp{display:none !important}.mobile-patient-dock{display:grid !important;position:fixed;z-index:9998;left:0;right:0;bottom:0;grid-template-columns:repeat(4,1fr);min-height:64px;padding:5px 4px max(5px,env(safe-area-inset-bottom));border-top:1px solid #d8e4ea;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);box-shadow:0 -10px 30px rgba(14,51,73,.1)}.mobile-patient-dock a{display:grid;place-items:center;align-content:center;gap:2px;color:#2b4c60;font-size:.64rem;font-weight:750}.mobile-patient-dock svg{width:20px;height:20px;fill:none;stroke:var(--brand);stroke-width:1.8}
}

@media (max-width: 430px) {
  .top-call-badge{padding:.16rem .34rem !important}.top-call-text{font-size:.56rem !important}.header-cta{display:none !important}.patient-quick-grid{grid-template-columns:1fr 1fr !important}.specialities-grid,.why-grid,.fac-grid,.values-grid{grid-template-columns:1fr 1fr !important}.home-facility-mosaic{grid-template-rows:120px 120px}.facility-mini-stats{display:grid;grid-template-columns:repeat(3,1fr)}.facility-mini-stats>div{min-width:0;padding:.65rem}.facility-mini-stats span{font-size:.6rem}.profile-meta-grid{grid-template-columns:1fr !important}.digital-features,.digital-visual{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div{grid-column:1 !important}.top-social-links{display:none !important}
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior:auto !important;animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important; }
}
.hero-slider { background: #0c2b3e url("/assets/home/hero/image5.jpg") center/cover no-repeat; }
#servicesHeroSlider { background: #dcecf2 url("/assets/services/hero/image1.jpg") center/cover no-repeat; }
#facilitiesHeroSlider { background: #dcecf2 url("/assets/facilities/hero/10.jpeg") center/cover no-repeat; }

/* Patient trust actions */
.home-trust-actions { background: linear-gradient(180deg,#fff 0%,#f7fbfd 100%); }
.section-heading-row { display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:22px; }
.section-heading-row .section-title { margin-bottom:0; }
.section-heading-row>p { max-width:440px;margin:0;color:var(--muted);font-size:.86rem;line-height:1.6; }
.trust-action-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; }
.trust-action-card { position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) 24px;align-items:center;gap:13px;min-height:112px;padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff;color:var(--ink);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s ease; }
.trust-action-card::before { content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--sky); }
.trust-action-card:hover { transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:#cbdfe8; }
.trust-action-icon { width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#eaf3ff;color:var(--sky); }
.trust-action-icon svg { width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
.trust-action-card strong { display:block;font:800 .92rem/1.25 "Manrope","Inter",sans-serif;color:var(--navy); }
.trust-action-card small { display:block;margin-top:4px;color:var(--muted);font-size:.7rem;line-height:1.45; }
.trust-arrow { color:#9eb0ba;font-size:1.25rem;transition:transform .2s ease,color .2s ease; }
.trust-action-card:hover .trust-arrow { transform:translateX(3px);color:var(--brand); }
.trust-feedback::before { background:var(--violet); }.trust-feedback .trust-action-icon { background:#f0edff;color:var(--violet); }
.trust-location::before { background:var(--mint); }.trust-location .trust-action-icon { background:#e7f8f2;color:var(--mint); }
@media (max-width:900px){.section-heading-row{align-items:flex-start;flex-direction:column;gap:8px}.trust-action-grid{grid-template-columns:1fr 1fr}.trust-action-grid .trust-action-card:last-child{grid-column:1/-1}}
@media (max-width:620px){.trust-action-grid{grid-template-columns:1fr}.trust-action-grid .trust-action-card:last-child{grid-column:auto}.trust-action-card{min-height:96px;padding:14px;border-radius:16px}.trust-action-icon{width:44px;height:44px;border-radius:13px}}

/* Doctor discovery controls */
.doctor-discovery-panel { grid-template-columns:minmax(0,1fr) 190px auto !important;align-items:end; }
.doctor-sort-field { display:grid;gap:6px; }
.doctor-sort-field>span { color:var(--navy);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase; }
.doctor-sort-field select { width:100%;height:44px;padding:0 36px 0 12px;border:1px solid #cfdee6;border-radius:12px;background:#fff;color:var(--ink);font:700 .77rem/1 "Inter",sans-serif; }
@media(max-width:760px){.doctor-discovery-panel{grid-template-columns:1fr !important}.doctor-result-count{justify-self:start}}

/* Clean feature checklists and success states */
.digital-features li { position:relative;padding-left:2rem; }
.digital-features li::before { content:"";position:absolute;left:.65rem;top:.78rem;width:8px;height:5px;border-left:2px solid #8de6d7;border-bottom:2px solid #8de6d7;transform:rotate(-45deg); }
.sm-icon { display:grid;place-items:center; }
.sm-icon svg { width:42px;height:42px;fill:none;stroke:var(--mint);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }

/* === Clean-install v0 final polish === */
:root {
  --topbar-h: 38px;
  --header-h: 78px;
  --brand-blue: #0c50a1;
  --brand-blue-dark: #073f82;
  --brand-green: #67c044;
}

/* Brand-integrated public header */
.top-bar {
  background: linear-gradient(90deg,#061b31 0%,#092b4c 58%,#07546b 100%) !important;
}
.top-social-links { gap: .42rem !important; }
.top-social-label { color: rgba(255,255,255,.72) !important; }
.top-social-link {
  width: 30px !important;
  height: 30px !important;
  border-radius: 9px !important;
  border: 1px solid rgba(255,255,255,.24) !important;
  box-shadow: 0 5px 14px rgba(0,0,0,.16) !important;
}
.top-social-link svg { width: 16px !important; height: 16px !important; }
.top-call-badge { min-height: 30px !important; }

.site-header,
.site-header.scrolled {
  background: rgba(255,255,255,.97) !important;
  border-bottom: 1px solid rgba(7,63,130,.10) !important;
  box-shadow: 0 12px 34px rgba(5,45,82,.09) !important;
  backdrop-filter: blur(18px) saturate(1.12) !important;
}
.header-inner { gap: 1.05rem !important; }
.site-header .logo-link {
  min-height: var(--header-h) !important;
  display: inline-flex !important;
  align-items: center !important;
}
.site-header .logo-brandmark {
  min-height: 0 !important;
  max-height: none !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.site-header .brand-logo-img {
  display: block !important;
  width: 198px !important;
  max-width: 23vw !important;
  height: auto !important;
  max-height: 70px !important;
  object-fit: contain !important;
}
.nav-list { gap: .12rem !important; }
.nav-link {
  color: #29485c !important;
  font-size: .84rem !important;
  font-weight: 720 !important;
  padding: .58rem .68rem !important;
  background: transparent !important;
}
.nav-link:hover,
.nav-link.active {
  color: var(--brand-blue) !important;
  background: #edf6ff !important;
}
.nav-link.active::after {
  background: var(--brand-green) !important;
}
.header-cta {
  color: #fff !important;
  background: linear-gradient(135deg,#69c444,#55ad37) !important;
  box-shadow: 0 10px 24px rgba(50,129,38,.26) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
}
.header-cta:hover { background: linear-gradient(135deg,#74cb4f,#5eb63e) !important; }
.hamburger { background: rgba(255,255,255,.10) !important; border: 1px solid rgba(255,255,255,.16); }
.hamburger { background: #eef7fb !important; border-color: #d6e6ed !important; }
.hamburger span { background: #163e58 !important; }

/* Home: remove visual collisions and keep cards crisp between transitions */
.patient-quick-actions { padding: 20px 0 34px !important; }
.patient-quick-grid { transform: none !important; }
.hero-float-stack { bottom: 28px; }
@media (max-width: 1180px) { .hero-float-stack { display: none; } }

.home-specialist-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1.1rem;
}
.home-specialist-heading .section-title { margin-bottom: .4rem; }
.home-specialist-heading .section-sub { margin: 0; text-align: left; }
.home-doctor-carousel-controls { display: flex; gap: .55rem; flex: 0 0 auto; }
.home-doctor-carousel-controls button {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid #d7e6ed;
  border-radius: 12px;
  color: var(--brand-blue);
  background: #fff;
  box-shadow: 0 8px 20px rgba(10,68,108,.08);
  cursor: pointer;
}
.home-doctor-carousel-controls button:hover { background: #edf6ff; border-color: #b8d6eb; }
.home-doctor-carousel-controls svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 2; }
.home-doctor-carousel { margin-top: 0 !important; }
.home-doctor-carousel-viewport {
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  padding: .4rem .25rem 1.1rem !important;
}
.home-doctor-carousel-track { will-change: auto !important; }
.home-doctor-promo-card {
  flex: 0 0 302px !important;
  width: 302px !important;
  scroll-snap-align: start;
  border-radius: 20px !important;
  border-color: #dbe7ed !important;
  box-shadow: 0 12px 30px rgba(9,60,94,.09) !important;
  transform: translateZ(0);
}
.home-doctor-promo-card:hover,
.home-doctor-promo-card:focus-within { transform: translateY(-3px) !important; }
.home-doctor-card-image {
  width: 100% !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
  image-rendering: auto;
  transform: none !important;
  filter: none !important;
  backface-visibility: hidden;
}
.home-doctor-carousel::before,
.home-doctor-carousel::after { width: 24px !important; }

/* Relatable Why NAAM icons */
.why-card { position: relative; overflow: hidden; }
.why-card:nth-child(1) { --why-accent:#2378d7; --why-soft:#eaf3ff; }
.why-card:nth-child(2) { --why-accent:#19a27f; --why-soft:#e8f8f2; }
.why-card:nth-child(3) { --why-accent:#725bd2; --why-soft:#f0edff; }
.why-card:nth-child(4) { --why-accent:#e5952f; --why-soft:#fff3df; }
.why-icon {
  width: 52px !important;
  height: 52px !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 0 .9rem !important;
  border-radius: 16px !important;
  color: var(--why-accent) !important;
  background: var(--why-soft) !important;
  border: 1px solid color-mix(in srgb,var(--why-accent) 18%,#fff) !important;
}
.why-icon svg {
  width: 27px !important;
  height: 27px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.75 !important;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Specialities hero: mixed source aspect ratios remain fully legible */





.showcase-float-card {
  left: auto !important;
  right: 18px !important;
  bottom: 18px !important;
  max-width: 220px !important;
  padding: .72rem .84rem !important;
  border: 1px solid rgba(9,80,139,.12) !important;
  background: rgba(255,255,255,.94) !important;
}

/* Contact readability / contrast */
.contact-cards { gap: .72rem !important; }
.contact-card,
.awl-item {
  align-items: flex-start !important;
  border-color: #dde8ee !important;
  background: linear-gradient(180deg,#fff,#fbfdff) !important;
  box-shadow: 0 10px 25px rgba(11,62,94,.07) !important;
}
.contact-card:nth-child(1), .awl-item:nth-child(1) { border-left:4px solid #2778d3 !important; }
.contact-card:nth-child(2), .awl-item:nth-child(2) { border-left:4px solid #19a27f !important; }
.contact-card:nth-child(3), .awl-item:nth-child(3) { border-left:4px solid #7661d5 !important; }
.contact-card:nth-child(4), .awl-item:nth-child(4) { border-left:4px solid #df9a32 !important; }
.contact-card:nth-child(5), .awl-item:nth-child(5) { border-left:4px solid #db4d5b !important; }
.cc-icon,.awl-icon {
  width: 42px !important;
  height: 42px !important;
  flex: 0 0 42px !important;
  border-radius: 13px !important;
}
.cc-icon svg,.awl-icon svg { width: 20px !important; height: 20px !important; fill:none; stroke:currentColor; }
.contact-card h3,.awl-item strong { font-size:.9rem !important; color:var(--navy) !important; }
.contact-card p,.awl-item p,.cc-body { font-size:.78rem !important; line-height:1.55 !important; color:#596f80 !important; }
.cc-body a:not(.btn) { color:#176fa8 !important; font-weight:700; }
.cc-body a.btn,
.cc-body .btn-primary,
.cc-body .btn-wa,
.cc-body .btn-danger { color:#fff !important; }
.contact-card.emergency-card { background:linear-gradient(180deg,#fff6f7,#fff) !important; border-color:#efc9ce !important; }
.contact-card.emergency-card .cc-icon { background:#d94f5d !important; }
.contact-card.emergency-card .btn-danger {
  background:#c93d4b !important;
  border-color:#c93d4b !important;
  color:#fff !important;
  font-size:.75rem !important;
}
.visiting-hours {
  padding: 1.25rem !important;
  border:1px solid #dbe8ee !important;
  background:linear-gradient(180deg,#fff,#f9fcfe) !important;
  box-shadow:0 10px 26px rgba(11,62,94,.06) !important;
}
.visiting-hours h3 { margin-bottom:.9rem !important; }
.vh-grid { display:grid !important; grid-template-columns:1fr !important; gap:.65rem !important; }
.vh-item {
  display:grid !important;
  grid-template-columns:minmax(125px,.36fr) minmax(0,1fr) !important;
  align-items:center !important;
  gap:.2rem 1rem !important;
  padding:.78rem .9rem !important;
  border:1px solid #e1eaf0 !important;
  border-radius:12px !important;
  background:#fff !important;
}
.vh-item span { grid-row:1 / 3; font-size:.72rem !important; font-weight:800; color:#46697e; }
.vh-item strong { font-size:.8rem !important; color:var(--navy); }
.vh-item small { font-size:.71rem !important; color:#7a909d; }

/* Testimonials */
.testimonial-page-hero,.feedback-page-hero { background:linear-gradient(135deg,#eef6ff 0%,#fff 55%,#edf9f3) !important; }
.testimonial-page-hero .page-hero-content,
.testimonial-page-hero h1,
.testimonial-page-hero p,
.testimonial-page-hero .breadcrumb,
.testimonial-page-hero .page-hero-eyebrow { color:var(--navy) !important; }
.testimonial-review-track { grid-auto-columns:minmax(320px,32.5%) !important; gap:14px !important; }
.testimonial-review-card {
  height:372px !important;
  min-height:372px !important;
  max-height:372px !important;
  padding:1.18rem !important;
}
.testimonial-review-card blockquote { font-size:.9rem !important; line-height:1.72 !important; }

/* Footer */
.site-footer { background:linear-gradient(180deg,#061f36,#072641 62%,#061c30) !important; }
.footer-grid { gap:30px !important; padding:52px 0 40px !important; }
.footer-brand-badge { width:44px !important; height:44px !important; border-radius:13px !important; }
.footer-brand-icon { width:31px !important; height:31px !important; }
.footer-title { font-size:1.16rem !important; }
.footer-desc { max-width:420px !important; font-size:.82rem !important; line-height:1.72 !important; }
.footer-contact-mini,.footer-links a,.footer-emergency p { font-size:.78rem !important; }
.footer-links h4 { font-size:.88rem !important; }
.footer-links ul { gap:.48rem !important; }
.footer-emerg-btn,.footer-wa-btn { padding:.5rem .72rem !important; border-radius:10px !important; font-size:.76rem !important; }
.footer-social-link { width:34px !important; height:34px !important; border-radius:10px !important; background:rgba(255,255,255,.08) !important; }
.footer-bottom { padding:16px 0 !important; }
.footer-bottom .container { font-size:.72rem !important; color:#8aa1af !important; }

@media (max-width: 1080px) {
  .site-header .brand-logo-img { width:180px !important; max-width:25vw !important; }
  .nav-link { padding:.52rem .5rem !important; font-size:.78rem !important; }
  .home-doctor-promo-card { flex-basis:290px !important; width:290px !important; }
}
@media (max-width: 900px) {
  :root { --header-h:66px; }
  .site-header .brand-logo-img { width:166px !important; max-width:38vw !important; max-height:59px !important; }
  .main-nav { background:#fff !important; }
  .main-nav .nav-link { color:#29485c !important; background:transparent !important; }
  .main-nav .nav-link:hover,.main-nav .nav-link.active { color:var(--brand-blue) !important; background:#edf6ff !important; }
  .home-specialist-heading { align-items:center; }
  
}
@media (max-width: 720px) {
  :root { --topbar-h:36px; --header-h:62px; }
  .site-header .brand-logo-img { width:150px !important; max-width:46vw !important; max-height:54px !important; }
  .patient-quick-actions { padding-top:14px !important; }
  .home-specialist-heading { align-items:flex-end; }
  .home-specialist-heading .section-sub { max-width:520px; }
  .home-doctor-carousel-controls button { width:38px;height:38px; }
  .home-doctor-promo-card { flex-basis:min(76vw,300px) !important; width:min(76vw,300px) !important; }
  
  .showcase-float-card { display:none !important; }
  .vh-item { grid-template-columns:1fr !important; gap:.18rem !important; }
  .vh-item span { grid-row:auto; }
  .testimonial-review-card { height:340px !important; min-height:340px !important; max-height:340px !important; }
}
@media (max-width: 430px) {
  .home-specialist-heading { align-items:flex-start; }
  .home-doctor-carousel-controls { display:none; }
  .site-header .brand-logo-img { width:142px !important; max-width:48vw !important; }
}

/* === v0 final polish: legibility, portrait quality, speciality/facility corrections === */

/* Appointment emergency card must remain legible on the light emergency surface. */
.appt-emergency-box {
  padding: 1.08rem 1.12rem !important;
  background: linear-gradient(145deg,#fff4f5 0%,#fff 100%) !important;
  border: 1px solid #efcbd0 !important;
  box-shadow: 0 12px 28px rgba(151,55,68,.08) !important;
}
.appt-emergency-box .aeb-label {
  color: #a63243 !important;
  font-weight: 850 !important;
  letter-spacing: .08em !important;
}
.appt-emergency-box p {
  color: #6e5860 !important;
  font-size: .84rem !important;
  line-height: 1.55 !important;
  margin-bottom: .85rem !important;
}
.appt-emergency-box .btn,
.appt-emergency-box .btn-primary {
  background: linear-gradient(135deg,#cf4251,#b92f42) !important;
  border-color: #c43c4c !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(190,52,70,.20) !important;
}
.appt-emergency-box .btn:hover { transform: translateY(-2px); }

/* Specialities slider: override old display:none/cover rules so every source image is fully visible. */




/* Public doctor directory: larger, sharper portrait presence with a consistent passport ratio. */
.dc-header {
  grid-template-columns: 104px minmax(0,1fr) !important;
  gap: 14px !important;
  min-height: 148px;
}
.dc-photo,.dc-avatar {
  width: 104px !important;
  height: 130px !important;
  border-radius: 16px !important;
  object-fit: cover !important;
  object-position: center 18% !important;
  border: 1px solid #d7e5ec !important;
  box-shadow: 0 9px 22px rgba(15,73,108,.10);
  background: linear-gradient(180deg,#edf6fa,#e6f0f5) !important;
}
.dc-photo { image-rendering: auto; }
.doctor-card {
  border-color: #d9e6ec !important;
  box-shadow: 0 12px 30px rgba(10,63,96,.08) !important;
}
.doctor-card::after {
  content:"";
  position:absolute;
  right:-54px;
  top:24px;
  width:105px;
  height:105px;
  border-radius:50%;
  background: color-mix(in srgb,var(--doctor-accent) 7%,transparent);
  pointer-events:none;
}
.doctor-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 18px 38px rgba(10,63,96,.13) !important;
}

/* Stronger, instantly recognizable differentiator icons. */
.why-card {
  border-top: 3px solid var(--why-accent) !important;
}
.why-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 17px !important;
  color: #fff !important;
  background: linear-gradient(145deg,var(--why-accent),color-mix(in srgb,var(--why-accent) 78%,#092f50)) !important;
  border: 0 !important;
  box-shadow: 0 12px 26px color-mix(in srgb,var(--why-accent) 24%,transparent) !important;
}
.why-icon svg {
  width: 30px !important;
  height: 30px !important;
  stroke-width: 1.9 !important;
  color:#fff !important;
}
.why-card h3 { color: var(--navy) !important; }

/* Facilities summary cards: override legacy white text on white surface. */
.fac-stats-section,
.fac-stats-section.section-soft-blue {
  background: linear-gradient(180deg,#f1f8fc 0%,#fff 100%) !important;
}
.fac-stat {
  position: relative;
  overflow: hidden;
  min-height: 132px !important;
  color: var(--navy) !important;
  background: linear-gradient(145deg,#fff 0%,#f9fcfe 100%) !important;
  border-top: 3px solid var(--fac) !important;
}
.fac-stat::after {
  content:"";
  position:absolute;
  right:-28px;
  top:-28px;
  width:84px;
  height:84px;
  border-radius:50%;
  background: color-mix(in srgb,var(--fac) 9%,transparent);
}
.fac-stat .fs-num {
  color: var(--navy) !important;
  font-size: 1.28rem !important;
  line-height: 1.25 !important;
}
.fac-stat .fs-label {
  color: #667f8e !important;
  font-size: .74rem !important;
  line-height: 1.45 !important;
  letter-spacing: .02em !important;
  text-transform: none !important;
}
.fs-icon { color: var(--fac) !important; }
.fs-icon svg { stroke: currentColor !important; }

@media (max-width: 720px) {
  .dc-header { grid-template-columns: 86px minmax(0,1fr) !important; }
  .dc-photo,.dc-avatar { width:86px !important;height:108px !important; }
}



/* Use one breakpoint model for desktop/tablet navigation so menu controls never disappear. */
@media (min-width: 1101px) {
  .hamburger { display: none !important; }
  .main-nav {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .nav-list { flex-direction: row !important; align-items: center !important; }
}

@media (max-width: 1100px) {
  :root { --topbar-h: 38px; --header-h: 68px; }
  .header-cta { display: none !important; }
  .hamburger {
    display: flex !important;
    margin-left: auto !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;
    border-radius: 12px !important;
  }
  .hamburger span { width: 21px !important; height: 2px !important; }
  .main-nav {
    position: fixed !important;
    top: calc(var(--topbar-h) + var(--header-h) + 8px) !important;
    left: 14px !important;
    right: 14px !important;
    width: auto !important;
    max-height: calc(100dvh - var(--topbar-h) - var(--header-h) - 28px) !important;
    overflow-y: auto !important;
    padding: .72rem !important;
    border: 1px solid #d9e6ec !important;
    border-radius: 17px !important;
    background: rgba(255,255,255,.985) !important;
    box-shadow: 0 18px 46px rgba(8,44,72,.18) !important;
    transform: translateY(-10px) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    z-index: 1200 !important;
  }
  .main-nav.open {
    transform: translateY(0) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .nav-list { flex-direction: column !important; align-items: stretch !important; gap: 4px !important; }
  .main-nav .nav-link {
    display: block !important;
    width: 100% !important;
    padding: .72rem .78rem !important;
    border-radius: 10px !important;
    color: #29485c !important;
    background: transparent !important;
    font-size: .88rem !important;
  }
  .main-nav .nav-link:hover,
  .main-nav .nav-link.active { color: var(--brand-blue) !important; background: #edf6ff !important; }
  body.nav-open { overflow: hidden; }
  .site-header .brand-logo-img { width: 176px !important; max-width: 42vw !important; max-height: 58px !important; }
  .top-social-links { display: none !important; }
  .top-bar-copy { font-size: .7rem !important; }
  .top-bar-inner { gap: .45rem !important; }
  .top-bar-actions { margin-left: auto !important; }
  .hero, .page-hero{ margin-top: calc(var(--topbar-h) + var(--header-h)) !important; }
}

@media (max-width: 720px) {
  :root { --topbar-h: 36px; --header-h: 62px; }
  .container { width: min(calc(100% - 24px), var(--page-max)) !important; }
  .top-bar { height: var(--topbar-h) !important; min-height: var(--topbar-h) !important; padding: 0 !important; }
  .top-bar-copy { display: none !important; }
  .top-bar-inner { height: var(--topbar-h) !important; min-height: var(--topbar-h) !important; justify-content: center !important; }
  .top-bar-actions { width: 100% !important; justify-content: center !important; gap: .25rem !important; }
  .top-call-badge { min-width: 0 !important; flex: 0 1 auto !important; min-height: 26px !important; padding: .18rem .4rem !important; border-radius: 8px !important; }
  .top-call-text { font-size: .58rem !important; white-space: nowrap !important; }
  .top-call-icon,.top-call-icon svg { width: 12px !important; height: 12px !important; }
  .site-header .brand-logo-img { width: 150px !important; max-width: 48vw !important; max-height: 52px !important; }
  .hamburger { flex-basis: 38px !important; width: 38px !important; height: 38px !important; }
  .main-nav { left: 10px !important; right: 10px !important; }
  .section { padding: 42px 0 !important; }
  
  
  
  
  
  .page-hero { padding: 40px 0 36px !important; }
  .patient-quick-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .why-grid { grid-template-columns: 1fr !important; }
  .why-card { min-height: 0 !important; }
  .trust-action-grid { grid-template-columns: 1fr !important; }
  .home-facility-grid { gap: 26px !important; }
  .home-facility-mosaic { grid-template-rows: 128px 128px !important; }
  .footer-grid { grid-template-columns: 1fr !important; }
  .footer-grid > div { grid-column: auto !important; }
}

/* Specialities hero: only one slide is visible at a time, with the source artwork fully contained. */








.showcase-float-card { z-index: 7 !important; }
@media (max-width: 900px) {  }
@media (max-width: 720px) {
  
  
  
  
  .showcase-float-card { display: none !important; }
}

/* Doctor cards: give portraits enough visual weight on desktop without making cards oversized. */
.doctors-full-grid { align-items: stretch !important; }
.doctor-card { overflow: hidden !important; }
.dc-header {
  grid-template-columns: 122px minmax(0,1fr) !important;
  gap: 15px !important;
  min-height: 174px !important;
  padding: 1.05rem 1rem .9rem !important;
}
.doctor-image-trigger { width: 122px !important; height: 152px !important; display: block !important; border-radius: 17px !important; overflow: hidden !important; }
.dc-photo,.dc-avatar {
  width: 122px !important;
  height: 152px !important;
  border-radius: 17px !important;
  object-fit: cover !important;
  object-position: center 16% !important;
  image-rendering: auto !important;
  transform: translateZ(0);
  backface-visibility: hidden;
}
.dc-name { font-size: 1rem !important; line-height: 1.28 !important; }
.dc-qual { font-size: .76rem !important; }
.dc-specialty { font-size: .76rem !important; }
.dc-languages { font-size: .7rem !important; }
.doctor-card:hover .dc-photo { transform: scale(1.025) translateZ(0) !important; transition: transform .28s ease !important; }
@media (max-width: 1080px) {
  .dc-header { grid-template-columns: 108px minmax(0,1fr) !important; min-height: 158px !important; }
  .doctor-image-trigger,.dc-photo,.dc-avatar { width: 108px !important; height: 135px !important; }
}
@media (max-width: 720px) {
  .dc-header { grid-template-columns: 90px minmax(0,1fr) !important; min-height: 132px !important; gap: 12px !important; padding: .9rem !important; }
  .doctor-image-trigger,.dc-photo,.dc-avatar { width: 90px !important; height: 112px !important; border-radius: 14px !important; }
  .dc-name { font-size: .92rem !important; }
}

/* Stronger, recognisable differentiator icons and softly tinted cards. */
.why-card {
  border-top: 4px solid var(--why-accent, var(--brand-blue)) !important;
  background: linear-gradient(145deg, var(--why-soft,#f5f9fd) 0%, #fff 58%) !important;
}
.why-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 18px !important;
  color: var(--why-accent) !important;
  background: #fff !important;
  box-shadow: 0 10px 24px color-mix(in srgb,var(--why-accent) 13%,transparent) !important;
}
.why-icon svg { width: 31px !important; height: 31px !important; stroke-width: 2.05 !important; }

/* Motion is restrained and directional; it never affects layout dimensions. */
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .48s ease, transform .48s cubic-bezier(.2,.7,.2,1), box-shadow .22s ease, border-color .22s ease !important;
}
@media (min-width: 721px) {
  .reveal-on-scroll.reveal-from-left { transform: translate3d(-16px,12px,0); }
  .reveal-on-scroll.reveal-from-right { transform: translate3d(16px,12px,0); }
}
.reveal-on-scroll.in-view,
.reveal-on-scroll.reveal-from-left.in-view,
.reveal-on-scroll.reveal-from-right.in-view { opacity: 1; transform: translate3d(0,0,0); }

@media (prefers-reduced-motion: reduce) {
  .reveal-on-scroll,.reveal-on-scroll.reveal-from-left,.reveal-on-scroll.reveal-from-right { opacity: 1 !important; transform: none !important; }
}

/* Final small-screen composition pass: keep cards readable rather than squeezing desktop grids. */
@media (max-width: 560px) {
  .fac-grid,
  .values-grid,
  .fac-list-grid,
  .digital-features,
  .digital-visual,
  .about-highlight-box { grid-template-columns: 1fr !important; }
  .fac-card,.value-card { min-height: 0 !important; }
  .facility-photo-grid {
    grid-template-columns: 1fr !important;
    grid-template-rows: 190px 120px 120px 120px !important;
  }
  .facility-photo-main,
  .facility-photo-grid figure,
  .facility-photo-grid figure:nth-child(4) {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  .patient-quick-card { min-height: 102px !important; }
  .home-facility-mosaic {
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: 175px 110px !important;
  }
  .home-facility-mosaic .hfm-large { grid-column: 1 / 3; grid-row: 1 !important; }
  .home-facility-mosaic figure:not(.hfm-large) { grid-row: 2 !important; }
  .facility-mini-stats { grid-template-columns: 1fr 1fr 1fr !important; }
  .appt-layout,.contact-layout { gap: 16px !important; }
}
@media (max-width: 380px) {
  .patient-quick-grid,.specialities-grid { grid-template-columns: 1fr !important; }
  .facility-mini-stats { grid-template-columns: 1fr !important; }
  .top-call-text { font-size: .54rem !important; }
  .site-header .brand-logo-img { width: 142px !important; }
}

/* === Responsive density + Testimonials refinement === */
@media (max-width: 720px) {
  :root { --topbar-h: 30px !important; --header-h: 58px !important; }
  .top-bar { height: 30px !important; min-height: 30px !important; }
  .top-bar-inner { height: 30px !important; min-height: 30px !important; padding: 0 !important; }
  .top-bar-actions { justify-content: center !important; width: 100% !important; gap: .3rem !important; }
  .top-call-badge { min-height: 23px !important; padding: .12rem .38rem !important; border-radius: 7px !important; }
  .top-call-text { font-size: 0 !important; line-height: 1 !important; }
  .top-call-text strong { font-size: .59rem !important; letter-spacing: .01em; }
  .top-call-icon,.top-call-icon svg { width: 11px !important; height: 11px !important; }
  .header-inner { gap: .45rem !important; }
  .site-header .brand-logo-img { width: 146px !important; max-width: 46vw !important; max-height: 48px !important; }
  .hamburger { width: 36px !important; height: 36px !important; flex-basis: 36px !important; }
  .main-nav { top: calc(var(--topbar-h) + var(--header-h) + 6px) !important; }
}
@media (max-width: 420px) {
  :root { --topbar-h: 28px !important; --header-h: 56px !important; }
  .top-bar,.top-bar-inner { height: 28px !important; min-height: 28px !important; }
  .top-call-badge { min-height: 21px !important; padding: .1rem .3rem !important; }
  .top-call-text strong { font-size: .54rem !important; }
  .site-header .brand-logo-img { width: 136px !important; max-width: 47vw !important; }
}

/* Testimonials: one balanced media stage, compact story selector, readable reviews. */
.testimonial-video-section { padding-top: 52px !important; padding-bottom: 60px !important; background: linear-gradient(180deg,#fff 0%,#fbfdff 100%) !important; }
.testimonial-wide-container { max-width: 1180px !important; }
.testimonial-section-head { max-width: 720px; margin: 0 auto 1.55rem !important; }
.testimonial-section-head .section-title { font-size: clamp(1.75rem,3vw,2.45rem) !important; margin-bottom: .55rem !important; }
.testimonial-section-head .section-sub { font-size: .94rem !important; line-height: 1.65 !important; }
.testimonial-player-layout {
  display: grid !important;
  grid-template-columns: minmax(0,1.5fr) minmax(300px,.72fr) !important;
  gap: 18px !important;
  align-items: stretch !important;
  max-width: 1120px;
  margin: 0 auto;
}
.testimonial-main-player,
.testimonial-playlist-panel {
  border: 1px solid #dce8ee !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: 0 16px 42px rgba(12,61,92,.09) !important;
  overflow: hidden !important;
}
.testimonial-main-player { min-width: 0; }
.testimonial-iframe-frame {
  display: grid !important;
  place-items: center !important;
  width: 100%;
  aspect-ratio: 16 / 9 !important;
  min-height: 0 !important;
  background: radial-gradient(circle at 50% 45%,#183549,#071925 72%) !important;
  overflow: hidden;
}
.testimonial-iframe-wrap {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  background: #071925;
}
.testimonial-iframe-wrap iframe { width: 100% !important; height: 100% !important; max-width: none !important; border: 0 !important; display: block !important; }
.testimonial-iframe-wrap.is-short {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  background: #071925 !important;
}
.testimonial-iframe-wrap.is-short iframe { width: 100% !important; max-width: none !important; margin: 0 !important; }
.testimonial-player-caption {
  min-height: 76px;
  padding: .9rem 1.05rem 1rem !important;
  border-top: 1px solid #e4edf1;
  background: linear-gradient(180deg,#fff,#fbfdfe);
}
.testimonial-player-caption h3 { margin: .35rem 0 0 !important; font-size: 1rem !important; line-height: 1.4 !important; color: #183c52 !important; }
.testimonial-video-badge { font-size: .62rem !important; padding: .28rem .5rem !important; border-radius: 999px !important; }
.testimonial-playlist-panel { max-height: 500px !important; display: flex !important; flex-direction: column !important; }
.testimonial-playlist-heading {
  min-height: 66px;
  padding: .8rem .9rem !important;
  border-bottom: 1px solid #e2ebef;
  background: linear-gradient(135deg,#f2f9fd,#f4fbf8) !important;
}
.testimonial-playlist-heading span { font-size: .66rem !important; letter-spacing: .07em !important; }
.testimonial-playlist-heading strong { font-size: .82rem !important; line-height: 1.35 !important; }
.testimonial-video-controls button { width: 32px !important; height: 32px !important; border-radius: 9px !important; }
.testimonial-playlist { flex: 1 1 auto !important; min-height: 0 !important; max-height: none !important; overflow-y: auto !important; padding: .55rem !important; gap: .45rem !important; }
.testimonial-playlist-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: .65rem !important;
  min-height: 76px !important;
  padding: .5rem !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  background: #fff !important;
  text-align: left !important;
}
.testimonial-playlist-item:hover { background: #f7fbfd !important; border-color: #d9e8ef !important; transform: none !important; }
.testimonial-playlist-item.active { background: linear-gradient(135deg,#edf7ff,#eefaf5) !important; border-color: #bfdeea !important; box-shadow: inset 3px 0 #1488b5 !important; }
.testimonial-thumbnail { width: 104px !important; height: 61px !important; flex: 0 0 104px !important; border-radius: 9px !important; overflow: hidden !important; }
.testimonial-playlist-copy strong { font-size: .78rem !important; line-height: 1.35 !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.testimonial-playlist-copy small { font-size: .66rem !important; }

.testimonial-review-section { padding-top: 56px !important; padding-bottom: 62px !important; }
.testimonial-review-heading { margin-bottom: 1.2rem !important; }
.testimonial-review-heading .section-title { font-size: clamp(1.65rem,2.8vw,2.3rem) !important; margin-bottom: .45rem !important; }
.testimonial-review-heading .section-sub { font-size: .9rem !important; margin-bottom: 0 !important; }
.testimonial-review-track {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: calc((100% - 28px)/3) !important;
  gap: 14px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory;
  padding: 3px 2px 12px !important;
}
.testimonial-review-card {
  scroll-snap-align: start;
  height: 448px !important;
  min-height: 448px !important;
  max-height: 448px !important;
  padding: 1.2rem !important;
  border-radius: 18px !important;
  display: flex !important;
  flex-direction: column !important;
  border-top: 4px solid #2a86c7 !important;
  background: linear-gradient(155deg,#fff,#f9fcfe 72%) !important;
}
.testimonial-review-card:nth-child(3n/**/+2) { border-top-color:#1aa68b !important; }
.testimonial-review-card:nth-child(3n/**/+3) { border-top-color:#755fd3 !important; }
.testimonial-review-card blockquote {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  margin: .9rem 0 1rem !important;
  padding-right: .25rem;
  font-size: .89rem !important;
  line-height: 1.7 !important;
}
.testimonial-review-person { flex: 0 0 auto; }
.testimonial-source-link { flex: 0 0 auto; margin-top: .75rem !important; }

@media (max-width: 980px) {
  .testimonial-player-layout { grid-template-columns: 1fr !important; max-width: 800px; }
  .testimonial-playlist-panel { max-height: none !important; }
  .testimonial-playlist-heading { min-height: 58px; }
  .testimonial-playlist { display: grid !important; grid-auto-flow: column !important; grid-auto-columns: minmax(250px,38%) !important; overflow-x: auto !important; overflow-y: hidden !important; padding: .6rem !important; }
  .testimonial-playlist-item { min-height: 82px !important; scroll-snap-align: start; }
  .testimonial-review-track { grid-auto-columns: minmax(300px,48%) !important; }
}
@media (max-width: 640px) {
  .testimonial-page-hero { padding: 34px 0 !important; }
  .testimonial-hero-icon { width: 42px !important; height: 42px !important; }
  .testimonial-page-hero h1 { font-size: clamp(1.8rem,9vw,2.45rem) !important; }
  .testimonial-video-section { padding-top: 38px !important; padding-bottom: 46px !important; }
  .testimonial-section-head { margin-bottom: 1.1rem !important; }
  .testimonial-main-player,.testimonial-playlist-panel { border-radius: 16px !important; }
  .testimonial-iframe-wrap.is-short { width: 100% !important; }
  .testimonial-player-caption { min-height: 68px; padding: .75rem .85rem .85rem !important; }
  .testimonial-player-caption h3 { font-size: .9rem !important; }
  .testimonial-playlist { grid-auto-columns: 82% !important; }
  .testimonial-thumbnail { width: 92px !important; height: 56px !important; flex-basis: 92px !important; }
  .testimonial-review-section { padding-top: 42px !important; padding-bottom: 48px !important; }
  .testimonial-review-track { grid-auto-columns: 88% !important; }
  .testimonial-review-card { height: 430px !important; min-height: 430px !important; max-height: 430px !important; }
}

/* === Public icon + hero image presentation refinement === */
/* Content icons use a light clinical tile with a high-contrast line icon instead of a heavy solid block. */
.pqa-icon,.ac-icon,.sc-icon,.sfc-icon,.why-icon,.fs-icon,.facc-icon,.fli-icon,.vm-icon,.value-emoji,.apart-icon,.awl-icon,.cc-icon,.trust-action-icon {
  --icon-accent: var(--brand);
  display: grid !important;
  place-items: center !important;
  color: var(--icon-accent) !important;
  background: color-mix(in srgb,var(--icon-accent) 11%,#fff) !important;
  border: 1px solid color-mix(in srgb,var(--icon-accent) 23%,#fff) !important;
  box-shadow: 0 8px 20px color-mix(in srgb,var(--icon-accent) 10%,transparent) !important;
}
.pqa-icon svg,.ac-icon svg,.sc-icon svg,.sfc-icon svg,.why-icon svg,.fs-icon svg,.facc-icon svg,.fli-icon svg,.vm-icon svg,.value-emoji svg,.apart-icon svg,.awl-icon svg,.cc-icon svg,.trust-action-icon svg {
  width: 54% !important;
  height: 54% !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  vector-effect: non-scaling-stroke;
}
.patient-quick-card .pqa-icon { --icon-accent: var(--card-accent); }
.about-card .ac-icon { --icon-accent: var(--ac); }
.specialty-card .sc-icon { --icon-accent: var(--spec); }
.service-full-card .sfc-icon { --icon-accent: var(--svc); }
.why-card .why-icon { --icon-accent: var(--why-accent); }
.fac-stat .fs-icon,.fac-card .facc-icon { --icon-accent: var(--fac); }
.fac-list-item .fli-icon { --icon-accent: var(--fl); }
.vision-card .vm-icon { --icon-accent: var(--brand); }
.mission-card .vm-icon { --icon-accent: var(--mint); }
.value-card .value-emoji { --icon-accent: var(--val); }
.apart-item:nth-child(1) { --apart-accent:#2f7fd3; }
.apart-item:nth-child(2) { --apart-accent:#18a18c; }
.apart-item:nth-child(3) { --apart-accent:#755ed6; }
.apart-item:nth-child(4) { --apart-accent:#df8e2d; }
.apart-item .apart-icon { --icon-accent: var(--apart-accent); }
.awl-item:nth-child(1),.contact-card:nth-child(1) { --item-accent:#287bd5; }
.awl-item:nth-child(2),.contact-card:nth-child(2) { --item-accent:#16a28a; }
.awl-item:nth-child(3),.contact-card:nth-child(3) { --item-accent:#745dd5; }
.awl-item:nth-child(4),.contact-card:nth-child(4) { --item-accent:#df922d; }
.contact-card:nth-child(5) { --item-accent:#d94c5b; }
.awl-item .awl-icon,.contact-card .cc-icon { --icon-accent: var(--item-accent); }
.trust-action-card .trust-action-icon { --icon-accent: var(--sky); }
.trust-feedback .trust-action-icon { --icon-accent: var(--violet); }
.trust-location .trust-action-icon { --icon-accent: var(--mint); }

/* Keep clinical icons legible at a glance. */
.pqa-icon,.sc-icon,.sfc-icon,.facc-icon,.cc-icon,.awl-icon { min-width: 42px; min-height: 42px; }
.why-icon { width:58px !important;height:58px !important; }
.fs-icon { width:42px !important;height:42px !important; }
.fli-icon { width:42px !important;height:42px !important;flex:0 0 42px !important; }
.value-emoji,.vm-icon { width:48px !important;height:48px !important; }
.apart-icon { width:46px !important;height:46px !important;flex:0 0 46px !important; }
.service-full-card:hover .sfc-icon,.fac-card:hover .facc-icon,.fac-list-item:hover .fli-icon,.specialty-card:hover .sc-icon,.why-card:hover .why-icon {
  transform: translateY(-2px) scale(1.035);
  transition: transform .2s ease, background .2s ease, color .2s ease;
}

/* Digital facility badges sit on a dark surface, so use a translucent light tile. */
.dvb-icon {
  color: #a8f0df !important;
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(168,240,223,.24) !important;
  box-shadow: none !important;
}
.dvb-icon svg { fill:none !important;stroke:currentColor !important;stroke-width:1.8 !important;stroke-linecap:round;stroke-linejoin:round; }

/* Hero frames match the CMS recommended source ratios, so images fill the frame instead of floating inside it. */








@media (max-width: 760px) {
  
  
  .pqa-icon,.sc-icon,.sfc-icon,.facc-icon,.cc-icon,.awl-icon { min-width:38px;min-height:38px; }
}

/* === 2026-08-27 regression hardening: explicit interaction, contrast and state rules === */
:root {
  --focus-ring: #ffbf47;
  --focus-shadow: 0 0 0 4px rgba(255,191,71,.34);
  --disabled-bg: #edf2f5;
  --disabled-text: #7b8d99;
  --disabled-line: #d7e1e6;
}

/* Preserve readable foregrounds even when older component rules cascade underneath. */
.patient-quick-card,.service-full-card,.doctor-card,.fac-card,.facility-card,.why-card,
.specialty-card,.fac-stat,.value-card,.trust-action-card,.contact-card,.awl-item,
.testimonial-review-card,.feedback-invite-card,.about-card,.vm-card,.profile-content-card,
.department-info-card,.feedback-form-card,.related-doctor-card,.department-doctor-empty {
  color: var(--ink);
}
.patient-quick-card p,.service-full-card p,.doctor-card p,.fac-card p,.facility-card p,.why-card p,
.specialty-card p,.fac-stat p,.value-card p,.trust-action-card p,.contact-card p,.awl-item p,
.testimonial-review-card p,.feedback-invite-card p,.about-card p,.vm-card p,.profile-content-card p,
.department-info-card p,.feedback-form-card p,.related-doctor-card p,.department-doctor-empty p {
  color: var(--muted);
}

/* One predictable keyboard-focus language across navigation, CTAs, controls and cards. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid var(--focus-ring) !important;
  outline-offset: 3px !important;
  box-shadow: var(--focus-shadow) !important;
}
.btn:focus-visible,.nav-link:focus-visible,.doctor-filter-btn:focus-visible,.dc-appt-btn:focus-visible {
  border-color: #8b6100 !important;
}

/* Disabled controls must look disabled and remain legible. */
button:disabled,.btn:disabled,input:disabled,select:disabled,textarea:disabled,
.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled {
  opacity: 1 !important;
  cursor: not-allowed !important;
  color: var(--disabled-text) !important;
  background: var(--disabled-bg) !important;
  border-color: var(--disabled-line) !important;
  box-shadow: none !important;
  transform: none !important;
}
select option:disabled { color: #8b99a3; }

/* Primary and emergency actions have separate semantic treatments. */
.btn-emergency {
  color: #fff !important;
  background: linear-gradient(135deg,#b72f3b,#d24a55) !important;
  border: 1px solid #a82732 !important;
  box-shadow: 0 10px 24px rgba(183,47,59,.22) !important;
}
.btn-emergency:hover { background: linear-gradient(135deg,#a62531,#c33d49) !important; }

.clinical-emergency-callout {
  display: grid;
  gap: .3rem;
  margin: 1rem 0;
  padding: .9rem 1rem;
  border: 1px solid #efc5c9;
  border-left: 4px solid var(--danger);
  border-radius: 13px;
  background: #fff6f7;
}
.clinical-emergency-callout strong { color: #9f2732; }
.clinical-emergency-callout span { color: #5e4550; font-size: .82rem; line-height: 1.55; }
.department-doctor-empty {
  padding: 1rem;
  border: 1px dashed #b9d2dd;
  border-radius: 15px;
  background: #f8fbfc;
}
.department-doctor-empty h3 { margin: 0 0 .35rem; font-size: 1rem; }
.department-doctor-empty .profile-actions { margin-top: .8rem; }

.appointment-reference {
  display: inline-flex;
  margin: .65rem 0 0;
  padding: .42rem .65rem;
  border-radius: 9px;
  color: #145a49 !important;
  background: #e3f6ef;
  border: 1px solid #bce6d7;
  font-family: "Manrope","Inter",sans-serif;
  font-size: .78rem;
  font-weight: 800;
}

/* Images never bleed outside their intended component frame. */
img { max-width: 100%; }
.dc-photo, .doctor-profile-photo, .hero-slide-image, .facility-card img, .fac-card img, .testimonial-thumbnail img{ display: block; }

/* Keep controls comfortably tappable without inflating dense directory cards. */
.form-group input,.form-group select,.form-group textarea,.contact-form-mini input,
.contact-form-mini select,.contact-form-mini textarea { min-height: 48px !important; }
.btn:not(.btn-sm),.header-cta { min-height: 44px; }

/* Prevent fixed mobile utility dock from obscuring footer/forms. */
@media (max-width: 720px) {
  body { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
  .profile-actions { display: grid !important; grid-template-columns: 1fr !important; }
  .profile-actions .btn { width: 100%; }
  .clinical-emergency-callout { padding: .8rem .85rem; }
  .doctor-card,.service-full-card,.fac-card,.facility-card,.contact-card,.profile-content-card {
    border-radius: 16px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .btn,.doctor-card,.service-full-card,.fac-card,.facility-card,.specialty-card,
  .patient-quick-card,.hero-slide { transition: none !important; transform: none !important; }
}

.section-label, .eyebrow{ color:#087783; }

/* Accessible action colours: retain semantic green while meeting text contrast. */
.header-cta {
  background: linear-gradient(135deg,#2e7d32,#276f35) !important;
  border-color: rgba(255,255,255,.30) !important;
}
.header-cta:hover { background: linear-gradient(135deg,#286f2d,#205f2d) !important; }
.btn-wa,.footer-wa-btn,.floating-whatsapp {
  background: #12805c !important;
  color: #fff !important;
}
.btn-wa:hover,.footer-wa-btn:hover,.floating-whatsapp:hover { background:#0f6f50 !important; }


/* === Public full-width card, icon and showcase refinement === */
:root{
  --naam-page-max:1760px;
  --naam-gutter:clamp(18px,3.2vw,64px);
}
.container{
  width:min(calc(100% - (var(--naam-gutter) * 2)),var(--naam-page-max)) !important;
  max-width:none !important;
  margin-inline:auto !important;
  padding-inline:0 !important;
}
@media(max-width:640px){.container{width:calc(100% - 28px) !important;}}

/* Give wide screens the same deliberate use of space as the full-bleed photography. */
.header-inner{justify-content:space-between !important;}
.main-nav{margin-inline:auto !important;}
.nav-list{gap:clamp(10px,1.45vw,28px) !important;}
.section{padding-block:clamp(48px,5vw,82px) !important;}

/* Homepage specialist promotional carousel: equal-height, larger cards and no dead right-side composition. */
.home-specialist-heading{max-width:none !important;}
.home-doctor-carousel{--home-card-gap:clamp(14px,1.2vw,22px) !important;}
.home-doctor-carousel-track{min-width:100% !important;align-items:stretch !important;}
.home-doctor-promo-card{
  flex:0 0 clamp(250px,18vw,330px) !important;
  width:clamp(250px,18vw,330px) !important;
  border-radius:24px !important;
  border:1px solid #d8e6ed !important;
  box-shadow:0 16px 36px rgba(11,65,99,.10) !important;
}
.home-doctor-card-trigger,.home-doctor-card-image{height:100% !important;}
.home-doctor-card-image{aspect-ratio:4/5 !important;object-fit:cover !important;}
@media(min-width:1500px){.home-doctor-promo-card{flex-basis:clamp(270px,16.4vw,320px) !important;width:clamp(270px,16.4vw,320px) !important;}}
@media(max-width:820px){.home-doctor-promo-card{flex-basis:min(72vw,310px) !important;width:min(72vw,310px) !important;}}

/* Stronger, contemporary icon tiles. SVGs remain local and scalable. */
.pqa-icon,.ac-icon,.sc-icon,.sfc-icon,.why-icon,.fs-icon,.facc-icon,.fli-icon,.vm-icon,.value-emoji,.apart-icon,.awl-icon,.cc-icon,.trust-action-icon{
  position:relative !important;overflow:hidden !important;
  min-width:50px !important;min-height:50px !important;
  border-radius:16px !important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--icon-accent,var(--brand)) 17%,#fff),#fff 74%) !important;
  border:1px solid color-mix(in srgb,var(--icon-accent,var(--brand)) 32%,#fff) !important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--icon-accent,var(--brand)) 14%,transparent) !important;
}
.pqa-icon::after,.ac-icon::after,.sc-icon::after,.sfc-icon::after,.why-icon::after,.fs-icon::after,.facc-icon::after,.fli-icon::after,.vm-icon::after,.value-emoji::after,.apart-icon::after,.cc-icon::after{
  content:"";position:absolute;width:24px;height:24px;border-radius:999px;right:-8px;top:-8px;
  background:color-mix(in srgb,var(--icon-accent,var(--brand)) 17%,transparent);pointer-events:none;
}
.pqa-icon svg,.ac-icon svg,.sc-icon svg,.sfc-icon svg,.why-icon svg,.fs-icon svg,.facc-icon svg,.fli-icon svg,.vm-icon svg,.value-emoji svg,.apart-icon svg,.awl-icon svg,.cc-icon svg,.trust-action-icon svg{
  width:58% !important;height:58% !important;stroke-width:2 !important;filter:none !important;
}

/* Homepage speciality + differentiator cards: visible surfaces, restrained colour coding. */
.specialities-preview{background:linear-gradient(180deg,#f6fafc 0%,#eef6fa 100%) !important;}
.specialities-grid{gap:clamp(14px,1.25vw,22px) !important;}
.specialty-card{
  min-height:160px !important;padding:1.35rem !important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--spec) 9%,#fff) 0%,#fff 72%) !important;
  border:1px solid color-mix(in srgb,var(--spec) 22%,#dce7ec) !important;
  border-top:4px solid var(--spec) !important;
  box-shadow:0 12px 28px rgba(12,61,93,.08) !important;
}
.specialty-card::before{display:none !important;}.specialty-card::after{opacity:.75 !important;}
.sc-icon{width:56px !important;height:56px !important;margin-bottom:1.15rem !important;}
.sc-name{font-size:1rem !important;font-weight:850 !important;color:#16384d !important;}
.why-grid{gap:clamp(14px,1.25vw,22px) !important;}
.why-card{min-height:220px !important;padding:1.45rem !important;box-shadow:0 12px 30px rgba(12,61,93,.08) !important;}
.why-card h3{font-size:1.03rem !important;}.why-card p{font-size:.86rem !important;line-height:1.65 !important;color:#5b7381 !important;}

/* About page: readable cards and visibly distinct CTA. */
.vm-card,.value-card,.apart-item{
  background:linear-gradient(145deg,color-mix(in srgb,var(--icon-accent,#2c7ec4) 6%,#fff),#fff 70%) !important;
  border-color:#dce8ee !important;box-shadow:0 12px 30px rgba(12,61,93,.075) !important;
}
.values-grid{gap:clamp(12px,1.1vw,18px) !important;}
.value-card{min-height:265px !important;padding:1.25rem !important;}
.value-card:nth-child(1){--val:#df5870}.value-card:nth-child(2){--val:#d78a27}.value-card:nth-child(3){--val:#6656c8}.value-card:nth-child(4){--val:#2283c4}.value-card:nth-child(5){--val:#169578}
.value-emoji{--icon-accent:var(--val) !important;width:54px !important;height:54px !important;}
.value-card h3{font-size:.96rem !important;color:#17384d !important;}.value-card p{font-size:.78rem !important;line-height:1.62 !important;color:#5b7381 !important;}
.approach-cta{
  background:linear-gradient(135deg,#edf8ff 0%,#e8f8f2 100%) !important;
  border:1px solid #cfe4e8 !important;box-shadow:0 16px 34px rgba(9,68,96,.08) !important;
}
.approach-cta h3{color:#0b4f73 !important;font-size:1.5rem !important;}
.approach-cta p{color:#476978 !important;font-weight:600 !important;}

/* Specialities showcase: make the 1536x600 CMS artwork a hero, not a thumbnail. */







/* Facilities showcase: use the real <img> slide elements and cover the frame reliably. */






/* Colour-code dense public card collections while keeping clinical restraint. */
.services-full-grid .service-full-card,.fac-grid .fac-card,.fac-list-item,.contact-card{
  --surface-accent:#2c7ec4;
  background:linear-gradient(145deg,color-mix(in srgb,var(--surface-accent) 7%,#fff),#fff 72%) !important;
  border:1px solid color-mix(in srgb,var(--surface-accent) 20%,#dce7ec) !important;
  border-top:3px solid var(--surface-accent) !important;
}
.services-full-grid .service-full-card:nth-child(6n/**/+1),.fac-grid .fac-card:nth-child(6n/**/+1),.fac-list-item:nth-child(6n/**/+1),.contact-card:nth-child(6n/**/+1){--surface-accent:#2f7fd3}
.services-full-grid .service-full-card:nth-child(6n/**/+2),.fac-grid .fac-card:nth-child(6n/**/+2),.fac-list-item:nth-child(6n/**/+2),.contact-card:nth-child(6n/**/+2){--surface-accent:#159486}
.services-full-grid .service-full-card:nth-child(6n/**/+3),.fac-grid .fac-card:nth-child(6n/**/+3),.fac-list-item:nth-child(6n/**/+3),.contact-card:nth-child(6n/**/+3){--surface-accent:#705bc8}
.services-full-grid .service-full-card:nth-child(6n/**/+4),.fac-grid .fac-card:nth-child(6n/**/+4),.fac-list-item:nth-child(6n/**/+4),.contact-card:nth-child(6n/**/+4){--surface-accent:#d8892b}
.services-full-grid .service-full-card:nth-child(6n/**/+5),.fac-grid .fac-card:nth-child(6n/**/+5),.fac-list-item:nth-child(6n/**/+5),.contact-card:nth-child(6n/**/+5){--surface-accent:#d45164}
.services-full-grid .service-full-card:nth-child(6n/**/+6),.fac-grid .fac-card:nth-child(6n/**/+6),.fac-list-item:nth-child(6n/**/+6),.contact-card:nth-child(6n/**/+6){--surface-accent:#238fa8}
.service-full-card .sfc-icon,.fac-card .facc-icon,.fac-list-item .fli-icon,.contact-card .cc-icon{--icon-accent:var(--surface-accent) !important;}
.fac-stat:nth-child(1){--fac:#2f7fd3}.fac-stat:nth-child(2){--fac:#725bc8}.fac-stat:nth-child(3){--fac:#169578}.fac-stat:nth-child(4){--fac:#d45164}
.fac-stat{background:linear-gradient(145deg,color-mix(in srgb,var(--fac) 8%,#fff),#fff 72%) !important;border-top:3px solid var(--fac) !important;}

/* Emergency card receives an unmistakable healthcare-emergency treatment. */
.contact-card.emergency-card{--surface-accent:#c53d4d !important;background:linear-gradient(145deg,#fff2f3,#fff 72%) !important;border-color:#efcbd0 !important;}
.contact-card.emergency-card .cc-icon{width:58px !important;height:58px !important;}

@media(max-width:1180px){
  
  
}
@media(max-width:900px){
  
  
}
@media(max-width:640px){
  .specialty-card{min-height:132px !important;padding:1rem !important;}.sc-icon{width:48px !important;height:48px !important;}
  .why-card{min-height:0 !important;padding:1.05rem !important;}
  .value-card{min-height:0 !important;}
}

/* === Specialist carousel and healthcare card system === */
:root{
  --naam-card-blue:#2268d6;
  --naam-card-cyan:#0796b7;
  --naam-card-teal:#098a78;
  --naam-card-green:#2b8e5b;
  --naam-card-violet:#426f9c;
  --naam-card-magenta:#2a7f8f;
  --naam-card-coral:#3d8c72;
  --naam-card-amber:#6a954a;
}

/* Home specialist artwork: large 4:5 cards, no side filler, and no edge fade. */
.home-specialist-cards{
  background:linear-gradient(180deg,#f7fbfd 0%,#eef6fa 100%) !important;
  overflow:hidden !important;
}
.home-doctor-carousel{
  --home-card-gap:clamp(18px,1.45vw,28px) !important;
  position:relative !important;
  width:100% !important;
  overflow:visible !important;
}
.home-doctor-carousel::before,
.home-doctor-carousel::after{display:none !important;content:none !important;}
.home-doctor-carousel-viewport{
  width:100% !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  overscroll-behavior-x:contain !important;
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
  scroll-snap-type:none !important;
  scroll-padding-inline:0 !important;
  padding:10px 4px 30px !important;
  touch-action:pan-x pan-y !important;
}
.home-doctor-carousel-viewport::-webkit-scrollbar{display:none !important;}
.home-doctor-carousel-track{
  display:flex !important;
  align-items:stretch !important;
  gap:var(--home-card-gap) !important;
  width:max-content !important;
  min-width:0 !important;
  padding:0 !important;
}
.home-doctor-promo-card{
  position:relative !important;
  flex:0 0 clamp(350px,23vw,410px) !important;
  width:clamp(350px,23vw,410px) !important;
  aspect-ratio:4 / 5 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:24px !important;
  border:1px solid #cbdde6 !important;
  background:#fff !important;
  box-shadow:0 18px 42px rgba(10,57,88,.14) !important;
  scroll-snap-align:start !important;
  isolation:isolate !important;
  transform:translateZ(0) !important;
}
.home-doctor-card-trigger{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:inherit !important;
  background:#fff !important;
  overflow:hidden !important;
  cursor:pointer !important;
}
.home-doctor-card-image{
  display:block !important;
  width:100% !important;
  height:100% !important;
  aspect-ratio:4 / 5 !important;
  max-width:none !important;
  margin:0 !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:inherit !important;
  transform:scale(1.002) !important;
  transition:transform .42s cubic-bezier(.2,.75,.25,1),filter .42s ease !important;
}
.home-doctor-promo-card:hover,
.home-doctor-promo-card:focus-within{
  transform:translateY(-6px) !important;
  border-color:#9ec5d9 !important;
  box-shadow:0 24px 54px rgba(10,57,88,.19) !important;
}
.home-doctor-promo-card:hover .home-doctor-card-image,
.home-doctor-promo-card:focus-within .home-doctor-card-image{transform:scale(1.025) !important;}
.home-doctor-carousel-controls button{
  width:46px !important;height:46px !important;border-radius:15px !important;
  background:linear-gradient(145deg,#fff,#eef7fb) !important;
  border-color:#c9dfe9 !important;box-shadow:0 10px 24px rgba(10,57,88,.10) !important;
}
@media(min-width:1600px){
  .home-doctor-promo-card{flex-basis:clamp(350px,19vw,405px) !important;width:clamp(350px,19vw,405px) !important;}
}
@media(max-width:900px){
  .home-doctor-promo-card{flex-basis:min(78vw,350px) !important;width:min(78vw,350px) !important;border-radius:20px !important;}
  .home-doctor-carousel-viewport{padding-bottom:20px !important;}
}
@media(max-width:430px){
  .home-doctor-promo-card{flex-basis:min(84vw,330px) !important;width:min(84vw,330px) !important;}
}

/* Brand-coherent hospital palette. Cards select a restrained blue, teal or green pair. */
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.vm-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.trust-action-card,.doctor-card,.profile-content-card,.department-info-card,.feedback-question-card,.feedback-choice-card,.feedback-form-card,.feedback-invite-card,.testimonial-review-card,.related-doctor-card,.referral-card,.referral-consent-card){
  --naam-card-accent:var(--naam-card-blue);
  --naam-card-accent-2:var(--naam-card-cyan);
  position:relative !important;
  isolation:isolate !important;
  border:1px solid color-mix(in srgb,var(--naam-card-accent) 20%,#d9e5eb) !important;
  background:
    radial-gradient(circle at 92% 8%,color-mix(in srgb,var(--naam-card-accent-2) 12%,transparent) 0 15%,transparent 36%),
    linear-gradient(145deg,color-mix(in srgb,var(--naam-card-accent) 8%,#fff) 0%,#fff 56%,color-mix(in srgb,var(--naam-card-accent-2) 5%,#fff) 100%) !important;
  box-shadow:0 12px 30px rgba(13,59,84,.075) !important;
}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.vm-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.trust-action-card,.doctor-card,.profile-content-card,.department-info-card,.feedback-question-card,.feedback-choice-card,.feedback-invite-card,.testimonial-review-card,.related-doctor-card,.referral-card,.referral-consent-card)::after{
  content:"" !important;
  position:absolute !important;
  z-index:-1 !important;
  width:84px !important;height:84px !important;
  right:-34px !important;bottom:-40px !important;
  border-radius:999px !important;
  background:color-mix(in srgb,var(--naam-card-accent) 7%,transparent) !important;
  pointer-events:none !important;
}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.vm-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.trust-action-card,.doctor-card,.profile-content-card,.department-info-card,.feedback-question-card,.feedback-choice-card,.feedback-invite-card,.testimonial-review-card,.related-doctor-card,.referral-card,.referral-consent-card):hover,
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.vm-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.trust-action-card,.doctor-card,.profile-content-card,.department-info-card,.feedback-question-card,.feedback-choice-card,.feedback-invite-card,.testimonial-review-card,.related-doctor-card,.referral-card,.referral-consent-card):focus-within{
  border-color:color-mix(in srgb,var(--naam-card-accent) 36%,#c9d8df) !important;
  box-shadow:0 20px 44px color-mix(in srgb,var(--naam-card-accent) 12%,rgba(12,56,80,.08)) !important;
}

/* Palette assignment applies consistently inside every repeated card collection. */
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.testimonial-review-card,.related-doctor-card):nth-child(8n/**/+1){--naam-card-accent:#1768b5;--naam-card-accent-2:#159ab3;}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.testimonial-review-card,.related-doctor-card):nth-child(8n/**/+2){--naam-card-accent:#087f78;--naam-card-accent-2:#4aa95e;}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.testimonial-review-card,.related-doctor-card):nth-child(8n/**/+3){--naam-card-accent:#216da0;--naam-card-accent-2:#44a2b2;}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.testimonial-review-card,.related-doctor-card):nth-child(8n/**/+4){--naam-card-accent:#2f7e64;--naam-card-accent-2:#6ba846;}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.testimonial-review-card,.related-doctor-card):nth-child(8n/**/+5){--naam-card-accent:#0c5f96;--naam-card-accent-2:#1b87ab;}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.testimonial-review-card,.related-doctor-card):nth-child(8n/**/+6){--naam-card-accent:#1886a4;--naam-card-accent-2:#2aa69b;}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.testimonial-review-card,.related-doctor-card):nth-child(8n/**/+7){--naam-card-accent:#246fa2;--naam-card-accent-2:#55a3c0;}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.testimonial-review-card,.related-doctor-card):nth-child(8n/**/+8){--naam-card-accent:#318356;--naam-card-accent-2:#69a743;}

/* Preserve explicit clinical meaning where color itself communicates urgency/role. */
.contact-card.emergency-card{--naam-card-accent:#c63749 !important;--naam-card-accent-2:#e16b58 !important;background:linear-gradient(145deg,#fff0f2 0%,#fff 63%,#fff7f3 100%) !important;}
.vision-card{--naam-card-accent:#2670ca !important;--naam-card-accent-2:#24a1c0 !important;}
.mission-card{--naam-card-accent:#0b8b78 !important;--naam-card-accent-2:#55b967 !important;}

/* Card typography must always remain readable against the colored surfaces. */
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.vm-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.trust-action-card,.doctor-card,.profile-content-card,.department-info-card,.feedback-question-card,.feedback-choice-card,.feedback-invite-card,.testimonial-review-card,.related-doctor-card) :is(h2,h3,strong,.sc-name,.fs-label){color:#16384d !important;}
:is(.patient-quick-card,.about-card,.specialty-card,.why-card,.vm-card,.value-card,.apart-item,.service-full-card,.fac-stat,.fac-card,.fac-list-item,.contact-card,.awl-item,.trust-action-card,.profile-content-card,.department-info-card,.feedback-question-card,.feedback-choice-card,.feedback-invite-card,.testimonial-review-card) :is(p,small){color:#536f7f !important;}
.service-full-card .service-card-link{color:#075f8b !important;font-weight:800 !important;}

/* Dynamic doctor/profile cards keep photography prominent but use the same surface language. */
.doctor-card,.related-doctor-card,.profile-content-card,.department-info-card{--naam-card-accent:#176f9f;--naam-card-accent-2:#1aa18d;}
.doctor-card{overflow:hidden !important;}
.doctor-card .dc-photo{transition:transform .35s ease !important;}
.doctor-card:hover .dc-photo{transform:scale(1.025) !important;}

/* Feedback and testimonial cards: keep forms calm, but align the surrounding visual language. */
.feedback-form-card{--naam-card-accent:#176f9f;--naam-card-accent-2:#1aa18d;background:linear-gradient(145deg,#f8fcfe,#fff 60%,#f4fbf8) !important;}
.feedback-question-card{--naam-card-accent:#6b57c8;--naam-card-accent-2:#1aa18d;}
.feedback-choice-card{--naam-card-accent:#176f9f;--naam-card-accent-2:#1aa18d;}
.feedback-invite-card{--naam-card-accent:#0b7b98;--naam-card-accent-2:#2aa96f;}

@media(max-width:640px){
  :is(.pqa-icon,.ac-icon,.sc-icon,.sfc-icon,.why-icon,.fs-icon,.facc-icon,.fli-icon,.vm-icon,.value-emoji,.apart-icon,.awl-icon,.cc-icon,.trust-action-icon,.feedback-invite-icon,.choice-icon){width:52px !important;height:52px !important;min-width:52px !important;min-height:52px !important;border-radius:16px !important;padding:9px !important;}
}
@media(prefers-reduced-motion:reduce){
  .home-doctor-card-image,
  :is(.pqa-icon,.ac-icon,.sc-icon,.sfc-icon,.why-icon,.fs-icon,.facc-icon,.fli-icon,.vm-icon,.value-emoji,.apart-icon,.awl-icon,.cc-icon,.trust-action-icon,.feedback-invite-icon,.choice-icon){transition:none !important;}
}

/* Secondary public icon/card language. */
:is(.value-chip,.dv-badge,.vh-item,.feedback-language-bar,.feedback-success-card,.success-msg){
  --naam-card-accent:#176f9f;
  --naam-card-accent-2:#1aa18d;
  position:relative !important;
  border:1px solid color-mix(in srgb,var(--naam-card-accent) 20%,#d8e4ea) !important;
  background:
    radial-gradient(circle at 92% 12%,color-mix(in srgb,var(--naam-card-accent-2) 11%,transparent) 0 17%,transparent 36%),
    linear-gradient(145deg,color-mix(in srgb,var(--naam-card-accent) 7%,#fff),#fff 62%,color-mix(in srgb,var(--naam-card-accent-2) 5%,#fff)) !important;
  box-shadow:0 10px 26px rgba(13,59,84,.07) !important;
}
.value-chip:nth-child(4n/**/+1),.dv-badge:nth-child(4n/**/+1),.vh-item:nth-child(4n/**/+1){--naam-card-accent:#2268d6;--naam-card-accent-2:#13a5c4;}
.value-chip:nth-child(4n/**/+2),.dv-badge:nth-child(4n/**/+2),.vh-item:nth-child(4n/**/+2){--naam-card-accent:#078a78;--naam-card-accent-2:#53b86b;}
.value-chip:nth-child(4n/**/+3),.dv-badge:nth-child(4n/**/+3),.vh-item:nth-child(4n/**/+3){--naam-card-accent:#6956c7;--naam-card-accent-2:#9b65d7;}
.value-chip:nth-child(4n/**/+4),.dv-badge:nth-child(4n/**/+4),.vh-item:nth-child(4n/**/+4){--naam-card-accent:#cf7b20;--naam-card-accent-2:#e3aa2e;}
.feedback-success-card,.success-msg{--naam-card-accent:#087e69;--naam-card-accent-2:#54b86b;}

:is(.value-icon,.dvb-icon,.sm-icon,.feedback-language-icon,.feedback-section-icon,.feedback-hero-icon,.feedback-success-icon,.testimonial-hero-icon){
  --icon-accent:var(--naam-card-accent,#176f9f) !important;
  --icon-accent-2:var(--naam-card-accent-2,#1aa18d) !important;
  display:grid !important;
  place-items:center !important;
  color:var(--icon-accent) !important;
  background:
    radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--icon-accent-2) 20%,transparent) 0 18%,transparent 42%),
    linear-gradient(145deg,color-mix(in srgb,var(--icon-accent) 14%,#fff),#fff 70%) !important;
  border:1px solid color-mix(in srgb,var(--icon-accent) 24%,#d8e3e9) !important;
  box-shadow:0 9px 22px color-mix(in srgb,var(--icon-accent) 12%,transparent) !important;
}
.value-icon{width:34px !important;height:34px !important;min-width:34px !important;min-height:34px !important;padding:6px !important;border-radius:11px !important;}
.dvb-icon,.sm-icon,.feedback-language-icon{width:52px !important;height:52px !important;min-width:52px !important;min-height:52px !important;padding:9px !important;border-radius:15px !important;}
.feedback-section-icon,.feedback-hero-icon,.feedback-success-icon,.testimonial-hero-icon{width:58px !important;height:58px !important;min-width:58px !important;min-height:58px !important;padding:10px !important;border-radius:17px !important;}

.dv-badge{padding:1rem !important;border-radius:17px !important;transition:transform .28s ease,box-shadow .28s ease !important;}
.dv-badge:hover{transform:translateY(-3px) !important;box-shadow:0 16px 34px rgba(13,59,84,.11) !important;}
.dv-badge .dvb-text,.vh-item strong,.value-chip{color:#16384d !important;}
.vh-item{border-radius:16px !important;padding:1rem !important;}
.vh-item span,.vh-item small{color:#536f7f !important;}
.feedback-language-bar{border-radius:18px !important;}
.feedback-success-card{border-radius:22px !important;}

@media(max-width:640px){
  .dvb-icon,.sm-icon,.feedback-language-icon{width:48px !important;height:48px !important;min-width:48px !important;min-height:48px !important;}
  .feedback-section-icon,.feedback-hero-icon,.feedback-success-icon,.testimonial-hero-icon{width:52px !important;height:52px !important;min-width:52px !important;min-height:52px !important;}
}

/* Floating action policy: WhatsApp only on desktop and mobile. */
.mobile-patient-dock{display:none!important}.floating-whatsapp{display:flex!important;right:18px!important;bottom:max(18px,env(safe-area-inset-bottom))!important;z-index:9998!important}
@media(max-width:760px){.floating-whatsapp{display:flex!important;right:12px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;padding:.48rem .64rem!important}.floating-whatsapp-text{font-size:.72rem!important}}

/* === SOURCE: assets/v2/css/naam-v2.css === */
/* NAAM Hospitals V2 — healthcare trust visual layer
   Checkpoint 01: progressive migration over the existing PHP templates. */

:root {
  --v2-navy: #073b5c;
  --v2-blue: #086fa8;
  --v2-blue-2: #0a8fc5;
  --v2-teal: #0b8a83;
  --v2-teal-soft: #dff6f3;
  --v2-sky: #eaf7fc;
  --v2-ink: #123247;
  --v2-muted: #607887;
  --v2-line: rgba(8, 80, 118, .12);
  --v2-white: #fff;
  --v2-danger: #b7352c;
  --v2-danger-dark: #8f251f;
  --v2-success: #15704f;
  --v2-shadow-sm: 0 8px 26px rgba(7, 59, 92, .08);
  --v2-shadow: 0 18px 54px rgba(7, 59, 92, .12);
  --v2-shadow-lg: 0 32px 90px rgba(7, 59, 92, .16);
  --v2-radius-sm: 14px;
  --v2-radius: 22px;
  --v2-radius-lg: 34px;
  --v2-container: min(1180px, calc(100% - 40px));
}

html { scroll-behavior: smooth; }
body {
  color: var(--v2-ink);
  background:
    radial-gradient(circle at 92% 5%, rgba(10, 143, 197, .07), transparent 26rem),
    linear-gradient(180deg, #fbfeff 0, #fff 22rem);
  font-family: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  opacity: .22;
  background-image: radial-gradient(rgba(8, 111, 168, .14) .6px, transparent .6px);
  background-size: 18px 18px;
  mask-image: linear-gradient(to bottom, #000 0, transparent 34rem);
}

.container { width: var(--v2-container); max-width: 1180px; }
::selection { background: rgba(10,143,197,.2); color: var(--v2-navy); }
a { text-underline-offset: 3px; }

/* Accessibility */
:focus-visible { outline: 3px solid rgba(10,143,197,.42); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Utility / emergency strip */
.top-bar {
  background: linear-gradient(90deg, #062f4a 0%, #064a6e 55%, #075b78 100%);
  color: #fff;
  border: 0;
}
.top-bar-inner { min-height: 42px; gap: 18px; }
.top-bar-copy {
  color: rgba(255,255,255,.86);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.top-social-label { opacity: .65; font-size: .68rem; letter-spacing: .12em; }
.top-social-link { opacity: .82; transition: transform .18s ease, opacity .18s ease; }
.top-social-link:hover { opacity: 1; transform: translateY(-1px); }
.top-call-badge {
  min-height: 30px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(10px);
}
.top-emergency-badge { background: rgba(183,53,44,.18); }
.top-call-text { font-size: .76rem; }

/* Main header */
.site-header {
  position: sticky;
  top: 0;
  z-index: 80;
  background: rgba(255,255,255,.92);
  border-bottom: 1px solid rgba(7,59,92,.08);
  box-shadow: 0 8px 26px rgba(7,59,92,.05);
  backdrop-filter: blur(18px) saturate(1.2);
}
.header-inner { min-height: 78px; gap: 22px; }
.logo-link { flex: 0 0 auto; }
.brand-logo-img { max-width: 190px; height: auto; }
.nav-list { gap: 3px; }
.nav-link {
  position: relative;
  border-radius: 11px;
  padding: 10px 11px;
  color: #294b5f;
  font-weight: 700;
  font-size: .9rem;
  transition: color .2s ease, background .2s ease;
}
.nav-link::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 5px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--v2-blue), var(--v2-teal));
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .2s ease;
}
.nav-link:hover, .nav-link.active { color: var(--v2-blue); background: rgba(8,111,168,.055); }
.nav-link:hover::after, .nav-link.active::after { transform: scaleX(1); }

.btn {
  border-radius: 13px;
  min-height: 46px;
  padding: 12px 18px;
  font-weight: 800;
  letter-spacing: -.01em;
  box-shadow: none;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary {
  border: 1px solid transparent;
  background: linear-gradient(135deg, var(--v2-blue), #075a93 72%);
  box-shadow: 0 10px 28px rgba(8,111,168,.2);
}
.btn-primary:hover { box-shadow: 0 14px 34px rgba(8,111,168,.28); }
.btn-outline { border-color: rgba(8,111,168,.26); color: var(--v2-blue); background: #fff; }
.btn-outline:hover { border-color: var(--v2-blue); background: #f3fbff; }
.header-cta { border-radius: 999px; padding-inline: 20px; }

/* Homepage hero */
.hero {
  min-height: clamp(650px, 78vh, 830px);
  isolation: isolate;
  overflow: hidden;
  display: flex;
  align-items: center;
  background: var(--v2-navy);
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(4,39,61,.91) 0%, rgba(4,49,73,.82) 37%, rgba(4,55,78,.28) 68%, rgba(4,55,78,.08) 100%),
    linear-gradient(0deg, rgba(4,44,65,.36) 0%, transparent 45%);
  pointer-events: none;
}
.hero::after {
  content: "";
  position: absolute;
  width: 480px;
  height: 480px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  right: -170px;
  top: -120px;
  z-index: 2;
  box-shadow: 0 0 0 80px rgba(255,255,255,.025), 0 0 0 160px rgba(255,255,255,.018);
  animation: v2Orb 9s ease-in-out infinite alternate;
  pointer-events: none;
}
@keyframes v2Orb { to { transform: translate(-18px, 22px) scale(1.05); } }
.hero-slider { z-index: 0; }
.hero-slide { filter: saturate(.92) contrast(1.03); }
.hero-content { z-index: 4; padding-top: 50px; padding-bottom: 70px; }
.hero-location {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: auto;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.11);
  border: 1px solid rgba(255,255,255,.18);
  color: #d9f5ff;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}
.hero-location::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #57dfc2; box-shadow: 0 0 0 5px rgba(87,223,194,.12); }
.hero-headline {
  max-width: 760px;
  margin-top: 18px;
  font-family: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  font-size: clamp(3rem, 6.5vw, 5.9rem);
  line-height: .98;
  letter-spacing: -.055em;
  color: #fff;
  text-wrap: balance;
  text-shadow: 0 8px 24px rgba(0,0,0,.13);
}
.hero-accent {
  color: #c8f5ef;
  background: linear-gradient(90deg, #fff, #9eece0 75%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.hero-sub {
  max-width: 640px;
  margin-top: 22px;
  font-size: clamp(1rem, 1.6vw, 1.18rem);
  line-height: 1.75;
  color: rgba(255,255,255,.84);
}
.hero-actions { margin-top: 30px; gap: 12px; }
.hero .btn-white { color: var(--v2-navy); border-radius: 999px; padding-inline: 22px; box-shadow: 0 14px 36px rgba(0,0,0,.16); }
.hero .btn-outline-white { border-radius: 999px; background: rgba(255,255,255,.07); backdrop-filter: blur(8px); }
.hero-stats {
  margin-top: 48px;
  max-width: 720px;
  padding: 16px 18px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.15);
  background: rgba(5,48,72,.34);
  backdrop-filter: blur(14px);
  box-shadow: 0 18px 60px rgba(0,0,0,.12);
}
.hero-stat { padding: 4px 18px; border-right-color: rgba(255,255,255,.14); }
.hero-stat .stat-num { font-family: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size: clamp(1.25rem, 2vw, 1.7rem); font-weight: 800; }
.hero-stat .stat-label { color: rgba(255,255,255,.7); font-size: .74rem; letter-spacing: .04em; }
.hero-float-stack { z-index: 5; right: max(5vw, calc((100vw - 1180px)/2)); bottom: 80px; }
.hero-float-card {
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.93);
  color: var(--v2-navy);
  box-shadow: var(--v2-shadow-lg);
  backdrop-filter: blur(12px);
  border-radius: 20px;
}
.hero-float-card--care { animation: v2FloatA 5s ease-in-out infinite; }
.hero-float-card--trust { animation: v2FloatB 6s ease-in-out infinite; }
@keyframes v2FloatA { 50% { transform: translateY(-8px); } }
@keyframes v2FloatB { 50% { transform: translateY(7px); } }
.hero-float-dot { background: #3fcead; box-shadow: 0 0 0 6px rgba(63,206,173,.15); }

/* Quick actions */
.patient-quick-actions { margin-top: -34px; position: relative; z-index: 10; }
.patient-quick-actions .container,
.patient-quick-grid { position: relative; }
.patient-quick-grid {
  padding: 10px;
  border-radius: 26px;
  background: rgba(255,255,255,.96);
  border: 1px solid var(--v2-line);
  box-shadow: var(--v2-shadow);
  backdrop-filter: blur(16px);
}
.patient-quick-card {
  min-height: 92px;
  border-radius: 18px;
  border: 1px solid transparent;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.patient-quick-card:hover { transform: translateY(-3px); background: #f8fdff; border-color: rgba(8,111,168,.12); }
.pqa-icon { background: linear-gradient(135deg, #e9f7fc, #e5f7f3); color: var(--v2-blue); border-radius: 14px; }
.patient-quick-card strong { color: var(--v2-navy); }
.patient-quick-card small { color: var(--v2-muted); }

/* General content hierarchy */
.section { padding-top: clamp(64px, 7vw, 104px); padding-bottom: clamp(64px, 7vw, 104px); }
.bg-light, .section-soft-blue, .section-soft-teal { background: transparent; }
.section-label, .eyebrow {
  color: var(--v2-teal);
  font-size: .76rem;
  letter-spacing: .12em;
  font-weight: 800;
  text-transform: uppercase;
}
.section-title {
  font-family: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color: var(--v2-navy);
  letter-spacing: -.04em;
  line-height: 1.08;
  text-wrap: balance;
}
.section-sub, .body-text { color: var(--v2-muted); line-height: 1.75; }

.about-preview { position: relative; overflow: hidden; }
.about-preview::after {
  content: "";
  position: absolute;
  inset: 10% -8% auto auto;
  width: 360px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(10,143,197,.09), transparent 68%);
  pointer-events: none;
}
.about-card, .about-highlight-box, .vm-card, .value-card, .apart-item, .profile-content-card,
.doctor-profile-card, .facility-card, .specialty-card, .why-card, .trust-action-card {
  border: 1px solid var(--v2-line);
  box-shadow: var(--v2-shadow-sm);
}
.about-card, .vm-card, .value-card, .apart-item, .profile-content-card, .doctor-profile-card,
.facility-card, .why-card, .trust-action-card { border-radius: var(--v2-radius); }
.value-card, .why-card, .facility-card, .specialty-card, .doctor-card, .home-specialist-card {
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.value-card:hover, .why-card:hover, .facility-card:hover, .specialty-card:hover, .doctor-card:hover, .home-specialist-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--v2-shadow);
  border-color: rgba(8,111,168,.2);
}
.value-emoji, .vm-icon, .apart-icon { color: var(--v2-blue); background: linear-gradient(135deg, var(--v2-sky), var(--v2-teal-soft)); border-radius: 16px; }
.value-num { color: rgba(8,111,168,.24); font-weight: 900; }

/* Specialty / doctor cards */
.specialty-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(155deg, #fff 0%, #fbfeff 64%, #eef9fc 100%);
  border-radius: 20px;
}
.specialty-card::after {
  content: "→";
  position: absolute;
  right: 16px;
  bottom: 14px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--v2-blue);
  background: #eef8fc;
  opacity: 0;
  transform: translateX(-4px);
  transition: .2s ease;
}
.specialty-card:hover::after { opacity: 1; transform: none; }
.specialty-icon { background: linear-gradient(135deg, #eaf7fc, #e6f8f4); color: var(--v2-blue); }
.doctor-card, .home-specialist-card {
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid var(--v2-line);
  box-shadow: var(--v2-shadow-sm);
  background: #fff;
}
.doctor-photo, .home-specialist-photo { background: #edf6f9; }
.doctor-photo img, .home-specialist-photo img { transition: transform .45s ease; }
.doctor-card:hover .doctor-photo img, .home-specialist-card:hover .home-specialist-photo img { transform: scale(1.025); }
.dc-name, .doctor-name { color: var(--v2-navy); letter-spacing: -.025em; }
.dc-specialty, .doctor-specialty { color: var(--v2-blue); }
.dc-qual { color: #597382; }

/* Interior page hero */
.page-hero{
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 20%, rgba(84,213,191,.16), transparent 18rem),
    linear-gradient(135deg, #073b5c 0%, #075980 66%, #087d91 100%);
  color: #fff;
}
.page-hero::after{
  content: "";
  position: absolute;
  right: -90px;
  top: -120px;
  width: 340px;
  aspect-ratio: 1;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 50%;
  box-shadow: 0 0 0 60px rgba(255,255,255,.025), 0 0 0 120px rgba(255,255,255,.018);
}
.page-hero-content{ position: relative; z-index: 2; }
.page-hero h1{ font-family: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; letter-spacing: -.045em; color: #fff; text-wrap: balance; }
.page-hero p{ color: rgba(255,255,255,.8); }
.breadcrumb { color: rgba(255,255,255,.66); }
.breadcrumb a { color: rgba(255,255,255,.88); }

/* Doctor profile */
.doctor-profile-section { background: linear-gradient(180deg, #f5fbfe, #fff 36%); }
.doctor-profile-card {
  display: grid;
  grid-template-columns: minmax(260px, 360px) 1fr;
  gap: clamp(24px, 4vw, 52px);
  padding: clamp(18px, 3vw, 32px);
  background: rgba(255,255,255,.97);
  box-shadow: var(--v2-shadow);
}
.doctor-profile-media { border-radius: 24px; overflow: hidden; background: linear-gradient(150deg,#e9f5f9,#dff1f3); min-height: 390px; }
.doctor-profile-photo { width: 100%; height: 100%; max-height: 520px; object-fit: cover; object-position: top center; }
.doctor-profile-info h2 { font-family: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; color: var(--v2-navy); font-size: clamp(2rem,4vw,3rem); letter-spacing: -.045em; }
.profile-meta-grid { gap: 10px; }
.profile-meta-grid > div { padding: 13px 14px; border-radius: 15px; background: #f7fbfd; border: 1px solid rgba(8,111,168,.08); }
.profile-meta-grid strong { color: #6b8190; font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; }
.profile-meta-grid span, .profile-meta-grid a { color: var(--v2-ink); font-weight: 700; }
.doctor-availability { margin-top: 18px; padding: 16px; border-radius: 18px; background: linear-gradient(135deg,#f5fbfe,#f3fbf9); border: 1px solid var(--v2-line); }
.availability-chip { border-radius: 999px; }
.availability-chip.is-available { background: #e8f7f1; color: var(--v2-success); border-color: #c6e9dc; }
.related-doctor-card { border-radius: 16px; border: 1px solid var(--v2-line); background: #fbfeff; transition: .2s ease; }
.related-doctor-card:hover { transform: translateY(-2px); border-color: rgba(8,111,168,.25); box-shadow: var(--v2-shadow-sm); }

/* Forms */
.form-card, .contact-card, .appointment-card, .feedback-card, form.card {
  border-radius: 24px;
  border: 1px solid var(--v2-line);
  box-shadow: var(--v2-shadow);
  background: rgba(255,255,255,.98);
}
.form-group label { color: var(--v2-navy); font-weight: 750; }
input, select, textarea {
  border-radius: 13px !important;
  border-color: rgba(7,59,92,.17) !important;
  background: #fcfeff !important;
  color: var(--v2-ink) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
input:focus, select:focus, textarea:focus {
  border-color: rgba(8,111,168,.55) !important;
  box-shadow: 0 0 0 4px rgba(8,111,168,.09) !important;
  background: #fff !important;
}

/* Footer — public trust cleanup */
.site-footer {
  position: relative;
  overflow: hidden;
  background: linear-gradient(145deg, #062f49 0%, #073d58 58%, #07536b 100%);
  color: #fff;
}
.site-footer::before {
  content: "";
  position: absolute;
  width: 440px;
  aspect-ratio: 1;
  border-radius: 50%;
  right: -180px;
  top: -220px;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 0 0 70px rgba(255,255,255,.018), 0 0 0 140px rgba(255,255,255,.012);
}
.footer-grid { position: relative; z-index: 1; }
.footer-title, .footer-links h4 { color: #fff; }
.footer-desc, .footer-contact-mini, .footer-links a, .footer-links li { color: rgba(255,255,255,.72); }
.footer-links a:hover { color: #fff; }
.footer-emerg-btn, .footer-wa-btn { border-radius: 999px; }
.footer-bottom { border-top-color: rgba(255,255,255,.1); }
.footer-staff-link { display: none !important; }

/* React V2 layer */
#naam-v2-root { position: relative; z-index: 120; }
.v2-care-launcher {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 130;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 50px;
  padding: 11px 16px 11px 12px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, var(--v2-blue), var(--v2-teal));
  box-shadow: 0 16px 42px rgba(7,59,92,.27);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.v2-care-launcher-icon { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.17); }
.v2-care-launcher svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.9; }
.v2-care-backdrop { position: fixed; inset: 0; z-index: 145; background: rgba(2,28,43,.48); backdrop-filter: blur(5px); animation: v2Fade .18s ease-out; }
.v2-care-panel {
  position: fixed;
  z-index: 150;
  right: 22px;
  bottom: 84px;
  width: min(420px, calc(100vw - 28px));
  max-height: min(680px, calc(100vh - 110px));
  overflow: auto;
  padding: 20px;
  border-radius: 26px;
  background: #fff;
  border: 1px solid rgba(7,59,92,.12);
  box-shadow: 0 28px 90px rgba(2,34,51,.28);
  animation: v2Panel .24s cubic-bezier(.2,.75,.25,1);
}
@keyframes v2Fade { from { opacity: 0; } }
@keyframes v2Panel { from { opacity: 0; transform: translateY(14px) scale(.98); } }
.v2-care-panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.v2-care-panel-head small { display: block; margin-bottom: 5px; color: var(--v2-teal); text-transform: uppercase; letter-spacing: .1em; font-weight: 850; }
.v2-care-panel-head h2 { margin: 0; color: var(--v2-navy); font-family: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size: 1.45rem; letter-spacing: -.035em; }
.v2-care-close { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 50%; border: 1px solid var(--v2-line); background: #f7fbfd; color: var(--v2-navy); cursor: pointer; font-size: 1.2rem; }
.v2-care-intro { margin: 11px 0 16px; color: var(--v2-muted); font-size: .9rem; line-height: 1.6; }
.v2-care-grid { display: grid; gap: 9px; }
.v2-care-option { display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 12px; padding: 12px; border-radius: 16px; border: 1px solid var(--v2-line); background: #fbfeff; text-decoration: none; color: var(--v2-ink); transition: .2s ease; }
.v2-care-option:hover { transform: translateX(3px); border-color: rgba(8,111,168,.25); background: #f5fbfe; }
.v2-care-option-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(135deg,#e9f7fc,#e8f8f4); color: var(--v2-blue); }
.v2-care-option-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.v2-care-option strong { display: block; color: var(--v2-navy); font-size: .94rem; }
.v2-care-option small { color: var(--v2-muted); font-size: .78rem; }
.v2-care-option-arrow { color: var(--v2-blue); font-weight: 900; }
.v2-care-emergency { margin-top: 14px; padding: 14px; border-radius: 17px; background: #fff5f4; border: 1px solid #f1cbc7; }
.v2-care-emergency strong { color: #8f2e27; }
.v2-care-emergency p { margin: 5px 0 10px; color: #7d5c59; font-size: .82rem; line-height: 1.5; }
.v2-care-emergency a { display: inline-flex; align-items: center; gap: 7px; color: #fff; background: var(--v2-danger); border-radius: 999px; padding: 9px 13px; text-decoration: none; font-weight: 800; font-size: .82rem; }
.v2-mobile-dock { display: none; }

/* Scroll reveal — content stays readable if JS is disabled */
.v2-reveal-ready [data-v2-reveal] { opacity: 0; transform: translateY(16px); transition: opacity .55s ease, transform .55s cubic-bezier(.2,.75,.25,1); }
.v2-reveal-ready [data-v2-reveal].v2-revealed { opacity: 1; transform: none; }

/* CMS V2 overview */
.admin-overview-page { background: #f4f9fc; min-height: 100vh; }
.v2-admin-main { width: min(1240px, calc(100% - 34px)); margin: 0 auto; padding: 34px 0 56px; }
.v2-admin-status { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; padding: 9px 12px; border-radius: 999px; color: var(--v2-success); background: #e9f7f1; border: 1px solid #cfeadf; font-size: .8rem; font-weight: 800; }
.v2-admin-status::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #2ab180; box-shadow: 0 0 0 5px rgba(42,177,128,.12); }
.v2-admin-metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.v2-admin-metric { padding: 19px; border-radius: 20px; background: #fff; border: 1px solid var(--v2-line); box-shadow: var(--v2-shadow-sm); }
.v2-admin-metric-label { color: #668091; font-size: .78rem; font-weight: 750; }
.v2-admin-metric-value { display: block; margin-top: 7px; color: var(--v2-navy); font-family: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size: 2rem; font-weight: 850; letter-spacing: -.04em; }
.v2-admin-metric-note { margin-top: 5px; color: #8297a4; font-size: .74rem; }
.v2-admin-grid { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(300px,.8fr); gap: 15px; margin-top: 15px; }
.v2-admin-card { padding: 20px; border-radius: 22px; background: #fff; border: 1px solid var(--v2-line); box-shadow: var(--v2-shadow-sm); }
.v2-admin-card h2 { margin: 0; color: var(--v2-navy); font-size: 1.05rem; }
.v2-admin-card-head { display: flex; justify-content: space-between; align-items: center; gap: 14px; margin-bottom: 18px; }
.v2-admin-card-head span { color: var(--v2-muted); font-size: .78rem; }
.v2-admin-bars { display: grid; gap: 12px; }
.v2-admin-bar-row { display: grid; grid-template-columns: 74px 1fr 38px; gap: 10px; align-items: center; font-size: .8rem; }
.v2-admin-bar-label { color: #6b8392; }
.v2-admin-bar-track { height: 9px; border-radius: 999px; background: #edf5f8; overflow: hidden; }
.v2-admin-bar-fill { height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--v2-blue),var(--v2-teal)); transform-origin: left; animation: v2Bar .75s ease both; }
@keyframes v2Bar { from { transform: scaleX(0); } }
.v2-admin-bar-value { text-align: right; color: var(--v2-navy); font-weight: 800; }
.v2-admin-list { display: grid; gap: 8px; }
.v2-admin-list-row { display: flex; justify-content: space-between; gap: 14px; padding: 11px 12px; border-radius: 13px; background: #f7fbfd; }
.v2-admin-list-row span { color: #617b8c; font-size: .82rem; }
.v2-admin-list-row strong { color: var(--v2-navy); font-size: .85rem; }
.v2-admin-quick { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 15px; }
.v2-admin-quick a { display: block; padding: 15px; border-radius: 16px; border: 1px solid var(--v2-line); background: #fff; color: var(--v2-navy); text-decoration: none; font-weight: 800; box-shadow: var(--v2-shadow-sm); }
.v2-admin-quick a small { display: block; color: var(--v2-muted); font-weight: 500; margin-top: 4px; }

@media (max-width: 1080px) {
  .top-social-links { display: none; }
  .main-nav { gap: 0; }
  .nav-link { font-size: .85rem; padding-inline: 8px; }
  .header-cta { padding-inline: 15px; font-size: .85rem; }
  .hero-float-stack { display: none; }
  .v2-admin-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .v2-admin-grid { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  :root { --v2-container: min(100% - 28px, 1180px); }
  body { padding-bottom: 74px; }
  .top-bar-inner { justify-content: center; }
  .top-bar-copy, .top-social-links { display: none; }
  .top-bar-actions { width: 100%; justify-content: center; }
  .top-call-badge { flex: 1 1 0; justify-content: center; }
  .top-call-text { font-size: .69rem; }
  .header-inner { min-height: 68px; }
  .brand-logo-img { max-width: 154px; }
  .header-cta { display: none; }
  .main-nav { background: rgba(255,255,255,.985); border-top: 1px solid var(--v2-line); box-shadow: 0 18px 42px rgba(7,59,92,.12); }
  .nav-list { gap: 2px; padding: 10px; }
  .nav-link { border-radius: 12px; padding: 12px; }
  .hamburger span { background: var(--v2-navy); border-radius: 2px; }
  .hero { min-height: 690px; }
  .hero::before { background: linear-gradient(90deg,rgba(4,39,61,.91),rgba(4,45,67,.68)),linear-gradient(0deg,rgba(4,44,65,.46),transparent 55%); }
  .hero-headline { font-size: clamp(2.7rem, 13vw, 4.1rem); max-width: 94%; }
  .hero-sub br { display: none; }
  .hero-actions { flex-direction: column; align-items: stretch; max-width: 330px; }
  .hero-actions .btn { justify-content: center; }
  .hero-stats { grid-template-columns: repeat(2,1fr); max-width: 390px; }
  .hero-stat { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.11); padding: 10px; }
  .patient-quick-actions { margin-top: -26px; }
  .patient-quick-grid { grid-template-columns: repeat(2,1fr); border-radius: 22px; }
  .patient-quick-card { min-height: 104px; flex-direction: column; align-items: flex-start; gap: 8px; }
  .doctor-profile-card { grid-template-columns: 1fr; }
  .doctor-profile-media { min-height: 0; aspect-ratio: 4/4.8; max-width: 420px; width: 100%; margin-inline: auto; }
  .v2-care-launcher { display: none; }
  .v2-mobile-dock {
    position: fixed;
    z-index: 140;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    left: 10px;
    right: 10px;
    bottom: 9px;
    min-height: 62px;
    padding: 6px;
    border-radius: 20px;
    background: rgba(255,255,255,.97);
    border: 1px solid rgba(7,59,92,.13);
    box-shadow: 0 15px 45px rgba(6,47,73,.2);
    backdrop-filter: blur(18px);
  }
  .v2-mobile-dock a, .v2-mobile-dock button { border: 0; background: transparent; color: var(--v2-navy); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; text-decoration: none; font: inherit; font-size: .68rem; font-weight: 800; border-radius: 14px; }
  .v2-mobile-dock .is-primary { background: linear-gradient(135deg,var(--v2-blue),#075f93); color: #fff; box-shadow: 0 8px 18px rgba(8,111,168,.2); }
  .v2-mobile-dock .is-emergency { color: var(--v2-danger); }
  .v2-mobile-dock svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.9; }
  .v2-care-backdrop { z-index: 155; }
  .v2-care-panel { z-index: 160; right: 10px; left: 10px; bottom: 82px; width: auto; max-height: calc(100vh - 105px); }
    .v2-admin-quick { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  :root { --v2-container: calc(100% - 22px); }
  .top-bar { display: none; }
  .hero { min-height: 650px; }
  .hero-content { padding-top: 34px; padding-bottom: 52px; }
  .hero-location { font-size: .68rem; }
  .hero-headline { font-size: clamp(2.45rem, 14vw, 3.45rem); }
  .hero-sub { font-size: .96rem; line-height: 1.62; }
  .hero-stats { margin-top: 30px; padding: 10px; }
  .patient-quick-grid { grid-template-columns: 1fr 1fr; padding: 7px; }
  .patient-quick-card { padding: 11px; }
  .pqa-icon { width: 38px; height: 38px; }
  .section { padding-top: 58px; padding-bottom: 58px; }
  .section-title { font-size: clamp(1.9rem, 9vw, 2.6rem); }
  .profile-actions { flex-direction: column; }
  .profile-actions .btn { width: 100%; justify-content: center; }
  .v2-admin-main { width: calc(100% - 20px); padding-top: 24px; }
  .v2-admin-metrics { grid-template-columns: 1fr 1fr; gap: 9px; }
  .v2-admin-metric { padding: 14px; }
  .v2-admin-metric-value { font-size: 1.55rem; }
  .v2-admin-bar-row { grid-template-columns: 64px 1fr 30px; }
}

/* =========================================================
   Checkpoint 02 — server-rendered V2 public templates
   Homepage · Specialities · Doctors · Doctor · Department
   ========================================================= */
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.v2-kicker { display:inline-flex; align-items:center; gap:9px; margin-bottom:16px; color:var(--v2-blue); font-size:.76rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.v2-kicker > span { width:28px; height:2px; border-radius:4px; background:linear-gradient(90deg,var(--v2-blue),var(--v2-teal)); }
.v2-kicker--light { color:rgba(255,255,255,.78); }
.v2-kicker--light > span { background:linear-gradient(90deg,#8ee3e0,#8ed8f2); }
.btn-light { color:var(--v2-navy)!important; background:#fff!important; border:1px solid rgba(255,255,255,.85)!important; box-shadow:0 12px 30px rgba(3,37,55,.16); }
.btn-light:hover { background:#f5fbfd!important; }
.btn-ghost-light { color:#fff!important; background:rgba(255,255,255,.08)!important; border:1px solid rgba(255,255,255,.28)!important; backdrop-filter:blur(10px); }
.btn-ghost-light:hover { background:rgba(255,255,255,.14)!important; border-color:rgba(255,255,255,.45)!important; }
.v2-text-link, .v2-card-arrow, .v2-link-button { display:inline-flex; align-items:center; gap:7px; color:var(--v2-blue); font-weight:800; text-decoration:none; }
.v2-text-link svg, .v2-card-arrow svg, .v2-link-button svg { width:18px; height:18px; transition:transform .2s ease; }
.v2-text-link:hover svg, .v2-card-arrow:hover svg, .v2-link-button:hover svg { transform:translateX(3px); }
.v2-section-heading-row { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:30px; }
.v2-section-heading-row > div:first-child { max-width:760px; }
.v2-section-heading-row .section-title { margin-bottom:10px; }
.v2-section-heading-row .section-sub { margin:0; max-width:720px; }

/* V2 home hero */
.v2-home-hero { position:relative; overflow:hidden; min-height:680px; display:flex; align-items:center; padding:68px 0 74px; color:#fff; background:linear-gradient(128deg,#052d49 0%,#064d70 56%,#087c83 100%); isolation:isolate; }
.v2-home-hero::before { content:""; position:absolute; inset:0; z-index:-2; background:radial-gradient(circle at 12% 15%,rgba(52,194,205,.19),transparent 25rem),radial-gradient(circle at 86% 70%,rgba(107,218,236,.15),transparent 25rem); }
.v2-home-hero::after { content:""; position:absolute; inset:0; z-index:-1; opacity:.18; background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(90deg,#000,transparent 72%); }
.v2-home-hero-grid { display:grid; grid-template-columns:minmax(0,.94fr) minmax(430px,1.06fr); gap:clamp(42px,6vw,78px); align-items:center; }
.v2-home-hero-copy h1 { max-width:700px; margin:0; color:#fff; font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:clamp(3.15rem,5.25vw,5rem); line-height:1.01; letter-spacing:-.055em; text-wrap:balance; }
.v2-home-hero-copy h1 em { display:block; margin-top:10px; color:#98e2e7; font-style:normal; }
.v2-home-hero-lead { max-width:625px; margin:24px 0 0; color:rgba(255,255,255,.84); font-size:clamp(1.02rem,1.35vw,1.16rem); line-height:1.72; }
.v2-home-hero-actions, .v2-page-hero-actions, .v2-profile-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.v2-home-hero .btn-outline { color:#fff; border-color:rgba(255,255,255,.34); background:rgba(255,255,255,.07); }
.v2-home-hero .btn-outline:hover { background:rgba(255,255,255,.13); }
.v2-home-hero-proof { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; max-width:660px; margin-top:46px; padding:8px; border:1px solid rgba(255,255,255,.13); border-radius:22px; background:rgba(4,38,57,.22); backdrop-filter:blur(12px); }
.v2-home-hero-proof div { padding:13px 10px; text-align:center; border-right:1px solid rgba(255,255,255,.1); }
.v2-home-hero-proof div:last-child { border-right:0; }
.v2-home-hero-proof strong { display:block; color:#fff; font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:1.35rem; letter-spacing:-.04em; }
.v2-home-hero-proof span { display:block; margin-top:3px; color:rgba(255,255,255,.66); font-size:.68rem; font-weight:700; }
.v2-home-hero-visual { position:relative; min-height:530px; display:grid; place-items:center; }
.v2-hero-photo-frame { position:relative; width:min(100%,590px); aspect-ratio:1.05; overflow:hidden; border-radius:42% 18% 35% 18% / 22% 32% 22% 34%; border:1px solid rgba(255,255,255,.24); box-shadow:0 32px 85px rgba(2,28,43,.36); background:#0c526f; }
.v2-hero-photo-frame::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 62%,rgba(3,36,53,.24)); }
.v2-hero-photo-frame img { width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.02); animation:v2HeroImage 12s ease-in-out infinite alternate; }
@keyframes v2HeroImage { to { transform:scale(1.065); } }
.v2-hero-care-card { position:absolute; z-index:3; display:flex; align-items:center; gap:11px; min-width:190px; padding:12px 14px; border:1px solid rgba(255,255,255,.55); border-radius:17px; background:rgba(255,255,255,.94); color:var(--v2-navy); box-shadow:0 18px 45px rgba(2,32,49,.18); backdrop-filter:blur(14px); animation:v2FloatCard 5s ease-in-out infinite alternate; }
.v2-hero-care-card > span { width:40px; height:40px; flex:0 0 40px; display:grid; place-items:center; border-radius:13px; color:var(--v2-blue); background:#eaf7fc; }
.v2-hero-care-card svg { width:21px; height:21px; }
.v2-hero-care-card small { display:block; color:#6d8491; font-size:.7rem; font-weight:700; }
.v2-hero-care-card strong { display:block; margin-top:2px; font-size:.85rem; }
.v2-hero-care-card--emergency { left:-22px; bottom:64px; }
.v2-hero-care-card--ambulance { right:-12px; top:62px; animation-delay:-2s; }
@keyframes v2FloatCard { to { transform:translateY(-8px); } }
.v2-hero-orbit { position:absolute; z-index:-1; width:520px; aspect-ratio:1; border:1px solid rgba(255,255,255,.17); border-radius:50%; box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.016); }
.v2-home-hero-shape { position:absolute; left:-90px; bottom:-180px; width:420px; aspect-ratio:1; border:1px solid rgba(255,255,255,.12); border-radius:50%; box-shadow:0 0 0 55px rgba(255,255,255,.018); }

/* Trust strip */
.v2-trust-strip { position:relative; z-index:5; margin-top:-1px; background:#fff; border-bottom:1px solid var(--v2-line); box-shadow:0 12px 34px rgba(7,59,92,.055); }
.v2-trust-strip-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.v2-trust-item { display:flex; align-items:center; gap:12px; min-height:104px; padding:20px; border-right:1px solid var(--v2-line); }
.v2-trust-item:last-child { border-right:0; }
.v2-trust-icon { width:44px; height:44px; flex:0 0 44px; display:grid; place-items:center; border-radius:14px; color:var(--v2-blue); background:linear-gradient(135deg,#edf9fc,#e8f8f3); }
.v2-trust-icon svg { width:22px; height:22px; }
.v2-trust-item strong { display:block; color:var(--v2-navy); font-size:.9rem; }
.v2-trust-item small { display:block; margin-top:3px; color:var(--v2-muted); font-size:.72rem; line-height:1.45; }

/* Homepage content */
.v2-home-intro { background:linear-gradient(180deg,#fff,#f8fcfe); }
.v2-home-intro-grid { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(330px,.75fr); gap:clamp(38px,7vw,88px); align-items:center; }
.v2-section-copy p { color:var(--v2-muted); line-height:1.82; }
.v2-care-path-card { padding:26px; border-radius:28px; border:1px solid var(--v2-line); background:linear-gradient(145deg,#fff,#f2fafc); box-shadow:var(--v2-shadow); }
.v2-care-path-card h3 { margin:5px 0 20px; color:var(--v2-navy); font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:1.5rem; line-height:1.25; letter-spacing:-.035em; }
.v2-care-path-steps { display:grid; gap:9px; }
.v2-care-path-steps a { display:grid; grid-template-columns:38px 1fr 22px; align-items:center; gap:12px; padding:12px; border-radius:16px; color:var(--v2-ink); border:1px solid transparent; text-decoration:none; transition:.2s ease; }
.v2-care-path-steps a:hover { transform:translateX(4px); background:#fff; border-color:var(--v2-line); box-shadow:var(--v2-shadow-sm); }
.v2-care-path-steps b { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; background:var(--v2-navy); color:#fff; font-size:.72rem; }
.v2-care-path-steps strong { display:block; color:var(--v2-navy); font-size:.88rem; }
.v2-care-path-steps small { display:block; color:var(--v2-muted); font-size:.72rem; margin-top:2px; }
.v2-care-path-steps svg { width:18px; height:18px; color:var(--v2-blue); }

.v2-speciality-section, .v2-featured-doctors { background:#f6fbfd; }
.v2-department-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.v2-department-grid--home { grid-template-columns:repeat(4,minmax(0,1fr)); }
.v2-department-card { display:flex; flex-direction:column; min-height:310px; padding:21px; border:1px solid var(--v2-line); border-radius:23px; background:#fff; box-shadow:0 10px 30px rgba(7,59,92,.055); transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.v2-department-card[hidden] { display:none!important; }
.v2-department-card-head { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.v2-department-icon { width:48px; height:48px; display:grid; place-items:center; border-radius:15px; color:var(--v2-blue); background:linear-gradient(135deg,#e9f7fc,#e7f8f2); }
.v2-department-icon svg { width:24px; height:24px; }
.v2-department-count { padding:6px 9px; border-radius:999px; color:#407083; background:#f1f8fb; font-size:.66rem; font-weight:800; }
.v2-department-count.is-coordination { color:#7b6885; background:#f8f4fb; }
.v2-department-card h3 { margin:19px 0 10px; color:var(--v2-navy); font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:1.04rem; line-height:1.3; letter-spacing:-.025em; }
.v2-department-card h3 a { color:inherit; text-decoration:none; }
.v2-department-card p { display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; margin:0 0 18px; color:var(--v2-muted); font-size:.8rem; line-height:1.66; }
.v2-department-card .v2-card-arrow { margin-top:auto; font-size:.78rem; }

.v2-facility-story { background:linear-gradient(140deg,#062f4a,#07526a 65%,#08777c); color:#fff; }
.v2-heading-light .section-title { color:#fff; }
.v2-heading-light .section-sub { color:rgba(255,255,255,.7); }
.v2-heading-light .eyebrow { color:#8edee3; }
.v2-facility-mosaic { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-rows:245px; gap:12px; }
.v2-facility-mosaic figure { position:relative; overflow:hidden; margin:0; border-radius:23px; background:#0a405b; }
.v2-facility-mosaic figure.is-wide { grid-column:span 2; }
.v2-facility-mosaic img { width:100%; height:100%; object-fit:cover; transition:transform .55s cubic-bezier(.2,.75,.25,1); }
.v2-facility-mosaic figure:hover img { transform:scale(1.045); }
.v2-facility-mosaic figcaption { position:absolute; left:14px; right:14px; bottom:14px; padding:12px 14px; border:1px solid rgba(255,255,255,.22); border-radius:15px; background:rgba(4,39,57,.68); backdrop-filter:blur(12px); }
.v2-facility-mosaic figcaption strong { display:block; color:#fff; font-size:.84rem; }
.v2-facility-mosaic figcaption span { display:block; margin-top:3px; color:rgba(255,255,255,.68); font-size:.68rem; }

.v2-doctor-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }

.v2-doctor-card { display:flex; flex-direction:column; min-width:0; overflow:hidden; border-radius:25px; border:1px solid var(--v2-line); background:#fff; box-shadow:0 12px 32px rgba(7,59,92,.065); transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.v2-doctor-card[hidden] { display:none!important; }
.v2-doctor-media { position:relative; display:block; aspect-ratio:1.15; overflow:hidden; background:linear-gradient(145deg,#eaf7fb,#e8f6f2); }
.v2-doctor-media img { width:100%; height:100%; object-fit:cover; object-position:top center; transition:transform .45s cubic-bezier(.2,.75,.25,1); }
.v2-doctor-card:hover .v2-doctor-media img { transform:scale(1.035); }
.v2-doctor-placeholder { width:100%; height:100%; display:grid; place-items:center; color:rgba(8,111,168,.5); background:linear-gradient(145deg,#eaf7fb,#e8f6f2); }
.v2-doctor-placeholder svg { width:72px; height:72px; }
.v2-doctor-placeholder.is-large svg { width:110px; height:110px; }
.v2-doctor-dept-badge { position:absolute; left:12px; bottom:12px; max-width:calc(100% - 24px); padding:7px 10px; border-radius:999px; color:#fff; background:rgba(5,51,75,.77); backdrop-filter:blur(10px); font-size:.65rem; font-weight:800; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.v2-doctor-copy { display:flex; flex:1; flex-direction:column; padding:18px; }
.v2-doctor-copy h3 { margin:0; font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:1.06rem; line-height:1.3; letter-spacing:-.025em; }
.v2-doctor-copy h3 a { color:var(--v2-navy); text-decoration:none; }
.v2-doctor-qual { margin:7px 0 0; color:#557284; font-size:.72rem; font-weight:700; line-height:1.45; }
.v2-doctor-role { margin:5px 0 0; color:var(--v2-blue); font-size:.76rem; font-weight:800; line-height:1.45; }
.v2-doctor-facts { display:flex; flex-wrap:wrap; gap:7px; margin-top:13px; }
.v2-doctor-facts span { display:inline-flex; align-items:center; gap:5px; max-width:100%; padding:6px 8px; border-radius:10px; color:#5d7887; background:#f4f9fb; font-size:.65rem; font-weight:700; }
.v2-doctor-facts svg { width:13px; height:13px; flex:0 0 13px; color:var(--v2-teal); }
.v2-doctor-focus { margin:14px 0 0; padding:0; list-style:none; display:grid; gap:6px; }
.v2-doctor-focus li { position:relative; padding-left:15px; color:var(--v2-muted); font-size:.7rem; line-height:1.5; }
.v2-doctor-focus li::before { content:""; position:absolute; left:0; top:.55em; width:6px; height:6px; border-radius:50%; background:var(--v2-teal); }
.v2-doctor-actions { display:flex; align-items:center; justify-content:space-between; gap:9px; margin-top:auto; padding-top:17px; }
.v2-doctor-actions .btn { min-height:40px; padding:9px 11px; font-size:.7rem; }
.v2-link-button { font-size:.72rem; white-space:nowrap; }
.v2-link-button svg { width:15px; height:15px; }
.v2-doctor-card.is-compact .v2-doctor-media { aspect-ratio:.98; }
.v2-doctor-card.is-compact .v2-doctor-copy { padding:15px; }
.v2-doctor-card.is-compact .v2-doctor-facts { display:none; }








.v2-patient-experience { background:linear-gradient(180deg,#f7fbfd,#fff); }
.v2-patient-experience-grid { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); gap:50px; align-items:center; }
.v2-patient-action-row { display:flex; gap:10px; margin-top:22px; }

.v2-review-card{ min-height:250px; padding:22px; border-radius:24px; border:1px solid var(--v2-line); background:#fff; box-shadow:var(--v2-shadow-sm); }
.v2-review-stars { color:#e8a728; letter-spacing:.08em; font-size:.8rem; }
.v2-review-card blockquote { margin:15px 0 18px; color:#456476; font-size:.8rem; line-height:1.7; }
.v2-review-card strong { color:var(--v2-navy); font-size:.8rem; }





.v2-home-cta, .v2-directory-cta { padding:58px 0; color:#fff; background:linear-gradient(120deg,#073b5c,#075d78 62%,#0b8685); }
.v2-home-cta-inner, .v2-directory-cta .container { display:flex; align-items:center; justify-content:space-between; gap:36px; }
.v2-home-cta h2, .v2-directory-cta h2 { margin:5px 0 7px; color:#fff; font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:clamp(1.8rem,3vw,2.7rem); letter-spacing:-.045em; }
.v2-home-cta p, .v2-directory-cta p { max-width:760px; margin:0; color:rgba(255,255,255,.73); line-height:1.65; }
.v2-home-cta .eyebrow, .v2-directory-cta .eyebrow { color:#91e1e3; }
.v2-home-cta-actions, .v2-directory-cta .container > div:last-child { display:flex; flex:0 0 auto; gap:10px; }

/* Shared V2 page heroes */
.v2-page-hero, .v2-department-hero { position:relative; overflow:hidden; padding:78px 0; color:#fff; background:linear-gradient(130deg,#062f4a,#075b7c 62%,#098387); isolation:isolate; }
.v2-page-hero::before, .v2-department-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(circle at 82% 20%,rgba(133,228,232,.17),transparent 21rem); }
.v2-page-hero::after, .v2-department-hero::after { content:""; position:absolute; width:420px; aspect-ratio:1; right:-120px; top:-170px; border:1px solid rgba(255,255,255,.12); border-radius:50%; box-shadow:0 0 0 65px rgba(255,255,255,.02),0 0 0 130px rgba(255,255,255,.014); z-index:-1; }
.v2-page-hero-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(330px,.72fr); gap:64px; align-items:center; }
.v2-page-hero h1, .v2-department-hero h1 { max-width:780px; margin:0; color:#fff; font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:clamp(2.8rem,5.1vw,5rem); line-height:1.02; letter-spacing:-.06em; text-wrap:balance; }
.v2-page-hero p, .v2-department-hero p { max-width:720px; margin:19px 0 0; color:rgba(255,255,255,.76); font-size:1.02rem; line-height:1.7; }
.v2-page-hero .breadcrumb, .v2-department-hero .breadcrumb { margin-bottom:22px; font-size:.74rem; }
.v2-page-hero-panel { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; padding:12px; border:1px solid rgba(255,255,255,.15); border-radius:25px; background:rgba(3,38,57,.2); backdrop-filter:blur(13px); }
.v2-page-hero-panel > div { padding:19px; border-radius:18px; background:rgba(255,255,255,.08); }
.v2-page-hero-panel strong { display:block; color:#fff; font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:2rem; }
.v2-page-hero-panel span { display:block; color:rgba(255,255,255,.64); font-size:.7rem; line-height:1.4; }
.v2-page-hero-panel .is-full { grid-column:1/-1; display:flex; align-items:center; gap:12px; }
.v2-page-hero-panel .is-full > span { flex:0 0 42px; width:42px; height:42px; display:grid; place-items:center; border-radius:13px; color:#9ae1e4; background:rgba(255,255,255,.08); }
.v2-page-hero-panel .is-full svg { width:22px; height:22px; }
.v2-page-hero-panel .is-full p { margin:0; font-size:.72rem; line-height:1.5; }

/* Doctor directory */
.v2-directory-section { background:linear-gradient(180deg,#f7fbfd,#fff 25%); }
.v2-doctor-toolbar { position:sticky; top:78px; z-index:22; display:grid; grid-template-columns:minmax(280px,1fr) 180px auto; align-items:center; gap:10px; margin-bottom:14px; padding:11px; border:1px solid rgba(7,59,92,.12); border-radius:20px; background:rgba(255,255,255,.94); box-shadow:0 12px 34px rgba(7,59,92,.08); backdrop-filter:blur(14px); }
.v2-search-box { display:flex; align-items:center; gap:9px; min-width:0; padding:0 12px; border:1px solid var(--v2-line); border-radius:14px; background:#f8fcfd; }
.v2-search-box svg { width:20px; height:20px; flex:0 0 20px; color:var(--v2-blue); }
.v2-search-box input { width:100%; min-height:48px; padding:0!important; border:0!important; outline:0!important; box-shadow:none!important; background:transparent!important; color:var(--v2-ink); font:inherit; font-size:.84rem; }
.v2-sort-box { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:7px; min-height:50px; padding:0 10px; border:1px solid var(--v2-line); border-radius:14px; background:#f8fcfd; }
.v2-sort-box span { color:#718894; font-size:.68rem; font-weight:800; }
.v2-sort-box select { min-width:0; border:0!important; padding:0!important; box-shadow:none!important; background:transparent!important; font-size:.76rem; font-weight:700; }
.v2-result-count { white-space:nowrap; padding:10px 12px; border-radius:12px; color:var(--v2-navy); background:#edf8fb; font-size:.72rem; font-weight:850; }
.v2-filter-scroll { display:flex; gap:7px; overflow-x:auto; padding:4px 1px 17px; scrollbar-width:thin; }
.v2-filter-scroll .doctor-filter-btn { flex:0 0 auto; display:inline-flex; align-items:center; gap:6px; padding:8px 11px; border:1px solid var(--v2-line); border-radius:999px; color:#4f6c7c; background:#fff; font:inherit; font-size:.68rem; font-weight:800; cursor:pointer; }
.v2-filter-scroll .doctor-filter-btn span { display:grid; place-items:center; min-width:20px; height:20px; padding:0 5px; border-radius:999px; background:#eef6f8; font-size:.6rem; }
.v2-filter-scroll .doctor-filter-btn.active { color:#fff; border-color:transparent; background:linear-gradient(135deg,var(--v2-blue),var(--v2-teal)); box-shadow:0 8px 20px rgba(8,111,168,.18); }
.v2-filter-scroll .doctor-filter-btn.active span { color:var(--v2-navy); background:rgba(255,255,255,.85); }
.v2-empty-search { margin:24px auto 0; max-width:550px; padding:40px; text-align:center; border:1px dashed rgba(8,111,168,.24); border-radius:24px; background:#f8fcfd; }
.v2-empty-search[hidden] { display:none; }
.v2-empty-search > span { width:54px; height:54px; margin:auto; display:grid; place-items:center; border-radius:17px; color:var(--v2-blue); background:#e9f7fc; }
.v2-empty-search svg { width:27px; height:27px; }
.v2-empty-search h3 { color:var(--v2-navy); }
.v2-empty-search p { color:var(--v2-muted); }

/* Specialities directory */
.v2-speciality-hero-visual { position:relative; min-height:300px; display:grid; place-items:center; }
.v2-medical-orbit { position:relative; width:230px; aspect-ratio:1; display:grid; place-items:center; border:1px solid rgba(255,255,255,.2); border-radius:50%; box-shadow:0 0 0 42px rgba(255,255,255,.025),0 0 0 84px rgba(255,255,255,.015); animation:v2SpinOrbit 20s linear infinite; }
.v2-medical-orbit > span { width:88px; height:88px; display:grid; place-items:center; border-radius:50%; color:#fff; background:rgba(255,255,255,.11); backdrop-filter:blur(10px); animation:v2CounterSpin 20s linear infinite; }
.v2-medical-orbit > span svg { width:44px; height:44px; }
.v2-medical-orbit i { position:absolute; width:16px; height:16px; border-radius:50%; background:#92e0e4; box-shadow:0 0 0 8px rgba(146,224,228,.08); }
.v2-medical-orbit i:nth-of-type(1) { top:-8px; left:50%; }
.v2-medical-orbit i:nth-of-type(2) { right:10px; bottom:28px; background:#87cff0; }
.v2-medical-orbit i:nth-of-type(3) { left:5px; bottom:40px; background:#b4e9d3; }
@keyframes v2SpinOrbit { to { transform:rotate(360deg); } }
@keyframes v2CounterSpin { to { transform:rotate(-360deg); } }
.v2-speciality-stat { position:absolute; right:0; top:34px; min-width:150px; padding:14px 16px; border:1px solid rgba(255,255,255,.18); border-radius:17px; background:rgba(255,255,255,.1); backdrop-filter:blur(12px); }
.v2-speciality-stat.is-secondary { left:0; right:auto; top:auto; bottom:28px; }
.v2-speciality-stat strong { display:block; color:#fff; font-size:1.65rem; font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
.v2-speciality-stat span { color:rgba(255,255,255,.67); font-size:.68rem; }
.v2-specialities-directory { background:linear-gradient(180deg,#f6fbfd,#fff 18%); }
.v2-speciality-search-row { display:flex; align-items:center; gap:12px; margin-bottom:22px; }
.v2-speciality-search-row .v2-search-box { flex:1; max-width:640px; }

/* Doctor profile */
.v2-doctor-hero { position:relative; overflow:hidden; padding:48px 0 68px; color:#fff; background:linear-gradient(130deg,#062f4a,#075672 62%,#087f81); isolation:isolate; }
.v2-doctor-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(circle at 82% 15%,rgba(142,225,230,.18),transparent 24rem); }
.v2-doctor-hero .breadcrumb { margin-bottom:32px; color:rgba(255,255,255,.65); font-size:.72rem; }
.v2-doctor-hero .breadcrumb a { color:rgba(255,255,255,.84); }
.v2-doctor-hero-grid { display:grid; grid-template-columns:330px minmax(0,1fr); gap:52px; align-items:center; }
.v2-doctor-portrait-wrap { position:relative; }
.v2-doctor-portrait { width:100%; aspect-ratio:.86; overflow:hidden; border:1px solid rgba(255,255,255,.24); border-radius:32px 32px 32px 8px; background:linear-gradient(145deg,#e7f5f7,#dceff1); box-shadow:0 24px 65px rgba(2,29,44,.26); }
.v2-doctor-portrait img { width:100%; height:100%; object-fit:cover; object-position:top center; }
.v2-profile-department-pill { position:absolute; left:18px; right:18px; bottom:-18px; display:flex; align-items:center; gap:8px; padding:10px 13px; border:1px solid rgba(255,255,255,.55); border-radius:14px; color:var(--v2-navy); background:rgba(255,255,255,.95); box-shadow:0 12px 28px rgba(2,29,44,.14); text-decoration:none; font-size:.72rem; font-weight:850; }
.v2-profile-department-pill svg { width:18px; height:18px; color:var(--v2-blue); }
.v2-doctor-hero-copy h1 { margin:0; color:#fff; font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:clamp(2.7rem,5vw,4.9rem); line-height:1; letter-spacing:-.06em; }
.v2-profile-qualification { margin:17px 0 0; color:rgba(255,255,255,.75); font-size:.95rem; font-weight:700; }
.v2-profile-role { margin:7px 0 0; color:#9de2e5; font-size:1.05rem; font-weight:850; }
.v2-profile-facts { display:flex; flex-wrap:wrap; gap:9px; margin-top:25px; }
.v2-profile-facts > span { display:grid; grid-template-columns:34px auto; grid-template-rows:auto auto; column-gap:8px; align-items:center; min-width:145px; padding:10px 12px; border:1px solid rgba(255,255,255,.13); border-radius:14px; background:rgba(255,255,255,.07); }
.v2-profile-facts svg { grid-row:1/3; width:22px; height:22px; color:#9de2e5; }
.v2-profile-facts strong { color:#fff; font-size:.65rem; }
.v2-profile-facts small { margin-top:2px; color:rgba(255,255,255,.65); font-size:.64rem; }
.v2-profile-main { background:linear-gradient(180deg,#f6fbfd,#fff 22%); }
.v2-profile-layout { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:22px; align-items:start; }
.v2-profile-primary { min-width:0; }
.v2-profile-card { padding:24px; border:1px solid var(--v2-line); border-radius:24px; background:#fff; box-shadow:var(--v2-shadow-sm); }
.v2-profile-primary > .v2-profile-card + .v2-profile-card { margin-top:17px; }
.v2-profile-card-title { display:flex; align-items:center; gap:11px; margin-bottom:19px; }
.v2-profile-card-title > span { width:44px; height:44px; flex:0 0 44px; display:grid; place-items:center; border-radius:14px; color:var(--v2-blue); background:linear-gradient(135deg,#eaf7fc,#e8f8f3); }
.v2-profile-card-title svg { width:22px; height:22px; }
.v2-profile-card-title small { display:block; color:var(--v2-teal); text-transform:uppercase; letter-spacing:.08em; font-size:.61rem; font-weight:850; }
.v2-profile-card-title h2 { margin:2px 0 0; color:var(--v2-navy); font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:1.22rem; letter-spacing:-.025em; }
.v2-session-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.v2-session-item { display:flex; align-items:center; gap:9px; padding:13px; border-radius:15px; border:1px solid var(--v2-line); background:#f8fcfd; }
.v2-session-item > span { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:11px; }
.v2-session-item svg { width:17px; height:17px; }
.v2-session-item strong { display:block; color:var(--v2-navy); font-size:.76rem; }
.v2-session-item small { display:block; margin-top:2px; color:var(--v2-muted); font-size:.61rem; line-height:1.4; }
.v2-session-item.is-available > span { color:var(--v2-success); background:#e9f7f1; }
.v2-session-item.is-unavailable { opacity:.62; }
.v2-session-item.is-unavailable > span { color:#778994; background:#eef3f5; }
.v2-session-note { margin:13px 0 0; color:var(--v2-muted); font-size:.7rem; line-height:1.55; }
.v2-focus-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.v2-focus-grid > div { display:flex; align-items:flex-start; gap:8px; padding:12px; border-radius:14px; background:#f8fcfd; }
.v2-focus-grid span { width:27px; height:27px; flex:0 0 27px; display:grid; place-items:center; border-radius:9px; color:var(--v2-teal); background:#e9f7f2; }
.v2-focus-grid svg { width:14px; height:14px; }
.v2-focus-grid p { margin:2px 0 0; color:#516f7f; font-size:.73rem; line-height:1.55; }
.v2-profile-sidebar { position:sticky; top:100px; display:grid; gap:13px; }
.v2-profile-booking-card { text-align:left; }
.v2-sidebar-icon { width:50px; height:50px; display:grid; place-items:center; border-radius:16px; color:#fff; background:linear-gradient(135deg,var(--v2-blue),var(--v2-teal)); }
.v2-sidebar-icon svg { width:25px; height:25px; }
.v2-profile-booking-card h2 { margin:16px 0 7px; color:var(--v2-navy); font-size:1.15rem; }
.v2-profile-booking-card p { margin:0 0 16px; color:var(--v2-muted); font-size:.74rem; line-height:1.6; }
.v2-profile-booking-card .btn { width:100%; justify-content:center; }
.v2-sidebar-contact { display:flex; align-items:center; gap:10px; margin-top:12px; padding:11px; border-radius:14px; color:var(--v2-navy); background:#f5fafc; text-decoration:none; }
.v2-sidebar-contact svg { width:20px; height:20px; color:var(--v2-blue); }
.v2-sidebar-contact small { display:block; color:var(--v2-muted); font-size:.62rem; }
.v2-sidebar-contact strong { display:block; margin-top:1px; font-size:.76rem; }
.v2-safety-note { display:flex; gap:11px; background:#fff6f5; border-color:#f0d0cd; }
.v2-safety-note > span { width:39px; height:39px; flex:0 0 39px; display:grid; place-items:center; border-radius:12px; color:var(--v2-danger); background:#fde8e6; }
.v2-safety-note svg { width:20px; height:20px; }
.v2-safety-note strong { color:#8f2e27; font-size:.78rem; }
.v2-safety-note p { margin:4px 0 7px; color:#7c5a58; font-size:.67rem; line-height:1.5; }
.v2-safety-note a { color:var(--v2-danger); font-size:.7rem; font-weight:850; }
.v2-related-section { margin-top:38px; }
.v2-doctor-grid--related { grid-template-columns:repeat(3,minmax(0,1fr)); }

/* Department page */
.v2-department-hero.is-emergency { background:linear-gradient(130deg,#5b2020,#8e312c 60%,#a54535); }
.v2-department-hero .breadcrumb { margin-bottom:24px; }
.v2-department-hero-grid { display:grid; grid-template-columns:minmax(0,1.2fr) 300px; gap:58px; align-items:center; }
.v2-department-title-row { display:flex; align-items:center; gap:17px; }
.v2-department-hero-icon { width:62px; height:62px; flex:0 0 62px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.2); border-radius:19px; color:#a5e6e7; background:rgba(255,255,255,.08); }
.v2-department-hero-icon svg { width:32px; height:32px; }
.v2-department-hero-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; padding:12px; border:1px solid rgba(255,255,255,.15); border-radius:24px; background:rgba(3,38,57,.2); backdrop-filter:blur(12px); }
.v2-summary-label { grid-column:1/-1; padding:3px 6px 7px; color:rgba(255,255,255,.62); font-size:.65rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.v2-department-hero-summary > div { padding:13px 8px; text-align:center; border-radius:15px; background:rgba(255,255,255,.08); }
.v2-department-hero-summary strong { display:block; color:#fff; font-size:1.45rem; }
.v2-department-hero-summary small { display:block; margin-top:3px; color:rgba(255,255,255,.63); font-size:.58rem; line-height:1.4; }
.v2-emergency-banner { padding:16px 0; color:#fff; background:#8f2f29; }
.v2-emergency-banner .container { display:grid; grid-template-columns:44px 1fr auto; align-items:center; gap:13px; }
.v2-emergency-banner .container > span { width:44px; height:44px; display:grid; place-items:center; border-radius:14px; background:rgba(255,255,255,.1); }
.v2-emergency-banner svg { width:23px; height:23px; }
.v2-emergency-banner strong { display:block; }
.v2-emergency-banner p { margin:3px 0 0; color:rgba(255,255,255,.75); font-size:.7rem; line-height:1.5; }
.v2-department-content { background:linear-gradient(180deg,#f7fbfd,#fff 24%); }
.v2-department-info-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.v2-clinical-card { padding:24px; border:1px solid var(--v2-line); border-radius:24px; background:#fff; box-shadow:var(--v2-shadow-sm); }
.v2-clinical-card ul { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.v2-clinical-card li { display:flex; align-items:flex-start; gap:8px; padding:10px 11px; border-radius:13px; color:#4e6c7c; background:#f7fbfd; font-size:.74rem; line-height:1.5; }
.v2-clinical-card li span { width:24px; height:24px; flex:0 0 24px; display:grid; place-items:center; border-radius:8px; color:var(--v2-teal); background:#e8f7f2; }
.v2-clinical-card li svg { width:13px; height:13px; }
.v2-department-doctors { margin-top:54px; }
.v2-coordination-card { display:grid; grid-template-columns:70px 1fr; gap:19px; align-items:start; padding:26px; border:1px solid var(--v2-line); border-radius:24px; background:linear-gradient(135deg,#fff,#f4fafc); box-shadow:var(--v2-shadow-sm); }
.v2-coordination-card > span { width:70px; height:70px; display:grid; place-items:center; border-radius:20px; color:var(--v2-blue); background:#e9f7fc; }
.v2-coordination-card > span svg { width:35px; height:35px; }
.v2-coordination-card h3 { margin:4px 0 8px; color:var(--v2-navy); font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:1.25rem; }
.v2-coordination-card p { max-width:760px; color:var(--v2-muted); }
.v2-coordination-card > div > div:last-child { display:flex; gap:9px; margin-top:15px; }

/* Responsive */
@media (max-width: 1100px) {
  .v2-home-hero-grid { grid-template-columns:1fr .9fr; gap:48px; }
  .v2-home-hero-visual { min-height:480px; }
  .v2-department-grid--home{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .v2-doctor-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .v2-page-hero-grid, .v2-department-hero-grid { gap:36px; }
  .v2-doctor-hero-grid { grid-template-columns:290px 1fr; gap:38px; }
  .v2-profile-layout { grid-template-columns:minmax(0,1fr) 285px; }
}

@media (max-width: 820px) {
  .v2-section-heading-row { align-items:flex-start; flex-direction:column; gap:16px; }
  .v2-home-hero { min-height:auto; padding:58px 0 64px; }
  .v2-home-hero-grid { grid-template-columns:1fr; }
  .v2-home-hero-copy h1 { font-size:clamp(3rem,13vw,4.7rem); }
  .v2-home-hero-proof { grid-template-columns:repeat(2,1fr); max-width:470px; }
  .v2-home-hero-proof div:nth-child(2) { border-right:0; }
  .v2-home-hero-proof div:nth-child(-n/**/+2) { border-bottom:1px solid rgba(255,255,255,.1); }
  .v2-home-hero-visual { min-height:450px; max-width:600px; width:100%; margin:auto; }
  .v2-hero-care-card--emergency { left:0; }
  .v2-hero-care-card--ambulance { right:0; }
  .v2-trust-strip-grid { grid-template-columns:repeat(2,1fr); }
  .v2-trust-item:nth-child(2) { border-right:0; }
  .v2-trust-item:nth-child(-n/**/+2) { border-bottom:1px solid var(--v2-line); }
  .v2-home-intro-grid, .v2-patient-experience-grid { grid-template-columns:1fr; gap:32px; }
  .v2-department-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .v2-facility-mosaic { grid-template-columns:repeat(2,1fr); grid-auto-rows:220px; }
  .v2-facility-mosaic figure.is-wide { grid-column:span 2; }
  
  .v2-home-cta-inner, .v2-directory-cta .container { align-items:flex-start; flex-direction:column; }
  .v2-home-cta-actions, .v2-directory-cta .container > div:last-child { flex-wrap:wrap; }
  .v2-page-hero, .v2-department-hero { padding:58px 0; }
  .v2-page-hero-grid, .v2-department-hero-grid { grid-template-columns:1fr; }
  .v2-page-hero-panel { max-width:520px; }
  .v2-speciality-hero-visual { min-height:270px; max-width:500px; width:100%; margin:auto; }
  .v2-doctor-toolbar { position:relative; top:auto; grid-template-columns:1fr auto; }
  .v2-search-box { grid-column:1/-1; }
  .v2-doctor-hero-grid { grid-template-columns:220px 1fr; gap:28px; }
  .v2-doctor-hero-copy h1 { font-size:clamp(2.4rem,8vw,3.8rem); }
  .v2-profile-layout { grid-template-columns:1fr; }
  .v2-profile-sidebar { position:static; grid-template-columns:repeat(2,1fr); }
  .v2-session-grid { grid-template-columns:1fr 1fr 1fr; }
  .v2-doctor-grid--related { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .v2-department-info-grid { grid-template-columns:1fr; }
}

@media (max-width: 560px) {
  .v2-home-hero { padding-top:42px; }
  .v2-home-hero-copy h1 { font-size:clamp(2.75rem,14vw,3.75rem); }
  .v2-home-hero-lead { font-size:.96rem; }
  .v2-home-hero-actions, .v2-page-hero-actions, .v2-profile-actions { flex-direction:column; align-items:stretch; }
  .v2-home-hero-actions .btn, .v2-page-hero-actions .btn, .v2-profile-actions .btn { justify-content:center; width:100%; }
  .v2-home-hero-proof { width:100%; }
  .v2-home-hero-visual { min-height:350px; }
  .v2-hero-photo-frame { border-radius:30px 14px 26px 14px; }
  .v2-hero-care-card { min-width:160px; padding:9px 10px; }
  .v2-hero-care-card > span { width:34px; height:34px; flex-basis:34px; }
  .v2-hero-care-card small { font-size:.6rem; }
  .v2-hero-care-card strong { font-size:.72rem; }
  .v2-hero-care-card--emergency { bottom:22px; }
  .v2-hero-care-card--ambulance { top:25px; }
  .v2-trust-item { min-height:92px; padding:14px 9px; align-items:flex-start; }
  .v2-trust-icon { width:37px; height:37px; flex-basis:37px; }
  .v2-trust-item strong { font-size:.77rem; }
  .v2-trust-item small { font-size:.61rem; }
  .v2-department-grid, .v2-department-grid--home, .v2-doctor-grid{ grid-template-columns:1fr; }
  .v2-department-card { min-height:260px; }
  .v2-facility-mosaic { grid-template-columns:1fr; grid-auto-rows:230px; }
  .v2-facility-mosaic figure.is-wide { grid-column:auto; }
  .v2-patient-action-row { flex-direction:column; }
  .v2-patient-action-row .btn { justify-content:center; }
  .v2-home-cta, .v2-directory-cta { padding:44px 0; }
  .v2-home-cta-actions, .v2-directory-cta .container > div:last-child { width:100%; flex-direction:column; }
  .v2-home-cta-actions .btn, .v2-directory-cta .container > div:last-child .btn { width:100%; justify-content:center; }
  .v2-page-hero h1, .v2-department-hero h1 { font-size:clamp(2.5rem,12vw,3.5rem); }
  .v2-page-hero-panel { grid-template-columns:1fr 1fr; }
  .v2-speciality-stat { right:-2px; }
  .v2-speciality-stat.is-secondary { left:-2px; }
  .v2-medical-orbit { width:185px; }
  .v2-speciality-search-row { align-items:stretch; flex-direction:column; }
  .v2-doctor-toolbar { grid-template-columns:1fr; }
  .v2-search-box { grid-column:auto; }
  .v2-sort-box { grid-template-columns:auto 1fr; }
  .v2-doctor-actions { align-items:stretch; flex-direction:column; }
  .v2-doctor-actions .btn, .v2-link-button { justify-content:center; width:100%; }
  .v2-doctor-hero { padding-top:34px; }
  .v2-doctor-hero-grid { grid-template-columns:1fr; }
  .v2-doctor-portrait-wrap { max-width:280px; width:100%; margin:0 auto 18px; }
  .v2-doctor-hero-copy { text-align:center; }
  .v2-doctor-hero-copy .v2-kicker, .v2-profile-facts, .v2-profile-actions { justify-content:center; }
  .v2-profile-facts > span { text-align:left; }
  .v2-profile-sidebar { grid-template-columns:1fr; }
  .v2-session-grid, .v2-focus-grid { grid-template-columns:1fr; }
  .v2-doctor-grid--related { grid-template-columns:1fr; }
  .v2-department-title-row { align-items:flex-start; flex-direction:column; }
  .v2-department-hero-summary { grid-template-columns:repeat(3,1fr); }
  .v2-emergency-banner .container { grid-template-columns:40px 1fr; }
  .v2-emergency-banner .btn { grid-column:1/-1; width:100%; justify-content:center; }
  .v2-coordination-card { grid-template-columns:1fr; }
  .v2-coordination-card > div > div:last-child { flex-direction:column; }
}


/* 2026-08 UI polish audit */
.v2-card-linkable { cursor:pointer; }
.v2-card-linkable:focus-visible { outline:3px solid rgba(10,143,197,.26); outline-offset:4px; }
.v2-trust-item, .v2-department-card, .v2-doctor-card, .v2-facility-card, .v2-values-grid article{ backdrop-filter:saturate(1.08); }
.v2-trust-item:nth-child(1) .v2-trust-icon, .v2-values-grid article:nth-child(1) > span, .v2-facility-card:nth-child(1) .v2-facility-card-icon{ color:#0a7ab8; background:linear-gradient(135deg,#e6f5fc,#dff7ff); }
.v2-trust-item:nth-child(2) .v2-trust-icon, .v2-values-grid article:nth-child(2) > span, .v2-facility-card:nth-child(2) .v2-facility-card-icon{ color:#0c8d64; background:linear-gradient(135deg,#e7fbf3,#dff6ee); }
.v2-trust-item:nth-child(3) .v2-trust-icon, .v2-values-grid article:nth-child(3) > span, .v2-facility-card:nth-child(3) .v2-facility-card-icon{ color:#9254d4; background:linear-gradient(135deg,#f2ebff,#ece5ff); }
.v2-trust-item:nth-child(4) .v2-trust-icon, .v2-values-grid article:nth-child(4) > span, .v2-facility-card:nth-child(4) .v2-facility-card-icon{ color:#d26f24; background:linear-gradient(135deg,#fff3e8,#fff7ea); }
.v2-doctor-media { background:linear-gradient(145deg,#edf8fc,#e8f5f2); }
.v2-doctor-media img { object-position:center 18%; }
.v2-doctor-card.is-compact .v2-doctor-media { aspect-ratio:4 / 5; }
.v2-doctor-media { aspect-ratio:4 / 4.6; }
.v2-doctor-dept-badge { background:rgba(5,51,75,.68); }
.v2-doctor-copy h3 a:hover, .v2-department-card h3 a:hover, .v2-card-arrow:hover, .v2-link-button:hover { color:var(--v2-blue); }
.v2-doctor-facts span { background:linear-gradient(135deg,#f5fbfd,#eef8fb); color:#4f6b7a; }
.v2-doctor-toolbar {
  grid-template-columns:minmax(320px,1.3fr) 190px auto auto;
  gap:12px;
  align-items:start;
}
.v2-toolbar-search-group { min-width:0; }
.v2-search-help { margin:8px 4px 0; color:#5f7c8b; font-size:.74rem; line-height:1.45; }
.v2-toolbar-reset { min-height:50px; align-self:stretch; white-space:nowrap; }
.v2-filter-scroll .doctor-filter-btn { position:relative; overflow:hidden; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease, color .18s ease; }
.v2-filter-scroll .doctor-filter-btn:hover { transform:translateY(-1px); box-shadow:0 10px 18px rgba(7,59,92,.08); border-color:rgba(8,111,168,.16); background:rgba(255,255,255,.9); }
.v2-filter-scroll .doctor-filter-btn.active { background:linear-gradient(135deg,rgba(8,111,168,.96),rgba(11,138,131,.9)); }
.v2-result-count { background:linear-gradient(135deg,#eef8fb,#e7f7f5); color:var(--v2-navy); }
.v2-speciality-search-row { flex-wrap:wrap; }
.v2-facility-mosaic figure::after, .v2-facility-showcase figure::after {
  content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(4,39,57,0) 35%, rgba(4,39,57,.28)); pointer-events:none;
}
.v2-review-card blockquote, .v2-department-card p, .v2-facility-card p{ color:#4f6b7a; }
@media (max-width:1100px) {
  .v2-doctor-toolbar { grid-template-columns:minmax(260px,1fr) 170px auto; }
  .v2-toolbar-reset { grid-column:1 / -1; }
}
@media (max-width:760px) {
  .v2-doctor-toolbar { position:relative; top:auto; grid-template-columns:1fr; }
  .v2-result-count { justify-self:start; }
  .v2-search-help { margin-left:2px; margin-right:2px; }
}

/* Public floating action policy: WhatsApp only. */
.v2-care-launcher,.v2-mobile-dock,.v2-care-backdrop,.v2-care-panel,#naam-v2-root,#naam-v2-fallback-root{display:none!important;}

/* CMS clickable dashboard polish */
.v2-admin-metric-link,.v2-admin-card-clickable{position:relative;display:block;color:inherit;text-decoration:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}

.v2-admin-card-clickable{color:inherit}.v2-admin-card-arrow{position:absolute;right:15px;bottom:13px;color:var(--v2-blue);font-weight:900}.v2-admin-card-open{display:block;margin-top:14px;color:var(--v2-blue);font-size:.72rem;font-weight:850}.v2-admin-quick{grid-template-columns:repeat(4,minmax(0,1fr))}.v2-admin-quick a{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
@media(max-width:980px){.v2-admin-quick{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.v2-admin-quick{grid-template-columns:1fr}}

/* Doctor directory compact audit refinement */
.v2-doctor-toolbar{grid-template-columns:minmax(260px,1.15fr) minmax(190px,.72fr) minmax(145px,.5fr) auto auto;align-items:center;gap:9px;padding:10px}
.v2-doctor-toolbar .v2-search-box{min-height:46px}
.v2-doctor-toolbar .v2-search-box input{min-height:44px;font-size:.8rem}



.v2-reset-filter{min-height:38px;padding:7px 10px;border:1px solid rgba(8,111,168,.2);border-radius:10px;background:#fff;color:var(--v2-blue);font:inherit;font-size:.68rem;font-weight:850;cursor:pointer;transition:.18s ease}
.v2-reset-filter:hover{background:#eef8fb;border-color:rgba(8,111,168,.4);transform:translateY(-1px)}
.v2-doctor-toolbar .v2-result-count{padding:8px 10px;font-size:.68rem}
@media(max-width:980px){.v2-doctor-toolbar{grid-template-columns:1fr 1fr}.v2-doctor-toolbar .v2-search-box{grid-column:1/-1}.v2-doctor-toolbar .v2-result-count{justify-self:start}.v2-reset-filter{justify-self:end}}
@media(max-width:560px){.v2-doctor-toolbar{grid-template-columns:1fr}.v2-doctor-toolbar .v2-search-box{grid-column:auto}.v2-reset-filter{justify-self:start}.v2-doctor-toolbar .v2-result-count{justify-self:start}}

/* Doctor portrait framing normalization */
.v2-doctor-media,.v2-doctor-card.is-compact .v2-doctor-media{aspect-ratio:4/5}
.v2-doctor-media img{object-fit:cover;object-position:center top}
.v2-doctor-portrait{aspect-ratio:4/5}
.v2-doctor-portrait img{object-fit:cover;object-position:center top}

/* Compact doctor directory base */
.v2-directory-section .v2-doctor-toolbar{position:relative;top:auto;display:grid;grid-template-columns:minmax(250px,1.35fr) minmax(170px,.7fr) 150px auto auto;gap:9px;align-items:end;margin:0 0 18px;padding:10px;border-radius:17px;background:rgba(255,255,255,.96)}
.v2-directory-section .v2-search-box{min-height:44px;padding-inline:11px;border-radius:11px;background:#fbfdfe}
.v2-directory-section .v2-search-box input{min-height:42px;font-size:.8rem}

.v2-directory-section .v2-result-count{align-self:end;min-height:44px;display:grid;place-items:center;padding:0 11px;border-radius:11px;font-size:.68rem}
.v2-reset-filter{align-self:end;min-height:44px;padding:0 12px;border:1px solid #cbdce4;border-radius:11px;background:#fff;color:#527080;font:800 .7rem/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;cursor:pointer;transition:.18s ease}.v2-reset-filter:hover{border-color:#86b5c9;color:var(--v2-blue);background:#f5fafc}
.v2-directory-section .v2-doctor-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.v2-directory-section .v2-doctor-card{border-radius:18px;box-shadow:0 8px 24px rgba(7,59,92,.065)}

.v2-directory-section .v2-doctor-media{height:218px;aspect-ratio:auto;background:linear-gradient(145deg,#edf7fa,#e9f4f1)}
.v2-directory-section .v2-doctor-media img{width:100%;height:100%;object-fit:cover;object-position:center 12%;transform:none!important}
.v2-directory-section .v2-doctor-copy{padding:13px 14px 14px}
.v2-directory-section .v2-doctor-copy h3{font-size:.93rem;line-height:1.25}
.v2-directory-section .v2-doctor-qual{margin-top:5px;font-size:.64rem;line-height:1.38}
.v2-directory-section .v2-doctor-role{margin-top:4px;font-size:.68rem;line-height:1.38}
.v2-directory-section .v2-doctor-facts{gap:5px;margin-top:9px}
.v2-directory-section .v2-doctor-facts span{padding:5px 6px;border-radius:8px;font-size:.58rem}
.v2-directory-section .v2-doctor-focus{margin-top:9px;gap:4px}.v2-directory-section .v2-doctor-focus li{font-size:.62rem;line-height:1.4}
.v2-directory-section .v2-doctor-actions{gap:6px;padding-top:11px}.v2-directory-section .v2-doctor-actions .btn{min-height:34px;padding:7px 8px;border-radius:9px;font-size:.61rem}.v2-directory-section .v2-link-button{font-size:.63rem}
.v2-directory-section .v2-doctor-dept-badge{left:9px;bottom:9px;padding:5px 8px;font-size:.57rem}
@media(max-width:1120px){.v2-directory-section .v2-doctor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v2-directory-section .v2-doctor-toolbar{grid-template-columns:minmax(240px,1fr) minmax(170px,.7fr) 145px auto}.v2-directory-section .v2-reset-filter{grid-column:4}.v2-directory-section .v2-result-count{display:none}}
@media(max-width:820px){.v2-directory-section .v2-doctor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-directory-section .v2-doctor-toolbar{grid-template-columns:1fr 1fr}.v2-directory-section .v2-search-box{grid-column:1/-1}.v2-directory-section .v2-reset-filter{grid-column:auto}.v2-directory-section .v2-doctor-media{height:235px}}
@media(max-width:540px){.v2-directory-section .v2-doctor-grid{grid-template-columns:1fr;gap:12px}.v2-directory-section .v2-doctor-toolbar{grid-template-columns:1fr}.v2-directory-section .v2-search-box{grid-column:auto}.v2-directory-section .v2-doctor-media{height:260px}.v2-directory-section .v2-doctor-copy{padding:14px 15px}.v2-directory-section .v2-doctor-actions{flex-direction:row}.v2-directory-section .v2-doctor-actions .btn,.v2-directory-section .v2-link-button{width:auto}}

/* Compact CMS overview base */
.admin-overview-page .v2-admin-main{max-width:1440px}.admin-overview-page .v2-admin-report-shell{display:grid;gap:16px}
.admin-overview-page .v2-admin-metrics--compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.admin-overview-page .v2-admin-metric{position:relative;min-height:118px;padding:16px 17px!important;overflow:hidden;border:1px solid rgba(24,72,97,.10)!important;border-radius:18px!important;background:linear-gradient(145deg,#fff,var(--metric-soft,#eef7fb))!important;box-shadow:0 8px 24px rgba(21,63,86,.065)!important}
.admin-overview-page .v2-admin-metric::after{content:"";position:absolute;width:75px;height:75px;right:-25px;top:-28px;border-radius:50%;background:var(--metric-accent,#2188d9);opacity:.1}
.admin-overview-page .v2-admin-metric-label{color:#537080!important;font-size:.69rem!important;font-weight:850!important;text-transform:uppercase;letter-spacing:.04em}.admin-overview-page .v2-admin-metric-value{display:block;margin:6px 0 3px;color:var(--metric-accent,#2188d9)!important;font-size:2rem!important;line-height:1!important}.admin-overview-page .v2-admin-metric-note{color:#607a89!important;font-size:.65rem!important}.admin-overview-page .v2-admin-card-arrow{position:absolute;right:14px;bottom:12px;color:var(--metric-accent,#2188d9)}
.admin-overview-page .tone-blue{--metric-accent:#2188d9;--metric-soft:#eef7ff}.admin-overview-page .tone-violet{--metric-accent:#8162d5;--metric-soft:#f4f0ff}.admin-overview-page .tone-orange{--metric-accent:#de8429;--metric-soft:#fff7ec}.admin-overview-page .tone-teal{--metric-accent:#169b82;--metric-soft:#eefaf6}.admin-overview-page .tone-red{--metric-accent:#d65261;--metric-soft:#fff1f2}.admin-overview-page .tone-pink{--metric-accent:#c15aa8;--metric-soft:#fff1fb}.admin-overview-page .tone-cyan{--metric-accent:#2497af;--metric-soft:#effafd}.admin-overview-page .tone-amber{--metric-accent:#c99222;--metric-soft:#fff9e9}
.admin-overview-page .v2-admin-grid--reports{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.admin-overview-page .v2-admin-card{min-height:265px;padding:18px!important;border-radius:19px!important;border:1px solid #dce8ed!important;background:#fff!important;box-shadow:0 9px 25px rgba(18,63,86,.06)!important}.admin-overview-page .v2-admin-card.is-wide{grid-column:span 2}.admin-overview-page .v2-admin-card-head h2{font-size:.94rem!important}.admin-overview-page .v2-admin-card-head span{font-size:.62rem!important}.admin-overview-page .v2-admin-card-open{font-size:.62rem!important}
.v2-admin-columns{height:175px;display:flex;align-items:flex-end;gap:10px;padding:10px 4px 2px}.v2-admin-column{height:100%;flex:1;min-width:0;display:grid;grid-template-rows:20px 1fr 22px;gap:5px;text-align:center}.v2-admin-column>strong{color:#345669;font-size:.68rem}.v2-admin-column>small{align-self:center;color:#718995;font-size:.61rem}.v2-admin-column-rail{position:relative;overflow:hidden;height:100%;border-radius:9px;background:#edf3f6}.v2-admin-column-rail span{position:absolute;left:0;right:0;bottom:0;border-radius:9px 9px 4px 4px;background:linear-gradient(180deg,#4ba5e2,#217ec4)}.v2-admin-column-rail.tone-2 span{background:linear-gradient(180deg,#4dc6af,#15977f)}.v2-admin-column-rail.tone-3 span{background:linear-gradient(180deg,#a58de5,#7b5fc8)}.v2-admin-column-rail.tone-4 span{background:linear-gradient(180deg,#f1b05e,#df842d)}.v2-admin-column-rail.tone-5 span{background:linear-gradient(180deg,#e88795,#d45362)}.v2-admin-column-rail.tone-6 span{background:linear-gradient(180deg,#67bfd0,#2694ab)}
.v2-admin-donut-wrap{display:grid;grid-template-columns:145px minmax(0,1fr);gap:18px;align-items:center;padding:10px 0}.v2-admin-donut{width:140px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center}.v2-admin-donut-hole{width:84px;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;background:#fff;box-shadow:0 0 0 1px rgba(18,63,86,.06)}.v2-admin-donut-hole strong{color:#183c51;font-size:1.25rem}.v2-admin-donut-hole span{color:#7b909b;font-size:.58rem}.v2-admin-donut-legend{display:grid;gap:8px}.v2-admin-donut-legend>div{display:grid;grid-template-columns:9px 1fr auto;gap:7px;align-items:center}.v2-admin-donut-legend i{width:9px;height:9px;border-radius:50%}.v2-admin-donut-legend span{color:#557181;font-size:.67rem}.v2-admin-donut-legend strong{color:#274b60;font-size:.7rem}
.v2-admin-rank-list{display:grid;gap:7px;margin:10px 0 0;padding:0;list-style:none}.v2-admin-rank-list li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 8px;border-radius:11px;background:#f7fafc}.v2-admin-rank-no{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#eaf5fb;color:#1778ae;font-size:.62rem;font-weight:900}.v2-admin-rank-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4a6879;font-size:.66rem}.v2-admin-rank-list strong{color:#173d53;font-size:.7rem}
.admin-overview-page .v2-admin-bar-row.tone-1 .v2-admin-bar-fill{background:#2188d9}.admin-overview-page .v2-admin-bar-row.tone-2 .v2-admin-bar-fill{background:#17a689}.admin-overview-page .v2-admin-bar-row.tone-3 .v2-admin-bar-fill{background:#8a67d3}.admin-overview-page .v2-admin-bar-row.tone-4 .v2-admin-bar-fill{background:#e9913a}.admin-overview-page .v2-admin-bar-row.tone-5 .v2-admin-bar-fill{background:#d85c6a}
@media(max-width:1120px){.admin-overview-page .v2-admin-metrics--compact{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-overview-page .v2-admin-grid--reports{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.admin-overview-page .v2-admin-metrics--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-overview-page .v2-admin-grid--reports{grid-template-columns:1fr}.admin-overview-page .v2-admin-card.is-wide{grid-column:auto}.v2-admin-donut-wrap{grid-template-columns:125px minmax(0,1fr)}.v2-admin-donut{width:120px}.v2-admin-donut-hole{width:72px}}
@media(max-width:430px){.admin-overview-page .v2-admin-metrics--compact{grid-template-columns:1fr 1fr}.admin-overview-page .v2-admin-metric{min-height:106px;padding:13px!important}.admin-overview-page .v2-admin-metric-value{font-size:1.65rem!important}.v2-admin-donut-wrap{grid-template-columns:1fr}.v2-admin-donut{margin:auto}}


/* CMS-managed public imagery: keeps the V2 composition while the CMS is the source of truth. */
.v2-cms-rotator{position:relative;width:100%;height:100%;overflow:hidden;background:rgba(8,64,88,.18)}
.v2-cms-rotator-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity .7s ease;transform:none!important;animation:none!important}
.v2-cms-rotator-slide.is-active{opacity:1;z-index:1}
.v2-cms-rotator-dots{position:absolute;z-index:3;left:50%;bottom:14px;transform:translateX(-50%);display:flex;gap:7px;padding:7px 9px;border-radius:999px;background:rgba(3,32,48,.36);backdrop-filter:blur(8px)}
.v2-cms-rotator-dot{width:8px;height:8px;border:0;border-radius:50%;padding:0;background:rgba(255,255,255,.55);cursor:pointer}
.v2-cms-rotator-dot.is-active{width:22px;border-radius:999px;background:#fff}
.v2-hero-photo-frame>.v2-cms-rotator{position:absolute;inset:0}
.v2-speciality-hero-visual>.v2-cms-rotator{width:min(100%,520px);height:330px;border-radius:34px;box-shadow:0 28px 70px rgba(2,28,43,.28);border:1px solid rgba(255,255,255,.24)}
.v2-speciality-image-badge{position:absolute;left:0;bottom:18px;z-index:4;display:flex;align-items:center;gap:10px;padding:12px 15px;border-radius:16px;background:rgba(255,255,255,.96);color:var(--v2-navy);font-weight:800;box-shadow:var(--v2-shadow)}
.v2-speciality-image-badge svg{width:22px;color:var(--v2-teal)}
@media(max-width:760px){.v2-speciality-hero-visual>.v2-cms-rotator{height:280px;border-radius:26px}.v2-speciality-image-badge{left:12px;bottom:8px}}


/* === CMS/Image-managed hero enhancements === */
.v2-managed-slider{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;border-radius:inherit;background:#dcebf2;isolation:isolate}.v2-managed-slider .hero-slide{position:absolute;inset:0}.v2-managed-slider .hero-slide-image{width:100%;height:100%;object-fit:cover;display:block}.v2-managed-slider--blob{border-radius:inherit}.v2-managed-slider--rounded{border-radius:30px;position:relative;min-height:100%}.v2-hero-photo-frame>.v2-managed-slider,.v2-hero-photo-frame>.hero-slider{position:absolute;inset:0;border-radius:inherit;overflow:hidden}.v2-speciality-hero-visual{position:relative;display:grid;align-items:end;min-height:360px}.v2-speciality-photo-shell{position:relative;min-height:340px;border-radius:32px;overflow:hidden;border:1px solid rgba(255,255,255,.24);box-shadow:0 26px 70px rgba(1,24,41,.22);background:rgba(255,255,255,.12)}.v2-speciality-photo-shell .services-hero-slider{position:absolute;inset:0;width:100%;height:100%}.v2-speciality-stat{position:absolute;left:18px;bottom:18px;z-index:2}.v2-speciality-stat.is-secondary{left:auto;right:18px;bottom:28px}.v2-rating{display:flex;gap:2px;color:#d88918;font-size:1rem}@media(max-width:1080px){.v2-speciality-hero-visual{min-height:320px}}@media(max-width:760px){.v2-speciality-photo-shell{min-height:280px}.v2-speciality-stat{left:12px;bottom:12px}.v2-speciality-stat.is-secondary{right:12px;left:auto;bottom:18px}}@media(max-width:520px){.v2-speciality-photo-shell{min-height:240px}.v2-speciality-stat{position:static;margin-top:12px}.v2-speciality-hero-visual{display:block;min-height:0}}

/* CMS-linked Specialities hero sizing.
   The rotator is absolutely pinned because the photo shell uses min-height rather than a fixed height. */
.v2-speciality-photo-shell>.v2-cms-rotator{position:absolute;inset:0;width:100%;height:auto;min-height:0;border-radius:inherit;overflow:hidden}
.v2-speciality-photo-shell>.v2-cms-rotator .v2-cms-rotator-slide{width:100%;height:100%;object-fit:cover}

/* Deterministic CMS hero sizing and unique managed galleries */
.v2-page-hero--specialities .v2-speciality-photo-shell{
  height:clamp(340px,31vw,430px);
  min-height:340px;
}
.v2-page-hero--specialities .v2-speciality-photo-shell>.v2-cms-rotator{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  border-radius:inherit;
  overflow:hidden;
  background:#d9ebf2;
}
.v2-page-hero--specialities .v2-speciality-photo-shell>.v2-cms-rotator .v2-cms-rotator-slide{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.v2-facility-mosaic--managed{
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-rows:clamp(260px,28vw,360px);
  gap:16px;
}
.v2-facility-mosaic--managed figure,
.v2-facility-mosaic--managed figure.is-wide{grid-column:auto;border-radius:28px}
.v2-facility-mosaic--managed img{object-position:center}
@media(max-width:760px){
  .v2-page-hero--specialities .v2-speciality-photo-shell{height:310px;min-height:310px}
  .v2-facility-mosaic--managed{grid-template-columns:1fr;grid-auto-rows:250px}
}
@media(max-width:520px){
  .v2-page-hero--specialities .v2-speciality-photo-shell{height:255px;min-height:255px}
}

/* === Specialities hero visibility and compact stat overlays ===
   The previous rule set inherited top/right from an older stat style while
   also applying bottom/left. That stretched the first stat card across the
   entire media area and visually covered the CMS images. This block resets
   all four offsets and lets the media shell size itself by aspect ratio. */
.v2-page-hero--specialities .v2-speciality-hero-visual{
  position:relative;
  display:block;
  min-height:0;
  width:100%;
  max-width:540px;
  margin-inline:auto;
}
.v2-page-hero--specialities .v2-speciality-photo-shell{
  position:relative;
  width:min(100%,520px);
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4/3;
  margin-inline:auto;
  overflow:hidden;
  border-radius:30px;
  background:#d9ebf2;
  border:1px solid rgba(255,255,255,.24);
  box-shadow:0 24px 58px rgba(1,24,41,.24);
}
.v2-page-hero--specialities .v2-speciality-photo-shell>.v2-cms-rotator{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  border-radius:inherit;
  overflow:hidden;
}
.v2-page-hero--specialities .v2-speciality-photo-shell .v2-cms-rotator-slide{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.v2-page-hero--specialities .v2-speciality-stat{
  position:absolute!important;
  top:auto!important;
  right:auto!important;
  bottom:16px!important;
  left:16px!important;
  width:auto!important;
  min-width:126px;
  max-width:170px;
  padding:11px 13px;
  border-radius:16px;
  background:rgba(5,64,84,.72);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 10px 26px rgba(1,24,41,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.v2-page-hero--specialities .v2-speciality-stat.is-secondary{
  top:auto!important;
  left:auto!important;
  right:16px!important;
  bottom:16px!important;
}
.v2-page-hero--specialities .v2-speciality-stat strong{
  font-size:1.45rem;
  line-height:1;
}
.v2-page-hero--specialities .v2-speciality-stat span{
  margin-top:5px;
  font-size:.64rem;
  line-height:1.35;
}
.v2-page-hero--specialities .v2-cms-rotator-dots{
  bottom:13px;
}
@media(max-width:820px){
  .v2-page-hero--specialities .v2-speciality-hero-visual{max-width:520px}
  .v2-page-hero--specialities .v2-speciality-photo-shell{
    width:100%;
    border-radius:26px;
  }
}
@media(max-width:560px){
  .v2-page-hero--specialities .v2-speciality-photo-shell{
    aspect-ratio:4/3;
    border-radius:22px;
  }
  .v2-page-hero--specialities .v2-speciality-stat{
    position:absolute!important;
    top:auto!important;
    right:auto!important;
    left:10px!important;
    bottom:10px!important;
    min-width:104px;
    max-width:124px;
    padding:8px 10px;
    margin:0!important;
    border-radius:13px;
  }
  .v2-page-hero--specialities .v2-speciality-stat.is-secondary{
    left:auto!important;
    right:10px!important;
    bottom:10px!important;
  }
  .v2-page-hero--specialities .v2-speciality-stat strong{font-size:1.2rem}
  .v2-page-hero--specialities .v2-speciality-stat span{font-size:.56rem}
  .v2-page-hero--specialities .v2-cms-rotator-dots{
    bottom:9px;
    gap:5px;
    padding:5px 7px;
  }
  .v2-page-hero--specialities .v2-cms-rotator-dot{width:6px;height:6px}
  .v2-page-hero--specialities .v2-cms-rotator-dot.is-active{width:16px}
}


/* === Production-stable CMS carousel for Specialities hero ===
   Final override intentionally resolves earlier experimental sizing rules. */
.v2-page-hero--specialities .v2-speciality-hero-visual{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:540px!important;
  min-height:0!important;
  margin-inline:auto!important;
}
.v2-page-hero--specialities .v2-speciality-photo-shell{
  position:relative!important;
  width:min(100%,520px)!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4/3!important;
  margin-inline:auto!important;
  overflow:hidden!important;
  border-radius:30px!important;
  background:#d9ebf2!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:0 24px 58px rgba(1,24,41,.24)!important;
}
.v2-page-hero--specialities .v2-speciality-photo-shell>.v2-cms-rotator{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
  border-radius:inherit!important;
  background:#d9ebf2!important;
  touch-action:pan-y;
}
.v2-page-hero--specialities .v2-cms-rotator-slide{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  opacity:0!important;
  z-index:0!important;
  transition:opacity .6s ease!important;
}
.v2-page-hero--specialities .v2-cms-rotator-slide.is-active{
  opacity:1!important;
  z-index:1!important;
}
.v2-cms-rotator-control{
  position:absolute;
  top:50%;
  z-index:5;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.42);
  border-radius:50%;
  background:rgba(3,32,48,.48);
  color:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.16);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  cursor:pointer;
  transition:background .2s ease,transform .2s ease,opacity .2s ease;
}
.v2-cms-rotator-control span{font-size:2rem;line-height:.8;margin-top:-2px}
.v2-cms-rotator-control.is-prev{left:12px}
.v2-cms-rotator-control.is-next{right:12px}
.v2-cms-rotator-control:hover{background:rgba(3,32,48,.76);transform:translateY(-50%) scale(1.04)}
.v2-cms-rotator-control:focus-visible,.v2-cms-rotator-dot:focus-visible{outline:3px solid #fff;outline-offset:3px}
.v2-page-hero--specialities .v2-cms-rotator-dots{
  top:12px!important;
  bottom:auto!important;
  left:50%!important;
  z-index:5!important;
  transform:translateX(-50%)!important;
}
.v2-page-hero--specialities .v2-speciality-stat{
  z-index:4!important;
}
@media(max-width:560px){
  .v2-page-hero--specialities .v2-speciality-photo-shell{border-radius:22px!important}
  .v2-cms-rotator-control{width:36px;height:36px;opacity:.9}
  .v2-cms-rotator-control.is-prev{left:8px}.v2-cms-rotator-control.is-next{right:8px}
  .v2-page-hero--specialities .v2-cms-rotator-dots{top:9px!important}
}
@media(prefers-reduced-motion:reduce){
  .v2-cms-rotator-slide{transition:none!important}
}

/* === Specialities banners use their native 1536x600 composition === */
.v2-page-hero--specialities .v2-speciality-hero-visual{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  max-width:620px!important;
  align-items:stretch!important;
}
.v2-page-hero--specialities .v2-speciality-photo-shell{
  grid-column:1/-1!important;
  width:100%!important;
  aspect-ratio:64/25!important;
  border-radius:26px!important;
}
.v2-page-hero--specialities .v2-speciality-stat,
.v2-page-hero--specialities .v2-speciality-stat.is-secondary{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:12px 14px!important;
  border-radius:15px!important;
  background:rgba(5,64,84,.72)!important;
}
.v2-page-hero--specialities .v2-cms-rotator-dots{
  top:10px!important;
}
@media(max-width:560px){
  .v2-page-hero--specialities .v2-speciality-hero-visual{gap:8px!important}
  .v2-page-hero--specialities .v2-speciality-photo-shell{border-radius:18px!important}
  .v2-page-hero--specialities .v2-speciality-stat,
  .v2-page-hero--specialities .v2-speciality-stat.is-secondary{
    padding:9px 10px!important;
    border-radius:12px!important;
  }
}


/* === Hero media follows the CMS source canvas across screen sizes === */
.v2-home-hero-visual{
  min-height:clamp(370px,34vw,500px)!important;
}
.v2-home-hero .v2-hero-photo-frame{
  width:min(100%,640px)!important;
  aspect-ratio:16/9!important;
  border-radius:30px!important;
}
.v2-home-hero .v2-hero-photo-frame .v2-cms-rotator,
.v2-home-hero .v2-hero-photo-frame .v2-cms-rotator-slide{
  border-radius:inherit!important;
}
.v2-page-hero--specialities .v2-speciality-photo-shell{
  aspect-ratio:64/25!important;
}
@media(max-width:820px){
  .v2-home-hero-visual{min-height:clamp(350px,60vw,440px)!important}
  .v2-home-hero .v2-hero-photo-frame{width:min(100%,600px)!important}
}
@media(max-width:560px){
  .v2-home-hero-visual{min-height:clamp(270px,72vw,340px)!important}
  .v2-home-hero .v2-hero-photo-frame{border-radius:20px!important}
  .v2-page-hero--specialities .v2-speciality-hero-visual{max-width:100%!important}
}

/* === Homepage specialist promotions, larger hero and differentiation section === */
.v2-home-hero-grid{
  grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr)!important;
  gap:clamp(36px,5vw,68px)!important;
}
.v2-home-hero-visual{
  min-height:clamp(500px,39vw,610px)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
}
.v2-home-hero .v2-hero-photo-frame{
  width:min(100%,720px)!important;
  aspect-ratio:16/9!important;
  border-radius:30px!important;
}
.v2-home-hero-care-strip{
  position:relative;
  z-index:4;
  width:min(100%,720px);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.v2-home-hero-care-link{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:72px;
  padding:13px 15px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:18px;
  background:rgba(255,255,255,.96);
  color:var(--v2-navy);
  box-shadow:0 16px 38px rgba(2,32,49,.16);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.v2-home-hero-care-link:hover,.v2-home-hero-care-link:focus-visible{transform:translateY(-2px);box-shadow:0 20px 44px rgba(2,32,49,.2);border-color:rgba(14,128,136,.34)}
.v2-home-hero-care-link>span{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:14px;background:linear-gradient(135deg,#eaf7fc,#eaf9f4);color:var(--v2-blue)}
.v2-home-hero-care-link svg{width:22px;height:22px}.v2-home-hero-care-link small{display:block;color:#6d8491;font-size:.68rem;font-weight:800}.v2-home-hero-care-link strong{display:block;margin-top:2px;color:var(--v2-navy);font-size:.9rem}
.v2-home-hero .v2-hero-orbit{width:min(44vw,590px);opacity:.55}

.v2-home-specialist-spotlight{overflow:hidden;background:linear-gradient(180deg,#f7fbfd 0%,#fff 100%)}
.v2-promo-marquee{position:relative;width:100%;overflow:hidden;padding:12px 0 34px;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.v2-promo-track{display:flex;width:max-content;will-change:transform;animation:v2PromoMarquee var(--promo-duration,42s) linear infinite}
.v2-promo-group{display:flex;gap:18px;padding-right:18px}
.v2-promo-marquee:hover .v2-promo-track,.v2-promo-marquee:focus-within .v2-promo-track,.v2-promo-marquee.is-paused .v2-promo-track{animation-play-state:paused}
@keyframes v2PromoMarquee{to{transform:translate3d(-50%,0,0)}}
.v2-promo-doctor-card{display:block;flex:0 0 clamp(205px,19vw,270px);width:clamp(205px,19vw,270px);aspect-ratio:4/5;padding:0;overflow:hidden;border:0;border-radius:24px;background:#eaf3f7;box-shadow:0 15px 36px rgba(7,59,92,.13);cursor:pointer;transition:transform .24s ease,box-shadow .24s ease}
.v2-promo-doctor-card:hover,.v2-promo-doctor-card:focus-visible{transform:translateY(-7px);box-shadow:0 24px 50px rgba(7,59,92,.2);outline:3px solid rgba(13,126,139,.28);outline-offset:4px}
.v2-promo-doctor-card img{width:100%;height:100%;object-fit:cover;display:block}
.v2-promo-dialog{width:min(92vw,520px);max-width:none;padding:0;border:0;border-radius:30px;background:transparent;overflow:visible}
.v2-promo-dialog::backdrop{background:rgba(2,24,38,.72);backdrop-filter:blur(7px)}
.v2-promo-dialog-shell{position:relative;padding:18px;border-radius:30px;background:#fff;box-shadow:0 35px 90px rgba(2,24,38,.35)}
.v2-promo-dialog-close{position:absolute;right:8px;top:8px;z-index:3;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(4,37,55,.86);color:#fff;font-size:1.45rem;line-height:1;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.v2-promo-expanded-card{display:block;width:min(100%,400px);aspect-ratio:4/5;margin:0 auto;padding:0;overflow:hidden;border:0;border-radius:22px;background:#eaf3f7;cursor:pointer;box-shadow:0 18px 44px rgba(7,59,92,.18)}
.v2-promo-expanded-card img{width:100%;height:100%;object-fit:cover}.v2-promo-expanded-card:focus-visible{outline:4px solid var(--v2-teal);outline-offset:4px}
.v2-promo-dialog-copy{padding:16px 6px 3px;text-align:center}.v2-promo-dialog-copy h3{margin:6px 0 5px;color:var(--v2-navy);font-size:1.25rem}.v2-promo-dialog-copy p{margin:0;color:var(--v2-muted);font-size:.82rem;line-height:1.55}

.v2-home-difference{background:#fff}
.v2-home-difference-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.v2-home-difference-grid article{min-height:250px;padding:26px 22px;border:1px solid var(--v2-line);border-radius:24px;background:linear-gradient(145deg,#fff,#f6fbfd 62%,#f2faf7);box-shadow:var(--v2-shadow-sm);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}

.v2-home-difference-grid article>span{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:#fff;color:var(--v2-teal);box-shadow:0 8px 22px rgba(7,59,92,.09)}
.v2-home-difference-grid article svg{width:25px;height:25px}.v2-home-difference-grid h3{margin:20px 0 9px;color:var(--v2-navy);font-size:1.04rem}.v2-home-difference-grid p{margin:0;color:var(--v2-muted);font-size:.88rem;line-height:1.68}

/* Specialities: keep the 1536x600 artwork fully visible inside a taller fitted screen. */
.v2-page-hero--specialities .v2-page-hero-grid{grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr)!important;gap:42px!important}
.v2-page-hero--specialities .v2-speciality-hero-visual{max-width:720px!important;width:100%!important}
.v2-page-hero--specialities .v2-speciality-photo-shell{width:100%!important;aspect-ratio:2/1!important;border-radius:28px!important;background:#d7e9f0!important}
.v2-page-hero--specialities .v2-speciality-photo-shell .v2-cms-rotator-slide{object-fit:contain!important;object-position:center!important;background:#d7e9f0!important}

@media(max-width:1180px){
  .v2-home-hero-grid{grid-template-columns:1fr 1fr!important;gap:34px!important}
  .v2-home-difference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v2-page-hero--specialities .v2-page-hero-grid{grid-template-columns:1fr!important}
  .v2-page-hero--specialities .v2-speciality-hero-visual{margin-top:8px!important}
}
@media(max-width:820px){
  .v2-home-hero-grid{grid-template-columns:1fr!important}.v2-home-hero-visual{min-height:0!important;margin-top:10px!important}.v2-home-hero .v2-hero-photo-frame{width:min(100%,680px)!important}.v2-home-hero-care-strip{width:min(100%,680px)}
  .v2-promo-doctor-card{flex-basis:230px;width:230px}
}
@media(max-width:560px){
  .v2-home-hero-care-strip{grid-template-columns:1fr;gap:8px}.v2-home-hero-care-link{min-height:62px;padding:10px 12px}.v2-home-hero-care-link>span{width:38px;height:38px;flex-basis:38px}
  .v2-home-difference-grid{grid-template-columns:1fr}.v2-home-difference-grid article{min-height:0;padding:22px 19px}
  .v2-promo-marquee{mask-image:none;-webkit-mask-image:none}.v2-promo-doctor-card{flex-basis:68vw;width:68vw;max-width:250px;border-radius:20px}.v2-promo-dialog{width:min(94vw,440px)}.v2-promo-dialog-shell{padding:12px;border-radius:24px}.v2-promo-expanded-card{border-radius:18px}
  .v2-page-hero--specialities .v2-speciality-photo-shell{aspect-ratio:16/9!important;border-radius:20px!important}
}
@media(prefers-reduced-motion:reduce){
  .v2-promo-track{animation:none!important}.v2-promo-marquee{overflow-x:auto!important;mask-image:none!important;-webkit-mask-image:none!important}.v2-promo-group[aria-hidden="true"]{display:none!important}
}

/* === SOURCE: assets/v2/css/naam-v2-inner.css === */
/* NAAM Hospitals V2 — Checkpoint 04 inner-page system */
.skip-link{position:fixed;left:14px;top:10px;z-index:9999;transform:translateY(-160%);padding:10px 14px;border-radius:10px;background:#fff;color:var(--v2-navy);font-weight:800;box-shadow:var(--v2-shadow);transition:transform .18s ease}.skip-link:focus{transform:translateY(0)}
.v2-inner-page main{overflow:hidden}.v2-inner-hero{position:relative;color:#fff;background:linear-gradient(125deg,#063954 0%,#075e80 52%,#07868c 100%);padding:76px 0 62px}.v2-inner-hero:before,.v2-inner-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.v2-inner-hero:before{width:420px;height:420px;right:-120px;top:-220px;background:radial-gradient(circle,rgba(255,255,255,.16),rgba(255,255,255,0) 68%)}.v2-inner-hero:after{width:320px;height:320px;left:-190px;bottom:-220px;border:1px solid rgba(255,255,255,.12)}
.v2-inner-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.85fr);gap:54px;align-items:center;position:relative;z-index:1}.v2-inner-hero .breadcrumb{color:rgba(255,255,255,.68);margin-bottom:22px}.v2-inner-hero .breadcrumb a{color:#fff}.v2-inner-hero-copy h1,.v2-inner-hero--compact h1{max-width:820px;margin:13px 0 18px;color:#fff;font:800 clamp(2.55rem,5.2vw,4.8rem)/1.02 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.055em}.v2-inner-hero-copy h1 em,.v2-inner-hero--compact h1 em{font-style:normal;color:#8ce7da}.v2-inner-hero-copy>p,.v2-inner-hero--compact>div>p{max-width:720px;margin:0;color:rgba(255,255,255,.84);font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.75}.v2-inner-hero-media{position:relative;min-height:410px}.v2-inner-hero-media>img{width:100%;height:410px;object-fit:cover;border-radius:34px;border:1px solid rgba(255,255,255,.24);box-shadow:0 30px 80px rgba(1,24,41,.3)}.v2-image-trust-card{position:absolute;left:-26px;bottom:24px;display:flex;align-items:center;gap:12px;min-width:230px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.96);color:var(--v2-navy);box-shadow:var(--v2-shadow)}.v2-image-trust-card>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--v2-teal-soft);color:var(--v2-teal)}.v2-image-trust-card svg{width:22px}.v2-image-trust-card strong,.v2-image-trust-card small{display:block}.v2-image-trust-card small{margin-top:3px;color:var(--v2-muted)}
.v2-inner-hero--compact{padding:62px 0 54px}.v2-inner-hero--compact>.container{position:relative;z-index:1}.v2-inner-hero--compact h1{margin-top:12px;margin-bottom:14px;font-size:clamp(2.35rem,4.5vw,4.2rem)}
.v2-about-intro{padding-top:84px}.v2-about-intro-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.72fr);gap:58px;align-items:start}.v2-about-intro .v2-section-copy p{font-size:1.02rem;line-height:1.78;color:#536f80}.v2-about-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px;border:1px solid var(--v2-line);border-radius:28px;background:linear-gradient(145deg,#fff,#f1fbfd);box-shadow:var(--v2-shadow-sm)}.v2-about-facts div{padding:22px 18px;border-radius:18px;background:#fff;border:1px solid rgba(8,80,118,.08)}.v2-about-facts strong{display:block;color:var(--v2-navy);font:800 2rem/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}.v2-about-facts span{display:block;margin-top:8px;color:var(--v2-muted);font-size:.82rem;line-height:1.4}
.v2-purpose-section{background:linear-gradient(180deg,#f5fbfd 0,#fff 100%)}.v2-purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:34px}.v2-purpose-card{position:relative;overflow:hidden;padding:34px;border-radius:28px;border:1px solid var(--v2-line);background:#fff;box-shadow:var(--v2-shadow-sm)}.v2-purpose-card:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-80px;bottom:-90px;background:rgba(10,143,197,.08)}.v2-purpose-card.is-mission:after{background:rgba(11,138,131,.09)}.v2-purpose-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--v2-sky);color:var(--v2-blue)}.v2-purpose-icon svg{width:26px}.v2-purpose-card small{display:block;margin-top:22px;color:var(--v2-teal);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.v2-purpose-card h3{margin:6px 0 10px;color:var(--v2-navy);font-size:1.35rem}.v2-purpose-card p{margin:0;color:#587485;line-height:1.75}.v2-values-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}.v2-values-grid article{padding:22px 18px;border-radius:20px;background:#fff;border:1px solid var(--v2-line)}.v2-values-grid article>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--v2-teal-soft);color:var(--v2-teal)}.v2-values-grid svg{width:20px}.v2-values-grid h3{margin:16px 0 8px;color:var(--v2-navy);font-size:1rem}.v2-values-grid p{margin:0;color:var(--v2-muted);font-size:.84rem;line-height:1.65}
.v2-about-difference-grid{display:grid;grid-template-columns:minmax(350px,.85fr) minmax(0,1.15fr);gap:64px;align-items:center}.v2-about-photo-stack{position:relative;min-height:520px}.v2-about-photo-stack img{position:absolute;object-fit:cover;border-radius:28px;box-shadow:var(--v2-shadow)}.v2-about-photo-stack .is-primary{left:0;top:0;width:88%;height:390px}.v2-about-photo-stack .is-secondary{right:0;bottom:0;width:58%;height:240px;border:8px solid #fff}.v2-difference-list{display:grid;gap:12px;margin-top:24px}.v2-difference-list article{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:16px;border-radius:18px;background:#f7fbfd;border:1px solid rgba(8,80,118,.08)}.v2-difference-list article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#fff;color:var(--v2-blue);box-shadow:0 4px 14px rgba(7,59,92,.08)}.v2-difference-list svg{width:20px}.v2-difference-list h3{margin:0 0 5px;color:var(--v2-navy);font-size:1rem}.v2-difference-list p{margin:0;color:var(--v2-muted);font-size:.88rem;line-height:1.6}
.v2-inner-cta{padding:52px 0;color:#fff;background:linear-gradient(110deg,#073b5c,#086f88 58%,#0b8a83)}.v2-inner-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:34px}.v2-inner-cta h2{max-width:720px;margin:6px 0 0;color:#fff;font:800 clamp(1.8rem,3.5vw,3rem)/1.12 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.04em}.v2-inner-cta .eyebrow{color:#96efe4}.v2-inner-cta>.container>div:last-child{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.v2-facility-gallery-section{padding-bottom:34px}.v2-facility-showcase{display:grid;grid-template-columns:1.3fr .8fr .8fr;grid-template-rows:240px 240px;gap:12px}.v2-facility-showcase figure{position:relative;overflow:hidden;margin:0;border-radius:24px;background:#dfeff5}.v2-facility-showcase figure.is-large{grid-row:span 2}.v2-facility-showcase figure:last-child{grid-column:span 2}.v2-facility-showcase img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.v2-facility-showcase figure:hover img{transform:scale(1.035)}.v2-facility-showcase figcaption{position:absolute;left:14px;bottom:14px;padding:8px 12px;border-radius:999px;background:rgba(4,43,66,.84);backdrop-filter:blur(9px);color:#fff;font-size:.8rem;font-weight:800}.v2-facility-category.is-alt{background:#f6fbfd}.v2-facility-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.v2-facility-card{padding:26px;border:1px solid var(--v2-line);border-radius:24px;background:#fff;box-shadow:var(--v2-shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.v2-facility-card-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,var(--v2-sky),var(--v2-teal-soft));color:var(--v2-blue)}.v2-facility-card-icon svg{width:24px}.v2-facility-card h3{margin:18px 0 9px;color:var(--v2-navy);font-size:1.08rem}.v2-facility-card p{margin:0;color:var(--v2-muted);font-size:.9rem;line-height:1.68}.v2-digital-hospital{background:linear-gradient(125deg,#062f4a,#084f6e);color:#fff}.v2-digital-hospital-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.v2-digital-hospital h2{color:#fff}.v2-digital-hospital p{color:rgba(255,255,255,.78);line-height:1.75}.v2-digital-hospital ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;margin:22px 0 0;padding:0;list-style:none}.v2-digital-hospital li{position:relative;padding-left:22px;color:rgba(255,255,255,.88);font-size:.9rem}.v2-digital-hospital li:before{content:"✓";position:absolute;left:0;color:#8de9dc;font-weight:900}.v2-digital-visual{position:relative;display:grid;place-items:center;min-height:350px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:radial-gradient(circle,rgba(255,255,255,.12),transparent 64%)}.v2-digital-visual>span{display:grid;place-items:center;width:112px;height:112px;border-radius:34px;background:#fff;color:var(--v2-blue);box-shadow:0 20px 50px rgba(0,0,0,.2)}.v2-digital-visual>span svg{width:54px}.v2-digital-orbit{position:absolute;display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#0d7187;border:1px solid rgba(255,255,255,.24);color:#fff;font-weight:900;box-shadow:0 12px 30px rgba(0,0,0,.18)}.v2-digital-orbit.one{left:8%;top:18%}.v2-digital-orbit.two{right:8%;top:28%}.v2-digital-orbit.three{right:22%;bottom:5%}
.v2-contact-section{padding-top:52px}.v2-contact-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:-82px;position:relative;z-index:3}.v2-contact-card{display:block;padding:20px;border-radius:20px;background:#fff;border:1px solid var(--v2-line);box-shadow:var(--v2-shadow);text-decoration:none;color:inherit}.v2-contact-card>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--v2-sky);color:var(--v2-blue)}.v2-contact-card svg{width:21px}.v2-contact-card small,.v2-contact-card strong,.v2-contact-card em{display:block}.v2-contact-card small{margin-top:14px;color:var(--v2-muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.v2-contact-card strong{margin-top:4px;color:var(--v2-navy);font-size:.96rem;word-break:break-word}.v2-contact-card em{margin-top:7px;color:var(--v2-teal);font-size:.76rem;font-style:normal;font-weight:700}.v2-contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:28px;margin-top:50px;align-items:start}.v2-contact-info-panel{padding:12px 12px 12px 0}.v2-contact-info-panel>p{color:var(--v2-muted);line-height:1.7}.v2-contact-detail{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:17px 0;border-top:1px solid var(--v2-line)}.v2-contact-detail>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--v2-teal-soft);color:var(--v2-teal)}.v2-contact-detail svg{width:20px}.v2-contact-detail h3{margin:0 0 6px;color:var(--v2-navy);font-size:1rem}.v2-contact-detail p{margin:0;color:var(--v2-muted);line-height:1.65}.v2-map-card{display:grid;grid-template-columns:.75fr 1.25fr;overflow:hidden;margin-top:28px;border:1px solid var(--v2-line);border-radius:28px;background:#fff;box-shadow:var(--v2-shadow-sm)}.v2-map-card>div{padding:34px}.v2-map-card h2{margin:7px 0 10px;color:var(--v2-navy)}.v2-map-card p{color:var(--v2-muted);line-height:1.65}.v2-map-card iframe{width:100%;min-height:330px;border:0}
.v2-form-shell{padding:30px;border-radius:28px;background:#fff;border:1px solid var(--v2-line);box-shadow:var(--v2-shadow)}.v2-form-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}.v2-form-head>span{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:var(--v2-sky);color:var(--v2-blue)}.v2-form-head svg{width:24px}.v2-form-head small{display:block;color:var(--v2-teal);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.v2-form-head h2{margin:4px 0 5px;color:var(--v2-navy);font-size:1.5rem}.v2-form-head p{margin:0;color:var(--v2-muted);font-size:.88rem}.v2-form{display:block}.v2-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.v2-form-full{grid-column:1/-1}.v2-form .form-group{display:flex;flex-direction:column;gap:7px}.v2-form label{color:#294d63;font-size:.82rem;font-weight:750}.v2-form input,.v2-form select,.v2-form textarea{width:100%;border:1px solid #cfe0e8;border-radius:13px;background:#fbfdfe;color:var(--v2-ink);font:inherit;padding:12px 13px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.v2-form input:focus,.v2-form select:focus,.v2-form textarea:focus{border-color:var(--v2-blue-2);background:#fff;box-shadow:0 0 0 4px rgba(10,143,197,.09);outline:0}.v2-form textarea{resize:vertical;min-height:120px}.v2-form select:disabled{opacity:.7}.v2-form input.error,.v2-form select.error,.v2-form textarea.error{border-color:#d76760;background:#fffafa}.v2-form .field-error{min-height:16px;color:var(--v2-danger);font-size:.73rem}.v2-form-note{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:13px;border-radius:14px;background:#f1faf9;color:#456c73}.v2-form-note>span{display:grid;place-items:center;flex:0 0 26px;color:var(--v2-teal)}.v2-form-note svg{width:18px}.v2-form-note p{margin:0;font-size:.78rem;line-height:1.55}.v2-form-submit{margin-top:18px;min-height:48px}.v2-form-success{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:18px;background:#eaf8f1;border:1px solid #cbeadb;color:var(--v2-success)}.v2-form-success>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff}.v2-form-success svg{width:20px}.v2-form-success h3{margin:0 0 6px;color:#0d6848}.v2-form-success p{margin:0;line-height:1.6}.v2-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.v2-appointment-section{background:linear-gradient(180deg,#f6fbfd,#fff)}.v2-appointment-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:30px;align-items:start}.v2-appointment-aside{position:sticky;top:112px;padding:8px 8px 8px 0}.v2-appointment-aside>p{color:var(--v2-muted);line-height:1.7}.v2-appointment-benefits{display:grid;gap:10px;margin-top:24px}.v2-appointment-benefits>div{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start;padding:14px;border-radius:16px;background:#fff;border:1px solid var(--v2-line)}.v2-appointment-benefits>div>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--v2-sky);color:var(--v2-blue)}.v2-appointment-benefits svg{width:19px}.v2-appointment-benefits p{margin:0;color:#526f80;font-size:.86rem;line-height:1.55}.v2-appointment-benefits .is-emergency{border-color:#f0d2cf;background:#fff9f8}.v2-appointment-benefits .is-emergency>span{background:#fbe9e7;color:var(--v2-danger)}.v2-emergency-callout{display:block;margin-top:12px;padding:15px 17px;border-radius:16px;color:#fff;text-decoration:none;background:linear-gradient(110deg,#a92f28,#c34b3f);box-shadow:0 12px 30px rgba(169,47,40,.18)}.v2-emergency-callout small,.v2-emergency-callout strong{display:block}.v2-emergency-callout small{opacity:.82}.v2-emergency-callout strong{margin-top:4px;font-size:1.2rem}.v2-appointment-success{margin-bottom:18px}.v2-appointment-success strong{display:block;margin:8px 0}.v2-appointment-success .btn{margin-top:12px}
@media(max-width:1050px){.v2-inner-hero-grid{grid-template-columns:1fr .82fr;gap:30px}.v2-values-grid{grid-template-columns:repeat(3,1fr)}.v2-contact-cards{grid-template-columns:1fr 1fr}.v2-facility-card-grid{grid-template-columns:1fr 1fr}.v2-about-difference-grid{gap:36px}.v2-contact-grid,.v2-appointment-layout{grid-template-columns:1fr}.v2-appointment-aside{position:static}.v2-map-card{grid-template-columns:1fr}.v2-map-card iframe{min-height:300px}}
@media(max-width:760px){.v2-inner-hero{padding:48px 0 42px}.v2-inner-hero-grid{grid-template-columns:1fr}.v2-inner-hero-copy h1,.v2-inner-hero--compact h1{font-size:clamp(2.15rem,11vw,3.3rem)}.v2-inner-hero-media{min-height:310px}.v2-inner-hero-media>img{height:310px;border-radius:24px}.v2-image-trust-card{left:12px;bottom:12px;min-width:0;right:12px}.v2-about-intro-grid,.v2-about-difference-grid,.v2-digital-hospital-grid{grid-template-columns:1fr}.v2-purpose-grid{grid-template-columns:1fr}.v2-values-grid{grid-template-columns:1fr 1fr}.v2-about-photo-stack{min-height:410px}.v2-about-photo-stack .is-primary{height:310px}.v2-about-photo-stack .is-secondary{height:190px}.v2-inner-cta>.container{align-items:flex-start;flex-direction:column}.v2-inner-cta>.container>div:last-child{justify-content:flex-start}.v2-facility-showcase{grid-template-columns:1fr 1fr;grid-template-rows:230px 180px 180px}.v2-facility-showcase figure.is-large{grid-column:span 2;grid-row:auto}.v2-facility-showcase figure:last-child{grid-column:span 2}.v2-facility-card-grid{grid-template-columns:1fr}.v2-digital-hospital ul{grid-template-columns:1fr}.v2-digital-visual{min-height:280px}.v2-contact-cards{margin-top:-62px}.v2-contact-grid{margin-top:36px}.v2-form-grid{grid-template-columns:1fr}.v2-form-full{grid-column:auto}.v2-form-shell{padding:22px}.v2-map-card>div{padding:24px}}
@media(max-width:520px){.v2-contact-cards{grid-template-columns:1fr;gap:9px;margin-top:-44px}.v2-contact-card{padding:16px}.v2-contact-card>span{float:left;margin-right:12px}.v2-contact-card small{margin-top:0}.v2-values-grid{grid-template-columns:1fr}.v2-about-facts{grid-template-columns:1fr 1fr;padding:10px}.v2-about-facts div{padding:16px 13px}.v2-about-facts strong{font-size:1.55rem}.v2-purpose-card{padding:24px}.v2-about-photo-stack{min-height:350px}.v2-about-photo-stack .is-primary{width:94%;height:270px}.v2-about-photo-stack .is-secondary{width:62%;height:160px}.v2-facility-showcase{display:grid;grid-template-columns:1fr;grid-template-rows:none}.v2-facility-showcase figure,.v2-facility-showcase figure.is-large,.v2-facility-showcase figure:last-child{grid-column:auto;height:220px}.v2-form-shell{padding:18px;border-radius:22px}.v2-form-head h2{font-size:1.3rem}.v2-inner-cta{padding:40px 0}}
/* CMS checkpoint 03 reporting refinements */
.v2-admin-metrics--six{grid-template-columns:repeat(6,minmax(0,1fr))}.v2-admin-metric.is-positive{background:linear-gradient(145deg,#fff,#effaf5)}.v2-admin-grid--reports{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-admin-grid--reports .is-wide{grid-column:span 2}.v2-admin-grid--reports .v2-admin-bar-row{grid-template-columns:minmax(80px,135px) 1fr 38px}.v2-admin-grid--reports .v2-admin-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2-admin-empty{margin:0;color:var(--v2-muted);font-size:.84rem}.v2-admin-model-note{padding:15px;border-radius:16px;background:#fff8ed;border:1px solid #f0dfbd;color:#6e5a35}.v2-admin-model-note strong{display:block;color:#6a4e1f}.v2-admin-model-note p{margin:8px 0;font-size:.84rem;line-height:1.55}.v2-admin-model-note span{font-size:.76rem;color:#86704c}
@media(max-width:1180px){.v2-admin-metrics--six{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.v2-admin-metrics--six{grid-template-columns:1fr 1fr}.v2-admin-grid--reports{grid-template-columns:1fr}.v2-admin-grid--reports .is-wide{grid-column:auto}}@media(max-width:440px){.v2-admin-metrics--six{grid-template-columns:1fr}}

/* Checkpoint 03: Website privacy notice */
.v2-privacy-hero{background:linear-gradient(135deg,#f4fbfa 0%,#edf8ff 55%,#fff 100%)}
.v2-privacy-summary{align-self:center;background:#fff;border:1px solid rgba(18,82,88,.13);border-radius:24px;padding:28px;box-shadow:0 18px 55px rgba(21,74,86,.10)}
.v2-privacy-summary strong{display:block;color:#0d5b62;font:800 1.05rem/1.2 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;margin-bottom:10px}
.v2-privacy-summary p{margin:0 0 14px;color:#425b64;line-height:1.7}.v2-privacy-summary small{color:#667a82}
.v2-policy-layout{display:grid;grid-template-columns:minmax(190px,260px) minmax(0,1fr);gap:48px;align-items:start}
.v2-policy-nav{position:sticky;top:110px;display:grid;gap:4px;padding:14px;background:#f6fafb;border:1px solid #e3eef0;border-radius:18px}
.v2-policy-nav a{padding:10px 12px;border-radius:10px;color:#315b62;font-weight:700;text-decoration:none}.v2-policy-nav a:hover,.v2-policy-nav a:focus-visible{background:#e6f4f3;color:#074f57}
.v2-policy-content{display:grid;gap:0}.v2-policy-section{display:grid;grid-template-columns:54px minmax(0,1fr);gap:20px;padding:0 0 36px;margin:0 0 36px;border-bottom:1px solid #e6eef0;scroll-margin-top:120px}
.v2-policy-section:last-child{border-bottom:0}.v2-policy-number{width:44px;height:44px;border-radius:14px;background:#e8f5f4;color:#096169;display:grid;place-items:center;font-weight:800}
.v2-policy-section h2{margin:2px 0 14px;color:#153e46;font:800 clamp(1.35rem,2vw,1.8rem)/1.2 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}.v2-policy-section p,.v2-policy-section li{color:#4a6068;line-height:1.78}
.v2-policy-section ul{padding-left:1.25rem;margin:14px 0 0}.v2-policy-section li+li{margin-top:8px}.v2-policy-note{margin-top:18px;padding:16px 18px;border-left:4px solid #0b7a79;background:#f2fbfa;border-radius:0 14px 14px 0;color:#31575e;line-height:1.6}
.v2-policy-contact{display:grid;gap:8px;margin-top:16px;padding:18px;background:#f7fafb;border-radius:16px}.v2-policy-contact a{font-weight:800;color:#086a70;text-decoration:none}.v2-policy-contact span{color:#52666d}
@media (max-width:850px){.v2-policy-layout{grid-template-columns:1fr;gap:26px}.v2-policy-nav{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.v2-policy-section{grid-template-columns:44px minmax(0,1fr);gap:14px}}
@media (max-width:560px){.v2-policy-nav{grid-template-columns:1fr}.v2-policy-section{grid-template-columns:1fr}.v2-policy-number{width:40px;height:40px}}
.v2-form-note a,.feedback-privacy a,.referral-privacy-note a{color:#087078;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.referral-privacy-note{margin:10px 0 0;color:#5a6d73;font-size:.92rem;line-height:1.6}

/* Checkpoint 04: CMS content-health reporting and resilient server fallback */
.v2-admin-metrics--eight{grid-template-columns:repeat(4,minmax(0,1fr))}
.v2-admin-metric.is-attention{background:linear-gradient(145deg,#fff,#fff8ed);border-color:#f0dfbd}
.v2-admin-metric.is-attention .v2-admin-metric-value{color:#8b5b13}
.v2-admin-server-fallback{margin-bottom:15px}
.v2-admin-fallback-copy{margin:0;color:var(--v2-muted);font-size:.86rem;line-height:1.65}
.v2-admin-health-list{display:flex;flex-wrap:wrap;gap:8px}
.v2-admin-health-chip{display:inline-flex;align-items:center;min-height:34px;padding:8px 11px;border-radius:999px;background:#f5fafc;border:1px solid #dcebef;color:#31586a;font-size:.78rem;font-weight:750}
.v2-admin-empty.is-positive{padding:12px 14px;border-radius:14px;background:#edf9f4;color:#146746;border:1px solid #d2eee1}
@media(max-width:1180px){.v2-admin-metrics--eight{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.v2-admin-metrics--eight{grid-template-columns:1fr}}
.v2-admin-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.v2-admin-heading-actions .btn{white-space:nowrap}@media(max-width:820px){.v2-admin-heading-actions{justify-content:flex-start}}

/* Checkpoint 08: accessible async form status */
.v2-form-status{margin:0 0 14px;padding:12px 14px;border-radius:12px;border:1px solid #f0c9c9;background:#fff6f6;color:#8a3131;font-size:.9rem;font-weight:650;line-height:1.5}.v2-form-status[hidden]{display:none!important}.v2-form[aria-busy="true"]{opacity:.78}.v2-form[aria-busy="true"] .v2-form-submit{cursor:progress}.field-error:empty{display:none}.field-error:not(:empty){display:block;margin-top:6px}

.v2-inner-hero-media>img { object-position:center; }
.v2-image-trust-card { border:1px solid rgba(255,255,255,.72); backdrop-filter:blur(14px); }

.v2-difference-list article { transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.v2-about-photo-stack .is-primary { object-position:center; }
.v2-about-photo-stack .is-secondary { object-position:center; }

/* Privacy readability correction */
.v2-privacy-hero{background:linear-gradient(125deg,#063954 0%,#075d7e 56%,#078784 100%)!important;}
.v2-privacy-hero .v2-inner-hero-copy h1{color:#fff!important;font-size:clamp(2.5rem,5vw,4.6rem)!important;}
.v2-privacy-hero .v2-inner-hero-copy>p{color:rgba(255,255,255,.86)!important;font-size:1.08rem!important;line-height:1.72!important;}
.v2-privacy-summary{background:rgba(255,255,255,.96)!important;border:1px solid rgba(255,255,255,.55)!important;padding:30px!important;}
.v2-privacy-summary strong{font-size:1.12rem!important}.v2-privacy-summary p{font-size:.98rem!important;line-height:1.72!important}.v2-privacy-summary small{font-size:.82rem!important;}
.v2-privacy-body{background:linear-gradient(180deg,#f7fbfd,#fff 22%);}
.v2-policy-layout{max-width:1120px;margin-inline:auto;}
.v2-policy-nav{background:rgba(255,255,255,.94)!important;box-shadow:0 12px 35px rgba(7,59,92,.07);}
.v2-policy-nav a{font-size:.86rem!important;line-height:1.4;}
.v2-policy-section{padding:26px 28px 30px!important;margin:0 0 18px!important;border:1px solid #e1edf1!important;border-radius:22px!important;background:#fff;box-shadow:0 10px 30px rgba(7,59,92,.055);}
.v2-policy-number{width:46px!important;height:46px!important;font-size:.84rem;}
.v2-policy-section h2{font-size:clamp(1.42rem,2.2vw,1.9rem)!important;}
.v2-policy-section p,.v2-policy-section li{font-size:1rem!important;line-height:1.78!important;color:#405f70!important;}
.v2-policy-note{font-size:.96rem!important;}
.v2-policy-contact a,.v2-policy-contact span{font-size:.96rem!important;}
@media(max-width:560px){.v2-policy-section{padding:22px 18px 24px!important}.v2-policy-section p,.v2-policy-section li{font-size:.96rem!important}.v2-privacy-summary{padding:22px!important}}

/* V2.1 privacy editorial refinement — flat, readable policy layout. */
.v2-privacy-hero{padding:70px 0 58px!important}
.v2-privacy-hero-copy{position:relative;z-index:1;max-width:940px}
.v2-privacy-hero-copy h1{margin:13px 0 18px;color:#fff;font:800 clamp(2.55rem,5vw,4.6rem)/1.02 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.05em}
.v2-privacy-hero-copy>p{max-width:850px;margin:0;color:rgba(255,255,255,.88);font-size:1.08rem;line-height:1.78}
.v2-privacy-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.v2-privacy-meta span{padding:8px 11px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.09);color:#fff;font-size:.76rem;font-weight:750;backdrop-filter:blur(8px)}
.v2-privacy-body{padding-top:66px!important}
.v2-policy-layout{grid-template-columns:minmax(190px,245px) minmax(0,1fr)!important;gap:54px!important;max-width:1160px!important}
.v2-policy-nav{padding:10px!important;border-radius:16px!important;background:#f5fafb!important;box-shadow:none!important}
.v2-policy-nav a{font-size:.9rem!important;padding:11px 12px!important}
.v2-policy-content{max-width:820px}
.v2-policy-section{grid-template-columns:54px minmax(0,1fr)!important;padding:0 0 34px!important;margin:0 0 34px!important;border:0!important;border-bottom:1px solid #dce8ec!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.v2-policy-section:last-child{border-bottom:0!important;margin-bottom:0!important}
.v2-policy-section h2{font-size:clamp(1.5rem,2.3vw,2rem)!important;margin-top:0!important}
.v2-policy-section p,.v2-policy-section li{font-size:1.04rem!important;line-height:1.82!important;color:#38596a!important}
.v2-policy-note{font-size:1rem!important;padding:17px 18px!important;background:#edf9f7!important}
.v2-policy-contact{background:#f4f9fb!important;padding:18px!important}
@media(max-width:850px){.v2-policy-layout{grid-template-columns:1fr!important;gap:26px!important}.v2-policy-content{max-width:none}.v2-policy-nav{position:static!important;display:flex!important;overflow-x:auto!important;gap:6px!important}.v2-policy-nav a{flex:0 0 auto;white-space:nowrap}}
@media(max-width:560px){.v2-privacy-hero{padding:48px 0 42px!important}.v2-privacy-hero-copy>p{font-size:1rem}.v2-policy-section{grid-template-columns:1fr!important;gap:12px!important}.v2-policy-section p,.v2-policy-section li{font-size:1rem!important}}

.v2-inner-hero-media>.v2-cms-rotator{height:410px;border-radius:34px;border:1px solid rgba(255,255,255,.24);box-shadow:0 30px 80px rgba(1,24,41,.3)}
@media(max-width:760px){.v2-inner-hero-media>.v2-cms-rotator{height:310px;border-radius:24px}}


/* === CMS-driven public image blocks === */
.v2-inner-hero-media>.v2-managed-slider,.v2-inner-hero-media>.services-hero-slider{position:absolute;inset:0;width:100%;height:410px;border-radius:34px;border:1px solid rgba(255,255,255,.24);box-shadow:0 30px 80px rgba(1,24,41,.3);overflow:hidden}.v2-inner-hero-media>.services-hero-slider .hero-slide,.v2-inner-hero-media>.v2-managed-slider .hero-slide{position:absolute;inset:0}.v2-inner-hero-media>.services-hero-slider .hero-slide-image,.v2-inner-hero-media>.v2-managed-slider .hero-slide-image{width:100%;height:100%;object-fit:cover}.v2-facilities-page .v2-facility-showcase figure:not(.is-large):last-child{grid-column:auto}.v2-facilities-page .v2-facility-showcase{grid-template-columns:1.2fr .9fr .9fr 1fr;grid-template-rows:240px 240px}.v2-facilities-page .v2-facility-showcase figure.is-large{grid-row:span 2}.v2-facilities-page .v2-facility-showcase figure:last-child{grid-row:span 2}@media(max-width:760px){.v2-inner-hero-media>.v2-managed-slider,.v2-inner-hero-media>.services-hero-slider{height:310px;border-radius:24px}.v2-facilities-page .v2-facility-showcase{grid-template-columns:1fr 1fr;grid-template-rows:230px 180px 180px}.v2-facilities-page .v2-facility-showcase figure.is-large,.v2-facilities-page .v2-facility-showcase figure:last-child{grid-column:span 2;grid-row:auto}}@media(max-width:520px){.v2-facilities-page .v2-facility-showcase{grid-template-columns:1fr;grid-template-rows:none}.v2-facilities-page .v2-facility-showcase figure,.v2-facilities-page .v2-facility-showcase figure.is-large,.v2-facilities-page .v2-facility-showcase figure:last-child{grid-column:auto;height:220px}}

/* Page-specific hero proportions and non-repeating visual placements */
.v2-facilities-page .v2-inner-hero-grid{
  grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);
  gap:44px;
}
.v2-facilities-page .v2-inner-hero-media{min-height:470px}
.v2-facilities-page .v2-inner-hero-media>.v2-cms-rotator{
  height:470px;
  border-radius:34px;
}
.v2-facilities-page .v2-cms-rotator-slide{object-fit:cover;object-position:center}
.v2-facility-showcase--managed{
  grid-template-columns:1.35fr 1fr 1fr;
  grid-template-rows:250px 250px;
  gap:14px;
}
.v2-facility-showcase--managed figure{border-radius:26px}
.v2-facility-showcase--managed figure.is-large{grid-row:span 2}
.v2-facility-showcase--managed figure:last-child{grid-column:span 2;grid-row:auto}
.v2-about-care-panel{
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(28px,4vw,48px);
  border-radius:30px;
  border:1px solid rgba(8,80,118,.10);
  background:linear-gradient(145deg,#f8fcfe,#edf8fb 58%,#eefaf7);
  box-shadow:var(--v2-shadow-sm);
}
.v2-about-care-panel-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:20px;background:#fff;color:var(--v2-teal);box-shadow:0 10px 28px rgba(6,70,94,.10)}
.v2-about-care-panel-icon svg{width:30px}
.v2-about-care-panel>strong{margin-top:22px;color:var(--v2-navy);font-size:clamp(1.45rem,2.5vw,2.15rem);letter-spacing:-.035em}
.v2-about-care-panel>p{margin:12px 0 0;color:var(--v2-muted);line-height:1.75}
.v2-about-care-points{display:grid;gap:10px;margin-top:24px}
.v2-about-care-points span{display:flex;align-items:center;gap:10px;color:#315c70;font-weight:750;font-size:.9rem}
.v2-about-care-points svg{width:19px;color:var(--v2-teal)}
@media(max-width:1050px){
  .v2-facilities-page .v2-inner-hero-grid{grid-template-columns:1fr 1fr;gap:28px}
  .v2-facilities-page .v2-inner-hero-media{min-height:420px}
  .v2-facilities-page .v2-inner-hero-media>.v2-cms-rotator{height:420px}
}
@media(max-width:760px){
  .v2-facilities-page .v2-inner-hero-grid{grid-template-columns:1fr}
  .v2-facilities-page .v2-inner-hero-media{min-height:330px}
  .v2-facilities-page .v2-inner-hero-media>.v2-cms-rotator{height:330px;border-radius:25px}
  .v2-facility-showcase--managed{grid-template-columns:1fr 1fr;grid-template-rows:230px 200px 200px}
  .v2-facility-showcase--managed figure.is-large{grid-column:span 2;grid-row:auto}
  .v2-facility-showcase--managed figure:last-child{grid-column:span 2}
  .v2-about-care-panel{min-height:0}
}
@media(max-width:520px){
  .v2-facility-showcase--managed{grid-template-columns:1fr;grid-template-rows:none}
  .v2-facility-showcase--managed figure,.v2-facility-showcase--managed figure.is-large,.v2-facility-showcase--managed figure:last-child{grid-column:auto;height:230px}
}


/* === About/Facilities hero images use the CMS 16:9 source canvas === */
.v2-inner-hero--about .v2-inner-hero-media,
.v2-inner-hero--facilities .v2-inner-hero-media{
  min-height:0!important;
  align-self:center!important;
}
.v2-inner-hero--about .v2-inner-hero-media>.v2-cms-rotator,
.v2-facilities-page .v2-inner-hero--facilities .v2-inner-hero-media>.v2-cms-rotator{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16/9!important;
  border-radius:30px!important;
  overflow:hidden!important;
}
.v2-inner-hero--about .v2-cms-rotator-slide,
.v2-facilities-page .v2-inner-hero--facilities .v2-cms-rotator-slide{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
@media(max-width:760px){
  .v2-inner-hero--about .v2-inner-hero-media,
  .v2-inner-hero--facilities .v2-inner-hero-media{min-height:0!important}
  .v2-inner-hero--about .v2-inner-hero-media>.v2-cms-rotator,
  .v2-facilities-page .v2-inner-hero--facilities .v2-inner-hero-media>.v2-cms-rotator{
    height:auto!important;
    border-radius:22px!important;
  }
}

/* === Clean About/Facilities hero media presentation === */
.v2-inner-hero--about .v2-inner-hero-media{overflow:visible!important}
.v2-inner-hero--about .v2-inner-hero-media>.v2-cms-rotator{box-shadow:0 28px 72px rgba(1,24,41,.28)!important}
.v2-inner-hero--about .v2-image-trust-card{display:none!important}
@media(min-width:1180px){
  .v2-inner-hero--about .v2-inner-hero-grid{grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);gap:46px}
  .v2-inner-hero--about .v2-inner-hero-media>.v2-cms-rotator{width:min(100%,680px)!important;margin-inline:auto!important}
  .v2-facilities-page .v2-inner-hero--facilities .v2-inner-hero-media>.v2-cms-rotator{width:min(100%,720px)!important;margin-inline:auto!important}
}

/* === SOURCE: assets/v2/css/naam-v3.css === */
/* ==========================================================================
   NAAM Hospitals — V3 refinement layer
   --------------------------------------------------------------------------
   Loaded LAST, after styles.css, modern.css, naam-v2.css and naam-v2-inner.css.

   Scope of this file, deliberately narrow:
     1. Accessible colour  — brand hues kept; text-role variants darkened to
                             meet WCAG 2.1 AA (4.5:1 body, 3:1 large text).
     2. Legible type       — a single fluid scale; no rendered text below 12px.
     3. Consistent rhythm  — one spacing scale for section and card padding.
     4. Comfortable touch  — every interactive target at least 44x44px.
     5. Print + motion     — sensible defaults for both.

   It changes no layout structure, no component markup and no brand colour that
   is used decoratively. Logo, photography, Vision, Mission and Core Values are
   untouched.
   ========================================================================== */

:root {
  /* --- Text-role colour variants -----------------------------------------
     The decorative brand colours (--v2-teal, --v2-navy, --v2-blue) are left
     exactly as they are. These are used only where the colour carries text,
     because the original values failed contrast at small sizes. */
  --v3-teal-text:    #06655f;   /* was #0b8a83 — 4.04:1 -> 6.3:1 on white  */
  --v3-muted-text:   #4e6577;   /* was #607887 — 4.44:1 -> 6.6:1 on white  */
  --v3-muted-strong: #3d5566;   /* captions and metadata                   */
  --v3-ink:          #10293a;   /* body copy, slightly deeper than v2 ink  */

  /* --- Fluid type scale --------------------------------------------------
     Minimums are the important part: nothing renders below 0.75rem (12px),
     and body copy never drops under 1rem on any viewport. */
  --v3-step--1: clamp(0.8125rem, 0.79rem + 0.11vw, 0.875rem);  /* 13–14px  */
  --v3-step-0:  clamp(1rem,      0.97rem + 0.15vw, 1.0625rem); /* 16–17px  */
  --v3-step-1:  clamp(1.125rem,  1.08rem + 0.23vw, 1.25rem);   /* 18–20px  */
  --v3-step-2:  clamp(1.375rem,  1.27rem + 0.52vw, 1.75rem);   /* 22–28px  */
  --v3-step-3:  clamp(1.75rem,   1.55rem + 1.00vw, 2.5rem);    /* 28–40px  */
  --v3-step-4:  clamp(2.125rem,  1.79rem + 1.68vw, 3.25rem);   /* 34–52px  */

  /* --- Spacing scale ----------------------------------------------------- */
  --v3-space-2: 0.5rem;
  --v3-space-3: 0.75rem;
  --v3-space-4: 1rem;
  --v3-space-6: 1.5rem;
  --v3-space-8: 2rem;
  --v3-space-12: 3rem;
  --v3-space-16: 4rem;

  --v3-tap: 44px;               /* WCAG 2.5.5 minimum target size           */
}

/* ==========================================================================
   1. CONTRAST
   Each rule below replaces a measured WCAG failure. Ratios are against the
   background the element actually renders on.
   ========================================================================== */

/* Eyebrow labels: #0b8a83 on #f6fbfd measured 4.04:1 at 12px bold.
   Applied only on light backgrounds — the dark hero and CTA bands keep their
   existing light-on-dark treatment, which already passes. */
.eyebrow,
.v2-kicker {
  font-size: var(--v3-step--1);
  letter-spacing: .09em;
}
:is(.section, .v2-contact-section, .v2-map-card, .v2-form-shell) .eyebrow {
  color: var(--v3-teal-text);
}

/* Dark bands: restore the original light treatment so nothing disappears. */
.v2-heading-light .eyebrow { color: #8edee3; }
.v2-home-cta .eyebrow,
.v2-directory-cta .eyebrow { color: #91e1e3; }
.v2-inner-cta .eyebrow { color: #96efe4; }
.v2-facility-story .eyebrow { color: #8edee3; }
.v2-kicker--light,
.v2-home-hero .v2-kicker,
.v2-page-hero .v2-kicker,
.v2-inner-hero .v2-kicker { color: rgba(255,255,255,.92); }

/* Secondary paragraph text: #607887 measured 4.44:1. */
.section-sub,
.v2-doctor-role,
.v2-department-card p,
.v2-difference-list p,
.v2-facility-card p,
.v2-values-grid p,
.footer-desc {
  color: var(--v3-muted-text);
}

/* Small print inside white cards: measured 3.32–4.21:1. */
.v2-contact-card em,
.v2-form-head small,
.v2-profile-card-title small,
.feedback-step-label,
.v2-map-card .eyebrow {
  color: var(--v3-teal-text);
  font-size: var(--v3-step--1);
}

/* Directory filter labels rendered at 9.76px bold, 3.63:1. */


/* Optional-field hints and privacy notes. */
label small,
.v2-form-note p,
[data-i18n="optional"],
[data-i18n="privacy"],
[data-i18n="voiceLanguage"],
.testimonial-playlist-copy small {
  color: var(--v3-muted-strong);
  font-size: var(--v3-step--1);
}

/* Body copy sits a little deeper for comfortable long-form reading. */
body { color: var(--v3-ink); }

/* ==========================================================================
   2. TYPOGRAPHY
   The system font stack is kept — no webfont is introduced, so there is no
   extra network request and no render-blocking dependency.
   ========================================================================== */

body { font-size: var(--v3-step-0); line-height: 1.65; }

h1, .v2-home-hero-copy h1, .v2-inner-hero-copy h1 {
  font-size: var(--v3-step-4);
  line-height: 1.1;
  letter-spacing: -0.022em;
  text-wrap: balance;
}
h2, .section-title {
  font-size: var(--v3-step-3);
  line-height: 1.18;
  letter-spacing: -0.016em;
  text-wrap: balance;
}
h3 { font-size: var(--v3-step-1); line-height: 1.3; letter-spacing: -0.008em; }

p { text-wrap: pretty; }

/* Measure control: long paragraphs become hard to track past ~75 characters. */
.v2-section-copy p,
.v2-about-intro-grid p,
.section-sub,
.v2-home-hero-lead {
  max-width: 68ch;
}

/* The "Our Story" paragraphs previously ran together with collapsed margins. */
.v2-section-copy p + p,
.v2-about-intro-grid p + p { margin-top: var(--v3-space-4); }

/* Nothing renders smaller than 12px anywhere on the site. */
small, .v2-doctor-facts span, .footer-reg, .top-call-text {
  font-size: max(0.75rem, var(--v3-step--1));
}

/* ==========================================================================
   3. INTERACTIVE TARGETS AND FOCUS
   ========================================================================== */

.btn,
.nav-link,
.v2-link-button,
.v2-card-arrow,
.v2-text-link,
.footer-emerg-btn,
.footer-wa-btn,
.top-call-badge,
.v2-reset-filter {
  min-height: var(--v3-tap);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--v3-space-2);
}

/* Form controls: 16px minimum prevents iOS Safari zooming on focus. */
input, select, textarea {
  font-size: max(1rem, var(--v3-step-0));
  min-height: var(--v3-tap);
}
textarea { min-height: 7.5rem; }

/* Icon-only controls need the target even when the glyph is small. */
.hamburger,
[data-video-scroll] {
  min-width: var(--v3-tap);
  min-height: var(--v3-tap);
}
/* Carousel dots keep their small visual size; an invisible pseudo-element
   supplies the 44px touch target around each one. */
.v2-cms-rotator-dot { position: relative; }
.v2-cms-rotator-dot::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: var(--v3-tap);
  height: var(--v3-tap);
  transform: translate(-50%, -50%);
}

/* A single, clearly visible focus treatment everywhere. */
:focus-visible {
  outline: 3px solid var(--v3-teal-text);
  outline-offset: 3px;
  border-radius: 6px;
}
.skip-link:focus {
  outline: 3px solid var(--v3-teal-text);
  outline-offset: 2px;
}

/* ==========================================================================
   4. RHYTHM AND ALIGNMENT
   ========================================================================== */

.section { padding-block: clamp(3rem, 2.2rem + 3.4vw, 5.5rem); }

.v2-section-heading-row { gap: var(--v3-space-8); align-items: end; }
.v2-section-heading-row .section-sub { margin-top: var(--v3-space-3); }

/* Cards in a row end up the same height with their actions pinned to the base,
   which stops the ragged bottom edge on the speciality and doctor grids. */
.v2-department-card,
.v2-facility-card,
.v2-doctor-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.v2-department-card p,
.v2-facility-card p { flex: 1 1 auto; }
.v2-card-arrow { margin-top: auto; }

/* ==========================================================================
   5. MOBILE
   ========================================================================== */

@media (max-width: 760px) {
  /* Guarantees no horizontal scroll regardless of any wide child. */
  html, body { overflow-x: hidden; }

  .v2-home-hero-actions,
  .v2-page-hero-actions { flex-wrap: wrap; gap: var(--v3-space-3); }
  .v2-home-hero-actions .btn,
  .v2-page-hero-actions .btn { flex: 1 1 100%; }

  /* Four stat columns at 390px left roughly 80px per item. Two is readable. */
  .v2-home-hero-proof { grid-template-columns: repeat(2, 1fr); gap: var(--v3-space-3); }

  .v2-contact-cards { grid-template-columns: 1fr; }

  /* Long phone numbers and email addresses must not force the layout wider. */
  .v2-contact-card strong,
  .footer-contact-mini { overflow-wrap: anywhere; }
}

/* ==========================================================================
   6. MOTION AND PRINT
   ========================================================================== */

@media (prefers-reduced-motion: reduce) {
  .v2-cms-rotator-slide { transition: none !important; }
  html { scroll-behavior: auto; }
}

@media print {
  .top-bar, .site-header, .floating-actions, .v2-home-cta,
  .v2-inner-cta, .v2-directory-cta, .site-footer nav { display: none !important; }
  body { background: #fff; color: #000; font-size: 11pt; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 9pt; }
  .section { padding-block: 1rem; }
}

/* Floating quick-contact dock: the wrapper exists only so the WhatsApp control
   sits inside a landmark. The button already carries its own fixed
   positioning from modern.css, so this wrapper stays layout-neutral. */
.floating-actions {
  margin: 0;
  padding: 0;
  border: 0;
  line-height: 0;
}

/* ==========================================================================
   7. FEEDBACK PAGE OVERRIDES
   feedback-ui.css is linked after this file and sets colours with
   !important, so these rules re-point its own custom properties and use a
   higher-specificity selector (body.feedback-page) to win the cascade.
   Only colour and size change; the layout of that page is untouched.
   ========================================================================== */

body.feedback-page {
  --fb-teal: var(--v3-teal-text);    /* step labels: 4.21:1 -> 6.3:1 */
  --fb-muted: var(--v3-muted-strong);/* helper text: 4.39:1 -> 7.1:1 */
}

body.feedback-page .feedback-step-label {
  font-size: var(--v3-step--1) !important;
}
body.feedback-page .feedback-field label small {
  color: var(--v3-muted-strong) !important;   /* was #7c909b at 3.32:1 */
  font-size: var(--v3-step--1) !important;
}
body.feedback-page .feedback-voice-copy small,
body.feedback-page .feedback-voice-help,
body.feedback-page .feedback-language-copy > div > span {
  font-size: max(0.75rem, var(--v3-step--1)) !important;
}


/* ==========================================================================
   8. FRONT-END CONSISTENCY
   Shared footer, testimonials and form-state behaviour. Content/data unchanged.
   ========================================================================== */

[hidden] { display: none !important; }




/* Homepage reviews: concise, equal-height cards with explicit metadata. */








/* Footer contact information is separated into labelled rows to prevent concatenation. */
.footer-contact-mini { font-style:normal; display:grid; gap:.52rem !important; }
.footer-contact-row { display:grid; grid-template-columns:78px minmax(0,1fr); gap:10px; align-items:start; line-height:1.5; }
.footer-contact-row > strong { color:rgba(255,255,255,.92); font-size:.76rem; }
.footer-contact-row > span, .footer-contact-row > a { min-width:0; color:rgba(255,255,255,.74); }
.footer-emerg-btn, .footer-wa-btn { display:grid !important; grid-template-columns:1fr; justify-items:start !important; min-width:178px; border:1px solid rgba(255,255,255,.12); text-decoration:none; }
.footer-emerg-btn small, .footer-wa-btn small { color:rgba(255,255,255,.68); font-size:.72rem; line-height:1.2; }
.footer-emerg-btn strong, .footer-wa-btn strong { color:#fff; font-size:.88rem; line-height:1.35; }

/* Testimonials use the same inner-page hero and a stable responsive review grid. */
.v2-testimonials-page .v2-testimonials-hero { background:linear-gradient(125deg,#073b5c 0%,#075f7d 58%,#087d82 100%); }
.v2-testimonials-page .testimonial-wide-container { width:min(1180px,calc(100% - 40px)); }
.v2-testimonials-page .testimonial-review-heading { align-items:end; }

.v2-testimonials-page .testimonial-review-track { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:18px !important; overflow:visible !important; scroll-snap-type:none !important; }
.v2-testimonials-page .testimonial-review-card { display:flex !important; flex-direction:column; width:auto !important; min-width:0 !important; height:auto !important; min-height:360px !important; max-height:none !important; padding:22px !important; border-radius:20px !important; }
.v2-testimonials-page .testimonial-review-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.v2-testimonials-page .testimonial-review-source { display:grid; place-items:center; width:36px; height:36px; border-radius:11px; color:#087f78; background:#edf9f7; }
.v2-testimonials-page .testimonial-review-source svg { width:19px; }
.v2-testimonials-page .testimonial-review-card blockquote { overflow:visible !important; max-height:none !important; margin:18px 0; padding:0 !important; color:#38596c !important; font-size:.95rem !important; line-height:1.72 !important; flex:1 1 auto; }
.v2-testimonials-page .testimonial-review-person { display:flex; align-items:center; gap:11px; padding-top:15px; border-top:1px solid #e3edf1; }
.v2-testimonials-page .testimonial-review-person > div { display:grid; gap:2px; min-width:0; }
.v2-testimonials-page .testimonial-review-person strong { color:#16384d; overflow-wrap:anywhere; }
.v2-testimonials-page .testimonial-review-person time { color:var(--v3-muted-strong); font-size:var(--v3-step--1); }
.v2-testimonials-page .testimonial-review-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:14px; }
.v2-testimonials-page .testimonial-read-more,
.v2-testimonials-page .testimonial-source-link { min-height:44px; display:inline-flex; align-items:center; border:0; background:transparent; padding:0; color:#0876ad; font:inherit; font-size:.82rem; font-weight:800; cursor:pointer; text-decoration:none; }
.v2-testimonials-page .testimonial-review-dialog { width:min(720px,calc(100% - 30px)); max-height:min(82vh,760px); padding:0; border:0; border-radius:24px; box-shadow:0 28px 80px rgba(3,31,48,.28); }
.v2-testimonials-page .testimonial-review-dialog::backdrop { background:rgba(4,30,45,.62); backdrop-filter:blur(4px); }
.v2-testimonials-page .testimonial-review-dialog-inner { position:relative; padding:30px; overflow:auto; max-height:min(82vh,760px); }
.v2-testimonials-page .testimonial-review-dialog h3 { margin:5px 0 2px; color:#16384d; }
.v2-testimonials-page .testimonial-review-dialog time { display:block; color:var(--v3-muted-strong); font-size:var(--v3-step--1); }
.v2-testimonials-page .testimonial-review-dialog .testimonial-stars { margin-top:14px; }
.v2-testimonials-page .testimonial-review-dialog blockquote { margin:16px 0 22px; color:#38596c; line-height:1.8; white-space:pre-line; }
.v2-testimonials-page .testimonial-dialog-close { position:absolute; top:15px; right:15px; display:grid; place-items:center; width:44px; height:44px; border:1px solid #d9e6ec; border-radius:50%; background:#fff; color:#24495d; font-size:1.5rem; cursor:pointer; }

/* Success and honeypot states remain out of the accessible/visual flow until needed. */
.v2-form-success[hidden], .feedback-success-card[hidden], .v2-form[hidden] { display:none !important; }
.v2-honeypot, .feedback-honeypot { position:absolute !important; width:1px !important; height:1px !important; overflow:hidden !important; clip:rect(0 0 0 0) !important; clip-path:inset(50%) !important; white-space:nowrap !important; }

/* Doctor cards keep a consistent metadata/action rhythm without inventing missing data. */
.v2-doctor-copy { display:flex; flex-direction:column; height:100%; }
.v2-doctor-copy-top { min-height:118px; }
.v2-doctor-facts { min-height:50px; align-content:start; }
.v2-doctor-facts:empty { visibility:hidden; }
.v2-doctor-actions { margin-top:auto; }

@media (max-width: 1020px) {
  .v2-testimonials-page .testimonial-review-track { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 760px) {
  
  .v2-testimonials-page .testimonial-wide-container { width:min(100% - 24px,1180px); }
  .v2-testimonials-page .testimonial-review-track { grid-template-columns:1fr !important; }
  .v2-testimonials-page .testimonial-review-card { min-height:0 !important; padding:18px !important; }
  .footer-contact-row { grid-template-columns:1fr; gap:2px; }
  .footer-emerg-btn, .footer-wa-btn { width:100%; min-width:0; }
  .v2-doctor-copy-top, .v2-doctor-facts { min-height:0; }
}

/* ==========================================================================
   9. HEADER + RELEASE POLISH
   The supplied logo has a #0c50a1 blue canvas. The navigation bar now uses
   that exact brand blue as one continuous surface, so the native logo canvas
   disappears into the header instead of reading as a pasted rectangle.
   No brand asset pixels are modified.
   ========================================================================== */
.site-header,
.site-header.scrolled {
  isolation: isolate;
  overflow: visible;
  background: #0c50a1 !important;
  border-bottom: 1px solid rgba(4,42,87,.32) !important;
  box-shadow: 0 12px 32px rgba(4,42,87,.18) !important;
  backdrop-filter: none !important;
}
.site-header .header-inner {
  position: relative;
  z-index: 1;
}
.site-header .logo-link {
  position: relative;
  z-index: 2;
  align-self: stretch;
  display: inline-flex !important;
  align-items: center;
  min-height: 100%;
  padding-right: 8px;
  background: transparent !important;
}
.site-header .logo-brandmark,
.site-header .logo-brandmark picture,
.site-header .brand-logo-img {
  position: relative;
  z-index: 1;
  background: transparent !important;
  box-shadow: none !important;
}
.site-header .brand-logo-img {
  filter: none !important;
}
.site-header .nav-link {
  color: rgba(255,255,255,.92) !important;
  background: transparent !important;
}
.site-header .nav-link::after {
  background: linear-gradient(90deg,#8fe16c,#ffffff) !important;
}
.site-header .nav-link:hover,
.site-header .nav-link.active {
  color: #ffffff !important;
  background: rgba(255,255,255,.12) !important;
}
.site-header .header-cta {
  border-color: rgba(255,255,255,.22) !important;
  box-shadow: 0 8px 20px rgba(2,31,67,.18) !important;
}
.site-header .hamburger {
  color: #ffffff !important;
  border-color: rgba(255,255,255,.24) !important;
  background: rgba(255,255,255,.08) !important;
}
.site-header .hamburger span {
  background: #ffffff !important;
}
.site-header .logo-link:focus-visible {
  outline-color: #ffffff;
  outline-offset: -4px;
}
/* The shared header/top bar are fixed. V2 templates use their own hero class names,
   so give every current public hero the same explicit header clearance. */
.v2-home-hero,
.v2-page-hero,
.v2-department-hero,
.v2-doctor-hero,
.v2-inner-hero,
.referral-hero {
  margin-top: calc(var(--topbar-h) + var(--header-h)) !important;
}
.v2-meta-separator {
  display: inline-block;
  color: #91a5b1;
  font-size: .72em;
  line-height: 1;
  flex: 0 0 auto;
}
.v2-testimonials-page .testimonial-review-person > div {
  grid-template-columns: minmax(0,auto) auto minmax(0,auto);
  align-items: baseline;
  column-gap: 7px;
}
.v2-testimonials-page .testimonial-review-person > div > strong:first-child {
  min-width: 0;
}
@media (max-width: 820px) {
  .site-header .logo-link { padding-right: 2px; }
  .site-header .main-nav {
    background: rgba(255,255,255,.99) !important;
    border: 1px solid rgba(7,59,92,.12) !important;
  }
  .site-header .main-nav .nav-link {
    color: #29485c !important;
    background: transparent !important;
  }
  .site-header .main-nav .nav-link:hover,
  .site-header .main-nav .nav-link.active {
    color: #0c50a1 !important;
    background: #edf6ff !important;
  }
  .site-header .main-nav .nav-link::after {
    background: linear-gradient(90deg,#0c50a1,#0b8a83) !important;
  }
}
@media (max-width: 520px) {
  :root { --topbar-h: 0px !important; }
  .top-bar { display: none !important; }
  .site-header { top: 0 !important; }
  .main-nav { top: calc(var(--header-h) + 6px) !important; }
  .hero, .page-hero, .v2-home-hero, .v2-page-hero, .v2-department-hero, .v2-doctor-hero, .v2-inner-hero, .referral-hero{
    margin-top: var(--header-h) !important;
  }
  
}



/* ==========================================================================
   10. CURRENT CARD + MOTION SYSTEM
   One entrance-motion system and one professional interaction language are
   shared by current public surfaces. Hover lift uses the individual `translate`
   property so it never overwrites the scroll animation transform.
   ========================================================================== */

.naam-motion-ready .naam-motion-item {
  opacity: 0;
  transform: translate3d(var(--naam-motion-x,0px),var(--naam-motion-y,24px),0) scale(.985);
  transition:
    opacity .56s ease var(--naam-motion-delay,0ms),
    transform .62s cubic-bezier(.2,.78,.24,1) var(--naam-motion-delay,0ms);
  will-change: opacity, transform;
}
.naam-motion-ready .naam-motion-item.is-visible {
  opacity: 1;
  transform: translate3d(0,0,0) scale(1);
}

/* Unified public content-card surface. The frame is a full semantic gradient,
   while the background uses a soft care-flow arc rather than repeated logos,
   dots or decorative crosses. */
:is(
  .v2-home-hero-care-link,.v2-speciality-stat,.v2-care-path-card,.v2-trust-item,
  .v2-home-difference-grid article,.v2-about-facts div,.v2-about-care-panel,
  .v2-difference-list article,.v2-department-card,.v2-doctor-card,.v2-facility-card,
  .v2-purpose-card,.v2-values-grid article,.testimonial-review-card,
  .testimonial-playlist-panel,.v2-contact-card,.v2-contact-info-panel,.v2-appointment-aside,
  .v2-coordination-card,.v2-form-shell,.v2-policy-section,
  .v2-clinical-card,.v2-consultation-card,.v2-map-card,.v2-profile-card,
  .v2-profile-booking-card,.referral-card,.referral-consent-card,.feedback-form-card,
  .feedback-invite-card
) {
  --card-accent:#176f9f;
  --card-accent-2:#1b9987;
  --card-wash:rgba(23,111,159,.055);
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid transparent !important;
  border-radius:22px !important;
  background:
    radial-gradient(150px 115px at 102% -8%,color-mix(in srgb,var(--card-accent-2) 12%,transparent) 0 48%,transparent 49%),
    radial-gradient(125px 92px at 102% -8%,transparent 0 62%,color-mix(in srgb,var(--card-accent) 11%,transparent) 63% 65%,transparent 66%),
    linear-gradient(145deg,#fff 0%,#fff 62%,color-mix(in srgb,var(--card-accent) 4%,#fff) 100%) padding-box,
    linear-gradient(135deg,color-mix(in srgb,var(--card-accent) 58%,#dce8ee),#dfe9ee 46%,color-mix(in srgb,var(--card-accent-2) 52%,#dce8ee)) border-box !important;
  box-shadow:0 11px 28px rgba(11,55,82,.075);
  transition:border-color .22s ease,box-shadow .26s ease,translate .26s cubic-bezier(.2,.75,.25,1),scale .26s cubic-bezier(.2,.75,.25,1),background-position .3s ease;
}
:is(
  .v2-home-hero-care-link,.v2-speciality-stat,.v2-care-path-card,.v2-trust-item,
  .v2-home-difference-grid article,.v2-about-facts div,.v2-about-care-panel,
  .v2-difference-list article,.v2-department-card,.v2-doctor-card,.v2-facility-card,
  .v2-purpose-card,.v2-values-grid article,.testimonial-review-card,
  .testimonial-playlist-panel,.v2-contact-card,.v2-contact-info-panel,.v2-appointment-aside,
  .v2-coordination-card,.v2-form-shell,.v2-policy-section,
  .v2-clinical-card,.v2-consultation-card,.v2-map-card,.v2-profile-card,
  .v2-profile-booking-card,.referral-card,.referral-consent-card,.feedback-form-card,
  .feedback-invite-card
)::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:0 auto auto 18px;
  width:min(96px,34%);
  height:3px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,var(--card-accent),var(--card-accent-2));
  opacity:.74;
  pointer-events:none;
  transition:width .26s ease,opacity .26s ease;
}
:is(
  .v2-home-hero-care-link,.v2-speciality-stat,.v2-care-path-card,.v2-trust-item,
  .v2-home-difference-grid article,.v2-about-facts div,.v2-about-care-panel,
  .v2-difference-list article,.v2-department-card,.v2-doctor-card,.v2-facility-card,
  .v2-purpose-card,.v2-values-grid article,.v2-contact-card,.v2-contact-info-panel,
  .v2-appointment-aside,.v2-coordination-card,
  .v2-form-shell,.v2-policy-section,.v2-clinical-card,.v2-consultation-card,
  .v2-map-card,.v2-profile-card,.v2-profile-booking-card,.referral-card,
  .referral-consent-card,.feedback-form-card,.feedback-invite-card
)::after {
  content:"";
  position:absolute;
  z-index:0;
  right:-34px;
  bottom:-50px;
  width:132px;
  height:132px;
  border-radius:50%;
  border:18px solid color-mix(in srgb,var(--card-accent-2) 7%,transparent);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--card-accent) 7%,transparent) inset;
  pointer-events:none;
}
:is(
  .v2-home-hero-care-link,.v2-speciality-stat,.v2-care-path-card,.v2-trust-item,
  .v2-home-difference-grid article,.v2-about-facts div,.v2-about-care-panel,
  .v2-difference-list article,.v2-department-card,.v2-doctor-card,.v2-facility-card,
  .v2-purpose-card,.v2-values-grid article,.testimonial-review-card,
  .testimonial-playlist-panel,.v2-contact-card,.v2-contact-info-panel,.v2-appointment-aside,
  .v2-coordination-card,.v2-form-shell,.v2-policy-section,
  .v2-clinical-card,.v2-consultation-card,.v2-map-card,.v2-profile-card,
  .v2-profile-booking-card,.referral-card,.referral-consent-card,.feedback-form-card,
  .feedback-invite-card
) > * { position:relative; z-index:1; }

@media (hover:hover) {
  :is(
    .v2-home-hero-care-link,.v2-speciality-stat,.v2-care-path-card,.v2-trust-item,
    .v2-home-difference-grid article,.v2-about-facts div,.v2-about-care-panel,
    .v2-difference-list article,.v2-department-card,.v2-doctor-card,.v2-facility-card,
    .v2-purpose-card,.v2-values-grid article,.testimonial-review-card,
    .testimonial-playlist-panel,.v2-contact-card,
    .v2-coordination-card,.v2-clinical-card,.v2-consultation-card,.v2-map-card,
    .v2-profile-card,.v2-profile-booking-card,.referral-card,.feedback-invite-card
  ):hover,
  :is(
    .v2-home-hero-care-link,.v2-speciality-stat,.v2-care-path-card,.v2-trust-item,
    .v2-home-difference-grid article,.v2-about-facts div,.v2-about-care-panel,
    .v2-difference-list article,.v2-department-card,.v2-doctor-card,.v2-facility-card,
    .v2-purpose-card,.v2-values-grid article,.testimonial-review-card,
    .testimonial-playlist-panel,.v2-contact-card,
    .v2-coordination-card,.v2-clinical-card,.v2-consultation-card,.v2-map-card,
    .v2-profile-card,.v2-profile-booking-card,.referral-card,.feedback-invite-card
  ):focus-within {
    translate:0 -6px;
    scale:1.006;
    box-shadow:0 22px 48px color-mix(in srgb,var(--card-accent) 10%,rgba(9,52,79,.14)) !important;
  }
  :is(
    .v2-home-hero-care-link,.v2-speciality-stat,.v2-care-path-card,.v2-trust-item,
    .v2-home-difference-grid article,.v2-about-facts div,.v2-about-care-panel,
    .v2-difference-list article,.v2-department-card,.v2-doctor-card,.v2-facility-card,
    .v2-purpose-card,.v2-values-grid article,.v2-contact-card,
    .v2-coordination-card,.v2-clinical-card,.v2-consultation-card,
    .v2-map-card,.v2-profile-card,.v2-profile-booking-card,.referral-card,.feedback-invite-card
  ):hover::before,
  :is(
    .v2-home-hero-care-link,.v2-speciality-stat,.v2-care-path-card,.v2-trust-item,
    .v2-home-difference-grid article,.v2-about-facts div,.v2-about-care-panel,
    .v2-difference-list article,.v2-department-card,.v2-doctor-card,.v2-facility-card,
    .v2-purpose-card,.v2-values-grid article,.v2-contact-card,
    .v2-coordination-card,.v2-clinical-card,.v2-consultation-card,
    .v2-map-card,.v2-profile-card,.v2-profile-booking-card,.referral-card,.feedback-invite-card
  ):focus-within::before { width:min(150px,52%); opacity:1; }
}


:is(.v2-home-hero-care-link,.v2-speciality-stat,.v2-trust-item,.v2-contact-card) { border-radius:18px !important; }

/* Context palettes: same geometry, semantic colour only. */
.v2-home-hero-care-link:first-child { --card-accent:#b64c50; --card-accent-2:#e08748; }
.v2-home-hero-care-link:last-child { --card-accent:#2c7c9f; --card-accent-2:#2f9983; }
.v2-speciality-stat { --card-accent:#3976a5; --card-accent-2:#2c9485; }
.v2-trust-item { --card-accent:#2579a3; --card-accent-2:#2c9588; }
.v2-home-difference-grid article:nth-child(1){--card-accent:#2f72a6;--card-accent-2:#2f9886}
.v2-home-difference-grid article:nth-child(2){--card-accent:#b64c50;--card-accent-2:#e08748}
.v2-home-difference-grid article:nth-child(3){--card-accent:#2d876d;--card-accent-2:#62a25d}
.v2-home-difference-grid article:nth-child(4){--card-accent:#b34f62;--card-accent-2:#4d92a5}
.v2-about-facts div { --card-accent:#4e79aa; --card-accent-2:#2f9281; }
.v2-about-care-panel { --card-accent:#287d9d; --card-accent-2:#32927f; }
.v2-difference-list article:nth-child(1){--card-accent:#2f7b9c;--card-accent-2:#5c9b72}
.v2-difference-list article:nth-child(2){--card-accent:#2f72a6;--card-accent-2:#2f9886}
.v2-difference-list article:nth-child(3){--card-accent:#596eae;--card-accent-2:#3d9ba1}
.v2-difference-list article:nth-child(4){--card-accent:#3a789d;--card-accent-2:#4c9b75}
.v2-department-card { --card-accent:#1679a8; --card-accent-2:#269783; }
.v2-doctor-card { --card-accent:#176a98; --card-accent-2:#258e84; }
.v2-facility-card:nth-child(3n+1){--card-accent:#168679;--card-accent-2:#4d9e72}
.v2-facility-card:nth-child(3n+2){--card-accent:#347aa5;--card-accent-2:#4b9da0}
.v2-facility-card:nth-child(3n+3){--card-accent:#5b70ad;--card-accent-2:#3f9991}
.v2-contact-card:nth-child(1){--card-accent:#2f75a5;--card-accent-2:#3b9b94}
.v2-contact-card:nth-child(2){--card-accent:#b64c50;--card-accent-2:#e08748}
.v2-contact-card:nth-child(3){--card-accent:#596eae;--card-accent-2:#3d9ba1}
.v2-contact-card:nth-child(4){--card-accent:#2f7d73;--card-accent-2:#62a25d}
.v2-purpose-card.is-vision { --card-accent:#447fc4; --card-accent-2:#6f78b8; }
.v2-purpose-card.is-mission { --card-accent:#258875; --card-accent-2:#5ca06b; }
.v2-values-grid article:nth-child(5n+1){--card-accent:#b34f62;--card-accent-2:#4d92a5}
.v2-values-grid article:nth-child(5n+2){--card-accent:#2f7d73;--card-accent-2:#62a25d}
.v2-values-grid article:nth-child(5n+3){--card-accent:#2f7b9c;--card-accent-2:#5c9b72}
.v2-values-grid article:nth-child(5n+4){--card-accent:#596eae;--card-accent-2:#3d9ba1}
.v2-values-grid article:nth-child(5n){--card-accent:#3a789d;--card-accent-2:#4c9b75}
.v2-contact-info-panel,.v2-map-card { --card-accent:#347aa5; --card-accent-2:#3d9989; }
.v2-form-shell { --card-accent:#4778aa; --card-accent-2:#3a9a89; }
.v2-appointment-aside { --card-accent:#2f72a6; --card-accent-2:#2f9886; }
.v2-clinical-card,.v2-consultation-card,.v2-profile-card { --card-accent:#2f72a6; --card-accent-2:#2f9886; }
.v2-coordination-card { --card-accent:#3a789d; --card-accent-2:#4c9b75; }
.referral-card { --card-accent:#3978a2; --card-accent-2:#469783; }
.feedback-form-card { --card-accent:#3978a2; --card-accent-2:#469783; }

/* One duotone SVG tile language for all content-card icons. */
.naam-card-svg { width:100%; height:100%; display:block; overflow:visible; }
.v2-trust-icon,.v2-purpose-icon,.v2-facility-card-icon,.v2-form-head>span,
.v2-profile-card-title>span,.v2-about-care-panel-icon,.v2-home-difference-grid article>span,
.v2-difference-list article>span,.v2-contact-card>span {
  padding:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.v2-trust-icon .naam-card-svg { width:42px; height:42px; }
.v2-purpose-icon .naam-card-svg { width:52px; height:52px; }
.v2-values-grid article>span .naam-card-svg { width:42px; height:42px; }
.v2-home-difference-grid article>span .naam-card-svg { width:52px; height:52px; }
.v2-about-care-panel-icon .naam-card-svg { width:54px; height:54px; }
.v2-difference-list article>span .naam-card-svg { width:48px; height:48px; }
.v2-facility-card-icon .naam-card-svg { width:50px; height:50px; }
.v2-contact-card>span .naam-card-svg { width:44px; height:44px; }
.v2-form-head>span .naam-card-svg { width:48px; height:48px; }
.v2-profile-card-title>span .naam-card-svg { width:46px; height:46px; }
.testimonial-review-source .naam-card-svg { width:34px; height:34px; }
.v2-appointment-benefits > div > span { width:38px !important; height:38px !important; min-width:38px !important; padding:0 !important; background:transparent !important; box-shadow:none !important; }
.v2-appointment-benefits > div > span .naam-card-svg { width:38px; height:38px; }
.v2-contact-detail > span { width:40px !important; height:40px !important; min-width:40px !important; padding:0 !important; background:transparent !important; box-shadow:none !important; }
.v2-contact-detail > span .naam-card-svg { width:40px; height:40px; }

/* Doctor-directory and doctor-profile cards use the same tile geometry at a compact scale. */
.v2-doctor-placeholder .naam-card-svg { width:72px; height:72px; }
.v2-doctor-placeholder.is-large .naam-card-svg { width:110px; height:110px; }
.v2-doctor-facts span > .naam-card-svg { width:24px; height:24px; flex:0 0 24px; }
.v2-profile-facts > span > .naam-card-svg { grid-row:1/3; width:30px; height:30px; align-self:center; }
.v2-session-item > span { width:36px; height:36px; flex-basis:36px; padding:0 !important; background:transparent !important; }
.v2-session-item > span .naam-card-svg { width:36px; height:36px; }
.v2-sidebar-icon { width:50px; height:50px; padding:0 !important; background:transparent !important; }
.v2-sidebar-icon .naam-card-svg { width:50px; height:50px; }
.v2-sidebar-contact > .naam-card-svg { width:38px; height:38px; flex:0 0 38px; }
.v2-sidebar-emergency > span { width:42px; height:42px; flex:0 0 42px; }
.v2-sidebar-emergency > span .naam-card-svg { width:42px; height:42px; }

/* Specialty icons are explicit medical duotone SVGs, not nth-child generic glyphs. */
.v2-department-icon {
  width:58px;
  height:58px;
  padding:0;
  border-radius:17px;
  background:transparent !important;
  box-shadow:0 7px 18px rgba(16,75,102,.075);
}
.v2-department-icon .naam-specialty-svg { width:58px; height:58px; display:block; }
.v2-department-hero-icon {
  width:76px;
  height:76px;
  flex-basis:76px;
  padding:6px;
  border-color:rgba(255,255,255,.24);
  background:rgba(255,255,255,.96);
  box-shadow:0 16px 38px rgba(1,31,49,.22);
}
.v2-department-hero-icon .naam-specialty-svg { width:64px; height:64px; display:block; }
.v2-profile-department-pill .naam-specialty-svg--mini { width:22px !important; height:22px !important; flex:0 0 22px; }

/* Testimonials keep an editorial quote rather than the generic corner mark. */
.testimonial-review-card {
  --card-accent:#3e79a1;
  --card-accent-2:#7f6cac;
  background:linear-gradient(155deg,#fff 0%,#fbfdff 100%) !important;
}
.testimonial-review-card::after {
  content:"“";
  position:absolute;
  right:18px;
  top:5px;
  width:auto;
  height:auto;
  border:0;
  color:rgba(35,105,150,.09);
  font:800 5rem/1 Georgia,serif;
  opacity:1;
  pointer-events:none;
}

/* The Connected Care band is not a card. Keep its dedicated dark contrast. */
.v2-digital-hospital {
  color:#fff;
  background:linear-gradient(125deg,#052f4a 0%,#07576c 58%,#087c7d 100%) !important;
}
.v2-digital-hospital .eyebrow { color:#95eee3 !important; }
.v2-digital-hospital .section-title { color:#fff !important; }
.v2-digital-hospital p { color:rgba(255,255,255,.84) !important; }
.v2-digital-hospital li { color:rgba(255,255,255,.92) !important; }
.v2-digital-hospital-grid > * { background:transparent !important; box-shadow:none !important; border:0 !important; overflow:visible; }
.v2-digital-visual {
  background:radial-gradient(circle at center,rgba(255,255,255,.16) 0%,rgba(255,255,255,.05) 42%,transparent 70%) !important;
  border-color:rgba(255,255,255,.18) !important;
}

/* Brand identity is limited to the Home hero, not repeated across information cards. */
.v2-home-hero-copy { position:relative; isolation:isolate; }
.v2-home-hero-copy::after {
  content:""; position:absolute; z-index:-1; width:clamp(86px,8vw,124px); aspect-ratio:1;
  right:clamp(8px,2vw,24px); bottom:clamp(8px,1.5vw,18px);
  background:url("../../favicon-192.png") center/contain no-repeat; opacity:.032; pointer-events:none;
}
/* Current typography: one native professional family everywhere. */
body { font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:16px; line-height:1.62; }
button,input,select,textarea { font:inherit; }
:is(h1,h2,h3,h4,.section-title) { font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; text-rendering:optimizeLegibility; }

/* ==========================================================================
   11. DOCTORS DIRECTORY — CURRENT LAYOUT
   Restores the compact v1.6 proportions that matched the doctor photography,
   without restoring the previous spinning hero animation.
   ========================================================================== */

.v2-page-hero--doctors .v2-page-hero-grid {
  grid-template-columns: minmax(0,.94fr) minmax(410px,.86fr) !important;
  align-items: center !important;
}
.v2-doctor-hero-network {
  position: relative;
  min-height: 390px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  align-content: center;
  padding: 18px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 30px;
  background: linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.045));
  box-shadow: 0 28px 72px rgba(0,26,43,.20);
  backdrop-filter: blur(14px);
}
.v2-doctor-hero-network::before {
  content: "";
  position: absolute;
  width: 270px;
  aspect-ratio: 1;
  right: -100px;
  top: -90px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.15);
  box-shadow: 0 0 0 38px rgba(255,255,255,.025),0 0 0 76px rgba(255,255,255,.018);
}
.v2-doctor-hero-metrics {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.v2-doctor-hero-metrics > div {
  padding: 17px 18px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 18px;
  background: rgba(255,255,255,.075);
}
.v2-doctor-hero-metrics strong { display:block; color:#fff; font-size:2rem; line-height:1; letter-spacing:-.05em; }
.v2-doctor-hero-metrics span { display:block; margin-top:7px; color:rgba(255,255,255,.68); font-size:.72rem; }

/* The hero network stays visually alive without continuously rotating the whole card. */
.v2-doctor-care-orbit {
  position: relative;
  width: 170px;
  aspect-ratio: 1;
  place-self: center;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  animation: naamCareOrbitFloat 5.8s ease-in-out infinite;
}
.v2-doctor-care-orbit::before {
  content: "";
  position: absolute;
  inset: 25px;
  border: 1px dashed rgba(143,226,230,.33);
  border-radius: 50%;
}
.v2-doctor-care-core {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 23px;
  color: #fff;
  background: linear-gradient(135deg,rgba(32,170,182,.78),rgba(18,115,175,.82));
  box-shadow: 0 14px 30px rgba(0,29,50,.22);
  animation: naamCareCorePulse 4.6s ease-in-out infinite;
}
.v2-doctor-care-core svg { width:34px; height:34px; }
.v2-doctor-care-node {
  position: absolute;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #9ee9e7;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.18);
  animation: naamCareNodePulse 4.8s ease-in-out infinite;
}
.v2-doctor-care-node svg { width:18px; height:18px; }
.v2-doctor-care-node.is-one { top:-12px; left:66px; animation-delay:-.4s; }
.v2-doctor-care-node.is-two { right:-10px; bottom:36px; animation-delay:-1.5s; }
.v2-doctor-care-node.is-three { left:-10px; bottom:36px; animation-delay:-2.6s; }
@keyframes naamCareOrbitFloat { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-6px); } }
@keyframes naamCareCorePulse { 0%,100% { transform:scale(1); box-shadow:0 14px 30px rgba(0,29,50,.22); } 50% { transform:scale(1.035); box-shadow:0 18px 38px rgba(0,29,50,.28); } }
@keyframes naamCareNodePulse { 0%,100% { transform:translateY(0); opacity:.88; } 50% { transform:translateY(-4px); opacity:1; } }

.v2-doctor-hero-care-list { display:grid; gap:8px; align-content:center; }
.v2-doctor-hero-care-list > span { display:grid; grid-template-columns:36px 1fr; gap:10px; align-items:center; padding:10px; border-radius:15px; background:rgba(255,255,255,.075); }
.v2-doctor-hero-care-list b { width:36px; height:36px; display:grid; place-items:center; border-radius:12px; color:#9de5e4; background:rgba(255,255,255,.08); }
.v2-doctor-hero-care-list svg { width:19px; height:19px; }
.v2-doctor-hero-care-list strong { display:block; color:#fff; font-size:.72rem; }
.v2-doctor-hero-care-list small { display:block; margin-top:2px; color:rgba(255,255,255,.60); font-size:.62rem; line-height:1.35; }

.v2-directory-section .v2-doctor-toolbar--v160 {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(280px,1.35fr) minmax(210px,.82fr) minmax(175px,.65fr) auto auto !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 10px !important;
  border: 1px solid var(--v2-line) !important;
  border-radius: 17px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(7,59,92,.06) !important;
}
.v2-doctor-toolbar--v160 .v2-search-box,
.v2-filter-trigger,
.v2-directory-sort select {
  min-height: 48px !important;
  border: 1px solid #dce8ed !important;
  border-radius: 12px !important;
  background: #f9fcfd !important;
}
.v2-doctor-toolbar--v160 .v2-search-box { padding-inline:12px !important; }
.v2-doctor-toolbar--v160 .v2-search-box input { min-height:44px !important; font-size:.82rem !important; }
.v2-multiselect { position:relative; min-width:0; }
.v2-filter-trigger { width:100%; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 13px; color:#294f63; font:inherit; cursor:pointer; text-align:left; }
.v2-filter-trigger-copy { min-width:0; display:block; }
.v2-filter-trigger-copy strong { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.76rem; color:#294f63; }
.v2-filter-chevron { font-size:1rem; color:#6b8592; transition:transform .18s ease; }
.v2-multiselect.is-open .v2-filter-chevron { transform:rotate(180deg); }
.v2-filter-popover { position:absolute; z-index:70; top:calc(100% + 8px); left:0; width:min(380px,86vw); max-height:min(470px,68vh); overflow:auto; padding:10px; border:1px solid #d8e6ec; border-radius:16px; background:#fff; box-shadow:0 24px 60px rgba(7,59,92,.18); }
.v2-filter-popover-head { position:sticky; top:-10px; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:8px 6px 10px; background:#fff; border-bottom:1px solid #edf2f4; }
.v2-filter-popover-head strong { color:var(--v2-navy); font-size:.8rem; }
.v2-filter-popover-head button { border:0; background:transparent; color:var(--v2-blue); font-size:.7rem; font-weight:800; cursor:pointer; }
.v2-filter-check-list { display:grid; gap:3px; margin-top:5px; }
.v2-filter-check { display:grid; grid-template-columns:20px 1fr auto; gap:9px; align-items:center; min-height:40px; padding:7px 8px; border-radius:10px; cursor:pointer; }
.v2-filter-check:hover { background:#f3f9fb; }
.v2-filter-check input { width:16px; height:16px; accent-color:#087f83; }
.v2-filter-check span { color:#35596b; font-size:.74rem; }
.v2-filter-check small { color:#8195a0; font-size:.65rem; }
.v2-filter-check.is-all { margin-top:5px; background:#eef8f7; font-weight:800; }
.v2-directory-sort { display:block; min-width:0; }
.v2-directory-sort select { width:100%; padding:0 34px 0 12px !important; color:#294f63 !important; font-size:.74rem !important; font-weight:750 !important; }
.v2-doctor-toolbar--v160 .v2-result-count { min-height:48px !important; display:grid !important; place-items:center !important; padding:0 12px !important; border-radius:12px !important; white-space:nowrap; }
.v2-doctor-toolbar--v160 .v2-reset-filter { min-height:48px !important; align-self:center !important; }

.v2-directory-section .v2-doctor-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:16px !important; }
.v2-directory-section .v2-doctor-card { border-radius:21px !important; }
.v2-directory-section .v2-doctor-media { height:282px !important; aspect-ratio:auto !important; background:linear-gradient(145deg,#edf7fa,#e9f4f1) !important; }
.v2-directory-section .v2-doctor-media img { width:100% !important; height:100% !important; object-fit:cover !important; object-position:center 2% !important; transform:none !important; }
.v2-directory-section .v2-doctor-copy { padding:15px 15px 16px !important; }
.v2-directory-section .v2-doctor-copy-top { min-height:0 !important; }
.v2-directory-section .v2-doctor-facts { min-height:0 !important; margin-top:8px !important; }
.v2-directory-section .v2-doctor-facts:empty { display:none !important; visibility:visible !important; }
.v2-directory-section .v2-doctor-focus { margin-top:8px !important; }
.v2-directory-section .v2-doctor-focus li { line-height:1.42 !important; }
.v2-directory-section .v2-doctor-actions { padding-top:12px !important; }

@media (max-width:1180px) {
  .v2-page-hero--doctors .v2-page-hero-grid { grid-template-columns:1fr .9fr !important; }
  .v2-directory-section .v2-doctor-toolbar--v160 { grid-template-columns:minmax(260px,1fr) minmax(205px,.8fr) minmax(170px,.65fr) auto !important; }
  .v2-doctor-toolbar--v160 .v2-result-count { display:none !important; }
  .v2-directory-section .v2-doctor-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width:900px) {
  .v2-page-hero--doctors .v2-page-hero-grid { grid-template-columns:1fr !important; }
  .v2-doctor-hero-network { max-width:680px !important; margin-inline:auto !important; width:100% !important; }
  .v2-directory-section .v2-doctor-toolbar--v160 { grid-template-columns:1fr 1fr !important; }
  .v2-doctor-toolbar--v160 .v2-search-box { grid-column:1 / -1 !important; }
  .v2-directory-section .v2-doctor-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .v2-directory-section .v2-doctor-media { height:300px !important; }
}
@media (max-width:620px) {
  .v2-doctor-hero-network { grid-template-columns:1fr !important; min-height:0 !important; padding:14px !important; }
  .v2-doctor-hero-metrics { grid-template-columns:1fr 1fr !important; }
  .v2-doctor-care-orbit { width:145px !important; margin-block:10px !important; }
  .v2-directory-section .v2-doctor-toolbar--v160 { grid-template-columns:1fr !important; }
  .v2-doctor-toolbar--v160 .v2-search-box { grid-column:auto !important; }
  .v2-doctor-toolbar--v160 .v2-result-count { display:grid !important; justify-self:stretch !important; }
  .v2-doctor-toolbar--v160 .v2-reset-filter { width:100% !important; }
  .v2-filter-popover { width:min(92vw,380px) !important; }
  .v2-directory-section .v2-doctor-grid { grid-template-columns:1fr !important; }
  .v2-directory-section .v2-doctor-media { height:340px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .naam-motion-ready .naam-motion-item,
  .v2-doctor-care-orbit,
  .v2-doctor-care-core,
  .v2-doctor-care-node {
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
    animation:none !important;
  }
  :is(.v2-care-path-card,.v2-department-card,.v2-doctor-card,.v2-facility-card,.testimonial-review-card,.v2-contact-card) {
    transition:none !important;
  }
}

/* Compact data-card icons use the same duotone tile language without turning
   dense statistic areas into full illustration cards. */
.v2-stat-icon {
  display:inline-grid !important;
  place-items:center;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  color:inherit !important;
}
.v2-stat-icon .naam-card-svg { width:100%; height:100%; }
.v2-home-hero-proof .v2-stat-icon { width:30px; height:30px; margin:0 auto 7px !important; }
.v2-home-hero-proof .v2-stat-label { display:block; margin-top:3px; color:rgba(255,255,255,.72); }
.v2-about-facts div { display:grid; grid-template-columns:40px 1fr; grid-template-rows:auto auto; column-gap:11px; align-items:center; }
.v2-about-facts .v2-stat-icon { grid-row:1/3; width:40px; height:40px; }
.v2-about-facts strong { grid-column:2; }
.v2-about-facts .v2-stat-label { grid-column:2; margin-top:5px; }
.v2-page-hero--specialities .v2-speciality-stat {
  display:grid;
  grid-template-columns:38px auto;
  grid-template-rows:auto auto;
  column-gap:9px;
  align-items:center;
}
.v2-page-hero--specialities .v2-speciality-stat .v2-stat-icon { grid-row:1/3; width:38px; height:38px; }
.v2-page-hero--specialities .v2-speciality-stat strong { grid-column:2; color:var(--v2-navy) !important; }
.v2-page-hero--specialities .v2-speciality-stat .v2-stat-label { grid-column:2; margin:2px 0 0; color:var(--v2-muted) !important; }

/* Card-level icon placements added during the full application card audit. */
.v2-care-path-card-icon,
.v2-map-card-icon,
.testimonial-playlist-card-icon,
.feedback-invite-icon,
.v2-policy-icon {
  display:inline-grid;
  place-items:center;
  padding:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.v2-care-path-card-icon { width:48px; height:48px; margin-bottom:12px; }
.v2-care-path-card-icon .naam-card-svg { width:48px; height:48px; }
.v2-map-card-icon { width:46px; height:46px; margin-bottom:13px; }
.v2-map-card-icon .naam-card-svg { width:46px; height:46px; }
.testimonial-playlist-heading { gap:12px; }
.testimonial-playlist-card-icon { width:42px; height:42px; flex:0 0 42px; }
.testimonial-playlist-card-icon .naam-card-svg { width:42px !important; height:42px !important; }
.feedback-invite-icon { width:56px !important; height:56px !important; min-width:56px !important; padding:0 !important; }
.feedback-invite-icon .naam-card-svg { width:56px !important; height:56px !important; }
.v2-policy-marker { display:grid; justify-items:center; gap:8px; width:48px; }
.v2-policy-icon { width:46px; height:46px; }
.v2-policy-icon .naam-card-svg { width:46px; height:46px; }
.v2-policy-number { width:auto !important; height:auto !important; min-width:32px; padding:3px 7px; border-radius:999px !important; background:color-mix(in srgb,var(--card-accent,#176f9f) 8%,#fff) !important; color:var(--card-accent,#176f9f) !important; font-size:.67rem !important; letter-spacing:.06em; }
@media(max-width:560px){
  .v2-policy-marker{display:flex;width:auto;align-items:center;justify-content:flex-start;gap:9px}
  .v2-policy-icon{width:42px;height:42px}.v2-policy-icon .naam-card-svg{width:42px;height:42px}
}


/* ==========================================================================
   NAAM Hospitals v2.2 — spacing, card rhythm and integrated form refinement
   ========================================================================== */
:root{--v22-card-gap:clamp(16px,1.6vw,24px);--v22-section-gap:clamp(54px,6vw,88px)}
.v2-inner-page .section,.v2-page .section{scroll-margin-top:calc(var(--topbar-h) + var(--header-h) + 16px)}
.v2-contact-section{padding-top:clamp(38px,5vw,66px)!important}
.v2-contact-cards{margin-top:0!important;gap:var(--v22-card-gap)!important}
.v2-contact-grid{margin-top:clamp(30px,4vw,48px)!important;gap:var(--v22-card-gap)!important}
.v2-purpose-grid,.v2-values-grid,.v2-difference-list,.v2-department-grid,.v2-facility-card-grid,.v2-home-difference-grid,.testimonial-review-grid{gap:var(--v22-card-gap)!important}
.v2-values-grid{margin-top:var(--v22-card-gap)!important}
.v2-difference-list{margin-top:clamp(20px,2.2vw,30px)!important}
.v2-about-facts{gap:var(--v22-card-gap)!important;padding:var(--v22-card-gap)!important}
.v2-purpose-card,.v2-values-grid article,.v2-difference-list article,.v2-department-card,.v2-facility-card,.v2-contact-card,.v2-form-shell,.v2-policy-section{min-width:0}
.v2-purpose-card p,.v2-values-grid p,.v2-difference-list p,.v2-department-card p,.v2-facility-card p,.v2-contact-card,.v2-policy-section p,.v2-policy-section li{overflow-wrap:anywhere}
.v2-values-grid article,.v2-difference-list article{height:100%}
.v2-values-grid h3,.v2-difference-list h3,.v2-department-card h3,.v2-facility-card h3{line-height:1.3}
.v2-policy-content{display:grid;gap:var(--v22-card-gap)}
.v2-policy-section{margin:0!important;padding:clamp(22px,2.6vw,32px)!important}
.v2-policy-section>div{min-width:0}
.v2-policy-section ul{padding-left:1.2rem}
.v2-policy-section li+li{margin-top:.55rem}
.v2-form-shell input,.v2-form-shell select,.v2-form-shell textarea{min-height:48px}
.v2-form-shell textarea{min-height:128px}
.v2-form-shell label{line-height:1.35}
@media(max-width:760px){
  .v2-contact-section{padding-top:32px!important}
  .v2-contact-cards{margin-top:0!important;gap:14px!important}
  .v2-contact-grid{margin-top:28px!important}
  .v2-purpose-grid,.v2-values-grid,.v2-difference-list,.v2-department-grid,.v2-facility-card-grid,.v2-home-difference-grid,.testimonial-review-grid{gap:14px!important}
  .v2-policy-section{padding:20px!important}
}
@media(max-width:520px){
  .v2-contact-cards{margin-top:0!important;gap:12px!important}
  .v2-about-facts{grid-template-columns:1fr!important;padding:12px!important;gap:12px!important}
}


/* === v2.2 UI refresh request — 2026-08-31 === */
:root{--v22-hero-card-gap:clamp(16px,1.6vw,22px);--v22-hero-card-clearance:clamp(20px,2.8vw,34px)}
.v2-trust-strip{margin-top:0!important;padding:var(--v22-hero-card-clearance) 0 clamp(20px,2.4vw,30px)!important;border-bottom:1px solid var(--v2-line)!important;background:linear-gradient(180deg,#f6fbfd 0%,#fff 100%)!important;box-shadow:none!important}
.v2-trust-strip-grid{gap:var(--v22-hero-card-gap)!important}
.v2-trust-item{min-height:98px!important;padding:18px!important;border:1px solid transparent!important;border-radius:18px!important;background:radial-gradient(110px 82px at 104% -12%,color-mix(in srgb,var(--card-accent-2,#2c9588) 10%,transparent),transparent 70%),linear-gradient(145deg,#fff,#fbfdfe) padding-box,linear-gradient(135deg,#dce9ee,color-mix(in srgb,var(--card-accent,#2579a3) 32%,#dce9ee)) border-box!important;box-shadow:0 9px 24px rgba(10,55,82,.065)!important}
.v2-trust-item:last-child{border-right:1px solid transparent!important}
.v2-page-hero--specialities .v2-speciality-stat{--card-accent:#7ed8dc;--card-accent-2:#77cbbb;border-color:rgba(255,255,255,.24)!important;background:linear-gradient(145deg,rgba(5,51,77,.84),rgba(7,105,115,.78))!important;box-shadow:0 16px 34px rgba(1,30,47,.2)!important;backdrop-filter:blur(14px)}
.v2-page-hero--specialities .v2-speciality-stat strong,.v2-page-hero--specialities .v2-speciality-stat .v2-stat-label{color:#fff!important}.v2-page-hero--specialities .v2-speciality-stat .v2-stat-label{opacity:.76}.v2-page-hero--specialities .v2-speciality-stat .v2-stat-icon{color:#9de7e1!important}
.v2-doctor-hero-network{transition:transform .42s cubic-bezier(.2,.75,.25,1),box-shadow .42s ease,border-color .3s ease}
.v2-doctor-hero-network::after{content:"";position:absolute;inset:-55% auto auto -32%;width:48%;height:210%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.075),transparent);transform:rotate(18deg) translateX(-140%);pointer-events:none;animation:naamDoctorSheen 9s ease-in-out infinite}
.v2-doctor-care-orbit::after{content:"";position:absolute;inset:-10px;border:1px solid rgba(143,226,230,.13);border-radius:50%;animation:naamDoctorRing 4.8s ease-in-out infinite}
.v2-doctor-hero-care-list>span{transition:transform .25s ease,background .25s ease,border-color .25s ease;border:1px solid transparent}
@media(hover:hover){.v2-doctor-hero-network:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.24);box-shadow:0 34px 82px rgba(0,26,43,.25)}.v2-doctor-hero-network:hover .v2-doctor-care-core{transform:scale(1.055)}.v2-doctor-hero-network:hover .v2-doctor-hero-care-list>span{transform:translateX(3px);background:rgba(255,255,255,.105);border-color:rgba(255,255,255,.08)}}
@keyframes naamDoctorSheen{0%,72%,100%{transform:rotate(18deg) translateX(-145%);opacity:0}80%{opacity:1}94%{transform:rotate(18deg) translateX(430%);opacity:0}}@keyframes naamDoctorRing{0%,100%{transform:scale(.96);opacity:.28}50%{transform:scale(1.05);opacity:.72}}
.v2-digital-visual{isolation:isolate;overflow:visible}.v2-digital-visual::before,.v2-digital-visual::after{content:"";position:absolute;border-radius:50%;pointer-events:none}.v2-digital-visual::before{inset:11%;border:1px dashed rgba(152,233,225,.22);animation:naamDigitalRing 18s linear infinite}.v2-digital-visual::after{inset:27%;border:1px solid rgba(255,255,255,.12);animation:naamDigitalPulse 5.8s ease-in-out infinite}.v2-digital-visual>span{position:relative;z-index:2;animation:naamDigitalCore 5.4s ease-in-out infinite}.v2-digital-orbit{z-index:3;will-change:transform}.v2-digital-orbit.one{animation:naamDigitalNodeOne 6.6s ease-in-out infinite}.v2-digital-orbit.two{animation:naamDigitalNodeTwo 7.2s ease-in-out infinite}.v2-digital-orbit.three{animation:naamDigitalNodeThree 7.8s ease-in-out infinite}
@keyframes naamDigitalRing{to{transform:rotate(360deg)}}@keyframes naamDigitalPulse{0%,100%{transform:scale(.96);opacity:.35}50%{transform:scale(1.04);opacity:.8}}@keyframes naamDigitalCore{0%,100%{transform:translateY(0);box-shadow:0 20px 50px rgba(0,0,0,.2)}50%{transform:translateY(-5px);box-shadow:0 26px 58px rgba(0,0,0,.24)}}@keyframes naamDigitalNodeOne{0%,100%{transform:translate(0,0)}50%{transform:translate(6px,-7px)}}@keyframes naamDigitalNodeTwo{0%,100%{transform:translate(0,0)}50%{transform:translate(-7px,5px)}}@keyframes naamDigitalNodeThree{0%,100%{transform:translate(0,0)}50%{transform:translate(5px,6px)}}
.v2-contact-info-panel{padding:clamp(24px,3vw,36px)!important;min-height:100%;display:flex;flex-direction:column;justify-content:center}.v2-contact-info-panel>.eyebrow,.v2-contact-info-panel>.section-title,.v2-contact-info-panel>p{max-width:620px}.v2-contact-detail:first-of-type{margin-top:8px}.v2-map-card{min-height:430px!important}.v2-map-card>div{padding:clamp(30px,3.3vw,44px)!important;align-self:center}.v2-map-card iframe{min-height:430px!important;height:100%!important}.v2-appointment-aside{padding:clamp(24px,3vw,36px)!important;top:calc(var(--topbar-h) + var(--header-h) + 18px)!important}.v2-appointment-benefits{margin-top:26px!important}
.feedback-choice-card{cursor:pointer;min-height:96px!important;padding:1rem 1.1rem!important;grid-template-columns:auto minmax(0,1fr) 30px!important;align-items:center!important}.feedback-choice-copy strong{font-size:.94rem;line-height:1.35}.feedback-choice-check{width:28px!important;height:28px!important;align-self:center}.feedback-choice-card:focus-within{outline:3px solid rgba(17,145,170,.16);outline-offset:3px}
.cms-login-brand img{height:auto!important;max-height:46px!important;object-fit:contain!important;object-position:left center!important}
@media(max-width:900px){.v2-trust-strip{padding-top:20px!important}.v2-trust-strip-grid{gap:14px!important}.v2-map-card{min-height:0!important}.v2-map-card iframe{min-height:380px!important;height:380px!important}.v2-contact-info-panel,.v2-appointment-aside{padding:24px!important}}
@media(max-width:520px){.v2-trust-strip{padding:16px 0 20px!important}.v2-trust-strip-grid{gap:12px!important}.v2-trust-item{min-height:92px!important;padding:14px!important}.v2-map-card iframe{min-height:360px!important;height:360px!important}.v2-contact-info-panel,.v2-appointment-aside{padding:20px!important}}
@media(prefers-reduced-motion:reduce){.v2-doctor-hero-network::after,.v2-doctor-care-orbit::after,.v2-digital-visual::before,.v2-digital-visual::after,.v2-digital-visual>span,.v2-digital-orbit{animation:none!important}}

/* === v2.3: appointment balance + smoother connected-system orbits === */
/* Desktop appointment columns share one grid-row height. The left care card
   stretches to the form card height; responsive stacked layouts remain auto. */
@media(min-width:1051px){
  .v2-appointment-layout{align-items:stretch!important}
  .v2-appointment-layout>.v2-appointment-aside,
  .v2-appointment-layout>.v2-appointment-form-shell{
    align-self:stretch!important;
    height:auto!important;
    min-height:100%!important;
    margin-top:0!important;
  }
  .v2-appointment-aside{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .v2-appointment-aside>.v2-appointment-benefits{flex:1 1 auto}
  .v2-appointment-aside>.v2-emergency-callout{margin-top:auto!important}
}
@media(max-width:1050px){
  .v2-appointment-layout{align-items:start!important}
  .v2-appointment-layout>.v2-appointment-aside,.v2-appointment-layout>.v2-appointment-form-shell{width:100%!important;height:auto!important;min-height:0!important;margin-top:0!important}
  .v2-appointment-aside{position:static!important;inset:auto!important}
}

/* Shared orbital system: three visible elliptical tracks with labels that stay
   upright. The default transform animation is a broad fallback; modern browsers
   use CSS motion paths for a continuous ellipse instead of segmented movement. */
.v2-orbital-system{
  --orbit-line:rgba(151,233,226,.31);
  position:relative!important;
  isolation:isolate;
  overflow:visible!important;
}
.v2-orbital-core{position:relative;z-index:8}
.v2-orbit-track{
  position:absolute!important;
  z-index:3;
  left:50%;
  top:50%;
  width:calc(var(--orbit-rx) + var(--orbit-rx));
  height:calc(var(--orbit-ry) + var(--orbit-ry));
  border:1px solid var(--orbit-line);
  border-radius:50%;
  transform:translate(-50%,-50%);
  pointer-events:none;
  box-shadow:inset 0 0 24px rgba(118,225,218,.03);
}
.v2-orbit-track::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:50%;
  border:1px solid transparent;
  border-top-color:rgba(159,237,231,.66);
  border-right-color:rgba(159,237,231,.20);
  opacity:.74;
  animation:naamOrbitTrace var(--orbit-duration,20s) linear infinite;
}
.v2-orbit-node{
  position:absolute!important;
  z-index:5;
  left:50%!important;
  top:50%!important;
  right:auto!important;
  bottom:auto!important;
  margin:0!important;
  will-change:transform;
  animation:naamOrbitFallback var(--orbit-duration,20s) linear infinite!important;
  animation-delay:var(--orbit-delay,0s)!important;
  pointer-events:none;
}
.v2-orbit-track--two .v2-orbit-node{animation-direction:reverse!important}
@keyframes naamOrbitTrace{to{transform:rotate(360deg)}}
@keyframes naamOrbitFallback{
  0%{transform:translate(calc(-50% + var(--orbit-rx)), -50%)}
  12.5%{transform:translate(calc(-50% + var(--orbit-rx7)), calc(-50% + var(--orbit-ry7)))}
  25%{transform:translate(-50%, calc(-50% + var(--orbit-ry)))}
  37.5%{transform:translate(calc(-50% - var(--orbit-rx7)), calc(-50% + var(--orbit-ry7)))}
  50%{transform:translate(calc(-50% - var(--orbit-rx)), -50%)}
  62.5%{transform:translate(calc(-50% - var(--orbit-rx7)), calc(-50% - var(--orbit-ry7)))}
  75%{transform:translate(-50%, calc(-50% - var(--orbit-ry)))}
  87.5%{transform:translate(calc(-50% + var(--orbit-rx7)), calc(-50% - var(--orbit-ry7)))}
  100%{transform:translate(calc(-50% + var(--orbit-rx)), -50%)}
}
/* JavaScript progressively upgrades the fallback path to a mathematically exact
   ellipse using each rendered ring's live width and height. */

/* Facilities: HIS, PACS and ERP each occupy a separate orbit around one
   stationary hospital core. */
.v2-digital-visual.v2-orbital-system--digital{
  min-height:410px!important;
  border-radius:28px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:radial-gradient(circle at center,rgba(255,255,255,.13) 0%,rgba(255,255,255,.045) 37%,transparent 70%)!important;
}
.v2-digital-visual.v2-orbital-system--digital::before,
.v2-digital-visual.v2-orbital-system--digital::after{animation:none!important;border:0!important;opacity:0!important}
.v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core{
  display:grid;
  place-items:center;
  width:108px;
  height:108px;
  border-radius:32px;
  background:#fff;
  color:var(--v2-blue);
  box-shadow:0 20px 50px rgba(0,0,0,.2),0 0 0 10px rgba(255,255,255,.045);
  animation:naamOrbitCoreBreath 5.8s ease-in-out infinite!important;
}
.v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core svg{width:52px;height:52px}
.v2-orbital-system--digital .v2-orbit-track--one{--orbit-rx:clamp(88px,22vw,116px);--orbit-ry:clamp(38px,8vw,47px);--orbit-rx7:clamp(62px,15.5vw,82px);--orbit-ry7:clamp(27px,5.6vw,33px);--orbit-duration:17s;--orbit-delay:-2s}
.v2-orbital-system--digital .v2-orbit-track--two{--orbit-rx:clamp(112px,28vw,148px);--orbit-ry:clamp(57px,12vw,70px);--orbit-rx7:clamp(79px,19.8vw,105px);--orbit-ry7:clamp(40px,8.5vw,49px);--orbit-duration:21s;--orbit-delay:-8s}
.v2-orbital-system--digital .v2-orbit-track--three{--orbit-rx:clamp(136px,34vw,180px);--orbit-ry:clamp(78px,16vw,94px);--orbit-rx7:clamp(96px,24vw,127px);--orbit-ry7:clamp(55px,11.3vw,66px);--orbit-duration:26s;--orbit-delay:-15s}
.v2-orbital-system--digital .v2-digital-orbit{
  display:grid!important;
  place-items:center!important;
  width:64px!important;
  height:42px!important;
  min-width:64px!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,#0b7288,#0d8790)!important;
  border:1px solid rgba(255,255,255,.25)!important;
  color:#fff!important;
  font-size:.74rem!important;
  font-weight:900!important;
  letter-spacing:.04em;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}
@keyframes naamOrbitCoreBreath{0%,100%{scale:1}50%{scale:1.025}}

/* Doctors hero: one hospital core and exactly three compact icon+copy nodes.
   Each node stays upright while following its own elliptical track. */
.v2-doctor-care-orbit.v2-orbital-system--doctors{
  grid-column:1/-1!important;
  width:100%!important;
  max-width:560px!important;
  min-height:318px!important;
  aspect-ratio:auto!important;
  place-self:center!important;
  border:0!important;
  border-radius:26px!important;
  animation:none!important;
  background:radial-gradient(circle at center,rgba(115,224,220,.09),transparent 64%);
}
.v2-doctor-care-orbit.v2-orbital-system--doctors::before,
.v2-doctor-care-orbit.v2-orbital-system--doctors::after{display:none!important;animation:none!important}
.v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core{
  position:absolute!important;
  z-index:8;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:76px!important;
  height:76px!important;
  border-radius:24px!important;
  color:#fff!important;
  background:linear-gradient(135deg,rgba(28,166,179,.92),rgba(17,105,169,.94))!important;
  box-shadow:0 16px 34px rgba(0,29,50,.28),0 0 0 9px rgba(143,226,230,.07)!important;
  animation:naamDoctorCoreBreath 5.6s ease-in-out infinite!important;
}
.v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core svg{width:36px!important;height:36px!important}
.v2-orbital-system--doctors .v2-orbit-track--one{--orbit-rx:clamp(100px,12vw,132px);--orbit-ry:clamp(42px,4.8vw,52px);--orbit-rx7:clamp(71px,8.5vw,93px);--orbit-ry7:clamp(30px,3.4vw,37px);--orbit-duration:19s;--orbit-delay:-3s}
.v2-orbital-system--doctors .v2-orbit-track--two{--orbit-rx:clamp(130px,15vw,166px);--orbit-ry:clamp(65px,7vw,78px);--orbit-rx7:clamp(92px,10.6vw,117px);--orbit-ry7:clamp(46px,5vw,55px);--orbit-duration:23s;--orbit-delay:-10s}
.v2-orbital-system--doctors .v2-orbit-track--three{--orbit-rx:clamp(158px,18vw,202px);--orbit-ry:clamp(88px,9.4vw,104px);--orbit-rx7:clamp(112px,12.7vw,143px);--orbit-ry7:clamp(62px,6.65vw,74px);--orbit-duration:28s;--orbit-delay:-17s}
.v2-orbital-system--doctors .v2-doctor-care-node{
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  width:clamp(148px,15vw,180px)!important;
  min-height:54px!important;
  height:auto!important;
  padding:8px 10px!important;
  border-radius:15px!important;
  color:#fff!important;
  background:rgba(5,58,82,.94)!important;
  border:1px solid rgba(255,255,255,.19)!important;
  box-shadow:0 10px 25px rgba(0,24,42,.22)!important;
  backdrop-filter:blur(12px);
}
.v2-orbital-system--doctors .v2-doctor-care-node b{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;color:#9de5e4;background:rgba(255,255,255,.08)}
.v2-orbital-system--doctors .v2-doctor-care-node b svg{width:17px;height:17px}
.v2-orbital-system--doctors .v2-doctor-care-node>span{min-width:0}
.v2-orbital-system--doctors .v2-doctor-care-node strong{display:block;color:#fff;font-size:.65rem;line-height:1.22}
.v2-orbital-system--doctors .v2-doctor-care-node small{display:block;margin-top:2px;color:rgba(255,255,255,.66);font-size:.55rem;line-height:1.25}
@keyframes naamDoctorCoreBreath{0%,100%{scale:1}50%{scale:1.03}}

@media(max-width:760px){
  .v2-digital-visual.v2-orbital-system--digital{min-height:350px!important}
  .v2-doctor-care-orbit.v2-orbital-system--doctors{min-height:286px!important;max-width:100%!important}
  .v2-orbital-system--doctors .v2-doctor-care-node{width:clamp(132px,39vw,156px)!important;padding:7px 8px!important;grid-template-columns:26px minmax(0,1fr)!important}
  .v2-orbital-system--doctors .v2-doctor-care-node b{width:26px;height:26px}
  .v2-orbital-system--doctors .v2-doctor-care-node small{display:none}
}
@media(max-width:480px){
  .v2-digital-visual.v2-orbital-system--digital{min-height:320px!important}
  .v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core{width:86px;height:86px;border-radius:27px}
  .v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core svg{width:42px;height:42px}
  .v2-orbital-system--digital .v2-digital-orbit{width:54px!important;min-width:54px!important;height:38px!important;font-size:.68rem!important}
  .v2-doctor-care-orbit.v2-orbital-system--doctors{min-height:264px!important}
  .v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core{width:66px!important;height:66px!important;border-radius:21px!important}
  .v2-orbital-system--doctors .v2-orbit-track--one{--orbit-rx:68px;--orbit-ry:32px;--orbit-rx7:48px;--orbit-ry7:23px}
  .v2-orbital-system--doctors .v2-orbit-track--two{--orbit-rx:88px;--orbit-ry:52px;--orbit-rx7:62px;--orbit-ry7:37px}
  .v2-orbital-system--doctors .v2-orbit-track--three{--orbit-rx:108px;--orbit-ry:72px;--orbit-rx7:76px;--orbit-ry7:51px}
  .v2-orbital-system--doctors .v2-doctor-care-node{width:108px!important;min-height:44px!important;padding:7px!important;grid-template-columns:24px minmax(0,1fr)!important;gap:6px!important}
  .v2-orbital-system--doctors .v2-doctor-care-node b{width:24px;height:24px}
  .v2-orbital-system--doctors .v2-doctor-care-node b svg{width:15px;height:15px}
  .v2-orbital-system--doctors .v2-doctor-care-node strong{font-size:.56rem;line-height:1.18}
}
@media(prefers-reduced-motion:reduce){
  .v2-orbit-track::before,.v2-orbit-node,.v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core,.v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core{animation:none!important}
  .v2-orbit-track--one .v2-orbit-node{left:100%!important;top:50%!important;offset-path:none!important;transform:translate(-50%,-50%)!important}
  .v2-orbit-track--two .v2-orbit-node{left:50%!important;top:100%!important;offset-path:none!important;transform:translate(-50%,-50%)!important}
  .v2-orbit-track--three .v2-orbit-node{left:0!important;top:50%!important;offset-path:none!important;transform:translate(-50%,-50%)!important}
}

/* === v2.2 targeted correction: public navigation hover clarity === */
.site-header .nav-link{transition:color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease!important}
.site-header .nav-link:hover,.site-header .nav-link:focus-visible{
  color:#fff!important;
  background:rgba(255,255,255,.15)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.11),0 5px 14px rgba(2,31,67,.08)!important;
  transform:translateY(-1px);
}
@media(max-width:820px){.site-header .main-nav .nav-link:hover,.site-header .main-nav .nav-link:focus-visible{color:#0c50a1!important;background:#edf6ff!important;box-shadow:inset 0 0 0 1px rgba(12,80,161,.08)!important;transform:none}}
@media(prefers-reduced-motion:reduce){.site-header .nav-link{transition:none!important}.site-header .nav-link:hover,.site-header .nav-link:focus-visible{transform:none!important}}

/* === v2.4: exact three-ring icon-only orbital visuals === */
/* Keep only the three functional ellipse tracks. Earlier decorative traces and
   background circles could visually read as extra rings. */
.v2-orbit-track::before{display:none!important;content:none!important;animation:none!important}
.v2-doctor-hero-network::before{display:none!important;content:none!important}

/* Doctors hero: hospital core + three icon-only moving nodes. The existing
   explanatory copy is kept as a stationary legend to the right. */
.v2-doctor-care-visual{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(270px,1fr) minmax(185px,.68fr);
  gap:16px;
  align-items:center;
  min-width:0;
}
.v2-doctor-care-orbit.v2-orbital-system--doctors{
  width:100%!important;
  max-width:360px!important;
  min-height:270px!important;
  margin:0 auto!important;
  background:radial-gradient(circle at center,rgba(115,224,220,.085),transparent 67%)!important;
}
.v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core{
  width:72px!important;
  height:72px!important;
  border-radius:23px!important;
  box-shadow:0 16px 34px rgba(0,29,50,.28)!important;
}
.v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core svg{width:35px!important;height:35px!important}
.v2-orbital-system--doctors .v2-orbit-track--one{--orbit-rx:86px;--orbit-ry:34px;--orbit-rx7:61px;--orbit-ry7:24px;--orbit-duration:18s;--orbit-delay:-2s}
.v2-orbital-system--doctors .v2-orbit-track--two{--orbit-rx:116px;--orbit-ry:56px;--orbit-rx7:82px;--orbit-ry7:40px;--orbit-duration:22s;--orbit-delay:-8s}
.v2-orbital-system--doctors .v2-orbit-track--three{--orbit-rx:146px;--orbit-ry:80px;--orbit-rx7:103px;--orbit-ry7:57px;--orbit-duration:27s;--orbit-delay:-15s}
.v2-orbital-system--doctors .v2-doctor-care-node{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  border-radius:50%!important;
  color:#a8eeeb!important;
  background:#075a78!important;
  border:1px solid rgba(255,255,255,.27)!important;
  box-shadow:0 8px 20px rgba(0,25,43,.25)!important;
  backdrop-filter:none!important;
}
.v2-orbital-system--doctors .v2-doctor-care-node>svg{width:20px!important;height:20px!important}
.v2-doctor-orbit-legend{display:grid;gap:8px;min-width:0}
.v2-doctor-orbit-legend-item{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:9px;
  align-items:center;
  padding:9px 10px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  background:rgba(255,255,255,.07);
}
.v2-doctor-orbit-legend-item>b{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:#9de5e4;background:rgba(255,255,255,.085)}
.v2-doctor-orbit-legend-item>b svg{width:18px;height:18px}
.v2-doctor-orbit-legend-item strong{display:block;color:#fff;font-size:.69rem;line-height:1.22}
.v2-doctor-orbit-legend-item small{display:block;margin-top:2px;color:rgba(255,255,255,.62);font-size:.58rem;line-height:1.3}

/* Facilities: same three-ring language, with HIS/PACS/ERP identified in a
   stationary legend while the three system icons orbit the hospital core. */
.v2-digital-visual-wrap{
  display:grid;
  grid-template-columns:minmax(270px,1fr) 92px;
  gap:14px;
  align-items:center;
  min-width:0;
}
.v2-digital-visual.v2-orbital-system--digital{
  width:100%;
  min-height:360px!important;
  border-radius:28px!important;
  border:1px solid rgba(255,255,255,.11)!important;
}
.v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core{
  width:96px!important;
  height:96px!important;
  border-radius:29px!important;
  box-shadow:0 20px 48px rgba(0,0,0,.22)!important;
}
.v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core svg{width:47px!important;height:47px!important}
.v2-orbital-system--digital .v2-orbit-track--one{--orbit-rx:82px;--orbit-ry:34px;--orbit-rx7:58px;--orbit-ry7:24px;--orbit-duration:18s;--orbit-delay:-1s}
.v2-orbital-system--digital .v2-orbit-track--two{--orbit-rx:112px;--orbit-ry:57px;--orbit-rx7:79px;--orbit-ry7:40px;--orbit-duration:22s;--orbit-delay:-8s}
.v2-orbital-system--digital .v2-orbit-track--three{--orbit-rx:142px;--orbit-ry:82px;--orbit-rx7:100px;--orbit-ry7:58px;--orbit-duration:27s;--orbit-delay:-15s}
.v2-orbital-system--digital .v2-digital-orbit{
  display:grid!important;
  place-items:center!important;
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  border-radius:50%!important;
  color:#fff!important;
  background:linear-gradient(145deg,#0b7288,#0c8990)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  box-shadow:0 9px 22px rgba(0,0,0,.21)!important;
}
.v2-orbital-system--digital .v2-digital-orbit svg{width:21px;height:21px}
.v2-digital-orbit-legend{display:grid;gap:9px}
.v2-digital-orbit-legend>span{display:grid;grid-template-columns:27px 1fr;gap:7px;align-items:center;color:rgba(255,255,255,.9);font-size:.7rem;font-weight:850;letter-spacing:.035em}
.v2-digital-orbit-legend b{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;color:#a7ece8;background:rgba(255,255,255,.09)}
.v2-digital-orbit-legend b svg{width:15px;height:15px}

@media(max-width:1100px){
  .v2-doctor-care-visual{grid-template-columns:minmax(250px,1fr) minmax(170px,.72fr);gap:12px}
  .v2-doctor-care-orbit.v2-orbital-system--doctors{max-width:330px!important}
  .v2-digital-visual-wrap{grid-template-columns:1fr;gap:10px}
  .v2-digital-orbit-legend{grid-template-columns:repeat(3,1fr);max-width:300px;width:100%;margin:-2px auto 0}
  .v2-digital-orbit-legend>span{grid-template-columns:25px 1fr}
}
@media(max-width:760px){
  .v2-doctor-care-visual{grid-template-columns:1fr;gap:8px}
  .v2-doctor-care-orbit.v2-orbital-system--doctors{max-width:330px!important;min-height:250px!important}
  .v2-doctor-orbit-legend{grid-template-columns:repeat(3,1fr);gap:6px}
  .v2-doctor-orbit-legend-item{grid-template-columns:28px 1fr;padding:7px;gap:6px}
  .v2-doctor-orbit-legend-item>b{width:28px;height:28px}
  .v2-doctor-orbit-legend-item>b svg{width:15px;height:15px}
  .v2-doctor-orbit-legend-item strong{font-size:.59rem}
  .v2-doctor-orbit-legend-item small{display:none}
  .v2-digital-visual.v2-orbital-system--digital{min-height:330px!important}
}
@media(max-width:480px){
  .v2-doctor-care-orbit.v2-orbital-system--doctors{max-width:292px!important;min-height:228px!important}
  .v2-orbital-system--doctors .v2-orbit-track--one{--orbit-rx:66px;--orbit-ry:29px;--orbit-rx7:47px;--orbit-ry7:21px}
  .v2-orbital-system--doctors .v2-orbit-track--two{--orbit-rx:90px;--orbit-ry:46px;--orbit-rx7:64px;--orbit-ry7:33px}
  .v2-orbital-system--doctors .v2-orbit-track--three{--orbit-rx:114px;--orbit-ry:65px;--orbit-rx7:81px;--orbit-ry7:46px}
  .v2-orbital-system--doctors .v2-doctor-care-node{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important}
  .v2-orbital-system--doctors .v2-doctor-care-node>svg{width:16px!important;height:16px!important}
  .v2-doctor-orbit-legend{grid-template-columns:1fr}
  .v2-doctor-orbit-legend-item small{display:block}
  .v2-digital-visual.v2-orbital-system--digital{min-height:292px!important}
  .v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core{width:80px!important;height:80px!important;border-radius:25px!important}
  .v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core svg{width:39px!important;height:39px!important}
  .v2-orbital-system--digital .v2-orbit-track--one{--orbit-rx:62px;--orbit-ry:27px;--orbit-rx7:44px;--orbit-ry7:19px}
  .v2-orbital-system--digital .v2-orbit-track--two{--orbit-rx:86px;--orbit-ry:44px;--orbit-rx7:61px;--orbit-ry7:31px}
  .v2-orbital-system--digital .v2-orbit-track--three{--orbit-rx:110px;--orbit-ry:64px;--orbit-rx7:78px;--orbit-ry7:45px}
  .v2-orbital-system--digital .v2-digital-orbit{width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important}
  .v2-orbital-system--digital .v2-digital-orbit svg{width:18px;height:18px}
  .v2-digital-orbit-legend{max-width:270px;gap:6px}
  .v2-digital-orbit-legend>span{font-size:.64rem}
}
@media(prefers-reduced-motion:reduce){
  .v2-orbit-node{animation:none!important}
}

/* v2.4 layout specificity corrections against earlier component rules. */
.v2-doctor-care-visual>.v2-doctor-care-orbit.v2-orbital-system--doctors{
  grid-column:auto!important;
  place-self:center!important;
}
.v2-digital-visual.v2-orbital-system--digital>.v2-orbit-track{
  display:block!important;
  width:calc(var(--orbit-rx) + var(--orbit-rx))!important;
  height:calc(var(--orbit-ry) + var(--orbit-ry))!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  border:1px solid var(--orbit-line)!important;
  border-radius:50%!important;
  background:transparent!important;
  color:inherit!important;
  box-shadow:inset 0 0 24px rgba(118,225,218,.03)!important;
}

/* Keep the Facilities ellipse tracks centered; an older core-breath selector
   also matched direct-child track spans and could displace the rings. */
.v2-digital-visual-wrap{
  grid-template-columns:1fr!important;
  gap:10px!important;
}
.v2-digital-visual.v2-orbital-system--digital>.v2-orbit-track{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  animation:none!important;
  z-index:3!important;
}
.v2-digital-orbit-legend{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  width:min(100%,320px)!important;
  margin:0 auto!important;
}
.v2-digital-orbit-legend>span{justify-content:center}


/* === v2.5: refined non-overlapping orbital presentation === */
/* Doctors: keep three icon orbits, but enlarge the orbit field and harmonize
   the hospital core so the animation feels integrated instead of isolated. */
.v2-doctor-care-visual{
  grid-template-columns:1fr!important;
  gap:24px!important;
  align-items:center!important;
}
.v2-doctor-care-orbit.v2-orbital-system--doctors{
  max-width:470px!important;
  min-height:440px!important;
  border-radius:32px!important;
  background:radial-gradient(circle at center,rgba(118,225,218,.12) 0%,rgba(118,225,218,.045) 34%,transparent 71%)!important;
}
.v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core{
  width:86px!important;
  height:86px!important;
  border-radius:28px!important;
  background:linear-gradient(145deg,#0e7ea0,#1595b7)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 18px 38px rgba(0,24,42,.27),0 0 0 10px rgba(146,233,230,.08)!important;
}
.v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core svg{width:40px!important;height:40px!important}
.v2-orbital-system--doctors .v2-orbit-track--one{--orbit-rx:118px;--orbit-ry:72px;--orbit-rx7:83px;--orbit-ry7:51px;--orbit-duration:18s;--orbit-delay:-1s}
.v2-orbital-system--doctors .v2-orbit-track--two{--orbit-rx:164px;--orbit-ry:128px;--orbit-rx7:116px;--orbit-ry7:91px;--orbit-duration:23s;--orbit-delay:-9s}
.v2-orbital-system--doctors .v2-orbit-track--three{--orbit-rx:210px;--orbit-ry:184px;--orbit-rx7:148px;--orbit-ry7:130px;--orbit-duration:28s;--orbit-delay:-16s}
.v2-orbital-system--doctors .v2-doctor-care-node{
  width:50px!important;
  min-width:50px!important;
  height:50px!important;
  min-height:50px!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,#094d67,#0c6d86)!important;
  border:1px solid rgba(255,255,255,.26)!important;
  box-shadow:0 12px 24px rgba(0,24,42,.22)!important;
}
.v2-orbital-system--doctors .v2-doctor-care-node>svg{width:24px!important;height:24px!important}
.v2-doctor-orbit-legend{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;max-width:430px;width:100%;margin:0 auto!important}
.v2-doctor-orbit-legend-item{grid-template-columns:30px minmax(0,1fr)!important;padding:10px 12px!important;border-radius:16px!important;background:rgba(255,255,255,.08)!important}
.v2-doctor-orbit-legend-item strong{font-size:.74rem!important}
.v2-doctor-orbit-legend-item small{font-size:.61rem!important}

/* Facilities: show compact icon + label pills directly in the orbit and remove
   the separate legend, while keeping clear spacing between the core and nodes. */
.v2-digital-visual-wrap{grid-template-columns:1fr!important;gap:0!important}
.v2-digital-orbit-legend{display:none!important}
.v2-digital-visual.v2-orbital-system--digital{
  width:100%!important;
  max-width:470px!important;
  min-height:440px!important;
  margin:0 auto!important;
  border-radius:34px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:radial-gradient(circle at center,rgba(121,229,220,.12) 0%,rgba(121,229,220,.05) 33%,transparent 72%)!important;
}
.v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core{
  width:80px!important;
  height:80px!important;
  border-radius:26px!important;
  color:#fff!important;
  background:linear-gradient(145deg,#1287a4,#16a1b3)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.23),0 0 0 10px rgba(131,227,221,.07)!important;
}
.v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core svg{width:39px!important;height:39px!important}
.v2-orbital-system--digital .v2-orbit-track--one{--orbit-rx:110px;--orbit-ry:76px;--orbit-rx7:78px;--orbit-ry7:54px;--orbit-duration:18s;--orbit-delay:-2s}
.v2-orbital-system--digital .v2-orbit-track--two{--orbit-rx:145px;--orbit-ry:128px;--orbit-rx7:103px;--orbit-ry7:91px;--orbit-duration:23s;--orbit-delay:-9s}
.v2-orbital-system--digital .v2-orbit-track--three{--orbit-rx:180px;--orbit-ry:180px;--orbit-rx7:127px;--orbit-ry7:127px;--orbit-duration:28s;--orbit-delay:-16s}
.v2-orbital-system--digital .v2-digital-orbit{
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  width:110px!important;
  min-width:110px!important;
  height:auto!important;
  min-height:48px!important;
  padding:8px 10px!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,#0a6076,#0d7f8c)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  box-shadow:0 12px 26px rgba(0,0,0,.2)!important;
}
.v2-orbital-system--digital .v2-digital-orbit b{
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  border-radius:10px!important;
  color:#a7eeea!important;
  background:rgba(255,255,255,.10)!important;
}
.v2-orbital-system--digital .v2-digital-orbit b svg{width:16px!important;height:16px!important}
.v2-orbital-system--digital .v2-digital-orbit>span{min-width:0!important}
.v2-orbital-system--digital .v2-digital-orbit strong{display:block;color:#fff;font-size:.74rem;line-height:1.1;letter-spacing:.03em}
.v2-orbital-system--digital .v2-digital-orbit small{display:block;margin-top:2px;color:rgba(255,255,255,.72);font-size:.56rem;line-height:1.18;letter-spacing:.02em}

@media(max-width:1100px){
  .v2-doctor-care-visual{grid-template-columns:1fr!important;gap:14px!important}
  .v2-doctor-care-orbit.v2-orbital-system--doctors{max-width:410px!important}
}
@media(max-width:760px){
  .v2-doctor-care-orbit.v2-orbital-system--doctors{max-width:380px!important;min-height:362px!important}
  .v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core{width:78px!important;height:78px!important;border-radius:25px!important}
  .v2-orbital-system--doctors .v2-doctor-care-node{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important}
  .v2-orbital-system--doctors .v2-doctor-care-node>svg{width:22px!important;height:22px!important}
  .v2-orbital-system--doctors .v2-orbit-track--one{--orbit-rx:98px;--orbit-ry:66px;--orbit-rx7:69px;--orbit-ry7:47px}
  .v2-orbital-system--doctors .v2-orbit-track--two{--orbit-rx:136px;--orbit-ry:112px;--orbit-rx7:96px;--orbit-ry7:79px}
  .v2-orbital-system--doctors .v2-orbit-track--three{--orbit-rx:174px;--orbit-ry:158px;--orbit-rx7:123px;--orbit-ry7:112px}
  .v2-digital-visual.v2-orbital-system--digital{max-width:400px!important;min-height:360px!important}
  .v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core{width:74px!important;height:74px!important;border-radius:24px!important}

  .v2-orbital-system--digital .v2-orbit-track--one{--orbit-rx:92px;--orbit-ry:60px;--orbit-rx7:65px;--orbit-ry7:42px}
  .v2-orbital-system--digital .v2-orbit-track--two{--orbit-rx:121px;--orbit-ry:106px;--orbit-rx7:86px;--orbit-ry7:75px}
  .v2-orbital-system--digital .v2-orbit-track--three{--orbit-rx:150px;--orbit-ry:152px;--orbit-rx7:106px;--orbit-ry7:107px}
  .v2-orbital-system--digital .v2-digital-orbit{width:100px!important;min-width:100px!important;min-height:42px!important;padding:6px 8px!important}
  .v2-orbital-system--digital .v2-digital-orbit strong{font-size:.69rem}
  .v2-orbital-system--digital .v2-digital-orbit small{font-size:.52rem}
}
@media(max-width:480px){
  .v2-doctor-care-orbit.v2-orbital-system--doctors{max-width:330px!important;min-height:310px!important}
  .v2-doctor-care-orbit.v2-orbital-system--doctors .v2-doctor-care-core{width:64px!important;height:64px!important;border-radius:22px!important}
  .v2-orbital-system--doctors .v2-orbit-track--one{--orbit-rx:80px;--orbit-ry:56px;--orbit-rx7:56px;--orbit-ry7:40px}
  .v2-orbital-system--doctors .v2-orbit-track--two{--orbit-rx:106px;--orbit-ry:100px;--orbit-rx7:75px;--orbit-ry7:71px}
  .v2-orbital-system--doctors .v2-orbit-track--three{--orbit-rx:132px;--orbit-ry:144px;--orbit-rx7:93px;--orbit-ry7:102px}
  .v2-orbital-system--doctors .v2-doctor-care-node{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important}
  .v2-orbital-system--doctors .v2-doctor-care-node>svg{width:21px!important;height:21px!important}
  .v2-doctor-orbit-legend{grid-template-columns:1fr!important}
  .v2-digital-visual.v2-orbital-system--digital{max-width:332px!important;min-height:344px!important}
  .v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core{width:66px!important;height:66px!important;border-radius:23px!important}
  .v2-digital-visual.v2-orbital-system--digital>.v2-orbital-core svg{width:35px!important;height:35px!important}
  .v2-orbital-system--digital .v2-orbit-track--one{--orbit-rx:78px;--orbit-ry:56px;--orbit-rx7:55px;--orbit-ry7:40px}
  .v2-orbital-system--digital .v2-orbit-track--two{--orbit-rx:100px;--orbit-ry:96px;--orbit-rx7:71px;--orbit-ry7:68px}
  .v2-orbital-system--digital .v2-orbit-track--three{--orbit-rx:122px;--orbit-ry:136px;--orbit-rx7:86px;--orbit-ry7:96px}
  .v2-orbital-system--digital .v2-digital-orbit{width:88px!important;min-width:88px!important;min-height:40px!important;grid-template-columns:26px minmax(0,1fr)!important;gap:6px!important;padding:6px 8px!important}
  .v2-orbital-system--digital .v2-digital-orbit b{width:26px!important;height:26px!important}
  .v2-orbital-system--digital .v2-digital-orbit b svg{width:15px!important;height:15px!important}
  .v2-orbital-system--digital .v2-digital-orbit small{display:none!important}
}

/* ==========================================================================
   v3.1 — Named initials avatar for doctors without an uploaded photograph.
   Replaces the anonymous silhouette icon so every directory card reads as a
   real person and the grid keeps a consistent visual rhythm.
   ========================================================================== */
.v2-doctor-initials {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  background: linear-gradient(150deg, #eaf7fb 0%, #dff0f6 46%, #e6f5ef 100%);
}
.v2-doctor-initials::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 22% 18%, rgba(12, 80, 161, .10), transparent 46%),
    radial-gradient(circle at 82% 88%, rgba(13, 148, 136, .10), transparent 44%);
  pointer-events: none;
}
.v2-doctor-initials-text {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: clamp(64px, 34%, 96px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(12, 80, 161, .16);
  box-shadow: 0 10px 26px rgba(7, 59, 92, .13);
  color: #0c50a1;
  font-size: clamp(1.35rem, 1rem + 1.5vw, 1.95rem);
  font-weight: 800;
  letter-spacing: .04em;
  line-height: 1;
  font-variant-ligatures: none;
}
.v2-doctor-card:hover .v2-doctor-initials-text {
  transform: scale(1.035);
  transition: transform .45s cubic-bezier(.2, .75, .25, 1);
}
@media (prefers-reduced-motion: reduce) {
  .v2-doctor-card:hover .v2-doctor-initials-text { transform: none; }
}

/* Departments with no publicly listed doctor profile: keep the filter option
   visible for discovery but make its hospital-coordinated status explicit. */
.v2-filter-check.is-unstaffed { opacity: .78; }
.v2-filter-check.is-unstaffed span { color: #4a5a66; }
.v2-filter-check-note {
  display: block;
  margin: 2px 0 0 28px;
  font-size: .66rem;
  font-weight: 600;
  letter-spacing: .01em;
  color: #6b7c88;
}

/* ==========================================================================
   v3.1 — Mobile tap-target comfort.
   Footer and utility text links are wide but visually short. Adding vertical
   padding on touch viewports raises the touch area toward the 44px guideline
   without changing the visual layout or link appearance on desktop.
   ========================================================================== */
@media (max-width: 900px) {
  .footer-links ul li a,
  .footer-brand-row a,
  .footer-contact-row a {
    display: inline-block;
    padding-block: 7px;
  }
  .footer-links ul li { margin-block: 0; }
  .breadcrumb a { display: inline-block; padding-block: 6px; }
}
