@media (max-width: 84em) {
  html {
    font-size: 56.25%;
  }

  .welcome-text-box .button-container {
    flex-direction: column;
  }

  .aboutme-button-box:after {
    font-size: 1.8rem;
    width: 12rem;
    height: 12rem;
    top: -52%;
    right: -21%;
  }
}

@media (max-width: 63em) {
  .aboutme-button-box:after {
    font-size: 1.6rem;
    width: 10rem;
    height: 10rem;
    top: -34%;
    right: -35%;
  }
}

@media (max-width: 57em) {
  .logo {
    margin: 0;
    padding: 2.4rem 1.8rem;
  }

  .section-aboutme,
  .section-pricing,
  .section-welcome,
  .section-dataprivacy,
  .section-impressum,
  .section-studio {
    padding: 9.6rem 0;
  }

  .section-news {
    padding: 9.6rem 3.2rem;
  }

  .navigation-menu {
    position: absolute;
    top: 4.8rem;
    background-color: #266d7d;
    opacity: 0.9;
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 3.2rem 0;
    justify-content: center;
    align-items: center;
    gap: 3.2rem;
    z-index: 9999;
    transform: translateX(100%);
    transition: all 0.5s ease-out;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
  }

  .nav-open .navigation-menu {
    transform: translateX(0);
    opacity: 0.9;
    pointer-events: all;
    visibility: visible;
    transition: all 0.5 ease-in;
  }

  .nav-link:link,
  .nav-link:visited {
    font-size: 3.2rem;
    font-weight: 400;
    opacity: 1;
  }

  .welcome-content {
    grid-template-columns: 1fr;
  }

  .section-gallery {
    padding: 9.6rem 1.8rem;
  }

  .pricing {
    grid-template-columns: 1fr;
  }

  .pricing .pricing-card:first-child,
  .pricing-card {
    justify-self: center;
    width: 90%;
  }

  .pricing-card.active {
    grid-row: 1;
  }

  .pricing-additional-info p {
    text-align: left;
    padding: 1.2rem 3.2rem;
  }

  .products {
    grid-template-columns: 1fr 1fr;
  }

  .aboutme {
    grid-template-columns: 1fr;
    gap: 6.4rem;
  }

  .aboutme-slogan {
    position: static;
    width: 100%;
    height: auto;
    transform: translate(0, 0);
    border-radius: 100px;
  }

  .aboutme .aboutme-image-box:last-child {
    grid-row: 3;
  }

  .aboutme-title {
    font-size: 3.2rem;
  }

  .aboutme-button-box:after {
    display: none;
  }

  .studio {
    grid-template-columns: 1fr;
    gap: 4.8rem;
  }

  .studio-title {
    grid-column: 1;
  }

  .studio-image-box {
    grid-row: 3;
    align-self: center;
    justify-self: center;
  }

  .footer {
    grid-template-columns: repeat(3, 1fr);
  }

  .footer-left {
    grid-row: 2;
    grid-column: 1 / span 3;
    width: 100%;
  }

  .footer-socialmedia-icons {
    justify-self: center;
  }

  .footer-address-col,
  .footer-links-col {
    justify-self: center;
  }

  .cookie-consent {
    flex-direction: column;
    gap: 2.4rem;
  }

  .cookie-consent .button-container {
    flex-direction: column;
    gap: 1.6rem;
  }
}

@media (max-width: 38em) {
  html {
    font-size: 50%;
  }
  .products {
    grid-template-columns: 1fr;
  }

  .footer {
    gap: 1.2rem;
  }
}
