/* Landing readability: shared scale applies after section and responsive styles. */
:root { --landing-body: 20px; --landing-caption: 18px; --landing-control: 20px; --landing-lead: 22px; }
body { font-size: var(--landing-body); }
.hero-description { font-size: var(--landing-lead); line-height: 1.6; }
.hero-offer { font-size: var(--landing-caption); line-height: 1.6; gap: 10px 24px; }
.sales-primary, .sales-secondary, .order-link, .pilot-card button.order-link { font-size: var(--landing-control); line-height: 1.5; }
.sales-secondary { padding-block: 8px; }
.outcome > p, .section-heading > p, .outcomes-scope,
.analysis-copy > p, .analysis .dialogue .case-context, .analysis .dialogue .case-question,
.analysis .dialogue p, .analysis .demo-action p, .steps p, .pilot-deliverables, .pilot-includes,
.pricing-explanation, .faq-list details > p, .closing-offer > p:not(.eyebrow),
.report-paper p, .report-paper li { font-size: var(--landing-body); line-height: 1.65; }
.section-heading > p { max-width: 340px; }
.steps h3 { font-size: 22px; line-height: 1.4; }
.pilot-volume { font-size: 22px; line-height: 1.5; }
.pilot-contact, .footer-top, .legal-footer,
.eyebrow, .section-kicker, .outcome-top, .pilot-card-top, .steps li > span,
.analysis .demo-label, .analysis .dialogue p > span, .analysis .demo-record-caption, .analysis .demo-choice-label, .analysis .demo-question-number,
.case-question strong, .report-sample > summary small, .report-paper-heading,
.report-paper .report-note, .report-scope dt { font-size: var(--landing-caption); line-height: 1.55; }
.analysis .demo-tabs button { font-size: var(--landing-control); line-height: 1.45; }
.analysis .demo-window-top { font-size: var(--landing-caption); line-height: 1.5; }
.analysis .demo-result p { font-size: 24px; line-height: 1.4; }
.report-paper table, .report-paper th, .report-paper td,
.volume-pricing table, .volume-pricing thead, .volume-pricing summary,
.pricing-heading > span, .pricing-action { font-size: var(--landing-caption); line-height: 1.55; }
.report-paper th, .report-paper td { padding-block: 20px; }
.report-paper h4 { font-size: 24px; }
.report-scope dt { max-width: 230px; }
.faq-list summary { font-size: 24px; line-height: 1.4; }
.report-sample > summary { font-size: 24px; }
.art-top, .art-bottom { font-size: var(--landing-caption); line-height: 1.5; }
nav, .header-phone { font-size: 18px; }
.legal-footer p { max-width: 470px; }
.legal-footer { font-size: 11px; line-height: 1.5; padding-block: 18px; }
.enquiry-field label, .enquiry-field input, .enquiry-status, .field-error { font-size: var(--landing-body); }
.enquiry-policy, .enquiry-alternative, .consent-choice { font-size: var(--landing-caption); line-height: 1.55; }
.cookie-notice { width: min(540px, calc(100% - 48px)); }
@media (max-width: 1050px) {
    .site-header { gap: 20px; }
    nav { gap: 18px; }
    .header-actions { gap: 12px; }
}
@media (max-width: 760px) {
    :root { --landing-body: 18px; --landing-caption: 16px; --landing-control: 18px; --landing-lead: 20px; }
    .header-phone { font-size: 16px; }
    .section-kicker { grid-template-columns: 44px 1fr; gap: 10px; }
    .section-heading > p { max-width: none; }
    .steps h3, .pilot-volume { font-size: 20px; }
    .analysis .demo-tabs { gap: 12px; }
    .analysis .demo-tabs button { font-size: 18px; }
    .report-paper table, .report-paper th, .report-paper td { font-size: 18px; }
    .volume-pricing table, .volume-pricing thead { font-size: 18px; }
    .report-scope { grid-template-columns: 1fr; gap: 18px; }
    .report-scope div { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 20px; }
    .report-scope dt { max-width: none; }
    .report-paper h4, .faq-list summary, .report-sample > summary { font-size: 22px; }
    .legal-footer { font-size: 11px; gap: 4px; padding-block: 10px; }
    .legal-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; gap: 3px 11px; }
    .legal-links a, .legal-links button { min-height: 24px; text-align: left; }
    .footer-top { flex-wrap: wrap; gap: 12px 24px; }
    .footer-top > :first-child { display: flex; }
    .pilot-card { padding: 24px; }
    .pilot-price { font-size: clamp(64px, 18vw, 88px); white-space: nowrap; }
    .pilot-card .order-link { padding-inline: 16px; gap: 12px; }
    .cookie-notice { width: auto; }
}
@media (max-width: 380px) {
    .site-header { gap: 8px; padding-inline: 12px; }
    .header-actions { gap: 8px; }
    .wordmark { font-size: 24px; gap: 4px; }
    .wordmark span { width: 24px; }
    .header-phone { font-size: 16px; letter-spacing: -.035em; }
    .hero-offer { gap: 8px 16px; }
    .sales-primary { padding-inline: 20px; }
    .analysis .demo-tabs { gap: 8px; }
}
