
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: "Poppins", sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #656565;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p {
text-align:justify;
  margin-top: 0;
  margin-bottom: 1rem;
font-family:"Montserrat", sans-serif;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #656565;
  text-decoration: none;
  background-color: transparent;
	transition: all 0.2s ease-in-out
}

a:hover {
  color: #527a20;
  text-decoration: none;
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role="button"] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

@media (max-width: 1200px) {
  legend {
    font-size: calc(1.275rem + 0.3vw) ;
  }
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

.family_poppins{
	font-family: "Poppins", sans-serif;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #212121;
}

h1, .h1 {
  font-size: 2.5rem;
}

@media (max-width: 1200px) {
  h1, .h1 {
    font-size: calc(1.375rem + 1.5vw) ;
  }
}

h2, .h2 {
  font-size: 2rem;
}

@media (max-width: 1200px) {
  h2, .h2 {
    font-size: calc(1.325rem + 0.9vw) ;
  }
}

h3, .h3 {
  font-size: 1.75rem;
font-family:"Montserrat", sans-serif;
}

@media (max-width: 1200px) {
  h3, .h3 {
    font-size: calc(1.3rem + 0.6vw) ;
  }
}

h4, .h4 {
  font-size: 1.5rem;
}

@media (max-width: 1200px) {
  h4, .h4 {
    font-size: calc(1.275rem + 0.3vw) ;
  }
}

h5, .h5 {
  font-size: 1.25rem;
color:#0F2161;
}

h6, .h6 {
  font-size: 1rem;
}
hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 80%;
  font-weight: 400;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}
/*==============================================
================================================
===============================================*/
.section{
	position:relative;
	padding: 4rem 0;
}

.section_groupe{
background-color:#f3f7fa;
}

.fond_bandeau{
min-height:767px;
min-width:100%;
background-image:url("../images/bandeau.jpg");
background-size:100% 100%;
background-repeat:no-repeat;
position:absolute;
z-index:1;
background-size:cover}

.section_secteur{
background-image:url("../images/fond-section.jpg");
background-size:100% 100%;
background-repeat:no-repeat;
padding: 130px 0;
}

.section_fond{
background-image:url("../images/bandeau.jpg");
background-size:100% 100%;
background-repeat:no-repeat;
padding: 130px 0;
}

.section_atelier{
padding: 100px 0;
}

.container75{
	min-width:75vw;
}
.container65 {
    min-width: 65vw;
}
.container100{
min-width: 99vw;
}
.btn-contact{
display: inline-block;
padding: 15px 45px;
background: #00a0de;
color: #fff;
border-radius:10px;
transition: 0.2s all;
border:none;
}
.btn-contact:hover{
background-color:#0F2161;
}

.bloc-infos p{
color:#0F2161;
}

.bloc-infos {
padding:20px;
}

.bloc-infos a{
color:#0F2161 !important;
}

