:root {
	--primary-color: #3DAF3D;
	--dark-color: #1D1D1B;

	--section-padding-top: 80px;
	--section-padding-bottom: 80px;

	--header-height: 100px;
}

*, *::before, *::after {
	box-sizing: border-box !important;
	margin: 0;
	padding: 0;
}

html {
	scroll-behavior: smooth;
	overflow-x: hidden;
}

body {
	font-family: "Roboto", sans-serif;
	overflow-x: hidden !important;
}

header {
	position: relative;
	z-index: 10;
}

main {
	display: flex;
	flex-direction: column;
}

a {
	text-decoration: none;
}

.section-general {
	padding-top: var(--section-padding-top);
	padding-bottom: var(--section-padding-bottom);
}

.section-uplifted {
	margin-top: calc(-1 * var(--header-height));
}

.blank-link {
	color: inherit !important;
}

.fw-700 {
	font-weight: 700 !important;
}

.btn:not(.dropdown-toggle) {
	border: none !important;
	outline: none !important;
	box-shadow: 0px 8px 10px rgba(0, 0, 0, 0.2);
	border-radius: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 30px;
	transition: background-color 0.3s ease, color 0.3s ease;
	text-align: center !important;
	background-image: none;
	font-weight: 700;
	font-size: 16px;
	padding-left: 25px;
	padding-right: 5px;
	transition: transform 250ms ease-in-out;
}

.btn:not(.dropdown-toggle):hover {
	transform: translateY(-5px) !important;
}

.btn.general {
	padding-left: 25px;
	padding-right: 25px;
}

.btn img:not(.header-avatar) {
	height: 20px;
}

.btn i {
	font-size: 20px;
}

.btn-primary {
	background-color: var(--primary-color) !important;
	color: var(--dark-color) !important;
}

.btn-primary i {
	color: #fff !important;
}

/* Texts */
.general-text {
	color: var(--dark-color);
	font-size: 16px;
	line-height: 1.2;
	font-weight: 400;
}

/* Header */
.main-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	height: var(--header-height);
}

.main-logo-container img {
	height: 23px;
	width: auto;
}

.main-nav-container {
	display: flex;
	align-items: center;
	gap: 20px;
	background-color: #fff;
	box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
	border-radius: 5px;
	padding: 10px 20px;
}

.main-nav-link {
	display: flex;
	align-items: center;
	gap: 5px;
}

.main-nav-link img {
	height: 19px;
	width: auto;
}

/* Container */
.container-main {
	max-width: var(--container-max-width);
}

/* SECTION: home-opening */
.section__home-opening {
	background-image: url('../images/home/home-opening.webp');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 800px;
	position: relative;
}

.home-opening__figure {
	position: absolute;
	bottom: 0;
	left: 0;
	transform: translateY(-50%);
	width: auto;
	max-height: 430px;
}

.home-opening__figure img {
	height: 100%;
	width: auto;
}

@media (min-width: 576px) {
	:root {
		--container-max-width: 540px;
	}
}

@media (min-width: 768px) {
	:root {
		--container-max-width: 720px;
	}
}

@media (min-width: 992px) {
	:root {
		--container-max-width: 960px;
	}
}

@media (min-width: 1200px) {
	:root {
		--container-max-width: 1140px;
	}
}

@media (min-width: 1400px) {
	:root {
		--container-max-width: 1140px;
	}
}