:root {
  --ink: #121212;
  --ink-2: #242424;
  --ink-3: #2d2d2d;
  --edge: #22242e;
  --edge-2: #2c2f3a;
  --white: #fff;
  --paper: #f7f8fa;
  --line: #e7e8ee;
  --gray: #5b5d69;
  --gray-2: #8d8f9c;
  --dim: #9ea0ad;
  --dim-2: #6f7280;
  --blue: #3186ff;
  --green: #22c55e;
  --red: #f0523c;
  --r: 14px;
  --r-lg: 22px;
  --r-xl: 28px;
  --grid-long: 1170px;
  --grid-mid: 1006px;
  --grid-mini: 870px;
  --grid-gutter: 22px;
  --grid-inset: 32px;
  --section-space: 104px;
  --section-space-mobile: 80px;
  --story-columns: minmax(0, .88fr) minmax(0, 1.12fr);
  --story-columns-reverse: minmax(0, 1.12fr) minmax(0, .88fr);
  --story-gap: 72px;
  --story-gap-stack: 44px;
  --story-gap-mobile: 32px;
  --type-label-size: 12px;
  --type-label-line: 16px;
  --type-meta-size: 14px;
  --type-meta-line: 20px;
  --type-small-size: 15px;
  --type-small-line: 24px;
  --type-body-size: 16px;
  --type-body-line: 26px;
  --type-body-lg-size: 18px;
  --type-body-lg-line: 28px;
  --type-card-copy-size: 22px;
  --type-card-copy-line: 32px;
  --tracking-normal: 0;
  --tracking-label: .08em;
  --tracking-tight: -.03em;
  --tracking-heading: -.04em;
  --tracking-display: -.05em;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: "Albert Sans", sans-serif;
  font-size: var(--type-body-size);
  line-height: var(--type-body-line);
  letter-spacing: var(--tracking-normal);
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}

[hidden] {
  display: none !important;
}

button,
input,
textarea,
select {
  font: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

h1,
h2,
h3,
p {
  margin: 0;
}

h1,
h2,
h3 {
  letter-spacing: var(--tracking-heading);
}

h1 {
  font-size: clamp(40px, 6.4vw, 74px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: var(--tracking-display);
}

h2 {
  font-size: clamp(30px, 4.4vw, 50px);
  font-weight: 500;
  line-height: 1.13;
}

h3 {
  font-size: var(--type-body-lg-size);
  font-weight: 600;
  line-height: 24px;
  letter-spacing: var(--tracking-tight);
}

::selection {
  color: #fff;
  background: var(--ink);
}

.wrap,
.narrow {
  width: min(calc(100% - (var(--grid-gutter) * 2)), var(--grid-long));
  margin-inline: auto;
}

.wrap {
  padding-inline: var(--grid-inset);
}

.narrow {
  max-width: var(--grid-mini);
}

.mid {
  width: min(calc(100% - (var(--grid-gutter) * 2) - (var(--grid-inset) * 2)), var(--grid-mid));
  margin-inline: auto;
}

/* Grid surfaces use the desktop inset only on broad screens. */
@media (max-width: 880px) {
  .grid-rail.grid-rail {
    padding-inline: 0;
  }
}

/* On tablet and mobile, every rail shares the viewport gutter. The desktop
   inset is for broad grid surfaces, not an extra narrow-screen gutter. */
@media (max-width: 880px) {
  .wrap {
    padding-inline: 0;
  }

  .mid {
    width: min(calc(100% - (var(--grid-gutter) * 2)), var(--grid-mid));
  }
}

.faq {
  color: var(--ink);
}

.faq-panel {
  display: grid;
  grid-template-columns: minmax(0, 340px) minmax(0, 1fr);
  gap: 64px;
  align-items: start;
  width: min(calc(100% - (var(--grid-gutter) * 2)), var(--grid-long));
  margin: 0 auto;
  padding-inline: var(--grid-inset);
}

.faq .head {
  width: auto;
  margin: 0;
  text-align: left;
  position: sticky;
  top: 120px;
}

.faq-list {
  max-width: none;
  margin: 0;
}

.faq details {
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  overflow: hidden;
  will-change: height;
  transition: border-color .28s ease, background-color .28s ease;
}

.faq details:first-child {
  margin-top: 0;
}

.faq details:hover,
.faq details:focus-within,
.faq details[open] {
  border-color: #d9dbe3;
}

.faq details > p {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: opacity .18s ease;
}

.faq details > p > span {
  display: block;
  overflow: hidden;
  padding: 0 60px 26px 28px;
  color: var(--gray);
  font-size: var(--type-body-size);
  line-height: var(--type-body-line);
  transform: translateY(-6px);
  transition: transform .36s cubic-bezier(.22,1,.36,1);
}

.faq details[open] > p,
.faq details.is-closing > p {
  grid-template-rows: 1fr;
  opacity: 1;
}

.faq details[open] > p > span,
.faq details.is-closing > p > span {
  transform: none;
}

.faq summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 26px 28px;
  color: #000;
  font-size: var(--type-body-lg-size);
  font-weight: 500;
  line-height: var(--type-body-lg-line);
  letter-spacing: var(--tracking-normal);
  cursor: pointer;
  list-style: none;
}

.faq summary::-webkit-details-marker,
.faq summary::before {
  display: none;
}

.faq-question-icon {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  flex: none;
  border-radius: 50%;
  background: #8e919d;
  color: #fff;
}

.faq-question-icon svg {
  width: 11px;
  height: 11px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.faq-question {
  flex: 1;
}

.faq-toggle {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  color: var(--ink);
}

.faq-toggle svg {
  display: block;
  width: 20px;
  height: 20px;
  stroke-width: 1.8;
  transition: transform .28s cubic-bezier(.22,1,.36,1);
}

.faq details[open] .faq-toggle svg {
  transform: rotate(180deg);
}

.faq-contact {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
  margin-top: 12px;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--paper);
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  overflow: hidden;
  isolation: isolate;
  transition: background-color .2s ease;
}

.faq-contact::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: rgba(0,0,0,.035);
  content: "";
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease;
}

