/* ============================================================
   NCRH Hospital - Modern Theme
   Professional hospital styling with animations
   ============================================================ */

/* Google Fonts fallback variables */
:root {
  --primary:       #064568;
  --primary-light: #0b7abf;
  --secondary:     #1a5276;
  --accent:        #28a745;
  --accent-light:  #34ce57;
  --emergency:     #c0392b;
  --emergency-light:#e74c3c;
  --gold:          #ffc600;
  --dark:          #1a1a2e;
  --text-dark:     #2c3e50;
  --text-muted:    #6c757d;
  --bg-light:      #f8f9fb;
  --bg-white:      #ffffff;
  --border:        #e0e8f0;
  --shadow-sm:     0 2px 12px rgba(6,69,104,0.10);
  --shadow-md:     0 6px 28px rgba(6,69,104,0.16);
  --shadow-lg:     0 16px 48px rgba(6,69,104,0.20);
  --radius:        12px;
  --radius-lg:     20px;
  --transition:    all 0.35s cubic-bezier(0.4,0,0.2,1);
}

/* ── Global Reset Improvements ───────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body#body {
  font-family: Garamond, serif !important;
  color: var(--text-dark);
  background-color: #f4f6fb !important;
  line-height: 1.7;
}

img { max-width: 100%; height: auto; }

a { transition: var(--transition); }

/* ── Emergency Banner ─────────────────────────────────────── */
.hospital-emergency-bar {
  background: linear-gradient(90deg, var(--emergency) 0%, #922b21 100%);
  padding: 8px 0;
  position: relative;
  overflow: hidden;
  z-index: 10000;
}

.hospital-emergency-bar::before {
  content: '';
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(
    90deg,
    transparent,
    transparent 30px,
    rgba(255,255,255,0.04) 30px,
    rgba(255,255,255,0.04) 60px
  );
}

.emergency-bar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}

.emergency-bar-left {
  display: flex;
  align-items: center;
  gap: 20px;
  color: #fff;
  font-size: 13px;
  font-weight: 500;
}

.emergency-bar-left .pulse-dot {
  width: 10px; height: 10px;
  background: #fff;
  border-radius: 50%;
  display: inline-block;
  animation: pulse-dot 1.4s ease-in-out infinite;
  box-shadow: 0 0 0 0 rgba(255,255,255,0.6);
  flex-shrink: 0;
}

@keyframes pulse-dot {
  0%   { box-shadow: 0 0 0 0 rgba(255,255,255,0.7); }
  70%  { box-shadow: 0 0 0 8px rgba(255,255,255,0); }
  100% { box-shadow: 0 0 0 0 rgba(255,255,255,0); }
}

.emergency-bar-left .emergency-label {
  background: rgba(255,255,255,0.18);
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 4px;
  padding: 2px 8px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
}

.emergency-bar-left .emergency-phone {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.5px;
}

.emergency-bar-left .emergency-phone:hover { color: var(--gold); }

.emergency-bar-right {
  display: flex;
  align-items: center;
  gap: 16px;
  color: rgba(255,255,255,0.85);
  font-size: 12px;
}

.emergency-bar-right i { margin-right: 4px; }

/* ── Top Header ───────────────────────────────────────────── */
#topheader {
  background: var(--primary) !important;
  padding: 8px 0;
  border-bottom: 3px solid var(--gold);
}

#topheader .widget ul.list-inline li a {
  color: rgba(255,255,255,0.85) !important;
  font-size: 13px;
  text-decoration: none;
  transition: var(--transition);
}

#topheader .widget ul.list-inline li a:hover { color: var(--gold) !important; }

#topheader .widget ul.list-inline li a i {
  color: var(--gold);
  margin-right: 5px;
}

/* Social icons top */
#topsocial {
  color: #fff !important;
  width: 30px; height: 30px;
  border-radius: 50%;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  transition: var(--transition);
  font-size: 13px;
}

#topsocial:hover {
  background: var(--gold) !important;
  color: var(--primary) !important;
  border-color: var(--gold);
  transform: translateY(-2px);
}

/* Book Appointment button */
.btn-book-appointment,
#topheader .btn-success,
a[href*="appointments"].btn {
  background: var(--accent) !important;
  border: none !important;
  border-radius: 25px !important;
  padding: 7px 20px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #fff !important;
  letter-spacing: 0.3px;
  transition: var(--transition) !important;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  box-shadow: 0 3px 12px rgba(40,167,69,0.4) !important;
}

