﻿:root {
    --bg-primary: #cdd603;
    --color-famille: #cdd603;
    --color-pro: #003865;
    --bg-secondary: #ffffff;
    --text-primary: #555555;
    --text-secondary: #cdd603;
    --accent-primary: #ffffff;
    --accent-secondary: #1de9b6;
    --accent-hover: #9fa202;
    --border-color: #2d3f54;
    --input-bg: #0d1b2a;
    --input-border: #ffffff;
    --input-border-focus: #cdd603;
    --success: #4caf50;
    --warning: #ff9800;
    --error: #f44336;
    --font-main: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
* {
	margin:0px;
	padding:0px;
	border:none;
	outline:none;
}
body {
	font-family: var(--font-main);
	font-size:15px;
	color: var(--text-primary);
	line-height:1.9em;
	font-weight:400;
	background: var(--bg-secondary);
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
}
a{
	text-decoration:none;
	cursor:pointer;
	color: var(--text-secondary);
}
a:hover,a:focus,a:visited{
	text-decoration:none;
	outline:none;
}
h1,h2,h3,h4,h5,h6 {
	position:relative;
	font-family: 'Mansalva', serif;
	font-weight:normal;
	margin:0px;
	background:none;
	line-height:1.5em;
	color: #222;
}
input,button,select,textarea{
	font-family: 'Poppins', sans-serif;
}
p{
	position:relative;
	line-height: 24px;
	font-size: 16px;
	margin: 0;
	font-family: 'Poppins', sans-serif;
}
.section {
	padding: 80px 0;
}
.row-df	{
	display: flex;
	flex-wrap: wrap;
}
.p-40 {
	padding: 40px 0;
}
.chart-outer {
	text-align: center;
}
.strike-through{
	text-decoration:line-through;	
}
.auto-container{
	position:static;
	max-width:1200px;
	padding:0px 15px;
	margin:0 auto;
}
.medium-container{
	max-width:850px;
}
.page-wrapper{
	position:relative;
	margin:0 auto;
	width:100%;
	min-width:300px;
	overflow: hidden;
	
}
ul,li{
	list-style:none;
	padding:0px;
	margin:0px;	
}
.row-15 {
	margin: 0 -7.5px;
}
.theme-btn{
	display:inline-block;
	transition:all 0.3s ease;
	-moz-transition:all 0.3s ease;
	-webkit-transition:all 0.3s ease;
	-ms-transition:all 0.3s ease;
	-o-transition:all 0.3s ease;
}
.theme-color {
	color: var(--text-primary);
}
.centered{
	text-align:center;	
}
.btn-style-one{
	position:relative;
	font-family: 'Poppins', sans-serif;
	padding:14px 30px 9px;
	line-height:24px;
	text-transform:uppercase;
	background: var(--bg-primary);
	display: inline-block;
	color: var(--accent-primary);
	letter-spacing:1px;
	border:1px solid var(--input-border);
	font-size:15px;
	font-weight:700;
	border-radius:3px;
	transition: .5s ease;
}
.btn-style-one:hover{
	background: var(--bg-secondary);
	color: var(--text-secondary);
	transition: .5s ease;
	border:1px solid var(--input-border-focus);
}
.btn-style-two{
	position:relative;
	font-family: 'Poppins', sans-serif;
	padding:14px 30px 9px;
	line-height:24px;
	text-transform:uppercase;
	background:none;
	color: var(--accent-primary);
	letter-spacing:1px;
	border:1px solid var(--input-border);
	font-size:15px;
	font-weight:700;
	border-radius:3px;
	transition: .5s ease;
}
.btn-style-two:hover{
	background: var(--bg-primary);
	color: var(--accent-primary);
	transition: .5s ease;
    border:1px solid var(--input-border);
}
.theme-btn .icon-left{
	padding-right:10px;
}
.theme-btn .icon-right{
	padding-left:10px;
}
.theme_color{
	color: var(--text-secondary);	
}
.light-font{
	font-weight:300;	
}
.regular-font{
	font-weight:400;	
}
.semibold-font{
	font-weight:600;	
}
.bold-font{
	font-weight:700;	
}
.ex-bold-font{
	font-weight:800;	
}
.heavy-font{
	font-weight:900;
}
.bg-lightgrey{
	background-color:#fafafa;	
}
*.no-bg,
div.no-bg{
	background:none !important;	
}
.img-box {
	text-align: center;
}
.text-uppercase{
	text-transform:uppercase;	
}
.preloader{ position:fixed; left:0px; top:0px; width:100%; height:100%; z-index:999999; background-color:#fff;}
.preloader::after{ content:''; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:240px; height:240px; background-image:url(../images/elements-graphiques/element_0676.png); background-size:contain; background-repeat:no-repeat; background-position:center; opacity:0; animation:preloaderFadeIn 0.3s ease-in forwards;}
@keyframes preloaderFadeIn{ from{opacity:0;} to{opacity:1;}}
img{
	display:inline-block;
	max-width:100%;
	height:auto;	
}
.default-overlay {
    position: absolute;
    text-align: center;
    left: 10px;
    top: 10px;
    right: 10px;
    bottom: 10px;
    background: rgba(0, 0, 0, 0.7);
    transition: .5s cubic-bezier(0.4, 0, 1, 1);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .5s ease;
    -moz-transition: .5s ease;
    -ms-transition: .5s ease;
    -o-transition: .5s ease;
    transition: .5s ease;
}
.default-overlay .inner-box {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.single-item:hover .default-overlay {
  opacity: 1;
  visibility: visible;
  -webkit-transition: .5s ease;
  -moz-transition: .5s ease;
  -ms-transition: .5s ease;
  -o-transition: .5s ease;
  transition: .5s ease;
  
}
.default-overlay a {
  color: var(--text-primary);
  font-size: 40px;
}
.post-filter {
  display: inline-block;
  margin: 0;
  margin-bottom: 50px;
}
.post-filter li {
  padding: 0;
}
.post-filter li span {
  position: relative;
  color: #131d33;
  font-size: 18px;
  line-height: 24px;
  font-weight: 700;
  display: block;
  text-transform: uppercase;
  margin: 0 16px 10px;
  padding-bottom: 3px;
  cursor: pointer;
  transition: .5s ease;
}
.post-filter li:hover span,
.post-filter li.active span {
  color: var(--text-primary);
  transition: .5s ease;
}
.post-filter li span:before {
	position: absolute;
	content: "";
	height: 1px;
	width: 0%;
	left: 0;
	bottom: 0;
	background: var(--bg-primary);
	transition: .7s ease;
}
.post-filter li.active span:before,
.post-filter li:hover span:before {
	width: 100%;
	transition: .7s ease;
}

/*** 

====================================================================
	Scroll To Top style
====================================================================

***/

.scroll-to-top{
	position:fixed;
	bottom: 50px;
	right:15px;
	width:45px;
	height:40px;
	color: var(--accent-primary);
	font-size: 18px;
	text-transform:uppercase;
	line-height:38px;
	text-align:center;
	z-index:100;
	cursor:pointer;
	background: var(--bg-primary);
	display:none;
	-webkit-transition:all 300ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;
	-moz-transition:all 300ms ease;
	transition:all 300ms ease;
}
.scroll-to-top:hover{
	color: var(--accent-primary);
	background: var(--bg-primary);
}

/*** 

====================================================================
	Main Header style
====================================================================

***/

.main-header{
	position:relative;
	left:0px;
	top:0px;
	z-index:999;
	width:100%;
	background: var(--bg-secondary);
}
.main-header .logo a {
	padding: 0;
	position: relative;
	top: 7px;
	width: 70px;
	display: inline-block;
}
.main-header.fixed-header .logo a {
	position: relative;
	top: 0;
	background: none;
	display: inline-block;
	width: 70px;
	padding: 8px 0;
}
.sticky-header{
	position:fixed;
	opacity:0;
	visibility:hidden;
	left:0px;
	top:0px;
	width:100%;
	padding:0px 0px;
	background: var(--bg-secondary);
	z-index:0;
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	box-shadow: -3px 0px 50px -2px rgba(0, 0, 0, 0.1);
}
.fixed-header .sticky-header{
	z-index:999;
	opacity:1;
	visibility:visible;
	-ms-animation-name: fadeInDown;
	-moz-animation-name: fadeInDown;
	-op-animation-name: fadeInDown;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	-ms-animation-duration: 500ms;
	-moz-animation-duration: 500ms;
	-op-animation-duration: 500ms;
	-webkit-animation-duration: 500ms;
	animation-duration: 500ms;
	-ms-animation-timing-function: linear;
	-moz-animation-timing-function: linear;
	-op-animation-timing-function: linear;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	-ms-animation-iteration-count: 1;
	-moz-animation-iteration-count: 1;
	-op-animation-iteration-count: 1;
	-webkit-animation-iteration-count: 1;
	animation-iteration-count: 1;	
}
.main-header.fixed-header.menu_fixed {
	opacity: 0;
	visibility: hidden;
}
.main-header .auto-container{
	position:relative;	
}
.main-header .header-top-one{
	position:relative;
	font-size:14px;
	color: var(--accent-primary);
	background: var(--bg-primary);
	padding: 7px 0px;
}
.main-header .header-top-one .top-left{
	position:relative;
	float:left;
}
.main-header .header-top-one .top-left > ul {
	padding: 10px 0;
}
.main-header .header-top-one .top-links ul li{
	position:relative;
	float:left;
	padding:0;
	line-height:24px;
	color:#aaaaaa;
	margin-right:30px;
}
.main-header .header-top-one .top-links ul li a {
	font-size: 18px;
}
.main-header .header-top-one .top-links ul li a i {
	position: relative;
	margin-right: 5px;
	top: 1px;
}
.main-header .header-top-one ul li a{
	position:relative;
	color: #ffffff;
	font-size: 16px;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
}
.main-header .header-top-one ul li a:hover {
	color: #9ef4ce!important;
}
.main-header .header-top-one .top-right{
	position:relative;
	float:right;
}
.main-header .header-top-one .social-links{
	position:relative;
	padding:10px 0px;	
}
.main-header .header-top-one .social-links li{
	position:relative;
	float:left;
	margin-left:20px;	
}
.main-header .header-top-one .social-links li a{
	position:relative;
	display:flex;
	align-items: center;
	line-height:24px;
	color: #ffffff;
}
.main-header .header-top-one .social-links li:last-child a {
	display: flex;
	width: 30px;
	height: 30px;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	border-radius: 50%;
}
.main-header .header-top-one .social-links li:last-child a > span {
	color: var(--text-primary);
	line-height: 1;
}
.main-header .header-top-one .social-links li a:hover {
	color: #fff;
}

.main-header .header-top-one .social-links .icon-letter2 {
	margin-right: 5px;
}
/* L'email est le seul lien → :last-child lui impose 30px, on annule */
.main-header .header-top-one .social-links li a[href^="mailto"] {
	width: auto !important;
	height: auto !important;
	background-color: transparent !important;
	border-radius: 0 !important;
	white-space: nowrap;
	justify-content: flex-start;
}
.main-header .main-box{
	position:relative;
	padding:5px 0px;
	left:0px;
	top:0px;
	width:100%;
	background: var(--bg-secondary);
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.19);
	-webkit-transition:all 300ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;
	-moz-transition:all 300ms ease;
	transition:all 300ms ease;
}
.main-header .main-box .outer-container{
	position:relative;
}
.main-header .main-box .logo-box{
	position:relative;
	float:left;
	left:0px;
	padding: 8px 0px 15px;
	z-index:10;
}
.fixed-header .main-box .logo-box{
	padding:5px 0px;	
}
.main-header .main-box .logo-box .logo img{
	display:inline-block;
	max-width: 70px;
	-webkit-transition:all 300ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;
	-moz-transition:all 300ms ease;
	transition:all 300ms ease;	
}
.main-header .nav-outer{
	position:relative;
	float:right;
	padding-right: 110px;
}
.main-menu{
	position:relative;
}
.main-menu .navbar-collapse{
	padding:0px;	
}
.main-menu .navigation{
	position:relative;
	margin:0px;
}
.main-menu .navigation > li{
	position:relative;
	display:inline-block;
	float:left;
	padding: 10px 0px;
	margin-left: 35px;
}
.main-menu .navigation > li > a{
	position:relative;
	display:block;
	padding: 32px 0px 28px;
	color: #131d33;
	text-align:center;
	line-height:30px;
	text-transform: uppercase;
	font-weight: 600;
	opacity:1;
	font-size: 15px;
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
}
.sticky-header .main-menu .navigation > li > a{
	padding: 23px 25px !important;
	color:#333333 !important;
}
.sticky-header .main-menu .navigation > li.dropdown > a:after{
	display:none;
}
.main-menu .navigation > li:hover > a,
.main-menu .navigation > li.current > a{
	color: var(--text-secondary);
	opacity:1;
}
.sticky-header .main-menu .navigation > li:hover > a,
.sticky-header .main-menu .navigation > li.current > a {
	color: var(--color-famille)!important;
}
.main-menu .navigation > li > ul{
	position:absolute;
	left:0px;
	top:100%;
	width: 270px;
	z-index:100;
	padding: 7px 25px;
	display:none;
	background: #fff;
	border-top: 2px solid var(--color-famille);
	transition:all 300ms ease;
	-moz-transition:all 300ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;
	-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);
	-ms-box-shadow:0 6px 12px rgba(0,0,0,.175);
	-o-box-shadow:0 6px 12px rgba(0,0,0,.175);
	-moz-box-shadow:0 6px 12px rgba(0,0,0,.175);
	box-shadow:0 6px 12px rgba(0,0,0,.175);
}
.main-menu .navigation > li > ul > li{
	position:relative;
	width:100%;
}
.main-menu .navigation > li > ul > li:last-child{
	border-bottom:none;	
}
.main-menu .navigation > li > ul > li > a{
	position:relative;
	display:block;
	padding: 14px 0px 11px;
	line-height:24px;
	border-bottom: 1px solid #eee;
	font-weight:600;
	font-size:15px;
	color: #999;
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
}
.main-menu .navigation > li > ul > li.current > a {
	color: var(--text-primary);
}
.main-menu .navigation > li > ul > li:last-child a {
	border-color: rgba(255, 255, 255, 0.39);
}
.main-menu .navigation > li > ul > li:hover > a{
	color: var(--text-primary);
}
.main-menu .navigation > li.dropdown:hover > ul{
	visibility:visible;
	opacity:1;
	top:100%;	
}
.main-menu .navbar-collapse > ul li.dropdown .dropdown-btn{
	position:absolute;
	right:10px;
	top:6px;
	width:34px;
	height:30px;
	border:1px solid var(--input-border);
	text-align:center;
	font-size:16px;
	line-height:28px;
	color: var(--accent-primary);
	cursor:pointer;
	z-index:5;
	display:none;
}
.sticky-header .main-menu .navigation > li{
	float:left;
	padding: 0;
	margin: 0;
	display:block;
}

/*** 

====================================================================
	Main Slider style
==================================================================== 

***/


.owl-carousel {
    touch-action: manipulation; 
}
.main-slider{
	position:relative;
	z-index: 10;
}
.sponsors-style-two .owl-carousel .owl-item .image-box{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
}
.main-slider .item {
	width: 100%;
	display: flex;
	align-items: center;
	padding: 225px 0 205px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.main-slider h1, .main-slider h2{
	font-weight:700;
	line-height:1.2em;
	color:#fff;
	font-size:60px;
	font-family: 'Mansalva', serif;
	letter-spacing:1px;
}
.main-slider .text{
	font-weight:400;
	line-height:1.1em;
	color:#fff;
	font-size:27px;
	max-width: 1000px;
	margin: 20px 0 30px
}
.main-banner__btn a {
	margin-bottom: 20px;
}
.main-banner__btn a:last-child {
	margin-bottom: 0;
}

/***
====================================================================
	About Us
====================================================================

***/

.btn-wrap {
	margin-top: 50px!important;
	text-align: center!important;
}
.sec-title{
	position:relative;
	margin-bottom:50px;	
}
.sec-title.centered{
	margin-bottom:50px;	
}
.sec-title h2{
	position:relative;
	font-size: 30px;
	color:#232323;
	font-weight: 700;
	line-height:1.5em;
	padding-bottom:10px;
	margin-bottom: 30px;
}
.sec-title h2 span {
	color: var(--text-primary);
}
.sec-title h2:before{
	content:'';
	position:absolute;
	left:0px;
	bottom:0px;
	width: 81px;
	border-bottom: 4px dotted var(--color-famille);
}
.sec-title.centered h2:before{
	left:50%;
	margin-left:-40.5px;	
}
.sec-title img
{
	padding-top: 19px;
}
.about-us-2 {
	position: relative;
	border-top: 1px solid #f4f4f4;
}
.about-us-2 h2 {
	font-weight: 700;
	margin-bottom: 20px;
}
.about-us-2 p {
	font-size: 17px;
	line-height: 27px;
}
.about-us-2 p.theme_color {
	font-weight: 700;
}
.feature-item {
	position: relative;
	padding-left: 80px;
	margin-top: 30px;
}
.feature-item .icon-box {
	position: absolute;
	left: 0;
	top: 0;
	width: 65px;
	height: 65px;
	text-align: center;
	font-size: 26px;
	color: #ffffff;
	background: var(--bg-primary);
	line-height: 63px;
	border: 1px solid var(--color-famille);
	border-radius: 50%;
}
.feature-item h5 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 7px;
}
.feature-item p {
	font-size: 16px;
	font-family: 'Poppins', sans-serif;
	font-style: normal;
	line-height: 24px;
}

/*** 

====================================================================
	Services Style One
====================================================================

***/

.services-style-one.section {
	position:relative;
	padding-bottom: 50px;
}
.row-flex {
	display: flex;
	flex-wrap: wrap;
}
.services-style-one:before{
	position:absolute;
	content:'';
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	display:block;
	background-color: rgb(255, 255, 255);
}
.service-block2{
	position:relative;
	padding-bottom:30px;
	display: inline-block;
	height: 100%;
}
.service-block2 .content {
    border: 1px solid #f4f4f4;
    padding: 20px;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}
.service-block2 .content > p {
	margin-bottom: 20px;
	flex-grow: 1;
}
.service-block2 .inner-box{
	position:relative;
	overflow:hidden;
	height: 100%;
	display: flex;
	flex-direction: column;
}
.service-block2 .inner-box .image-box{
	position:relative;
}
.service-block2 .inner-box .image-box img{
	position:relative;
	width:100%;
	display:block;
}
.service-block2 .inner-box .content h3 {
	color: #232323;
	font-weight: 700;
	font-size: 18px;
}
.service-block2 .content .top-area {
  margin-bottom: 5px;
	display: flex;
}
.service-block2 .icon_box {
  position: relative;
  font-size: 48px;
  line-height: 50px;
  color: var(--text-primary);
  margin-right: 20px;
  padding-right: 15px;
  border-right: 1px solid #f4f4f4;
  float: left;
  margin-bottom: 10px;
}
.service-block2 .text {
    position: relative;
    float: left;
    margin-bottom: 14px;
}

/*** 

====================================================================
	parallax Section
====================================================================

***/


.parallax {
	position: relative;
	padding: 100px 0px 110px;
/*	background-attachment: fixed;*/
	background-position: center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: scroll !important;
}
.parallax h3 {
	color: #fff;
	line-height: 55px;
	font-size: 36px;
	font-weight: 700;
	margin-bottom: 40px;
}
.parallax a {
	margin: 0 10px;
	display: inline-block;
}
.parallax:before {
    content: '';
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
}

/*** 

====================================================================
	Fun Facts Section
====================================================================

***/

.fun-facts-section{
	position:relative;
	background-color:#5a7d00;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center center;
	background-attachment:fixed;
	color: var(--accent-primary);
}
.fun-facts-section:before{
	content:'';
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	background:#5a7d00;
}
.fun-facts-section .auto-container{
	position:relative;
	z-index:1;	
}
.fun-facts-section .sec-title h2{
	text-transform:none;
	padding-bottom:0px;	
}
.fun-facts-section .sec-title h2:before,
.fun-facts-section .sec-title h2:after{
	display:none;
}
.fun-facts-section .column{
	position:relative;
	margin-bottom:40px;
}
.fun-facts-section .column .inner{
	position:relative;
	text-align:center;
	background: var(--bg-primary);
	padding: 30px 0;
}
.fun-facts-section .column .icon-box{
	position:relative;
	color: #ffffff;
	line-height:1em;
	font-weight:normal;
	font-size: 40px;
	margin-bottom: 10px;
}
.fun-facts-section .column .content{
	position:relative;
}
.fun-facts-section .count-outer{
	position:relative;
	font-size: 30px;
	line-height:48px;
	font-weight:700;
	color: #ffffff;
	margin-bottom: 0px;
	font-family: 'Mansalva', serif;
}
.fun-facts-section .count-outer .count-text{
	font-weight:700;
}
.fun-facts-section .count-outer .plus {
	font-size: 18px;
	font-weight: 400;
	margin-left: 10px;
	position: relative;
	top: -10px;
}
.fun-facts-section .count-outer .count-prefix {
	font-size: 18px;
	font-weight: 400;
	margin-right: 2px;
	position: relative;
	top: -10px;
}
.fun-facts-section .count-outer .count-static {
	font-weight: 700;
}
.fun-facts-section .column .counter-title{
	position:relative;
	font-size:16px;
	line-height:30px;
	font-weight:400;
	color: #fff;
	font-family: 'Mansalva', serif;
}
.fun-facts-section.style-three {
	position:relative;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center center;
	background-attachment:fixed;
	color: var(--accent-primary);
}
.fun-facts-section.style-three.section {
	padding-bottom: 40px;
}
.fun-facts-section.style-three .row {
	display: flex;
	align-items: center;
}
.fun-facts-section.style-three:before{
	content:'';
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	background: #5a7d00;
}
.fun-facts-section.style-three .auto-container{
	position:relative;
	z-index:1;	
}
.fun-facts-section.style-three .content-column{
	position:relative;
	margin-bottom:30px;	
}
.fun-facts-section.style-three .content-column h2{
	font-size:24px;
	font-weight:700;
	color: var(--accent-primary);
	line-height:1.5em;
	margin-bottom:15px;
}
.fun-facts-section.style-three .content-column .text{
	position:relative;
	font-size:14px;
	line-height:1.9em;
	margin-bottom:30px;	
}

/*** 

====================================================================
	Gallery Section
====================================================================

***/

.gallery-section{
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
    color: #ffffff;
}
.default-portfolio-item{
	position:relative;
	margin-bottom:30px;
}
.default-portfolio-item.mix{
	display:none;
}
.default-portfolio-item .inner-box{
	position:relative;
	width:100%;
	overflow:hidden;
}
.default-portfolio-item .image-box{
	position:relative;
	display:block;
}
.default-portfolio-item .image-box img{
	position:relative;
	display:block;
	border-radius:3px;
	width:100%;
}
.default-portfolio-item .overlay-box{
	position:absolute;
	left:0px;
	top:-100%;
	width:100%;
	height:100%;
	padding:0px;
	color: #fff;
	opacity:0;
	text-align:center;
	transition: all 500ms ease;
	-webkit-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
}
.default-portfolio-item .inner-box:hover .overlay-box{
	top:0px;
	opacity:1;	
}
.default-portfolio-item .overlay-inner{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	display:table;
	vertical-align:middle;
	padding:10px 20px;
	background: rgba(20, 30, 52, 0.57);
}
.default-portfolio-item .overlay-inner .content{
	position:relative;
	display:table-cell;
	vertical-align:middle;
	padding:10px 15px;
}
.default-portfolio-item .overlay-inner .option-btn{
	position:relative;
	display:block;
	color: var(--text-primary);
	font-size:14px;
	width:44px;
	height:44px;
	line-height:36px;
	margin:0 auto;
	border:4px solid rgba(53,77,113,0.50);
	background: var(--bg-secondary);
	border-radius:50%;
	transition: all 500ms ease;
	-webkit-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
}
.fancybox-next span,
.fancybox-prev span{
	background-image:none !important;
	width:44px !important;
	height:44px !important;
	line-height:44px !important;
	text-align:center;
}
.fancybox-next span:before,
.fancybox-prev span:before{
	content:'';
	position:absolute;
	font-family: 'FontAwesome';
	left:0px;
	top:0px;
	font-size:12px;
	width:44px !important;
	height:44px !important;
	line-height:44px !important;
	background-color:rgba(28,28,28,0.40) !important;
	color: var(--accent-primary);
	visibility:visible;
	transition: all 500ms ease;
	-webkit-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
}
.fancybox-next span:before{
	content:'\f178';
}
.fancybox-prev span:before{
	content:'\f177';
}
.fancybox-next:hover span:before,
.fancybox-prev:hover span:before{
	background-color:var(--color-famille) !important;
	color: var(--accent-primary);	
}
.fancybox-type-image .fancybox-close{
	right:0px;
	top:0px;
	width:45px;
	height:45px;
	background:url(../images/icons/icon-cross.png) center center no-repeat;
	background-color:rgba(17,17,17,0.50) !important;	
}
.fancybox-type-image .fancybox-close:hover{
	background-color:#000000 !important;	
}
.fancybox-type-image .fancybox-skin{
	padding:0px !important;	
}

/*** 

====================================================================
	Default Form Styling
====================================================================

***/

.default-form .form-group{
	position:relative;
	margin-bottom:25px;	
}
.default-form input[type="text"],
.default-form input[type="email"],
.default-form input[type="password"],
.default-form input[type="tel"],
.default-form input[type="url"],
.default-form select,
.default-form textarea{
	display:block;
	width:100%;
	line-height:24px;
	height: 50px;
	font-size:14px;
	border: 1px solid #f2f2f2;
	padding:8px 20px 8px;
	background-color: #f7f7f7;
	color:#333333;
	border-radius:0px;
	transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
}
.default-form select{
	cursor:pointer;
	-moz-appearance:none;
	-webkit-appearance:none;
	-ms-appearance:none;
	-o-appearance:none;
	background:#ffffff url(../images/icons/icon-select.png) right center no-repeat;
}
.default-form textarea{
	height: 200px;
	resize:none;
	margin-bottom:10px;
}
.default-form select option{
	text-indent:20px;
	color:#222222;	
}
.default-form input:focus,
.default-form select:focus,
.default-form textarea:focus{
	border-color: var(--text-secondary);	
}
.default-form input.error,
.default-form select.error,
.default-form textarea.error{
	border-color:#ff0000 !important;	
}
.default-form label.error{
	display:block;
	line-height:24px;
	padding:5px 0px 0px;
	margin:0px;
	text-transform:uppercase;
	font-size:13px;
	color:#ff0000;
	font-weight:400;	
}

/*** 

====================================================================
	Main Footer
====================================================================

***/

.main-footer{
	position:relative;
	color:#9b9b9b;
	background: #222;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;
}
.main-footer .auto-container,
.footer-bottom .auto-container {
	max-width: 100%;
	padding: 0;
}
.main-footer .row {
	margin-left: 0;
	margin-right: 0;
}
.main-footer .footer-upper .row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.main-footer [class*="col-"] {
	padding-left: 0;
	padding-right: 0;
}
@media only screen and (min-width: 768px) {
	.main-footer [class*="col-"] {
		padding-left: 30px;
		padding-right: 30px;
	}
	.main-footer .footer-upper [class*="col-"]:first-child {
		text-align: justify;
	}
}
@media only screen and (min-width: 992px) {
	.main-footer .footer-upper [class*="col-"]:nth-child(2),
	.main-footer .footer-upper [class*="col-"]:nth-child(3),
	.main-footer .footer-upper [class*="col-"]:last-child {
		width: fit-content;
	}
}
@media only screen and (max-width: 767px) {
	.main-footer .auto-container,
	.footer-bottom .auto-container {
		padding: 0 15px;
	}
	.main-footer .footer-upper .row {
		flex-direction: column;
	}
	.main-footer .footer-upper [class*="col-"] {
		width: 100%;
	}
}
.main-footer a {
	color: #FFF!important;
}
.main-footer .footer-upper{
	position:relative;
	color: #999;
	padding-bottom: 30px;
}
.main-footer .footer-upper .column{
	position:relative;
	margin-bottom:40px;	
}
.footer-upper .column h3{
	position:relative;
	font-size: 20px;
	line-height:30px;
	margin-bottom:32px;
	color: var(--accent-primary);
	font-weight: 600;
}
.main-footer .about-widget{
	font-size:15px;
}
.main-footer .about-widget p {
	margin-bottom: 20px;
	color:#fff;
}
.main-footer .footer-upper a{
	transition:all 0.5s ease;
	-moz-transition:all 0.5s ease;
	-webkit-transition:all 0.5s ease;
	-ms-transition:all 0.5s ease;
	-o-transition:all 0.5s ease;
}
.main-footer .footer-upper a:hover{
	color: var(--accent-primary);	
}
.footer-upper .links-widget li{
	position:relative;
	margin-bottom: 16px;
}
.footer-upper .links-widget li a{
	position:relative;
	display:block;
	font-size:15px;
	padding-left: 20px;
	color: #fff;
	line-height:20px;
}
.footer-upper .links-widget li a:before {
	position: absolute;
	content: "\e91a";
	font-family: icomoon;
	font-size: 13px;
	color: var(--text-primary);
	left: 0;
	top: 0px;
}
.footer-upper .links-widget li a:hover{
	color: var(--accent-primary);	
}
.main-footer .social-links a{
	position:relative;
	display:inline-block;
	font-size:16px;
	width:44px;
	height:44px;
	line-height:44px;
	text-align:center;
	margin: 0px 5px 0px 0px;
	color: #ffffff;
	background: #333;
	border-radius: 50%;
	transition:all 0.5s ease;
	-moz-transition:all 0.5s ease;
	-webkit-transition:all 0.5s ease;
	-ms-transition:all 0.5s ease;
	-o-transition:all 0.5s ease;
}
.main-footer .social-links a:hover{
	color: var(--accent-primary);
	background: var(--bg-primary);	
}
.main-footer .contact-info{
	font-size:16px;	
}
.main-footer .contact-info li{
	margin-bottom:10px;	
}

/*============ contact-column =================*/

.main-footer .contact-column {
  position:relative;
}
.main-footer .contact-column .contact-info {
  margin-top: 20px;
}
.main-footer .contact-column .contact-info li {
  position: relative;
  padding-left: 30px;
  font-size: 16px;
  color: #fff;
  line-height: 26px;
  margin-bottom: 10px;
  border-bottom: 1px solid #333;
  padding-bottom: 10px;
}
.main-footer .contact-column .contact-info li span {
  color: #fff;
  font-family: 'Mansalva', serif;
  font-weight: 700;
}
.main-footer .contact-column .contact-info li i {
  font-size: 18px;
  color: var(--text-primary);
  position: absolute;
  left: 0;
  top: 6px;
}

/*==================
	footer-bottom
==================*/

.footer-bottom{
	position:relative;
	padding: 20px 0px;
	line-height:22px;
	color:#b3b3b3;
	background: #191919;
	font-size:13px;
}
.footer-bottom .copyright-text {
    font-size: 16px;
    line-height: 26px;
    margin-top: 14px;
}
.footer-legal-col { text-align: right; }

/* Centrage footer-bottom quand les colonnes s'empilent */
@media only screen and (max-width: 991px) {
    .footer-bottom-row .col-sm-12 .copyright-text,
    .footer-bottom-row .footer-legal-col { text-align: center !important; }
    .footer-bottom .copyright-text { margin-top: 6px; }
    .footer-bottom .copyright-text img { height: 120px !important; }
}

/*** 

====================================================================
	Sponsors Style Two
====================================================================

***/

.sponsors-style-two{
	position:relative;
	background: #fff;
	padding: 40px 0px 100px;
}
.sponsors-style-two .image-box{
	position:relative;
	display:block;
	background: #fff;
	text-align:center;
	border: 1px solid #f1f1f1;
	padding: 15px 0;
}
.sponsors-style-two .image-box img{
	position:relative;
	display:inline-block;
	width:auto;
	max-width:100%;
	transition:all 300ms ease;
	-webkit-transition:all 300ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;	
}
.sponsors-style-two .image-box:hover img{
	opacity:1;	
}
.sponsors-style-two .owl-theme .owl-nav,
.sponsors-style-two .owl-theme .owl-dots{
	display:none;	
}

/*** 

====================================================================
	testimonial style five
====================================================================

***/

.feature-style-1 .content h4 {
    font-size: 20px;
    color: var(--text-primary);
    font-weight: 700;
    margin-bottom: 12px;
}
.feature-style-1 .company .content {
	margin-top: 15px;
}
.feature-style-1 .row-df {
	margin-top:20px;
}
.testimonial_container {
	padding-right:31px;
}
.feature-style-1  h3 {
	color: #232323;
	font-weight: 700;
}
.feature-style-1 .row-df h3 {
	margin-bottom: 20px;
}


/*Accordion Box*/

.accordion-box{
	position:relative;
}
.accordion-box .block{
	position:relative;
	margin-bottom: 24px;
}
.accordion-box .block:before{
	content:'';
	position:absolute;
	left:20px;
	top:32px;
	height:100%;
	border-right:1px dashed #d0d0d0;	
}
.accordion-box .block:last-child:before{
	display:none;	
}
.accordion-box .block .acc-btn{
	position:relative;
	font-size:16px;
	margin-bottom:0px;
	cursor:pointer;
	line-height:24px;
	font-family: 'Roboto Slab',sans-serif;
	font-weight:700;
	padding:10px 20px 10px 70px;
	overflow:hidden;
	color:#222222;
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	z-index:1;
}
.accordion-box .block .acc-btn .icon-outer{
	position:absolute;
	display:block;
	left:0px;
	top:0px;
	width:42px;
	height:42px;
	font-weight:normal;
	text-align:center;
	color:#333333;
	background:#f0f0f0;
	border:1px solid #e5e5e5;
	border-radius:3px;
}
.accordion-box .block .acc-btn .icon-outer .icon{
	position:absolute;
	display:block;
	left:0px;
	top:50%;
	margin-top:-15px;
	width:100%;
	height:30px;
	line-height:30px;
	font-size:16px;
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
}
.accordion-box .block .acc-btn.active .icon-outer{
	color: var(--accent-primary);
	background: var(--bg-primary);
}
.accordion-box .block .acc-btn.active .icon-outer .icon{
	-webkit-transform:rotate(90deg);
	-ms-transform:rotate(90deg);
	-o-transform:rotate(90deg);
	-moz-transform:rotate(90deg);
	transform:rotate(90deg);
}
.accordion-box .block .acc-content{
	position:relative;
	display:none;	
}
.accordion-box .block .acc-content.current{
	display:block;	
}
.accordion-box .block .content{
	position:relative;
	font-size:14px;
	color:#999;
	padding:0px 20px 0px 70px;	
}
.accordion-box.style-two .block .content{
	background:#fafafa;	
}
.accordion-box .block .content p{
	margin-bottom:15px;
	line-height:2em;	
}
.accordion-box .block .content p:last-child{
	margin-bottom:0px;	
}

/*** 

====================================================================
	Page Title Style
====================================================================

***/

.page-title{
	position:relative;
	padding:200px 0px!important;
	background-size:cover;
	background-position:center center;
	background-repeat:no-repeat;
	text-align:center;
}
.page-title:before{
	content:'';
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	position:absolute;
	background-color:rgba(0,0,0,0.50);
}
.page-title .auto-container{
	position:relative;
	z-index:1;
}	
.page-title h1{
	position:relative;
	font-size:48px;
	font-weight:800;
	color: var(--accent-primary);
	line-height:1.6em;
	margin-bottom:10px;
}
.page-title .bread-crumb-outer{
	display:none;
	position:relative;
	padding:0px 0px;
	font-family: 'Mansalva', serif;
}
.page-title .bread-crumb-outer .bread-crumb li{
	position:relative;
	float:left;
	margin-right:24px;
	color: var(--accent-primary);
	line-height:24px;

	font-size:14px;
}
.page-title .bread-crumb-outer .bread-crumb li:last-child{
	margin-right:0px;
}
.page-title .bread-crumb-outer .bread-crumb li:after{
	content:'/';
	position:absolute;
	right:-16px;
	width:10px;
	line-height:24px;
	font-size:14px;
	color: var(--accent-primary);
}
.page-title .bread-crumb-outer .bread-crumb li:last-child:after{
	display:none;	
}
.page-title .bread-crumb-outer .bread-crumb li a{
	color: var(--accent-primary);
	font-weight:400;	
}
.page-title .bread-crumb-outer .bread-crumb li a:hover{
	color:#c7fde7;
}
.page-title .bread-crumb-outer .bread-crumb li.active{
	color:#c7fde7;
}


/*** 

====================================================================
	Contact Section
====================================================================

***/

.contact-section{
	position:relative;
}
.contact-section.contact2 {
	padding-top: 0;
}
.contact-section .form-column{
	margin-bottom:10px;	
}
.contact-section h2:before{
	content:'';
	position:absolute;
}
.contact-section h2:after{
	content:'';
	position:absolute;
}
.contact-section .text{
	font-size:14px;
	line-height:1.8em;
	margin-bottom:15px;
	margin-top:0px;
}
.contact-section .contact-info{
	position:relative;	
}
.contact-section .contact-info li{
	position:relative;
	display:block;
	padding:4px 0px 4px 50px;
	line-height:24px;
	font-size:14px;
	margin-bottom:15px;
	color:#888888;
	min-height:32px;
}
.contact-section .contact-info li:hover{
	color:#333333;
}
.contact-section .contact-info li .icon-box{
	position:absolute;
	left:0px;
	top:0;
	text-align:center;
	width:32px;
	height:32px;
	line-height:28px;
	border:2px solid var(--color-famille);
	background:none;
	font-size:12px;
	color: var(--text-secondary);
	border-radius:50%;
}
.contact-section .contact-info li:hover .icon-box{
	background: var(--bg-primary);
	color: var(--accent-primary);
}
.contact-section .default-form .form-group{
	margin-bottom:20px;	
}
.contact-section .default-form textarea{
	height: 190px;
}
.contact-section .default-form .theme-btn{
	margin-top:10px;
}

/*** 

====================================================================
	Sidebar Page
====================================================================

***/

.sidebar-page-container{
	position:relative;
}
.sidebar{
	position:relative;
}
.sidebar .sidebar-widget{
	position:relative;
	margin-bottom:50px;	
}
.sidebar .service-list{
	position:relative;
}
.sidebar .service-list li{
	position:relative;
	line-height:24px;
	margin-bottom: 5px;
}
.sidebar .service-list li:last-child{
	border-bottom:none;	
}
.sidebar .service-list li a{
	position:relative;
	display:block;
	color: #232323;
	font-size:14px;
	background: #f7f7f7;
	font-family: 'Mansalva', serif;
	font-weight:400;
	line-height: 30px;
	padding:10px 20px;
	transition:all 300ms ease;
	-webkit-transition:all 300ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;
	-moz-transition:all 300ms ease;
}
.sidebar .service-list li a:before{
	font-family: 'FontAwesome';
	content: "\f105";
	position:absolute;
	right:20px;
	top:10px;
	display:block;
	line-height:26px;
	font-size:12px;
	font-weight:normal;
	text-align:center;
	z-index:5;
}
.sidebar .service-list li a:hover,
.sidebar .service-list li.current a{
	color: var(--text-secondary);
}
.sidebar .service-list{
	position:relative;
}

/*** 

====================================================================
	Services Details Section
====================================================================

***/

.service-details{
	position:relative;
}
.service-details h2{
	position:relative;
	font-size:18px;
	font-weight:700;
	color:#222222;
	padding-bottom:15px;
	margin-bottom:25px;
	font-family: 'Mansalva', serif;
}
.service-details h2:before{
    content: '';
    position: absolute;
    left: 0px;
    bottom: 0px;
    width: 81px;
    border-bottom: 4px dotted var(--color-famille);
}
.service-details .big-image{
	position:relative;
}
.service-details .big-image img{
	display:block;
	width:100%;	
}
.service-details .row-df > div {
	display: flex;
	align-items: center;
}
.service-details .content .content{
	position:relative;
	line-height:1.9em;	
}
.service-details .content p{
	margin-bottom:25px;	
}
.service-details blockquote{
	margin-bottom:25px;
	padding:40px 20px 30px 40px;
	color: var(--text-secondary);
	background: #f7f7f7;
	font-style:italic;
	font-size:17px;
	border:none;
	border-left: 2px solid var(--color-famille);
	line-height:25px;
}
.service-details blockquote .txt{
	position:relative;
	padding:0px 50px;
}
.service-details blockquote .txt:before{
	content: "";
	position:absolute;
	left:0px;
	top:0px;
	font-style:normal;
	font-size:77px;
	color:#dddddd;
	line-height:1.1em;
}
.service-details .faqs{
	position:relative;
	padding-top:30px;	
	margin-bottom: 50px;
}
/*effect*/
.default-portfolio-item {
	position: relative;
}
/* Common style */
.default-portfolio-item figure {
	position: relative;
	float: left;
	overflow: hidden;
	margin: 10px 1%;
	height: auto;
	background: #fff;
	text-align: center;
	cursor: pointer;
}
.default-portfolio-item figure img {
	position: relative;
	display: block;
	min-height: 100%;
	max-width: 100%;
}

/*** 

====================================================================
	FAQ's style
====================================================================

***/

.faq-section {
	padding: 100px 0px;
}

/*** 

====================================================================
	Error Section
====================================================================

 ***/

.error-section{
	position: relative;
	text-align: center;
	padding: 150px 0px 110px;
}
.error-section h3{
	position: relative;
	color: #1c1c1c;
	font-size: 32px;
	line-height: 1.4em;
	font-weight: 700;
}
.error-section h3 span {
    font-size: 150px;
    line-height: 198px;
}
.error-section .text{
	position: relative;
	font-size: 14px;
	color: #777777;
	margin-top: 15px;
	line-height: 1.8em;
}
.error-section .text a{
	color: #3598db;
}
.error-section .search-website{
	position:relative;
	max-width:560px;
	margin:0 auto 40px;
	margin-top: 40px;
}
.error-section .search-website .form-group{
	position:relative;
	margin-bottom:0px;
	text-align:left;
}
.error-section .search-website .form-group input[type="text"],
.error-section .search-website .form-group input[type="search"],
.error-section .search-website .form-group textarea{
	position:relative;
	display:block;
	max-width:400px;
	width: 100%;
	line-height:26px;
	padding:10px 15px;
	background:#f4f4f4;
	border:1px solid #f4f4f4;
	height:48px;
	border-radius:3px;
	-moz-transition:all 0.5s ease;
	-webkit-transition:all 0.5s ease;
	-ms-transition:all 0.5s ease;
	-o-transition:all 0.5s ease;
	transition:all 0.5s ease;	
}
.error-section .search-website .form-group input[type="text"]:focus,
.error-section .search-website .form-group input[type="search"]:focus,
.error-section .search-website .form-group textarea:focus{
	border-color:#b09991;
}
.error-section .search-website .form-group button{
	position:absolute;
	right:0px;
	top:0px;
	display:block;
	width:150px;
	height:46px;
	text-align:center;
	margin:0px;
	padding:11px 30px;
	line-height:24px;
	font-size:14px;
	background: #1b1a1b;
	color: var(--accent-primary);
	font-weight:800;
	border-radius:2px;
}
.error-section .search-website .form-group button:hover,
.error-section .search-website .form-group input:focus + button{
	background: var(--bg-primary);
	color: var(--accent-primary);
}
.consultation {
    border-bottom: 1px solid #f4f4f4;
}

/*** 

====================================================================
  google map Section
====================================================================

***/
.home-google-map #contact-google-map {
  width: 100%;
  height: 450px;
}
.home-google-map2 #contact-google-map {
  width: 100%;
  height: 330px;
}
.home-google-map .gmnoprint {
    display: none;
}
.list-style-two {
	display: list-item;
	padding-left: 40px;
}
.list-style-two li {
	margin-bottom: 0;
	list-style: disc;
}

