/* ARJO — Site footer.
   Values come from theme.json (--wp--preset--* / --wp--custom--*) only.
   Core prints its own layout rules after this file, so anything that fights
   .wp-block-group / .wp-block-navigation carries an extra parent class. */

.arjo-footer {
  background-color: var(--wp--preset--color--surface-invert);
  color: var(--wp--preset--color--on-invert);
  border-top: var(--wp--custom--border-hairline) solid var(--wp--preset--color--line-invert);
  padding-block: var(--wp--preset--spacing--90) var(--wp--preset--spacing--70);
}

.arjo-footer .arjo-footer__inner.wp-block-group {
  width: var(--wp--custom--layout-shell);
  margin-inline: auto;
}

.arjo-footer .arjo-footer__top.wp-block-group {
  display: grid;
  gap: var(--wp--preset--spacing--80);
  padding-bottom: var(--wp--preset--spacing--80);
}

/* ---- Brand column ------------------------------------------------------- */
.arjo-footer .arjo-footer__brand.wp-block-group {
  display: grid;
  gap: var(--wp--preset--spacing--50);
  align-content: start;
}
.arjo-footer .arjo-logo.wp-block-group {
  gap: var(--wp--preset--spacing--30);
  flex: none;
}
.arjo-footer .arjo-logo__mark img {
  display: block;
  width: 56px;
  height: auto;
}
.arjo-footer .arjo-logo__sub {
  margin: 0;
  font-size: var(--wp--preset--font-size--xxs);
  letter-spacing: var(--wp--custom--tracking-widest);
  text-transform: uppercase;
  color: var(--wp--custom--color-on-invert-soft);
}
.arjo-footer .arjo-footer__blurb {
  margin: 0;
  max-width: 40ch;
  font-size: var(--wp--preset--font-size--medium);
  line-height: var(--wp--custom--leading-relaxed);
  color: var(--wp--preset--color--on-invert-muted);
  text-wrap: pretty;
}

/* ---- Link columns ------------------------------------------------------- */
.arjo-footer .arjo-footer__col.wp-block-group {
  display: grid;
  gap: var(--wp--preset--spacing--30);
  align-content: start;
}
.arjo-footer .arjo-footer__heading {
  margin: 0;
  padding-bottom: var(--wp--preset--spacing--20);
  font-family: var(--wp--preset--font-family--text);
  font-size: var(--wp--preset--font-size--xxs);
  font-weight: var(--wp--custom--weight-medium);
  letter-spacing: var(--wp--custom--tracking-widest);
  text-transform: uppercase;
  color: var(--wp--preset--color--accent-soft);
}

.arjo-footer .arjo-footer__nav.wp-block-navigation {
  gap: var(--wp--preset--spacing--30);
  align-items: start;
}
.arjo-footer .arjo-footer__nav .wp-block-navigation__container {
  gap: var(--wp--preset--spacing--30);
  align-items: start;
}
.arjo-footer .arjo-footer__nav .wp-block-navigation-item__content {
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--on-invert-muted);
  text-decoration: none;
  transition: color var(--wp--custom--duration-base) var(--wp--custom--ease-standard);
}
.arjo-footer .arjo-footer__nav .wp-block-navigation-item__content:hover,
.arjo-footer .arjo-footer__nav .wp-block-navigation-item__content:focus-visible {
  color: var(--wp--preset--color--on-invert);
}

.arjo-footer .arjo-footer__address {
  margin: 0;
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--on-invert-muted);
}

/* ---- Bottom bar --------------------------------------------------------- */
.arjo-footer .arjo-footer__bottom.wp-block-group {
  gap: var(--wp--preset--spacing--30) var(--wp--preset--spacing--60);
  justify-content: space-between;
  padding-top: var(--wp--preset--spacing--60);
  border-top: var(--wp--custom--border-hairline) solid var(--wp--preset--color--line-invert);
}
.arjo-footer .arjo-footer__bottom p {
  margin: 0;
  font-size: var(--wp--preset--font-size--xs);
  color: var(--wp--preset--color--on-invert-muted);
}

@media (min-width: 48rem) {
  .arjo-footer .arjo-footer__top.wp-block-group {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: var(--wp--custom--layout-gap);
  }
  .arjo-footer .arjo-footer__brand.wp-block-group { grid-column: 1 / span 5; }
  .arjo-footer .arjo-footer__col--nav.wp-block-group { grid-column: 7 / span 2; }
  .arjo-footer .arjo-footer__col--contact.wp-block-group { grid-column: 10 / span 3; }
}

@media (prefers-reduced-motion: reduce) {
  .arjo-footer .arjo-footer__nav .wp-block-navigation-item__content { transition: none; }
}

/* The Site Editor canvas has no page background of its own behind the part. */
.editor-styles-wrapper .arjo-footer {
  background-color: var(--wp--preset--color--surface-invert);
}