/* Vantora global footer lock and legal alignment */
html,body{min-height:100%}
body{min-height:100vh;display:flex;flex-direction:column}
body>main{flex:1 0 auto;width:100%}
.site-footer,body>footer{flex:0 0 auto;width:100%;margin-top:auto}

.site-footer .container{width:min(calc(100% - 56px),1240px);margin-inline:auto}
.site-footer .footer-top{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(180px,.55fr) minmax(280px,1fr)!important;gap:clamp(36px,5vw,72px)!important;align-items:start!important;padding-bottom:44px!important}
.site-footer .footer-brand,.site-footer .footer-col{min-width:0}
.site-footer .footer-brand{padding-right:0!important}
.site-footer .footer-brand p{max-width:460px!important;margin-top:18px!important;line-height:1.72!important}
.site-footer .footer-links{display:grid!important;gap:10px!important}
.site-footer .footer-links a{width:auto!important;max-width:100%;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.site-footer .contact-line{min-width:0}
.site-footer .contact-line strong,.site-footer .contact-line a{display:block;max-width:100%;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}

.site-footer .footer-bottom{display:grid!important;grid-template-columns:1fr!important;justify-items:center!important;align-items:center!important;gap:12px!important;width:100%;padding:22px 0 26px!important;text-align:center!important}
.site-footer .footer-bottom>span{display:block;width:100%;text-align:center!important}
.site-footer .footer-legal{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:22px!important;width:100%;text-align:center!important}
.site-footer .footer-legal a{white-space:nowrap!important}

@media(max-width:900px){
  .site-footer .container{width:min(calc(100% - 32px),1240px)}
  .site-footer .footer-top{grid-template-columns:1fr 1fr!important;gap:34px!important}
  .site-footer .footer-brand{grid-column:1/-1}
  .site-footer .footer-brand p{max-width:620px!important}
}
@media(max-width:640px){
  .site-footer .footer-top{grid-template-columns:1fr!important;gap:30px!important;padding-bottom:34px!important}
  .site-footer .footer-brand{grid-column:auto}
  .site-footer .footer-bottom{gap:10px!important}
  .site-footer .footer-legal{gap:14px!important}
}
