/* Final shared pass: page chrome and reused section behavior. */

.site-header {
	position: relative !important;
	top: auto !important;
	z-index: 50 !important;
	background: var(--color-good-work-green) !important;
	color: var(--color-caring-cream) !important;
}

.site-header .grid-container-full,
.footer__inner,
.events-archive__inner,
.blog-intro__inner,
.blog-archive__inner,
.get-involved-intro__inner,
.ways__inner,
.volunteer__inner,
.testimonial__inner,
.event-detail__inner,
.detail-testimonial__inner {
	width: min(var(--grid-max), calc(100% - var(--grid-gutter-desktop))) !important;
	max-width: var(--grid-max) !important;
	margin-right: auto !important;
	margin-left: auto !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.site-logo img {
	width: 143px !important;
	height: auto !important;
}

.main-menu {
	align-items: center !important;
	gap: clamp(14px, 1.45vw, 24px) !important;
}

.main-menu a {
	font-size: clamp(11px, .72vw, 14px) !important;
	letter-spacing: .14em !important;
}

.main-menu .current-menu-item > a {
	color: var(--color-lemon-lime) !important;
}

.main-menu .is-button a {
	min-height: 42px !important;
	border-radius: 999px !important;
	padding: 12px 20px 9px !important;
}

.main-menu .is-volunteer a,
.main-menu .is-button:last-child a {
	border-color: var(--color-lemon-lime) !important;
	background: var(--color-lemon-lime) !important;
	color: var(--color-good-work-green) !important;
}

.main-menu .is-donate a {
	border-color: var(--color-caring-cream) !important;
	background: transparent !important;
	color: var(--color-caring-cream) !important;
}

.blog-intro {
	text-align: center !important;
}

.blog-intro__inner {
	min-height: clamp(360px, 38vw, 540px) !important;
	align-items: center !important;
	justify-content: center !important;
	padding-top: clamp(80px, 8vw, 140px) !important;
	padding-bottom: clamp(54px, 6vw, 92px) !important;
}

.blog-intro h1 {
	max-width: 980px !important;
	font-size: clamp(58px, 8vw, 112px) !important;
}

.blog-intro__body {
	max-width: 42rem !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.blog-card {
	position: relative !important;
	padding-right: 18px !important;
	padding-left: 18px !important;
}

.blog-card__media img,
.event-card__media img {
	display: block!important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1.5 !important;
	object-fit: cover !important;
}

.blog-card__badge {
	top: 12px !important;
	right: 30px !important;
	z-index: 2 !important;
	width: min(44%, 176px) !important;
}

.blog-card__read-more img,
.events__link img,
.event-card__link img,
.related-card__read-more img {
	display: block!important;
}

.blog-card__read-more::after,
.related-card__read-more::after,
.events__link::after {
	content:"" !important;
	display: block!important;
	width: .55rem !important;
	height: .55rem !important;
	border-top: 2px solid currentColor !important;
	border-right: 2px solid currentColor !important;
	margin-left: .35rem !important;
	transform: rotate(45deg) !important;
}

.events-page .events-intro__inner {
	padding-top: clamp(76px, 7vw, 118px) !important;
	padding-bottom: clamp(32px, 4vw, 54px) !important;
}

.events-page .events-intro h1 {
	font-size: clamp(54px, 5.8vw, 88px) !important;
}

.events-grid {
	display: flex!important;
	flex-wrap: wrap !important;
	row-gap: clamp(56px, 7vw, 94px) !important;
}

.events-grid > .grid-33,
.events-grid > .tablet-grid-50,
.events-grid > .mobile-grid-100,
.blog-grid > .grid-33,
.blog-grid > .tablet-grid-50,
.blog-grid > .mobile-grid-100 {
	float: none !important;
}

.event-card {
	padding-right: 18px !important;
	padding-left: 18px !important;
}

.event-card h3 a {
	color: inherit !important;
	text-decoration: none !important;
}

.events__badge,
.events__pill {
	display: flex!important;
	align-items: center !important;
	width: fit-content !important;
	border-radius: 999px !important;
	color: var(--color-barnwood-brown) !important;
	font-family: var(--font-accent) !important;
	font-size: var(--text-xs) !important;
	font-weight: var(--font-weight-bold) !important;
	letter-spacing: var(--tracking-widest) !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
}

.events__badge {
	min-height: 30px !important;
	background: var(--event-badge-color, var(--color-paper)) !important;
	padding: 8px 14px 6px !important;
}

.events__pills {
	display: flex!important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	margin: 0 !important;
}

.events__pill {
	min-height: 32px !important;
	border: 1.5px solid rgba(46, 29, 24, .85) !important;
	padding: 8px 12px 6px !important;
}

.events__link {
	display: flex!important;
	align-items: center !important;
	color: var(--color-barnwood-brown) !important;
	font-family: var(--font-accent) !important;
	font-size: var(--text-xs) !important;
	font-weight: var(--font-weight-bold) !important;
	letter-spacing: var(--tracking-widest) !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
}

.event-card__graphic {
	position: relative !important;
	overflow: hidden !important;
	aspect-ratio: 1.5 !important;
	border-radius: 10px !important;
	background: var(--color-barnwood-brown) !important;
}

.event-card__graphic-logo {
	position: absolute !important;
	inset: 12% 18% auto !important;
	width: 64% !important;
	max-width: none !important;
	opacity: .25 !important;
}

.event-card__graphic-layer {
	position: absolute !important;
	left: 50% !important;
	width: 118% !important;
	max-width: none !important;
	transform: translateX(-50%) !important;
	pointer-events: none !important;
}

.event-card__graphic-layer--one {
	bottom: 22% !important;
	z-index: 2 !important;
}

.event-card__graphic-layer--two {
	bottom: 16% !important;
	z-index: 1 !important;
}

.event-card__graphic-layer--three {
	bottom: -1% !important;
	z-index: 3 !important;
}

.event-card__graphic-layer--four {
	bottom: 2% !important;
	z-index: 4 !important;
}

.insta-grid__items {
	display: flex!important;
	flex-wrap: wrap; gap: var(--column-gap, 2rem);
	gap: 24px !important;
}

.insta-grid__items > .grid-25,
.insta-grid__items > .grid-33,
.insta-grid__items > .tablet-grid-50,
.insta-grid__items > .mobile-grid-100,
.insta-card,
.insta-grid__item {
	float: none !important;
	flex: 0 0 calc((100% - 48px) / 3) !important;
	width: calc((100% - 48px) / 3) !important;
	margin: 0 !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
	box-sizing: border-box !important;
}

.insta-card,
.insta-grid__item {
	display: block!important;
	aspect-ratio: 1 !important;
}

.insta-card img,
.insta-grid__item img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

.footer {
	position: relative !important;
	left: 50% !important;
	width: 100vw !important;
	margin-left: -50vw !important;
	background: var(--color-barnwood-brown) !important;
}

.footer__divider {
	display: block!important;
	width: min(100%, 70rem) !important;
	height: 1px !important;
	object-fit: fill !important;
}

.footer__content {
	display: flex!important;
	flex-wrap: wrap; gap: var(--column-gap, 2rem);
	align-items: center !important;
	gap: clamp(48px, 8vw, 128px) !important;
	width: min(100%, 70rem) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.footer__links {
	display: flex!important;
	flex-wrap: wrap; gap: var(--column-gap, 2rem);
	gap: clamp(28px, 4vw, 48px) !important;
}

.footer__link-column,
.footer__social,
.footer__button-stack {
	gap: 14px !important;
}

.event-detail {
	padding-top: clamp(72px, 8vw, 128px) !important;
	background:
		linear-gradient(rgba(255, 249, 237, .88), rgba(255, 249, 237, .88)),
		url("figma-cta-social/gallery-paper.png") !important;
	background-size: cover !important;
}

.event-detail__media img {
	width: 100% !important;
}

.event-detail__card {
	border-radius: 8px !important;
}

.detail-testimonial__card {
	border-radius: 8px !important;
}

@media screen and (max-width: 1100px) {
	.main-menu {
		gap: 12px !important;
	}

	.main-menu a {
		font-size: 11px !important;
		letter-spacing: .11em !important;
	}
}

@media screen and (max-width: 920px) {
	.site-header .grid-container-full,
	.footer__inner,
	.events-archive__inner,
	.blog-intro__inner,
	.blog-archive__inner,
	.get-involved-intro__inner,
	.ways__inner,
	.volunteer__inner,
	.testimonial__inner,
	.event-detail__inner,
	.detail-testimonial__inner {
		width: min(var(--grid-max), calc(100% - var(--grid-gutter-mobile))) !important;
	}

	.blog-card,
	.event-card {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.blog-card__badge {
		right: 12px !important;
	}

	.insta-grid__items {
		flex-wrap: wrap; gap: var(--column-gap, 2rem);
	}

	.insta-grid__items > .grid-25,
	.insta-grid__items > .grid-33,
	.insta-grid__items > .tablet-grid-50,
	.insta-grid__items > .mobile-grid-100,
	.insta-card,
	.insta-grid__item {
		flex-basis: calc((100% - 24px) / 2) !important;
		width: calc((100% - 24px) / 2) !important;
		margin: 0 !important;
	}

	.footer__content,
	.footer__links {
		flex-wrap: wrap; gap: var(--column-gap, 2rem);
		justify-items: center !important;
		text-align: center !important;
	}

	.footer__link-column,
	.footer__social,
	.footer__button-stack {
		align-items: center !important;
	}
}

@media screen and (max-width: 560px) {
	.insta-grid__items {
		flex-wrap: wrap; gap: var(--column-gap, 2rem);
	}

	.insta-grid__items > .grid-25,
	.insta-grid__items > .grid-33,
	.insta-grid__items > .tablet-grid-50,
	.insta-grid__items > .mobile-grid-100,
	.insta-card,
	.insta-grid__item {
		flex-basis: 100% !important;
		width: 100% !important;
		margin: 0 !important;
	}
}

/* sectionQA pass: normalize repeated cards and section joins across generated pages. */
.market-grid,
.events-grid,
.blog-grid,
.blog-featured__row,
.products__grid,
.events__grid,
.ways__grid {
	align-items: stretch !important;
}

.market-grid > *,
.events-grid > *,
.blog-grid > *,
.blog-featured__row > *,
.products__grid > *,
.events__grid > *,
.ways__grid > * {
	float: none !important;
}

.market-card,
.event-card,
.blog-card,
.product-card,
.way-card,
.events__card,
.related-card {
	display: flex!important;
	height: auto !important;
	min-width: 0 !important;
	align-self: stretch !important;
	flex-direction: column !important;
}

.testimonials .swiper-wrapper {
	align-items: stretch !important;
}

.testimonials .testimonial-slide {
	height: auto !important;
	align-self: stretch !important;
}

.blog-card__content,
.product-card__content {
	display: flex!important;
	flex: 1 1 auto !important;
	flex-direction: column !important;
}

.market-card__link,
.event-card__actions,
.blog-card__read-more,
.blog-featured__read-more,
.product-card details,
.way-card .button {
	margin-top: auto !important;
}

.market-card__media,
.event-card__media,
.event-card__graphic,
.blog-card__media,
.product-card__image {
	flex: 0 0 auto !important;
}

.event-card__location,
.blog-card__excerpt,
.way-card p {
	flex: 0 0 auto !important;
}

.blog-card__read-more,
.blog-featured__read-more,
.events__link,
.event-card__link,
.related-card__read-more,
.market-card__link {
	white-space: nowrap !important;
}

.cta {
	left: 50% !important;
	width: 100vw !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: -50vw !important;
}

.cta__layer {
	left: 50% !important;
	width: 100vw !important;
	max-width: none !important;
	transform: translateX(-50%) !important;
}

.cta .button--blue-outline,
.cta .button--green-outline,
.cta .button--radish-outline {
	border-color: rgba(255, 249, 237, .84) !important;
	background: rgba(12, 41, 35, .18) !important;
	color: var(--color-caring-cream) !important;
}

.cta .button--blue {
	border-color: var(--color-sky-blue) !important;
	background: var(--color-sky-blue) !important;
	color: var(--color-breezy-blue) !important;
}

.footer::before {
	left: 50% !important;
	width: 100vw !important;
	max-width: none !important;
	transform: translateX(-50%) !important;
}

.contact-faqs {
	padding-bottom: clamp(72px, 7vw, 118px) !important;
}

.faq-group {
	margin: 0 !important;
	scroll-margin-top: 110px !important;
}

.faq-group + .faq-group {
	margin-top: 42px !important;
}

@media screen and (max-width: 640px) {
	.blog-archive,
	.events-archive,
	.market-archive,
	.ways,
	.volunteer,
	.testimonial,
	.testimonials,
	.products,
	.specialty-product {
		padding-top: 64px !important;
		padding-bottom: 72px !important;
	}

	.product-intro {
		padding-top: 56px !important;
		padding-bottom: 126px !important;
	}

	.product-intro__bottom {
		height: 132px !important;
	}

	.in-season {
		padding-top: 46px !important;
		padding-bottom: 128px !important;
	}

	.in-season__bottom {
		height: 134px !important;
	}

	.testimonial-slide {
		min-height: auto !important;
	}
}

