/* Главная — адаптив по Figma (mobile ~375: node 13:493, tablet ~768: node 13:525) */

/* ─── Container ─── */
@media (max-width: 568px) {
	.home-page .container {
		max-width: 100% !important;
	}
}

@media (max-width: 767px) {
	.home-page .container {
		max-width: 100%;
		padding-left: 16px;
		padding-right: 16px;
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.home-page .container {
		max-width: 100%;
		padding-left: 24px;
		padding-right: 24px;
	}
}

/* ─── Header (Figma: logo + burger на mobile/tablet) ─── */
@media (max-width: 1023px) {
	.home-page header {
		position: fixed !important;
		background: transparent;
		box-shadow: none;
	}

	.home-page header.active {
		background: #fff;
		box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
	}

	.home-page header .item:first-child {
		display: none;
	}

	.home-page header .item:last-child {
		position: static;
		top: auto;
		right: auto;
		margin-top: 0;
	}

	.home-page header .item:last-child .flex {
		flex-direction: row;
		align-items: center;
		gap: 0;
	}

	.home-page header .telegram,
	.home-page header .whatsapp {
		display: none;
	}

	.home-page header .burger {
		display: block;
		margin-bottom: 0;
		margin-left: auto;
	}

	.home-page header .logo img {
		filter: brightness(0) invert(1);
		transition: filter 0.21s ease-in;
	}

	.home-page header.active .logo img {
		filter: none;
	}
}

/* ─── Mobile menu: fullscreen, без языка (Figma) ─── */
@media (max-width: 1023px) {
	.home-page #mobile-menu {
		background: #fff;
	}

	.home-page #mobile-menu.active {
		right: 0;
	}

	.home-page .mobile-menu {
		width: 100%;
		max-width: none;
		height: 100%;
		margin: 0;
		padding: 24px 16px;
	}

	.home-page .mobile-menu .close {
		top: 16px;
		right: 16px;
	}

	.home-page .mobile-menu .logo {
		margin-bottom: 48px;
	}

	.home-page .mobile-menu .menu {
		display: block;
		margin-bottom: 0;
	}

	.home-page .mobile-menu .menu li {
		margin-bottom: 16px;
	}

	.home-page .mobile-menu .menu a {
		font-size: 1.125rem;
		line-height: 1.4;
	}

	.home-page .mobile-menu .services {
		margin-top: 24px;
		margin-bottom: 0;
		padding-top: 24px;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
	}

	.home-page .mobile-menu .services li {
		margin-bottom: 12px;
	}

	.home-page .mobile-menu .services a {
		font-size: 0.875rem;
		line-height: 1.4;
		color: rgba(0, 0, 0, 0.85);
		text-transform: none;
	}

	.home-page .mobile-menu .lang {
		display: none !important;
	}

	.home-page .mobile-menu__tel {
		display: inline-block;
		margin-top: 32px;
		font-size: 1.25rem;
		color: #0a0a0a;
	}
}

/* ─── Hero ─── */
@media (max-width: 767px) {
	.home-page #main {
		height: auto;
		min-height: 520px;
	}

	.home-page #main .main {
		padding-top: 64px;
		padding-bottom: 48px;
		align-items: flex-end;
	}

	.home-page #main .main h1 {
		font-size: 2rem;
		line-height: 1.2;
		text-transform: uppercase;
		margin-bottom: 24px;
	}

	.home-page #main .main h5 {
		font-size: 0.875rem;
		line-height: 1.4;
		text-transform: none;
		margin-bottom: 12px;
	}

	.home-page #main .main .title a.max-w-\[256px\] {
		width: 100%;
		max-width: 256px;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	.home-page #main {
		height: auto;
		min-height: 640px;
	}

	.home-page #main .main h1 {
		font-size: 2.75rem;
		line-height: 1.15;
		text-transform: uppercase;
	}

	.home-page #main .main h5 {
		font-size: 1rem;
		line-height: 1.4;
		text-transform: none;
	}
}

/* ─── Услуги ─── */
@media (min-width: 768px) and (max-width: 1199px) {
	.home-page #services .services .item.service {
		width: 50%;
		max-width: none;
	}

	.home-page #services .services .item:last-child {
		width: 50%;
	}
}

@media (max-width: 767px) {
	.home-page #services {
		padding: 48px 0;
	}

	.home-page #services .services .item.service,
	.home-page #services .services .item:last-child {
		width: 100%;
		max-width: 100%;
	}

	.home-page #services .service .img {
		display: none;
	}

	.home-page #services .extra {
		padding-left: 0;
		padding-top: 16px;
		border-left: 0;
		border-top: 2px solid #ffd000;
	}
}

/* ─── Geo ─── */
@media (max-width: 767px) {
	.home-page #geo {
		height: 660px;
	}

	.home-page .geo-direction {
		padding: 25px 0;
		background: linear-gradient(4deg, #fff 92%, transparent 100%);
	}

	.home-page .geo-direction ul {
		padding-right: 0;
		columns: 2;
		font-size: 0.875rem;
	}

	.home-page .geo-title .title h2.geo-lead {
		font-size: 1.25rem;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	.home-page #geo {
		height: 720px;
	}

	.home-page .geo-direction ul {
		columns: 3;
	}
}

