/* NSC MOBILE REVISION V24 — verified selectors for corporate mobile review */
@media (max-width: 760px) {
  /* Shared rhythm and readable measure on all requested pages. */
  body.page-team main .container,
  body.page-doctor-profile main .container,
  body.page-conditions main .container,
  body.page-auto-accidents main .container,
  body.page-workers-comp main .container,
  body.page-new-patients main .container,
  body.page-about main .container {
    width: calc(100% - 36px) !important;
    max-width: 680px !important;
    margin-inline: auto !important;
  }

  /* All page-top presentation copy is centered. */
  main .page-hero .hero-content,
  main .page-hero .hero-content > *,
  body.page-doctor-profile main .profile-hero-grid > div,
  body.page-doctor-profile main .profile-hero-grid > div > * {
    text-align: center !important;
    text-align-last: center !important;
    margin-inline: auto !important;
  }

  /* ABOUT: centered headings/core values; justified long story copy. */
  body.page-about main .story-card h3,
  body.page-about main .feature-card,
  body.page-about main .feature-card h3,
  body.page-about main .feature-card p {
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-about main .story-card p {
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    hyphens: auto !important;
    word-spacing: normal !important;
    line-height: 1.68 !important;
  }

  /* NEW PATIENTS: identical number rail and text start on every card. */
  body.page-new-patients main .timeline-step {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: start !important;
    padding: 24px 20px !important;
    text-align: left !important;
  }
  body.page-new-patients main .timeline-step > span {
    grid-column: 1 !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1rem !important;
  }
  body.page-new-patients main .timeline-copy {
    grid-column: 2 !important;
    min-width: 0 !important;
    width: 100% !important;
    padding: 0 !important;
  }
  body.page-new-patients main .timeline-copy h2 {
    margin: 0 0 10px !important;
    font-size: clamp(1.35rem, 6vw, 1.7rem) !important;
    line-height: 1.16 !important;
    text-align: left !important;
    text-align-last: left !important;
  }
  body.page-new-patients main .timeline-copy p {
    margin: 0 !important;
    font-size: 1rem !important;
    line-height: 1.58 !important;
    text-align: justify !important;
    text-align-last: left !important;
    hyphens: auto !important;
    word-spacing: normal !important;
  }

  /* CONDITIONS: consistent cards, centered titles, clean left copy. */
  body.page-conditions main .card-grid {
    gap: 20px !important;
  }
  body.page-conditions main .condition-card-polished {
    min-height: 0 !important;
    padding: 26px 24px !important;
  }
  body.page-conditions main .condition-card-polished h2 {
    margin: 0 0 14px !important;
    font-size: clamp(1.6rem, 7vw, 2rem) !important;
    line-height: 1.13 !important;
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-conditions main .condition-description {
    margin: 0 !important;
    font-size: 1rem !important;
    line-height: 1.58 !important;
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    word-spacing: normal !important;
    hyphens: auto !important;
  }

  /* AUTO + WORKERS COMP: headings centered; the supporting paragraphs justified. */
  body.page-auto-accidents main .stacked-information-section h2,
  body.page-workers-comp main .stacked-information-section h2,
  body.page-auto-accidents main .stacked-information-section .eyebrow,
  body.page-workers-comp main .stacked-information-section .eyebrow,
  body.page-auto-accidents main .prose h2,
  body.page-workers-comp main .prose h2 {
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-auto-accidents main .stacked-supporting-copy p,
  body.page-workers-comp main .stacked-supporting-copy p,
  body.page-auto-accidents main .prose p,
  body.page-workers-comp main .prose p,
  body.page-auto-accidents main .prose li,
  body.page-workers-comp main .prose li {
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    hyphens: auto !important;
    word-spacing: normal !important;
    line-height: 1.65 !important;
  }

  /* TEAM DIRECTORY: one permanent geometry for all six doctors. */
  body.page-team main .doctor-featured-row,
  body.page-team main .doctor-remaining-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    width: 100% !important;
  }
  body.page-team main .doctor-card-polished {
    display: grid !important;
    grid-template-columns: 126px minmax(0, 1fr) !important;
    min-height: 216px !important;
    padding: 0 !important;
    overflow: hidden !important;
    align-items: stretch !important;
  }
  body.page-team main .doctor-photo-link {
    width: 126px !important;
    height: 100% !important;
    min-height: 216px !important;
    margin: 0 !important;
  }
  body.page-team main .doctor-photo {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
  }
  body.page-team main .doctor-card-body-polished {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    min-width: 0 !important;
    padding: 18px 15px !important;
    text-align: left !important;
  }
  body.page-team main .doctor-card-body-polished h3,
  body.page-team main .doctor-card-body-polished h3 a,
  body.page-team main .role-badge,
  body.page-team main .doctor-location,
  body.page-team main .doctor-view-profile {
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
    text-align-last: left !important;
  }
  body.page-team main .doctor-card-body-polished h3 {
    width: 100% !important;
    margin: 0 0 7px !important;
    font-size: clamp(.84rem, 3.35vw, 1.02rem) !important;
    line-height: 1.18 !important;
    white-space: nowrap !important;
  }
  body.page-team main .role-badge {
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    font-size: .65rem !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
  }
  body.page-team main .doctor-location {
    width: 100% !important;
    margin-top: 10px !important;
    margin-bottom: 0 !important;
    font-size: .74rem !important;
    line-height: 1.28 !important;
  }
  body.page-team main .doctor-view-profile {
    width: auto !important;
    margin-top: 14px !important;
    padding: 10px 14px !important;
    font-size: .75rem !important;
  }

  /* INDIVIDUAL DOCTOR PROFILES: centered identity, restrained portrait, aligned editorial content. */
  body.page-doctor-profile main .profile-hero {
    padding-block: 42px 46px !important;
  }
  body.page-doctor-profile main .profile-hero-grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 26px !important;
  }
  body.page-doctor-profile main .profile-hero-grid > div {
    width: 100% !important;
    max-width: 650px !important;
  }
  body.page-doctor-profile main .profile-name-one-line-final {
    white-space: nowrap !important;
    font-size: clamp(1.65rem, 7.2vw, 2.45rem) !important;
    line-height: 1.08 !important;
    margin: 10px auto !important;
  }
  body.page-doctor-profile main .profile-hero-grid > img {
    order: 2 !important;
    width: min(76vw, 360px) !important;
    height: auto !important;
    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
    object-position: center top !important;
    margin: 0 auto !important;
    border-radius: 14px !important;
  }
  body.page-doctor-profile main .button-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 430px !important;
  }
  body.page-doctor-profile main .profile-content {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 26px !important;
    max-width: 680px !important;
  }
  body.page-doctor-profile main .profile-content > div > h2,
  body.page-doctor-profile main .profile-content > div > .profile-bio-eyebrow {
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-doctor-profile main .profile-content p,
  body.page-doctor-profile main .jack-full-biography p,
  body.page-doctor-profile main .profile-personal-callout p {
    text-align: left !important;
    text-align-last: left !important;
    hyphens: none !important;
    word-spacing: normal !important;
    font-size: 1rem !important;
    line-height: 1.68 !important;
  }

  /* Keep every profile's editorial column on one consistent measure. */
  body.page-doctor-profile main .profile-content > div,
  body.page-doctor-profile main .profile-content > aside {
    width: 100% !important;
    max-width: 680px !important;
    margin-inline: auto !important;
  }
  body.page-doctor-profile main .profile-facts,
  body.page-doctor-profile main .profile-personal-callout {
    width: 100% !important;
    padding: 26px 22px !important;
    text-align: center !important;
  }
  body.page-doctor-profile main .profile-facts h3,
  body.page-doctor-profile main .profile-facts p,
  body.page-doctor-profile main .profile-facts .text-link,
  body.page-doctor-profile main .profile-personal-callout h3 {
    text-align: center !important;
    text-align-last: center !important;
  }
}

@media (max-width: 390px) {
  body.page-team main .doctor-card-polished { grid-template-columns: 112px minmax(0, 1fr) !important; }
  body.page-team main .doctor-photo-link { width: 112px !important; }
  body.page-team main .doctor-card-body-polished { padding-inline: 12px !important; }
  body.page-team main .doctor-card-body-polished h3 { font-size: .78rem !important; }
  body.page-doctor-profile main .profile-name-one-line-final { font-size: clamp(1.45rem, 6.7vw, 2rem) !important; }
}
/* Direct website form submission feedback */
.form-status{margin:18px 0 4px;padding:14px 16px;border-radius:8px;font-weight:700;line-height:1.45;text-align:center}
.form-status.success{color:#155724;background:#dff3e4;border:1px solid #aad5b4}
.form-status.error{color:#842029;background:#f8d7da;border:1px solid #e6aeb3}
.site-form button[disabled]{opacity:.7;cursor:wait}
