
:root{
  --navy:#0b2444;
  --gold:#ecc970;
  --ink:#0d1b2a;
  --sky:#f5f7fb;
  --card:#ffffff;
  --muted:#6b7280;
}
*{box-sizing:border-box}
body{margin:0;font-family:Poppins,Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#0f172a;background:#fff}
a{color:var(--navy);text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1120px,92%);margin-inline:auto}
.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #e5e7eb;z-index:10}
.nav-wrap{display:flex;align-items:center;gap:24px;justify-content:space-between;padding:14px 0}
.brand{display:flex;align-items:center;gap:10px;font-weight:700}
.brand img{width:42px;height:42px;border-radius:999px}
.nav{display:flex;align-items:center;gap:20px}
.nav a{padding:8px 10px}
.btn{border:1px solid var(--navy);padding:10px 16px;border-radius:10px;display:inline-block;font-weight:600}
.btn-outline{background:transparent}
.btn-gold{background:var(--gold);border-color:var(--gold);color:#1f2937}
.hamburger{display:none}
#nav-toggle{display:none}
@media (max-width:900px){
  .hamburger{display:block;width:28px;height:22px;position:relative;cursor:pointer}
  .hamburger::before,.hamburger::after{content:"";position:absolute;left:0;right:0;height:3px;background:var(--navy);}
  .hamburger::before{top:4px}.hamburger::after{bottom:4px}
  .nav{position:absolute;inset:62px 0 auto 0;background:#fff;border-bottom:1px solid #e5e7eb;display:none;flex-direction:column;padding:12px}
  #nav-toggle:checked ~ .nav{display:flex}
}

.hero{display:grid;grid-template-columns:1.2fr 1fr;min-height:520px}
.hero .hero-media{background-size:cover;background-position:center}
.hero .hero-content{padding:60px 8vw;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#fff 0%,#fff 60%,#f8fafc 100%)}
.hero h1{font-size:44px;margin:0 0 8px;color:var(--ink)}
.hero p{color:#334155;max-width:60ch}
.cta{display:flex;gap:12px;margin-top:18px}

.ribbon{background:linear-gradient(90deg,#0b2444, #1b3356);color:#fff}
.ribbon-inner{display:flex;gap:32px;justify-content:center;padding:14px 0}
.stat{display:flex;flex-direction:column;align-items:center;font-weight:700}
.stat span{font-size:28px}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:48px auto}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media (max-width:900px){.grid-3,.grid-2,.hero{grid-template-columns:1fr}}

.features .card{background:var(--card);border:1px solid #e5e7eb;border-radius:16px;padding:22px;box-shadow:0 6px 20px rgba(20,24,40,.05)}
.features .icon{font-size:28px}

.split{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center;margin:56px auto}
.rounded{border-radius:16px}
.check{list-style:none;padding:0}
.check li{padding-left:26px;position:relative;margin:10px 0;color:#374151}
.check li::before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:700}

.page-hero{padding:64px 0;background:linear-gradient(135deg,#f8fafc,#fff);text-align:center;border-bottom:1px solid #eef2f7}
.page-hero h1{margin:0;margin-bottom:8px;font-size:40px}

.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:40px 0}
.service-card{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden}
.service-card img{height:100%;object-fit:cover}
@media (max-width:900px){.services-grid{grid-template-columns:1fr}.service-card{grid-template-columns:1fr}}

.callout{text-align:center;background:#0b2444;color:#fff;padding:36px;border-radius:16px;margin:40px auto}
.pill-list{display:flex;flex-wrap:wrap;gap:10px}
.pill{background:#f1f5f9;border:1px solid #e5e7eb;border-radius:999px;padding:6px 12px}
.mt{margin-top:28px}

.testimonials{display:grid;gap:16px;margin-top:16px}
blockquote{margin:0;padding:18px;border-left:4px solid var(--gold);background:#f9fafb;border-radius:8px}
cite{display:block;margin-top:8px;color:#6b7280}

.form-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;margin:40px auto}
.form{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:20px}
.form label{display:block;font-weight:600;color:#334155}
.form input,.form select,.form textarea{width:100%;padding:10px;margin-top:8px;border-radius:10px;border:1px solid #d1d5db}
.contact-aside{align-self:start}
@media (max-width:900px){.form-wrap{grid-template-columns:1fr}}

.jobs{display:grid;gap:16px}
.job{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px;display:grid;gap:8px}

.site-footer{background:#0b2444;color:#e5e7eb;margin-top:60px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;padding:32px 0}
.footer-grid a{color:#e5e7eb}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:12px 0;color:#cbd5e1}
.logo-sm{width:56px;height:56px;border-radius:999px}
