@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");

:root {
	--primary-color: #8b0000;
	--primary-color-dark: #8b0000;
	--text-dark: #15191d;
	--text-light: #737373;
	--extra-light: #e5e5e5;
	--white: #ffffff;
	--max-width: 1200px;
	--header-font: "Roboto", serif;
	--body-font: "Inter", sans-serif;
}
.nav-web-logo {
	display: none;
}
.nav-mobile-logo {
	display: block;
}
* {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

/* Touch-friendly improvements */
@media (hover: none) and (pointer: coarse) {
	.btn {
		min-height: 44px;
		min-width: 44px;
	}

	.nav__links a {
		padding: 0.75rem 1rem;
	}

	.footer__links a {
		padding: 0.6rem 0;
	}

	.footer__social a {
		width: 44px;
		height: 44px;
	}
}

.section__container {
	max-width: var(--max-width);
	margin: auto;
	padding: 1rem 0rem;
	margin-top: 3rem;
}

.section__header {
	font-size: 3.25rem;
	font-weight: 700;
	font-family: var(--header-font);
	color: var(--text-dark);

	line-height: 4.25rem;
}

.btn {
	padding: 1rem 1.5rem;
	outline: none;
	border: none;
	font-size: 1rem;
	color: var(--white);
	background-color: var(--text-dark);
	border-radius: 10px;
	transition: 0.3s;
	cursor: pointer;
}

.btn:hover {
	color: var(--text-dark);
	background-color: var(--primary-color);
}

img {
	display: flex;
	width: 100%;
}

a {
	text-decoration: none;
	transition: 0.3s;
}

ul {
	list-style: none;
}

html,
body {
	scroll-behavior: smooth;
}

body {
	font-family: var(--body-font);
}

header {
	position: relative;
	background-image: url("assets/header-bg.png");
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

nav {
	position: fixed;
	isolation: isolate;
	width: 100%;
	z-index: 9;
}

.nav__header {
	padding: 1rem;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background-color: #8b0000;
}

.nav__logo a {
	font-size: 1.5rem;
	font-weight: 700;
	font-family: var(--header-font);
	color: var(--white);
}

.nav__menu__btn {
	font-size: 1.5rem;
	color: var(--white);
	cursor: pointer;
}

.nav__links {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 2rem;
	background-color: var(--primary-color);
	transition: transform 0.5s;
	z-index: -1;
}

.nav__links.open {
	transform: translateY(100%);
}

.nav__links a {
	font-weight: 500;
	color: var(--white);
}

.nav__links a:hover {
	color: var(--text-dark);
}

.nav__btn {
	display: none;
}

.header__container {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: 3rem 0;
}

.header__container h1 {
	max-width: 750px;
	margin-inline: auto;
	margin-bottom: 2rem;
	font-size: 4.5rem;
	font-weight: 700;
	font-family: var(--header-font);
	color: var(--text-dark);

	text-align: center;
}

.header__container form {
	max-width: 800px;
	margin-inline: auto;
	margin-bottom: 4rem;
	padding: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1rem;
	background-color: var(--white);
	box-shadow: 5px 10px 20px rgba(0, 0, 0, 0.1);
}

.header__container .input__group {
	flex: 1 0 170px;
	display: grid;
	gap: 10px;
}

.header__container label {
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--text-dark);
}

.header__container input {
	width: 100%;
	outline: none;
	border: none;
	font-size: 1.2rem;
	color: var(--text-light);
}

.header__container input::placeholder {
	color: var(--text-light);
}

.header__container .btn {
	padding: 15px 17px;
	font-size: 1.5rem;
}

.header__container img {
	max-width: 1050px;
	margin-inline: auto;
	filter: drop-shadow(5px 20px 20px rgba(0, 0, 0, 0.5));
}

.scroll__down {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 50%);
	font-size: 1.5rem;
	padding: 8px 5px;
	color: var(--text-dark);
	background-color: var(--primary-color);
	border-radius: 2rem;
	border: 8px solid var(--white);
}

.range__container .section__header {
	max-width: 700px;
	margin-inline: auto;
	margin-bottom: 4rem;
	text-align: center;
}

.range__grid {
	display: grid;
	gap: 1rem;
}

.range__card {
	position: relative;
	isolation: isolate;
	max-width: 600px;
	margin-inline: auto;
	border-radius: 1.5rem;
	overflow: hidden;
	box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.2);
}

