/* Supporting copy only: retain the existing title, body, price and image scale. */
body:is(.vs-body,.ckcp-product-detail,.ckcp-pilot,.ckcp-owner-page,.oi-page,.ckcp-showroom,.ckcp-source-product) {
  --ckcp-small-text:14px;
  --ckcp-micro-text:13px;
}
@media(min-width:761px) {
  body:is(.vs-body,.ckcp-product-detail,.ckcp-pilot,.ckcp-owner-page,.oi-page,.ckcp-showroom,.ckcp-source-product) {
    --ckcp-small-text:15px;
    --ckcp-micro-text:14px;
  }
}

/* Vehicle selection, showroom captions and the shared brand promise. */
body.vs-body :is(.vs-preview-note,.vs-overline,.vs-purpose,.vs-product-number,
  .vs-directory-controls>.vs-overline,.vs-directory-car-brand,.vs-directory-selected) {
  font-size:var(--ckcp-micro-text);
}
body.vs-body :is(.vs-vehicle-figure figcaption,.vs-category-copy>span,.vs-category-note,
  .vs-footer>div,.vs-directory-series-action,.vs-directory-credits,
  .vs-directory-search-field button) {
  font-size:var(--ckcp-small-text);
  line-height:1.6;
}
body.vs-body .vs-logo>.ckcp-brand-tagline,
body.ckcp-product-detail .pd-brand>.ckcp-brand-tagline {
  font-size:var(--ckcp-micro-text);
  line-height:1.4;
  letter-spacing:0;
  color:#d6dade;
}

/* The chooser promise already uses the larger introductory text scale. */
@media(min-width:701px) {
  body.vs-body .vs-entry>.vs-purpose { font-size:17px; }
}

/* Product media, compatibility notes, tools and installation support. */
body.ckcp-product-detail :is(.pd-eyebrow,.pd-context span:last-child,
  .pd-mixed-thumbnails small,.pd-video-shortcut small,.pd-footer small,
  .pd-video-empty>.pd-eyebrow) {
  font-size:var(--ckcp-micro-text);
  line-height:1.6;
}
body.ckcp-product-detail :is(.pd-zoom,.pd-photo-caption,.pd-media-description,
  .pd-thumbnails a,.pd-mixed-thumbnails a,.pd-fitment-status small,.pd-price>span:not(.ckcp-demo-price),
  .pd-assurance,.pd-share,.pd-share-status,.pd-index,.pd-match-label,.pd-note,
  .pd-package-layout figcaption,.pd-guide-reference,.pd-guide-help,
  .pd-installation .pd-guide-help,.pd-related-reason,.pd-related-track article span,
  .pd-contact-dialog small,.pd-contact-dialog .pd-chat-status,
  .pd-video-cover-content>span:last-child,.pd-video-empty>p,.pd-video-loading,
  .pd-video-footnote,.pd-media-panel .pd-video-footnote,.pd-required small,
  .pd-tool-image figcaption,.pd-tools-reference-note,.pd-tool-status) {
  font-size:var(--ckcp-small-text);
  line-height:1.6;
}
body.ckcp-product-detail .pd-intro .pd-breadcrumb {
  font-size:var(--ckcp-micro-text);
  letter-spacing:.5px;
}

/* Company evidence captions and contact details. */
body.company-page .company-eyebrow {
  font-size:var(--ckcp-micro-text)!important;
  letter-spacing:.1em;
}
body.company-page :is(.company-step-number,.company-gallery small,
  .company-gallery .company-story-context,.company-document-list dl,
  .company-business dl,.company-principle>a,.company-steps a,
  .company-document-links a,.company-gallery article>a,
  .company-support-actions>a:not(.company-button)) {
  font-size:var(--ckcp-small-text);
}

