/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.7.1775393901
Updated: 2026-04-05 12:58:21

*/

/* --- Contact page (slug contact): layout + form --- */

/* Hero: left-aligned block, readable measure (not a narrow centered column) */
.page-contact .pc-contact-hero .elementor-widget-heading:first-child {
	max-width: 38rem;
}

.page-contact .pc-contact-hero .elementor-widget-text-editor {
	max-width: 36rem;
}

/* Main row: align columns on the same baseline */
@media (min-width: 1025px) {
	.page-contact .pc-contact-main.e-con {
		align-items: flex-start;
	}
}

/* Form column: light depth */
.page-contact .pc-contact-form-col {
	box-shadow: 0 12px 40px rgba(15, 23, 42, 0.06);
}

/* Coordonnées: map fits the rounded panel */
.page-contact .pc-contact-aside .elementor-widget-google_maps .elementor-custom-embed {
	border-radius: 12px;
	overflow: hidden;
	line-height: 0;
}

.page-contact .pc-contact-aside .elementor-widget-google_maps iframe {
	display: block;
	width: 100%;
	border: 0;
	border-radius: 12px;
}

.page-contact .pc-contact-aside .elementor-icon-list-item a {
	color: #e2e8f0;
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.page-contact .pc-contact-aside .elementor-icon-list-item a:hover {
	color: #ffffff;
}

/* Réassurance: three cards, one row on desktop */
.page-contact .pc-contact-trust.e-con {
	justify-content: space-between;
}

.page-contact .pc-contact-trust-card {
	box-shadow: 0 8px 28px rgba(15, 23, 42, 0.06);
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

@media (hover: hover) {
	.page-contact .pc-contact-trust-card:hover {
		box-shadow: 0 14px 36px rgba(15, 23, 42, 0.1);
		transform: translateY(-2px);
	}
}

/* Form fields: soft “filled” inputs, minimal border */
.page-contact .elementor-widget-form .elementor-field-label {
	font-weight: 600;
	margin-block-end: 0.35em;
}

.page-contact .elementor-widget-form .elementor-field-textual,
.page-contact .elementor-widget-form .elementor-field-group select {
	border: 1px solid transparent;
	border-radius: 10px;
	background-color: #f1f5f9;
	box-shadow: none;
	color: #0f172a;
	transition: background-color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.page-contact .elementor-widget-form .elementor-field-textual::placeholder,
.page-contact .elementor-widget-form .elementor-field-group select {
	color: #64748b;
}

.page-contact .elementor-widget-form .elementor-field-textual:hover,
.page-contact .elementor-widget-form .elementor-field-group select:hover {
	background-color: #e8eef5;
}

.page-contact .elementor-widget-form .elementor-field-textual:focus,
.page-contact .elementor-widget-form .elementor-field-group select:focus {
	background-color: #fff;
	border-color: rgba(42, 138, 0, 0.35);
	box-shadow: 0 0 0 4px rgba(42, 138, 0, 0.12);
	outline: none;
}

/* --- Nos réalisations (page slug nos-realisations) --- */
.page-nos-realisations .pc-real-hero .elementor-widget-heading:first-child {
	max-width: 40rem;
}

.page-nos-realisations .pc-real-hero .elementor-widget-text-editor {
	max-width: 38rem;
}

.page-nos-realisations .pc-real-ref a {
	color: #1b365d;
	text-decoration: underline;
	text-underline-offset: 0.15em;
	font-weight: 600;
}

.page-nos-realisations .pc-real-ref a:hover {
	color: #2a8a00;
}

.page-nos-realisations .pc-real-ref h3 {
	margin: 2rem 0 0.65rem;
	font-family: "Montserrat", system-ui, sans-serif;
	font-size: 1.15rem;
	font-weight: 700;
	color: #0f172a;
	letter-spacing: -0.01em;
}

.page-nos-realisations .pc-real-ref ul {
	margin: 0 0 1rem;
	padding-left: 1.25rem;
}

.page-nos-realisations .pc-real-ref li {
	margin-bottom: 0.5rem;
}

/*
 * Réalisations — custom tabs (Elementor legacy "Tabs" widget).
 * Elementor's widget-tabs.css loads after the child theme and uses table-cell,
 * borders, and ::before/::after "connector" lines — we reset those here with
 * higher specificity (body.page-id-1430) so the UI actually applies.
 */
body.page-id-1430 .pc-real-ref .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tabs-wrapper,
body.page-nos-realisations .pc-real-ref .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tabs-wrapper {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch;
	overflow: visible !important;
	background-color: #f1f5f9;
	border-radius: 12px;
	padding: 6px;
	border: 1px solid #e2e8f0 !important;
	margin-bottom: 1.25rem;
	gap: 6px;
}

body.page-id-1430 .pc-real-ref .elementor-widget-tabs .elementor-tab-desktop-title::before,
body.page-id-1430 .pc-real-ref .elementor-widget-tabs .elementor-tab-desktop-title::after,
body.page-nos-realisations .pc-real-ref .elementor-widget-tabs .elementor-tab-desktop-title::before,
body.page-nos-realisations .pc-real-ref .elementor-widget-tabs .elementor-tab-desktop-title::after {
	content: none !important;
	display: none !important;
}

body.page-id-1430 .pc-real-ref .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title,
body.page-nos-realisations .pc-real-ref .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title {
	display: flex !important;
	align-items: center;
	justify-content: center;
	flex: 1 1 8.5rem;
	font-family: "Montserrat", system-ui, sans-serif;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.25;
	color: #64748b;
	background-color: transparent;
	border-radius: 8px;
	padding: 0.75rem 1rem !important;
	border: none !important;
	margin: 0 !important;
	transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
	text-align: center;
}

body.page-id-1430 .pc-real-ref .elementor-widget-tabs .elementor-tab-title a,
body.page-nos-realisations .pc-real-ref .elementor-widget-tabs .elementor-tab-title a {
	color: inherit;
	text-decoration: none;
}

@media (hover: hover) {
	body.page-id-1430 .pc-real-ref .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title:hover,
	body.page-nos-realisations .pc-real-ref .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title:hover {
		color: #0f172a;
		background-color: #e2e8f0;
	}
}

body.page-id-1430 .pc-real-ref .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active,
body.page-nos-realisations .pc-real-ref .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active {
	background-color: #ffffff !important;
	color: #2a8a00 !important;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06), 0 4px 12px rgba(15, 23, 42, 0.06);
	border: none !important;
	border-block-end: none !important;
}

body.page-id-1430 .pc-real-ref .elementor-widget-tabs .elementor-tabs-content-wrapper,
body.page-nos-realisations .pc-real-ref .elementor-widget-tabs .elementor-tabs-content-wrapper {
	background-color: #ffffff;
	border-radius: 12px;
	border: 1px solid #e2e8f0 !important;
	padding: 1.25rem 1.5rem !important;
	box-shadow: 0 4px 24px rgba(15, 23, 42, 0.06);
	margin-top: 0.25rem;
}

body.page-id-1430 .pc-real-ref .elementor-widget-tabs .elementor-tab-content,
body.page-nos-realisations .pc-real-ref .elementor-widget-tabs .elementor-tab-content {
	display: none;
	font-family: "Montserrat", system-ui, sans-serif;
	font-size: 1rem;
	line-height: 1.65;
	color: #334155;
	padding: 0 !important;
	border: none !important;
}

body.page-id-1430 .pc-real-ref .elementor-widget-tabs .elementor-tab-content.elementor-active,
body.page-nos-realisations .pc-real-ref .elementor-widget-tabs .elementor-tab-content.elementor-active {
	display: block;
}

/* Mobile: Elementor hides desktop tab bar; keep content card readable */
@media (max-width: 767px) {
	body.page-id-1430 .pc-real-ref .elementor-widget-tabs .elementor-tab-mobile-title,
	body.page-nos-realisations .pc-real-ref .elementor-widget-tabs .elementor-tab-mobile-title {
		font-family: "Montserrat", system-ui, sans-serif;
		font-weight: 600;
		font-size: 0.95rem;
		padding: 0.75rem 1rem !important;
		border-radius: 8px;
		background-color: #f8fafc;
		border: 1px solid #e2e8f0 !important;
		margin-bottom: 0.5rem;
	}

	body.page-id-1430 .pc-real-ref .elementor-widget-tabs .elementor-tab-mobile-title.elementor-active,
	body.page-nos-realisations .pc-real-ref .elementor-widget-tabs .elementor-tab-mobile-title.elementor-active {
		background-color: #ecfdf5;
		border-color: #86efac !important;
		color: #166534;
	}
}

/* Photothèque réalisations — sous-sections (espacement) + zigzag image / texte */
body.page-id-1430 .pc-real-grid-sec .pc-real-photo-subsec,
body.page-nos-realisations .pc-real-grid-sec .pc-real-photo-subsec {
	margin-block-start: 4.5rem;
}

body.page-id-1430 .pc-real-grid-sec .pc-real-photo-subsec--first,
body.page-nos-realisations .pc-real-grid-sec .pc-real-photo-subsec--first {
	margin-block-start: 0.75rem;
}

body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-row,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-row {
	width: 100%;
	flex-wrap: nowrap !important;
}

/* Desktop: zigzag rows flush (no vertical gap between blocks). */
@media (min-width: 768px) {
	body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-row,
	body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-row {
		margin-block-end: 0 !important;
		padding-block: 0 !important;
		align-items: stretch !important;
	}
}

body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-row .pc-real-zig-col,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-row .pc-real-zig-col {
	flex: 1 1 0;
	min-width: 0;
	max-width: 100%;
}

/* Uniform image frame: identical 4:3 box + cover crop on every zigzag. */
body.page-id-1430 .pc-real-grid-sec .pc-real-zig-col--media .elementor-widget-image,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zig-col--media .elementor-widget-image {
	width: 100%;
	margin: 0;
}

body.page-id-1430 .pc-real-grid-sec .pc-real-zig-col--media .elementor-widget-image .elementor-widget-container,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zig-col--media .elementor-widget-image .elementor-widget-container {
	position: relative;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-radius: 10px;
	line-height: 0;
}

body.page-id-1430 .pc-real-grid-sec .pc-real-zig-col--media .elementor-widget-image a,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zig-col--media .elementor-widget-image a {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

body.page-id-1430 .pc-real-grid-sec .pc-real-zig-col--media .elementor-widget-image img,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zig-col--media .elementor-widget-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 10px;
}

body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-prelabel,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-prelabel {
	margin: 0 0 0.85rem;
	font-family: "Montserrat", system-ui, sans-serif;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #2a8a00;
}

body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-type,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-type {
	margin: 0 0 0.65rem;
}

body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-methods,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-methods {
	margin: 0;
}

body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-kicker,
body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-kicker {
	color: #1b365d;
	font-size: 0.82em;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin-right: 0.35em;
}

@media (max-width: 767px) {
	body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-row,
	body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-row {
		flex-direction: column !important;
		flex-wrap: wrap !important;
		margin-block-end: 1.75rem !important;
		padding-block-end: 0.25rem;
		border-block-end: 1px solid #f1f5f9;
	}

	body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-row:last-child,
	body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-row:last-child {
		border-block-end: none;
	}

	body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-row .pc-real-zig-col,
	body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-row .pc-real-zig-col {
		flex: 1 1 auto;
	}

	body.page-id-1430 .pc-real-grid-sec .pc-real-zigzag-row .pc-real-zig-col--media,
	body.page-nos-realisations .pc-real-grid-sec .pc-real-zigzag-row .pc-real-zig-col--media {
		order: -1;
		margin-block-end: 1rem;
	}
}

/* Qui sommes-nous (1428) — Elementor Pro–grade layout (Hello child, CSS-only) */
body.page-id-1428 .pc-about-hero--pro {
	position: relative;
	overflow: hidden;
	min-height: clamp(300px, 44vw, 420px);
}

body.page-id-1428 .pc-about-hero--pro::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		radial-gradient(ellipse 80% 60% at 20% 20%, rgba(42, 138, 0, 0.18) 0%, transparent 55%),
		radial-gradient(ellipse 70% 50% at 85% 30%, rgba(94, 234, 212, 0.08) 0%, transparent 50%);
	opacity: 1;
}

body.page-id-1428 .pc-about-hero--pro > * {
	position: relative;
	z-index: 1;
}

body.page-id-1428 .pc-about-hero-visual--pro .elementor-widget-image img {
	border-radius: 16px;
	box-shadow:
		0 4px 6px rgba(15, 23, 42, 0.12),
		0 28px 56px rgba(15, 23, 42, 0.38);
	outline: 1px solid rgba(248, 250, 252, 0.12);
	outline-offset: 6px;
}

body.page-id-1428 .pc-about-hero .elementor-icon-list-item {
	padding: 0.15rem 0;
}

body.page-id-1428 .pc-about-hero .elementor-icon-list-icon {
	background: rgba(42, 138, 0, 0.15);
	border-radius: 8px;
	padding: 6px;
}

body.page-id-1428 .pc-about-hero-cta-primary .elementor-button {
	box-shadow: 0 8px 24px rgba(42, 138, 0, 0.35);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

body.page-id-1428 .pc-about-hero-cta-primary .elementor-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(42, 138, 0, 0.45);
}

body.page-id-1428 .pc-about-hero-cta-secondary .elementor-button {
	backdrop-filter: blur(8px);
	transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

body.page-id-1428 .pc-about-hero-cta-secondary .elementor-button:hover {
	background-color: rgba(255, 255, 255, 0.16) !important;
	border-color: rgba(248, 250, 252, 0.65) !important;
	transform: translateY(-2px);
}

body.page-id-1428 .pc-about-divider-wrap .elementor-divider-separator {
	border-radius: 999px;
}

body.page-id-1428 .pc-about-trust--pro {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr));
	gap: 0.75rem 1rem;
	align-items: stretch;
	border-block: 1px solid #e2e8f0;
	background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%) !important;
}

