/* Social Leaders: responsive and visual accessibility corrections.
   Load after assets/style.css and assets/style18.css. */

/* Keep the brand background while making menu and button text readable. */
.header__mainNav,
.header__mainNav .header__menuLink,
.header__copyrightText,
#jezyki--sl a,
#jezyki--sl a:nth-child(1),
.contact__btn,
.contactForm__button,
.goTop {
  color: #023947;
}
.goTop span:not(.icon) {
  text-shadow: none;
}
#jezyki--sl a {
  opacity: 1 !important;
}
.header__mainNav .header__menuLink:hover,
#jezyki--sl a:hover {
  color: #001e26;
}
.contact__inputs input::placeholder,
.contact__inputs textarea::placeholder {
  color: #595959;
  opacity: 1;
}

/* Enlarge controls without changing the existing icon artwork. */
.header__toggle {
  min-height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
}
.cookies__close {
  min-width: 44px;
  min-height: 44px;
  flex-shrink: 0;
}
#jezyki--sl a,
.header__icons > a,
.contact__social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
}
.contact__inputs input {
  min-height: 44px;
}
/* These compact text links need their own 24px target without altering prose. */
.contactInfo a,
.info__list .info__link,
.info__list a[href^="tel:"],
.contact__footer > a {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
}
.header__toggle:focus-visible,
.header__mainNav a:focus-visible,
.contact a:focus-visible,
.contact button:focus-visible,
.cookies__close:focus-visible {
  outline: 3px solid currentColor;
  outline-offset: 4px;
}
.contact__inputs input:focus-visible,
.contact__inputs textarea:focus-visible {
  outline: 3px solid #00d3d5;
  outline-offset: 2px;
}

/* The standalone brief needs document flow when its content exceeds a screen.
   This does not change the desktop fullPage home-page contact section. */
@media (max-width: 1263px) {
  body.contactFull {
    height: auto;
    min-height: 100vh;
  }
  .contactFull > .section,
  .contactFull .contact {
    height: auto;
    min-height: 100vh;
  }
  .contactFull .contact {
    justify-content: flex-start;
    padding-top: 90px;
    padding-bottom: 140px;
  }
  .contactFull .contact__footer {
    position: static;
    flex-shrink: 0;
    margin-top: 32px;
    gap: 16px;
  }
  .contactFull .contact__form {
    flex-shrink: 0;
  }
}

/* Short screens scroll the open menu; its footer never overlays its links. */
@media (max-height: 600px) {
  .header__mainNav {
    height: 100vh;
    height: 100dvh;
    justify-content: flex-start;
    overflow-y: auto;
    scroll-padding: 70px 0 140px;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
    padding: 70px 24px 140px;
    font-size: 30px;
    line-height: 1.5;
  }
  .header__mainNav > ul {
    flex-shrink: 0;
  }
  .header__mainNav .header__menuLink {
    min-height: 44px;
  }
  .header__mainNav .header__infoSection {
    position: static;
    transform: none;
    flex-shrink: 0;
    flex-direction: column;
    width: 100%;
    max-width: 360px;
    height: auto;
    margin-top: 24px;
    gap: 12px;
    line-height: 1.4;
  }
  .header__mainNav #jezyki--sl {
    position: static;
    order: -1;
    display: flex;
    justify-content: center;
    line-height: 1.4;
  }
  .header__mainNav .header__copyright,
  .header__mainNav .header__icons {
    width: 100%;
    margin: 0;
  }
}
