/* folded from: assets/project-donor-legibility.css, assets/project-responsive-safety.css, assets/project-system-r47.css, assets/project-cd-dtp-convergence-20260825.css, assets/sitewide-consistency-r12.css, assets/sitewide-correction-r20.css, assets/project-cinematic-r23.css, projects/cocores-bd/assets/cocores.css, assets/project-navigation-r48.css */
/* Route-local class pruning; retained declarations keep their original cascade order. */

/* ==== assets/project-donor-legibility.css ==== */
/* Cultivera · Donor legibility shared authority · Packet 4A · 2026-08-27
   Shared only: contextual evidence rows, Crop Intelligence reads, delivery-icon geometry.
   Editorial source selection, Atlas copy and delivery labels remain page-owned.
   No JavaScript dependency. */

:root{
  --donor-legibility-accent:#47735b;
  --donor-legibility-ink:#132019;
  --donor-legibility-line:rgba(19,32,25,.16);
  --donor-legibility-line-soft:rgba(19,32,25,.10);
  --donor-legibility-muted:rgba(19,32,25,.64);
}

.donor-visually-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* Quiet evidence line: public evidence and Cultivera interpretation remain visibly distinct in link copy. */
.donor-evidence-line{
  width:100%;
  margin-top:clamp(20px,2.4vw,34px);
  padding-top:14px;
  border-top:1px solid var(--donor-legibility-line);
  display:grid;
  grid-template-columns:minmax(112px,150px) minmax(0,1fr);
  gap:16px 28px;
  align-items:start;
}
.donor-evidence-line__label,
.donor-atlas-read__label{
  font-family:"JetBrains Mono","SFMono-Regular",Consolas,monospace;
  font-size:10px;
  font-weight:600;
  line-height:1.45;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--donor-legibility-accent);
}
.donor-evidence-line__links{
  display:flex;
  flex-wrap:wrap;
  gap:8px 20px;
  min-width:0;
}
.donor-evidence-line a{
  color:inherit;
  font-size:13px;
  line-height:1.5;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
  text-decoration-color:rgba(19,32,25,.34);
}
.donor-evidence-line a:hover{text-decoration-color:currentColor}
.donor-evidence-line a small{font:inherit;color:var(--donor-legibility-muted)}

/* One contextual Atlas read. It is a link into the instrument, not an embedded chart or proof claim. */







.donor-evidence-line a:focus-visible,
.donor-atlas-read:focus-visible{
  outline:2px solid currentColor;
  outline-offset:5px;
}

/* Delivery icons are decorative when visible text already names the delivery. Geometry stays page-owned. */
.donor-delivery-icon{
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
.donor-delivery-icon svg,
svg.donor-delivery-icon{
  fill:none;
  stroke:currentColor;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.donor-delivery-icon svg{display:block;width:100%;height:100%}
.donor-delivery-icon[aria-hidden="true"],
.donor-delivery-icon svg[aria-hidden="true"]{pointer-events:none}

/* MAVH remains the benchmark; shared authority only standardises visual weight. */


/* GLOW retains its authored icon vocabulary. */


/* Project contexts inherit their own paper/dark compositions rather than a new donor palette. */
.page-cocores .donor-evidence-line,
.page-cocores .donor-atlas-read{border-color:var(--donor-legibility-line)}


@media(max-width:700px){
  .donor-evidence-line,
  .donor-atlas-read{grid-template-columns:1fr;gap:8px}

  .donor-evidence-line__links{display:grid;gap:8px}

}

@media(forced-colors:active){
  .donor-evidence-line,
  .donor-atlas-read{border-color:CanvasText}
  .donor-evidence-line__label,
  .donor-atlas-read__label{color:CanvasText}
}

/* Packet 4B · Coconut operating-condition icon treatment. */
.page-cocores .cc-signature__tab .cc-signature__icon{width:20px;height:20px;margin-bottom:7px;color:currentColor;opacity:.78}
.page-cocores .cc-signature__tab.is-active .cc-signature__icon{opacity:1}
@media(max-width:760px){.page-cocores .cc-signature__tab .cc-signature__icon{width:18px;height:18px;margin-bottom:5px}}
@media(max-width:430px){.page-cocores .cc-signature__tab .cc-signature__icon{width:16px;height:16px;margin-bottom:3px}}

/* Packet 4C · ROOTS + Project Lotus donor legibility. */









/* Packet 4D · Biochar + Sundarbans Guardian Cooperative donor legibility. */













/* ==== assets/project-responsive-safety.css ==== */
/* Cultivera project responsive safety authority · 2026-08-17
   Non-visual guardrails only: overflow exposure, word integrity, touch floors,
   responsive table/media containment and sticky-workbench downgrade on small screens.
   Project navigation and page-specific art/DTP live elsewhere. */

/* DTP safety net: prevents page-specific grids/flex children from forcing horizontal overflow. */
body.project-theme main :is(.container,.funding-shell,.project-editorial-grid,[class*="__grid"],[class$="-grid"],[class*="__layout"],[class$="-layout"]) > *{min-width:0}
body.project-theme main :is(p,li,dd,dt,strong,small,a,button){overflow-wrap:break-word}
body.project-theme main :is(h1,h2,h3){overflow-wrap:normal;word-break:normal;hyphens:none;text-wrap:balance}
body.project-theme main :is(p,li,dd){text-wrap:pretty}
body.project-theme main :is(button,a[href],[role="button"]){touch-action:manipulation}
body.project-theme main :is(button,[role="button"]){min-height:44px}

/* Caption-strength floor remains here because it is a cross-project safety constraint. */
body.project-theme main :is(.hero-caption,.route-caption,.caption,figcaption) strong{font-size:12px;line-height:1.4}
body.project-theme main table{max-width:100%}
body.project-theme main :is(.table-wrap,.table-scroll,.evidence-table-wrap){max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}

@media (max-width:860px){
  /* Mobile reading/DTP recovery. Keep visual identity, remove overflow and microtype regressions. */
  body.project-theme main{max-width:100%}
  body.project-theme main :is(.container,.funding-shell){max-width:100%;padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
  body.project-theme main :is(p,li,dd){font-size:max(15px,1em);line-height:1.55}
  body.project-theme main :is(.mono,.project-eyebrow,.kicker,.eyebrow,[class*="kicker"],[class*="label"],[class*="caption"]){line-height:1.35}
  body.project-theme main :is(.hero-actions,.project-hero-actions,[class*="actions"]){max-width:100%}
  body.project-theme main :is(.hero-actions,.project-hero-actions,[class*="actions"]) :is(a,button){max-width:100%;white-space:normal;text-align:center}
  body.project-theme main img{max-width:100%}
  body.project-theme main svg{max-width:100%;height:auto}
  body.project-theme main pre{max-width:100%;overflow-x:auto}

}

@media (max-width:620px){
  body.project-theme main :is(.container,.funding-shell){padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
  body.project-theme main table{font-size:13px}
  body.project-theme main :is(input,select,textarea){max-width:100%;font-size:16px}
}

/* Release 1 (r48) mobile clearance authority.
   At <=760px the global nav and rail never both display at once.
   Reserve padding for ONE bar only. */
@media (max-width:760px){
  body.project-theme main[data-project-main]{
    padding-top:var(--cv-nav-height,var(--global-nav-height,58px));
  }
}

/* ==== assets/project-system-r47.css ==== */
/* Cultivera R47 shared project system authority.
   Scope: project navigation, mobile project shuttle, investment outputs, allocation and DTP tokens.
   All 11 project routes consume this file; page-specific authorities own only project-local composition. */

:root {
  --cv-project-paper: #f1ede3;
  --cv-project-ink: #172019;
  --cv-project-muted: #667067;
  --cv-project-line: color-mix(in srgb, var(--cv-project-ink) 18%, transparent);
  --cv-project-accent: #a84c34;
  --cv-project-shell: min(1180px, calc(100vw - 40px));
  --cv-project-radius: 999px;
  --cv-project-font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --cv-project-font-serif: Iowan Old Style, Baskerville, "Times New Roman", serif;
  --cv-project-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

[data-r42-project-system] {
  color: var(--cv-project-ink);
  background: var(--cv-project-paper);
  font-family: var(--cv-project-font-sans);
}

[data-r42-project-system] *,
[data-r42-project-system] *::before,
[data-r42-project-system] *::after { box-sizing: border-box; }

.r42-shell { width: var(--cv-project-shell); margin-inline: auto; }

/* Mobile-first DTP: readable metadata, deliberate rhythm, no microtype. */
.r42-kicker {
  margin: 0 0 12px;
  color: var(--cv-project-accent);
  font: 700 11px/1.35 var(--cv-project-font-mono);
  letter-spacing: .09em;
  text-transform: uppercase;
}
.r42-title {
  margin: 0;
  font: 500 clamp(38px, 11vw, 76px)/.94 var(--cv-project-font-serif);
  letter-spacing: -.035em;
  text-wrap: balance;
}
.r42-title--authored > span { display: block; }
.r42-copy {
  margin: 16px 0 0;
  max-width: 42rem;
  color: color-mix(in srgb, var(--cv-project-ink) 78%, transparent);
  font: 400 16px/1.55 var(--cv-project-font-sans);
}

/* R47 shared-shell candidate. Project heroes own the full first viewport beneath
   a transparent global overlay. The same nav resolves to the light shell on scroll.
   The single project rail remains post-hero and sticky through the body. */
body.project-theme { margin: 0; }
body.project-theme main#main-content[data-project-main] {
  padding-top: 0 !important;
}
body.project-theme main#main-content[data-project-main] > [data-project-hero] {
  min-height: 100svh !important;
}

/* Transparent entry is one shared project-hero state, independent of legacy tone labels. */
body.project-theme .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) {
  color: #fff;
  background: transparent;
  border-bottom-color: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
body.project-theme .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-logo {
  filter: drop-shadow(0 1px 9px rgb(0 0 0 / .28));
}
body.project-theme .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-logo--primary { opacity: 0; }
body.project-theme .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-logo--reverse { opacity: 1; }
body.project-theme .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-links {
  color: rgb(255 255 255 / .86);
  text-shadow: 0 1px 12px rgb(0 0 0 / .34);
}
body.project-theme .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-links a:is(:hover,:focus-visible,[aria-current="page"]) { color: #fff; }
body.project-theme .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-cta {
  border-color: rgb(255 255 255 / .56);
  background: rgb(9 18 12 / .32);
  color: #fff;
  box-shadow: none;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
body.project-theme .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-menu {
  color: #fff;
  filter: drop-shadow(0 1px 3px rgb(0 0 0 / .44));
}

/* Opening the mobile drawer restores a stable light control plane. */
body.project-theme:is(.mobile-menu-open,.global-menu-open) .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) {
  color: var(--cv-shell-ink);
  background: var(--cv-shell-paper);
  border-bottom-color: var(--cv-shell-line);
  backdrop-filter: blur(18px) saturate(1.04);
  -webkit-backdrop-filter: blur(18px) saturate(1.04);
}
body.project-theme:is(.mobile-menu-open,.global-menu-open) .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-logo--primary { opacity: 1; }
body.project-theme:is(.mobile-menu-open,.global-menu-open) .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-logo--reverse { opacity: 0; }
body.project-theme:is(.mobile-menu-open,.global-menu-open) .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-logo { filter: none; }
body.project-theme:is(.mobile-menu-open,.global-menu-open) .cv-global-nav[data-cv-entry="transparent"]:not(.is-scrolled) .cv-global-menu {
  color: var(--cv-shell-ink);
  filter: none;
}

/* The preserved shell has a more-specific mobile light-state rule. Match that
   selector here so project heroes keep the shared transparent entry state. */
@media (max-width: 767px) {
  body.project-theme .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) {
    color: #fff;
    background: transparent;
    border-bottom-color: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  body.project-theme .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) .cv-global-logo--primary { opacity: 0; }
  body.project-theme .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) .cv-global-logo--reverse { opacity: 1; }
  body.project-theme .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) .cv-global-menu {
    color: #fff;
    filter: drop-shadow(0 1px 3px rgb(0 0 0 / .44));
  }
  body.project-theme:is(.mobile-menu-open,.global-menu-open) .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) {
    color: var(--cv-shell-ink);
    background: var(--cv-shell-paper);
    border-bottom-color: var(--cv-shell-line);
    backdrop-filter: blur(18px) saturate(1.04);
    -webkit-backdrop-filter: blur(18px) saturate(1.04);
  }
  body.project-theme:is(.mobile-menu-open,.global-menu-open) .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) .cv-global-logo--primary { opacity: 1; }
  body.project-theme:is(.mobile-menu-open,.global-menu-open) .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) .cv-global-logo--reverse { opacity: 0; }
  body.project-theme:is(.mobile-menu-open,.global-menu-open) .cv-global-nav[data-cv-entry="transparent"][data-cv-tone="light"]:not(.is-scrolled) .cv-global-menu {
    color: var(--cv-shell-ink);
    filter: none;
  }
}