.range__card img {
	transition: 0.3s;
}

.range__card:hover img {
	transform: scale(1.1);
}

.range__details {
	position: absolute;
	inset: 0;
	padding: 2rem;
	background-image: linear-gradient(
		to bottom right,
		rgba(0, 0, 0, 1),
		rgba(0, 0, 0, 0.1) 50%,
		rgba(0, 0, 0, 0.75)
	);
}

.range__details h4 {
	margin-bottom: 1rem;
	font-size: 3rem;
	font-weight: 600;
	font-family: var(--header-font);
	color: var(--white);
}

.range__details a {
	display: inline-block;
	padding: 0px 6px;
	font-size: 1.5rem;
	color: var(--white);
	border: 2px solid var(--white);
	border-radius: 100%;
}

.range__details a:hover {
	color: var(--primary-color);
	border-color: var(--primary-color);
}

.location__container {
	display: grid;
	gap: 2rem 0;
	overflow: hidden;
}

.location__image img {
	max-width: 500px;
	margin-inline: auto;
	padding-inline: 1rem;
}

.location__content .section__header {
	margin-bottom: 2rem;
}

.location__content p {
	margin-bottom: 2rem;
	color: var(--text-light);
}

.select__container {
	padding-top: 5rem;
	margin-bottom: 5rem;
	background-image: url("assets/select-bg.png");
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
}

.select__container .section__header {
	max-width: 600px;
	margin-inline: auto;
	margin-bottom: 4rem;
	text-align: center;
}

.swiper {
	width: 100%;
}

.swiper-slide {
	max-width: 900px;
}

.select__card img {
	max-width: 800px;
	margin-inline: auto;
	margin-bottom: 2rem;
	filter: drop-shadow(0px 20px 20px rgba(0, 0, 0, 0.5));
}

.select__info {
	max-width: 600px;
	margin-inline: auto;
	display: none;
	align-items: center;
	justify-content: space-around;
	gap: 2rem;
}

.select__card.show__info .select__info {
	display: flex;
}

.select__info__card {
	text-align: center;
}

.select__info__card > span {
	display: inline-block;
	margin-bottom: 1rem;
	padding: 5px 15px;
	font-size: 2.5rem;
	color: var(--text-dark);
	background-color: var(--white);
	border-radius: 100%;
	box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.1);
}

.select__info__card h4 {
	font-size: 1.25rem;
	font-weight: 600;
	font-family: var(--header-font);
	color: var(--text-dark);
}

.select__info__card h4 span {
	font-size: 0.8rem;
	color: var(--text-light);
}

.select__form {
	max-width: 750px;
	margin-inline: auto;
	padding: 1.5rem 2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2rem;
	flex-wrap: wrap;
	background-color: var(--white);
	transform: translateY(50%);
	box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.1);
}

.select__price {
	display: flex;
	align-items: center;
	gap: 2rem;
	font-family: var(--header-font);
	font-weight: 600;
	color: var(--text-light);
}

.select__price span {
	font-size: 3rem;
	line-height: 3rem;
	color: var(--text-dark);
}

.select__price span:not(#select-price) {
	font-weight: 400;
}

.select__btns {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
}

.select__btns .btn {
	min-width: 135px;
}

.select__btns .btn:nth-child(2) {
	color: var(--white);
	background-color: var(--primary-color);
}

.story__container .section__header {
	max-width: 600px;
	margin-inline: auto;
	margin-bottom: 4rem;
	text-align: center;
}

.story__grid {
	display: grid;
	gap: 4rem 1rem;
}

.story__date {
	margin-bottom: 2rem;
	padding-bottom: 1rem;
	display: flex;
	align-items: center;
	gap: 10px;
	border-bottom: 2px solid var(--text-light);
}

.story__date span {
	padding-right: 10px;
	font-size: 3rem;
	font-weight: 500;
	line-height: 2.5rem;
	border-right: 2px solid var(--text-light);
}

.story__date div p {
	margin-bottom: 0;
	font-weight: 500;
	color: var(--text-light);
}

.story__card h4 {
	margin-bottom: 1rem;
	font-size: 1.5rem;
	font-family: var(--header-font);
	font-weight: 700;

	line-height: 2rem;
	color: var(--text-dark);
}

.story__card p {
	margin-bottom: 2rem;
	color: var(--text-light);
}