/* ─── Калькулятор ─── */
@media (max-width: 1023px) {
	.home-page #calculator .calculator .col {
		width: 100%;
		max-width: 100%;
	}
}

@media (max-width: 767px) {
	.home-page #calculator {
		padding: 48px 0;
	}

	.home-page #calculator form button {
		width: 100%;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	.home-page #calculator {
		padding: 64px 0;
	}
}

/* ─── Заголовки секций (legacy .title) ─── */
@media (max-width: 767px) {
	.home-page .title h2 {
		font-size: 1.75rem;
		line-height: 1.25;
	}

	.home-page .title h2 svg {
		width: 56px;
		height: auto;
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.home-page .title h2 {
		font-size: 2.25rem;
		line-height: 1.2;
	}
}

/* ─── Zhebe-секции ─── */
@media (max-width: 1499px) {
	.home-page .zhebe-section--inset {
		padding-left: 16px;
		padding-right: 16px;
	}
}

@media (min-width: 768px) and (max-width: 1499px) {
	.home-page .zhebe-section--inset {
		padding-left: 24px;
		padding-right: 24px;
	}
}

@media (max-width: 767px) {
	.home-page .zhebe-head__title,
	.home-page .zhebe-head--geo .zhebe-head__title {
		font-size: 1.75rem;
		line-height: 1.2;
	}

	.home-page .zhebe-head--arrows .zhebe-head__title {
		padding-right: 72px;
		background-size: 56px auto;
	}

	.home-page .zhebe-head--deco .zhebe-head__deco {
		width: 56px;
		height: 24px;
	}

	.home-page .zhebe-head--geo .zhebe-head__lead {
		max-width: 125px;
		font-size: 0.875rem;
	}

	.home-page .zhebe-faq__q {
		padding: 16px 20px;
		font-size: 1rem;
	}

	.home-page .zhebe-faq__a {
		padding: 0 20px 16px;
		font-size: 0.9375rem;
	}

	.home-page .zhebe-map__frame,
	.home-page #zhebe-contacts-map {
		height: min(420px, 60vh);
		min-height: 280px;
	}

	.home-page section#contacts.zhebe-map {
		padding-top: 48px !important;
		padding-bottom: 0 !important;
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.home-page .zhebe-head__title {
		font-size: 2.25rem;
		line-height: 1.2;
	}

	.home-page .zhebe-map__frame,
	.home-page #zhebe-contacts-map {
		height: 420px;
		min-height: 420px;
	}

	.home-page section#contacts.zhebe-map {
		padding-top: 64px !important;
	}
}

@media (max-width: 479px) {
	.home-page .zhebe-map__frame,
	.home-page #zhebe-contacts-map {
		height: 280px;
		min-height: 280px;
	}
}

/* ─── Tailwind-секции: отступы как в Figma ─── */
@media (max-width: 767px) {
	.home-page main > section.px-4 {
		padding-top: 48px;
		padding-bottom: 48px;
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.home-page main > section.px-4 {
		padding-top: 64px;
		padding-bottom: 64px;
	}
}

/* ─── Клиенты ─── */
@media (max-width: 767px) {
	.home-page #clients.flex {
		padding-top: 48px !important;
		padding-bottom: 48px !important;
		gap: 32px !important;
	}

	.home-page #clients h2 {
		font-size: 1.75rem !important;
		line-height: 1.25 !important;
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.home-page #clients.flex {
		padding-top: 64px !important;
		padding-bottom: 64px !important;
	}
}

/* ─── Отзывы ─── */
@media (max-width: 767px) {
	.home-page #reviews {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	.home-page #reviews .mb-8.flex,
	.home-page #reviews .mb-16.flex {
		margin-bottom: 32px;
		flex-wrap: wrap;
		gap: 12px;
	}

	.home-page #reviews h2 {
		font-size: 1.75rem;
		line-height: 1.25;
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.home-page #reviews {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.home-page #reviews h2 {
		font-size: 2.25rem;
	}
}

/* ─── Жёлтый баннер статистики ─── */
@media (max-width: 767px) {
	.home-page .rounded-\[4px\].bg-\[\#FFD000\] {
		padding: 24px 16px;
	}
}

/* ─── Кейсы ─── */
@media (max-width: 479px) {
	.home-page .case-card-stats {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.home-page .case-card-stats > div {
		flex-direction: row;
		justify-content: space-between;
		text-align: left;
	}
}

/* ─── Карточки ─── */
@media (max-width: 767px) {
	.home-page article.border-primary.p-5,
	.home-page article.border-primary.p-8,
	.home-page article.flex.flex-col.bg-white.p-5,
	.home-page article.flex.flex-col.bg-white.p-8 {
		padding: 20px;
	}
}

/* ─── Footer ─── */
@media (max-width: 767px) {
	.home-page footer {
		padding: 40px 0 48px;
	}

	.home-page footer .col {
		max-width: 100%;
		margin-bottom: 32px;
	}

	.home-page footer .tel {
		font-size: 1.75rem;
	}

	.home-page footer .flex.wrap.jc-sb {
		flex-direction: column;
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.home-page footer .col:nth-child(3) {
		display: none;
	}
}