/* Post-hero project rail: one in-flow sticky plane, never a second fixed layer. */
.r42-project-nav {
  position: sticky;
  top: var(--global-nav-height, var(--nav-height, 56px));
  z-index: 80;
  border-bottom: 1px solid color-mix(in srgb, var(--cv-project-ink) 28%, transparent);
  background: color-mix(in srgb, var(--cv-project-paper) 98%, white 2%);
  backdrop-filter: blur(14px) saturate(1.02);
}
.r42-project-nav__bar {
  width: min(1220px, calc(100vw - 28px));
  min-height: 56px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
}
.r42-project-nav__neighbor { display: none; }
.r42-project-nav__neighbor-copy { min-width: 0; display: grid; gap: 2px; }
.r42-project-nav__neighbor-role { color: var(--cv-project-muted); font: 650 10px/1 var(--cv-project-font-mono); letter-spacing: .08em; text-transform: uppercase; }
.r42-project-nav__neighbor-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.r42-project-nav__arrow { color: var(--cv-project-accent); font-size: 14px; line-height: 1; }
.r42-project-nav__identity { min-width: 0; }
.r42-project-nav__title {
  display: block;
  overflow: hidden;
  color: inherit;
  font: 650 13px/1.18 var(--cv-project-font-sans);
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.r42-project-nav__meta {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-top: 3px;
  min-width: 0;
  color: var(--cv-project-muted);
  font: 650 11px/1.2 var(--cv-project-font-mono);
  letter-spacing: .055em;
  text-transform: uppercase;
}
.r42-project-nav__status { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.r42-project-nav__section { color: var(--cv-project-accent); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.r42-project-nav__section:not([hidden])::before { content: "·"; margin-inline: 6px 4px; color: var(--cv-project-accent); opacity: .75; }
.r42-project-nav__toggle {
  min-width: 92px;
  min-height: 44px;
  border: 0;
  border-left: 1px solid var(--cv-project-line);
  background: transparent;
  color: inherit;
  cursor: pointer;
  font: 650 11px/1 var(--cv-project-font-mono);
  letter-spacing: .035em;
  text-transform: uppercase;
}
.r42-project-nav__toggle::after { content: "⌄"; display: inline-block; margin-left: 7px; transition: transform .18s ease; }
.r42-project-nav.is-open .r42-project-nav__toggle::after { transform: rotate(180deg); }
.r42-project-nav__panel {
  position: absolute;
  inset: 100% 0 auto;
  border-bottom: 1px solid var(--cv-project-line);
  background: var(--cv-project-paper);
  box-shadow: 0 14px 24px rgb(0 0 0 / .08);
}
.r42-project-nav__panel[hidden] { display: none; }
.r42-project-nav__panel-inner {
  width: min(1180px, calc(100vw - 40px));
  margin-inline: auto;
  padding: 20px 0 26px;
}
.r42-project-nav__chapters { display: grid; gap: 0; }
.r42-project-nav__chapters a {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-top: 1px solid var(--cv-project-line);
  color: inherit;
  font: 520 15px/1.25 var(--cv-project-font-sans);
  text-decoration: none;
}
.r42-project-nav__chapters a:last-child { border-bottom: 1px solid var(--cv-project-line); }
.r42-project-nav__chapters a[aria-current="location"] { color: var(--cv-project-accent); }
.r42-project-nav__chapter-index { color: var(--cv-project-muted); font: 600 11px/1 var(--cv-project-font-mono); }

/* Bottom project shuttle: cross-project navigation only. */











/* Native project index dialog. */












/* Standard investment outputs. Not cards: one continuous editorial field. */












/* Allocation: one accent, one visual grammar, no decorative category colours. */
.r42-allocation { padding: 72px 0; background: color-mix(in srgb, var(--cv-project-ink) 4%, var(--cv-project-paper)); }
.r42-allocation__grid { display: grid; gap: 38px; }
.r42-allocation__rows { border-top: 1px solid var(--cv-project-line); }
.r42-allocation__row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 10px 18px;
  padding: 18px 0;
  border-bottom: 1px solid var(--cv-project-line);
}
.r42-allocation__label { font: 580 15px/1.25 var(--cv-project-font-sans); }
.r42-allocation__value { color: var(--cv-project-accent); font: 500 24px/1 var(--cv-project-font-serif); }
.r42-allocation__track { grid-column: 1/-1; height: 3px; overflow: hidden; background: color-mix(in srgb, var(--cv-project-ink) 10%, transparent); }
.r42-allocation__fill { width: var(--allocation-share,0%); height: 100%; background: var(--cv-project-accent); }
.r42-allocation__note { grid-column: 1/-1; margin: 0; color: var(--cv-project-muted); font: 400 13px/1.4 var(--cv-project-font-sans); }

[data-project-section], .r42-investment, .r42-allocation { scroll-margin-top: calc(var(--nav-height, 56px) + 72px); }

@media (min-width: 720px) {
  :root { --cv-project-shell: min(1180px, calc(100vw - 72px)); }
  .r42-project-nav__bar { min-height: 52px; grid-template-columns: minmax(150px,.9fr) minmax(300px,1.45fr) minmax(150px,.9fr) 108px; gap: 18px; }
  .r42-project-nav__neighbor {
    min-width: 0;
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: 9px;
    color: inherit;
    font: 560 12px/1.15 var(--cv-project-font-sans);
    text-decoration: none;
  }
  .r42-project-nav__neighbor--next { justify-content: flex-end; text-align: right; }
  .r42-project-nav__neighbor--next .r42-project-nav__neighbor-copy { justify-items: end; }
  .r42-project-nav__identity { min-width: 0; display: flex; align-items: baseline; justify-content: center; gap: 10px; text-align: center; }
  .r42-project-nav__title { flex: 0 1 auto; font-size: 12.5px; }
  .r42-project-nav__meta { flex: 0 1 auto; justify-content: center; gap: 0; margin-top: 0; font-size: 10px; }
  .r42-project-nav__status::before { content: "·"; margin-right: 10px; color: var(--cv-project-accent); }
  .r42-project-nav__section { display: none !important; }
  .r42-project-nav__toggle { min-width: 104px; }
  .r42-project-nav__panel-inner { padding-block: 26px 32px; }
  .r42-project-nav__chapters { grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 36px; }
  .r42-project-nav__chapters a:nth-child(2) { border-top: 1px solid var(--cv-project-line); }





  .r42-allocation { padding-block: 110px; }
  .r42-allocation__grid { grid-template-columns: minmax(250px,.8fr) minmax(420px,1.2fr); align-items: start; gap: 9vw; }
}





@media (max-width: 360px) {
  .r42-project-nav__bar { width: calc(100vw - 20px); grid-template-columns: minmax(0,1fr) 82px; gap: 4px; }
  .r42-project-nav__toggle { min-width: 80px; font-size: 11px; }
  .r42-project-nav__meta { gap: 5px; font-size: 11px; }


}

@media (prefers-reduced-motion: reduce) {
  .r42-project-nav *,
  .r42-project-shuttle * { transition: none !important; scroll-behavior: auto !important; }

}

/* R42 Response 4 tablet correction: keep allocation single-column until both columns fit. */
@media (min-width: 720px) and (max-width: 899px) {
  .r42-allocation__grid { grid-template-columns: 1fr; gap: 38px; }
}

/* R42.6 rail compression between tablet and full desktop. */
@media (min-width:720px) and (max-width:980px) {
  .r42-project-nav__bar { grid-template-columns: minmax(112px,.8fr) minmax(220px,1.35fr) minmax(112px,.8fr) 94px; gap: 10px; }
  .r42-project-nav__neighbor-role { display:none; }
  .r42-project-nav__neighbor { font-size:11px; }
  .r42-project-nav__identity { gap:7px; }
  .r42-project-nav__title { font-size:12px; }
  .r42-project-nav__meta { font-size:10px; }
  .r42-project-nav__status::before { margin-right:7px; }
  .r42-project-nav__toggle { min-width:90px; padding-inline:8px; }
}

/* Batch B canon extraction · shared retained authority */
body.cv-shell main :is(h1,h2,h3){text-wrap:balance}
body.cv-shell main :is(p,li,dd){text-wrap:pretty}
body.cv-shell main section[id]{scroll-margin-top:calc(var(--nav-height,68px) + 76px)}
body.cv-shell main :is(a[href],button,input,select,textarea):focus-visible,
body.cv-shell .project-story-index :is(a[href],button):focus-visible{
  outline:2px solid currentColor;
  outline-offset:3px;
}
body.cv-shell main button,
body.cv-shell main [role="button"]{min-height:44px}
body.cv-shell main input[type="range"]{min-height:44px;touch-action:pan-y}
body.cv-shell main :is(.sources,.sgc-sources) a{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  line-height:1.35;
}
@media (max-width:980px){
body.cv-shell main :is(
    .project-decision-now-v1530__label,
    .project-story-index__position,
    .hero-caption,.route-caption,.caption,.project-caption__title,
    .source-qualifier,.atlas-kicker,.atlas-label,.detail-kicker,
    .cocores-kicker,.cocores-section-index,.cocores-allocation__state,
    .cocores-allocation__delta,.glow-allocation__state,.sgc-allocation__state,
    .sgc-allocation__index,.sgc-allocation__delta,.sgc-allocation__note,
    .lotus-allocation__note,.roots-client-allocation__state
  ){font-size:11px;line-height:1.45}
}
@media (max-width:980px){
body.cv-shell main :is(dt,.fact small,.facts small,.pressure-row b,.funded-row small,
    .route-proof span,.purchase-item b,.purchase-col__head span,
    .mavh-allocation__rowhead span,.mavh-allocation__units small,
    .lotus-allocation__rowhead span,.lotus-allocation__units small,
    .cocores-allocation__label span,.cocores-allocation__value-row span,
    .glow-continuity__frame strong,.atlas-v13__legend,.atlas-v13__legend span,
    .system-control span,.detail-proof b
  ){font-size:11px;line-height:1.35}
}
@media (max-width:700px){
body.cv-shell main :is(.section,.sgc-section){padding-top:52px;padding-bottom:52px}
}










@media (max-width:700px){
body.page-cocores main h2{line-height:.98}
}
@media (max-width:700px){
body.cv-shell main :is(.sources,.sgc-sources) a{min-height:44px;padding-block:5px}
}
@media (prefers-reduced-motion:reduce){
body.cv-shell main *,body.cv-shell main *::before,body.cv-shell main *::after{scroll-behavior:auto}
}



@media (max-width:980px){
body.page-cocores main :is(.cocores-hero__ask small,.cocores-context__fact span,
    .cocores-evidence-note span,.cocores-spine__label span,.cocores-system__measures span,
    .cocores-allocation-head__total,.cocores-allocation__label span,.cocores-measures__rule strong,
    .cocores-place__marker span,.cocores-place__marker small,.cocores-place__rule span){font-size:11px;line-height:1.35}
}
body.cv-shell main :is(.cocores-source,.sources,.sgc-sources,figcaption) a{
  display:inline-flex;align-items:center;min-height:44px;padding-block:5px;line-height:1.35
}

/* ==== assets/project-cd-dtp-convergence-20260825.css ==== */

/* Coconut Coast · preserve vertical tree art while keeping tablet hero authored and <=3 lines. */
@media (min-width:761px) and (max-width:840px){
  body[data-project-id="cocores-bd"] .cc-hero h1{font-size:54px;line-height:.93;max-width:340px;letter-spacing:-.052em}
}

/* FRiO · keep a six-step operating clock while fitting the exploratory field in one viewport. */



/* Benchmark integration · Matamuhuri compositional certainty + current interaction intelligence · 2026-08-25
   Interaction compresses. Storytelling breathes. CSS-only recomposition; no data/copy/logic changes. */

/* Coconut Coast · four conditions become a compact operating console. */
@media (min-width:761px){
  body[data-project-id="cocores-bd"] .cc-signature__field{grid-template-columns:minmax(0,1.16fr) minmax(390px,.84fr);height:650px;min-height:650px}
  body[data-project-id="cocores-bd"] .cc-signature__image{height:650px;min-height:650px}
  body[data-project-id="cocores-bd"] .cc-signature__interface{height:650px;min-height:0}
  body[data-project-id="cocores-bd"] .cc-signature__tabs{grid-template-columns:repeat(4,1fr)}
  body[data-project-id="cocores-bd"] .cc-signature__tab{min-height:56px;padding:12px 9px;border-bottom:0}
  body[data-project-id="cocores-bd"] .cc-signature__tab span{font-size:clamp(1.05rem,1.35vw,1.35rem)}
  body[data-project-id="cocores-bd"] .cc-signature__tab small{display:none}
  body[data-project-id="cocores-bd"] .cc-signature__panel{min-height:0;padding:24px 30px 26px;justify-content:flex-start;overflow:hidden}
  body[data-project-id="cocores-bd"] .cc-signature__panel h3{font-size:clamp(2.55rem,3.4vw,4rem);margin:10px 0 14px;line-height:.91}
  body[data-project-id="cocores-bd"] .cc-signature__panel>p{font-size:.84rem;line-height:1.48}
  body[data-project-id="cocores-bd"] .cc-signature__question{margin-top:18px;padding-top:13px}
  body[data-project-id="cocores-bd"] .cc-signature__question p{font-size:.88rem;line-height:1.4;margin-top:5px}
  body[data-project-id="cocores-bd"] .cc-signature__stress{min-height:48px;margin-top:16px;padding:9px 0;gap:10px}
  body[data-project-id="cocores-bd"] .cc-signature__stress span{font-size:.61rem}
  body[data-project-id="cocores-bd"] .cc-signature__stress small{font-size:.61rem;line-height:1.28}
  body[data-project-id="cocores-bd"] .cc-signature__consequence{margin-top:12px;padding-left:12px}
  body[data-project-id="cocores-bd"] .cc-signature__consequence p{font-size:.82rem;line-height:1.42;margin-top:5px}
}

/* Biochar · proof frontier and batch evidence share one contained theatre. */


/* FRiO · six-stage clock becomes a horizontal timing rail above the live stage. */

/* Benchmark integration QA repairs. */


/* ==== assets/sitewide-consistency-r12.css ==== */
/* Cultivera R12 · controlled site-wide consistency fixes · 2026-08-29
   Scope is deliberately narrow: only routes listed in R12 Responses 2–4. */

/* 01 Home: preserve the proposition; restore the desktop three-line DTP ceiling. */


/* 05 Coconut Coast: keep copy + documentary image in the opening, but remove surplus mobile serialization. */
@media (max-width:760px){
  body.page-cocores .cc-hero{padding-top:20px!important;padding-bottom:30px!important;}
}

/* 08 Project Lotus: shared footer owns outer geometry. */


/* 09 Scaling Biogas: disclosures meet mobile touch-target authority. */


/* ==== assets/sitewide-correction-r20.css ==== */
/* Cultivera R20 · sitewide CD correction authority · 2026-08-30
   Genuine-defect fixes only. Loaded last so the frozen page authorities remain intact. */

/* Progressive enhancement must never make the base document unreadable. */
.reveal,
.page-insights-long-view .story-chapter {
  opacity: 1 !important;
  transform: none !important;
}

/* Potato Long View: keep the chronology inside the Atlas column. */
@media (min-width: 901px) {
  .page-insights-long-view .timeline {
    right: 0;
  }

  .page-insights-long-view .timeline a span {
    right: 51px;
    left: auto;
    text-align: right;
  }
}

/* Large numerals are indivisible typographic objects. */
body[data-project-id="cocores-bd"] .cc-tension__number strong,
.page-biogas-policy .number-record article > span {
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: keep-all;
  font-variant-numeric: tabular-nums;
}

/* Editorial links underline only their actual label-and-arrow group. */
.editorial-link,
.sr-text-link {
  position: relative;
  display: inline-flex;
  width: max-content;
  max-width: 100%;
  align-items: center;
  border-bottom: 0 !important;
  text-decoration: none;
}

.editorial-link::after,
.sr-text-link::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 3px;
  left: 0;
  height: 1px;
  background: currentColor;
  opacity: .3;
}

/* Prevent the 320 px evidence rule from running through its label. */


/* Mobile Advisory: fieldsets own hierarchy; answers read as rows, not a tile matrix. */




@media (prefers-reduced-motion: reduce) {
  .reveal,
  .page-insights-long-view .story-chapter,
  body.donor-glow .glow-atlas * {
    transition: none !important;
    animation: none !important;
  }
}

/* No-JS responsive shell: keep primary navigation usable when menu scripting is unavailable. */

/* Field Systems Atlas closeout · large-desktop hierarchy and legibility only. */
@media (min-width: 1121px) {


  .page-field-systems .atlas-toolbar {
    min-height: 78px;
  }



  .page-field-systems .atlas-toolbar__label {
    display: block;
    position: absolute;
    top: 10px;
    color: #5f6861;
    font: 600 10px/1 var(--mono);
    letter-spacing: .1em;
    text-transform: uppercase;
  }











  .page-field-systems .project-row {
    grid-template-columns: minmax(0, 1fr) minmax(104px, .26fr) 12px;
    gap: 12px;
    padding-right: 16px;
    padding-left: 14px;
  }

  .page-field-systems .project-row__main small {
    font-size: 10.25px;
    line-height: 1.34;
  }

  .page-field-systems .project-row-allocation {
    gap: 5px;
  }

  /* The share is the point of the label: wrap it rather than cut it. */
  .page-field-systems .project-row-allocation__lead {
    font-size: 10px;
  }






}

/* Field Systems · KPI/Atlas surgical convergence · 2026-09-21 */
.page-field-systems .metrics--compact .metric:first-child span {
  color: #596159;
}



/* ==== assets/project-cinematic-r23.css ==== */
/* Cultivera R23 cinematic project authority · 2026-08-30
   Additive hero art direction. Funding, evidence and allocation content remain governed by each page. */
body[data-cinematic-release="r23"] [data-project-hero]{--r23-drift:0px;position:relative;isolation:isolate;overflow:hidden}
body[data-cinematic-release="r23"] [data-project-hero] :is(img,video),body[data-cinematic-release="r23"] [data-project-hero] .hero__photo{backface-visibility:hidden;transform:translate3d(0,var(--r23-drift),0) scale(1.035);transform-origin:var(--r23-origin,50% 50%);transition:transform 1.35s var(--cv-ease-enter),filter .8s ease,opacity .5s ease;will-change:transform}
body[data-cinematic-release="r23"].r23-cinematic-ready [data-project-hero] :is(img,video),body[data-cinematic-release="r23"].r23-cinematic-ready [data-project-hero] .hero__photo{transform:translate3d(0,var(--r23-drift),0) scale(1.012)}
.r23-cinema-grain{position:absolute;inset:0;z-index:8;pointer-events:none;opacity:.032;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.64'/%3E%3C/svg%3E")}
body[data-cinematic-release="r23"] [data-project-hero] :is(h1,.hero-title,.bc-hero__question,.gf-hero__deck,.hero-deck,.cc-hero__standfirst,.sgc-hero__deck){text-wrap:balance}
body[data-cinematic-release="r23"] [data-project-hero] :is(figcaption,.bc-photo-note,.gf-hero__caption){letter-spacing:.025em}

@media (min-width:981px){
body[data-cinematic-release="r23"] [data-project-hero]{min-height:max(720px,100svh)}

body[data-project-id="cocores-bd"] .cc-hero{height:calc(100svh - var(--cv-nav-height,64px));min-height:720px;max-height:980px;background:#11170f;color:#fff;--r23-origin:64% 48%}
body[data-project-id="cocores-bd"] .cc-hero h1{max-width:11.5ch;font-size:clamp(60px,5.6vw,92px);line-height:.88;letter-spacing:-.058em}
}

@media (max-width:980px){
body[data-cinematic-release="r23"] [data-project-hero]{--r23-drift:0px!important}
body[data-project-id="cocores-bd"] .cc-hero{min-height:100svh;display:grid;background:#11170f;color:#fff}
}

/* R42.6: project global-navigation paint is owned by project-system-r42.css. */
body[data-project-id="cocores-bd"] .cc-hero .btn.primary{border-color:#fff;background:#fff;color:#111b13;box-shadow:none}
/* R37 sitewide browser census convergence · Biochar closing action contrast. */


@media (prefers-reduced-motion:reduce){body[data-cinematic-release="r23"] [data-project-hero] :is(img,video),body[data-cinematic-release="r23"] [data-project-hero] .hero__photo{transform:none!important;transition:none!important;will-change:auto}.r23-cinema-grain{opacity:.018}}

/* R33 project hero cinematic integration · 2026-08-31
   Localised still-first integration. Exact source provenance remains page-specific. */
body[data-project-id="biochar-field"] .bc-hero__media picture,
body[data-project-id="cocores-bd"] .cc-hero__media picture,
body[data-project-id="glow-coastal-resilience"] .hero-media picture,
body[data-project-id="solar-cool-chain"] .hero-media picture{position:absolute;inset:0;display:block;width:100%;height:100%}
body[data-project-id="biochar-field"] .bc-hero__media picture img,
body[data-project-id="cocores-bd"] .cc-hero__media picture img,
body[data-project-id="glow-coastal-resilience"] .hero-media picture img,
body[data-project-id="solar-cool-chain"] .hero-media picture img{display:block;width:100%;height:100%;object-fit:cover}



/* R42.6: former Lotus shell-paint override retired; shared project system owns nav paint. */

/* ==== projects/cocores-bd/assets/cocores.css ==== */
/* cocores-bd page stylesheet (CP10 Wave 3c).
   Folds cocores-r42.css, byte-for-byte and in their original order, with @import targets inlined at the point they were imported.
   Cascade order of the folded rules: cocores-r42-base.css -> cocores-human-review-r1.css -> cocores-r42.css.
   Loads at the position cocores-r42.css held in the pre-Wave-3c <head> stack. */

/* ---- from cocores-r42-base.css ---- */
/* Coconut Coast · R42 exemplar authority · 2026-09-02
   One cinematic hero, one consequential signature, one project accent. */

body.page-cocores {
  --cv-project-accent: #93412b;
  --cv-project-paper: #f8f5ee;
  --cv-project-ink: #172119;
  --cv-project-muted: #626961;
  --cv-project-font-serif: "Playfair Display", Georgia, serif;
  --cc-ink: #172119;
  --cc-deep: #173c2b;
  --cc-deeper: #0e2d20;
  --cc-paper: #f8f5ee;
  --cc-sand: #ded6c6;
  --cc-line: rgb(23 33 25 / 17%);
  --cc-accent: var(--cv-project-accent);
  --cc-accent-on-dark: color-mix(in srgb, var(--cv-project-accent) 58%, white);
  --cc-serif: "Playfair Display", Georgia, serif;
  --cc-sans: "Inter", Arial, sans-serif;
  --cc-mono: "JetBrains Mono", ui-monospace, monospace;
}

body.page-cocores main[data-project-main] {
  padding-top: var(--cv-nav-height) !important;
  background: var(--cc-paper);
  color: var(--cc-ink);
}

body.page-cocores .cc-kicker,
body.page-cocores .r42-kicker {
  display: block;
  margin: 0 0 14px;
  color: var(--cc-accent);
  font: 600 11px/1.35 var(--cc-mono);
  letter-spacing: .1em;
  text-transform: uppercase;
}

/* Hero: cinematic still. The page's interaction budget is reserved for the signature. */
body.page-cocores .cc-hero-v2 {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  height: calc(100svh - var(--cv-nav-height) - 58px);
  min-height: 620px;
  display: grid;
  align-items: end;
  padding: 0;
  background: #0b120d;
  color: #fff;
}
body.page-cocores .cc-hero-v2__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  margin: 0;
  overflow: hidden;
  background: #0b120d;
}
body.page-cocores .cc-hero-v2__media picture,
body.page-cocores .cc-hero-v2__media img {
  display: block;
  width: 100%;
  height: 100%;
}
body.page-cocores .cc-hero-v2__media img {
  object-fit: cover;
  object-position: 50% 50%;
  filter: brightness(.98) saturate(.94) contrast(1.02);
}
body.page-cocores .cc-hero-v2__veil {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgb(4 12 7 / 90%) 0%, rgb(4 12 7 / 63%) 31%, rgb(4 12 7 / 12%) 62%, rgb(4 12 7 / 3%) 100%),
    linear-gradient(0deg, rgb(4 10 7 / 72%), transparent 38%);
}
body.page-cocores .cc-hero-v2__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  min-height: 100%;
  display: flex;
  align-items: flex-end;
  padding-block: max(88px, 12svh) clamp(58px, 7svh, 86px);
}
body.page-cocores .cc-hero-v2__copy { width: min(650px, 52vw); }
body.page-cocores .cc-hero-v2__identity {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 18px;
  margin: 0 0 22px;
  font: 600 11px/1.2 var(--cc-mono);
  letter-spacing: .12em;
  text-transform: uppercase;
}
body.page-cocores .cc-hero-v2__identity span:first-child { color: rgb(255 255 255 / 72%); }
body.page-cocores .cc-hero-v2__identity span:last-child {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--cc-accent-on-dark);
}
body.page-cocores .cc-hero-v2__identity span:last-child::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}
body.page-cocores .cc-hero-v2 h1 {
  max-width: 11.4ch;
  margin: 0;
  color: #fff;
  font: 400 clamp(64px, 6.1vw, 98px)/.91 var(--cc-serif);
  letter-spacing: -.057em;
}
body.page-cocores .cc-hero-v2 h1 span { display: block; white-space: nowrap; }
body.page-cocores .cc-hero-v2__lead {
  max-width: 48ch;
  margin: 22px 0 0;
  color: rgb(255 255 255 / 84%);
  font: 400 clamp(16px, 1.15vw, 19px)/1.52 var(--cc-sans);
}
body.page-cocores .cc-hero-v2__axis,
body.page-cocores .cc-hero-v2__actions { display: none; }