body.page-id-1428 .pc-about-trust--pro .elementor-widget-heading {
	margin: 0;
}

body.page-id-1428 .pc-about-trust--pro .elementor-heading-title {
	display: block;
	font-variant-numeric: tabular-nums;
	padding: 0.65rem 0.5rem;
	border-radius: 12px;
	background: #fff;
	border: 1px solid #e2e8f0;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
	font-size: clamp(0.95rem, 2.5vw, 1.15rem) !important;
	line-height: 1.25;
	text-align: center;
}

body.page-id-1428 .pc-about-story--pro .pc-about-prose {
	border-inline-start: 4px solid #2a8a00;
	padding-inline-start: 1.25rem;
}

body.page-id-1428 .pc-about-garanties--pro .elementor-widget-icon-box .elementor-icon-box-wrapper {
	padding: 1.35rem 1.25rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid #e2e8f0;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	position: relative;
	overflow: hidden;
}

body.page-id-1428 .pc-about-garanties--pro .elementor-widget-icon-box .elementor-icon-box-wrapper::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, #2a8a00, #5eead4);
	opacity: 0.95;
}

body.page-id-1428 .pc-about-garanties--pro .elementor-widget-icon-box .elementor-icon-box-wrapper:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 40px rgba(15, 23, 42, 0.1);
}

