/* Mobile fix: prevent image-fill media-text images from overflowing into text (festival cards) */
@media (max-width:600px) {
	.wp-block-media-text.is-stacked-on-mobile.is-image-fill-element > .wp-block-media-text__media {
		overflow: hidden;
	}
	
	.wp-block-media-text.is-stacked-on-mobile.is-image-fill-element > .wp-block-media-text__media img {
		height: 100% !important;
		width: 100% !important;
		object-fit: cover;
	}
}

/* Boo Seattle card: ~10% shorter media on mobile to reduce banner crop */
@media (max-width:600px) {
	.wp-block-media-text.boo-card > .wp-block-media-text__media {
		height: 225px;
		min-height: 225px;
	}
}

/* Hero photos: side by side, one line, even widths on mobile */
@media (max-width:600px) {
	.hero-photos {
		flex-wrap: nowrap !important;
		gap: 12px;
	}
	
	.hero-photos .wp-block-image {
		width: 47% !important;
		margin: 0;
	}
	
	.hero-photos .wp-block-image img {
		width: 100% !important;
		height: auto !important;
	}
}

/* mobile nav left + dark overlay menu */
@media (max-width:600px) {
	header.wp-block-template-part .wp-block-group.alignwide.is-content-justification-space-between {
		flex-direction: row-reverse;
	}
}

.wp-block-navigation__responsive-container.is-menu-open {
	background-color: #000 !important;
	color: #fff !important;
}

.wp-block-navigation__responsive-container.is-menu-open a, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	color: #fff !important;
}

.wp-block-navigation__responsive-container-close {
	color: #fff !important;
}

/* overlay items left-aligned like Coachella */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	align-items: flex-start !important;
	justify-content: flex-start !important;
	text-align: left !important;
}

/* overlay menu block itself anchored left */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: flex-start !important;
}

/* Vancouver artist directory: uniform grid */
.wp-block-buttons.artist-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fit,minmax(170px,1fr));
	gap: 10px;
	max-width: 760px;
	margin-left: auto !important;
	margin-right: auto !important;
}

.wp-block-buttons.artist-grid .wp-block-button {
	width: 100%;
}

.wp-block-buttons.artist-grid .wp-block-button__link {
	width: 100%;
	display: block;
	text-align: center;
	font-size: 14px;
	padding: 10px 8px;
}

@media (max-width:600px) {
	.wp-block-buttons.artist-grid {
		grid-template-columns: repeat(2,1fr);
	}
}