.header_list,
.main_title {
	font-family: Lemon, sans-serif
}

.header_list {
	font-variant-caps: all-petite-caps
}

* {
	margin: 0;
	padding: 0;
	font-family: Roboto, sans-serif;
	color: #fff;
	scroll-behavior: smooth
}

body {
	background-color: #0f0f0f
}

body::-webkit-scrollbar {
	display: none
}

@font-face {
	font-family: Lemon;
	src: url('fonts/LEMONMILK-BoldItalic.otf')
}

@media(max-width:1024px) {

	.header_list,
	.menu_toggle span:first-child {
		transform-origin: 0% 0%
	}

	.card_text-button,
	.cv_button a,
	.menu_toggle a {
		text-decoration: none
	}

	.cv_button {
		margin-top: 20px
	}

	.actif {
		text-decoration: underline
	}

	.header,
	.header_index {
		background-color: transparent;
		height: 10vh;
		width: 100%;
		position: fixed;
		z-index: 2;
		transition: .7s ease-in-out;
		display: flex;
		align-items: center
	}

	.menu_toggle {
		display: block;
		position: relative;
		left: 45px;
		border-radius: 100px;
		z-index: 1;
		-webkit-user-select: none;
		user-select: none;
		outline: 0
	}

	.menu_toggle a {
		color: #fff;
		transition: color .3s
	}

	.menu_toggle input {
		display: block;
		width: 40px;
		height: 32px;
		position: absolute;
		top: -7px;
		left: -5px;
		cursor: pointer;
		opacity: 0;
		z-index: 2;
		-webkit-touch-callout: none
	}

	.menu_toggle span {
		display: block;
		width: 25px;
		height: 2px;
		margin-bottom: 5px;
		position: relative;
		background: #fff;
		border-radius: 3px;
		z-index: 1;
		transform-origin: 2px 0px;
		transition: transform .5s cubic-bezier(.77, .2, .05, 1), background .5s cubic-bezier(.77, .2, .05, 1), opacity .55s
	}

	.menu_toggle span:nth-last-child(2) {
		transform-origin: 0% 100%
	}

	.menu_toggle input:checked~span {
		opacity: 1;
		transform: rotate(45deg) translate(-2px, -1px);
		background: #fff
	}

	.menu_toggle input:checked~span:nth-last-child(3) {
		opacity: 0;
		transform: rotate(0) scale(.2, .2)
	}

	.menu_toggle input:checked~span:nth-last-child(2) {
		transform: rotate(-45deg) translate(0, -1px)
	}

	.header_list {
		position: absolute;
		width: 100vw;
		height: 100vh;
		margin: -100px 0 0 -50px;
		padding: 125px 50px 50px;
		background: #0f0f0f;
		list-style-type: none;
		-webkit-font-smoothing: antialiased;
		transform: translate(-100%, 0);
		transition: transform .5s cubic-bezier(.77, .2, .05, 1)
	}

	.header_list .header_list-items {
		padding: 10px 0;
		font-size: 30px
	}

	.f_container {
		display: grid;
		grid-template-columns: 100px repeat(4, 1fr);
		grid-template-rows: 400px repeat(2, 2fr);
		column-gap: 25px;
		padding-top: 25px;
		height: 85vh;
		align-items: center;
		justify-content: center
	}

	.subtitle_list {
		list-style-type: none;
		padding: 10px 25px;
		font-size: 20px
	}

	.menu_toggle input:checked~ul {
		transform: none
	}

	.button:hover,
	.button:hover a {
		color: #000
	}

	.button:hover,
	.button:hover a,
	.cv_button a {
		transition: .1s ease-in-out
	}

	.logo {
		padding-left: 100px;
		right: 50px;
		width: 3vh;
		position: absolute
	}

	.logo_img {
		width: 100%
	}

	.button,
	.card_text-button {
		outline: 0;
		background-color: transparent
	}

	.button,
	.card_img-pic {
		border: 1px solid #fff
	}

	.dots,
	.hint {
		display: none
	}

	.text_container {
		grid-column: 1/6;
		display: inline-block;
		padding: 20px
	}

	.main_title {
		font-size: 40px;
		font-weight: 1000
	}

	.button,
	.text {
		color: #fff;
		font-size: 15px
	}

	.text {
		font-weight: 300;
		padding: 10px 0
	}

	.image_container {
		grid-column: 1/6;
		grid-row: 1;
		margin: 75px auto 0;
		display: flex;
		justify-content: center;
		align-items: center
	}

	.card,
	.footer {
		justify-content: center
	}

	.footer {
		grid-column: 1/6;
		margin-top: 50px;
		display: flex;
		height: 5vh;
		font-weight: 100
	}

	.card_container,
	.footer {
		align-items: center
	}

	.card_container,
	.card_text {
		flex-direction: column;
		display: flex
	}

	.button {
		padding: 15px;
		margin: 20px 20px 0 0;
		font-weight: 300;
		cursor: pointer;
		transition: .3s ease-in-out
	}

	.bolder {
		font-weight: 500;
		color: #a4e5ff
	}

	.widther {
		font-size: 100px;
		color: #a4e5ff;
		font-family: Lemon, 'sans-serif'
	}

	.image_moi {
		width: 70%
	}

	.button:hover {
		background-color: #fff
	}

	.card_text-button,
	.card_text-button:after,
	.card_text-button:hover,
	.card_text-button:hover:after {
		transition: 550ms cubic-bezier(.19, 1, .22, 1)
	}

	.card {
		display: flex;
		width: 100%;
		height: 100vh;
		align-items: center;
		flex-direction: column;
		margin-top: 75px
	}

	.card_img {
		width: auto;
		height: auto;
		display: flex;
		justify-content: center;
		position: relative;
		margin-bottom: 20px
	}

	.card_img-pic {
		width: 80%;
		height: auto
	}

	.card_text {
		justify-content: space-between;
		width: 75%;
		height: 45vh;
		margin-bottom: 40px
	}

	.card_text-title {
		font-family: Lemon, sans-serif;
		font-size: 40px
	}

	.card_text-button,
	.card_text-div {
		font-family: Mulish, sans-serif;
		font-size: 15px
	}

	.card_text-div {
		height: 60%;
		display: flex;
		flex-direction: column;
		justify-content: space-around;
		font-weight: 200
	}

	.card_text-button {
		color: #fff;
		width: min-content;
		padding: 7px;
		border: 1px solid;
		overflow: hidden;
		position: relative
	}

	.bolder_title {
		font-weight: 500
	}

	.card_text-button span {
		z-index: 20
	}

	.card_text-button:after {
		background: #fff;
		content: "";
		height: 155px;
		left: -75px;
		opacity: .5;
		position: absolute;
		top: -50px;
		transform: rotate(35deg);
		width: 50px;
		z-index: -10
	}

	.card_text-button:hover:after {
		left: 120%
	}

	.card_text-button:hover {
		transform: scale(110%)
	}
}

