html, body {
	margin: 0px;
	height: 100%;
}
body {
	display: flex;
	flex-direction: column;
}
.container {
	min-height: 100%;
	display: flex;
	flex-direction: column;
}
.container > .box {
	flex: 1;
	display: flex;
	position: relative;
	align-items: center;
	flex-direction: column;
	justify-content: space-evenly;
}
.box {
	min-width: 100%;
	height: 100%;
	min-height: 100%;
}
.box::after {
	bottom: 0;
	width: 80%;
	height: 2px;
	content: " ";
	position: absolute;
	background-color: #DBB778;
}
.box:last-of-type::after {
	height: 0;
}
.bandeau {
	top: 0;
	z-index: 2;
	width: 100%;
	display: flex;
	position: fixed;
	justify-content: center;
	/*background-color: rgba(255, 255, 255, .2);*/
}
.menu {
	width: 50%;
	display: flex;
	margin: 30px 0; 
	justify-content: space-between;
	
}
.menu-link {
	font-size: 20px;
	color: #8B4021;
	font-weight: 700;
	font-family: Brawler;
	text-decoration: none;
}
.sub-link {
	width: 263px;
	height: 116px;
	display: flex;
	align-items: center;
	text-decoration: none;
	justify-content: center;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url("img/sub_button.svg");
}
.sub-link > span {
	font-size: 15px;
	color: #fff;
	font-weight: 300;
	text-align: center;
	font-family: Brawler;
	text-transform: uppercase;
	letter-spacing: 1.5px;
}
.sub-link.link-header {
	left: 30px;
	bottom: 25%;
	position: absolute;
	transform: rotate(-5deg);

}
.foot {
	bottom: 0;
	width: 100%;
	color: #FFF;
	alignment-adjust:central
	display: flex;
	font-size: 15px;
	padding: 10px 20px;
	align-items: center;
	font-family: Aubrey;
	text-transform: uppercase;
	background-color: #231F20;
	justify-content: space-between;
}

/* HERO BLOC */
.main {
	align-items: center;
	flex-direction: column;
	background-size: cover;
	background-color: #B89D6D;
	background-repeat: no-repeat;
	background-image: url('img/Hero.jpg');
}
.header-flourish {
	top: 30px;
	z-index: 1;
	left: 30px;
	width: 250px;
	height: 105px;
	position: absolute;
	display: inline-block;
	background-size: cover;
	background-image: url("img/header_flourish.svg");
}
.header-flourish__mirroring {
	left: auto;
	right: 30px;
	transform: scale(-1, 1);
}
.header-main {
	width: 100%;
	display: flex;
	margin-top: 70px;
	position: relative;
	align-items: center;
	flex-direction: column;
	justify-content: flex-start;
}
.header-lyon {
	width: 100%;
	height: 50vh;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url("img/lyon.svg");
}
.header-title {
	top: 37vh;
	width: 100%;
	height: 35vh;
	position: absolute;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url("img/header_title.svg");
}
.header-title h1 {
	top: 0px;
	position: absolute;
	visibility: hidden;
}
.header-separator {
	width: 213px;
	height: 60px;
	margin-top: 22vh;
	margin-bottom: 30px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url("img/middle_flourish.svg");
}
.header-date {
	margin: 0;
	z-index: 2;
	font-size: 40px;
	color: #8B4021;
	font-weight: 400;
	letter-spacing: 2px;
	font-family: Brawler;
	text-decoration: none;
	text-transform: uppercase;
}
.header-bottom {
	z-index: 1;
	width: 100%;
	bottom: 30px;
	display: flex;
	padding: 0 30px;
	position: absolute;
	align-items: center;
	justify-content: space-between;
}
.header-scroll {
	width: 62px;
	height: 84px;
	background-image: url("img/scroll.svg");
	background-repeat: no-repeat;
}

