:root{
  --primary:#0a2540;
  --primary-light:#123a63;
  --accent:#00c896;
  --accent-dark:#00a67d;
  --gold:#ffb703;
  --light:#f6f9fc;
  --muted:#6b7a90;
  --border:#e6ebf1;
}
body{
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  color:#1a2b4c;
  line-height:1.7;
  background:#fff;
}
h1,h2,h3,h4,h5{font-family:'Poppins',sans-serif;font-weight:700;letter-spacing:-0.02em;}
.top-bar{
  background:var(--primary);
  color:#cbd5e1;
  font-size:13px;
  padding:8px 0;
}
.navbar{
  background:#fff!important;
  box-shadow:0 2px 20px rgba(10,37,64,0.06);
  padding:14px 0;
}
.navbar-brand{
  font-weight:800;
  font-size:22px;
  color:var(--primary)!important;
}
.navbar-brand span{color:var(--accent);}
.nav-link{
  font-weight:600;
  color:var(--primary)!important;
  margin:0 8px;
  font-size:15px;
}
.nav-link:hover,.nav-link.active{color:var(--accent)!important;}
.btn-primary{
  background:var(--primary);
  border-color:var(--primary);
  padding:10px 22px;
  font-weight:600;
  border-radius:8px;
}
.btn-primary:hover{background:var(--primary-light);border-color:var(--primary-light);}
.btn-accent{
  background:var(--accent);
  border-color:var(--accent);
  color:#fff;
  padding:12px 26px;
  font-weight:700;
  border-radius:8px;
}
.btn-accent:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff;}
.btn-outline-primary{
  border-color:var(--primary);
  color:var(--primary);
  font-weight:600;
  border-radius:8px;
}
.hero{
  background: radial-gradient(1200px 600px at 80% -10%, rgba(0,200,150,0.15), transparent), 
              radial-gradient(1000px 500px at -10% 20%, rgba(10,37,64,0.08), transparent),
              linear-gradient(180deg,#f6f9fc 0%, #ffffff 100%);
  padding:90px 0 80px;
  overflow:hidden;
}
.hero h1{
  font-size:48px;
  line-height:1.1;
  color:var(--primary);
}
.hero h1 span{color:var(--accent);}
.hero p{color:var(--muted);font-size:18px;}
.hero-card{
  background:#fff;
  border-radius:20px;
  padding:18px;
  box-shadow:0 20px 60px rgba(10,37,64,0.12);
  border:1px solid var(--border);
}
.stat-box{
  background:#fff;
  border:1px solid var(--border);
  border-radius:12px;
  padding:18px;
  text-align:center;
}
.stat-box h3{color:var(--primary);margin:0;font-size:28px;}
.section-padding{padding:90px 0;}
.section-light{background:var(--light);}
.badge-soft{
  background:rgba(0,200,150,0.12);
  color:var(--accent-dark);
  font-weight:700;
  letter-spacing:0.06em;
  font-size:12px;
  padding:6px 12px;
  border-radius:100px;
}
.service-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  overflow:hidden;
  transition:all .3s ease;
  height:100%;
}
.service-card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 40px rgba(10,37,64,0.12);
  border-color:transparent;
}
.service-card img{
  width:100%;
  height:210px;
  object-fit:cover;
}
.service-card .card-body{padding:24px;}
.service-card h5{color:var(--primary);font-size:19px;margin-bottom:10px;}
.service-card p{color:var(--muted);font-size:14.5px;min-height:66px;}
.icon-box{
  width:52px;height:52px;
  border-radius:12px;
  background:var(--light);
  display:flex;align-items:center;justify-content:center;
  font-size:22px;
  color:var(--primary);
  margin-bottom:16px;
}
.why-card{
  background:#fff;
  border-radius:16px;
  padding:28px;
  border:1px solid var(--border);
  height:100%;
  transition:.3s;
}
.why-card:hover{box-shadow:0 12px 30px rgba(10,37,64,0.08);}
.testimonial-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  padding:28px;
  height:100%;
}
.stars{color:var(--gold);}
.blog-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  overflow:hidden;
  height:100%;
  transition:.3s;
}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(10,37,64,0.1);}
.blog-card img{width:100%;height:200px;object-fit:cover;}
.blog-card .card-body{padding:22px;}
.newsletter{
  background:var(--primary);
  border-radius:24px;
  padding:50px;
  color:#fff;
  position:relative;
  overflow:hidden;
}
.newsletter::after{
  content:'';
  position:absolute;
  width:400px;height:400px;
  background:radial-gradient(circle, rgba(0,200,150,0.25), transparent 70%);
  right:-80px;top:-120px;
}
.footer{
  background:#081c31;
  color:#a8b3c7;
  padding:70px 0 30px;
}
.footer h6{color:#fff;font-weight:700;margin-bottom:18px;}
.footer a{color:#a8b3c7;text-decoration:none;font-size:14.5px;}
.footer a:hover{color:#fff;}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,0.08);
  margin-top:50px;
  padding-top:24px;
  font-size:13.5px;
}
.form-control{
  padding:12px 16px;
  border-radius:8px;
  border:1px solid var(--border);
}
.form-control:focus{box-shadow:0 0 0 3px rgba(0,200,150,0.15);border-color:var(--accent);}
.page-header{
  background: linear-gradient(135deg, var(--primary) 0%, #123a63 100%);
  padding:80px 0 70px;
  color:#fff;
  position:relative;
}
.page-header p{color:#cbd5e1;}
.breadcrumb-item a{color:#cbd5e1;text-decoration:none;}
.breadcrumb-item.active{color:#fff;}
@media(max-width:768px){
  .hero h1{font-size:36px;}
  .section-padding{padding:60px 0;}
  .newsletter{padding:32px 24px;}
}


.banner-img img{
  width: 100%;
}