:root{
  --primary:#0f172a;
  --secondary:#1d4ed8;
  --accent:#f59e0b;
  --light:#f8fafc;
  --text:#334155;
  --white:#ffffff;
}
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}
body{
  font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  color:var(--text);
  background:#fff;
}
a{text-decoration:none;}
.navbar{
  background:rgba(15,23,42,.94);
  padding:14px 0;
}
.navbar-brand,.nav-link{color:#fff !important;}
.navbar-brand{font-size:24px;font-weight:700;}
.nav-link{margin-left:16px;font-weight:500;}
.nav-link:hover{color:#93c5fd !important;}
.hero{
  min-height:100vh;
  background:linear-gradient(rgba(15,23,42,.70), rgba(15,23,42,.70)), url('images/banner.png') center/cover no-repeat;
  display:flex;
  align-items:center;
  color:#fff;
  padding-top:90px;
}
.hero h1{font-size:56px;font-weight:800;line-height:1.1;}
.hero p{font-size:18px;margin:20px 0 30px;max-width:650px;color:#e2e8f0;}
.btn-main{
  background:var(--secondary);
  color:#fff;
  padding:14px 28px;
  border-radius:10px;
  display:inline-block;
  font-weight:600;
  border:none;
}
.btn-main:hover{background:#163fb3;color:#fff;}
.btn-outline-custom{
  border:1px solid #fff;
  color:#fff;
  padding:14px 28px;
  border-radius:10px;
  display:inline-block;
  font-weight:600;
  margin-left:10px;
}
.btn-outline-custom:hover{background:#fff;color:var(--primary);}
.section{padding:90px 0;}
.section-title{
  font-size:38px;
  font-weight:800;
  color:var(--primary);
  margin-bottom:12px;
}
.section-subtitle{
  color:#64748b;
  max-width:700px;
  margin:0 auto 45px;
}
.card-box{
  background:#fff;
  border-radius:18px;
  padding:24px;
  box-shadow:0 12px 35px rgba(15,23,42,.08);
  transition:.3s;
  height:100%;
}
.card-box:hover{transform:translateY(-8px);}
.service-img{
  width:100%;
  height:220px;
  object-fit:cover;
  border-radius:14px;
  margin-bottom:18px;
}
.about-img{
  width:100%;
  border-radius:20px;
  box-shadow:0 12px 35px rgba(15,23,42,.10);
}
.page-banner{
  padding:140px 0 80px;
  background:linear-gradient(rgba(15,23,42,.76), rgba(15,23,42,.76)), url('images/page-banner.jpg') center/cover no-repeat;
  color:#fff;
  text-align:center;
}
.page-banner h1{font-size:48px;font-weight:800;}
.page-banner p{color:#e2e8f0;max-width:700px;margin:15px auto 0;}
.feature-list{padding-left:0;}
.feature-list li{
  list-style:none;
  margin-bottom:12px;
  font-size:16px;
}
.feature-list li::before{
  content:"✔ ";
  color:var(--accent);
  font-weight:bold;
  margin-right:8px;
}
.stats-box{
  background:var(--light);
  border-radius:20px;
  padding:35px 20px;
  text-align:center;
  height:100%;
}
.stat-number{
  font-size:34px;
  font-weight:800;
  color:var(--secondary);
}
.contact-box{
  background:#fff;
  border-radius:18px;
  padding:28px;
  box-shadow:0 12px 35px rgba(15,23,42,.08);
  height:100%;
}
.form-control,textarea{
  padding:14px 15px;
  border-radius:10px;
  border:1px solid #cbd5e1;
  box-shadow:none !important;
}
.form-control:focus,textarea:focus{border-color:var(--secondary);}
.footer{
  background:#0f172a;
  color:#cbd5e1;
  padding:20px 0;
  text-align:center;
}
.badge-custom{
  display:inline-block;
  background:#facc15;
  color:#111827;
  padding:8px 14px;
  border-radius:30px;
  font-weight:700;
  margin-bottom:18px;
  font-size:14px;
}
.bg-light-custom{background:#f8fafc;}
@media(max-width:991px){
  .hero{text-align:center;}
  .hero h1{font-size:40px;}
  .btn-outline-custom{margin-left:0;margin-top:10px;}
  .nav-link{margin-left:0;}
}
@media(max-width:576px){
  .hero h1{font-size:32px;}
  .page-banner h1{font-size:34px;}
  .section-title{font-size:30px;}
}
.card-box h4{
  font-weight:700;
  margin-bottom:12px;
  color:var(--primary);
}

.card-box p{
  margin-bottom:0;
  line-height:1.7;
}