/* Readability pass: keep the design, make the type comfortable.
   Loaded after style.css on every entry page, including imported locales.
   Reading copy: 16–18px; UI: 14–16px; supporting text: 14px;
   short decorative uppercase captions: 12px. Never reduce inputs on mobile. */
body { font-size: 17px; }

/* Navigation and actions */
.new-home .desktop-nav,
.new-home .language-menu { font-size: 14px; }
.new-home .desktop-nav { gap: 21px; }
.new-home .button,
.new-home .hero-cta .button,
.new-home .closing-inner .button { font-size: 16px; }
.new-home .button-small { font-size: 14px; min-height: 46px; }
.new-home .language-menu summary { min-height: 44px; }
.new-home .language-options { width: 250px; }
.new-home .language-options a { padding-block: 10px; }
.new-home .mobile-navigation a { font-size: 16px; }

/* The hero retains its current headline size and composition. */
.new-home .hero-description { font-size: 18px; line-height: 1.75; color: #52646d; }
.new-home .hero-cta { flex-wrap: wrap; }
.new-home .free-note,
.new-home .hero-assurance { font-size: 14px; line-height: 1.65; color: #52646d; }
.new-home .hero-assurance { align-items: flex-start; }
.new-home .check-circle { flex-shrink: 0; margin-top: 4px; }
.new-home .eyebrow,
.new-home .hero-copy .eyebrow,
.new-home .section-heading .eyebrow,
.new-home .amount-intro .eyebrow,
.new-home .faq-section .eyebrow,
.new-home .closing-inner .eyebrow { font-size: 12px; letter-spacing: 1.2px; color: #53666d; }
.new-home .visual-coordinate,
.new-home .visual-footnote { font-size: 12px; letter-spacing: .8px; color: #596d72; }
.new-home .window-caption > span { font-size: 12px; letter-spacing: 1px; }
.new-home .tag-label { font-size: 12px; letter-spacing: .5px; color: #52646d; }
.new-home .tag-foot { display: block; font-size: 14px; line-height: 1.5; color: #52646d; max-width: 210px; }
.new-home .compensation-tag { max-width: 290px; }
.new-home .compensation-tag p { font-size: 18px; }

/* First-step form: readable labels, options, and privacy information. */
.new-home .checker-topline .eyebrow { font-size: 12px; color: #c0d0d5; letter-spacing: 1px; }
.new-home .checker-topline h2 { font-size: 26px; line-height: 1.35; }
.new-home .time-note { font-size: 14px; color: #c6d4d9; flex-shrink: 0; }
.new-home .disruption-choices { flex-wrap: wrap; }
.new-home .disruption-choices label > span { font-size: 15px; min-height: 44px; }
.new-home .route-select > span { font-size: 14px; color: #52646d; }
.new-home .route-select select { font-size: 16px; height: 35px; padding-left: 0; }
.new-home .check-button { font-size: 16px; min-height: 79px; gap: 14px; }
.new-home .checker-bottomnote { font-size: 14px; line-height: 1.65; color: #c6d4d9; flex-wrap: wrap; gap: 6px 8px; }
.new-home .checker-bottomnote > span { color: #c6d4d9; font-size: 14px; }
.new-home .trust-strip { gap: 18px 28px; flex-wrap: wrap; padding-block: 24px; font-size: 14px; color: #53666d; }
.new-home .trust-strip > span { max-width: none; }
.new-home .trust-strip a { font-size: 14px; }

/* Reading content and links */
.new-home .section-heading > p,
.new-home .step-card p,
.new-home .amount-intro p:not(.eyebrow),
.new-home .guide-card p,
.new-home .resource-banner p,
.new-home .faq-section > div > p:not(.eyebrow),
.new-home .faq-list details > p,
.new-home .closing-inner p:not(.eyebrow),
.new-home .footer-brand p { font-size: 16px; line-height: 1.8; color: #52646d; }
.new-home .step-card h3,
.new-home .guide-card h3,
.new-home .resource-banner h3 { font-size: 19px; line-height: 1.4; }
.new-home .text-link,
.new-home .amount-intro .text-link,
.new-home .resource-banner .text-link,
.new-home .faq-section .text-link,
.new-home .belief-copy .text-link,
.new-home .guide-link { font-size: 15px; }
.new-home .guide-link { gap: 12px; }
.new-home .resource-banner .text-link { flex-shrink: 0; }
.new-home .faq-list summary { font-size: 17px; line-height: 1.6; }
.new-home .faq-list details { padding-block: 23px; }
.new-home .distance-label { font-size: 12px; letter-spacing: .7px; color: #52646d; white-space: normal; }
.new-home .amount-card p { font-size: 15px; white-space: normal; line-height: 1.6; }
.new-home .amount-example { font-size: 14px; line-height: 1.5; color: #52646d; }
.new-home .amount-disclaimer { font-size: 14px; line-height: 1.75; color: #52646d; }
.new-home .belief-copy .eyebrow { font-size: 12px; letter-spacing: 1px; color: #c6d4d9; }
.new-home .belief-copy > p:not(.eyebrow),
.new-home .belief-points p { font-size: 16px; line-height: 1.8; color: #c6d4d9; }
.new-home .belief-points h3 { font-size: 17px; line-height: 1.5; }
.new-home .footer-links { font-size: 15px; color: #52646d; gap: 12px; }
.new-home .footer-links h3 { font-size: 16px; line-height: 1.5; }
.new-home .footer-made,
.new-home .footer-bottom,
.new-home .footer-bottom p { font-size: 14px; color: #52646d; line-height: 1.7; }
.new-home .footer-bottom { flex-wrap: wrap; }

/* Existing translated pages: article and tool text, not only the homepage. */
body.archive-page { font-size: 17px; --muted: #52646d; }
.archive-page .article-content p,
.archive-page .article-content li,
.archive-page .content-hero .section-lead,
.archive-page .section-lead,
.archive-page .hero-copy p:not(.section-kicker),
.archive-page .faq-list p,
.archive-page .result-card p { font-size: 17px; line-height: 1.8; }
.archive-page .article-content p,
.archive-page .content-hero .section-lead,
.archive-page .faq-list p { color: #52646d; }
.archive-page .faq-list summary { font-size: 17px; line-height: 1.6; }
.archive-page .field label { font-size: 16px; line-height: 1.6; }
.archive-page input,
.archive-page select,
.archive-page textarea { font-size: 16px; }
.archive-page .btn,
.archive-page .btn-small { font-size: 16px; min-height: 46px; }
.archive-page .form-privacy,
.archive-page .field-note,
.archive-page .copy-status,
.archive-page .breadcrumbs,
.archive-page .checker-progress,
.archive-page .sidebar-links a,
.archive-page .source-links a { font-size: 14px; line-height: 1.7; }
.archive-page .section-kicker { font-size: 12px; letter-spacing: 1px; }
.archive-page .site-footer,
.archive-page .site-footer p,
.archive-page .site-footer a,
.archive-page .footer-bottom { font-size: 15px; line-height: 1.8; }

/* Reflow only where the larger type needs more room. */
@media (max-width: 1100px) {
  .new-home .desktop-nav { display: none; }
  .new-home .header-actions { margin-left: auto; }
  .new-home .mobile-menu { display: flex; flex-direction: column; gap: 5px; justify-content: center; align-items: center; background: transparent; width: 44px; height: 44px; border: 1px solid #d5ded8; border-radius: 6px; }
  .new-home .mobile-menu span { width: 17px; height: 1px; background: var(--navy); }
  .new-home .mobile-navigation:not([hidden]) { display: flex; flex-direction: column; position: absolute; left: 0; top: 100%; width: 100%; padding: 15px 32px 20px; background: #fff; box-shadow: 0 15px 20px #172d3710; border-bottom: 1px solid var(--line); }
  .new-home .mobile-navigation a { padding: 11px 0; }
}
@media (min-width: 601px) and (max-width: 900px) {
  .new-home .route-fields { grid-template-columns: minmax(0,1fr) 20px minmax(0,1fr); }
  .new-home .check-button { grid-column: 1 / -1; min-height: 54px; margin-left: 0; }
  .new-home .compensation-tag { max-width: 235px; }
}
@media (max-width: 600px) {
  .new-home .hero-description { font-size: 17px; }
  .new-home .hero-cta { gap: 14px; }
  .new-home .hero-cta .button { white-space: normal; gap: 16px; }
  .new-home .free-note br { display: none; }
  .new-home .hero-assurance { line-height: 1.65; }
  .new-home .hero-visual { margin-top: 27px; }
  .new-home .visual-footnote { letter-spacing: .5px; }
  .new-home .compensation-tag { max-width: 250px; }
  .new-home .checker-topline { flex-wrap: wrap; gap: 10px; }
  .new-home .checker-topline h2 { max-width: none; }
  .new-home .time-note { border: 0; width: auto; height: auto; gap: 7px; }
  .new-home .disruption-choices { grid-template-columns: 1fr; }
  .new-home .disruption-choices label > span { justify-content: flex-start; padding-inline: 14px; }
  .new-home .check-button { min-height: 54px; }
  .new-home .checker-bottomnote { justify-content: flex-start; text-align: left; }
  .new-home .checker-bottomnote > span { font-size: 14px; }
  .new-home .trust-strip > span,
  .new-home .trust-strip a { font-size: 14px; }
  .new-home .trust-strip a { gap: 9px; }
  .new-home .amount-card { padding-inline: 10px; }
  .new-home .amount-card p { font-size: 14px; overflow-wrap: anywhere; }
  .new-home .distance-label { font-size: 12px; }
  .new-home .amount-example { font-size: 14px; }
  .new-home .guide-grid { grid-template-columns: 1fr; }
  .new-home .guide-card { padding: 23px; }
  .new-home .guide-icon { margin-bottom: 16px; }
  .new-home .resource-banner .text-link { margin-left: 42px; }
  .new-home .belief-section { padding-inline: 23px; }
  .new-home .footer-links:last-child h3 { font-size: 16px; }
  .new-home .footer-bottom p { font-size: 14px; }
  .new-home .mobile-navigation:not([hidden]) { padding-inline: 20px; }
}
