/* Local review 22: consistent surfaces, typography and spacing. */
body.refined-v4{--review-ink:#051e2f;--review-body:#334d5e;--review-ocean:#0e6e8a;--review-tint:#cce9ee}
body.refined-v4 main .section{background:#fff}
body.refined-v4 main .section.mist,body.refined-v4.page-home main .editorial-reverse,body.refined-v4.page-partnerships main .section:has(.stage){background:linear-gradient(120deg,#e4f1f3 0%,#f0f6f7 58%,#e8eff3 100%);border-block:1px solid #dce8ec}
body.refined-v4 main .content-card h3,body.refined-v4 main .stage h3{color:var(--review-ink)}
body.refined-v4 main .content-card p,body.refined-v4 main .stage p,body.refined-v4 main .editorial-copy>p:not(.section-label){color:var(--review-body);line-height:1.75}
body.refined-v4 main .content-card p{font-size:16px}
body.refined-v4 main .section-label,body.refined-v4 main .stage .status{display:inline-flex;align-items:center;align-self:start;width:fit-content;max-width:100%;min-height:32px;padding:7px 14px;border-radius:100px;background:linear-gradient(125deg,#ffffffeb,#d9eef2e6);border:1px solid #bbd6dd;color:#0a3a5c;font:500 12px/1.5 Geist,sans-serif;letter-spacing:.035em;box-shadow:inset 0 1px 0 #fff,0 4px 12px #0a3a5c06;backdrop-filter:blur(8px)}
body.refined-v4 main .stage .status{min-height:38px;padding:9px 18px;white-space:nowrap}
body.refined-v4 main .editorial-copy>.content-grid+p{margin-top:32px;padding-top:24px;border-top:1px solid #c5d8df}
body.refined-v4 main .mist .content-card{border-color:#bdcfd7}
body.refined-v4 main .cta{background:linear-gradient(110deg,#b9e1e7 0%,#d8edf0 52%,#e7eaf5 100%);border-block:1px solid #b6d6df}
body.refined-v4 .footer-nav a{border:0!important;text-decoration:none!important;background-image:none!important;box-shadow:none!important}
body.refined-v4 .footer-nav a:after{display:none!important}
body.refined-v4 .footer-nav a:hover{color:#a0dae2;text-decoration:none!important}
body.refined-v4 #mainnav a.button{padding-left:26px!important;padding-right:14px!important;gap:20px!important;flex-shrink:0;white-space:nowrap}
body.refined-v4 main img[src*="revision-2v/lab-"],body.refined-v4 main img[src*="revision-2v/boris"],body.refined-v4 main img[src*="revision-2v/luka"],body.refined-v4 main img[src*="revision-2v/tamara"],body.refined-v4 main img[src*="revision-2v/eic-day"]{filter:saturate(.73) contrast(1.035) brightness(1.025);}
body.refined-v4 figure:has(>img[src*="revision-2v/lab-"]),body.refined-v4 .loop-picture:has(>img[src*="revision-2v/lab-"]){position:relative;isolation:isolate}
body.refined-v4 figure:has(>img[src*="revision-2v/lab-"]):after,body.refined-v4 .loop-picture:has(>img[src*="revision-2v/lab-"]):after{content:"";position:absolute;inset:0;background:#7fc6df;opacity:.12;mix-blend-mode:color;pointer-events:none;border-radius:inherit}
body.refined-v4 .contact-detail:has(.location-photo){display:grid;grid-template-columns:64px minmax(0,1fr);gap:20px}
body.refined-v4 .contact-detail>.location-photo{grid-column:1/-1;max-width:none;width:100%;margin:4px 0 12px}
body.refined-v4 .resource-list{display:grid;gap:24px}
body.refined-v4 .resource-v2{padding:32px!important;background:#fff!important;border:1px solid #cbdde3!important;border-radius:22px!important;box-shadow:0 8px 28px #0a3a5c08;grid-template-columns:84px minmax(0,1fr) minmax(220px,30%)!important;gap:26px!important}
body.refined-v4 .resource-v2 h2{color:#051e2f!important;margin:8px 0 14px!important;line-height:1.4!important}
body.refined-v4 .resource-v2 p{color:#334d5e}
body.refined-v4 .resource-v2 time{color:#0e6e8a;font-size:13px;font-weight:500}
body.refined-v4 .resource-image{width:100%;max-width:none}
body.refined-v4 .resource-image img{background:#f5f7f8}
body.refined-v4 .resource-image img[src$="logo-tiko.svg"]{background:#0a3a5c;padding:26px}
body.refined-v4 .page-resources,body.refined-v4.page-resources main>.section{background:#edf4f6}
body.refined-v4 .topic-programs{border-color:#bdd8e1!important;box-shadow:0 16px 42px #0a3a5c0c}
body.refined-v4 .topic-programs .topic-photo{opacity:1!important;filter:saturate(.88) contrast(1.14)}
body.refined-v4 .topic-programs:after{background:linear-gradient(90deg,#edf4f6 0%,#edf4f6f5 29%,#edf4f6a6 49%,transparent 70%)!important}
@media(max-width:1100px){body.refined-v4 .resource-v2{grid-template-columns:minmax(0,1fr) minmax(210px,35%)!important;gap:18px 24px!important}body.refined-v4 .resource-v2>time{grid-column:1/-1}}
@media(max-width:800px){body.refined-v4 .resource-v2{grid-template-columns:1fr!important;padding:24px!important;gap:16px!important;border-radius:18px!important}body.refined-v4 .resource-v2>time{grid-column:auto}body.refined-v4 .resource-image img{max-height:none}body.refined-v4 main .content-card p{font-size:15px}body.refined-v4 .topic-programs:after{background:linear-gradient(180deg,#edf4f6 0%,#edf4f6 40%,#edf4f6b0 58%,transparent 78%)!important}}
body.refined-v4 .resource-label{color:#0e6e8a;font-size:13px;font-weight:500}
@media(min-width:801px) and (max-width:1100px){body.refined-v4 .resource-v2>.resource-label{grid-column:1/-1}}
body.refined-v4.page-home main .editorial-layers{background:#fff;border-block:0}
body.refined-v4.page-home main .editorial-split:not(.editorial-reverse){background:#fff;border-block:0}
/* FAQ: the photograph fills its mobile frame without letterboxing. */
@media(max-width:800px){body.refined-v4.page-faq .topic-contact .topic-media{width:100%;max-width:none;padding:0;overflow:hidden;border-radius:20px}body.refined-v4.page-faq .topic-contact .topic-photo{display:block;width:100%;max-width:none;height:auto;aspect-ratio:16/10;object-fit:cover;margin:0}}
/* Review 23 — 18 October: navigation, process layout and section breathing room. */
body.refined-v4 .menubtn{position:relative;width:48px;height:48px;min-width:48px;padding:0!important;font-size:0!important;border:1px solid #d5e3e7;border-radius:50%;background:linear-gradient(135deg,#fff,#edf5f6);color:#0a3a5c;align-items:center;justify-content:center}
body.refined-v4 .menubtn:before,body.refined-v4 .menubtn:after{content:"";position:absolute;left:13px;width:20px;height:1.5px;background:currentColor;transition:transform .2s ease,box-shadow .2s ease;}
body.refined-v4 .menubtn:before{top:17px;box-shadow:0 6px 0 currentColor}
body.refined-v4 .menubtn:after{top:29px}
body.refined-v4 .menubtn[aria-expanded=true]:before{transform:translateY(6px) rotate(45deg);box-shadow:none}
body.refined-v4 .menubtn[aria-expanded=true]:after{transform:translateY(-6px) rotate(-45deg)}
body.refined-v4 .menubtn:focus-visible{outline:2px solid #0e6e8a;outline-offset:4px}
body.refined-v4 .loop-explanation{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px 22px;align-content:center;align-items:start}
body.refined-v4 .loop-explanation>.section-label{grid-column:1/-1;margin:0 0 10px}
body.refined-v4 .loop-explanation>.loop-progress{grid-column:1;grid-row:2/4;width:88px;height:88px;margin:0}
body.refined-v4 .loop-progress span{font-size:14px}
body.refined-v4 .loop-explanation>h3{grid-column:2;margin:0;align-self:center}
body.refined-v4 .loop-explanation>.loop-description{grid-column:2;min-height:0;margin:0}
body.refined-v4 .loop-explanation>.loop-controls{grid-column:1/-1;margin-top:12px;flex-wrap:wrap}
body.refined-v4 .loop-select,body.refined-v4 .loop-select:hover,body.refined-v4 .loop-select[aria-pressed=true]{text-decoration:none!important;border-bottom:0!important;box-shadow:none;background-image:none}
body.refined-v4 .loop-select:after{display:none!important}
body.refined-v4 .loop-select:hover,body.refined-v4 .loop-select[aria-pressed=true]{color:#0e6e8a}
body.refined-v4 .loop-select:focus-visible{outline:2px solid #0e6e8a;outline-offset:4px;border-radius:4px}
body.refined-v4 .topic-partnerships{background:#f5f7f8!important}
body.refined-v4 .topic-partnerships>.wrap{background:transparent}
body.refined-v4 .topic-programs{margin-bottom:70px!important}
body.refined-v4 main>.section.mist{padding-top:90px!important;padding-bottom:90px!important}
body.refined-v4 main .mist .content-card{border-color:#dce8ec!important}
@media(max-width:800px){body.refined-v4 .topic-contact .topic-media{width:100%;max-width:none;padding:0;overflow:hidden;border-radius:20px}body.refined-v4 .topic-contact .topic-photo{display:block;width:100%;max-width:none;height:auto;aspect-ratio:16/10;object-fit:cover;margin:0}body.refined-v4 main>.section.mist{padding-top:64px!important;padding-bottom:64px!important}body.refined-v4 .loop-explanation{grid-template-columns:76px minmax(0,1fr);gap:14px 18px}body.refined-v4 .loop-explanation>.loop-progress{width:76px;height:76px}body.refined-v4 .loop-explanation>h3{font-size:28px}body.refined-v4 .loop-explanation>.loop-description{font-size:16px}body.refined-v4 .loop-explanation>.loop-controls{margin-top:16px}}
@media(max-width:380px){body.refined-v4 .loop-explanation{padding:22px 18px;gap:12px 14px}body.refined-v4 .loop-explanation>.loop-description{grid-column:1/-1}body.refined-v4 .loop-explanation>.loop-progress{grid-row:2}}
@media(prefers-reduced-motion:reduce){body.refined-v4 .menubtn:before,body.refined-v4 .menubtn:after{transition:none}}
/* Exterior gutters keep the page ground visible around rounded panels. */
body.refined-v4{--page-ground:#f5f7f8;--panel-gutter:24px;--panel-gap:32px;--hero-gutter:20px;background:var(--page-ground)}
body.refined-v4 main{display:flow-root;background:var(--page-ground)}
body.refined-v4 .topic-about,body.refined-v4 .topic-partnerships{background:var(--page-ground)!important}
body.refined-v4 .topic-about>.wrap,body.refined-v4 .topic-partnerships>.wrap{background:transparent!important}
body.refined-v4 main>.section.mist{margin:var(--panel-gap) var(--panel-gutter)!important}
body.refined-v4 main>:is(.topic-platform,.topic-programs,.v2-homehero){margin:var(--hero-gutter) var(--panel-gutter) calc(var(--hero-gutter) + 12px)!important}
@media(max-width:800px){body.refined-v4{--panel-gutter:12px;--panel-gap:20px;--hero-gutter:12px}}

/* Client corrections 3V: full diagrams, consistent publication and contact frames. */
body.refined-v4 .loop-showcase img[data-loop-fit="model"],
body.refined-v4 .loop-showcase img[data-loop-fit="stratify"] {object-fit:contain!important;padding:24px;box-sizing:border-box;background:#fff;}
body.refined-v4 .loop-showcase img[data-loop-fit="stratify"] {background:#e7f2f4;}
body.refined-v4 .resource-image.journal-logo {background:#fff;}
body.refined-v4 .resource-image.journal-logo img {width:100%;height:240px;object-fit:contain!important;padding:32px;box-sizing:border-box;background:#fff;}
.contact-email-card {padding:clamp(24px,4vw,48px);border:1px solid #dce7eb;border-radius:24px;background:#edf4f6;}
@media(max-width:600px){body.refined-v4 .loop-showcase img[data-loop-fit="model"],body.refined-v4 .loop-showcase img[data-loop-fit="stratify"]{padding:12px;}}

/* Client preference: navigation and hero panels use the full page measure. */
body.refined-v4>header.nav{
 width:calc(100% - 2 * var(--panel-gutter));max-width:none;
 margin-inline:auto;padding-inline:24px;
}
body.refined-v4 main>:is(.topic-hero,.v2-homehero){
 width:calc(100% - 2 * var(--panel-gutter));max-width:none;
 margin-left:auto!important;margin-right:auto!important;
}
body.refined-v4.page-home main{background:#e7f2f4;}
body.refined-v4.page-home main>.home-partners{background:#f5f7f8;}
body.refined-v4.page-home main>.home-layers{background:#fff;}
body.refined-v4.page-home main>.editorial-challenge{padding-bottom:33px;}
body.refined-v4.page-home main>:is(.cta,.home-decisions){border-width:0;}
@media(max-width:800px){body.refined-v4>header.nav{padding-inline:16px;}}

/* Review 28 — one neutral surface, alternating semantic sections.
   Full-width bands avoid a second ground color around rounded section panels.
   Hero images retain their existing overlays and constrained width. */
body.refined-v4{--page-ground:#fff;--section-neutral:#e7f2f4;--section-space:80px;background:#fff;}
body.refined-v4 main{background:#fff!important;}
body.refined-v4 main>:is(.section,.cta).surface-white,
body.refined-v4 main>:is(.section,.cta).surface-neutral{
 margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;
 padding-block:var(--section-space)!important;
}
body.refined-v4 main>:is(.section,.cta).surface-white{background:#fff!important;}
body.refined-v4 main>:is(.section,.cta).surface-neutral{background:var(--section-neutral)!important;}
body.refined-v4 main>.topic-hero:not(.topic-platform):not(.topic-programs){background:#fff!important;}
body.refined-v4 main>.topic-hero:not(.topic-platform):not(.topic-programs)>.wrap{background:transparent!important;}
body.refined-v4 main .surface-neutral :is(.content-card,.person,.partner-logo){border-color:#dce2e6!important;}
body.refined-v4 main .contact-email-card{background:var(--section-neutral);border-color:#dce2e6;}
body.refined-v4 .funding-footer{background:#fff;border-top:0;}
@media(max-width:800px){body.refined-v4{--section-space:56px;}}

/* Review 30: continuous ground behind navigation and page introductions. */
body.refined-v4:has(main>.topic-hero),
body.refined-v4:has(main>.v2-homehero){background:#e7f2f4;}
body.refined-v4 main:has(>.topic-hero),
body.refined-v4 main:has(>.v2-homehero){background:#e7f2f4!important;}
body.refined-v4 main>.topic-hero:not(.topic-platform):not(.topic-programs){background:#e7f2f4!important;}

/* Approved critique refinements: retain the existing layout and palette. */
body.refined-v4 .v2-footer .footer-top .section-label { color: #CCE9EE; }
body.refined-v4 .v2-footer .trademark,
body.refined-v4 .v2-footer .legal { font-size: 12px !important; line-height: 1.6; }
body.refined-v4 .process-overview .platform-steps .step:has(.loop-select[aria-pressed="false"]) .reading-symbol { background: #fff; }
.resource[data-type="publication"] .publication-authors,
.resource[data-type="publication"] .publication-source { font-size: 14px; line-height: 1.6; color: #375563; margin: 0 0 12px; }
.resource[data-type="publication"] h2 { margin: 0 0 12px; }
.resource[data-type="publication"] .publication-source { margin-bottom: 20px; }
.resource-image figcaption { font-size: 13px !important; }
.project-shortcut { display: inline-block; margin-top: 20px; }
#project-enquiry { scroll-margin-top: 120px; }
.capability-list li::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--ocean); top: calc(22px + .8em - 3px); }

/* V4 contact enquiry: compact, accessible fields within the existing contact panel. */
body.refined-v4 .contact-form { margin-top: 28px; }
body.refined-v4 .contact-email-card .formgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
body.refined-v4 .contact-email-card .field { display: grid; gap: 8px; color: #173e50; font-size: 14px; font-weight: 500; }
body.refined-v4 .contact-email-card .field-full { grid-column: 1 / -1; }
body.refined-v4 .contact-email-card input,
body.refined-v4 .contact-email-card textarea { width: 100%; box-sizing: border-box; border: 1px solid #b9d2db; border-radius: 10px; background: #fff; color: #051e2f; font: inherit; padding: 12px 14px; }
body.refined-v4 .contact-email-card textarea { min-height: 132px; resize: vertical; }
body.refined-v4 .contact-email-card input:focus-visible,
body.refined-v4 .contact-email-card textarea:focus-visible { outline: 3px solid #6bb9cb; outline-offset: 2px; border-color: #0e6e8a; }
body.refined-v4 .contact-email-card .button { margin-top: 20px; }
body.refined-v4 .contact-email-card #form-delivery { margin-top: 12px; }
@media (max-width: 600px) { body.refined-v4 .contact-email-card .formgrid { grid-template-columns: 1fr; } }

/* Final interface corrections: keep related controls and labels visually aligned. */
body.refined-v4 .v2-footer .footer-bottom {
 display:grid;
 grid-template-columns:minmax(0,1fr) repeat(3,max-content);
 align-items:center;
 gap:24px;
}
body.refined-v4 .v2-footer .footer-bottom>div { display:contents; }
body.refined-v4 .v2-footer .footer-bottom :is(a,.cookie-reopen) {
 display:inline-flex;
 align-items:center;
 min-height:0;
 margin:0;
 padding:0;
 border:0;
 background:transparent;
 color:#e4e9eb;
 font:400 12px/1.5 Geist,sans-serif;
 text-decoration:none;
 white-space:nowrap;
}
body.refined-v4 .v2-footer .footer-bottom :is(a,.cookie-reopen):hover { color:#a0dae2; }
body.refined-v4 .v2-footer .footer-bottom :is(a,.cookie-reopen):focus-visible { outline:2px solid #a0dae2; outline-offset:4px; border-radius:2px; }

/* Navigation feedback sits at the lower edge of the header, not beneath the text. */
body.refined-v4 #mainnav>a:not(.button) {
 position:relative;
 padding-inline:1px;
 text-decoration:none!important;
}
body.refined-v4 #mainnav>a:not(.button)::after {
 content:"";
 position:absolute;
 right:1px;
 bottom:-8px;
 left:1px;
 height:2px;
 border-radius:999px;
 background:#5cc8d4;
 box-shadow:0 0 9px #5cc8d4a8;
 opacity:0;
 transform:scaleX(.45);
 transform-origin:center;
 transition:opacity .18s ease,transform .18s ease;
}
body.refined-v4 #mainnav>a:not(.button):is(:hover,:focus-visible,[aria-current="page"])::after { opacity:1; transform:scaleX(1); }

/* Editorial list bullets align with the first line of copy at every line length. */
body.refined-v4 .capability-list li::before {
 width:6px;
 height:6px;
 top:calc(22px + .8em);
 transform:translateY(-50%);
}
body.refined-v4 .visual-v3 .editorial-split .capability-list li::before { top:calc(16px + .8em); }

/* Resource type is metadata, not a button. */
body.refined-v4.page-resources .resource-v2 .section-label {
 min-height:0;
 padding:3px 10px;
 border-radius:999px;
 box-shadow:none;
 font-size:12px;
 line-height:1.35;
}

/* Preserve the existing team grid while giving the portraits a quieter role. */
body.refined-v4 .team-grid .person>img,
body.refined-v4 .team-grid .portrait-pending {
 width:min(60%,132px);
 margin:0 auto 18px;
 aspect-ratio:4/5;
}
body.refined-v4 .team-grid .person { padding:20px; }
body.refined-v4 .team-grid .person h3 { margin-top:0; }

@media(max-width:800px) {
 body.refined-v4 .v2-footer .footer-bottom { display:flex; flex-wrap:wrap; gap:14px 20px; }
 body.refined-v4 .v2-footer .footer-bottom>p { flex-basis:100%; }
 body.refined-v4 #mainnav>a:not(.button)::after { bottom:-3px; }
 body.refined-v4 .team-grid .person>img,
 body.refined-v4 .team-grid .portrait-pending { width:min(60%,132px); }
}
@media(prefers-reduced-motion:reduce) {
 body.refined-v4 #mainnav>a:not(.button)::after { transition:none; }
}

/* Tinted bands use one quiet divider color throughout. */
body.refined-v4 main .surface-neutral :is(
 .capability-list li,
 .content-card,
 .stage,
 .question,
 .faq-list,
 .faq-list details,
 .partner-item,
 .personmini,
 .feedback
) { border-color:#BBD6DD!important; }
body.refined-v4 main .surface-neutral .editorial-copy>.content-grid+p { border-color:#BBD6DD; }

/* Team profiles follow the reference: a compact portrait-led directory, not large cards. */
body.refined-v4 .team-grid { gap:52px 32px; }
body.refined-v4 .team-grid .person {
 padding:0!important;
 border:0!important;
 border-radius:0!important;
 background:transparent!important;
 box-shadow:none!important;
}
body.refined-v4 .team-grid .person>img,
body.refined-v4 .team-grid .portrait-pending {
 width:118px;
 height:118px;
 margin:0 0 18px;
 aspect-ratio:1;
 border-radius:50%;
 object-position:center top;
}
body.refined-v4 .team-grid .person h3 {
 margin:0 0 5px;
 font-size:19px;
 line-height:1.35;
}
body.refined-v4 .team-grid .person p {
 min-height:0;
 margin:0;
 color:var(--ev-body);
}
body.refined-v4 .team-grid .person .person-link { margin-top:10px; }
@media(max-width:800px) {
 body.refined-v4 .team-grid { gap:36px 20px; }
 body.refined-v4 .team-grid .person>img,
 body.refined-v4 .team-grid .portrait-pending { width:96px; height:96px; }
}