/*** 

====================================================================
   farmer Section
====================================================================

***/

.our_farmer {
  position: relative;
}
.our_farmer.section {
	padding-top: 0;
}
.our_farmer .item {
	max-width: 360px;
	margin: 0 auto;
	padding-bottom: 40px;
	height: 100%;
	display: flex;
	flex-direction: column;
}
.our_farmer .item .img_holder{
  -webkit-transition: .5s ease;
  transition: .5s ease;
  border: 2px solid #f7f7f7;
  position: relative;
}

.our_farmer .text {
  position: relative;
  background: #f7f7f7;
  padding: 20px 20px;
  text-align: center;
  margin-top: -30px;
  z-index: 1;
  -webkit-transition: .4s ease;
  transition: .4s ease;
	flex-grow: 1;
}
.our_farmer .text h4 {
  color: #333;
  font-size: 20px;
  font-weight: 700;
}
.our_farmer .text h5 {
  color: #7fb401;
  font-size: 14px;
  margin-top: 7px;
  margin-bottom: 10px;
}
/* Filter the 'background' value classes*/


.scroll-to-top,
.error-section .search-website .form-group button:hover,
.error-section .search-website .form-group input:focus + button,
.fancybox-next:hover span:before,
.fancybox-prev:hover span:before,
.fancybox-next:hover span:before,
.fancybox-prev:hover span:before,
.btn-style-one,
.btn-style-three,
.btn-style-four:hover,
.btn-style-five:hover,
.scroll-to-top:hover,
.main-footer .social-links a:hover,
.accordion-box .block .acc-btn.active .icon-outer,
.contact-section .contact-info li:hover .icon-box,
.post-filter li span:before,
.main-menu .navbar-header .navbar-toggle,
.feature-item .icon-box,
.main-header .header-top-one,
.fun-facts-section .column .inner,
.theme_bg_color
{
  background: var(--bg-primary);
}

