
:root{
  --brand:#1f5fa8;
  --brand-2:#3a8dde;
  --accent:#6bbf59;
  --ink:#1f2937;
  --muted:#64748b;
  --bg:#f8fafc;
  --white:#fff;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6}
a{color:var(--brand)}
img{max-width:100%;height:auto}

.container{max-width:1120px;margin-inline:auto;padding:0 1rem}
.btn{display:inline-block;background:var(--brand);color:var(--white);padding:.8rem 1.1rem;border-radius:.75rem;text-decoration:none;font-weight:600}
.btn:hover{filter:brightness(1.05)}
.btn-outline{background:transparent;border:2px solid var(--brand);color:var(--brand)}

header.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:saturate(1.2) blur(6px);border-bottom:1px solid #e2e8f0}
.navbar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0}
.brand{display:flex;align-items:center;gap:.75rem}
.brand img{width:40px;height:40px}
.brand .title{font-weight:800;color:var(--brand);letter-spacing:.2px}
nav ul{display:flex;gap:1rem;list-style:none;margin:0;padding:0}
nav a{display:block;padding:.5rem .6rem;border-radius:.5rem;text-decoration:none;color:var(--ink);font-weight:600}
nav a:hover, nav a:focus{background:#eef2ff;color:#1e3a8a;outline:none}
.menu-toggle{display:none;background:none;border:none;font-size:1.4rem}

@media (max-width: 860px){
  nav ul{display:none;flex-direction:column;gap:.25rem;position:absolute;right:1rem;top:64px;background:var(--white);padding:.5rem;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 10px 25px rgba(0,0,0,.06)}
  nav ul.open{display:flex}
  .menu-toggle{display:block}
}

.hero{padding:3rem 0;background:linear-gradient(180deg,#ffffff 0%,#eef6ff 100%)}
.hero-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:center}
.hero h1{font-size:2.2rem;line-height:1.1;margin:.25rem 0 .75rem}
.hero p{color:var(--muted)}
.hero .cta{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
@media (max-width: 860px){
  .hero-inner{grid-template-columns:1fr}
}

.badges{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1rem}
.badge{background:#e6f0fb;color:#0f3a75;border:1px solid #cfe1fb;padding:.35rem .6rem;border-radius:999px;font-weight:600;font-size:.9rem}

.section{padding:3rem 0}
.section h2{font-size:1.7rem;margin-top:0}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
@media (max-width:900px){.grid-3{grid-template-columns:1fr}}

.card{background:var(--white);border:1px solid #e2e8f0;border-radius:1rem;padding:1.25rem;box-shadow:0 8px 24px rgba(2,6,23,.04)}
.card h3{margin-top:0}
.card ul{padding-left:1.2rem}
.card .cta{margin-top:.5rem}

.strip{background:#f1f5f9;padding:1.5rem;border:1px dashed #cbd5e1;border-radius:1rem}

.services .icon{font-size:2rem}

.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1rem}
.kpi{background:var(--white);border:1px solid #e2e8f0;border-radius:.75rem;padding:1rem;text-align:center}
.kpi .n{font-size:1.4rem;font-weight:800;color:#0f3a75}
@media (max-width:900px){.kpis{grid-template-columns:repeat(2,1fr)}}

.testimonials .item{background:var(--white);border:1px solid #e2e8f0;border-radius:1rem;padding:1rem}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
@media (max-width:900px){.contact{grid-template-columns:1fr}}
form label{display:block;font-weight:600;margin-top:.5rem}
form input, form textarea{width:100%;padding:.7rem;border:1px solid #cbd5e1;border-radius:.6rem}
form button{margin-top:.75rem}
small.help{color:#475569}

footer{background:#0f172a;color:#e2e8f0;padding:2rem 0;margin-top:2rem}
footer a{color:#c7d2fe}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr}}
footer .brand .title{color:#e2e8f0}
.footer-bottom{border-top:1px solid #334155;margin-top:1rem;padding-top:1rem;font-size:.9rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
