/*
 * Correctifs d'affichage apportés après la migration (défauts déjà présents sur le site WordPress).
 * Chargé en dernier, après les styles Divi, que l'on ne modifie pas.
 */

/* Menu principal : entre 981 px (passage au menu mobile Divi) et 1199 px, les 4 entrées ne tenaient
   pas sur une ligne. « Nous contacter » passait dessous, en blanc, par-dessus le contenu. */
@media (min-width: 981px) and (max-width: 1199px) {
	#page-container .et_pb_menu_0_tb_header.et_pb_menu .et-menu > li {
		padding-left: 6px;
		padding-right: 6px;
	}
	#page-container .et_pb_menu_0_tb_header.et_pb_menu .et-menu > li > a {
		padding-right: 12px !important; /* le CSS personnalisé du site impose 25px !important */
	}
	/* place de la flèche du sous-menu « Nos expertises » */
	#page-container .et_pb_menu_0_tb_header.et_pb_menu .et-menu > li.menu-item-has-children > a {
		padding-right: 22px !important;
	}
}
@media (min-width: 981px) and (max-width: 1059px) {
	#page-container .et_pb_menu_0_tb_header.et_pb_menu .et-menu > li > a {
		font-size: 16px;
	}
}

/* Accueil, section des expertises : pictos limités à 96 px, centrés au-dessus du titre
   (ils prenaient toute la largeur de la colonne, jusqu'à 360 px). */
#expertises .et_pb_image {
	text-align: center;
	margin-bottom: 12px !important;
}
#expertises .et_pb_image .et_pb_image_wrap {
	display: inline-block;
}
#expertises .et_pb_image img {
	width: 96px;
	height: 96px;
	object-fit: contain;
}
/* espace entre le bouton « EN SAVOIR PLUS » d'une expertise et le picto de l'expertise suivante */
#expertises .et_pb_button_module_wrapper + .et_pb_image {
	margin-top: 48px !important;
}
/* tablette et mobile : les colonnes s'empilent, même espace entre la dernière expertise d'une colonne et la suivante */
@media (max-width: 980px) {
	#expertises .et_pb_column + .et_pb_column > .et_pb_image:first-child {
		margin-top: 48px !important;
	}
}

/* espace au-dessus du bouton vers la demande d'audit (hero de l'accueil, bandeau Copropriété) */
.lsc-cta-audit-wrapper {
	margin-top: 14px !important;
}

/* mobile : le libellé du bouton d'audit passe sur 2 lignes, aligné à gauche */
@media (max-width: 767px) {
	body #page-container .et_pb_section .et_pb_button.lsc-cta-audit {
		text-align: left !important;
	}
}

/* En-tête : sous 981 px, la colonne du bouton « Rendez-vous » passait sous la barre, par-dessus la photo
   (Divi ne le masquait que sous 768 px). Elle est masquée ; « Prendre rendez-vous » est dans le menu ☰. */
@media (max-width: 980px) {
	.et-l--header .et_pb_column_1_tb_header {
		display: none !important;
	}
}
@media (min-width: 981px) {
	.et-l--header .lsc-menu-rdv {
		display: none !important;
	}
}

/* Qui sommes-nous : le titre principal passe de H2 à H1 (SEO), avec l'apparence exacte de l'ancien H2 */
.page-id-18066 #page-container .et_pb_text_0 h1 {
	font-family: 'Roboto', Helvetica, Arial, Lucida, sans-serif;
	font-size: 37px;
	font-weight: 700;
	line-height: 1.3em;
	padding-bottom: 10px;
}

/* Accueil, « Nos expertises » (ordinateur) : grille alignée ligne par ligne.
   Divi empile 2 expertises par colonne : icônes, titres, paragraphes et boutons tombaient à des
   hauteurs différentes d'une colonne à l'autre. Les colonnes deviennent transparentes
   (display: contents) et chaque module est placé dans une grille 3 colonnes x 8 lignes
   (icône, titre, texte, bouton) x 2 : chaque ligne prend la hauteur du plus haut élément. */