.faq-contact:hover::after,
.faq-contact:focus-visible::after {
  opacity: 1;
}

.faq-contact-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}

.faq-contact-avatars {
  display: flex;
  align-items: center;
}

.faq-contact-avatar {
  display: block;
  width: 72px;
  height: 72px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #d9dbe3;
  object-fit: cover;
  object-position: center 22%;
}

.faq-contact-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: var(--type-body-size);
  font-weight: 500;
  line-height: var(--type-body-line);
}

.faq-contact-link svg {
  width: 16px;
  height: 16px;
}

.faq-contact-copy h3 {
  margin: 0 0 6px;
  font-size: var(--type-body-lg-size);
  font-weight: 600;
  line-height: 24px;
  letter-spacing: var(--tracking-tight);
}

.faq-contact-copy p {
  margin: 0;
  color: var(--gray);
  font-size: var(--type-body-lg-size);
  line-height: var(--type-body-lg-line);
}

@media (prefers-reduced-motion: reduce) {
  .faq details,
  .faq details > p,
  .faq details > p > span,
  .faq-toggle svg {
    transition: none;
  }
}

@media (max-width: 980px) {
  .faq-panel {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .faq .head {
    position: static;
    text-align: center;
  }
}

@media (max-width: 700px) {
  .faq {
    padding: var(--section-space-mobile) 0;
  }

  .faq-panel {
    width: min(calc(100% - 44px), var(--grid-mini));
  }

  .faq summary {
    gap: 12px;
    padding: 20px 18px;
    font-size: 18px;
  }

  .faq details > p > span {
    padding: 0 18px 20px;
    font-size: 16px;
  }

  .faq-contact {
    padding: 22px;
  }

  .faq-contact-copy h3 {
    font-size: 18px;
  }

  .faq-contact-copy p {
    font-size: 16px;
  }
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 50px;
  padding: 14px 26px;
  border: 0;
  border-radius: var(--r);
  color: #fff;
  background: var(--ink);
  font-size: var(--type-small-size);
  font-weight: 500;
  line-height: 20px;
  letter-spacing: var(--tracking-normal);
  cursor: pointer;
  transition: transform .15s cubic-bezier(.2, .7, .3, 1), background .2s, border-color .2s, color .2s;
}

.btn:not(:disabled):not([aria-disabled="true"]):hover {
  background: var(--ink-2);
  transform: translateY(-1px);
}

.btn:not(:disabled):not([aria-disabled="true"]):active {
  transform: translateY(0);
}

.btn:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--blue) 34%, transparent);
  outline-offset: 3px;
}

