/* MyStationHub canonical public footer.
   One design for homepage (incl. Products/Resources and FAQ state), pricing,
   standalone FAQ, Get Started, Sign In and legal pages. No app/collector logic.
   Back to Top is intentionally not restyled or repositioned. */
html body :is(footer.site-footer,footer.msh-public-footer,footer.footer,footer.msh-legal-footer,footer.msh-standalone-public-footer):has(> .msh-standard-footer){
 display:block!important;
 position:relative;
 box-sizing:border-box;
 width:100%;
 max-width:none!important;
 min-height:0!important;
 height:auto!important;
 margin:0!important;
 padding:0!important;
 overflow:visible;
 border-top:1px solid #e2ebf1!important;
 background:linear-gradient(180deg,#f8fbfd 0%,#fff 100%)!important;
 color:#263b4c;
}
html body .msh-standard-footer,
html body .msh-standard-footer *{box-sizing:border-box;}
html body .msh-standard-footer{
 display:block;
 width:min(calc(100% - 64px),1280px);
 max-width:1280px;
 height:auto!important;
 min-height:0!important;
 margin:0 auto;
 padding:26px 0 19px;
 font:14px/1.5 var(--msh-interface-font,Inter,ui-sans-serif,-apple-system,"Segoe UI",Arial,sans-serif);
 letter-spacing:0;
 text-align:left;
 color:#324b5c;
}
html body .msh-standard-footer-top{
 /* Center the identity independently of the support shortcut. */
 position:relative;
 display:grid;grid-template-columns:minmax(0,1fr);
 justify-items:center;align-items:center;
 gap:0;padding:0 0 21px;margin:0;
 text-align:center;
}
html body .msh-standard-footer-brand{
 display:flex;flex-direction:column;align-items:center;
 min-width:0;width:100%;text-align:center;
}
html body .msh-standard-footer-logo{
 display:inline-block;
 margin-inline:auto!important;
 text-align:center!important;
 color:#192c3c!important;
 font:850 27px/1.15 var(--msh-heading-font,Inter,"Segoe UI",Arial,sans-serif)!important;
 letter-spacing:-.05em;
 text-decoration:none!important;
 white-space:nowrap;
}
html body .msh-standard-footer-logo span{color:#0caff1;}
html body .msh-standard-footer-brand p{
 display:block;width:100%;
 text-align:center!important;
 margin:8px 0 0!important;
 font-size:13px!important;
 line-height:1.5!important;
 font-weight:450!important;
 color:#627c8e!important;
}
html body .msh-standard-footer-brand p span{display:block;text-align:center!important;}
html body .msh-standard-footer-support{
 position:absolute;right:0;top:50%;transform:translateY(-50%);
 display:grid;place-items:center;
 width:38px;height:38px;
 padding:0!important;
 border:1px solid #d4e7f2;border-radius:50%;
 background:#fff;
 color:#365c73!important;
 box-shadow:0 2px 8px rgba(19,61,94,.04);
}
html body .msh-standard-footer-support:hover{color:#078ab8!important;background:#edf8fc;}
html body .msh-standard-footer-links{
 display:grid!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 align-items:start!important;justify-content:stretch!important;
 gap:16px 22px!important;
 width:100%;max-width:none;
 margin:0!important;padding:19px 0 22px!important;
 border-top:1px solid #dce7ee;
 border-bottom:1px solid #dce7ee;
 color:#3b5264!important;
 text-align:left!important;
}
html body .msh-standard-footer-link{
 display:flex;align-items:center;gap:9px;min-width:0;
}
html body .msh-standard-footer-link svg{
 flex:0 0 18px;width:18px;height:18px;
 color:#54768e;
}
html body .msh-standard-footer-links a{
 display:inline!important;
 width:auto!important;min-width:0;
 margin:0!important;padding:0!important;
 color:#3b5264!important;
 font-size:13px!important;
 font-weight:550!important;
 line-height:1.5!important;
 text-decoration:none!important;
 white-space:normal!important;
 overflow-wrap:normal;
}
html body .msh-standard-footer-links a:hover{color:#008fbe!important;}
html body .msh-standard-footer-support:focus-visible,
html body .msh-standard-footer-links a:focus-visible{
 outline:3px solid #8bd4f3!important;
 outline-offset:3px;
 border-radius:4px;
}
html body .msh-standard-footer-bottom{
 display:block;min-height:0!important;
 margin:0!important;padding:16px 0 0!important;
}
html body .msh-standard-footer-bottom small{
 color:#8294a2!important;
 font-size:12px!important;line-height:1.5;
}
/* Browser chrome / iPhone safe-area: leave modest breathing room, not a
   blank screen below the footer. Preserve the pre-existing floating arrow. */
@media(max-width:760px){
 /* The final public homepage CTA should end near the footer. */
 html body .page-shell > main > section.section:last-child{padding-bottom:30px;}
 html body .msh-standard-footer{
  width:calc(100% - 44px);
  padding-top:25px;
  padding-bottom:calc(19px + env(safe-area-inset-bottom,0px));
 }
 html body .msh-standard-footer-top{padding-bottom:18px;}
 html body .msh-standard-footer-links{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:17px 16px!important;
  padding:19px 0 22px!important;
 }
 html body .msh-standard-footer-link{gap:8px;}
 html body .msh-standard-footer-link svg{flex-basis:17px;width:17px;height:17px;}
 html body .msh-standard-footer-links a{font-size:13px!important;}
}
@media(max-width:360px){
 /* On very narrow phones, move Support below the tagline to avoid overlap. */
 html body .msh-standard-footer-support{position:static;top:auto;right:auto;transform:none;margin:12px auto 0;}
 html body .msh-standard-footer{width:calc(100% - 32px);}
 html body .msh-standard-footer-links{column-gap:10px!important;}
 html body .msh-standard-footer-links a{font-size:12px!important;}
}
/* The FAQ iframe used inside the public or signed-in workspace must not
   render a second footer. Standalone FAQ stays consistent. */
body.msh-faq-embedded footer.footer:has(> .msh-standard-footer){display:none!important;}
/* Equipment-visibility panel is never allowed to cover the link grid at
   the end of public marketing pages. Restore it when scrolling up.
   This does NOT change the Back to Top button. */
body.msh-standard-footer-in-view .msh-vm-floating-label.msh-vm-floating-fixed:not([hidden]){
 opacity:0!important;
 visibility:hidden!important;
 pointer-events:none!important;
}
@media(prefers-reduced-motion:reduce){
 html body .msh-standard-footer *{scroll-behavior:auto!important;transition:none!important;}
}
