/* WordPress + Elementor glue on top of PHP site.css */

body.admin-bar .header { top: 32px; }
@media screen and (max-width: 782px) {
    body.admin-bar .header { top: 46px; }
}

/* Keep CFRO chrome above Elementor kit defaults */
.topbar,
.header,
.footer,
.nav,
.btn,
.film,
.hero,
.section,
.cards,
.stats,
.cta {
    font-family: var(--font);
}

.elementor-kit-6,
.elementor-page,
body.elementor-default {
    background: var(--paper) !important;
    color: var(--ink);
}

.elementor-widget-image img,
.elementor-icon img { display: inline-block; }
.elementor-section.elementor-section-boxed > .elementor-container { max-width: 1160px; }
body.elementor-page #main,
body.is-pb-page #main { display: block; }
.elementor-editor-active .nav-scrim,
.elementor-editor-preview .nav-scrim { display: none !important; }

/* Demo HTML already includes film/section wrappers — don't double-limit width */
#main > .film,
#main > .hero,
#main > .section,
#main > .stats,
#main > .cta,
#main > .dossier,
#main > article.pb,
body.is-pb-page #main > * {
    max-width: none;
}

.wp-block-post-content,
.prose { max-width: 740px; }
#main > .section .prose,
#main .dossier .prose { max-width: 740px; margin-inline: auto; }

.prose h2, .prose h3 { font-family: var(--serif); }
.prose a { color: var(--green); }
.search-results .cards,
.blog .cards { margin-top: 24px; }
.wp-block-button__link { border-radius: 999px; }
.alignfull { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); }
.cfro-el .section { padding-block: 64px; }

/* Article body under Elementor film — clean reading column */
.elementor-widget-cfro-text .cfro-article-body,
.elementor-widget-cfro-text .prose {
    max-width: 740px;
    margin: 0 auto;
    padding: 40px 20px 56px;
}
.elementor-widget-cfro-text .cfro-article-body h2 {
    font-family: var(--serif);
    font-size: 1.45rem;
    margin: 1.6em 0 0.7em;
    color: var(--ink);
}
.elementor-widget-cfro-text .cfro-article-body ul {
    margin: 0 0 1.2em;
    padding-left: 1.2em;
}
.elementor-widget-cfro-text .cfro-article-body li {
    margin: 0.35em 0;
}
.elementor-widget-cfro-text .cfro-article-body p {
    margin: 0 0 1.1em;
    line-height: 1.7;
}
/* Never show a second hero inside text widgets */
.elementor-widget-cfro-text .film,
.elementor-widget-cfro-text .hero {
    display: none !important;
}
.elementor-widget-cfro-news {
    padding-bottom: 48px;
}

/* Hero / film text must stay light on dark backgrounds (Elementor kit overrides h1). */
.hero,
.hero .hero__copy,
.film,
.film__copy {
    color: #fff !important;
}
.hero h1,
.hero h2,
.hero h3,
.hero p,
.hero .eyebrow,
.hero .hero__lead,
.film h1,
.film h2,
.film h3,
.film p,
.film .eyebrow,
.film .film__lead,
.elementor .hero h1,
.elementor .hero p,
.elementor .film h1,
.elementor-kit-6 .hero h1,
.elementor-page .hero h1 {
    color: #fff !important;
}
.hero .eyebrow,
.film .eyebrow {
    color: var(--gold-soft) !important;
}

.stage__ghost { color: #fff; border-color: rgba(255,255,255,.35); }

/* Footer columns stay readable even with empty menus */
.footer__grid > div:empty { display: none; }
