/* Dearirean mobile footer: compact editorial hierarchy without a long single column. */
@media (max-width: 640px) {
  .site-footer {
    padding: 2.8rem 1.5rem 1.7rem;
    padding-left: max(1.5rem, env(safe-area-inset-left));
    padding-right: max(1.5rem, env(safe-area-inset-right));
  }

  .footer__cols {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2.1rem 1.5rem;
  }

  .footer__brand {
    grid-column: 1 / -1;
    margin: 0;
    padding-bottom: 1.7rem;
    border-bottom: 1px solid var(--line);
  }

  .footer__brand .wordmark--footer {
    height: 1.75rem;
    max-width: min(72vw, 230px);
    margin-bottom: .9rem;
  }

  .footer__brand p {
    max-width: 32ch;
    margin: 0;
    font-size: .86rem;
    line-height: 1.7;
  }

  .footer__col {
    min-width: 0;
  }

  /* Shop gets a full row and three link columns; Maison, Care and Legal sit below it. */
  .footer__col:nth-child(2) {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 1.5rem;
  }

  .footer__col h4 {
    margin: 0 0 .65rem;
    font-size: .68rem;
    letter-spacing: .22em;
    line-height: 1.4;
  }

  .footer__col:nth-child(2) h4 {
    grid-column: 1 / -1;
  }

  .footer__col a {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: .32rem 0;
    font-size: .83rem;
    line-height: 1.35;
  }

  .footer__base {
    flex-direction: column;
    align-items: flex-start;
    gap: .55rem;
    margin-top: 2.4rem;
    padding-top: 1.25rem;
    font-size: .65rem;
    line-height: 1.65;
    letter-spacing: .045em;
  }

  .footer__base span:last-child {
    color: var(--gold);
  }
}

@media (max-width: 360px) {
  .site-footer {
    padding-left: max(1.25rem, env(safe-area-inset-left));
    padding-right: max(1.25rem, env(safe-area-inset-right));
  }

  .footer__cols,
  .footer__col:nth-child(2) {
    column-gap: 1rem;
  }
}
