/*!
Theme Name: STARTEO Starter Theme
Author: Starteo
Author URI: https://www.starteo.pro
Description: 
Version: 1.0
Requires at least: 5.0
Tested up to: 5.7
Requires PHP: 7.2
Text Domain: gbdi-starter
*/

/* Don't overwrite this file. Compile "/assets/main.(less|scss)" to "/assets/css/main.css" */


/* From http://codex.wordpress.org/CSS */

/* GENERAL */
@font-face {
	font-family: "Averta";
	src: url(assets/_fonts/Averta-Regular.otf) format("opentype");
	font-weight: normal;
}

@font-face {
	font-family: "Averta";
	src: url(assets/_fonts/Averta-Semibold.otf) format("opentype");
	font-weight: 600;
}

@font-face {
	font-family: "Averta";
	src: url(assets/_fonts/Averta-Bold.otf) format("opentype");
	font-weight: bold;
}

@font-face {
	font-family: "Averta";
	src: url(assets/_fonts/Averta-ExtraBold.otf) format("opentype");
	font-weight: 900;
}

@font-face {
	font-family: "HolidayFree";
	src: url(assets/_fonts/HolidayFree.otf) format("opentype");
}

body{
	font-family: "Averta";
}

.back-to-top{
	display: none; /* Hidden by default */
	position: fixed; /* Fixed/sticky position */
	bottom: 10px; /* Place the button at the bottom of the page */
	right: 10px; /* Place the button 30px from the right */
	z-index: 999; /* Make sure it does not overlap */
	outline: none; /* Remove outline */
	cursor: pointer; /* Add a mouse pointer on hover */
	font-size: 20px; /* Increase font size */
	color: #FFFFFF;
	background: #171C32;
	border: solid 2px #2BB7C4;
	border-radius: 50px;
	padding: 14px 16px;
	transition: background-color .3s, opacity .5s, visibility .5s;
	opacity: 0;
	visibility: hidden;
}

.back-to-top.show {
	opacity: 1;
	visibility: visible;
}

.back-to-top:hover{
	background-color: #2BB7C4;
}

.grecaptcha-badge{
	display: none;
}

.procool-white{
	color: #FFFFFF !important;
	border-color: #FFFFFF !important;
}

.procool-dark{
	color: #171C32 !important;
	border-color: #171C32 !important;
}

.procool-blue{
	color: #2BB7C4 !important;
	border-color: #2BB7C4 !important;
}

.procool-bg-white{
	background-color: #FFFFFF;
}

.procool-bg-blue{
	background-color: #2BB7C4;
}

.procool-bg-dark{
	background-color: #171C32;
}

.procool-title{
	font-size: 50px;
	line-height: 48px;
	font-weight: 900;
	text-transform: uppercase;
}

.procool-title-big{
	font-size: 100px;
	line-height: 133px;
	font-weight: 900;
}

.procool-title-big b, .procool-title-big strong{
	font-family: "HolidayFree";
	font-weight: normal;
	line-height: 123px;
	color: #FFFFFF;
}

.procool-subtitle{
	font-size: 35px;
	line-height: 48px;
	font-weight: 900;
}

.procool-home-subtitle{
	font-size: 35px;
	line-height: 48px;
}

.procool-home-subtitle b, .procool-home-subtitle strong{
	font-weight: 900;
}

.procool-introduction{
	font-size: 40px;
	line-height: 55px;
	font-weight: normal;
}

.procool-introduction b, .procool-introduction strong{
	font-weight: 900;
}

.procool-title b, .procool-title strong{
	font-family: "HolidayFree";
	font-weight: normal;
	text-transform: capitalize;
	line-height: 38px;
}

.procool-title p{
	margin-bottom: 0;
}

.procool-page-std{
	padding-top: 80px;
}

.procool-content{
	font-size: 25px;
	line-height: 35px;
}

.procool-content b, .procool-content strong{
	font-weight: 900;
}

.procool-content-small{
	font-size: 20px;
	line-height: 40px;
}