/* Contact Section */
.contact__container {
	background-color: #f8f9fa;
}

.contact__container .section__header {
	margin-bottom: 3rem;
	text-align: center;
}

.contact__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 2rem;
	margin-bottom: 4rem;
}

.contact__card {
	background-color: var(--white);
	padding: 2rem;
	border-radius: 1rem;
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.contact__card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 15px rgba(0, 0, 0, 0.15);
}

.contact__icon {
	background-color: var(--primary-color);
	padding: 1rem;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 60px;
	height: 60px;
}

.contact__icon i {
	font-size: 1.5rem;
	color: var(--text-dark);
}

.contact__details h4 {
	margin-bottom: 0.5rem;
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--text-dark);
}

.contact__details p {
	margin: 0;
	color: var(--text-light);
	line-height: 1.6;
}

.contact__details a {
	color: var(--text-light);
	text-decoration: none;
	transition: color 0.3s ease;
}

.contact__details a:hover {
	color: var(--primary-color);
}

.contact__form__container {
	display: grid;
	gap: 3rem;
	background-color: var(--white);
	padding: 3rem;
	border-radius: 1rem;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.contact__content h3 {
	margin-bottom: 1rem;
	font-size: 1.75rem;
	font-weight: 600;
	color: var(--text-dark);
}

.contact__content p {
	color: var(--text-light);
	line-height: 1.6;
}

.contact__form {
	display: grid;
	gap: 1.5rem;
}

.form__group {
	display: grid;
	gap: 1rem;
}

.contact__form input,
.contact__form select,
.contact__form textarea {
	width: 100%;
	padding: 1rem;
	border: 2px solid var(--extra-light);
	border-radius: 0.5rem;
	font-size: 1rem;
	font-family: inherit;
	transition: border-color 0.3s ease;
	outline: none;
}

.contact__form input:focus,
.contact__form select:focus,
.contact__form textarea:focus {
	border-color: var(--primary-color);
}

.contact__form textarea {
	resize: vertical;
	min-height: 120px;
}

.contact__form select {
	cursor: pointer;
}

.contact__btn {
	justify-self: start;
	min-width: 200px;
}

@media (width > 768px) {
	.contact__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.contact__form__container {
		grid-template-columns: 1fr 1fr;
		align-items: start;
	}

	.form__group {
		grid-template-columns: repeat(1, 1fr);
	}
}

@media (width > 1024px) {
	.contact__grid {
		grid-template-columns: repeat(4, 1fr);
	}
}

.banner__container {
	padding-block: 5rem;
	overflow: hidden;
}

.banner__wrapper {
	width: max-content;
	display: flex;
	align-items: center;
	gap: 8rem;

	animation: scroll 45s linear infinite;
}

.banner__wrapper img {
	height: 100px;
}

@keyframes scroll {
	to {
		transform: translateX(calc(-50% - 4rem));
	}
}

.download {
	position: relative;
	isolation: isolate;
	padding-inline: 1rem;
	overflow: hidden;
}

.download::before {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	width: 100%;
	height: calc(50% - 5rem);
	background-color: var(--text-dark);
	z-index: -1;
}

.download__container {
	padding: 0 1rem;
	display: grid;
	background-color: var(--primary-color);
	border-radius: 1rem;
}

.download__content {
	padding-block: 5rem;
}

.download__content .section__header {
	margin-bottom: 2rem;
	text-align: center;
}

.download__links {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
}

.download__links img {
	max-width: 150px;
}

.download__image {
	display: none;
}

.news {
	background-color: var(--text-dark);
}

.news__container {
	padding-bottom: 0;
	display: grid;
	gap: 2rem;
}

.news__container .section__header {
	font-size: 2.5rem;
	line-height: 3.25rem;
	color: var(--white);
	text-align: center;
}

.news__container form {
	width: 100%;
	max-width: 450px;
	margin-inline: auto;
	display: flex;
	align-items: center;
	gap: 1rem;
}

.news__container input {
	width: 100%;
	outline: none;
	border: none;
	padding: 0.75rem 0;
	font-size: 1rem;
	color: var(--white);
	background-color: transparent;
	border-bottom: 2px solid var(--text-light);
}

.news__container .btn {
	padding: 10p 12px;
	font-size: 1.5rem;
	background-color: var(--primary-color);
}

footer {
	background: black;
	color: var(--white);
	padding: 3rem 0 1rem;
	margin-top: 0rem;
}

.footer__container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1rem;
}

