/* Shared site chrome: header, account menu, footer. Loaded on every public page after its own styles. */
.site-header{background:#fff;border-bottom:1px solid #E3E7EE;position:sticky;top:0;z-index:50}
.site-header nav{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}
.site-header .brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#0F2340;flex:none}
.site-header .brand span{font-family:'Space Grotesk',sans-serif;font-size:24px;font-weight:700;letter-spacing:-.5px}
.site-header .brand i{font-style:normal;color:#0B6E4F;font-weight:500;margin:0 1px}
.site-header .navlinks{display:flex;flex-wrap:nowrap;align-items:center;gap:22px;font-size:15px;font-weight:500;font-family:Inter,system-ui,sans-serif}
.site-header .navlinks a.plain{color:#1B2433;text-decoration:none;white-space:nowrap}
.site-header .navlinks a.plain:hover{color:#0B6E4F}
.site-header .btns{display:inline-flex;gap:10px;align-items:center}
.site-header .btn.nav-signin,.site-header .btn.nav-cta{padding:9px 16px;min-height:0;font-size:15px;line-height:1.3;border-radius:8px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer;font-family:inherit}
.site-header .btn.nav-signin{background:#fff;color:#0F2340;border:1.5px solid #C5CFDC}
.site-header .btn.nav-signin:hover{background:#fff;color:#0B6E4F;border-color:#0B6E4F}
.site-header .btn.nav-cta{background:#0B6E4F;color:#fff;border:1.5px solid #0B6E4F}
.site-header .btn.nav-cta:hover{background:#08513A;border-color:#08513A;color:#fff}
.site-header .sm{display:none}
/* account menu (signed-in members) */
.fp-acct{position:relative}
.fp-avatar{width:40px;height:40px;border-radius:50%;background:#0F2340;color:#fff;border:2px solid #fff;box-shadow:0 0 0 1.5px #C5CFDC;font:700 14px 'Space Grotesk',Inter,sans-serif;letter-spacing:.3px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.fp-avatar:hover,.fp-avatar[aria-expanded="true"]{box-shadow:0 0 0 2px #0B6E4F}
.fp-menu{position:absolute;right:0;top:50px;width:260px;background:#fff;border:1px solid #E3E7EE;border-radius:12px;box-shadow:0 12px 32px rgba(15,35,64,.16);padding:8px;display:none;z-index:60;font-family:Inter,system-ui,sans-serif}
.fp-menu.open{display:block}
.fp-menu .who{padding:10px 12px 12px;border-bottom:1px solid #E3E7EE;margin-bottom:6px}
.fp-menu .who strong{display:block;color:#0F2340;font-size:15px;line-height:1.3}
.fp-menu .who span{display:block;color:#4A5568;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fp-menu a,.fp-menu button{display:block;width:100%;text-align:left;background:none;border:0;padding:9px 12px;border-radius:8px;font:500 15px Inter,system-ui,sans-serif;color:#1B2433;text-decoration:none;cursor:pointer}
.fp-menu a:hover,.fp-menu button:hover{background:#F6F7F9;color:#0B6E4F}
.fp-menu hr{border:0;border-top:1px solid #E3E7EE;margin:6px 0}
/* footer */
.site-footer{background:#0F2340;color:#D5DCE8;font-size:14px;font-family:Inter,system-ui,sans-serif;line-height:1.65}
.site-footer .wrap{max-width:1120px;margin:0 auto;padding:40px 24px;display:flex;flex-wrap:wrap;gap:28px;justify-content:space-between}
.site-footer a{color:#D5DCE8}.site-footer a:hover{color:#fff}
.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin-bottom:6px}
.site-footer h2{font-family:Inter,system-ui,sans-serif;font-size:14px;letter-spacing:.8px;text-transform:uppercase;color:#fff;margin:0 0 10px;font-weight:700}
.site-footer .foot-bottom{padding-top:0;padding-bottom:28px;align-items:center;gap:8px 28px}
.site-footer .copy{margin:0}
.legal-links{margin:0;font-size:13px}
.legal-links a{color:inherit}
@media (max-width:1060px){.site-header .navlinks{gap:16px}}
@media (max-width:980px){.site-header .navlinks a.plain{display:none}}
@media (max-width:700px){
  .site-header .lg{display:none}.site-header .sm{display:inline}
  .site-header .btns{gap:8px}
  .site-header .navlinks{gap:8px}
  .site-header .btn.nav-cta{display:none}
  .site-header .btn.nav-signin,.site-header .btn.nav-cta{padding:8px 11px;font-size:14px}
  .site-header .btn.nav-signin svg{display:none}
  .site-header .brand svg{width:34px;height:34px}
  .site-header .brand span{font-size:21px}
  .fp-avatar{width:36px;height:36px}
}
@media (max-width:360px){.site-header .brand span{display:none}}
