/* Phone and tablet fixes (loaded last so it wins over the desktop grids). */

/* News & stories (home): one column on phones, two on tablets */
@media (max-width: 900px) {
	.news-grid.wp-block-post-template, .wp-block-post-template.news-grid { grid-template-columns: 1fr 1fr; }
	.news-grid.wp-block-post-template > li:first-child, .wp-block-post-template.news-grid > li:first-child { grid-column: 1 / -1; }
	.wp-block-post-template.grid3 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
	.news-grid.wp-block-post-template, .wp-block-post-template.news-grid, .wp-block-post-template.grid3 { grid-template-columns: 1fr; gap: 18px; }
	.news-grid.wp-block-post-template > li:first-child, .wp-block-post-template.news-grid > li:first-child { grid-column: auto; }
	.wp-block-post-template > li { min-width: 0; }
	.post .wp-block-post-title { overflow-wrap: break-word; }
}

/* Abidjan photo gallery (home): two equal columns on phones */
@media (max-width: 720px) {
	.mosaic { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 150px; gap: 10px; }
	.mosaic > *, .mosaic .wp-block-image, .mosaic button, .mosaic .g1 { grid-column: span 1 !important; grid-row: span 1 !important; }
	.mosaic .wp-block-image { height: 100%; }
}

/* Mobile menu: sub-menus open with an arrow button */
.mnav .m-item { border-bottom: 1px solid var(--line-light); }
.mnav .m-item > .m-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.mnav .m-item a.m { border-bottom: 0; flex: 1; }
.mnav .m-tog { flex: 0 0 auto; width: 46px; height: 46px; border-radius: 50%; border: 1.5px solid var(--line-light); background: rgba(255,255,255,.06); color: #fff; display: grid; place-items: center; cursor: pointer; padding: 0; }
.mnav .m-tog .chev { width: 14px; height: 14px; opacity: 1; transition: transform .3s var(--ease); }
.mnav .m-item.open > .m-row .m-tog .chev { transform: rotate(180deg); }
.mnav .m-sub { display: none; flex-direction: column; padding: 0 0 14px 14px; border-left: 2px solid var(--red); margin: 0 0 6px 4px; }
.mnav .m-item.open > .m-sub { display: flex; }
.mnav .m-sub a.m { font-size: 1.15rem; font-weight: 600; letter-spacing: 0; padding: 9px 0; opacity: .92; }
