/**
 * Responsive styles — mobile-first enhancements.
 */

/* Tablet+ */
@media (min-width: 640px) {
	.hga-course-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hga-feature-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hga-testimonials__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.footer-widgets__grid {
		/* Column count controlled by footer.css + body.hg-footer--cols-* */
	}

	.hga-dashboard__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Desktop */
@media (min-width: 900px) {
	.hga-hero__inner {
		grid-template-columns: 1.1fr 0.9fr;
	}

	.hga-course-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.hga-feature-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.hga-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--hga-space-lg);
	}

	.hga-steps__item {
		padding-left: 0;
		padding-top: 3.75rem;
	}

	.hga-steps__number {
		top: 0;
	}

	.hga-testimonials__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.footer-widgets__grid {
		/* Column count controlled by footer.css + body.hg-footer--cols-* */
	}

	/* Blog content + sidebar only — do not target bare .site-main. */
	body.hg-layout--blog-sidebar-right .site-main.hga-layout,
	.site-main.hga-layout.hg-layout--blog-sidebar-right {
		grid-template-columns: minmax(0, 1fr) minmax(14rem, 18rem);
		align-items: start;
	}

	body.hg-layout--blog-sidebar-left .site-main.hga-layout,
	.site-main.hga-layout.hg-layout--blog-sidebar-left {
		grid-template-columns: minmax(14rem, 18rem) minmax(0, 1fr);
		align-items: start;
	}

	.site-main--full-width .hga-layout,
	.site-main--no-sidebar .hga-layout,
	.site-main--dashboard .hga-layout,
	body.hg-layout--full-width .site-main.hga-layout {
		grid-template-columns: 1fr;
	}

	.hga-dashboard__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Desktop navigation — hide hamburger / show inline menu */
@media (min-width: 1025px) {
	.menu-toggle,
	.hga-mobile-menu-toggle {
		display: none;
	}

	.main-navigation {
		display: block;
	}

	.main-navigation .mobile-menu {
		display: none !important;
	}
}

/* Narrow / mobile navigation — keep in sync with header.css (≤1024px) */
@media (max-width: 1024px) {
	.main-navigation {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		background: var(--hga-color-header-bg);
		border-bottom: 1px solid var(--hga-color-border);
		padding: var(--hga-space-md);
		display: none;
		box-shadow: var(--hga-shadow-md);
	}

	.main-navigation.is-open {
		display: block;
	}

	.main-navigation ul {
		flex-direction: column;
		gap: 0;
	}

	.main-navigation li {
		border-bottom: 1px solid var(--hga-color-border);
	}

	.main-navigation a {
		display: block;
		padding: 0.85rem 0.25rem;
	}

	.main-navigation .mobile-menu ~ #primary-menu,
	.main-navigation #primary-menu:has(~ .mobile-menu) {
		display: none;
	}

	.main-navigation .mobile-menu {
		display: flex;
		flex-direction: column;
	}

	.site-header,
	.hg-header {
		position: relative;
	}

	.site-header__inner,
	.hg-header__inner {
		position: relative;
	}
}

@media (max-width: 639px) {
	.hga-hero {
		padding-block: var(--hga-space-xl);
	}

	.hga-section {
		padding-block: var(--hga-space-lg);
	}

	.hga-top-bar__inner {
		justify-content: center;
		text-align: center;
	}

	.hga-contact-info,
	.hga-top-bar .hga-social-links {
		justify-content: center;
	}
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
