/* A quiet, complete directory beneath the main experience. */
.footer {
  position: relative; isolation: isolate; overflow: hidden;
  padding-top: clamp(60px, 5.5vw, 88px); --muted: var(--text-secondary-dark);
  background:
    radial-gradient(ellipse at 50% 100%, #9985c410, transparent 72%),
    linear-gradient(180deg, var(--neutral-975), var(--neutral-975));
}
.footer .footer-main {
  display: grid; grid-template-columns: minmax(210px, 1.5fr) minmax(0, 6fr);
  align-items: start; gap: clamp(30px, 3vw, 48px); padding-bottom: clamp(28px, 2.5vw, 40px);
}
.footer .footer-brand { min-width: 0; }
.footer-brand-wordmark { display: block; width: clamp(156px, 12.2vw, 186px); max-width: 100%; }
.footer-brand-wordmark img { display: block; width: 100%; height: auto; }
.footer .footer-brand > p { max-width: 270px; margin-top: 22px; font-size: 14px; line-height: 1.75; color: var(--muted); }
.footer-socials { display: flex; align-items: center; gap: 8px; margin-top: 26px; }
.footer-social {
  display: inline-flex; align-items: center; justify-content: center;
  width: clamp(34px, 2.7vw, 40px); height: clamp(34px, 2.7vw, 40px); flex-shrink: 0;
  border: 1px solid #ffffff26; border-radius: var(--radius-round); color: var(--neutral-300);
  transition: color .2s ease, background .2s ease, border-color .2s ease;
}
.footer-social svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
a.footer-social:hover { background: #c9baff; border-color: #c9baff; color: var(--neutral-925); }
.footer .footer-links { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px; margin: 0; min-width: 0; }
.footer .footer-links h3 { margin: 0 0 23px; color: var(--text-secondary-dark); font: 500 11px/1.5 Inter, sans-serif; letter-spacing: .075em; text-transform: uppercase; white-space: nowrap; }
.footer .footer-links ul { display: grid; gap: 14px; list-style: none; padding: 0; margin: 0; }
.footer .footer-links a, .footer .footer-pending { display: block; margin: 0; color: var(--neutral-250); font: 400 14px/1.55 Inter, sans-serif; letter-spacing: -.015em; }
.footer .footer-links a { width: fit-content; transition: color .2s ease; }
.footer .footer-links a:hover { color: #d7caff; }
.footer .footer-wordmark { border-top: 0; padding: 0 0 clamp(28px, 3vw, 48px); }
.footer .footer-bottom { border-top-color: #ffffff1a; color: var(--text-secondary-dark); padding: 24px 0; gap: 24px; }
.footer-bottom-right { display: flex; align-items: center; gap: 24px; }
.footer-legal { display: flex; align-items: center; gap: 6px; font-size: 12px; }
.footer-language { position: relative; flex-shrink: 0; }
.footer-language select {
  appearance: none; -webkit-appearance: none; color-scheme: dark;
  display: block; width: 148px; min-height: 42px; padding: 10px 34px 10px 13px;
  border: 1px solid #ffffff24; border-radius: var(--radius-control); background: color-mix(in srgb, var(--neutral-1000) 40%, transparent); color: var(--neutral-250);
  font: 400 13px/1.4 Inter, sans-serif; cursor: pointer;
}
.footer-language select:hover { border-color: #ffffff45; }
.footer-language select:focus-visible { outline: 2px solid var(--lilac); outline-offset: 3px; }
.footer-language > svg { position: absolute; right: 13px; top: 50%; transform: translateY(-50%); width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 1.5; pointer-events: none; }
@media (min-width: 1450px) {
  .footer .footer-brand > p, .footer .footer-links a, .footer .footer-pending { font-size: 15px; }
  .footer .footer-links h3 { font-size: 12px; }
  .footer .footer-links ul { gap: 16px; }
}
@media (max-width: 1100px) {
  .footer .footer-main { grid-template-columns: 1fr; gap: 46px; }
  .footer .footer-brand { display: grid; grid-template-columns: 220px minmax(0, 390px) 1fr; align-items: start; gap: 24px; }
  .footer .footer-brand > p { margin: 0; max-width: 360px; }
  .footer-socials { margin: 0; justify-self: end; }
  .footer .footer-links { gap: 20px; }
}
@media (max-width: 900px) {
  .footer .footer-brand { display: block; }
  .footer .footer-brand > p { margin-top: 20px; max-width: 350px; }
  .footer-socials { margin-top: 22px; justify-self: start; width: fit-content; }
  .footer-social { width: 40px; height: 40px; }
  .footer .footer-links { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 38px 28px; }
}
@media (max-width: 600px) {
  .footer { padding-top: 48px; }
  .footer .footer-main { gap: 40px; padding-bottom: 24px; }
  .footer-brand-wordmark { width: 158px; }
  .footer .footer-brand > p { max-width: 310px; font-size: 14px; }
  .footer .footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 22px; }
  .footer .footer-links h3 { margin-bottom: 18px; }
  .footer .footer-links a, .footer .footer-pending { font-size: 14px; }
  .footer .footer-links ul { gap: 12px; }
  .footer .footer-bottom { flex-direction: column; align-items: flex-start; gap: 20px; padding: 22px 0 26px; }
  .footer-bottom-right { width: 100%; justify-content: space-between; gap: 12px; }
  .footer-legal { font-size: 11px; gap: 5px; }
  .footer-language select { width: 136px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .footer-social, .footer .footer-links a { transition: none; }
}
