/**
 * True Crime Stories Responsive Stylesheet
 * Ensures clean, responsive presentation on all devices
 */

/* Laptops & Tablets (< 1199px) */
@media (max-width: 1199px) {
	.carousel-track {
		height: 440px;
	}

	.carousel-title {
		font-size: 2.2rem;
	}

	.main-layout-row {
		grid-template-columns: 1fr 300px;
		gap: 25px;
	}

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

/* Medium Tablets & Large Mobiles (< 991px) */
@media (max-width: 991px) {
	.masthead__social {
		display: none !important;
	}

	.main-layout-row {
		grid-template-columns: 1fr;
	}

	.sidebar-col {
		margin-top: 30px;
	}

	.tetris-grid-wrapper {
		grid-template-columns: 1fr;
	}

	.tetris-col-sub-grid {
		grid-template-columns: 1fr 1fr;
	}

	.newsletter-inner-card {
		grid-template-columns: 1fr;
		text-align: center;
	}

	.newsletter-inline-form .input-group {
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}

	.footer-top-row {
		flex-direction: column;
		align-items: flex-start;
	}

	.footer-social-wrap {
		align-items: flex-start;
	}
}

/* Mobiles (< 767px) */
@media (max-width: 767px) {
	.breaking-news-bar {
		display: none;
	}

	.logo-text-top {
		font-size: 1.6rem;
		padding: 2px 8px;
	}

	.logo-text-bottom {
		font-size: 0.72rem;
		letter-spacing: 0.15em;
	}

	.nav-toggle-text {
		display: none;
	}

	.carousel-track {
		height: 380px;
	}

	.carousel-content-box {
		padding: 20px;
	}

	.carousel-title {
		font-size: 1.6rem;
	}

	.carousel-controls {
		bottom: 15px;
		right: 15px;
	}

	.carousel-btn {
		width: 32px;
		height: 32px;
	}

	.tetris-col-sub-grid {
		grid-template-columns: 1fr;
	}

	.river-item {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.river-item-thumb {
		aspect-ratio: 16 / 9;
	}

	.article__header-title {
		font-size: 2rem;
	}

	.article__lead-excerpt {
		font-size: 1.1rem;
	}

	.post-navigation .nav-links {
		grid-template-columns: 1fr;
	}

	.grid-4-cols {
		grid-template-columns: 1fr;
	}

	.archive-title, .search-title {
		font-size: 1.8rem;
	}

	.error-code-badge {
		font-size: 4rem;
	}

	.error-title {
		font-size: 1.6rem;
	}

	.footer-bottom-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
}

/* Small Mobiles (< 480px) */
@media (max-width: 480px) {
	.carousel-track {
		height: 320px;
	}

	.carousel-title {
		font-size: 1.35rem;
	}

	.social--permalink {
		width: 100%;
	}

	.social__btn {
		flex: 1;
		justify-content: center;
	}

	.newsletter-inline-form .input-group {
		flex-direction: column;
	}

	.btn-newsletter-subscribe {
		width: 100%;
	}
}
