/* Licensed, self-hosted Latin fonts; full fallbacks keep all text readable. */
@font-face {
 font-family: "Bodoni Moda";
 src: url("../fonts/bodoni-moda-latin-v09.woff2") format("woff2");
 font-style: normal;
 font-weight: 400 900;
 font-display: swap;
}
@font-face {
 font-family: "Manrope";
 src: url("../fonts/manrope-latin-v09.woff2") format("woff2");
 font-style: normal;
 font-weight: 200 800;
 font-display: swap;
}
@font-face {
 font-family: "Juhaus Display Fallback";
 src: local("TimesNewRomanPSMT"), local("Times New Roman");
 font-style: normal;
 font-weight: 400;
 size-adjust: 111.888%;
 ascent-override: 100.547%;
 descent-override: 35.75%;
 line-gap-override: 0.0%;
}
@font-face {
 font-family: "Juhaus Sans Fallback";
 src: local("ArialMT"), local("Arial");
 font-style: normal;
 font-weight: 400;
 size-adjust: 103.106%;
 ascent-override: 103.389%;
 descent-override: 29.096%;
 line-gap-override: 0.0%;
}
:root {
 --sans: "Manrope", "Juhaus Sans Fallback", Arial, sans-serif;
 --display: "Bodoni Moda", "Juhaus Display Fallback", "Times New Roman", Times, serif;
}
body { font-weight: 400; }
/* Expressive type belongs to the editorial voice, rather than every label. */
.home-hero-v08 h1, .page-intro h1, .article-heading h1,
.process-v08-heading h2, .confidence-top h2, .record-feature-copy h2,
.pathway-heading h2, .home-faq h2, .journal-home .section-heading h2,
.home-collections-secondary .section-heading h2, .closing h2,
.service-overview h2, .service-paths .section-heading h2,
.service-process > div > h2, .service-trust-callout h2,
.evidence-panel h2, .evidence-people-grid h2, .evidence-section-heading h2,
.evidence-reports h2, .process-detail-heading h2,
.project-stage-heading h2, .project-pdf-contents h2 {
 font-family: var(--display);
 font-weight: 400;
 font-optical-sizing: auto;
 letter-spacing: -.025em;
 line-height: 1.12;
 text-wrap: balance;
}
.home-hero-v08 h1 {
 font-size: clamp(68px,7.1vw,104px);
 line-height: 1.06;
 letter-spacing: -.028em;
 text-wrap: initial;
}
.home-hero-v08 .hero-copy { line-height: 1.8; max-width: 615px; }
.home-hero-v08 .hero-content .eyebrow { font-size: 10px; font-weight: 500; letter-spacing: .16em; }
.site-nav { font-weight: 500; font-size: 13px; letter-spacing: .005em; }
.button, .text-link { font-weight: 500; letter-spacing: 0; }
.process-step summary h3, .confidence-row h3, .home-pathway h3 { font-family: var(--sans); font-weight: 400; letter-spacing: -.025em; }
.process-step-lead { font-weight: 500; }
.process-step-body dt { font-size: 12px; }
.process-step-body dl > div { line-height: 1.75; }
.confidence-link { font-weight: 500; }
.eyebrow { font-weight: 500; }
.record-paper h3 { font-family: var(--sans); font-weight: 400; letter-spacing: -.035em; }
.record-paper-head { letter-spacing: .03em; }
.selection-detail h1, .product-info h2, .product-info h3, #preview-title,
.form-panel h2, .contact-address h2, .footer-main h2,
.process-detail-list h3, .service-process li h3, .project-phase h3 {
 font-family: var(--sans);
}
.article-body { line-height: 1.9; }
.article-heading h1 { line-height: 1.16; }
@media (min-width:601px) {
 .home-hero-v08 .hero-shade {
  background: linear-gradient(90deg,#15191ce0 0%,#15191c88 50%,#15191c20 100%), linear-gradient(0deg,#15191ca6,transparent 35%), linear-gradient(180deg,#15191c66,transparent 23%);
 }
}
@media (max-width:1200px) {
 .home-hero-v08 h1 { font-size: clamp(58px,7vw,84px); }
 .site-nav { font-size: 16px; font-weight: 400; }
}
@media (max-width:600px) {
 .home-hero-v08 h1 { font-size: clamp(30px,8.8vw,50px); line-height: 1.15; letter-spacing: -.035em; font-weight: 500; }
 .home-hero-v08 .hero-copy { font-size: 15px; line-height: 1.8; }
 .home-hero-v08 .hero-content .eyebrow { font-size: 8px; letter-spacing: .12em; }
 .home-hero-v08 .hero-enquiries .text-link { font-size: 12px; }
 .process-v08-heading h2, .confidence-top h2, .record-feature-copy h2,
 .pathway-heading h2, .home-faq h2, .journal-home .section-heading h2,
 .home-collections-secondary .section-heading h2, .closing h2,
 .page-intro h1, .article-heading h1 { font-weight: 500; line-height: 1.15; }
 .process-step summary h3 { font-size: 20px; }
 .confidence-row h3 { font-size: 23px; }
 .process-step-body dt { font-size: 12px; }
}