.procool-content-small b, .procool-content-small strong{
	font-weight: 900;
}

.procool-button{
	display: inline-block;
	text-transform: uppercase;
	font-size: 15px;
	line-height: 15px;
	font-weight: 900;
	color: #FFFFFF;
	border: solid 2px;
	border-radius: 50px;
	width: auto;
	padding: 12px 30px;
	outline: none;
}

.procool-button.procool-bg-white:hover{
	color: #FFFFFF !important;
}

.procool-button.procool-bg-dark:hover{
	color: #171C32 !important;
}

.procool-button.procool-blue:hover{
	background-color: #2BB7C4;
	border-color: #2BB7C4 !important;
}

.procool-rounded-start, .procool-rounded-end{
	position: relative;
}

.procool-rounded-start::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	height: 100%;          /* diamètre = hauteur du bloc */
	aspect-ratio: 1 / 1;   /* => cercle parfait */
	transform: translate(-10%, -50%); /* centre le cercle sur le bord gauche */
	border-radius: 50%;
	background: #2BB7C4;
	z-index: -1;
}

.procool-rounded-end::before{
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	height: 100%;          /* diamètre = hauteur du bloc */
	aspect-ratio: 1 / 1;   /* => cercle parfait */
	transform: translate(10%, -50%); /* centre le cercle sur le bord gauche */
	border-radius: 50%;
	background: #2BB7C4;
	z-index: -1;
}

.procool-separator{
	height: 4px;
	width: 100%;
	margin-top: 120px;
	margin-bottom: 90px;
}
/* GENERAL */

/* HEADER */
.procool-header{
	z-index: 999;
	position: fixed;
}

.procool-header-sticky{
	position: sticky;
	top: 0;
}

.procool-header{
	box-shadow: 0px 11px 8px -4px #00000029;
}

.procool-header-link{
	padding-top : 10px;
	padding-bottom : 10px;
}

.procool-header-link img{
	max-height: 50px;
}

.procool-header .navbar{
	padding: 0;
}

.procool-header .navbar-nav{
	display: flex;
	column-gap: 30px;
}

.procool-header .navbar-nav .nav-link{
	color: #171C32 !important;
	font-size: 20px;
	line-height: 24px;
	font-weight: 900;
	text-transform: uppercase;
	padding: 28px 50px;
}

.procool-header .navbar-nav .nav-link:hover, .procool-header .navbar-nav .active .nav-link{
	background-color: #171C32;
	color: #FFFFFF !important;
}

.procool-header .navbar-nav li:last-child .nav-link{
	color: #2BB7C4 !important;
}

.procool-header .navbar-nav li:last-child .nav-link:hover, .procool-header .navbar-nav li:last-child.active .nav-link{
	background-color: #2BB7C4;
	color: #FFFFFF !important;
}
/* HEADER */

/* FOOTER */
.procool-contact{
	padding-top: 120px;
	padding-bottom: 140px;
	border-bottom-left-radius: 120px;
	border-bottom-right-radius: 120px;
}

.procool-contact input, .procool-contact textarea, .procool-contact label.procool-label{
	width: 100%;
	max-width: 100%;
	resize: none;
	background-color: transparent;
	outline: none;
	font-size: 30px;
	line-height: 48px;
	color: #171C32;
	border: none;
	border-bottom: solid 4px #FFFFFF;
	padding: 0;
	padding-bottom: 10px;
	margin-bottom: 30px;
}

.procool-contact label.procool-label{
	color: #FFFFFF;
}

.procool-contact ::placeholder {
	font-weight: 900;
	color: #FFFFFF;
	opacity: 1; /* Firefox */
}

.procool-contact ::-ms-input-placeholder { /* Edge 12 -18 */
	font-weight: 900;
	color: #FFFFFF;
}

.procool-contact textarea::placeholder {
	font-weight: normal;
	color: #171C32;
	opacity: 1; /* Firefox */
}