.btn-lg {
  min-height: 56px;
  padding: 15px 34px;
  font-size: var(--type-body-size);
  line-height: 26px;
}

.btn-icon {
  display: inline-flex;
  width: 18px;
  height: 18px;
  flex: none;
  align-items: center;
  justify-content: center;
}

.btn-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.btn-icon--left {
  margin-left: -2px;
}

.btn-icon--right {
  margin-right: -2px;
}

.btn-spinner {
  width: 17px;
  height: 17px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: btn-spin .7s linear infinite;
}

.btn.is-loading,
.btn[aria-busy="true"] {
  cursor: wait;
}

.btn.is-loading .btn-icon,
.btn[aria-busy="true"] .btn-icon {
  display: none;
}

@keyframes btn-spin {
  to { transform: rotate(360deg); }
}

.btn-outline {
  border: 1px solid var(--line);
  color: var(--ink);
  background: transparent;
}

.btn-lg.btn-outline {
  padding-block: 14px;
}

.btn.btn-outline:not(:disabled):not([aria-disabled="true"]):hover {
  border-color: #cfd1d9;
  background: var(--paper);
}

.btn-ghost {
  background: transparent;
  color: var(--ink);
}

.btn.btn-ghost:not(:disabled):not([aria-disabled="true"]):hover {
  background: var(--paper);
}

.btn-white {
  background: #fff;
  color: var(--ink);
}

.btn.btn-white:not(:disabled):not([aria-disabled="true"]):hover {
  background: #f0f1f3;
}

.on-dark .btn-ghost {
  color: #fff;
}

.on-dark .btn.btn-ghost:not(:disabled):not([aria-disabled="true"]):hover {
  background: rgba(255,255,255,.1);
}

.btn:disabled,
.btn[aria-disabled="true"] {
  border-color: transparent;
  background: #989898;
  color: #fff;
  cursor: not-allowed;
  opacity: 1;
  pointer-events: none;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .btn-spinner {
    animation: none;
  }
}

/* Header navigation */
.site-header {
  position: sticky;
  top: 0;
  z-index: 70;
  padding: 0 var(--grid-gutter);
}

.site-header__surface {
  position: relative;
  width: min(calc(100vw - (var(--grid-gutter) * 2)), var(--grid-long));
  margin: 0 auto;
  border-radius: var(--r-lg);
  background: transparent;
  transition: background .2s, box-shadow .2s, border-radius .2s;
}

.site-header.is-scrolled .site-header__surface,
.site-header.is-menu-open .site-header__surface {
  background: #fff;
  box-shadow: 0 14px 38px -30px rgba(8, 9, 12, .45);
}

.site-header.is-menu-open .site-header__surface {
  border-radius: var(--r-lg) var(--r-lg) 0 0;
}

.site-header__inner {
  display: flex;
  align-items: center;
  min-height: 64px;
  gap: 22px;
}

.site-header__logo {
  display: flex;
  flex: none;
  align-items: center;
}

.site-header__logo img {
  display: block;
  width: 107px;
  height: 31px;
}

.site-header__links {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-right: auto;
  font-size: var(--type-small-size);
  font-weight: 500;
  line-height: var(--type-small-line);
}

.site-header__links a,
.site-header__trigger {
  padding: 7px 12px;
  border: 0;
  border-radius: 9px;
  color: var(--gray);
  background: transparent;
  font: inherit;
}

.site-header__links a:hover,
.site-header__trigger:hover,
.site-header__trigger:focus-visible,
.site-header.is-menu-open .site-header__trigger {
  color: var(--ink);
  background: var(--paper);
}

.site-header__trigger {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  cursor: pointer;
}

.site-header__trigger svg {
  width: 14px;
  height: 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  transition: transform .2s;
}

.site-header.is-menu-open .site-header__trigger svg { transform: rotate(180deg); }

.site-header__actions {
  display: flex;
  flex: none;
  align-items: center;
  gap: 9px;
}

.site-header__signin {
  padding: 7px 10px;
  color: var(--gray);
  font-size: var(--type-small-size);
  font-weight: 500;
  line-height: var(--type-small-line);
}

