@media (max-width: 1199.98px) {
	.site-menu {
		gap: 16px;
	}

	.hero__container {
		grid-template-columns: minmax(0, 540px) minmax(340px, 1fr);
	}

	.hero__ring {
		right: 20px;
		width: 390px;
	}

	.features {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		row-gap: 24px;
	}

	.order-steps__button {
		margin-left: 0;
	}

	.kit-card__footer {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	.btn-card {
		width: 100%;
	}

	.service-card__visual {
		opacity: 0.28;
	}
}

@media (max-width: 991.98px) {
	.site-header {
		padding-top: 16px;
	}

	.site-header__collapse {
		margin-top: 16px;
		padding: 16px;
		border: 1px solid var(--color-border-soft);
		border-radius: 12px;
		background: rgba(8, 10, 17, 0.97);
	}

	.site-menu {
		gap: 4px;
	}

	.site-header__status {
		margin-top: 14px;
	}

	.hero {
		padding-top: 44px;
	}

	.hero__container {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.hero__visual {
		min-height: 440px;
	}

	.hero__ring {
		left: 50%;
		right: auto;
		top: 58px;
		width: min(420px, 84vw);
		transform: translateX(-50%);
	}

	.hero__city {
		inset: 0 0 80px 20%;
	}

	.service-card__visual {
		right: 28px;
	}

	.order-faq__card {
		grid-template-columns: 1fr;
	}

	.order-steps {
		padding-right: 0;
		padding-bottom: 28px;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	}

	.cookie-bar__container {
		grid-template-columns: 54px 1fr auto;
	}

	.cookie-bar__text:nth-of-type(2) {
		grid-column: 2 / 4;
	}
}

@media (max-width: 767.98px) {
	.site-logo__name {
		font-size: 19px;
	}

	.site-logo__tagline {
		font-size: 11px;
	}

	.hero {
		padding-top: 36px;
	}

	.hero__title {
		font-size: clamp(42px, 14vw, 58px);
	}

	.hero__subtitle {
		font-size: 24px;
	}

	.hero__actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 12px;
		margin-bottom: 30px;
	}

	.hero__actions .btn {
		width: 100%;
	}

	.hero-stats {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.hero__visual {
		min-height: 390px;
		margin-inline: -12px;
	}

	.bottle--hero {
		width: 100px;
		height: 296px;
		bottom: 54px;
	}

	.bottle__label {
		top: 110px;
		font-size: 42px;
	}

	.hero__ring {
		top: 64px;
	}

	.section-card {
		padding: 22px 12px 12px;
	}

	.section-heading__title,
	.order-steps__title,
	.faq__title {
		font-size: 24px;
	}

	.kit-card {
		min-height: 260px;
	}

	.kit-card__visual,
	.kit-card__visual--wide,
	.kit-card__visual--party {
		right: 14px;
		width: 138px;
		opacity: 0.82;
	}

	.service-card__content {
		max-width: none;
		padding: 24px;
	}

	.features {
		grid-template-columns: 1fr;
		padding: 22px;
	}

	.order-faq__card {
		padding: 22px;
	}

	.order-steps__list {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.order-steps__item {
		display: grid;
		grid-template-columns: 56px 1fr;
		gap: 16px;
		align-items: center;
		text-align: left;
	}

	.order-steps__item:not(:last-child)::after {
		display: none;
	}

	.order-steps__number {
		margin-bottom: 0;
	}

	.order-steps__button {
		width: 100%;
	}

	.cookie-bar {
		padding: 12px 0;
	}

	.cookie-bar__container {
		grid-template-columns: 46px 1fr;
		gap: 10px 14px;
	}

	.cookie-bar__age {
		width: 42px;
		height: 42px;
		font-size: 16px;
	}

	.cookie-bar__text {
		font-size: 11px;
	}

	.cookie-bar__text:nth-of-type(2),
	.cookie-bar__button {
		grid-column: 1 / -1;
	}

	.cookie-bar__button {
		width: 100%;
	}
}

@media (max-width: 420px) {
	.btn {
		--bs-btn-padding-x: 18px;
		font-size: 14px;
	}

	.hero__text {
		font-size: 15px;
	}

	.kit-card__visual,
	.kit-card__visual--wide,
	.kit-card__visual--party {
		width: 112px;
	}

	.kit-card__price {
		font-size: 23px;
	}
}