/* Garanties: true 3-column grid (Elementor flex alone often stacks icon-boxes full-width) */
body.page-id-1428 .pc-about-garanties--pro .pc-about-garanties-grid {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 1.25rem;
	width: 100%;
	align-items: stretch;
}

body.page-id-1428 .pc-about-garanties--pro .pc-about-garanties-grid .elementor-widget-icon-box {
	min-width: 0;
	width: 100% !important;
	max-width: none !important;
}

body.page-id-1428 .pc-about-garanties--pro .pc-about-garanties-grid .elementor-widget-icon-box .elementor-icon-box-wrapper {
	align-items: flex-start;
	text-align: left;
}

body.page-id-1428 .pc-about-garanties--pro .pc-about-garanties-grid .elementor-icon-box-icon {
	margin-inline: 0;
}

@media (min-width: 768px) {
	body.page-id-1428 .pc-about-garanties--pro .pc-about-garanties-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Hero visual: icon list + image side by side inside the right column */
body.page-id-1428 .pc-about-hero-visual--pro .pc-about-hero-split {
	width: 100%;
}

@media (min-width: 768px) {
	body.page-id-1428 .pc-about-hero-visual--pro .pc-about-hero-split {
		flex-wrap: nowrap !important;
		align-items: stretch !important;
	}

	body.page-id-1428 .pc-about-hero-visual--pro .pc-about-hero-list-col,
	body.page-id-1428 .pc-about-hero-visual--pro .pc-about-hero-img-col {
		min-width: 0;
	}
}

@media (max-width: 767px) {
	body.page-id-1428 .pc-about-hero-visual--pro .pc-about-hero-img-col {
		order: -1;
		margin-block-end: 0.75rem;
	}
}

/* Méthode: steps column + media column use full row width */
body.page-id-1428 .pc-about-method--pro .pc-about-method-split {
	width: 100%;
}

@media (min-width: 768px) {
	body.page-id-1428 .pc-about-method--pro .pc-about-method-split {
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
	}

	body.page-id-1428 .pc-about-method--pro .pc-about-method-steps-col,
	body.page-id-1428 .pc-about-method--pro .pc-about-method-media-col {
		min-width: 0;
	}
}

@media (max-width: 767px) {
	body.page-id-1428 .pc-about-method--pro .pc-about-method-media-col {
		order: -1;
		margin-block-end: 1rem;
	}
}

body.page-id-1428 .pc-about-method--pro .pc-about-steps .elementor-icon-box-icon {
	filter: drop-shadow(0 2px 4px rgba(27, 54, 93, 0.2));
}

body.page-id-1428 .pc-about-engagement--pro {
	border-block: 1px solid #e2e8f0;
}

body.page-id-1428 .pc-about-cta--pro {
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #2a8a00 0%, #1b5e20 48%, #14532d 100%) !important;
}

body.page-id-1428 .pc-about-cta--pro::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		radial-gradient(ellipse 60% 80% at 100% 0%, rgba(255, 255, 255, 0.12) 0%, transparent 55%),
		radial-gradient(ellipse 50% 60% at 0% 100%, rgba(0, 0, 0, 0.12) 0%, transparent 50%);
}

