/* Nassau Suffolk Chiropractic — premium mobile system v14 */
@media (max-width: 900px) {
  :root {
    --pm-navy: #082844;
    --pm-blue: #0e5f8f;
    --pm-gold: #d3a326;
    --pm-ink: #14283f;
    --pm-muted: #526274;
    --pm-soft: #eef4f7;
    --pm-line: #d8e1e7;
  }

  html, body { width: 100% !important; overflow-x: hidden !important; }
  body { color: var(--pm-ink) !important; background: #fff !important; }
  main { overflow: hidden !important; }
  .container { width: calc(100% - 32px) !important; max-width: 760px !important; margin-inline: auto !important; }

  /* Consistent vertical rhythm */
  main .section { padding: 58px 0 !important; }
  main .section + .section { border-top: 0 !important; }
  .section-soft { background: linear-gradient(180deg, #f1f6f8 0%, #eaf2f5 100%) !important; }

  /* Every page hero uses one centered premium hierarchy */
  .page-hero,
  .compact-hero {
    min-height: 0 !important;
    padding: 64px 20px 68px !important;
  }
  .page-hero .container,
  .page-hero .hero-content,
  .page-hero .eyebrow,
  .page-hero h1,
  .page-hero .hero-sub {
    width: 100% !important;
    max-width: 700px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    text-align-last: center !important;
  }
  .page-hero .eyebrow {
    margin-bottom: 14px !important;
    color: #f1c75d !important;
    font-size: .82rem !important;
    line-height: 1.35 !important;
    letter-spacing: .16em !important;
  }
  .page-hero h1 {
    margin-top: 0 !important;
    margin-bottom: 18px !important;
    font-size: clamp(2.25rem, 10vw, 3.3rem) !important;
    line-height: 1.04 !important;
    letter-spacing: -.025em !important;
    text-wrap: balance !important;
  }
  .page-hero .hero-sub {
    margin-bottom: 0 !important;
    font-size: 1.04rem !important;
    line-height: 1.62 !important;
    text-wrap: pretty !important;
  }

  /* Section introductions are centered; body copy stays readable */
  main .section-heading,
  main .stacked-heading-block,
  main .new-patient-heading {
    width: 100% !important;
    max-width: 680px !important;
    margin: 0 auto 32px !important;
    text-align: center !important;
  }
  main .section-heading .eyebrow,
  main .stacked-heading-block .eyebrow,
  main .new-patient-heading .eyebrow {
    display: block !important;
    margin: 0 auto 12px !important;
    text-align: center !important;
    text-align-last: center !important;
    font-size: .8rem !important;
    line-height: 1.35 !important;
    letter-spacing: .15em !important;
  }
  main .section-heading h2,
  main .stacked-heading-block h2,
  main .new-patient-heading h2,
  main .stacked-section-title {
    width: 100% !important;
    margin: 0 auto 14px !important;
    text-align: center !important;
    text-align-last: center !important;
    font-size: clamp(1.85rem, 8vw, 2.55rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -.02em !important;
    text-wrap: balance !important;
  }
  main .section-heading > p:not(.eyebrow) {
    max-width: 580px !important;
    margin: 0 auto !important;
    text-align: center !important;
    text-align-last: center !important;
    line-height: 1.62 !important;
  }

  /* Never stretch mobile words into unnatural gaps */
  main p:not(.eyebrow),
  main li,
  .informational-copy,
  .justify-copy,
  .stacked-supporting-copy p,
  .prose p {
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
    overflow-wrap: break-word !important;
  }

  /* Universal premium cards */
  .feature-card,
  .info-card,
  .condition-card,
  .location-card,
  .story-card,
  .new-patient-step,
  .step-card,
  .stacked-intro-card,
  .contact-form-card,
  .contact-information-card {
    border: 1px solid var(--pm-line) !important;
    border-top: 5px solid var(--pm-gold) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(8, 40, 68, .09) !important;
  }
  .feature-card,
  .info-card,
  .condition-card,
  .location-card,
  .new-patient-step,
  .step-card { padding: 26px 24px !important; }
  .feature-card h2, .feature-card h3,
  .info-card h2, .info-card h3,
  .condition-card h2, .condition-card h3,
  .location-card h2, .location-card h3,
  .new-patient-step h2, .new-patient-step h3,
  .step-card h2, .step-card h3 {
    margin: 0 auto 14px !important;
    text-align: center !important;
    text-align-last: center !important;
    font-size: clamp(1.5rem, 7vw, 2rem) !important;
    line-height: 1.12 !important;
    text-wrap: balance !important;
  }
  .feature-card p, .info-card p, .condition-card p,
  .location-card p, .new-patient-step p, .step-card p {
    margin-bottom: 0 !important;
    font-size: .99rem !important;
    line-height: 1.68 !important;
  }
  .card-grid, .doctor-grid, .promise-grid { gap: 18px !important; }

  /* Auto accident and workers' compensation lead cards */
  body.page-auto-accidents .stacked-intro-card,
  body.page-workers-comp .stacked-intro-card {
    padding: 38px 24px !important;
  }
  body.page-auto-accidents .stacked-supporting-copy,
  body.page-workers-comp .stacked-supporting-copy {
    gap: 20px !important;
  }
  body.page-auto-accidents .stacked-supporting-copy p,
  body.page-workers-comp .stacked-supporting-copy p {
    margin: 0 !important;
    padding-left: 18px !important;
    border-left: 4px solid #e3c66f !important;
    font-size: 1rem !important;
    line-height: 1.68 !important;
  }

  /* Meet Our Doctors — deliberate editorial hierarchy */
  body.page-team .doctor-grid,
  body.page-team .doctor-featured-row,
  body.page-team .doctor-remaining-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    width: 100% !important;
  }
  body.page-team .doctor-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 560px !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    border: 1px solid #d8e1e7 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 16px 40px rgba(8, 40, 68, .11) !important;
  }
  body.page-team .doctor-photo-link {
    order: 1 !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    background: #f2f0ed !important;
  }
  body.page-team .doctor-photo {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
  }
  body.page-team .doctor-card-body,
  body.page-team .doctor-card-body-polished {
    order: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 26px 22px 28px !important;
    text-align: center !important;
  }
  body.page-team .doctor-card-body > * {
    width: 100% !important;
    max-width: 31rem !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    text-align-last: center !important;
    word-spacing: normal !important;
  }
  body.page-team .doctor-card h3 {
    order: 1 !important;
    margin: 0 auto 8px !important;
    font-size: clamp(1.65rem, 7.3vw, 2.1rem) !important;
    line-height: 1.1 !important;
    text-wrap: balance !important;
  }
  body.page-team .role-badge {
    order: 2 !important;
    display: block !important;
    justify-content: center !important;
    width: auto !important;
    margin: 0 auto 10px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #9a6b08 !important;
    font-size: .72rem !important;
    font-weight: 850 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
  }
  body.page-team .leadership-title {
    order: 3 !important;
    margin: 0 auto 9px !important;
    color: #526274 !important;
    font-size: .91rem !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
  }
  body.page-team .doctor-location {
    order: 4 !important;
    margin: 0 auto 18px !important;
    color: #6f7d89 !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    letter-spacing: .1em !important;
  }
  body.page-team .doctor-summary,
  body.page-team .doctor-summary-polished {
    order: 5 !important;
    display: none !important;
    min-height: 0 !important;
    margin: 0 auto 22px !important;
    color: #405166 !important;
    font-size: .96rem !important;
    line-height: 1.68 !important;
    text-wrap: pretty !important;
  }
  body.page-team .doctor-view-profile {
    order: 6 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 178px !important;
    min-height: 46px !important;
    margin: 0 auto !important;
    padding: 12px 22px !important;
    border: 1px solid var(--pm-navy) !important;
    border-radius: 999px !important;
    background: var(--pm-navy) !important;
    color: #fff !important;
    font-size: .88rem !important;
    font-weight: 800 !important;
    text-decoration: none !important;
  }

  /* Homepage emergency message: retain the desktop script treatment on phones. */
  body.page-home .approved-alert-message {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
  }
  body.page-home .approved-alert-copy { white-space: nowrap !important; }
  body.page-home .approved-homepage .approved-accepted,
  body.page-home .approved-accepted {
    display: inline-block !important;
    flex: 0 0 auto !important;
    margin: 0 0 0 2px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #f2ba2a !important;
    font-family: "Brush Script MT", "Segoe Script", "Snell Roundhand", cursive !important;
    font-size: clamp(2rem, 7.4vw, 2.55rem) !important;
    font-weight: 400 !important;
    font-style: italic !important;
    line-height: .8 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    white-space: nowrap !important;
    transform: rotate(-2deg) !important;
  }

  /* Homepage founders */
  body.page-home .approved-founder-card .doctor-card-body,
  body.page-home .approved-founder-card .doctor-card-body * {
    align-items: center !important;
    text-align: center !important;
    text-align-last: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Testimonials become compact editorial quote cards */
  body.page-home .approved-testimonials {
    padding: 58px 16px !important;
    text-align: center !important;
  }
  body.page-home .approved-testimonials h2 {
    max-width: 31rem !important;
    margin: 0 auto 30px !important;
    text-align: center !important;
    font-size: clamp(2rem, 9vw, 2.7rem) !important;
    line-height: 1.06 !important;
    text-wrap: balance !important;
  }
  body.page-home .approved-review-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    max-width: 560px !important;
    margin: 0 auto !important;
  }
  body.page-home .approved-review-grid article {
    display: flex !important;
    min-height: 0 !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 30px 24px !important;
    border: 1px solid #e3d9c4 !important;
    border-radius: 16px !important;
    box-shadow: 0 12px 28px rgba(8, 40, 68, .07) !important;
    text-align: center !important;
  }
  body.page-home .approved-review-grid p,
  body.page-home .approved-review-grid strong,
  body.page-home .approved-stars {
    max-width: 29rem !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-home .approved-review-grid p {
    margin-top: 16px !important;
    margin-bottom: 14px !important;
    font-size: 1rem !important;
    line-height: 1.62 !important;
    text-wrap: pretty !important;
  }

  /* Google review panel */
  body.page-home .google-review-section {
    padding: 54px 16px !important;
    text-align: center !important;
  }
  body.page-home .google-review-inner {
    max-width: 560px !important;
    margin: 0 auto !important;
    padding: 34px 24px !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 34px rgba(8, 40, 68, .09) !important;
    text-align: center !important;
  }
  body.page-home .google-review-inner * {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-home .google-review-section h2 {
    max-width: 25rem !important;
    font-size: clamp(1.8rem, 8vw, 2.35rem) !important;
    line-height: 1.08 !important;
    text-wrap: balance !important;
  }
  body.page-home .google-review-section p {
    max-width: 29rem !important;
    margin-bottom: 22px !important;
    line-height: 1.62 !important;
  }

  /* Contact page hierarchy */
  body.page-contact .contact-information-card,
  body.page-contact .contact-panel,
  body.page-contact .contact-panel * {
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-contact .contact-panel { padding: 28px 22px !important; }

  /* Bottom calls to action and all footer wording */
  .cta,
  .cta .container,
  .cta *,
  .navy-section,
  .navy-section .container,
  .navy-section .section-heading,
  .navy-section .section-heading *,
  .care-philosophy,
  .care-philosophy article,
  .care-philosophy article *,
  .site-footer,
  .site-footer .container,
  .site-footer p,
  .site-footer span,
  .site-footer a {
    text-align: center !important;
    text-align-last: center !important;
  }
  .cta { padding: 62px 16px 66px !important; }
  .cta .eyebrow { margin-bottom: 14px !important; }
  .cta h2 {
    max-width: 34rem !important;
    margin: 0 auto 26px !important;
    font-size: clamp(2rem, 9vw, 2.8rem) !important;
    line-height: 1.08 !important;
    text-wrap: balance !important;
  }
  .cta .button-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
  }
  .cta .btn { width: 100% !important; min-height: 50px !important; }

  .site-footer { padding-bottom: 92px !important; }
  .site-footer .medical-note p {
    max-width: 34rem !important;
    margin: 0 auto !important;
    font-size: .9rem !important;
    line-height: 1.65 !important;
  }
  .site-footer .footer-bottom {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;
  }

  /* Fixed action bar */
  .mobile-actions {
    min-height: 58px !important;
    box-shadow: 0 -8px 26px rgba(8, 40, 68, .12) !important;
  }
  .mobile-actions a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    padding: 0 8px !important;
    font-size: .76rem !important;
    font-weight: 850 !important;
    letter-spacing: .02em !important;
    white-space: nowrap !important;
  }
}

/* v20-final — authoritative mobile rules; must remain the last block. */
@media (max-width:900px) {
  body.page-team .doctor-card{display:grid!important;grid-template-columns:116px minmax(0,1fr)!important;align-items:stretch!important;min-height:184px!important}
  body.page-team .doctor-photo-link{width:116px!important;height:100%!important}
  body.page-team .doctor-photo{width:100%!important;height:100%!important;min-height:184px!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center top!important}
  body.page-team .doctor-card-body,body.page-team .doctor-card-body-polished{min-width:0!important;padding:18px 16px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;text-align:left!important}
  body.page-team .doctor-card h3,body.page-team .doctor-card h3 a,body.page-team .role-badge,body.page-team .leadership-title,body.page-team .doctor-location,body.page-team .doctor-view-profile{width:auto!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;text-align:left!important;text-align-last:left!important;align-self:flex-start!important}
  body.page-team .doctor-card h3,body.page-team .doctor-card h3 a{white-space:nowrap!important;font-size:clamp(.82rem,3.55vw,1.02rem)!important;letter-spacing:-.025em!important}

  body.page-doctor-profile .profile-hero-grid{display:flex!important;flex-direction:column!important;align-items:center!important;gap:28px!important}
  body.page-doctor-profile .profile-hero-grid>div:first-child{width:100%!important;max-width:680px!important;margin:0 auto!important;text-align:center!important}
  body.page-doctor-profile .back-link,body.page-doctor-profile .profile-hero .eyebrow,body.page-doctor-profile .profile-hero h1,body.page-doctor-profile .profile-role,body.page-doctor-profile .profile-hero .hero-sub{display:block!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;text-align-last:center!important}
  body.page-doctor-profile .profile-hero .button-row{justify-content:center!important}
  body.page-doctor-profile .profile-hero img{width:min(100%,390px)!important;margin:0 auto!important}
  body.page-doctor-profile .profile-content{display:block!important;width:min(100%,760px)!important;margin:0 auto!important}
  body.page-doctor-profile .profile-content>div:first-child{width:100%!important;margin:0 auto!important}
  body.page-doctor-profile .profile-content h2,body.page-doctor-profile .profile-content h3,body.page-doctor-profile .profile-bio-eyebrow{text-align:center!important;text-align-last:center!important}
  body.page-doctor-profile .profile-content>div:first-child p,body.page-doctor-profile .jack-full-biography p,body.page-doctor-profile .profile-personal-callout p{margin:0 0 18px!important;font-size:.98rem!important;line-height:1.68!important;text-align:justify!important;text-align-last:left!important;text-justify:inter-word!important;hyphens:auto!important;-webkit-hyphens:auto!important}
  body.page-doctor-profile .profile-facts{max-width:620px!important;margin:28px auto 0!important;text-align:center!important}

  body.page-auto-accidents .stacked-intro-card,body.page-workers-comp .stacked-intro-card,body.page-conditions .condition-card-polished,body.page-conditions .condition-card,body.page-new-patients .timeline-step,body.page-new-patients .info-card{min-height:0!important}
  body.page-auto-accidents .stacked-intro-card,body.page-workers-comp .stacked-intro-card,body.page-conditions .condition-card-polished,body.page-conditions .condition-card{padding:24px 22px!important}
  body.page-auto-accidents .stacked-intro-card h2,body.page-workers-comp .stacked-intro-card h2,body.page-conditions .condition-card-polished h2,body.page-conditions .condition-card h2,body.page-new-patients .timeline-copy h2,body.page-new-patients .info-card h2{text-align:center!important;text-align-last:center!important}
  body.page-auto-accidents .stacked-intro-card p,body.page-workers-comp .stacked-intro-card p,body.page-conditions .condition-card-polished p,body.page-conditions .condition-card p,body.page-new-patients .timeline-copy p,body.page-new-patients .info-card p{font-size:.95rem!important;line-height:1.62!important;text-align:justify!important;text-align-last:left!important;text-justify:inter-word!important;hyphens:auto!important;-webkit-hyphens:auto!important}
  body.page-new-patients .timeline-step{grid-template-columns:44px minmax(0,1fr)!important;gap:14px!important;padding:20px 18px!important}
}
@media (max-width:390px){body.page-team .doctor-card{grid-template-columns:104px minmax(0,1fr)!important}body.page-team .doctor-photo-link{width:104px!important}body.page-team .doctor-card-body,body.page-team .doctor-card-body-polished{padding:16px 12px!important}body.page-team .doctor-card h3,body.page-team .doctor-card h3 a{font-size:clamp(.76rem,3.35vw,.94rem)!important}}

/* v20 — final mobile alignment system. This block intentionally comes last. */
@media (max-width: 900px) {
  /* Team directory: identical columns and a single left edge for every label. */
  body.page-team .doctor-card {
    display: grid !important;
    grid-template-columns: 116px minmax(0, 1fr) !important;
    align-items: stretch !important;
    min-height: 184px !important;
  }
  body.page-team .doctor-photo-link {
    width: 116px !important;
    height: 100% !important;
  }
  body.page-team .doctor-photo {
    width: 100% !important;
    height: 100% !important;
    min-height: 184px !important;
    aspect-ratio: auto !important;
    object-fit: cover !important;
    object-position: center top !important;
  }
  body.page-team .doctor-card-body,
  body.page-team .doctor-card-body-polished {
    min-width: 0 !important;
    padding: 18px 16px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    text-align: left !important;
  }
  body.page-team .doctor-card h3,
  body.page-team .doctor-card h3 a,
  body.page-team .role-badge,
  body.page-team .leadership-title,
  body.page-team .doctor-location,
  body.page-team .doctor-view-profile {
    width: auto !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
    text-align-last: left !important;
    align-self: flex-start !important;
  }
  body.page-team .doctor-card h3,
  body.page-team .doctor-card h3 a {
    white-space: nowrap !important;
    font-size: clamp(.82rem, 3.55vw, 1.02rem) !important;
    letter-spacing: -.025em !important;
  }

  /* Physician profiles: centered hero, readable justified biography. */
  body.page-doctor-profile .profile-hero-grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 28px !important;
  }
  body.page-doctor-profile .profile-hero-grid > div:first-child {
    width: 100% !important;
    max-width: 680px !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
  body.page-doctor-profile .back-link,
  body.page-doctor-profile .profile-hero .eyebrow,
  body.page-doctor-profile .profile-hero h1,
  body.page-doctor-profile .profile-role,
  body.page-doctor-profile .profile-hero .hero-sub {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-doctor-profile .profile-hero .button-row {
    justify-content: center !important;
  }
  body.page-doctor-profile .profile-hero img {
    width: min(100%, 390px) !important;
    margin: 0 auto !important;
  }
  body.page-doctor-profile .profile-content {
    display: block !important;
    width: min(100%, 760px) !important;
    margin: 0 auto !important;
  }
  body.page-doctor-profile .profile-content > div:first-child {
    width: 100% !important;
    margin: 0 auto !important;
  }
  body.page-doctor-profile .profile-content h2,
  body.page-doctor-profile .profile-content h3,
  body.page-doctor-profile .profile-bio-eyebrow {
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-doctor-profile .profile-content > div:first-child p,
  body.page-doctor-profile .jack-full-biography p,
  body.page-doctor-profile .profile-personal-callout p {
    margin: 0 0 18px !important;
    font-size: .98rem !important;
    line-height: 1.68 !important;
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    hyphens: auto !important;
    -webkit-hyphens: auto !important;
  }
  body.page-doctor-profile .profile-facts {
    max-width: 620px !important;
    margin: 28px auto 0 !important;
    text-align: center !important;
  }

  /* Interior cards: centered titles, controlled justified copy, compact spacing. */
  body.page-auto-accidents .stacked-intro-card,
  body.page-workers-comp .stacked-intro-card,
  body.page-conditions .condition-card-polished,
  body.page-conditions .condition-card,
  body.page-new-patients .timeline-step,
  body.page-new-patients .info-card {
    min-height: 0 !important;
  }
  body.page-auto-accidents .stacked-intro-card,
  body.page-workers-comp .stacked-intro-card,
  body.page-conditions .condition-card-polished,
  body.page-conditions .condition-card {
    padding: 24px 22px !important;
  }
  body.page-auto-accidents .stacked-intro-card h2,
  body.page-workers-comp .stacked-intro-card h2,
  body.page-conditions .condition-card-polished h2,
  body.page-conditions .condition-card h2,
  body.page-new-patients .timeline-copy h2,
  body.page-new-patients .info-card h2 {
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-auto-accidents .stacked-intro-card p,
  body.page-workers-comp .stacked-intro-card p,
  body.page-conditions .condition-card-polished p,
  body.page-conditions .condition-card p,
  body.page-new-patients .timeline-copy p,
  body.page-new-patients .info-card p {
    font-size: .95rem !important;
    line-height: 1.62 !important;
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    hyphens: auto !important;
    -webkit-hyphens: auto !important;
  }
  body.page-new-patients .timeline-step {
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 14px !important;
    padding: 20px 18px !important;
  }
}

@media (max-width: 390px) {
  body.page-team .doctor-card { grid-template-columns: 104px minmax(0, 1fr) !important; }
  body.page-team .doctor-photo-link { width: 104px !important; }
  body.page-team .doctor-card-body,
  body.page-team .doctor-card-body-polished { padding: 16px 12px !important; }
  body.page-team .doctor-card h3,
  body.page-team .doctor-card h3 a { font-size: clamp(.76rem, 3.35vw, .94rem) !important; }
}

/* v19: directly linked, final alignment authority */
@media (max-width: 900px) {
  body.page-about .story-card p {
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    hyphens: auto !important;
    -webkit-hyphens: auto !important;
  }

  body.page-about .core-values-compact .feature-card,
  body.page-about .core-values-compact .feature-card h3,
  body.page-about .core-values-compact .feature-card p {
    text-align: center !important;
    text-align-last: center !important;
  }

  body.page-home .approved-homepage .approved-accepted,
  body.page-home .approved-accepted {
    font-size: clamp(2.15rem, 8vw, 2.75rem) !important;
    line-height: .82 !important;
  }
}

/* v18: unified individual physician profiles */
@media (max-width: 900px) {
  body.page-doctor-profile .profile-hero { padding: 36px 16px 40px !important; }
  body.page-doctor-profile .profile-hero-grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: 680px !important;
    text-align: center !important;
  }
  body.page-doctor-profile .profile-hero-grid > div {
    order: 1 !important;
    width: 100% !important;
    text-align: center !important;
  }
  body.page-doctor-profile .profile-hero img {
    order: 2 !important;
    width: min(64vw, 250px) !important;
    height: min(76vw, 300px) !important;
    max-width: 250px !important;
    max-height: 300px !important;
    margin: 0 auto !important;
    border: 3px solid rgba(255,255,255,.22) !important;
    border-radius: 14px !important;
    object-fit: cover !important;
    object-position: center top !important;
    box-shadow: 0 14px 32px rgba(0,0,0,.2) !important;
  }
  body.page-doctor-profile .back-link {
    display: inline-block !important;
    margin-bottom: 16px !important;
    font-size: .76rem !important;
  }
  body.page-doctor-profile .profile-hero .eyebrow {
    margin: 0 auto 8px !important;
    text-align: center !important;
    font-size: .7rem !important;
    letter-spacing: .14em !important;
  }
  body.page-doctor-profile .profile-hero h1,
  body.page-doctor-profile .profile-name-one-line-final {
    margin: 0 auto 8px !important;
    white-space: nowrap !important;
    text-align: center !important;
    font-size: clamp(1.52rem, 7vw, 2rem) !important;
    line-height: 1.08 !important;
  }
  body.page-doctor-profile .profile-role {
    margin: 0 auto 10px !important;
    text-align: center !important;
    font-size: .72rem !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
  }
  body.page-doctor-profile .profile-hero .hero-sub {
    max-width: 34rem !important;
    margin: 0 auto 18px !important;
    text-align: center !important;
    font-size: .9rem !important;
    line-height: 1.5 !important;
  }
  body.page-doctor-profile .profile-hero .button-row {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 9px !important;
    margin: 0 auto !important;
  }
  body.page-doctor-profile .profile-hero .btn {
    min-height: 42px !important;
    padding: 10px 14px !important;
    font-size: .7rem !important;
  }

  body.page-doctor-profile main > .section { padding: 42px 0 !important; }
  body.page-doctor-profile .profile-content {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 26px !important;
    width: calc(100% - 36px) !important;
    max-width: 680px !important;
    margin: 0 auto !important;
  }
  body.page-doctor-profile .profile-content > div { max-width: 600px !important; margin: 0 auto !important; }
  body.page-doctor-profile .profile-content .profile-bio-eyebrow,
  body.page-doctor-profile .profile-content > div > p:first-child {
    margin: 0 auto 9px !important;
    text-align: center !important;
    text-align-last: center !important;
    color: #9b700d !important;
    font-size: .7rem !important;
    font-weight: 850 !important;
    letter-spacing: .12em !important;
  }
  body.page-doctor-profile .profile-content h2 {
    margin: 0 auto 20px !important;
    text-align: center !important;
    font-size: clamp(1.65rem, 7.2vw, 2.1rem) !important;
    line-height: 1.1 !important;
  }
  body.page-doctor-profile .profile-content p,
  body.page-doctor-profile .jack-full-biography p,
  body.page-doctor-profile .profile-personal-callout p {
    max-width: 600px !important;
    margin: 0 auto 16px !important;
    text-align: left !important;
    text-align-last: left !important;
    font-size: .94rem !important;
    line-height: 1.62 !important;
    word-spacing: normal !important;
    hyphens: none !important;
  }
  body.page-doctor-profile .profile-personal-callout {
    margin: 24px auto 0 !important;
    padding: 22px 20px !important;
    border: 1px solid #e6d39b !important;
    border-top: 4px solid #d3a326 !important;
    border-radius: 12px !important;
    background: #fffaf0 !important;
  }
  body.page-doctor-profile .profile-personal-callout h3 {
    margin: 0 auto 12px !important;
    text-align: center !important;
    font-size: 1.35rem !important;
  }
  body.page-doctor-profile .profile-facts {
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
    padding: 22px 20px !important;
    border-top-width: 4px !important;
    border-radius: 12px !important;
    text-align: center !important;
    box-shadow: 0 8px 22px rgba(8,40,68,.07) !important;
  }
  body.page-doctor-profile .profile-facts h3 {
    margin: 0 auto 10px !important;
    text-align: center !important;
    font-size: 1.45rem !important;
  }
  body.page-doctor-profile .profile-facts p,
  body.page-doctor-profile .profile-facts a {
    text-align: center !important;
    text-align-last: center !important;
  }
  body.page-doctor-profile .profile-facts .btn {
    justify-content: center !important;
    min-height: 44px !important;
    margin: 14px 0 12px !important;
    padding: 10px 14px !important;
    font-size: .72rem !important;
  }
  body.page-doctor-profile .cta { padding: 46px 16px 52px !important; }

  /* Lower accident information cards: concise rather than oversized. */
  body.page-auto-accidents .feature-card,
  body.page-auto-accidents .info-card {
    padding: 18px 18px !important;
  }
  body.page-auto-accidents .feature-card p,
  body.page-auto-accidents .feature-card li,
  body.page-auto-accidents .info-card p,
  body.page-auto-accidents .info-card li {
    font-size: .9rem !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 420px) {
  body.page-team .doctor-card-body,
  body.page-team .doctor-card-body-polished { padding: 26px 20px 28px !important; }
  .feature-card, .info-card, .condition-card, .location-card,
  .new-patient-step, .step-card { padding: 24px 20px !important; }
}

/* Executive mobile refinement v16 — compact, editorial, corporate-ready */
@media (max-width: 900px) {
  main .section { padding: 44px 0 !important; }
  .page-hero, .compact-hero { padding: 52px 18px 56px !important; }
  .page-hero h1 { font-size: clamp(2.05rem, 8.8vw, 2.85rem) !important; line-height: 1.06 !important; }
  .page-hero .hero-sub { max-width: 36rem !important; font-size: .98rem !important; line-height: 1.55 !important; }

  main .section-heading,
  main .stacked-heading-block,
  main .new-patient-heading { margin-bottom: 24px !important; }
  main .section-heading h2,
  main .stacked-heading-block h2,
  main .new-patient-heading h2,
  main .stacked-section-title {
    font-size: clamp(1.65rem, 7.2vw, 2.2rem) !important;
    line-height: 1.1 !important;
  }

  .feature-card, .info-card, .condition-card, .location-card,
  .new-patient-step, .step-card, .stacked-intro-card,
  body.page-workers-comp .feature-card,
  body.page-auto-accidents .feature-card {
    padding: 22px 20px !important;
    border-top-width: 4px !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 22px rgba(8,40,68,.07) !important;
  }
  .feature-card h2, .feature-card h3,
  .info-card h2, .info-card h3,
  .condition-card h2, .condition-card h3,
  .location-card h2, .location-card h3,
  .new-patient-step h2, .new-patient-step h3,
  .step-card h2, .step-card h3 {
    margin-bottom: 10px !important;
    font-size: clamp(1.35rem, 6.1vw, 1.72rem) !important;
  }
  .feature-card p, .info-card p, .condition-card p,
  .location-card p, .new-patient-step p, .step-card p,
  .feature-card li, .info-card li, .condition-card li {
    font-size: .94rem !important;
    line-height: 1.55 !important;
  }

  body.page-auto-accidents .stacked-intro-card,
  body.page-workers-comp .stacked-intro-card { padding: 26px 20px !important; }
  body.page-auto-accidents .stacked-supporting-copy,
  body.page-workers-comp .stacked-supporting-copy { gap: 14px !important; }
  body.page-auto-accidents .stacked-supporting-copy p,
  body.page-workers-comp .stacked-supporting-copy p {
    padding-left: 14px !important;
    border-left-width: 3px !important;
    font-size: .94rem !important;
    line-height: 1.55 !important;
  }

  /* The doctors page is a directory, not six repeated biographies. */
  body.page-team .doctor-grid,
  body.page-team .doctor-featured-row,
  body.page-team .doctor-remaining-grid { gap: 16px !important; }
  body.page-team .doctor-card {
    display: grid !important;
    grid-template-columns: 126px minmax(0,1fr) !important;
    min-height: 176px !important;
    max-width: 620px !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 22px rgba(8,40,68,.08) !important;
  }
  body.page-team .doctor-photo-link {
    width: 126px !important;
    height: 100% !important;
    min-height: 176px !important;
    aspect-ratio: auto !important;
  }
  body.page-team .doctor-photo {
    object-position: center 18% !important;
  }
  body.page-team .doctor-card-body,
  body.page-team .doctor-card-body-polished {
    display: flex !important;
    min-width: 0 !important;
    align-items: flex-start !important;
    justify-content: center !important;
    padding: 18px 17px !important;
    text-align: left !important;
  }
  body.page-team .doctor-card-body > * {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
    text-align-last: left !important;
  }
  body.page-team .doctor-card h3 {
    order: 1 !important;
    margin: 0 0 5px !important;
    font-size: clamp(1.18rem, 5.2vw, 1.48rem) !important;
    line-height: 1.1 !important;
  }
  body.page-team .role-badge {
    order: 2 !important;
    margin: 0 0 7px !important;
    color: #9a6b08 !important;
    font-size: .62rem !important;
    letter-spacing: .1em !important;
  }
  body.page-team .leadership-title {
    order: 3 !important;
    margin: 0 0 6px !important;
    color: #536274 !important;
    font-size: .74rem !important;
    line-height: 1.3 !important;
  }
  body.page-team .doctor-location {
    order: 4 !important;
    margin: 0 0 12px !important;
    color: #8d680f !important;
    font-size: .65rem !important;
    line-height: 1.25 !important;
    letter-spacing: .09em !important;
  }
  body.page-team .doctor-summary,
  body.page-team .doctor-summary-polished,
  body.page-team .doctor-card-body > p:not(.doctor-location):not(.leadership-title) {
    display: none !important;
  }
  body.page-team .doctor-view-profile {
    order: 5 !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 9px 14px !important;
    border-radius: 8px !important;
    font-size: .76rem !important;
  }

  /* Numbered new-patient cards keep the number visually separate. */
  body.page-new-patients .new-patient-step,
  body.page-new-patients .step-card { padding: 20px 18px !important; }

  .mobile-actions { min-height: 54px !important; }
  .mobile-actions a { font-size: .72rem !important; }
}

@media (max-width: 390px) {
  body.page-team .doctor-card { grid-template-columns: 104px minmax(0,1fr) !important; }
  body.page-team .doctor-photo-link { width: 104px !important; }
  body.page-team .doctor-card-body,
  body.page-team .doctor-card-body-polished { padding: 16px 14px !important; }
}

/* v17: consistent single-line physician names on mobile */
@media (max-width: 900px) {
  body.page-team .doctor-card h3,
  body.page-team .doctor-card h3 a {
    display: block !important;
    width: 100% !important;
    white-space: nowrap !important;
    font-size: clamp(.84rem, 3.75vw, 1.08rem) !important;
    line-height: 1.15 !important;
    letter-spacing: -.025em !important;
  }

  /* About Us: long-form story copy benefits from controlled justification. */
  body.page-about .story-card p {
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    hyphens: auto !important;
    -webkit-hyphens: auto !important;
    word-spacing: normal !important;
  }

  body.page-about .core-values-compact .feature-card,
  body.page-about .core-values-compact .feature-card h3,
  body.page-about .core-values-compact .feature-card p {
    text-align: center !important;
    text-align-last: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* v20-final: authoritative mobile alignment */
@media(max-width:900px){
body.page-team .doctor-card{display:grid!important;grid-template-columns:116px minmax(0,1fr)!important;align-items:stretch!important;min-height:184px!important}
body.page-team .doctor-photo-link{width:116px!important;height:100%!important}body.page-team .doctor-photo{width:100%!important;height:100%!important;min-height:184px!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center top!important}
body.page-team .doctor-card-body,body.page-team .doctor-card-body-polished{min-width:0!important;padding:18px 16px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;text-align:left!important}
body.page-team .doctor-card h3,body.page-team .doctor-card h3 a,body.page-team .role-badge,body.page-team .leadership-title,body.page-team .doctor-location,body.page-team .doctor-view-profile{width:auto!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;text-align:left!important;text-align-last:left!important;align-self:flex-start!important}
body.page-team .doctor-card h3,body.page-team .doctor-card h3 a{white-space:nowrap!important;font-size:clamp(.82rem,3.55vw,1.02rem)!important;letter-spacing:-.025em!important}
body.page-doctor-profile .profile-hero-grid{display:flex!important;flex-direction:column!important;align-items:center!important;gap:28px!important}body.page-doctor-profile .profile-hero-grid>div:first-child{width:100%!important;max-width:680px!important;margin:0 auto!important;text-align:center!important}
body.page-doctor-profile .back-link,body.page-doctor-profile .profile-hero .eyebrow,body.page-doctor-profile .profile-hero h1,body.page-doctor-profile .profile-role,body.page-doctor-profile .profile-hero .hero-sub{display:block!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;text-align-last:center!important}body.page-doctor-profile .profile-hero .button-row{justify-content:center!important}body.page-doctor-profile .profile-hero img{width:min(100%,390px)!important;margin:0 auto!important}
body.page-doctor-profile .profile-content{display:block!important;width:min(100%,760px)!important;margin:0 auto!important}body.page-doctor-profile .profile-content>div:first-child{width:100%!important;margin:0 auto!important}body.page-doctor-profile .profile-content h2,body.page-doctor-profile .profile-content h3,body.page-doctor-profile .profile-bio-eyebrow{text-align:center!important;text-align-last:center!important}
body.page-doctor-profile .profile-content>div:first-child p,body.page-doctor-profile .jack-full-biography p,body.page-doctor-profile .profile-personal-callout p{margin:0 0 18px!important;font-size:.98rem!important;line-height:1.68!important;text-align:justify!important;text-align-last:left!important;text-justify:inter-word!important;hyphens:auto!important;-webkit-hyphens:auto!important}body.page-doctor-profile .profile-facts{max-width:620px!important;margin:28px auto 0!important;text-align:center!important}
body.page-auto-accidents .stacked-intro-card,body.page-workers-comp .stacked-intro-card,body.page-conditions .condition-card-polished,body.page-conditions .condition-card,body.page-new-patients .timeline-step,body.page-new-patients .info-card{min-height:0!important}
body.page-auto-accidents .stacked-intro-card,body.page-workers-comp .stacked-intro-card,body.page-conditions .condition-card-polished,body.page-conditions .condition-card{padding:24px 22px!important}
body.page-auto-accidents .stacked-intro-card h2,body.page-workers-comp .stacked-intro-card h2,body.page-conditions .condition-card-polished h2,body.page-conditions .condition-card h2,body.page-new-patients .timeline-copy h2,body.page-new-patients .info-card h2{text-align:center!important;text-align-last:center!important}
body.page-auto-accidents .stacked-intro-card p,body.page-workers-comp .stacked-intro-card p,body.page-conditions .condition-card-polished p,body.page-conditions .condition-card p,body.page-new-patients .timeline-copy p,body.page-new-patients .info-card p{font-size:.95rem!important;line-height:1.62!important;text-align:justify!important;text-align-last:left!important;text-justify:inter-word!important;hyphens:auto!important;-webkit-hyphens:auto!important}body.page-new-patients .timeline-step{grid-template-columns:44px minmax(0,1fr)!important;gap:14px!important;padding:20px 18px!important}
}
@media(max-width:390px){body.page-team .doctor-card{grid-template-columns:104px minmax(0,1fr)!important}body.page-team .doctor-photo-link{width:104px!important}body.page-team .doctor-card-body,body.page-team .doctor-card-body-polished{padding:16px 12px!important}body.page-team .doctor-card h3,body.page-team .doctor-card h3 a{font-size:clamp(.76rem,3.35vw,.94rem)!important}}
