/* ==========================================================================
   Footer — matches Figma desktop design
   ========================================================================== */

footer.site-footer {
  --footer-bg: #0c1018;
  --footer-text: #ffffff;
  --footer-muted: #c2c9d6;
  --footer-yellow: #f8bc18;
  --footer-line: rgba(255, 255, 255, .12);
  --footer-col-h4-w: 117px;
  --footer-col-h4-h: 28px;
  --footer-col-link-w: 152px;
  --footer-col-link-h: 28px;
  --footer-logo-w: 257px;
  --footer-logo-h: 100px;
  --footer-logo-base-w: 257px;
  --footer-logo-base-h: 100px;
  --footer-brand-text-w: 370px;
  --footer-brand-text-h: 84px;
  --footer-gbadge-w: 268.536376953125px;
  --footer-gbadge-h: 51.99961853027344px;
  --footer-social-w: 175px;
  --footer-social-h: 40px;
  --footer-social-gap: 5px;
  --footer-org-nsw-w: 46px;
  --footer-org-nsw-h: 50px;
  --footer-org-mp-w: 110px;
  --footer-org-mp-h: 50px;
  --footer-orgs-w: 166px;
  --footer-orgs-h: 50px;
  --footer-orgs-gap: 10px;
  --footer-copy-w: 515px;
  --footer-copy-h: 28px;
  --footer-disclaimer-w: 1440px;
  --footer-disclaimer-h: 84px;
  --footer-pay-w: 135px;
  --footer-pay-h: 20px;
  --footer-m-w: 430px;
  --footer-m-h: 1230px;
  --footer-m-bg: #040a10;
  --footer-brand-text-m-w: 390px;
  --footer-brand-text-m-h: 78px;
  --footer-services-m-w: 155px;
  --footer-services-m-h: 250px;
  --footer-services-m-gap: 10px;
  --footer-links-m-w: 94px;
  --footer-links-m-h: 95px;
  --footer-links-m-gap: 10px;
  --footer-social-m-w: 175px;
  --footer-social-m-h: 40px;
  --footer-social-m-gap: 5px;
  --footer-disclaimer-m-w: 390px;
  --footer-disclaimer-m-h: 234px;
  background: var(--footer-bg);
  color: var(--footer-muted);
  padding: 72px 0 0;
}

.footer-inner {
  box-sizing: border-box;
}

.footer-section {
  box-sizing: border-box;
}

/* ---- Main grid ---- */
.footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, .78fr) minmax(0, 1.28fr);
  gap: 48px 40px;
  padding-bottom: 44px;
  border-bottom: 1px solid var(--footer-line);
}

.footer-col h4 {
  box-sizing: border-box;
  display: block;
  width: var(--footer-col-h4-w);
  min-width: var(--footer-col-h4-w);
  height: var(--footer-col-h4-h);
  min-height: var(--footer-col-h4-h);
  max-height: var(--footer-col-h4-h);
  margin: 0 0 20px;
  padding: 0;
  overflow: visible;
  color: var(--footer-yellow);
  font-family: 'Gilroy-Bold', var(--display);
  font-size: 20px;
  font-weight: 400;
  font-style: normal;
  line-height: 28px;
  letter-spacing: 0;
  white-space: nowrap;
  opacity: 1;
  transform: rotate(0deg);
}

.footer-col ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-col li {
  margin-bottom: 10px;
}

.footer-col li:last-child {
  margin-bottom: 0;
}

.footer-col li a {
  box-sizing: border-box;
  display: inline-block;
  width: var(--footer-col-link-w);
  min-width: var(--footer-col-link-w);
  height: var(--footer-col-link-h);
  min-height: var(--footer-col-link-h);
  max-height: var(--footer-col-link-h);
  padding: 0;
  overflow: visible;
  color: #fff;
  font-family: 'Gilroy-Medium', var(--font);
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  line-height: 28px;
  letter-spacing: 0;
  text-decoration: none;
  white-space: nowrap;
  opacity: 1;
  transform: rotate(0deg);
  transition: color .15s ease;
}

.footer-col li a:hover {
  color: var(--footer-yellow);
}

