/* ————————————————————————————————————— */
/* home
/* 404
/* ————————————————————————————————————— */

.wp-block-cover:not(:has(.wp-block-cover__image-background)) {
	background-color: var(--wp--preset--color--accent-5);
}

/* ————————————————————————————————————— */
/* home
/* ————————————————————————————————————— */

.page-id-815 .wp-block-post-content {
	position: relative; /* 	need for video controls positioning  */
}
#
intro-video {
	margin-top: 0;
}

#intro-video video {
    max-height: calc(100vh - 97px);
    object-fit: contain;
	background-color: #4d217b;
}

/* ————————————————————————————————————— */
/* 404
/* ————————————————————————————————————— */

@media (min-width: 768px) {

	.acceen-404-content {
		max-width: 50vw;
	}

	figure.acceen-404-image {
		position: absolute;
		right: var(--group-padding-inline);
		bottom: 10%;
		max-width: 35vw;
	}
}

@media (max-width: 767px) {

	figure.acceen-404-image {
		margin-block-end: -5rem !important;
	}
}

/* ————————————————————————————————————— */
/* accordion
/* button
/* card
/* footer
/* group
/* header
/* latest articles
/* table
/* video
/* ————————————————————————————————————— */

html {
	scroll-behavior: smooth;
}

.wp-block-group > h1 + p,
.wp-block-group > h2 + p,
.wp-block-group > h3 + p,
.wp-block-group > h4 + p,
.wp-block-group > h5 + p,
.wp-block-group > h6 + p,
.wp-block-group > p + p,
:root :where(.is-layout-constrained) > p + p,
:root :where(.is-layout-constrained) > p + ul,
:root :where(.is-layout-constrained) > p + ol,
:root :where(.is-layout-constrained) > ul + p,
:root :where(.is-layout-constrained) > ol + p {
	margin-block-start: 1.25em !important;
}

/* ————————————————————————————————————— */
/* accordion
/* ————————————————————————————————————— */

.wp-block-accordion {
	margin-block-start: var(--block-spacing);
}

.wp-block-accordion-panel,
.wp-block-accordion-panel > * {
	margin-block-start: 1.5rem;
}

.wp-block-accordion-heading {
	font-size: 1.25rem;
}

.wp-block-accordion-item {
	margin-block-start: 2rem;
	padding-block-start: 2rem;	
}
.wp-block-accordion-item + .wp-block-accordion-item:before {
	content: "";
	display: block;
	width: 100%;
	border-top: 1px solid currentColor;
	opacity: 0.25;
	transform: translateY(-2rem);
}

/* ————————————————————————————————————— */
/* button
/* ————————————————————————————————————— */

.wp-element-button.has-background.has-small-font-size {
	padding-inline: 1.5rem;
	padding-block: 0.75rem;
}

/* ————————————————————————————————————— */
/* card
/* ————————————————————————————————————— */

.acceen-cards {
	justify-content: center;
	flex-wrap: wrap;
	max-width: unset;
	gap: 1rem;
}
.wp-block-acceen-blocks-custom-card {
	border-radius: var(--border-radius);
}
.acceen-cards > .wp-block-acceen-blocks-custom-card {
	flex: none;
	width: 100%;
	box-sizing: border-box;
}

@media (min-width: 568px) {
	.acceen-cards:has(> .wp-block-acceen-blocks-custom-card:nth-child(2))
	> .wp-block-acceen-blocks-custom-card {
		flex: 1;
	}

	.acceen-cards:has(
	> .wp-block-acceen-blocks-custom-card:is(
	:nth-child(3),
	:nth-child(4),
	:nth-child(5),
	:nth-child(6)
	)
	)
	> .wp-block-acceen-blocks-custom-card {
		width: 48%;
	}
}

@media (min-width: 1024px) {
	.acceen-cards:has(> .wp-block-acceen-blocks-custom-card:nth-child(3))
	> .wp-block-acceen-blocks-custom-card {
		flex: 1;
	}

	.acceen-cards:has(
	> .wp-block-acceen-blocks-custom-card:is(
	:nth-child(5),
	:nth-child(6)
	)
	)
	> .wp-block-acceen-blocks-custom-card {
		width: 32%;
		flex: none;
	}
}

