/* Component 06 · Footer
   A measured copy of Palantir's footer (checked 25 Sept 2026), on white:
   - left: copyright lines, then short rows separated by thin gray lines (theirs hold
     locale links and social buttons; ours holds the location)
   - right: columns of plain links under tiny uppercase labels
   Their footer links have no hover effect or animation, so these don't either. */

.site-footer {
  /* Covers the hero's pinned frame as it scrolls up */
  position: relative;
  z-index: 5;
  background: #fff;
  color: #1e1f2b;
  font-size: 16px;
  line-height: 1.4286;
  /* Bottom padding leaves room for the phone-size button bar */
  padding: calc(var(--v-gutter) * 3) 0 calc(var(--v-gutter) * 2 + 40px);
}

.footer-container {
  box-sizing: content-box;
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 var(--h-spacing);
}

.footer-primary {
  display: grid;
  grid-template-columns: repeat(12, minmax(10px, 1fr));
  column-gap: var(--gutter);
  row-gap: 50px;
}
@media (min-width: 560px) { .footer-primary { row-gap: 100px; } }

/* Left column: copyright and location */
.footer-credits { grid-column: 1 / -1; }
@media (min-width: 560px) { .footer-credits { grid-column-end: 7; } }
@media (min-width: 960px) { .footer-credits { grid-column-end: 5; } }

.footer-credits p { margin: 0; }
.footer-credits p + p { margin-top: 6px; }

.footer-row {
  max-width: 264px;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #aaa;
}

/* Right side: link columns */
.footer-menus {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(12, minmax(10px, 1fr));
  column-gap: var(--gutter);
  row-gap: 50px;
}
@media (min-width: 560px) {
  .footer-menus { grid-column-start: 7; grid-template-columns: repeat(6, minmax(10px, 1fr)); }
}
@media (min-width: 960px) {
  .footer-menus { grid-column-start: 5; grid-template-columns: repeat(8, minmax(10px, 1fr)); }
}

.footer-menu { grid-column: auto / span 6; }
@media (min-width: 560px) { .footer-menu { grid-column-end: span 3; } }
@media (min-width: 960px) { .footer-menu { grid-column-end: span 2; } }

.footer-menu-title {
  margin: 0 0 10px;
  font-size: 10px;
  font-weight: 400;
  line-height: 16px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #666;
}

.footer-menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer-menu li + li { margin-top: 0.357em; }

.footer-menu a {
  display: block;
  color: inherit;
  text-decoration: none;
}

/* The Contact column is wider than Palantir's so the email address fits on one line */
.footer-menu-wide { grid-column: 1 / -1; }
@media (min-width: 560px) { .footer-menu-wide { grid-column: auto / span 6; } }
@media (min-width: 960px) { .footer-menu-wide { grid-column-end: span 4; } }

/* Social buttons: Palantir's small rounded outline buttons, in their own row under the location */
.footer-social a {
  display: inline-block;
  padding: 4px 14px;
  border: 1px solid #1e1f2b;
  border-radius: 999px;
  color: inherit;
  font-size: 12px;
  line-height: 16px;
  text-decoration: none;
}