.footer__content {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 3rem;
	margin-bottom: 2rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer__brand {
	color: var(--white);
}

.footer__logo {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.footer__logo img {
	background: var(--white);
	padding: 0.5rem;
	border-radius: 8px;
	object-fit: contain;
	width: auto;
}

.footer__logo h3 {
	font-family: var(--header-font);
	font-size: 1.5rem;
	font-weight: 700;
	margin: 0;
	color: var(--white);
}

.footer__description {
	color: rgba(255, 255, 255, 0.8);
	line-height: 1.6;
	margin-bottom: 1.5rem;
}

.footer__contact p {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 0.5rem;
	color: rgba(255, 255, 255, 0.8);
	font-size: 0.9rem;
}

.footer__contact a {
	color: var(--white);
	text-decoration: none;
	transition: color 0.3s ease;
}

.footer__contact a:hover {
	color: var(--primary-color);
}

.footer__links-section {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.footer__links-group h4 {
	font-family: var(--header-font);
	font-size: 1.1rem;
	font-weight: 600;
	margin-bottom: 1rem;
	color: var(--white);
	position: relative;
	padding-bottom: 0.5rem;
}

.footer__links {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.footer__links a {
	color: rgba(255, 255, 255, 0.8);
	text-decoration: none;
	font-size: 0.9rem;
	padding: 0.3rem 0;
	transition: all 0.3s ease;
	border-radius: 4px;
}

.footer__links a:hover {
	color: var(--white);
	padding-left: 0.5rem;
	background: rgba(255, 255, 255, 0.05);
}

.footer__bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 1rem;
	flex-wrap: wrap;
	gap: 1rem;
}

.footer__info {
	color: rgba(255, 255, 255, 0.7);
}

.footer__info p {
	margin: 0.2rem 0;
	font-size: 0.85rem;
}

.footer__social {
	display: flex;
	gap: 1rem;
}

.footer__social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background: rgba(255, 255, 255, 0.1);
	color: var(--white);
	border-radius: 50%;
	text-decoration: none;
	font-size: 1.2rem;
	transition: all 0.3s ease;
}

.footer__social a:hover {
	background: var(--primary-color);
	transform: translateY(-2px);
}

@media (width > 540px) {
	.story__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Mobile-first responsive design */
@media (max-width: 1024px) {
	.section__header {
		font-size: 2.5rem;

		line-height: 3rem;
	}

	.header__container h1 {
		font-size: 3.5rem;
	}
}

@media (max-width: 768px) {
	/* Header and Navigation */
	.header__container h1 {
		font-size: 2.5rem;

		text-align: center;
		margin-bottom: 1.5rem;
	}

	.header__container form {
		flex-direction: column;
		gap: 1rem;
		padding: 1.5rem;
	}

	.input__group {
		width: 100%;
	}

	/* Section headers */
	.section__header {
		font-size: 2rem;

		line-height: 2.5rem;
		text-align: center;
		margin-bottom: 2rem;
	}

	/* Range section */
	.range__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 1rem;
	}

	.range__details h4 {
		font-size: 1.2rem;
	}

	/* Location section */
	.location__container {
		flex-direction: column;
		gap: 2rem;
	}

	.location__image {
		order: 2;
	}

	.location__content {
		order: 1;
		text-align: center;
	}

	/* Select section */
	.select__form {
		flex-direction: column;
		gap: 1.5rem;
		padding: 1.5rem;
	}

	.select__btns {
		flex-direction: column;
		gap: 1rem;
	}

	.select__btns .btn {
		width: 100%;
	}

	.select__price span {
		font-size: 2rem;
	}

	/* Story section */
	.story__grid {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	/* Contact section */
	.contact__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 1.5rem;
	}

	.contact__card {
		text-align: center;
	}

	/* Newsletter */
	.news__container .section__header {
		font-size: 1.8rem;
		line-height: 2.2rem;
	}

	.news__container form {
		flex-direction: column;
		gap: 1rem;
	}

	.news__container input {
		width: 100%;
		text-align: center;
	}

	/* Footer */
	.footer__content {
		grid-template-columns: 1fr;
		gap: 2rem;
		text-align: center;
	}

	.footer__brand {
		text-align: center;
		order: 1;
	}

	.footer__links-section {
		grid-template-columns: 1fr;
		gap: 2rem;
		text-align: center;
		order: 2;
	}

	.footer__links-group h4 {
		text-align: center;
	}

	.footer__links {
		align-items: center;
		text-align: center;
	}

	.footer__bottom {
		flex-direction: column;
		text-align: center;
		gap: 1.5rem;
	}

	.footer__info {
		text-align: center;
	}

	.footer__social {
		justify-content: center;
	}
}

@media (max-width: 480px) {
	/* Typography scaling for small screens */
	.header__container h1 {
		font-size: 2rem;
	}

	.section__header {
		font-size: 1.6rem;

		line-height: 2rem;
	}

	/* Range section for mobile */
	.range__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.range__details {
		padding: 2rem 1.5rem;
	}

	/* Contact cards stack */
	.contact__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	/* Footer mobile optimization */
	footer {
		padding: 2rem 0 1rem;
		text-align: center;
	}

	.footer__content {
		text-align: center;
	}

	.footer__brand {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center;
	}

	.footer__logo {
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		width: 100%;
		gap: 0.5rem;
	}

	.footer__logo img {
		display: flex;
		align-self: center;
	}

	.footer__contact {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center;
	}

	.footer__contact p {
		font-size: 0.85rem;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		gap: 0.5rem;
	}

	.footer__description {
		text-align: center;
		font-size: 0.9rem;
	}

	.footer__links-section {
		text-align: center;
	}

	.footer__links-group {
		text-align: center;
	}

	.footer__links-group h4 {
		text-align: center;
	}

	.footer__links {
		text-align: center;
		align-items: center;
	}

	.footer__links a {
		text-align: center;
	}

	.footer__bottom {
		text-align: center;
	}

	.footer__info {
		text-align: center;
	}

	.footer__info p {
		text-align: center;
	}

	/* Form improvements */
	.header__container form {
		padding: 1rem;
	}

	.input__group label {
		font-size: 0.8rem;
	}

	.input__group input {
		font-size: 0.9rem;
		padding: 0.8rem;
	}

	/* Button improvements */
	.btn {
		padding: 0.8rem 1.5rem;
		font-size: 0.9rem;
	}

	/* Select section mobile */
	.select__info {
		grid-template-columns: repeat(2, 1fr);
		gap: 0.5rem;
	}

	.select__info__card h4 {
		font-size: 1rem;
	}

	.select__info__card span {
		font-size: 0.7rem;
	}
}

@media (max-width: 360px) {
	/* Extra small screens */
	.header__container h1 {
		font-size: 1.8rem;
		padding: 7rem !important;
	}

	.section__header {
		font-size: 1.4rem;
	}

	.footer__container {
		padding: 0 0.5rem;
	}

	.select__info {
		grid-template-columns: 1fr;
		gap: 0.5rem;
	}
}

@media (width > 768px) {
	nav {
		position: static;
		padding: 1rem 1rem;
		max-width: var(--max-width);
		margin-inline: auto;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
	}

	.nav__header {
		flex: 1;
		padding: 0;
		background-color: transparent;
	}

	.nav__logo a {
		color: var(--text-dark);
	}

	.nav__menu__btn {
		display: none;
	}

	.nav__links {
		position: static;
		padding: 0;
		width: fit-content;
		flex-direction: row;
		background-color: transparent;
		transform: none;
	}

	.nav__links a {
		color: var(--text-dark);
	}

	.nav__links a:hover {
		color: var(--primary-color);
	}

	.nav__btn {
		display: flex;
		flex: 1;
		align-items: center;
		justify-content: flex-end;
	}

	.nav__btn .btn {
		color: var(--text-dark);
		background-color: var(--primary-color);
	}

	.range__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.location__container {
		grid-template-columns: repeat(2, 1fr);
		align-items: center;
	}

	.location__image {
		grid-area: 1/2/2/3;
	}

	.select__form {
		justify-content: space-between;
	}

	.story__grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.download__container {
		margin-top: 10rem;
		grid-template-columns: repeat(2, 1fr);
		align-items: center;
	}

	.download__content {
		max-width: 500px;
		margin-left: auto;
	}

	.download__content .section__header {
		text-align: left;
	}

	.download__links {
		justify-content: flex-start;
	}

	.download__image {
		display: flex;
		position: relative;
		isolation: isolate;
		height: 100%;
	}

	.download__image img {
		display: block;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		max-width: 400px;
	}

	.news__container {
		grid-template-columns: repeat(2, 1fr);
		align-items: center;
	}

	.news__container .section__header {
		text-align: left;
	}

	.news__container form {
		margin-inline-end: unset;
	}

	.footer__container {
		grid-template-columns: repeat(4, 1fr);
	}
}

@media (width > 1024px) {
	.range__grid {
		gap: 1.5rem;
	}

	.range__details {
		padding: 4rem;
	}

	.story__grid {
		padding: 1.5rem;
	}
}

/* Cookie Popup Styles */
.cookie-popup {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(21, 25, 29, 0.98);
	backdrop-filter: blur(10px);
	color: var(--white);
	padding: 1.5rem;
	z-index: 10000;
	transform: translateY(100%);
	transition: transform 0.3s ease-in-out;
	border-top: 3px solid var(--primary-color);
	box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.3);
}

.cookie-popup.show {
	transform: translateY(0);
}

.cookie-popup__container {
	max-width: var(--max-width);
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.cookie-popup__content {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.cookie-popup__title {
	font-family: var(--header-font);
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--primary-color);
	margin: 0;
}

.cookie-popup__text {
	font-size: 0.9rem;
	line-height: 1.5;
	color: #e0e0e0;
	margin: 0;
}

.cookie-popup__text a {
	color: var(--primary-color);
	text-decoration: underline;
}

.cookie-popup__text a:hover {
	color: var(--primary-color-dark);
}

.cookie-popup__actions {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.cookie-popup__btn {
	padding: 0.75rem 1.5rem;
	border: none;
	border-radius: 8px;
	font-size: 0.9rem;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
	text-align: center;
	min-height: 44px;
}

.cookie-popup__btn--accept {
	background-color: var(--primary-color);
	color: var(--text-dark);
}

.cookie-popup__btn--accept:hover {
	background-color: var(--primary-color-dark);
	transform: translateY(-1px);
}

.cookie-popup__btn--decline {
	background-color: transparent;
	color: var(--white);
	border: 1px solid rgba(255, 255, 255, 0.3);
}

.cookie-popup__btn--decline:hover {
	background-color: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.5);
}

.cookie-popup__btn--settings {
	background-color: transparent;
	color: var(--primary-color);
	border: 1px solid var(--primary-color);
}

.cookie-popup__btn--settings:hover {
	background-color: var(--primary-color);
	color: var(--text-dark);
}

/* Mobile Optimizations */
@media (max-width: 640px) {
	.cookie-popup {
		padding: 1rem;
	}

	.cookie-popup__title {
		font-size: 1.1rem;
	}

	.cookie-popup__text {
		font-size: 0.85rem;
	}

	.cookie-popup__btn {
		font-size: 0.85rem;
		padding: 0.7rem 1.25rem;
	}
}

/* Tablet and Desktop */
@media (min-width: 640px) {
	.cookie-popup__container {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}

	.cookie-popup__content {
		flex: 1;
		margin-right: 2rem;
	}

	.cookie-popup__actions {
		flex-direction: row;
		flex-shrink: 0;
	}

	.cookie-popup__btn {
		white-space: nowrap;
		min-width: 120px;
	}
}

@media (min-width: 1024px) {
	.cookie-popup__title {
		font-size: 1.4rem;
	}

	.cookie-popup__text {
		font-size: 1rem;
	}

	.cookie-popup__btn {
		font-size: 1rem;
		padding: 0.8rem 1.75rem;
	}
}

.header__container {
	padding-top: 5rem;
	display: grid;
}

.header__image {
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.header__image::before {
	position: absolute;
	content: "";
	height: 100%;
	width: 100%;
	top: 0;
	left: 5rem;
	background-color: var(--primary-color);
	opacity: 0.2;
	border-top-left-radius: 2rem;
	z-index: -1;
}

.header__content {
	padding-block: 2rem 5rem;
	padding-inline: 1rem;
}

.header__content h2 {
	width: fit-content;
	margin-inline: auto;
	margin-bottom: 1rem;
	padding: 0.5rem 1.5rem;
	font-size: 1rem;
	font-weight: 500;
	color: var(--primary-color);
	background-color: var(--white);
	border-radius: 5rem;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.05);
}

.header__content h1 {
	margin-bottom: 2rem;
	font-size: 3.5rem;
	font-weight: 800;
	color: var(--text-dark);
	text-align: center;
}

.header__form form {
	max-width: 900px;
	margin-inline: auto;
	padding: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1rem;
	background-color: var(--white);
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
	border-radius: 1rem;
}

.header__form .input__group {
	flex: 1 0 170px;
	display: grid;
	gap: 10px;
}

.header__form label {
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--text-dark);
}

.header__form input {
	width: 100%;
	outline: none;
	border: none;
	font-size: 1rem;
	color: var(--text-light);
}

.header__form input::placeholder {
	color: var(--text-light);
}

.header__form .btn {
	padding: 15px 17px;
}

.about__container .section__description {
	max-width: 600px;
	margin-inline: auto;
	margin-bottom: 4rem;
}

.about__grid {
	display: grid;
	gap: 2rem 1rem;
}

.about__card {
	max-width: 300px;
	margin-inline: auto;
	text-align: center;
}

.about__card span {
	display: inline-block;
	margin-bottom: 2rem;
	font-size: 2.5rem;
	padding: 16px 26px;

	border-radius: 1.25rem;
	box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.05);
}