.btn-book-appointment:hover,
#topheader .btn-success:hover,
a[href*="appointments"].btn:hover {
  background: var(--accent-light) !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(40,167,69,0.5) !important;
  color: #fff !important;
}

/* ── Main Navigation ──────────────────────────────────────── */
.header-nav-wrapper {
  background: var(--primary) !important;      /* dark navy bar */
  box-shadow: 0 4px 20px rgba(6,69,104,0.35) !important;
  transition: var(--transition) !important;
}

.header-nav-wrapper.scrolled-nav {
  background: #052e48 !important;             /* slightly deeper on scroll */
  box-shadow: 0 6px 32px rgba(6,69,104,0.45) !important;
}

/* Logo text under the logo image */
#logolink {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  letter-spacing: -0.2px;
  transition: var(--transition);
}

#logolink:hover { color: var(--gold) !important; }

/* Nav links — white on dark navy */
.menuzord-menu > li > a {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,0.88) !important;   /* white, slightly softened */
  text-transform: none !important;
  letter-spacing: 0.3px;
  padding: 22px 16px !important;
  position: relative;
  transition: var(--transition) !important;
}

/* Gold underline slides in on hover / active */
.menuzord-menu > li > a::after {
  content: '';
  position: absolute;
  bottom: 12px; left: 16px; right: 16px;
  height: 2px;
  background: var(--gold);
  transform: scaleX(0);
  transition: transform 0.3s ease;
  border-radius: 2px;
}

/* Hover state: bright white + gold underline */
.menuzord-menu > li > a:hover {
  color: #fff !important;
}

/* Active state: gold text + gold underline — clearly distinct */
.menuzord-menu > li.active > a {
  color: var(--gold) !important;
}

.menuzord-menu > li > a:hover::after,
.menuzord-menu > li.active > a::after {
  transform: scaleX(1);
}

/* Dropdown panel */
.menuzord-menu ul.dropdown {
  background: #fff !important;
  border-top: 3px solid var(--gold) !important;
  border-radius: 0 0 var(--radius) var(--radius) !important;
  box-shadow: var(--shadow-md) !important;
  padding: 8px 0 !important;
}

/* Dropdown links — dark text on white panel */
.menuzord-menu ul.dropdown li a {
  color: var(--text-dark) !important;
  font-size: 13px !important;
  padding: 10px 20px !important;
  font-weight: 500 !important;
  background: transparent !important;
  transition: var(--transition) !important;
}

.menuzord-menu ul.dropdown li a:hover {
  background: rgba(6,69,104,0.06) !important;
  color: var(--primary) !important;
  padding-left: 28px !important;
}

/* Dropdown icons */
.menuzord-menu ul.dropdown li a i {
  color: var(--primary) !important;
}

/* ── Preloader ────────────────────────────────────────────── */
#hospital-preloader {
  position: fixed;
  inset: 0;
  background: var(--primary);
  z-index: 999999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}

#hospital-preloader.loaded {
  opacity: 0;
  visibility: hidden;
}

.preloader-cross {
  width: 60px; height: 60px;
  position: relative;
  margin-bottom: 20px;
  animation: cross-pulse 1.2s ease-in-out infinite;
}

.preloader-cross::before,
.preloader-cross::after {
  content: '';
  position: absolute;
  background: #fff;
  border-radius: 4px;
}

.preloader-cross::before {
  width: 20px; height: 60px;
  left: 50%; transform: translateX(-50%);
}

.preloader-cross::after {
  width: 60px; height: 20px;
  top: 50%; transform: translateY(-50%);
}

@keyframes cross-pulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50%       { transform: scale(1.1); opacity: 0.8; }
}

.preloader-text {
  color: rgba(255,255,255,0.8);
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 500;
}

.preloader-bar {
  width: 200px; height: 3px;
  background: rgba(255,255,255,0.2);
  border-radius: 3px;
  margin-top: 16px;
  overflow: hidden;
}

.preloader-bar-fill {
  height: 100%;
  background: var(--gold);
  border-radius: 3px;
  animation: bar-fill 1.5s ease-in-out infinite;
}

@keyframes bar-fill {
  0%   { width: 0; }
  50%  { width: 80%; }
  100% { width: 100%; }
}

/* ── Hero Slider Overlay ──────────────────────────────────── */
.rev_slider_wrapper {
  position: relative;
}

