/* RGB's shared display face. Sizes and line breaks belong to each layout. */
:root {
    --rgb-title-font: Arial,Helvetica,sans-serif;
    --rgb-title-weight: 900;
    --rgb-title-tracking: -.075em;
}

/* These four properties deliberately win over older template font shorthands. */
:is(h1,h2,h3,h4,h5,h6,[role="heading"],
    .brief-coverline__title,.brief-row__title,.article-series__item-title,
    .disc-related__title,.disc-pager__title,.enq-car__title,
    .enq-success__title,.wanted__brief-title) {
    font-family: var(--rgb-title-font) !important;
    font-weight: var(--rgb-title-weight) !important;
    font-style: normal !important;
    letter-spacing: var(--rgb-title-tracking) !important;
}

/* Preserve smaller variants and coloured words, with the same display voice. */
:is(h1,h2,h3,h4,h5,h6,[role="heading"],
    .brief-coverline__title,.brief-row__title,.article-series__item-title,
    .disc-related__title,.disc-pager__title,.enq-car__title,
    .enq-success__title,.wanted__brief-title) :is(span,em,strong,a) {
    font-family: inherit !important;
    font-weight: inherit !important;
    font-style: inherit !important;
    letter-spacing: var(--rgb-title-tracking) !important;
}

/* Small footer labels retain enough spacing to read clearly. */
.site-footer__cols h3 { letter-spacing: .04em !important; }

/* Use the full title column now that the display face is wider. */
.vehicle-detail .vdp-title { max-width: none; text-wrap: balance; }

/* Editorial headlines keep their presence without overwhelming long articles. */
.journal-article__title { font-size: clamp(40px,6vw,80px); }

@media (max-width: 767px) {
    .vehicle-detail .vdp-title { font-size: clamp(32px,10.5vw,76px); }
    .disc-hero--cinema .disc-hero__title { font-size: clamp(30px,9.9vw,76px); }
    .broker-hero__title { font-size: clamp(40px,14vw,72px); }
    .broker-download__card h2 { font-size: clamp(32px,10vw,44px); }
}
