/* Common header + footer. Every rule is scoped under .site-* so page stylesheets cannot clash with it. */
.site-wrap{width:min(1160px,92%);margin-inline:auto}
main{display:block}
.site-skip{position:absolute;left:12px;top:-60px;z-index:100;padding:10px 16px;border-radius:10px;background:#123b35;color:#fff;font:700 14px 'DM Sans',Arial,sans-serif;text-decoration:none}
.site-skip:focus{top:12px}

/* Top bar */
.site-topbar{background:#0c1728;color:#e2e8f0;font:13px/1.7 'DM Sans',Arial,sans-serif;padding:8px 0;letter-spacing:0}
.site-topbar .site-wrap{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap}
.site-topbar a{color:inherit;text-decoration:none;min-height:0}
.site-toplinks{display:flex;gap:15px;flex-wrap:wrap}

/* Header / navigation */
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #e2e8f0;color:#142238;font:16px/1.7 'DM Sans',Arial,sans-serif;letter-spacing:0}
.site-navinner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:82px}
.site-brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;min-width:0}
.site-brand img{width:58px;height:58px;object-fit:contain;border-radius:12px}
.site-brand-name{display:block;margin:0;padding:0;color:#142238;font:800 19px/1.15 'Manrope',Arial,sans-serif;letter-spacing:0}
.site-brand-tag{display:block;margin-top:4px;color:#0d9488;font-size:10px;font-weight:800;line-height:1.2;letter-spacing:1px}
.site-navlinks{display:flex;align-items:center;gap:18px;list-style:none;margin:0;padding:0}
.site-navlinks li{margin:0;padding:0;font-size:14px}
.site-navlinks a{color:#142238;text-decoration:none;font-size:14px;font-weight:700}
.site-navlinks a:hover,.site-navlinks a.is-active{color:#0d9488}
.site-navtoggle{display:none;border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:10px 13px;color:#142238;font:700 14px 'DM Sans',Arial,sans-serif;cursor:pointer}
.site-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 19px;border-radius:13px;background:linear-gradient(135deg,#f97316,#f4b942);color:#fff;font-size:15px;font-weight:800;text-decoration:none;box-shadow:0 8px 20px #f9731628;transition:transform .2s}
.site-cta:hover{transform:translateY(-2px);color:#fff}
.site-header a:focus-visible,.site-header button:focus-visible,.site-topbar a:focus-visible,.site-footer a:focus-visible{outline:3px solid #f4c96b;outline-offset:3px}

/* Footer */
.site-footer{margin:0;padding:32px 0;border:0;background:#0c1728;color:#cbd5e1;font:16px/1.7 'DM Sans',Arial,sans-serif;text-align:left;letter-spacing:0}
.site-footer p{margin:0 0 6px;color:#cbd5e1;font-size:13px;line-height:1.7}
.site-footer a{color:#fff;text-decoration:none}
.site-footer-title{display:block;margin-bottom:6px;color:#fff;font:800 19px 'Manrope',Arial,sans-serif}
.site-footergrid{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;flex-wrap:wrap}
.site-footerlinks{display:flex;gap:15px;flex-wrap:wrap}
.site-footer address{font-style:normal}

/* WhatsApp button */
.site-wa{position:fixed;right:18px;bottom:18px;z-index:25;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#25d366;color:#fff;font-size:25px;text-decoration:none;box-shadow:0 8px 22px #25d36650}

@media(max-width:900px){
  .site-navinner{flex-wrap:wrap;padding:12px 0}
  .site-navtoggle{display:inline-flex;align-items:center;gap:8px}
  .site-navwrap{flex:0 0 100%}
  .site-navlinks{display:none;flex:0 0 100%;flex-direction:column;align-items:stretch;gap:0;padding:8px;background:#fff;border:1px solid #e2e8f0;border-radius:14px}
  .site-navlinks.open{display:flex}
  .site-navlinks a{display:block;padding:12px;border-bottom:1px solid #eef2f7}
  .site-navlinks li:last-child a{border-bottom:0}
  .site-cta{display:none}
}
@media(max-width:600px){
  .site-topbar .site-wrap{justify-content:center;text-align:center}
  .site-brand img{width:48px;height:48px}
  .site-brand-name{font-size:15px}
  .site-brand-tag{font-size:9px}
  .site-footergrid{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.site-cta{transition:none}}