#rs-2-layer-1 {
  background: linear-gradient(135deg, rgba(6,69,104,0.75) 0%, rgba(26,82,118,0.65) 100%) !important;
  border-radius: 12px !important;
  padding: 30px 40px !important;
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  border: 1px solid rgba(255,255,255,0.15) !important;
}

/* Slider CTA button */
.btn-colored.btn-theme-colored {
  background: var(--gold) !important;
  color: var(--primary) !important;
  border: none !important;
  border-radius: 25px !important;
  font-weight: 700 !important;
  padding: 10px 28px !important;
  transition: var(--transition) !important;
}

.btn-colored.btn-theme-colored:hover {
  background: #fff !important;
  color: var(--primary) !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.2) !important;
}

/* ── Section Common Styles ────────────────────────────────── */
section {
  position: relative;
}

.section-heading {
  margin-bottom: 50px;
  text-align: center;
}

.section-heading .subtitle {
  display: inline-block;
  background: linear-gradient(135deg, rgba(6,69,104,0.08), rgba(11,122,191,0.12));
  color: var(--primary-light);
  border: 1px solid rgba(6,69,104,0.15);
  border-radius: 25px;
  padding: 5px 18px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 14px;
}

.section-heading h2 {
  font-size: 32px;
  font-weight: 700;
  color: var(--text-dark);
  line-height: 1.3;
  margin-bottom: 16px;
}

.section-heading p {
  color: var(--text-muted);
  max-width: 600px;
  margin: 0 auto;
  font-size: 16px;
}

/* Old title line-bottom override */
h4.title.line-bottom {
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--text-dark) !important;
  position: relative !important;
  padding-bottom: 14px !important;
  margin-bottom: 30px !important;
}

h4.title.line-bottom::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important; left: 0 !important;
  width: 50px !important; height: 3px !important;
  background: linear-gradient(90deg, var(--primary), var(--primary-light)) !important;
  border-radius: 3px !important;
}

h4.title.line-bottom a {
  color: inherit !important;
  text-decoration: none !important;
}

h4.title.line-bottom a:hover { color: var(--primary-light) !important; }

/* ── About Section ────────────────────────────────────────── */
#about {
  background: var(--bg-white) !important;
  padding: 80px 0 !important;
}

#about #container {
  border-radius: var(--radius-lg) !important;
  border: none !important;
  background: var(--bg-white) !important;
  box-shadow: var(--shadow-sm) !important;
  padding: 40px !important;
}

#about .img-fullwidth {
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow-md) !important;
  object-fit: cover;
  width: 100%;
  height: 350px;
  transition: transform 0.5s ease !important;
}

#about .img-fullwidth:hover {
  transform: scale(1.02) !important;
}

#about h4 {
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--text-dark) !important;
  margin-bottom: 16px !important;
}

#about h4 span { color: var(--primary) !important; }

#about p.lead {
  color: var(--text-muted) !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
}

#about .btn-colored.btn-theme-colored {
  margin-top: 20px !important;
  display: inline-block;
}

/* About decorative line */
#about::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 5px; height: 80px;
  background: linear-gradient(to bottom, var(--primary), transparent);
}

/* ── Why Us Section ───────────────────────────────────────── */
section:has(.blog-posts article.post) {
  background: var(--bg-light) !important;
  padding: 70px 0 !important;
}

article.post.clearfix {
  background: var(--bg-white) !important;
  border-radius: var(--radius) !important;
  overflow: hidden !important;
  box-shadow: var(--shadow-sm) !important;
  transition: var(--transition) !important;
  border: 1px solid var(--border) !important;
  height: auto !important;
}

article.post.clearfix:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--shadow-md) !important;
  border-color: var(--primary-light) !important;
}

article.post .post-thumb img {
  transition: transform 0.5s ease !important;
  height: 220px !important;
  object-fit: cover !important;
  width: 100% !important;
}

article.post:hover .post-thumb img {
  transform: scale(1.05) !important;
}

article.post .entry-content {
  border: none !important;
  padding: 20px !important;
  height: auto !important;
  min-height: 200px;
}

article.post .entry-title a {
  color: var(--primary) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
}

article.post .entry-title a:hover { color: var(--primary-light) !important; }

article.post p {
  color: var(--text-muted) !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

/* ── Services Section ─────────────────────────────────────── */
#blog {
  background: var(--bg-white) !important;
  padding: 70px 0 !important;
}

#blog #container {
  border-radius: var(--radius-lg) !important;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
}