.procool-contact textarea::-ms-input-placeholder { /* Edge 12 -18 */
	font-weight: normal;
	color: #171C32;
}

.procool-contact textarea{
	border-bottom: none;
	max-height: 118px;
	padding-left: 129px;
	padding-right: 129px;
}

.procool-contact input[type="submit"]{
	display: inline-block;
	text-transform: uppercase;
	font-weight: 900;
	color: #FFFFFF;
	border: solid 4px #FFFFFF;
	border-radius: 70px;
	width: auto;
	padding: 12px 30px;
	line-height: 30px;
	outline: none;
}

.procool-contact input[type="submit"]:hover{
	color: #2BB7C4;
	background-color: #FFFFFF;
	border-color: #FFFFFF;
}

.procool-contact .wpcf7-spinner{
	display: block;
	margin: auto;
}

.procool-contact .procool-form-content .wpcf7-form-control-wrap{
	display: block;
	width: 100%;
	padding-left: 70px;
	padding-right: 70px;
}

.procool-contact .wpcf7-checkbox{
	display: grid;
    grid-template-columns: 1fr 1fr 1fr;	
}

.procool-contact .wpcf7-checkbox label span{
	position: relative;
	padding-left: 55px;
	cursor: pointer;
}

.procool-contact .wpcf7-checkbox label span:before{
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 23px;
	height: 23px;
	border: solid 2px #171C32;
	border-radius: 50px;
}

.procool-contact .wpcf7-checkbox input[type=checkbox]:checked + span:before, .procool-contact .wpcf7-checkbox input[type=checkbox]:hover + span:before{
	background-color: #171C32;
}

.procool-contact .wpcf7-checkbox input{
	display: none;
}

.procool-footer{
	padding-top: 90px;
}

.procool-footer-socials{
	display: flex;
	flex-direction: column;
	align-items: center;
	column-gap: 18px;
	row-gap: 11px;
}

.procool-footer-socials a{
	width: 55.27px;
	height: 55.06px;
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
}

.procool-footer-socials a.procool-facebook{
	background-image: url(assets/images/Procool-Facebook.webp);
}

.procool-footer-socials a.procool-facebook:hover{
	background-image: url(assets/images/Procool-Facebook-Hover.webp);
}

.procool-footer-socials a.procool-linkedin{
	background-image: url(assets/images/Procool-Linkedin.webp);
}

.procool-footer-socials a.procool-linkedin:hover{
	background-image: url(assets/images/Procool-Linkedin-Hover.webp);
}

.procool-footer-agencies{
	display: flex;
	justify-content: space-between;
	font-size: 25px;
	line-height: 35px;
	margin-bottom: 15px;
}

.procool-footer-agency-name{
	text-transform: uppercase;
	font-weight: 900;
}

.procool-footer-phone{
	font-size: 39px;
	line-height: 35px;
	text-transform: uppercase;
	font-weight: 900;
}

.procool-footer-links{
	padding-top: 90px;
	padding-bottom: 25px;
	font-size: 14px;
	line-height: 14px;
}

.procool-footer-links a{
	color: #171C32 !important;
}

.procool-footer-links a:hover{
	color: #2BB7C4 !important;
}

.procool-certifications{
	margin-top: 110px;
	border-top: solid 3px #171C32;
	padding-top: 40px;
	column-gap: 30px;
}
/* FOOTER */

/* HOME */
.procool-home-header{
	min-height: 820px;
	height: 100vh;
	max-height: 100vh;
	position: relative;
	z-index: 999;
}

.procool-vh{
	min-height: 820px;
	height: calc(100vh - 80px);
	max-height: calc(100vh - 80px);
	position: relative;
	padding-top: 80px;
}

.procool-home-slider{
	width: 100%;
	height: 100%;
}

.procool-home-slider.slick-slider .slick-track, .procool-home-slider.slick-slider .slick-list{
	height: 100%;
	max-height: 100% !important;
}

.procool-home-slide{
	width: 100%;
	max-width: 100%;
	height: 100%;
	max-height: 100%;
	object-fit: cover;
}

