/* ===== SECTION: Hero Banner - Start ===== */
.hero-banner-section {
	padding-top: calc(var(--container-indent) / 2);
	padding-bottom: calc(var(--container-indent) / 2);
}

.hero-banner {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
}

.hero-banner .hero-bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.hero-banner .hero-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 30px;
	padding: 60px 0;
	max-width: 1000px;
	margin: 0 auto;
	color: var(--white);
}

.hero-title .h1:first-child {
	text-indent: -120px;
}

.hero-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.hero-list li {
	padding-left: 24px;
	position: relative;
	font-size: var(--font-size-up-1);
}

.hero-list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--primary);
}

.hero-description {
	max-width: 920px;
	color: rgba(255,255,255,0.85);
}

.hero-buttons {
	margin-top: 10px;
}

@media (max-width: 1680px) {
	.hero-buttons {
		margin-top: 0px;
	}

	.hero-title .h1:first-child {
		text-indent: -90px;
	}
}

@media (max-width: 1400px) {
	.hero-title .h1:first-child {
		text-indent: -90px;
	}
	.hero-content {
		gap: 20px;
	}
}

@media (max-width: 1279px) {
	.hero-banner-section {
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.hero-banner {
		min-height: 500px;
		align-items: flex-end;
	}

	.hero-content {
		padding: 30px 20px;
		gap: 15px;
		height: 100%;
		width: 100%;
	}

	.hero-title .h1:first-child {
		text-indent: 0;
		max-width: 210px;
	}

	.hero-list {
		margin-top: auto;
	}

	.hero-description {
		font-size: 14px !important;
		line-height: 21px !important;
		margin-top: auto;
		max-width: 295px;
	}

	.hero-buttons {
		flex-direction: column;
		margin-top: 10px;
	}

	.hero-buttons .btn {
		width: 100%;
		text-align: center;
	}
}
/* ===== SECTION: Hero Banner - End ===== */

/* ===== SECTION: Services - Start ===== */
.services-section {
	padding-top: 40px;
	padding-bottom: 60px;
}

.services-header {
	margin-bottom: 40px;
}

.services-header .section-label {
	margin-bottom: 10px;
}

.services-header .h2 {
	text-align: right;
	white-space: nowrap;
}

/* Базовая карточка */
.service-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	position: relative;
	min-height: 23vw;
}

/* Текстурный оверлей через .before */
.service-card.before::before {
	opacity: 1;
	z-index: 0;
	border-radius: inherit;
}

.service-content {
	display: flex;
	flex-direction: column;
	gap: 15px;
	padding: 30px;
	position: relative;
	z-index: 1;
	height: 100%;
}

.service-content p {
	max-width: 360px;
}

.service-content .btn {
	align-self: flex-start;
	margin-top: auto;
}

.service-content .items-group {
	margin-top: auto;
}

.service-image {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 0;
}

.service-card-primary .service-image {
	bottom: 60px;
	left: 0;
	margin: 0 auto;
	width: 80%;
}

.service-card-light .service-image {
	bottom: 90px;
	margin: 0 auto;
	width: 70%;
}

.service-card-dark .service-image {
	bottom: 50px;
	margin: 0 auto;
	width: 55%;
}

.service-image img {
	width: 100%;
	height: auto;
	display: block;
}

/* Текст-ссылка с подчёркиванием */
.service-text-link {
	color: var(--primary);
	text-decoration: underline;
	font-weight: 500;
	transition: opacity 0.3s;
}

.service-text-link:hover {
	opacity: 0.7;
}

/* Вариант 1: Primary */
.service-card-primary {
	background: var(--primary);
	color: var(--white);
}

.service-card-primary .h4 {
	color: var(--white);
}

.service-card-primary p {
	color: rgba(255,255,255,0.85);
}

/* Вариант 2: Light */
.service-card-light {
	background: rgba(112,135,215,0.2);
	color: var(--primary);
}

.service-card-light .h4 {
	color: var(--primary);
}

.service-card-light .service-text-link {
	color: var(--primary);
}

.service-card-light .service-content p {
	max-width: 230px;
}

/* Вариант 3: Dark */
.service-card-dark {
	background: #292929;
	color: var(--white);
}

