:root{
  --navy:#0a1930;
  --navy-light:#122548;
  --ink:#10151c;
  --paper:#f6f8fc;
  --accent:#2f6fed;
  --accent-light:#7aa7ff;
  --muted:#5e6a7d;
  --line:#e1e7f2;
  font-size:16px;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;
  background:var(--paper);
  color:var(--ink);
  line-height:1.6;
}
h1,h2,h3{
  letter-spacing:-0.02em;
  margin:0 0 .5em 0;
  color:var(--navy);
  font-weight:700;
}
p{margin:0 0 1em 0;}
a{color:inherit;}
.wrap{max-width:1100px;margin:0 auto;padding:0 24px;}
.btn{
  display:inline-block;
  font-weight:600;
  text-decoration:none;
  padding:14px 28px;
  border-radius:8px;
  transition:all .15s ease;
}
.btn-accent{background:var(--accent);color:#fff;}
.btn-accent:hover{background:#1f5bdc;}
.btn-outline{border:1.5px solid rgba(255,255,255,.5);color:#fff;}
.btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.08);}

header.site{
  background:var(--navy);
  color:#fff;
  position:sticky;top:0;z-index:50;
  border-bottom:1px solid rgba(255,255,255,.08);
}
header.site .wrap{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 24px;
}
.logo{
  display:flex;align-items:center;gap:10px;
  font-weight:700;font-size:1.25rem;color:#fff;text-decoration:none;
  letter-spacing:-0.01em;
}
.logo img{width:34px;height:34px;border-radius:8px;display:block;}
.logo span{color:var(--accent-light);}
nav.main{display:flex;gap:28px;font-size:.95rem;}
nav.main a{text-decoration:none;color:#cfd6e0;}
nav.main a:hover{color:#fff;}

.hero{
  background:linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 55%,#1b3a73 100%);
  color:#fff;
  padding:110px 0 100px;
}
.hero .wrap{display:flex;flex-direction:column;align-items:flex-start;}
.hero .kicker{
  color:var(--accent-light);
  text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;margin-bottom:18px;
  font-weight:600;
}
.hero h1{
  color:#fff;font-size:3rem;max-width:760px;margin-bottom:22px;
}
.hero p.lead{
  font-size:1.2rem;color:#d8e0f0;max-width:580px;margin-bottom:34px;
}
.hero .ctas{display:flex;gap:16px;flex-wrap:wrap;}

section{padding:88px 0;}
.section-head{max-width:640px;margin-bottom:48px;}
.section-head .kicker{
  color:var(--accent);
  text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;margin-bottom:10px;
  font-weight:600;
}
.section-head h2{font-size:2rem;}

.services{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.service-card{padding:30px 28px;border:1px solid var(--line);border-radius:10px;background:var(--paper);}
.service-card .num{
  color:var(--accent);font-weight:700;font-size:.85rem;margin-bottom:14px;
}
.service-card h3{font-size:1.2rem;margin-bottom:10px;}
.service-card p{color:var(--muted);font-size:.98rem;margin:0;}

.process{counter-reset:step;}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.step{position:relative;padding-left:4px;}
.step .n{
  font-weight:700;font-size:2.2rem;color:var(--accent-light);
  -webkit-text-stroke:1px var(--accent);
  margin-bottom:10px;
}
.step h3{font-size:1.05rem;margin-bottom:8px;}
.step p{color:var(--muted);font-size:.93rem;margin:0;}

.about{background:var(--navy);color:#fff;}
.about .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start;}
.about h2{color:#fff;}
.about p{color:#d8e0f0;}
.about .stats{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:10px;}
.stat .big{font-size:2.1rem;font-weight:700;color:var(--accent-light);}
.stat .label{color:#aab8d4;font-size:.88rem;}

.contact{background:#fff;}
.contact .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;}
.contact-info h2{font-size:2rem;}
.contact-info .muted{color:var(--muted);}
.contact-links{list-style:none;padding:0;margin:24px 0 0;}
.contact-links li{margin-bottom:12px;}
.contact-links a{text-decoration:none;color:var(--navy);font-weight:600;}
.contact-links a:hover{color:var(--accent);}

.sas-form .sas-field{margin-bottom:16px;display:flex;flex-direction:column;gap:6px;}
.sas-field label{font-size:.88rem;font-weight:600;color:var(--navy);}
.sas-field input,.sas-field select,.sas-field textarea{
  padding:12px 14px;border:1px solid var(--line);border-radius:6px;font-size:1rem;font-family:inherit;background:var(--paper);
}
.sas-field input:focus,.sas-field textarea:focus{outline:2px solid var(--accent);outline-offset:1px;}
.sas-form button[type=submit]{
  background:var(--accent);color:#fff;border:none;padding:14px 30px;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;
}
.sas-form button[type=submit]:hover{background:#1f5bdc;}

footer.site{background:var(--ink);color:#9aa4b2;padding:36px 0;font-size:.85rem;}
footer.site .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;}
footer.site a{color:#c7cedb;text-decoration:none;}

@media (max-width:860px){
  .hero h1{font-size:2.2rem;}
  .service-grid{grid-template-columns:1fr;}
  .steps{grid-template-columns:1fr 1fr;}
  .about .wrap{grid-template-columns:1fr;}
  .contact .wrap{grid-template-columns:1fr;}
  nav.main{display:none;}
}
