/* Generated from css/style.css by tools/build.js. Do not edit directly. */
.site-header,.site-footer,.mob-bar,.skip-link{
  /* Brand */
  --brand:#00806e;
  --brand-strong:#00695a;
  --brand-soft:#e6f5f2;
  --blue:#145da0;
  --blue-soft:#e8f1fa;
  --grad:linear-gradient(90deg,#00806e,#145da0);

  /* Ink & surfaces */
  --ink:#0b1b2b;
  --ink-2:#31465c;
  --ink-3:#5b7085;
  --surface:#ffffff;
  --surface-2:#f6f9fc;
  --surface-3:#eef4f8;
  --line:rgba(11,27,43,.12);
  --line-soft:rgba(11,27,43,.07);

  /* Status */
  --ok:#0f7b52;
  --warn:#96601a;
  --warn-soft:#fdf6ec;
  --err:#b3261e;
  --err-soft:#fdefee;

  /* Elevation */
  --shadow-sm:0 1px 2px rgba(11,27,43,.05);
  --shadow:0 6px 20px rgba(11,27,43,.07);
  --shadow-lg:0 18px 50px rgba(11,27,43,.10);

  /* Radius & rhythm */
  --r-sm:8px; --r:12px; --r-lg:18px; --r-xl:26px;
  --pad-x:clamp(20px,5vw,64px);
  --sec-y:clamp(56px,7vw,96px);
  --maxw:1180px;
  --readw:68ch;

  /* Aliases kept for older page-level CSS */
  --bg:var(--surface-2);
  --accent:var(--brand);
  --text:var(--ink);
  --muted:var(--ink-2);
  --dim:var(--ink-3);
  --card-bg:var(--surface);
  --card-border:var(--line);
  --soft-bg:var(--surface-3);
font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:17px;line-height:1.65;}
:where(.site-header,.site-footer,.mob-bar) :focus-visible,.skip-link:focus-visible{outline:3px solid rgba(20,93,160,.45);outline-offset:2px;border-radius:4px}
.site-footer h2{font-family:'Plus Jakarta Sans','Inter',sans-serif;line-height:1.2;text-wrap:balance}
body.menu-open{overflow:hidden}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.skip-link{position:absolute;left:12px;top:0;transform:translateY(-100%);z-index:2000;background:var(--ink);color:#fff;padding:10px 18px;border-radius:0 0 var(--r) var(--r);font-weight:600;text-decoration:none;transition:transform .18s}
.skip-link:focus{transform:translateY(0);color:#fff}

/* ── 4. HEADER / NAVIGATION ───────────────────────────────── */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-soft)}
.site-header.scrolled{box-shadow:var(--shadow)}
.site-header nav{max-width:var(--maxw);margin-inline:auto;padding:12px var(--pad-x);display:flex;align-items:center;gap:20px}

.logo{font-family:'Plus Jakarta Sans',sans-serif;font-size:20px;font-weight:800;letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-decoration:none;white-space:nowrap;flex-shrink:0}

.nav-links{display:flex;align-items:center;gap:4px;list-style:none;margin-left:auto}
.nav-links > li{position:relative}
.nav-links a{display:inline-block;padding:9px 12px;color:var(--ink);font-size:15px;font-weight:600;text-decoration:none;border-radius:var(--r-sm);transition:color .18s,background .18s}
.nav-links a:hover{color:var(--brand-strong);background:var(--brand-soft)}
.nav-links a.active{color:var(--brand-strong)}
.nav-links a.active::after{content:'';display:block;height:2px;border-radius:2px;background:var(--brand);margin-top:5px}

.nav-has-sub > a{padding-right:4px}
.nav-sub-toggle{background:none;border:0;cursor:pointer;color:var(--ink-3);padding:8px 6px;line-height:0;border-radius:var(--r-sm)}
.nav-sub-toggle:hover{color:var(--brand-strong)}
.nav-sub-toggle svg{transition:transform .2s}
.nav-has-sub.sub-open .nav-sub-toggle svg,
.nav-has-sub:hover .nav-sub-toggle svg{transform:rotate(180deg)}

.nav-sub{position:absolute;top:calc(100% + 10px);left:-8px;width:330px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:8px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s,transform .18s,visibility .18s}
.nav-has-sub:hover .nav-sub,
.nav-has-sub:focus-within .nav-sub,
.nav-has-sub.sub-open .nav-sub{opacity:1;visibility:visible;transform:none}
.nav-sub ul{list-style:none}
.nav-sub a{display:block;padding:10px 12px;border-radius:var(--r);font-weight:600}
.nav-sub a::after{display:none}
.nav-sub-title{display:block;font-size:15px;color:var(--ink)}
.nav-sub a:hover .nav-sub-title{color:var(--brand-strong)}
.nav-sub-blurb{display:block;font-size:13px;font-weight:400;color:var(--ink-3);margin-top:2px;line-height:1.45}

.nav-cta{flex-shrink:0;padding:10px 20px;background:var(--grad);color:#fff!important;font-weight:700;font-size:15px;border-radius:var(--r);text-decoration:none;box-shadow:var(--shadow-sm);transition:transform .18s,box-shadow .18s}
.nav-cta:hover{transform:translateY(-1px);box-shadow:var(--shadow)}

.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:var(--r-sm);width:42px;height:40px;cursor:pointer;margin-left:auto;position:relative;color:var(--ink)}
.nav-toggle-bars,.nav-toggle-bars::before,.nav-toggle-bars::after{position:absolute;left:11px;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s}
.nav-toggle-bars{top:19px}
.nav-toggle-bars::before{content:'';top:-6px;left:0}
.nav-toggle-bars::after{content:'';top:6px;left:0}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars{background:transparent}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars::before{transform:translateY(6px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars::after{transform:translateY(-6px) rotate(-45deg)}

/* ── 8. FOOTER & MOBILE BAR ───────────────────────────────── */
.site-footer{background:#0b1b2b;color:#dbe6ee;padding-block:clamp(44px,5vw,64px) 24px;margin-top:0}
.footer-inner{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad-x)}
.footer-grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:clamp(24px,3vw,40px);padding-bottom:36px}
.footer-logo{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:20px;font-weight:800;color:#fff;margin-bottom:10px}
.footer-tagline{color:#63d7c4;font-size:14.5px;font-weight:600;margin-bottom:12px}
.footer-note{color:#9db2c2;font-size:14px;line-height:1.7;max-width:34ch}
.footer-contact-list,.footer-social{list-style:none;margin-top:18px}
.footer-contact-list li{font-size:14.5px;color:#9db2c2;margin-bottom:6px}
.footer-contact-list a{color:#dbe6ee;text-decoration:none}
.footer-contact-list a:hover{color:#63d7c4}
.footer-social{display:flex;gap:16px;margin-top:14px}
.footer-social a{color:#9db2c2;font-size:14px;text-decoration:none}
.footer-social a:hover{color:#63d7c4}
.footer-col ul{list-style:none}
.footer-col-title{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:14px}
.footer-col li{margin-bottom:9px}
.footer-col a{color:#b6c7d4;font-size:14.5px;text-decoration:none;line-height:1.5;display:inline-block}
.footer-col a:hover{color:#63d7c4;text-decoration:underline}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12)}
.footer-bottom p,.footer-bottom a{font-size:13.5px;color:#9db2c2}
.footer-bottom a{text-decoration:none}
.footer-bottom a:hover{color:#63d7c4;text-decoration:underline}

.mob-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:900;background:var(--surface);border-top:1px solid var(--line);padding:6px 0 calc(6px + env(safe-area-inset-bottom));box-shadow:0 -4px 18px rgba(11,27,43,.09)}
.mob-bar-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:5px 0;font-size:11px;font-weight:650;color:var(--ink-2);text-decoration:none}
.mob-bar-item .mbi{font-size:19px;line-height:1}
.mob-bar-item.wa{color:#0f7b52}

@media (max-width:1024px){
.footer-grid{grid-template-columns:1fr 1fr 1fr}
.site-header nav{flex-wrap:wrap}
.nav-toggle{display:block;order:3}
.nav-cta{order:2;margin-left:auto;padding:9px 16px;font-size:14px}
.nav-links{display:none;order:4;width:100%;flex-direction:column;align-items:stretch;gap:2px;margin:8px 0 12px;max-height:calc(100vh - 120px);overflow-y:auto}
.nav-links.open{display:flex}
.nav-links a{padding:12px 10px;font-size:16px;border-radius:var(--r-sm)}
.nav-links a.active::after{display:none}
.nav-links a.active{background:var(--brand-soft)}
.nav-has-sub{display:grid;grid-template-columns:1fr auto}
.nav-has-sub > a{grid-column:1}
.nav-sub-toggle{grid-column:2;border:1px solid var(--line);width:40px;height:40px;display:flex;align-items:center;justify-content:center;align-self:center}
.nav-sub{grid-column:1/-1;position:static;width:auto;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-left:2px solid var(--line);border-radius:0;margin:2px 0 6px 10px;padding:0 0 0 8px;display:none}
.nav-has-sub.sub-open .nav-sub{display:block}
.nav-has-sub:hover .nav-sub:not(.sub-open){opacity:1}
.nav-sub-blurb{display:none}
}
@media (max-width:768px){
.footer-grid{grid-template-columns:1fr 1fr}
.mob-bar{display:flex}
body{padding-bottom:64px}
}
@media (max-width:420px){
.footer-grid{grid-template-columns:1fr}
.site-header nav{gap:10px}
.logo{font-size:18px}
}