.bloc-contact {
background-color:#f0f0f0;
border-radius:10px;
transition:0.3s all;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
padding:40px;
min-width:100%;
color:#0F2161;
margin-top:30px;
}
.bloc-contact:hover {
background-color:#00a0dd;
color:#fff;
}
.bloc-contact a{
color:#0F2161;
}
.bloc-contact:hover a {
color:#fff;
}
.icon-contact{
background-color:#fff;
padding:25px;
border-radius:50%;
position:absolute;
top:-30px;
box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
.icon-contact img{
width:40px;
}

.back-to-top {
  position: fixed;
  display: none;
  right: 45px;
  bottom: 45px;
  z-index: 11;
	cursor:pointer;
	width: 40px;
  height: 40px;
	background: #00a0dd;
border-radius:50%;
  box-shadow: 0px 0px 26.46px 0.54px rgb(0 0 0 / 14%);
}
.back-to-top i{
	color:#fff;
}
.back-to-top.show{
	display:flex;
	align-items:center;
	justify-content:center;
}
.back-to-top:hover{
	background: #0f2161;
	transition: all 0.2s ease-in-out
}
.color-princip{
	color:#59b34f;
}
.bg-princip{
	background-color:#59b34f;
}
.w-50{
	width:50%;
}
label.error{
	color:red;
	font-size:13px;
}
.overflow-hidden{
	overflow:hidden;
}
.h-70{
	height:70%;
}

@media (min-width: 992px) {
	.header .navbar .nav-item .dropdown-menu {
    display: block;
    border: none;
    margin-top: 0;
    top: 150%;
    opacity: 0;
    visibility: hidden;
    transition: .5s;
	}
	.header .navbar .nav-item:hover .dropdown-menu {
    top: 100%;
    visibility: visible;
    transition: .5s;
    opacity: 1;
	}
}

@keyframes slideDown{
0%{
transform:translateY(-100%);
opacity:0;
}
100%{
transform:translateY(0);
opacity:1;
}

}
.copyright_bottom{
	background: #0F2161;
    padding: 10px 0;
}

.row-bandeau{
width:50%;
}
.row-bandeau-diapo{
width:50%;
}

.slider_area.owl-carousel .slide-item{
	position:relative;
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: end;
min-height:767px;
}

.slider_area.owl-carousel .slide-item img{
	height:600px;
	width: 100%;
    height: 100%;
    object-fit: cover;
}
.slider_area.owl-carousel .slid_content{
	position: absolute;
width:100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: end;
}
.slider_area.owl-carousel .slid_content .h1{
	font-size: 45px;
    color: #0f2161;
    font-weight: 400;
    margin-bottom: 25px;
font-family:"Montserrat", sans-serif;
}
.slider_area.owl-carousel .slid_content .p{
	font-size: 16px;
    color: #000;
    margin-bottom: 25px;
font-family:"Montserrat", sans-serif;
width:80%;
}
.slider_area.owl-carousel .slid_content .moreBtn a{
	display: inline-block;
    padding: 0 45px;
    background: #00a0de;
    color: #fff;
border-radius:10px;
    transition: 0.2s all;
font-family:"Montserrat", sans-serif;
}

.slider_area.owl-carousel .slid_content .moreBtn a:hover{
background-color:#0F2161;
}

.slider_area.owl-carousel .slid_content a.btn-primary {
overflow:hidden;
position:relative;
}

.slider_area.owl-carousel .slid_content .moreBtn .arrow-left{
position:relative;
left:-70px;
top:13px;
transition:.6s all;
transform:rotate(44deg) translate(0,50%);
display:flex;
width:13px !important;
}

.slider_area.owl-carousel .slid_content .moreBtn:hover .arrow-left {
left:-20px;
display:flex;
}

.slider_area.owl-carousel .slid_content .moreBtn .arrow{
position:relative;
right:-100px;
bottom:20px;
transition:.6s all;
width:13px;
}

.slider_area.owl-carousel .slid_content .moreBtn:hover .arrow{
transform:translate(45px, -32px);
}

.slider_area.owl-carousel .slid_content .bandeau-img{
height:580px;
border-radius:10px;
}

.text-bandeau {
position:absolute;
z-index:2;
margin-left:160px;
top:240px;
}

.text-bandeau .h1{
font-size: 45px;
color: #0f2161;
font-weight: 400;
margin-bottom: 25px;
font-family:"Montserrat", sans-serif;
}

.text-bandeau .p{
font-size: 16px;
color: #000;
margin-bottom: 25px;
font-family:"Montserrat", sans-serif;
width:80%;
}

.text-bandeau .moreBtn {
width:207px;
}

.text-bandeau .moreBtn a{
padding: 15px 45px;
background: #00a0de;
color: #fff;
border-radius:10px;
transition: 0.2s all;
font-family:"Montserrat", sans-serif;
display:flex;
}

.text-bandeau .moreBtn a:hover{
background-color:#0F2161;
}

.text-bandeau a.btn-primary {
overflow:hidden;
position:relative;
}

.text-bandeau .moreBtn .arrow-left{
position:relative;
left:-70px;
top:0;
transition:.6s all;
transform:rotate(44deg) translate(0,50%);
display:flex;
width:13px !important;
height:13px !important;
}

.text-bandeau .moreBtn:hover .arrow-left {
left:-10px;
display:flex;
}

.text-bandeau .moreBtn .arrow{
position:relative;
right:-8px;
bottom:-5px;
transition:.6s all;
width:13px;
height:13px;
}

.text-bandeau .moreBtn:hover .arrow{
transform:translate(45px, -35px);
}

.header.sticky-menu{
	position: fixed;
    top: 0;
    left: 0;
    background: #fff;
    box-shadow: 0 0 5px rgba(0,0,0,.15);
    padding-top: 0;
		width: 100%;
    z-index: 999;
transition:all 0.2s ease;
animation:slideDown 0.2s ease-out;
}

.top_menu{
display:block;
	background: #16308D;
	color:#fff;
	padding: 5px 15px;
}
.top_menu ul.info_box{
		margin: 0;
    padding: 0;
}
.top_menu ul.info_box .li_info {
    position: relative;
    padding: 0 25px;
		font-size:15px;
		display:flex;
		align-items:center;
}
.top_menu ul.info_box .li_info i{
	margin-right: 8px;
}

.top_menu span {
padding : 0 6px;
margin-right: 15px;
font-family:"Montserrat", sans-serif;
}

.top_menu a{
color:#fff;
}

.btn-menu{
	display: inline-block;
    font-size: 18px;
    padding: 5px 35px;
    text-align: center;
    background: #00a0dd;
    color: #fff;
		transition: 0.1s all;
font-family:"Montserrat", sans-serif;
border-radius:10px;
}
.btn-menu:hover{
    background: #0f2161;
    color: #fff;
}
a.btn-menu {
overflow:hidden;
position:relative;
}

.btn-menu .arrow-left{
position:absolute;
left:-30px;
top:8px;
transition:.6s all;
transform:rotate(44deg) translate(0,50%);
display:flex;
}

.btn-menu:hover .arrow-left {
left:15px;
display:flex;
}

.btn-menu .arrow{
position:relative;
right:-10px;
top:-2px;
transition:.6s all;
}

.btn-menu:hover .arrow{
transform:translate(45px, -32px);
}


.logo {
display:block;
position:absolute;
height:auto;
max-width:100%;
z-index:2;
bottom:-36px;
margin-left:140px;
}


.num-sticky {
display:none;
}

.back-color{
display:block;
background-color:#d3dfed;
padding-top:30px;
}

.navbar {
padding:1rem 1rem !important;
}

.navbar-nav{
margin-left:auto;
margin-right:auto;
}


.main_menu .navbar-nav .nav-link.active:before {
opacity:1;
visibility:visible;
}

.main_menu .navbar-nav .nav-link:hover:before{
border-top:10px solid #00a0dd;
border-left:4px solid transparent;
border-right:4px solid transparent;
bottom:-27px;
left:50%;
transform:translateX(-50%);
position:absolute;
content:'';
transition:0.3s all;
z-index:2;
display:block;
}

.sticky-menu .main_menu .navbar-nav .nav-link:hover:before{
display:none;
}

.main_menu .navbar-nav .nav-link{
	color: #211E1C;
	padding:5px 20px;
transition:0.2s all;
font-family:"Montserrat", sans-serif;
}

.main_menu .navbar-nav .nav-link:hover:after{
display:block;
position:absolute;
content:'';
width: 100%;
left: 0;
top:49px;
height: 2px;
background: #00a0dd;
border-radius: 8px;}

.main_menu .navbar-nav .nav-link-active:before{
border-top:10px solid #00a0dd;
border-left:4px solid transparent;
border-right:4px solid transparent;
bottom:-27px;
left:50%;
transform:translateX(-50%);
position:absolute;
content:'';
transition:0.3s all;
z-index:2;
display:block;
}

.sticky-menu .main_menu .navbar-nav .nav-link-active:before{
display:none;
}

.main_menu .navbar-nav .nav-link-active{
display:block !important;
color: #211E1C;
padding:5px 20px;
font-family:"Montserrat", sans-serif;
}

.main_menu .navbar-nav .nav-link-active:after{
display:block;
position:absolute;
content:'';
width: 100%;
left: 0;
top:49px;
height: 2px;
background: #00a0dd;
border-radius: 8px;}

.main_menu a.nav-link,
.main_menu a.dropdown-item {
position: relative;
}

.main_menu .navbar-nav .trait{
position: relative;
content: '';
height: 30%;
border-right: 1.5px solid #211E1C;
top: 50%;
right: 0;
z-index:10;
}

.dropdown-item {
font-family:"Montserrat", sans-serif;
}

.logo-footer{
position:relative;
height:auto;
width:56%;
}

.footer{
	background-color: #211E1C;
	position:relative;
}
.footer .footer-top{
background:#e0edf5
url("../images/footer.png");
background-repeat:no-repeat;
background-position:right;
background-size:cover;
background-size:25% 100%;
}
.footer p, .footer a, .footer i {
font-family:"Montserrat", sans-serif;
  color: #000;
}
.footer .h5{
	color: #00a0dd;
font-weight:600;
}

.title{
	margin-bottom:20px;
}
.title .up_title{
	font-family: "Montserrat", sans-serif;
	font-size: 28px;
font-weight:600;
	position:relative;
	/* padding-left: 36px; */
	color: #00a0dd;
	display: inline-block;
margin-bottom:0;
}
/* .title .up_title:before{
	content:'';
	position:absolute;
	width:30px;
	height:30px;
	background: url() no-repeat;
	background-position:center;
	background-size:100%;
	top:50%;
	left:0;
	transform: translateY(-50%);
} */
.title h4, .title .h4{
font-size:22px;
color:#0F2161;
font-weight:600;
font-family:"Montserrat", sans-serif;
margin-bottom:12px;
}
.title .h1{
	font-size: 35px;
	font-weight:700;
}

.trait-bleu {
margin-bottom:7px;
width:100%;
}

.trait-bleu span{
display:inline-block;
}

.ligne-trait{
flex-grow:1;
height:1px;
background-color:#00a0dd;
border-radius:5px;
margin-left:5px;
}
.page-header{
    position: relative;
    color: #fff;
    background-position: 50% 50%;
    background-size: cover;
		padding: 3rem 0;
}

.banner-heading {
	position: relative;
  text-align: center;
}
.banner-heading .h1{
		color: #0F2161;
    text-transform: uppercase;
    font-size: 40px;
    font-weight: 800;
}
.page-header .breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0;
    background: transparent;
		justify-content: center;
}
.page-header .breadcrumb li, 
.page-header .breadcrumb li a {
    font-size: 16px;
    color: #0F2161;
    position: relative;
}
.page-header li+li:before{
	content:"\f105";
		position:absolute;
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		left: 8px;
		top: 50%;
		font-size:16px;
		transform: translateY(-50%);
		color: #0F2161;
}
.page-header li+li{
	padding-left: 25px;
}