.about__card:nth-child(1) span {
	color: #8a79f0;
	background-color: #eeebfd;
}

.about__card:nth-child(2) span {
	color: #fba55b;
	background-color: #fff2e8;
}

.about__card:nth-child(3) span {
	color: #ee6a6f;
	background-color: #fde9ea;
}

.about__card h4 {
	margin-bottom: 10px;
	font-size: 1.2rem;
	font-weight: 600;
	color: var(--text-dark);
}

.about__card p {
	color: var(--text-light);
	line-height: 1.5rem;
}

.deals {
	background-color: var(--extra-light);
}

.deals__container .section__description {
	max-width: 600px;
	margin-inline: auto;
	margin-bottom: 4rem;
}

.deals__tabs {
	margin-bottom: 2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.deals__tabs .btn {
	font-weight: 600;
	color: var(--primary-color-dark);
	background-color: var(--white);
}

.deals__tabs .btn.active {
	color: var(--white);
	background-color: var(--primary-color);
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
}

.deals__container .tab__content {
	display: none;
	gap: 1rem;
	animation: fadeEffect 1s;
}

.deals__container .tab__content.active {
	display: grid;
}

@keyframes fadeEffect {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

.deals__card {
	padding: 1rem;
	background-color: var(--white);
	border-radius: 1rem;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
}

.deals__card img {
	margin-bottom: 1rem;
}

.deals__rating {
	margin-bottom: 1rem;
	color: goldenrod;
}

.deals__rating span:last-child {
	color: var(--text-light);
}

.deals__card h4 {
	margin-bottom: 1rem;
	font-size: 1.2rem;
	font-weight: 600;
	color: var(--text-dark);
}

.deals__card__grid {
	margin-bottom: 2rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
}

.deals__card__grid div {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--text-light);
}

.deals__card__grid div span {
	font-size: 1.2rem;
}

.deals__card__footer {
	margin-top: 1rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}

.deals__card__footer h3 {
	font-size: 1.75rem;
	font-weight: 600;
	color: var(--text-dark);
}

.deals__card__footer h3 span {
	font-size: 0.9rem;
	font-weight: 400;
	color: var(--text-light);
}

.deals__card__footer a {
	font-weight: 600;
	color: var(--primary-color);
}

.deals__card__footer a:hover {
	color: var(--primary-color-dark);
}

.choose__container {
	display: grid;
}

.choose__content {
	padding-block: 2rem 5rem;
	padding-inline: 1rem;
}

.choose__grid {
	margin-top: 3rem;
	display: grid;
	gap: 2rem 1rem;
}

.choose__card {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
}

.choose__card span {
	padding: 5px 7px;
	font-size: 1.5rem;
	background-color: var(--extra-light);
	color: var(--primary-color);
	border-radius: 0.5rem;
}

.choose__card h4 {
	margin-bottom: 5px;
	font-size: 1.1rem;
	font-weight: 500;
	color: var(--text-dark);
}

.choose__card p {
	font-size: 0.9rem;
	color: var(--text-light);
	line-height: 1.5rem;
}

.subscribe__container {
	position: relative;
	isolation: isolate;
	display: grid;
	overflow: hidden;
	background-color: var(--extra-light);
}

.subscribe__container::before,
.subscribe__container::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 3rem;
	top: 0;
	left: 0;
	background-color: var(--white);
	z-index: -1;
}

