/* R32.11: improve public-page reading, family photography, and wheel scrolling. */
html.r3211-wheel-ready {
  scroll-behavior: auto !important;
  overscroll-behavior-y: auto !important;
}

body.r21p5-public .r21p5-role-card p {
  color: #e5eff6 !important;
  -webkit-text-fill-color: #e5eff6 !important;
  font-size: clamp(11px, 1vw, 13px) !important;
  line-height: 1.5 !important;
}

body.r21p5-public .family-card-visual {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
}

body.r21p5-public .family-card-visual .family-card-icon {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: inherit !important;
}

@media (max-width: 900px) {
  body.r21p5-public .r319-home-nav > a {
    box-sizing: border-box !important;
    min-height: 42px !important;
    color: #24465d !important;
    -webkit-text-fill-color: #24465d !important;
    background: #edf4f7 !important;
    border: 1px solid rgba(36, 70, 93, .18) !important;
    border-radius: 10px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
  }

  body.r21p5-public .r319-home-nav > a.active {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: #174d68 !important;
    border-color: #174d68 !important;
  }

  body.r21p5-public header.r21p5-header nav:not(.r319-home-nav) {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 3px !important;
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }

  body.r21p5-public header.r21p5-header nav:not(.r319-home-nav) > a {
    box-sizing: border-box !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 5px 3px !important;
    justify-content: center !important;
    color: #edf5fb !important;
    -webkit-text-fill-color: #edf5fb !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    text-align: center !important;
    white-space: normal !important;
  }
}

body.r8-login .r8-login-card h2 {
  color: #17364f !important;
  -webkit-text-fill-color: #17364f !important;
}

body.r8-login .r8-login-card > p:not(.form-error) {
  color: #4d6377 !important;
  -webkit-text-fill-color: #4d6377 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

body.r8-login .r8-login-card label.remember {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: #17364f !important;
  -webkit-text-fill-color: #17364f !important;
}

body.r8-login .r8-login-card input[type="checkbox"] {
  box-sizing: border-box !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  flex: 0 0 18px !important;
  margin: 0 !important;
  accent-color: #176da5 !important;
}

body.r8-login .forgot-password-link {
  color: #155b82 !important;
  -webkit-text-fill-color: #155b82 !important;
  background: #e7f0f5 !important;
  background-image: none !important;
  border: 1px solid #bfd2de !important;
}

body.r8-login .r8-login-card form button:not(.password-visibility-toggle):not(.forgot-password-link):not(.r20-passkey-login) {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background-color: #087b89 !important;
  background-image: linear-gradient(135deg, #087b89, #245bb7) !important;
}

body.r8-login .r8-login-card .password-visibility-toggle {
  color: #17364f !important;
  -webkit-text-fill-color: #17364f !important;
  background: #e7f0f5 !important;
  background-image: none !important;
  border: 1px solid #bfd2de !important;
}

body.andisheh-luxury-theme:not(.r8-login) .forgot-password-link {
  color: #84e1f7 !important;
  -webkit-text-fill-color: #84e1f7 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

body.andisheh-luxury-theme .password-visibility-toggle {
  color: #17364f !important;
  -webkit-text-fill-color: #17364f !important;
  font-weight: 700 !important;
}