.bouton.produit{
top:35px;
left:21%;
}

.bouton{
display: inline-block;
padding: 15px 45px;
background: #00a0de;
color: #fff;
border-radius:10px;
transition: 0.2s all;
font-family:"Montserrat", sans-serif;
}

a.bouton {
overflow:hidden;
position:relative;
}
.bouton:hover{
color:#fff !important;
background-color:#0F2161;
}

.bouton .arrow-left{
position:absolute;
left:-10px;
transition:.6s all;
transform:rotate(44deg) translate(0,50%);
display:flex;
}

.bouton:hover .arrow-left {
left:25px;
display:flex;
}

.bouton .arrow{
position:relative;
right:-10px;
transition:.6s all;
}

.bouton:hover .arrow{
transform:translate(45px, -32px);
}

.feature-block{
justify-content:center;
align-items:center;
position:relative;
bottom:50px;
z-index:2;
}

.feature-item{
background-color:#00a0dd;
padding: 15px 20px;
width:377px;
margin:0 1px;
border-radius:7px;
display:flex;
align-items:center;
}

.feature-img {
display:flex;
flex-direction:column;
justify-content:center;
margin-right:10px;
}

.feature-text {
display:flex;
flex-direction:column;
justify-content:center;
}

.img-fond{
position:absolute;
top:240px;
left:48%;
width:670px;
}

