:root {
	--white-color: #fff;
	--black-color: #0d1330;
	--accent-color: rgba(255, 6, 0, 0.9);
	--gray: #7e7e7e;
	--yellow: #facc15;

	--mobile-body-text: 18px;
	--mobile-name-brand: 22px;
	--mobile-h1: 42px;
	--mobile-h2: 32px;
	--mobile-numbers: 50px;
	--mobile-footer: 16px;

	--desktop-body-text: 20px;
	--desktop-h1: 62px;
	--desktop-text: 28px;

	--transition: all 0.5s ease-in-out;
}

/* ==================== COMMON STYLES ==================== */

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html,
body {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	font-style: normal;
}

.bg {
	background: url('../img/bg.png');

	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
}

img,
picture,
svg {
	display: block;
	max-width: 100%;
}

button,
input,
select,
textarea {
	font: inherit;
}

ul,
ol {
	list-style: none;
}

a {
	text-decoration: none;
	color: inherit;
	cursor: pointer;
}

button {
	display: block;
	cursor: pointer;
	padding: 0;
}

.container {
	margin: 0 auto;
	width: 100%;
	max-width: 1440px;
	padding: 0 16px;
}

@media (min-width: 768px) {
	.container {
		padding: 0 30px;
	}
}

@media (min-width: 1440px) {
	.container {
		padding: 0 120px;
	}
}

/* ==================== HERO STYLES ==================== */

.hero {
	padding: 36px 0 300px;

	background:
		url('../img/hero-top-mob.png') top center / 100% 169px no-repeat,
		url('../img/hero-bottom-mob.png') bottom center / 100% 169px no-repeat,
		url('../img/img-hero.png') bottom 20px right -50px / 350px auto no-repeat,
		linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.75) 100%),
		url('../img/bg-hero.png') left -620px center / cover no-repeat;
}

.hero h1 {
	color: var(--white-color);

	font-size: var(--mobile-h1);
	font-weight: 700;
	line-height: 1.2;

	margin-bottom: 16px;
	position: relative;
}

.hero h1::before {
	content: '';
	position: absolute;
	top: 0;
	right: -60px;

	width: 127px;
	height: 77px;

	background-image: url('../img/icon.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 127px 77px;
}

.hero p {
	color: var(--white-color);

	font-size: var(--mobile-body-text);
	line-height: 1.4;

	margin-bottom: 32px;

	position: relative;
}

.hero p::before {
	content: '';
	position: absolute;
	bottom: -100px;
	right: -20px;

	width: 96px;
	height: 114px;

	background-image: url('../img/mob-icon.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 96px 114px;
}

.hero ul {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.hero ul li {
	display: flex;
	align-items: center;
	gap: 23px;

	color: var(--white-color);
	text-align: center;

	font-size: var(--mobile-body-text);
	font-weight: 700;
	line-height: normal;
}

.hero ul img {
	width: 40px;
	height: 40px;
	border-radius: 6px;
	background: #0d1330;
	box-shadow:
		0px -2px 4px 0px rgba(0, 103, 255, 0.8),
		0px 2px 4px 0px rgba(255, 6, 0, 0.8);

	object-fit: contain;
}

@media (min-width: 500px) {
	.hero {
		background:
			url('../img/hero-top-mob.png') top center / 100% 169px no-repeat,
			url('../img/hero-bottom-mob.png') bottom center / 100% 169px no-repeat,
			url('../img/img-hero.png') bottom 20px right / 350px auto no-repeat,
			linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.75) 100%),
			url('../img/bg-hero.png') center / cover no-repeat;
	}
}

@media (min-width: 768px) {
	.hero {
		padding: 120px 0 300px;

		background:
			url('../img/hero-top-mob.png') top center / 100% 169px no-repeat,
			url('../img/hero-bottom-mob.png') bottom center / 100% 169px no-repeat,
			url('../img/img-hero.png') bottom 20px right / 350px auto no-repeat,
			linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.75) 100%),
			url('../img/bg-hero.png') center / cover no-repeat;
	}

	.hero_content {
		width: 100%;
		max-width: 692px;
	}

	.hero h1 {
		font-size: var(--desktop-h1);

		margin-bottom: 24px;
	}

	.hero h1::before {
		top: -120px;
		right: 140px;

		width: 161px;
		height: 96px;

		background-size: 161px 96px;
	}

	.hero p {
		font-size: var(--mobile-name-brand);

		margin-bottom: 124px;
	}

	.hero p::before {
		bottom: -190px;
		left: -170px;

		width: 193px;
		height: 230px;

		background-image: url('../img/icon-2.png');

		background-size: 193px 230px;
	}

	.hero ul {
		flex-direction: row;
		align-items: center;
		gap: 20px;
	}

	.hero ul li {
		flex-direction: column;

		font-size: var(--desktop-body-text);
	}

	.hero ul img {
		width: 183px;
		height: 110px;
	}
}

