/* Restore page scrolling — original CSS sets overflow-y:hidden on #body-container which prevents wheel/touch scroll in some browsers. */
html, body { overflow-y: auto !important; height: auto !important; }
#body-container,
#body-container-inner { overflow-y: visible !important; height: auto !important; }

/* Generic :before overlay for any container using `background-color-before-c-*`. SiteBuilder's
   per-container CSS supplies this for blocks present in the original pages; for blocks we render
   dynamically (e.g. actualités archive hero), inject the same positioning here.
   When the same container is `.bg-imaged` (has background-image), tone the overlay down so the
   image shows through. */
[class*="background-color-before-c-"] { position: relative; }
[class*="background-color-before-c-"]:before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}
[class*="background-color-before-c-"].bg-imaged:before { opacity: 0.35; }
[class*="background-color-before-c-"] > * { position: relative; z-index: 1; }

/* Honoraires — constrain Pass PI list + paragraphs + CTA to centered max-width */
.container_48609803,
.container_47212845,
.container_47212872,
#container_48609803,
#container_47212845,
#container_47212872 {
	max-width: 1100px;
	margin: auto;
}

/* Expertise content-box cards — make them perfect circles even when the per-container
   width/aspect-ratio CSS (originally in /styles/pages/<id>/containers-specific-styles.css)
   is not present in this theme. */
.bloc-element-content-box > a.sb-bloc-inner,
.bloc-element-content-box > .sb-bloc-inner {
	display: block;
	width: 100% !important;
	max-width: 250px !important;
	aspect-ratio: 1 / 1;
	margin-left: auto !important;
	margin-right: auto !important;
}
.bloc-element-content-box > a.sb-bloc-inner:before,
.bloc-element-content-box > .sb-bloc-inner:before {
	border-radius: 1000px;
}

/* About page bio section — SVG decorative filter */
.container_47209257_inner > .svg-filter {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background-image: url(../svg/filter-47209257.svg);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: left center;
}
.container_47209257_inner { position: relative; }
.container_47209257_inner > *:not(.svg-filter) { position: relative; z-index: 1; }
