/*
Theme Name: Accelerate Theme
Theme URI: https://ampwptools.com/accelerate-theme/
Author: AMP Publisher
Author URI: https://ampwptools.com/
Description: Suite block theme for the Site Editor with theme.json and palette-friendly structure. Fast, mobile-ready layout with MVP header and footer.
Version: 1.0.0
Requires at least: 6.2
Tested up to: 6.9.4
Requires PHP: 7.0
License: GPLv3
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: accelerate-theme
Tags: full-site-editing, block-theme, blog, e-commerce, custom-colors, custom-logo, featured-images, editor-style

Accelerate Theme, AMP Publisher.
*/

/* Sticky footer: body column fills viewport; .wp-site-blocks wraps FSE templates; shell + main grow. */
body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	min-height: 100dvh;
}

body > .wp-site-blocks {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
	width: 100%;
	box-sizing: border-box;
}

a,
a:link,
a:visited,
a:hover,
a:focus,
a:active {
  text-decoration: none;
}

#acctheme-site-container.acctheme-site-wrap {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
	width: 100%;
	box-sizing: border-box;
}

#acctheme-site-container.acctheme-site-wrap > header {
	flex-shrink: 0;
	z-index: 1;
}

#acctheme-site-container.acctheme-site-wrap > footer {
	flex-shrink: 0;
}

#acctheme-site-container.acctheme-site-wrap > main {
	flex: 1 0 auto;
}

/* Header strip + mobile burger / mnav (CURSOR ACT001). Legacy parity: burger bar is a sibling before .accelerate-theme-header, not nested inside it. */
.accelerate-theme-header .acctheme-header-main > .wp-block-group {
	align-items: center;
	min-height: 72px;
}

.accelerate-theme-header {
	box-shadow: 0 0 5px var(--wp--preset--color--accent);
}

.wp-block-button .wp-element-button {
	box-shadow: 0 8px 20px color-mix(in srgb, var(--wp--preset--color--accent) 22%, transparent);
}

/* Mobile shell (.mnav): legacy accelerate-patterns-theme behavior (≤900px). */
.acctheme-burgerbar {
	display: none;
	flex-shrink: 0;
	align-items: center;
	justify-content: space-between;
	column-gap: var(--wp--preset--spacing--40, 1rem);
	min-height: var(--wp--preset--spacing--70, 3rem);
	padding-top: 0;
	padding-bottom: 0;
}

.acctheme-burgerbar .acctheme-burgerbar-logo img,
.acctheme-burgerbar .custom-logo {
	max-height: 48px;
	width: auto;
}

.acctheme-sticky-bar {
	position: sticky;
	top: 0;
	z-index: 100010;
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 0 5px var(--wp--preset--color--accent);
}

body.admin-bar .acctheme-sticky-bar {
	top: 32px;
}

@media (max-width: 782px) {
	body.admin-bar .acctheme-sticky-bar {
		top: 46px;
	}
}

/* Core: #wpadminbar is position:absolute ≤600px (scrolls with page); sticky top offset would leave empty band after scroll. */
@media screen and (max-width: 600px) {
	body.admin-bar .acctheme-sticky-bar {
		top: 0;
	}
}

.acctheme-burger-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	cursor: pointer;
	color: var(--wp--preset--color--text);
	-webkit-tap-highlight-color: transparent;
}

.acctheme-burger-toggle:focus {
	outline: 2px solid var(--wp--preset--color--interactive);
	outline-offset: 2px;
}

.acctheme-burger-icon {
	display: block;
	width: 22px;
	height: 2px;
	background-color: currentColor;
	box-shadow: 0 -7px 0 currentColor, 0 7px 0 currentColor;
}

body.acctheme-mnav-open {
	overflow: hidden;
}

@media (min-width: 901px) {
	.acctheme-burgerbar {
		display: none !important;
	}
}