/* ---- Brand column — logo Figma: 257×100 ---- */
.footer-brand__logo {
  box-sizing: border-box;
  display: block;
  width: var(--footer-logo-w);
  min-width: var(--footer-logo-w);
  max-width: var(--footer-logo-w);
  height: var(--footer-logo-h);
  min-height: var(--footer-logo-h);
  max-height: var(--footer-logo-h);
  margin: 0 0 20px;
  padding: 0;
  overflow: hidden;
  opacity: 1;
  transform: rotate(0deg);
  text-decoration: none;
}

.footer-brand__logo-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left top;
}

.footer-brand .logo-block {
  box-sizing: border-box;
  align-items: flex-start;
  justify-content: flex-start;
  width: var(--footer-logo-w);
  height: var(--footer-logo-h);
  transform: none;
  transform-origin: top left;
}

.footer-brand .logo-vaucluse {
  font-size: 1.28rem;
  padding: 4px 10px 3px;
  letter-spacing: 2px;
  width: 100%;
  text-align: left;
  background: #1c45c2;
}

.footer-brand .logo-blocked {
  font-size: 1.28rem;
  border-width: 3px;
  padding: 3px 10px;
  letter-spacing: 1.5px;
  margin-top: 2px;
  width: 100%;
  justify-content: flex-start;
  background: #fff;
  border-color: #1c45c2;
  color: #1c45c2;
}

.footer-brand .logo-drains {
  font-size: 1.28rem;
  letter-spacing: 1.5px;
}

.footer-brand .logo-eye {
  width: 18px;
  height: 18px;
  top: -1px;
}

.footer-brand .logo-eye::after {
  inset: 4px;
}

.footer-brand .logo-sub {
  margin-top: 5px;
  font-size: .56rem;
  letter-spacing: 1.8px;
  text-align: left;
  color: var(--footer-muted);
  width: 100%;
}

.footer-brand__text {
  box-sizing: border-box;
  width: var(--footer-brand-text-w);
  min-width: var(--footer-brand-text-w);
  max-width: var(--footer-brand-text-w);
  height: var(--footer-brand-text-h);
  min-height: var(--footer-brand-text-h);
  max-height: var(--footer-brand-text-h);
  margin: 0 0 20px;
  padding: 0;
  font-family: 'Gilroy-Medium', var(--font);
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  line-height: 28px;
  letter-spacing: 0;
  color: #fff;
  opacity: 1;
  transform: rotate(0deg);
}

.footer-brand__br {
  display: none;
}

.footer-gbadge {
  box-sizing: border-box;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: var(--footer-gbadge-w);
  min-width: var(--footer-gbadge-w);
  max-width: var(--footer-gbadge-w);
  height: var(--footer-gbadge-h);
  min-height: var(--footer-gbadge-h);
  max-height: var(--footer-gbadge-h);
  padding: 10px;
  border-radius: 10px;
  background: #fff;
  opacity: 1;
  transform: rotate(0deg);
  overflow: hidden;
}

.footer-gbadge__row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex: 0 0 auto;
}

.footer-gbadge__logo {
  font-family: var(--font);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: -.4px;
  line-height: 1;
}

