/*
Theme Name: OceanWP Child Theme
Theme URI: https://oceanwp.org/
Description: OceanWP WordPress theme. Sample child theme.
Author: OceanWP
Author URI: https://oceanwp.org/
Template: oceanwp
Version: 1.0
*/

/* Parent stylesheet should be loaded from functions.php not using @import */
body {
    font-family: ABeeZee !important;
}
#menu-menu-principal {
	display: flex;
    align-items: center;
}
.badge-menu {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
}
.badge-menu p {
	line-height: 16px;
	margin-bottom: 0;
}
.badge-menu-icon {
	display: flex;
	width: 38px;
	height: 38px;
	justify-content: center;
	align-items: center;
	gap: 12px;
	border-radius: 99px;
	background: rgba(5, 88, 214, 0.12);
	backdrop-filter: blur(8px);
}
.badge-menu .adresse {
	font-size: 14px;
}
.badge-menu .ville {
	font-size: 12px;
}
.menu-item-30 a span {
	padding: 14px 28px 14px 28px !important;
	border-radius: 100px;
	background: #0271DB;
	border: 1px solid #0271DB;
	color: white !important;
	line-height: 16px !important;
}
.menu-item-30 a span:hover {
	background: white;
	border: 1px solid #0271DB;
	color: #0271DB !important;
}
#footer-bottom {
	padding: 0 !important;
}
#footer-bottom-inner {
	text-align: left !important;
	padding: 30px 0;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	color: rgba(255, 255, 255, 0.75);
}
.titrefooter {
	color: #FFF;
	font-family: ABeeZee;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 25.2px;
}
.soustitrefooter {
	color: rgba(255, 255, 255, 0.75);
	font-family: ABeeZee;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 25.6px;
}
.btnfooter {
	margin-top: 60px;
}
.btnfooter a, .btnbanniere a {
	display: flex;
    flex-direction: row;
    color: #0D0D0D !important;
    border-radius: 100px;
	background: #93F1FF;
	padding: 16px 28px;
	width: fit-content;
	gap: 10px;
}
.badge-footer {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
	margin-bottom: 20px;
}
.badge-footer p {
	line-height: 24px;
	margin-bottom: 0;
}
.badge-footer-icon {
	display: flex;
	width: 38px;
	height: 38px;
	justify-content: center;
	align-items: center;
	gap: 12px;
	border-radius: 99px;
	background: rgba(255, 255, 255, 0.12);
	backdrop-filter: blur(8px);
}
.badge-footer .adresse, .ville-footer {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.75);
}
#footer-widgets .footer-box .menufooter a, .facebook-footer a, #menu-footer-copyright a {
    color: rgba(255, 255, 255, 0.75) !important;
}
#footer-widgets .footer-box .menufooter a:hover, .facebook-footer a:hover, #menu-footer-copyright a:hover {
    color: #0271DB !important;
}
.lientel {
	width: fit-content;
}
@media screen and (min-width: 768px) {
	.home .flechebefore::before {
	    content: ''; 
	    border-radius: 99px;
	    border: 1px solid rgba(255, 255, 255, 0.25);
	    backdrop-filter: blur(8px);
	    position: absolute;
	    top: 50%;
	    left: -60px;
	    transform: translateY(-50%);
	    width: 80px;
	    height: 80px;
	    background-image: url("/wp-content/themes/oceanwp-child/svg/fleche-gauche-droite.svg");
	    background-repeat: no-repeat;
	    background-size: 50%;
	    background-position: center;
	}
	.alignebas {
	    align-self: flex-end !important;
	}
}
@media screen and (max-width: 767px) {
	.home .flechebefore::before {
	    content: ''; 
	    border-radius: 99px;
	    border: 1px solid rgba(255, 255, 255, 0.25);
	    backdrop-filter: blur(8px);
	    position: absolute;
	    left: 50%;
	    top: -60px;
	    transform: translateX(-50%);
	    width: 80px;
	    height: 80px;
	    background-image: url("/wp-content/themes/oceanwp-child/svg/fleche-haut-bas.svg");
	    background-repeat: no-repeat;
	    background-size: 50%;
	    background-position: center;
	}
	.slidermobile > .taillecustom {
    	flex-shrink: 0 !important;
    	width: 93vw !important;
	}
	.slidermobile {
		display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        flex-direction: row !important;
        -webkit-overflow-scrolling: touch; 
    }
    .btnbanniere {
	    width: fit-content;
	    margin: auto;
	}
	.elementor-widget-n-tabs .e-n-tabs-heading {
	    display: none;
	}
	.e-n-tabs-content > div {
	    display: block !important;
	}
}
@media screen and (min-width: 960px) {
	#footer-widgets {
		padding: 51px 60px;
	}
    #footer-widgets .col-1 {
		width: 30%;
	}
	#footer-widgets .col-3 {
		width: 20%;
	}
	.hidepc {
		display: none;
	}
}
@media screen and (max-width: 960px) {
	.hidemobile {
		display: none !important;
	}
	.home #partie3 .e-con-inner {
		gap: 0px;
	}
	.home #partie3 .premierequalite .qualite {
		margin-top: 20px;
	}
	.home .imagebasse .principal {
		width: 100% !important;
	}
}
.badge-accueil {
	display: flex;
	flex-direction: row;
	height: 91px;
	padding: 17px 24px;
	align-items: center;
	gap: 15px;
	align-self: stretch;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.85);
	backdrop-filter: blur(8px);
	border: 1px solid rgba(0, 0, 0, 0.03);
	width: fit-content;
}
.badge-accueil p, .badge-accueil2 p {
	color: #0E0E0E;
	font-family: ABeeZee;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 25.2px;
	margin-bottom: 0;
}
.badge-accueil .adresse, .badge-accueil2 .adresse {
	font-size: 14px;
}
.badge-accueil2 {
	display: flex;
	flex-direction: column;
	gap: 5px;
	height: 91px;
	padding: 17px 24px;
	align-self: stretch;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.85);
	backdrop-filter: blur(8px);
	border: 1px solid rgba(0, 0, 0, 0.03);
	width: fit-content;
}
@media screen and (max-width:1455px) {
	#partie1 .colonne1 {
		padding-left: 20px !important;
	}
}
@media screen and (max-width:1200px) {
	.h1-1 {
		font-size: 22px !important;
		line-height: 30.8px !important;
	}
	.h1-2 {
		font-size: 22px !important;
		line-height: 30.8px !important;
	}
	.h2-1 {
		font-size: 28px !important;
		line-height: 30.8px !important;
	}
	.h2-2 {
		font-size: 28px !important;
		line-height: 30.8px !important;
	}
}
.btnservices {
    width: fit-content;
    margin: auto;
}
.btnservices a {
	display: flex;
    flex-direction: row;
    color: #fff !important;
    text-align: center;
    font-family: ABeeZee;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    border-radius: 100px;
	background: #0271DB;
	padding: 16px 28px;
	width: fit-content;
	gap: 10px;
}
.btndevis a {
	display: flex;
    flex-direction: row;
    color: #0D0D0D !important;
    border-radius: 100px;
	background: #93F1FF;
	padding: 16px 28px;
	width: fit-content;
	gap: 10px;
	margin: auto;
}
.home #partie5 .taillecustom {
	width: fit-content;
    margin: auto;
    border-radius: 22px;
}
.home .principal img {
	object-fit: cover;
	border-radius: 10px;
}
/* 1. Rendre l'en-tête fixe (Sticky) */
/* Cible uniquement la classe que vous avez trouvée */
.minimal-header {
    position: fixed !important; /* Force la fixation */
    top: 0 !important;          /* Force le positionnement en haut */
    left: 0;
    width: 100%;
    z-index: 9999;              /* Priorité maximale */
    background-color: #ffffff; /* Ajustez la couleur de fond si nécessaire */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

/* 2. Compensateur de hauteur (75px de header + 5px de marge) */
/* Ajout d'une marge au contenu pour qu'il ne passe pas SOUS l'en-tête */
body.home .content-area,
body.page .content-area,
.single-post .content-area,
.search .content-area {
    margin-top: 80px !important; /* Base 75px + 5px de sécurité, forcé */
}
a:focus {
    outline: inherit !important;
}
#mobile-dropdown ul li a .badge-menu-icon img {
    margin-right: 0 !important;
}