/* Filter the 'color' value classes*/
a,
.btn-style-one:hover,
.btn-style-three:hover,
.btn-style-four:hover,
.btn-style-five,
.theme_color,
.main-header .header-top-one .top-links ul li a:hover,
.main-header .header-top-one .social-links li a:hover,
.main-menu .navigation > li:hover > a,
.main-menu .navigation > li.current > a,
.main-header.header-style-three .info-box .icon-box,
.contact-section .contact-info li .icon-box,
.sidebar .service-list li a:hover,
.sidebar .service-list li.current a,
.post-filter li:hover span, 
.post-filter li.active span,
.theme-color,
.default-service-block .icon-box,
.sticky-header .main-menu .navigation > li:hover > a, .sticky-header .main-menu .navigation > li.current > a,
.main-menu .navigation > li > ul > li:hover > a,
.default-overlay a,
.service-block2 .icon_box,
.sec-title h2 span,
.footer-upper .links-widget li a:before,
.main-footer .contact-column .contact-info li i,
.feature-style-1 .content h4,
.our_farmer .text h5,
.thm-color:before {
  color: var(--text-secondary);
}


.sticky-header .main-menu .navigation > li.current > a,
.sticky-header .main-menu .navigation > li:hover > a {
	color: var(--color-famille) !important;
}