/* Scale tension */
body.page-cocores .cc-tension {
  padding: clamp(70px, 8vw, 126px) 0;
  border-block: 1px solid var(--cc-line);
  background: #fffdf8;
}
body.page-cocores .cc-tension__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .72fr);
  gap: clamp(54px, 8vw, 134px);
  align-items: end;
}
body.page-cocores .cc-tension__number span {
  display: block;
  color: #697169;
  font: 600 11px/1.35 var(--cc-mono);
  letter-spacing: .1em;
  text-transform: uppercase;
}
body.page-cocores .cc-tension__number strong {
  display: block;
  margin-top: 14px;
  color: var(--cc-accent);
  font: 400 clamp(6.5rem, 14vw, 13rem)/.76 var(--cc-serif);
  letter-spacing: -.075em;
}
body.page-cocores .cc-tension__number em {
  display: block;
  margin-top: 22px;
  font: normal 400 clamp(1.9rem, 3vw, 3.4rem)/1 var(--cc-serif);
  letter-spacing: -.04em;
}
body.page-cocores .cc-tension__counter {
  padding-top: 24px;
  border-top: 1px solid var(--cc-line);
}
body.page-cocores .cc-tension__counter p {
  max-width: 18ch;
  margin: 0;
  font: 400 clamp(2.35rem, 4vw, 4.5rem)/1.03 var(--cc-serif);
  letter-spacing: -.045em;
}
body.page-cocores .donor-evidence-line,
body.page-cocores .donor-atlas-read { font-size: max(11px, .72rem); }


