/* HSM R13.146 final public presentation layer.
   Loaded last on public pages. It intentionally preserves prior functional CSS. */
:root{
  --hsm-navy:#06265f;
  --hsm-navy-2:#0a3a83;
  --hsm-gold:#d6aa3a;
  --hsm-gold-soft:#f3e4b0;
  --hsm-ink:#14213d;
  --hsm-muted:#5f6f86;
  --hsm-line:rgba(6,38,95,.16);
  --hsm-surface:#ffffff;
  --hsm-surface-soft:#f6f8fc;
  --hsm-shadow:0 14px 38px rgba(10,28,64,.10);
  --hsm-radius:18px;
}
html{scroll-behavior:smooth;overflow-x:hidden}
body:not(.hsm-member-glassy-blue){margin:0;color:var(--hsm-ink);background:linear-gradient(180deg,#fff 0,#f8faff 55%,#f3f6fb 100%);font-family:Arial,Helvetica,sans-serif;line-height:1.6;overflow-wrap:anywhere}
body:not(.hsm-member-glassy-blue) main{min-height:55vh}
body:not(.hsm-member-glassy-blue) img{max-width:100%;height:auto}
body:not(.hsm-member-glassy-blue) .topbar{background:linear-gradient(90deg,#041c48,#073276);color:#fff;border-bottom:1px solid rgba(255,255,255,.14)}
body:not(.hsm-member-glassy-blue) .top-inner{max-width:1240px;margin:0 auto;padding:.52rem 1rem;display:flex;align-items:center;gap:.85rem;min-height:42px}
body:not(.hsm-member-glassy-blue) .top-welcome{flex:1;text-align:center;font-size:.92rem;letter-spacing:.02em}
body:not(.hsm-member-glassy-blue) .member-pill,
body:not(.hsm-member-glassy-blue) .train-top-pill{display:inline-flex;align-items:center;gap:.4rem;min-height:34px;padding:.38rem .72rem;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#fff;text-decoration:none;background:rgba(255,255,255,.08);white-space:nowrap}
body:not(.hsm-member-glassy-blue) .member-pill:hover,
body:not(.hsm-member-glassy-blue) .train-top-pill:hover{background:rgba(255,255,255,.16);transform:translateY(-1px)}
body:not(.hsm-member-glassy-blue) .top-actions{display:flex;align-items:center;gap:.42rem}
body:not(.hsm-member-glassy-blue) .language-form{display:flex;align-items:center;gap:.3rem;margin:0}
body:not(.hsm-member-glassy-blue) .language-form select{min-height:34px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#fff;color:var(--hsm-navy);padding:.25rem .45rem}
body:not(.hsm-member-glassy-blue) .social-link{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;text-decoration:none;background:rgba(255,255,255,.09);color:#fff;border:1px solid rgba(255,255,255,.17)}
body:not(.hsm-member-glassy-blue) .social-link:hover{background:rgba(214,170,58,.28);border-color:rgba(243,228,176,.68)}
body:not(.hsm-member-glassy-blue) .brandbar{background:#fff;border-bottom:1px solid var(--hsm-line)}
body:not(.hsm-member-glassy-blue) .brand-inner{max-width:1240px;margin:0 auto;padding:.9rem 1rem}
body:not(.hsm-member-glassy-blue) .brand-mark{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:.9rem;align-items:center;text-decoration:none;color:var(--hsm-navy);width:max-content;max-width:100%}
body:not(.hsm-member-glassy-blue) .brand-mark img{grid-row:1/3;width:62px;height:62px;object-fit:contain;filter:drop-shadow(0 7px 10px rgba(6,38,95,.12))}
body:not(.hsm-member-glassy-blue) .brand-name{font-size:clamp(1.25rem,2vw,1.72rem);font-weight:800;line-height:1.08;letter-spacing:-.02em;white-space:nowrap}
body:not(.hsm-member-glassy-blue) .brand-tagline{font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8b6818}
body:not(.hsm-member-glassy-blue) .nav{background:rgba(255,255,255,.96);border-bottom:1px solid var(--hsm-line);box-shadow:0 6px 22px rgba(6,38,95,.055);position:relative;z-index:20}
body:not(.hsm-member-glassy-blue) .nav-inner{max-width:1280px;margin:0 auto;padding:.45rem .8rem;display:flex;align-items:center;justify-content:center;gap:.16rem;flex-wrap:wrap}
body:not(.hsm-member-glassy-blue) .nav-inner>a{display:flex;align-items:center;min-height:42px;padding:.55rem .68rem;border-radius:11px;color:var(--hsm-navy);font-size:.92rem;font-weight:700;text-decoration:none;line-height:1.15;transition:background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}
body:not(.hsm-member-glassy-blue) .nav-inner>a:hover,
body:not(.hsm-member-glassy-blue) .nav-inner>a.active{background:linear-gradient(180deg,rgba(6,38,95,.08),rgba(6,38,95,.04));color:#031c48;box-shadow:inset 0 0 0 1px rgba(6,38,95,.10);transform:translateY(-1px)}
body:not(.hsm-member-glassy-blue) .nav-inner>a.search-btn{width:42px;justify-content:center;padding:.5rem}
body:not(.hsm-member-glassy-blue) .nav-toggle{border:1px solid var(--hsm-line);border-radius:10px;background:#fff;color:var(--hsm-navy);font-weight:800;padding:.55rem .8rem}
body:not(.hsm-member-glassy-blue) main>.section,
body:not(.hsm-member-glassy-blue) main .section{width:min(1180px,calc(100% - 2rem));margin-inline:auto;padding-block:clamp(1.25rem,2vw,2.25rem)}
body:not(.hsm-member-glassy-blue) .card,
body:not(.hsm-member-glassy-blue) article.card{background:rgba(255,255,255,.96);border:1px solid var(--hsm-line);border-radius:var(--hsm-radius);box-shadow:var(--hsm-shadow);padding:clamp(1rem,2vw,1.55rem)}
body:not(.hsm-member-glassy-blue) h1,
body:not(.hsm-member-glassy-blue) h2,
body:not(.hsm-member-glassy-blue) h3{color:var(--hsm-navy);text-wrap:balance;line-height:1.16}
body:not(.hsm-member-glassy-blue) h1{font-size:clamp(2rem,4.2vw,3.6rem);letter-spacing:-.035em;margin-top:.2em}
body:not(.hsm-member-glassy-blue) h2{font-size:clamp(1.45rem,2.5vw,2.25rem);letter-spacing:-.02em}
body:not(.hsm-member-glassy-blue) p{max-width:78ch}
body:not(.hsm-member-glassy-blue) .resource-kicker,
body:not(.hsm-member-glassy-blue) .kicker,
body:not(.hsm-member-glassy-blue) .eyebrow{display:inline-block;color:#7b5a13;font-weight:800;letter-spacing:.09em;text-transform:uppercase;font-size:.78rem}
body:not(.hsm-member-glassy-blue) input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
body:not(.hsm-member-glassy-blue) select,
body:not(.hsm-member-glassy-blue) textarea{max-width:100%;min-height:44px;border:1.2pt solid rgba(6,38,95,.28);border-radius:11px;background:#fff;color:var(--hsm-ink);padding:.68rem .78rem;box-sizing:border-box}
body:not(.hsm-member-glassy-blue) textarea{min-height:120px;resize:vertical}
body:not(.hsm-member-glassy-blue) input:focus,
body:not(.hsm-member-glassy-blue) select:focus,
body:not(.hsm-member-glassy-blue) textarea:focus{border-color:var(--hsm-navy-2);box-shadow:0 0 0 3px rgba(10,58,131,.12);outline:none}
body:not(.hsm-member-glassy-blue) button,
body:not(.hsm-member-glassy-blue) .button,
body:not(.hsm-member-glassy-blue) .btn{min-height:42px;border-radius:11px;font-weight:800;cursor:pointer}
body:not(.hsm-member-glassy-blue) table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--hsm-line);border-radius:14px;overflow:hidden}
body:not(.hsm-member-glassy-blue) th{background:#f0f4fb;color:var(--hsm-navy);font-weight:800;text-align:left}
body:not(.hsm-member-glassy-blue) th,
body:not(.hsm-member-glassy-blue) td{padding:.72rem .8rem;border-bottom:1px solid rgba(6,38,95,.09);vertical-align:top}
body:not(.hsm-member-glassy-blue) tr:last-child td{border-bottom:0}
body:not(.hsm-member-glassy-blue) .footer{margin-top:clamp(2rem,5vw,5rem);background:linear-gradient(135deg,#041c48,#082e69);color:#eef4ff;border-top:4px solid var(--hsm-gold)}
body:not(.hsm-member-glassy-blue) .footer-grid{max-width:1180px;margin:0 auto;padding:2.4rem 1rem 1.6rem;display:grid;grid-template-columns:1.25fr .8fr 1fr;gap:2rem}
body:not(.hsm-member-glassy-blue) .footer h3{color:#fff;margin-top:0}
body:not(.hsm-member-glassy-blue) .footer a{color:#fff;text-underline-offset:3px}
body:not(.hsm-member-glassy-blue) .footer a:hover{color:var(--hsm-gold-soft)}
body:not(.hsm-member-glassy-blue) .footer-logo{width:78px;filter:drop-shadow(0 8px 12px rgba(0,0,0,.24))}
body:not(.hsm-member-glassy-blue) .footer .copy{max-width:none;text-align:center;margin:0;padding:1rem;border-top:1px solid rgba(255,255,255,.12);font-size:.88rem;color:#dbe7fb}
body:not(.hsm-member-glassy-blue) :focus-visible{outline:3px solid #f0bf43!important;outline-offset:3px!important}
body:not(.hsm-member-glassy-blue) a,body:not(.hsm-member-glassy-blue) button{touch-action:manipulation}
@media (max-width:980px){
  body:not(.hsm-member-glassy-blue) .top-inner{flex-wrap:wrap;justify-content:center}
  body:not(.hsm-member-glassy-blue) .top-welcome{order:-1;flex-basis:100%}
  body:not(.hsm-member-glassy-blue) .nav-inner{justify-content:flex-start}
  body:not(.hsm-member-glassy-blue) .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
  body:not(.hsm-member-glassy-blue) .top-actions{flex-wrap:wrap;justify-content:center}
  body:not(.hsm-member-glassy-blue) .brand-inner{padding:.7rem .9rem}
  body:not(.hsm-member-glassy-blue) .brand-mark img{width:52px;height:52px}
  body:not(.hsm-member-glassy-blue) .brand-name{white-space:normal}
  body:not(.hsm-member-glassy-blue) .brand-tagline{letter-spacing:.07em}
  body:not(.hsm-member-glassy-blue) main>.section,
  body:not(.hsm-member-glassy-blue) main .section{width:min(100% - 1rem,1180px);padding-block:1rem}
  body:not(.hsm-member-glassy-blue) .card{border-radius:14px;padding:1rem}
  body:not(.hsm-member-glassy-blue) .footer-grid{grid-template-columns:1fr;gap:1.2rem}
  body:not(.hsm-member-glassy-blue) table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media print{
  .topbar,.brandbar,.nav,.footer,.nav-toggle{display:none!important}
  body:not(.hsm-member-glassy-blue){background:#fff!important;color:#000!important}
  main{width:100%!important;margin:0!important;padding:0!important}
  .card{box-shadow:none!important;border:1px solid #bbb!important}
}

/* R13.147 shared navigation + footer information architecture cleanup */
body:not(.hsm-member-glassy-blue) .top-inner{max-width:1320px;min-height:38px;padding:.38rem 1rem;gap:1rem}
body:not(.hsm-member-glassy-blue) .hsm-utility-links{display:flex;align-items:center;gap:.22rem;flex-wrap:wrap}
body:not(.hsm-member-glassy-blue) .hsm-utility-links a,
body:not(.hsm-member-glassy-blue) .hsm-utility-contact{color:#fff;text-decoration:none;font-size:.84rem;font-weight:700;padding:.34rem .52rem;border-radius:8px;white-space:nowrap}
body:not(.hsm-member-glassy-blue) .hsm-utility-links a:hover,
body:not(.hsm-member-glassy-blue) .hsm-utility-contact:hover{background:rgba(255,255,255,.12);color:#fff}
body:not(.hsm-member-glassy-blue) .top-welcome{font-size:.8rem;font-weight:800;letter-spacing:.10em;text-transform:uppercase;color:#f6df9c}
body:not(.hsm-member-glassy-blue) .brand-inner{display:flex;justify-content:center;align-items:center;padding:.62rem 1rem}
body:not(.hsm-member-glassy-blue) .brand-mark{grid-template-columns:auto auto;column-gap:.75rem}
body:not(.hsm-member-glassy-blue) .brand-mark img{width:58px;height:58px}
body:not(.hsm-member-glassy-blue) .brand-name{font-size:clamp(1.3rem,1.9vw,1.72rem)}
body:not(.hsm-member-glassy-blue) .nav-inner{gap:.24rem;padding:.48rem 1rem}
body:not(.hsm-member-glassy-blue) .nav-inner>a{padding:.56rem .78rem;font-size:.91rem}
@media (min-width:901px){
  body:not(.hsm-member-glassy-blue) .nav-toggle{display:none!important}
  body:not(.hsm-member-glassy-blue) .nav-inner{display:flex!important}
}

body:not(.hsm-member-glassy-blue) .hsm-site-footer{margin-top:clamp(2.5rem,5vw,5.5rem);background:linear-gradient(145deg,#031a42 0%,#06265f 48%,#083675 100%);color:#eef4ff;border-top:4px solid var(--hsm-gold)}
body:not(.hsm-member-glassy-blue) .hsm-footer-cta-wrap{border-bottom:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.035)}
body:not(.hsm-member-glassy-blue) .hsm-footer-cta{max-width:1240px;margin:0 auto;padding:1.45rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
body:not(.hsm-member-glassy-blue) .hsm-footer-cta-copy{display:grid;gap:.12rem;min-width:0}
body:not(.hsm-member-glassy-blue) .hsm-footer-eyebrow{font-size:.72rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#f0cf74}
body:not(.hsm-member-glassy-blue) .hsm-footer-cta-copy strong{font-size:clamp(1.12rem,2vw,1.55rem);line-height:1.15;color:#fff}
body:not(.hsm-member-glassy-blue) .hsm-footer-cta-copy>span:last-child{font-size:.9rem;color:#d7e3f6}
body:not(.hsm-member-glassy-blue) .hsm-footer-cta-actions{display:flex;gap:.55rem;flex-wrap:wrap;justify-content:flex-end}
body:not(.hsm-member-glassy-blue) .hsm-footer-action{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.5rem .82rem;border:1px solid rgba(255,255,255,.25);border-radius:10px;color:#fff!important;text-decoration:none!important;font-size:.84rem;font-weight:800;background:rgba(255,255,255,.07)}
body:not(.hsm-member-glassy-blue) .hsm-footer-action:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.42);transform:translateY(-1px)}
body:not(.hsm-member-glassy-blue) .hsm-footer-action-primary{background:linear-gradient(180deg,#e3bd59,#c99a28)!important;border-color:#f1d889!important;color:#10254a!important;box-shadow:0 7px 18px rgba(0,0,0,.18)}
body:not(.hsm-member-glassy-blue) .hsm-footer-grid{max-width:1240px;margin:0 auto;padding:2rem 1rem 1.65rem;display:grid;grid-template-columns:minmax(250px,1.35fr) repeat(4,minmax(145px,.78fr));gap:clamp(1.25rem,2.5vw,2.25rem);align-items:start}
body:not(.hsm-member-glassy-blue) .hsm-footer-brand{min-width:0}
body:not(.hsm-member-glassy-blue) .hsm-footer-brandmark{display:flex;align-items:center;gap:.75rem;color:#fff!important;text-decoration:none!important;width:max-content;max-width:100%;margin-bottom:.9rem}
body:not(.hsm-member-glassy-blue) .hsm-footer-brandmark .footer-logo{width:86px;height:70px;object-fit:contain;margin:0;filter:drop-shadow(0 9px 16px rgba(0,0,0,.26))}
body:not(.hsm-member-glassy-blue) .hsm-footer-brandmark span{display:grid;gap:.16rem}
body:not(.hsm-member-glassy-blue) .hsm-footer-brandmark strong{font-size:1.04rem;line-height:1.1;color:#fff}
body:not(.hsm-member-glassy-blue) .hsm-footer-brandmark small{font-size:.69rem;line-height:1.2;text-transform:uppercase;letter-spacing:.11em;color:#e9ca72;font-weight:800}
body:not(.hsm-member-glassy-blue) .hsm-footer-brand p{margin:.4rem 0 1rem;color:#dce7f8;font-size:.91rem;line-height:1.58;max-width:36ch}
body:not(.hsm-member-glassy-blue) .hsm-footer-contact{display:grid;gap:.34rem;font-style:normal}
body:not(.hsm-member-glassy-blue) .hsm-footer-contact a{color:#fff!important;text-decoration:none!important;font-size:.88rem;width:max-content;max-width:100%}
body:not(.hsm-member-glassy-blue) .hsm-footer-contact a:hover{text-decoration:underline!important;text-underline-offset:3px}
body:not(.hsm-member-glassy-blue) .hsm-footer-nav h3{margin:0 0 .72rem;color:#f4d982;font-size:.78rem;line-height:1.2;text-transform:uppercase;letter-spacing:.11em;font-weight:900}
body:not(.hsm-member-glassy-blue) .hsm-footer-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:.12rem}
body:not(.hsm-member-glassy-blue) .hsm-footer-nav li{margin:0;padding:0}
body:not(.hsm-member-glassy-blue) .hsm-footer-nav a{display:block;color:#f4f7fc!important;text-decoration:none!important;font-size:.88rem;line-height:1.35;padding:.32rem 0;border-bottom:1px solid transparent}
body:not(.hsm-member-glassy-blue) .hsm-footer-nav a:hover{color:#fff!important;text-decoration:underline!important;text-decoration-color:#d6aa3a!important;text-decoration-thickness:2px!important;text-underline-offset:4px!important}
body:not(.hsm-member-glassy-blue) .hsm-footer-bottom{max-width:1240px;margin:0 auto;padding:.9rem 1rem 1.05rem;border-top:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#cfdcf0}
body:not(.hsm-member-glassy-blue) .hsm-footer-bottom .copy{padding:0;border:0;text-align:left;margin:0;font-size:.8rem;color:#cfdcf0}
body:not(.hsm-member-glassy-blue) .hsm-footer-legal{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:flex-end}
body:not(.hsm-member-glassy-blue) .hsm-footer-legal a{color:#dbe6f7!important;text-decoration:none!important;font-size:.8rem}
body:not(.hsm-member-glassy-blue) .hsm-footer-legal a:hover{color:#fff!important;text-decoration:underline!important;text-underline-offset:3px!important}

@media (max-width:1120px){
  body:not(.hsm-member-glassy-blue) .hsm-footer-grid{grid-template-columns:1.25fr repeat(2,1fr)}
  body:not(.hsm-member-glassy-blue) .hsm-footer-brand{grid-row:span 2}
}
@media (max-width:900px){
  body:not(.hsm-member-glassy-blue) .top-inner{justify-content:center;gap:.45rem}
  body:not(.hsm-member-glassy-blue) .hsm-utility-links{justify-content:center}
  body:not(.hsm-member-glassy-blue) .top-welcome{order:3;flex-basis:100%;text-align:center}
  body:not(.hsm-member-glassy-blue) .top-actions{justify-content:center}
  body:not(.hsm-member-glassy-blue) .hsm-footer-cta{align-items:flex-start;flex-direction:column}
  body:not(.hsm-member-glassy-blue) .hsm-footer-cta-actions{justify-content:flex-start}
  body:not(.hsm-member-glassy-blue) .hsm-footer-grid{grid-template-columns:1fr 1fr}
  body:not(.hsm-member-glassy-blue) .hsm-footer-brand{grid-column:1/-1;grid-row:auto}
}
@media (max-width:620px){
  body:not(.hsm-member-glassy-blue) .hsm-utility-contact{display:none}
  body:not(.hsm-member-glassy-blue) .hsm-utility-links{width:100%;display:grid;grid-template-columns:1fr 1fr;text-align:center}
  body:not(.hsm-member-glassy-blue) .brand-inner{justify-content:flex-start}
  body:not(.hsm-member-glassy-blue) .hsm-footer-cta-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  body:not(.hsm-member-glassy-blue) .hsm-footer-grid{grid-template-columns:1fr;gap:1.1rem;padding-top:1.5rem}
  body:not(.hsm-member-glassy-blue) .hsm-footer-brand{grid-column:auto}
  body:not(.hsm-member-glassy-blue) .hsm-footer-nav{padding-top:.85rem;border-top:1px solid rgba(255,255,255,.10)}
  body:not(.hsm-member-glassy-blue) .hsm-footer-bottom{align-items:flex-start;flex-direction:column}
  body:not(.hsm-member-glassy-blue) .hsm-footer-legal{justify-content:flex-start}
}

/* R13.153 branding lock: legacy layers must not turn the organization lockup into an oval/pill. */
body:not(.hsm-member-glassy-blue) .brandbar .brand-mark,
body:not(.hsm-member-glassy-blue) .brandbar .brand-name,
body:not(.hsm-member-glassy-blue) .brandbar .brand-tagline,
body:not(.hsm-member-glassy-blue) .hsm-footer-brandmark{
  border-radius:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body:not(.hsm-member-glassy-blue) .brandbar .brand-mark{padding:0!important;overflow:visible!important}
body:not(.hsm-member-glassy-blue) .brandbar .brand-mark img{border-radius:0!important;background:transparent!important;box-shadow:none!important}
