/* New Nordic Voices — 2026 brand system
   Cream ground · oxblood display typography · charcoal body/nav · restrained antique brass.
   Loaded last so it can harmonise the existing site without destroying production-specific layouts. */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500;1,600&family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --nnv-cream:#FBF0DB;
  --nnv-cream-soft:#FFF8F1;
  --nnv-ivory:#F2E8DE;
  --nnv-oxblood:#5B121E;
  --nnv-oxblood-deep:#43050C;
  --nnv-oxblood-soft:#6B1A28;
  --nnv-charcoal:#29292B;
  --nnv-charcoal-deep:#171719;
  --nnv-brass:#9D7A5C;
  --nnv-brass-light:#B4977C;
  --nnv-line:rgba(91,18,30,.14);
  --nnv-serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --nnv-sans:"Inter",Arial,sans-serif;

  /* The existing 2026 stylesheet already uses these NNV variables.
     Remap them too so no legacy navy/blue survives in the light identity. */
  --nnv-ivory:var(--nnv-cream);
  --nnv-parchment:#F1E5D8;
  --nnv-ink:var(--nnv-charcoal);
  --nnv-ink-soft:#4A4243;
  --nnv-bronze:var(--nnv-brass);
  --nnv-gold:var(--nnv-brass-light);
  --nnv-burgundy:var(--nnv-oxblood);
  --nnv-shadow:0 28px 76px rgba(41,41,43,.10);
  --nnv-soft-shadow:0 16px 40px rgba(41,41,43,.07);

  /* Re-map the original system variables into the new identity. */
  --ink:var(--nnv-oxblood);
  --ink-soft:#6A2632;
  --ink-deep:var(--nnv-oxblood-deep);
  --bone:var(--nnv-cream);
  --paper:var(--nnv-cream-soft);
  --stone:#DCCFC2;
  --bronze:var(--nnv-brass);
  --charcoal:var(--nnv-charcoal);
  --white:#FFFDF9;
  --line-soft:rgba(91,18,30,.09);
  --line-strong:rgba(91,18,30,.16);
  --glow-bronze:rgba(157,122,92,.15);
  --serif:var(--nnv-serif);
  --sans:var(--nnv-sans);
}

html{background:var(--nnv-cream);}
body{color:var(--nnv-charcoal);}

/* The public-facing light pages now live on the exact warm family of the logo plate. */
body.homepage-premium,
body.people-page,
body.donate-page,
body.partners-page,
body.partners-cinematic{
  background:var(--nnv-cream) !important;
  color:var(--nnv-charcoal);
}

/* Header: one current identity everywhere. */
.site-header,
.production-film-page .site-header,
.enemy-page .site-header,
.merchant-page .site-header,
.fcg-page .site-header,
.snm-page .site-header,
.focus-dossier-page .site-header,
.gothic-1934-page .site-header{
  background:rgba(251,240,219,.965) !important;
  border-bottom:1px solid rgba(91,18,30,.12) !important;
  box-shadow:0 12px 30px rgba(41,41,43,.055) !important;
  backdrop-filter:blur(15px);
}
.site-header.is-scrolled{
  background:rgba(251,240,219,.98) !important;
  border-bottom-color:rgba(91,18,30,.16) !important;
  box-shadow:0 16px 34px rgba(41,41,43,.075) !important;
}
.site-header::after{
  background:linear-gradient(90deg,transparent,rgba(157,122,92,.30) 22%,rgba(91,18,30,.22) 50%,rgba(157,122,92,.30) 78%,transparent) !important;
}
.nav-wrap{padding-top:9px !important;padding-bottom:9px !important;}
.brand{min-width:0;flex:0 0 auto;}
.brand-wordmark.brand-wordmark-nnv{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:clamp(265px,22vw,330px) !important;
  max-width:330px !important;
  margin:0 !important;
  padding:0 !important;
  line-height:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  transform:none !important;
  overflow:visible !important;
}
.brand-wordmark.brand-wordmark-nnv img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:108px !important;
  object-fit:contain !important;
  filter:none !important;
}
.nav-links a,
.nav-dropdown summary,
.lang-switch a,
.production-film-page .nav-links a,
.production-film-page .lang-switch a,
.production-film-page .nav-toggle,
.enemy-page .nav-links a,
.merchant-page .nav-links a,
.fcg-page .nav-links a,
.snm-page .nav-links a{
  color:var(--nnv-charcoal) !important;
  font-family:var(--nnv-sans) !important;
}
.nav-links a:hover,
.nav-dropdown summary:hover,
.lang-switch a:hover,
.lang-switch a.active{
  color:var(--nnv-oxblood) !important;
}
.nav-links a::after{background:var(--nnv-oxblood) !important;}
.nav-toggle{
  color:var(--nnv-charcoal) !important;
  border-color:rgba(91,18,30,.26) !important;
  background:rgba(255,248,241,.92) !important;
}
.nav-wrap.menu-open .nav-toggle{
  background:var(--nnv-oxblood) !important;
  border-color:var(--nnv-oxblood) !important;
  color:var(--nnv-cream) !important;
}
.nav-submenu{
  background:rgba(255,248,241,.985) !important;
  border-color:rgba(91,18,30,.10) !important;
}
.nav-submenu a{color:var(--nnv-charcoal) !important;}
.nav-submenu a:hover{color:var(--nnv-oxblood) !important;}

