.diagnostic-free-price,
.diagnostic-paid-price {
  display: inline-block;
  white-space: nowrap;
}

.service-detail-terms > div:nth-child(2) dd.diagnostic-price-enhanced,
.service-detail-summary > div:nth-child(2) dd.diagnostic-price-enhanced {
  display: grid !important;
  grid-template-areas:
    "paid free"
    "note note";
  grid-template-columns: max-content minmax(0, 1fr);
  align-content: center;
  align-items: baseline;
  column-gap: 10px;
  row-gap: 5px;
  line-height: 1;
}

.service-detail-terms .diagnostic-price-enhanced .diagnostic-paid-price,
.service-detail-summary .diagnostic-price-enhanced .diagnostic-paid-price {
  grid-area: paid;
  color: currentColor;
  font: 700 clamp(22px, 1.6vw, 25px)/1 var(--font-display), sans-serif;
  white-space: nowrap;
}

.service-detail-terms .diagnostic-price-enhanced .diagnostic-free-price,
.service-detail-summary .diagnostic-price-enhanced .diagnostic-free-price {
  grid-area: free;
  color: #168cff;
  font: 700 clamp(22px, 1.6vw, 25px)/1 var(--font-display), sans-serif;
  white-space: nowrap;
}

.service-detail-terms .diagnostic-price-enhanced .diagnostic-price-note,
.service-detail-summary .diagnostic-price-enhanced .diagnostic-price-note {
  grid-area: note;
  width: 100%;
  min-width: 0;
  color: #8fa4b5;
  font: 500 11px/1.35 var(--font-body), sans-serif;
  letter-spacing: 0;
  overflow-wrap: break-word;
  text-transform: none;
}

.contact-choice-open {
  overflow: hidden;
}

.contact-choice-backdrop {
  position: fixed;
  z-index: 240;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(2, 7, 13, 0.82);
  backdrop-filter: blur(8px);
}

.contact-choice-dialog {
  position: relative;
  width: min(540px, 100%);
  padding: 42px;
  border: 1px solid rgba(112, 157, 194, 0.45);
  color: #f7f9fb;
  background: #08111a;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.48);
}

.contact-choice-dialog::before {
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  content: "";
  background: #168cff;
}

.contact-choice-kicker {
  margin: 0 0 12px;
  color: #168cff;
  font: 800 11px/1.2 var(--font-body), sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.contact-choice-dialog h2 {
  max-width: 420px;
  margin: 0;
  font: 700 clamp(38px, 5vw, 58px)/1 var(--font-display), sans-serif;
  text-transform: uppercase;
}

.contact-choice-copy {
  max-width: 430px;
  margin: 20px 0 30px;
  color: #aab6c2;
  font: 500 15px/1.65 var(--font-body), sans-serif;
}

.contact-choice-number {
  display: block;
  margin-bottom: 20px;
  color: #fff;
  font: 700 30px/1.1 var(--font-display), sans-serif;
  text-decoration: none;
}

.contact-choice-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.contact-choice-actions a {
  display: flex;
  min-height: 56px;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border: 1px solid #52616e;
  color: #fff;
  font: 800 13px/1.2 var(--font-body), sans-serif;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
}

.contact-choice-actions a:first-child {
  border-color: #168cff;
  background: #168cff;
}

.contact-choice-close {
  position: absolute;
  top: 14px;
  right: 14px;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid #455360;
  color: #fff;
  background: transparent;
  font-size: 24px;
  cursor: pointer;
}

.contact-choice-dialog a:focus-visible,
.contact-choice-close:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

@media (max-width: 760px) {
  .site-header {
    height: 78px;
    padding-inline: 14px;
    gap: 9px;
  }

  .site-header .brand {
    gap: 8px;
  }

  .site-header .brand img {
    width: 46px;
    height: 46px;
  }

  .site-header .brand strong {
    font-size: 10.75px;
  }

  .site-header .brand small {
    font-size: 7px;
  }

  .site-header .header-phone {
    gap: 5px;
  }

  .site-header .header-phone > svg {
    width: 25px;
    height: 25px;
    padding: 3px;
  }

  .site-header .header-phone span {
    font-size: 10.25px;
  }
}

@media (max-width: 370px) {
  .site-header {
    padding-inline: 10px;
    gap: 6px;
  }

  .site-header .brand img {
    width: 44px;
    height: 44px;
  }

  .site-header .brand strong {
    font-size: 10px;
  }

  .site-header .header-phone span {
    font-size: 9.5px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .contact-choice-backdrop {
    scroll-behavior: auto;
  }
}
