/* UNAVERAGE HAIR — minimal monochrome footer map */
body.premium-ui:not(.admin-page-body) .footer-map-section {grid-column:1 / -1;min-width:0; width:100%;}
body.premium-ui:not(.admin-page-body) .footer-map-heading {display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:12px;}
body.premium-ui:not(.admin-page-body) .footer-map-heading span {font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#ededed;}
body.premium-ui:not(.admin-page-body) .footer-map-heading a {font-size:11px;letter-spacing:.03em;text-decoration:none;color:#bdbdbd;transition:color .18s ease;}
body.premium-ui:not(.admin-page-body) .footer-map-heading a:hover {color:#fff;}
body.premium-ui:not(.admin-page-body) .footer-map-frame {height:240px;overflow:hidden;border:1px solid #383838;border-radius:4px;background:#232323;}
body.premium-ui:not(.admin-page-body) .footer-map-frame iframe {display:block;width:100%;height:100%;border:0;filter:grayscale(1) contrast(1.08) brightness(.85);}
@media(max-width:699px){body.premium-ui:not(.admin-page-body) .footer-map-frame{height:200px;}}
@media(prefers-reduced-motion:reduce){body.premium-ui:not(.admin-page-body) .footer-map-heading a{transition:none;}}

/* Mobile footer polish — intentionally scoped to the public site only. */
@media (max-width: 768px) {
  body.premium-ui:not(.admin-page-body) footer#footer {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 28px !important;
    padding: 42px 20px 24px !important;
    text-align: left !important;
    justify-items: stretch !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer > .footer-brand,
  body.premium-ui:not(.admin-page-body) footer#footer > .footer-col,
  body.premium-ui:not(.admin-page-body) footer#footer > .footer-bottom {
    width: min(100%, 320px) !important;
    max-width: 320px !important;
    min-width: 0 !important;
    margin-inline: auto !important;
    text-align: left !important;
    justify-self: center !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer > .footer-map-section {
    width: min(100%, 320px) !important;
    max-width: 320px !important;
    min-width: 0 !important;
    margin-inline: auto !important;
    text-align: center !important;
    justify-self: center !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-brand {
    align-items: flex-start !important;
    gap: 12px !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-logo {
    margin: 0 !important;
    text-align: left !important;
    line-height: 1.1 !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-tagline {
    margin: 0 !important;
    text-align: left !important;
    line-height: 1.75 !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-col h4 {
    margin-bottom: 14px !important;
    text-align: left !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-col p,
  body.premium-ui:not(.admin-page-body) footer#footer .footer-col a {
    text-align: left !important;
    margin-inline: 0 !important;
    line-height: 1.65 !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-inline-social {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-map-heading {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 16px !important;
    text-align: center !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-map-heading span,
  body.premium-ui:not(.admin-page-body) footer#footer .footer-map-heading a {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-map-frame {
    width: 100% !important;
    max-width: 320px !important;
    height: 220px !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    border-radius: 4px !important;
    filter: grayscale(1) !important;
    -webkit-filter: grayscale(1) !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-map-frame iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    filter: grayscale(1) contrast(1.08) brightness(.88) !important;
    -webkit-filter: grayscale(1) contrast(1.08) brightness(.88) !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-bottom {
    row-gap: 12px !important;
    padding-top: 22px !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-bottom > nav.footer-legal {
    justify-content: center !important;
    text-align: center !important;
  }
}

/* Desktop map restoration: full-width row below three footer columns. */
@media (min-width: 769px) {
  body.premium-ui:not(.admin-page-body) footer#footer {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: start !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer > .footer-map-section {
    display: block !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-map-heading {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-direction: row !important;
    width: 100% !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-map-frame {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 240px !important;
    margin: 0 !important;
    border-radius: 4px !important;
    overflow: hidden !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer .footer-map-frame iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    border: 0 !important;
    filter: grayscale(1) contrast(1.08) brightness(.85) !important;
    -webkit-filter: grayscale(1) contrast(1.08) brightness(.85) !important;
  }
  body.premium-ui:not(.admin-page-body) footer#footer > .footer-bottom {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}
