/* LBBC World Class 11.0 — Elementor compatibility without visual regressions. */

.lbbc-elementor-canvas,
.lbbc-elementor-page .site-main { width: 100%; overflow: clip; }

.lbbc-elementor-canvas > .elementor,
.lbbc-elementor-page .elementor { width: 100%; }

.elementor-widget-lbbc-dynamic-section,
.elementor-widget-lbbc-dynamic-section > .elementor-widget-container { width: 100%; min-width: 0; }

.elementor-widget-lbbc-dynamic-section .section,
.elementor-widget-lbbc-dynamic-section .programme-discovery,
.elementor-widget-lbbc-dynamic-section .inside-lbbc,
.elementor-widget-lbbc-dynamic-section .campus-pulse { margin-block: 0; }

/* The native section controls spacing; section internals retain the LBBC grid. */
.elementor-editor-active .elementor-widget-lbbc-dynamic-section { min-height: 40px; }
.elementor-editor-active .elementor-widget-lbbc-dynamic-section > .elementor-widget-container { overflow: visible; }

/* Keep Elementor Theme Builder headers above the page and modal layers predictable. */
.elementor-location-header { position: relative; z-index: 105; }
.elementor-location-header .elementor-nav-menu a { font-size: .72rem; font-weight: 750; }
.elementor-location-header .elementor-button { background: var(--lbbc-red); }
.elementor-location-header .elementor-button:hover { background: var(--lbbc-red-dark); }
.elementor-location-footer { position: relative; z-index: 2; }
.lbbc-elementor-global-template { position: relative; z-index: 105; width: 100%; }

/* Full-width editing must not inherit prose constraints from normal theme pages. */
.lbbc-elementor-page .page-content-shell,
.lbbc-elementor-page .prose-content { max-width: none; }

@media (max-width: 960px) {
	.elementor-location-header { z-index: 110; }
}
