/* Text logo (brand from domain) */
.text-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width: 100%;
  text-decoration: none;
}
.text-logo__mark {
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: var(--primary, #317C6F);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Archivo", Arial, sans-serif;
  font-weight: 800;
  font-size: 20px;
  line-height: 1;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .25);
}
.text-logo__name {
  font-family: "Archivo", Arial, sans-serif;
  font-weight: 800;
  font-size: clamp(17px, 1.6vw, 24px);
  line-height: 1.1;
  letter-spacing: .06em;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .35);
}
.text-logo--dark .text-logo__name {
  color: var(--on-suface-container, #24283E);
  text-shadow: none;
}
.text-logo--dark .text-logo__mark {
  box-shadow: none;
}
.header .logo .text-logo__name {
  max-width: 320px;
}
.mobile-nav-wrap .logo-mobile .text-logo__name {
  max-width: 220px;
}

/* Header: readable both on the hero and when fixed */
.header.style-1 {
  background: rgba(36, 40, 62, .55);
}
.header.style-1.is-fixed {
  background: var(--on-suface-container, #24283E);
  box-shadow: 0 6px 24px rgba(0, 0, 0, .18);
}
@media (max-width: 1399px) {
  .header .nav-btn {
    display: none;
  }
}

/* Anchor offsets under the sticky header */
.section-one-page,
#footer {
  scroll-margin-top: 90px;
}

/* Bootstrap toggles rendered as <a> without href */
[data-bs-toggle] {
  cursor: pointer;
}

/* Email instead of phone: no "ringing" animation */
.tf-phone.tf-mail .icon i {
  animation: none;
}
.tf-phone.tf-mail h6 a {
  word-break: break-all;
}

/* Footer disclaimer instead of newsletter form */
.footer-subscribe .footer-note {
  margin-top: 12px;
  color: rgba(255, 255, 255, .75);
}

/* Legal modals */
.legal-modal .modal-content {
  border-radius: 16px;
  padding: 12px;
}
.legal-modal .modal-body p {
  margin-bottom: 12px;
}
.legal-modal .modal-body h6 {
  margin: 18px 0 8px;
}
.legal-modal .modal-body h6:first-child {
  margin-top: 0;
}
.legal-modal .modal-body ul {
  padding-left: 20px;
  list-style: disc;
}
.legal-modal .modal-body li {
  list-style: disc;
  margin-bottom: 6px;
}