.project {
  background: var(--bg-white) !important;
  border-radius: var(--radius) !important;
  overflow: hidden !important;
  box-shadow: var(--shadow-sm) !important;
  border: 1px solid var(--border) !important;
  transition: var(--transition) !important;
  height: 100%;
}

.project:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--shadow-lg) !important;
  border-color: var(--primary-light) !important;
}

.project .thumb {
  position: relative;
  overflow: hidden;
}

.project .thumb img {
  width: 100% !important;
  height: 240px !important;
  object-fit: cover !important;
  transition: transform 0.5s ease !important;
}

.project:hover .thumb img {
  transform: scale(1.06) !important;
}

.project .thumb::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 40%, rgba(6,69,104,0.7));
  opacity: 0;
  transition: var(--transition);
}

.project:hover .thumb::after { opacity: 1; }

.project .project-details {
  min-height: 0 !important;
  padding: 0 !important;
}

.project .entry-content {
  padding: 20px !important;
}

.project .entry-title a {
  color: var(--primary) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
}

.project .entry-title a:hover { color: var(--primary-light) !important; }

.project p {
  color: var(--text-muted) !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  margin-top: 8px !important;
}

/* Service card accent bar */
.project::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--primary), var(--primary-light));
  opacity: 0;
  transition: var(--transition);
  z-index: 1;
}

.project:hover::before { opacity: 1; }

/* ── Stats / Overview Section ─────────────────────────────── */
section.divider.parallax {
  position: relative;
  overflow: hidden;
}

.funfact {
  background: rgba(255,255,255,0.10) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  border-radius: var(--radius) !important;
  padding: 30px 20px !important;
  -webkit-backdrop-filter: blur(8px) !important;
  backdrop-filter: blur(8px) !important;
  transition: var(--transition) !important;
}

.funfact:hover {
  background: rgba(255,255,255,0.18) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 36px rgba(0,0,0,0.15) !important;
}

.funfact h2.animate-number {
  font-size: 52px !important;
  font-weight: 800 !important;
  color: var(--gold) !important;
  line-height: 1 !important;
  margin-bottom: 8px !important;
}

.funfact h4 {
  color: #fff !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  font-weight: 600 !important;
  margin: 0 !important;
  opacity: 0.9;
}

/* ── Video Section ────────────────────────────────────────── */
section.divider.parallax.overlay-theme-colored-0 {
  padding: 80px 0 !important;
}

section.divider.parallax.overlay-theme-colored-0::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(6,69,104,0.75);
  z-index: 0;
}

section.divider.parallax.overlay-theme-colored-0 > * {
  position: relative;
  z-index: 1;
}

section.divider.parallax.overlay-theme-colored-0 .pt-20.pb-30 {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: var(--radius) !important;
  transition: var(--transition) !important;
  cursor: pointer;
}

section.divider.parallax.overlay-theme-colored-0 .pt-20.pb-30:hover {
  background: rgba(255,255,255,0.12) !important;
  transform: translateY(-4px) !important;
}

#videolink {
  color: rgba(255,255,255,0.9) !important;
  font-size: 64px !important;
  text-shadow: 0 4px 20px rgba(0,0,0,0.3) !important;
  transition: var(--transition) !important;
  display: inline-block;
}

#videolink:hover {
  color: var(--gold) !important;
  transform: scale(1.15) !important;
}

/* ── Blog Section ─────────────────────────────────────────── */
.entry-date.bg-theme-colored {
  background: var(--primary) !important;
  border-radius: 8px 0 0 0 !important;
}

.entry-meta .media-body h4.entry-title a {
  color: var(--primary) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
}

.entry-meta .media-body h4.entry-title a:hover {
  color: var(--primary-light) !important;
}

article.post .entry-content {
  height: auto !important;
  min-height: 320px;
}

/* ── Partners Section ─────────────────────────────────────── */
section.clients {
  background: var(--bg-white) !important;
  border-top: 1px solid var(--border) !important;
  border-bottom: 1px solid var(--border) !important;
  padding: 30px 0 !important;
}

section.clients .owl-carousel-6col .item a img {
  filter: grayscale(60%) !important;
  opacity: 0.7 !important;
  transition: var(--transition) !important;
  height: 60px !important;
  object-fit: contain !important;
  width: auto !important;
}

section.clients .owl-carousel-6col .item a:hover img {
  filter: grayscale(0%) !important;
  opacity: 1 !important;
  transform: scale(1.05) !important;
}

