/* Shared site top-bar styles — email strip + nav + social tiles (FB/IG/YouTube) + mobile menu.
   Moved verbatim out of the marketing pages' inline <style> to remove per-page duplication.
   REQUIRES the including page to define these CSS custom properties in :root —
   --blue, --blue-d, --blue-l, --blue-soft, --line, --shadow. */
  .site-header{position:sticky;top:0;z-index:50}
  .topbar{background:var(--blue-d);color:#cfe0f6;font-size:13.5px}
  .topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:9px 22px;flex-wrap:wrap}
  .topbar b{color:#fff}.topbar .left span{margin-right:18px;white-space:nowrap}
  .eas-social{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;text-decoration:none;transition:transform .2s ease}
  .eas-social.fb{background:#1877F2}.eas-social.ig{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)}.eas-social.yt{background:#FF0000}
  .eas-social+.eas-social{margin-left:8px}
  .eas-social svg{width:19px;height:19px;display:block;fill:#fff}
  .eas-social:hover{transform:scale(1.12)}

  header.nav{background:#fff;box-shadow:0 2px 16px rgba(11,78,162,.07);border-bottom:3px solid var(--blue)}
  header.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:13px 22px}
  .logo{display:flex;align-items:center;gap:11px}
  .logo img{height:42px;width:auto}
  nav.links{display:flex;gap:24px;align-items:center;font-weight:600;font-size:14.5px}
  nav.links a{color:#3b4a61;text-decoration:none}nav.links a:hover{color:var(--blue)}
  .rt{display:flex;align-items:center;gap:12px}
  .user{display:flex;align-items:center;gap:9px;cursor:pointer;position:relative}
  .user .av{width:36px;height:36px;border-radius:50%;background:var(--blue-soft);border:2px solid var(--blue-l);color:var(--blue-d);display:grid;place-items:center;font-weight:800;font-size:13.5px}
  .user .uname{font-weight:700;color:var(--blue-d);font-size:14.5px;white-space:nowrap}
  .user .menu{position:absolute;top:48px;right:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);min-width:180px;overflow:hidden;display:none;z-index:60}
  .user .menu.show{display:block}
  .user .menu a{display:block;padding:12px 16px;font-size:14px;color:#334155;border-top:1px solid var(--line);text-decoration:none}
  .user .menu a:first-child{border-top:none}.user .menu a:hover{background:var(--blue-soft);color:var(--blue-d)}
  .hamburger{display:none;align-items:center;justify-content:center;width:44px;height:42px;background:var(--blue-soft);color:var(--blue-d);border:1.5px solid var(--line);border-radius:11px;font-size:21px;cursor:pointer;font-family:inherit}
  .mobile-menu{display:none;flex-direction:column;background:#fff;border-top:1px solid var(--line);box-shadow:0 14px 30px rgba(11,78,162,.14)}
  .mobile-menu.open{display:flex}
  .mobile-menu a{padding:13px 22px;color:#3b4a61;font-weight:600;font-size:15px;border-bottom:1px solid var(--line);text-decoration:none}
  .mobile-menu a:hover{background:var(--blue-soft);color:var(--blue)}
  @media(max-width:900px){nav.links{display:none}.hamburger{display:flex}}

  /* ---- Shared footer (partials/site_footer.php). margin-top:auto pins it to the bottom
     regardless of whether the page has a flex:1 content spacer. ---- */
  footer{background:#0a2a52;color:#a9c2e6;padding:38px 0 24px;font-size:14px;margin-top:auto}
  footer .fgrid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:30px}
  footer h5{color:#fff;font-size:15px;margin:0 0 12px}
  footer a{color:#a9c2e6;text-decoration:none;display:block;margin-bottom:8px}
  footer a:hover{color:#fff}
  footer .bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:24px;padding-top:16px;text-align:center;font-size:13px;opacity:.9}
  footer .bottom a{display:inline-block;margin:0 9px;color:#a9c2e6}
  @media(max-width:820px){footer .fgrid{grid-template-columns:1fr}}
