.blue{
	color:#1EE8D7;
}

.bold{
	font-weight: bold;
}

#top{
	display:none;
}

#logo-top{
	display:flex;
	align-items: center;
}

#logo-title h1{
	font-weight: bold;
	color:white;
}

#header{
	position:fixed !important;
	top:0;
	left:0;
}

#banner{
	display:none;
}

.qblogo{
	font-size:38px;
}

.techlogo{
	font-size:24px;
}

.wlogo{
	font-size:16px;
	font-weight:bold;
}
#video {
    position: relative;
    height:100vh;
}

#video::after {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 0;
    width: 100%;
    height: 50px;
    background: black;
    filter: blur(5px);
}

#intro{
	width:100%;
	height:100%;
	object-fit: cover;
}

#banner-content{
	position:absolute;
	top:20%;
	left:3%;
	z-index:99;
	max-width:50%;
	line-height:1;
	color:white;
	font-family: 'ntailu';
	font-size:96px;
}

#choice{
	width:100%;
	background-color:black;
	background-image: url('../../images/QB_Background_vague.png'); /* Chemin de l'image */
    background-size: 100% 100%; /* Adapte l'image pour couvrir tout le div */
    background-position: center; /* Centre l'image dans le div */
    background-repeat: no-repeat;
    text-align:center;
}

#choice #choice-talent #title h3{
	font-weight:bold;
	font-size:46px;
}

#choice #choice-talent #title p{
	font-weight: lighter;
	font-size:26px;
	margin-left:5%;
	width:90%;
}

#choice #choice-contact-mobile{
	display:none;
}

#choice-contact-desktop{
	position:absolute;
	bottom:50px;
	left:3%;
	font-size: 16px;
	color:white;
	width:auto;
}

#choice-contact-desktop a{
	margin-top:20px;
}

#choice #choice-contact p{
	width:33%;
	color:white;
}

.blue_button {
    display: inline-block;
    padding: 5px 10px;
    font-size: 18px;
    font-weight: bold; 
    color: black;
    background-color: #1EE8D7;
    text-decoration: none;
    border-radius: 25px;
    transition: all 0.3s ease; 
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.blue_button:hover {
    background-color: #00A9CE; /* Bleu plus foncé au survol */
    transform: scale(1.05); /* Légère augmentation de taille */
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3); /* Accentuation de l'ombre */
}

.blue_button:active {
    transform: scale(0.95); /* Réduction légère à l'activation */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* Ombre réduite */
}

.white_button{
	background-color:white;
}

.black_button{
	background-color:black;
	color:#1EE8D7;
}


#choice #choice-talent{
	width:90%;
	margin-left:5%;
	text-align:center;
}


#choice #choice-talent #competences{
	width:90%;
	margin-left:5%;
	display:flex;
	justify-content: space-evenly;
}

#choice #choice-talent #competences .competence{
	width:20%;
	text-align:center;
	color:white;
	font-size:initial;
    transition: filter 0.3s ease, transform 0.3s ease; /* Animation fluide pour l'image */
}

#choice #choice-talent #competences .competence img{
	width:50%;
}
#choice #choice-talent #competences .competence h4{
	font-weight:bold;
	font-size:18px;
}
#choice #choice-talent #competences .competence p{
	font-size:16px;
	text-align: center;
	margin:auto;
	width:90%;
}
#choice #choice-talent #competences .competence a{
	font-weight:bold;
	font-size:16px;
}

#choice .blue_button{
	margin-top:50px;
}

.competence img {
    height: auto;
    transition: filter 0.3s ease, transform 0.3s ease; 
}

.competence:hover img, .competence:hover h4{
    filter: brightness(0) saturate(100%) invert(61%) sepia(19%) saturate(641%) hue-rotate(138deg) brightness(103%) contrast(96%);
}

.competence:hover .white_button{
	background-color:#1EE8D7;
}

.competence:hover {
    transform: translateY(-5px);
    transform: scale(1.1);
}



#carousel-container {
    position: relative;
    width: 50%;
    max-width:1080px;
    height:auto;
    margin: 0 auto;
    overflow: hidden;
    border-radius: 30px;
    border: 4px solid #1EE8D7;
}

#show {
    display: flex;
    width:100%;
    transition: transform 0.3s ease-in-out;
}

#show img, #show iframe {
    width: 100%;  /* Prend toute la largeur de l'écran */
    height: auto;
    flex: 0 0 auto;
}
#navcarroussel{
	display:flex;
	margin-left: 5%;
	width:90%;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
    margin-top: 20px;
}
#pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.dot {
    width: 10px;
    height: 10px;
    background-color: gray;
    border-radius: 50%;
    margin: 5px;
    cursor: pointer;
}

.dot.active {
    background-color: #1EE8D7;
}

#example p{
	font-weight: lighter;
	font-size:26px;
	margin-left:5%;
	width:90%;
}

