:root { --navy:#0b1f3a; --blue:#1e6fd9; --light:#f4f7fb; --text:#1c2733; --muted:#5a6b7d; }
* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { font-family:"Segoe UI", Roboto, Arial, sans-serif; color:var(--text); line-height:1.6; }
a { color:var(--blue); text-decoration:none; }
.wrap { max-width:1100px; margin:0 auto; padding:0 24px; }

header { background:var(--navy); position:sticky; top:0; z-index:10; }
header .wrap { display:flex; align-items:center; justify-content:space-between; height:72px; }
.logo { display:flex; align-items:center; }
.logo img { height:44px; }
nav a { color:#dce6f2; margin-left:28px; font-size:.95rem; }
nav a:hover { color:#fff; }

section[id] { scroll-margin-top:80px; }

.hero { background:linear-gradient(135deg, var(--navy) 0%, #13345f 100%); color:#fff; padding:110px 0 120px; }
.hero h1 { font-size:clamp(2.2rem, 5vw, 3.6rem); line-height:1.15; max-width:760px; }
.hero p { font-size:1.25rem; color:#c9d6e6; margin:22px 0 36px; max-width:640px; }
.btn { display:inline-block; background:var(--blue); color:#fff; padding:15px 30px; border-radius:6px; font-weight:600; font-size:1.05rem; }
.btn:hover { background:#1859b0; }
.btn-outline { background:transparent; border:2px solid #fff; margin-left:12px; }
.btn-outline:hover { background:#fff; color:var(--navy); }

section { padding:90px 0; }
h2 { font-size:2rem; color:var(--navy); margin-bottom:12px; }
.lead { color:var(--muted); font-size:1.1rem; margin-bottom:48px; max-width:640px; }
.tagline { color:var(--navy); font-weight:700; font-size:1.3rem; margin-bottom:48px; }

.services { background:var(--light); }
.grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(230px, 1fr)); gap:24px; }
.card { background:#fff; border-radius:10px; padding:32px 26px; box-shadow:0 2px 10px rgba(11,31,58,.07); border-top:4px solid var(--blue); }
.card h3 { color:var(--navy); margin-bottom:10px; font-size:1.2rem; }
.card p { color:var(--muted); }

.about .wrap { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.about p { margin-bottom:16px; font-size:1.08rem; }
.facts { background:var(--navy); color:#fff; border-radius:10px; padding:40px; }
.facts div { padding:14px 0; border-bottom:1px solid rgba(255,255,255,.15); }
.facts div:last-child { border-bottom:none; }
.facts strong { display:block; font-size:1.6rem; color:#7fb2ff; }

.contact { background:var(--light); }
.contact .wrap { display:grid; grid-template-columns:1fr 1.3fr; gap:60px; }
.contact h2 { margin-bottom:6px; }
.subhead { color:var(--blue); font-weight:600; font-size:1.15rem; margin-bottom:28px; }
.info p { margin-bottom:18px; font-size:1.1rem; }
.info strong { display:block; color:var(--navy); }
form { background:#fff; padding:36px; border-radius:10px; box-shadow:0 2px 10px rgba(11,31,58,.07); }
.row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
label { display:block; font-size:.9rem; font-weight:600; margin:14px 0 6px; color:var(--navy); }
input, textarea { width:100%; padding:12px; border:1px solid #cfd8e3; border-radius:6px; font:inherit; }
textarea { min-height:120px; resize:vertical; }
form .btn { border:none; cursor:pointer; margin-top:22px; width:100%; }
.note { font-size:.9rem; color:var(--muted); margin-top:12px; text-align:center; }

footer { background:var(--navy); color:#9fb3c8; text-align:center; padding:30px 0; font-size:.9rem; }

@media (max-width:800px) {
  nav { display:none; }
  .hero { padding:70px 0 80px; }
  .about .wrap, .contact .wrap, .row { grid-template-columns:1fr; }
  .about .wrap, .contact .wrap { gap:36px; }
  .btn-outline { margin:12px 0 0; }
  section { padding:64px 0; }
  .facts { padding:28px; }
  form { padding:24px; }
}