/*
.procool-home-overlay{
	transform: translate(-50%, -50%);
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 999;
}
*/

.procool-home-overlay{
	padding-bottom: 90px;
}

.procool-home-overlay img{
	max-height: 260px;
}

.procool-presentation{
	padding-bottom: 40px;
}

.procool-presentation-row{
	z-index: 1000;
	position: relative;
	margin-top: -75vh;
}

.procool-presentation-row .procool-col-p{
	padding-top: 125px;
	padding-bottom: 135px;
}

.procool-presentation-image{
	/*
	border-top-left-radius: 100px;
	border-bottom-left-radius: 100px;
	*/
}

.procool-presentation .procool-title{
	position: relative;
}

.procool-presentation-overlay{
	position: absolute;
	bottom: -40px;
	right: 33px;
}

.procool-engagement{
	padding-top: 0;
	padding-bottom: 140px;
}

.procool-engagements{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	gap: 33px;
}

.procool-engagement-element-image{
	height: 157px;
	display: flex;
	align-items: end;
	justify-content: center;
	margin-bottom: 25px;
}

.procool-engagement-element-image img{
	max-height: 100%;
}

.procool-engagement-element-title{
	font-size: 30px;
	line-height: 35px;
	text-transform: uppercase;
	font-weight: 900;
	padding: 0 25px;
	margin-bottom: 7px;
}

.procool-engagement-element-content{
	font-size: 15px;
	line-height: 20px;
	padding: 0 10px;
}
/* HOME */

/* SOLUTION */
.procool-solution-content{
	padding-top: 230px;
	padding-bottom: 230px;
}

.procool-solution-advantages{
	padding-top: 80px;
	padding-bottom: 80px;
}