/* Tutorial interface text, without resizing the actual uploaded instructions. */
body.ckcp-pilot.ckcp-reader :is(.pilot-strip,.breadcrumb,.page-intro .eyebrow,
  .guide-meta,.question-top,.question-time,.status-tag,.solution-label,
  .site-footer>span:last-child,.guide-extension-meta,.extension-badge,
  .extension-language-badge,.guide-language-label,.guide-family-heading .eyebrow) {
  font-size:var(--ckcp-micro-text);
  line-height:1.6;
}
body.ckcp-pilot.ckcp-reader :is(.site-header .wordmark span) {
  font-size:var(--ckcp-micro-text);
  letter-spacing:.6px;
  line-height:1.4;
}
body.ckcp-pilot.ckcp-reader :is(.guide-contents summary,.guide-contents nav a,
  .guide-discussion-shortcut,.guide-reader-help,.ckcp-source-note,
  .guide-product-fold summary>span,.guide-product-mini small,
  .chapter-stack>summary,.chapter-context,.discussion-meta,.discussion-total,
  .discussion-thread summary>p,.discussion-hint,.discussion-replies>a,
  .chapter-discussion label,.chapter-discussion button,
  .chapter-discussion .discussion-composer .eyebrow,
  .ckcp-source-reference,.ckcp-source-login small,.toolbar-description,
  .inline-note,.local-video-option,.field-hint,.form-actions>span,
  .login-gate small,.guide-discussion label,.question-actions button,
  .poll-panel #vote-note,.vote-button span,.site-footer,.site-footer p,
  .ckcp-media-help,.ckcp-media-status,.ckcp-media-preview figcaption,
  .ckcp-question-attachments figcaption,.ckcp-media-preview small,.ckcp-media-file,
  .ckcp-document-image-hint,.ckcp-document-caption,.ckcp-document-download span,
  .ckcp-document-question-context,.ckcp-document-question small,.ckcp-document-qa-state,
  .ckcp-document-question-body,.ckcp-document-reply p,.chapter-discussion .discussion-reply>p,
  .chapter-discussion .discussion-thread summary h3,
  .ckcp-document-qa-meta,.ckcp-document-qa-note,.ckcp-document-qa-status,
  .ckcp-document-question-form label,.ckcp-document-reply-form label,
  .ckcp-document-qa-panel>summary,.ckcp-document-qa-actions a,
  .ckcp-discussion-updates p) {
  font-size:var(--ckcp-small-text);
  line-height:1.6;
}
body.ckcp-pilot.ckcp-reader .guide-contents nav a>span:first-child {
  font-size:var(--ckcp-micro-text);
  opacity:1;
}
body.ckcp-pilot.ckcp-reader :is(.chapter-context,.discussion-meta,.discussion-hint,
  .field-hint,.ckcp-document-question-context,.ckcp-document-question small,
  .ckcp-document-qa-meta,.ckcp-document-qa-note,.ckcp-media-help,
  .guide-language-help,.guide-extension-meta,.guide-language-applicability) {
  color:#505b53;
}
body.ckcp-pilot.ckcp-reader :is(.guide-family-bar>button,.guide-family-base,
  .guide-family-base small,.guide-family-bar #guide-extensions-count,
  .guide-language-controls label,.guide-language-help,.guide-language-links,
  .guide-language-links a,.guide-language-family-title,.guide-language-applicability,
  .guide-language-reader>.extension-reader-warning,.guide-more-help>summary,
  .guide-help-link small,.guide-archived-filter,.guide-section-extension-link,
  .guide-section-extension-link small,.guide-section-extensions>span,.guide-extension-row p,.extension-applicability,
  .guide-family-heading p:not(.eyebrow),.guide-base-history,.guide-base-history p,
  .guide-base-history li,.extension-reader-meta,.extension-reader-applicability,
  .extension-reader-applicability strong,.extension-reader-links a,
  .extension-reader-warning,.extension-version-history,.extension-history-entry>summary,
  .extension-history-entry p,.guide-extension-dialog label,.extension-editor-note,
  .extension-document-file small,.extension-document-file a,.extension-uploaded-file small,
  .extension-edition-relation,.extension-source-relation,.extension-document-management>summary) {
  font-size:var(--ckcp-small-text);
  line-height:1.6;
}
body.ckcp-pilot.ckcp-reader .guide-extension-dialog button { font-size:var(--ckcp-small-text); }
body.ckcp-pilot.ckcp-reader .guide-family :is(.guide-language-options button,
  .guide-language-links button,.guide-extension-tabs button,.guide-help-link,
  .guide-contribute-line .guide-family-add) {
  font-size:var(--ckcp-small-text);
}
body.ckcp-pilot.ckcp-reader :is(.chapter-discussion,.ckcp-document-question-form,.ckcp-document-reply-form) :is(input,select,textarea) { font-size:16px; }
body.ckcp-pilot.ckcp-reader .guide-language-document.ckcp-uploaded-document :is(
  .ckcp-document-qa-aside button,.ckcp-document-general button,.ckcp-document-question-form button) {
  font-size:var(--ckcp-small-text);
}

