
:root{
  --primary:#2A4B7C;
  --accent:#4361EE;
  --coral:#FF8A73;
  --bg:#F5F7FA;
  --white:#FFFFFF;
  --text:#1b2430;
  --muted:#677085;
  --radius:18px;
  --shadow:0 10px 30px rgba(17, 24, 39, .08);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Poppins, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color:var(--text);
  background:var(--white);
  line-height:1.6;
}
h1,h2,h3,h4{
  font-family:Montserrat, Poppins, Arial, Helvetica, sans-serif;
  margin:0 0 .5rem;
  line-height:1.2;
}
p{margin:.5rem 0 1rem}
.container{width:min(1100px, 92%); margin-inline:auto}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;background:#000;color:#fff;padding:.5rem 1rem;z-index:999}

.site-header{position:sticky;top:0;background:rgba(255,255,255,.85);backdrop-filter:saturate(150%) blur(8px);border-bottom:1px solid #eef1f6;z-index:100}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0}
.logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--text);font-weight:700}
.logo-mark{background:linear-gradient(135deg, var(--primary), var(--accent));color:var(--white);border-radius:12px;padding:.35rem .55rem;box-shadow:var(--shadow)}
.logo-text{letter-spacing:.4px}

.site-nav ul{display:flex;gap:1rem;list-style:none;margin:0;padding:0}
.site-nav a{color:var(--text);text-decoration:none;padding:.5rem .75rem;border-radius:12px}
.site-nav a:hover{background:var(--bg)}
.nav-toggle{display:none;background:none;border:0;cursor:pointer}
.nav-toggle span{display:block;width:24px;height:2px;background:#111;margin:5px 0;border-radius:2px}

.hero{position:relative;isolation:isolate;background:radial-gradient(80% 80% at 50% 10%, #EEF2FF 0%, #fff 60%);padding:4rem 0 3rem;overflow:hidden}
.hero::after{content:"";position:absolute;inset:-40% -20% auto auto;background:url('assets/hero-bg.svg') no-repeat center/cover;opacity:.25;z-index:-1;transform:rotate(8deg)}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:2rem}
.badge{display:inline-flex;align-items:center;gap:.5rem;background:#f1f5ff;color:#2a4b7c;border:1px solid #dfe8ff;padding:.35rem .6rem;border-radius:999px;font-size:.85rem}
.badge .dot{width:8px;height:8px;border-radius:999px;background:var(--coral)}
.hero h1{font-size:clamp(2rem, 3.4vw, 3rem)}
.lead{font-size:1.1rem;color:var(--muted)}
.cta-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}
.btn{display:inline-block;padding:.8rem 1.1rem;border-radius:14px;font-weight:600;text-decoration:none}
.btn.primary{background:var(--primary);color:#fff}
.btn.accent{background:var(--accent);color:#fff}
.btn.ghost{border:1px solid #e6e9f2;color:var(--text);background:#fff}
.hero-card{background:#fff;padding:1.25rem;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #edf0f6}

.grid{display:grid;gap:1.2rem}
.cols-3{grid-template-columns:repeat(3, 1fr)}
.cols-2{grid-template-columns:repeat(2, 1fr)}
@media (max-width: 900px){
  .hero-grid{grid-template-columns:1fr}
  .cols-3{grid-template-columns:1fr}
  .cols-2{grid-template-columns:1fr}
  .site-nav{display:none;position:absolute;right:1rem;top:60px;background:#fff;border:1px solid #eef1f6;border-radius:14px;box-shadow:var(--shadow)}
  .site-nav ul{flex-direction:column;padding:.5rem}
  .nav-toggle{display:block}
  .site-nav.open{display:block}
}

.section{padding:3rem 0}
.section .eyebrow{color:var(--coral);text-transform:uppercase;font-size:.85rem;letter-spacing:.12em;font-weight:700}
.card{background:#fff;padding:1.25rem;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #edf0f6}
.card h3{margin-bottom:.25rem}
.icon{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg, #e8ecff, #f6f8ff)}
.icon svg{width:20px;height:20px;fill:#2A4B7C}

.list{padding-left:1.2rem}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.kpi{background:linear-gradient(180deg,#ffffff, #f8faff);border:1px solid #eef2fb;border-radius:16px;padding:1rem;text-align:center}
.kpi strong{display:block;font-size:1.4rem}
.kpi span{color:var(--muted);font-size:.9rem}

.process{counter-reset:step}
.process li{list-style:none;margin-bottom:1rem;padding:1rem;border:1px dashed #e6e9f2;border-radius:16px;background:#fcfdff}
.process li::before{counter-increment:step;content:counter(step);display:inline-grid;place-items:center;width:32px;height:32px;border-radius:999px;background:var(--primary);color:#fff;font-weight:700;margin-right:.6rem}

.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:.75rem;border-bottom:1px solid #eef1f6;text-align:left}
.table th{font-weight:600;background:#f9fbff}

.contact-form{display:grid;gap:1rem}
.contact-form .row{display:grid;gap:1rem;grid-template-columns:1fr 1fr}
.contact-form input,.contact-form select,.contact-form textarea{
  width:100%;padding:.85rem;border:1px solid #e1e6f3;border-radius:12px;background:#fff;font-family:Poppins
}
.contact-form button{cursor:pointer}

.map{border:0;width:100%;height:320px;border-radius:16px;box-shadow:var(--shadow)}

.site-footer{border-top:1px solid #eef1f6;padding:2rem 0;background:#fff}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 2fr;gap:1.5rem;align-items:start}
.footer-links ul, .footer-contact ul{margin:0;padding:0;list-style:none}
.footer-links a{color:var(--text);text-decoration:none}
.footer-contact a{color:var(--text);text-decoration:none}
.footer-contact .socials{display:flex;gap:.6rem;margin-top:.6rem}
.tiny{font-size:.85rem;color:var(--muted)}
@media (max-width: 900px){
  .footer-grid{grid-template-columns:1fr}
}
.badge.alt{background:#fff0ed;color:#c2410c;border:1px solid #ffe2d9}
