:root {
	--blue: #3980f1;
	--purple: #d380d6;
	--yellow: #f8d43e;
	--orange: #f77046;
	--green: #06c98b;
	--pink: #ff8aa6;
	--grey: #d3d3d3;
	--turquoise: #4dccbf;
}

/* FONTS */

/* Bureau Grot Condensed Bold - for all headings */
@font-face {
	font-family: "Bureau Grot Condensed";
	src:
		url("../fonts/BureauGrotCondensedBold/font.woff2") format("woff2"),
		url("../fonts/BureauGrotCondensedBold/font.woff") format("woff");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* AType Stencil 2.0 Regular - for page header block */
@font-face {
	font-family: "AType Stencil";
	src: url("../fonts/ATypeStencil2.0/ATypeStencil2.0-Regular.otf")
		format("opentype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/* Cadiz Regular - main body font */
@font-face {
	font-family: "Cadiz";
	src: url("../fonts/Cadiz/Cadiz-Regular.otf") format("opentype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/* Cadiz Regular Italic - main body font */
@font-face {
	font-family: "Cadiz";
	src: url("../fonts/Cadiz/Cadiz-RegularItalic.otf") format("opentype");
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}

/* Cadiz Bold - main body font */
@font-face {
	font-family: "Cadiz";
	src: url("../fonts/Cadiz/Cadiz-Bold.otf") format("opentype");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* TYPOGRAPHY SECTION */

h1,
h2,
h3,
h4,
h5,
h6 {
	color: #000;
	font-family: "Bureau Grot Condensed", sans-serif;
	font-style: normal;
	font-weight: 700;
	line-height: 120%; /* 76.8px */
	margin: 0;
}

h1,
h2 {
	font-size: 56px;
}

h3 {
	font-size: 32px;
}

p,
a {
	font-size: 16px;
	margin: 0;
}

@media (min-width: 1024px) {
	h1,
	h2 {
		font-size: 64px;
	}

	h3 {
		font-size: 48px;
	}
}

a {
	color: #000;
	text-decoration: none;
}

/* LAYOUT */
* {
	box-sizing: border-box;
}

body {
	margin: 0;
	padding: 0;
	font-family: "Cadiz", serif;
}

.container {
	width: 100%;
	padding: 0 20px;
}
@media (min-width: 768px) {
	.container {
		padding: 0 64px;
	}
}
@media (min-width: 1568px) {
	.container {
		max-width: 1440px;
		margin: 0 auto;
		padding: 0;
	}
}

/* BUTTON SECTION */
.button {
	display: flex;
	padding: 12px 12px 12px 18px;
	justify-content: center;
	align-items: center;
	gap: 8px;
	border-radius: 32px;
	background: var(--yellow);
	text-decoration: none;
	transition: background-color 0.3s ease;
}

.button:hover {
	background-color: #f7cf25;
}

.button.grey {
	background: var(--grey);
}

.button.grey:hover {
	background-color: #c0c0c0;
}

.text-button {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	text-decoration: none;
}

.text-button:hover {
	text-decoration: underline;
}

.button span,
.text-button span {
	color: var(--Neutral-Black, #000);
	font-family: "Bureau Grot Condensed", sans-serif;
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 120%; /* 21.6px */
	text-transform: uppercase;
}

.button svg,
.text-button svg {
	width: 24px;
	height: 24px;
}

/* HEADER SECTION */

.header {
	padding: 20px 0;
	background: #fff;
}

.header-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
}

@media (min-width: 1024px) {
	.header-container {
		flex-direction: row;
		justify-content: space-between;
	}
}

.logo img {
	height: auto;
	max-height: 56px;
	width: 100%;
}

img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

/* HERO SECTION */

.hero-section {
	padding: 32px 0 16px;
	background: linear-gradient(180deg, #3980f1 90%, #fff 70%);
}

@media (min-width: 1024px) {
	.hero-section {
		padding: 64px 0 32px;
		background: linear-gradient(180deg, #3980f1 70%, #fff 70%);
	}
}

.hero-section .container {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 64px;
}

.hero-title {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 24px;
	max-width: 1080px;
}

.hero-section p {
	max-width: 600px;
}

.hero-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 16px;
}

.hero-title h1 {
	color: var(--yellow);
}

.hero-image {
	width: 100%;
	max-width: 1080px;
}

.hero-image img {
	width: 100%;
	height: auto;
	max-height: 600px;
}

/* TEXT HIGHLIGHT SECTION */

.text-highlight-section {
	padding: 32px 0;
}

.text-highlight-section:first-of-type {
	padding: 16px 0 32px;
}

.text-highlight-section:last-of-type h3 {
	font-size: 28px;
}

.text-highlight-section .container {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
}

@media (min-width: 1024px) {
	.text-highlight-section {
		padding: 64px 0;
	}

	.text-highlight-section:first-of-type {
		padding: 32px 0 64px;
	}
	.text-highlight-section:last-of-type h3 {
		font-size: 40px;
	}

	.text-highlight-section .container {
		gap: 64px;
	}
}

.text-highlight-title {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 24px;
	max-width: 1080px;
}

.text-highlight-section p {
	max-width: 600px;
}

.text-highlight-columns {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
}

@media (min-width: 1024px) {
	.text-highlight-columns {
		grid-template-columns: repeat(3, 1fr);
	}
}

.text-highlight-column {
	display: flex;
	padding: 24px;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	background: var(--green);
}
.text-highlight-column.blue {
	background: var(--blue);
}
.text-highlight-column.purple {
	background: var(--purple);
}
.text-highlight-column.yellow {
	background: var(--yellow);
}
.text-highlight-column.orange {
	background: var(--orange);
}

.text-highlight-column .text-button {
	margin-top: 8px;
}

/* BANNER SECTION */

.banner-section {
	display: grid;
	grid-template-columns: 1fr;
}

@media (min-width: 1024px) {
	.banner-section {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 1568px) {
	.banner-section {
		max-width: 1440px;
		margin: 0 auto;
	}
}

.banner-content {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 24px;
	background: var(--turquoise);
	padding: 32px;
}

.banner-content .button {
	margin-top: 8px;
}

.banner-image {
	width: 100%;
	display: flex;
}

/* FOOTER SECTION */

.site-footer .footer-top-container {
	background: #ff8aa6;
	padding: 32px;
}

@media (min-width: 1024px) {
	.site-footer .footer-top-container {
		padding: 64px;
	}
}

.site-footer .footer-top-inner-container {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	max-width: 1056px;
	margin: 0 auto;
}

@media (min-width: 1024px) {
	.site-footer .footer-top-inner-container {
		grid-template-columns: repeat(3, 1fr);
		gap: 32px;
	}
}

.site-footer .footer-logo img {
	width: 293px;
	height: 89px;
}

.site-footer .footer-address-info p {
	color: #000;
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 36px */
	margin: 0;
}

.site-footer .footer-contact-info {
	display: flex;
	flex-direction: column;
	color: #000;
	font-size: 16px;
	line-height: 24px;
}

.site-footer .footer-contact-info a {
	color: #000;
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 36px */
	text-decoration: underline;
	margin: 0;
}

.site-footer .footer-contact-info a:hover {
	text-decoration: none;
}

.site-footer .footer-bottom-container {
	background: #1d1d1b;
	padding: 32px;
}

@media (min-width: 1024px) {
	.site-footer .footer-bottom-container {
		padding: 64px;
	}
}

.site-footer .footer-bottom-inner-container {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	max-width: 1056px;
	margin: 0 auto;
}

@media (min-width: 1024px) {
	.site-footer .footer-bottom-inner-container {
		grid-template-columns: repeat(3, 1fr);
		align-items: flex-start;
		gap: 32px;
	}
}

.site-footer .footer-partners {
	width: 100%;
	display: flex;
	align-items: flex-end;
	gap: 32px;
}

.site-footer .footer-partner-logo img {
	width: 68px;
	height: auto;
}

.site-footer .footer-partner-logo:first-child img {
	width: 50px;
}

.site-footer .footer-partner-logo:last-child img {
	width: 110px;
}

.site-footer .footer-bottom-menu {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.site-footer .footer-bottom-menu h4 {
	margin: 0;
	color: #fff;
	font-size: 14px;
	font-family: "Cadiz", serif;
	font-weight: 600;
}

.site-footer .footer-bottom-menu ul {
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.site-footer .footer-bottom-menu li a {
	color: #fff;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 24px */
	text-decoration: underline;
}

.site-footer .footer-bottom-menu li a:hover {
	text-decoration: none;
}

.site-footer .footer-bottom-policies {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.site-footer .footer-policy-menu ul {
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.site-footer .footer-policy-menu li a {
	color: #fff;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 24px */
	text-decoration: underline;
}

.site-footer .footer-policy-menu li a:hover {
	text-decoration: none;
}

.site-footer .footer-bottom-policies > p {
	margin: 0;
	color: #fff;
	font-size: 10px;
}

.site-footer .footer-bottom-policies > p a {
	color: #fff;
	text-decoration: underline;
	font-size: 10px;
}

.site-footer .footer-bottom-policies > p a:hover {
	text-decoration: none;
}
