* {
	box-sizing: border-box;
	scroll-behavior: smooth;
}
html,
body {
	background-color: #f5f6fa;
}
body {
	padding: 0;
	margin: 0;
	font-family: sans-serif;
}
form input {
	width: 100%;
}

a {
	text-decoration: none;
}
h2 {
	font-size: 50px;
	font-weight: 500;
	color: #333;
	span {
		color: #0d5529;
	}
}

.content-wrapper {
	max-width: 1200px;
	padding: 0 20px;
	margin: 0 auto;
}
.action-button {
	padding: 18px;
	border-radius: 10px;
	color: #0d4222;
	width: max-content;
}
.button-light {
	background-color: #fff;
}

/* Navbar Styles */
.site-header {
	background: linear-gradient(to right, #147c3d, #0a2d41);
	color: white;
	position: relative;
}

.site-header-content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 15px 20px;
}

.brand-logo {
	display: flex;
	flex-direction: column;
	img {
		width: 90%;
	}
}

.navigation-menu {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
}

.navigation-menu li {
	margin-left: 30px;
}

.navigation-menu a {
	color: white;
	font-size: 16px;
	position: relative;
	padding-bottom: 5px;
}

.navigation-menu a:hover::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 2px;
	background-color: white;
	bottom: -5px;
	left: 0;
}

.mobile-nav-toggle {
	display: none;
	flex-direction: column;
	cursor: pointer;
	z-index: 100;
}

.mobile-nav-toggle span {
	width: 30px;
	height: 3px;
	background-color: white;
	margin: 3px 0;
	transition: 0.3s;
	border-radius: 2px;
}

/* Mobile menu */
.mobile-navigation {
	position: fixed;
	top: 0;
	right: -100%;
	width: 70%;
	height: 100%;
	background-color: #0a2d41;
	z-index: 99;
	transition: 0.5s;
	padding: 80px 20px 20px;
	box-shadow: -5px 0 15px rgba(0, 0, 0, 0.2);
}

.mobile-navigation.active {
	right: 0;
}

.mobile-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.mobile-navigation li {
	margin: 20px 0;
}