/* Signature: the sole project interaction. */
body.page-cocores .cc-signature {
  padding: clamp(66px, 6.5vw, 96px) 0 clamp(72px, 7vw, 104px);
  background: var(--cc-deeper);
  color: #f5f2e9;
}
body.page-cocores .cc-signature .cc-kicker { color: var(--cc-accent-on-dark); }
body.page-cocores .cc-signature__head { margin-bottom: clamp(30px, 3.5vw, 48px); }
body.page-cocores .cc-signature__head h2 {
  max-width: 13ch;
  margin: 0;
  font: 400 clamp(3.5rem, 5.2vw, 5.8rem)/.92 var(--cc-serif);
  letter-spacing: -.052em;
}
body.page-cocores .cc-signature__field {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(360px, .75fr);
  min-height: 540px;
  overflow: hidden;
  border-block: 1px solid rgb(255 255 255 / 17%);
}
body.page-cocores .cc-signature__image {
  position: relative;
  min-height: 540px;
  margin: 0;
  overflow: hidden;
  background: #284337;
}
body.page-cocores .cc-signature__image img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.72) contrast(1.05) brightness(.84);
}
body.page-cocores [data-cc-state="grow"] .cc-signature__image img { object-position: 44% 50%; }
body.page-cocores [data-cc-state="care"] .cc-signature__image img { object-position: 50% 46%; }
body.page-cocores [data-cc-state="harvest"] .cc-signature__image img { object-position: 55% 38%; }
body.page-cocores [data-cc-state="sell"] .cc-signature__image img { object-position: 60% 52%; }
body.page-cocores .cc-signature__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 44%, rgb(8 29 19 / 28%));
  pointer-events: none;
}
body.page-cocores .cc-signature__interface {
  min-width: 0;
  display: flex;
  flex-direction: column;
  background: #143625;
}
body.page-cocores .cc-signature__tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid rgb(255 255 255 / 16%);
}
body.page-cocores .cc-signature__tab {
  min-width: 0;
  min-height: 64px;
  padding: 12px 9px;
  border: 0;
  border-right: 1px solid rgb(255 255 255 / 13%);
  background: transparent;
  color: rgb(245 242 233 / 60%);
  cursor: pointer;
  text-align: center;
}
body.page-cocores .cc-signature__tab:last-child { border-right: 0; }
body.page-cocores .cc-signature__tab:hover { color: #fff; }
body.page-cocores .cc-signature__tab:focus-visible {
  outline: 2px solid var(--cc-accent-on-dark);
  outline-offset: -3px;
}
body.page-cocores .cc-signature__tab.is-active {
  color: #fff;
  background: color-mix(in srgb, var(--cc-accent) 17%, transparent);
  box-shadow: inset 0 -3px 0 var(--cc-accent-on-dark);
}
body.page-cocores .cc-signature__icon {
  display: block;
  width: 20px;
  height: 20px;
  margin: 0 auto 6px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
}
body.page-cocores .cc-signature__tab span {
  display: block;
  overflow: hidden;
  font: 500 13px/1.1 var(--cc-sans);
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.page-cocores .cc-signature__panel {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(30px, 4vw, 50px);
}
body.page-cocores .cc-signature__panel h3 {
  max-width: 12ch;
  margin: 0;
  font: 400 clamp(2.65rem, 4vw, 4.35rem)/.95 var(--cc-serif);
  letter-spacing: -.05em;
}
body.page-cocores .cc-signature__question {
  margin-top: 30px;
  padding-top: 18px;
  border-top: 1px solid rgb(255 255 255 / 18%);
}
body.page-cocores .cc-signature__question span {
  display: block;
  color: var(--cc-accent-on-dark);
  font: 600 11px/1.3 var(--cc-mono);
  letter-spacing: .09em;
  text-transform: uppercase;
}
body.page-cocores .cc-signature__question p {
  max-width: 31ch;
  margin: 8px 0 0;
  color: #fff;
  font: 400 16px/1.48 var(--cc-sans);
}

/* Documentary grounding */
body.page-cocores .cc-phase {
  padding: clamp(92px, 10vw, 154px) 0;
  background: var(--cc-sand);
}
body.page-cocores .cc-phase__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(52px, 8vw, 132px);
  align-items: center;
}
body.page-cocores .cc-phase__media { margin: 0; }
body.page-cocores .cc-phase__media img {
  display: block;
  width: 100%;
  height: clamp(470px, 53vw, 700px);
  object-fit: cover;
  object-position: 52% 50%;
  filter: saturate(.82) contrast(1.04);
}
body.page-cocores .cc-phase__copy h2 {
  max-width: 13ch;
  margin: 0;
  font: 400 clamp(3rem, 4vw, 4.8rem)/.94 var(--cc-serif);
  letter-spacing: -.052em;
}
body.page-cocores .cc-phase__copy > p {
  max-width: 38ch;
  margin: 24px 0 0;
  color: #555f57;
  font: 400 16px/1.62 var(--cc-sans);
}
body.page-cocores .cc-phase__facts {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 22px;
  align-items: end;
  margin-top: 42px;
  padding-top: 20px;
  border-top: 1px solid rgb(23 33 25 / 22%);
}
body.page-cocores .cc-phase__facts strong {
  font: 400 clamp(3rem, 5vw, 5.2rem)/1 var(--cc-serif);
  letter-spacing: -.05em;
}
body.page-cocores .cc-phase__facts span {
  max-width: 20ch;
  color: #575e57;
  font: 400 14px/1.4 var(--cc-sans);
}

/* Shared investment + allocation, project-authored surfaces. */

body.page-cocores .r42-investment .r42-title,
body.page-cocores .r42-allocation .r42-title { font-family: var(--cc-serif); }
body.page-cocores .r42-investment__detail,
body.page-cocores .r42-allocation__note { font-size: 13px; }
body.page-cocores .r42-allocation { background: #f5f1e8; }

/* Diligence boundary */
body.page-cocores .cc-before {
  padding: clamp(74px, 7vw, 110px) 0;
  border-bottom: 1px solid var(--cc-line);
  background: #fffdf8;
}
body.page-cocores .cc-before__grid {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1fr);
  gap: clamp(54px, 8vw, 130px);
  align-items: start;
}
body.page-cocores .cc-before h2 {
  max-width: 12ch;
  margin: 0;
  font: 400 clamp(3rem, 4.7vw, 5.4rem)/.97 var(--cc-serif);
  letter-spacing: -.045em;
}
body.page-cocores .cc-before__body {
  padding-top: 26px;
  border-top: 1px solid var(--cc-line);
}
body.page-cocores .cc-before__body p {
  max-width: 46ch;
  margin: 0;
  color: #565f58;
  font: 400 16px/1.65 var(--cc-sans);
}

/* Partner is a thin institutional line, not another chapter. */
body.page-cocores .cc-partner {
  padding: 0 0 clamp(68px, 7vw, 102px);
  background: #f5f1e8;
}
body.page-cocores .cc-partner__line {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 28px;
  align-items: baseline;
  padding-top: 20px;
  border-top: 1px solid var(--cc-line);
}
body.page-cocores .cc-partner__line span {
  color: #676e68;
  font: 600 11px/1.3 var(--cc-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
body.page-cocores .cc-partner__line strong {
  font: 400 1.5rem/1.2 var(--cc-serif);
}

/* Decision */
body.page-cocores .cc-close {
  padding: clamp(86px, 9vw, 138px) 0;
  background: var(--cc-ink);
  color: #f7f4eb;
}
body.page-cocores .cc-close__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .35fr);
  gap: clamp(54px, 8vw, 128px);
  align-items: end;
}
body.page-cocores .cc-close .funding-status {
  color: var(--cc-accent-on-dark);
  font: 600 11px/1.3 var(--cc-mono);
  letter-spacing: .09em;
  text-transform: uppercase;
}
body.page-cocores .cc-close h2 {
  max-width: 11ch;
  margin: 16px 0 0;
  font: 400 clamp(4rem, 6.4vw, 7.2rem)/.91 var(--cc-serif);
  letter-spacing: -.055em;
}
body.page-cocores .cc-close__action {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}
body.page-cocores .cc-close__action .btn.primary {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: 20px;
  border: 1px solid #fff;
  border-radius: 999px;
  background: #fff;
  color: #101a12;
  box-shadow: none;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}
body.page-cocores .cc-close__action small {
  color: rgb(247 244 235 / 58%);
  font: 500 11px/1.4 var(--cc-mono);
}

@media (max-width: 1024px) {
  body.page-cocores .cc-signature__field { grid-template-columns: minmax(0, 1.08fr) minmax(350px, .92fr); }
  body.page-cocores .cc-phase__grid { gap: 56px; }
}

@media (max-width: 760px) {
  body.page-cocores .cc-hero-v2 {
    height: calc(100svh - var(--cv-nav-height) - 58px);
    min-height: 620px;
  }
  body.page-cocores .cc-hero-v2__media img { object-position: 70% 50%; }
  body.page-cocores .cc-hero-v2__veil {
    background:
      linear-gradient(180deg, rgb(4 10 7 / 12%) 0%, rgb(4 10 7 / 18%) 34%, rgb(4 10 7 / 86%) 68%, rgb(4 10 7 / 96%) 100%),
      linear-gradient(90deg, rgb(4 10 7 / 20%), transparent 72%);
  }
  body.page-cocores .cc-hero-v2__inner {
    align-items: flex-end;
    padding-block: 72px 54px;
  }
  body.page-cocores .cc-hero-v2__copy { width: 100%; }
  body.page-cocores .cc-hero-v2__identity { margin-bottom: 14px; font-size: 11px; }
  body.page-cocores .cc-hero-v2 h1 {
    max-width: 100%;
    font-size: clamp(41px, 11.5vw, 52px);
    line-height: .94;
    letter-spacing: -.05em;
  }
  body.page-cocores .cc-hero-v2__lead { max-width: 38ch; margin-top: 17px; font-size: 16px; }

  body.page-cocores .cc-tension { padding-block: 66px; }
  body.page-cocores .cc-tension__grid { grid-template-columns: 1fr; gap: 44px; }
  body.page-cocores .cc-tension__number strong { font-size: clamp(6.5rem, 34vw, 9rem); }
  body.page-cocores .cc-tension__counter p { font-size: clamp(2.45rem, 10.8vw, 3.7rem); }

  body.page-cocores .cc-signature { padding-block: 58px 64px; }
  body.page-cocores .cc-signature__head { margin-bottom: 28px; }
  body.page-cocores .cc-signature__head h2 { max-width: 10ch; font-size: clamp(3rem, 12.8vw, 4.1rem); }
  body.page-cocores .cc-signature__field { grid-template-columns: 1fr; min-height: 0; border-bottom: 0; }
  body.page-cocores .cc-signature__image { min-height: 280px; height: 40svh; max-height: 360px; }
  body.page-cocores .cc-signature__interface { border-bottom: 1px solid rgb(255 255 255 / 17%); }
  body.page-cocores .cc-signature__tab { min-height: 64px; padding-inline: 6px; }
  body.page-cocores .cc-signature__icon { width: 18px; height: 18px; margin-bottom: 5px; }
  body.page-cocores .cc-signature__tab span { font-size: 12px; }
  body.page-cocores .cc-signature__panel { min-height: 235px; padding: 28px 22px 32px; justify-content: flex-start; }
  body.page-cocores .cc-signature__panel h3 { max-width: 11ch; font-size: clamp(2.55rem, 10.8vw, 3.55rem); }
  body.page-cocores .cc-signature__question { margin-top: 24px; padding-top: 15px; }
  body.page-cocores .cc-signature__question p { font-size: 15px; }

  body.page-cocores .cc-phase { padding-block: 78px; }
  body.page-cocores .cc-phase__grid { grid-template-columns: 1fr; gap: 42px; }
  body.page-cocores .cc-phase__media img { height: auto; aspect-ratio: 4 / 3; max-height: none; }
  body.page-cocores .cc-phase__copy h2 { max-width: 100%; font-size: clamp(2.6rem, 10.8vw, 4rem); }
  body.page-cocores .cc-phase__copy > p { margin-top: 20px; font-size: 15px; }
  body.page-cocores .cc-phase__facts { margin-top: 34px; }

  body.page-cocores .cc-before { padding-block: 66px; }
  body.page-cocores .cc-before__grid { grid-template-columns: 1fr; gap: 34px; }
  body.page-cocores .cc-before h2 { font-size: clamp(2.8rem, 11.7vw, 4.1rem); }
  body.page-cocores .cc-before__body { padding-top: 20px; }
  body.page-cocores .cc-before__body p { font-size: 15px; }

  body.page-cocores .cc-partner__line { grid-template-columns: 1fr; gap: 7px; }
  body.page-cocores .cc-close__grid { grid-template-columns: 1fr; gap: 42px; }
  body.page-cocores .cc-close h2 { max-width: 10ch; font-size: clamp(3.45rem, 13.5vw, 5rem); }
}

@media (max-width: 360px) {
  body.page-cocores .cc-hero-v2 { min-height: 590px; }
  body.page-cocores .cc-hero-v2 h1 { font-size: 39px; }
  body.page-cocores .cc-signature__tab span { font-size: 11px; }
  body.page-cocores .cc-signature__panel { min-height: 220px; }
  body.page-cocores .cc-phase__facts { grid-template-columns: 1fr; gap: 6px; }
}

@media (prefers-reduced-motion: reduce) {
  body.page-cocores .cc-signature__tab,
  body.page-cocores .cc-signature__image img,
  body.page-cocores .cc-close__action .btn.primary { transition: none !important; }
}

/* R42 exemplar red-team corrections: tablet DTP, evidence legibility, project-accent action. */
body.page-cocores .donor-evidence-line__label,
body.page-cocores .donor-atlas-read__label {
  font-size: 11px !important;
}
body.page-cocores .cc-phase__copy h2 { max-width: 16ch; }
body.page-cocores .cc-close__action .btn.primary {
  border-color: var(--cc-accent) !important;
  background: var(--cc-accent) !important;
  color: #fff !important;
}
body.page-cocores .cc-close__action .btn.primary:is(:hover,:focus-visible) {
  border-color: color-mix(in srgb, var(--cc-accent) 84%, black) !important;
  background: color-mix(in srgb, var(--cc-accent) 84%, black) !important;
  color: #fff !important;
}
@media (min-width: 761px) and (max-width: 900px) {
  body.page-cocores .cc-phase__grid { grid-template-columns: 1fr; }
  body.page-cocores .cc-phase__media img { height: min(62vw, 610px); }
  body.page-cocores .cc-phase__copy h2 { max-width: 15ch; }
  body.page-cocores .r42-allocation__grid { grid-template-columns: 1fr; }
}

/* R42.6 Response 4 — Coconut Coast individuality recovery.
   Project-local only: Insights bridge, governed Coconut atlas, consequential
   signature stress test, delivery art and category-coded allocation. */
body.page-cocores {
  --cc-allocation-environment: #35684f;
  --cc-allocation-livelihood: #b36a37;
  --cc-allocation-education: #60788a;
  --cc-allocation-health: #a7534b;
  --cc-atlas-paper: #eee7d9;
  --cc-atlas-ink: #173026;
  --cc-atlas-peer: #8d9b7f;
}

/* Context now resolves into Cultivera's own analysis before the project asks
   the visitor to interpret a crop plate. */
body.page-cocores .cc-context-bridge {
  width: min(1180px, calc(100% - 48px));
  margin: clamp(44px, 5vw, 72px) auto 0;
  min-height: 76px;
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  padding: 18px 0;
  border-block: 1px solid var(--cc-line);
  color: inherit;
  text-decoration: none;
}
body.page-cocores .cc-context-bridge > span {
  color: var(--cc-accent);
  font: 600 11px/1.3 var(--cc-mono);
  letter-spacing: .1em;
  text-transform: uppercase;
}
body.page-cocores .cc-context-bridge strong {
  max-width: 31ch;
  font: 400 clamp(1.5rem, 2.1vw, 2.2rem)/1.08 var(--cc-serif);
  letter-spacing: -.025em;
}
body.page-cocores .cc-context-bridge em {
  color: #4e5b52;
  font: normal 560 12px/1.35 var(--cc-sans);
  transition: color 180ms ease, transform 180ms ease;
}
body.page-cocores .cc-context-bridge:is(:hover,:focus-visible) em {
  color: var(--cc-accent);
  transform: translateX(3px);
}
body.page-cocores .cc-tension .donor-evidence-line {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
}

/* Atlas plate: an editorial reading of governed Coconut data, not a mini tool. */
body.page-cocores .cc-atlas {
  padding: clamp(82px, 9vw, 140px) 0;
  background: var(--cc-atlas-paper);
  color: var(--cc-atlas-ink);
  border-bottom: 1px solid rgb(23 48 38 / 14%);
}
body.page-cocores .cc-atlas__grid {
  display: grid;
  grid-template-columns: minmax(320px, .78fr) minmax(460px, 1.22fr);
  gap: clamp(54px, 8vw, 124px);
  align-items: center;
}
body.page-cocores .cc-atlas__story h2 {
  max-width: 12ch;
  margin: 0;
  color: var(--cc-atlas-ink);
  font: 400 clamp(3.3rem, 5.1vw, 5.9rem)/.94 var(--cc-serif);
  letter-spacing: -.052em;
}
body.page-cocores .cc-atlas__lead {
  max-width: 45ch;
  margin: 26px 0 0;
  color: #44574c;
  font: 400 16px/1.62 var(--cc-sans);
}
body.page-cocores .cc-atlas__lead strong { color: var(--cc-atlas-ink); font-weight: 620; }
body.page-cocores .cc-atlas__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: 40px;
  border-block: 1px solid rgb(23 48 38 / 18%);
}
body.page-cocores .cc-atlas__stats article {
  min-width: 0;
  padding: 20px 18px 21px 0;
  border-right: 1px solid rgb(23 48 38 / 15%);
}
body.page-cocores .cc-atlas__stats article + article { padding-left: 18px; }
body.page-cocores .cc-atlas__stats article:last-child { border-right: 0; }
body.page-cocores .cc-atlas__stats span,
body.page-cocores .cc-atlas__stats small {
  display: block;
  color: #5d6a62;
  font: 560 11px/1.35 var(--cc-mono);
  letter-spacing: .045em;
}
body.page-cocores .cc-atlas__stats strong {
  display: block;
  margin: 9px 0 8px;
  color: var(--cc-accent);
  font: 400 clamp(1.9rem, 3vw, 3rem)/.96 var(--cc-serif);
  letter-spacing: -.035em;
}
body.page-cocores .cc-atlas__boundary {
  max-width: 48ch;
  margin: 28px 0 0;
  color: #5d6a61;
  font: 400 13px/1.55 var(--cc-sans);
}
body.page-cocores .cc-atlas__links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  margin-top: 28px;
}
body.page-cocores .cc-atlas__links a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--cc-atlas-ink);
  border-bottom: 1px solid rgb(23 48 38 / 34%);
  font: 590 12px/1.25 var(--cc-sans);
  text-decoration: none;
}
body.page-cocores .cc-atlas__links a span { color: var(--cc-accent); }
body.page-cocores .cc-atlas__links a:is(:hover,:focus-visible) { border-color: var(--cc-accent); }
body.page-cocores .cc-atlas__plate { min-width: 0; margin: 0; }
body.page-cocores .cc-atlas__mapwrap {
  position: relative;
  overflow: hidden;
  min-height: 610px;
  display: grid;
  place-items: center;
  padding: clamp(26px, 4vw, 48px);
  border: 1px solid rgb(23 48 38 / 16%);
  background:
    radial-gradient(circle at 76% 18%, rgb(255 255 255 / 38%), transparent 24%),
    linear-gradient(145deg, rgb(255 255 255 / 28%), transparent 62%);
}
body.page-cocores .cc-atlas__map {
  display: block;
  width: min(100%, 570px);
  height: auto;
  overflow: visible;
}
body.page-cocores .cc-atlas__district {
  fill: #d3ccbd;
  stroke: #f6f1e7;
  stroke-width: 1.05;
  vector-effect: non-scaling-stroke;
  transition: fill 520ms var(--cv-ease-move), opacity 520ms ease;
}
body.page-cocores .cc-atlas__district.is-peer { fill: var(--cc-atlas-peer); }
body.page-cocores .cc-atlas__district.is-focus { fill: var(--cc-accent); }
body.page-cocores .cc-atlas__pin {
  fill: #fff8ee;
  stroke: var(--cc-accent);
  stroke-width: 3;
  vector-effect: non-scaling-stroke;
}
body.page-cocores .cc-atlas__pulse {
  fill: none;
  stroke: var(--cc-accent);
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
  opacity: 0;
}
body.page-cocores .cc-atlas.is-visible .cc-atlas__pulse {
  animation: ccAtlasPulse 900ms var(--cv-ease-move) 1 both;
}
body.page-cocores .cc-atlas__map-label {
  position: absolute;
  left: 29%;
  top: 70%;
  display: grid;
  gap: 3px;
  padding: 9px 12px;
  border-left: 3px solid var(--cc-accent);
  background: rgb(238 231 217 / 94%);
  box-shadow: 0 10px 28px rgb(25 48 38 / 10%);
  pointer-events: none;
}
body.page-cocores .cc-atlas__map-label strong {
  font: 650 12px/1.2 var(--cc-sans);
}
body.page-cocores .cc-atlas__map-label span {
  color: #5d6a61;
  font: 560 11px/1.25 var(--cc-mono);
}
body.page-cocores .cc-atlas__plate figcaption {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  margin-top: 14px;
  color: #5c6a61;
  font: 560 11px/1.3 var(--cc-mono);
}
body.page-cocores .cc-atlas__plate figcaption span { display: inline-flex; align-items: center; gap: 7px; }
body.page-cocores .cc-atlas__legend-swatch { width: 9px; height: 9px; display: inline-block; }
body.page-cocores .cc-atlas__legend-swatch--focus { background: var(--cc-accent); }
body.page-cocores .cc-atlas__legend-swatch--peer { background: var(--cc-atlas-peer); }
body.page-cocores .cc-atlas__source {
  display: block;
  margin-top: 10px;
  color: #5c6660;
  font: 500 11px/1.45 var(--cc-mono);
}
@keyframes ccAtlasPulse {
  0% { opacity: 0; transform: scale(.55); transform-origin: 234.5px 548.9px; }
  28% { opacity: .58; }
  100% { opacity: 0; transform: scale(1.8); transform-origin: 234.5px 548.9px; }
}

