/* Phone-first refinements. The approved desktop layouts remain unchanged. */
@media screen and (max-width:640px) {
  body.mobile-first { -webkit-text-size-adjust:100%; }
  .mobile-first .nav-wrap {padding:9px 16px;gap:12px}
  .mobile-first .site-nav-toggle {min-width:48px;min-height:48px;font-size:15px}
  .mobile-first .nav-wrap[data-site-nav-open="true"] .nav-links {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 0 4px;max-height:calc(100dvh - 88px);overflow-y:auto;overscroll-behavior:contain}
  .mobile-first .nav-links a {min-height:48px;padding:9px 10px;font-size:16px;line-height:1.5}
  .mobile-first .nav-links li:last-child {grid-column:1 / -1}

  /* A visible face and a clear next step, without a second screen of portrait. */
  .mobile-first.brand-home .hero {padding-inline:16px}
  .mobile-first.brand-home .hero-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;padding:26px 0;min-height:0}
  .mobile-first.brand-home .hero-text {display:contents}
  .mobile-first.brand-home .hero h1 {grid-column:1 / -1;grid-row:1;align-self:center;padding-right:116px;margin:0;font-size:24px;line-height:1.5;letter-spacing:0;text-wrap:balance}
  .mobile-first.brand-home .hero-photo {grid-column:2;grid-row:1;justify-self:end;align-self:center;width:102px;max-width:102px;height:152px;aspect-ratio:auto}
  .mobile-first.brand-home .hero-photo img {height:100%;border-radius:6px;object-position:center 12%}
  .mobile-first.brand-home .hero p.lead {grid-column:1 / -1;grid-row:2;margin:0;font-size:16px;line-height:1.8}
  .mobile-first.brand-home .credentials {grid-column:1 / -1;grid-row:3;margin:0}
  .mobile-first.brand-home .credential-primary {gap:4px 18px;font-size:14px}
  .mobile-first.brand-home .credential-secondary {display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:4px;font-size:13px;line-height:1.6}
  .mobile-first.brand-home .credential-secondary li {border:0;padding:0;margin:0}
  .mobile-first.brand-home .hero .btn {grid-row:4;margin:0;min-width:0;min-height:48px;padding:10px 8px;font-size:15px;line-height:1.5}
  .mobile-first.brand-home .hero .btn-primary {grid-column:1}
  .mobile-first.brand-home .hero .btn-ghost {grid-column:2}
  .mobile-first.brand-home .hero-grid.no-photo h1 {padding-right:0}
  .mobile-first .section,.mobile-first .section-alt-inner {padding:32px 16px}
  .mobile-first .notice-bar {padding-inline:16px}
  .mobile-first .notice-inner {padding-block:12px}

  /* Bring the article and its full author/review details into the first screen. */
  .mobile-first .article-wrap {padding:18px 16px 36px}
  .mobile-first .breadcrumb {margin:0 0 12px;font-size:12px;line-height:1.6}
  .mobile-first .breadcrumb a {min-height:44px}
  .mobile-first .local-hero-panel {padding:22px 18px;gap:18px;margin-bottom:18px}
  .mobile-first .local-hero-panel h1 {margin-bottom:14px;font-size:25px;line-height:1.5}
  .mobile-first .local-hero-panel .local-kicker {margin-bottom:8px;font-size:13px}
  .mobile-first .local-hero-panel .local-reading-meta {margin-bottom:10px}
  .mobile-first .local-hero-panel .local-lead {font-size:16px;line-height:1.8}
  .mobile-first .local-hero-panel .local-hero-actions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px}
  .mobile-first .local-hero-panel .local-hero-actions .btn {width:100%;min-width:0;min-height:48px;padding:10px 8px;font-size:15px;line-height:1.5}
  .mobile-first .local-doctor-visual {display:flex;flex-direction:row;gap:12px;align-items:center;align-self:stretch;width:100%!important;max-width:none!important;aspect-ratio:auto;border-radius:0;border:0;border-top:1px solid #54738a;padding-top:14px;margin:0;background:none}
  .mobile-first .local-doctor-visual img {flex:0 0 56px;width:56px;height:68px;object-fit:cover;object-position:center 12%;border-radius:4px}
  .mobile-first .local-doctor-visual figcaption {min-width:0;padding:0;background:none;text-align:left;font-size:13px}
  .mobile-first .local-doctor-visual figcaption strong {font-size:15px}
  .mobile-first .health-article .local-hero-panel {padding:20px 16px;margin-bottom:16px}
  .mobile-first .health-article .local-hero-panel h1 {font-size:24px;line-height:1.5}
  .mobile-first .health-article .local-doctor-visual {display:none}
  .mobile-first .author-box {gap:12px;padding:12px 0;margin-block:0 16px;line-height:1.7}
  .mobile-first .author-avatar {width:40px;height:40px;flex-basis:40px}
  .mobile-first .article-mobile-toc {margin:16px 0;background:#f3f6f7;border-color:#c4d0d8}
  .mobile-first .article-mobile-toc > summary {min-height:48px;padding:12px 14px;font-size:16px}
  .mobile-first .article-mobile-toc > .toc {padding:0 12px 10px}
  .mobile-first .article-mobile-toc > .toc ul {grid-template-columns:minmax(0,1fr);gap:0;margin-top:6px}
  .mobile-first .article-mobile-toc > .toc li {border-bottom:1px solid #dbe2e6}
  .mobile-first .article-mobile-toc > .toc a {min-height:48px;padding:10px 2px;border-radius:0;font-size:15px;line-height:1.65}
  .mobile-first .article-mobile-toc[open] > .toc {max-height:60dvh;overflow-y:auto;overscroll-behavior:contain}
  .mobile-first .health-article {font-size:16px;line-height:1.9}
  .mobile-first .health-article > h2 {margin-top:34px;font-size:21px}
  .mobile-first .faq-item {padding:0 14px;margin-bottom:12px}
  .mobile-first .faq-item summary {min-height:52px;padding:14px 0;font-size:16px;line-height:1.65}
  .mobile-first .faq-item p {font-size:16px;line-height:1.85}
  .mobile-first .tool-box {padding:20px 14px}
  .mobile-first .tool-q label {min-height:48px;padding-block:9px;line-height:1.6}
  .mobile-first .tool-num {grid-template-columns:minmax(0,1fr) 104px;gap:14px 10px}
  .mobile-first .tool-num > input[type="number"] {width:104px;min-height:48px}
  .mobile-first main input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
  .mobile-first main select,.mobile-first main textarea {font-size:16px;min-height:48px}
  .mobile-first .chip,.mobile-first main button {min-height:44px}
  .mobile-first .site-footer .footer-inner {padding:28px 16px calc(86px + env(safe-area-inset-bottom,0px))}
  .mobile-first .site-footer p {line-height:2}

  /* Keep the media page's editorial hierarchy, with less vertical stacking. */
  .mobile-first.media-library-body .media-inner {width:calc(100% - 32px)}
  .mobile-first.media-library-body .media-brand-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:26px 0;min-height:0}
  .mobile-first.media-library-body .media-brand-copy {display:contents}
  .mobile-first.media-library-body .media-brand-copy h1 {grid-column:1;grid-row:1;margin:0;font-size:15px}
  .mobile-first.media-library-body .media-brand-slogan {grid-column:1 / -1;grid-row:2;padding-right:116px;margin:0;font-size:24px;line-height:1.5;text-wrap:pretty}
  .mobile-first.media-library-body .media-brand-name {grid-column:1 / -1;grid-row:3;margin:4px 0 0;font-size:22px}
  .mobile-first.media-library-body .media-brand-credentials {grid-column:1 / -1;grid-row:4;margin:0;font-size:15px;line-height:1.7}
  .mobile-first.media-library-body .media-brand-intro {grid-column:1 / -1;grid-row:5;margin:0;font-size:16px;line-height:1.8}
  .mobile-first.media-library-body .media-brand-actions {grid-column:1 / -1;grid-row:6;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px}
  .mobile-first.media-library-body .media-brand-actions a {min-width:0;padding:10px 8px;font-size:15px;min-height:48px;text-align:center}
  .mobile-first.media-library-body .media-brand-portrait {grid-column:2;grid-row:1 / 3;justify-self:end;align-self:center;width:102px;height:172px;aspect-ratio:auto;border-radius:6px;margin:0}
  .mobile-first.media-library-body .media-record-controls {padding:16px 12px}

  /* One bottom row: topic/appointment links plus the existing contact menu. */
  .mobile-first .floating-contact[data-floating-contact-mode="compact"] .floating-contact-toggle {min-height:48px;padding:8px 12px;font-size:14px}
  .mobile-first .floating-contact[data-floating-contact-mode="compact"] .floating-contact-toggle .floating-contact-icon {width:28px;height:28px}
  .mobile-first.mobile-contact-docked .local-sticky-actions {padding-right:76px}
  .mobile-first .local-sticky-actions a {min-height:48px;font-size:14px;line-height:1.5;padding:6px}
  .mobile-first .local-sticky-actions a:first-child {border-radius:8px 0 0 8px}
  .mobile-first .local-sticky-actions a:last-child {border-radius:0 8px 8px 0}
  .mobile-first .floating-contact[data-floating-contact-docked="true"] {right:12px;bottom:calc(9px + env(safe-area-inset-bottom,0px))}
  .mobile-first .floating-contact[data-floating-contact-docked="true"] .floating-contact-toggle {width:48px;height:48px;padding:8px;border-radius:10px}
  .mobile-first .floating-contact[data-floating-contact-docked="true"] .floating-contact-toggle > span:not(.floating-contact-icon) {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .mobile-first .floating-contact[data-floating-contact-docked="true"] .floating-contact-panel {bottom:calc(100% + 18px)}
}