/* Filter the 2px solid border value classes */

.sec-title h2:before,
.sec-title h2:after,
.btn-style-one,
.btn-style-three,
.btn-style-five,
.main-menu .navigation > li > ul,
.service-block2 .inner-box .image-box .overlay-box,
.contact-section .contact-info li .icon-box,
.contact-section h2:before,
.contact-section h2:after,
.main-menu .navbar-header .navbar-toggle,
.default-form input:focus, 
.default-form select:focus, 
.default-form textarea:focus,
.feature-item .icon-box,
.service-details blockquote,
.service-details h3:before,
.service-details h3:after,
.border-color {
  border-color: var(--text-primary);
}
.service-details__item .list-style-two {
	margin-bottom: 15px;
}
.service-details__item h4 {
	margin-bottom: 15px;
}
.service-details__item p {
    text-align: justify;
}


@media only screen and (max-width: 1340px){
	.page-wrapper{
		overflow:hidden;	
	}
}

@media only screen and (min-width: 1200px){
	.main-footer .footer-widget.links-widget {
	    margin-left: 50px;
	}
}

@media only screen and (max-width: 1140px){
	.main-header{
		position:relative;
		margin:0px !important;
	}
	.main-header .nav-outer{
		padding-right: 0;
	}
	.main-header .main-box .logo-box{
		padding: 0px;
	}
	.main-header .main-box .logo-box .logo a {
		top:0;
	}
	.main-menu .navigation > li{
		margin-left:0px;
		margin-right:30px;	
		padding: 0;
	}
	.main-menu .navigation > li:last-child {
		margin-right: 0;
	}
	.main-menu .navigation > li > a {
		padding: 28px 0;
	}
    .page-title{
        padding:80px 0px;
    }
	.sidebar-page-container .sidebar,
	.sidebar.default-sidebar{
		margin-left:0px;	
	}
	.sidebar-page-container .content-side,
	.sidebar-page-container .content-side.default-content-side{
		padding-right:15px;	
	}
	.main-footer .posts-widget{
		padding-right:0px;	
	}
	.main-footer .subscribe-widget{
		padding-left:0px;	
	}
	.accordion-box .block .acc-btn,
	.accordion-box .block .content{
		padding-right:0px;	
	}
	.with-left-sidebar .content-side{
		padding-left:15px;	
	}
	.with-left-sidebar .sidebar{
		margin-right:0px;
	}
}