.service-card-dark .h4 {
	color: var(--white);
}

.service-card-dark p {
	color: rgba(255,255,255,0.85);
}

@media (max-width: 1680px) {
	.service-card-dark .service-content p {
		max-width: 210px;
	}
}

@media (max-width: 1400px) {
	.service-card-light .service-image {
		bottom: 90px;
		width: 60%;
	}
}

@media (max-width: 1279px) {
	.services-section {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.services-header {
		margin-bottom: 25px;
	}

	.services-header .h2 {
		text-align: left;
		white-space: normal;
	}

	.service-card {
		min-height: 380px;
	}

	.service-content {
		padding: 20px;
	}

	.service-card-primary {
		min-height: 350px;
	}

	.service-card-primary .service-image {
		bottom: 60px;
		left: 0;
		margin: 0 auto;
		width: 100%;
	}

	.service-card-light .service-image {
		bottom: 60px;
		margin: 0 auto;
		width: 90%;
	}

	.service-card-dark .service-image {
		bottom: 30px;
		margin: 0 auto;
		width: 80%;
	}
}
/* ===== SECTION: Services - End ===== */

/* ===== SECTION: Catalog - Start ===== */
.catalog-section {
	padding-top: 60px;
	padding-bottom: 60px;
}

.catalog-header {
	margin-bottom: 30px;
}

.catalog-header .section-label {
	margin-bottom: 10px;
}

.catalog-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: var(--blocks-indent);
}


/* Все карточки каталога */
.catalog-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	transition: opacity 0.3s;
	border-radius: 30px;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 264 239' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M41.371 8.877C47.004 3.196 54.673 0 62.674 0H234c16.569 0 30 13.431 30 30v179c0 16.569-13.431 30-30 30H30C13.431 239 0 225.569 0 209V62.951c0-7.913 3.126-15.505 8.697-21.123L41.371 8.877Z' fill='%23fff'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 264 239' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M41.371 8.877C47.004 3.196 54.673 0 62.674 0H234c16.569 0 30 13.431 30 30v179c0 16.569-13.431 30-30 30H30C13.431 239 0 225.569 0 209V62.951c0-7.913 3.126-15.505 8.697-21.123L41.371 8.877Z' fill='%23fff'/%3E%3C/svg%3E");
	mask-size: 100% 100%;
	-webkit-mask-size: 100% 100%;
}

.catalog-card:hover {
	opacity: 0.95;
}

.catalog-card-image {
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	height: 180px;
	padding: 20px 0 0px 20px;
	margin-right: -10px;
}

.catalog-card-image img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.catalog-card-bottom {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 10px;
	padding: 0 20px 20px;
	flex: 1;
}

