/* ─── Fonts ─── */
/* Poppins for headings, Nunito for body — both colorful and warm */

/* ─── Color Tokens ─── */
:root {
  --red:   #DC2626;   /* Chinese red — primary accent */
  --green: #16A34A;   /* Healing green — secondary */
  --blue:  #2563EB;   /* Trust blue — tertiary */
  --red-light:   #FEF2F2;
  --green-light: #F0FDF4;
  --blue-light:  #EFF6FF;
  --dark:  #1a1a2e;   /* Deep navy-black for text */
}

/* ─── Font body override ─── */
body {
  font-family: 'Nunito', Inter, system-ui, -apple-system, sans-serif;
  color: var(--dark);
}

h1, h2, h3, h4, h5, h6,
.display-1, .display-5, .display-6, .fw-bold, .fw-bolder {
  font-family: 'Poppins', 'Plus Jakarta Sans', sans-serif;
}

/* ─── Navbar — colorful left-border accent ─── */
.navbar {
  transition: all 0.5s ease-in-out;
  border-bottom: 3px solid transparent;
}
.navbar.scrolled {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  background-color: rgba(255, 255, 255, 0.97) !important;
  border-bottom: 3px solid var(--red);
}

/* Nav link hover colours */
.navbar-nav .nav-link:hover { color: var(--red) !important; }

/* Language button */
#languageMenu {
  border-color: var(--blue) !important;
  color: var(--blue) !important;
}
#languageMenu:hover {
  background-color: var(--blue) !important;
  color: #fff !important;
}

/* ─── Hero section ─── */
#top {
  min-height: calc(100vh - 100px);
}

/* Hero CTA button — bold red */
#top .btn-dark {
  background-color: var(--red) !important;
  border-color: var(--red) !important;
  color: #fff !important;
  letter-spacing: 0.02em;
}
#top .btn-dark:hover {
  background-color: #b91c1c !important;
  border-color: #b91c1c !important;
}

/* ─── Section headings — coloured left-tick ─── */
.border-top.border-dark {
  border-top-color: var(--red) !important;
  border-top-width: 3px !important;
}

/* Override alternating borders per section */
#services .col-lg-4:nth-child(1) h3 { color: var(--red); }
#services .col-lg-4:nth-child(1) .border-top { border-top-color: var(--red) !important; }

#services .col-lg-4:nth-child(2) h3 { color: var(--green); }
#services .col-lg-4:nth-child(2) .border-top { border-top-color: var(--green) !important; }

#services .col-lg-4:nth-child(3) h3 { color: var(--blue); }
#services .col-lg-4:nth-child(3) .border-top { border-top-color: var(--blue) !important; }

/* Service numbers */
#services .h5.fw-lighter:nth-of-type(1) { color: var(--red); font-weight: 700 !important; }

/* ─── About section images — coloured shadow glow ─── */
#aboutus .shadow { box-shadow: 0 8px 30px rgba(220,38,38,0.15) !important; }

/* ─── Treatments — criteria cards ─── */
#treatments .col-md-4:nth-child(1) .shadow-sm { border-top: 4px solid var(--red); }
#treatments .col-md-4:nth-child(2) .shadow-sm { border-top: 4px solid var(--blue); }
#treatments .col-md-4:nth-child(3) .shadow-sm { border-top: 4px solid var(--green); }

/* Treatment cards — outlined buttons */
#treatments .btn-outline-dark {
  border-color: var(--red) !important;
  color: var(--red) !important;
}
#treatments .btn-outline-dark:hover {
  background-color: var(--red) !important;
  color: #fff !important;
}

/* Dark insight boxes — coloured instead of pure black */
#treatments .bg-dark {
  background: linear-gradient(135deg, #1e3a5f 0%, #1a1a2e 100%) !important;
  border-left: 4px solid var(--blue);
}