@media (max-width: 900px) {
	.acctheme-burgerbar {
		display: flex !important;
	}

	.acctheme-moboff {
		display: none !important;
	}

	.acctheme-site-wrap.mnav .acctheme-mnavon {
		display: block !important;
	}

	.acctheme-site-wrap.mnav .acctheme-mnavoff {
		display: none !important;
	}

	.acctheme-site-wrap.mnav .acctheme-header-main .wp-block-group {
		display: flex !important;
		flex-direction: column;
		align-items: stretch;
		row-gap: var(--wp--preset--spacing--40, 1rem);
	}

	.acctheme-site-wrap.mnav .accelerate-theme-header {
		box-shadow: none;
	}

	.acctheme-site-wrap.mnav .acctheme-header-main {
		padding-top: var(--wp--preset--spacing--40, 1rem);
		padding-bottom: var(--wp--preset--spacing--50, 1.5rem);
	}

	.acctheme-site-wrap.mnav .acctheme-header-navigation {
		width: 100%;
	}

	.acctheme-site-wrap.mnav .acctheme-header-navigation .wp-block-navigation__container,
	.acctheme-site-wrap.mnav .acctheme-header-navigation .wp-block-page-list {
		flex-direction: column !important;
		align-items: stretch !important;
		flex-wrap: nowrap !important;
		gap: 0 !important;
		width: 100%;
	}

	.acctheme-site-wrap.mnav .acctheme-header-navigation .wp-block-navigation-item {
		width: 100%;
	}

	.acctheme-site-wrap.mnav .acctheme-header-navigation .wp-block-navigation-item__content {
		display: block;
		width: 100%;
		padding: 1em 0;
		border-bottom: 1px solid var(--wp--preset--color--border);
	}

	.acctheme-site-wrap.mnav .acctheme-header-navigation .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content {
		font-weight: bold;
		border-bottom-color: var(--wp--preset--color--accent, #6c0867);
		border-bottom-width: 3px;
	}

	.acctheme-site-wrap.mnav .acctheme-header-navigation .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after {
		content: none;
	}

	/* Sticky footer: main is hidden in mnav; push footer to bottom of shell. */
	#acctheme-site-container.acctheme-site-wrap.mnav > footer {
		margin-top: auto;
	}
}

/* Default header strip — parts/header.html: surface background; nav uses theme link (interactive) token. */
header.wp-block-template-part .accelerate-theme-header .acctheme-header-navigation .wp-block-navigation__submenu-container {
	background-color: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--interactive) !important;
}

header.wp-block-template-part .accelerate-theme-header .acctheme-header-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	color: var(--wp--preset--color--interactive) !important;
}

/*
 * Current-page nav indicator — ref theme ul.none: bold + 3px accent bar under top-level links.
 * Block Navigation outputs .current-menu-item on li and aria-current="page" on the link.
 */
header.wp-block-template-part .accelerate-theme-header .acctheme-header-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
footer.wp-block-template-part .accelerate-theme-footer .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
header.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
footer.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content {
	font-weight: bold;
}

header.wp-block-template-part .accelerate-theme-header .acctheme-header-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
footer.wp-block-template-part .accelerate-theme-footer .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
header.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
footer.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background: var(--wp--preset--color--accent, #6c0867);
}

/* Footer strip — default markup in parts/footer.html: theme class, text token background (.has-text-background-color), no Core has-white-color. */
footer.wp-block-template-part .accelerate-theme-footer:not(.has-white-color) .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

footer.wp-block-template-part .accelerate-theme-footer:not(.has-white-color) .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

