/* ============================================================
   Klorious Kids – responsive styles
   ============================================================ */

@media (max-width: 1100px) {
	.kk-services-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.kk-footer__grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 992px) {
	.kk-nav__list {
		display: none;
	}

	.kk-nav-toggle {
		display: inline-flex;
	}

	.kk-hero__grid,
	.kk-split {
		grid-template-columns: 1fr;
	}

	.kk-hero {
		padding: 64px 0;
	}

	.kk-hero__media {
		order: -1;
	}

	.kk-hero__stats {
		grid-template-columns: repeat(3, 1fr);
	}

	.kk-programs-grid,
	.kk-blog-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.kk-locations-grid,
	.kk-reviews-grid {
		grid-template-columns: 1fr;
	}

	.kk-gallery {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 720px) {
	.kk-topbar__inner {
		justify-content: center;
	}

	.kk-topbar__right {
		display: none;
	}

	.kk-header__inner {
		min-height: 68px;
	}

	.kk-header__brand img {
		height: 46px;
	}

	.kk-header__actions .kk-btn {
		padding: 11px 20px;
		font-size: 13.5px;
	}

	.kk-section {
		padding: 54px 0;
	}

	.kk-programs-grid,
	.kk-blog-grid,
	.kk-services-grid {
		grid-template-columns: 1fr;
	}

	.kk-gallery {
		grid-template-columns: repeat(2, 1fr);
	}

	.kk-modal__locations {
		grid-template-columns: 1fr;
	}

	.kk-footer__grid {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.kk-hero__stats {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.kk-hero__actions .kk-btn {
		width: 100%;
	}

	.kk-cta-band {
		padding: 40px 24px;
	}

	.kk-form-panel {
		padding: 24px 18px;
	}

	.kk-chatbot__panel {
		width: calc(100vw - 40px);
	}

	.kk-modal__dialog {
		padding: 26px 18px;
	}
}

@media (max-width: 480px) {
	.kk-section-header__mini {
		letter-spacing: 6px;
	}

	.kk-price-table th,
	.kk-price-table td {
		padding: 12px 14px;
		font-size: 13.5px;
	}
}

/* Respect reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
	* {
		animation-duration: 0.01ms !important;
		transition-duration: 0.01ms !important;
	}
}