@media (min-width: 981px) {
	#page-container #expertises {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		column-gap: 48px;
		align-items: start;
	}
	#expertises::before,
	#expertises::after {
		display: none !important;
	}
	#expertises > .et_pb_column {
		display: contents;
	}
	#expertises > .et_pb_column:nth-child(1) > * { grid-column: 1; }
	#expertises > .et_pb_column:nth-child(2) > * { grid-column: 2; }
	#expertises > .et_pb_column:nth-child(3) > * { grid-column: 3; }
	#expertises > .et_pb_column > :nth-child(1) { grid-row: 1; }
	#expertises > .et_pb_column > :nth-child(2) { grid-row: 2; }
	#expertises > .et_pb_column > :nth-child(3) { grid-row: 3; }
	#expertises > .et_pb_column > :nth-child(4) { grid-row: 4; }
	#expertises > .et_pb_column > :nth-child(5) { grid-row: 5; }
	#expertises > .et_pb_column > :nth-child(6) { grid-row: 6; }
	#expertises > .et_pb_column > :nth-child(7) { grid-row: 7; }
	#expertises > .et_pb_column > :nth-child(8) { grid-row: 8; }
	/* les modules gardent leurs marges Divi, mais plus de marge résiduelle en bas de cellule */
	#expertises > .et_pb_column > * {
		margin-bottom: 0 !important;
	}
	#expertises .et_pb_text {
		margin-bottom: 14px !important;
	}
	/* icônes centrées dans leur cellule, avec un espace sous l'icône */
	#page-container #expertises .et_pb_image {
		justify-self: stretch;
		width: 100%;
		margin-left: 0 !important;
		margin-right: 0 !important;
		margin-bottom: 16px !important;
	}
	/* titres sur deux lignes (« Prêt du personnel & externalisation ») : alignés en bas de leur ligne */
	#expertises > .et_pb_column > :nth-child(2),
	#expertises > .et_pb_column > :nth-child(6) {
		align-self: end;
	}
	#expertises > .et_pb_column > :nth-child(4),
	#expertises > .et_pb_column > :nth-child(8) {
		margin-top: 6px !important;
	}
}

/* =====================================================================
   Boutons du site : deux styles seulement, en pilule
   - principal (plein or) : demande d'audit, « Contactez nous », envois de formulaires, Rendez-vous du pied
   - secondaire (contour) : or sur fond clair, blanc sur photo
   Le « Rendez-vous » de l'en-tête est une pilule blanche (l'or se confondrait avec la barre taupe).
   Or #a8853b : texte blanc lisible (3,45:1). Sélecteurs au niveau de ceux de Divi
   (body #page-container .et_pb_section …) pour passer devant ses règles par module.
   ===================================================================== */
body #page-container .et_pb_section .et_pb_button,
body #page-container #wpcf7-f33895-o1 .wpcf7-submit,
body #page-container #et_pb_contact_form_0 .et_pb_contact_submit {
	display: inline-block;
	font-family: 'Ubuntu', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.01em !important;
	text-transform: none !important;
	padding: 13px 30px !important;
	border-width: 2px !important;
	border-style: solid !important;
	border-radius: 999px !important;
	box-shadow: none;
	transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s, transform 0.2s !important;
}
/* plus de flèche Divi au survol ni de décalage du texte */
body #page-container .et_pb_section .et_pb_button:not(.et_pb_button_0_tb_header):not(.et_pb_button_0_tb_footer):after,
body #page-container #et_pb_contact_form_0 .et_pb_contact_submit:after {
	display: none !important;
}
body #page-container .et_pb_section .et_pb_button:hover,
body #page-container #wpcf7-f33895-o1 .wpcf7-submit:hover,
body #page-container #et_pb_contact_form_0 .et_pb_contact_submit:hover {
	padding: 13px 30px !important;
	transform: translateY(-1px);
}
body #page-container .et_pb_section .et_pb_button:focus-visible,
body #page-container #wpcf7-f33895-o1 .wpcf7-submit:focus-visible,
body #page-container #et_pb_contact_form_0 .et_pb_contact_submit:focus-visible {
	outline: 3px solid rgba(208, 172, 86, 0.6);
	outline-offset: 2px;
}

/* --- principal : plein or */
body #page-container .et_pb_section .et_pb_button.lsc-cta-audit,
body #page-container .et_pb_section .et_pb_button[href="#contact"],
body #page-container .et_pb_section .et_pb_button.et_pb_button_0_tb_footer,
body #page-container #wpcf7-f33895-o1 .wpcf7-submit,
body #page-container #et_pb_contact_form_0 .et_pb_contact_submit {
	color: #fff !important;
	background-color: #a8853b !important;
	border-color: #a8853b !important;
}
body #page-container .et_pb_section .et_pb_button.lsc-cta-audit:hover,
body #page-container .et_pb_section .et_pb_button[href="#contact"]:hover,
body #page-container .et_pb_section .et_pb_button.et_pb_button_0_tb_footer:hover,
body #page-container #wpcf7-f33895-o1 .wpcf7-submit:hover,
body #page-container #et_pb_contact_form_0 .et_pb_contact_submit:hover {
	color: #fff !important;
	background-color: #8a6d27 !important;
	border-color: #8a6d27 !important;
	box-shadow: 0 6px 16px rgba(138, 109, 39, 0.3);
}