/* Logo-led typography: display serif for the voice; sans for supporting information. */
.homepage-premium h1,
.homepage-premium h2,
.homepage-premium h3,
.people-page h1,.people-page h2,.people-page h3,
.donate-page h1,.donate-page h2,.donate-page h3,
.partners-page h1,.partners-page h2,.partners-page h3,
.partners-cinematic h1,.partners-cinematic h2,.partners-cinematic h3{
  font-family:var(--nnv-serif) !important;
}
.homepage-premium .hero-copy-home h1,
.homepage-premium .section-heading h2,
.homepage-premium .prestige-band-copy h2,
.homepage-premium .feature-card h3,
.homepage-premium .work-card h3,
.homepage-premium .prestige-card strong,
.people-page h1,.people-page h2,
.donate-page h1,.donate-page h2{
  color:var(--nnv-oxblood) !important;
}
.homepage-premium p,
.homepage-premium li,
.homepage-premium .route-cities,
.homepage-premium .prestige-card p,
.people-page p,.people-page li,
.donate-page p,.donate-page li{
  color:#3F3A3B;
}
.homepage-premium p,
.people-page p,
.donate-page p,
.partners-page p{
  font-family:var(--nnv-sans);
}

/* Homepage: remove the former blue cast and let cream/oxblood do the work. */
.homepage-premium .hero-home{
  background:var(--nnv-cream) !important;
}
.homepage-premium .hero-home::after{opacity:.20 !important;}
.route-band-marquee::before{background:linear-gradient(90deg,var(--nnv-cream),rgba(251,240,219,0)) !important;}
.route-band-marquee::after{background:linear-gradient(270deg,var(--nnv-cream),rgba(251,240,219,0)) !important;}
.route-country{
  background:var(--nnv-oxblood) !important;
  color:var(--nnv-cream-soft) !important;
}
.route-band-label,
.eyebrow,
.feature-meta,
.subsection-label,
.nnv-kicker{
  color:var(--nnv-brass) !important;
}
.hero-signals span,
.hero-signals a{
  color:var(--nnv-oxblood) !important;
  border-color:rgba(91,18,30,.14) !important;
  background:rgba(255,248,241,.76) !important;
}
.button.primary{
  background:var(--nnv-oxblood) !important;
  color:var(--nnv-cream-soft) !important;
  box-shadow:0 18px 34px rgba(91,18,30,.15) !important;
}
.button.primary:hover{background:var(--nnv-oxblood-deep) !important;}
.button.secondary,.pill-button{
  color:var(--nnv-oxblood) !important;
  border-color:rgba(157,122,92,.58) !important;
  background:rgba(255,248,241,.68) !important;
}
.button.secondary:hover,.pill-button:hover{
  color:var(--nnv-oxblood-deep) !important;
  border-color:var(--nnv-brass) !important;
}

