
:root{
  --navy:#0b1f33;
  --blue:#1769aa;
  --cyan:#13a8d8;
  --light:#f5f8fb;
  --text:#1b2733;
  --muted:#64748b;
  --border:#e5eaf0;
  --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--text);line-height:1.65;background:#fff}
a{text-decoration:none}
.topbar{background:var(--navy);color:#dce8f2;font-size:.9rem}
.topbar a{color:#fff}
.navbar{background:#fff;border-bottom:1px solid var(--border)}
.brand{font-weight:800;letter-spacing:-.04em;color:var(--navy)!important;font-size:1.55rem}
.brand span{color:var(--cyan)}
.nav-link{font-weight:600;color:#243447!important}
.nav-link:hover{color:var(--blue)!important}
.btn-primary{background:var(--blue);border-color:var(--blue)}
.btn-primary:hover{background:#10568c;border-color:#10568c}
.btn-outline-primary{color:var(--blue);border-color:var(--blue)}
.hero{background:linear-gradient(135deg,#071a2b 0%,#0e3657 55%,#0d7698 100%);color:#fff;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(255,255,255,.14);border-radius:50%;right:-160px;top:-180px}
.hero-inner{position:relative;z-index:1}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:800;color:#7eddf6}
.hero h1{font-size:clamp(2.25rem,5vw,4.3rem);font-weight:800;letter-spacing:-.045em;line-height:1.05}
.hero p{font-size:1.12rem;color:#d9e8f3;max-width:700px}
.section{padding:80px 0}
.section-sm{padding:55px 0}
.section-title{font-weight:800;letter-spacing:-.03em;color:var(--navy)}
.section-lead{color:var(--muted);max-width:760px}
.card-soft{height:100%;border:1px solid var(--border);border-radius:18px;padding:28px;background:#fff;transition:.2s;box-shadow:0 8px 25px rgba(11,31,51,.04)}
.card-soft:hover{transform:translateY(-3px);box-shadow:0 14px 35px rgba(11,31,51,.08)}
.iconbox{width:52px;height:52px;border-radius:14px;background:#e8f7fc;color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:1.35rem;margin-bottom:20px}
.service-strip{background:var(--light)}
.cta{background:var(--navy);color:#fff;border-radius:24px;padding:48px}
.cta p{color:#cbd8e3}
.badge-soft{background:#e9f7fb;color:#116a88;padding:.5rem .8rem;border-radius:999px;font-weight:700}
.list-check{list-style:none;padding:0;margin:0}
.list-check li{margin:.55rem 0;padding-left:1.65rem;position:relative}
.list-check li:before{content:"✓";position:absolute;left:0;color:var(--cyan);font-weight:800}
.page-hero{background:var(--light);border-bottom:1px solid var(--border);padding:65px 0}
.page-hero h1{font-weight:800;letter-spacing:-.04em;color:var(--navy)}
.footer{background:#071522;color:#b9c7d3}
.footer a{color:#dbe8f1}
.footer h5{color:#fff;font-weight:700}
.contact-box{border:1px solid var(--border);border-radius:18px;padding:25px;background:#fff}
.form-control,.form-select{padding:.8rem 1rem;border-radius:10px;border-color:#dce3ea}
.form-control:focus,.form-select:focus{border-color:var(--cyan);box-shadow:0 0 0 .2rem rgba(19,168,216,.12)}
.floating-call{position:fixed;right:18px;bottom:18px;z-index:1000;border-radius:999px;padding:.8rem 1.1rem;box-shadow:0 10px 25px rgba(0,0,0,.2)}
.small-muted{font-size:.92rem;color:var(--muted)}
@media(max-width:991px){.section{padding:60px 0}.cta{padding:34px 24px}.hero{padding-bottom:25px}}

.brand{display:flex;align-items:center;gap:.45rem;white-space:nowrap}
.brand-sub{font-size:.72rem;font-weight:700;letter-spacing:-.01em;color:#526579;line-height:1.1;max-width:240px}
@media(max-width:575px){.brand-sub{font-size:.58rem;max-width:170px}.brand{font-size:1.25rem;gap:.3rem}}