.mobile-navigation a {
	color: white;
	font-size: 18px;
	display: block;
	padding: 10px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.menu-backdrop {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 98;
	opacity: 0;
	visibility: hidden;
	transition: 0.3s;
}

.menu-backdrop.active {
	opacity: 1;
	visibility: visible;
}

/* Media Queries */
@media (max-width: 992px) {
	.navigation-menu {
		display: none;
	}

	.mobile-nav-toggle {
		display: flex;
	}

	.vertical-line {
		display: none;
	}

	.site-header {
		background: #147c3d;
	}
}

/* Hero Section Styles */
.main-banner {
	padding: 60px 0;
	background-color: #fff;
	position: relative;
	overflow: hidden;
}

.main-banner-content {
	display: flex;
	justify-content: space-between;
	gap: 40px;
}

.banner-text {
	flex: 1;
	max-width: 600px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.banner-heading-group {
	margin-bottom: 100px;
}
.banner-pre-title {
	font-size: 18px;
	color: #555;
	margin-bottom: 20px;
	line-height: 1.5;
}

.banner-main-heading {
	font-size: 48px;
	font-weight: 700;
	margin-bottom: 30px;
	line-height: 1.1;
}

.heading-primary {
	color: #147c3d;
	display: block;
	margin-bottom: 10px;
}

.heading-secondary {
	color: #000;
	display: block;
}

.banner-subtitle {
	font-size: 20px;
	color: #333;
	margin-bottom: 40px;
	line-height: 1.5;
}

.banner-cta-button {
	display: inline-block;
	background-color: #0d4222;
	color: white;
	font-size: 18px;
	font-weight: 600;
	padding: 15px 30px;
	border-radius: 8px;
	transition: background-color 0.3s ease;
}

.banner-cta-button:hover {
	background-color: #0e6230;
}

.banner-visual {
	flex: 1;
	max-width: 650px;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.banner-visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 16px;
	background-color: #147c3d;
}
.mobile-only {
	display: none;
}

/* Media queries for responsiveness */
@media (max-width: 992px) {
	.main-banner-content {
		flex-direction: column;
		gap: 20px;
	}

	.banner-subtitle {
		margin-bottom: 0;
	}
	.mobile-only {
		display: block;
		text-align: center;
		padding: 20px 0;
		margin-top: 40px;
	}

	.desktop-only {
		display: none;
	}
	.banner-text {
		max-width: 100%;
		text-align: enter;
	}

	.banner-visual {
		max-width: 100%;
	}

	.banner-main-heading {
		font-size: 40px;
	}
	.banner-heading-group {
		margin-bottom: 0;
	}
}

@media (max-width: 576px) {
	.main-banner {
		padding: 40px 0;
	}

	.banner-main-heading {
		font-size: 32px;
	}

	.banner-pre-title {
		font-size: 16px;
	}

	.banner-subtitle {
		font-size: 18px;
	}
}

.trust-section {
	p {
		margin: 0;
		color: #fff;
		line-height: 130%;
		font-weight: 300;
		font-size: 18px;
	}
	.trust-section-layout {
		display: flex;
		gap: 22px;
		div {
			flex: 0 1 50%;
			img {
				width: 100%;
			}
		}
	}
	.trust-section-details {
		padding: 50px 27px;
		gap: 30px;
		border-radius: 20px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		background: linear-gradient(to bottom, #147c3d, #0a2d41);
	}

	.stats-bar {
		margin-top: 22px;
		border-radius: 10px;
		padding: 34px 40px;
		display: grid;
		gap: 30px;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		justify-content: space-between;
		background: linear-gradient(to left, #147c3d, #0a2d41);
		flex-wrap: wrap;
		h4 {
			margin: 0 0 10px 0;
			font-size: 40px;
			font-weight: 500;
			color: #fff;
		}
		/* div {
			flex: 0 1 20%;
		} */
	}
}
.partners-section {
	padding: 50px 0;
	.partners-heading-area {
		display: flex;
		gap: 20px;
		justify-content: space-between;
		align-items: center;
		h2 {
			flex: 0 1 50%;
			margin: 0;
		}
		h4 {
			flex: 0 1 30%;
			font-size: 18px;
			font-weight: 300;
			line-height: 130%;
		}
	}
	.partners-logo-grid {
		display: flex;
		gap: 20px;
		justify-content: space-between;
		img {
			flex: 0 1 100%;
		}
	}
}
.cta-form-section {
	.cta-form-container {
		padding: 100px 60px;
		border-radius: 20px;
		background-image: url('../img/bg-form-1.png');
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
	}
	h2 {
		color: #fff;
		margin: 0%;
	}
	h4 {
		color: #fff;
		font-size: 24px;
		font-weight: 300;
	}
	.tablet-visible {
		display: none;
	}
	.cta-form-layout {
		display: flex;
		gap: 25px;
	}
	.form-enclosure {
		border-radius: 20px;
		background-color: rgba(255, 255, 255, 0.1);
		padding: 14px;
		backdrop-filter: blur(5px);
		form {
			display: flex;
			gap: 11px;
			flex-direction: column;
			background-color: #fff;
			border-radius: 20px;
			padding: 38px 32px 19px;
			h5 {
				font-size: 25px;
				font-weight: 500;
				margin: 0;
			}
			input {
				background: #f2f2f2;
				border: none;
				border-radius: 5px;
				padding: 22px 18px;
			}
			.btn-form {
				border: none;
				width: 100%;
				background: linear-gradient(to right, #147c3d, #0a2d41);
				color: #fff;
				transition: 0.2s;
				cursor: pointer;
			}
			.btn-form:hover {
				transform: scale(103%);
			}
		}
	}
}
.conditions-section {
	.section-badge {
		padding: 10px;
		font-size: 15px;
		border-radius: 5px;
		color: #fff;
		background-color: #109143;
		width: max-content;
		margin-bottom: 20px;
	}
	.conditions-container {
		padding: 100px 60px;
		border-radius: 20px;
		background-image: url('../img/sf-bg.jpg');
		background-repeat: no-repeat;
		background-size: cover;
	}
	h2 {
		color: #fff;
		margin: 0%;
	}
	h4 {
		color: #fff;
		font-size: 24px;
		font-weight: 300;
	}
	.tablet-visible {
		display: none;
	}
	.conditions-layout {
		display: flex;
		gap: 25px;
	}
	.conditions-text {
		flex: 0 1 50%;
	}
	.conditions-visual {
		flex: 0 1 50%;
		img {
			width: 100%;
			border-radius: 20px;
		}
		.visual-mobile {
			display: none;
		}
	}
	.conditions-cta-button {
		margin-top: 36px;
		display: block;
	}
	/* Стили для списка с зелеными кружками */
	.conditions-list {
		list-style: none;
		padding: 0;
		margin-top: 25px;
	}

	.conditions-list li {
		position: relative;
		padding-left: 26px;
		margin-bottom: 15px;
		color: #fff;
		font-size: 18px;
		font-weight: 300;
		line-height: 1.4;
	}

	.conditions-list li:before {
		content: '';
		position: absolute;
		left: 0;
		top: 4px;
		width: 16px;
		height: 16px;
		background-color: #27ae60;
		border-radius: 50%;
	}
	.mobile-view {
		display: none;
	}
}

@media (max-width: 992px) {
	h2 {
		font-size: 30px;
	}
	p {
		font-size: 16px;
	}
	.trust-section {
		.trust-section-layout {
			flex-direction: column;
			align-items: center;
		}
		.stats-bar {
			grid-template-columns: 1fr 1fr;
			h4 {
				font-size: 25px;
			}
			p {
				font-size: 12px;
			}
		}
	}
	.partners-section {
		.partners-heading-area {
			h4 {
				flex: 0 1 50%;
			}
		}
		.partners-logo-grid {
			flex-wrap: wrap;
			img {
				width: 100%;
				max-width: 182px;
			}
		}
	}
	.cta-form-section {
		.cta-form-text {
			flex: 0 1 45%;
		}
		.primary-heading-style {
			display: none;
		}
		.cta-form-container {
			padding: 57px 25px;
		}
		.tablet-visible {
			display: block;
			font-size: 43px;
			margin-bottom: 20px;
		}
		.form-enclosure {
			form {
				padding: 27px 22px 13px;
			}
		}
	}
	.conditions-section {
		.primary-heading-style {
			display: none;
		}
		.conditions-container {
			padding: 57px 25px;
		}
		.tablet-visible {
			display: block;
			font-size: 43px;
			margin-bottom: 20px;
		}
	}
}

@media (max-width: 670px) {
	.partners-section {
		.partners-heading-area {
			flex-direction: column;
			gap: 0;
		}
		.partners-logo-grid {
			justify-content: center;

			img {
				max-width: 105px;
			}
		}
	}
	.cta-form-section {
		.cta-form-layout {
			flex-direction: column;
		}
		.cta-form-text {
			flex: 0 1 auto;
		}
		.primary-heading-style {
			display: block;
		}
		.cta-form-container {
			padding: 45px 17px;
		}
		.tablet-visible {
			display: none;
		}
		.form-enclosure {
			padding: 10px;
			form {
				h5 {
					font-size: 18px;
				}
			}
		}
	}
	.conditions-section {
		.desktop-view {
			display: none;
		}
		.mobile-view {
			display: block;
		}
		.conditions-layout {
			flex-direction: column;
			gap: 0;
		}
		.conditions-text {
			padding: 0 17px 45px;
			flex: 0 1 auto;
		}
		.primary-heading-style {
			display: block;
		}
		.conditions-container {
			padding: 0;
		}
		.tablet-visible {
			display: none;
		}
		.conditions-text {
			order: 1;
		}
		.conditions-cta-button {
			width: 100%;
			text-align: center;
		}
		.conditions-visual {
			.visual-desktop {
				display: none;
			}
			.visual-mobile {
				display: block;
			}
		}
	}
}
/* Стили для секции "О проекте" */
.about-project-section {
	padding: 70px 0;
	background-color: #fff;
}

.about-project-layout {
	display: flex;
	gap: 40px;
}

.about-project-heading {
	flex: 0 0 30%;
}
.about-project-heading h2 {
	font-size: 50px;
	font-weight: 500;
	color: #333;
	margin: 0 0 20px 0;
}

.about-project-heading h2 span {
	color: #0d5529;
}

.project-introduction {
	margin-bottom: 30px;
	border-bottom: 1px solid #e0e0e0;
	padding-bottom: 30px;
}

.project-introduction p {
	font-size: 18px;
	line-height: 1.6;
	color: #333;
	margin: 0;
}

.about-project-details {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.feature-item {
	display: flex;
	border-bottom: 1px solid #e0e0e0;
	padding: 30px 0;
}
.feature-item-header {
	display: flex;
	gap: 20px;
	flex: 0 0 40%;
}

.feature-item-index {
	font-size: 24px;
	font-weight: 700;
	color: #147c3d;
}

.feature-item-heading {
	padding-right: 20px;
}

.feature-item-heading h3 {
	font-size: 22px;
	font-weight: 500;
	color: #333;
	margin: 0;
	line-height: 1.3;
}

.feature-item-description {
	flex: 1;
}

.feature-item-description p {
	font-size: 16px;
	line-height: 1.5;
	color: #555;
	margin: 0 0 15px 0;
}

.feature-item-description p:last-child {
	margin-bottom: 0;
}

/* Адаптивные стили */
@media (max-width: 992px) {
	.feature-item {
		gap: 20px;
	}
	.feature-item-index {
	}
	.about-project-layout {
		flex-direction: column;
		gap: 10px;
	}
	.feature-item-heading {
		padding-right: 0;
	}

	.project-introduction {
		max-width: 100%;
	}
}

@media (max-width: 576px) {
	.about-project-section {
		padding: 40px 0;
	}

	.about-project-heading h2 {
		font-size: 36px;
	}
	.feature-item {
		flex-direction: column;
	}

	.feature-item-index {
		font-size: 20px;
	}

	.feature-item-heading h3 {
		font-size: 18px;
	}

	.project-introduction p,
	.feature-item-description p {
		font-size: 14px;
	}
}

/* Стили для секции "Кураторы программы" */
.team-section {
	padding: 70px 0;
}

.team-container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.team-heading-area {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	align-items: center;
	gap: 30px;
}

.team-main-heading {
	font-weight: 500;
	color: #333;
	margin: 0;
	flex: 0 1 50%;
}

.team-quote {
	flex: 0 1 50%;
}

.team-quote p {
	font-size: 18px;
	line-height: 1.6;
	color: #333;
	margin: 0;
}

.team-member-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.team-member-profile {
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	background-color: #f5f6fa;
}

.member-photo {
	width: 100%;
	height: 310px;
	aspect-ratio: 1;
	overflow: hidden;
}

.member-photo img {
	width: 100%;
	height: 350px;
	object-fit: cover;
}

.member-details {
	padding: 20px 20px 20px 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.member-name {
	font-size: 20px;
	font-weight: 500;
	color: #0d5529;
	margin: 0;
	line-height: 1.3;
}

.member-title {
	font-size: 14px;
	line-height: 1.4;
	color: #666;
	margin: 0;
}

/* Медиа-запросы для адаптивности */
@media (max-width: 1200px) {
	.team-member-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 992px) {
	.team-heading-area {
		flex-direction: column;
		gap: 20px;
	}

	.team-quote {
		flex: 0 1 100%;
	}

	.team-quote p {
		font-size: 16px;
	}
}

@media (max-width: 576px) {
	.team-section {
		padding: 40px 0;
	}

	.team-member-grid {
		grid-template-columns: 1fr;
	}

	.member-name {
		font-size: 18px;
	}

	.member-title {
		font-size: 13px;
	}
}

/* Стили для секции "Процесс возврата средств" */
.process-flow-section {
	padding: 70px 0;
	background-color: #fff;
}

.process-flow-container {
	display: flex;
	flex-direction: column;
	gap: 50px;
}

.process-heading-area {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
}

.process-main-heading {
	font-size: 50px;
	font-weight: 500;
	color: #333;
	margin: 0;
	flex: 0 1 50%;
}

.process-subtitle {
	flex: 0 1 50%;
	align-self: center;
}

.process-subtitle p {
	font-size: 18px;
	line-height: 1.6;
	color: #333;
	margin: 0;
}

.process-steps-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.step-card {
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 50px;
	padding: 30px;
	height: 380px;
	position: relative;
}

.step-card-light {
	background-color: #fff;
	color: #333;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.step-card-accent1 {
	background: linear-gradient(to bottom, #0745b1, #0a2d41);
	color: #fff;
}

.step-card-accent2 {
	background-color: #147c3d;
	color: #fff;
}

.step-card-accent3 {
	background: linear-gradient(to top, #147c3d, #0a2d41);
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

.step-index {
	width: 100%;
	font-size: 42px;
	font-weight: 700;
	margin-bottom: 20px;
}

.step-description {
	font-size: 20px;
	line-height: 1.5;
}

.step-description p {
	margin: 0;
}

.step-cta-container {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: auto;
}

.apply-now-button {
	width: 100%;
	display: inline-block;
	background-color: #fff;
	color: #1a4336;
	font-size: 18px;
	font-weight: 500;
	padding: 15px 30px;
	border-radius: 10px;
	text-align: center;
	transition: all 0.3s ease;
	border: none;
	cursor: pointer;
	text-decoration: none;
}

.apply-now-button:hover {
	transform: translateY(-3px);
	box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
}

/* Медиа-запросы для адаптивности */
@media (max-width: 1200px) {
	.process-steps-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.step-card {
		height: 300px;
	}
}

@media (max-width: 992px) {
	.process-main-heading {
		font-size: 36px;
	}
}

@media (max-width: 650px) {
	.process-heading-area {
		flex-direction: column;
		gap: 20px;
	}
}
@media (max-width: 576px) {
	.process-flow-section {
		padding: 40px 0;
	}

	.process-steps-grid {
		grid-template-columns: 1fr;
	}

	.step-card {
		height: auto;
		min-height: 200px;
	}

	.step-description {
		font-size: 18px;
	}
}

/* Стили для секции с документами */
.legal-docs-section {
	padding: 70px 0;
	background-color: #f5f6fa;
}

.legal-docs-heading {
	font-size: 61px;
	font-weight: 500;
	color: #333;
	margin-bottom: 40px;
	text-align: left;
	line-height: 1.2;
}

.legal-docs-heading span {
	color: #0d5529;
}

.legal-docs-layout {
	display: flex;
	gap: 40px;
}

.legal-info-panel {
	flex: 0 1 50%;
	display: flex;
	gap: 20px;
	flex-direction: column;
	justify-content: space-between;
	background: linear-gradient(to top, #0a2d41, #0d572a);
	border-radius: 20px;
	padding: 30px;
	color: white;
}

.legal-acts-panel {
	flex: 0 1 50%;
	background: linear-gradient(to bottom, #eeeeee, #c2c2c2);

	border-radius: 20px;
	padding: 30px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.legal-info-panel p {
	font-size: 18px;
	line-height: 1.5;
	margin: 0;
}

.info-panel-quote {
	border-left: 3px solid white;
	padding-left: 20px;
	margin-top: 30px;
}

.info-panel-quote p {
	font-style: italic;
}

.legal-acts-panel h3 {
	font-size: 20px;
	font-weight: 500;
	margin-bottom: 20px;
	color: #333;
}

.legal-acts-list {
	list-style: none;
	padding: 0;
	margin-bottom: 30px;
}

.legal-acts-list li {
	position: relative;
	padding-left: 20px;
	margin: 0;
	font-size: 16px;
	line-height: 1.5;
	color: #333;
}

.legal-acts-list li:before {
	content: '•';
	position: absolute;
	left: 0;
	color: #147c3d;
}

.pdf-links-area {
	margin-top: 30px;
}

.pdf-links-grid {
	display: flex;
	gap: 20px;
	justify-content: space-between;
}

.pdf-link-item {
	flex: 1;
	border-radius: 10px;
	padding: 15px;
	text-align: center;
	cursor: pointer;
	transition: all 0.3s ease;
}

.pdf-link-item:hover {
	background: #e9e9e9;
	transform: translateY(-5px);
}

.pdf-file-icon {
	margin-bottom: 10px;
}

.pdf-file-icon img {
	width: 70px;
	height: auto;
}

.pdf-file-title {
	font-size: 14px;
	line-height: 1.3;
	color: #333;
}

/* Модальное окно для PDF */
.pdf-viewer-modal {
	display: none;
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.8);
}

.pdf-modal-box {
	position: relative;
	margin: 5% auto;
	width: 80%;
	height: 80%;
	background-color: white;
	border-radius: 10px;
	overflow: hidden;
}

.modal-close-button {
	position: absolute;
	right: 20px;
	top: 15px;
	color: #333;
	font-size: 28px;
	font-weight: bold;
	cursor: pointer;
	z-index: 1001;
}

.pdf-display-frame {
	width: 100%;
	height: 100%;
}

.pdf-display-frame iframe {
	border: none;
}

/* Адаптивные стили */
@media (max-width: 992px) {
	.legal-docs-layout {
		flex-direction: column;
	}

	.legal-info-panel,
	.legal-acts-panel {
		flex: 0 1 100%;
		padding: 15px;
	}

	.legal-docs-heading {
		font-size: 32px;
	}
}

@media (max-width: 768px) {
	.pdf-links-grid {
		gap: 0;
	}
	.pdf-link-item {
		padding: 10px;
	}
	.pdf-file-title {
		font-size: 10px;
	}
	.pdf-file-icon img {
		max-width: 70px;
		width: 100%;
	}

	.pdf-modal-box {
		width: 90%;
		height: 70%;
	}
}

@media (max-width: 576px) {
	.legal-docs-section {
		padding: 40px 0;
	}

	.legal-acts-panel {
		padding: 20px;
	}

	.legal-docs-heading {
		font-size: 26px;
	}

	.legal-info-panel p,
	.legal-acts-list li {
		font-size: 14px;
	}
}
#pdf-container {
	width: 100%;
	height: 100%;
	overflow: auto;
	-webkit-overflow-scrolling: touch; /* Для плавной прокрутки на iOS */
}

/* Стили только для мобильных устройств */
@media (max-width: 768px) {
	.pdf-modal-box {
		margin: 10% auto;
	}

	#pdf-container {
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

.blog-preview-section {
	padding: 70px 0;
	background-color: #f5f6fa;
}

.blog-preview-heading {
	margin-bottom: 40px;
}

.blog-preview-heading h2 {
	font-size: 50px;
	font-weight: 500;
	color: #333;
	margin: 0;
}

.blog-preview-heading h2 span {
	color: #0d5529;
}

.blog-post-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.post-preview-card {
	cursor: pointer;
	border-radius: 16px;
	overflow: hidden;
	transition: transform 0.3s ease;
}

.post-preview-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.post-preview-image {
	width: 100%;
	height: 220px;
	overflow: hidden;
}

.post-preview-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.post-preview-card:hover .post-preview-image img {
	transform: scale(1.05);
}

.post-preview-heading {
	padding: 20px 20px 10px;
	color: #0d5529;
	font-size: 22px;
	font-weight: 500;
	margin: 0;
	line-height: 1.3;
}

.post-preview-cta {
	display: block;
	padding: 0 20px 20px;
	color: #000;
	text-decoration: underline;
	font-size: 16px;
	font-weight: 400;
}

/* Медиа-запросы для адаптивности */
@media (max-width: 992px) {
	.blog-post-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.blog-preview-heading h2 {
		font-size: 40px;
	}
}

@media (max-width: 670px) {
	.blog-post-grid {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.blog-preview-heading h2 {
		font-size: 30px;
	}

	.post-preview-image {
		height: 200px;
	}
}

/* Стили для футера */
.site-footer {
	background: linear-gradient(to top, #0a2d41, #147c3d);
	padding: 80px 0;
	color: #fff;
}

.footer-layout {
	display: flex;
	justify-content: space-between;
	gap: 40px;
}

.footer-contact-info {
	flex: 0 1 45%;
}

.footer-main-heading {
	font-size: 50px;
	font-weight: 500;
	margin: 0 0 20px 0;
	line-height: 1.2;
	color: #fff;
}
.footer-heading-mobile {
	display: none;
}

.footer-main-heading span {
	color: #fff;
}

.footer-subheading {
	font-size: 18px;
	margin: 0 0 40px 0;
	line-height: 1.5;
	font-weight: 300;
}
.footer-subheading-mobile {
	display: none;
}

.contact-details-list {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.contact-detail p {
	margin: 0;
	font-size: 16px;
	color: #fff;
	line-height: 1.4;
	font-weight: 300;
}

.footer-form-enclosure {
	flex: 0 1 50%;
}

.form-box {
	background-color: rgba(255, 255, 255, 0.1);
	border-radius: 20px;
	padding: 14px;
	backdrop-filter: blur(5px);
}

.form-box form {
	display: flex;
	flex-direction: column;
	gap: 11px;
	background-color: #fff;
	border-radius: 20px;
	padding: 38px 32px 30px;
}

.form-box h5 {
	font-size: 22px;
	font-weight: 500;
	color: #333;
	margin: 0 0 15px 0;
	text-align: center;
}

.form-box input {
	background: #f2f2f2;
	border: none;
	border-radius: 5px;
	padding: 18px 16px;
	font-size: 16px;
}

.btn-form {
	border: none;
	width: 100%;
	background: linear-gradient(to right, #147c3d, #0a2d41);
	color: #fff;
	transition: 0.2s;
	cursor: pointer;
	font-size: 16px;
	font-weight: 500;
	padding: 16px;
	margin-top: 10px;
}

.btn-form:hover {
	transform: scale(1.03);
}

/* Медиа-запросы для адаптивности */
@media (max-width: 992px) {
	.site-footer {
		padding: 50px 0;
	}

	.form-box form {
		padding: 38px 20px 30px;
	}

	.footer-form-enclosure {
		flex: 0 1 100%;
	}
	.footer-form-enclosure {
		margin: 0 10px;
	}
	.footer-heading-mobile {
		display: block;
		text-align: center;
	}
	.footer-title-desc {
		display: none;
	}
}

@media (max-width: 576px) {
	.site-footer {
		padding: 40px 0;
	}
	.footer-layout {
		flex-direction: column;
	}
	.footer-contact-info {
		order: 1;
	}

	.footer-main-heading {
		font-size: 28px;
	}

	.footer-subheading {
		font-size: 16px;
		margin-bottom: 30px;
	}
	.footer-heading-mobile {
		text-align: left;
	}
	.footer-subheading-mobile {
		display: block;
	}
	.footer-subtitle-desc {
		display: none;
	}
	.contact-detail p {
		font-size: 14px;
	}

	.form-box {
		padding: 10px;
	}

	.form-box form {
		padding: 25px 20px 20px;
	}

	.form-box h5 {
		font-size: 18px;
	}

	.form-box input {
		padding: 14px 12px;
	}
}

/* Стили для нижнего блока футера */
.sub-footer {
	padding-top: 40px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	margin-top: 40px;
}

.sub-footer-layout {
	display: flex;
	justify-content: space-between;
	gap: 40px;
}

.sub-footer-brand {
	flex: 0 1 50%;
}

.sub-footer-logo-img {
	margin-bottom: 15px;
}

.sub-footer-logo-img img {
	width: 150px;
	height: auto;
}

.sub-footer-tagline {
	font-size: 14px;
	line-height: 1.5;
	max-width: 300px;
	color: #fff;
	margin: 0;
	opacity: 0.8;
}

.sub-footer-nav {
	flex: 0 1 70%;
	display: flex;
	gap: 40px;
	justify-content: flex-end;
}

.nav-column {
	flex: 0 1 40%;
}

.nav-column-title {
	font-size: 16px;
	font-weight: 600;
	color: #fff;
	margin: 0 0 20px 0;
}

.nav-column-links {
	list-style: none;
	padding: 0;
	margin: 0;
}

.nav-column-links li {
	margin-bottom: 12px;
}

.nav-column-links a {
	color: #fff;
	font-size: 14px;
	opacity: 0.8;
	transition: opacity 0.3s ease;
	text-decoration: none;
}

.nav-column-links a:hover {
	opacity: 1;
	text-decoration: underline;
}

.copyright-area {
	text-align: center;
	margin-top: 40px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.copyright-area p {
	margin: 0;
	font-size: 14px;
	color: #fff;
	opacity: 0.7;
}

/* Адаптивные стили для мобильных устройств */
@media (max-width: 992px) {
	.sub-footer-layout {
		flex-direction: column;
		gap: 30px;
	}

	.sub-footer-brand {
		flex: 0 1 100%;
		text-align: center;
	}

	.sub-footer-nav {
		flex: 0 1 100%;
		justify-content: space-between;
	}
}

@media (max-width: 576px) {
	.sub-footer-nav {
		flex-direction: column;
		gap: 30px;
	}

	.nav-column {
		flex: 0 1 100%;
	}

	.nav-column-title {
		margin-bottom: 15px;
	}

	.nav-column-links li {
		margin-bottom: 10px;
	}
}

.modal-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 1000;
	overflow: auto;
}

.modal-dialog {
	position: relative;
	width: 100%;
	max-width: 550px;
	margin: 50px auto;
	background-color: #fff;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
	animation: popup-fade 0.3s ease-in-out;
}

@keyframes popup-fade {
	from {
		opacity: 0;
		transform: translateY(-20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.dialog-close-button {
	position: absolute;
	top: 10px;
	right: 10px;
	font-size: 24px;
	color: white;
	background-color: rgba(0, 0, 0, 0.3);
	width: 30px;
	height: 30px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	z-index: 1001;
}

.modal-dialog-image {
	width: 100%;
	height: 250px;
	overflow: hidden;
}

.modal-dialog-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.modal-dialog-form-area {
	background: linear-gradient(to top, #0d5529, #0a2d41);
	padding: 25px 20px;
	color: white;
}

.modal-dialog-form-area h2 {
	text-align: center;
	font-size: 24px;
	margin: 0 0 20px 0;
	color: #fff;
	font-weight: 500;
	line-height: 1.3;
}

#popup-form {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

#popup-form input {
	padding: 15px;
	border: none;
	border-radius: 5px;
	font-size: 16px;
	background-color: white;
}

.modal-submit-button {
	padding: 15px;
	background-color: #147c3d;
	color: white;
	border: none;
	border-radius: 5px;
	font-size: 16px;
	cursor: pointer;
	margin-top: 5px;
	transition: background-color 0.3s;
}

.modal-submit-button:hover {
	background-color: #0d5529;
}

/* Responsive adjustments */
@media (max-width: 600px) {
	.modal-dialog {
		width: 90%;
		margin: 30px auto;
	}

	.modal-dialog-form-area h2 {
		font-size: 20px;
	}

	.modal-dialog-image {
		height: 200px;
	}
}

.iti__selected-flag {
	color: #333;
}