@media (min-width: 1000px) {
	.hero {
		padding: 120px 0 300px;

		background:
			url('../img/hero-top-mob.png') top center / 100% 110px no-repeat,
			url('../img/hero-bottom-mob.png') bottom center / 100% 110px no-repeat,
			url('../img/img-hero.png') bottom 20px right / 500px auto no-repeat,
			linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.75) 100%),
			url('../img/bg-hero.png') center / cover no-repeat;
	}
}

@media (min-width: 1220px) {
	.hero {
		padding: 120px 0 80px;

		background:
			url('../img/hero-top-mob.png') top center / 100% 110px no-repeat,
			url('../img/hero-bottom-mob.png') bottom center / 100% 110px no-repeat,
			url('../img/img-hero.png') bottom right -50px / 700px auto no-repeat,
			linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.75) 100%),
			url('../img/bg-hero.png') center / cover no-repeat;
	}
}

@media (min-width: 1440px) {
	.hero {
		background:
			url('../img/hero-bottom-mob.png') bottom center / 100% 110px no-repeat,
			url('../img/img-hero.png') bottom 30px right -50px / 750px auto no-repeat,
			linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.75) 100%),
			url('../img/bg-hero.png') center / cover no-repeat;
	}

	.hero p::before {
		bottom: -120px;
		left: -240px;

		width: 193px;
		height: 230px;

		background-size: 193px 230px;
	}
}

/* ==================== SITE STYLES ==================== */

.site {
	padding-top: 20px;
}

