footer {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  border-left: 1px solid var(--stroke--color);
  border-bottom: 1px solid var(--stroke--color);
  border-right: 1px solid var(--stroke--color);
  width: 100%;
  box-sizing: border-box;
}

.divider {
  width: 100%;
  height: auto;
  display: block;
}

.divider-dark-shade {
  fill: var(--divider--dark--shade);
}

.divider-light-shade {
  fill: var(--divider--light--shade);
}

.footer-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  box-sizing: border-box;
  padding: 0 1rem;
  max-width: 440px;
  align-self: stretch;
}

footer .email-wrapper * {
  font-family: var(--type--scale---body--medium--family);
  font-weight: var(--type--scale---body--medium--weight);
  font-size: var(--type--scale---body--medium--size);
  line-height: var(--type--scale---body--medium--height);
  letter-spacing: var(--type--scale---body--medium--space);
}

.footer-link-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

.footer-link-wrapper * {
  font-family: var(--type--scale---body--large--family);
  font-weight: var(--type--scale---body--large--weight);
  font-size: var(--type--scale---body--large--size);
  line-height: var(--type--scale---body--large--height);
  letter-spacing: var(--type--scale---body--large--space);
}

.footer-large-logo-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: calc(100vw - 2rem);
  box-sizing: border-box;
}

.footer-large-logo-wrapper .large-logo {
  max-width: 320px;
  height: auto;
  margin: 0;
}

footer .copyright {
  background-color: transparent;
}

@media screen and (min-width: 1400px) {
}

@media screen and (min-width: 1900px) {
}

@media screen and (min-width: 2500px) {
}

@media screen and (max-width: 1400px) {
  /* XXL */
}

@media screen and (max-width: 1250px) {
}

@media screen and (max-width: 1200px) {
  /* XL */
}

@media screen and (max-width: 992px) {
  /* LG */
}

@media screen and (max-width: 768px) {
  /* M */
}

@media screen and (max-width: 576px) {
  /* S */

  .footer-link-wrapper * {
    font-family: var(--type--scale---body--large--family) !important;
    font-weight: var(--type--scale---body--large--weight) !important;
    font-size: var(--type--scale---body--large--size) !important;
    line-height: var(--type--scale---body--large--height) !important;
    letter-spacing: var(--type--scale---body--large--space) !important;
  }
}

@media screen and (max-width: 258px) {
  /* XS */
}
