/* Footer styles extracted from the existing packaging family; no guide-body rules. */
:root{
  --bp7140-paper: #fbfaf6;
  --bp7140-paper-warm: #f4f1e9;
  --bp7140-paper-deep: #ebe6dc;
  --bp7140-ink: #102f29;
  --bp7140-ink-soft: #35544d;
  --bp7140-ink-muted: #667a74;
  --bp7140-line: rgba(16, 47, 41, 0.14);
  --bp7140-line-strong: rgba(16, 47, 41, 0.26);
  --bp7140-green: #08a678;
  --bp7140-green-deep: #087258;
  --bp7140-blue: #1d6692;
  --bp7140-blue-soft: #eaf3f8;
  --bp7140-white: #fff;
  --bp7140-shadow: 0 26px 70px rgba(16, 47, 41, 0.11);
  --bp7140-shadow-soft: 0 12px 40px rgba(16, 47, 41, 0.075);
  --bp7140-shell: min(1240px, calc(100vw - 64px));
  --bp7140-copy: 760px;
  --bp7140-radius: 26px;
  --bp7140-radius-sm: 16px;
  --bp7140-ease: cubic-bezier(.22, .8, .2, 1);
}
.bp7140-shell{
  width: var(--bp7140-shell);
  margin-inline: auto;
}
.bp7140-footer{
  color: rgba(255, 255, 255, .76);
  background: #0c2924;
}
.bp7140-footer__top{
  display: grid;
  grid-template-columns: minmax(260px, .9fr) 2.1fr;
  gap: clamp(56px, 8vw, 110px);
  padding: 68px 0 54px;
}
.bp7140-footer__brand img{
  width: 156px;
  height: auto;
  object-fit: contain;
  object-position: left;
}
.bp7140-footer__brand strong{
  display: block;
  margin-top: 22px;
  color: #fff;
  font-size: 15px;
}
.bp7140-footer__brand p{
  max-width: 360px;
  margin: 12px 0 0;
  color: rgba(255, 255, 255, .58);
  font-size: 12px;
  line-height: 1.8;
}
.bp7140-footer__directory{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px;
}
.bp7140-footer__group h2{
  margin: 0 0 18px;
  color: #8fe6c8;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
}
.bp7140-footer__group a{
  display: block;
  padding: 5px 0;
  color: rgba(255, 255, 255, .72);
  font-size: 12px;
  line-height: 1.45;
  text-decoration: none;
}
.bp7140-footer__group a:hover{
  color: #fff;
}
.bp7140-footer__bottom{
  display: flex;
  min-height: 60px;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-top: 1px solid rgba(255, 255, 255, .1);
  font-size: 11px;
  white-space: nowrap;
}
.bp7140-footer__legal{
  display: flex;
  align-items: center;
  gap: 18px;
}
.bp7140-footer__bottom a{
  text-decoration: none;
}
@media (max-width: 1120px){:root{
    --bp7140-shell: min(100% - 48px, 1040px);
  }}
@media (max-width: 860px){:root{
    --bp7140-shell: min(100% - 34px, 760px);
  }
.bp7140-footer__top{
    grid-template-columns: minmax(0, 1fr);
  }
.bp7140-footer__top{
    gap: 42px;
  }
.bp7140-footer__bottom{
    min-height: 74px;
    overflow-x: auto;
    justify-content: flex-start;
    scrollbar-width: none;
  }
.bp7140-footer__bottom::-webkit-scrollbar{
    display: none;
  }}
@media (max-width: 560px){:root{
    --bp7140-shell: calc(100% - 28px);
    --bp7140-radius: 20px;
  }
.bp7140-footer__directory{
    grid-template-columns: minmax(0, 1fr);
  }
.bp7140-footer__top{
    padding-top: 54px;
  }
.bp7140-footer__bottom{
    min-height: 68px;
  }}