.site-list {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.site h2 {
	color: var(--accent-color);
	text-align: center;

	font-size: var(--mobile-h1);
	font-weight: 700;
	line-height: 1.2;
}

.site-line {
	width: 100%;
	max-width: 808px;
	margin: 0 auto;
}

.site h3 {
	color: var(--white-color);

	font-family: 'Anton', sans-serif;
	font-size: var(--mobile-h1);
	line-height: normal;
	text-align: center;
	margin-bottom: 40px;
}

.site-list li {
	display: flex;
	flex-direction: column;
	gap: 24px;

	padding: 24px;

	border-radius: 20px;
	background: #0d1330;
	box-shadow:
		0px -2px 10px 0px rgba(0, 103, 255, 0.8),
		0px 2px 10px 0px rgba(255, 6, 0, 0.8);

	transition: var(--transition);
}

.site-list li:hover {
	box-shadow:
		0px -2px 20px 0px rgba(0, 103, 255, 0.8),
		0px 2px 20px 0px rgba(255, 6, 0, 0.8);
}

.gradient-border {
	padding: 4px;
	background: linear-gradient(90deg, #0067ff, #ffffff, #ff0600);
	border-radius: 20px;
	display: inline-block;
	overflow: hidden;

	transition: var(--transition);
}

.gradient-border:hover {
	padding: 7px;
}

.gradient-border-img {
	padding: 1px;
	background: linear-gradient(90deg, #0067ff, #ffffff, #ff0600);
	border-radius: 6px;
	display: inline-block;
	overflow: hidden;
}

.site-list-top {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 16px;

	border-radius: 20px;

	padding: 40px 58px;

	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.site-list-top__1 {
	background-image: url('../img/bg-brand-1.png');
}

.site-list-top__2 {
	background-image: url('../img/bg-brand-2.png');
}

.site-list-top__3 {
	background-image: url('../img/bg-brand-3.png');
}

.site-list-top__5 {
	background-image: url('../img/bg-brand-5.png');
}

.site-list-top__6 {
	background-image: url('../img/bg-brand-6.png');
}

.site-list-top__7 {
	background-image: url('../img/bg-brand-7.png');
}

.site-list-top__8 {
	background-image: url('../img/bg-brand-8.png');
}

.site-list-top__9 {
	background-image: url('../img/bg-brand-9.png');
}

.site-list-name {
	color: var(--white-color);
	font-size: var(--mobile-name-brand);
	line-height: 1.4;
}

.site-list-logo {
	margin: 0 auto;
}

.site-list-rate {
	display: flex;
	align-items: center;
	gap: 16px;
}

.site-list-rate div {
	display: flex;
	align-items: center;
	gap: 4px;
}

.site-list-rate div svg {
	width: 24px;
	height: 24px;
}

.site-list-rate div p {
	color: var(--yellow);
	font-family: 'Anton', sans-serif;
	font-size: var(--mobile-h1);
	line-height: normal;
}

.site-list-bottom-bonus {
	color: var(--white-color);
	text-align: center;
	text-transform: uppercase;
	font-size: var(--mobile-body-text);
	line-height: 1.4;

	margin-bottom: 4px;
}

.site-list-bottom h4 {
	text-align: center;
	font-family: 'Anton', sans-serif;
	font-size: var(--mobile-numbers);
	line-height: normal;

	margin-bottom: 4px;

	background: linear-gradient(
		98deg,
		rgba(151, 97, 10, 0.9) -25.94%,
		rgba(210, 157, 27, 0.9) -4.38%,
		rgba(246, 210, 132, 0.9) 39.53%,
		rgba(209, 166, 72, 0.9) 74.81%,
		rgba(152, 102, 17, 0.9) 103.75%
	);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.site-list-bottom-payment {
	color: var(--white-color);
	text-align: center;

	font-size: var(--desktop-body-text);
	line-height: normal;

	margin-bottom: 24px;
}

.site-list-bottom a {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--black);
	width: 100%;
	max-width: 528px;
	height: 54px;
	margin: 0 auto;

	font-size: var(--mobile-body-text);
	font-weight: 700;
	line-height: normal;

	border-radius: 20px;
	border: 4px solid #0067ff;
	background: linear-gradient(90deg, #0067ff 0%, #fff 50%, #ff0600 100%);
	box-shadow:
		0px -2px 10px 0px rgba(0, 103, 255, 0.8),
		0px 2px 10px 0px rgba(255, 6, 0, 0.8);

	transition: var(--transition);
}

.site-list-bottom a:hover {
	box-shadow:
		0px -2px 20px 0px rgba(0, 103, 255, 0.8),
		0px 2px 20px 0px rgba(255, 6, 0, 0.8);
}

@media (min-width: 768px) {
	.site {
		padding-top: 0;
	}

	.site-list {
		gap: 32px;
	}

	.site h2 {
		font-size: var(--desktop-h1);
	}

	.site h3 {
		font-size: var(--mobile-h1);

		margin-bottom: 60px;
	}

	.site-list li {
		flex-direction: row;
		align-items: center;
		gap: 24px;

		padding: 32px;
	}

	.gradient-border-img {
		padding: 1px;
		background: linear-gradient(90deg, #0067ff, #ffffff, #ff0600);
		border-radius: 6px;
		display: inline-block;
		overflow: hidden;
	}

	.site-list-top {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 24px;

		padding: 30px 0;

		width: 50%;
	}

	.site-list-name {
		font-size: var(--mobile-h2);
		line-height: normal;
	}

	.site-list-rate {
		gap: 24px;
	}

	.site-list-rate div svg {
		width: 40px;
		height: 40px;
	}

	.site-list-bottom {
		width: 50%;
	}

	.site-list-bottom-bonus {
		font-size: var(--desktop-text);
		line-height: normal;
	}

	.site-list-bottom h4 {
		font-size: var(--desktop-h1);
		line-height: 1.2;
	}

	.site-list-bottom-payment {
		font-size: var(--desktop-body-text);
	}
}

/* ==================== WE STYLES ==================== */

.we {
	padding: 80px 0;
}

.we h2 {
	color: var(--white-color);

	font-size: var(--mobile-h2);
	font-weight: 700;
	line-height: normal;

	margin-bottom: 24px;
}

.we p {
	color: var(--white-color);

	font-size: var(--mobile-body-text);
	line-height: 1.4;

	margin-bottom: 48px;
}

.we ul {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.we ul li {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.we ul li p {
	color: var(--white-color);

	font-size: var(--mobile-body-text);
	line-height: normal;
	margin: 0;
}

.we ul li img {
	width: 100px;
	height: 100px;

	border-radius: 20px;
	background: #0d1330;
	box-shadow:
		0px -2px 4px 0px rgba(0, 103, 255, 0.8),
		0px 2px 4px 0px rgba(255, 6, 0, 0.8);
}

.gradient-border-img-we {
	padding: 4px;
	background: linear-gradient(90deg, #0067ff, #ffffff, #ff0600);
	border-radius: 20px;
	display: inline-block;
	overflow: hidden;
	width: 104px;
	height: auto;
}

@media (min-width: 768px) {
	.we p {
		font-size: var(--mobile-name-brand);
		line-height: normal;
	}

	.we ul li {
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		gap: 40px;

		font-size: var(--desktop-body-text);
	}

	.we ul li p {
		width: 70%;
	}

	.we ul li img {
		width: 240px;
		height: 240px;
	}

	.gradient-border-img-we {
		padding: 4px;
		background: linear-gradient(90deg, #0067ff, #ffffff, #ff0600);
		border-radius: 20px;
		display: inline-block;
		overflow: hidden;
		width: 240px;
		height: auto;
	}
}

/* ==================== FOOTER STYLES ==================== */

.footer {
	padding: 30px 0;
	background-color: #000;
}

.footer p {
	color: var(--gray);
	text-align: center;

	font-size: var(--mobile-footer);
	line-height: normal;
}

@media (min-width: 768px) {
	.footer {
		padding: 60px 0;
	}
}