@media (min-width: 1280px) {
	.acceen-cards:has(> .wp-block-acceen-blocks-custom-card:nth-child(4))
	> .wp-block-acceen-blocks-custom-card {
		flex: 1;
	}
	.acceen-cards:has(
	> .wp-block-acceen-blocks-custom-card:is(
	:nth-child(5),
	:nth-child(6)
	)
	)
	> .wp-block-acceen-blocks-custom-card {
		width: 32%;
		flex: none;
	}
}

@media (min-width: 1440px) {
	.acceen-cards:has(> .wp-block-acceen-blocks-custom-card:nth-child(5))
	> .wp-block-acceen-blocks-custom-card {
		flex: 1;
	}

	.acceen-cards:has(> .wp-block-acceen-blocks-custom-card:nth-child(6))
	> .wp-block-acceen-blocks-custom-card {
		width: 32%;
		flex: none;
	}
}

@media (min-width: 1680px) {
	.acceen-cards:has(> .wp-block-acceen-blocks-custom-card:nth-child(6))
	> .wp-block-acceen-blocks-custom-card {
		flex: 1;
	}
}

.acceen-table-cards {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1rem;
	padding: 0;
	margin: 0;
	margin-block-start: var(--block-spacing);
}

/* horizontal cards on CEE page */

.acceen-table-card {
	display: flex;
	flex-direction: column;
	align-items: baseline;
	padding: 1.5rem;
	gap: 1.5rem;
	background-color: var(--wp--preset--color--accent-2);
	border-radius: 0.5rem;
	width: 100%;
}
.acceen-table-card h3,
.acceen-table-card p {
	margin: 0;
}

.acceen-table-card .acceen-table-card {
	padding: 0;
}

@media (min-width: 767px) {
	.acceen-table-card {
		flex-direction: row;
		text-align: left;
	}

	.acceen-table-card .card_title {
		flex-basis: 33%;
	}

	.acceen-table-card .card_content {
		flex: 1;
	}
}

/* ————————————————————————————————————— */
/* footer
/* ————————————————————————————————————— */

footer {
	margin: 0;
	/* needed so that footer is on top of 404 page logo */
	position: relative;
	z-index: 1;
}

footer a {
	/* for outline with keyboard navigation */
	border-radius: .25rem;
}

footer > .wp-block-group {
	padding-inline: var(--group-padding-inline) !important;
	padding-block: var(--group-padding-block) !important;	
}

/* ————————————————————————————————————— */
/* group
/* ————————————————————————————————————— */

.wp-block-group {
	--wp--preset--spacing--70: var(--group-padding-block);
	--wp--preset--spacing--80: var(--group-padding-inline);
}

.error404 .acceen-group > .wp-block-group,
.wp-block-post-content > .wp-block-group {
	/*
	margin-block-start: 0;
	padding-inline: var(--group-padding-inline) !important;
	padding-block: var(--group-padding-block) !important;
	*/
}

.wp-block-post-content > .wp-block-group > h1,
.wp-block-post-content > .wp-block-group > h2,
.wp-block-post-content > .wp-block-group > h3,
.wp-block-post-content > .wp-block-group > h4,
.wp-block-post-content > .wp-block-group > h5,
.wp-block-post-content > .wp-block-group > h6 {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
}

.wp-block-post-content > .wp-block-group > p {
	max-width: var(--wp--style--global--content-size);
	margin-inline: auto;
}

.wp-block-post-content > .wp-block-group.has-background {
	/*
	padding-block-start: var(--group-padding-block-lg) !important;
	padding-block-end: var(--group-padding-block-lg) !important;
	*/
	position: relative;
}

.wp-block-post-content > .wp-block-group.has-background[style*="background"]:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.3);
}

.wp-block-post-content > .wp-block-group.has-background > * {
	position: relative;
	z-index: 1;
}

@media (max-width: 1023px) {
	.has-global-padding,
	.has-global-padding > .alignfull {
		padding-inline: 0;
		margin-inline: 0;
	}
}