/* --- secondaire sur fond clair : contour or */
body #page-container .et_pb_section .et_pb_button.et_pb_bg_layout_light:not([href="#contact"]):not(.lsc-cta-audit),
body.home #page-container .et_pb_section .et_pb_button.et_pb_button_8 {
	color: #8a6d27 !important;
	background-color: transparent !important;
	border-color: #a8853b !important;
}
body #page-container .et_pb_section .et_pb_button.et_pb_bg_layout_light:not([href="#contact"]):not(.lsc-cta-audit):hover,
body.home #page-container .et_pb_section .et_pb_button.et_pb_button_8:hover {
	color: #fff !important;
	background-color: #a8853b !important;
	border-color: #a8853b !important;
	box-shadow: 0 6px 16px rgba(138, 109, 39, 0.25);
}

/* --- secondaire sur photo ou fond sombre : contour blanc */
body #page-container .et_pb_section .et_pb_promo_button:not(.lsc-cta-audit),
body #page-container .et_pb_section .et_pb_button.et_pb_bg_layout_dark:not(.et_pb_button_0_tb_header):not(.et_pb_button_0_tb_footer):not([href="#contact"]):not(.et_pb_button_8) {
	color: #fff !important;
	background-color: rgba(0, 0, 0, 0.12) !important;
	border-color: #fff !important;
}
body #page-container .et_pb_section .et_pb_promo_button:not(.lsc-cta-audit):hover,
body #page-container .et_pb_section .et_pb_button.et_pb_bg_layout_dark:not(.et_pb_button_0_tb_header):not(.et_pb_button_0_tb_footer):not([href="#contact"]):not(.et_pb_button_8):hover {
	color: #333 !important;
	background-color: #fff !important;
	border-color: #fff !important;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25);
}

/* --- « Rendez-vous » de l'en-tête : pilule blanche, icône calendrier conservée */
body #page-container .et_pb_section .et_pb_button.et_pb_button_0_tb_header {
	color: #6b5328 !important;
	background-color: #fff !important;
	border-color: #fff !important;
	font-size: 16px !important;
	padding: 8px 22px 8px 46px !important;
}
body #page-container .et_pb_section .et_pb_button.et_pb_button_0_tb_header:hover {
	color: #6b5328 !important;
	background-color: #fbf5e8 !important;
	border-color: #fbf5e8 !important;
	padding: 8px 22px 8px 46px !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
}
body #page-container .et_pb_section .et_pb_button.et_pb_button_0_tb_header:before,
body #page-container .et_pb_section .et_pb_button.et_pb_button_0_tb_header:after {
	color: #a8853b !important;
}
body #page-container .et_pb_section .et_pb_button.et_pb_button_0_tb_footer {
	padding-left: 50px !important;
}
body #page-container .et_pb_section .et_pb_button.et_pb_button_0_tb_footer:hover {
	padding-left: 50px !important;
}

@media (max-width: 767px) {
	body #page-container .et_pb_section .et_pb_button,
	body #page-container #wpcf7-f33895-o1 .wpcf7-submit,
	body #page-container #et_pb_contact_form_0 .et_pb_contact_submit {
		font-size: 16px !important;
		padding: 12px 24px !important;
		white-space: normal;
		text-align: center;
	}
}

/* Accueil, « LS Conseil : nos points forts » : trois cartes (photo, titre, texte) au lieu du montage
   Divi, qui dupliquait chaque image par type d'écran et laissait de grands vides sur ordinateur. */
.lsc-forts-section.et_pb_section {
	padding-top: 56px !important;
	padding-bottom: 64px !important;
}
.lsc-forts-section .et_pb_row_2 {
	padding-bottom: 26px !important;
}
#page-container .lsc-forts.et_pb_row {
	padding-top: 12px !important;
	padding-bottom: 0 !important;
}
.lsc-forts-grille {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
}
.lsc-fort {
	display: flex;
	flex-direction: column;
	background: #fff;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 2px 14px rgba(60, 45, 20, 0.08);
}
.lsc-fort img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}
#page-container .lsc-fort h3 {
	font-family: 'Ubuntu', Helvetica, Arial, Lucida, sans-serif;
	font-size: 21px;
	font-weight: 500;
	line-height: 1.3;
	color: #222;
	margin: 0;
	padding: 22px 24px 10px;
}
#page-container .lsc-fort h3 .or {
	color: #a8853b;
}
#page-container .lsc-fort p {
	font-size: 16px;
	line-height: 1.65;
	color: #444;
	margin: 0;
	padding: 0 24px 26px;
}
.lsc-forts-cta {
	margin: 36px 0 0 !important;
	text-align: center;
}
@media (max-width: 980px) {
	.lsc-forts-grille {
		grid-template-columns: minmax(0, 1fr);
		max-width: 560px;
		margin: 0 auto;
		gap: 22px;
	}
	.lsc-forts-section.et_pb_section {
		padding-top: 40px !important;
		padding-bottom: 48px !important;
	}
}

