
:root{
  --navy:#0b234a; --navy-dark:#081a38; --accent:#1c7d80; --accent-dark:#166366;
  --bg:#f7f8fa; --text:#1f2937; --muted:#5b6472; --border:#e2e5ea; --white:#fff;
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:var(--white);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.container{max-width:1100px;margin:0 auto;padding:0 24px}
header.site{border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--white);z-index:10}
.nav-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
.logo{font-weight:800;font-size:1.15rem;color:var(--navy)}
.logo span{color:var(--accent)}
nav.main a{margin:0 14px;font-weight:600;color:var(--navy);font-size:.95rem}
nav.main a.active{color:var(--accent)}
.nav-cta{display:flex;align-items:center;gap:18px}
.phone{font-weight:700;color:var(--navy)}
.btn{display:inline-block;background:var(--accent);color:var(--white);padding:10px 20px;border-radius:6px;font-weight:700;font-size:.9rem}
.btn:hover{background:var(--accent-dark)}
.btn-outline{display:inline-block;border:2px solid var(--white);color:var(--white);padding:9px 20px;border-radius:6px;font-weight:700;font-size:.9rem}
.hero{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-dark) 100%);color:var(--white);padding:72px 0}
.hero .eyebrow{color:var(--accent);font-weight:700;letter-spacing:.05em;text-transform:uppercase;font-size:.85rem}
.hero h1{font-size:2.6rem;margin:.4em 0;max-width:700px}
.hero h1 em{color:var(--accent);font-style:normal}
.hero p{max-width:600px;color:#cbd5e1;font-size:1.1rem}
.hero .cta-row{margin-top:28px;display:flex;gap:14px;flex-wrap:wrap}
.stats{display:flex;gap:40px;margin-top:40px;flex-wrap:wrap}
.stats div b{display:block;font-size:1.6rem;color:var(--accent)}
.stats div span{color:#cbd5e1;font-size:.85rem}
section{padding:64px 0}
.section-eyebrow{color:var(--accent);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}
h2{font-size:2rem;color:var(--navy);margin:.3em 0 .6em}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin-top:32px}
.card{border:1px solid var(--border);border-radius:10px;padding:26px;background:var(--white)}
.card .icon{font-size:1.8rem}
.card h3{color:var(--navy);margin:.5em 0 .3em;font-size:1.15rem}
.card p{color:var(--muted);font-size:.95rem}
.card .price{font-weight:700;color:var(--navy);margin-top:10px;display:block;font-size:.9rem}
.card a.learn{color:var(--accent);font-weight:700;font-size:.9rem;display:inline-block;margin-top:10px}
.sector-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.sector-pill{border:1px solid var(--border);border-radius:8px;padding:14px 18px;font-weight:600;color:var(--navy);background:var(--bg)}
.cta-band{background:var(--bg);text-align:center}
.cta-band h2{margin-top:0}
footer.site{background:var(--navy-dark);color:#cbd5e1;padding:48px 0 24px;font-size:.9rem}
footer.site .grid{grid-template-columns:2fr 1fr 1fr;gap:32px}
footer.site h4{color:var(--white);margin-top:0}
footer.site a{color:#cbd5e1;display:block;margin-bottom:8px}
footer.site .bottom{border-top:1px solid #1e3a5f;margin-top:32px;padding-top:20px;font-size:.8rem;color:#8496ab}
.breadcrumb{color:var(--muted);font-size:.9rem;margin-bottom:8px}
.page-hero{background:var(--bg);padding:48px 0;border-bottom:1px solid var(--border)}
.page-hero h1{color:var(--navy);margin:.2em 0}
.prose h2{margin-top:1.4em}
.prose ul{padding-left:1.2em}
.prose blockquote{border-left:4px solid var(--accent);margin:1.5em 0;padding:.5em 1.2em;background:var(--bg);color:var(--muted)}
.blog-list article{border-bottom:1px solid var(--border);padding:24px 0}
.blog-list time{color:var(--accent);font-weight:700;font-size:.85rem}
.blog-list h3{margin:.3em 0}
.blog-list a.read{font-weight:700;color:var(--accent)}
.form-row{display:grid;gap:16px;max-width:500px;margin-top:24px}
.form-row input,.form-row textarea{padding:12px;border:1px solid var(--border);border-radius:6px;font-family:inherit;font-size:1rem;transition:border-color .15s ease,box-shadow .15s ease}
.form-row input:focus,.form-row textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(28,125,128,.15)}

/* --- Mobile nav + responsive fixes (2026-08-19) --- */
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;background:none;border:0;cursor:pointer;padding:0;order:2}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--navy);border-radius:2px;transition:transform .2s ease,opacity .2s ease}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:860px){
  header.site .nav-row{flex-wrap:wrap}
  .nav-cta{order:1}
  .nav-toggle{display:flex}
  nav.main{display:none;flex-direction:column;align-items:flex-start;width:100%;order:3;padding:12px 0 4px;border-top:1px solid var(--border)}
  nav.main.open{display:flex}
  nav.main a{margin:8px 0}
  .phone{display:none}
  footer.site .grid{grid-template-columns:1fr;gap:28px}
}

.whatsapp-float{
  position:fixed;bottom:22px;right:22px;z-index:200;
  width:56px;height:56px;border-radius:50%;
  background:#25D366;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 24px rgba(0,0,0,.35);
  transition:transform .15s ease;
}
.whatsapp-float:hover{transform:scale(1.08)}
@media (max-width:600px){
  .whatsapp-float{width:50px;height:50px;bottom:16px;right:16px}
}

.skip-link{
  position:absolute;top:-60px;left:12px;z-index:1000;
  background:var(--navy);color:#fff;padding:12px 18px;border-radius:6px;
  font-weight:700;font-size:.9rem;text-decoration:none;
  transition:top .15s ease;
}
.skip-link:focus{top:12px}

.back-to-top{
  position:fixed;bottom:22px;right:90px;z-index:199;
  width:48px;height:48px;border-radius:50%;
  background:var(--navy);color:#fff;border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 24px rgba(0,0,0,.25);
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s;
}
.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{background:var(--accent)}
@media (max-width:600px){
  .back-to-top{width:44px;height:44px;right:76px;bottom:16px}
}