@media(min-width:1025px) {

	.header,
	.header_index {
		height: 10vh;
		top: 0;
		width: 100%;
		transition: top .7s;
		background: #0f0f0f;
		z-index: 10
	}

	.actif,
	.header_list-items:hover {
		text-decoration: underline
	}

	.logo,
	.nav_list {
		align-self: center
	}

	.dots__text br,
	.nav_button,
	.subtitle_list,
	input {
		display: none
	}

	.button:hover,
	.button:hover a {
		color: #000
	}

	.button:hover,
	.button:hover a,
	.cv_button a {
		transition: .1s ease-in-out
	}

	.card_img:after,
	.card_img:before {
		display: block;
		border: 1px solid #fff;
		height: 440px;
		width: 340px;
		z-index: -1;
		content: ""
	}

	.card_text-button,
	.cv_button a,
	.header_list-items a {
		text-decoration: none
	}

	.header {
		display: flex;
		position: fixed
	}

	.header_index {
		display: flex
	}

	.button,
	.card_text-button {
		outline: 0;
		background-color: transparent
	}

	.card_text-button span,
	.hint {
		z-index: 20
	}

	.logo {
		padding-left: 100px;
		width: 5vh;
		position: absolute
	}

	.logo_img {
		width: 100%
	}

	.nav_list {
		font-size: 25px;
		margin: auto;
		padding: 0
	}

	.header_list {
		list-style-type: none;
		display: flex
	}

	.header_list-items {
		margin-left: 60px
	}

	.header_list-items:hover {
		cursor: pointer
	}

	.header_list-items:first-child {
		margin-left: 0
	}

	.f_container {
		display: grid;
		grid-template-columns: 100px repeat(4, 1fr);
		column-gap: 25px;
		height: 90vh;
		align-items: center;
		justify-content: center
	}

	.text_container {
		grid-column: 2/4;
		display: inline-block
	}

	.main_title {
		font-size: 80px;
		font-weight: 1000
	}

	.button,
	.cv_button,
	.text {
		color: #fff;
		font-size: 20px
	}

	.text {
		font-weight: 300;
		padding: 10px 0
	}

	.image_container {
		grid-column: 4/6;
		margin: auto;
		display: flex;
		justify-content: center;
		align-items: center
	}

	.footer {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 5vh;
		font-weight: 100
	}

	.footer_index {
		grid-column: 1/6;
		align-self: flex-end
	}

	.cv_button {
		padding: 15px;
		border: 1px solid #fff;
		margin: 20px 20px 0 0;
		font-weight: 300;
		cursor: pointer;
		transition: .3s ease-in-out
	}

	.bolder {
		font-weight: 500;
		color: #a4e5ff
	}

	.widther {
		font-size: 135px;
		color: #a4e5ff;
		font-family: Lemon, 'sans-serif'
	}

	.image_moi {
		width: 70%
	}

	.button:hover {
		background-color: #fff
	}

	.card_text-button,
	.card_text-button:after,
	.card_text-button:hover,
	.card_text-button:hover:after {
		transition: 550ms cubic-bezier(.19, 1, .22, 1)
	}

	.card_container {
		display: flex;
		flex-direction: column;
		align-items: center
	}

	.card {
		display: flex;
		justify-content: center;
		width: 100%;
		height: 100vh;
		align-items: center
	}

	.card_img {
		margin-right: 5%;
		position: relative;
		display: inline-block
	}

	.card_img:before {
		top: -10px;
		left: -10px;
		position: absolute
	}

	.card_img:after {
		background-color: rgba(255, 255, 255, .2);
		top: 20px;
		left: 20px;
		position: absolute
	}

	.card_img-pic {
		width: 350px;
		height: auto
	}

	.card_text {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		width: 50%;
		height: 45vh
	}

	.card_text-title {
		font-family: Lemon, sans-serif;
		font-size: 60px
	}

	.card_text-div {
		font-family: Mulish, sans-serif;
		font-size: 20px;
		height: 40%;
		display: flex;
		flex-direction: column;
		justify-content: space-around;
		font-weight: 200
	}

	.card_text-button {
		color: #fff;
		font-family: Mulish, sans-serif;
		width: min-content;
		padding: 10px;
		border: 1px solid;
		overflow: hidden;
		position: relative
	}

	.bolder_title {
		font-weight: 500
	}

	.card_text-button:after {
		background: #fff;
		content: "";
		height: 155px;
		left: -75px;
		opacity: .5;
		position: absolute;
		top: -50px;
		transform: rotate(35deg);
		width: 50px;
		z-index: -10
	}

	.dots__link.dots__link_active,
	.dots__link:hover {
		background-color: #fff !important
	}

	.card_text-button:hover:after {
		left: 120%
	}

	.card_text-button:hover {
		transform: scale(110%)
	}

	.hint {
		position: absolute;
		width: 1.5%;
		height: auto;
		top: 85%
	}

	.hint_mouse {
		animation: 3s ease-in-out 10 forwards mouseHint;
		width: 100%
	}

	.hint_arrow {
		animation: 3s ease-in-out .5s 10 forwards arrowHint;
		width: 100%
	}

	@keyframes mouseHint {

		0%,
		100% {
			transform: rotate(0);
			transform-origin: 50% 100%
		}

		10%,
		30%,
		50% {
			transform: rotate(4deg)
		}

		20%,
		40% {
			transform: rotate(-4deg)
		}

		60% {
			transform: rotate(0)
		}
	}

	@keyframes arrowHint {

		0%,
		100% {
			transform: translate(0, 0);
			transform-origin: 50% 100%
		}

		10%,
		30%,
		50% {
			transform: translate(0, 2px)
		}

		20%,
		40% {
			transform: translate(0, -2px)
		}

		60% {
			transform: translate(0, 0)
		}
	}

	.dots {
		position: fixed;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
		right: 10px;
		z-index: 9999
	}

	.dots__link {
		width: 10px;
		height: 10px;
		background-color: transparent;
		border-radius: 50%;
		display: block;
		margin-bottom: 10px;
		-webkit-transition: .2s ease-in;
		-o-transition: .2s ease-in;
		transition: .2s ease-in;
		position: relative
	}

	.dots__link:hover {
		border-color: #fff !important;
		-webkit-transition: .1s ease-in;
		-o-transition: .1s ease-in;
		transition: .1s ease-in
	}

	.dots__text {
		left: 200%;
		top: 50%;
		position: absolute;
		white-space: nowrap;
		color: #fff;
		-webkit-transform: translateX(0) translateY(-50%) scale(1);
		-ms-transform: translateX(0) translateY(-50%) scale(1);
		transform: translateX(0) translateY(-50%) scale(1);
		-webkit-transition: .2s ease-in;
		-o-transition: .2s ease-in;
		transition: .2s ease-in;
		opacity: 0;
		font-size: 13px;
		font-family: Lemon, sans-serif
	}

	.dots__link:hover>.dots__text {
		opacity: 1
	}

	.dots.dots_posL {
		left: 25px
	}

	.dots.dots_posT {
		top: 10px;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0)
	}

	.dots.dots_posB {
		top: auto;
		bottom: 10px;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0)
	}

	.dots.dots_orientX .dots__link {
		display: inline-block;
		margin-right: 5px
	}

	.dots.dots_orientX .dots__text {
		-webkit-transform: rotate(90deg) scale(0);
		-ms-transform: rotate(90deg) scale(0);
		transform: rotate(90deg) scale(0);
		right: 0;
		left: 0;
		bottom: -220%
	}

	.dots.dots_posL.dots_orientX .dots__link:hover>.dots__text {
		left: 0
	}

	.dots.dots_orientX .dots__link:hover>.dots__text {
		-webkit-transform: rotate(90deg) scale(1);
		-ms-transform: rotate(90deg) scale(1);
		transform: rotate(90deg) scale(1)
	}

	.dots.dots_posB.dots_orientX .dots__text {
		-webkit-transform: rotate(-90deg) scale(0);
		-ms-transform: rotate(-90deg) scale(0);
		transform: rotate(-90deg) scale(0);
		bottom: 150%
	}

	.dots.dots_posB.dots_orientX .dots__link:hover>.dots__text {
		-webkit-transform: rotate(-90deg) scale(1);
		-ms-transform: rotate(-90deg) scale(1);
		transform: rotate(-90deg) scale(1);
		left: 0;
		top: -200%
	}

	.dots.dots_posT.dots_orientX .dots__link:hover>.dots__text {
		top: 150%
	}

	.dots.dots_dotsBorder .dots__link {
		border: 1px solid #fff
	}

	.dots.dots_square .dots__link {
		border-radius: 0
	}
}