:root{
  --primary:#008e3f;
  --primary-2:#00a63e;
  --dark:#14352a;
  --accent:#5b55ad;
  --soft:#f4f8f5;
  --soft-purple:#f5f4fb;
  --text:#1f2d29;
  --muted:#66746f;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans Bengali","Noto Sans",Arial,sans-serif;
  color:var(--text); margin:0; background:#fff;
}
a{text-decoration:none}
.topbar{
  background:#008b3c; color:#fff; font-size:.88rem;
}
.topbar .portal-title{font-weight:700;letter-spacing:.1px}
.topbar .btn-sm{font-size:.78rem}
.search-wrap{position:relative;min-width:220px}
.search-wrap input{border:0;border-radius:30px;padding:9px 42px 9px 16px;width:100%}
.search-wrap .bi-search{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#244}
.hero-header{
  background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.23)),url("../images/hero-bg.jpg") top center/cover no-repeat;
  min-height:220px;display:flex;align-items:center;color:#fff;
}
.brand-lockup{display:flex;align-items:center;gap:18px}
.brand-lockup img{width:175px; height:auto}
.brand-title{font-weight:800;text-shadow:0 2px 5px rgba(0,0,0,.35);font-size:clamp(1.8rem,4vw,3rem)}
.navbar-main{background:var(--primary-2);box-shadow:0 2px 8px rgba(0,0,0,.08)}
.navbar-main .nav-link,.navbar-main .navbar-brand{color:#fff!important;font-weight:600}
.navbar-main .nav-link{padding:.85rem 1rem}
.navbar-main .nav-link:hover,.navbar-main .nav-link.active{background:rgba(255,255,255,.12);border-radius:.45rem}
.navbar-main .dropdown-menu{border:0;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.section-pad{padding:70px 0}
.section-title{font-weight:800;margin-bottom:12px}
.section-subtitle{color:var(--muted);max-width:720px}
.card-clean{
  border:1px solid #e9efec; border-radius:18px;background:#fff;transition:.25s ease;
}
.card-clean:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(25,70,52,.10)}
.icon-badge{
  width:52px;height:52px;border-radius:14px;background:#e9f8ef;color:var(--primary);
  display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:16px
}
.why-list li{margin-bottom:10px}
.why-list i{color:var(--accent);margin-right:8px}
.feature-img{border-radius:20px;width:100%;height:100%;object-fit:cover;background:#eef6f2}
.facility-tabs .nav-link{color:#394a45;border:0;border-radius:0;background:#f3f2f8;margin-bottom:2px;text-align:left}
.facility-tabs .nav-link.active{background:var(--accent);color:#fff}
.notice-strip{background:#fff8e5;border:1px solid #f4e4a8;border-radius:14px}
.notice-item{padding:14px 0;border-bottom:1px dashed #dfe6e2}
.notice-item:last-child{border-bottom:0}
.badge-date{background:#e8f6ee;color:#0b7c43}
.patient-section{background:var(--soft-purple)}
.testimonial-box{background:#fff;border-radius:20px;padding:24px;box-shadow:0 8px 28px rgba(42,36,90,.06)}
.stat-number{font-size:2.25rem;font-weight:800;color:#111}
.stat-label{font-size:.86rem;color:#586862}
.cta-band{background:linear-gradient(135deg,#0c8e4a,#2F2E96);color:#fff;border-radius:24px}
footer{background:#5d58ae;color:#fff}
footer a{color:#fff;opacity:.9}
footer a:hover{opacity:1}
.footer-bottom{border-top:1px solid rgba(255,255,255,.18)}
.page-hero{background:linear-gradient(135deg,#edf8f2,#f8fbf9);padding:60px 0;border-bottom:1px solid #e7eeea}
.page-hero h1{font-weight:800}
.content-card{border:1px solid #e9efec;border-radius:18px;padding:28px;background:#fff}
.list-group-clean .list-group-item{border-left:0;border-right:0;padding-left:0;padding-right:0}
.gallery-img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px;background:#eef6f2}
.video-card .ratio{border-radius:14px;overflow:hidden;background:#172027}
.download-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid #edf1ef}
.contact-icon{width:44px;height:44px;border-radius:12px;background:#e8f6ee;color:#0b8d4c;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.lang-bn{display:none}
body.lang-bn-mode .lang-en{display:none}
body.lang-bn-mode .lang-bn{display:inline}
body.lang-bn-mode .lang-bn-block{display:block!important}
.lang-bn-block{display:none}
.lang-toggle{cursor:pointer}
@media (max-width:991px){
 .hero-header{min-height:190px}
 .topbar .portal-actions{display:none!important}
 .facility-tabs{margin-bottom:20px}
}
@media (max-width:767px){
 .section-pad{padding:52px 0}
 .brand-lockup img{width:58px;height:58px}
 .search-wrap{min-width:0;width:100%}
 .hero-header{min-height:170px}
}