.site-header__mobile {
  display: none;
}

.site-header__mobile summary {
  display: flex;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line);
  border-radius: 12px;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
}

.site-header__mobile summary::-webkit-details-marker { display: none; }
.site-header__mobile summary svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; }
.site-header__mobile summary svg path { transform-box: fill-box; transform-origin: center; transition: transform .18s, opacity .18s; }
.site-header__mobile[open] summary svg path:first-child { transform: translateY(5px) rotate(45deg); }
.site-header__mobile[open] summary svg path:nth-child(2) { opacity: 0; }
.site-header__mobile[open] summary svg path:last-child { transform: translateY(-5px) rotate(-45deg); }

.site-header__mobile-panel {
  display: grid;
  gap: 4px;
  padding: 12px 0 18px;
}

.site-header__mobile-panel a:not(.btn) {
  padding: 12px;
  border-radius: 12px;
  color: var(--ink);
  font-size: var(--type-body-size);
  line-height: var(--type-body-line);
}

.site-header__mobile-panel a:not(.btn):hover { background: var(--paper); }
.site-header__mobile-panel .btn { width: 100%; margin-top: 8px; }

@media (max-width: 900px) {
  .site-header { padding: 0; background: #fff; border-bottom: 1px solid var(--line); }
  .site-header__surface,
  .site-header.is-menu-open .site-header__surface { width: 100%; border-radius: 0; box-shadow: none; }
  .site-header__inner { width: min(calc(100% - (var(--grid-gutter) * 2)), var(--grid-long)); margin: 0 auto; gap: 12px; }
  .site-header__logo img { width: 96px; height: auto; }
  .site-header__links,
  .site-header__actions { display: none; }
  .site-header__mobile { display: block; margin-left: auto; }
  .site-header__mobile summary { border: 0; }
  .site-header__mobile-panel {
    position: absolute;
    top: 64px;
    right: calc(var(--grid-gutter) * -1);
    left: calc(var(--grid-gutter) * -1);
    height: calc(100dvh - 64px);
    align-content: start;
    padding: 12px var(--grid-gutter) 18px;
    border-bottom: 1px solid var(--line);
    background: #fff;
    box-shadow: 0 18px 36px -30px rgba(8,9,12,.45);
    overflow-y: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header__surface,
  .site-header__trigger svg { transition: none; }
}

.tag,
.eyebrow {
  --tag: var(--blue);
  display: inline-flex;
  align-items: center;
  padding: 6px 14px;
  border-radius: 12px;
  color: var(--ink);
  background: var(--paper);
  font-size: var(--type-label-size);
  font-weight: 700;
  line-height: var(--type-label-line);
  letter-spacing: var(--tracking-label);
  text-transform: uppercase;
}

.tag--boxed-icon,
.eyebrow {
  gap: 8px;
  padding: 6px 10px 6px 6px;
  color: #000;
  background: color-mix(in srgb, var(--tag) 10%, transparent);
}

.tag--icon {
  gap: 10px;
  padding-left: 10px;
}

.tag-icon {
  display: inline-flex;
  width: 16px;
  height: 16px;
  align-items: center;
  justify-content: center;
  flex: none;
}

.tag-icon svg {
  display: block;
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
}

.tag-icon--boxed,
.eyebrow-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 17px;
  height: 17px;
  flex: none;
  border-radius: 5px;
  color: #f4f5f7;
  background: var(--tag);
}

.tag-icon--boxed svg,
.eyebrow-icon svg {
  display: block;
  width: 10px;
  height: 10px;
  fill: currentColor;
  stroke: none;
}

.head {
  width: min(calc(100% - (var(--grid-gutter) * 2)), var(--grid-mini));
  margin: 0 auto;
  text-align: center;
}

.head h2 {
  margin-top: 16px;
}

.head p {
  max-width: 650px;
  margin: 18px auto 0;
  color: var(--gray);
  font-size: var(--type-body-lg-size);
  line-height: var(--type-body-lg-line);
}

.footer-directory {
  padding: 0;
  border: 0;
  color: var(--ink);
}

.footer-directory.is-hidden,
.pre-footer.is-hidden {
  display: none;
}

.footer-directory-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 48px 28px;
  padding: 56px var(--grid-inset) 48px;
}

