/* ==========================================================================
   Responsive — Desktop (default) > Laptop > Tablet > Mobile
   ========================================================================== */

/* Laptop (large screens, tighten container slightly) */
@media (max-width: 1280px) {
	.jat-container { max-width: 1080px; }
}

/* Tablet + narrower laptops — the desktop nav row can only comfortably
   fit so many items before switching to the hamburger menu. */
@media (max-width: 1180px) {
	.jat-header-nav { display: none; }
	.jat-hamburger { display: flex; }
	.jat-header-actions { display: none; }
}

@media (max-width: 992px) {

	.jat-network-grid { grid-template-columns: repeat(2, 1fr); }
	.jat-marketplace-grid { grid-template-columns: repeat(2, 1fr); }
	.jat-benefits-grid { grid-template-columns: repeat(2, 1fr); }
	.jat-news-grid { grid-template-columns: repeat(2, 1fr); }

	.jat-origins-grid { grid-template-columns: 1fr; }
	.jat-origins-map { aspect-ratio: 4 / 3; }

	.jat-footer-grid { grid-template-columns: repeat(2, 1fr); }
	.jat-footer-brand { grid-column: 1 / -1; }
}

/* Mobile */
@media (max-width: 600px) {
	.jat-container { padding: 0 18px; }

	.jat-hero { min-height: 92vh; }
	.jat-hero-content { padding-top: 60px; }
	.jat-hero-cta { flex-direction: column; align-items: flex-start; }
	.jat-hero-cta .jat-btn { width: 100%; text-align: center; }

	.jat-network-grid,
	.jat-marketplace-grid,
	.jat-benefits-grid,
	.jat-news-grid,
	.jat-footer-grid { grid-template-columns: 1fr; }

	.jat-section-heading-row { flex-direction: column; align-items: flex-start; }

	.jat-marketplace-controls { flex-direction: column; align-items: stretch; }
	#jat-marketplace-search { max-width: none; flex: 0 0 auto; width: 100%; height: auto; }

	.jat-origins-map { aspect-ratio: 1 / 1; padding: 16px; }
	.jat-origin-popup { width: 88%; }

	.jat-footer-bottom { flex-direction: column; text-align: center; }
}

/* Prevent text overflow for body copy — headings/paragraphs only.
   NOT applied to nav links/buttons: breaking "Marketplace" into
   "Ma/rke/tpl/ace" letter-by-letter is worse than the overflow this
   was meant to prevent. Nav/button overflow is handled with
   white-space + horizontal scroll instead (see header.css). */
h1, h2, h3, h4, p {
	overflow-wrap: break-word;
	word-break: break-word;
}