@media only screen and (min-width: 768px){
	.main-menu .navigation > li > ul{
		display:block !important;
		visibility:hidden;
		opacity:0;
	}
}

@media only screen and (max-width: 1199px){
	.feature-style-1 .company {
		margin-top: 30px;
	}
}

@media only screen and (max-width: 1023px){
	.main-menu .navigation > li{
		margin-right:20px;	
	}
	.sticky-header{
		display:none;	
	}
	.fun-facts-section.style-three .row {
		display: flex !important;
		flex-wrap: wrap;
		align-items: stretch;
	}
}
@media only screen and (max-width: 991px){
	.consultation .img-box {
		margin-bottom: 30px;
	}
	.our_farmer .item {
		padding-bottom: 40px;
	}
	.about-us-2__title {
		margin-bottom: 30px;
	}
}
@media only screen and (max-width: 767px){
	.section {
		padding: 35px 0;
	}
	.sec-title {
		margin-bottom: 30px;
	}
	.services-style-one.section {
		padding-bottom: 20px;
	}
	.fun-facts-section.style-three.section, .main-footer .footer-upper.section {
		padding-bottom: 10px;
	}
	.social-links.text-right {
		text-align: center;
	}
	.p-40 {
		padding: 25px 0;
	}
	.revers-item {
		order: -1;
	}
	.main-slider .item  {
		padding: 100px 0;
	}
	.main-header .main-box .outer-container {
		position: static;
	}
	.main-header .nav-outer{
		padding-right:0px;
		position: static;
	}
	.main-header .logo-outer {
		position:relative;
		left:0px;
		top:0px;
		right:0px;
		bottom:0px;
		width:100%;
		margin:0px;
		padding:20px 0px;
	}
	.main-header .header-top-one .top-right,
	.main-header .header-top-one .top-left{
		width:100%;	
	}
	.main-menu .navigation > li {
		padding: 0;
	}
	.main-header .header-top-one .top-right ul,
	.main-header .header-top-one .top-left ul{
		text-align:center;
		width:100%;
		margin:5px 0px;
		padding:0px;	
	}
	.main-header .header-top-one .top-right ul li,
	.main-header .header-top-one .top-left ul li{
		margin:0px 10px;
		padding:0px;
		border:none;
		display:inline-block;
		float:none;	
	}
	.main-header .main-menu{
		padding-top:0px;
		width:100%;
		margin:0px;
		position: static;
	}
	.main-menu .collapse {
	   max-height: 310px;
	   overflow:auto;
	   position: absolute;
	   left: 0;
	   float:none;
	   width:100%;
	   top: 100%;
	   padding:0;
	   border:none;
	   margin:0px;
	   -ms-border-radius:3px;
	   -moz-border-radius:3px;
	   -webkit-border-radius:3px;
	   -o-border-radius:3px;
	   border-radius:3px;
	  }
	.main-menu .collapse.in,
	.main-menu .collapsing{
		padding:0px 0px 0px;
		border:none;
		overflow:auto;
		position: absolute;
		top: 100%;
		left: 0;
		margin:0px 0px 15px;
		-ms-border-radius:3px;
		-moz-border-radius:3px;
		-webkit-border-radius:3px;
		-o-border-radius:3px;
		border-radius:3px;	
	}
	.main-menu .navbar-header{
		position:relative;
		float:none;
		display:block;
		text-align:right;
		width:100%;
		padding:25px 0px;
		right:0px;
		z-index:12;
	}
	.main-menu .navbar-toggle{
		display:inline-block;
		z-index:7;
		border:1px solid #48c7ec;
		float:none;
		margin:0px 0px 0px 0px;
		border-radius:0px;
		background:#48c7ec;
	}
	.header-style-two .main-menu .navbar-header .navbar-toggle{
		border:1px solid var(--input-border);
		margin-right:15px;	
	}
	.main-menu .navbar-header .navbar-toggle .icon-bar{
		background: var(--bg-secondary);	
	}
	.main-menu .navbar-collapse > .navigation{
		float:none !important;
		margin:0px !important;
		width:100% !important;
		background: var(--bg-primary);
		border:1px solid var(--input-border);
		border-top:none;
	}
	.main-menu .navbar-collapse > .navigation > li{
		margin:0px !important;
		float:none !important;
		width:100%;
	}
	.main-menu .navigation > li > a,
	.main-menu .navigation > li > ul:before{
		border:none;	
	}
	.main-menu .navbar-collapse > .navigation > li > a{
		padding:10px 10px !important;
		border:none !important;
	}
	.main-menu .navigation li.dropdown > a:after,
	.main-menu .navigation > li.dropdown > a:before,
	.main-menu .navigation > li > ul > li > a::before{
		color:#ffffff !important;
		right:15px;
		font-size:16px;
		display:none !important;
	}
	.main-menu .navbar-collapse > .navigation > li > ul{
		position:relative;
		border:none;
		float:none;
		visibility:visible;
		opacity:1;
		display:none;
		margin:0px;
		left:auto !important;
		right:auto !important;
		top:auto !important;
		width:100%;
		background: var(--bg-primary);
		box-shadow: none;
		-webkit-border-radius:0px;
		-ms-border-radius:0px;
		-o-border-radius:0px;
		-moz-border-radius:0px;
		border-radius:0px;
		transition:none !important;
		-webkit-transition:none !important;
		-ms-transition:none !important;
		-o-transition:none !important;
		-moz-transition:none !important;
	}
	.main-menu .navbar-collapse > .navigation > li,
	.main-menu .navbar-collapse > .navigation > li > ul > li{
		border-top:1px solid rgba(255,255,255,1) !important;
		opacity:1 !important;
		top:0px !important;
		left:0px !important;
		visibility:visible !important;
	}
	
	.main-menu .navbar-collapse > .navigation > li:first-child{
		border:none;	
	}
	
	.main-menu .navbar-collapse > .navigation > li > a,
	.main-menu .navbar-collapse > .navigation > li > ul > li > a{
		padding:10px 10px !important;
		line-height:22px;
		color: var(--accent-primary);
		background: var(--bg-primary);
		text-align:left;
		border: 0px;
	}
	
	.main-menu .navbar-collapse > .navigation > li.current > a {
		background: var(--bg-primary);
		color:#ffffff !important;
	}
	.main-menu .navbar-collapse > .navigation li.dropdown .dropdown-btn{
		display:block;
	}
	.main-menu .navbar-collapse > .navigation li.dropdown:after,
	.main-menu .navigation > li > ul:before{
		display:none !important;	
	}
    .dropdown span {
        color: #ffffff;
    }
	.main-slider,
	.page-title{
		margin-top:0px !important;	
	}
	.main-slider h1, .main-slider h2 {
		font-size: 35px;
	}
	.sec-title h2,
	.default-title h2{
		font-size:25px;	
	}
	.page-title h1{
		font-size:25px;	
	}
	.feature-style-1 .content h3 {
		font-size: 20px;
	}
	.service-details blockquote .txt::before{
		display:none;
	}	
	.service-details blockquote .txt{
		padding:0px;	
	}
	.service-details blockquote{
		padding:30px 20px;	
	}
	.services-style-one {
		text-align: center;
	}
    .main-banner__btn a:last-child {
        margin-bottom: 20px;
    }
    .main-footer .footer-upper .column{
        margin-bottom: 20px;
        text-align: center;
        border-top: 1px solid #2e2e2e;
        padding-top: 20px;
    }
    .main-footer .footer-upper .column:first-child {
        border-top: none;
        padding-top: 0;
    }
    .footer-upper .links-widget li a {
        padding-left: 0;
    }
    .footer-upper .links-widget li a:before {
        display: none;
    }
    .main-footer .contact-column .contact-info li {
        padding-left: 0;
        text-align: center;
    }
    .main-footer .contact-column .contact-info li i {
        position: static;
        display: inline-block;
        margin-right: 6px;
        top: auto;
        left: auto;
    }
    .main-footer .contact-column .contact-info li a {
        white-space: normal !important;
        word-break: break-word;
    }
    .footer-bottom .copyright-text img {
        height: 90px !important;
        margin-top: 4px !important;
    }
    .footer-bottom .copyright-text { margin-top: 2px; }
	.footer-bottom {
		text-align: center;
	}
}

