/* HaraHome footer: presentation only. Existing links, text and handlers retained. */
html body.hhp #hhp-footer {
  --hhf-divider:rgba(232,240,235,.16);
  display:grid !important;
  grid-template-columns:250px minmax(0,1.08fr) minmax(0,1fr) minmax(0,1.08fr) !important;
  grid-template-areas:"brand nav contact newsletter" "legal legal legal legal" "copy copy copy copy" !important;
  align-items:start !important;
  gap:0 28px !important;
  padding:32px max(28px,calc((100% - 1248px)/2)) 20px !important;
  margin:0 !important;
  text-align:left !important;
  box-sizing:border-box !important;
}
html body.hhp #hhp-footer > :is(.hhp-footer-brand-stack,.hhf-nav,.hhf-contact,.hhp-footer-newsletter) {
  min-width:0 !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  align-self:start !important;
}
html body.hhp #hhp-footer .hhp-footer-brand-stack {
  grid-area:brand !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:10px !important;
}
html body.hhp #hhp-footer .hhp-footer-brand-stack > .hhf-brand {
  flex:none !important;
  width:168px !important;
  height:44px !important;
  margin:0 0 6px !important;
}
html body.hhp #hhp-footer .hhp-footer-brand-stack > .hhf-badges,
html body.hhp #hhp-footer .hhp-footer-brand-stack > #hhf-consumer-redress {
  flex:none !important;
  width:250px !important;
  min-width:0 !important;
  max-width:100% !important;
  height:50px !important;
  margin:0 !important;
}
html body.hhp #hhp-footer .hhp-footer-brand-stack .hhf-badges,
html body.hhp #hhp-footer .hhp-footer-brand-stack .hhf-badges > a,
html body.hhp #hhp-footer .hhp-footer-brand-stack .hhf-badges img {
  border-radius:6px !important;
  clip-path:none !important;
  overflow:hidden !important;
  box-shadow:none !important;
}
html body.hhp #hhp-footer .hhp-footer-brand-stack > .hhf-pay {
  flex:none !important;
  width:250px !important;
  max-width:100% !important;
  margin:8px 0 0 !important;
}
html body.hhp #hhp-footer > .hhf-nav { grid-area:nav !important; }
html body.hhp #hhp-footer > .hhf-contact { grid-area:contact !important; }
html body.hhp #hhp-footer .hhf-fold {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}
html body.hhp #hhp-footer .hhf-fold > summary,
html body.hhp #hhp-footer .hhp-footer-newsletter > .hhf-title {
  min-height:24px !important;
  margin:0 0 12px !important;
  padding:0 !important;
  font-family:Inter,"Segoe UI",Arial,sans-serif !important;
  font-size:16px !important;
  font-weight:650 !important;
  line-height:24px !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-align:left !important;
  text-shadow:none !important;
  justify-content:space-between !important;
}
html body.hhp #hhp-footer .hhf-fold > .hhf-fold-body {
  display:block !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
