@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000;1,6..12,200..1000&family=Poly:ital@0;1&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
:root {
  --primary: #3B3288;
  --primary-dark: #2c2569;
  --primary-soft: #ECEAF8;
  --secondary: #E01F26;
  --secondary-dark: #b8171d;
  --teal: #0E7C86;
  --bg-main: #FDFBF7;
  --bg-alt: #F3F0EC;
  --surface: #FFFFFF;
  --text-main: #111827;
  --text-muted: #4B5563;
  --border: #E5E7EB;
  --shadow-sm: 0 6px 20px rgba(17, 24, 39, 0.05);
  --shadow-md: 0 14px 44px rgba(17, 24, 39, 0.08);
  --shadow-lg: 0 24px 60px rgba(30, 58, 138, 0.14);
}

* { scroll-behavior: smooth; }

html { scroll-padding-top: 140px; }

body {
  font-family: 'Manrope', sans-serif;
  color: var(--text-main);
  background-color: var(--bg-main);
  overflow-x: hidden;
}

h1, h2, h3, h4, h5, .display-font {
  font-family: 'Playfair Display', serif;
  letter-spacing: 0.02em;
  color: var(--text-main);
  text-align: justify;
}

.sub-title{
  font-family: 'EB Garamond';
  letter-spacing: 0.04em;
  color: #CC0000;
  text-align: justify;
  text-transform:normal;
  font-weight: 600;
}

.text-muted-2 { color: var(--text-muted) !important; text-align:justify;}
.lead { color: var(--text-muted); font-size: 1.08rem; line-height: 1.7; text-align: justify;font-family:Poppins }
ul li { color: var(--text-muted); font-size: 1.08rem; line-height: 1.7; text-align: justify;font-family:Poppins;margin-top: 10px; }

.py-section { padding-top: 6rem; padding-bottom: 6rem; }
.bg-alt { background-color: var(--bg-alt); }
.bg-primary-soft { background-color: var(--primary-soft); }

