:root {
  --color-primary-400: #4fb9a9;
  --color-secondary-400: #4fb9a9;

  --brand-color: var(--color-primary-400);
  --font-family-text: Arial, sans-serif;
  --font-family-display: Arial, sans-serif;
}

.header {
  --logo-height: 3rem;
}

.button-secondary {
  --color: currentColor;
}

.nav-header .cart,
.nav-top {
  border-color: #fff;
}

.nav-header .cart-count {
  background-color: white;
  color: currentColor;
}

.footer {
  background-color: white;
  color: white;
  font-size: 14px;
}

.footer > .container {
  background-color: #373737;
  display: block;
  padding: 1.5rem 2rem;
}

.footer .logo {
  display: none;
}

.footer h4 {
  font-size: 15px;
}

.footer .children li {
  margin-block-start: 6px;
  text-decoration: underline;
}

.footer .nav-footer {
  margin-block-end: 0;
}

@media (min-width: 1024px) {
  .header {
    --logo-height: 5;
  }

  .header {
    align-items: stretch;
    flex-direction: column;
    gap: 0;
    justify-content: start;
  }

  .nav {
    align-items: stretch;
  }

  .nav-top-desktop {
    justify-content: end;
  }

  .nav-top {
    margin-block-start: -1.5rem;
    column-gap: 1.5rem;
  }

  .nav-top a {
    color: var(--color-neutral-400);
    font-size: 0.75rem;
  }

  .nav-top li {
    position: relative;
  }

  .nav-top li:not(:last-child)::after {
    background-color: currentColor;
    content: "";
    height: 100%;
    opacity: 0.25;
    position: absolute;
    right: calc(-0.75rem - 1px);
    top: 0;
    width: 1px;
  }

  .nav-header {
    flex-wrap: wrap;
    gap: 0;
  }

  .nav-header li:not(:last-child) {
    border-inline-end: 1px solid rgba(255, 255, 255, 0.25);
  }

  .nav-header .parent {
    font-family: Arial, sans-serif;
    font-size: 22px;
    font-weight: 700;
    gap: 0;
    padding: 1rem;
  }

  .nav-header .parent:hover,
  .nav-header .cart:hover {
    background-color: var(--brand-color);
    color: white;
  }

  .nav-header .parent:hover {
    text-decoration: none;
  }

  .nav-header .cart {
    border: 0;
    height: auto;
    padding-block: 1rem;
    padding-inline: 1rem;
    width: auto;
  }
}