/* ── Footer ───────────────────────────────────────────────── */
#footer {
  background: linear-gradient(135deg, #0a1628 0%, #0d2137 50%, #0a1c30 100%) !important;
  position: relative;
  overflow: hidden;
}

#footer::before {
  content: '';
  position: absolute;
  top: -100px; right: -100px;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(11,122,191,0.08) 0%, transparent 70%);
  pointer-events: none;
}

#footer::after {
  content: '';
  position: absolute;
  bottom: -100px; left: -100px;
  width: 350px; height: 350px;
  background: radial-gradient(circle, rgba(255,198,0,0.05) 0%, transparent 70%);
  pointer-events: none;
}

#footer .container { position: relative; z-index: 1; }

.widget.dark h5.widget-title {
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  padding-bottom: 12px !important;
  margin-bottom: 20px !important;
  position: relative;
}

.widget.dark h5.widget-title::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important; left: 0 !important;
  width: 40px !important; height: 3px !important;
  background: var(--gold) !important;
  border-radius: 3px !important;
}

.widget.dark .line-bottom {
  border-bottom: none !important;
}

.widget.dark p,
.widget.dark a {
  color: rgba(255,255,255,0.7) !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: var(--transition) !important;
  line-height: 1.7;
}

.widget.dark a:hover { color: var(--gold) !important; }

.widget.dark ul.list-border li {
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  padding: 8px 0 !important;
}

.widget.dark ul.list.angle-double-right li::before {
  content: '›' !important;
  color: var(--gold) !important;
  font-weight: 700 !important;
  margin-right: 6px !important;
}

.widget.dark ul.list.angle-double-right li {
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  padding: 7px 0 !important;
  list-style: none !important;
}

/* Footer newsletter */
.widget.dark .newsletter-form .form-control {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: #fff !important;
  border-radius: 8px 0 0 8px !important;
  padding: 10px 16px !important;
  font-size: 13px !important;
}

.widget.dark .newsletter-form .form-control::placeholder {
  color: rgba(255,255,255,0.4) !important;
}

.widget.dark .newsletter-form .form-control:focus {
  background: rgba(255,255,255,0.12) !important;
  border-color: var(--gold) !important;
  outline: none !important;
  box-shadow: none !important;
}

.widget.dark .newsletter-form .btn-colored.btn-theme-colored {
  background: var(--gold) !important;
  color: var(--primary) !important;
  border-radius: 0 8px 8px 0 !important;
  padding: 10px 16px !important;
  border: none !important;
}

.widget.dark .newsletter-form .btn-colored.btn-theme-colored:hover {
  background: var(--accent) !important;
  color: #fff !important;
}

/* Footer services thumbnails */
.footer-widget .latest-posts article.post {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

.footer-widget .latest-posts article.post:hover {
  transform: none !important;
}

.footer-widget .latest-posts .post-thumb img {
  border-radius: 8px !important;
  object-fit: cover !important;
  width: 60px !important;
  height: 60px !important;
  transition: var(--transition) !important;
}

.footer-widget .latest-posts .post-thumb img:hover {
  opacity: 0.8 !important;
}

.footer-widget .latest-posts .post-title a {
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}

/* Social icons footer */
.widget.dark .styled-icons li a {
  color: rgba(255,255,255,0.7) !important;
  width: 36px !important; height: 36px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,0.10) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  transition: var(--transition) !important;
  font-size: 14px !important;
  margin: 3px !important;
  text-decoration: none !important;
}

.widget.dark .styled-icons li a:hover {
  background: var(--gold) !important;
  color: var(--primary) !important;
  border-color: var(--gold) !important;
  transform: translateY(-3px) !important;
}

/* Footer bottom bar */
.footer-bottom.bg-black-333 {
  background: rgba(0,0,0,0.4) !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  padding: 16px 0 !important;
}

.footer-bottom .font-14S {
  color: rgba(255,255,255,0.5) !important;
  font-size: 13px !important;
}

.footer-bottom a {
  color: rgba(255,255,255,0.6) !important;
  font-size: 13px !important;
  text-decoration: none !important;
  transition: var(--transition) !important;
}

.footer-bottom a:hover { color: var(--gold) !important; }

/* ── Scroll-to-Top Button ─────────────────────────────────── */
a.scrollToTop {
  background: var(--primary) !important;
  color: #fff !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  box-shadow: var(--shadow-md) !important;
  transition: var(--transition) !important;
  border: 2px solid rgba(255,255,255,0.2) !important;
  bottom: 30px !important;
  right: 30px !important;
}

