
:root{
  --navy:#0f172a; --blue:#2563eb; --gray:#475569; --bg:#ffffff; --muted:#f1f5f9;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;color:var(--navy);background:var(--bg);}
a{color:var(--blue);text-decoration:none}
.container{max-width:1120px;margin:0 auto;padding:0 1rem}
.site-header{position:sticky;top:0;background:#fff;backdrop-filter:saturate(180%) blur(6px);border-bottom:1px solid #e2e8f0;z-index:1000}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:0.75rem 0}
.brand-logo{height:44px;width:auto;display:block}
.site-nav{display:flex;gap:1rem;align-items:center}
.site-nav a{color:#334155;font-weight:600}
.nav-toggle{display:none;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:6px 9px;font-size:18px}
@media (max-width:820px){
  .site-nav{display:none;position:absolute;top:64px;right:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:0.75rem;flex-direction:column;box-shadow:0 10px 30px rgba(2,6,23,.08)}
  .nav-toggle{display:block}
}

.hero{background:linear-gradient(180deg,#eff6ff,rgba(255,255,255,1));padding:3rem 0 2rem}
.hero-inner{display:grid;grid-template-columns:1.1fr 0.9fr;gap:2rem;align-items:center}
@media (max-width:980px){.hero-inner{grid-template-columns:1fr}}
.hero-copy h1{font-size:2.4rem;line-height:1.15;margin:.5rem 0 1rem}
.pill{display:inline-block;border:1px solid #bfdbfe;background:#fff;padding:.25rem .6rem;border-radius:999px;color:#1d4ed8;font-weight:600;font-size:.8rem}
.accent{color:var(--blue)}
.cta-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
.btn{display:inline-flex;align-items:center;gap:.5rem;border-radius:16px;padding:.7rem 1rem;border:1px solid #cbd5e1;font-weight:700}
.btn-primary{background:var(--blue);border-color:var(--blue);color:#fff}
.btn-outline{background:#fff;color:#0f172a}
.btn-link{border:none;padding:0;background:none;font-weight:700}
.badges{display:flex;gap:1rem;flex-wrap:wrap;color:#475569;font-size:.9rem;margin-top:1rem;padding:0}
.badges li{list-style:none;display:flex;align-items:center;gap:.4rem}
.hero-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
@media (max-width:600px){.hero-cards{grid-template-columns:1fr}}
.card{border:1px solid #e2e8f0;border-radius:18px;padding:1rem;background:#fff;box-shadow:0 3px 15px rgba(2,6,23,.04)}
.card h3{margin:.25rem 0 .5rem}

.section{padding:3rem 0}
.section.alt{background:#f8fafc}
.grid.four{display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}
@media (max-width:980px){.grid.four{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.grid.four{grid-template-columns:1fr}}
.grid.three{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}
@media (max-width:980px){.grid.three{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.grid.three{grid-template-columns:1fr}}
.grid.two{display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}
@media (max-width:860px){.grid.two{grid-template-columns:1fr}}
.tile{border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:1rem;box-shadow:0 3px 15px rgba(2,6,23,.04)}
.tile h3{margin:.25rem 0 .5rem}
.checks{margin:1rem 0 0 1rem}
.checks li{margin:.25rem 0}
.narrow{max-width:760px;margin:0 auto}

.contact .form-card{border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:1rem;box-shadow:0 3px 15px rgba(2,6,23,.04)}
form{display:grid;gap:.6rem}
label{font-weight:700;font-size:.9rem}
input,textarea{border:1px solid #cbd5e1;border-radius:12px;padding:.6rem .75rem;font-size:1rem;width:100%}
input:focus,textarea:focus{outline:3px solid #bfdbfe;border-color:#60a5fa}
.fineprint{font-size:.8rem;color:#64748b;margin-top:.5rem}

.page-hero{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:2.5rem 0}
.page-hero h1{margin:0 0 .5rem}
.legal h2{margin-top:1.5rem}

.site-footer{border-top:1px solid #e2e8f0;background:#fff}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem 0;flex-wrap:wrap}
.footer-brand img{height:34px}
.footer-links{display:flex;gap:1rem;font-weight:600}
.job{border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:1rem;box-shadow:0 3px 15px rgba(2,6,23,.04);margin-bottom:1rem}
