/**
 * Worldbrains Foundation - responsive rules (mobile first refinements).
 */

@media (max-width: 1200px) {
	.wb-grid--4 { grid-template-columns: repeat(3, 1fr); }
	.wb-values { grid-template-columns: repeat(2, 1fr); }
	.wb-stats__grid { grid-template-columns: repeat(3, 1fr); row-gap: 34px; }
}

@media (max-width: 1024px) {
	.wb-layout { grid-template-columns: minmax(0, 1fr); }
	.wb-sidebar { position: static; }

	.wb-header__inner { min-height: 72px; }
	.wb-header__donate { display: none; }

	.wb-nav { margin-left: auto; }
	.wb-nav__toggle { display: block; }

	.wb-menu {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		background: #ffffff;
		border-top: 1px solid var(--wb-border);
		box-shadow: var(--wb-shadow);
		padding: 12px;
		max-height: calc(100vh - 120px);
		overflow-y: auto;
		display: none;
	}
	.wb-nav.is-open .wb-menu { display: flex; }
	.wb-menu a { padding: 13px 14px; border-radius: 10px; }
	.wb-menu .sub-menu {
		position: static;
		opacity: 1;
		visibility: visible;
		transform: none;
		box-shadow: none;
		border: 0;
		border-left: 2px solid var(--wb-border);
		border-radius: 0;
		margin-left: 12px;
		padding: 0 0 0 8px;
		display: none;
	}
	.wb-menu li.is-open > .sub-menu { display: block; }

	.wb-about__grid,
	.wb-mission__grid,
	.wb-research__grid,
	.wb-donate__grid,
	.wb-events__layout,
	.wb-impact__feature,
	.wb-programs__cta,
	.wb-contact__grid,
	.wb-newsletter__inner {
		grid-template-columns: 1fr;
		gap: 36px;
	}
	.wb-programs__cta-body { padding: 0 30px 34px; }
	.wb-research__media { order: -1; }
	.wb-about__badge { right: 16px; bottom: -18px; }
}

@media (max-width: 900px) {
	.wb-grid--3,
	.wb-grid--4,
	.wb-post-grid,
	.wb-post-grid--3 { grid-template-columns: repeat(2, 1fr); }
	.wb-postnav .nav-links { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
	:root { --wb-space: 64px; }

	.wb-topbar__inner { justify-content: center; text-align: center; }
	.wb-topbar__contact { gap: 16px; justify-content: center; font-size: .8rem; }

	.wb-hero { min-height: auto; }
	.wb-hero__inner { padding: 76px 0 64px; }
	.wb-hero__facts { gap: 26px; margin-top: 38px; }
	.wb-hero__actions .wb-btn { flex: 1 1 100%; justify-content: center; }

	.wb-stats__grid { grid-template-columns: repeat(2, 1fr); }
	.wb-footer__grid { grid-template-columns: repeat(2, 1fr); gap: 32px; }
	.wb-slide { padding: 30px 24px; }
	.wb-author-box { grid-template-columns: 1fr; text-align: center; justify-items: center; }
	.wb-contact__form-wrap { padding: 24px; }
}

@media (max-width: 600px) {
	.wb-grid--3,
	.wb-grid--4,
	.wb-post-grid,
	.wb-post-grid--3,
	.wb-values,
	.wb-stats__grid,
	.wb-footer__grid { grid-template-columns: 1fr; }

	.wb-footer__bottom { flex-direction: column; text-align: center; }
	.wb-back-to-top { right: 16px; bottom: 16px; }
	.wb-newsletter__form { flex-direction: column; }
	.wb-newsletter__form .wb-btn { justify-content: center; }
}

@media print {
	.wb-topbar,
	.wb-header,
	.wb-footer,
	.wb-newsletter,
	.wb-back-to-top,
	.wb-sidebar { display: none !important; }
	body { color: #000000; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
	}
}