body.page-id-1428 .pc-about-cta--pro > * {
	position: relative;
	z-index: 1;
}

body.page-id-1428 .pc-about-dept-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(11.5rem, 1fr));
	gap: 0.65rem 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

body.page-id-1428 .pc-about-dept-list li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	padding: 0.55rem 0.85rem;
	background: linear-gradient(135deg, #f8fafc 0%, #eef2ff 100%);
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	font-family: "Montserrat", system-ui, sans-serif;
	font-size: 0.9rem;
	color: #1e293b;
}

body.page-id-1428 .pc-about-dept-num {
	font-weight: 700;
	color: #2a8a00;
	font-size: 0.8rem;
	letter-spacing: 0.04em;
}

@media (min-width: 768px) {
	body.page-id-1428 .pc-about-steps {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.5rem 1.5rem;
		align-items: start;
	}
}

@media (min-width: 1024px) {
/* Keep 2 columns for 5 steps: clearer flow next to the media column */
	body.page-id-1428 .pc-about-steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* CTA: same pattern as réalisations (background + overlay set in Elementor) */
body.page-id-1428 .pc-about-cta.pc-real-cta {
	background-attachment: scroll;
}

body.page-id-1428 .pc-about-cta.pc-real-cta .elementor-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(42, 138, 0, 0.45);
}

/*
 * Home — animated “Chiffres clés” (mu-plugin) duplicates content from the Elementor block.
 * To hide the original static section: select it in Elementor → Advanced → CSS Classes →
 * pc-chiffres-cles--legacy
 */
.home .pc-chiffres-cles--legacy {
	display: none !important;
}

/* Plan du site (1427) — readable nested lists */
body.page-id-1427 .pc-plan-site-body .pc-plan-site-list,
body.page-id-1427 .pc-plan-site-body .pc-plan-site-list ul {
	margin: 0 0 0.35em;
	padding-left: 1.25rem;
	list-style: disc;
}

body.page-id-1427 .pc-plan-site-body .pc-plan-site-list li {
	margin: 0.35em 0;
	line-height: 1.5;
}

body.page-id-1427 .pc-plan-site-body .pc-plan-site-list a {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

body.page-id-1427 .pc-plan-site-body .pc-plan-site-list a:hover {
	color: #2a8a00;
}