html body.hhp #hhp-footer .hhf-info .hhf-fold-body > a {
  display:block !important;
  width:fit-content !important;
  max-width:100% !important;
  margin:0 !important;
  padding:3px 0 !important;
  font-size:14px !important;
  line-height:20px !important;
}
html body.hhp #hhp-footer .hhf-visible-withdraw {
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  margin:8px 0 0 !important;
  padding:3px 0 !important;
  font-size:13px !important;
  line-height:20px !important;
}
html body.hhp footer.hhf .hhf-visible-withdraw {
  text-decoration:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:3px !important;
}
html body.hhp footer.hhf .hhf-visible-withdraw::after {
  content:none !important;
  display:none !important;
}
html body.hhp #hhp-footer .hhf-contact .hhf-fold-body > p {
  margin:0 0 10px !important;
  padding:0 !important;
  text-align:left !important;
  font-size:14px !important;
  line-height:21px !important;
}
html body.hhp #hhp-footer .hhf-contact .hhf-fold-body > p:last-child { margin-bottom:0 !important; }
html body.hhp #hhp-footer .hhf-contact .hhf-row {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
}
html body.hhp #hhp-footer .hhf-contact .hhf-row > a {
  margin:0 !important;
  padding:0 !important;
  font-size:14px !important;
  line-height:21px !important;
}
html body.hhp #hhp-footer > .hhp-footer-newsletter {
  grid-area:newsletter !important;
  display:flex !important;
  flex-direction:column !important;
  text-align:left !important;
}
html body.hhp #hhp-footer .hhp-footer-newsletter > p {
  margin:0 0 14px !important;
  padding:0 !important;
  font-size:14px !important;
  line-height:21px !important;
  text-align:left !important;
}
html body.hhp #hhp-footer .hhf-sub {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  gap:8px !important;
}
html body.hhp #hhp-footer .hhf-sub > :is(input,a) {
  box-sizing:border-box !important;
  height:46px !important;
  min-height:46px !important;
  padding:11px 14px !important;
  border-radius:5px !important;
  font-size:14px !important;
  line-height:22px !important;
  box-shadow:none !important;
}
html body.hhp #hhp-footer .hhf-sub > input { font-size:16px !important; }
html body.hhp #hhp-footer .hhf-sub > a {
  justify-content:center !important;
  text-align:center !important;
  white-space:normal !important;
  text-decoration:none !important;
}
html body.hhp #hhp-footer > .hhf-company-details {
  grid-area:legal !important;
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:4px 16px !important;
  width:100% !important;
  max-width:none !important;
  margin:22px 0 0 !important;
  padding:16px 0 0 !important;
  border-top:1px solid var(--hhf-divider) !important;
  text-align:center !important;
}
html body.hhp #hhp-footer .hhf-company-details > span {
  display:inline !important;
  flex:0 1 auto !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  font-size:12px !important;
  line-height:18px !important;
  overflow-wrap:anywhere !important;
}
html body.hhp #hhp-footer > p:last-child {
  grid-area:copy !important;
  margin:10px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  text-align:center !important;
  line-height:18px !important;
}
html body.hhp #hhp-footer .hhf-copy {
  display:inline !important;
  margin:0 !important;
  padding:0 !important;
  font-size:12px !important;
  line-height:18px !important;
}
@media (min-width:922px) {
  html body.hhp #hhp-footer .hhf-fold > summary { pointer-events:none !important;cursor:default !important; }
  html body.hhp #hhp-footer .hhf-fold > summary::after { display:none !important; }
}
@media (min-width:600px) and (max-width:1099px) {
  html body.hhp #hhp-footer {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-areas:"brand newsletter" "nav contact" "legal legal" "copy copy" !important;
    gap:24px 32px !important;
    padding:28px 28px 20px !important;
  }
  html body.hhp #hhp-footer > .hhf-company-details { margin-top:0 !important; }
  html body.hhp #hhp-footer > p:last-child { margin-top:-14px !important; }
}
@media (max-width:921px) {
  html body.hhp #hhp-footer,
  html body.hhp #hhp-footer .hhf-fold > .hhf-fold-body,
  html body.hhp #hhp-footer .hhf-contact .hhf-fold-body > p,
  html body.hhp #hhp-footer > .hhp-footer-newsletter,
  html body.hhp #hhp-footer .hhp-footer-newsletter > :is(.hhf-title,p),
  html body.hhp #hhp-footer .hhf-sub > input { text-align:center !important; }
  html body.hhp #hhp-footer .hhp-footer-brand-stack { align-items:center !important; }
  html body.hhp #hhp-footer .hhf-contact .hhf-row { justify-content:center !important; }
  html body.hhp #hhp-footer .hhf-fold:not([open]) > .hhf-fold-body { display:none !important; }
  html body.hhp #hhp-footer .hhf-fold > summary {
    display:flex !important;
    position:relative !important;
    justify-content:center !important;
    text-align:center !important;
    min-height:46px !important;
    margin:0 !important;
    padding:10px 28px !important;
    box-sizing:border-box !important;
    cursor:pointer !important;
    pointer-events:auto !important;
    border-bottom:1px solid var(--hhf-divider) !important;
  }
  html body.hhp #hhp-footer .hhf-fold > summary::after { display:block !important;position:absolute !important;right:4px !important;flex:none !important;margin:0 !important; }
  html body.hhp #hhp-footer .hhf-fold[open] > .hhf-fold-body { padding:6px 0 !important; }
  html body.hhp #hhp-footer .hhf-info .hhf-fold-body > a {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-height:44px !important;
    padding:8px 0 !important;
    box-sizing:border-box !important;
  }
  html body.hhp #hhp-footer .hhf-visible-withdraw {
    display:flex !important;
    justify-content:center !important;
    width:100% !important;
    min-height:44px !important;
    margin:0 !important;
    padding:8px 0 !important;
    box-sizing:border-box !important;
  }
  html body.hhp #hhp-footer .hhf-contact .hhf-row { min-height:44px !important;margin-bottom:0 !important; }
  html body.hhp #hhp-footer .hhf-contact .hhf-row > a { display:flex !important;align-items:center !important;min-height:44px !important; }
}
@media (max-width:599px) {
  html body.hhp #hhp-footer {
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-areas:"brand" "nav" "contact" "newsletter" "legal" "copy" !important;
    gap:0 !important;
    padding:28px 20px calc(88px + env(safe-area-inset-bottom)) !important;
  }
  html body.hhp #hhp-footer > .hhp-footer-brand-stack { align-items:center !important;margin-bottom:20px !important; }
  html body.hhp #hhp-footer > .hhp-footer-newsletter { margin-top:20px !important; }
  html body.hhp #hhp-footer > .hhf-company-details { display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:6px !important;margin-top:22px !important;padding-top:14px !important;text-align:center !important;justify-content:center !important; }
  html body.hhp #hhp-footer .hhf-company-details > span { display:block !important;overflow-wrap:break-word !important; }
  html body.hhp #hhp-footer .hhf-company-details > span:first-child { font-weight:650 !important; }
  html body.hhp #hhp-footer > p:last-child { margin-top:12px !important; }
}
