/* Shared shell: brand tokens, navigation, footer.
   Extracted verbatim from the static build's per-page <style> block. */

:root{--brand-navy:#2b2f5e;--brand-navy-deep:#20244a;--brand-paper:#f4f4f6;--color-accent:#3a4180;--color-accent-500:#3a4180;--color-accent-600:#2b2f5e;--color-accent-700:#272c58;--color-accent-800:#20244a;--color-accent-900:#191d3c;}
body{margin:0;}
a:not([class]){color:var(--color-accent-700);}a:not([class]):hover{color:var(--brand-navy);}
.tg-nav-outer{position:fixed;top:0;left:0;right:0;z-index:60;border-bottom:1px solid transparent;}
.tg-nav-outer[data-ready="1"]{transition:background .28s ease,border-color .28s ease;}
.tg-nav-outer[data-ready="1"] .tg-logo img{transition:filter .28s ease;}
.tg-nav-outer[data-ready="1"] .tg-links > a,.tg-nav-outer[data-ready="1"] .tg-drop > button,.tg-nav-outer[data-ready="1"] .tg-burger span{transition:color .28s ease,background .28s ease;}
.tg-nav-outer[data-mode="over"]{background:transparent;}
.tg-nav-outer[data-mode="solid"]{background:color-mix(in srgb, var(--brand-paper) 94%, transparent);backdrop-filter:blur(10px);border-bottom-color:color-mix(in srgb, var(--brand-navy) 14%, transparent);}
.tg-nav{max-width:1320px;margin:0 auto;padding:0 clamp(20px,4vw,56px);display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;}
.tg-logo{display:block;flex:none;}
.tg-logo img{height:34px;width:auto;display:block;}
.tg-nav-outer[data-mode="over"] .tg-logo img{filter:brightness(0) invert(1);}
.tg-links{display:flex;align-items:center;gap:2px;}
.tg-links > a,.tg-drop > button{font-family:var(--font-heading);font-weight:500;font-size:14px;letter-spacing:0.06em;text-transform:uppercase;text-decoration:none;padding:10px 14px;border:0;background:none;cursor:pointer;color:var(--brand-navy);white-space:nowrap;}
.tg-nav-outer[data-mode="over"] .tg-links > a,.tg-nav-outer[data-mode="over"] .tg-drop > button{color:#fff;}
.tg-links > a:hover,.tg-drop > button:hover{opacity:.62;}
.tg-links > a[aria-current="page"]{position:relative;}
.tg-links > a[aria-current="page"]::after{content:"";position:absolute;left:14px;right:14px;bottom:2px;height:1px;background:currentColor;}
.tg-drop{position:relative;}
.tg-drop > button{display:inline-flex;align-items:center;gap:6px;}
.tg-drop > button svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.5;transition:transform .2s ease;}
.tg-drop[data-open="1"] > button svg{transform:rotate(180deg);}
.tg-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:290px;background:var(--brand-paper);border:1px solid color-mix(in srgb, var(--brand-navy) 16%, transparent);padding:6px;display:none;box-shadow:0 14px 40px color-mix(in srgb, var(--brand-navy) 20%, transparent);}
.tg-drop[data-open="1"] .tg-menu{display:block;}
.tg-menu a{display:block;padding:11px 14px;font-size:14px;text-decoration:none;color:var(--brand-navy);font-family:var(--font-body);line-height:1.35;}
.tg-menu a:hover{background:color-mix(in srgb, var(--brand-navy) 7%, transparent);}
.tg-menu a small{display:block;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;opacity:.5;margin-top:3px;}
.tg-cta{font-family:var(--font-heading);font-weight:600;font-size:13.5px;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;padding:12px 22px;border:1px solid currentColor;color:var(--brand-navy);transition:.22s ease;white-space:nowrap;}
.tg-cta:hover{background:var(--brand-navy);color:var(--brand-paper);border-color:var(--brand-navy);}
.tg-nav-outer[data-mode="over"] .tg-cta{color:#fff;}
.tg-nav-outer[data-mode="over"] .tg-cta:hover{background:#fff;color:var(--brand-navy);border-color:#fff;}
.tg-burger{display:none;background:none;border:0;cursor:pointer;padding:10px;}
.tg-burger span{display:block;width:22px;height:1.5px;background:var(--brand-navy);margin:5px 0;}
.tg-nav-outer[data-mode="over"] .tg-burger span{background:#fff;}
body.tg-pad{padding-top:76px;}
@media (max-width:1080px){
  .tg-burger{display:block;}
  .tg-links{position:absolute;top:100%;left:0;right:0;background:var(--brand-paper);flex-direction:column;align-items:stretch;padding:12px clamp(20px,4vw,56px) 24px;border-bottom:1px solid color-mix(in srgb, var(--brand-navy) 14%, transparent);display:none;}
  .tg-nav-outer[data-open="1"] .tg-links{display:flex;}
  .tg-nav-outer[data-mode="over"] .tg-links > a,.tg-nav-outer[data-mode="over"] .tg-drop > button{color:var(--brand-navy);}
  .tg-links > a,.tg-drop > button{padding:13px 0;width:100%;text-align:left;}
  .tg-menu{position:static;display:block;border:0;box-shadow:none;padding:0 0 0 14px;min-width:0;background:none;}
  .tg-cta{display:none;}
}
.tg-foot{background:var(--brand-navy-deep,#20244a);color:#fff;}
.tg-foot-in{max-width:1320px;margin:0 auto;padding:clamp(56px,7vw,88px) clamp(20px,4vw,56px) 40px;display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(3,1fr);gap:clamp(28px,4vw,56px);}
.tg-foot-brand img{height:38px;width:auto;filter:brightness(0) invert(1);margin-bottom:18px;}
.tg-foot-brand p{font-size:14.5px;line-height:1.65;color:rgba(255,255,255,.62);margin:0 0 20px;max-width:34ch;}
.tg-foot-social{display:flex;gap:10px;}
.tg-foot-social a{width:38px;height:38px;border:1px solid rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;transition:.2s ease;}
.tg-foot-social a:hover{background:#fff;}
.tg-foot-social svg{width:16px;height:16px;stroke:#fff;fill:none;stroke-width:1.5;transition:.2s ease;}
.tg-foot-social a:hover svg{stroke:var(--brand-navy-deep,#20244a);}
.tg-foot-col h6{font-family:var(--font-heading);font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,.42);margin:0 0 16px;font-weight:600;}
.tg-foot-col a,.tg-foot-col span{display:block;font-size:14.5px;line-height:1.5;color:rgba(255,255,255,.82);text-decoration:none;margin-bottom:11px;}
.tg-foot-col a:hover{color:#fff;}
.tg-foot-bottom{border-top:1px solid rgba(255,255,255,.14);}
.tg-foot-bottom-in{max-width:1320px;margin:0 auto;padding:20px clamp(20px,4vw,56px);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12.5px;color:rgba(255,255,255,.45);}
.tg-foot-bottom-in a{color:inherit;text-decoration:none;}
.tg-foot-bottom-in a:hover{color:#fff;}
.tg-foot-legal{display:flex;gap:22px;flex-wrap:wrap;}
@media (max-width:880px){.tg-foot-in{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.tg-foot-in{grid-template-columns:1fr;}}