/* Research-backed medical billing content layer for the visible sample sites. */
html body *,
html body *::before,
html body *::after {
  box-sizing: border-box;
}

html body :where(.eyebrow, .tag, .badge, .pill, .label, .kicker, .package-pill, .type, .package-modal__eyebrow)::before,
html body :where(.eyebrow, .tag, .badge, .pill, .label, .kicker, .package-pill, .type, .package-modal__eyebrow)::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: none !important;
}

html body :where(.eyebrow, .tag, .badge, .pill, .label, .kicker, .package-pill, .type, .package-modal__eyebrow) {
  gap: 0 !important;
}

.revenue-snapshot-section {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .82), rgba(246, 250, 255, .72)),
    radial-gradient(circle at 88% 8%, rgba(16, 166, 166, .12), transparent 18rem);
}

.reality-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.reality-card {
  position: relative;
  min-height: 170px;
  padding: clamp(20px, 2.4vw, 30px);
  border: 1px solid rgba(37, 99, 235, .14);
  border-radius: 18px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 16px 42px rgba(23, 32, 51, .08);
}

.reality-card span {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 12px;
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(37, 99, 235, .1);
  color: #1746aa;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: uppercase;
}

.reality-card h3 {
  margin-bottom: 8px;
}

.reality-card p {
  margin-bottom: 0;
}

.contact-section .button,
.viewer-note-banner .button {
  flex: 0 0 auto;
}

.lead-form textarea,
.quote-form textarea,
.managed-form textarea {
  width: 100%;
  min-height: 112px;
  padding: 11px 12px;
  border: 1px solid var(--line, rgba(37, 99, 235, .16));
  border-radius: 8px;
  background: var(--paper, #fff);
  color: var(--ink, #172033);
  font: inherit;
  resize: vertical;
}

.form-note {
  grid-column: 1 / -1;
  margin: 4px 0 0;
  color: var(--muted, #66738a);
  font-size: 13px;
  line-height: 1.45;
}

.form-status {
  grid-column: 1 / -1;
}

.lead-form label:has(textarea),
.quote-form label:has(textarea),
.managed-form label:has(textarea) {
  grid-column: 1 / -1;
}

@media (max-width: 980px) {
  .reality-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .reality-grid {
    grid-template-columns: 1fr;
  }

  .reality-card {
    min-height: 0;
  }
}

/* Last-loaded mobile guard for the active medical billing samples. */
@media (max-width: 820px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  html body main,
  html body section,
  html body header,
  html body footer {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  html body .hero,
  html body .studio-hero,
  html body .page-hero,
  html body .service-detail-hero {
    box-sizing: border-box !important;
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    min-width: 0 !important;
    min-height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 28px 22px !important;
    grid-template-columns: minmax(0, 1fr) !important;
    overflow: hidden !important;
    border-left-width: 1px !important;
    border-right-width: 1px !important;
  }

  html body .hero > *,
  html body .studio-hero > *,
  html body .page-hero > *,
  html body .service-detail-hero > *,
  html body .hero-copy,
  html body .hero-lede,
  html body .summary-card,
  html body .summary-card dl,
  html body .summary-card dl > div,
  html body .summary-card dd,
  html body .portrait-card,
  html body .contact-panel,
  html body .lead-form,
  html body .quote-form,
  html body .scheduler-box,
  html body .service-list > *,
  html body .support-grid > *,
  html body .systems-grid > *,
  html body .resource-grid > *,
  html body .testimonial-grid > *,
  html body .faq-list > *,
  html body .card-link,
  html body .card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    grid-column: auto !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  html body .hero h1,
  html body .studio-hero h1,
  html body .page-hero h1,
  html body .service-detail-hero h1 {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    font-size: clamp(36px, 11vw, 48px) !important;
    line-height: 1.02 !important;
  }

  html body .hero p,
  html body .studio-hero p,
  html body .page-hero p,
  html body .service-detail-hero p,
  html body .summary-card p,
  html body .summary-card dd,
  html body .summary-card dt {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  html body .hero-actions,
  html body .actions,
  html body .cta-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  html body .button,
  html body a[class*="button"] {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
  }

  html body.vector-rcm-site .hero-copy,
  html body.vector-rcm-site .hero-lede,
  html body.vector-rcm-site .summary-card,
  html body.vector-rcm-site .portrait-card,
  html body.vector-rcm-site .service-list > article,
  html body.vector-rcm-site .support-grid > article,
  html body.vector-rcm-site .systems-grid > article,
  html body.vector-rcm-site .resource-grid > article,
  html body.vector-rcm-site .testimonial-grid > article,
  html body.vector-rcm-site .faq-list > article {
    width: 100% !important;
    max-width: 292px !important;
    justify-self: start !important;
  }

  html body.vector-rcm-site .hero-lede {
    max-width: 278px !important;
  }
}
