
:root{
  --blue: #1F4B99;
  --green: #1E8F6F;
  --gold: #D4B36C;
  --bg: #F5F7FA;
  --dark: #0E2235;
  --mid: #5E6A72;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--dark);background:var(--bg)}
img{max-width:100%;display:block}
a{color:var(--blue);text-decoration:none}
h1,h2,h3,h4{margin:0 0 .5rem 0}
p{margin:.5rem 0 1rem 0;line-height:1.6}

.site-header{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid #e8ecf1;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem}
.brand{display:flex;align-items:center;gap:.65rem;color:var(--dark)}
.logo-mark{width:40px;height:40px}
.logo-mark.small{width:28px;height:28px}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-top{font-weight:700;letter-spacing:.06em}
.brand-bottom{font-size:.85rem;letter-spacing:.25em;color:var(--mid)}

.nav{position:relative}
#menu-toggle{display:none}
.hamburger{width:28px;height:22px;display:none;cursor:pointer;position:relative}
.hamburger::before,.hamburger::after{content:'';position:absolute;left:0;right:0;height:2px;background:var(--dark)}
.hamburger::before{top:0}
.hamburger::after{bottom:0}
.nav-links{display:flex;gap:.75rem;align-items:center;list-style:none;margin:0;padding:0}
.nav-links a{padding:.5rem .8rem;border-radius:.5rem}
.nav-links a:hover{background:#f0f4f8}

.btn{display:inline-block;padding:.7rem 1.1rem;border-radius:.6rem;font-weight:600;border:1px solid transparent}
.btn-primary{background:var(--green);color:#fff}
.btn-outline{border-color:var(--green);color:var(--green)}
.btn-gold{background:var(--gold);color:#222}
.btn:hover{opacity:.92}

.call-now{position:fixed;right:16px;bottom:16px;background:var(--green);color:#fff;padding:.85rem 1rem;border-radius:999px;box-shadow:0 8px 20px rgba(0,0,0,.15);font-weight:700;z-index:999}
.call-now:hover{transform:translateY(-1px)}

.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center;padding:3rem 1.25rem;background:
linear-gradient(180deg,rgba(255,255,255,1) 0%, #eef5ff 100%)}
.hero h1{font-size:2.2rem;color:var(--blue)}
.cta-row{display:flex;gap:.75rem;margin:1rem 0}
.trust-badges{display:flex;gap:1rem;flex-wrap:wrap;color:var(--mid);padding:0;margin:1rem 0;list-style:'✓ '}

.grid.features{padding:2rem 1.25rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.grid.features article{background:#fff;border:1px solid #e6ebf2;border-radius:.8rem;padding:1rem}

.panel.highlight{background:linear-gradient(90deg,var(--blue),var(--green));color:#fff;padding:2rem 1.25rem;margin:0}
.panel .btn-gold{margin-top:.5rem}

.testimonials{padding:2rem 1.25rem;background:#fff}
.testimonials h2{color:var(--blue);margin-bottom:1rem}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.testi-grid blockquote{border-left:4px solid var(--gold);background:#fbfbfd;padding:1rem;border-radius:.6rem;margin:0}
.testi-grid cite{display:block;color:var(--mid);margin-top:.5rem;font-style:normal}

.two-col{padding:2rem 1.25rem;display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.card{background:#fff;border:1px solid #e6ebf2;border-radius:.8rem;padding:1rem}

.page-hero.small{padding:2.5rem 1.25rem;background:linear-gradient(180deg,#f8fbff 0%,#eef7f3 100%);}
.page-hero.small h1{color:var(--blue)}

.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:2rem 1.25rem}
.service{background:#fff;border:1px solid #e6ebf2;border-radius:.8rem;padding:1rem}

.form label{display:block;font-weight:600;margin:.6rem 0 .25rem 0}
.form input,.form textarea{width:100%;padding:.7rem;border-radius:.5rem;border:1px solid #d5dbe3;font:inherit}
.form button{margin-top:.6rem}
.hidden{display:none}

.site-footer{background:#0f1e2d;color:#dbe4ee;margin-top:2rem;padding:2rem 1.25rem}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem;align-items:start}
.site-footer a{color:#e7f1ff}
.list-plain{list-style:none;margin:0;padding:0}
.muted{color:var(--mid)}
.copyright{margin-top:1.2rem;color:#a9b6c3;text-align:center;font-size:.9rem}

@media (max-width: 920px){
  .hero{grid-template-columns:1fr}
  .grid.features{grid-template-columns:1fr}
  .two-col{grid-template-columns:1fr}
  .services-grid{grid-template-columns:1fr}
  .hamburger{display:block}
  .nav-links{position:absolute;right:0;top:100%;background:#fff;border:1px solid #e6ebf2;border-radius:.8rem;display:none;flex-direction:column;min-width:220px;padding:.5rem}
  #menu-toggle:checked ~ .nav-links{display:flex}
  .testi-grid{grid-template-columns:1fr}
}
