/* Nestera approved identity 18 October 2026. Colour marks areas; surfaces stay neutral. */
:root {
 --ink:#111111; --forest:#111111; --forest-deep:#111111;
 --paper:#ffffff; --paper-2:#f5f5f3; --acid:#ffffff;
 --muted:#555555; --line:#dddddd;
 --area-build:#B84B3F; --area-invest:#D5AA32; --area-network:#315D91;
 --area-accent:var(--area-network);
}
html, body { background:#fff; color:var(--ink); }
body { font-family:Helvetica,Arial,sans-serif; }
h1,h2,h3,h4 { color:var(--ink); }
.site-head, .sub-head { position:relative; background:#fff; color:var(--ink); padding:22px 0; border-bottom:1px solid var(--line); }
.site-head .wrap { gap:28px; flex-wrap:wrap; }
.site-head .brand { display:block; flex:0 0 auto; line-height:0; }
.site-head .brand img { display:block; width:155px; height:auto; }
.site-head .nav { margin-left:auto; gap:26px; }
.site-head .nav a[href], .site-head .sub-nav a[href] { color:var(--ink); opacity:1; background:transparent; }
.site-head .nav a[href]:hover { color:var(--ink); transform:none; filter:none; text-decoration:underline; text-underline-offset:6px; }
.language-switch select { color:var(--ink); background:#fff; border:1px solid #777; border-radius:0; }
.hero, .page-hero { color:var(--ink); background:#fff; }
.hero { min-height:0; padding:64px 0 65px; }
.hero h1 { font-size:clamp(3rem,6.3vw,6.25rem); line-height:1.03; }
.hero p, .page-hero .lead, .page-hero .back { color:var(--ink); }
.wayfinder { background:#fff; padding-top:35px; padding-bottom:70px; }
.theme-build { --theme-bg:#fff; --theme-ink:#111; --theme-muted:#111; --area-accent:var(--area-build); }
.theme-invest { --theme-bg:#fff; --theme-ink:#111; --theme-muted:#111; --area-accent:var(--area-invest); }
.theme-projects { --theme-bg:#fff; --theme-ink:#111; --theme-muted:#111; --area-accent:var(--area-network); }
.way-card.theme-build, .way-card.theme-invest, .way-card.theme-projects,
.network-cards .theme-build, .network-cards .theme-projects { background:#fff; color:var(--ink); }
.way-card, .network-card { border-radius:0; border-top:8px solid var(--area-accent); padding:25px 24px 23px; }
.way-card { min-height:290px; }
.way-card h3 { margin-top:38px; }
.way-card:hover { transform:translateY(-2px); box-shadow:none; }
#bauen.theme-section, #investieren.theme-section, #netzwerke.theme-section { background:#fff; color:var(--ink); }
#bauen.theme-section .split-content p, #investieren.theme-section .split-content p,
#netzwerke.theme-section .project-teaser p { color:var(--ink); }
.theme-section { border-top:1px solid var(--line); }
.theme-section > .wrap > .eyebrow,
.theme-section .split-content > div:first-child > .eyebrow { border-top:7px solid var(--area-accent); display:inline-block; padding-top:18px; }
.network-overview, .portal-section, .project-visual-section, .status-section,
.network-how, .andratx-teaser, .statement, .contact, footer { background:#fff; color:var(--ink); }
.project-feature { background:#fff; color:var(--ink); }
.project-copy p, .contact-details, .public-private-grid p, .portal-roles p,
.location-panel p, .project-teaser p, .network-card p { color:var(--ink); }
.project-teaser, .public-private-grid article, .portal-roles article { background:#fff; border:1px solid var(--line); }
.location-panel, .status-box, .note { background:#f5f5f3; color:var(--ink); }
.project-facts div { border-top-color:#777; }
.tag, .tag.complete, .phase small { color:#444; }
.contact, footer { border-top:1px solid var(--line); }
.button, .button.primary, .button.primary.neutral-primary { color:var(--ink); background:#fff; border-color:var(--ink); }
.button:hover, .button.primary:hover, .button.primary.neutral-primary:hover { color:#fff; background:#111; }
a:focus-visible, select:focus-visible, .site-head .nav a:focus-visible { outline:3px solid #111; outline-offset:5px; }
.skip-link { color:#111; }
@media (max-width:1000px) {
 .site-head .nav { margin-left:0; gap:18px; }
 .site-head .wrap { gap:20px; }
}
@media (max-width:800px) {
 .site-head { padding:20px 0; }
 .site-head .wrap { flex-direction:row; align-items:center; gap:14px; }
 .site-head .brand { order:1; }
 .site-head .brand img { width:142px; }
 .site-head .nav { order:3; width:100%; display:flex; flex-wrap:wrap; gap:8px 20px; }
 .site-head .nav a[href] { padding:8px 0; justify-content:flex-start; text-align:left; }
 .site-head .language-switch { order:2; margin-left:auto; }
 .sub-nav { order:3; width:100%; white-space:normal; overflow:visible; flex-wrap:wrap; }
 .hero { min-height:0; padding:46px 0 48px; }
 .hero h1 { font-size:clamp(2.7rem,10vw,4rem); line-height:1.05; }
 .wayfinder { padding-top:24px; padding-bottom:48px; }
 .way-card { min-height:255px; }
}
