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

.mb-last-0 p:last-child {
  margin: 0 !important;
}

.no-link-color a {
  color: inherit !important;
  pointer-events: none !important;
}

.sv-clamp-2 > :is(p, h1, h2, h3, h4, h5, h6, span, a, li, div) {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  line-clamp: 2;
}

.d-none {
  display: none !important;
}

.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.btn-align .elementor-button-icon {
  display: flex;
  align-items: center;
}

.contrast-primary {
  color: var(--color-primary);
}

.sv-container {
  margin: 0 auto;
  max-width: var(--container);
  width: calc(100% - 32px);
}

@media (min-width: 768px) {
  .sv-container {
    width: calc(100% - 48px);
  }
}

@media (min-width: 1025px) {
  .sv-container {
    width: calc(100% - 64px);
  }
}

.text-highlighted-primary {
  color: var(--color-primary);
  font-weight: 650;
}

@media (min-width: 1025px) {
  #sv-header .show-mobile {
    display: none !important;
  }
}

/* Show only on desktop (1025px and up) */
#sv-header .show-desktop {
  display: none;
}

.no-br-mobile br {
  display: none !important;
}

@media (min-width: 1025px) {
  #sv-header .show-desktop {
    display: block;
  }

  .no-br-mobile br {
    display: block !important;
  }
}

/* Icon Classes - for use with titles/labels */
.icon-location,
.icon-email,
.icon-phone {
  position: relative;
  padding-left: 26px;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 18px;
  color: #0064b5;
}

.icon-location::before,
.icon-email::before,
.icon-phone::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  background-color: #2e3646;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

/* Location pin icon */
.icon-location::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
}

/* Email icon */
.icon-email::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E");
}

/* Phone icon */
.icon-phone::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
}

/* Timeline Image Linear Background */
.timeline-image-linear-bg {
  background:
    linear-gradient(
      180deg,
      rgba(191, 255, 210, 0.25) 0%,
      rgba(200, 255, 252, 0.25) 42.31%,
      var(--neutral-background-bg, #fff) 100%
    ),
    var(--neutral-background-bg, #fff);
}

@media (min-width: 1025px) {
  .timeline-image-linear-bg {
    background:
      linear-gradient(
        90deg,
        rgba(191, 255, 210, 0.25) 0%,
        rgba(200, 255, 252, 0.25) 42.31%,
        var(--neutral-background-bg, #fff) 100%
      ),
      var(--neutral-background-bg, #fff);
  }
}

.btn-yellow-narrow .elementor-button-icon svg {
  height: 24px;
  width: 24px;
}

.btn-yellow-narrow .elementor-button .elementor-button-icon path {
  transition: var(--transition-default);
}

.btn-yellow-narrow .elementor-button:hover .elementor-button-icon path {
  fill: #ffffff !important;
}

.video-height-custom {
  border: 1px solid
    var(--Neutral-Alpha-Black-AlphaBlack-15, rgba(0, 0, 0, 0.15));
  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 54.57%,
      var(--Neutral-Basic-Black, #0e0f10) 100%
    ),
    linear-gradient(0deg, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.08) 100%);
}

.video-height-custom .e-hosted-video {
  height: 420px;
  overflow: hidden;
  width: 100%;
}
