/* Shared footer: aligned columns with independent, responsive form sizing. */
.bloom-editorial .bloom-footer {
  background:#fff;color:#202020;border-top:1px solid #dedede;
  padding:72px 40px 28px;font:300 16px/1.65 "Nunito Sans",sans-serif;
  letter-spacing:0;text-transform:none;
}
.bloom-footer,.bloom-footer * {box-sizing:border-box}
.bloom-footer .footer-main {
  max-width:1240px;margin:0 auto;display:grid;
  grid-template-columns:.68fr .68fr 1.35fr 1.65fr;gap:40px;align-items:start;
}
.bloom-footer .footer-column {min-width:0}
.bloom-footer .footer-heading {
  font:400 14px/1.5 "Nunito Sans",sans-serif;letter-spacing:.12em;
  text-transform:uppercase;color:#202020;min-height:3em;margin:0 0 20px;
}
.bloom-footer p {font:inherit;letter-spacing:0;margin:0 0 20px}
.bloom-footer a {color:inherit;font:inherit;letter-spacing:0;text-transform:none;text-decoration:none}
.bloom-footer a:hover {text-decoration:underline;text-underline-offset:4px}
.bloom-footer ul {list-style:none;margin:0;padding:0}
.bloom-footer .footer-links {display:grid;gap:10px}
.bloom-footer .footer-links li {margin:0;padding:0;line-height:1.65}
.bloom-footer .footer-links a {display:inline-block}
.bloom-footer .footer-email {display:inline;overflow-wrap:anywhere;word-break:normal}
.bloom-footer .footer-social-icons {display:flex;gap:16px;align-items:center;margin-top:24px}
.bloom-footer .footer-social-icons a {display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:#444}
.bloom-footer .footer-social-icons svg {width:20px;height:20px;fill:currentColor}
.bloom-footer .footer-newsletter-form {margin-top:22px}
.bloom-footer .footer-email-input {
  display:block;width:100%;min-width:0;min-height:48px;padding:10px 0;
  border:0;border-bottom:1px solid #202020;border-radius:0;background:transparent;
  color:#202020;font:300 16px/1.5 "Nunito Sans",sans-serif;box-shadow:none;
}
.bloom-footer .footer-email-input::placeholder {color:#686868;opacity:1}
.bloom-editorial .bloom-footer .footer-subscribe {
  display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:100%;min-height:48px;
  margin:20px 0 0;padding:12px 24px;border:1px solid #202020;border-radius:999px;
  font:400 14px/1.5 "Nunito Sans",sans-serif;letter-spacing:.035em;text-transform:uppercase;
  color:#202020;background:transparent;cursor:pointer;box-shadow:none;white-space:normal;
}
.bloom-editorial .bloom-footer .footer-subscribe:hover {background:#202020;color:#fff}
.bloom-footer .preview-form-note {font:300 14px/1.6 "Nunito Sans",sans-serif;color:#606060;margin:16px 0 0;letter-spacing:0}
.bloom-footer .footer-bottom {
  max-width:1240px;margin:56px auto 0;padding-top:24px;border-top:1px solid #dedede;
  display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:16px 32px;
  font:300 14px/1.6 "Nunito Sans",sans-serif;
}
.bloom-footer .footer-bottom p {margin:0}
.bloom-footer .footer-legal {display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 24px}
.bloom-footer .bloom-privacy-settings {font:inherit;margin:0;letter-spacing:0;text-transform:none}
.bloom-footer [hidden] {display:none!important}
@media(max-width:1100px) {
  .bloom-footer .footer-main {grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 48px}
  .bloom-footer .footer-heading {min-height:0}
  .bloom-footer .footer-brand,.bloom-footer .footer-newsletter {border-top:1px solid #dedede;padding-top:32px}
}
@media(max-width:600px) {
  .bloom-editorial .bloom-footer {padding:48px 24px 24px}
  .bloom-footer .footer-main {gap:32px 24px}
  .bloom-footer .footer-heading {font-size:14px;letter-spacing:.08em;margin-bottom:16px}
  .bloom-footer .footer-brand,.bloom-footer .footer-newsletter {grid-column:1 / -1;padding-top:28px}
  .bloom-footer .footer-bottom {margin-top:36px;gap:14px}
  .bloom-footer .footer-legal {gap:10px 20px}
}
@media(max-width:340px) {
  .bloom-footer .footer-main {grid-template-columns:1fr}
}