/* Restore the consequential second dimension of Grow · Care · Harvest · Sell. */
body.page-cocores .cc-signature__stress {
  min-height: 48px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 26px;
  padding: 13px 0;
  border: 0;
  border-top: 1px solid rgb(255 255 255 / 18%);
  border-bottom: 1px solid rgb(255 255 255 / 18%);
  background: transparent;
  color: #f5f2e9;
  cursor: pointer;
  font: 560 13px/1.25 var(--cc-sans);
  text-align: left;
}
body.page-cocores .cc-signature__stress span:last-child {
  color: var(--cc-accent-on-dark);
  font: 400 24px/1 var(--cc-serif);
  transition: transform 220ms ease;
}
body.page-cocores [data-cc-stress="true"] .cc-signature__stress span:last-child { transform: rotate(45deg); }
body.page-cocores .cc-signature__stress:focus-visible { outline: 2px solid var(--cc-accent-on-dark); outline-offset: 4px; }
body.page-cocores .cc-signature__consequence {
  margin-top: 18px;
  padding: 18px 19px 20px;
  border-left: 3px solid var(--cc-accent-on-dark);
  background: rgb(255 255 255 / 7%);
  animation: ccConsequenceIn 220ms ease both;
}
body.page-cocores .cc-signature__consequence > span {
  display: block;
  color: var(--cc-accent-on-dark);
  font: 600 11px/1.3 var(--cc-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
body.page-cocores .cc-signature__consequence p {
  max-width: 34ch;
  margin: 9px 0 0;
  color: rgb(255 255 255 / 86%);
  font: 400 14px/1.5 var(--cc-sans);
}
body.page-cocores .cc-signature__image img.cc-is-switching {
  animation: ccSignatureImage 220ms ease both;
}
@keyframes ccConsequenceIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
@keyframes ccSignatureImage { from { opacity: .35; transform: scale(1.015); } to { opacity: 1; transform: scale(1); } }

/* Delivery is one authored field rather than a generic component skin. */












/* Allocation is category-coded only inside this project. Category meaning is
   duplicated by text and percentages, so colour is never the sole signal. */
body.page-cocores .r42-allocation {
  background: #fbf8f1;
  border-top: 1px solid rgb(23 48 38 / 12%);
}
body.page-cocores .cc-allocation__row { --cc-category: var(--cc-accent); }
body.page-cocores .cc-allocation__row--environment { --cc-category: var(--cc-allocation-environment); }
body.page-cocores .cc-allocation__row--livelihood { --cc-category: var(--cc-allocation-livelihood); }
body.page-cocores .cc-allocation__row--education { --cc-category: var(--cc-allocation-education); }
body.page-cocores .cc-allocation__row--health { --cc-category: var(--cc-allocation-health); }
body.page-cocores .cc-allocation__row .r42-allocation__label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
body.page-cocores .cc-allocation__row .r42-allocation__label::before {
  content: "";
  flex: 0 0 9px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--cc-category);
}
body.page-cocores .cc-allocation__row .r42-allocation__value { color: var(--cc-category); }
body.page-cocores .cc-allocation__row .r42-allocation__fill {
  background: var(--cc-category);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--cc-category) 22%, transparent);
}
body.page-cocores .cc-allocation__row .r42-allocation__track { height: 5px; border-radius: 99px; }
body.page-cocores .cc-allocation__row .r42-allocation__fill { border-radius: inherit; }



@media (max-width: 900px) {
  body.page-cocores .cc-atlas__grid { grid-template-columns: 1fr; gap: 48px; }
  body.page-cocores .cc-atlas__story h2 { max-width: 13ch; }
  body.page-cocores .cc-atlas__mapwrap { min-height: 560px; }
}

@media (max-width: 760px) {
  body.page-cocores .cc-context-bridge,
  body.page-cocores .cc-tension .donor-evidence-line {
    width: min(100% - 32px, 1180px);
  }
  body.page-cocores .cc-context-bridge {
    grid-template-columns: 1fr;
    gap: 8px;
    padding-block: 18px 20px;
  }
  body.page-cocores .cc-context-bridge strong { max-width: 17ch; font-size: clamp(1.75rem, 8vw, 2.35rem); }
  body.page-cocores .cc-context-bridge em { margin-top: 3px; }

  body.page-cocores .cc-atlas { padding-block: 70px; }
  body.page-cocores .cc-atlas__grid { gap: 38px; }
  body.page-cocores .cc-atlas__story h2 { max-width: 10.5ch; font-size: clamp(3rem, 12.6vw, 4.2rem); }
  body.page-cocores .cc-atlas__lead { font-size: 15px; }
  body.page-cocores .cc-atlas__stats { grid-template-columns: 1fr; margin-top: 30px; }
  body.page-cocores .cc-atlas__stats article,
  body.page-cocores .cc-atlas__stats article + article {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 5px 18px;
    align-items: baseline;
    padding: 15px 0;
    border-right: 0;
    border-bottom: 1px solid rgb(23 48 38 / 14%);
  }
  body.page-cocores .cc-atlas__stats article:last-child { border-bottom: 0; }
  body.page-cocores .cc-atlas__stats strong { grid-row: 1 / span 2; grid-column: 2; margin: 0; font-size: 2.15rem; }
  body.page-cocores .cc-atlas__stats small { grid-column: 1; }
  body.page-cocores .cc-atlas__links { display: grid; gap: 5px; }
  body.page-cocores .cc-atlas__links a { width: fit-content; }
  body.page-cocores .cc-atlas__mapwrap { min-height: 0; padding: 22px 14px 18px; }
  body.page-cocores .cc-atlas__map { width: min(100%, 440px); }
  body.page-cocores .cc-atlas__map-label { left: 25%; top: 69%; padding: 7px 9px; }
  body.page-cocores .cc-atlas__plate figcaption { display: grid; gap: 6px; }

  body.page-cocores .cc-signature__panel { min-height: 305px; }
  body.page-cocores .cc-signature__stress { margin-top: 22px; }
  body.page-cocores .cc-signature__consequence { padding: 16px 16px 18px; }



  body.page-cocores .cc-allocation__row .r42-allocation__track { height: 6px; }
}

@media (prefers-reduced-motion: reduce) {
  body.page-cocores .cc-context-bridge em,
  body.page-cocores .cc-atlas__district,
  body.page-cocores .cc-signature__stress span:last-child { transition: none !important; }
  body.page-cocores .cc-atlas.is-visible .cc-atlas__pulse,
  body.page-cocores .cc-signature__consequence,
  body.page-cocores .cc-signature__image img.cc-is-switching { animation: none !important; }
  body.page-cocores .cc-atlas__pulse { display: none; }
}

/* R42.6 focused mobile DTP/tap correction. */
body.page-cocores .donor-evidence-line__links a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
@media (max-width:760px) {
  body.page-cocores .cc-atlas__story h2 {
    max-width: 12.8ch;
    font-size: clamp(2.7rem, 11vw, 3.8rem);
  }
}
body.page-cocores .cc-signature__stress span:first-child { font-size: 13px !important; }

/* ---- from cocores-human-review-r1.css ---- */

@media (min-width:901px){
  body.page-cocores .cc-atlas__story h2{
    font-size:clamp(3.3rem,5vw,5rem);
  }
}
/* Coconut Coast · Desktop Human Review R1 · 2026-09-07
   Scope: first-phase outputs and pre-start readiness only. No cards. */

@media (min-width:901px){















  .page-cocores .cc-before{
    padding-block:clamp(78px,7vw,104px);
  }
  .page-cocores .cc-before__grid{
    grid-template-columns:minmax(320px,.72fr) minmax(520px,1.28fr);
    gap:clamp(64px,8vw,126px);
  }
  .page-cocores .cc-before h2{
    max-width:10.5ch;
  }
  .page-cocores .cc-before__body{
    padding-top:0;
    border-top:0;
  }
  .page-cocores .cc-before__checks{
    border-top:1px solid var(--cc-line);
  }
  .page-cocores .cc-before__checks article{
    display:grid;
    grid-template-columns:180px minmax(0,1fr);
    gap:28px;
    align-items:start;
    padding:20px 0 21px;
    border:0;
    border-bottom:1px solid var(--cc-line);
    background:transparent;
  }
  .page-cocores .cc-before__checks article span{
    color:var(--cc-accent);
    font:600 10px/1.4 var(--cc-mono);
    letter-spacing:.075em;
    text-transform:uppercase;
  }
  .page-cocores .cc-before__checks article p{
    max-width:45ch;
    margin:0;
    color:#4e5b52;
    font:400 14px/1.55 var(--cc-sans);
  }
}