/* Accueil, « LS Conseil : proximité, expertise et solutions » : trois cartes de même hauteur.
   Avant : texte collé aux bords des blocs taupe, icônes sur carrés noirs, titres peu lisibles
   et casse irrégulière (PROXIMITÉ / Expertise / SOLUTIONS). Contenu inchangé. */
@media (min-width: 981px) {
	#page-container .et_pb_section_3 .et_pb_row_13 {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 28px;
	}
	#page-container .et_pb_section_3 .et_pb_row_13::after {
		display: none;
	}
	#page-container .et_pb_section_3 .et_pb_row_13 > .et_pb_column {
		width: auto !important;
		margin: 0 !important;
		display: flex;
	}
}
body #page-container .et_pb_section_3 .et_pb_row_13 .et_pb_blurb {
	width: 100%;
	background-color: #faf7f1 !important;
	border: 1px solid #e6dcc8 !important;
	border-top: 4px solid #a8853b !important;
	border-radius: 14px !important;
	padding: 34px 28px 30px !important;
	box-shadow: 0 2px 14px rgba(60, 45, 20, 0.06);
	margin-bottom: 0 !important;
}
body #page-container .et_pb_section_3 .et_pb_row_13 .et_pb_blurb .et_pb_main_blurb_image {
	margin-bottom: 18px !important;
}
body #page-container .et_pb_section_3 .et_pb_row_13 .et_pb_blurb .et_pb_main_blurb_image .et-pb-icon {
	color: #fff !important;
	background-color: #a8853b !important;
	border: 0 !important;
	border-radius: 50% !important;
	font-size: 30px !important;
	padding: 0 !important;
	width: 70px;
	height: 70px;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	line-height: 1 !important;
}
body #page-container .et_pb_section_3 .et_pb_row_13 .et_pb_blurb h4.et_pb_module_header,
body #page-container .et_pb_section_3 .et_pb_row_13 .et_pb_blurb h4.et_pb_module_header span {
	font-family: 'Ubuntu', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 19px !important;
	font-weight: 500 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	color: #222 !important;
	padding-bottom: 12px !important;
}
body #page-container .et_pb_section_3 .et_pb_row_13 .et_pb_blurb .et_pb_blurb_description,
body #page-container .et_pb_section_3 .et_pb_row_13 .et_pb_blurb .et_pb_blurb_description p,
body #page-container .et_pb_section_3 .et_pb_row_13 .et_pb_blurb .et_pb_blurb_description span {
	color: #444 !important;
	font-size: 16px !important;
	line-height: 1.65 !important;
}
@media (max-width: 980px) {
	body #page-container .et_pb_section_3 .et_pb_row_13 .et_pb_blurb {
		max-width: 560px;
		margin: 0 auto !important;
	}
	#page-container .et_pb_section_3 .et_pb_row_13 > .et_pb_column {
		margin-bottom: 22px !important;
	}
}

/* Accueil, hero : titre et sous-titre agrandis, contenu centré verticalement, dégradé de lisibilité.
   Avant : titre 30 px et sous-titre 14 px collés en haut d'un bandeau de 864 px. Textes inchangés. */