.why-item{
	background: #f5f5f5;
	padding: 30px 40px;
	height:100%;
	position:relative;
	transition: 0.3s all;
box-shadow:-10px 10px 20px #ababab;
}
.why-item img{
	height: 70px;
	margin-bottom: 15px;
	position:relative;
	transition: 0.3s all;
}
.why-item .h5{
font-family:"Montserrat", sans-serif;
	font-weight: 700;
	font-size: 20px;
color:#0f2161;
}
.why-item:hover{
	background: #0f2161;
}
.why-item:hover .h5, .why-item:hover p{
	color: #fff;
}

.actu_item {
    padding: 20px;
}
.actu_item .actu_img {
    height: 450px;
    width: 100%;
    overflow: hidden;
}
.actu_item .actu_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.3s all;
}
.actu_item:hover .actu_img img{
	transform: scale(1.2);
}
.actu_item .h4{
	margin-top:15px;
	margin-bottom: 10px;
	font-size: 18px;
}
.actu_item .actu_date{
	color: #007bff;
	font-size:15px;
}
.owl-carousel .owl-nav{
		display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
}
.img_about{
	width:100%;
	height: 450px;
	position:relative;
}
.img_about:before{
	content:'';
	position:absolute;
	height: 200px;
	width:200px;
background-image: linear-gradient(to right, rgba(0, 160, 224, 1), rgba(102, 114, 124, 1));
	right:-20px;
	bottom:-20px;
	z-index:-1;
}
.img_about img{
	width: 100%;
    height: 100%;
    object-fit: cover;
}

.img-left{
position:absolute;
top:210px;
left:20px;
width:350px;
z-index:1;
border-radius:10px;
}

.img-right {
position:relative;
width:530px;
left:125px;
border-radius:10px;
}

.img-atelier1{
display:block;
width:230px;
height:300px;
object-fit:cover;
border-radius:5px;
}
.img-atelier2{
display:block;
width:300px;
height:170px;
object-fit:cover;
position:relative;
border-radius:5px;
}
.img-atelier3{
display:block;
width:230px;
height:170px;
object-fit:cover;
border-radius:5px;
}
.img-atelier4{
display:block;
width:300px;
height:300px;
object-fit:cover;
border-radius:5px;
}

.img-atelier5{
display:block;
width:230px;
height:200px;
object-fit:cover;
border-radius:5px;
}

.img-atelier6{
display:block;
width:300px;
height:215px;
object-fit:cover;
border-radius:5px;
}

.img-atelier7{
display:block;
width:230px;
height:300px;
object-fit:cover;
border-radius:5px;
}

.img-atelier8{
display:block;
width:300px;
height:350px;
object-fit:cover;
border-radius:5px;
}
.img-atelier9{
display:block;
width:230px;
height:100%;
object-fit:cover;
border-radius:5px;
}
.img-atelier10{
display:block;
width:300px;
height:170px;
object-fit:cover;
border-radius:5px;
}

.img-petit{
width:170px;
background-image: linear-gradient(to right, rgba(0, 160, 224, 0.4), rgba(102, 114, 124, 0.4));
padding:10px;
border-radius:20px;
}

.experience{
position:absolute;
top:120px;
left:80px;
background-color: #00a0dd;
display: flex;
flex-direction: column;
width: 130px;
height: 130px;
border-radius: 50%;
justify-content: center;
align-items: center;
position: absolute;
z-index : 2;
box-shadow: 0 0 0 8px rgba(0, 160, 222, 0.3);
}

.experience .text-exp{
display:flex;
justify-content:center;
flex-direction:column;
}

.experience .text-exp span{
font-family:"Montserrat", sans-serif;
}


.secteur-img{
display:flex;
align-items:center;
justify-content:center;
}

.secteur-text p{
color:#00a0dd;
position:absolute;
top:50%;
left:50%;
width:73%;
background-color:white;
border-radius:10px;
transition:0.2s all;
z-index:33;
text-align:center;
padding:10px 15px;
transform:translate(-50%, -50%);
}

.secteur-text:hover p{
color:white;
background-color:#00a0dd;
}

.secteur-item{
padding:0 10px;
}

.secteur-item .secteur-img{
width:100%;
height:350px;
}