.subscribe__container::after {
	top: unset;
	bottom: 0;
}

.subscribe__content {
	padding-block: 2rem 8rem;
	padding-inline: 1rem;
}

.subscribe__content form {
	margin-top: 2rem;
	margin-inline: auto;
	width: 100%;
	max-width: 500px;
	display: flex;
	align-items: center;
	background-color: var(--white);
	border-radius: 5px;
}

.subscribe__content input {
	width: 100%;
	outline: none;
	border: none;
	font-size: 1rem;
	color: var(--text-dark);
	padding-inline: 1rem;
	background-color: transparent;
}

.subscribe__content .btn {
	padding-block: 1rem;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

.client__container {
	padding-bottom: 1rem;
}

.client__container .section__description {
	max-width: 600px;
	margin-inline: auto;
}

.swiper {
	padding-block: 4rem;
	width: 100%;
}

.swiper-slide {
	min-width: 375px;
}

.client__card {
	padding: 1.5rem;
	background-color: var(--white);
	border-radius: 1rem;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.05);
	transition: 0.3s;
}

.client__card:hover {
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
}

.client__details {
	margin-bottom: 1rem;
	display: flex;
	align-items: center;
	gap: 1rem;
}

.client__details img {
	max-width: 50px;
	border-radius: 100%;
}