.footer-directory h3 {
  margin-bottom: 24px;
  font-size: var(--type-small-size);
  line-height: var(--type-small-line);
  letter-spacing: var(--tracking-normal);
}

.footer-directory ul {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-directory a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--gray);
  font-size: var(--type-meta-size);
  line-height: var(--type-meta-line);
}

.footer-directory a:hover {
  color: var(--ink);
}

.footer-new-badge {
  align-items: center;
  display: inline-flex;
  padding: 2px 8px;
  border: 1px solid #94959d;
  border-radius: 999px;
  color: var(--gray);
  background: #fff;
  font-size: var(--type-label-size);
  font-weight: 500;
  line-height: var(--type-label-line);
  letter-spacing: 0;
  white-space: nowrap;
}

.pre-footer {
  padding: 72px 0 40px;
  border: 0;
}

.pre-footer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 28px;
}

.pre-footer-head h2 {
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 600;
  letter-spacing: var(--tracking-heading);
}

.pre-footer-all {
  color: var(--gray);
  font-size: var(--type-meta-size);
  line-height: var(--type-meta-line);
  font-weight: 600;
  transition: color .16s;
}

.pre-footer-all:hover {
  color: var(--ink);
}

.pre-footer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.pre-footer-card {
  display: flex;
  min-height: 220px;
  flex-direction: column;
  align-items: flex-start;
  padding: 30px;
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  color: var(--ink);
  background: #fff;
  transition: border-color .18s, transform .18s;
}

.pre-footer-card:hover {
  border-color: #cfd1d8;
  transform: translateY(-2px);
}

.pre-footer-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: var(--ink);
  background: var(--paper);
}

.pre-footer-icon svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
}

.pre-footer-card h3 {
  margin-top: 24px;
  font-size: var(--type-card-copy-size);
  line-height: var(--type-card-copy-line);
  letter-spacing: var(--tracking-tight);
}

.pre-footer-card p {
  max-width: 30ch;
  margin-top: 10px;
  color: var(--gray);
  font-size: var(--type-small-size);
  line-height: var(--type-small-line);
}

.pre-footer-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: auto;
  padding-top: 28px;
  font-size: var(--type-meta-size);
  line-height: var(--type-meta-line);
  font-weight: 600;
}

.pre-footer-link svg {
  width: 15px;
  height: 15px;
  transition: transform .16s;
}

.pre-footer-card:hover .pre-footer-link svg {
  transform: translateX(3px);
}

footer {
  padding: 0;
  border-top: 0;
  color: var(--ink);
}

footer > .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 30px var(--grid-inset) 34px;
}

.f-main,
.f-bottom {
  display: contents;
}

.f-brand {
  align-self: auto;
}

.f-brand .logo {
  display: inline-flex;
}

.f-bottom {
  color: var(--gray);
  font-size: var(--type-meta-size);
  line-height: var(--type-meta-line);
}

.f-bottom p {
  flex: 0 0 auto;
}

.f-legal {
  display: flex;
  position: static;
  z-index: auto;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 24px;
  margin-left: auto;
  background: transparent;
}

.f-legal a {
  color: var(--gray);
  white-space: nowrap;
}

.f-legal a:hover {
  color: var(--ink);
}

@media (max-width: 980px) {
  .footer-directory-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 48px 32px;
  }
}

@media (max-width: 800px) {
  .pre-footer-grid {
    grid-template-columns: 1fr;
  }

  .pre-footer {
    padding: 56px 0 32px;
  }

  .pre-footer-card {
    min-height: 190px;
  }

}

@media (max-width: 700px) {
  .pre-footer-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .footer-directory-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 38px 24px;
    padding: 36px var(--grid-inset) 40px;
  }

  .footer-directory h3 {
    margin-bottom: 16px;
  }

  .footer-directory ul {
    gap: 12px;
  }

  footer > .wrap {
    align-items: flex-start;
    flex-direction: column;
    gap: 24px;
    padding: 40px 0;
  }

  .f-legal {
    justify-content: flex-start;
    gap: 12px 20px;
    margin-left: 0;
  }
}

@media (max-width: 520px) {
  .pre-footer-head {
    gap: 10px;
  }

  .pre-footer-card {
    padding: 24px;
  }
}

@media (max-width: 430px) {
  .footer-directory-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