@media only screen and (max-width: 599px){
	.text-center .link a {
		margin-bottom: 20px;
	}
	.post-filter {
		margin-bottom: 20px;
	}
	.contact-section {
		padding-top: 40px;
	}
}
@media only screen and (max-width: 500px){
	.default-portfolio-item {
		width: 100%!important;
	}
}
/*** 

====================================================================
	Testimonials Section
====================================================================

 ***/
 .testimonial-carousel {
	display: block;
 }
 .testimonial {
	position: relative;
	padding: 100px 0px;
  }
  
  .testimonial-item {
	margin-bottom: 50px;
  }
  .testimonial .testimonial-item .content {
	padding-left: 60px;
	padding-top: 37px;
	padding-bottom: 30px;
	padding-right: 15px;
	border: 1px solid #efefef;
	position: relative;
	margin-left: 20px;
  }
  
  .testimonial .testimonial-item .content span {
	position: absolute;
	width: 50px;
	height: 45px;
	line-height: 45px;
	text-align: center;
	top: 40px;
	left: -18px;
	background: var(--bg-primary);
	color: #fff;
  }
  .testimonial .testimonial-item .content span:after {
	  position: absolute;
	  content: '';
	  border-left: 9px solid transparent;
	  border-top: 9px solid transparent;
	  bottom: 100%;
	  left: 0;
  }
  .testimonial .testimonial-item .rating {
	  color: #f8b703;
  }
  .testimonial .testimonial-item .author {
	position: relative;
	margin-left: 20px;
	margin-top: 20px;
	text-align: center;
  }
  .testimonial .testimonial-item .author li {
	vertical-align: middle;
  }
  .testimonial .testimonial-item .author img {
	height: 40px;
	width: 40px;
	border-radius: 50%;
	margin: auto;
  }
  .testimonial .testimonial-item .author h5 {
	font-size: 16px;
  }
  .testimonial .testimonial-item .author p {
	color: #000;
  }
 
  .testimonial .owl-prev {
	position: absolute;
    left: -5px;
    top: 50%;
    background: var(--bg-primary);
    transform: translate(-100%, -50%);
    width: 40px;
    height: 40px;
    color: #fff;
    font-size: 25px;
    line-height: 40px;
    text-align: center;
  }
  .testimonial .owl-next {
	position: absolute;
    right: -5px;
    top: 50%;
    background: var(--bg-primary);
    transform: translate(100%, -50%);
    width: 40px;
    height: 40px;
    color: #fff;
    font-size: 25px;
    line-height: 40px;
    text-align: center;
  }
  .testimonial h2 {
	text-align: center;
  }
  .testimonial h2::before {
	left: 50%;
    transform: translateX(-50%);
  }
  .testimonial .link {
	text-align: center;
  }
  .owl-stage-outer {
    transition: height 0.2s ease; 
  }
