/* Site footer: dark on every page, the brand and how we work, the newsletter, then the pages people search for. */
.site-footer {
  --footer-bg: #0B110E; --footer-ink: #F2F5F3; --footer-ink-2: #A3ADA7; --footer-line: rgb(255 255 255 / 0.1); --footer-accent: #3DBB7A;
  margin-block-start: var(--space-7); background: var(--footer-bg); color: var(--footer-ink); font-size: var(--step--1);
  box-shadow: inset 0 4px 0 var(--brand);
}
.site-footer a { color: inherit; }

.site-footer__top { display: grid; gap: var(--space-6); padding-block: var(--space-7) var(--space-6); border-block-end: 1px solid var(--footer-line); }
@media (min-width: 900px) { .site-footer__top { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: var(--space-8); align-items: start; } }

.site-footer__brand { display: grid; gap: var(--space-4); justify-items: start; }
.site-footer__wordmark {
  font-family: "Archivo", "Inter", sans-serif; font-weight: 900; font-stretch: 80%; font-size: clamp(2rem, 4vw, 2.75rem); line-height: 1;
  letter-spacing: -0.02em; text-decoration: none; color: var(--footer-ink) !important;
}
.site-footer__wordmark .wordmark__tld { color: #FF6B72; }
.site-footer__mission { margin: 0; max-inline-size: 52ch; font-size: var(--step-1); line-height: 1.5; color: var(--footer-ink); }
.site-footer__principles { display: grid; gap: var(--space-2); margin: 0; padding: 0; list-style: none; color: var(--footer-ink-2); }
.site-footer__principles li { display: flex; align-items: center; gap: var(--space-2); }
.site-footer__principles .icon { flex: none; inline-size: 14px; block-size: 14px; color: var(--footer-accent); }
.site-footer__langs { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.site-footer__langs a {
  display: inline-flex; align-items: center; min-block-size: 36px; padding-inline: var(--space-3); border-radius: 999px;
  border: 1px solid var(--footer-line); font-weight: 700; text-decoration: none; color: var(--footer-ink-2);
}
.site-footer__langs a:hover { color: var(--footer-ink); border-color: var(--footer-ink-2); }
.site-footer__langs a[aria-current="true"] { background: var(--footer-ink); border-color: var(--footer-ink); color: var(--footer-bg); }

.site-footer__letter { display: grid; gap: var(--space-3); padding: var(--space-5); border-radius: var(--radius-l); background: rgb(255 255 255 / 0.04); border: 1px solid var(--footer-line); }
.site-footer__letter p { margin: 0; color: var(--footer-ink-2); }
.site-footer__form { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.site-footer__form input[type="email"] {
  flex: 1 1 200px; min-inline-size: 0; min-block-size: var(--touch); padding-inline: var(--space-3); border-radius: var(--radius-m);
  border: 1px solid var(--footer-line); background: rgb(255 255 255 / 0.06); color: var(--footer-ink); font: inherit;
}
.site-footer__form input[type="email"]::placeholder { color: var(--footer-ink-2); }
.site-footer__form input[type="email"]:focus { outline: 2px solid var(--footer-accent); outline-offset: 1px; }
.site-footer__form input[type="submit"] {
  min-block-size: var(--touch); padding-inline: var(--space-5); border: 0; border-radius: var(--radius-m);
  background: var(--footer-accent); color: #04140B; font: inherit; font-weight: 800; cursor: pointer;
}
.site-footer__form input[type="submit"]:hover { background: #5BD394; }

.site-footer__heading {
  margin: 0 0 var(--space-3); font-family: "Archivo", "Inter", sans-serif; font-stretch: 80%; font-weight: 900; font-size: var(--step-0);
  letter-spacing: 0.08em; text-transform: uppercase; color: var(--footer-ink);
}
:root[dir="rtl"] .site-footer__heading { font-family: "Noto Kufi Arabic", var(--font-arabic); font-stretch: 100%; letter-spacing: 0; text-transform: none; }
.site-footer__letter .site-footer__heading { margin: 0; font-size: var(--step-1); }

.site-footer__nav { display: grid; gap: var(--space-6) var(--space-5); grid-template-columns: repeat(2, minmax(0, 1fr)); padding-block: var(--space-6); }
@media (min-width: 700px) { .site-footer__nav { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .site-footer__nav { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.site-footer__col ul { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.site-footer__col a {
  display: inline-flex; align-items: center; min-block-size: 32px; color: var(--footer-ink-2); text-decoration: none; line-height: 1.3;
}
.site-footer__col a:hover { color: var(--footer-ink); text-decoration: underline; text-decoration-color: var(--footer-accent); text-underline-offset: 3px; }
.site-footer a:focus-visible { outline: 2px solid var(--footer-accent); outline-offset: 2px; border-radius: 4px; }

.site-footer__bottom {
  display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-5); justify-content: space-between;
  padding-block: var(--space-5) calc(var(--space-6) + env(safe-area-inset-bottom)); border-block-start: 1px solid var(--footer-line); color: var(--footer-ink-2); font-size: 0.75rem;
}
.site-footer__bottom p { margin: 0; }
/* Keep the last lines clear of the phone tab bar. */
@media (max-width: 899px) { .site-footer__bottom { padding-block-end: calc(88px + env(safe-area-inset-bottom)); } }
.site-footer__langs a[lang="ar"] { font-family: "IBM Plex Sans Arabic", var(--font-arabic); }