a.scrollToTop:hover {
  background: var(--gold) !important;
  color: var(--primary) !important;
  transform: translateY(-4px) !important;
  box-shadow: var(--shadow-lg) !important;
}

/* ── General Buttons ──────────────────────────────────────── */
#btn, .btn-success {
  background: var(--primary) !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 10px 28px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  color: #fff !important;
  transition: var(--transition) !important;
  box-shadow: 0 4px 14px rgba(6,69,104,0.25) !important;
}

#btn:hover, .btn-success:hover {
  background: var(--primary-light) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(6,69,104,0.35) !important;
  color: #fff !important;
}

#normallink {
  color: var(--primary) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  position: relative !important;
  padding-bottom: 2px;
}

#normallink::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important; left: 0 !important;
  width: 0 !important; height: 2px !important;
  background: var(--primary) !important;
  transition: width 0.3s ease !important;
}

#normallink:hover { color: var(--primary-light) !important; }
#normallink:hover::after { width: 100% !important; }

/* ── Scroll Reveal Animations ─────────────────────────────── */
.reveal-fade {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.reveal-fade.visible {
  opacity: 1;
  transform: translateY(0);
}

.reveal-left {
  opacity: 0;
  transform: translateX(-30px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.reveal-left.visible {
  opacity: 1;
  transform: translateX(0);
}

.reveal-right {
  opacity: 0;
  transform: translateX(30px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.reveal-right.visible {
  opacity: 1;
  transform: translateX(0);
}

.reveal-delay-1 { transition-delay: 0.1s !important; }
.reveal-delay-2 { transition-delay: 0.2s !important; }
.reveal-delay-3 { transition-delay: 0.3s !important; }
.reveal-delay-4 { transition-delay: 0.4s !important; }

/* ── Whyus / Feature Cards ────────────────────────────────── */
.hospital-feature-card {
  background: var(--bg-white);
  border-radius: var(--radius);
  padding: 32px 24px;
  text-align: center;
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
  position: relative;
  overflow: hidden;
  height: 100%;
}

.hospital-feature-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--primary), var(--primary-light));
  transform: scaleX(0);
  transition: transform 0.4s ease;
}

.hospital-feature-card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-lg);
  border-color: transparent;
}

.hospital-feature-card:hover::before { transform: scaleX(1); }

.hospital-feature-card .card-icon {
  width: 72px; height: 72px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(6,69,104,0.08), rgba(11,122,191,0.12));
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  font-size: 28px;
  color: var(--primary);
  transition: var(--transition);
  border: 2px solid rgba(6,69,104,0.10);
}

.hospital-feature-card:hover .card-icon {
  background: var(--primary);
  color: #fff;
  border-color: var(--primary);
  transform: rotateY(360deg);
}

.hospital-feature-card .card-title {
  font-size: 17px;
  font-weight: 700;
  color: var(--text-dark);
  margin-bottom: 12px;
}

.hospital-feature-card .card-text {
  color: var(--text-muted);
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 0;
}

/* ── Responsive Adjustments ───────────────────────────────── */
@media (max-width: 768px) {
  .hospital-emergency-bar .emergency-bar-right { display: none; }
  .section-heading h2 { font-size: 24px !important; }
  .funfact h2.animate-number { font-size: 40px !important; }
  #about #container { padding: 20px !important; }
  .hospital-feature-card { margin-bottom: 20px; }
}

@media (max-width: 480px) {
  .emergency-bar-left { flex-wrap: wrap; gap: 8px; }
}

/* ── Heartbeat animation (used on emergency elements) ───── */
@keyframes heartbeat {
  0%, 100% { transform: scale(1); }
  14%       { transform: scale(1.08); }
  28%       { transform: scale(1); }
  42%       { transform: scale(1.05); }
  70%       { transform: scale(1); }
}

.heartbeat { animation: heartbeat 1.5s ease-in-out infinite; }

/* ── Loading shimmer for images ───────────────────────────── */
@keyframes shimmer {
  0%   { background-position: -468px 0; }
  100% { background-position: 468px 0; }
}

/* ── Section divider accent ───────────────────────────────── */
.section-accent-line {
  width: 50px; height: 4px;
  background: linear-gradient(90deg, var(--primary), var(--primary-light));
  border-radius: 4px;
  margin: 12px auto 0;
}
