:root {
	--swiper-pagination-bullet-size: 12px;
	--swiper-pagination-bullet-inactive-color: var(--bleu-clair);
	--swiper-pagination-bullet-inactive-opacity: 1;
	--swiper-pagination-bullet-horizontal-gap: 4px;
	--swiper-pagination-bottom: 43px;
}

p {
	margin-bottom: 0.4em;
}

ul {
	margin: 0 0 0.7em 1.3em;
}

/* Page découverte */

/* Header et fil d'ariane */
.je-decouvre nav {
	margin-top: 2rem;
}
.je-decouvre header, .bg-je-teste header {
	display: flex;
	padding-left: 20px;
	align-items: center;
	margin-top: 9rem;
	margin-left: 3.7rem;
}
.je-decouvre header a, .je-decouvre header span, .bg-je-teste header a, .bg-je-teste header span {
	color:#fff;
	font-weight: 600;
}
.je-decouvre header a:hover,
.bg-je-teste header a:hover {
	opacity: 0.7;
}


@media (max-width: 769px) {
	.je-decouvre header, .bg-je-teste header {
		height: 60px;
		background-color: var(--rouge);
		margin: 0;
	}
}

/* Swiper */
.je-decouvre .my-buttons-swiper {
	padding-bottom: 40px;
	overflow: visible;
}

.je-decouvre .my-buttons-swiper .swiper-wrapper {
	/*transition-duration: 0s !important;*/
	max-width: 800px;
	margin: auto;
}

.je-decouvre .my-buttons-swiper .swiper-slide {
	/*width: 50% !important;*/
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	border-radius: 8px;
	margin: auto;
	/*width: 348px !important; mob*/
	height: 462px;
}

.je-decouvre .carre-bleu {
	width: 235px;
	height: 411px;
	background-color: var(--bleu-ciel);
	margin-top: 49px;
	position: relative;
}

.picto {
	position: absolute;
	width: 48px;
	height: 48px;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: center center;
	border: none;
	border-radius: 0;
}

.picto.loupe {
	top: -31px;
	left: -23px;
	background-image: url('../assets/img/search.svg');
	background-size: 18px 18px;
	z-index: 100;
}

.picto.gamepad {
	background-image: url('../assets/img/gamepad.svg');
	background-size: 23px 18px;
	top: -18px;
	left: 27px;
}
.picto.compass {
	background-image: url('../assets/img/compass.svg');
	background-size: 23px 18px;
	top: -21px;
	left: 27px;
}

.je-decouvre .image-overlay {
	position: absolute;
	object-fit: cover;
	z-index: 1;
	height: 451px;
	bottom: 0;
	margin-right: 2px;
}

.je-decouvre .industrie .image-overlay {
	height: 284px;
	margin-right: 113px;
	margin-bottom: 129px;
}

.je-decouvre .btn-decouverte {
	position: absolute;
	border: none;
	padding: 21px 40px;
	z-index: 2;
	width: auto;
}

.je-decouvre .alternance .btn-decouverte {
	top: 55%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 21px 40px;
}

.je-decouvre .industrie .btn-decouverte {
	/*top: 54%;
	left: 27%;*/
	transform: translate(0%, 33%);
	margin: auto;
	padding: 12px 24px;
	width: 222px;
}
.swiper-slide.swiper-slide-active.industrie .btn-decouverte {
	/*left: 25%;
	transform: translate(-17%, -45%);*/
}

/* Mobile */
@media (max-width: 769px) {

	.my-buttons-swiper .swiper-slide {
		/*width: 70% !important;*/
		margin-left: 0;
		margin-right: 0 !important;
	}

	.my-buttons-swiper .swiper-slide.swiper-slide-active.alternance {
		width: 66% !important; /*326px pour 493 large */
		margin-left: 17% !important; /* calc((100vw - 334px) / 2) : 87 pour 493  */
		margin-right: -5% !important;
	}

	.je-decouvre .image-overlay {
		margin-right: 4px;
	}

	.je-decouvre .industrie .image-overlay {
		margin-right: 96px;
		height: 221px;
		margin-bottom: 191px;
	}


}

@media (min-width: 770px) {
	.je-decouvre .my-buttons-swiper .swiper-slide {
		width: 348px !important;
	}
}