.secteur-item .secteur-img img{
width:100%;
height:100%;
object-fit:cover;
}

.atelier-item{
position:relative;
display:inline-block;
overflow:hidden;
}

.atelier-item2{
position:relative;
display:inline-block;
overflow:hidden;
top:40px;
height:170px;
}.atelier-item3{
position:relative;
display:inline-block;
overflow:hidden;
top:10px;
 height:170px;
}
.atelier-item4{
position:relative;
display:inline-block;
overflow:hidden;
top:-85px;
margin-left:5px;
}

.text-atelier{
display:none;
}

.atelier-item:hover .text-atelier,.atelier-item2:hover .text-atelier, .atelier-item3:hover .text-atelier,.atelier-item4:hover .text-atelier {
display:block;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
color: white;
font-size: 18px;
width: 200px;
transition:0.2s all;
z-index:2;
}

.atelier-item:hover::before, .atelier-item2:hover::before, .atelier-item3:hover::before, .atelier-item4:hover::before {
content: '';
position: absolute;
top: 0; left: 0; right: 0; bottom: 0;
background-color: rgba(15, 33, 97, 0.6); /* couleur + transparence */
z-index: 1;
border-radius:5px;
}

.icon-arrow{
display:none;
}

.atelier-item:hover .icon-arrow, .atelier-item2:hover .icon-arrow, .atelier-item3:hover .icon-arrow, .atelier-item4:hover .icon-arrow{
display:block;
position:absolute;
z-index:2;
bottom:10px;
width:30px;
left:80%;
}

.produit-bloc{
border: solid 1px #d6d6d6;
border-radius:10px;
transition:0.2s all;
margin-bottom:50px;
max-height:350px;
padding:10px;
}

.produit-bloc:hover{
border: solid 1px #00a0dd;
transform:scale(1.1);
}

.produit-bloc .image{
margin:10px 0;
height:200px;
}

.produit-bloc .img-produit{
max-width:100%;
height:100%;
object-fit:cover;
}


.produit-bloc h5, .produit-bloc .h5{
color:#00a0dd;
}


.produit-bloc .produit-bouton{
position:relative;
left:25%;
bottom:-30px;
display:block;
padding:15px 45px;
background-color:#00a0dd;
color:#fff;
border-radius:10px;
transition:0.2s all;
border:none !important;
}

.bloc-detail h5, .bloc-detail .h5{
color:#00a0dd;
text-transform:uppercase;
font-size:25px !important;
font-weight:600;
}

.btn-pdf{
color:#fff;
background-color:#000;
padding:10px 20px;
border:#000 solid 1px;
margin-right:10px;
}

.btn-pdf:hover{
color:#000;
background-color:#fff;
}

.bloc-detail-img .main-img{
border: solid 1px #00a0dd;
border-radius:10px;
transition:0.2s all;
display:flex;
justify-content:center;
}

.bloc-detail-img .main-img .img-detail{
width:95%;
height:390px;
margin:20px;
}

.secondary-img {
border: solid 1px #00a0dd;
border-radius:10px;
display:flex;
justify-content:center;
margin:20px 0;
width:100%;
}

.secondary-img .img-second{
height:80px;
margin:20px;
}

.owl-carousel.realis_bottom .owl-item img{
object-fit:contain !important;
}

.owl-carousel.realis_top .owl-item img{
object-fit:contain !important;
}

.info-tech{
display:block;
margin-top:15px;
padding:10px;
border-radius:10px;
background-color:#f3f7fa;
}

.info button{
font-size:18px;
margin-right:10px;
border:none;
outline:none;
background-color:rgba(0, 160, 221, 0.4);
padding:5px 15px;
border-radius:10px;
border-bottom:3px solid #0F2161;
}

.img-bg {
padding:15px 20px;
background-color:#00a0dd;
border-radius:7px;
height:120px;
display:flex;
align-items:center;
flex-direction:row;
}

.trait-img{
border: solid 1px #00a0dd;
border-radius:10px;
transition:0.2s all;
display:flex;
justify-content:center;
}

.trait-img .img-trait{
margin:10px;
height:220px;
}

.side {
border-radius:10px;
box-shadow: 0px 4px 15.48px 2.52px rgba(0,0,0,0.2);
}

.side .boxy.titre {
background-color:#00a0dd;
font-size:20px;
position:relative;
border-top-left-radius:10px;
border-top-right-radius:10px;
}

.side .boxy{
padding:20px 20px;
display:flex;
justify-content:space-between;
}

.boxy.bg-gris{
background-color:#f9f9f9;
}

.liste-produits.bg-gris{
background-color:#f9f9f9;
}

.boxy a {
color:black;
font-size:18px;
}

.boxy a:hover {
color:#00a0dd;
}

.boxy a.active {
font-weight:700 !important;
}

.liste-produits{
padding:0 20px;
font-size:14px;
}

.liste-produits a{
margin-top:5px;
margin-bottom:10px;
display:block;
}

.liste-produits a:hover{
color:#0f2161;
}

.liste-produits .sCat-a{
margin-left:20px;
}

.liste-produits .sous-cat-item{
border-bottom:#000 solid 1px;
}