/* ————————————————————————————————————— */
/* header
/* ————————————————————————————————————— */

header a {
	/* for outline with keyboard navigation */
	border-radius: .25rem;
}

header li.current-menu-item a {
	text-decoration: underline !important;
}

header:has(.is-position-sticky) {
	position: sticky;
	top: 0;
	z-index: 100;	
}

header > .wp-block-group,
.wp-block-navigation__responsive-container.is-menu-open {
	padding-block: var(--header-padding-block) !important;
	padding-inline: var(--group-padding-inline) !important;
}

.acceen-header-logo {
	transform: translateY(-.25rem);
}

/* dropdown */

.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
	border: 0;
	padding: 1rem;
	border-radius: 0.5rem;
	min-width: 240px !important;
	text-align: right;
}

.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: .75rem;
}

.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content {
	padding: 0;
}

.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container a {
	justify-content: flex-end;
}

/* change mobile menu breakpoint */

@media (max-width: 1023px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}
	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		bottom: 0;
		display: none;
		left: 0;
		position: fixed;
		right: 0;
		top: 0;
	}	
}

/* mobile menu */

.wp-block-navigation__responsive-container {
	background-color: var(--wp--preset--color--accent-2) !important;	
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list {
	align-items: flex-start;
	width: 100%;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
	padding-block-start: 1rem;
	padding-inline: 1rem;
}

.wp-block-navigation__responsive-container.is-menu-open li {
	font-size: 1rem !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container.is-responsive > li:before {
	content: "";
	display: block;
	width: calc(100% + var(--group-padding-inline) + var(--group-padding-inline));
	border-top: 1px solid currentColor;
	opacity: 0.25;
	transform: translateY(-1.25rem);
	margin-inline-start: var(--group-padding-inline-minus);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container.is-responsive > li + li {
	padding-block-start: 1.25rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container.is-responsive a:not([href]) {
	opacity: 0.5;
}

/* ————————————————————————————————————— */
/* latest articles
/* ————————————————————————————————————— */

.wp-block-latest-posts__featured-image {
	margin-block-end: 1rem;
}

.wp-block-latest-posts__featured-image a {
	width: 100%;
}
.wp-block-latest-posts__featured-image img,
.wp-block-post-featured-image img {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	border-radius: var(--border-radius);
}

.wp-block-latest-posts__post-title {
	font-family: var(--wp--preset--font-family--baloo-2);
	font-size: 1.25rem;
	text-decoration: none;
}

.wp-block-latest-posts__post-excerpt {
	font-size: 1rem;
}

.wp-block-post-excerpt__more-text {
	margin-top: 0.5rem;
}

/* ————————————————————————————————————— */
/* table
/* ————————————————————————————————————— */

.wp-block-table table {
	border-radius: var(--border-radius);
	overflow: hidden;
	font-size: initial;
}

.wp-block-table.is-style-stripes {
	border-bottom: 0
}

.wp-block-table thead {
	font-size: 0.875rem;
	border-bottom-width: 2px;
}

.wp-block-table table + .wp-element-caption {
	margin-block-start: 1rem;
	text-align: center;
}
li.wp-block-navigation-item:focus {
	outline: none;
}

/* ————————————————————————————————————— */
/* video
/* ————————————————————————————————————— */

.wp-block-column .wp-block-video video {
	border-radius: var(--border-radius);
}

/* ————————————————————————————————————— */
/* custom
/* ————————————————————————————————————— */

:root {
	--header-padding-block: 2rem;
	--block-spacing: 3rem;
	--group-padding-inline: 7.5vw;
	--group-padding-inline-minus: -7.5vw;
	--group-padding-block: 5rem;
	--group-padding-block-lg: 7.5rem;
	--logo-width: 15rem;
	--border-radius: 0.75rem;
}

@media (max-width: 767px) {
	:root {
		--header-padding-block: 1rem;
		--group-padding-inline: 1rem;
		--group-padding-inline-minus: -1rem;
		--group-padding-block: 3rem;
		--group-padding-block-lg: 3rem;
		--logo-width: 12.5rem;
	}
}

/* ————————————————————————————————————— */
/* overrides
/* ————————————————————————————————————— */