/*
Products
*/

#products{
	width:100%;
}

#products h3{
	font-weight: bold;
	font-size:46px;
}

#products .first{
	font-weight: lighter;
	font-size:26px;
}

#cards{
	width:70%;
	margin-left:15%;
	display:flex;
	align-items: center;
	justify-content: space-evenly;    
	gap: 20px;
    align-items: stretch;
    flex-wrap: wrap;
}

.card {
    width: 24%;
    background: black;
    text-align: center;
    color: white;
    font-family: Arial, sans-serif;
    
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

.card-content {
	width:100%;
	font-size:26px;
	font-weight: bold;
    border: 5px solid #1EE8D7;
    border-top-left-radius: 20px;
  	border-top-right-radius: 20px;
    flex-grow: 1; /* Fait en sorte que les cartes prennent la même hauteur */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* Ajuste l’image sans forcer une hauteur */
.card-image {
    width: 100%;
    border-top-left-radius: 20px;
  	border-top-right-radius: 20px;
    object-fit: contain; /* Empêche la déformation */
}

.card-text {
	display: flex;
	align-items: center;
    text-align: center;
    padding: 10px;
    width: 100%;
    background: #1EE8D7;
    color: black;
	margin:0;
    flex-grow: 1;
    font-size:16px;
}

.card-footer {
	width:100%;
	font-size:26px;
	font-weight: bold;
	color:white;
	text-align:center;
	padding-top:10px;
}

/*
Clients
*/

#clients{
	width:100%;
	background-color:black;
	background-image: url('../../images/C_background_vague.png'); /* Chemin de l'image */
    background-size: 100% 100%; /* Adapte l'image pour couvrir tout le div */
    background-position: center; /* Centre l'image dans le div */
    background-repeat: no-repeat;
    height:auto;
    margin-bottom:50px;
}

#clients h3{
	font-weight: bold;
	font-size: 46px;
}

#clients p{
	font-weight: lighter;
	font-size:26px;
}

#clients_list{
	margin-left:25%;
	width:50%;
	display:flex;
	align-items: center;
	justify-content: space-evenly;
	flex-wrap: wrap;
}

.client{
	width:21%;
	border-radius:10px;
	margin-top: 50px;
	padding:10px;
}

.client a{
	border-bottom:0px;
	text-decoration: none;
}

.client img{
	width:100%;
	border-radius:10px;
}

/*
Blue banner, img banner
*/

#blue_banner{
	width:100%;
	text-align:center;
	background-color:black;/* Chemin de l'image */
    background-size: 100% 100%; /* Adapte l'image pour couvrir tout le div */
    background-position: center; /* Centre l'image dans le div */
    background-repeat: no-repeat;
	background-image: url('../../images/banner/B_Background_banniere.png'); 
    display:flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height:45vh;
}

#blue_banner h2{
	font-size:68px;
	font-weight: bold;
	font-family: 'ntailu';
}

#blue_banner h3{
	font-size:46px;
	font-weight: bold;
	line-height: normal;
	letter-spacing: normal;
	width:80%;
	text-transform: none;
}

#blue_banner h2, #blue_banner h3{
	color:black;
	margin-bottom:unset;
}

#blue_banner_button{
	margin-top:50px;
	margin-bottom:50px;
	font-size: 16px;
	padding:15px;
}

.img_banner{
	width:100%;
}

.img_banner img{
	width:100%;
	height:auto;
	display:block;
}

#footer{
	position:relative;
	background-color: black;
	display:flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}

/*
Footer
*/

#footer-content, #contact{
	width:45%;
	color:white;
}

#footer-content{
	text-align:justify;
}



.copyright{
	width:100%;
	color:white;
}

.icons li a,.copyright li a{
	border-bottom: 0px;
}

/*
utils
*/

#choice #choice-talent #title, #example, #clients, #products{
	width:100%;
	text-align:center;
	color:white;
	font-size:30px;
}

#choice #choice-talent #title h3,#example h3, #clients h3, #products h3{
	font-weight: bold;
}


.dot {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background-color: black;
    border: 2px solid #1EE8D7;
    cursor: pointer;
}
.dot.active {
    background-color: #1EE8D7;
}

.separator, .separator-nomargin {
    width: 80%;
    height: 2px; 
    margin: 20px auto;
    background: linear-gradient(to right, rgba(0, 0, 0, 0), #1EE8D7, rgba(0, 0, 0, 0)); 
    border-radius: 2px; 
}

.separator{
    margin-top:100px;
    margin-bottom:100px;	
}

#informationMessage, #mentions, #error, #confidentialite, #pocookies{
    white-space: normal; /* Retour à la ligne automatique */
    word-wrap: break-word; /* Coupe les mots longs pour éviter les débordements */
    overflow-wrap: break-word; /* Alternative moderne */
    width:50%;
    margin-left:25%;
    padding-top:50px;
    color:white;
}