/* Four-column company footer, shared by the public pages. */
body .hamber-footer { position: relative; isolation: isolate; margin: 0; padding: 0; scroll-margin-top: 65px; border-top: 1px solid #48535a; background: #202b32; color: #b2bcc2; font-size: 13px; line-height: 1.9; text-align: left; }
.hamber-footer::before { content: ""; position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(90deg, rgba(32,43,50,.98) 5%, rgba(32,43,50,.94) 55%, rgba(32,43,50,.78)), url("../images/editorial/hamber-factory-camera.png"); background-size: cover; background-position: center 44%; pointer-events: none; }
.hamber-footer, .hamber-footer * { box-sizing: border-box; }
.hamber-footer .hamber-footer-inner { width: calc(100% - 80px); max-width: 1170px; margin: 0 auto; }
.hamber-footer .hamber-footer-main { display: grid; grid-template-columns: 1.35fr .65fr 1fr 1.2fr; gap: 58px; padding-top: 66px; padding-bottom: 60px; }
.hamber-footer .hamber-footer-logo { display: inline-block; margin-bottom: 25px; border: 0; }
.hamber-footer .hamber-footer-logo img { display: block; width: 136px; max-width: 100%; height: auto; }
.hamber-footer .hamber-footer-brand p { margin: 0; font-size: 13px; line-height: 2.15; }
.hamber-footer .hamber-footer-title { margin: 0 0 17px; color: #e5e6e5; font-size: 14px; font-weight: 500; line-height: 1.8; letter-spacing: 0; text-transform: none; }
.hamber-footer .hamber-footer-column ul { list-style: none; margin: 0; padding: 0; }
.hamber-footer .hamber-footer-column li { margin: 0; padding: 0; line-height: 2.5; }
.hamber-footer a { color: #bec7cc; text-decoration: none; border: 0; }
.hamber-footer a:hover { color: #fff; }
.hamber-footer a:focus-visible, .hamber-footer summary:focus-visible { outline: 2px solid #d8ab5d; outline-offset: 5px; }
.hamber-footer .hamber-footer-contact address { margin: 0; color: inherit; font-style: normal; font-size: 13px; line-height: 2; overflow-wrap: anywhere; }
.hamber-footer .hamber-footer-contact p { margin: 0 0 16px; }
.hamber-footer .hamber-footer-social { display: flex; align-items: flex-start; gap: 10px; margin-top: 24px; }
.hamber-footer .hamber-footer-icon { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; margin: 0; padding: 8px; border: 1px solid #647079; border-radius: 4px; background: transparent; color: #c1cbd0; cursor: pointer; list-style: none; }
.hamber-footer .hamber-footer-icon::-webkit-details-marker { display: none; }
.hamber-footer .hamber-footer-icon:hover { border-color: #8b9093; color: #fff; }
.hamber-footer .hamber-footer-wechat { position: relative; margin: 0; padding: 0; border: 0; }
.hamber-footer .hamber-footer-qr { position: absolute; bottom: 49px; left: 0; z-index: 5; width: 180px; padding: 12px; border: 1px solid #45494b; background: #fff; box-shadow: 0 6px 24px rgba(0,0,0,.2); text-align: center; }
.hamber-footer .hamber-footer-qr img { display: block; width: 156px; height: 156px; max-width: 100%; }
.hamber-footer .hamber-footer-qr span { display: block; padding-top: 6px; color: #343638; font-size: 12px; }
.hamber-footer .hamber-footer-legal { padding: 24px 0; border-top: 1px solid #48545c; background: rgba(18,27,33,.36); color: #a2adb4; font-size: 11px; }
.hamber-footer .hamber-footer-legal .hamber-footer-inner { display: flex; justify-content: space-between; align-items: baseline; gap: 16px 30px; }
.hamber-footer .hamber-footer-legal p { margin: 0; color: inherit; font-size: inherit; }
.hamber-footer .hamber-footer-legal .hamber-footer-inner > div { display: flex; gap: 24px; }
.hamber-footer .hamber-footer-legal a { color: #b5bfc6; }
@media (max-width: 991px) {
  .hamber-footer .hamber-footer-main { grid-template-columns: 1.2fr .7fr 1fr; gap: 38px; }
  .hamber-footer .hamber-footer-contact { grid-column: 1 / -1; }
  .hamber-footer .hamber-footer-contact address { display: flex; flex-wrap: wrap; gap: 10px 36px; }
}
@media (max-width: 600px) {
  .hamber-footer .hamber-footer-inner { width: calc(100% - 40px); }
  .hamber-footer .hamber-footer-main { grid-template-columns: 1fr 1fr; gap: 34px 26px; padding: 42px 0 36px; }
  .hamber-footer .hamber-footer-brand, .hamber-footer .hamber-footer-contact { grid-column: 1 / -1; }
  .hamber-footer .hamber-footer-logo { margin-bottom: 18px; }
  .hamber-footer .hamber-footer-social { margin-top: 20px; }
  .hamber-footer .hamber-footer-contact address { display: block; }
  .hamber-footer .hamber-footer-title { margin-bottom: 12px; }
  .hamber-footer .hamber-footer-column li { line-height: 2.6; }
  .hamber-footer .hamber-footer-legal .hamber-footer-inner { display: block; }
  .hamber-footer .hamber-footer-legal .hamber-footer-inner > div { flex-wrap: wrap; gap: 8px 20px; margin-top: 8px; }
}