/* ---------- Buttons ---------- */
.btn { font-weight: 600; transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease; }
.btn-lg { padding: .85rem 2rem; }
.btn-primary { background-color: var(--primary); border-color: var(--primary); }
.btn-primary:hover, .btn-primary:focus { background-color: var(--primary-dark); border-color: var(--primary-dark); transform: translateY(-2px); box-shadow: var(--shadow-lg); }
.btn-accent { background-color: var(--secondary); border-color: var(--secondary); color: #fff; }
.btn-accent:hover, .btn-accent:focus { background-color: var(--secondary-dark); border-color: var(--secondary-dark); color: #fff; transform: translateY(-2px); box-shadow: 0 18px 40px rgba(217,119,87,.28); }
.btn-outline-light-2 { border: 1.5px solid rgba(255,255,255,.6); color: #fff; }
.btn-outline-light-2:hover { background: #fff; color: var(--primary); transform: translateY(-2px); }
.btn-outline-primary { border-color: var(--primary); color: var(--primary); }
.btn-outline-primary:hover { background: var(--primary); color: #fff; transform: translateY(-2px); }

.eyebrow {
  display: inline-block;
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .78rem;
  color: var(--secondary);
  margin-bottom: 1rem;
}

/* ---------- Top bar ---------- */
.topbar { background: #E66912; color: #fff; font-size: .88rem; }
.topbar a { color: #fff; text-decoration: none; }
.topbar a:hover { color: #ffd9c9; }

/* ---------- Navbar ---------- */
.navbar { background: rgba(253,251,247,.9); backdrop-filter: blur(10px); border-bottom: 1px solid var(--border); transition: box-shadow .3s ease; }
.navbar.scrolled { box-shadow: var(--shadow-sm); background: rgba(255,255,255,.95); }
.navbar-brand { font-family: 'Playfair Display', serif; font-weight: 800; font-size: 1.35rem; color: var(--primary) !important; }
.brand-mark { width: 42px; height: 42px; border-radius: 12px; background: linear-gradient(135deg, var(--primary), var(--teal)); display: grid; place-items: center; color: #fff; font-size: 1.25rem; margin-right: .6rem; }
.brand-sub { display:block; font-family:'Manrope',sans-serif; font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; color: var(--text-muted); font-weight:600; }
.navbar-nav .nav-link { font-weight: 600; color: var(--text-main); margin: 0 .35rem; position: relative; }
.navbar-nav .nav-link::after { content:''; position:absolute; left:.5rem; right:.5rem; bottom:2px; height:2px; background: var(--secondary); transform: scaleX(0); transform-origin:left; transition: transform .25s ease; }
.navbar-nav .nav-link:hover::after, .navbar-nav .nav-link.active::after { transform: scaleX(1); }
.navbar-nav .nav-link:hover, .navbar-nav .nav-link.active { color: var(--primary); }

/* ---------- Brand logo ---------- */
.brand-logo { height: 75px; width: 150px; }
@media (max-width: 575px) { .brand-logo { height: 36px;width:auto; } }

/* ---------- Hero Carousel ---------- */
.hero-carousel { position: relative; }
.hero-slide {
  min-height: 640px;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  position: relative;
}
.hero-slide::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(16,20,45,.88) 0%, rgba(16,20,45,.72) 42%, rgba(16,20,45,.30) 100%);
}
.hero-slide-content { position: relative; z-index: 2; max-width: 680px; color: #fff; padding: 3rem 0; }
.hero-slide-content h1 { color: #fff; font-size: clamp(2.4rem, 5vw, 4rem); line-height: 1.06; margin-bottom: 1rem; }
.hero-slide-content .lead { color: #e8edf7; margin-bottom: 1.75rem; max-width: 560px; }
.hero-carousel .carousel-control-prev, .hero-carousel .carousel-control-next {
  width: 52px; height: 52px; background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.35);
  border-radius: 50%; top: 50%; transform: translateY(-50%); opacity: 1; backdrop-filter: blur(4px);
}
.hero-carousel .carousel-control-prev { left: 24px; } .hero-carousel .carousel-control-next { right: 24px; }
.hero-carousel .carousel-control-prev:hover, .hero-carousel .carousel-control-next:hover { background: var(--secondary); border-color: var(--secondary); }
.hero-carousel .carousel-indicators { bottom: 22px; }
.hero-carousel .carousel-indicators [data-bs-target] { width: 34px; height: 5px; border-radius: 5px; background: rgba(255,255,255,.55); border: 0; }
.hero-carousel .carousel-indicators .active { background: var(--secondary); }
.trust-strip { margin-top: -3.4rem; position: relative; z-index: 5; }
@media (max-width: 991px) {
  .hero-slide { min-height: 520px; }
  .trust-strip { margin-top: 1.5rem; }
}

.trust-pill { display:flex; align-items:center; gap:.6rem; background:#fff; border:1px solid var(--border); border-radius:14px; padding:.85rem 1rem; box-shadow: var(--shadow-sm); font-weight:600; font-size:.92rem; height:100%; }
.trust-pill i { color: var(--teal); font-size:1.35rem; }

/* ---------- Cards ---------- */
.card-clean { background: var(--surface); border: 1px solid var(--border); border-radius: 20px; box-shadow: var(--shadow-sm); transition: transform .25s ease, box-shadow .25s ease; height:100%; }
.card-clean:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); }

.service-card { padding: 1.9rem; }
.service-ico { width: 60px; height:60px; border-radius:16px; background: var(--primary-soft); color: var(--primary); display:grid; place-items:center; font-size:1.6rem; margin-bottom:1.15rem; transition: background .25s ease, color .25s ease; }
.service-card:hover .service-ico { background: var(--primary); color:#fff; }
.service-card h3 { font-size:1.2rem; margin-bottom:.5rem; }
.know-more { font-weight:700; color: var(--primary); text-decoration:none; font-size:.92rem; display:inline-flex; align-items:center; gap:.35rem; }
.know-more i { transition: transform .2s ease; }
.know-more:hover i { transform: translateX(4px); }

/* Featured */
.featured-card { position:relative; border-radius:22px; overflow:hidden; min-height:340px; display:flex; align-items:flex-end; color:#fff; box-shadow: var(--shadow-md); }
.featured-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition: transform .5s ease; }
.featured-card::after { content:''; position:absolute; inset:0; background: linear-gradient(180deg, rgba(15,23,42,.05) 30%, rgba(15,23,42,.85)); }
.featured-card:hover img { transform: scale(1.06); }
.featured-body { position:relative; z-index:2; padding:1.75rem; }
.featured-body h3 { color:#fff; font-size:1.5rem; }
.featured-body p { color:#e8edf7; margin-bottom:0; }

/* Stats */
.stat-num { font-family:'Playfair Display',serif; font-weight:800; font-size: clamp(2.2rem,4vw,3rem); color: var(--primary); line-height:1; }
.stat-lbl { color: var(--text-muted); font-weight:600; }

/* Doctors */
.doctor-card { overflow:hidden; }
.doctor-photo { width:100%; aspect-ratio: 4/4.3; object-fit:cover; }
.doctor-body { padding:1.4rem; }
.doctor-body h3 { font-size:1.2rem; margin-bottom:.15rem; }
.doctor-tag { display:inline-block; background:var(--primary-soft); color:var(--primary); font-size:.72rem; font-weight:700; padding:.25rem .7rem; border-radius:20px; margin-bottom:.6rem; }

/* Packages */
.pkg-card { padding:2rem; display:flex; flex-direction:column; }
.pkg-card.popular { border-color: var(--primary); box-shadow: var(--shadow-md); position:relative; }
.pkg-card.popular::before { content:'Most Popular'; position:absolute; top:-14px; left:50%; transform:translateX(-50%); background:var(--secondary); color:#fff; font-size:.72rem; font-weight:700; padding:.3rem .9rem; border-radius:20px; letter-spacing:.04em; }
.pkg-price { font-family:'Playfair Display',serif; font-weight:800; font-size:2.2rem; color:var(--primary); }
.pkg-price small { font-size:.9rem; color:var(--text-muted); font-family:'Manrope',sans-serif; font-weight:600; }
.pkg-list { list-style:none; padding:0; margin:1.25rem 0; flex:1; }
.pkg-list li { padding:.4rem 0; color:var(--text-muted); display:flex; gap:.6rem; align-items:flex-start; }
.pkg-list li i { color: var(--teal); margin-top:3px; }

/* Why choose bento */
.feature-card { padding:1.9rem; display:flex; gap:1.1rem; align-items:flex-start; }
.feature-ico { flex:0 0 auto; width:54px; height:54px; border-radius:14px; background:linear-gradient(135deg,var(--teal),var(--primary)); color:#fff; display:grid; place-items:center; font-size:1.4rem; }
.feature-card h3 { font-size:1.15rem; margin-bottom:.35rem; }

/* Forms */
.form-control, .form-select { border:1.5px solid var(--border); border-radius:12px; padding:.8rem 1rem; }
.form-control:focus, .form-select:focus { border-color: var(--primary); box-shadow: 0 0 0 .2rem rgba(30,58,138,.12); }
.form-label { font-weight:600; font-size:.9rem; margin-bottom:.35rem; }
.appointment-panel { background:#fff; border:1px solid var(--border); border-radius:24px; box-shadow: var(--shadow-md); padding:2.5rem; }

/* Section headings */
.section-head { max-width:850px; }
.section-head h2 { font-size: clamp(2rem,3.5vw,2.7rem); }

/* Patient info */
.info-card { padding:1.6rem; }
.info-card .service-ico { margin-bottom:1rem; }

/* Report portal */
.portal-wrap { background: linear-gradient(135deg, var(--primary), #10204f); border-radius:26px; color:#fff; padding:3rem; box-shadow: var(--shadow-lg); }
.portal-wrap .form-control { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.25); color:#fff; }
.portal-wrap .form-control::placeholder { color:#c7d2fe; }
.portal-wrap .form-label { color:#dbe4ff; }
.portal-secure { display:inline-flex; gap:.5rem; align-items:center; background:rgba(255,255,255,.1); padding:.4rem .9rem; border-radius:20px; font-size:.82rem; }
.report-result { background:#fff; color:var(--text-main); border-radius:16px; padding:1.25rem 1.5rem; margin-top:1rem; }
.report-row { border-bottom:1px solid var(--border); padding:.75rem 0; }
.report-row:last-child { border-bottom:0; }

/* Testimonials */
.testi-card { background:#fff; border:1px solid var(--border); border-radius:22px; padding:2.5rem; box-shadow: var(--shadow-sm); max-width:820px; margin:0 auto; text-align:center; }
.testi-quote { font-family:'Playfair Display',serif; font-size:4rem; color:var(--primary-soft); line-height:.6; }
.testi-text { font-size:1.25rem; font-style:italic; color:var(--text-main); line-height:1.6; }
.stars i { color:#f5a623; }
.carousel-control-prev, .carousel-control-next { width:46px; height:46px; background:var(--primary); border-radius:50%; top:50%; transform:translateY(-50%); opacity:1; }
.carousel-control-prev { left:-8px; } .carousel-control-next { right:-8px; }

/* FAQ */
.accordion-button { font-weight:700; font-family:'Manrope',sans-serif; color:var(--text-main); border-radius:14px !important; padding:1.15rem 1.25rem; }
.accordion-button:not(.collapsed) { background: var(--primary-soft); color: var(--primary); box-shadow:none; }
.accordion-button:focus { box-shadow:0 0 0 .2rem rgba(30,58,138,.12); }
.accordion-item { border:1px solid var(--border); border-radius:14px !important; margin-bottom:.85rem; overflow:hidden; }

/* CTA */
.cta { background: linear-gradient(120deg, var(--primary), var(--teal)); color:#fff; border-radius:0; }
.cta h2 { color:#fff; font-size: clamp(2rem,4vw,3rem); }

/* Contact */
.contact-item { display:flex; gap:1rem; align-items:flex-start; margin-bottom:1.5rem; }
.contact-item .ci-ico { flex:0 0 auto; width:48px; height:48px; border-radius:12px; background:var(--primary-soft); color:var(--primary); display:grid; place-items:center; font-size:1.25rem; }
.map-frame { border:0; width:100%; height:100%; min-height:320px; border-radius:20px; }

/* Gallery */
.gallery-img { width:100%; height:100%; object-fit:cover; border-radius:16px; aspect-ratio:4/3; transition: transform .4s ease, filter .3s ease; }
.gallery-item { overflow:hidden; border-radius:16px; }
.gallery-item:hover .gallery-img { transform:scale(1.08); }

/* Footer */
.footer { background:#0b1533; color:#c7d2e6; padding-top:4.5rem; }
.footer h5 { color:#fff; font-family:'Manrope',sans-serif; font-weight:700; font-size:1rem; letter-spacing:.03em; margin-bottom:1.2rem; }
.footer a { color:#aebbd4; text-decoration:none; display:inline-block; padding:.3rem 0; transition:color .2s ease, transform .2s ease; }
.footer a:hover { color:#fff; transform:translateX(4px); }
.footer .social a { width:40px; height:40px; border-radius:10px; background:rgba(255,255,255,.08); display:grid; place-items:center; margin-right:.5rem; transition: filter .2s ease, transform .2s ease; }
.footer .social a:hover { filter: brightness(1.12); transform:translateY(-3px); }
.footer-bottom { border-top:1px solid rgba(255,255,255,.1); margin-top:3rem; padding:1.5rem 0; font-size:.88rem; color:#8ea0c0; }

/* ---------- Inner page hero banner ---------- */
.page-hero { position: relative; padding: 3.5rem 0; background: linear-gradient(120deg, var(--primary), #10204f); color: #fff; overflow: hidden; }
.page-hero::after { content:''; position:absolute; top:-120px; right:-100px; width:360px; height:360px; border-radius:50%; background: radial-gradient(circle, rgba(224,31,38,.18), transparent 70%); }
.page-hero h1 { color:#fff; font-size: clamp(2.1rem, 4vw, 3.2rem); margin-bottom:.4rem; position:relative; z-index:2; }
.page-hero .crumb { color:#c2b9f0; font-weight:600; font-size:.95rem; position:relative; z-index:2; }
.page-hero .crumb a { color:#fff; text-decoration:none; }
.page-hero .crumb a:hover { color:#ffd9c9; }

/* ---------- Downloads / resource cards ---------- */
.download-card { padding:1.6rem; display:flex; align-items:center; gap:1rem; }
.download-card .dl-ico { flex:0 0 auto; width:52px; height:52px; border-radius:14px; background:var(--primary-soft); color:var(--primary); display:grid; place-items:center; font-size:1.4rem; }

/* ---------- ISO ---------- */
.iso-badge { width:110px; height:110px; border-radius:50%; background:var(--primary-soft); color:var(--primary); display:grid; place-items:center; font-family:'Playfair Display',serif; font-weight:800; font-size:1.4rem; margin:0 auto 1rem; border:3px solid var(--primary); }
.iso-point { display:flex; gap:1rem; align-items:flex-start; padding:1rem 0; border-bottom:1px solid var(--border); }
.iso-point i { color:var(--teal); font-size:1.4rem; margin-top:2px; }

/* ---------- Promo modal image ---------- */
.promo-poster { display:block; width:100%; height:auto; max-height:82vh; object-fit:contain; border-radius:16px; }
.promo-modal-content.image-only { background:transparent; box-shadow:none; }
.promo-modal-content.image-only .promo-close { top:6px; right:6px; }

/* Floating buttons */
.fab { position:fixed; right:20px; z-index:1040; width:56px; height:56px; border-radius:50%; display:grid; place-items:center; color:#fff; font-size:1.5rem; box-shadow: var(--shadow-md); border:0; transition: transform .2s ease, opacity .3s ease; }
.fab-whatsapp { bottom:20px; background:#25D366; text-decoration:none; }
.fab-whatsapp:hover { transform:scale(1.08); color:#fff; }
.fab-top { bottom:86px; background:var(--primary); opacity:0; pointer-events:none; }
.fab-top.show { opacity:1; pointer-events:auto; }
.fab-top:hover { transform:translateY(-3px); background:var(--primary-dark); }

/* Left-margin floating social bar */
.social-float { position: fixed; left: 0; top: 50%; transform: translateY(-50%); z-index: 1035; display: flex; flex-direction: column; gap: 2px; }
.social-float a { width: 42px; height: 42px; display: grid; place-items: center; color: #fff; font-size: 1.15rem; text-decoration: none; transition: filter .2s ease, padding-left .2s ease; }
.social-float a:first-child { border-top-right-radius: 10px; }
.social-float a:last-child { border-bottom-right-radius: 10px; }
.social-float a:hover { filter: brightness(1.12); padding-left: 6px; }
/* brand colours (shared with footer) */
[data-testid="float-facebook"], [data-testid="social-facebook"] { background: #1877F2 !important; }
[data-testid="float-instagram"], [data-testid="social-instagram"] { background: #E1306C !important; }
[data-testid="float-twitter"], [data-testid="social-twitter"] { background: #000000 !important; }
[data-testid="float-whatsapp"], [data-testid="social-whatsapp"] { background: #25D366 !important; }
[data-testid="float-email"] { background: #EA4335 !important; }
@media (max-width: 575px) {
  .social-float a { width: 36px; height: 36px; font-size: 1rem; }
}

/* Promo popup modal */
.promo-modal-content { border: 0; border-radius: 22px; overflow: hidden; box-shadow: var(--shadow-lg); }
.promo-img { min-height: 300px; background-size: cover; background-position: center; }
.promo-body { padding: 2.5rem; position: relative; }
.promo-body h2 { font-size: 1.9rem; }
.promo-price { font-family: 'Playfair Display', serif; font-weight: 800; font-size: 2.4rem; color: var(--primary); line-height: 1; }
.promo-price span { font-family: 'Manrope', sans-serif; font-size: .95rem; font-weight: 600; color: var(--text-muted); }
.promo-call { color: var(--secondary); font-weight: 700; text-decoration: none; }
.promo-call:hover { color: var(--secondary-dark); }
.promo-close { position: absolute; top: 12px; right: 12px; z-index: 3; width: 38px; height: 38px; border-radius: 50%; border: 0; background: rgba(255,255,255,.9); color: var(--text-main); display: grid; place-items: center; font-size: .95rem; transition: background .2s ease, transform .2s ease; }
.promo-close:hover { background: var(--secondary); color: #fff; transform: rotate(90deg); }
@media (max-width: 767px) { .promo-img { min-height: 180px; } .promo-body { padding: 1.75rem; } }

/* Reveal animation */
.reveal { opacity:0; transform:translateY(28px); transition: opacity .6s ease, transform .6s ease; }
.reveal.in { opacity:1; transform:none; }

@media (max-width: 991px) {
  .py-section { padding-top:4rem; padding-bottom:4rem; }
  .hero-badge.b1 { left:8px; } .hero-badge.b2 { right:8px; }
  .navbar-collapse { padding:1rem 0; }
  .appointment-panel, .portal-wrap { padding:1.75rem; }
}

/* =========================================
   FACILITIES SECTION
========================================= */

.facilities-section {
    background: #f7fafc;
}


/* Section Heading */

.facilities-section .section-head {
    max-width: 750px;
}

.eyebrow {
    display: inline-flex;
    align-items: center;
    color: #168aad;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.section-head h2 {
    font-size: clamp(32px, 4vw, 46px);
    font-weight: 700;
    color: #16324f;
    margin-bottom: 15px;
    text-align: center !important;
}

.section-head h2 span {
    color: #168aad;
}

.section-head .lead {
    color: #68798c;
    font-size: 17px;
}


/* Facility Image */

.facility-image {
    position: relative;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(20, 55, 80, 0.12);
}

.facility-image img {
    width: 100%;
    height: 520px;
    object-fit: cover;
    transition: transform .6s ease;
}

.facility-image:hover img {
    transform: scale(1.04);
}


/* Image Badge */

.facility-badge {
    position: absolute;
    left: 25px;
    bottom: 25px;

    display: flex;
    align-items: center;
    gap: 12px;

    background: rgba(255,255,255,.95);
    padding: 14px 18px;
    border-radius: 15px;

    box-shadow: 0 10px 30px rgba(0,0,0,.12);
}

.facility-badge i {
    font-size: 25px;
    color: #168aad;
}

.facility-badge strong {
    display: block;
    font-size: 14px;
    color: #16324f;
}

.facility-badge small {
    color: #758497;
}


/* Content */

.facility-label {
    color: #168aad;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-align: center !important;
}

.facility-title {
    color: #16324f;
    font-size: 32px;
    font-weight: 700;
    margin: 8px 0 15px;
    text-align: center;
}

.facility-description {
    color: #68798c;
    line-height: 1.8;
    margin-bottom: 25px;
    text-align: center;
}


/* Facility Cards */

.facility-card {
    height: 100%;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 17px;
    background: #ffffff;
    border: 1px solid #e7eef3;
    border-radius: 15px;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.facility-card:hover {
    transform: translateY(-4px);
    border-color: rgba(22,138,173,.25);
    box-shadow: 0 12px 30px rgba(22,138,173,.10);
}


/* Icons */

.facility-icon {
    min-width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: #eaf7fb;
    color: #168aad;
    font-size: 22px;
}

.facility-card h5 {
    margin: 0 0 4px;
    color: #16324f;
    font-size: 17px;
    font-weight: 700;
    font-family: 'Nunito Sans';
}

.facility-card p {
    margin: 0;
    color: #7b8997;
    font-size: 14px;
    line-height: 1.4;
}


/* Gallery Introduction */

.gallery-intro {
    margin: 80px auto 35px;
    max-width: 650px;
}

.gallery-intro h3 {
    color: #16324f;
    font-size: 32px;
    font-weight: 700;
    margin: 8px 0 10px;
}

.gallery-intro p {
    color: #68798c;
}


/* Gallery */

.gallery-grid img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    border-radius: 15px;
    transition: transform .4s ease;
}

.gallery-grid a {
    display: block;
    overflow: hidden;
    border-radius: 15px;
}

.gallery-grid a:hover img {
    transform: scale(1.06);
}


/* Responsive */

@media (max-width: 991px) {

    .facility-image img {
        height: 400px;
    }

    .facility-title {
        font-size: 28px;
        text-align:center;
    }

}


@media (max-width: 575px) {

    .facility-image img {
        height: 320px;
    }

    .facility-badge {
        left: 15px;
        right: 15px;
        bottom: 15px;
    }

    .facility-title {
        font-size: 25px;
    }

    .facility-card {
        padding: 14px;
    }
}

.consultants-section {
    background: #f7fafc;
}


/* Section Heading */

.consultants-section .section-head {
    max-width: 720px;
}

.consultants-section .section-head h2 {
    margin-top: 8px;
    margin-bottom: 15px;
    color: #16324f;
    font-size: 38px;
    font-weight: 700;
    font-family: 'Playfair Display', serif;
}

.consultants-section .section-head .lead {
    color: #718096;
    font-size: 16px;
}


/* Consultant Card */

.consultant-card {
    background: #ffffff;

    border: 1px solid #e7edf2;

    border-radius: 20px;

    padding: 25px;

    box-shadow: 0 8px 30px rgba(22, 50, 79, 0.06);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.consultant-card:hover {
    transform: translateY(-6px);

    border-color: rgba(22, 138, 173, .25);

    box-shadow: 0 18px 45px rgba(22, 50, 79, .12);
}


/* Heading */

.consultant-heading {
    display: flex;
    align-items: center;
    gap: 14px;

    padding-bottom: 18px;

    margin-bottom: 8px;

    border-bottom: 1px solid #edf1f4;
}


.consultant-icon {
    width: 50px;
    height: 50px;

    min-width: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #eaf7fb;

    color: #168aad;

    border-radius: 14px;

    font-size: 22px;
}


.consultant-heading h4 {
    margin: 0 0 3px;
    color: #16324f;
    font-size: 20px;
    font-weight: 700;
    font-family:'Nunito Sans';
}


.consultant-heading span {
    color: #263f55;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .7px;
}


/* Doctor */

.consultant-list {
    display: flex;
    flex-direction: column;
}


.doctor {
    padding: 13px 0;
    border-bottom: 1px dashed #e5eaee;    
}


.doctor:last-child {
    border-bottom: 0;
}


.doctor strong {
    display: block;
    color: #263f55;
    font-size: 16px;
    line-height: 1.45;
}


.doctor small {
    display: block;
    margin-top: 3px;
    color: #168aad;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
}


/* Sub speciality */

.sub-speciality {
    margin-top: 20px;

    padding-top: 20px;

    border-top: 1px solid #edf1f4;
}


.sub-speciality .consultant-heading {
    border-bottom: 0;

    padding-bottom: 5px;
    margin-bottom: 0;
}


.sub-speciality .consultant-icon {
    width: 42px;
    height: 42px;
    min-width: 42px;

    font-size: 18px;
}


.sub-speciality .consultant-heading h4 {
    font-size: 16px;
}


/* Mobile */

@media (max-width: 767px) {

    .consultants-section .section-head h2 {
        font-size: 30px;
    }

    .consultant-card {
        padding: 20px;
    }

}