/* V4 sitewide layer (LOCAL PROTOTYPE, 10 Oct 2026).
   Brings inner pages into line with the V4 homepage: light page heroes,
   V4 ink/blue palette and heading weight. Visual only: no content, URL or head changes. */

:root {
    --v4-ink: #071323;
    --v4-blue: #0065ff;
    --v4-blue-deep: #004cd1;
    --v4-muted: #536278;
    --v4-line: #e4eaf2;
    --v4-wash: #f6f9fd;
}

body { color: var(--v4-ink); }

/* ---- Page heroes: dark banners become the V4 light hero ---- */
.hero-dark,
section.bg-gray-900:first-of-type,
.v4-page-hero {
    background: linear-gradient(180deg, #fff 0%, var(--v4-wash) 100%) !important;
    border-bottom: 1px solid var(--v4-line);
}
.hero-dark::before,
.hero-dark::after { display: none !important; }
.hero-dark > .absolute,
.hero-dark > div[class*="absolute"],
section.bg-gray-900:first-of-type > .absolute { display: none !important; }

.hero-dark h1,
section.bg-gray-900:first-of-type h1 {
    color: var(--v4-ink) !important;
    font-weight: 720 !important;
    letter-spacing: -0.045em !important;
    line-height: 1.05 !important;
    font-size: clamp(40px, 4.6vw, 66px) !important;
    opacity: 1 !important;
    transform: none !important;
}
.hero-dark p,
.hero-dark li,
section.bg-gray-900:first-of-type p {
    color: var(--v4-muted) !important;
    opacity: 1 !important;
    transform: none !important;
}
.hero-dark a,
section.bg-gray-900:first-of-type a { color: var(--v4-blue) !important; }
.hero-dark a[class*="bg-"],
.hero-dark .btn,
.hero-dark a[class*="rounded"] { color: #fff !important; }
.hero-dark [class*="text-white"],
.hero-dark [class*="text-blue-1"],
.hero-dark [class*="text-blue-2"],
.hero-dark [class*="text-gray-3"],
.hero-dark [class*="text-gray-4"],
section.bg-gray-900:first-of-type [class*="text-white"],
section.bg-gray-900:first-of-type [class*="text-gray-"] { color: var(--v4-ink) !important; }
.hero-dark [class*="border-white"],
.hero-dark [class*="border-gray-7"] { border-color: var(--v4-line) !important; }
.hero-dark [class*="bg-white/"],
.hero-dark [class*="bg-gray-8"] { background: #fff !important; border: 1px solid var(--v4-line); }

/* ---- Headings: V4 weight and tracking (colour left to each section) ---- */
main h1, #main h1 { letter-spacing: -0.04em; }
main h2, #main h2 { letter-spacing: -0.03em; }

/* ---- Primary buttons and links: V4 blue ---- */
.bg-blue-600, a.bg-blue-600, button.bg-blue-600 { background-color: var(--v4-blue) !important; }
.hover\:bg-blue-700:hover, .bg-blue-700 { background-color: var(--v4-blue-deep) !important; }
.text-blue-600 { color: var(--v4-blue) !important; }

/* ---- Fade-in animations: show content immediately ---- */
.animate-fade-in, .animate-fade-in-delay, .animate-fade-in-delay-2 { opacity: 1 !important; animation: none !important; transform: none !important; }

/* ---- Research briefings: dark masthead becomes the V4 light article header ---- */
html body { font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
body > div[style*="#0a0a0a"] {
    background: #fff !important;
    border-bottom: 1px solid var(--v4-line) !important;
    margin-top: 64px;
}
body > div[style*="#0a0a0a"] a { color: var(--v4-blue) !important; font-family: Inter, sans-serif !important; }
.masthead {
    background: linear-gradient(180deg, #fff 0%, var(--v4-wash) 100%) !important;
    color: var(--v4-ink) !important;
    border-bottom: 1px solid var(--v4-line) !important;
    padding-top: 3.5rem !important;
}
.masthead h1 {
    color: var(--v4-ink) !important;
    font-family: Inter, sans-serif !important;
    font-weight: 720 !important;
    letter-spacing: -0.045em !important;
    font-size: clamp(36px, 4.4vw, 60px) !important;
}
.masthead .lede, .byline-bio { color: var(--v4-muted) !important; }
.mast-topbar, .mast-meta, .byline { border-color: var(--v4-line) !important; color: var(--v4-muted) !important; }
.mast-publication, .mast-meta-value, .byline-name { color: var(--v4-ink) !important; }
.mast-meta-label, .byline-role { color: var(--v4-muted) !important; }
.mast-topbar, .mast-meta-label, .mast-meta-value, .byline-role, .byline-avatar { font-family: Inter, sans-serif !important; }
.mast-publication { color: var(--v4-blue) !important; }
.byline-avatar { background: var(--v4-blue) !important; }

/* ---- Inline-styled dark heroes (e.g. /report/) ---- */
section#main[style*="#0f172a"] { background: linear-gradient(180deg, #fff 0%, var(--v4-wash) 100%) !important; border-bottom: 1px solid var(--v4-line); }
section#main[style*="#0f172a"] h1, section#main[style*="#0f172a"] h2 { color: var(--v4-ink) !important; }
section#main[style*="#0f172a"] p, section#main[style*="#0f172a"] li { color: var(--v4-muted) !important; }
section#main[style*="#0f172a"] [style*="color: #fff"], section#main[style*="#0f172a"] [style*="color:#fff"], section#main[style*="#0f172a"] [style*="color: white"] { color: var(--v4-ink) !important; }
section#main[style*="#0f172a"] a[style*="background"] { color: #fff !important; }

/* ---- Pages whose content started under the fixed menu ---- */
main#main > section.lp-hero:first-child { margin-top: 72px; }
main#main > section.py-20.bg-gradient-to-br:first-child { padding-top: 8rem !important; }

/* ---- Menu button: always V4 blue ---- */
.site-nav .btn-primary, .site-nav a.btn-primary { background: var(--v4-blue) !important; color: #fff !important; border-color: var(--v4-blue) !important; }

/* ---- AI Diagnostic pages: editorial serif/mono becomes the V4 Inter type ---- */
html:root { --serif: Inter, "Segoe UI", Arial, sans-serif; --sans: Inter, "Segoe UI", Arial, sans-serif; --mono: Inter, "Segoe UI", Arial, sans-serif; }
.lp-hero h1, .lp-hero h2, main#main section[class^="lp-"] h2, main#main section[class^="lp-"] h3 { font-weight: 700 !important; letter-spacing: -0.04em !important; }
.lp-hero h1 em, .lp-hero h1 i { font-style: normal !important; }
body:has(.lp-hero) { background: #fff !important; }
body:has(.lp-hero) .site-nav .btn-primary { padding: 10px 18px !important; border-radius: 8px !important; font-size: 14px !important; line-height: 1.4 !important; }

/* ---- Small-screen overflow fixes (pre-existing) ---- */
@media (max-width: 480px) {
    .stat-card { min-width: 0 !important; max-width: 100% !important; }
    .stat-number { font-size: 2.25rem !important; overflow-wrap: anywhere; }
    table.data-table { display: block; overflow-x: auto; max-width: 100%; }
}

/* V4 editorial uplift, 10 October 2026.
   Explicit body/content classes keep the homepage, studies, diagnostic,
   shared navigation, footer and all other pages outside this layer. */
body.v4-uplift { background: #fff; }
.v4-uplift .v4-content {
    --v4-measure: 1180px;
    color: var(--v4-ink);
    background: #fff !important;
    font-size: 16px;
    line-height: 1.7;
    min-width: 0;
    counter-reset: v4-study;
}
.v4-uplift .v4-content *, .v4-uplift .v4-checker * { box-sizing: border-box; }
.v4-uplift .v4-content :where(div,section,article,aside,li) { min-width: 0; }
.v4-uplift .v4-content :where(h1,h2,h3,h4,p,li,a,code) { overflow-wrap: break-word; }
.v4-uplift .v4-content :where(p,li) { color: var(--v4-muted); }
.v4-uplift .v4-content :where(h1,h2,h3,h4) {
    color: var(--v4-ink) !important;
    font-weight: 650 !important;
    letter-spacing: -.035em;
    text-align: left !important;
    text-wrap: pretty;
}
.v4-uplift .v4-content h1 {
    max-width: 1050px;
    margin: 0 0 28px !important;
    font-size: clamp(40px,5.4vw,78px) !important;
    font-weight: 720 !important;
    letter-spacing: -.052em !important;
    line-height: 1.045 !important;
}
.v4-uplift .v4-content h2 {
    font-size: clamp(28px,3.2vw,44px) !important;
    line-height: 1.14 !important;
    margin-bottom: 24px;
}
.v4-uplift .v4-content h3 { font-size: 23px; line-height: 1.25; }
.v4-uplift .v4-content [data-v4-section]::before {
    content: attr(data-v4-section) / "";
    display: block;
    margin-bottom: 16px;
    color: var(--v4-blue-deep);
    font: 600 11px/1.4 Inter,Arial,sans-serif;
    letter-spacing: .13em;
}
.v4-uplift .v4-content a:focus-visible,
.v4-uplift .v4-content button:focus-visible,
.v4-uplift .v4-content summary:focus-visible,
.v4-uplift .v4-table-scroll:focus-visible,
.v4-uplift .v4-checker :is(input,select,button):focus-visible {
    outline: 3px solid var(--v4-blue-deep) !important;
    outline-offset: 5px;
}
.v4-uplift .v4-content a { text-underline-offset: 4px; }
.v4-uplift .v4-content p a, .v4-uplift .v4-content li a {
    color: var(--v4-blue-deep) !important;
    text-decoration: underline;
}
.v4-uplift .v4-content .text-center,
.v4-uplift .v4-content [style*="text-align: center"],
.v4-uplift .v4-content [style*="text-align:center"] { text-align: left !important; }
.v4-uplift .v4-content > :is(div.max-w-3xl,div.max-w-4xl,div.max-w-5xl,div.max-w-6xl,div.max-w-7xl),
.v4-uplift .v4-inner {
    width: min(var(--v4-measure),calc(100% - 100px));
    max-width: none !important;
    padding-inline: 0 !important;
    margin-inline: auto !important;
}
.v4-uplift section.v4-content {
    padding-block: 80px !important;
    border-bottom: 1px solid var(--v4-line);
}
.v4-uplift .v4-content > div > :is(p.text-center,div.text-center) { margin-inline: 0; }
.v4-uplift .v4-hero {
    padding: 152px 0 76px !important;
    margin: 0 !important;
    border-bottom: 1px solid var(--v4-line);
    background: linear-gradient(180deg,#fff,var(--v4-wash)) !important;
}
.v4-uplift section.v4-hero { padding: 152px 0 76px !important; }
.v4-uplift .v4-hero .v4-hero-copy { text-align: left !important; }
.v4-uplift .v4-hero .v4-hero-copy > :is(p,div) { margin-left: 0 !important; margin-right: 0 !important; }
.v4-uplift .v4-hero .justify-center { justify-content: flex-start !important; }
.v4-uplift .v4-standfirst {
    color: var(--v4-muted) !important;
    font-size: clamp(18px,1.7vw,22px) !important;
    line-height: 1.65 !important;
    max-width: 800px !important;
    margin-bottom: 28px;
}
.v4-uplift .v4-kicker, .v4-uplift .v4-document > .eyebrow,
.v4-uplift .v4-study-meta {
    color: var(--v4-blue-deep) !important;
    text-transform: uppercase;
    font-size: 11px !important;
    font-weight: 650;
    line-height: 1.5;
    letter-spacing: .16em !important;
    margin-bottom: 20px;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}
.v4-uplift .v4-decorative-icon { display: none !important; }
.v4-uplift .v4-panel {
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid #cad5e4 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 28px 0 !important;
    transform: none !important;
}
.v4-uplift .v4-panel:hover { box-shadow: none !important; transform: none !important; }
.v4-uplift .v4-content .grid { column-gap: 48px; row-gap: 32px; }
.v4-uplift .v4-content .v4-panel :is(.text-white,.text-blue-100,.text-blue-200,.text-gray-300,.text-gray-400) { color: var(--v4-muted) !important; }
.v4-uplift .v4-content > div > :is(p,div) > .text-blue-100,
.v4-uplift .v4-content :is(p.text-white,p.text-blue-100,p.text-blue-200,p.text-gray-300,p.text-gray-400) { color: var(--v4-muted) !important; }
.v4-uplift .v4-content :is(a,button).bg-blue-600,
.v4-uplift .v4-content a.btn-primary,
.v4-uplift .v4-content a[class*="bg-blue-"],
.v4-uplift .v4-content button[class*="bg-blue-"] {
    color: #fff !important;
    background: var(--v4-blue-deep) !important;
    border-color: var(--v4-blue-deep) !important;
}
.v4-uplift .v4-content a.bg-white { color: var(--v4-blue-deep) !important; border: 1px solid var(--v4-line); }
.v4-uplift .v4-content :is(a,button).border-white { color: var(--v4-blue-deep) !important; border-color: var(--v4-blue-deep) !important; }
.v4-uplift .v4-document {
    width: min(1040px,calc(100% - 100px));
    max-width: none !important;
    padding: 152px 0 88px !important;
    margin: 0 auto !important;
}
.v4-uplift .v4-document > h2,
.v4-uplift .v4-document > section {
    margin-top: 64px;
    padding-top: 32px;
    border-top: 1px solid var(--v4-line);
}
.v4-uplift .v4-document p, .v4-uplift .v4-document ul,
.v4-uplift .v4-document ol { max-width: 800px; }
.v4-uplift .v4-document :is(.note,.cta) {
    border-radius: 0;
    background: var(--v4-wash);
    border: 0;
    border-left: 3px solid var(--v4-blue-deep);
}
.v4-uplift .v4-document .stage { margin-block: 30px; }
.v4-uplift .v4-document .num { background: transparent; color: var(--v4-blue-deep); border-radius: 0; }
/* Article template: existing category, standfirst and byline are reused. */
.v4-uplift.v4-article-page .v4-hero > div { width: min(1000px,calc(100% - 100px)); }
.v4-uplift.v4-article-page .v4-hero h1 { font-size: clamp(38px,4.8vw,68px) !important; }
.v4-uplift.v4-article-page .v4-kicker { gap: 20px; flex-wrap: wrap; }
.v4-uplift.v4-article-page .v4-kicker span { background: transparent; padding: 0; border-radius: 0; color: var(--v4-blue-deep); font-size: 11px; }
.v4-uplift.v4-article-page .v4-kicker span + span { color: var(--v4-muted); text-transform: none; letter-spacing: 0; }
.v4-uplift .v4-byline { flex-wrap: wrap; gap: 12px 28px; padding-top: 24px; border-top: 1px solid var(--v4-line); color: var(--v4-muted); }
.v4-uplift .v4-byline a { color: var(--v4-ink); text-decoration: underline; }
.v4-uplift .v4-article { padding: 64px 0 80px !important; }
.v4-uplift .v4-article > .prose { width: min(780px,calc(100% - 100px)) !important; max-width: none; font-size: 18px; line-height: 1.85; }
.v4-uplift .v4-article .prose h2 { margin-top: 60px; padding-top: 30px; border-top: 1px solid var(--v4-line); font-size: clamp(28px,2.6vw,36px) !important; }
.v4-uplift .v4-article .prose h3 { margin-top: 36px; }
.v4-uplift .v4-takeaway, .v4-uplift .v4-article .key-takeaway {
    margin-block: 36px !important;
    padding: 28px !important;
    border: 0 !important;
    border-left: 3px solid var(--v4-blue-deep) !important;
    border-radius: 0 !important;
    background: var(--v4-wash) !important;
    color: var(--v4-ink) !important;
}
.v4-uplift .v4-takeaway h2 { border: 0 !important; margin-top: 0 !important; padding-top: 0 !important; }
.v4-uplift .v4-content pre { max-width: 100%; overflow: auto; padding: 24px; border-radius: 0; background: #0b182a; color: #f4f7fc; font-size: 14px; line-height: 1.65; }
.v4-uplift .v4-content pre code { white-space: pre; overflow-wrap: normal; color: inherit; background: transparent; }
.v4-uplift .v4-content :not(pre) > code { background: var(--v4-wash); color: #163f77; padding: 2px 5px; font-size: .9em; overflow-wrap: anywhere; }
.v4-uplift .v4-table-scroll { max-width: 100%; width: 100%; overflow-x: auto; margin-block: 28px; border-block: 1px solid #cad5e4; }
.v4-uplift .v4-content table { width: 100%; margin: 0; border-collapse: collapse; font-size: 14px; line-height: 1.6; text-align: left; }
.v4-uplift .v4-content :is(th,td) { padding: 16px 18px; border: 0; border-bottom: 1px solid var(--v4-line); vertical-align: top; }
.v4-uplift .v4-content th { background: #edf3fb; color: #17283f; font-weight: 650; }
.v4-uplift .v4-content td { color: var(--v4-muted); }
.v4-uplift .v4-research-links { background: var(--v4-wash) !important; }
.v4-uplift .v4-research-links .v4-inner { width: min(1000px,calc(100% - 100px)); }
.v4-uplift .v4-research-links h2 { font-size: 30px !important; }
.v4-uplift .v4-research-links ol { list-style: decimal-leading-zero; padding-left: 32px; margin: 28px 0 0; }
.v4-uplift .v4-research-links li { padding: 18px 0 18px 14px; border-top: 1px solid #d5dfea; color: var(--v4-blue-deep); }
.v4-uplift .v4-research-links a { font-size: 19px; font-weight: 550; text-decoration: none !important; }
.v4-uplift .v4-research-links a:hover { text-decoration: underline !important; }
/* Research index: full-width entries, published figures, compact archive. */
.v4-uplift .v4-study-index { padding-top: 0 !important; }
.v4-uplift .v4-study-row {
    display: grid;
    grid-template-columns: minmax(0,1.45fr) minmax(0,1fr);
    gap: 72px;
    padding: 64px 0;
    border-bottom: 1px solid var(--v4-line);
    color: var(--v4-ink);
    text-decoration: none;
    counter-increment: v4-study;
}
.v4-uplift .v4-study-row h2 { font-size: clamp(28px,3vw,42px) !important; margin: 16px 0 20px; }
.v4-uplift .v4-study-meta::before { content: counter(v4-study,decimal-leading-zero) " / " / ""; }
.v4-uplift .v4-study-row p { font-size: 17px; line-height: 1.7; margin-bottom: 24px; }
.v4-uplift .v4-study-cta { color: var(--v4-blue-deep); font-size: 14px; font-weight: 650; }
.v4-uplift .v4-study-row:hover h2 { color: var(--v4-blue-deep) !important; }
.v4-uplift .v4-study-figure { align-self: center; border-left: 1px solid var(--v4-line); padding-left: 48px; }
.v4-uplift .v4-study-figure strong { display: block; font-size: clamp(48px,5.4vw,76px); font-weight: 650; letter-spacing: -.065em; line-height: 1.05; color: var(--v4-blue-deep); margin-bottom: 20px; }
.v4-uplift .v4-study-figure > span { display: block; font-size: 13px; color: var(--v4-muted); max-width: 300px; }
.v4-uplift .v4-bars { margin-top: 26px; background: var(--v4-wash); }
.v4-uplift .v4-bars i { display: block; height: 8px; background: var(--v4-blue-deep); margin-top: 8px; }
.v4-uplift .v4-bars i:first-child:not(:only-child) { background: #8096b4; }
.v4-uplift .v4-archive { display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: baseline; padding-top: 32px; color: var(--v4-muted); font-size: 12px; }
.v4-uplift .v4-archive > span:first-child { text-transform: uppercase; font-weight: 650; letter-spacing: .1em; }
.v4-uplift .v4-archive a { color: var(--v4-blue-deep); text-decoration: underline; }
.v4-uplift .v4-archive p { flex-basis: 100%; margin: 0; }
/* Checker keeps its existing Alpine behaviour and form controls. */
.v4-uplift.v4-check #main { width: min(1180px,calc(100% - 100px)); margin-inline: auto !important; }
.v4-uplift .v4-checker > section { background: var(--v4-wash); }
.v4-uplift .v4-checker #visibility-check-form { text-align: left; }
.v4-uplift .v4-checker .shadow-lg { box-shadow: none; border-radius: 0; border: 1px solid var(--v4-line); }
.v4-uplift.v4-ai-search-optimization .v4-hero > div { width: min(1180px,calc(100% - 100px)); max-width: none !important; }
.v4-uplift.v4-ai-search-optimization section.v4-content:not(.v4-hero) { padding-inline: max(24px,calc((100% - 1180px)/2)) !important; }
.v4-uplift.v4-ai-search-optimization section.v4-content > div { max-width: none !important; }
@media (max-width: 900px) {
    .v4-uplift .v4-content .grid { column-gap: 28px; }
    .v4-uplift .v4-content .grid-cols-3 { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .v4-uplift .v4-study-row { gap: 32px; }
    .v4-uplift .v4-study-figure { padding-left: 28px; }
    .v4-uplift .v4-content .flex.items-center.justify-between { flex-wrap: wrap; gap: 16px; }
}
@media (max-width: 600px) {
    .v4-uplift .v4-content { --v4-measure: 100%; }
    .v4-uplift .v4-content > :is(div.max-w-3xl,div.max-w-4xl,div.max-w-5xl,div.max-w-6xl,div.max-w-7xl),
    .v4-uplift .v4-inner,
    .v4-uplift .v4-document,
    .v4-uplift.v4-article-page .v4-hero > div,
    .v4-uplift .v4-article > .prose,
    .v4-uplift .v4-research-links .v4-inner,
    .v4-uplift.v4-check #main,
    .v4-uplift.v4-ai-search-optimization .v4-hero > div { width: calc(100% - 40px) !important; }
    .v4-uplift .v4-hero, .v4-uplift section.v4-hero { padding: 112px 0 48px !important; }
    .v4-uplift .v4-document { padding-top: 112px !important; }
    .v4-uplift .v4-content h1 { font-size: clamp(36px,10vw,48px) !important; letter-spacing: -.045em !important; }
    .v4-uplift.v4-article-page .v4-hero h1 { font-size: clamp(34px,9.7vw,46px) !important; }
    .v4-uplift section.v4-content:not(.v4-hero) { padding-block: 48px !important; }
    .v4-uplift .v4-content .grid-cols-3 { grid-template-columns: minmax(0,1fr); }
    .v4-uplift .v4-content .grid { gap: 24px; }
    .v4-uplift .v4-content .tier-pill { border-radius: 0; }
    .v4-uplift .v4-article > .prose { font-size: 17px; }
    .v4-uplift .v4-content :is(th,td) { padding: 12px; }
    .v4-uplift .v4-content table { min-width: 580px; }
    .v4-uplift .v4-study-row { grid-template-columns: minmax(0,1fr); padding-block: 40px; gap: 28px; }
    .v4-uplift .v4-study-figure { border-left: 0; padding-left: 0; }
    .v4-uplift .v4-study-figure strong { font-size: 56px; margin-bottom: 14px; }
    .v4-uplift .v4-bars { max-width: 280px; }
    .v4-uplift .v4-takeaway { padding: 22px !important; }
    .v4-uplift .v4-content a[class*="px-8"] { padding-inline: 22px; }
}
/* Review refinements: long headlines and legacy article callouts. */
.v4-uplift .v4-kicker, .v4-uplift .v4-document > .eyebrow { margin-top: 0 !important; }
.v4-uplift.v4-technology .v4-hero .grid { display: block; }
.v4-uplift.v4-technology .v4-hero .grid > div:has(.geo-visual) { display: none; }
.v4-uplift.v4-technology .v4-hero h1 { max-width: 1100px; }
.v4-uplift .v4-article :is(.answer-block,.stat-box) {
    margin-block: 36px !important;
    padding: 28px !important;
    border: 0 !important;
    border-left: 3px solid var(--v4-blue-deep) !important;
    border-radius: 0 !important;
    background: var(--v4-wash) !important;
    color: var(--v4-ink) !important;
    font-size: 18px !important;
    line-height: 1.75 !important;
}
.v4-uplift.v4-services .tier-pill { background: transparent; border-radius: 0; border-top: 1px solid var(--v4-line); padding: 20px 0; }
.v4-uplift.v4-services .tier-pill > span:first-child { background: transparent !important; color: var(--v4-blue-deep); margin-left: 0; justify-content: flex-start; }
.v4-uplift.v4-ai-search-optimization .v4-hero [style*="justify-content: center"] { justify-content: flex-start !important; }
/* AA contrast for legacy utility colours inside uplifted content only. */
.v4-uplift .v4-content a.bg-white,
.v4-uplift .v4-content a.btn-secondary {
    background: #fff !important;
    color: var(--v4-blue-deep) !important;
    border-color: var(--v4-blue-deep) !important;
}
.v4-uplift .v4-content :is(.text-gray-300,.text-gray-400,.text-gray-500) { color: var(--v4-muted) !important; }
.v4-uplift .v4-content :is(div,span,strong):is(.text-white,.text-blue-100,.text-blue-200) { color: var(--v4-ink) !important; }
.v4-uplift .v4-content .v4-panel a.bg-blue-600 { color: #fff !important; }
.v4-uplift .v4-document .ctabox { background: var(--v4-wash); border: 1px solid var(--v4-line); border-radius: 0; padding: 36px; margin-top: 64px; }
.v4-uplift .v4-content p[style*="color: #9ca3af"] { color: var(--v4-muted) !important; }
.v4-uplift .v4-checker .text-red-500 { color: #b91c1c; }
.v4-uplift .v4-checker .text-gray-400 { color: var(--v4-muted); }
.v4-uplift.v4-check .v4-content div[style*="background: #0f172a"] { background: var(--v4-wash) !important; border-top: 1px solid #cad5e4; border-radius: 0 !important; }
.v4-uplift.v4-check .v4-content div[style*="background: #0f172a"] p { color: var(--v4-muted) !important; }
.v4-uplift.v4-check .v4-content div[style*="background: #0f172a"] > div { color: var(--v4-blue-deep) !important; }
.v4-uplift.v4-check .v4-content td { color: var(--v4-ink) !important; }
.v4-uplift.v4-benchmarks .v4-content .stat-pill,
.v4-uplift.v4-benchmarks .v4-content .stat-pill strong { color: var(--v4-muted); }
.v4-uplift.v4-benchmarks .v4-content .stat-pill { background: transparent; border-radius: 0; border-color: #cad5e4; }
.v4-uplift.v4-benchmarks .v4-content .cta-button { background: var(--v4-blue-deep); color: #fff; }
.v4-uplift.v4-travel .v4-content .bg-gray-700.text-gray-300 { color: #f1f5f9 !important; }
.v4-uplift.v4-about .v4-content div.bg-blue-600.text-white { background: transparent !important; color: var(--v4-blue-deep) !important; border-radius: 0; }
.v4-uplift.v4-technology .v4-panel:has(.v4-engine-mark) {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr);
    gap: 12px 16px;
}
.v4-uplift.v4-technology .v4-panel:has(.v4-engine-mark) > .absolute { display: none; }
.v4-uplift .v4-engine-mark { width: 28px; height: 28px; object-fit: contain; }
.v4-uplift.v4-technology .v4-panel:has(.v4-engine-mark) > h3 { margin: 0; font-size: 21px; }
.v4-uplift.v4-technology .v4-panel:has(.v4-engine-mark) > p { grid-column: 2; }
.v4-uplift .v4-content .text-center > p.mx-auto { margin-left: 0; margin-right: 0; }

/* Accessibility (10 Oct 2026, axe pass): in-text links must not rely on colour alone; stronger amber. */
main p a:not(.btn):not([class*="bg-"]):not([class*="rounded"]), main li a:not(.btn):not([class*="bg-"]):not([class*="rounded"]), main td a:not(.btn) { text-decoration: underline; text-underline-offset: 2px; }
.text-amber-600 { color: #b45309 !important; }
p a:not(.btn):not([class*="bg-"]):not([class*="rounded"]):not([class*="inline-"]) { text-decoration: underline; text-underline-offset: 2px; }
footer p a, .site-nav p a { text-decoration: none; }
.bg-blue-500 { background-color: #2563eb !important; }
.cta-button { background-color: #2563eb !important; }
li a:not(.btn):not([class*="bg-"]):not([class*="rounded"]):not(.site-footer-link) { text-decoration: underline; text-underline-offset: 2px; } nav li a, .site-nav li a, footer li a { text-decoration: none; }

/* 15 Oct 2026: evidence brief card (homepage right column) readable sizes. Paul: tab labels,
   record text and the Evidence interpretation / Next step copy were too small. */
#main .intel-card .intel-sub { font-size: 15px; }
#main .intel-card .tab { font-size: 12px; }
#main .intel-card .v4-record-step { font-size: 12px; }
#main .intel-card .v4-record strong { font-size: 15px; }
#main .intel-card .v4-record > div > span { font-size: 13px; }
#main .intel-card .v4-record-tag { font-size: 11px; }
#main .intel-card .v4-kicker { font-size: 11px; }
#main .intel-card .v4-conclusion p { font-size: 15px; }
#main .intel-card .v4-reading p { font-size: 15px; }
#main .intel-card .v4-reading p:last-child { font-size: 13px; }
#main .intel-card .v4-reading-links { font-size: 15px; }
@media (max-width: 760px) {
  #main .intel-card .tab { font-size: 11px; }
  #main .intel-card .v4-record strong { font-size: 14px; }
  #main .intel-card .v4-record > div > span { font-size: 12px; }
  #main .intel-card .v4-record-tag { font-size: 10px; }
  #main .intel-card .v4-conclusion p, #main .intel-card .v4-reading p { font-size: 14px; }
}