.footer-gbadge__logo .g-blue { color: #4285f4; }
.footer-gbadge__logo .g-red { color: #ea4335; }
.footer-gbadge__logo .g-yellow { color: #fbbc05; }
.footer-gbadge__logo .g-green { color: #34a853; }

.footer-gbadge__stars {
  color: #f5a623;
  font-size: .65rem;
  letter-spacing: 1.5px;
  line-height: 1;
}

.footer-gbadge__text {
  flex: 0 0 auto;
  font-family: 'Gilroy-SemiBold', var(--font);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.1;
  color: #0c1018;
  text-align: center;
  white-space: nowrap;
}

/* ---- Contact column ---- */
.footer-contact li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.footer-contact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  margin-top: -1px;
  border: 1.5px solid rgba(255, 255, 255, .28);
  border-radius: 50%;
  color: #fff;
}

.footer-contact__icon svg {
  width: 14px;
  height: 14px;
}

.footer-contact__icon--address {
  width: 24px;
  height: 28px;
  flex: 0 0 24px;
  margin-top: 0;
  border: 0;
  border-radius: 0;
}

.footer-contact__icon--address svg {
  display: block;
  width: 24px;
  height: 28px;
}

.footer-contact__icon--phone {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  margin-top: 0;
  border: 0;
  border-radius: 0;
}

.footer-contact__icon--phone svg {
  display: block;
  width: 24px;
  height: 24px;
}

.footer-contact__icon--email {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  margin-top: 0;
  border: 0;
  border-radius: 0;
}

.footer-contact__icon--email svg {
  display: block;
  width: 24px;
  height: 24px;
}

.footer-contact__icon--license {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  margin-top: 0;
  border: 0;
  border-radius: 0;
}

.footer-contact__icon--license svg {
  display: block;
  width: 24px;
  height: 24px;
}

.footer-contact__icon--abn {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  margin-top: 0;
  border: 0;
  border-radius: 0;
}

.footer-contact__icon--abn svg {
  display: block;
  width: 24px;
  height: 24px;
}

.footer-contact a {
  color: var(--footer-text);
}

.footer-contact span:not(.footer-contact__icon) {
  color: var(--footer-text);
}

/* ---- Contact column group (contact + social/orgs) ---- */
.footer-col-group--contact {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.footer-aside {
  min-width: 0;
}

/* ---- Social ---- */
.footer-social {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: var(--footer-social-gap);
  width: var(--footer-social-w);
  min-width: var(--footer-social-w);
  max-width: var(--footer-social-w);
  height: var(--footer-social-h);
  min-height: var(--footer-social-h);
  max-height: var(--footer-social-h);
  margin-top: 22px;
  padding: 0;
  overflow: visible;
  opacity: 1;
  transform: rotate(0deg);
}

.footer-social__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: #fff;
  text-decoration: none;
  transition: transform .15s ease;
}

.footer-social__btn svg {
  width: 16px;
  height: 16px;
}

.footer-social__btn--ig {
  width: 40px;
  height: 40px;
  padding: 0;
  background: none;
}

.footer-social__btn--ig svg {
  width: 40px;
  height: 40px;
  display: block;
}

.footer-social__btn--fb {
  width: 40px;
  height: 40px;
  padding: 0;
  background: none;
}

.footer-social__btn--fb svg {
  width: 40px;
  height: 40px;
  display: block;
}

.footer-social__btn--yt {
  width: 40px;
  height: 40px;
  padding: 0;
  background: none;
}

.footer-social__btn--yt svg {
  width: 40px;
  height: 40px;
  display: block;
}

.footer-social__btn--li {
  width: 40px;
  height: 40px;
  padding: 0;
  background: none;
}

.footer-social__btn--li svg {
  width: 40px;
  height: 40px;
  display: block;
}

.footer-social__btn:hover {
  transform: scale(1.06);
}

/* ---- Accreditation ---- */
.footer-orgs {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: var(--footer-orgs-gap);
  width: var(--footer-orgs-w);
  min-width: var(--footer-orgs-w);
  max-width: var(--footer-orgs-w);
  height: var(--footer-orgs-h);
  min-height: var(--footer-orgs-h);
  max-height: var(--footer-orgs-h);
  margin-top: 22px;
}

.footer-org {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.footer-org--nsw {
  gap: 0;
}

.footer-org--nsw svg {
  box-sizing: border-box;
  display: block;
  flex: 0 0 auto;
  width: var(--footer-org-nsw-w);
  min-width: var(--footer-org-nsw-w);
  max-width: var(--footer-org-nsw-w);
  height: var(--footer-org-nsw-h);
  min-height: var(--footer-org-nsw-h);
  max-height: var(--footer-org-nsw-h);
}

.footer-org--mp {
  gap: 0;
}

.footer-org--mp svg {
  box-sizing: border-box;
  display: block;
  flex: 0 0 auto;
  width: var(--footer-org-mp-w);
  min-width: var(--footer-org-mp-w);
  max-width: var(--footer-org-mp-w);
  height: var(--footer-org-mp-h);
  min-height: var(--footer-org-mp-h);
  max-height: var(--footer-org-mp-h);
}

.footer-org__mark {
  width: 34px;
  height: auto;
  flex: 0 0 auto;
}

.footer-org__mark--mp {
  width: 38px;
  height: 38px;
}

.footer-org__text {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.footer-org__text strong {
  font-family: var(--display);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .4px;
  color: #fff;
  line-height: 1.1;
}

.footer-org__text i {
  font-style: normal;
  font-family: var(--display);
  font-size: .48rem;
  font-weight: 700;
  letter-spacing: .55px;
  color: var(--footer-muted);
  line-height: 1.25;
}

/* ---- Bottom row ---- */
.footer-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  padding: 24px 0 28px;
  font-family: 'Gilroy-Medium', var(--font);
  font-size: 14px;
  line-height: 22px;
}

.footer-bottom__copy {
  box-sizing: border-box;
  display: block;
  justify-self: start;
  width: var(--footer-copy-w);
  min-width: 0;
  max-width: var(--footer-copy-w);
  height: auto;
  min-height: var(--footer-copy-h);
  max-height: none;
  margin: 0;
  padding: 0;
  overflow: visible;
  color: #ffffff;
  font-family: 'Gilroy-Medium', var(--font);
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  line-height: 28px;
  letter-spacing: 0;
  white-space: normal;
  opacity: 1;
  transform: rotate(0deg);
}

.footer-bottom a {
  color: var(--footer-muted);
  text-decoration: none;
}

.footer-bottom a:hover {
  color: #fff;
}

.footer-bottom__legal {
  justify-self: end;
  text-align: right;
  white-space: nowrap;
  color: #ffffff;
  font-family: 'Gilroy-Medium', var(--font);
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  line-height: 28px;
  letter-spacing: 0;
}

.footer-bottom__legal a {
  color: #ffffff;
}

.footer-bottom__legal a:hover {
  color: #ffffff;
  opacity: .85;
}

.footer-bottom__legal .dot {
  margin: 0 8px;
  color: #ffffff;
}

.footer-pay {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  width: var(--footer-pay-w);
  min-width: var(--footer-pay-w);
  max-width: var(--footer-pay-w);
  height: var(--footer-pay-h);
  min-height: var(--footer-pay-h);
  max-height: var(--footer-pay-h);
  margin: 0;
  padding: 0;
  overflow: visible;
  opacity: 1;
  transform: rotate(0deg);
}

.footer-pay__img {
  box-sizing: border-box;
  display: block;
  width: var(--footer-pay-w);
  min-width: var(--footer-pay-w);
  max-width: var(--footer-pay-w);
  height: var(--footer-pay-h);
  min-height: var(--footer-pay-h);
  max-height: var(--footer-pay-h);
  margin: 0;
  padding: 0;
  object-fit: contain;
  opacity: 1;
  transform: rotate(0deg);
}

/* ---- Disclaimer ---- */
.footer-disclaimer {
  --footer-text: #c2c9d6;
  background: #0c1018;
  padding: 0 0 36px;
}

.footer-disclaimer p {
  box-sizing: border-box;
  display: block;
  width: var(--footer-disclaimer-w);
  min-width: var(--footer-disclaimer-w);
  max-width: var(--footer-disclaimer-w);
  height: var(--footer-disclaimer-h);
  min-height: var(--footer-disclaimer-h);
  max-height: var(--footer-disclaimer-h);
  margin: 0;
  padding: 0;
  overflow: visible;
  color: #ffffff;
  font-family: 'Gilroy-Medium', var(--font);
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  line-height: 28px;
  letter-spacing: 0;
  opacity: 1;
  transform: rotate(0deg);
}

/* ---- Responsive ---- */
@media (max-width: 1100px) {
  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 36px 28px;
  }

  .footer-brand {
    grid-column: 1 / -1;
  }

  .footer-col-group--contact {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .footer-section {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: var(--footer-m-h);
    margin: 0;
    background: #040a10;
    opacity: 1;
    transform: rotate(0deg);
  }

  footer.site-footer {
    box-sizing: border-box;
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin: 0;
    padding: 48px 0 0;
    background: #040a10;
    opacity: 1;
    transform: rotate(0deg);
  }

  footer.site-footer .footer-inner,
  .footer-disclaimer .footer-inner {
    max-width: var(--footer-m-w);
    margin-left: auto;
    margin-right: auto;
  }

  .footer-inner {
    padding-left: 20px;
    padding-right: 20px;
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr;
    column-gap: 24px;
    row-gap: 28px;
    padding-bottom: 28px;
  }

  .footer-brand {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .footer-brand__logo {
    width: min(var(--footer-logo-w), 100%);
    min-width: 0;
    max-width: var(--footer-logo-w);
    height: var(--footer-logo-h);
    min-height: var(--footer-logo-h);
    max-height: var(--footer-logo-h);
    margin-left: auto;
    margin-right: auto;
    overflow: visible;
  }

  .footer-brand .logo-block {
    transform: none;
    transform-origin: top center;
    margin-left: auto;
    margin-right: auto;
  }

  .footer-brand__br {
    display: block;
  }

  .footer-brand__text {
    box-sizing: border-box;
    display: block;
    width: var(--footer-brand-text-m-w);
    min-width: 0;
    max-width: min(var(--footer-brand-text-m-w), 100%);
    height: var(--footer-brand-text-m-h);
    min-height: var(--footer-brand-text-m-h);
    max-height: var(--footer-brand-text-m-h);
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    overflow: hidden;
    color: #ffffff;
    font-family: 'Gilroy-Medium', var(--font);
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 26px;
    letter-spacing: 0;
    text-align: center;
    opacity: 1;
    transform: rotate(0deg);
  }

  .footer-gbadge {
    width: min(var(--footer-gbadge-w), 100%);
    min-width: 0;
    max-width: 100%;
    height: auto;
    min-height: var(--footer-gbadge-h);
    max-height: none;
  }

  .footer-gbadge__text {
    white-space: normal;
  }

  .footer-brand .logo-sub {
    text-align: center;
  }

  .footer-col h4 {
    width: auto;
    min-width: 0;
    max-height: none;
    margin-bottom: 14px;
  }

  .footer-col h4::after {
    content: '';
    display: block;
    width: 36px;
    height: 2px;
    margin-top: 6px;
    background: var(--footer-yellow);
  }

  .footer-col li a {
    width: auto;
    min-width: 0;
    max-width: none;
    height: auto;
    min-height: var(--footer-col-link-h);
    max-height: none;
    white-space: normal;
  }

  .footer-col--services {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: var(--footer-services-m-gap);
    grid-column: 1;
    grid-row: 2;
    width: var(--footer-services-m-w);
    min-width: var(--footer-services-m-w);
    max-width: var(--footer-services-m-w);
    height: auto;
    min-height: 0;
    max-height: none;
    margin: 0;
    padding: 0;
    overflow: visible;
    opacity: 1;
    transform: rotate(0deg);
  }

  .footer-col--services h4 {
    margin-bottom: 0;
  }

  .footer-col--services ul {
    display: flex;
    flex-direction: column;
    gap: var(--footer-services-m-gap);
  }

  .footer-col--services li {
    margin-bottom: 0;
  }

  .footer-col--links {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: var(--footer-links-m-gap);
    grid-column: 2;
    grid-row: 2;
    width: var(--footer-links-m-w);
    min-width: var(--footer-links-m-w);
    max-width: var(--footer-links-m-w);
    height: var(--footer-links-m-h);
    min-height: var(--footer-links-m-h);
    max-height: var(--footer-links-m-h);
    margin: 0;
    padding: 0;
    overflow: visible;
    opacity: 1;
    transform: rotate(0deg);
  }

  .footer-col--links h4 {
    margin-bottom: 0;
  }

  .footer-col--links ul {
    display: flex;
    flex-direction: column;
    gap: var(--footer-links-m-gap);
  }

  .footer-col--links li {
    margin-bottom: 0;
  }

  .footer-col-group--contact {
    display: contents;
  }

  .footer-col--contact {
    grid-column: 1 / -1;
    grid-row: 4;
  }

  .footer-col--contact .footer-contact li:nth-child(n+4) {
    display: none;
  }

  .footer-aside {
    grid-column: 2;
    grid-row: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: end;
  }

  .footer-aside .footer-social {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: var(--footer-social-m-gap);
    width: var(--footer-social-m-w);
    min-width: var(--footer-social-m-w);
    max-width: var(--footer-social-m-w);
    height: var(--footer-social-m-h);
    min-height: var(--footer-social-m-h);
    max-height: var(--footer-social-m-h);
    margin-top: 18px;
    padding: 0;
    overflow: visible;
    justify-content: flex-start;
    flex-wrap: nowrap;
    opacity: 1;
    transform: rotate(0deg);
  }

  .footer-aside .footer-orgs {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin-top: 16px;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .footer-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 20px 0 24px;
  }

  .footer-pay {
    order: 1;
  }

  .footer-bottom__legal {
    order: 2;
    justify-self: center;
    text-align: center;
    white-space: normal;
  }

  .footer-bottom__copy {
    order: 3;
    justify-self: center;
    text-align: center;
    white-space: normal;
    width: min(var(--footer-copy-w), 100%);
    min-width: 0;
    max-width: 100%;
    height: auto;
    min-height: var(--footer-copy-h);
    max-height: none;
  }

  .footer-pay,
  .footer-pay__img {
    width: var(--footer-pay-w);
    min-width: var(--footer-pay-w);
    max-width: var(--footer-pay-w);
    height: var(--footer-pay-h);
    min-height: var(--footer-pay-h);
    max-height: var(--footer-pay-h);
    aspect-ratio: auto;
  }

  .footer-disclaimer {
    box-sizing: border-box;
    flex: 0 0 auto;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin: 0;
    padding: 0 0 28px;
    background: #040a10;
    opacity: 1;
    transform: rotate(0deg);
  }

  .footer-disclaimer .footer-inner {
    padding-left: 20px;
    padding-right: 20px;
  }

  .footer-disclaimer p {
    box-sizing: border-box;
    display: block;
    width: var(--footer-disclaimer-m-w);
    min-width: 0;
    max-width: min(var(--footer-disclaimer-m-w), 100%);
    height: var(--footer-disclaimer-m-h);
    min-height: var(--footer-disclaimer-m-h);
    max-height: var(--footer-disclaimer-m-h);
    margin: 0 auto;
    padding: 0;
    overflow: visible;
    color: #ffffff;
    font-family: 'Gilroy-Medium', var(--font);
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 26px;
    letter-spacing: 0;
    text-align: center;
    opacity: 1;
    transform: rotate(0deg);
  }
}

/* 320px — social below Quick Links, 175×40 icons, 16px link text */
@media (max-width: 360px) {
  .footer-inner {
    padding-left: 16px;
    padding-right: 16px;
  }

  .footer-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "brand brand"
      "services links"
      "services social"
      "contact contact";
    column-gap: 16px;
    row-gap: 12px;
  }

  .footer-brand {
    grid-area: brand;
  }

  .footer-col--services {
    grid-area: services;
    align-self: start;
    width: auto;
    min-width: 0;
    max-width: none;
    height: auto;
    min-height: 0;
    max-height: none;
  }

  .footer-col--links {
    grid-area: links;
    align-self: start;
    width: auto;
    min-width: 0;
    max-width: none;
    height: auto;
    min-height: 0;
    max-height: none;
  }

  .footer-col--contact {
    grid-area: contact;
  }

  .footer-aside {
    grid-area: social;
    grid-column: auto;
    grid-row: auto;
    align-self: start;
    width: auto;
    max-width: 100%;
    align-items: flex-start;
    margin-top: 0;
    padding-top: 0;
  }

  .footer-social,
  .footer-aside .footer-social {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 5px;
    width: 175px;
    min-width: 0;
    max-width: 175px;
    height: 40px;
    min-height: 40px;
    max-height: 40px;
    margin-top: 0;
    padding: 0;
    overflow: visible;
    opacity: 1;
    transform: rotate(0deg);
  }

  .footer-aside .footer-orgs {
    width: 100%;
    max-width: 175px;
    margin-top: 12px;
    justify-content: flex-start;
  }

  .footer-social__btn,
  .footer-social__btn--ig,
  .footer-social__btn--fb,
  .footer-social__btn--yt,
  .footer-social__btn--li {
    flex: 0 0 40px;
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    height: 40px;
    min-height: 40px;
    max-height: 40px;
    padding: 0;
  }

  .footer-social__btn svg,
  .footer-social__btn--ig svg,
  .footer-social__btn--fb svg,
  .footer-social__btn--yt svg,
  .footer-social__btn--li svg {
    width: 40px;
    height: 40px;
    display: block;
  }

  .footer-col li a {
    font-size: 16px;
    line-height: 26px;
  }
}
