/* Additive semantic/accessibility rules; approved stylesheet order is unchanged. */
.f-col .ssmi-footer-heading{font-size:.64rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--lime);margin-bottom:1rem}
.ssmi-skip{position:fixed;left:1rem;top:1rem;z-index:1000;transform:translateY(-200%);padding:.8rem 1rem;background:#fff;color:#071F38;font-weight:700}
.ssmi-skip:focus{transform:none;outline:3px solid #071F38;outline-offset:3px}
:where(main,section,article,details,input,select,textarea,button,a)[id]{scroll-margin-top:var(--ssmi-nav-offset,calc(var(--navh,98px) + 20px))}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.hero-video[hidden]{display:none!important}
.f-base > span:last-child{display:flex;flex-wrap:wrap;gap:.2rem 1.2rem}
.f-base a{display:inline-flex;align-items:center;min-height:24px;margin-left:0}
/* Native control min-content widths vary by OS/user font. Let grid children
   shrink within the approved tracks instead of clipping enlarged text/forms. */
.ql-grid > *,.form-grid > *,.frm > *{min-width:0}
.ql,.form-grid{overflow-wrap:anywhere}
.frm input,.frm select,.frm textarea,.frm button{min-width:0;max-width:100%}
.frm button{white-space:normal}