.liste-produits .sous-cat-item .sous-cat-titre{
font-weight:600;
font-size:16px;
margin-bottom:0;
}

.liste-produits {
overflow: hidden;
max-height: 0;
transition: max-height 0.5s ease-in-out;
}

.btn-toggle{
outline:none;
box-shadow:none;
border:none;
background-color:transparent;
}
.btn-toggle:focus{
outline:none;
box-shadow:none;
}

.btn-toggle img {
transition: transform 0.3s ease-in-out;
}

.img-etude{
width:710px;
height:300px;
object-fit:cover;
background-image: linear-gradient(to right, rgba(0, 160, 224, 0.4), rgba(102, 114, 124, 0.4));
padding:10px;
border-radius:20px;
}

.section_groupe .img-fluid-groupe{
object-fit:cover;
height:380px;
width:500px;
}

.img-arrondis{
border-radius:10px;
}
.item-accueil{
position:absolute;
display:inline-block;
overflow:hidden;
top:0;
right:130px;
}

.item2-accueil{
position:absolute;
display:inline-block;
overflow:hidden;
bottom:0;
right:130px;
}

.img-accueil{
display:block;
width:230px;
height:250px;
object-fit:cover;
border-radius:5px;
}

.img-accueil2{
display:block;
width:230px;
height:140px;
object-fit:cover;
border-radius:5px;
}

.item{
position:relative;
display:inline-block;
overflow:hidden;
}

.item2{
position:relative;
display:inline-block;
overflow:hidden;
top:40px;
height:170px;
}.item3{
 position:relative;
 display:inline-block;
 overflow:hidden;
 top:10px;
 height:170px;
 }
.item4{
position:relative;
display:inline-block;
overflow:hidden;
top:-85px;
margin-left:5px;
}
.item5{
position:relative;
display:inline-block;
overflow:hidden;
top:-115px;
margin-left:5px;
}
.item6{
position:relative;
display:inline-block;
overflow:hidden;
top:-80px;
}
.item9{
position:relative;
display:inline-block;
overflow:hidden;
top:5px;
}

.taille-icon{
width:20px;
height:20px;
}

.ft26 { font-size:26px !important;}

.redirection{
font-size:22px;
color:#0F2161;
font-weight:600;
font-family:"Montserrat", sans-serif;
}

.redirection a{
color:#00a0dd;
}

.redirection a:hover{
color:#0F2161;
}

/**********/

.bloc-logos {
    display: flex;
    flex-direction: column;
    align-items: center;
}


.logo-haut img {
    width: 100%; 
}


.logos-bas {
    display: flex;
    gap: 20px;
}


.logo-item img {
    max-width: 250px; 
    width: 100%;
}

.bloc-logos a img {
    transition: transform 0.3s ease, opacity 0.3s ease;
}


.bloc-logos a:hover img {
    transform: scale(1.05);
    opacity: 0.9;
}



