
/* ==========================================================
   LOCKED WEBSITE FOOTER — CLEAN RESPONSIVE VERSION
   One vertical flow prevents overlap on every screen size.
   ========================================================== */
.locked-site-footer,
.locked-site-footer * {
  box-sizing: border-box !important;
}

.locked-site-footer {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-top: 4px solid #f79332 !important;
  background: #eef8ff !important;
  color: #0a2940 !important;
  text-align: center !important;
}

.locked-footer-art {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
}

.locked-footer-content {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: clamp(13px, 2vw, 24px) !important;
  margin: 0 !important;
  padding: 27% 7% 3.5% !important;
  pointer-events: none !important;
}

.locked-footer-content a {
  pointer-events: auto !important;
}

.locked-footer-group,
.locked-footer-actions,
.locked-footer-bottom {
  position: static !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  width: 100% !important;
  max-width: 620px !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.locked-footer-group {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: clamp(4px, .8vw, 8px) !important;
}

.locked-footer-group h2 {
  margin: 0 0 clamp(2px, .5vw, 5px) !important;
  padding: 0 !important;
  color: #071f34 !important;
  font-size: clamp(22px, 3.8vw, 36px) !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

.locked-footer-group a,
.locked-footer-group > span {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #315f78 !important;
  font-size: clamp(15px, 2.8vw, 25px) !important;
  line-height: 1.22 !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  white-space: normal !important;
}

.locked-footer-actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: clamp(5px, .8vw, 9px) !important;
}

.locked-homecare,
.locked-unsubscribe {
  display: inline-block !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #315f78 !important;
  line-height: 1.2 !important;
  text-decoration: underline !important;
}

.locked-homecare {
  font-size: clamp(17px, 3vw, 27px) !important;
  font-weight: 800 !important;
}

.locked-unsubscribe {
  font-size: clamp(14px, 2.35vw, 21px) !important;
  font-weight: 500 !important;
}

.locked-social {
  gap: clamp(5px, .8vw, 9px) !important;
}

.locked-social a {
  display: flex !important;
  width: min(260px, 76%) !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: clamp(8px, 1.2vw, 13px) !important;
  color: #315f78 !important;
  font-weight: 700 !important;
}

.social-mark {
  display: inline-flex !important;
  width: clamp(25px, 3.5vw, 36px) !important;
  flex: 0 0 clamp(25px, 3.5vw, 36px) !important;
  align-items: center !important;
  justify-content: center !important;
  color: #315f78 !important;
  font-size: clamp(21px, 3.2vw, 32px) !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

.locked-footer-bottom {
  margin-top: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 2px !important;
  color: #f3f9fc !important;
  font-size: clamp(11px, 1.75vw, 17px) !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 4px rgba(0,34,64,.9) !important;
}

@media (max-width: 759px) {
  .locked-footer-content {
    gap: 12px !important;
    padding: 25.5% 6% 3.2% !important;
  }

  .locked-footer-group {
    gap: 4px !important;
  }

  .locked-footer-group h2 {
    font-size: clamp(21px, 5.4vw, 31px) !important;
    margin-bottom: 2px !important;
  }

  .locked-footer-group a,
  .locked-footer-group > span {
    font-size: clamp(15px, 3.7vw, 22px) !important;
    line-height: 1.18 !important;
  }

  .locked-homecare {
    font-size: clamp(17px, 4.2vw, 25px) !important;
  }

  .locked-unsubscribe {
    font-size: clamp(14px, 3.4vw, 20px) !important;
  }

  .locked-social a {
    width: min(245px, 78%) !important;
  }

  .locked-footer-bottom {
    font-size: clamp(10px, 2.7vw, 15px) !important;
  }
}


/* ==========================================================
   FINAL ALIGNMENT PASS V4
   Clears the logo, centres social rows and uses accurate icons.
   ========================================================== */
.locked-footer-content {
  padding-top: 31% !important;
  gap: clamp(12px, 1.8vw, 22px) !important;
}

.locked-social a {
  display: grid !important;
  grid-template-columns: clamp(26px, 3.5vw, 36px) auto !important;
  align-items: center !important;
  justify-content: center !important;
  column-gap: clamp(8px, 1.1vw, 12px) !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  text-align: left !important;
}

.locked-social .social-icon {
  display: block !important;
  width: clamp(25px, 3.4vw, 35px) !important;
  height: clamp(25px, 3.4vw, 35px) !important;
  color: #315f78 !important;
  fill: currentColor !important;
  overflow: visible !important;
}

.locked-social .social-label {
  display: block !important;
  color: #315f78 !important;
  font-size: clamp(15px, 2.8vw, 25px) !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

@media (max-width: 759px) {
  .locked-footer-content {
    padding-top: 31.5% !important;
    padding-left: 6% !important;
    padding-right: 6% !important;
    gap: 11px !important;
  }

  .locked-social a {
    grid-template-columns: 29px auto !important;
    column-gap: 10px !important;
  }

  .locked-social .social-icon {
    width: 29px !important;
    height: 29px !important;
  }

  .locked-social .social-label {
    font-size: clamp(15px, 3.7vw, 22px) !important;
  }
}


/* ==========================================================
   FINAL FOOTER POLISH V5
   Centred quote CTA and fully visible bottom wording.
   ========================================================== */
.locked-footer-content {
  padding-bottom: 4.8% !important;
}

.locked-footer-quote {
  pointer-events: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
  width: min(320px, 76%) !important;
  margin: auto auto 9px !important;
  padding: clamp(11px, 1.5vw, 16px) clamp(22px, 2.8vw, 34px) !important;
  border: 0 !important;
  border-radius: 13px !important;
  background: #0f62fe !important;
  color: #fff !important;
  font-size: clamp(16px, 2.5vw, 25px) !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: 0 7px 20px rgba(15,98,254,.22) !important;
}

.locked-footer-quote:hover,
.locked-footer-quote:focus {
  background: #0b50d4 !important;
}

.locked-footer-bottom {
  margin-top: 0 !important;
  padding: 0 3% !important;
  width: 100% !important;
  max-width: none !important;
  color: #ffffff !important;
  font-size: clamp(11px, 1.65vw, 16px) !important;
  line-height: 1.25 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-align: center !important;
}

.locked-footer-bottom span {
  display: block !important;
  width: 100% !important;
  overflow: visible !important;
  white-space: normal !important;
}

@media (max-width: 759px) {
  .locked-footer-content {
    padding-bottom: 5.8% !important;
  }

  .locked-footer-quote {
    width: min(270px, 80%) !important;
    margin-bottom: 7px !important;
    padding: 11px 20px !important;
    font-size: clamp(16px, 4.1vw, 22px) !important;
  }

  .locked-footer-bottom {
    padding: 0 5% !important;
    font-size: clamp(10px, 2.55vw, 14px) !important;
    line-height: 1.2 !important;
  }
}


/* ==========================================================
   FINAL CORRECTION V6
   Restores copyright at the footer bottom and removes quote CTA.
   ========================================================== */
.locked-footer-quote {
  display: none !important;
}

.locked-footer-content {
  padding-bottom: 5.8% !important;
}

.locked-footer-bottom {
  margin-top: auto !important;
  padding: 0 5% !important;
  width: 100% !important;
  max-width: none !important;
  color: #ffffff !important;
  font-size: clamp(11px, 1.65vw, 16px) !important;
  line-height: 1.25 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow: visible !important;
}

.locked-footer-bottom span {
  display: block !important;
  width: 100% !important;
  white-space: normal !important;
  overflow: visible !important;
}

@media (max-width: 759px) {
  .locked-footer-content {
    padding-bottom: 7.2% !important;
  }

  .locked-footer-bottom {
    padding: 0 7% !important;
    font-size: clamp(10px, 2.55vw, 14px) !important;
    line-height: 1.2 !important;
  }
}

/* Accessible mobile tap targets without changing the footer layout. */
.site-footer a{min-height:44px;display:inline-flex;align-items:center;padding:5px 3px}
