@layer fs-components {
  .fs-footer { border-block-start: 1px solid var(--fs-color-line-soft); background: var(--fs-color-bg); }
  .fs-footer .fs-container { inline-size: min(100% - 2 * var(--fs-gutter), 101.5rem); }
  .fs-footer__inner { display: grid; grid-template-columns: 1fr; gap: 2rem; padding-block: 52px 48px; }
  .fs-footer__brand { max-inline-size: 25rem; }
  .fs-footer__brand .fs-logo__image { inline-size: auto; block-size: 56px; max-inline-size: 120px; max-block-size: 56px; object-fit: contain; }
  .fs-footer__brand .fs-logo__mark { inline-size: 80px; block-size: 48px; }
  .fs-footer__brand p { margin: 0; font-size: .875rem; line-height: 1.5; }
  .fs-footer__brand .fs-footer__tagline { margin-block-start: 18px; font-size: .875rem; }
  .fs-footer__socials { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-block-start: 22px; }
  .fs-footer__socials a { display: inline-grid; place-items: center; inline-size: 38px; block-size: 38px; border: 1px solid var(--fs-color-line-soft); border-radius: 50%; transition: border-color .2s ease, transform .2s ease; }
  .fs-footer__socials a:hover, .fs-footer__socials a:focus-visible { border-color: currentColor; transform: translateY(-2px); }
  .fs-footer__socials img { inline-size: 20px; block-size: 20px; object-fit: contain; }
  .fs-footer__column h2 { margin-block: 2px 18px; font-size: .6875rem; letter-spacing: .14em; }
  .fs-footer__links, .fs-footer__legal-links { list-style: none; padding: 0; margin: 0; }
  .fs-footer__links a, .fs-footer__legal a { display: inline-flex; align-items: center; min-block-size: 34px; text-decoration: none; font-family: var(--fs-font-ui); font-size: .875rem; }
  .fs-footer__links a:hover, .fs-footer__legal a:hover { text-decoration: underline; }
  .fs-footer__links .sub-menu { padding-inline-start: 1rem; list-style: none; }
  .fs-footer__newsletter .fs-newsletter-form { display: grid; grid-template-columns: minmax(0, 1fr) 44px; align-items: end; column-gap: 0; inline-size: 100%; max-inline-size: 20rem; }
  .fs-footer__newsletter .fs-newsletter-form > p { margin: 0; }
  .fs-footer__newsletter .fs-newsletter-form > p:first-of-type { grid-column: 1; grid-row: 1; }
  .fs-footer__newsletter .fs-newsletter-form > p:first-of-type > label { position: absolute; inline-size: 1px; block-size: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
  .fs-footer__newsletter input[type="email"] { inline-size: 100%; min-block-size: 44px; border: 0; border-block-end: 1px solid currentColor; padding: .55rem 0; background: transparent; color: inherit; outline-offset: 3px; }
  .fs-footer__newsletter input[type="email"]::placeholder { color: var(--fs-color-muted); opacity: .72; }
  .fs-footer__newsletter .fs-newsletter-form > button { grid-column: 2; grid-row: 1; align-self: stretch; min-inline-size: 44px; min-block-size: 44px; border: 0; border-block-end: 1px solid currentColor; padding: 0; background: transparent; color: inherit; font-size: 0; }
  .fs-footer__newsletter .fs-newsletter-form > button::before { content: "→"; font-size: 1.65rem; font-weight: 400; line-height: 1; }
  .fs-footer__newsletter .fs-newsletter-form > button:hover { background: transparent; color: inherit; transform: translateX(.2rem); }
  .fs-footer__newsletter .fs-newsletter-form > p:nth-of-type(3) { grid-column: 1 / -1; grid-row: 2; margin-block-start: 1rem; font-size: .72rem; line-height: 1.45; }
  .fs-footer__newsletter .fs-newsletter-form > p:nth-of-type(3) label { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: .55rem; }
  .fs-footer__newsletter .fs-newsletter-form > p:nth-of-type(3) input { margin-block-start: .18rem; }
  .fs-footer__newsletter .fs-newsletter-form > p:last-child { grid-column: 1 / -1; grid-row: 3; margin-block-start: .65rem; min-block-size: 1.2rem; font-size: .75rem; }
  .fs-footer__legal { border-block-start: 1px solid var(--fs-color-line-soft); }
  .fs-footer__legal-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem 2rem; min-block-size: 4.25rem; padding-block: 1.125rem; font-size: .625rem; letter-spacing: .08em; text-transform: uppercase; }
  .fs-footer__legal-inner > p { margin: 0; }
  .fs-footer__legal-links { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; }
  @media (min-width: 600px) { .fs-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  .fs-footer__credit { margin-inline-start:auto; }
  @media (min-width: 1101px) { .fs-footer__inner { grid-template-columns: 1.15fr .85fr .85fr 1fr 1.2fr; gap:clamp(24px,3vw,44px); } }
  @media (min-width:600px) and (max-width:1100px) { .fs-footer__inner{grid-template-columns:1.3fr 1fr 1fr}.fs-footer__newsletter{grid-column:auto}.fs-footer__newsletter .fs-newsletter-form{max-inline-size:28rem} }
  @media (max-width:767px) { .fs-footer__inner{grid-template-columns:1fr 1fr;padding-block:44px;gap:36px 22px}.fs-footer__brand,.fs-footer__newsletter{grid-column:1/-1}.fs-footer__column h2{margin-block-end:.75rem}.fs-footer__legal-inner { flex-direction:column;align-items:flex-start; }.fs-footer__legal-links{justify-content:flex-start}.fs-footer__credit{margin-inline-start:0} }
  @media (max-width:420px) { .fs-footer__inner{grid-template-columns:1fr}.fs-footer__brand,.fs-footer__column,.fs-footer__newsletter{grid-column:1/-1} }
}

@layer fs-components { .fs-merchant-info { padding-block:1.5rem; display:flex; flex-wrap:wrap; gap:1rem; border-block-start:1px solid var(--fs-color-line-soft); } .fs-merchant-info p { margin:0; } }