footer.wp-block-template-part .accelerate-theme-footer:not(.has-white-color) .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle svg path {
	stroke: var(--wp--preset--color--accent-contrast, #ffffff);
}

footer.wp-block-template-part .accelerate-theme-footer:not(.has-white-color) .wp-block-paragraph.has-text-align-right.has-accent-contrast-color {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

footer.wp-block-template-part .accelerate-theme-footer:not(.has-white-color) .wp-block-navigation .wp-block-navigation__submenu-container {
	background-color: var(--wp--preset--color--text);
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

footer.wp-block-template-part .accelerate-theme-footer:not(.has-white-color) .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

.accelerate-theme-footer.has-text-background-color.has-background {
	padding: .8em 2.375em;
}

/*
 * Cover header/footer heroes: accent-contrast + shadow on targeted typography and top-row nav links only.
 * Submenu markup lives under ul.wp-block-navigation__submenu-container — not matched by …__container > li > …
 */
header.wp-block-template-part .wp-block-cover .wp-block-cover__inner-container .wp-block-site-title,
footer.wp-block-template-part .wp-block-cover .wp-block-cover__inner-container .wp-block-site-title {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
	text-shadow: 0 1px 2px rgb(0 0 0 / 55%), 0 0 24px rgb(0 0 0 / 35%) !important;
}

header.wp-block-template-part .wp-block-cover .wp-block-cover__inner-container .wp-block-site-title a,
footer.wp-block-template-part .wp-block-cover .wp-block-cover__inner-container .wp-block-site-title a {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
	text-shadow: 0 1px 2px rgb(0 0 0 / 55%), 0 0 24px rgb(0 0 0 / 35%) !important;
}

header.wp-block-template-part .wp-block-cover .wp-block-cover__inner-container :where(.wp-block-heading, .wp-block-paragraph, .wp-block-site-tagline),
footer.wp-block-template-part .wp-block-cover .wp-block-cover__inner-container :where(.wp-block-heading, .wp-block-paragraph, .wp-block-site-tagline) {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
	text-shadow: 0 1px 2px rgb(0 0 0 / 55%), 0 0 24px rgb(0 0 0 / 35%) !important;
}

header.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content,
footer.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
	text-shadow: 0 1px 2px rgb(0 0 0 / 55%), 0 0 24px rgb(0 0 0 / 35%) !important;
}

header.wp-block-template-part .wp-block-cover .wp-block-navigation__responsive-container-open,
footer.wp-block-template-part .wp-block-cover .wp-block-navigation__responsive-container-open {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
	text-shadow: 0 1px 2px rgb(0 0 0 / 55%), 0 0 24px rgb(0 0 0 / 35%) !important;
}

header.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle,
footer.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

header.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle svg path,
footer.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle svg path {
	stroke: var(--wp--preset--color--accent-contrast, #ffffff);
}

header.wp-block-template-part .wp-block-cover .wp-block-navigation__responsive-container-open svg,
footer.wp-block-template-part .wp-block-cover .wp-block-navigation__responsive-container-open svg {
	fill: var(--wp--preset--color--accent-contrast, #ffffff);
}

header.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__submenu-container,
footer.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__submenu-container {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

header.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
footer.wp-block-template-part .wp-block-cover .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

/*
 * Solid dark strips: headers (black / text-token background). Footers — Core layouts with black background only — same top-row nav + paragraph rules as above.
 * Default theme stripe is .accelerate-theme-footer:not(.has-white-color) (parts/footer.html). Top-level nav: …__container > li > .wp-block-navigation-item__content.
 */
header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) :where(.wp-block-paragraph, .wp-block-heading),
footer.wp-block-template-part .wp-block-group.has-black-background-color :where(.wp-block-paragraph, .wp-block-heading) {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-paragraph a,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-paragraph a {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-site-title a {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-navigation__responsive-container-open,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-navigation__responsive-container-open {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-navigation__responsive-container-open svg,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-navigation__responsive-container-open svg {
	fill: var(--wp--preset--color--accent-contrast, #ffffff);
}

header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle svg path,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-submenu__toggle svg path {
	stroke: var(--wp--preset--color--accent-contrast, #ffffff);
}

header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-navigation .wp-block-navigation__submenu-container,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-navigation .wp-block-navigation__submenu-container {
	background-color: var(--wp--preset--color--text);
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

header.wp-block-template-part .wp-block-group:is(.has-black-background-color, .has-text-background-color) .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
footer.wp-block-template-part .wp-block-group.has-black-background-color .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent-contrast, #ffffff) !important;
}

/*
 * Footer: first-level submenu opens upward on wide viewports (core uses top:100%). Nested flyouts match core horizontal step.
 */
footer.wp-block-template-part .wp-block-columns,
footer.wp-block-template-part .wp-block-column {
	overflow: visible;
}

@media (min-width: 782px) {
	footer.wp-block-template-part .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-container {
		top: auto !important;
		bottom: 100% !important;
		z-index: 20;
	}

	footer.wp-block-template-part .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-container {
		left: 100% !important;
		right: auto !important;
		top: -1px !important;
		bottom: auto !important;
	}

	footer.wp-block-template-part .wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
		top: 0 !important;
	}
}

/* Featured image: gradient placeholder when no thumbnail and no first content image (useFirstImageFromPost + render_block fallback). */
.wp-block-post-featured-image.acctheme-post-featured-image--placeholder {
	margin-left: 0;
	margin-right: 0;
	position: relative;
	min-height: 8rem;
	box-sizing: border-box;
	background: linear-gradient(
		135deg,
		var(--wp--preset--color--surface-elevated, #f6f7f7) 0%,
		var(--wp--preset--color--border, #cbd5e1) 45%,
		var(--wp--preset--color--surface, #ffffff) 100%
	);
}

.wp-block-post-featured-image.acctheme-post-featured-image--placeholder:empty {
	display: block;
}

/*
 * Query loops only: first-image-from-post <img> lacks core’s inline height/object-fit (post-featured-image.php).
 * Single/page templates keep core behavior for the main featured image.
 */
.wp-block-query .wp-block-post-featured-image img {
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/*
 * WooCommerce blocks default to alignwide; cap them to content width inside constrained main.
 * Hero banner (.acctheme-hero-banner.alignfull) is outside this scope.
 */
#acctheme-site-container main.acctheme-mnavoff .is-layout-constrained > .alignwide,
#acctheme-site-container main.acctheme-mnavoff .is-layout-constrained [class*="wp-block-woocommerce-"].alignwide {
	max-width: var(--wp--style--global--content-size, 1100px);
	width: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
}

/*
 * Product collection cards: spacing via flex gap, not per-block margins.
 * Covers core figure>a>img and theme fallback a>figure markup.
 */
.wp-block-woocommerce-product-collection li.wc-block-product {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: var(--wp--preset--spacing--40, 1rem);
}

.wp-block-woocommerce-product-collection li.wc-block-product > * {
	margin: 0 !important;
}

.wp-block-woocommerce-product-collection li.wc-block-product > a {
	display: block;
	text-decoration: none;
}

.wp-block-woocommerce-product-collection li.wc-block-product .wp-block-post-featured-image,
.wp-block-woocommerce-product-collection li.wc-block-product .wp-block-post-featured-image a,
.wp-block-woocommerce-product-collection li.wc-block-product .wp-block-post-title,
.wp-block-woocommerce-product-collection li.wc-block-product .wp-block-woocommerce-product-price,
.wp-block-woocommerce-product-collection li.wc-block-product .wp-block-woocommerce-product-button,
.wp-block-woocommerce-product-collection li.wc-block-product .wp-block-woocommerce-product-button .wp-block-button__link {
	margin: 0 !important;
}

.wp-block-woocommerce-product-collection .wp-block-post-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Category archives: hero banner, plain title header, breadcrumbs, child category grid. */
body.acctheme-has-hero-banner #acctheme-site-container.acctheme-site-wrap.is-layout-flow > main,
body.acctheme-has-hero-banner #acctheme-site-container.acctheme-site-wrap > main {
	margin-block-start: 0;
}

.acctheme-hero-banner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 320px;
	margin-bottom: var(--wp--preset--spacing--50, 1.5rem);
	padding-top: var(--wp--preset--spacing--70, 3rem);
	padding-right: var(--wp--preset--spacing--50, 1.5rem);
	padding-bottom: var(--wp--preset--spacing--70, 3rem);
	padding-left: var(--wp--preset--spacing--50, 1.5rem);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: center;
	box-sizing: border-box;
}

.acctheme-hero-banner.alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.acctheme-hero-banner::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgb(0 0 0 / 35%);
	pointer-events: none;
}

.acctheme-hero-banner__inner {
	position: relative;
	z-index: 1;
	max-width: var(--wp--style--global--content-size, 1100px);
	margin: 0 auto;
	width: 100%;
}

.acctheme-hero-banner .acctheme-archive-title,
.acctheme-hero-banner h1.acctheme-archive-title,
.acctheme-hero-banner .wp-block-heading.acctheme-archive-title,
.acctheme-hero-banner__inner .acctheme-archive-title,
.acctheme-hero-banner__inner h1,
.acctheme-hero-banner .acctheme-hero-text,
.acctheme-hero-banner__inner .acctheme-hero-text {
	color: #ffffff;
	text-shadow: 0 1px 2px rgb(0 0 0 / 55%), 0 0 24px rgb(0 0 0 / 35%);
}

.acctheme-archive-header--plain {
	max-width: var(--wp--style--global--content-size, 1100px);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: var(--wp--preset--spacing--50, 1.5rem);
	text-align: left;
	box-sizing: border-box;
}

.acctheme-archive-header__inner {
	max-width: var(--wp--style--global--content-size, 1100px);
	margin: 0 auto;
}

.acctheme-block-editor-placeholder {
	padding: var(--wp--preset--spacing--50, 1.5rem);
	border: 1px dashed var(--wp--preset--color--border, #cbd5e1);
	text-align: center;
	color: var(--wp--preset--color--text-muted, #55667a);
	box-sizing: border-box;
}

.acctheme-block-editor-placeholder__label {
	display: block;
	font-size: var(--wp--preset--font-size--small, 0.875rem);
	line-height: 1.4;
}

.acctheme-hero-text {
	font-size: 1.3em;
	margin-top: var(--wp--preset--spacing--40, 1rem);
	line-height: 1.4;
}

.acctheme-archive-header--plain .acctheme-hero-text {
	color: inherit;
	text-shadow: none;
}

.acctheme-breadcrumbs {
	margin-bottom: var(--wp--preset--spacing--40, 1rem);
	font-size: var(--wp--preset--font-size--small, 0.875rem);
	color: var(--wp--preset--color--text-muted, #55667a);
}

.acctheme-breadcrumbs__trail {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.15em;
}

.acctheme-breadcrumbs__link {
	color: var(--wp--preset--color--interactive, #6c0867);
}

.acctheme-breadcrumbs__current {
	color: var(--wp--preset--color--text, #08356c);
}

.acctheme-term-children-grid {
	display: grid;
	grid-template-columns: repeat(var(--acctheme-term-grid-columns, 3), minmax(0, 1fr));
	gap: var(--wp--preset--spacing--60, 2rem);
	margin-bottom: var(--wp--preset--spacing--70, 3rem);
}

.acctheme-term-children-grid__item {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.acctheme-term-children-grid__text {
	padding: var(--wp--preset--spacing--40, 1rem) var(--wp--preset--spacing--50, 1.5rem) var(--wp--preset--spacing--50, 1.5rem);
}

.acctheme-term-card-image,
.acctheme-term-card-image-link {
	display: block;
	width: 100%;
}

.acctheme-term-children-grid .acctheme-list-image--placeholder,
.acctheme-term-children-grid .wp-block-post-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

@media (max-width: 781px) {
	.acctheme-term-children-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 480px) {
	.acctheme-term-children-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.acctheme-hero-banner {
		min-height: 220px;
		padding-top: var(--wp--preset--spacing--50, 1.5rem);
		padding-bottom: var(--wp--preset--spacing--50, 1.5rem);
	}
}