/* Badge colours */
.badge.bg-success { background-color: var(--green) !important; }
.badge.bg-info     { background-color: var(--blue) !important; color: #fff !important; }
.badge.bg-warning  { background-color: #f59e0b !important; }
.badge.bg-secondary { background-color: #6366f1 !important; }

/* ─── Topics — article borders ─── */
#topics .col:nth-child(1) article { border-top: 4px solid var(--red) !important; border-color: var(--red) !important; }
#topics .col:nth-child(2) article { border-top: 4px solid var(--green) !important; border-color: var(--green) !important; }
#topics .col:nth-child(3) article { border-top: 4px solid var(--blue) !important; border-color: var(--blue) !important; }

/* ─── Hospitals — card top accent ─── */
#hospitals .col:nth-child(1) .card { border-top: 4px solid var(--red) !important; }
#hospitals .col:nth-child(2) .card { border-top: 4px solid var(--blue) !important; }

/* ─── Travel — plan cards ─── */
#travel .col-sm-6:nth-child(1) .bg-white { border-left: 4px solid var(--red); }
#travel .col-sm-6:nth-child(2) .bg-white { border-left: 4px solid var(--green); }
#travel .col-sm-6:nth-child(3) .bg-white { border-left: 4px solid var(--blue); }
#travel .col-sm-6:nth-child(4) .bg-white { border-left: 4px solid #f59e0b; }

/* ─── Blog badges ─── */
#blog .badge.bg-dark { background-color: var(--blue) !important; }
#blog .badge.bg-success { background-color: var(--green) !important; }

/* Blog links */
#blog .link-fancy { color: var(--blue) !important; border-bottom-color: var(--blue) !important; }

/* ─── YouTube — video cards ─── */
.youtube-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.youtube-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 0.5rem 1.5rem rgba(220,38,38,0.2) !important;
}

/* ─── Contact dark section — add gradient ─── */
#contactus {
  background: linear-gradient(135deg, #0f172a 0%, #1e1b4b 50%, #0f172a 100%) !important;
  position: relative;
  overflow: hidden;
}
#contactus::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background:
    radial-gradient(ellipse at 20% 50%, rgba(220,38,38,0.15) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 50%, rgba(37,99,235,0.15) 0%, transparent 60%),
    radial-gradient(ellipse at 50% 80%, rgba(22,163,74,0.1) 0%, transparent 60%);
  pointer-events: none;
}

/* ─── Testimonials — star colours ─── */
#testimonials .bi-star-fill { color: #f59e0b !important; fill: #f59e0b !important; }
#testimonials .bi-star-half { color: #f59e0b !important; fill: #f59e0b !important; }
#testimonials .bi-star      { color: #d1d5db !important; fill: #d1d5db !important; }

/* Card hover lift */
#testimonials .card:hover {
  transform: translateY(-3px);
  transition: transform 0.2s ease;
  box-shadow: 0 8px 25px rgba(0,0,0,0.1) !important;
}

/* Testimonial card accent borders */
#testimonials .col:nth-child(1) .card,
#testimonials .col-12:nth-child(1) .card { border-top: 3px solid var(--red) !important; }
#testimonials .col:nth-child(2) .card,
#testimonials .col-12:nth-child(2) .card { border-top: 3px solid var(--blue) !important; }
#testimonials .col:nth-child(3) .card,
#testimonials .col-12:nth-child(3) .card { border-top: 3px solid var(--green) !important; }
#testimonials .col:nth-child(4) .card,
#testimonials .col-12:nth-child(4) .card { border-top: 3px solid var(--red) !important; }
#testimonials .col:nth-child(5) .card,
#testimonials .col-12:nth-child(5) .card { border-top: 3px solid var(--blue) !important; }

/* ─── Footer ─── */
footer address { font-style: normal; }
footer .border-top {
  border-top-color: var(--red) !important;
  border-top-width: 2px !important;
}

/* ─── Link fancy ─── */
.link-fancy {
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px;
  transition: opacity 0.2s;
}
.link-fancy:hover { opacity: 0.6; }

/* ─── Blockquote ─── */
.blockquote p { font-size: 1rem; }
.blockquote { border-left: 3px solid var(--blue); padding-left: 1rem; }

/* ─── General button-dark override (hero excluded) ─── */
.btn-dark {
  background-color: var(--dark) !important;
  border-color: var(--dark) !important;
}

/* ─── Scroll-to-top accent on service numbers ─── */
#services .h5 { font-size: 1.4rem; font-weight: 800 !important; }