body.bp7160-packaging-polish{
  --bp7160-paper: #f7f3ea;
  --bp7160-paper-soft: #fcfaf5;
  --bp7160-paper-warm: #eee8dc;
  --bp7160-paper-blue: #e7f0f4;
  --bp7160-paper-blue-deep: #dce9ef;
  --bp7160-ink: #17332f;
  --bp7160-copy: #4c625d;
  --bp7160-muted: #74847f;
  --bp7160-green: #0a8062;
  --bp7160-green-bright: #13a47a;
  --bp7160-blue: #205f86;
  --bp7160-blue-deep: #174d72;
  --bp7160-amber: #9b682c;
  --bp7160-line: rgba(23, 51, 47, .11);
  --bp7160-line-strong: rgba(23, 51, 47, .18);
  --bp7160-blue-line: rgba(32, 95, 134, .2);
  --bp7160-shadow: 0 26px 68px rgba(42, 54, 49, .1), 0 3px 12px rgba(42, 54, 49, .045);
  --bp7160-shadow-soft: 0 14px 38px rgba(42, 54, 49, .07), 0 2px 8px rgba(42, 54, 49, .035);
  --bp7160-radius-lg: 28px;
  --bp7160-radius: 20px;
  --bp7160-radius-sm: 13px;
  --bp7160-ease: cubic-bezier(.22, .82, .22, 1);
  color: var(--bp7160-ink);
  background: var(--bp7160-paper);
}
body.bp7160-packaging-polish .bp7140-footer{
  position: relative;
  overflow: hidden;
  color: var(--bp7160-copy);
  background:
    radial-gradient(circle at 86% 8%, rgba(32, 95, 134, .12), transparent 24rem),
    linear-gradient(135deg, #edf3f2 0%, var(--bp7160-paper-blue) 58%, var(--bp7160-paper-blue-deep) 100%);
  border-top: 1px solid rgba(32, 95, 134, .11);
}
body.bp7160-packaging-polish .bp7140-footer::before{
  background: linear-gradient(90deg, transparent, rgba(10, 128, 98, .36), rgba(32, 95, 134, .48), transparent);
  opacity: .7;
}
body.bp7160-packaging-polish .bp7140-footer::after{
  opacity: .04;
}
body.bp7160-packaging-polish .bp7140-footer__top{
  grid-template-columns: minmax(250px, .82fr) minmax(0, 2.18fr);
  gap: clamp(48px, 6vw, 88px);
  padding: 50px 0 38px;
}
body.bp7160-packaging-polish .bp7140-footer__brand img{
  width: auto;
  max-width: 118px;
  height: auto;
  max-height: 58px;
  object-fit: contain;
  object-position: left center;
  filter: none;
  opacity: .94;
}
body.bp7160-packaging-polish .bp7140-footer__brand strong{
  margin-top: 14px;
  color: var(--bp7160-ink);
  font-size: 13px;
  letter-spacing: .02em;
}
body.bp7160-packaging-polish .bp7140-footer__brand p{
  max-width: 310px;
  margin-top: 8px;
  color: var(--bp7160-copy);
  font-size: 10px;
  line-height: 1.7;
}
body.bp7160-packaging-polish .bp7140-footer__directory{
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 38px);
}
body.bp7160-packaging-polish .bp7140-footer__group h2{
  margin-bottom: 12px;
  color: var(--bp7160-blue-deep);
  font-size: 9px;
  letter-spacing: .13em;
}
body.bp7160-packaging-polish .bp7140-footer__group a{
  padding: 3px 0;
  color: var(--bp7160-copy);
  font-size: 10px;
  line-height: 1.45;
}
body.bp7160-packaging-polish .bp7140-footer__group a:hover,body.bp7160-packaging-polish .bp7140-footer__group a:focus-visible{
  color: var(--bp7160-blue-deep);
}
body.bp7160-packaging-polish .bp7140-footer__bottom{
  min-height: 52px;
  color: var(--bp7160-muted);
  border-top: 1px solid rgba(32, 95, 134, .11);
  font-size: 9px;
  white-space: nowrap;
}
body.bp7160-packaging-polish .bp7140-footer__bottom a{
  color: var(--bp7160-copy);
}
body.bp7160-packaging-polish .bp7140-footer__legal{
  gap: 15px;
}
@media (max-width: 1180px){body.bp7160-packaging-polish .bp7140-footer__top{
    gap: 42px;
  }}
@media (max-width: 860px){body.bp7160-packaging-polish .bp7140-footer__top{
    grid-template-columns: minmax(0, 1fr);
  }
body.bp7160-packaging-polish .bp7140-footer__top{
    gap: 34px;
  }
body.bp7160-packaging-polish .bp7140-footer__bottom{
    min-height: 62px;
    overflow-x: auto;
    justify-content: flex-start;
    scrollbar-width: none;
  }}
@media (max-width: 760px){body.bp7160-packaging-polish .bp7140-footer__directory{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
  }}
@media (max-width: 560px){body.bp7160-packaging-polish .bp7140-footer__top{
    padding: 42px 0 30px;
  }
body.bp7160-packaging-polish .bp7140-footer__directory{
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
body.bp7160-packaging-polish .bp7140-footer__bottom{
    min-height: 58px;
  }}
