:root {
	--color-primary: #132E40; /* noir*/
	--color-secondary: #93c356; /*vert*/
	--color-tertiary: #FFFFFF;
	--color-button: #fd8c00;

	--typo-primary: "Raleway", sans-serif;
}

section#season {
	position: relative;
	display: grid;
	grid-template-columns: 1fr;
	align-items: center;
	row-gap: calc(10px + (50 - 10) * ((100vw - 320px) / (1920 - 320)));
	margin: 0 auto;
}

.login-element {
	/*width: 90%;*/
}

section#season .season-container, section#season .marketing-title-container, section#season .marketing-subtitle-container {
	color: var(--color-tertiary);
	font-family: var(--typo-primary);
	font-size: calc(25px + (30 - 25) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 400;
}

section#season .season-container .season-element {
	font-size: calc(20px + (35 - 20) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	line-height: 1.25em;
	letter-spacing: 2px;
}

section#season .marketing-title-container .marketing-title {
	font-weight: 600;
	font-size: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
	letter-spacing: 2px;
	line-height: 1.15em;
}

section#season .marketing-subtitle-container .marketing-subtitle {
	font-size: calc(20px + (35 - 20) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 400;
	line-height: 1.25em;
	letter-spacing: 6px;
}

section#login {
	position: relative;
	width: 100%;
	display: flex;
	align-items: center;
	min-height: 100vh;
	margin: 0;
}

section#login #content .season {
	display: block;
	font-size: calc(30px + (35 - 30) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 800;
	font-family: var(--typo-primary);
	color: #db0707;
	padding: 10px 0;
	text-align: center;
}

section#login #content .general_message {
	position: relative;
	background-color: white;
	box-shadow: 0 0 15px rgb(0 0 0 / 15%);
	height: fit-content;
}

section.page-content.baseline {
	font-family: var(--typo-primary);
	color: #FFFFFF;
	font-weight: 300;
	font-size: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(34px + (54 - 34) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(24px + (34 - 24) * ((100vw - 320px) / (1920 - 320)));
	letter-spacing: 5px;
}

section.page-content.baseline .season, section.page-content.baseline .bons-plans {
	margin-bottom: 35px;
}

section.page-content.baseline .season {
	font-weight: 600;
}

section.page-content.baseline .bons-plans {
	font-size: calc(30px + (40 - 30) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
	font-weight: bold;
}

section.page-content.baseline .typologies {
	font-family: var(--typo-primary);
	color: #FFFFFF;
	font-weight: 300;
	font-size: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(34px + (44 - 34) * ((100vw - 320px) / (1920 - 320)));
	letter-spacing: 5px;
}


.head-catalog-title-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 1em 0 0;
}

.head-catalog-title-container .catalog-title {
	font-size: calc(25px + (35 - 25) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 400;
	font-family: var(--typo-primary);
	color: var(--color-secondary);
	line-height: 1em;
	text-align: center;

}

.head-catalog-title-container .catalog-subtitle {
	display: flex;
	column-gap: 5px;
	font-family: var(--typo-primary);
	font-size: calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 700;
	color: var(--color-secondary);
	line-height: 1em;
	text-align: center;
	letter-spacing: 1px;
}

.head-catalog-title-container .catalog-subtitle span {
	font-weight: 700;
	font-size: calc(35px + (35 - 30) * ((100vw - 320px) / (1920 - 320)));
}

.head-catalog-title-container .catalog-img {
	margin: 20px 0 5px 0;
}

.head-catalog-title-container .catalog-img img {
	width: 250px;
}

/* form*/
form#login-form {
	margin-top: 5px;
	text-align: left;
}

form#login-form label {
	margin-top: 5px;
	text-align: left;
	padding-left: 50px;
}

form#login-form label {
	display: block;
	font-family: var(--typo-primary);
	font-size: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 700;
	color: var(--color-primary);
	transition: all .3s ease-out;
	padding-bottom: .5em;
}

form#login-form > .form-footer {
	text-align: center;
	margin: 15px 0;
}

form#login-form > section > div:last-child .input > div {
	position: relative;
	height: 100%;
}

form#login-form > section input {
	background: transparent;
	border: none;
	font-family: var(--typo-primary);
	color: #0A354E;
	font-weight: 600;
	font-size: 18px;
	width: calc(100% - 80px);
}

form#login-form > section input {
	background: #F8F6F5;
	border: 1px solid #E4E1E0;
	border-radius: 10px;
	height: 30px;
	padding: 10px 40px
}

.ouverture {
	text-align: center;
}

.ouverture p {
	font-family: var(--typo-primary);
	font-size: 16px;
	color: var(--color-primary);
	line-height: 1.5em;
	margin: 5px 0;
}

.ouverture p strong {
	font-weight: 700;
	color: var(--color-primary);
	/* text-transform: uppercase; */
}

form#login-form > section .form-control-comment {
	grid-column: 1/2;
}


form#login-form #submit-group-login {
	font-family: var(--typo-primary);
	font-size: calc(14px + (17 - 14) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 700;
	transition: all .35s ease-out;
	text-decoration: none;
	color: #fff;
	border: 1px solid var(--color-button);
	border-radius: 15px;
	background-color: var(--color-button);
	cursor: pointer;
	padding: 15px 40px;
}

form#login-form #submit-group-login:hover {
	background-color: transparent;
	border: 1px solid var(--color-primary);
	color: var(--color-primary);
}


form#login-form .input {
	padding: 0 50px;
}

div.form-footer {
	text-align: center;
	padding: 15px 0;
}

/*
--------------------------------------
Footer form
--------------------------------------
*/

.footer-form-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-family: var(--typo-primary);;
	background-color: #FAF6F5;
	padding: 2em 0;
}

.footer-form-container p {
	font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	color: var(--color-primary);
	margin-bottom: 0.25em;
}

.footer-form-btn-container {
	margin-top: 1.5em;
}

.footer-form-btn-container .btn-secondary {
	display: inline-block;
	font-family: var(--typo-primary);
	font-size: calc(15px + (17 - 15) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	color: var(--color-primary);
	border: 2px solid var(--color-primary);
	border-radius: 9px;
	text-decoration: none;
	transition: all 0.35s ease-in-out;
	padding: 15px 30px;
}

.footer-form-btn-container .btn-secondary:hover {
	background: var(--color-primary);
	color: #fff;
}

/*
--------------------------------------
Réassurances
--------------------------------------
*/
section.reassurances {

	background-color: #f8f6f5;
}

.reassurances-inner {
	max-width: 90%;
	margin: auto;
	padding: 25px 0 10px 0;
}

.reassurances-inner .reassurances-list {
	/*display: grid;*/
	/*grid-template-columns: repeat(2, 1fr);*/
	/*grid-row-gap: 1em;*/

	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr) );
	grid-auto-flow: dense;
	grid-gap: 20px;
}

.reassurances-inner .reassurance-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
}

.reassurances-inner .reassurance-title {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-top: 0.75em;
}

.reassurances-inner .reassurance-title span {
	font-family: var(--typo-primary);
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	color: var(--color-primary);
	line-height: 1.25em;
}


.social-networks-title-container .group-order {
	font-size: calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320)));
	font-family: var(--typo-primary);
	font-weight: 600;
	color: var(--color-primary);
	line-height: 1.25em;
	text-align: center;
	padding: 20px 30px;
}

.social-networks-title-container .group-order.alert {
	color: #9F6363;
}

/*
--------------------------------------
2024
--------------------------------------
*/

.login-strips-container {
	position: relative;
}

.index .colorful-strips-container {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	justify-content: center;
}

.colorful-strips-container img {
	max-width: 100%;
}