@media only screen and (max-width: 1024px) {
  .testimonial .owl-nav {
	display: none;
  }
}

/* ============================================================
   ESPRIT SKÖLE – Les Petits Bilingues Est Lyon
   Custom styles
   ============================================================ */

/* Logo header */
.main-header .main-box .logo-box .logo img { max-width: 100px; }

/* ---- Hero Y-Architecture ---- */
.hero-main { position: relative; }
.hero-intro {
    background: linear-gradient(135deg, #001f3f 0%, var(--bg-primary) 100%);
    padding: 80px 0 60px;
    text-align: center;
}
.hero-intro h1 {
    font-size: 46px;
    color: #fff;
    margin-bottom: 20px;
    line-height: 1.25em;
}
.hero-intro h1 span { color: var(--color-famille); }
.hero-intro .hero-sub {
    font-size: 18px;
    color: rgba(255,255,255,0.9);
    max-width: 720px;
    margin: 0 auto 10px;
    font-family: 'Poppins', sans-serif;
}
.hero-split-container { position: relative; z-index: 10; }
.hero-split-row { display: flex; flex-wrap: wrap; margin: 0; }
.hero-bloc {
    padding: 0;
    min-height: 380px;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}
.hero-bloc:hover { transform: translateY(-6px); box-shadow: 0 20px 60px rgba(0,0,0,0.3); }
.hero-bloc-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 50px 40px;
    height: 100%;
    text-align: center;
}
.hero-bloc h2 { color: #fff; font-size: 30px; margin: 12px 0 18px; }
.hero-bloc p { color: rgba(255,255,255,0.9); font-size: 16px; margin-bottom: 28px; max-width: 400px; font-family: 'Poppins', sans-serif; }
.hero-age-badge {
    display: inline-block;
    padding: 5px 20px;
    background: rgba(255,255,255,0.2);
    border-radius: 30px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px;
    font-family: 'Poppins', sans-serif;
}
.hero-bloc-icon { font-size: 48px; color: rgba(255,255,255,0.75); margin-bottom: 8px; }
.hero-famille { background-color: var(--color-famille) !important; }
.hero-pro { background-color: var(--bg-primary) !important; }
.btn-hero {
    display: inline-block;
    padding: 13px 28px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    color: #fff;
    background: rgba(255,255,255,0.2);
    border: 2px solid rgba(255,255,255,0.6);
    font-family: 'Poppins', sans-serif;
}
.btn-hero:hover { background: #fff; border-color: #fff; }
.btn-famille:hover { color: var(--color-famille); }
.btn-pro:hover { color: var(--bg-primary); }

/* ---- Color helpers ---- */
.famille-color { color: var(--color-famille) !important; }
.pro-color { color: var(--bg-primary) !important; }
.bg-famille { background: var(--color-famille) !important; }
.bg-pro { background: var(--bg-primary) !important; }
.famille-btn { background: var(--color-famille) !important; border-color: var(--color-famille) !important; }
.famille-btn:hover { background: #fff !important; color: var(--color-famille) !important; border-color: var(--color-famille) !important; }
.pro-btn { background: var(--bg-primary) !important; border-color: var(--bg-primary) !important; }

/* ---- Concept / About ---- */
.concept-item {
    display: flex;
    align-items: center;
    margin-bottom: 13px;
    font-size: 15px;
    font-weight: 600;
    color: #333;
    font-family: 'Poppins', sans-serif;
}
.concept-item i { margin-right: 10px; font-size: 18px; }

/* ---- Page title variants ---- */
.page-title-famille { background: linear-gradient(135deg, #5a7d00, var(--color-famille)) !important; }
.page-title-pro { background: linear-gradient(135deg, #001f3f, var(--bg-primary)) !important; }
.page-title-contact { background: url(../images/contact-les-petits-bilingues-1.jpg) center center / cover no-repeat !important; }
.page-title-methodo { background: url(../include/LPBGenas.jpeg) center center / cover no-repeat !important; }

/* ---- Offer cards ---- */
.offre-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    overflow: hidden;
    margin-bottom: 30px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.offre-card:hover { transform: translateY(-5px); box-shadow: 0 12px 40px rgba(0,0,0,0.15); }
.offre-card-header { padding: 22px 25px; }
.offre-card-header.famille { background: var(--color-famille); }
.offre-card-header.pro { background: var(--bg-primary); }
.offre-card-header h3 { color: #fff; font-size: 22px; margin-bottom: 5px; }
.offre-card-header p { color: rgba(255,255,255,0.85); margin: 0; font-family: 'Poppins', sans-serif; }
.offre-card-body { padding: 25px; flex-grow: 1; display: flex; flex-direction: column; }
.offre-card-body ul { margin-bottom: 20px; flex-grow: 1; }
.offre-card-body ul li { padding: 7px 0 7px 22px; position: relative; font-family: 'Poppins', sans-serif; font-size: 15px; border-bottom: 1px solid #f4f4f4; }
.offre-card-body ul li:before { content: '✓'; position: absolute; left: 0; color: var(--color-famille); font-weight: bold; }
.offre-card-body ul li.pro-item:before { color: var(--bg-primary); }

/* ---- Badges ---- */
.badge-ecran-zero, .badge-cpf, .badge-qualiopi {
    display: inline-block;
    padding: 4px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    margin: 0 4px 8px 0;
    font-family: 'Poppins', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.badge-ecran-zero { background: var(--color-famille); color: #fff; }
.badge-cpf { background: var(--bg-primary); color: #fff; }
.badge-qualiopi { background: #1565c0; color: #fff; }

/* ---- Methode items ---- */
.methode-item { display: flex; align-items: flex-start; margin-bottom: 35px; }
.methode-icon {
    flex-shrink: 0;
    width: 62px;
    height: 62px;
    background: var(--color-famille);
    color: #fff;
    font-size: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin-right: 22px;
}
.methode-icon.pro { background: var(--bg-primary); }
.methode-item h4 { font-size: 19px; font-weight: 700; margin-bottom: 8px; color: #222; }
.methode-item p { margin: 0; font-size: 15px; font-family: 'Poppins', sans-serif; }

/* ---- FAQ ---- */
.faq-category-title {
    font-size: 22px;
    font-weight: 700;
    color: #222;
    margin: 40px 0 20px;
    padding-bottom: 10px;
    border-bottom: 3px solid var(--color-famille);
}
.faq-category-title.pro-cat { border-bottom-color: var(--bg-primary); }

/* ---- Section famille/pro bg ---- */
.section-famille { background: #f5f8d4; }
.section-pro { background: #f0f4fa; }

/* ---- Age banner strip ---- */
.age-strip { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.age-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 18px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 600;
    font-family: 'Poppins', sans-serif;
}
.age-tag.famille { background: var(--color-famille); color: #fff; }
.age-tag.pro { background: var(--bg-primary); color: #fff; }

/* ---- Equipe card ---- */
.equipe-card { text-align: center; margin-bottom: 30px; }
.equipe-card img { border-radius: 50%; width: 150px; height: 150px; object-fit: cover; margin-bottom: 15px; }
.equipe-card h4 { font-size: 18px; margin-bottom: 5px; }
.equipe-card p { font-size: 14px; color: var(--color-famille); font-weight: 600; font-family: 'Poppins', sans-serif; }

/* ---- Responsive ---- */
@media only screen and (max-width: 767px) {
    .hero-intro h1 { font-size: 28px; }
    .hero-intro .hero-sub { font-size: 15px; }
    .hero-bloc { min-height: 300px; }
    .hero-bloc-inner { padding: 40px 20px; }
    .hero-bloc h2 { font-size: 22px; }
    .btn-hero { font-size: 13px; padding: 10px 22px; }
    .methode-item { flex-direction: column; }
    .methode-icon { margin-bottom: 15px; }
}

/* ============================================================
   Corrections couleurs : sections Pro restent bleues
   ============================================================ */

/* Footer: remplace l'icone feuille par un taxi */
.footer-upper .links-widget li a:before {
    font-family: FontAwesome !important;
    content: "\f1ba" !important;
    font-size: 11px !important;
    color: var(--color-famille) !important;
    left: 0 !important;
    top: 3px !important;
}

/* Sections professionnelles – maintien du bleu */
.hero-pro { background-color: var(--color-pro) !important; }
.offre-card-header.pro { background: var(--color-pro) !important; }
.pro-btn { background: var(--color-pro) !important; border-color: var(--color-pro) !important; }
.pro-btn:hover { background: #fff !important; color: var(--color-pro) !important; border-color: var(--color-pro) !important; }
.methode-icon.pro { background: var(--color-pro) !important; }
.page-title-pro { background: linear-gradient(135deg, #001f3f, var(--color-pro)) !important; }
.faq-category-title.pro-cat { border-bottom-color: var(--color-pro) !important; }
.age-tag.pro { background: var(--color-pro) !important; }
.badge-cpf { background: var(--color-pro) !important; }
.badge-qualiopi { background: #1565c0 !important; }
.pro-color { color: var(--color-pro) !important; }
.section-pro { background: #f0f4fa !important; }

/* ============================================================
   CORRECTIFS RESPONSIVE – Mobile & Tablette
   ============================================================ */

/* 1. Hamburger : couleur LPB */
.main-menu .navbar-toggle {
    border: 1px solid var(--bg-primary) !important;
    background: var(--bg-primary) !important;
}
.main-menu .navbar-toggle .icon-bar {
    background: #fff !important;
}

/* 2. Hover menu mobile : pas de fond */
.main-menu .navbar-collapse > .navigation > li > a:hover,
.main-menu .navbar-collapse > .navigation > li > a:active,
.main-menu .navbar-collapse > .navigation > li > a:focus {
    background: transparent !important;
}

/* 3. Padding des colonnes de contenu : reset sur tablette & mobile */
@media only screen and (max-width: 991px) {
    [style*="padding-left:40px"] {
        padding-left: 15px !important;
    }
}

/* 4. Menu mobile : hauteur max augmentée + corrections */
@media only screen and (max-width: 767px) {
    .main-menu .collapse,
    .main-menu .collapse.in,
    .main-menu .collapsing {
        max-height: 460px;
    }

    /* Email masqué dans le top bar (trop long sur petit écran) */
    .header-top-one .top-right {
        display: none;
    }

    /* Colonnes empilées : marge supérieure pour les blocs de contenu */
    [style*="padding-left:40px"] {
        margin-top: 25px !important;
    }

    /* Image concept section : pas de marge négative au reflow */
    .col-sm-12 img[style*="margin-top"] {
        margin-top: 15px !important;
    }
}

/* 5. Tablette portrait (768-991px) */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    /* Hero blocs */
    .hero-bloc { min-height: 340px; }
    .hero-bloc-inner { padding: 40px 25px; }

    /* Footer : colonnes nav côte-à-côte */
    .main-footer .footer-widget.links-widget {
        margin-left: 0;
    }

    /* Menu : réduire l'espacement pour tenir sur une ligne */
    .main-menu .navigation > li {
        margin-right: 8px !important;
    }
    .main-menu .navigation > li > a {
        font-size: 12px !important;
        padding: 22px 0 !important;
    }
}

/* 6. Très petit écran (<480px) : hero et titres */
@media only screen and (max-width: 480px) {
    .hero-intro h1 { font-size: 24px; }
    .hero-intro { padding: 50px 0 40px; }
    .hero-bloc-inner { padding: 30px 15px; }
    .hero-bloc h2 { font-size: 20px; }
    .hero-age-badge { font-size: 12px; padding: 4px 14px; }
    .btn-hero { font-size: 12px; padding: 10px 18px; }
    .age-strip { gap: 8px; }
    .age-tag { font-size: 12px; padding: 6px 12px; }
    .sec-title h2 { font-size: 22px; }
}

/* Google reviews */
.google-rating-summary {
    text-align: center;
    margin-top: 8px;
    font-size: 16px;
    color: #555;
}
.google-stars {
    color: #f4b400;
    font-size: 20px;
    margin-right: 6px;
    letter-spacing: 2px;
}