body.home #page-container .et_pb_section_0 {
	position: relative;
	display: flex;
	align-items: center;
	height: auto !important;
	min-height: min(78vh, 720px);
	padding-top: 90px !important;
	padding-bottom: 70px !important;
}
body.home #page-container .et_pb_section_0::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(20, 16, 10, 0.62) 0%, rgba(20, 16, 10, 0.38) 50%, rgba(20, 16, 10, 0.05) 100%);
	pointer-events: none;
}
body.home #page-container .et_pb_section_0 > .et_pb_row {
	position: relative;
	z-index: 1;
	width: 80%;
}
body.home #page-container .et_pb_section_0 .et_pb_column_0 {
	width: 100% !important;
	max-width: 780px;
}
body.home #page-container .et_pb_section_0 .et_pb_cta_0 .et_pb_promo_description {
	padding-bottom: 6px !important;
}
body.home #page-container .et_pb_section_0 .et_pb_cta_0 .et_pb_module_header {
	font-family: 'Ubuntu', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 56px !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
	letter-spacing: -0.01em;
	color: #fff !important;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.35);
	padding-bottom: 18px !important;
}
/* petit trait or au-dessus du titre */
body.home #page-container .et_pb_section_0 .et_pb_cta_0 .et_pb_module_header::before {
	content: '';
	display: block;
	width: 64px;
	height: 4px;
	background: #d0ac56;
	border-radius: 2px;
	margin-bottom: 22px;
}
body.home #page-container .et_pb_section_0 .et_pb_cta_0 .et_pb_promo_description p {
	font-size: 21px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	color: rgba(255, 255, 255, 0.94) !important;
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
}
body.home #page-container .et_pb_section_0 .et_pb_cta_0 .et_pb_promo_description + .et_pb_button_wrapper {
	margin-top: 28px !important;
}
@media (max-width: 980px) {
	body.home #page-container .et_pb_section_0 .et_pb_cta_0 .et_pb_module_header {
		font-size: 42px !important;
	}
}
@media (max-width: 767px) {
	body.home #page-container .et_pb_section_0 {
		min-height: 0;
		padding-top: 72px !important;
		padding-bottom: 56px !important;
	}
	body.home #page-container .et_pb_section_0::before {
		background: linear-gradient(180deg, rgba(20, 16, 10, 0.55) 0%, rgba(20, 16, 10, 0.35) 100%);
	}
	body.home #page-container .et_pb_section_0 > .et_pb_row {
		width: calc(100% - 40px);
	}
	body.home #page-container .et_pb_section_0 .et_pb_cta_0 .et_pb_module_header {
		font-size: 34px !important;
		padding-bottom: 12px !important;
	}
	body.home #page-container .et_pb_section_0 .et_pb_cta_0 .et_pb_module_header::before {
		margin-bottom: 16px;
	}
	body.home #page-container .et_pb_section_0 .et_pb_cta_0 .et_pb_promo_description p {
		font-size: 18px !important;
	}
}

/* Accueil, hero : carte « Votre copropriété est-elle bien gérée ? » vers la demande d'audit (choix du client, 26/10/2026).
   Dans la colonne de droite du hero : à droite du titre à partir de 1200 px, sous « Nos expertises » en dessous. */
body.home #page-container .et_pb_section_0 .et_pb_column_1 {
	width: 100% !important;
	max-width: 460px;
	margin: 26px 0 0 !important;
}
@media (min-width: 1200px) {
	body.home #page-container .et_pb_section_0 > .et_pb_row {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 48px;
	}
	body.home #page-container .et_pb_section_0 > .et_pb_row::after {
		display: none;
	}
	body.home #page-container .et_pb_section_0 .et_pb_column_0 {
		flex: 1 1 auto;
		max-width: 660px;
		margin: 0 !important;
	}
	body.home #page-container .et_pb_section_0 .et_pb_column_1 {
		flex: 0 0 420px;
		margin: 0 !important;
	}
}
.lsc-carte-audit {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 28px 30px 30px;
	border-radius: 16px;
	text-decoration: none !important;
	background: rgba(20, 18, 14, 0.55);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(208, 172, 86, 0.65);
	border-left: 5px solid #d0ac56;
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.35);
	font-family: 'Ubuntu', Helvetica, Arial, Lucida, sans-serif;
	text-align: left;
	transition: transform 0.2s, box-shadow 0.2s, background-color 0.2s;
}
.lsc-carte-audit:hover {
	transform: translateY(-2px);
	background: rgba(20, 18, 14, 0.68);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.42);
}
.lsc-carte-audit:focus-visible {
	outline: 3px solid rgba(208, 172, 86, 0.8);
	outline-offset: 3px;
}
.lsc-carte-audit-titre {
	font-size: 27px;
	font-weight: 700;
	line-height: 1.25;
	color: #fff;
}
.lsc-carte-audit-lien {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.45;
	color: #e6c776;
	text-decoration: underline 2px #d0ac56;
	text-underline-offset: 6px;
}
.lsc-carte-audit-lien svg {
	display: inline-block;
	vertical-align: -4px;
	margin-left: 8px;
	transition: transform 0.2s;
}
.lsc-carte-audit:hover .lsc-carte-audit-lien svg {
	transform: translateX(4px);
}
@media (max-width: 767px) {
	body.home #page-container .et_pb_section_0 .et_pb_column_1 {
		max-width: none;
		margin-top: 22px !important;
	}
	.lsc-carte-audit {
		padding: 22px 22px 24px;
	}
	.lsc-carte-audit-titre {
		font-size: 22px;
	}
	.lsc-carte-audit-lien {
		font-size: 16px;
	}
}
