/* ==========================================================================
   Todo Baldai – Responsive stiliai
   ========================================================================== */

/* ===== Didelis ekranas (1440px+) ===== */
@media (min-width: 1440px) {
	:root {
		--container-px: 40px;
	}
}

/* ===== Vidutinis ekranas (max 1200px) ===== */
@media (max-width: 1200px) {
	:root {
		--spacing-xl: 60px;
		--spacing-xxl: 90px;
	}

	.tb-footer__grid {
		grid-template-columns: 1.2fr 1fr 1fr;
	}

	.tb-footer__col--brand {
		grid-column: 1 / -1;
		display: flex;
		flex-direction: column;
	}

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

/* ===== Planšetė (max 1024px) ===== */
@media (max-width: 1024px) {
	.tb-intro__grid,
	.tb-about-story__grid {
		grid-template-columns: 1fr;
		gap: var(--spacing-lg);
	}

	.tb-about-story__grid .tb-about-story__image:first-child {
		order: -1;
	}

	.tb-intro__badge {
		left: 0;
	}

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

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

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

	.tb-gallery-preview-item--featured {
		grid-column: 1 / -1;
		grid-row: 1;
	}

	.tb-gallery-preview-item--featured img {
		aspect-ratio: 16/7;
	}

	.tb-contact-grid {
		grid-template-columns: 1fr;
		gap: var(--spacing-lg);
	}

	.tb-home-contact__grid {
		grid-template-columns: 1fr;
		gap: var(--spacing-lg);
	}

	.tb-gallery-grid {
		columns: 2;
	}

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

/* ===== Mobilus (max 768px) ===== */
@media (max-width: 768px) {
	:root {
		--spacing-xl: 48px;
		--spacing-xxl: 72px;
		--container-px: 20px;
	}

	.tb-section {
		padding: var(--spacing-xl) 0;
	}

	/* Hero */
	.tb-hero__inner {
		padding: calc(var(--header-height) + 48px) 0 60px;
	}

	.tb-hero__scroll {
		display: none;
	}

	/* Mygtukai */
	.tb-hero__actions {
		flex-direction: column;
		align-items: flex-start;
	}

	.tb-btn--lg {
		width: 100%;
		justify-content: center;
	}

	/* Sekcijų antraštės */
	.tb-section-header--split {
		flex-direction: column;
		align-items: flex-start;
	}

	/* Kodėl mes */
	.tb-why-grid {
		grid-template-columns: 1fr;
	}

	/* Paslaugos */
	.tb-services-grid {
		grid-template-columns: 1fr;
	}

	/* Galerijos peržiūra */
	.tb-gallery-preview-grid {
		grid-template-columns: 1fr;
	}

	.tb-gallery-preview-item--featured {
		grid-row: auto;
	}

	.tb-gallery-preview-item--featured img {
		aspect-ratio: 4/3;
	}

	/* Stats */
	.tb-stats-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	/* Footer */
	.tb-footer__grid {
		grid-template-columns: 1fr;
		gap: var(--spacing-lg);
	}

	.tb-footer__col--brand {
		grid-column: auto;
	}

	/* Vertybės */
	.tb-values-grid {
		grid-template-columns: 1fr;
	}

	/* Žingsniai */
	.tb-steps {
		grid-template-columns: 1fr;
	}

	/* Galerija */
	.tb-gallery-grid {
		columns: 1;
	}

	.tb-gallery-filters {
		justify-content: flex-start;
	}

	/* About badge */
	.tb-about-badge {
		right: 10px;
		bottom: 10px;
		width: 90px;
		height: 90px;
	}

	.tb-about-badge__number {
		font-size: 1.4rem;
	}

	.tb-intro__badge {
		position: static;
		display: inline-flex;
		margin-top: 16px;
		border-radius: var(--radius-md);
		padding: 14px 20px;
	}

	/* Lightbox */
	.tb-lightbox__content {
		padding: 20px;
	}

	.tb-lightbox__prev { left: 8px; }
	.tb-lightbox__next { right: 8px; }

	#tb-lightbox-img {
		max-width: 95vw;
		max-height: 75vh;
	}
}

/* ===== Mažas mobilusis (max 480px) ===== */
@media (max-width: 480px) {
	:root {
		--container-px: 16px;
	}

	h1 { font-size: 1.8rem; }
	h2 { font-size: 1.4rem; }

	.tb-hero__title {
		font-size: 2rem;
	}

	.tb-stats-grid {
		grid-template-columns: 1fr 1fr;
	}

	.tb-stat__number {
		font-size: 2.5rem;
	}

	.tb-footer__bottom-inner {
		flex-direction: column;
		text-align: center;
	}
}

/* ===== Animacijos: pageidauja mažesnio judėjimo ===== */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		transition-duration: 0.01ms !important;
	}

	[data-animate] {
		opacity: 1;
		transform: none;
	}

	[data-animate].is-visible {
		opacity: 1;
		transform: none;
	}

	.tb-hero__bg {
		transform: none;
	}
}

/* ===== Spausdinimo stiliai ===== */
@media print {
	.tb-header,
	.tb-footer,
	.tb-hero__scroll,
	.tb-hamburger,
	.tb-btn {
		display: none !important;
	}

	.tb-hero {
		min-height: auto;
		padding: 40px 0;
	}

	body {
		font-size: 12pt;
		color: #000;
	}
}
