/* Cultivera evidence hierarchy lock v1.54.1 · CD + Art + CTO · 2026-08-19
   Integrity first, then evidence hierarchy, then compression. No architecture or interaction changes. */
:root{
  --alloc-education:#5f77a0;
  --alloc-health:#a64f4a;
  --alloc-environment:#3f714b;
  --alloc-livelihood:#986135;
}

/* Field Systems: category colour is a secondary pin signal; status remains in the ring. */
.page-field-systems .allocation-rail i[data-budget="education"],
.page-field-systems.field-systems-lock18-5 .atlas-budget-segments span[data-budget-category="education"]{background:var(--alloc-education)!important;opacity:1!important}
.page-field-systems .allocation-rail i[data-budget="health"],
.page-field-systems.field-systems-lock18-5 .atlas-budget-segments span[data-budget-category="health"]{background:var(--alloc-health)!important;opacity:1!important}
.page-field-systems .allocation-rail i[data-budget="environment"],
.page-field-systems.field-systems-lock18-5 .atlas-budget-segments span[data-budget-category="environment"]{background:var(--alloc-environment)!important;opacity:1!important}
.page-field-systems .allocation-rail i[data-budget="livelihood"],
.page-field-systems.field-systems-lock18-5 .atlas-budget-segments span[data-budget-category="livelihood"]{background:var(--alloc-livelihood)!important;opacity:1!important}
.page-field-systems .map-marker[data-dominant-budget] .marker-core{
  fill:var(--atlas-allocation-color)!important;
  stroke:rgba(255,253,248,.96)!important;
  stroke-width:1.35!important;
}
.page-field-systems .map-marker.status-concept:not([data-dominant-budget]) .marker-core,
.page-field-systems .map-marker.status-in-progress:not([data-dominant-budget]) .marker-core{fill:#f4f3ed!important}
.page-field-systems .map-marker .marker-ring{fill:#f4f3ed;stroke:#315f40}
.page-field-systems .map-marker.status-in-progress .marker-ring{stroke-width:2.1}
.page-field-systems .map-marker.status-completed .marker-ring{stroke-dasharray:1.6 1.6}

/* Transparent project nav: keep no background, but prevent split-media heroes from swallowing links. */
@media(min-width:1181px){
  body.project-theme .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) .cv-global-links{
    color:#283229;
    font-weight:600;
    text-shadow:0 0 7px rgba(249,249,245,.96),0 1px 1px rgba(249,249,245,.82);
  }
  body.project-theme .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) .cv-global-links a:is(:hover,:focus-visible,[aria-current="page"]){color:#111811}
}

/* MAVH hero captions: evidence qualification must be readable without becoming a graphic panel. */
body.donor-mavh .hero-caption{
  padding:10px 12px!important;
  background:rgba(7,28,20,.82)!important;
  color:rgba(255,255,255,.88)!important;
  text-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.donor-mavh .hero-caption strong{font-size:10px!important;line-height:1.3!important;color:#fff!important}
body.donor-mavh .hero-caption span{font-size:11px!important;line-height:1.42!important;color:rgba(255,255,255,.82)!important}

/* MAVH: less empty theatre, larger evidence. */
@media(min-width:821px){
  body.donor-mavh #problem.section{padding-top:clamp(62px,5.4vw,84px);padding-bottom:clamp(70px,6vw,92px)}
  body.donor-mavh #problem .head{margin-bottom:clamp(34px,3vw,44px)}
  body.donor-mavh #problem .problem-grid{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:clamp(34px,3.8vw,54px)}
  body.donor-mavh #problem .problem-photo{min-height:520px}
  body.donor-mavh #problem .pressure-list{align-self:start}
  body.donor-mavh #problem .pressure{grid-template-columns:40px 1fr;gap:18px;padding:22px 0}
  body.donor-mavh #problem .pressure h3{font-size:clamp(29px,2.25vw,36px);margin-bottom:7px}
  body.donor-mavh #problem .pressure p{font-size:13.5px;line-height:1.52}
  body.donor-mavh #problem .source-qualifier{margin-top:14px}

  body.donor-mavh #atlas.section{padding-top:clamp(66px,5.8vw,90px);padding-bottom:clamp(66px,5.8vw,90px)}
  body.donor-mavh #atlas .head{grid-template-columns:minmax(0,1fr);margin-bottom:clamp(26px,2.5vw,36px)}
  body.donor-mavh #atlas .head h2{max-width:14ch}
  body.donor-mavh #atlas .atlas-grid{grid-template-columns:minmax(260px,.5fr) minmax(560px,1.5fr);gap:clamp(34px,4vw,60px);align-items:center}
  body.donor-mavh #atlas .atlas-copy h3{font-size:clamp(34px,3.2vw,50px);margin-bottom:15px}
  body.donor-mavh #atlas .atlas-note{margin-top:0;padding-top:16px;gap:18px}
  body.donor-mavh #atlas .atlas-note strong{font-size:22px}
  body.donor-mavh #atlas .map-wrap{min-height:500px}
  body.donor-mavh #atlas .map-svg{width:min(100%,700px)}
  body.donor-mavh #atlas .district{fill:rgba(255,255,255,.028);stroke:rgba(255,255,255,.34);stroke-width:.85}
  body.donor-mavh #atlas .district.is-target{fill:rgba(185,216,117,.32);stroke:#c9ed77;stroke-width:2.1}
  body.donor-mavh #atlas .map-dot{fill:#d3f184}
  body.donor-mavh #atlas .map-ring{stroke:#d3f184;opacity:.72}
  body.donor-mavh #atlas .map-label{font-size:13px}
}
body.donor-mavh #problem .problem-photo figcaption{
  position:static!important;
  padding:12px 0 0!important;
  background:transparent!important;
  color:rgba(20,23,20,.68)!important;
  border-top:1px solid rgba(20,23,20,.16)!important;
  font-size:11.5px!important;
  line-height:1.45!important;
  text-shadow:none!important;
}

/* Coconut Coast: tighten the hero evidence seam and first-phase signature before shrinking signature type. */
.page-cocores .cocores-hero-continuation__inner{padding-block:13px!important}
.page-cocores .cocores-hero-continuation .cocores-hero__ask{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"label title" "meta meta";gap:3px 18px;align-items:baseline}
.page-cocores .cocores-hero-continuation .cocores-hero__ask>span{grid-area:label}
.page-cocores .cocores-hero-continuation .cocores-hero__ask>strong{grid-area:title;font-size:clamp(2rem,3vw,3.35rem);line-height:.96;letter-spacing:-.035em}
.page-cocores .cocores-hero-continuation .cocores-hero__ask>small{grid-area:meta;margin-top:3px}
.page-cocores .cocores-hero-continuation .cocores-hero__scale{gap:clamp(14px,2vw,26px)}
.page-cocores .cocores-hero-continuation .cocores-hero__scale span{white-space:nowrap}
.page-cocores .project-allocation-identity__inner{min-height:58px;padding:9px 0}

@media(max-width:820px){
  body.donor-mavh #problem.section,body.donor-mavh #atlas.section{padding-block:54px}
  body.donor-mavh #problem .problem-grid{gap:20px}
  body.donor-mavh #problem .pressure{grid-template-columns:32px 1fr;padding:16px 0;gap:14px}
  body.donor-mavh #atlas .head{margin-bottom:22px}
  body.donor-mavh #atlas .atlas-grid{gap:18px}
  body.donor-mavh #atlas .atlas-copy h3{font-size:32px}
  body.donor-mavh #atlas .map-wrap{min-height:300px}
  body.donor-mavh #atlas .district{stroke:rgba(255,255,255,.36)}

  .page-cocores .cocores-hero-continuation__inner{gap:10px!important;padding:12px 18px!important}
  .page-cocores .cocores-hero-continuation .cocores-hero__ask{grid-template-columns:1fr;grid-template-areas:"label" "title" "meta";gap:4px}
  .page-cocores .cocores-hero-continuation .cocores-hero__ask>strong{font-size:clamp(2.35rem,10.5vw,3.2rem)}
  .page-cocores .cocores-hero-continuation .cocores-hero__scale{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .page-cocores .cocores-hero-continuation .cocores-hero__scale span{white-space:normal}
}
