/* ============================================================================
   CORRIFORD BRAND LAYER v1 (10/11/2026) — one source of truth, loaded last.
   Palette: ink black, Corriford red (deep / core / bright), warm paper, neutral greys. No gold, no navy.
   Type: Cormorant Garamond (display headings) + Inter (text, UI). Wordmark is artwork (SVG).
   ========================================================================== */
:root{
  --cf-ink:#0E0E0E; --cf-ink-2:#1B1B1B; --cf-ink-3:#2A2A2A;
  --cf-red-deep:#6B0F1A; --cf-red:#A51C30; --cf-red-bright:#E60000;
  --cf-paper:#F5F3EF; --cf-line:#E2DED6; --cf-grey:#565656; --cf-grey-2:#8A8A8A; --cf-on-dark:#D9D9D9; --cf-on-dark-2:#A3A3A3;
  /* legacy institutional tokens mapped onto the brand */
  --i-ink:#0E0E0E; --i-ink2:#1B1B1B; --i-muted:#565656; --i-gold:#A51C30; --i-paper:#F5F3EF; --i-rule:#E2DED6; --i-red:#E60000;
}
/* ---------- Dark surfaces: black, white type, red accents ---------- */
html:not(#cf) .band-ink,html:not(#cf) .cf-atlas-band,html:not(#cf) .cf-passport{background:var(--cf-ink)!important;color:var(--cf-on-dark)}
html:not(#cf) .band-ink :is(p,.inst-lead),html:not(#cf) .cf-passport :is(p,.inst-lead){color:var(--cf-on-dark)}
html:not(#cf) .band-ink .inst-note{color:var(--cf-on-dark-2)}
html:not(#cf) .inst-figs{border-top-color:var(--cf-ink-3)}
html:not(#cf) .inst-fig{border-right-color:var(--cf-ink-3)}
html:not(#cf) .inst-fig span{color:var(--cf-on-dark)}
html:not(#cf) .inst-fig small{color:var(--cf-on-dark-2)}
/* ---------- Eyebrows: red on light, white with red rule on dark ---------- */
html:not(#cf) .inst .inst-eyebrow{color:var(--cf-red)!important;letter-spacing:.16em}
html:not(#cf) :is(.band-ink,.cf-atlas-band,.cf-passport,.inst-hero) .inst-eyebrow{color:#fff!important;display:inline-flex;align-items:center;gap:12px}
html:not(#cf) :is(.band-ink,.cf-atlas-band,.cf-passport,.inst-hero) .inst-eyebrow::before{content:"";width:28px;height:2px;background:var(--cf-red-bright);flex:none}
html:not(#cf) .inst-status a{color:#fff!important;text-decoration-color:var(--cf-red-bright)!important}
html:not(#cf) .inst-link{text-decoration-color:var(--cf-red)}
html:not(#cf) .inst a:focus-visible,html:not(#cf) .inst button:focus-visible{outline-color:var(--cf-red-bright)!important}
/* ---------- Hero video: black-steel scrim instead of navy ---------- */
html:not(#cf) .cf-photo-hero{background:var(--cf-ink)!important}
html:not(#cf) .cf-photo-hero .cf-hero-video{background:var(--cf-ink)}
html:not(#cf) .cf-photo-hero[data-cf-video]::before{background:linear-gradient(90deg,rgba(12,13,15,.86) 0%,rgba(12,13,15,.58) 44%,rgba(12,13,15,.10) 80%),linear-gradient(0deg,rgba(12,13,15,.6),rgba(12,13,15,0) 36%)!important}
@media (max-width:760px){html:not(#cf) .cf-photo-hero[data-cf-video]::before{background:linear-gradient(0deg,rgba(12,13,15,.9) 0%,rgba(12,13,15,.62) 55%,rgba(12,13,15,.28) 100%)!important}}
html:not(#cf) .cf-photo-hero .cf-slogan{color:#fff!important;letter-spacing:.28em}
/* ---------- Section rhythm: light / paper / black ---------- */
html:not(#cf) #vietnam{background:var(--cf-paper)!important;color:var(--cf-ink)}
html:not(#cf) #vietnam :is(h2,.inst-fig b){color:var(--cf-ink)!important}
html:not(#cf) #vietnam :is(p,.inst-lead,.inst-fig span){color:#3D3D3D!important}
html:not(#cf) #vietnam .inst-fig small,html:not(#cf) #vietnam .inst-note{color:var(--cf-grey)!important}
html:not(#cf) #vietnam .inst-eyebrow{color:var(--cf-red)!important;display:block}
html:not(#cf) #vietnam .inst-eyebrow::before{content:none}
html:not(#cf) #vietnam .inst-figs{border-top:2px solid var(--cf-ink)}
html:not(#cf) #vietnam .inst-fig{border-right-color:var(--cf-line)}
html:not(#cf) #insights{background:#fff!important}
html:not(#cf) .biz-band{background:var(--cf-paper)!important}
/* ---------- Trust strip ---------- */
.cf-trust{background:#fff;border-bottom:1px solid var(--cf-line)}
.cf-trust ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}
.cf-trust li{padding:22px 22px 22px 0;margin-right:22px;border-right:1px solid var(--cf-line);font-size:14px;line-height:1.5;color:var(--cf-grey)}
.cf-trust li:last-child{border-right:0;margin-right:0}
.cf-trust b{display:block;color:var(--cf-ink);font-size:15px;margin-bottom:4px}
.cf-trust b::before{content:"";display:inline-block;width:8px;height:8px;background:var(--cf-red);margin-right:8px;transform:translateY(-1px)}
@media (max-width:860px){.cf-trust ul{grid-template-columns:1fr 1fr}.cf-trust li:nth-child(2){border-right:0;margin-right:0}.cf-trust li{border-bottom:1px solid var(--cf-line)}}
@media (max-width:520px){.cf-trust ul{grid-template-columns:1fr}.cf-trust li{border-right:0;margin-right:0;padding:16px 0}}
/* ---------- Project Passport feature (black) ---------- */
.cf-passport{padding:96px 0;position:relative}
.cf-passport::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--cf-red),var(--cf-red-bright))}
.cf-passport-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(36px,6vw,88px);align-items:start}
html:not(#cf) .inst .cf-passport h2{color:#fff;font-size:clamp(40px,5vw,64px);line-height:1.02;margin:0}
.cf-passport .inst-lead{margin-top:20px;max-width:56ch}
.cf-pp-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--cf-ink-3);border-left:1px solid var(--cf-ink-3)}
.cf-pp-facts div{padding:24px 22px;border-right:1px solid var(--cf-ink-3);border-bottom:1px solid var(--cf-ink-3)}
.cf-pp-facts b{display:block;font-family:var(--i-serif);font-weight:600;font-size:clamp(28px,3vw,38px);line-height:1.05;color:#fff}
.cf-pp-facts span{display:block;margin-top:8px;color:var(--cf-on-dark);font-size:14px;line-height:1.45}
.cf-pp-more{margin-top:18px;font-size:14px;color:var(--cf-on-dark-2)}
.cf-pp-more a{color:#fff;text-decoration:underline;text-decoration-color:var(--cf-red-bright);text-underline-offset:4px}
@media (max-width:860px){.cf-passport{padding:64px 0}.cf-passport-grid{grid-template-columns:1fr}}
@media (max-width:420px){.cf-pp-facts{grid-template-columns:1fr}}
/* ---------- Typography: one serif, one sans ---------- */
html:not(#cf) .cf-ceo-quote p{font-family:var(--i-serif)!important;font-size:clamp(22px,2vw,27px);font-weight:500}
/* ---------- Footer: black, reversed logo ---------- */
html:not(#cf) body footer.mfx-foot{background:var(--cf-ink)!important;color:var(--cf-on-dark)!important;border-top:4px solid var(--cf-red)!important}
html:not(#cf) body footer.mfx-foot :is(p,span,li){color:var(--cf-on-dark)!important}
html:not(#cf) body footer.mfx-foot h4{color:#fff!important;letter-spacing:.14em;text-transform:uppercase;font-size:12px!important}
html:not(#cf) body footer.mfx-foot a{color:var(--cf-on-dark)!important;text-decoration:none}
html:not(#cf) body footer.mfx-foot a:hover{color:#fff!important;text-decoration:underline;text-decoration-color:var(--cf-red-bright)}
html:not(#cf) body footer.mfx-foot .mfx-legal{border-top:1px solid var(--cf-ink-3)!important;color:var(--cf-on-dark-2)!important}
html:not(#cf) body footer.mfx-foot .mfx-legal *{color:var(--cf-on-dark-2)!important}
.cf-foot-logo{display:block;margin:0 0 18px}
.cf-foot-logo img{display:block;width:min(260px,70vw);height:auto}
/* ---------- fixes after first review ---------- */
html:not(#cf) body main #vietnam .inst-eyebrow:not(#x){color:var(--cf-red)!important}
html:not(#cf) .biz-pf-tag{color:#fff!important;display:inline-flex;align-items:center;gap:10px}
html:not(#cf) .biz-pf-tag::before{content:"";width:20px;height:2px;background:var(--cf-red-bright)}
html:not(#cf) body .cf-trust{padding:6px 0!important}
html:not(#cf) body .cf-doors-band{padding-top:24px!important}
html:not(#cf) body .mf-entity{background:var(--cf-ink)!important;color:var(--cf-on-dark-2)!important;padding:14px clamp(16px,5vw,72px)!important;border-top:1px solid var(--cf-ink-3)!important;font-size:13px!important}
html:not(#cf) body .mf-entity a{color:var(--cf-on-dark)!important}