/* COMMON CSS */
.weekend, .clivra, .schedule, .infos, .partners {
	color: #FFF;
	font-size: 25px;
	font-family: Aubrey;
	align-items: center;
	background-color: #231F20;
	justify-content: space-between;
}
.text-big {
	font-weight: 400;
	font-size: 30px;
}
.text-bigger {
	font-size: 35px;
}
.text-center {
	text-align: center;
}
.box h2 {
	font-size: 48px;
	font-weight: 400;
	text-transform: uppercase;
}
.content-picture {
	margin: 25px 0;
	position: relative;
}
.content-picture::before, .content-picture::after {
	top: -25px;
	width: 100%;
	height: 25px;
	content: " ";
	position: absolute;
	display: inline-block;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url("img/img_flourish.svg");
}
.content-picture::after {
	left: 0;
	top: inherit;
	bottom: -25px;
	transform: rotate(180deg);
}
.content-picture > img {
	border-radius: 20px;
	border: 3px solid #DBB778;
}
.row {
	gap: 100px;
	width: 100%;
	display: flex;
	align-items: center;
	flex-direction: row;
	justify-content: space-between;
}
.column {
	gap: 40px;
	display: flex;
	align-items: center;
	flex-direction: column;
}
.weekend .sub-link,
.schedule .sub-link {
	width: 208px;
	height: 92px;
}

/* WEEKEND BLOC */
.weekend {
	padding: 100px 80px;
	background-color: #231F20;
}
.weekend::before {
	top: 0;
	content: " ";
	width: 210px;
	height: 70px;
	position: absolute;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url("img/bottom_flourish.svg");
}
.box h2::before, .box h2::after {
	width: 85px;
	height: 25px;
	content: " ";
	display: inline-block;
	background-image: url("img/side_flourish.svg");
	background-repeat: no-repeat;
}
.box h2::before {
	margin-right: 30px;
}
.box h2::after {
	margin-left: 30px;
	transform: scale(-1, 1);
}
.weekend-separator {
	width: 90px;
	height: 40px;
	display: inline-block;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url("img/separator.svg");
}
.weekend .sub-link {
	width: 208px;
	height: 92px;
	margin: 20px 0;
}

/* CLIVRA BLOC */
.clivra {
	padding: 100px 80px;
	/*background-color: #99613C;*/
}
.clivra h2 {
	gap: 10px;
	display: flex;
	align-items: center;
	flex-direction: column;
}
.clivra h2::before, .clivra h2::after {
	margin: 0;
	width: 180px;
	height: 35px;
	content: " ";
	display: inline-block;
	background-image: url("img/side_title_flourish.svg");
	background-repeat: no-repeat;
}
.clivra h2::after {
	transform: rotate(180deg);
}
.clivra-separator {
	width: 147px;
	height: 40px;
	display: inline-block;
	background-image: url("img/separator2.svg");
}

/* Schedule Bloc */
.schedule {
	padding: 70px 80px;
	/*background-color: #8B4021;*/
}
.schedule h4 {
	margin: 0;
}
.schedule ul {
	margin: 0;
}
.schedule .column {
	width: 45%;
	align-items: flex-start;
	justify-content: flex-start;
}
.schedule .row {
	gap: 15px;
	justify-content: space-evenly;
}
.schedule .activity {
	gap: 20px;
	display: flex;
	align-items: center;
	flex-direction: row;
}
.schedule .activity.activity__column {
	gap: 10px;
	flex-direction: column;
	align-items: flex-start;
}
.day {
	margin: 0;
	display: flex;
	font-weight: 400;
	align-items: center;
	flex-direction: column;
	text-transform: uppercase;
}
.day::after {
	width: 140px;
	height: 20px;
	content: " ";
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url("img/underline.svg");
}
.infos {
	background-color: #B59B6C;
}
.partners {
	background-color: #A67B53;
}

/* RESPONSIVE DESIGN */
@media (max-width: 1440px) {
	
	.weekend, .clivra, .schedule, .infos, .partners {
		padding: 70px 50px;
	}
	.sub-link.link-header {
		bottom: 20%;
	}
	.schedule .content-picture img {
		width: 100%;
	}
}
@media (max-width: 1280px) {
	.header-flourish {
		display: none;
	}
}
@media (max-width: 1160px) {
	.box {
		height: auto;
		min-height: auto;
	}
	.main {
		padding-bottom: 20px;
	}
	.header-lyon {
		height: 460px;
	}
	.header-title {
		top: 20vh;
	}
	.sub-link.link-header {
		bottom: 25%;
	}
	.header-date {
		margin-top: 60px;
	}
	.header-bottom {
		margin-top: 50px;
		position: relative;
	}
	.row {
		gap: 50px;
		margin: 50px 0;
		flex-direction: column;
	}
	.column {
		width: 100%;
	}
	.schedule .row,
	.schedule .column {
		width: 100%;
		justify-content: flex-start;
	}
	.text-center {
		text-align: left;
	}
	.weekend-separator, .clivra-separator {
		margin: 50px 0;
	}
}