/* Teeth Q desktop readability layer. Mobile remains governed by <=900px rules. */
@media (min-width: 901px) {
  .payment-guide { padding-left:max(32px,calc(50vw - 720px)); padding-right:max(32px,calc(50vw - 720px)); }
  .payment-guide article { grid-template-columns:230px minmax(0,1fr); gap:64px; }
  .payment-guide-label span { width:52px; height:52px; font-size:13px; }
  .payment-guide-label small { max-width:145px; font-size:12px; }
  .payment-guide-copy h2 { font-size:clamp(34px,2.5vw,44px); }
  .payment-guide-copy>p { max-width:900px; font-size:18px; line-height:1.65; }
  .payment-guide-copy li { padding-left:22px; font-size:16px; line-height:1.6; }
  .payment-guide-copy li:before { width:8px; height:8px; top:9px; }
  .payment-guide-copy>a { font-size:15px; }
  .payment-hero>div>p,.payment-checklist>div>p,.payment-cta>div>p { font-size:13px; }
  .payment-hero>div>div { font-size:19px; }
  .payment-hero aside>span { font-size:12px; }
  .payment-hero aside h2 { font-size:27px; }
  .payment-hero aside p { font-size:16px; }
  .payment-hero aside a { font-size:15px; }
  .payment-jump a { min-height:44px; font-size:14px; }
  .medisave-identity span,.panel-partners>p,.payment-methods>p,.chas-support>p { font-size:14px; }
  .medisave-path { padding:24px; }
  .medisave-path>span { min-height:30px; font-size:12px; }
  .medisave-path>span b { font-size:11px; }
  .medisave-path strong,.medisave-path h3 { font-size:20px; }
  .medisave-path p { font-size:16px; line-height:1.6; }
  .medisave-path>a,.medisave-path .flexi-treatment-links a { min-height:48px; font-size:14px; }
  .payment-checklist b { font-size:16px; }
  .payment-checklist small { font-size:15px; line-height:1.55; }
  .payment-checklist li>span { width:34px; height:34px; font-size:12px; }
  .payment-cta a { min-height:50px; font-size:14px; }
  .payment-cta {
    grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);
    align-items:center;
    gap:52px;
    min-height:0;
    padding-top:54px;
    padding-bottom:54px;
  }
  .payment-cta h2 {
    max-width:720px;
    font-size:clamp(36px,3.2vw,52px);
    line-height:1.12;
  }
  .payment-cta>div:last-child { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
  .payment-cta>div:last-child a { width:100%; padding-inline:18px; text-align:center; }
  .payment-source-note { max-width:1440px; margin:0 auto; padding:18px 32px 38px; color:#55777d; font-size:14px; line-height:1.55; }

  /* Clinic directory cards use compact, readable actions on desktop. */
  body.tq-locations-enhanced .tq-card-actions,
  body.tq-locations-enhanced .clinic-list-card__actions {
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:12px!important;
  }
  body.tq-locations-enhanced :is(.tq-card-actions,.clinic-list-card__actions) a {
    box-sizing:border-box!important;
    width:auto!important;
    min-width:0!important;
    min-height:46px!important;
    padding:10px 18px!important;
    border-radius:999px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }

  /* Homepage clinic cards: compact, consistent actions on desktop. */
  body.tq-live-experience .location-list .clinic-list-card__actions {
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    margin-top:18px!important;
  }
  body.tq-live-experience .location-list .clinic-list-card__actions a {
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    min-height:44px!important;
    padding:10px 16px!important;
    border-radius:999px!important;
    font-size:14px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }
  body.tq-live-experience .location-list .clinic-list-card__actions a:first-child { min-width:148px!important; }
  body.tq-live-experience .location-list .clinic-list-card__actions a:last-child { min-width:128px!important; }

  .profile-breadcrumb { font-size:14px; }
  .profile-role,.profile-eyebrow { font-size:13px; }
  .profile-qualification { font-size:20px; }
  .profile-actions a { font-size:15px; }
  .profile-availability { font-size:15px; }
  .profile-content article>p:not(.profile-eyebrow),.profile-content aside>p:not(.profile-eyebrow),.profile-biography p { font-size:17px; }
  .profile-text-link,.profile-content aside>a { font-size:15px; }
  .profile-trust>div>span { font-size:12px; }
  .profile-trust b { font-size:16px; }
  .profile-trust small { font-size:14px; }
  .profile-clinic small { font-size:11px; }
  .profile-clinic>div>a { font-size:16px; }
  .profile-clinic span { font-size:13px; }
  .profile-clinic>a { min-height:44px; font-size:13px; }
  .profile-content aside .profile-schedule-note { font-size:13px!important; }

  .patient-hero>div>p,.patient-section-heading>p,.services-hero>div>p,.services-section-heading>p,.services-fees p,.restorative-hero>div>p,.restorative-options header>p,.restorative-process header>p,.restorative-payment p,.restorative-faq header>p,.restorative-next p { font-size:13px; }
  .patient-hero>div>div,.services-hero>div>div,.services-fees>div>div,.services-availability>div>span,.restorative-options header>span,.restorative-hero aside p,.restorative-options article p,.restorative-process li p { font-size:17px; }
  .services-hero>div>nav a,.services-hero aside a,.services-fees a,.services-jump a,.services-availability nav a,.restorative-hero nav a,.restorative-payment nav a,.restorative-process>a { font-size:15px; }
  .services-hero aside>span,.restorative-hero aside span { font-size:12px; }
  .services-hero aside h2,.restorative-hero aside h2 { font-size:30px; }
  .services-hero aside p { font-size:16px; }
  .restorative-options h3 { font-size:25px; }
  .restorative-process h3 { font-size:21px; }
  .restorative-process li>span { font-size:13px; }

  .homepage-lead p,.reassurance-copy p,.location-heading p,.location-list p,.team-rota-note,.service-note { font-size:17px; line-height:1.65; }
  .quick-links a,.home-patient-links a,.team-card-actions a,.clinic-list-card__actions a,.map-detail__actions a { font-size:15px; }
  .service-num,.reassurance li>span,.location-list span { font-size:13px; }
  .service-card a { font-size:15px; }
  .team-directory-grid article>span,.team-card-copy>span { font-size:12px; }
  .team-directory-grid p,.team-card-copy p { font-size:16px; }
  .team-directory-grid a { font-size:15px; }
  .team-tools label { font-size:13px; }
  .team-tools select { font-size:15px; }
  .team-results { font-size:13px; }
  .team-empty button { font-size:14px; }
  .team-card-clinic b,.team-card-clinic span { font-size:13px; }
  .team-card-actions a { font-size:14px; }
  .team-directory-grid article > img {
    width:100%;
    aspect-ratio:16 / 9;
    height:auto;
    object-fit:cover;
    object-position:center top;
  }
  .team-card-copy {
    flex-direction:column;
    justify-content:flex-start;
    align-items:flex-start;
    gap:0;
    min-height:0;
    height:auto;
    padding:15px 18px 13px;
  }
  .team-card-copy > span {
    width:100%;
    height:auto;
    margin:0;
    line-height:1.35;
  }
  .team-card-copy > h2 {
    width:100%;
    height:auto;
    margin:6px 0 0;
    font-size:24px;
    line-height:1.18;
  }
  .team-card-copy > p {
    width:100%;
    height:auto;
    margin:4px 0 0;
    font-size:15px;
    line-height:1.5;
  }
  .team-card-actions {
    align-items:center;
    gap:12px;
    margin-top:auto;
    padding:12px 16px 14px;
  }
  .team-card-actions > a:first-child { flex:0 0 auto; }
  .team-card-actions > a:last-child {
    max-width:64%;
    min-height:38px;
    padding:8px 13px;
    text-align:center;
    line-height:1.25;
  }
  .home-patient-links span,.home-patient-links b { font-size:13px; }
  .home-patient-links p { font-size:16px; }
  .clinic-list-card__head small { font-size:13px; }
  .clinic-list-card>p { font-size:15px; }
  .location-list .clinic-list-card__actions a { font-size:14px; }

  .patient-section-list article>span { font-size:13px; }
  .patient-section-list a { font-size:15px; }
  .patient-confidence>p { font-size:13px; }
  .patient-hero aside span { font-size:12px; }
  .patient-hero aside p { font-size:16px; }
  .patient-hero aside a { font-size:15px; }
  .patient-path-grid>a>span,.patient-path-grid b { font-size:13px; }
  .patient-path-grid p { font-size:16px; }
  .patient-emergency-copy a,.patient-confidence a { font-size:14px; }
  .patient-guide-number>span { font-size:13px; }
  .patient-guide-number small { max-width:145px; font-size:12px; }
  .patient-guide-copy li { padding-left:22px; font-size:16px; line-height:1.6; }
  .patient-guide-copy>a { font-size:15px; }

  .service-pathways a b,.service-groups article>header span { font-size:14px; }
  .service-pathways a p { font-size:16px; line-height:1.65; }
  .service-groups article>header small { font-size:13px; }
  .service-groups article>header>p { font-size:17px; line-height:1.65; }
  .service-hub-card small { font-size:12px; }
  .service-hub-card p { font-size:16px; }
  .service-hub-card a { font-size:15px; }
  .service-note { font-size:13px!important; }
  .services-availability p { font-size:13px; }

  body.tq-article-enhanced .entry-content p,body.tq-article-enhanced .entry-content li,body.tq-article-enhanced .post-content p,body.tq-article-enhanced .post-content li { font-size:18px; line-height:1.7; }
  body.tq-article-enhanced .entry-content small,body.tq-article-enhanced .post-content small { font-size:14px; }
  body.tq-editorial-archive .entry-summary,body.tq-editorial-archive .post-meta { font-size:16px; }
}

@media (min-width:901px) and (max-width:1199px) {
  .team-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Wide desktop: show more clinicians at a natural portrait scale. */
@media (min-width:1320px) {
  .hub-content {
    padding-left:max(32px,calc(50vw - 680px));
    padding-right:max(32px,calc(50vw - 680px));
  }
  .team-directory-grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
  }
  .team-directory-grid article > img {
    aspect-ratio:4 / 3;
    object-position:center 18%;
  }
  .team-card-copy > h2 { font-size:22px; }
  .team-card-copy > p { font-size:14px; }
  .team-card-actions { gap:9px; padding:11px 14px 13px; }
  .team-card-actions > a { font-size:13px; }
  .team-card-actions > a:last-child {
    max-width:66%;
    min-height:38px;
    padding:8px 11px;
  }
}

@media (min-width: 1800px) {
  .payment-guide { padding-left:max(48px,calc(50vw - 760px)); padding-right:max(48px,calc(50vw - 760px)); }
  .payment-guide-copy>p { font-size:19px; }
  .payment-guide-copy li { font-size:17px; }
  .payment-checklist { padding-left:max(48px,calc(50vw - 760px)); padding-right:max(48px,calc(50vw - 760px)); }
}
