/* Shared editorial rhythm and brand colour for the five service pages. */
body.route-services,
body.route-workshop,
body.route-vehicle_sale,
body.route-vehicle_mediation,
body.route-vehicle_search {
    --service-accent: #d50930;
    --service-hero-size: clamp(48px, 5vw, 72px);
    --service-section-size: clamp(38px, 3.45vw, 56px);
    --purchase-red: var(--service-accent);
    --med-red: var(--service-accent);
    --vs-red: var(--service-accent);
}

html[data-theme="dark"] body.route-services,
html[data-theme="dark"] body.route-workshop,
html[data-theme="dark"] body.route-vehicle_sale,
html[data-theme="dark"] body.route-vehicle_mediation,
html[data-theme="dark"] body.route-vehicle_search { --service-accent: #f01b43; }

body.route-services main h1,
body.route-workshop main h1,
body.route-vehicle_sale main h1,
body.route-vehicle_mediation main h1,
body.route-vehicle_search main h1,
body.route-services main h2,
body.route-workshop main h2,
body.route-vehicle_sale main h2,
body.route-vehicle_mediation main h2,
body.route-vehicle_search main h2 {
    font-family: Georgia, 'Times New Roman', serif;
    font-weight: 700;
    letter-spacing: -.045em;
}

body.route-services main h1,
body.route-workshop main h1,
body.route-vehicle_sale main h1,
body.route-vehicle_mediation main h1,
body.route-vehicle_search main h1 { font-size: var(--service-hero-size) !important; line-height: 1.02; }

body.route-services main section > div h2,
body.route-workshop main section > div h2,
body.route-vehicle_sale main section > div h2,
body.route-vehicle_mediation main section > div h2,
body.route-vehicle_search main section > div h2 { font-size: var(--service-section-size) !important; line-height: 1.05; }

/* Form headings and editorial captions are deliberately smaller than section titles. */
body.route-vehicle_mediation .med-lead h2,
body.route-vehicle_search .vsearch-form h2 { font-size: clamp(26px, 2.5vw, 32px) !important; line-height: 1.08; }

body.route-services main h1 em,
body.route-services main h2 em,
body.route-workshop main h1 em,
body.route-workshop main h2 em,
body.route-vehicle_sale main h1 em,
body.route-vehicle_sale main h2 em,
body.route-vehicle_mediation main h1 em,
body.route-vehicle_mediation main h2 em,
body.route-vehicle_search main h1 em,
body.route-vehicle_search main h2 em { color: var(--service-accent) !important; }

body.route-services .svc-button,
body.route-services .svc-card__icon,
body.route-services .svc-card a,
body.route-workshop .workshop-button,
body.route-workshop .workshop-benefit-icon,
body.route-workshop .workshop-faq__toggle,
body.route-workshop .workshop-diagnostic__number,
body.route-workshop .workshop-diagnostic__points .automotive-icon { color: var(--service-accent); }
body.route-services .svc-button,
body.route-workshop .workshop-button,
body.route-workshop .workshop-benefit-icon { background-color: var(--service-accent); }
body.route-services .svc-button,
body.route-workshop .workshop-button { color: #fff; }

body.route-services .svc-card:hover { border-color: var(--service-accent); }
body.route-workshop .workshop-service-card a,
body.route-workshop .workshop-service-progress span,
body.route-workshop .workshop-service-controls button:last-child { color: var(--service-accent); }
body.route-workshop .workshop-service-progress span { background-color: var(--service-accent); }
body.route-vehicle_search .vsearch-included__heart { color: var(--service-accent); }
html[data-theme="dark"] body.route-services .svc-card__icon,
html[data-theme="dark"] body.route-workshop .workshop-service-controls button:last-child { color: var(--service-accent); }

/* Comparable lead paragraphs share a size. Small icon and card descriptions keep their own scale. */
body.route-services .svc-hero p,
body.route-workshop .workshop-hero__copy > p,
body.route-vehicle_sale .purchase-hero__copy > p,
body.route-vehicle_mediation .med-hero__copy > p,
body.route-vehicle_search .vsearch-hero__copy > p { font-size: 18px; line-height: 1.6; }

body.route-services .svc-overview__head > p,
body.route-services .svc-end p,
body.route-workshop .workshop-section-head > p,
body.route-workshop .workshop-diagnostic__inner > div > p,
body.route-workshop .workshop-end p,
body.route-vehicle_sale .purchase-process__copy > p,
body.route-vehicle_sale .purchase-value__copy > p,
body.route-vehicle_sale .purchase-faq__intro > p,
body.route-vehicle_sale .purchase-end p,
body.route-vehicle_mediation .med-section-head > p,
body.route-vehicle_mediation .med-included__intro,
body.route-vehicle_mediation .med-feature__copy > p,
body.route-vehicle_mediation .med-cta p,
body.route-vehicle_search .vsearch-section-head > p,
body.route-vehicle_search .vsearch-cta p { font-size: 17px; line-height: 1.6; }

/* Large dark surfaces meet the black page canvas; only inset strips and cards stay charcoal. */
body.route-workshop .workshop-diagnostic { background: #f5f6f6; color: #121416; }
body.route-workshop .workshop-diagnostic h2,
body.route-workshop .workshop-diagnostic__points strong { color: #121416; }
body.route-workshop .workshop-diagnostic__inner > div > p,
body.route-workshop .workshop-diagnostic__points p { color: #596169; }
body.route-workshop .workshop-diagnostic__points li,
body.route-workshop .workshop-diagnostic__points li:first-child,
body.route-workshop .workshop-diagnostic__points li:last-child { border-color: #d7dcde; }

html[data-theme="dark"] body.route-workshop .workshop-diagnostic { background: #000; color: #fff; }
html[data-theme="dark"] body.route-workshop .workshop-diagnostic h2,
html[data-theme="dark"] body.route-workshop .workshop-diagnostic__points strong { color: #fff; }
html[data-theme="dark"] body.route-workshop .workshop-diagnostic__inner > div > p { color: #c5c9cc; }
html[data-theme="dark"] body.route-workshop .workshop-diagnostic__points p { color: #b8bcbf; }
html[data-theme="dark"] body.route-workshop .workshop-diagnostic__points li,
html[data-theme="dark"] body.route-workshop .workshop-diagnostic__points li:first-child,
html[data-theme="dark"] body.route-workshop .workshop-diagnostic__points li:last-child { border-color: #414346; }

html[data-theme="dark"] body.route-vehicle_sale,
html[data-theme="dark"] body.route-vehicle_sale .purchase-hero,
html[data-theme="dark"] body.route-vehicle_sale .purchase-process,
html[data-theme="dark"] body.route-vehicle_sale .purchase-value,
html[data-theme="dark"] body.route-vehicle_sale .purchase-faq,
html[data-theme="dark"] body.route-vehicle_sale .purchase-end,
html[data-theme="dark"] body.route-workshop .workshop-end,
html[data-theme="dark"] body.route-workshop .workshop-end__stage { background-color: #000; }

html[data-theme="dark"] body.route-vehicle_sale .purchase-hero__photo::before { background: linear-gradient(90deg,#000 0%,rgba(0,0,0,.9) 16%,transparent 48%); }
html[data-theme="dark"] body.route-vehicle_sale .purchase-value__photo::before { background: linear-gradient(90deg,#000 0%,rgba(0,0,0,.88) 20%,transparent 70%); }
html[data-theme="dark"] body.route-vehicle_sale .purchase-end::before { background: linear-gradient(180deg,#000 0%,transparent 20%,transparent 80%,#000 100%),linear-gradient(90deg,#000 0%,#000 25%,rgba(0,0,0,.75) 55%,rgba(0,0,0,.2) 100%); }
html[data-theme="dark"] body.route-workshop .workshop-end__stage::before { background: linear-gradient(180deg,#000 0%,rgba(0,0,0,.94) 7%,transparent 35%),linear-gradient(90deg,#000 0%,rgba(0,0,0,.99) 29%,rgba(0,0,0,.94) 43%,rgba(0,0,0,.66) 55%,rgba(0,0,0,.08) 78%,transparent 100%); }
html[data-theme="dark"] body.route-workshop .workshop-end h2 { color: #fff; }
html[data-theme="dark"] body.route-workshop .workshop-end p { color: #c5c9cc; }

html[data-theme="dark"] body.route-vehicle_mediation .med-hero,
html[data-theme="dark"] body.route-vehicle_mediation .med-cta,
html[data-theme="dark"] body.route-vehicle_search .vsearch-hero { background-color: #000; }
html[data-theme="dark"] body.route-vehicle_mediation .med-hero::before { background: linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.9) 31%,rgba(0,0,0,.46) 58%,rgba(0,0,0,.25) 100%); }
html[data-theme="dark"] body.route-vehicle_mediation .med-feature::before { background: linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.9) 42%,rgba(0,0,0,.58) 70%,rgba(0,0,0,.68)); }
html[data-theme="dark"] body.route-vehicle_mediation .med-cta::before { background: linear-gradient(90deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.92) 37%,rgba(0,0,0,.64) 62%,rgba(0,0,0,.3) 100%); }
html[data-theme="dark"] body.route-vehicle_search .vsearch-hero::before { background: linear-gradient(90deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.86) 34%,rgba(0,0,0,.42) 59%,rgba(0,0,0,.2) 100%); }

@media (max-width: 800px) {
    body.route-services,
    body.route-workshop,
    body.route-vehicle_sale,
    body.route-vehicle_mediation,
    body.route-vehicle_search { --service-hero-size: clamp(36px, 9vw, 48px); --service-section-size: clamp(32px, 8vw, 42px); }
    body.route-services .svc-hero p,
    body.route-workshop .workshop-hero__copy > p,
    body.route-vehicle_sale .purchase-hero__copy > p,
    body.route-vehicle_mediation .med-hero__copy > p,
    body.route-vehicle_search .vsearch-hero__copy > p,
    body.route-services .svc-overview__head > p,
    body.route-services .svc-end p,
    body.route-workshop .workshop-section-head > p,
    body.route-workshop .workshop-diagnostic__inner > div > p,
    body.route-workshop .workshop-end p,
    body.route-vehicle_sale .purchase-process__copy > p,
    body.route-vehicle_sale .purchase-value__copy > p,
    body.route-vehicle_sale .purchase-faq__intro > p,
    body.route-vehicle_sale .purchase-end p,
    body.route-vehicle_mediation .med-section-head > p,
    body.route-vehicle_mediation .med-included__intro,
    body.route-vehicle_mediation .med-feature__copy > p,
    body.route-vehicle_mediation .med-cta p,
    body.route-vehicle_search .vsearch-section-head > p,
    body.route-vehicle_search .vsearch-cta p { font-size: 16px; }
    html[data-theme="dark"] body.route-vehicle_sale .purchase-hero__photo::before { background: linear-gradient(0deg,#000 0%,transparent 65%); }
    html[data-theme="dark"] body.route-vehicle_sale .purchase-value__photo::before { background: linear-gradient(180deg,#000,transparent 50%); }
    html[data-theme="dark"] body.route-vehicle_sale .purchase-end::before { background: linear-gradient(180deg,#000,transparent 19%,transparent 81%,#000),linear-gradient(90deg,rgba(0,0,0,.97),rgba(0,0,0,.78) 72%,rgba(0,0,0,.47)); }
    html[data-theme="dark"] body.route-workshop .workshop-end__stage::before { background: linear-gradient(180deg,#000 0%,rgba(0,0,0,.99) 28%,rgba(0,0,0,.92) 48%,rgba(0,0,0,.1) 86%,transparent 100%); }
    html[data-theme="dark"] body.route-workshop .workshop-hero::before { background: linear-gradient(90deg,rgba(0,0,0,.97),rgba(0,0,0,.9) 54%,rgba(0,0,0,.58)); }
    html[data-theme="dark"] body.route-vehicle_mediation .med-hero::before { background: linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.79) 64%,rgba(0,0,0,.55)); }
    html[data-theme="dark"] body.route-vehicle_mediation .med-cta::before { background: linear-gradient(90deg,rgba(0,0,0,.97),rgba(0,0,0,.91) 58%,rgba(0,0,0,.5)); }
    html[data-theme="dark"] body.route-vehicle_search .vsearch-hero::before { background: linear-gradient(180deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.88) 43%,rgba(0,0,0,.7) 70%,rgba(0,0,0,.48) 100%); }
}

/* Shared interaction cues: the same action gives the same response on each service. */
@keyframes jtf-service-enter {
    from { opacity: .35; transform: translateY(12px); }
    to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: no-preference) {
    body.route-vehicle_mediation .med-hero__copy { animation: jtf-service-enter .62s cubic-bezier(.2,.7,.2,1) both; }
    body.route-vehicle_mediation .med-lead { animation: jtf-service-enter .68s .08s cubic-bezier(.2,.7,.2,1) both; }

    body.route-vehicle_mediation .med-button > span,
    body.route-vehicle_mediation .med-secondary > span,
    body.route-vehicle_search .vsearch-button > span,
    body.route-vehicle_search .vsearch-secondary > span {
        display: inline-block;
        transition: transform .2s ease;
    }

    body.route-vehicle_mediation .med-benefits svg,
    body.route-vehicle_sale .purchase-signal-icon,
    body.route-vehicle_search .vsearch-benefits img,
    body.route-workshop .workshop-end__benefits .workshop-benefit-icon {
        transition: transform .24s cubic-bezier(.2,.7,.2,1);
    }
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
    body.route-vehicle_mediation .med-button:hover > span,
    body.route-vehicle_mediation .med-secondary:hover > span,
    body.route-vehicle_search .vsearch-button:hover > span,
    body.route-vehicle_search .vsearch-secondary:hover > span { transform: translateX(4px); }

    body.route-vehicle_mediation .med-benefits article:hover svg,
    body.route-vehicle_sale .purchase-signals article:hover .purchase-signal-icon,
    body.route-vehicle_search .vsearch-benefits article:hover img,
    body.route-workshop .workshop-end__benefits li:hover .workshop-benefit-icon { transform: translateY(-2px) scale(1.06); }
}

body.route-vehicle_mediation .med-button:active,
body.route-vehicle_mediation .med-secondary:active,
body.route-vehicle_sale .purchase-button:active,
body.route-vehicle_search .vsearch-button:active,
body.route-vehicle_search .vsearch-secondary:active,
body.route-workshop .workshop-button:active { transform: scale(.985); }

body.route-vehicle_mediation .med-faq summary:focus-visible,
body.route-vehicle_sale .purchase-faq summary:focus-visible,
body.route-vehicle_search .vsearch-faq summary:focus-visible,
body.route-workshop .workshop-faq summary:focus-visible {
    outline: 2px solid var(--service-accent);
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    body.route-vehicle_mediation .med-hero__copy,
    body.route-vehicle_mediation .med-lead { animation: none; }
    body.route-vehicle_mediation .med-button > span,
    body.route-vehicle_mediation .med-secondary > span,
    body.route-vehicle_search .vsearch-button > span,
    body.route-vehicle_search .vsearch-secondary > span,
    body.route-vehicle_mediation .med-benefits svg,
    body.route-vehicle_sale .purchase-signal-icon,
    body.route-vehicle_search .vsearch-benefits img,
    body.route-workshop .workshop-end__benefits .workshop-benefit-icon { transition: none; }
    body.route-vehicle_mediation .med-button:active,
    body.route-vehicle_mediation .med-secondary:active,
    body.route-vehicle_sale .purchase-button:active,
    body.route-vehicle_search .vsearch-button:active,
    body.route-vehicle_search .vsearch-secondary:active,
    body.route-workshop .workshop-button:active { transform: none; filter: brightness(.9); }
}
