/*
 * Mighty Generation Network — shared responsive footer v2.
 * Applies to the single .mgn-hs-footer design on every page,
 * independently of whether home.css or footer-only.css was loaded.
 * Breakpoints: wide desktop >=1181; compact desktop 781–1180;
 * tablet 521–780; mobile <=520.
 */
body .mgn-hs-footer {
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:clip;
  padding-top:clamp(25px,3vw,38px);
  padding-bottom:18px;
  background:#083c2e;
  color:#f4faf5;
}
body .mgn-hs-footer > .mgn-hs-wrap {
  width:min(94%,1480px)!important;
  max-width:100%!important;
  margin-inline:auto!important;
  padding-inline:clamp(10px,1.4vw,22px)!important;
  box-sizing:border-box;
  min-width:0;
}
body .mgn-hs-footer .mgn-hs-footer-grid {
  display:grid!important;
  align-items:start!important;
  gap:clamp(18px,2vw,34px)!important;
  width:100%;
  min-width:0;
}
body .mgn-hs-footer .mgn-hs-footer-grid > * {
  min-width:0;
  max-width:100%;
}
body .mgn-hs-footer .mgn-hs-footer-brand{grid-area:brand;max-width:100%;}
body .mgn-hs-footer .mgn-hs-footer-grid > .mgn-hs-footer-links:nth-child(2){grid-area:navone;}
body .mgn-hs-footer .mgn-hs-footer-grid > .mgn-hs-footer-links:nth-child(3){grid-area:navtwo;}
body .mgn-hs-footer .mgn-hs-footer-social{grid-area:social;}
body .mgn-hs-footer .mgn-hs-footer-message{grid-area:message;}
body .mgn-hs-footer .mgn-hs-footer-logo{
  display:flex;align-items:center;gap:10px;
  margin:0 0 16px;
  max-width:100%;
}
body .mgn-hs-footer .mgn-hs-footer-logo span{
  display:block;flex:0 0 66px;width:66px;height:48px;
}
body .mgn-hs-footer .mgn-hs-footer-logo :is(svg,img){
  display:block;width:100%;height:100%;object-fit:contain;
}
body .mgn-hs-footer .mgn-hs-footer-logo strong{
  font-size:17px;line-height:.98;letter-spacing:-.025em;
  overflow-wrap:normal;
}
body .mgn-hs-footer .mgn-hs-footer-brand p {
  font-size:12px;
  line-height:1.5;
  margin:0;
}
body .mgn-hs-footer .mgn-hs-footer-links {
  display:flex;
  flex-direction:column;
  gap:10px;
  align-items:flex-start;
  padding:0;
}
body .mgn-hs-footer .mgn-hs-footer-links a {
  display:inline-block;
  max-width:100%;
  font-size:12px;
  line-height:1.5;
  text-decoration:none;
  white-space:normal;
  overflow-wrap:break-word;
}
body .mgn-hs-footer .mgn-hs-footer-social > strong{
  display:block;font-size:13px;line-height:1.3;margin-bottom:12px;
}
body .mgn-hs-footer .mgn-hs-footer-social > div{
  display:flex;flex-wrap:wrap;gap:10px;
  align-items:center;max-width:100%;
}
body .mgn-hs-footer .mgn-hs-footer-social a {
  display:inline-flex;flex:0 0 32px;
  width:32px;height:32px;min-width:32px;
  justify-content:center;align-items:center;
  font-size:12px;
  line-height:1;
  border-radius:50%;
  background:#f7fbf8;color:#073e31;
}
body .mgn-hs-footer .mgn-hs-footer-message{
  grid-column:auto;
  max-width:100%;
  padding:0 0 0 21px;
  border-left:1px solid rgba(255,255,255,.28);
  border-top:0;
  color:#ffbb22;
  font-size:15px;
  font-style:italic;
  font-weight:850;
  line-height:1.32;
}
body .mgn-hs-footer .mgn-hs-footer-bottom{
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px 28px;
  flex-wrap:wrap;
  min-width:0;
  margin-top:30px!important;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.2);
}
body .mgn-hs-footer .mgn-hs-footer-bottom > span{
  display:block;
  min-width:0;
  max-width:100%;
  line-height:1.7;
  overflow-wrap:break-word;
}
body .mgn-hs-footer .mgn-hs-footer-bottom > span:last-child{
  flex:0 1 auto;
  text-align:right;
  line-height:1.85;
}
body .mgn-hs-footer .mgn-hs-footer-bottom,
body .mgn-hs-footer .mgn-hs-footer-bottom a {
  font-size:11px;
}
body .mgn-hs-footer .mgn-cic-registration{
  display:block;
  font-size:11px;
  line-height:1.55;
  max-width:420px;
  margin-top:8px;
  overflow-wrap:break-word;
}
body .mgn-hs-footer .mgn-cic-registration strong{
  font-weight:800;
}
@media(min-width:1181px){
  body .mgn-hs-footer .mgn-hs-footer-grid{
    grid-template-columns:minmax(0,1.45fr) minmax(0,.67fr) minmax(0,.67fr) minmax(0,1fr) minmax(0,1.14fr)!important;
    grid-template-areas:"brand navone navtwo social message"!important;
    column-gap:clamp(15px,2.6vw,47px)!important;
  }
}
@media(min-width:781px) and (max-width:1180px){
  body .mgn-hs-footer .mgn-hs-footer-grid{
    grid-template-columns:minmax(0,1.5fr) minmax(0,.85fr) minmax(0,.85fr)!important;
    grid-template-areas:
      "brand navone navtwo"
      "social social message"!important;
    gap:30px 25px!important;
  }
  body .mgn-hs-footer .mgn-hs-footer-social{
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.18);
  }
  body .mgn-hs-footer .mgn-hs-footer-message{
    border:0;
    border-top:1px solid rgba(255,255,255,.18);
    padding:18px 0 0;
  }
}
@media(max-width:780px){
  body .mgn-hs-footer{
    padding-block:32px 24px;
  }
  body .mgn-hs-footer > .mgn-hs-wrap{
    width:100%!important;
    padding-inline:clamp(18px,4vw,30px)!important;
  }
  body .mgn-hs-footer .mgn-hs-footer-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:
      "brand social"
      "navone navtwo"
      "message message"!important;
    column-gap:clamp(19px,5vw,40px)!important;
    row-gap:28px!important;
  }
  body .mgn-hs-footer .mgn-hs-footer-logo{
    margin:0 0 14px;
  }
  body .mgn-hs-footer .mgn-hs-footer-links{
    gap:9px;
  }
  body .mgn-hs-footer .mgn-hs-footer-links a{
    font-size:14px;
    line-height:1.6;
  }
  body .mgn-hs-footer .mgn-hs-footer-social a{
    width:40px;height:40px;min-width:40px;flex:0 0 40px;
    font-size:15px;
  }
  body .mgn-hs-footer .mgn-hs-footer-social > strong{
    font-size:14px;
  }
  body .mgn-hs-footer .mgn-hs-footer-message{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.22);
    padding:18px 0 0;
    font-size:17px;
    line-height:1.35;
  }
  body .mgn-hs-footer .mgn-hs-footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
    margin-top:24px!important;
    padding-top:18px;
  }
  body .mgn-hs-footer .mgn-hs-footer-bottom > span:last-child{
    text-align:left;
    max-width:100%;
  }
  body .mgn-hs-footer .mgn-hs-footer-bottom,
  body .mgn-hs-footer .mgn-hs-footer-bottom a,
  body .mgn-hs-footer .mgn-cic-registration{font-size:12px;}
}
@media(max-width:520px){
  body .mgn-hs-footer > .mgn-hs-wrap{
    padding-inline:20px!important;
  }
  body .mgn-hs-footer .mgn-hs-footer-grid{
    grid-template-areas:
      "brand brand"
      "navone navtwo"
      "social social"
      "message message"!important;
    gap:25px 20px!important;
  }
  body .mgn-hs-footer .mgn-hs-footer-brand{
    padding-bottom:3px;
  }
  body .mgn-hs-footer .mgn-hs-footer-logo span{
    width:66px;height:48px;flex-basis:66px;
  }
  body .mgn-hs-footer .mgn-hs-footer-logo strong{
    font-size:18px;
  }
  body .mgn-hs-footer .mgn-hs-footer-brand p{
    font-size:13px;
  }
  body .mgn-hs-footer .mgn-hs-footer-social{
    border-top:1px solid rgba(255,255,255,.18);
    padding-top:20px;
  }
  body .mgn-hs-footer .mgn-hs-footer-social > div{
    gap:13px;
    flex-wrap:wrap;
  }
  body .mgn-hs-footer .mgn-hs-footer-message{
    font-size:16px;
    padding-top:18px;
  }
  body .mgn-hs-footer .mgn-hs-footer-bottom > span,
  body .mgn-hs-footer .mgn-hs-footer-bottom > span:last-child{
    width:100%;
  }
}
@media(max-width:350px){
  body .mgn-hs-footer > .mgn-hs-wrap{padding-inline:16px!important}
  body .mgn-hs-footer .mgn-hs-footer-grid{column-gap:12px!important}
  body .mgn-hs-footer .mgn-hs-footer-links a{font-size:13px}
}
@media(prefers-reduced-motion:reduce){
  body .mgn-hs-footer *{transition:none!important;animation:none!important}
}
