body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: none;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

:focus-visible {
  outline-color: var(--wp--preset--color--yellow);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

strong {
  font-weight: bold;
}

.no-wrap {
  white-space: nowrap;
}

@media screen and (min-width: 601px) {
  .admin-bar .page-header {
    top: 46px;
  }
}

@media screen and (min-width: 782px) {
  .admin-bar .page-header {
    top: 32px;
  }
}

.page-header {
  z-index: 100;
  top: 0;
  position: sticky;
}

.page-header .wp-block-site-logo img {
  max-width: 196px;
}

@media screen and (min-width: 780px) {
  .page-header .wp-block-site-logo img {
    max-width: 100%;
  }
}

.page-header .main-nav {
  position: relative;
}

.page-header .toggle-lang-switcher .wp-block-button__link::after {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background-repeat: no-repeat;
  background-image: url('../images/flag-en.svg');
  vertical-align: middle;
  margin-left: 0.5rem;
  display: inline-block;
}

.page-header .toggle-en .wp-block-button__link::after {
  background-image: url('../images/flag-en.svg');
}

.page-header .toggle-de .wp-block-button__link::after {
  background-image: url('../images/flag-de.svg');
}

.page-header .toggle-es .wp-block-button__link::after {
  background-image: url('../images/flag-es.svg');
}

.page-header .toggle-it .wp-block-button__link::after {
  background-image: url('../images/flag-it.svg');
}

.page-header .toggle-fr .wp-block-button__link::after {
  background-image: url('../images/flag-fr.svg');
}

.page-header .lang-switcher {
  display: none;
  z-index: 10;
  right: 0;
  bottom: 0;
  min-width: 8.3125rem;
  transform: translateY(108%);
  position: absolute;
}

.page-header .lang-switcher.active {
  display: block;
}

.page-header .lang-switcher .lang-item:not(:last-child) {
  margin-bottom: 1rem;
}

.page-header .lang-switcher .lang-item a::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background-repeat: no-repeat;
  vertical-align: middle;
  margin-right: 0.5rem;
  display: inline-block;
}

.page-header .lang-switcher .lang-en a::before {
  background-image: url('../images/flag-en.svg');
}

.page-header .lang-switcher .lang-de a::before {
  background-image: url('../images/flag-de.svg');
}

.page-header .lang-switcher .lang-es a::before {
  background-image: url('../images/flag-es.svg');
}

.page-header .lang-switcher .lang-fr a::before {
  background-image: url('../images/flag-fr.svg');
}

.page-header .lang-switcher .lang-it a::before {
  background-image: url('../images/flag-it.svg');
}

.page-header .wp-block-buttons .signup-btn {
  display: none;
}

@media screen and (min-width: 780px) {
  .page-header .wp-block-buttons .signup-btn {
    display: block;
  }
}

@media screen and (min-width: 780px) {
  .page-footer .footer-nav {
    max-width: 31.75rem;
  }

  .page-footer .footer-info {
    text-align: right;
  }

  .page-footer .footer-info>.wp-block-group {
    justify-content: flex-end;
  }

  .page-footer .cta-buttons {
    display: none;
  }
}

.page-footer .footer-info .wp-block-image img {
  display: block;
}

.page-footer .twitter-item .wp-block-navigation-item__label::before {
  content: "";
  width: 1rem;
  height: 1rem;
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.13332 7.0667L13.6 2H12.5334L8.66667 6.40003L5.6 2H2L6.66665 8.66667L2 14H3.06665L7.1333 9.33335L10.4 14H14L9.13332 7.0667ZM7.66663 8.73335L7.19998 8.06667L3.46663 2.80002H5.0666L8.13328 7.0667L8.59993 7.73337L12.5332 13.2667H10.9333L7.66663 8.73335Z' fill='%23FF9999'/%3E%3C/svg%3E%0A");
  vertical-align: text-bottom;
  margin-right: 0.25rem;
  display: inline-block;
}