.procool-solution-image{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.procool-solution-header{
	position: absolute;
	z-index: -1;
	top: 80px;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-bottom-left-radius: 100px;
	border-bottom-right-radius: 100px;
}

.procool-solution-content .procool-title strong, .procool-solution-content .procool-title b{
	color: #171C32;
	text-transform: initial;
}
/* SOLUTION */

/* QUI SOMMES NOUS */
.procool-presentation-page{
	padding-top: 215px;
}

.procool-presentation-page .procool-presentation-overlay{
	bottom: initial;
}

.procool-presentation-banner{
	width: 100%;
	height: auto;
}

.procool-presentation-content{
	padding-top: 230px;
	padding-bottom: 230px;
}
/* QUI SOMMES NOUS */

/* SOLUTIONS */
.procool-solutions{
	padding-top: 120px;
	padding-bottom: 140px;
	/*
	border-top-left-radius: 120px;
	border-top-right-radius: 120px;
	*/
}

.procool-solutions-element, .procool-solutions-last{
	background-repeat: no-repeat;
	background-position: center center;
	display: block;
}

.procool-solutions-element{
	background-size: auto 100%;
	padding: 60px 20px 60px 60px;
	border-radius: 50px;
}

.procool-solutions-last{
	background-size: 100% auto;
	padding: 60px;
	border-radius: 50px;
}

.procool-solutions-title{
	font-size: 35px;
	line-height: 48px;
	font-weight: 900;
}

.procool-solutions-title b, .procool-solutions-title strong{
	font-family: "HolidayFree";
	font-weight: normal;
}

.procool-solutions-title p{
	margin-bottom: 0;
}

.procool-solutions-content{
	font-size: 16px;
	line-height: 20px;
}

.procool-solutions-content b, .procool-solutions-content strong{
	font-weight: 900;
}

.procool-solution-button{
	display: inline-block;
	text-transform: uppercase;
	font-size: 15px;
	line-height: 15px;
	font-weight: 900;
	color: #FFFFFF;
	border: solid 2px;
	border-radius: 50px;
	width: auto;
	padding: 12px 30px;
	outline: none;
	color: #2BB7C4;
	border-color: #2BB7C4;
	transition: all .5s;
}

.procool-solutions-element:hover .procool-solution-button, .procool-solutions-last:hover .procool-solution-button{
	color: #171C32 !important;
	background-color: #2BB7C4;
}

.procool-solutions-list {
	display: flex;
	width: 100%;
	height: 580px;
	gap: 30px; /* espace entre les blocs */
	overflow: hidden;
}

.procool-solutions-list .procool-solutions-element{
	flex: 1; /* chaque élément prend 1 "part" par défaut */
	transition: flex 0.5s ease;
	display: flex;
	flex-direction: column;
	align-items: start;
	justify-content: end;
	font-size: 1.5rem;
	cursor: pointer;
	overflow: hidden; /* évite que le contenu dépasse */
	position: relative;
}

.procool-solutions-element-arrow{
	position: absolute;
	bottom: 60px;
	right: 60px;
	transition: all 0.6s ease;
	filter: initial;
}

.procool-solutions-list .procool-solutions-element .procool-solutions-element-span{
	white-space: nowrap;      /* pas de retour à la ligne */
	overflow: hidden;         /* cache le texte qui dépasse */
	max-width: 100%;          /* ne dépasse jamais la largeur du bloc */
	display: block;
	transition: all 0.6s ease;
	opacity: 0;
	width: 100%;
}

/* Premier élément ouvert par défaut → 2 parts */
.procool-solutions-list .procool-solutions-element:first-child {
	flex: 2;
}

.procool-solutions-list .procool-solutions-element:first-child .procool-solutions-element-span{
	opacity: 1;
}

/* Quand on survole un autre élément, il prend 2 parts */
.procool-solutions-list:hover .procool-solutions-element {
	flex: 1; /* les autres restent petits */
}

.procool-solutions-list:hover .procool-solutions-element .procool-solutions-element-span{
	opacity: 0;
}

.procool-solutions-list:hover .procool-solutions-element:hover {
	flex: 2;
}

.procool-solutions-list:hover .procool-solutions-element:hover .procool-solutions-element-arrow{
	filter: invert(100%) sepia(4%) saturate(6%) hue-rotate(290deg) brightness(1000%) contrast(100%);
}

.procool-solutions-list:hover .procool-solutions-element:hover .procool-solutions-element-span{
	opacity: 1;
}

.procool-solutions-page{
	padding-top: 200px;
	border-radius: 0;
}
/* SOLUTIONS */

/* FAQ */
.procool-page-faq{
	padding-top: 175px;
	padding-bottom: 145px;
} 

.procool-page-faq .procool-title{
	text-transform: uppercase;
	font-size: 50px;
	line-height: 48px;
	padding-bottom: 60px;
}

.procool-page-faq .procool-title b, .procool-page-faq .procool-title strong{
	text-transform: initial;
	color: #2BB7C4;
}

.procool-faq-elements .accordion-item{
	border: none;
	border-radius: 0;
}

.procool-faq-elements .accordion-button{
	font-size: 25px;
	line-height: 25px;
	font-weight: 900;
	padding: 0;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 20px;
	box-shadow: none;
}

.procool-faq-elements .accordion-button:after{
	display: none;
}

.procool-faq-elements .accordion-button:before{
	content: '+';
	color: #2BB7C4;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%) rotate(0deg);
	transform-origin: center center;
	font-size: 25px;
	line-height: 25px;
	font-weight: 900;
	background-image: none;
	transition: all .2s;
}

.procool-faq-elements .accordion-button.collapsed:hover:before{
	transform: translateY(-50%) rotate(90deg);
}

.procool-faq-elements .accordion-button:not(.collapsed){
	background-color: transparent;
	color: #171C32;
}

.procool-faq-elements .accordion-button:not(.collapsed):before{
	content: '-';
}

.procool-faq-elements .accordion-button:not(.collapsed){
	padding-left: 25px;
}

.procool-faq-elements .accordion-body{
	text-align: left;
	font-size: 20px;
	line-height: 25px;
	font-weight: 300;
	padding-left: 85px;
}
/* FAQ */