/* Account, enquiries and owner-installation forms. */
body.ckcp-owner-page .co-header span,
body.oi-page .oi-brand span {
  font-size:var(--ckcp-micro-text);
  letter-spacing:.4px;
  line-height:1.45;
}
body.ckcp-owner-page .co-eyebrow,
:is(body.oi-page,.oi-embed) .oi-eyebrow { font-size:var(--ckcp-micro-text,14px); }
body.ckcp-owner-page :is(.co-field,.co-consent,.co-form-status,.co-list small,
  .co-list-item time,.co-muted,.co-account-nav a,.co-header>a:last-child:not(:first-child)) {
  font-size:var(--ckcp-small-text);
}
:is(body.oi-page,.oi-embed) :is(.oi-card p,.oi-filters label,.oi-field,.oi-field small,
  .oi-field span,.oi-products legend,.oi-products>p,.oi-products label,.oi-photo-section p,
  .oi-consent,.oi-status,.oi-status a,.oi-my-stories span,.oi-footer,.oi-product-link a) {
  font-size:var(--ckcp-small-text,15px);
}
body.oi-page .oi-context-note { font-size:var(--ckcp-small-text)!important; }

/* Earlier collection/product routes retain the same readable supporting scale. */
body:is(.ckcp-showroom,.ckcp-source-product) :is(.catalog-eyebrow,.catalog-breadcrumb,
  .hero-content .eyebrow,.hero-photo-note,.catalog-local-note,.catalog-photo-caption span,
  .recommendation-reason,.platform-reference,.card-guide,.catalog-related-reason,
  .catalog-related-guide,.listing-status,.fitment-note,.owner-assurance,
  .product-detail-scene figcaption,.product-detail-views figcaption) {
  font-size:var(--ckcp-small-text);
}

@media(max-width:760px) {
  /* Only the remaining compact labels change on phones; existing body sizes stay intact. */
  body.vs-body :is(.vs-directory-search label,.vs-directory-refine label,
    .vs-directory-series-heading p,.vs-directory-model-heading>button,.vs-directory-count,
    .vs-directory-car-label>span,.vs-directory-car-meta,.vs-directory-note,
    .vs-directory-other-entry,.vs-directory-other-entry button,.vs-directory-other-intro,
    .vs-directory-other-intro a,.vs-model-examples,.vs-vehicle-facts,.vs-product-end,
    .vs-result-count,.vs-views button,.vs-installation-links,.vs-guide-list a) {
    font-size:14px;
  }
  body.vs-body :is(.vs-category-copy strong,.vs-footer>p) { font-size:14px; }
  body.ckcp-product-detail :is(.pd-fitment-status,.pd-facts>div,.pd-section-nav a,
    .pd-tools-shortcut,.pd-tools-footer .pd-text-link,.pd-footer nav,
    .pd-lightbox>div,.pd-lightbox>div button) { font-size:14px; }
  body.ckcp-product-detail .pd-mixed-thumbnails a { min-width:128px; }
  body.company-page .company-mobile-nav a { font-size:14px; }
  body.ckcp-pilot.ckcp-reader :is(.site-header nav a,.test-login,.video-toolbar .button,
    .discussion-tools button,.contact-email,.contact-panel .contact-consent) { font-size:14px; }
}

/* Keep the compact showroom journey links readable on phones. */
@media(max-width:700px) {
  body.vs-body :is(.vs-stage-bottom a,.vs-stage-bottom>span) { font-size:14px; }
}