/* Page Je teste et je m'oriente */
.bg-je-teste {
	background-image: url('../assets/img/bg-je-teste-desktop.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	width: 100%;
	height: 100vh;
	transform: none;
}

.je-teste {
	position: relative;
	width: 400px;
	margin: -5rem auto 0;
}

.je-teste .carre-bleu {
	width: 300px;
	height: 493px;
	background-color: var(--bleu-clair);
	margin: 50px auto 20px;
}

.je-teste button {
	margin: 0 auto;
	width: 300px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.je-teste .image-overlay {
	position: absolute;
	bottom: 89px;
	left: 50px;
	width: 300px;
}

.je-teste.je-moriente .image-overlay {
	bottom: 88px;
	left: 107px;
	width: 183px;
}

.je-teste .texte {
  padding: 62px 30px 20px;
	text-align: center;
	font-size: 16px;
	color: var(--bleu);
	line-height: 1.4rem;
	font-weight: 600;
}

/* Mobile */
@media (max-width: 769px) {
	.bg-je-teste {
		height: calc(100vh - 97px);
	}

	.je-teste {
		margin-top: 0 ;
	}
	.je-teste .carre-bleu {
		width: 235px;
		height: 395px;
	}

	.je-teste .image-overlay {
		bottom: 89px;
		left: 83px;
		width: 235px;
	}

	.je-teste.je-moriente .image-overlay {
		bottom: 89px;
		left: 127px;
		width: 143px;
	}

	.je-teste .texte {
		padding: 34px 21px 15px;
	}

	.picto.gamepad {
		left: 60px;
	}
	.picto.compass {
		top: -18px;
		left: 60px;
	}
}
/* Grands écrans */
@media (min-width: 769px) and (min-height: 930px) {
	.je-teste {
		margin-top: -4vh;
	}
}
@media (min-width: 769px) and (min-height: 950px) {
	.je-teste {
		margin-top: 3vh;
	}
}
@media (min-width: 769px) and (min-height: 1020px) {
	.je-teste {
		margin-top: 6vh;
	}
}
@media (min-width: 769px) and (min-height: 1048px) {
	.je-teste {
		margin-top: 8vh;
	}
}
@media (min-width: 769px) and (min-height: 1130px) {
	.je-teste {
		margin-top: 12vh;
	}
}
@media (min-width: 769px) and (min-height: 1200px) {
	.je-teste {
		margin-top: 14vh;
	}
}
@media (min-width: 769px) and (min-height: 1300px) {
	.je-teste {
		margin-top: 16vh;
	}
}
@media (min-width: 769px) and (min-height: 1400px) {
	.je-teste {
		margin-top: 18vh;
	}
}

/* Gestion des popin */
.popin {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(11, 74, 100, 0.65);
	z-index: 100000;
}

.popin-content {
	background-color: #fff;
	width: 367px;
	height: 700px;
	margin: 3rem auto;
	position: relative;
}

.close-popin {
	background-color: #fff;
	-webkit-mask-image: url('../assets/img/close.svg');
	mask-image: url('../assets/img/close.svg');
	mask-repeat: no-repeat;
	mask-position: center center;
	mask-size: 18px 18px;
	position: absolute;
	width: 18px;
	height: 18px;
	right: 19px;
	top: 60px;
	z-index: 200000;
}

.close-popin:hover {
	background-color: #a6a6a6 !important;
	cursor: pointer;
}

.swiper-pagination {
	position: relative !important;
	background: none !important;
	bottom: 45px;
	white-space: nowrap;
}

/*
.swiper-pagination::after {
	content: '';
	position: absolute;
	top: -7px;
	left: 50%;
	transform: translateX(-50%);
	width: -webkit-fill-available;
	padding: 16px 50px 19px;
	background: rgba(255, 255, 255, 0.2);
	border-radius: 21px;
	z-index: -1;
}*/

.swiper-pagination-horizontal {
	width: auto !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	justify-content: center;
}

.popin .swiper {
	width: 100%;
	height: 100%;
}

.popin .swiper-wrapper {
	display: flex;
}

.popin .swiper-slide {
	width: 100%;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.popin .swiper-slide .titre {
	margin: 3rem auto 0;
	width: fit-content;
	max-width: 248px;
	text-align: center;
	z-index: 2;
	position: relative;
}

.popin .swiper-slide h3 {
	color: #fff;
	font-size: 19.35px;
	padding: 0.4rem 1.4rem;
	z-index: 2;
	position: relative;
}

.popin .swiper-slide h3.soustitre {
	margin: -4px auto 0;
	z-index: 1;
	padding: 0.6rem 1.4rem;
}

.title-icon {
	position: absolute;
	top: -36px;
	left: -20px;
	transform: translateX(-50%);
	height: 67px;
	width: 67px;
	background-image: url('../assets/img/star.svg');
	z-index: 3;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	display: flex;
	align-items: center;
	justify-content: center;
}

.title-icon i {
	font-size: 27px;
	color: var(--bleu);
	display: inline-block;
	transform: rotate(6deg);
}
.title-icon.red i {
	color: var(--rouge);
}

.story-container {
	margin-top: 1rem;
	margin-bottom: 2.5rem;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	height: 100%;
	padding: 0 1rem;
}

.liste-textes {
	margin-top: auto;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	height: 100%;
	padding: 0;
}

.liste-textes .texte {
	margin-bottom: 1.5rem;
}

.liste-textes span {
	padding: 4px 6px;
}

.liste-textes p {
	margin-bottom: 0.6em;
	padding: 2px 10px 0px;
	font-weight: 600;
	position: relative;
}

.swiper-slide.clair p,
.swiper-slide.clair span {
	color: var(--default);
}

.swiper-slide.sombre p,
.swiper-slide.sombre span {
	color: #fff;
}

.swiper-slide.textes .texte p strong {
	background-color: var(--bleu-ciel);
	transform: rotate(-1deg);
	padding: 2px 6px;
	margin: 0 0px;
	display: inline-block;
}

/* Chiffres clés */
.swiper-slide.chiffres .liste-textes {
	justify-content: center;
	margin-bottom: 1rem;
	padding: 0;
}

.swiper-slide.chiffres .liste-textes .texte {
	display: flex;
	flex-direction: column;
	width: auto;
	max-width: 58%;
	padding-bottom: 0.4rem;
}
.swiper-slide.chiffres .liste-textes p {
	margin-bottom: 0;
	padding-bottom: 0;
}

.swiper-slide.chiffres .liste-textes .texte:nth-child(odd) {
	background-color: var(--bleu-ciel);
	margin-left: 30px;
	margin-right: auto;
	justify-content: end;
	transform: rotate(-2deg);
	margin-bottom: 0.35rem;
}
.swiper-slide.chiffres .liste-textes .texte:nth-child(odd) p, .swiper-slide.chiffres .liste-textes .texte:nth-child(odd) span {
	color: #fff;
}
.swiper-slide.chiffres .liste-textes .texte:nth-child(even) {
	background-color: var(--bleu-clair);
	margin-right: 30px;
	margin-left: auto;
	justify-content: start;
	transform: rotate(-2deg);
	margin-bottom: 1rem;
}
.swiper-slide.chiffres .liste-textes .texte:nth-child(even) p, .swiper-slide.chiffres .liste-textes .texte:nth-child(even) span {
	color: var(--bleu);
}

/* Defilement */
.swiper-slide.defilement {
	background-color: var(--bleu-fonce2) !important;
}
.swiper-slide.defilement .story-container {
	padding: 0;
}
.swiper-slide.defilement .liste-textes {
	margin-top: 1.5rem;
	margin-bottom: 5rem;
	justify-content: space-around;
}

.swiper-slide.defilement .texte {
	overflow: hidden;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	contain: layout;
	gap: 0 !important;
	margin: 0;
}

 .swiper-slide.defilement .texte p {
	white-space: nowrap;
	animation: marquee 12s linear infinite;
	font-weight: 800;
	margin: 0;
	padding: 0;
}

.swiper-slide.defilement .liste-textes .texte:nth-child(odd) p, .swiper-slide.defilement .liste-textes .texte:nth-child(odd) p span {
	color: var(--bleu-ciel) !important;
}
.swiper-slide.defilement .liste-textes .texte:nth-child(even) p, .swiper-slide.defilement .liste-textes .texte:nth-child(even) p span {
	color: var(--rouge) !important;
}

@keyframes marquee {
	0% {
		transform: translate3d(0, 0, 0);
	}

	100% {
		transform: translate3d(-50%, 0, 0);
	}
}

/* Témoignage */
.swiper-slide.temoignage .image-temoignage {
	margin: 2rem auto 0;
	transform: rotate(-2deg);
	position: relative;
	display: inline-block;
	line-height: 0;
}
.swiper-slide.temoignage .image-temoignage img {
	display: block;
	max-width: 100%;
	height: auto;
}

.swiper-slide.temoignage .image-temoignage::after {
	content: '';
	position: absolute;
	bottom: -5px;
	left: 50%;
	transform: translateX(-50%);
	width: 51px;
	height: 34px;
	background-image: url('../assets/img/guillemet.svg');
	background-color: var(--blanc-casse);
	z-index: 2;
  background-repeat: no-repeat;
	background-position: bottom;
}

.swiper-slide.temoignage .texte p {
	line-height: 1.4rem;
	text-align: center;
}

/* Liste de liens */
.swiper-slide .liste-liens a {
	width: 100%;
	font-size: 14px;
	display: block;
	background-color: var(--bleu-ciel);
	color: #fff;
	padding: 0.8rem;
	margin-bottom: 0.5rem;
	font-weight: 600;
}

.swiper-slide .liste-liens a i.arrow {
	float: right;
	margin-right: 4px;
	margin-top: 6px;
}

.swiper-slide.liens .liste-textes {
	margin-bottom: 0;
	padding: 0;
}
.swiper-slide.liens .texte {
	margin-bottom: 1rem;
}
.swiper-slide.liens .liste-liens {
	margin-bottom: 2rem;
}
.swiper-slide.liens .liste-liens .lien {
	margin-right: 1.6rem;
}
.swiper-slide .liste-liens .lien i {
	color: #fff;
}
.swiper-slide .liste-liens .lien a:hover {
	background-color: var(--bleu-clair);
	color: var(--bleu);
}
.swiper-slide .liste-liens .lien a:hover i {
	color: var(--bleu);
}

/* Cloture */
.swiper-slide.cloture .titre {
	margin-left: 0;
}

div.liste-bulles {
	overflow: hidden;
	width: 100%;
	display: block;
	margin-left: 0;
}

/* Animation */
@keyframes message-reveal-animation {
	from {
		opacity: 0;
		margin-top: 40px;
	}

	to {
		opacity: 1;
		margin-top: 10px;
	}
}

div.liste-bulles.reveal-messages div.bulle {
	visibility: hidden;
}

div.liste-bulles div.bulle.msg-visible {
	animation: message-reveal-animation;
	animation-duration: 0.9s;
	animation-iteration-count: 1;
	visibility: visible
}

/* Message Bubbles */
div.liste-bulles div.bulle {
	position: relative;
	clear: both;
	display: block;
	height: auto;
	width: auto;
	max-width: 71%;
	word-wrap: break-word;
	word-break: keep-all;
	text-align: left;
	line-height: 1.5em;
	margin: 1rem 0px;
	padding: 17px 15px 3px;
	cursor: default;
}

div.liste-bulles div.bulle p, div.liste-bulles div.bulle li {
	font-weight: 600;
	font-size: 14px;
}

.swiper-slide.cloture .liste-bulles .bulle::after {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-top: 11px solid transparent;
	border-bottom: 11px solid transparent;
	z-index: 1;
}

.swiper-slide.cloture .liste-bulles .bulle:nth-child(odd) {
	background-color: var(--bleu-ciel);
	margin-left: 1rem;
	margin-right: auto;
}

.swiper-slide.cloture .liste-bulles .bulle:nth-child(odd) p,
.swiper-slide.cloture .liste-bulles .bulle:nth-child(odd) span,
.swiper-slide.cloture .liste-bulles .bulle:nth-child(odd) li {
	color: #fff;
}

.swiper-slide.cloture .liste-bulles .bulle:nth-child(odd)::after {
	bottom: 8px;
	left: -11px;
	border-right: 11px solid var(--bleu-ciel);
}

.swiper-slide.cloture .liste-bulles .bulle:nth-child(even) {
	background-color: var(--bleu-clair);
	margin-right: 1rem;
	margin-left: auto;
}

.swiper-slide.cloture .liste-bulles .bulle:nth-child(even) p,
.swiper-slide.cloture .liste-bulles .bulle:nth-child(even) span,
.swiper-slide.cloture .liste-bulles .bulle:nth-child(even) li {
	color: var(--bleu);
}

.swiper-slide.cloture .liste-bulles .bulle:nth-child(even)::after {
	bottom: 8px;
	right: -11px;
	border-left: 11px solid var(--bleu-clair);
}

.swiper-slide.cloture .title-icon {
	display: none;
}

.swiper-slide.cloture .liste-liens a {
	padding: 0.4rem 0;
	border-bottom: solid 0.01rem var(--bleu-clair);
	margin-bottom: 0;
	font-size: 12px;
}
.swiper-slide.cloture .liste-liens .lien:last-child a {
	border: 0;
}

.swiper-slide.cloture .cloture-liens {
	margin-top: auto;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	margin-left: 1rem;
	margin-right: 1rem;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.8s ease-out 1.4s, transform 0.8s ease-out 1.4s;
}

.swiper-slide.cloture .cloture-liens .lien {
	margin-bottom: 0.4rem;
}

.swiper-slide.cloture .cloture-liens a {
	background-color: var(--rouge);
	border: 0;
	font-size: 14px;
	width: auto;
	padding: 0.8rem 0.5rem;
}

.swiper-slide.cloture .cloture-liens.liens-visible {
	/*animation: message-reveal-animation;
	animation-duration: 0.9s;*/
	opacity: 1;
  transform: translateY(0);
}

/* Mobile */
@media (max-width: 769px) {
	.popin {
		display: none;
		position: fixed;
		inset: 0;
		background: #fff;
		/* plus de fond sombre en mobile */
	}

	.popin-content {
		width: 100%;
		height: 100%;
		margin: 0;
		box-sizing: border-box;
	}

	.popin .swiper,
	.popin .swiper-wrapper,
	.popin .swiper-slide {
		height: 100%;
	}

	.popin .swiper-slide.bg-image {
		background-repeat: no-repeat;
		background-size: cover;
		background-position: top center;
	}

	.popin .swiper-slide h3 {
		font-size: 24px;
		padding: 0.4rem 1.4rem;
	}

}
