@import "../swiper.css";
@import "../components/jpo.css";
@import "../form/contact.css";
@import "../components/article.css";
@import "../components/popup.css";

/*
    Sommaire :
    1. Carousel
		a. Swiper
    2. Formations
    3. Écoles
    4. À porpos
    5. Chiffres clés
    6. Blog
    7. Contact
	8. Portes ouvertes
	9. Avantages Étudis
*/

/*
    ==============================
    📱 Mobile
    ==============================
*/

.etudis,
.formations,
.schools,
.open-days,
.about,
.blog {
	padding: var(--space-vertical) var(--space-horizontal);
}

/* 1. Carousel */

.hero-slider-container-slide {
	padding: 0 var(--space-m);

	&::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: var(--color-grey-900-50);
		z-index: 1;
	}
}

.hero-slider-container-slide h1,
.hero-slider-container-slide h2 {
	font-size: var(--font-heading-1);
	color: var(--color-grey-100);
}

.hero-slider-container-slide p {
	color: var(--color-grey-100);
	font-family: var(--font-secondary);
	font-size: calc(var(--font-text) * 1.25);
	width: 100%;
	max-width: 60ch;
	margin: auto;
}

.hero-slider-slide-button-container {
	display: flex;
	padding-bottom: var(--space-m);
}

/* 1.a Swiper */

.swiper-slide-caption {
	display: grid;
	gap: 1.25rem;
	align-self: flex-end;
}

.swiper-button-prev {
	left: 30px;
}

.swiper-button-next {
	right: 30px;
}

.swiper-button-prev,
.swiper-button-next {
	border-radius: 5px;
}

/* 2. Formations */

.formations {
	display: grid;
	gap: var(--space-l);
	/* background-color: var(--color-grey-100); */
}

.formation-intro-container {
	display: grid;
	gap: var(--space-m);
	align-items: center;
}

.formations-intro {
	display: grid;
	gap: var(--space-xs);
	height: fit-content;
}

.formations-intro__text {
	margin: auto;
	color: var(--color-grey-700);
	font-size: var(--font-text);
}

.formations-lists {
	display: grid;
	gap: var(--space-l);
}

.formations-lists-list {
	display: grid;
	gap: var(--space-s);
	height: fit-content;
	width: 100%;
}

.formations-lists-list__title {
	display: grid;
	gap: var(--space-xs);

	svg {
		fill: var(--color-primary);
		color: var(--color-primary);
	}

	h3 {
		text-transform: uppercase;
	}
}

.formations-lists-list__list ul {
	display: flex;
	flex-direction: column;
	gap: var(--space-s);
}

.formations-lists-list__list-item {
	display: flex;
	a {
		color: var(--color-grey-900);
		font-size: var(--font-label);
		text-decoration: none;

		&:hover {
			color: var(--color-primary);
		}
	}
}

.formations-lists-list__list-cta {
	font-size: var(--font-text);
	color: var(--color-grey-700);
}

.formations-cta {
	display: flex;
	justify-content: center;
}

/* 3. Écoles */

.schools {
	display: grid;
	gap: var(--space-l);
}

.schools-intro-title {
	margin: auto auto 0.9375rem auto;
	text-align: center;
}

.schools-intro-text {
	margin: auto;
}

.schools-list {
	display: grid;
	gap: var(--space-m);
	text-align: center;
	max-width: 1000px;
}

.schools-list__school {
	display: flex;
	flex-direction: column;
	align-items: center;
	align-self: center;
	gap: var(--space-s);

	svg {
		height: 75px;
		filter: grayscale(100%);
	}
}

/* 4. À propos */

.about-intro {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	margin-bottom: 3.125rem;
}

.about-intro-text h2 {
	text-align: center;
	margin-bottom: 1.25rem;
}

.about-intro-image {
	text-align: center;
}

.about-intro-image img {
	border-radius: 5px;
	aspect-ratio: 16/9;
	object-fit: cover;
}

.about-values-title {
	text-align: center;
	margin: auto auto 1.875rem auto;
}

.about-values {
	display: grid;
	gap: 1.25rem;
	margin-bottom: 1.875rem;
}

.about-values-value {
	display: grid;
	align-content: baseline;
	text-align: center;
	gap: 0.625rem;

	svg {
		width: 35px;
		margin: auto;
		fill: var(--color-primary);
	}
}

.about-cta {
	display: flex;
	justify-content: center;
}

/* 5. Chiffres cléss */