.catalog-card-info {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.catalog-card-info p {
	font-size: 13px;
	line-height: 1.4;
}

/* Стрелка каталога */
.catalog-card-arrow {
	flex-shrink: 0;
	border-radius: 10px !important;
}

/* Цвет 1: Primary (1-й, 4-й, 7-й...) */
.catalog-card:nth-child(3n+1) {
	background: var(--primary);
	color: var(--white);
}

.catalog-card:nth-child(3n+1) .h4 {
	color: var(--white);
}

.catalog-card:nth-child(3n+1) p {
	color: rgba(255,255,255,0.8);
}

.catalog-card:nth-child(3n+1) .catalog-card-arrow {
	background: var(--white);
}

.catalog-card:nth-child(3n+1) .catalog-card-arrow .icon {
	filter: none;
}

/* Цвет 2: White (2-й, 5-й, 8-й...) */
.catalog-card:nth-child(3n+2) {
	background: var(--white);
	color: var(--black);
}

.catalog-card:nth-child(3n+2) p {
	color: var(--dark-gray);
}

.catalog-card:nth-child(3n+2) .catalog-card-arrow {
	background: var(--primary);
}

.catalog-card:nth-child(3n+2) .catalog-card-arrow .icon {
	filter: brightness(0) invert(1);
}

/* Цвет 3: Dark (3-й, 6-й, 9-й...) */
.catalog-card:nth-child(3n+3) {
	background: #292929;
	color: var(--white);
}

.catalog-card:nth-child(3n+3) .h4 {
	color: var(--white);
}

.catalog-card:nth-child(3n+3) p {
	color: rgba(255,255,255,0.8);
}

.catalog-card:nth-child(3n+3) .catalog-card-arrow {
	background: var(--primary);
}

.catalog-card:nth-child(3n+3) .catalog-card-arrow .icon {
	filter: brightness(0) invert(1);
}

.catalog-section .btn.center.mob {
	margin-top: 25px;
}

@media (max-width: 1680px) {
	.catalog-card-image {
		height: 160px;
	}
}

@media (max-width: 1279px) {
	.catalog-section {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.catalog-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.catalog-card {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 173 170' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M27.32 4.622C30.912 1.635 35.436 0 40.107 0H153c11.046 0 20 8.954 20 20v130c0 11.046-8.954 20-20 20H20C8.954 170 0 161.046 0 150V36.72c0-5.943 2.643-11.578 7.213-15.378L27.32 4.622Z' fill='%23fff'/%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 173 170' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M27.32 4.622C30.912 1.635 35.436 0 40.107 0H153c11.046 0 20 8.954 20 20v130c0 11.046-8.954 20-20 20H20C8.954 170 0 161.046 0 150V36.72c0-5.943 2.643-11.578 7.213-15.378L27.32 4.622Z' fill='%23fff'/%3E%3C/svg%3E");
		border-radius: 20px;
	}

	.catalog-card-image {
		height: 130px;
		padding: 10px 0px 15px 5px;
	}

	.catalog-card-bottom {
		padding: 0 15px 15px;
	}

	.catalog-card-info p {
		display: none;
	}

	.catalog-card-info .h4 {
		font-size: 14px;
		line-height: 18px;
	}

	.catalog-card-arrow {
		--icon-base: 12px;
		border-radius: 5px !important;
	}
}
/* ===== SECTION: Catalog - End ===== */

/* ===== SECTION: Bestsellers - Start ===== */
.bestsellers-section {
	padding-top: 50px;
	padding-bottom: 50px;
}

.bestsellers-section .h2 {
	margin-bottom: 30px;
}

.bestsellers-section .product-list + .btn {
	margin-top: 30px;
}

@media (max-width: 1279px) {
	.bestsellers-section {
		padding-top: 40px;
		padding-bottom: 40px;
	}
}
/* ===== SECTION: Bestsellers - End ===== */

/* ===== SECTION: New Products - Start ===== */
.new-products-section {
	padding-top: 60px;
	padding-bottom: 60px;
}

.swiper-buttons.outside.new-products-nav {
	justify-content: center;
	margin-top: 20px;
}

@media (max-width: 1279px) {
	.new-products-section {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.new-products-header {
		margin-bottom: 20px;
	}
	.swiper-buttons.outside.new-products-nav {
		margin-top: 15px;
	}
}
/* ===== SECTION: New Products - End ===== */

/* ===== SECTION: Banner - Start ===== */
.banner-section {
	padding-top: 50px;
	padding-bottom: 50px;
}

.banner-block {
	padding: 60px;
	color: var(--white);
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.banner-block .h1 {
	max-width: 580px;
}

@media (max-width: 1279px) {
	.banner-section {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.banner-block {
		padding: 40px;
	}
}

@media (max-width: 768px) {
	.banner-block {
		padding: 30px 20px;
	}

	.banner-block .h1 {
		max-width: 100%;
	}
}
/* ===== SECTION: Banner - End ===== */

/* ===== SECTION: Banners Group - Start ===== */
.banners-group-section {
	padding-top: 60px;
	padding-bottom: 60px;
}

.product-banner {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 15px;
	padding: 30px;
	background: var(--light-gray);
	overflow: hidden;
	min-height: 400px;
}

.product-banner::before {
	content: "";
	position: absolute;
	bottom: -100px;
	right: -100px;
	width: 300px;
	height: 300px;
	background: rgba(255, 255, 255, 0.5);
	border-radius: var(--radius-max);
}

.banner-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--primary);
	color: var(--primary-match);
	padding: 4px 10px;
	border-radius: var(--radius-small);
	width: fit-content;
	z-index: 2;
}

.product-banner > * {
	z-index: 2;
}

.product-banner p {
	color: var(--dark-gray);
	max-width: 70%;
}

.product-banner .items-group {
	align-items: baseline;
}

.product-banner del {
	color: var(--gray);
}

.banner-product-image {
	position: absolute;
	bottom: 0;
	right: 0;
	max-width: 45%;
	height: auto;
	z-index: 1;
}

@media (max-width: 1279px) {
	.banners-group-section {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.product-banner {
		padding: 25px;
		min-height: 350px;
	}

	.banner-product-image {
		max-width: 40%;
	}
}

@media (max-width: 768px) {
	.product-banner {
		padding: 20px;
		min-height: auto;
	}

	.banner-badge {
		display: none;
	}

	.product-banner p {
		max-width: 100%;
	}

	.banner-product-image {
		position: relative;
		max-width: 100%;
		margin-top: 20px;
	}
}
/* ===== SECTION: Banners Group - End ===== */

/* ===== SECTION: Sale - Start ===== */
.sale-section {
	padding-bottom: 50px;
}

.sale-section .h2 {
	margin-bottom: 30px;
}

.sale-section .product-list + .btn {
	margin-top: 30px;
}

@media (max-width: 1279px) {
	.sale-section {
		padding-bottom: 40px;
	}
}
/* ===== SECTION: Sale - End ===== */

/* ===== SECTION: CTA Banner - Start ===== */
.cta-section {
	padding-top: 40px;
}

.cta-banner {
	display: flex;
	padding: 40px;
	overflow: hidden;
}

.cta-banner.before::before {
	opacity: 1;
	z-index: 0;
	border-radius: inherit;
}

.cta-content {
	width: 40%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	z-index: 1;
	gap: 40px;
}

.cta-phone-btn {
	padding: 15px 25px;
	border-radius: var(--radius-small);
	width: fit-content;
	text-decoration: none;
}

.cta-phone-btn .icon-group-text {
	font-weight: 500;
	white-space: nowrap;
}

.cta-form-wrapper {
	width: 60%;
	position: relative;
	z-index: 1;
	max-width: 35vw;
	margin-left: auto;
}

.cta-buttons {
	margin-top: 20px;
}

.cta-form input.form-input {
	background: rgba(91, 121, 226, 0.6);
	color: var(--white);
}

.cta-form input.form-input::placeholder {
	color: rgba(255, 255, 255, 0.8);
	transform: none;
}

.cta-banner .cta-checkbox input + span {
	border-color: var(--white);
	width: 18px;
	height: 18px;
	min-width: 18px;
}

.cta-banner .cta-checkbox input:checked + span {
	border-color: var(--white);
}

.cta-banner .cta-checkbox input + span::after {
	top: 2px;
	left: 2px;
	width: 12px;
	height: 12px;
	background: var(--white);
}

.cta-banner .cta-checkbox span:last-child {
	color: var(--white);
}

.cta-icon-btn {
	width: var(--btn-height) !important;
	height: var(--btn-height) !important;
	flex-shrink: 0;
}

@media screen and (max-width: 1680px) {
	.cta-banner {
		padding: 30px;
	}
	.cta-content {
		gap: 30px;
	}
}

@media screen and (max-width: 1279px) {
	.cta-banner {
		flex-direction: column;
		gap: 30px;
		padding: 30px;
	}
	.cta-content {
		width: 100%;
		gap: 20px;
	}
	.cta-form-wrapper {
		width: 100%;
		max-width: 100%;
	}
	.cta-buttons .btn.btn-white {
		padding: 0 20px;
		flex-grow: 1;
	}
}
/* ===== SECTION: CTA Banner - End ===== */

/* ===== SECTION: For Who - Start ===== */
.for-who-section {
	padding-top: 80px;
	padding-bottom: 40px;
}

.for-who-header {
	margin-bottom: 40px;
}

.for-who-header .h2 {
	max-width: 750px;
}

.for-who-text {
	display: flex;
	flex-direction: column;
	gap: 15px;
	padding-right: 20px;
	max-width: 310px;
}

.for-who-cards {
	display: flex;
	gap: 12px;
}

.for-who-cards .h5 {
	margin-top: auto;
	max-width: 220px;
}

.category-card {
	display: flex;
	flex-direction: column;
	padding: 25px;
	gap: 30px;
	flex: 1;
	min-height: 206px;
}

.category-card .icon-element {
	width: fit-content;
}

.category-card .icon {
	width: 50px;
	height: 50px;
	object-fit: contain;
}

.category-card-double {
	display: flex;
	flex-direction: row;
	flex: 2;
	padding: 0;
	gap: 0;
}

.category-card-double .category-card-item {
	flex: 1;
	display: flex;
	flex-direction: column;
	padding: 25px;
	gap: 30px;
}

.category-card-divider {
	width: 1px;
	background: var(--border);
	margin: 25px 0;
}

@media screen and (max-width: 1680px) {
	.for-who-section {
		padding-top: 60px;
	}
	.for-who-text {
		max-width: 250px;
	}
	.for-who-header .h2 {
		max-width: 640px;
	}
	.for-who-cards .h5 {
		font-size: 15px;
		line-height: 19px;
	}
	.for-who-header {
		margin-bottom: 30px;
	}
	.category-card {
		min-height: 180px;
		padding: 20px;
		gap: 20px;
	}
	.category-card-double .category-card-item {
		padding: 0;
		gap: 0;
	}
	.category-card .icon {
		width: 40px;
		height: 40px;
	}
}

@media screen and (max-width: 1279px) {
	.for-who-section {
		padding-top: 80px;
		padding-bottom: 60px;
	}
	.for-who-header .col-25 {
		width: 100%;
		margin-bottom: 10px;
	}
	.for-who-header .col-75 {
		width: 100%;
	}
	.for-who-body .col-25 {
		width: 100%;
		margin-bottom: 20px;
	}
	.for-who-body .col-75 {
		width: 100%;
	}
	.for-who-text {
		padding-right: 0;
	}
	.for-who-cards {
		flex-wrap: wrap;
	}
	.category-card-double {
		width: 100%;
		flex: auto;
	}
	.category-card {
		min-width: calc(50% - 6px);
		min-height: 160px;
		flex-grow: 0;
	}
	.for-who-header .h2 {
		max-width: 290px;
	}
}
/* ===== SECTION: For Who - End ===== */

/* ===== SECTION: Process - Start ===== */
.process-section {
	padding-top: 40px;
	padding-bottom: 40px;
}

.process-wrapper {
	padding: 60px 40px 80px;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.5);
}

.process-wrapper.before::before {
	opacity: 1;
	z-index: 0;
	border-radius: inherit;
}

.process-header {
	position: relative;
	z-index: 1;
	margin-bottom: 60px;
}

.process-header .section-label {
	margin-bottom: 10px;
}

.process-header .h2 {
	margin-bottom: 20px;
}

.process-header > p {
	color: var(--dark-gray);
	margin-bottom: 20px;
}

/* Timeline */
.process-timeline {
	position: relative;
	z-index: 1;
	padding-top: 20px;
	width: 90%;
	margin: 0 auto;
}

.timeline-line {
	position: absolute;
	top: 34px;
	left: 0;
	width: 100%;
	height: 6px;
	background: linear-gradient(to right, var(--primary), #c3ccec);
	border-radius: 3px;
	z-index: 0;
}

.timeline-steps {
	display: flex;
	position: relative;
	z-index: 1;
}

.timeline-step {
	flex: 1;
	padding-right: 20px;
}

/* Dots */
.step-dot {
	width: 30px;
	height: 30px;
	border-radius: var(--radius-max);
	margin-bottom: 25px;
	position: relative;
}

.step-active .step-dot {
	background: var(--primary);
	box-shadow:
		0 0 0 5px rgba(58, 89, 200, 0.7),
		0 0 0 10px rgba(58, 89, 200, 0.26);
}

.step-2 .step-dot {
	background: #93a4e0;
}

.step-3 .step-dot {
	background: #526dce;
}

.step-4 .step-dot {
	background: #6e85d6;
}

.step-5 .step-dot {
	background: #c3ccec;
}

.timeline-step .h4 {
	margin-bottom: 15px;
}

.timeline-step p {
	color: var(--dark-gray);
	max-width: 210px;
	font-size: 15px;
	line-height: 19px;
}

@media screen and (max-width: 1680px) {
	.process-wrapper {
		padding: 40px 30px 60px;
	}
	.process-header {
		margin-bottom: 40px;
	}
	.timeline-line {
		top: 29px;
		height: 5px;
	}
	.step-dot {
		width: 25px;
		height: 25px;
		margin-bottom: 20px;
	}
	.step-active .step-dot {
		box-shadow:
			0 0 0 4px rgba(58, 89, 200, 0.7),
			0 0 0 8px rgba(58, 89, 200, 0.26);
	}
}

@media screen and (max-width: 1279px) {
	.process-wrapper {
		padding: 30px 20px 30px;
		background: rgba(255, 255, 255, 1);
	}
	.process-header {
		margin-bottom: 30px;
	}
	.process-buttons {
		flex-wrap: wrap;
		justify-content: center;
		flex-direction: column;
	}
	.process-buttons .btn {
		width: 100%;
	}
	.timeline-line {
		display: none;
	}
	.timeline-steps {
		flex-direction: column;
		gap: 25px;
	}
	.timeline-step {
		display: flex;
		align-items: flex-start;
		gap: 15px;
		padding-right: 0;
	}
	.step-dot {
		width: 20px;
		height: 20px;
		min-width: 20px;
		margin-bottom: 0;
		margin-top: 4px;
	}
	.step-active .step-dot {
		box-shadow:
			0 0 0 3px rgba(58, 89, 200, 0.7),
			0 0 0 6px rgba(58, 89, 200, 0.26);
	}
	.timeline-step .h4 {
		min-width: 100px;
		font-size: 14px;
		line-height: 18px;
		margin-bottom: 5px;
	}
	.timeline-step p {
		color: var(--dark-gray);
		max-width: 210px;
		font-size: 14px;
		line-height: 18px;
	}
	.process-timeline {
		width: 95%;
	}
}
/* ===== SECTION: Process - End ===== */

/* ===== SECTION: Articles - Start ===== */
.articles-section {
	padding-top: 100px;
	padding-bottom: 100px;
}

.articles-section .block-with-cols {
	margin-bottom: 50px;
}

.articles-slider {
	margin-bottom: 50px;
}

.articles-section .swiper-buttons.inside {
	width: calc(100% + 120px);
	left: -60px;
}

@media (max-width: 1279px) {
	.articles-section {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.articles-section .block-with-cols {
		margin-bottom: 30px;
	}

	.articles-slider {
		margin-bottom: 30px;
	}

	.articles-section .swiper-buttons.inside {
		display: none;
	}
}
/* ===== SECTION: Articles - End ===== */

/* ===== SECTION: Brands - Start ===== */
.brands-section {
	padding-bottom: 50px;
}

.brands-section .h2 {
	margin-bottom: 30px;
}

.brand-logo {
	width: 100%;
	height: auto;
	object-fit: contain;
}

@media (max-width: 1279px) {
	.brands-section {
		padding-bottom: 40px;
	}

	.brands-section .h2 {
		margin-bottom: 20px;
	}
}
/* ===== SECTION: Brands - End ===== */

/* ===== SECTION: About - Start ===== */
.about-section {
	padding-top: 50px;
	padding-bottom: 50px;
}

.about-section p {
	margin: 20px 0 25px;
	color: var(--dark-gray);
}

.about-image img {
	width: 100%;
	height: auto;
}

@media (max-width: 1279px) {
	.about-section {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.about-section .col-50 {
		width: 100%;
	}

	.about-image {
		margin-bottom: 30px;
	}
}
/* ===== SECTION: About - End ===== */

/* ===== SECTION: Advantages - Start ===== */
.advantages-section {
	padding-top: 80px;
	padding-bottom: 80px;
}

.advantages-section .col-25 {
	padding-right: 20px;
}

.advantages-section .col-25 .h2 {
	margin-top: 30px;
	margin-bottom: 20px;
}

.advantages-section .col-25 p {
	max-width: 300px;
	color: var(--dark-gray);
}

.advantages-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}

.advantage-card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 30px;
	min-height: 280px;
}

.advantage-number {
	font-size: 40px;
	font-weight: 400;
	line-height: 62px;
	color: rgba(65, 65, 65, 0.4);
}

.advantage-card.bg-primary .advantage-number {
	color: rgba(255, 255, 255, 0.4);
}

.advantage-card.bg-primary .advantage-description {
	color: var(--white);
}

.advantage-description {
	margin-top: 15px;
	font-size: 15px;
	line-height: 23px;
	color: #868686;
}

@media screen and (max-width: 1680px) {
	.advantages-section {
		padding-top: 60px;
		padding-bottom: 30px;
	}
	.advantage-card {
		padding: 25px;
		min-height: 230px;
	}
	.advantage-number {
		font-size: 32px;
		line-height: 48px;
	}
	.advantage-description {
		font-size: 13px;
		line-height: 19px;
	}
}

@media screen and (max-width: 1279px) {
	.advantages-section {
		padding-top: 40px;
		padding-bottom: 20px;
	}
	.advantages-section .col-25 {
		width: 100%;
		padding-right: 0;
		margin-bottom: 20px;
	}
	.advantages-section .col-75 {
		width: 100%;
	}
	.advantages-grid {
		grid-template-columns: 1fr;
	}
	.advantage-card {
		padding: 20px;
		min-height: 200px;
	}
}
/* ===== SECTION: Advantages - End ===== */

/* ===== SECTION: Cases - Start ===== */
.cases-section {
	padding-top: 40px;
	padding-bottom: 100px;
}

.cases-section .block-with-cols {
	margin-bottom: 40px;
}

.cases-section .h2 {
	margin-top: 20px;
	margin-bottom: 15px;
}

.cases-description {
	max-width: 550px;
	font-size: 15px;
	line-height: 23px;
	color: var(--dark-gray);
}

.cases-section .swiper-buttons.outside {
	--swiper-buttons-size: 50px;
}

.case-slide {
	display: block;
}

.case-photo {
	width: 100%;
	height: 499px;
	object-fit: cover;
}

@media screen and (max-width: 1680px) {
	.cases-section {
		padding-top: 30px;
		padding-bottom: 60px;
	}
	.cases-section .block-with-cols {
		margin-bottom: 30px;
	}
	.case-photo {
		height: 380px;
	}
	.cases-description {
		font-size: 13px;
		line-height: 19px;
	}
}

@media screen and (max-width: 1279px) {
	.cases-section {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.cases-section .block-with-cols {
		margin-bottom: 20px;
	}
	.cases-section .h2 {
		max-width: 200px;
	}
	.cases-slider .swiper-slide {
		width: 60%;
	}
	.case-photo {
		height: 350px;
	}
	.cases-section .swiper-buttons.outside.mob {
		margin-left: 10px;
		margin-top: 10px;
	}
}
/* ===== SECTION: Cases - End ===== */

/* ===== SECTION: Reviews - Start ===== */
.reviews-section {
	padding-top: 50px;
	padding-bottom: 50px;
}

.reviews-section .h2 {
	margin-bottom: 20px;
}

.reviews-section .block-with-cols {
	margin-bottom: 30px;
}

.reviews-slider {
	margin-bottom: 35px;
}

@media (max-width: 1279px) {
	.reviews-section {
		padding-top: 40px;
		padding-bottom: 40px;
	}
}
/* ===== SECTION: Reviews - End ===== */


/* ===== SECTION: Instagram - Start ===== */
.instagram {
	padding: 60px 0;
}
.instagram > .container + .container {
	margin-top: 40px;
}
.instagram a.instagram-username {
	color: var(--dark-gray);
}
.instagram-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: var(--blocks-indent);
}
.instagram-grid a.instagram-photo {
	position: relative;
	padding-bottom: 100%;
	overflow: hidden;
	display: block;
}
.instagram-grid a.instagram-photo img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (max-width: 1279px) {
	.instagram {
		padding: 40px 0;
	}
	.instagram > .container + .container {
		margin-top: 20px;
	}
	.instagram-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.instagram-grid a.instagram-photo:nth-child(5) {
		display: none;
	}
}
/* ===== SECTION: Instagram - End ===== */