/* Shared phone and tablet content refinements. The approved header and dock are outside this scope. */
@media (max-width:980px) {
  .la37-mobile-app { --la60-gutter:20px; }

  /* Homepage title sizes keep their approved rules in mobile-app.css. */
  .la37-mobile-app .la37-hero:not(.la37-home-hero) { padding-inline:var(--la60-gutter); }
  .la37-mobile-app .la37-hero:not(.la37-home-hero)>h1 {
    font-size:28px;line-height:1.25;letter-spacing:-.8px;text-align:center;
    max-width:25ch;margin-inline:auto;text-wrap:balance;
  }
  .la37-mobile-app .la37-hero:not(.la37-home-hero)>.la37-hero-note {
    margin-inline:auto;text-align:center;max-width:46ch;font-size:14px;line-height:1.75;
  }
  .la37-mobile-app .la37-section:not(.la37-contact-card) { padding-inline:var(--la60-gutter);padding-top:28px; }
  .la37-mobile-app .la37-section-heading { gap:8px;margin-bottom:18px; }
  .la37-mobile-app .la37-section:not(.la37-audience-explorer)>.la37-section-heading>h2 {
    width:100%;font-size:20px;line-height:1.35;letter-spacing:-.55px;text-align:center;
  }
  .la37-mobile-app .la37-section-heading>a { margin-left:auto;text-align:right; }
  .la37-mobile-app .la37-row strong,.la37-mobile-app .la37-checklist>a { overflow-wrap:anywhere; }
  .la37-mobile-app .la37-plan-business .la37-plan-price>span { color:#c5d0e1; }

  /* Existing route journeys use the same section scale as the page around them. */
  .la37-mobile-app .la51-context-mobile { margin:28px var(--la60-gutter) 0; }
  body.la4-site main.la37-mobile-app .la51-context-mobile h2 {
    font-size:20px;line-height:1.35;letter-spacing:-.55px;text-align:center;
  }
  .la37-mobile-app .la51-context-mobile .la51-heading { text-align:center;margin-bottom:18px; }
  .la37-mobile-app .la51-context-mobile .la51-heading>div { max-width:none; }
  .la37-mobile-app .la51-context-mobile .la51-heading p { margin-inline:auto;font-size:14px;line-height:1.75; }
  .la37-mobile-app .la51-context-mobile .la51-heading>a {
    display:flex;justify-content:flex-end;width:max-content;max-width:100%;margin-left:auto;
    gap:12px;text-align:right;font-size:14px;
  }
  .la37-mobile-app .la51-context-mobile .la51-panel h3 { font-size:18px;line-height:1.4;text-align:left; }
  .la37-mobile-app .la51-context-mobile :is(.la51-stage-number,.la51-panel-index) { font-size:12px; }
  .la37-mobile-app .la51-context-mobile .la51-panel li { font-size:14px;line-height:1.75; }
  .la37-mobile-app .la51-context-mobile .la51-scene-top>span:first-child { font-size:14px; }
  .la37-mobile-app .la51-context-mobile .la51-reading-grid strong { font-size:14px; }
  .la37-mobile-app .la51-context-mobile .la51-reading-grid small { font-size:12px; }

  /* Service-centre titles previously used an important desktop-derived size. */
  .la37-mobile-app .la53-collection-mobile :is(.la53-frame,.la53-support) {
    width:calc(100% - var(--la60-gutter)*2);
  }
  body.la4-site main.la37-mobile-app .la53-collection-mobile h1 {
    font-size:28px!important;line-height:1.25!important;letter-spacing:-.8px;
    max-width:25ch;margin-inline:auto;text-align:center;text-wrap:balance;
  }
  .la37-mobile-app .la53-collection-mobile .la53-hero-copy>p {
    margin-inline:auto;max-width:44ch;text-align:center;font-size:14px;line-height:1.75;
  }
  .la37-mobile-app .la53-collection-mobile :is(.la53-directory-heading,.la53-support-intro)>h2 {
    font-size:20px;line-height:1.35;letter-spacing:-.55px;max-width:none;text-align:center;
  }
  .la37-mobile-app .la53-collection-mobile .la53-directory-heading>.la53-inline-link {
    display:flex;justify-content:flex-end;gap:10px;margin-left:auto;font-size:14px;text-align:right;
  }
  .la37-mobile-app .la53-collection-mobile .la53-support-intro>.la53-inline-link {
    display:flex;justify-content:flex-end;gap:10px;margin-left:auto;font-size:14px;text-align:right;
  }
  .la37-mobile-app .la53-collection-mobile :is(.la53-group-heading p,.la53-support-card small,.la53-card-mode) {
    font-size:12px;line-height:1.65;
  }
  .la37-mobile-app .la53-collection-mobile .la53-service-card h4 { text-align:left; }

  /* Traffic titles and records retain their own palette and service content. */
  .la37-mobile-app .la54-page-mobile .la54-shell { width:calc(100% - var(--la60-gutter)*2); }
  body.la4-site main.la37-mobile-app .la54-page-mobile h1 {
    font-size:28px;line-height:1.25;letter-spacing:-.8px;max-width:25ch;
    margin-inline:auto;text-align:center;text-wrap:balance;
  }
  .la37-mobile-app .la54-page-mobile .la54-hero-copy>p {
    margin-inline:auto;max-width:44ch;text-align:center;font-size:14px;line-height:1.75;
  }
  body.la4-site main.la37-mobile-app .la54-page-mobile h2 {
    font-size:20px;line-height:1.35;letter-spacing:-.55px;text-align:center;
  }
  .la37-mobile-app .la54-page-mobile .la54-section-head>p { font-size:14px;line-height:1.75;text-align:center; }
  .la37-mobile-app .la54-page-mobile :is(.la54-process p,.la54-record-list li,.la54-route-list li,.la54-route-list>p,.la54-mode p,.la54-brief-intro>p,.la54-scope p) {
    font-size:14px;line-height:1.75;
  }
  .la37-mobile-app .la54-page-mobile :is(.la54-service>strong,.la54-brief label) { font-size:14px; }
  .la37-mobile-app .la54-page-mobile .la54-service>p { font-size:12px;line-height:1.7; }
  .la37-mobile-app .la54-page-mobile .la54-brief-intro>a {
    justify-content:flex-end;width:max-content;max-width:100%;margin-left:auto;gap:12px;text-align:right;
  }

  /* Long labels can wrap without widening the page or changing native controls. */
  .la37-mobile-app :is(.la37-row>span,.la37-audience-banner>div,.la37-plan-top>div,.la51-heading>div,.la51-scene,.la51-stage-work,.la51-panel,.la53-hero-copy,.la53-directory-layout,.la53-card-grid,.la54-hero-copy,.la54-service-grid,.la54-route-list) {
    min-width:0;max-width:100%;
  }
  .la37-mobile-app :is(.la37-row strong,.la51-tabs strong,.la51-enquiry strong,.la53-service-card h4,.la54-service>strong,.la54-breadcrumb>span:last-child) {
    overflow-wrap:anywhere;
  }
  .la37-mobile-app :is(button,summary) { min-height:44px; }
  .la37-mobile-app :is(.la37-text-link,.la37-back,.la37-edit-task,.la51-heading>a,.la51-reading-grid>a,.la51-related>a,.la53-inline-link,.la53-hero-link,.la54-secondary,.la54-mode a,.la54-brief-intro>a) {
    min-height:44px;
  }
  .la37-mobile-app :is(.la37-field,.la37-search,.la51-draft,.la53-search,.la54-brief) :is(input,select,textarea) {
    min-width:0;max-width:100%;font-size:16px;
  }
  .la37-mobile-app :is(.la37-workflow-photo,.la37-guide-meta) { margin-inline:var(--la60-gutter); }
  .la37-mobile-app .la37-guide-meta { padding-inline:0; }
  .la37-mobile-app .la37-contact-card { margin-inline:var(--la60-gutter); }
}

@media (min-width:600px) and (max-width:980px) {
  .la37-mobile-app { --la60-gutter:32px; }
  .la37-mobile-app .la37-hero:not(.la37-home-hero)>h1,
  body.la4-site main.la37-mobile-app .la54-page-mobile h1 { font-size:34px; }
  body.la4-site main.la37-mobile-app .la53-collection-mobile h1 { font-size:34px!important; }
  .la37-mobile-app .la37-section:not(.la37-audience-explorer)>.la37-section-heading>h2,
  body.la4-site main.la37-mobile-app .la51-context-mobile h2,
  body.la4-site main.la37-mobile-app .la54-page-mobile h2,
  .la37-mobile-app .la53-collection-mobile :is(.la53-directory-heading,.la53-support-intro)>h2 { font-size:24px; }
}

@media (max-width:350px) {
  .la37-mobile-app { --la60-gutter:16px; }
  .la37-mobile-app .la37-hero:not(.la37-home-hero)>h1,
  body.la4-site main.la37-mobile-app .la54-page-mobile h1 { font-size:26px; }
  body.la4-site main.la37-mobile-app .la53-collection-mobile h1 { font-size:26px!important; }
}