@media (max-width:900px){


  .page-cocores .cc-before__checks article{
    padding-block:18px;
    border-bottom:1px solid var(--cc-line);
  }
}

/* Coconut Coast source convergence · 2026-09-14
   Final presentation and the no-JS reading path are CSS-authored. */
body.page-cocores .cc-allocation__row .r42-allocation__fill{display:block}

/* Before enhancement, turn the four existing tab controls into a static editorial
   reading sequence. JS adds .is-enhanced and restores the frozen interaction. */
body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__field{
  grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);
}
body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__interface{
  display:block;
  padding:clamp(26px,3.4vw,44px);
}
body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__tabs{
  display:grid;
  grid-template-columns:1fr;
  border:0;
}
body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__tab{
  min-height:0;
  padding:18px 0 20px;
  border:0;
  border-top:1px solid rgb(255 255 255 / 16%);
  background:transparent!important;
  box-shadow:none!important;
  color:#fff;
  cursor:default;
  pointer-events:none;
  text-align:left;
}
body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__tab:last-child{
  border-bottom:1px solid rgb(255 255 255 / 16%);
}
body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__tab svg{display:none}
body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__tab span{
  color:var(--cc-accent-on-dark);
  font:600 11px/1.3 var(--cc-mono);
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__tab::after{
  display:block;
  margin-top:7px;
  max-width:48ch;
  white-space:pre-line;
  color:rgb(255 255 255 / 86%);
  font:400 14px/1.52 var(--cc-sans);
}
body.page-cocores .cc-signature:not(.is-enhanced) #cc-tab-grow::after{
  content:"The next tree has to start well.\A Planting material, site fit and early care.\A If this does not work, the first phase cannot establish a repeatable replacement pathway for ageing or damaged trees.";
}
body.page-cocores .cc-signature:not(.is-enhanced) #cc-tab-care::after{
  content:"Trees already standing need attention too.\A Pest pressure, nutrition, safe access and grower care.\A If this does not work, new planting may proceed, but the first phase cannot show whether existing trees can recover and remain productive.";
}
body.page-cocores .cc-signature:not(.is-enhanced) #cc-tab-harvest::after{
  content:"Fruit high in the canopy still has to come down safely.\A Safe access at a cost the system can support.\A If this does not work, buyer interest can still be discussed, but repeatable handover at a known safety and service cost cannot be established.";
}
body.page-cocores .cc-signature:not(.is-enhanced) #cc-tab-sell::after{
  content:"A commercial harvest needs a buyer.\A Who buys, and on what terms?\A If this does not work, physical harvesting can still be tested, but the first phase cannot establish a viable buyer route or commercial terms.";
}
body.page-cocores .cc-signature:not(.is-enhanced) #cc-panel{display:none}

@media(max-width:760px){
  body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__field{grid-template-columns:1fr}
  body.page-cocores .cc-signature:not(.is-enhanced) .cc-signature__interface{padding:20px 20px 26px}
}

body.page-cocores .cc-signature__tab:not(.is-active){
  color:rgba(245,242,233,.8)!important;
}

/* ---- from cocores-r42.css (its 2 @import line(s) replaced by the imported files above, in import order) ---- */
/* Coconut Coast · authored CSS entrypoint · source convergence 2026-09-14 */
/* R43 headline measure: major headlines stay within three lines. */
@media(min-width:1000px){#cc-atlas-title{font-size:min(4.3rem,4.9vw)!important}}
@media(min-width:1441px){#cc-phase-title{font-size:4.4rem!important}#cc-before-title{font-size:5.25rem!important}}

/* POST-AWARD FINISH: measured local composition and headline wraps. */
body.page-cocores .cc-before h2{max-width:18ch}
@media(min-width:761px){body.page-cocores .cc-before__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,5vw,72px)}}
@media(min-width:761px) and (max-width:980px){body.page-cocores .cc-before__grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:32px}}

