/*
 * Impact cohesion overrides.
 * This is a bridge layer for Impact pages that still carry page-local CSS.
 * It does not replace the full migration to approved .alc-* components.
 */

body.theme-impact,
body.theme-impact-hub {
    --impact-cohesion-accent: #38bdf8;
    --impact-cohesion-blue: #4c84ff;
    --impact-cohesion-panel: rgba(8, 14, 20, 0.86);
    --impact-cohesion-line: rgba(223, 231, 243, 0.14);
    --impact-cohesion-muted: rgba(223, 231, 243, 0.68);
}

body.theme-impact .site-header,
body.theme-impact-hub .site-header {
    min-height: 72px;
    background: rgba(3, 5, 8, 0.9);
    border-bottom: 1px solid var(--impact-cohesion-line);
}

body.theme-impact .site-logo,
body.theme-impact-hub .site-logo,
body.theme-impact .logo,
body.theme-impact-hub .logo {
    letter-spacing: 0;
    text-transform: none;
}

body.theme-impact .impact-badge,
body.theme-impact-hub .impact-badge,
body.theme-impact .section-label,
body.theme-impact-hub .section-label,
body.theme-impact .mono-label,
body.theme-impact-hub .mono-label {
    color: var(--impact-cohesion-accent);
    letter-spacing: 0.14em;
}

body.theme-impact .hero,
body.theme-impact-hub .impact-hero {
    isolation: isolate;
}

body.theme-impact .hero-title,
body.theme-impact-hub .impact-hero h1,
body.theme-impact .section-headline,
body.theme-impact-hub .impact-section h2 {
    letter-spacing: 0;
}

body.theme-impact .hero-subtitle,
body.theme-impact .section-subtitle,
body.theme-impact-hub .impact-section-copy {
    color: var(--impact-cohesion-muted);
}

body.theme-impact .alc-card,
body.theme-impact-hub .alc-card,
body.theme-impact .pilot-readiness-card,
body.theme-impact .metric-card,
body.theme-impact .partner-card,
body.theme-impact .model-card,
body.theme-impact .support-card,
body.theme-impact .building-card,
body.theme-impact .card {
    border-color: var(--impact-cohesion-line);
    background:
        linear-gradient(180deg, rgba(56, 189, 248, 0.08), transparent 28%),
        var(--impact-cohesion-panel);
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.24);
}

body.theme-impact .alc-button,
body.theme-impact-hub .alc-button {
    border-radius: var(--public-control-radius, 16px);
}

body.theme-impact .section-divider {
    opacity: 0.56;
}

body.theme-impact .bg-charcoal-mid {
    background:
        linear-gradient(180deg, rgba(56, 189, 248, 0.04), transparent),
        rgba(255, 255, 255, 0.02);
}

@media (max-width: 760px) {
    body.theme-impact .site-header,
    body.theme-impact-hub .site-header {
        min-height: auto;
    }
}