.prestige-band{
  background:linear-gradient(180deg,rgba(251,242,233,0),rgba(255,248,241,.85) 45%,rgba(245,234,223,.92)) !important;
}
.prestige-card,
.homepage-premium .feature-card,
.homepage-premium .pillar,
.homepage-premium .work-card,
.homepage-premium .contact-card{
  background:linear-gradient(180deg,rgba(255,250,245,.97),rgba(248,239,231,.92)) !important;
  border-color:rgba(91,18,30,.09) !important;
}
.prestige-card::before{background:linear-gradient(90deg,transparent,rgba(157,122,92,.72),transparent) !important;}
.prestige-card span{color:var(--nnv-brass) !important;}
.feature-card a,.work-card a,.site-link,.contact-list a{color:var(--nnv-oxblood) !important;}
.founder-link{color:var(--nnv-oxblood) !important;border-bottom-color:rgba(91,18,30,.28) !important;}

/* Dark institutional bands stay dark, but become charcoal rather than blue/navy. */
.about-band{
  background:linear-gradient(145deg,#302426 0%,var(--nnv-charcoal-deep) 44%,#201A1B 100%) !important;
}
.footer{
  background:linear-gradient(180deg,#242123,var(--nnv-charcoal-deep)) !important;
  color:var(--nnv-cream-soft) !important;
}
.footer h3{color:var(--nnv-brass-light) !important;}
.footer p,.footer-bottom{color:#DED3C8 !important;}
.footer-links a{color:var(--nnv-cream-soft) !important;}

/* Keep production worlds cinematic, but the global chrome now belongs to NNV. */
.production-film-page,
.focus-dossier-page,
.gothic-1934-page{
  --ink:var(--nnv-oxblood);
  --bronze:var(--nnv-brass);
}

@media (max-width:1100px){
  .brand-wordmark.brand-wordmark-nnv{width:260px !important;max-width:260px !important;}
}
@media (max-width:900px){
  .nav-wrap{padding:9px 16px !important;}
  .brand-wordmark.brand-wordmark-nnv{width:225px !important;max-width:225px !important;}
  .brand-wordmark.brand-wordmark-nnv img{max-height:82px !important;}
}
@media (max-width:560px){
  .brand-wordmark.brand-wordmark-nnv{width:184px !important;max-width:184px !important;}
  .brand-wordmark.brand-wordmark-nnv img{max-height:66px !important;}
  .site-header{background:rgba(251,240,219,.985) !important;}
}

/* -------------------------------------------------------
   APPROVED NNV MASTER LOCKUP — 2026-08-17
   Uses the supplied master artwork at its original internal
   proportions. No independent stretching of wordmark or emblem.
   ------------------------------------------------------- */
.site-header,
.production-film-page .site-header,
.enemy-page .site-header,
.merchant-page .site-header,
.fcg-page .site-header,
.snm-page .site-header,
.focus-dossier-page .site-header,
.gothic-1934-page .site-header{
  background:#FBF0DB !important;
}
.site-header .nav-wrap{
  min-height:0 !important;
  padding-top:7px !important;
  padding-bottom:7px !important;
}
.brand-wordmark.brand-wordmark-nnv{
  width:clamp(270px,22vw,310px) !important;
  max-width:310px !important;
  flex:0 0 auto !important;
}
.brand-wordmark.brand-wordmark-nnv img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:left center !important;
}
@media (max-width:1100px){
  .brand-wordmark.brand-wordmark-nnv{
    width:250px !important;
    max-width:250px !important;
  }
}
@media (max-width:900px){
  .site-header .nav-wrap{
    padding:7px 16px !important;
  }
  .brand-wordmark.brand-wordmark-nnv{
    width:215px !important;
    max-width:215px !important;
  }
}
@media (max-width:560px){
  .site-header .nav-wrap{
    padding-top:6px !important;
    padding-bottom:6px !important;
  }
  .brand-wordmark.brand-wordmark-nnv{
    width:180px !important;
    max-width:180px !important;
  }
}
@media (max-width:390px){
  .brand-wordmark.brand-wordmark-nnv{
    width:168px !important;
    max-width:168px !important;
  }
}

/* 2026-08-18 — tiny mobile lockup increase only.
   Increase the approved flexible lockup by about 5% on mobile.
   Intentionally leaves Cities Performed / route-band responsiveness untouched. */
@media (max-width:560px){
  .brand-wordmark.brand-wordmark-nnv{
    width:178px !important;
    max-width:178px !important;
  }
}
@media (max-width:390px){
  .brand-wordmark.brand-wordmark-nnv{
    width:166px !important;
    max-width:166px !important;
  }
}

/* 2026-08-17 — final desktop logo scale refinement only.
   Reduce the complete approved NNV master lockup by 12% on full desktop.
   Tablet/mobile rules and Cities Performed remain untouched. */
@media (min-width:1101px){
  .brand-wordmark.brand-wordmark-nnv{
    width:clamp(238px,19.36vw,273px) !important;
    max-width:273px !important;
  }
}

/* 2026-08-17 — source-level text contrast repair.
   Split text by surface; never use transparency to create hierarchy.
   Layout, images, typography, spacing, header/logo, route band and responsiveness are untouched. */
:root{
  --nnv-text-on-dark:#DED8D0;
  --nnv-text-on-dark-strong:#F2EAE0;
  --nnv-text-on-light:#343944;
}

/* Dark Seven Gothic Tales / Dreamers artwork panel. */
.homepage-premium .nnvMoFocus .nnvMoCopy p,
.homepage-premium .nnvMoFocus .nnvMoStatement p{
  color:var(--nnv-text-on-dark) !important;
  opacity:1 !important;
}
.homepage-premium .nnvMoFocus .nnvMoCopy em,
.homepage-premium .nnvMoFocus .nnvMoStatement em{
  color:var(--nnv-text-on-dark-strong) !important;
  opacity:1 !important;
}
.homepage-premium .nnvMoFocus .nnvMoTags li,
.homepage-premium .nnvMoCredit{
  color:#CFC6BC !important;
  opacity:1 !important;
}

/* Preserve the already-successful light Institutional Route panel. */
.homepage-premium .nnvMoRoute p{
  color:#343944 !important;
  opacity:1 !important;
}

/* Pale Selected Work cards: strong ink, never washed-out grey. */
.homepage-premium #productions .work-card p,
.homepage-premium .works-grid .work-card p{
  color:var(--nnv-text-on-light) !important;
  opacity:1 !important;
}

/* Dark About / institutional authority band. */
.homepage-premium .about-band .about-founding,
.homepage-premium .about-band .about-distinction p,
.homepage-premium .about-band .about-manifesto{
  color:var(--nnv-text-on-dark) !important;
  opacity:1 !important;
}
.homepage-premium .about-band .about-manifesto{
  color:var(--nnv-text-on-dark-strong) !important;
}
.homepage-premium .about-band .about-founder-link{
  color:#E8CFA3 !important;
  opacity:1 !important;
}

/* Defensive reset: text itself must never be faded by a local paragraph rule. */
.homepage-premium .nnvMoFocus p,
.homepage-premium .about-band p,
.homepage-premium #productions .work-card p{
  opacity:1 !important;
}

/* 2026-08-18 — final desktop masthead proportion refinement.
   Working base: FINAL Readability Repair (2026-08-17).
   Desktop only: reduce the complete approved NNV lockup by ~18% from the prior 273px cap.
   Mobile/tablet, internal logo proportions, navigation, content and route-band remain untouched. */
@media (min-width:1101px){
  .site-header .nav-wrap{
    padding-top:5px !important;
    padding-bottom:5px !important;
  }
  .brand-wordmark.brand-wordmark-nnv{
    width:clamp(400px,35vw,480px) !important;
    max-width:480px !important;
  }
}

/* 2026-08-22 — approved warm-ivory ground and web masthead.
   The source asset is 1600 × 275 and displays responsively within the
   one-line navigation without colliding with menu items.
   Only the former general cream ground is flattened; distinct cards and dark
   production surfaces retain their existing identities. */
@media (min-width:901px) and (max-width:1100px){
  .brand-wordmark.brand-wordmark-nnv{
    width:clamp(320px,34vw,380px) !important;
    max-width:380px !important;
  }
}
@media (max-width:900px){
  .brand-wordmark.brand-wordmark-nnv{
    width:clamp(220px,48vw,320px) !important;
    max-width:320px !important;
  }
}
@media (max-width:560px){
  .brand-wordmark.brand-wordmark-nnv{
    width:220px !important;
    max-width:calc(100vw - 112px) !important;
  }
}
@media (max-width:390px){
  .brand-wordmark.brand-wordmark-nnv{
    width:196px !important;
    max-width:calc(100vw - 104px) !important;
  }
}