.stats {
	padding: 2.5rem var(--space-horizontal);
	background: linear-gradient(
			var(--color-secondary-50),
			var(--color-secondary-50)
		),
		url("/assets/images/views/home/etudiants-travail-groupe.webp");
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.stats-container {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.875rem;
	align-items: center;
	text-align: center;
}

.stats-title {
	color: var(--color-grey-100);
}

.stat-value {
	font-weight: bold;
	font-size: 2.5rem;
	color: var(--color-primary);
}

.stat-label {
	margin: 0;
	color: var(--color-grey-100);
}

/* 6. Blog */

.blog {
	display: flex;
	flex-direction: column;
	gap: 1.875rem;
	background-color: var(--color-grey-200);
}

.blog-title,
.blog-cta {
	display: flex;
	justify-content: center;
}

.blog-articles {
	display: flex;
	flex-direction: column;
	gap: 1.875rem;
}

.blog-articles-article {
	background-color: var(--color-grey-100);
	border-radius: 5px;
}

.blog-articles-article-text__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	font-size: calc(var(--font-heading-3) / 1.25);
}

.blog-articles-article-image {
	height: 200px;
}

.blog-articles-article-image img {
	border-radius: 5px 5px 0 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.blog-articles-article-text {
	display: grid;
	gap: 0.625rem;
	padding: 1.5625rem;
}

.blog-articles-article-text__date,
.blog-articles-article-text__intro {
	margin: 0;
	font-size: var(--font-label);
}

.blog-articles-text__cta {
	display: flex;
	justify-content: center;
}

/* 7. Contact */

.contact {
	padding: var(--space-vertical) var(--space-horizontal);
}

.contact-title {
	text-align: center;
	margin-bottom: 1.875rem;
}

/* 8. Portes ouvertes */

.open-days-intro__title {
	text-align: center;
	margin: auto auto 0.9375rem auto;
}

.open-days-content {
	display: grid;
	gap: var(--space-m);
	align-items: start;
}

/* 9. Avantages Étudis */

.etudis {
	background-color: var(--color-secondary);
}

.benefits-list {
	display: grid;
	gap: var(--space-m);
}

.benefit {
	display: grid;
	gap: var(--space-s);
	align-content: start;

	p {
		text-align: center;
		color: var(--color-grey-100);
	}
}

.benefit-icon-container {
	display: flex;
	justify-content: center;

	svg {
		fill: var(--color-grey-100);
		width: 35px;
	}
}

.benefit-title {
	font-size: calc(var(--font-label) * 1.25);
	font-weight: 500;
}

/*
    ==============================
    💻 Laptop / tablet
    ==============================
*/
@media only screen and (min-width: 768px) {
	/* 1.a Swiper */

	.swiper-slide-caption {
		gap: 1.5625rem;
		justify-content: center;
		text-align: center;
		padding: 3.125rem;
	}

	/* 4. À propos */

	.about-values {
		grid-template-columns: repeat(3, 1fr);
		gap: 1.5625rem;
		margin-bottom: 3.125rem;
	}

	.about-values-value svg {
		width: 50px;
	}

	/* 6. Blog */

	.blog-articles {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 2.5rem;
	}
}

/*
    ==============================
    🖥️ Desktop
    ==============================
*/
@media only screen and (min-width: 1024px) {
	/* 1. Hero */

	.hero-slider-slide-button-container {
		display: flex;
		justify-content: center;
		padding: 0;
	}

	/* 1.a Swiper */

	.swiper-slide-caption {
		padding: calc(var(--space-s) * 10);
	}

	/* 2. Formations */

	.formation-intro-container {
		gap: var(--space-l);
		grid-template-columns: repeat(2, 1fr);
	}

	.formations-intro {
		gap: var(--space-s);
	}

	.formations-lists {
		display: initial;
		column-count: 3;
		column-gap: var(--space-xl);
		width: 100%;
	}

	.formations-lists-list {
		break-inside: avoid;
		padding-bottom: var(--space-xl);
	}

	/* 3. Écoles */

	.schools-intro {
		max-width: calc((100% / 3) * 2);
	}

	.schools-list {
		grid-template-columns: repeat(2, 1fr);
		gap: var(--space-2xl);
	}

	.schools-list__school {
		justify-content: space-between;
		height: fit-content;
	}

	/* 4. À propos */

	.about-intro {
		flex-direction: row;
		align-items: center;
		gap: 6.25rem;
	}

	.about-intro-text,
	.about-intro-image {
		flex: 1;
	}

	.about-values {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 3.125rem;
	}

	.about-values-value__text {
		font-size: var(--font-label);
	}

	/* 5. Chiffres cléss */

	.stats-container {
		grid-template-columns: repeat(5, 1fr);
		gap: 3.125rem;
	}

	/* 6. Blog */

	.blog-articles {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2.5rem;
	}

	/* 8. Portes ouvertes */

	.open-days-content {
		grid-template-columns: 5fr 3fr;
	}

	/* 9. Avantages Étudis */

	.benefits-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--space-l);
	}

	.benefit-icon-container svg {
		width: 50px;
	}
}