/* .encart-guitel {
    display: block;
    text-decoration: none;
    color: inherit;
    margin: 20px 0;
} */
.encart-guitel {
    display: flex;
    text-decoration: none;
    color: inherit;
    margin: 0px auto;
    justify-content: center;
    width: 400px;
}
.encart-guitel-content {
    border: 2px solid #e0e0e0;
    border-radius: 12px;
    padding: 50px 30px;
    text-align: center;
    background-color: #fff;
    transition: all 0.3s ease;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.encart-guitel:hover .encart-guitel-content {
    border-color: #00a0dd;
    box-shadow: 0 6px 20px rgba(0, 123, 255, 0.15);
    transform: translateY(-3px);
}

.encart-guitel-image {
    max-width: 250px;
    height: auto;
    margin: 0 auto 30px;
    display: block;
}

.encart-guitel .redirection {
    font-size: 18px;
    margin: 0;
    color: #333;
    line-height: 1.6;
}

.encart-guitel .redirection strong {
    color: #00a0dd;
    font-weight: 600;
}


@media (max-width: 768px) {
    .encart-guitel-content {
        padding: 30px 20px;
    }
    
    .encart-guitel-image {
        max-width: 180px;
        margin-bottom: 20px;
    }
    
    .encart-guitel .redirection {
        font-size: 16px;
    }
}

.container-image{
        display: flex;
    justify-content: center;
}




/************ style page client***********/
.parcours-container {
            position: relative;
            max-width: 1400px;
            margin: 0 auto;
            padding: 40px;
            background: white;
        }

        /* En-tête bleu */
        .header-blue {
            background: #00A8E8;
            border-bottom-left-radius: 46px;
            border-bottom-right-radius: 46px;
            padding: 20px 60px;
            text-align: center;
            margin-bottom: 60px;
            position: relative;
            box-shadow: 0 5px 15px rgba(0,168,232,0.3);
        }

        .header-blue::before {
            content: '';
            position: absolute;
            top: -10px;
            left: 180px;
            width: 120px;
            height: 30px;
            background: 
                linear-gradient(45deg, transparent 40%, white 40%, white 45%, transparent 45%),
                linear-gradient(45deg, transparent 40%, white 40%, white 45%, transparent 45%),
                linear-gradient(45deg, transparent 40%, white 40%, white 45%, transparent 45%);
            background-size: 30px 30px;
            background-position: 0 0, 30px 0, 60px 0;
        }

        .header-blue::after {
            content: '';
            position: absolute;
            top: -10px;
            right: 50px;
            width: 150px;
            height: 40px;
            background: 
                repeating-linear-gradient(45deg, white, white 3px, transparent 3px, transparent 8px);
        }

        .header-blue h1 {
            color: white;
            font-size: 56px;
            font-weight: 900;
            text-transform: uppercase;
            letter-spacing: 8px;
            margin: 0;
        }

        /* Conteneur du parcours */
        .parcours-flow {
            display: grid;
            grid-template-columns: 1fr 1fr;
            grid-template-rows: 1fr 1fr;
            gap: 80px 60px;
            position: relative;
            padding:0 40px;
        }

        /* Flèches courbes entre les étapes */
        .arrow-curve {
            position: relative;
            width: 170px;
            height: 170px;
            z-index: 1;
        }
        .arrow-point{
            width: 100%;
            height: 100%;
        }
        .arr_img{
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
            .arrow-1 {
               margin-top: -884px;
            left: 173px;
            z-index: 4;
            transform: rotate(38deg) !important;
        }

         .arrow-2 {
            margin-top: -1121px;
            z-index: 4;
            left: -115px;
            transform: rotate(-19deg) !important;
        }
         .arrow-3 {
            margin-top: -608px;
            z-index: 4;
            left: 594px;
            transform: rotate(-24deg) !important;
        } 
        .arrow-4 {
            margin-top: -899px;
            z-index: 4;
            left: 235px;
            transform: rotate(224deg) !important;
        }

      
   
        .step-box {
            position: relative;
            z-index: 2;
            background: white;
            padding: 30px;
            min-height: 350px;
            display: flex;
            flex-direction: column;
            align-items: center;
        }

   
        .step-1 {
            grid-column: 1;
            grid-row: 1;
        }

        .step-1 .icon {
            width: 130px;
            height: 100px;
            background: #5B7DB1;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 20px;
            position: relative;
        }

      
    
        .step-2 {
            grid-column: 1;
            grid-row: 2;
        }

        .step-2 .icon {
            width: 100px;
            height: 100px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 20px;
            position: relative;
        }

       

        .step-2 .label-red {
            color: #E74C3C;
        text-align: center;
            font-weight: bold;
            font-size: 20px;
            position: absolute;
            top: -177px;
            left: -60px;
        }

    
        .step-3 {
            grid-column: 2;
            grid-row: 1;
        }

        .step-3 .icon {
            width: 100px;
            height: 140px;
            background: #5B7DB1;
            border-radius: 15px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 20px;
            position: relative;
        }

       

       .step-3 .label-red {
            color: #E74C3C;
            text-align: center;
            font-weight: bold;
            font-size: 20px;
            position: absolute;
            top: 106px;
            left: -122px;
        }
   
        .step-4 {
            grid-column: 2;
            grid-row: 2;
        }

        .step-4 .icon {
            width: 100px;
            height: 165px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 20px;
            position: relative;
        }

      

        .step-title {
             font-size: 22px;
                color: #0F2161;
                font-weight: 600;
                font-family: "Montserrat", sans-serif;
                margin-bottom: 12px
        }

        .step-content {
            
            width: 100%;
            font-size: 18px;
            line-height: 1.8;
            
            text-align: center;
            margin-top: 0;
            margin-bottom: 1rem;
            font-family: "Montserrat", sans-serif;
        }

        .step-content p {
            margin-bottom: 10px;
            text-align: center;
        }

        .step-content ul {
            list-style: none;
            padding-left: 15px;
        }

        .step-content ul li::before {
            content: '> ';
            color: #5B7DB1;
            font-weight: bold;
        }

        .intervenant {
            color: #00A8E8;
            font-size: 17px;
            margin-top: 15px;
            display: block;
            text-decoration: underline;
        }

        .details-italic {
            font-style: italic;
            font-size: 13px;
            color: #555;
            margin-top: 10px;
        }


        .decoration-lines {
            position: fixed;
            pointer-events: none;
            z-index: 0;
        }

        .decoration-lines.left {
            top: 0;
            left: 0;
            width: 200px;
            height: 100%;
            background: repeating-linear-gradient(
                45deg,
                transparent,
                transparent 10px,
                #00A8E8 10px,
                #00A8E8 13px
            );
            opacity: 0.3;
        }

        .decoration-lines.right {
            top: 0;
            right: 0;
            width: 200px;
            height: 100%;
            background: repeating-linear-gradient(
                -45deg,
                transparent,
                transparent 10px,
                #C0C0C0 10px,
                #C0C0C0 13px
            );
            opacity: 0.5;
        }

        @media (max-width: 1200px) {
            .parcours-flow {
                grid-template-columns: 1fr !important;
                grid-template-rows: auto;
                gap: 40px;
            display:grid;
            padding:0;
            }

            .step-2 .label-red,
            .step-3 .label-red {
                position: static;
                display: block;
            margin-bottom:200px;
            }
        .arrow-2{
        left:50%;
        transform:rotate(38deg)translateX(-50%) !important;
        top:-750px;
        }
        .arrow-1{
        left:50%;
        transform:rotate(38deg) translateX(-50%) !important;
        top:-150px;
        }
        .arrow-3{
        display:none;
        }
        .arrow-4{
        left:50%;
        transform:rotate(38deg) translateX(-50%) !important;
        top:300px;
        }
        }

@media (max-width: 667px){
.step-3{
grid-column:1;
grid-row:2;
}
.step-3{
grid-column:1;
grid-row:3;
}
.step-4{
grid-column:1;
grid-row:4;
margin-top:120px;
}
.step-box{
padding:0;
min-height:100%;
}
}

       
.parcours-flow .step-box,
.parcours-flow .arrow-curve,
.parcours-flow .label-red {
    opacity: 0;
    visibility: hidden;
    transition: all 0.6s ease;
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-100px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}


@keyframes slideInDown {
    from {
        opacity: 0;
        transform: translateY(-50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


@keyframes bounceIn {
    0% {
        opacity: 0;
        transform: scale(0.3);
    }
    50% {
        opacity: 1;
        transform: scale(1.05);
    }
    70% {
        transform: scale(0.9);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}


.parcours-flow .step-box.show {
    opacity: 1;
    visibility: visible;
    animation: slideInLeft 0.8s ease forwards;
}

.parcours-flow .arrow-curve.show {
    opacity: 1;
    visibility: visible;
    animation: slideInDown 0.6s ease forwards;
}

.parcours-flow .label-red.show {
    opacity: 1;
    visibility: visible;
    animation: bounceIn 0.7s ease forwards;
}


.parcours-flow {
    position: relative;
    min-height: 800px;
}
/******************/
.acc-left{
    width: 330px;
    height: 395px;
    object-fit: cover;
}



/*******============== section map ====================*/
.section_carte {
    background-color: #f3f7fa;
    position: relative;
    z-index: 1;
    padding: 40px 0px;
}
.img-wrapper {
    display: flex;
    gap: 15px;
    height: 461px;
    margin-top: 50px;
    justify-content: center;
    width: 100%;
    /* height: 670px; */
}
.img-maps {
    width: 100%;
    max-width: 500px;
    height: 100%;
    object-fit: cover;
}
.donnee_agence {
    width: 600px;
    position: relative;
    top: 250px;
    left: 230px;
}
.agence-badge {
    display: inline-block;
    background: #00a0dd;
    font-family: "Montserrat", sans-serif;
        color: #fff;
    padding: 5px 35px;
    border-radius: 10px;
    font-size: 17px;
    margin-bottom: 10px;
    font-weight: 600;
    width: 222px;
}
.info-agence {
    display: flex;
    align-items: start;
    margin-bottom: 10px;
}
.info-agence img {
    width: 20px;
    margin-right: 10px;
    margin-top: 4px;
}
.desc-agence {
    margin: 0;
    font-size: 18px;
    color: #002147;
    font-weight: 500;
    text-align: justify;
    
}
.acc-left {
    width: 338px;
    height: 350px;
    object-fit: cover;
}
.item2-accueil {
    position: absolute;
    display: inline-block;
    overflow: hidden;
    bottom: -49px;
    right: 130px;
}
.map-gp {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease; 
}

.map-gp:hover {
    transform: scale(1.05); 
}
/* .carte-france{
        height: 255px;
} */
/* .acc-horizontal{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0px; 
}


.acc-map{
    max-width: 100%;
    width:100%; 
    height: 100%;
    object-fit: cover;
}


.img-accueils,
.img-accueils2{
    width: 100%;
        height: 100%;
    border-radius: 10px;
    object-fit: cover;
}
.item-accueils{
    width: 200px;
    height: 300px;
}
.item2-accueils{
    width: 200px;
    height: 300px;
}
.item-map{
     width: 300px;
    height: 300px;
} */
 .accueil-images {
    display: flex;
    flex-direction: column; 
    gap: 4px;            
    
}
.carte-france-index {
width:100%;
 height: 100%;
}
.carte-france {
    display: flex;
    justify-content: center; 
    align-items: center;   
    /* height: 100%; */
}

.carte-france img {
    max-width: 100%;
    height: auto;
}
.it-acc{
    width: 200px;
    height: 250px;
        border-radius: 5px;
        overflow: hidden;
}
.it2-acc{
    width: 100%;
    height: 150px;
        border-radius: 5px;
         overflow: hidden;
}
.it-acc img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.it2-acc img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.item7 {
    position: relative;
    display: inline-block;
    overflow: hidden;
    top: -86px;
    margin-left: 120px;
}

.item8 {
    position: relative;
    display: inline-block;
    overflow: hidden;
    top: -115px;
    margin-left: 116px;
}

.navbar-toggler{
background-color:#f0f0f0;
}

.bloc-fichiers{
background-color:rgba(211, 223, 237, 0.6);
border-radius:10px;
padding:10px;
width:280px;
}

.bloc-fichiers .pdf-img{
width:20px;
margin-right:10px;
}

.bloc-fichiers p{
color:#000;
}

.bloc-fichiers a:hover{
color:#0f2161;
}