/* POST-AWARD PROSE FINISH: measured local headline measures and state titles. */
#close-title{max-width:none!important;}
@media (max-width:980px){#close-title{max-width:none!important;width:calc(100% + 24px)!important;margin-left:-12px!important;}}
#cc-investment-title{max-width:none!important;}

@media (min-width:981px){#cc-allocation-title{max-width:none!important;width:calc(100% + 32px)!important;margin-left:-16px!important;letter-spacing:-.06em!important;}}
@media (min-width:981px){#cc-investment-title{letter-spacing:-.06em!important;}}

/* ==== assets/project-navigation-r48.css ==== */
/* Cultivera project rail · Release 1 (r48)
   Authoritative sticky project navigation.
   Replaces r42, r45 and convergence-r1.
   Conforms to: AUTHORITY.md, REPOSITORY_GOVERNANCE.md, CULTIVERA_QA_CODING_LESSONS.md
*/

/* -------------------------------------------------------------
   Scroll Margin & Anchored Headings Safety
   ------------------------------------------------------------- */
:is([data-project-section], [data-project-chapter], .project-main > section, main[data-project-main] > section, .bc60-section, .r43-hero + section, section[id]) {
  scroll-margin-top: calc(var(--global-nav-height, 58px) + 60px);
}

@media (max-width: 760px) {
  :is([data-project-section], [data-project-chapter], .project-main > section, main[data-project-main] > section, .bc60-section, .r43-hero + section, section[id]) {
    scroll-margin-top: 64px;
  }
}

/* -------------------------------------------------------------
   Sticky Rail Shell & Base Geometry
   ------------------------------------------------------------- */
.r48-project-nav,
.r48-project-sheet,
.r48-project-nav__next-wrap {
  /* Secondary nav text: the project's muted colour pulled toward its ink, so it keeps 4.5:1 on
     every project's paper (some projects' muted greys sit just under it). */
  --r48-muted: color-mix(in srgb, var(--cv-project-muted, #56645a) 70%, var(--cv-project-ink, #152219));
  /* Accent text in the step cards and end pager, pulled slightly toward the ink for the same reason. */
  --r48-accent: color-mix(in srgb, var(--cv-project-accent, #2d5a3f) 78%, var(--cv-project-ink, #152219));
  /* Selected text also sits on compounded accent tints; keep the graphic accent intact. */
  --r48-accent-text: color-mix(in srgb, var(--cv-project-accent, #2d5a3f) 50%, var(--cv-project-ink, #152219));
}

.r48-project-nav {
  position: sticky;
  top: var(--global-nav-height, var(--nav-height, 56px));
  z-index: 80;
  border-bottom: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 16%, transparent);
  background: color-mix(in srgb, var(--cv-project-paper, #f7f5f0) 97%, white 3%);
  backdrop-filter: blur(14px) saturate(1.02);
  -webkit-backdrop-filter: blur(14px) saturate(1.02);
  transition: top .32s var(--cv-shell-ease, var(--cv-ease-enter)),
              transform .32s var(--cv-shell-ease, var(--cv-ease-enter)),
              background-color .24s ease;
  font-family: var(--cv-project-font-sans, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
  color: var(--cv-project-ink, #152219);
}

/* Global nav scroll-reveal coordination */
html.cv-global-nav-hidden .r48-project-nav {
  top: 0;
}

.r48-project-nav__bar {
  width: min(1280px, calc(100vw - 32px));
  min-height: 52px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  position: relative;
}

/* -------------------------------------------------------------
   Left Section: Back to Field Systems + Project Switcher Trigger
   ------------------------------------------------------------- */
.r48-project-nav__left {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex: 0 0 auto;
  min-width: 0;
}

.r48-project-nav__portfolio {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 14px 0 0;
  border-right: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 14%, transparent);
  color: var(--r48-muted);
  font: 650 11px/1 var(--cv-project-font-mono, "JetBrains Mono", monospace);
  letter-spacing: .055em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: color .18s ease;
}

.r48-project-nav__portfolio span[aria-hidden="true"] {
  color: var(--cv-project-accent, #2d5a3f);
  font-size: 13px;
  line-height: 1;
}

.r48-project-nav__portfolio:is(:hover, :focus-visible) {
  color: var(--cv-project-ink, #152219);
}

.r48-project-nav__switcher-trigger {
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  border: 0;
  padding: 6px 8px;
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  color: var(--cv-project-ink, #152219);
  font: 680 13px/1.2 var(--cv-project-font-sans, Inter, sans-serif);
  text-align: left;
  border-radius: 4px;
  transition: background-color .16s ease, color .16s ease;
  white-space: nowrap;
}

.r48-project-nav__switcher-trigger:is(:hover, :focus-visible) {
  background-color: color-mix(in srgb, var(--cv-project-ink, #152219) 6%, transparent);
}

.r48-project-nav__switcher-trigger .r48-chevron {
  font-size: 10px;
  color: var(--r48-muted);
  transition: transform .2s ease;
  line-height: 1;
}

.r48-project-nav.is-switcher-open .r48-project-nav__switcher-trigger .r48-chevron {
  transform: rotate(180deg);
}

/* Chapters folded into More, and More itself when empty, are hidden with the attribute. */
.r48-project-nav :is(li, a)[hidden] {
  display: none !important;
}

/* -------------------------------------------------------------
   Previous / Next Project Steps
   Two steps beside the switcher move through the project order without returning to
   Field Systems. Hover or keyboard focus shows where a step goes: status, place, one line.
   ------------------------------------------------------------- */
.r48-project-nav__pager {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding-left: 10px;
  border-left: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 14%, transparent);
}

.r48-project-nav__step {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 4px;
  color: var(--r48-muted);
  text-decoration: none;
  transition: background-color .16s ease, color .16s ease;
}

.r48-project-nav__step-arrow {
  font-size: 14px;
  line-height: 1;
}

.r48-project-nav__step:is(:hover, :focus-visible) {
  background-color: color-mix(in srgb, var(--cv-project-ink, #152219) 6%, transparent);
  color: var(--cv-project-ink, #152219);
}

.r48-project-nav__step:focus-visible {
  outline: 2px solid var(--cv-project-accent, #2d5a3f);
  outline-offset: 2px;
}

.r48-step-card {
  position: absolute;
  top: calc(100% + 12px);
  left: 50%;
  z-index: 5;
  width: min(300px, calc(100vw - 24px));
  box-sizing: border-box;
  display: grid;
  gap: 6px;
  padding: 14px 16px 15px;
  border: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 14%, transparent);
  border-radius: 6px;
  background: var(--cv-project-paper, #f7f5f0);
  box-shadow: 0 16px 36px -20px rgba(21, 34, 25, .5);
  color: var(--cv-project-ink, #152219);
  text-align: left;
  white-space: normal;
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, -4px);
  transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s;
  pointer-events: none;
}

.r48-project-nav__step:focus-visible .r48-step-card {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
  transition: opacity .16s ease, transform .16s ease, visibility 0s;
}

@media (hover: hover) {
  .r48-project-nav__step:hover .r48-step-card {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
    transition: opacity .16s ease .08s, transform .16s ease .08s, visibility 0s linear .08s;
  }
}

.r48-project-nav.is-switcher-open .r48-step-card {
  display: none;
}

.r48-step-card__dir {
  color: var(--r48-muted);
  font: 600 10px/1.2 var(--cv-project-font-mono, "JetBrains Mono", monospace);
  letter-spacing: .06em;
  text-transform: uppercase;
}

.r48-step-card__title {
  font: 650 15px/1.2 var(--cv-project-font-sans, Inter, sans-serif);
}

.r48-step-card__meta {
  color: var(--r48-accent);
  font: 560 11.5px/1.35 var(--cv-project-font-sans, Inter, sans-serif);
}

.r48-step-card__line {
  color: color-mix(in srgb, var(--cv-project-ink, #152219) 82%, transparent);
  font: 400 12.5px/1.45 var(--cv-project-font-sans, Inter, sans-serif);
}

/* -------------------------------------------------------------
   Center Section (Desktop ≥1100px): Key Chapters + More Dropdown
   ------------------------------------------------------------- */
.r48-project-nav__center {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex: 1 1 auto;
  min-width: 0;
}

.r48-project-nav__chapters {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.r48-project-nav__chapter-link {
  position: relative;
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  color: var(--r48-muted);
  font: 560 12px/1 var(--cv-project-font-sans, Inter, sans-serif);
  text-decoration: none;
  white-space: nowrap;
  transition: color .18s ease;
}

.r48-project-nav__chapter-link::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 0;
  height: 2px;
  background: var(--cv-project-accent, #2d5a3f);
  opacity: 0;
  transform: scaleX(.4);
  transform-origin: center;
  transition: opacity .18s ease, transform .2s ease;
}

.r48-project-nav__chapter-link:is(:hover, :focus-visible) {
  color: var(--cv-project-ink, #152219);
}

.r48-project-nav__chapter-link[aria-current="location"] {
  color: var(--cv-project-ink, #152219);
  font-weight: 680;
}

.r48-project-nav__chapter-link[aria-current="location"]::after {
  opacity: 1;
  transform: scaleX(1);
}

/* More Chapters Dropdown */
.r48-project-nav__more {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.r48-project-nav__more-trigger {
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  border: 0;
  min-height: 52px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  color: var(--r48-muted);
  font: 560 12px/1 var(--cv-project-font-sans, Inter, sans-serif);
  position: relative;
  transition: color .18s ease;
}

.r48-project-nav__more-trigger::after {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 0;
  height: 2px;
  background: var(--cv-project-accent, #2d5a3f);
  opacity: 0;
  transform: scaleX(.4);
  transition: opacity .18s ease, transform .2s ease;
}

.r48-project-nav__more-trigger:is(:hover, :focus-visible) {
  color: var(--cv-project-ink, #152219);
}

.r48-project-nav__more-trigger.is-active,
.r48-project-nav__more-trigger[aria-current="location"] {
  color: var(--cv-project-ink, #152219);
  font-weight: 680;
}

.r48-project-nav__more-trigger.is-active::after,
.r48-project-nav__more-trigger[aria-current="location"]::after {
  opacity: 1;
  transform: scaleX(1);
}

.r48-project-nav__more-trigger .r48-chevron {
  font-size: 10px;
  transition: transform .2s ease;
}

.r48-project-nav.is-more-open .r48-project-nav__more-trigger .r48-chevron {
  transform: rotate(180deg);
}

.r48-project-nav__more-panel {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  min-width: 220px;
  padding: 8px 0;
  background: var(--cv-project-paper, #f7f5f0);
  border: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 16%, transparent);
  border-radius: 6px;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .12);
  z-index: 100;
  display: flex;
  flex-direction: column;
}

.r48-project-nav__more-panel[hidden] {
  display: none;
}

.r48-project-nav__more-panel a {
  padding: 9px 16px;
  color: var(--cv-project-ink, #152219);
  font: 520 13px/1.3 var(--cv-project-font-sans, Inter, sans-serif);
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  transition: background-color .15s ease, color .15s ease;
}

.r48-project-nav__more-panel a:is(:hover, :focus-visible) {
  background-color: color-mix(in srgb, var(--cv-project-ink, #152219) 6%, transparent);
}

.r48-project-nav__more-panel a[aria-current="location"] {
  color: var(--r48-accent-text);
  font-weight: 680;
  background-color: color-mix(in srgb, var(--cv-project-accent, #2d5a3f) 8%, transparent);
}

.r48-project-nav__chapter-idx {
  color: var(--r48-muted);
  font: 600 10.5px/1 var(--cv-project-font-mono, monospace);
  letter-spacing: .04em;
}

/* -------------------------------------------------------------
   Compact / Phone Current Chapter Control (≤1099px)
   ------------------------------------------------------------- */
.r48-project-nav__compact-ctrl {
  display: none;
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  border: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 16%, transparent);
  border-radius: 4px;
  padding: 6px 10px;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  color: var(--cv-project-ink, #152219);
  font: 600 12px/1 var(--cv-project-font-mono, "JetBrains Mono", monospace);
  white-space: nowrap;
  transition: background-color .16s ease, border-color .16s ease;
}

.r48-project-nav__compact-ctrl:is(:hover, :focus-visible) {
  background-color: color-mix(in srgb, var(--cv-project-ink, #152219) 6%, transparent);
}

.r48-project-nav__compact-ctrl .r48-chevron {
  font-size: 10px;
  color: var(--r48-muted);
}

/* Compact Dropdown Panel (761px–1099px) */
.r48-project-nav__compact-panel {
  position: absolute;
  top: 100%;
  right: 0;
  width: min(340px, calc(100vw - 32px));
  padding: 10px 0;
  background: var(--cv-project-paper, #f7f5f0);
  border: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 16%, transparent);
  border-radius: 6px;
  box-shadow: 0 14px 30px rgba(0, 0, 0, .14);
  z-index: 100;
  display: flex;
  flex-direction: column;
}

.r48-project-nav__compact-panel[hidden] {
  display: none;
}

.r48-project-nav__compact-panel a {
  padding: 10px 18px;
  color: var(--cv-project-ink, #152219);
  font: 520 13px/1.3 var(--cv-project-font-sans, Inter, sans-serif);
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  transition: background-color .15s ease;
}

.r48-project-nav__compact-panel a:is(:hover, :focus-visible) {
  background-color: color-mix(in srgb, var(--cv-project-ink, #152219) 6%, transparent);
}

.r48-project-nav__compact-panel a[aria-current="location"] {
  color: var(--r48-accent-text);
  font-weight: 680;
  background-color: color-mix(in srgb, var(--cv-project-accent, #2d5a3f) 8%, transparent);
}

/* -------------------------------------------------------------
   Right Section: Rail Action CTA
   ------------------------------------------------------------- */
.r48-project-nav__right {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

.r48-project-nav__action,
a.r48-project-nav__action {
  min-height: 34px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--cv-project-ink, #152219);
  color: var(--cv-project-paper, #f7f5f0);
  border: 1px solid var(--cv-project-ink, #152219);
  border-radius: 4px;
  font: 600 11.5px/1 var(--cv-project-font-mono, "JetBrains Mono", monospace);
  letter-spacing: .04em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}

.r48-project-nav__action:is(:hover, :focus-visible) {
  background: var(--cv-project-accent, #2d5a3f);
  border-color: var(--cv-project-accent, #2d5a3f);
  color: #fff;
}

/* -------------------------------------------------------------
   Desktop Switcher Dropdown Panel (≥761px)
   ------------------------------------------------------------- */
.r48-project-nav__switcher-panel {
  position: absolute;
  top: 100%;
  left: 0;
  width: min(480px, calc(100vw - 32px));
  max-height: min(75vh, 600px);
  overflow-y: auto;
  padding: 16px;
  background: var(--cv-project-paper, #f7f5f0);
  border: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 16%, transparent);
  border-radius: 6px;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .14);
  z-index: 100;
}

.r48-project-nav__switcher-panel[hidden] {
  display: none;
}

.r48-switcher-group {
  margin-bottom: 18px;
}

.r48-switcher-group:last-child {
  margin-bottom: 0;
}

.r48-switcher-group__title {
  color: var(--r48-muted);
  font: 700 10.5px/1 var(--cv-project-font-mono, monospace);
  letter-spacing: .08em;
  text-transform: uppercase;
  padding-bottom: 6px;
  border-bottom: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 12%, transparent);
  margin: 0 0 8px 0;
}

.r48-switcher-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.r48-switcher-item {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 4px;
  padding: 8px 10px;
  border-radius: 4px;
  text-decoration: none;
  color: var(--cv-project-ink, #152219);
  border-left: 3px solid transparent;
  transition: background-color .15s ease, border-left-color .15s ease;
  box-sizing: border-box;
}

.r48-switcher-item:is(:hover, :focus-visible) {
  background-color: color-mix(in srgb, var(--cv-project-ink, #152219) 6%, transparent);
}

.r48-switcher-item:focus-visible {
  outline: 2px solid var(--cv-project-accent, #2d5a3f);
  outline-offset: -2px;
}

.r48-switcher-item[aria-current="page"] {
  background-color: color-mix(in srgb, var(--cv-project-accent, #2d5a3f) 14%, transparent);
  border-left-color: var(--cv-project-accent, #2d5a3f);
}

.r48-switcher-item[aria-current="page"] .r48-switcher-item__title {
  font-weight: 700;
  color: var(--cv-project-ink, #152219);
}

.r48-switcher-item__header {
  display: flex;
  align-items: baseline;
  gap: 6px 8px;
  flex-wrap: wrap;
  width: 100%;
}

.r48-switcher-item__title {
  font: 600 13px/1.3 var(--cv-project-font-sans, Inter, sans-serif);
  color: var(--cv-project-ink, #152219);
  flex: 0 1 auto;
  min-width: 0;
  overflow-wrap: break-word;
}

.r48-switcher-item__current {
  display: inline-flex;
  align-items: center;
  padding: 1px 5px;
  border-radius: 3px;
  background: color-mix(in srgb, var(--cv-project-accent, #2d5a3f) 18%, transparent);
  color: var(--r48-accent-text);
  font: 700 10px/1.2 var(--cv-project-font-mono, monospace);
  letter-spacing: .06em;
  text-transform: uppercase;
  flex-shrink: 0;
  vertical-align: middle;
}

.r48-switcher-item__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 4px 8px;
  width: 100%;
  color: var(--r48-muted);
  font: 550 11px/1.35 var(--cv-project-font-mono, monospace);
  white-space: normal;
}

.r48-switcher-item__geo {
  flex: 0 1 auto;
  min-width: 0;
  overflow-wrap: break-word;
}

.r48-switcher-item__status {
  padding: 2px 6px;
  border-radius: 3px;
  background-color: color-mix(in srgb, var(--cv-project-ink, #152219) 8%, transparent);
  color: var(--cv-project-ink, #152219);
  font: 600 10px/1.2 var(--cv-project-font-mono, monospace);
  white-space: nowrap;
  flex-shrink: 0;
}

.r48-switcher-item[aria-current="page"] .r48-switcher-item__status {
  background-color: color-mix(in srgb, var(--cv-project-accent, #2d5a3f) 18%, transparent);
  color: var(--cv-project-ink, #152219);
}

/* -------------------------------------------------------------
   Phone Modal Bottom Sheet (≤760px)
   ------------------------------------------------------------- */
.r48-project-sheet-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(14, 20, 16, .6);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 998;
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease;
}

.r48-project-sheet-backdrop.is-active {
  opacity: 1;
  pointer-events: auto;
}

.r48-project-sheet-backdrop[hidden] {
  display: none !important;
}

.r48-project-sheet {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  max-height: 82vh;
  background: var(--cv-project-paper, #f7f5f0);
  border-top: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 18%, transparent);
  border-top-left-radius: 14px;
  border-top-right-radius: 14px;
  box-shadow: 0 -12px 36px rgba(0, 0, 0, .22);
  z-index: 999;
  display: flex;
  flex-direction: column;
  transform: translateY(100%);
  transition: transform .28s var(--cv-shell-ease, var(--cv-ease-enter));
}

.r48-project-sheet[hidden] {
  display: none !important;
}

.r48-project-sheet.is-open {
  transform: translateY(0);
}

.r48-project-sheet__head {
  padding: 14px 18px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 12%, transparent);
}

.r48-project-sheet__tabs {
  display: flex;
  gap: 14px;
  role: tablist;
}

.r48-project-sheet__tab {
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  border: 0;
  padding: 6px 2px;
  position: relative;
  font: 680 13px/1.2 var(--cv-project-font-sans, Inter, sans-serif);
  color: var(--r48-muted);
  cursor: pointer;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

.r48-project-sheet__tab[aria-selected="true"] {
  color: var(--cv-project-ink, #152219);
}

.r48-project-sheet__tab[aria-selected="true"]::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -11px;
  height: 2px;
  background: var(--cv-project-accent, #2d5a3f);
}

.r48-project-sheet__close {
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  border: 0;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--cv-project-ink, #152219);
  font-size: 18px;
  line-height: 1;
  border-radius: 50%;
  transition: background-color .15s ease;
}

.r48-project-sheet__close:is(:hover, :focus-visible) {
  background-color: color-mix(in srgb, var(--cv-project-ink, #152219) 8%, transparent);
}

.r48-project-sheet__body {
  padding: 16px 18px 24px;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.r48-project-sheet__panel[hidden] {
  display: none;
}

/* Sheet On This Page tab */
.r48-sheet-chapter-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.r48-sheet-chapter-list a {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 10%, transparent);
  color: var(--cv-project-ink, #152219);
  text-decoration: none;
  font: 540 14px/1.3 var(--cv-project-font-sans, Inter, sans-serif);
  padding: 4px 6px;
}

.r48-sheet-chapter-list a[aria-current="location"] {
  color: var(--r48-accent-text);
  font-weight: 680;
}

.r48-sheet-action-wrap {
  margin-top: 18px;
  padding-top: 12px;
}

.r48-sheet-action-wrap .r48-project-nav__action {
  width: 100%;
  min-height: 44px;
  font-size: 12.5px;
}

/* Sheet Projects Tab (≤760px) */
.r48-project-sheet .r48-switcher-list {
  gap: 4px;
}

.r48-project-sheet .r48-switcher-item {
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 5px;
  min-height: 52px;
  padding: 10px 12px;
  border-radius: 6px;
  box-sizing: border-box;
}

.r48-project-sheet .r48-switcher-item__header {
  display: flex;
  align-items: baseline;
  gap: 6px 8px;
  flex-wrap: wrap;
  width: 100%;
}

.r48-project-sheet .r48-switcher-item__title {
  font: 600 13.5px/1.3 var(--cv-project-font-sans, Inter, sans-serif);
  color: var(--cv-project-ink, #152219);
  flex: 0 1 auto;
  min-width: 0;
  overflow-wrap: break-word;
}

.r48-project-sheet .r48-switcher-item__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 4px 8px;
  width: 100%;
  color: var(--r48-muted);
  font: 550 11px/1.35 var(--cv-project-font-mono, monospace);
  white-space: normal;
}

.r48-project-sheet .r48-switcher-item__geo {
  flex: 0 1 auto;
  min-width: 0;
  overflow-wrap: break-word;
}

.r48-project-sheet .r48-switcher-item__status {
  flex-shrink: 0;
}

/* -------------------------------------------------------------
   End-of-page Next Project Text Link (§4)
   ------------------------------------------------------------- */
.r48-project-nav__next-wrap {
  width: min(1280px, calc(100vw - 32px));
  margin: 44px auto 32px;
  padding: 24px 0 8px;
  border-top: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 14%, transparent);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px clamp(28px, 6vw, 96px);
}

.r48-project-nav__next-link {
  display: grid;
  align-content: start;
  gap: 7px;
  max-width: 46ch;
  padding: 4px 0;
  color: var(--r48-muted);
  font: 400 13px/1.45 var(--cv-project-font-sans, Inter, sans-serif);
  text-decoration: none;
  transition: color .18s ease;
}

.r48-project-nav__next-link--next {
  justify-self: end;
  text-align: right;
}

.r48-end-step__dir {
  font: 600 11px/1.2 var(--cv-project-font-mono, "JetBrains Mono", monospace);
  letter-spacing: .05em;
  text-transform: uppercase;
}

.r48-project-nav__next-link strong {
  color: var(--cv-project-ink, #152219);
  font: 650 17px/1.2 var(--cv-project-font-sans, Inter, sans-serif);
}

.r48-end-step__meta {
  color: var(--r48-accent);
  font-weight: 560;
  font-size: 12px;
}

.r48-end-step__line {
  color: color-mix(in srgb, var(--cv-project-ink, #152219) 78%, transparent);
}

.r48-project-nav__next-link:is(:hover, :focus-visible) strong {
  color: var(--cv-project-accent, #2d5a3f);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.r48-project-nav__next-link:focus-visible {
  outline: 2px solid var(--cv-project-accent, #2d5a3f);
  outline-offset: 4px;
  border-radius: 2px;
}

/* -------------------------------------------------------------
   No-JS Fallback Baseline (§6)
   ------------------------------------------------------------- */
.project-subnav-noscript {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px 18px !important;
  width: 100% !important;
  padding: 12px 18px !important;
  box-sizing: border-box !important;
  background: var(--cv-project-paper, #f7f5f0) !important;
  border-bottom: 1px solid color-mix(in srgb, var(--cv-project-ink, #152219) 14%, transparent) !important;
  font: 600 12px/1 var(--cv-project-font-mono, monospace) !important;
}

.project-subnav-noscript a {
  color: var(--cv-project-accent, #2d5a3f) !important;
  text-decoration: underline !important;
}

.project-subnav-noscript span {
  color: var(--r48-muted) !important;
}

/* Retire old floating shuttle & index remnants */
[data-r42-project-shuttle],
.r42-project-shuttle,
.r42-project-index {
  display: none !important;
}

/* -------------------------------------------------------------
   Responsive Breakpoints: 761px–1099px (Compact)
   ------------------------------------------------------------- */
@media (max-width: 1099px) {
  .r48-project-nav__center {
    display: none;
  }

  .r48-project-nav__compact-ctrl {
    display: inline-flex;
  }

  .r48-project-nav__switcher-trigger .r48-switcher-full-title {
    display: none;
  }

  .r48-project-nav__switcher-trigger .r48-switcher-short-title {
    display: inline;
  }

  /* Long project or chapter names truncate instead of pushing the chapter control past the bar. */
  .r48-project-nav__left {
    flex: 0 1 auto;
  }

  .r48-project-nav__portfolio,
  .r48-project-nav__pager,
  .r48-project-nav__bar .r48-chevron {
    flex: none;
  }

  .r48-project-nav__switcher-trigger,
  .r48-project-nav__compact-ctrl {
    flex: 0 1 auto;
    min-width: 0;
  }

  .r48-project-nav__switcher-trigger .r48-switcher-short-title,
  .r48-compact-label {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

@media (min-width: 1100px) {
  .r48-project-nav__switcher-trigger .r48-switcher-full-title {
    display: inline;
  }

  .r48-project-nav__switcher-trigger .r48-switcher-short-title {
    display: none;
  }
}

/* -------------------------------------------------------------
   Responsive Breakpoints: ≤760px (Phone)
   ------------------------------------------------------------- */
@media (max-width: 760px) {
  .r48-project-nav {
    min-height: 48px;
    top: 0;
  }

  /* Rail yields when global nav reveals: slides away */
  html:not(.cv-global-nav-hidden) .r48-project-nav:not(:focus-within):not(.is-sheet-open):not(.is-open) {
    transform: translateY(-100%);
    pointer-events: none;
  }

  html.cv-global-nav-hidden .r48-project-nav {
    transform: translateY(0);
    pointer-events: auto;
  }

  .r48-project-nav__bar {
    width: calc(100vw - 20px);
    min-height: 48px;
    gap: 8px;
  }

  .r48-project-nav__portfolio {
    min-height: 48px;
    padding-right: 8px;
    font-size: 10px;
    letter-spacing: .04em;
  }

  .r48-project-nav__portfolio span[aria-hidden="true"] {
    font-size: 12px;
  }

  .r48-project-nav__switcher-trigger {
    min-height: 44px;
    padding: 0 4px;
    font-size: 11.5px;
  }

  .r48-project-nav__compact-ctrl {
    min-height: 44px;
    padding: 0 8px;
    font-size: 11px;
  }

  .r48-project-nav__pager {
    display: none;
  }

  .r48-project-nav__next-wrap {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    margin-top: 32px;
  }

  .r48-project-nav__next-link--next {
    justify-self: start;
    text-align: left;
  }

  .r48-project-nav__right {
    display: none; /* Action moves into bottom sheet on phone */
  }

  /* Desktop dropdowns disabled on phone, bottom sheet used instead */
  .r48-project-nav__switcher-panel,
  .r48-project-nav__compact-panel {
    display: none !important;
  }
}

/* Responsive evaluator speedrun for fine-pointer / hover-capable devices below 760px */
@media (max-width: 760px) and (hover: hover) and (pointer: fine) {
  /* The pager takes the room the label needs; the arrow and aria-label still name the link. */
  .r48-project-nav__portfolio span:not([aria-hidden="true"]) {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }

  .r48-project-nav__pager {
    display: inline-flex;
    padding-left: 6px;
    gap: 2px;
  }

  .r48-project-nav__step {
    width: 28px;
    height: 28px;
  }

  .r48-project-nav__step-arrow {
    font-size: 13px;
  }

  .r48-step-card {
    width: min(280px, calc(100vw - 24px));
    padding: 12px 14px 13px;
  }

  .r48-project-nav__step--prev .r48-step-card {
    left: 50%;
    transform: translate(calc(-50% - 12px), -4px);
  }

  .r48-project-nav__step--prev:focus-visible .r48-step-card,
  .r48-project-nav__step--prev:hover .r48-step-card {
    transform: translate(calc(-50% - 12px), 0);
  }

  .r48-project-nav__step--next .r48-step-card {
    left: 50%;
    transform: translate(calc(-50% - 36px), -4px);
  }

  .r48-project-nav__step--next:focus-visible .r48-step-card,
  .r48-project-nav__step--next:hover .r48-step-card {
    transform: translate(calc(-50% - 36px), 0);
  }
}

@media (max-width: 359px) {
  .r48-project-nav__bar {
    width: calc(100vw - 12px);
  }

  .r48-project-nav__portfolio {
    padding-right: 6px;
    font-size: 10px;
  }

  .r48-project-nav__switcher-trigger {
    font-size: 10.5px;
  }

  .r48-project-nav__compact-ctrl {
    font-size: 10px;
    padding: 0 6px;
  }
}

/* -------------------------------------------------------------
   Reduced Motion
   ------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .r48-project-nav,
  .r48-project-sheet,
  .r48-project-sheet-backdrop,
  .r48-project-nav__chapter-link::after,
  .r48-project-nav__more-trigger::after,
  .r48-project-nav__step,
  .r48-step-card,
  .r48-chevron {
    transition: none !important;
  }
}

/* Valid list wrappers preserve the existing anchor-owned row geometry. */
.r48-sheet-chapter-list > li,
.r48-switcher-list > li { list-style: none; margin: 0; padding: 0; }

/* Shared navigation art pass · 17 October 2026.
   Mirrored in the seven folded project sheets; typography remains owned by PR #323. */
.r48-project-nav__switcher-trigger[aria-expanded="true"],
.r48-project-nav__compact-ctrl[aria-expanded="true"],
.r48-project-nav__more-trigger[aria-expanded="true"]{background:color-mix(in srgb,var(--cv-project-ink,#152219) 8%,transparent);box-shadow:inset 0 -2px var(--r48-accent)}
.r48-project-nav :is(a,button):focus-visible{outline:2px solid var(--r48-accent);outline-offset:3px}
.r48-project-nav :is(.r48-project-nav__switcher-panel,.r48-project-nav__more-panel,.r48-project-nav__compact-panel){box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.r48-project-nav__switcher-panel{padding:12px}
.r48-switcher-group{margin-bottom:24px}
.r48-switcher-group__title{position:sticky;top:0;z-index:1;padding:10px 8px;background:var(--cv-project-paper,#f7f5f0)}
.r48-switcher-list{gap:4px}
.r48-switcher-item{gap:7px;padding:12px}
.r48-switcher-item__header{align-items:flex-start;justify-content:space-between;gap:8px 12px}
.r48-switcher-item__meta{gap:6px 12px}
.r48-project-nav__action[aria-current="location"]{outline:1px solid var(--r48-accent);outline-offset:3px}
@media(min-width:1100px){
  .r48-project-nav__portfolio{padding-right:18px}
  .r48-project-nav__pager{padding-left:6px;margin-left:2px;border-left:0}
}

/* Combined review: first-phase inquiry action. */
body.page-cocores .cc-hero-v2__action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:22px;padding:12px 22px;border:1px solid #f7f5ef;border-radius:999px;background:#f7f5ef;color:#17271d;text-decoration:none;font-weight:600}
body.page-cocores .cc-hero-v2__action:is(:hover,:focus-visible){background:#fff;border-color:#fff}

/* Mobile convergence (moved from assets/cocores-mobile-convergence-r1.css, which loaded right after this sheet). */
/* Coconut Coast mobile convergence · 2026-09-19.
   Evidence legibility, map scale and interaction clarity only. */

@media (max-width:760px){
  body.page-cocores .cc-hero-v2__inner{
    padding-block:68px 70px;
  }
  body.page-cocores .cc-hero-v2__identity{
    gap:8px 14px;
    margin-bottom:16px;
    font-size:11.5px;
    line-height:1.42;
    letter-spacing:.105em;
  }
  body.page-cocores .cc-hero-v2 h1{
    margin-bottom:18px;
  }

  /* Give the nursery scale and the existing-tree tension separate visual fields. */

  body.page-cocores .cc-tension{
    padding-top:clamp(76px,18vw,104px);
  }

  body.page-cocores .donor-evidence-line{
    font-size:11.25px!important;
    line-height:1.5;
  }
  body.page-cocores .donor-evidence-line__label,
  body.page-cocores .donor-atlas-read__label{
    font-size:10.5px!important;
    line-height:1.4;
  }
  body.page-cocores .donor-evidence-line__links{
    display:grid;
    gap:4px;
    margin-top:8px;
  }
  body.page-cocores .donor-evidence-line__links a{
    min-height:42px;
    font-size:11px;
    line-height:1.45;
  }

  /* Governed crop evidence: one readable row per measure. */
  body.page-cocores .cc-atlas{
    padding-block:74px;
  }
  body.page-cocores .cc-atlas__grid{
    gap:42px;
  }
  body.page-cocores .cc-atlas__lead{
    max-width:35ch;
    font-size:15.5px;
    line-height:1.62;
  }
  body.page-cocores .cc-atlas__stats{
    margin-top:32px;
  }
  body.page-cocores .cc-atlas__stats article,
  body.page-cocores .cc-atlas__stats article + article{
    grid-template-columns:minmax(0,1fr) auto;
    gap:6px 18px;
    padding:17px 0;
  }
  body.page-cocores .cc-atlas__stats span,
  body.page-cocores .cc-atlas__stats small{
    font-size:10.75px;
    line-height:1.42;
  }
  body.page-cocores .cc-atlas__stats strong{
    justify-self:end;
    text-align:right;
    font-size:2.25rem;
  }

  body.page-cocores .cc-atlas__plate{
    width:calc(100% + 24px);
    margin-left:-12px;
  }
  body.page-cocores .cc-atlas__mapwrap{
    min-height:500px;
    padding:18px 4px 16px;
  }
  body.page-cocores .cc-atlas__map{
    width:min(112%,500px);
    max-width:none;
  }
  body.page-cocores .cc-atlas__map-label{
    font-size:10.5px;
    line-height:1.35;
  }
  body.page-cocores .cc-atlas__plate figcaption{
    display:flex;
    flex-wrap:wrap;
    gap:8px 16px;
    padding-inline:12px;
    font-size:10.5px;
    line-height:1.45;
  }
  body.page-cocores .cc-atlas__source{
    margin-top:10px;
    padding-inline:12px;
    font-size:10.5px;
    line-height:1.5;
  }

  /* Signature is the one interaction on the page: make every state legible. */
  body.page-cocores .cc-signature__tab{
    min-height:66px;
    padding-inline:7px;
  }
  body.page-cocores .cc-signature__tab span{
    font-size:12px;
    line-height:1.25;
  }
  body.page-cocores .cc-signature__panel{
    min-height:250px;
    padding:30px 22px 34px;
  }
  body.page-cocores .cc-signature__panel p,
  body.page-cocores .cc-signature__question,
  body.page-cocores .cc-signature__stress{
    font-size:13.5px;
    line-height:1.55;
  }
  body.page-cocores .cc-signature__question{
    margin-top:26px;
    padding-top:17px;
  }
}

/* Project identity (moved from project-identity-20261013.css; loaded last there). */
body[data-project-id="cocores-bd"] .cc-close__action .btn.primary[href*="contact.html"] {
  background: var(--project-identity-control-bg) !important;
  color: var(--project-identity-control-ink) !important;
  border-color: var(--project-identity-control-line) !important;
  border-style: solid;
  border-width: 1px;
}

body[data-project-id="cocores-bd"] .cc-close__action .btn.primary[href*="contact.html"]:hover {
  background: var(--project-identity-control-hover-bg) !important;
  color: var(--project-identity-control-hover-ink) !important;
  border-color: var(--project-identity-control-line) !important;
}

body[data-project-id="cocores-bd"] .cc-close__action .btn.primary[href*="contact.html"]:focus-visible {
  outline: 2px solid var(--project-identity-focus);
  outline-offset: 4px;
}

body[data-project-id="cocores-bd"] {
  --cv-project-accent: #93412b;
  --cv-project-accent-on-dark: #e1ad94;
  --cv-project-accent-hover: #7b3724;
}

body[data-project-id="cocores-bd"] .cc-close {
  --project-identity-focus: var(--cv-project-accent-on-dark);
  --project-identity-control-bg: var(--cv-project-accent);
  --project-identity-control-ink: #fff;
  --project-identity-control-line: var(--cv-project-accent-on-dark);
  --project-identity-control-hover-bg: var(--cv-project-accent-hover);
  --project-identity-control-hover-ink: #fff;
}

body[data-project-id="cocores-bd"] .cc-close .funding-status {
  color: var(--cv-project-accent-on-dark);
}

/* Hero instrument: the planting target as a monument numeral (moved from project-hero-tools-20261028.css). */
.cc-hero-count{margin:26px 0 0;color:#f4f1e8}
.cc-hero-v2 .cc-hero-count .cc-hero-count__n{margin:0;font:400 clamp(84px,27vw,124px)/.86 "Playfair Display",Georgia,serif;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:2px #f4f1e8}
.cc-hero-v2 .cc-hero-count .cc-hero-count__l{margin:16px 0 0;font:500 12px/1.4 "JetBrains Mono",ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:rgba(244,241,232,.86)}
@media (min-width:981px){
  .cc-hero-v2 .cc-hero-count{position:absolute;z-index:3;right:clamp(36px,4vw,72px);bottom:clamp(48px,7vh,80px);margin:0;text-align:right}
  /* A soft scrim keeps the outline numeral above 3:1 where it crosses the bright fronds. */
  .cc-hero-v2 .cc-hero-count::before{content:"";position:absolute;z-index:-1;inset:-40px -50px -30px -70px;background:radial-gradient(closest-side,rgba(6,14,12,.62),rgba(6,14,12,.32) 65%,transparent);pointer-events:none}
  .cc-hero-v2 .cc-hero-count .cc-hero-count__n{font-size:clamp(120px,12vw,190px)}
}