.client__details h4 {
	margin-bottom: 5px;
	font-size: 1.1rem;
	font-weight: 600;
	color: var(--text-dark);
}

.client__rating {
	color: goldenrod;
}

.client__card p {
	color: var(--text-light);
	line-height: 1.5rem;
}

@media (width > 540px) {
	.about__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.deals__container .tab__content {
		grid-template-columns: repeat(2, 1fr);
	}

	.choose__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (width > 768px) {
	.header__container {
		grid-template-columns:
			minmax(0, 1fr)
			minmax(0, calc(var(--max-width) / 2))
			minmax(0, calc(var(--max-width) / 2))
			minmax(0, 1fr);
	}

	.header__image {
		grid-area: 1/3/2/5;
		height: 100%;
	}

	.header__image img {
		padding-bottom: 5rem;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%);
		width: unset;
		height: 100%;
	}

	.header__content {
		padding-block: 2rem 10rem;
		grid-area: 1/2/2/3;
	}

	.header__content h2 {
		margin-inline-start: unset;
	}

	.header__content :is(h1, .section__description) {
		text-align: left;
	}

	.header__form form {
		padding: 1.5rem;
		transform: translateY(-50%);
	}

	.about__container {
		padding-top: 3rem;
	}

	.about__grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.deals__container .tab__content {
		grid-template-columns: repeat(3, 1fr);
	}

	.choose__container {
		grid-template-columns:
			minmax(0, 1fr)
			minmax(0, calc(var(--max-width) / 2))
			minmax(0, calc(var(--max-width) / 2))
			minmax(0, 1fr);
	}

	.nav-web-logo {
		display: block;
	}
	.nav-mobile-logo {
		display: none;
	}
	.choose__image {
		position: relative;
		isolation: isolate;
		grid-area: 1/1/2/3;
		height: 100%;
	}

	.choose__image img {
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		width: unset;
		height: 100%;
	}

	.choose__content {
		padding-block: 5rem;
		grid-area: 1/3/2/4;
	}

	.choose__content :is(.section__header, .section__description) {
		text-align: center;
	}

	.subscribe__container {
		grid-template-columns:
			minmax(0, 1fr)
			minmax(0, calc(var(--max-width) / 2))
			minmax(0, calc(var(--max-width) / 2))
			minmax(0, 1fr);
	}

	.subscribe__image {
		position: relative;
		isolation: isolate;
		grid-area: 1/3/2/5;
		height: 100%;
	}

	.subscribe__image img {
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%);
		width: unset;
		height: 100%;
	}

	.subscribe__content {
		padding-block: 8rem;
		grid-area: 1/2/2/3;
	}

	.subscribe__content :is(.section__header, .section__description) {
		text-align: center;
	}

	.subscribe__content form {
		margin-inline-start: unset;
	}
}

@media (width > 1024px) {
	.deals__container .tab__content {
		gap: 1.5rem;
	}

	.deals__card {
		padding: 1.5rem;
	}
}
