/*
 * eCampusOntario Theme
 * Global style rules
 */

:root {
	--eco-max-screen-width: 1200px;
	--eco-row-padding-horizontal: 2rem;
	--eco-row-padding-left: var(--eco-row-padding-horizontal);
	--eco-row-padding-right: var(--eco-row-padding-horizontal);
	--eco-row-padding-vertical: 2rem;
	--eco-row-padding-top: var(--eco-row-padding-vertical);
	--eco-row-padding-bottom: var(--eco-row-padding-vertical);
	--eco-button-padding: 0.75rem 1.25rem;
	--eco-button-border-radius: 0.35rem;
	--eco-font-size-normal: 1rem;
	--eco-line-height: 1.6;
	--eco-line-height-heading: 1.2;
	--eco-link-hover-color: #c00;
	--eco-link-active-color: #f00;
	--eco-outline-width: 3px;
	--eco-outline-color: #0bf;
	--eco-outline: 3px solid #0bf;
	--eco-outline-offset: 3px;
}

html {
	font-size: 100%;
}

body {
	margin: 0;
	padding: 0;
	color: var(--wp--preset--color--aubergine);
	font-size: var(--eco-font-size-normal);
}

main {
	line-height: var(--eco-line-height);
}

h1 {
	font-size: 2.5rem;
}

h2 {
	font-size: 2rem;
}

h3 {
	font-size: 1.75rem;
}

h4 {
	font-size: 1.5rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top: 1rem;
	margin-bottom: 1rem;
	font-weight: bold;
	line-height: var(--eco-line-height-heading);
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	margin-top: 0;
}

a {
	text-decoration: underline;
}

a:link,
a:visited {
	color: var(--wp--preset--color--steel-200);
}

a:not(.wp-block-read-more):hover,
a:not(.wp-block-read-more):focus-visible {
	/*color: var(--eco-link-hover-color);*/
	text-decoration: underline;
}

a:active {
	color: var(--eco-link-active-color);
}

a:focus-visible {
	outline: var(--eco-outline);
	outline-offset: var(--eco-outline-offset);
	border-radius: 1px;
}

@media (prefers-contrast: more) {
	a:hover,
	a:focus-visible {
		text-decoration: underline !important;
	}
}

.has-aubergine-background-color a:link,
.has-aubergine-background-color a:visited {
	color: var(--wp--preset--color--tangerine);
}

.has-aubergine-background-color a:not(.wp-block-read-more):hover,
.has-aubergine-background-color a:not(.wp-block-read-more):focus-visible {
	color: var(--wp--preset--color--tangerine-75);
	text-decoration: underline;
}

.has-aubergine-background-color a:active {
	color: var(--eco-link-active-color);
}

nav ul {
	list-style: none;
	padding: 0;
}

nav li {
	padding-left: 0;
}

/* ============================================================
 * Definition list, used on the About page
 * ============================================================ */
/* dl {} */

dt {
	font-size: 1.5rem;
	font-weight: bold;
}

dd {
	margin-left: 0;
	margin-bottom: 1rem;
}

dd:last-child {
	margin-bottom: 0;
}

/* ============================================================
 * Row Padding/Margin
 * ============================================================ */

.hidden-home-carousel-logo-heading-text-and-button
	.wp-block-splide-carousel
	.splide__arrows--ltr
	.splide__arrow--prev,
.wp-block-splide-carousel__container
	.wp-block-splide-carousel
	.splide__arrows--ltr
	.splide__arrow--prev {
	left: 1rem;
}

.hidden-home-carousel-logo-heading-text-and-button
	.wp-block-splide-carousel
	.splide__arrows--ltr
	.splide__arrow--next,
.wp-block-splide-carousel__container
	.wp-block-splide-carousel
	.splide__arrows--ltr
	.splide__arrow--next {
	right: 1rem;
}

.hidden-home-carousel-logo-heading-text-and-button
	.wp-block-splide-carousel__container
	.wp-block-splide-carousel__track {
	margin-left: 0;
	margin-right: 0;
}

.wp-block-splide-carousel__container .wp-block-splide-carousel__track {
	margin-left: 75px;
	margin-right: 75px;
}

.wp-block-splide-carousel .wp-block-cover {
	padding-left: 75px;
	padding-right: 75px;
}

main > .wp-block-group,
main > .wp-block-post-content > .wp-block-group,
.wp-admin .is-root-container > .wp-block-group {
	padding-top: var(--eco-row-padding-top);
	padding-bottom: var(--eco-row-padding-bottom);
}

main > .wp-block-group:first-child:not(.has-background) {
	padding-top: 0;
}

main > .wp-block-group > :first-child,
main > .wp-block-post-content > .wp-block-group > :first-child,
main > .wp-block-post-content > .wp-block-group > :first-child,
.wp-admin .is-root-container > .wp-block-group > :first-child {
	margin-top: 0;
}

main > .wp-block-group > :last-child,
main > .wp-block-post-content > .wp-block-group > :last-child,
main > .wp-block-post-content > .wp-block-group > :last-child,
.wp-admin .is-root-container > .wp-block-group > :last-child {
	margin-bottom: 0;
}

main > .wp-block-group.eco-no-padding-top,
main > .wp-block-post-content > .wp-block-group.eco-no-padding-top,
.wp-admin .is-root-container > .wp-block-group.eco-no-padding-top {
	padding-top: 0;
}

main > .wp-block-group.eco-no-padding-bottom,
main > .wp-block-post-content > .wp-block-group.eco-no-padding-bottom,
.wp-admin .is-root-container > .wp-block-group.eco-no-padding-bottom {
	padding-bottom: 0;
}

main > .wp-block-group.eco-no-padding-vertical,
main > .wp-block-post-content > .wp-block-group.eco-no-padding-vertical,
.wp-admin .is-root-container > .wp-block-group.eco-no-padding-vertical {
	padding-top: 0;
	padding-bottom: 0;
}

.eco-padding-top {
	padding-top: var(--eco-row-padding-top);
}

.eco-padding-bottom {
	padding-bottom: var(--eco-row-padding-bottom);
}

.eco-padding-vertical {
	padding-top: var(--eco-row-padding-top);
	padding-bottom: var(--eco-row-padding-bottom);
}

.eco-padding-left {
	padding-left: var(--eco-row-padding-left);
}

.eco-padding-right {
	padding-right: var(--eco-row-padding-right);
}

.eco-padding-horizontal {
	padding-left: var(--eco-row-padding-left);
	padding-right: var(--eco-row-padding-right);
}

main
	> *:not(
		.wp-block-post-content,
		.eco-no-padding-horizontal,
		:has(.eco-full-width-background)
	),
main
	> .wp-block-post-content
	> *:not(.eco-no-padding-horizontal, :has(.eco-full-width-background)),
main
	> .eco-post
	> .wp-block-post-content
	> *:not(.eco-no-padding-horizontal, :has(.eco-full-width-background)),
.eco-padding-horizontal,
.eco-breadcrumbs,
.eco-banner-main,
.wp-block-ecampusontario-eco-global-footer .eco-footer,
.eco-tab-padding-horizontal.eco-tabs .tb__tab-content {
	padding-left: 2rem;
	padding-right: 2rem;
}

@media screen and (min-width: 1200px) {
	main > *:not(.wp-block-post-content, :has(.eco-full-width-background)),
	main
		> .wp-block-post-content
		> *:not(.eco-no-padding-horizontal, :has(.eco-full-width-background)),
	main
		> .eco-post
		> .wp-block-post-content
		> *:not(.eco-no-padding-horizontal, :has(.eco-full-width-background)),
	.eco-padding-horizontal,
	.eco-breadcrumbs,
	.eco-banner-main,
	.wp-block-ecampusontario-eco-global-footer .eco-footer,
	.eco-tab-padding-horizontal.eco-tabs .tb__tab-content {
		padding-left: max(calc((100% - var(--eco-max-screen-width)) / 2), 2rem);
		padding-right: max(calc((100% - var(--eco-max-screen-width)) / 2), 2rem);
	}

	.eco-split-banner .eco-banner-content {
		padding-left: calc((100% - var(--eco-max-screen-width)) / 2);
	}

	.eco-padding-left {
		padding-left: max(calc((100% - var(--eco-max-screen-width)) / 2), 2rem);
	}

	.eco-padding-right {
		padding-right: max(calc((100% - var(--eco-max-screen-width)) / 2), 2rem);
	}

	.eco-margin-left {
		margin-left: max(calc((100% - var(--eco-max-screen-width)) / 2), 2rem);
	}

	.eco-margin-right {
		margin-right: max(calc((100% - var(--eco-max-screen-width)) / 2), 2rem);
	}

	.wp-block-splide-carousel .wp-block-cover {
		padding-left: calc((100% - var(--eco-max-screen-width)) / 2 + 75px);
		padding-right: calc((100% - var(--eco-max-screen-width)) / 2 + 75px);
	}

	.hidden-home-carousel-logo-heading-text-and-button
		.wp-block-splide-carousel
		.splide__arrows--ltr
		.splide__arrow--prev,
	.wp-block-splide-carousel__container
		.wp-block-splide-carousel
		.splide__arrows--ltr
		.splide__arrow--prev {
		left: 0;
	}

	.hidden-home-carousel-logo-heading-text-and-button
		.wp-block-splide-carousel
		.splide__arrows--ltr
		.splide__arrow--next,
	.wp-block-splide-carousel__container
		.wp-block-splide-carousel
		.splide__arrows--ltr
		.splide__arrow--next {
		right: 0;
	}

	.eco-tab-padding-horizontal.eco-tabs .tb__tab-content,
	.hidden-home-carousel-logo-heading-text-and-button
		.wp-block-splide-carousel__container
		.wp-block-splide-carousel__track {
		margin-left: 0;
		margin-right: 0;
	}

	.wp-block-splide-carousel__container .wp-block-splide-carousel__track {
		margin-left: calc((100% - var(--eco-max-screen-width)) / 2 + 75px);
		margin-right: calc((100% - var(--eco-max-screen-width)) / 2 + 75px);
	}

	.eco-full-width-background,
	main > .eco-no-padding-horizontal,
	.eco-full-width-background > .eco-full-width-background,
	.wp-block-splide-carousel:has(.wp-block-cover),
	div.wp-block-group.eco-section-heading-wrapper,
	div.eco-full-width-background {
		padding-left: 0;
		padding-right: 0;
	}

	.eco-section-heading-wrapper {
		margin-left: 0;
		margin-right: 0;
	}

	.eco-horizontal-margin,
	.eco-section-heading-wrapper {
		margin-left: max(calc((100% - var(--eco-max-screen-width)) / 2), 2rem);
		margin-right: max(calc((100% - var(--eco-max-screen-width)) / 2), 2rem);
	}
}

@media screen and (min-width: 1350px) {
	.hidden-home-carousel-logo-heading-text-and-button
		.wp-block-splide-carousel
		.splide__arrows--ltr
		.splide__arrow--prev,
	.wp-block-splide-carousel__container
		.wp-block-splide-carousel
		.splide__arrows--ltr
		.splide__arrow--prev {
		left: calc((100% - var(--eco-max-screen-width)) / 2 - 75px);
	}

	.hidden-home-carousel-logo-heading-text-and-button
		.wp-block-splide-carousel
		.splide__arrows--ltr
		.splide__arrow--next,
	.wp-block-splide-carousel__container
		.wp-block-splide-carousel
		.splide__arrows--ltr
		.splide__arrow--next {
		right: calc((100% - var(--eco-max-screen-width)) / 2 - 75px);
	}

	.wp-block-splide-carousel .wp-block-cover {
		padding-left: calc((100% - var(--eco-max-screen-width)) / 2);
		padding-right: calc((100% - var(--eco-max-screen-width)) / 2);
	}
}

/* ============================================================
 * Utility classes
 * ============================================================ */

.text-center {
	text-align: center;
}

.text-right {
	text-align: right;
}

.eco-hidden {
	display: none;
}

.eco-icon {
	fill: currentColor;
}

.eco-logo {
	height: 4rem;
}

.eco-subtle-message {
	margin-top: 0;
	opacity: 0.8;
	font-style: italic;
}

.eco-content-columns-3 {
	columns: 3 auto;
}

.eco-content-columns-2 {
	columns: 2 auto;
}

.eco-content-columns h3 {
	margin-bottom: 1rem;
}

.eco-content-columns > :first-child,
.eco-content-columns > .wp-block-group:first-child > :first-child {
	margin-top: 0;
}

.eco-content-columns > :last-child,
.eco-content-columns > .wp-block-group:first-child > :last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 999px) {
	.eco-content-columns-3 {
		columns: 2 auto;
	}
}

@media screen and (max-width: 599px) {
	.eco-content-columns {
		columns: auto auto;
	}
}

.eco-layout-flex-column-spaced {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.eco-btm-margin-0 {
	margin-bottom: 0;
}

.eco-no-margin {
	margin: 0;
}

.eco-margin-top-0 {
	margin-top: 0;
}

.eco-margin-bottom-0 {
	margin-bottom: 0;
}

.eco-margin-top-sm {
	margin-top: 1rem;
}

.eco-margin-bottom-sm {
	margin-bottom: 1rem;
}

.eco-margin-top-md {
	margin-top: 2rem;
}

.eco-margin-bottom-md {
	margin-bottom: 2rem;
}

.eco-margin-top-lg {
	margin-top: 3rem;
}

.eco-margin-bottom-lg {
	margin-bottom: 3rem;
}

.eco-margin-top-xl {
	margin-top: 4rem;
}

.eco-margin-bottom-xl {
	margin-bottom: 4rem;
}

.wp-block-cover .wp-block-cover__background.has-background-dim {
	opacity: 0.8;
}

.entry-content > .wp-block-group > .wp-block-columns.is-layout-flex {
	gap: 6rem;
}

@media screen and (max-width: 999px) {
	.entry-content > .wp-block-group > .wp-block-columns.is-layout-flex {
		gap: 4rem;
	}
}

@media screen and (max-width: 599px) {
	.entry-content > .wp-block-group > .wp-block-columns.is-layout-flex {
		gap: 2rem;
	}
}

p.eco-start-end-paragraph-padding {
	margin-block-start: var(--eco-row-padding-top);
	margin-block-end: var(--eco-row-padding-bottom);
}

@media screen and (max-width: 781px) {
	.eco-reverse-column-order-mobile {
		flex-direction: column-reverse;
	}
}

/* ======================================================================================
 * Fix development site notification background colour to avoid colour contrast issues with accessibility checkers
 * ====================================================================================== */
div.otgs-development-site-front-end {
	background-color: #308096;
}

/* ======================================================================================
 * Global Menu - indicate current page, but only if in menu
 * Decided to hide this in case people wanted to see logical hierarchy represented
 * ====================================================================================== */

/*
.eco-header:not(.eco-use-mobile) .eco-navbar ul:not(.wp-block-navigation-submenu) > li.current-menu-item > a::before,
.eco-header:not(.eco-use-mobile) .eco-navbar ul:not(.wp-block-navigation-submenu) > li:not(.current-menu-item):has(li.current-menu-item) > a::before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%; 
  height: 0; 
  border-top: 4px solid var(--wp--preset--color--aubergine-50);
}

.eco-use-mobile .eco-navbar ul:not(.wp-block-navigation-submenu) > li.current-menu-item > a::before,
.eco-navbar ul.wp-block-navigation-submenu > li.current-menu-item > a::before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 0; 
  height: 100%; 
  border-left: 4px solid var(--wp--preset--color--tangerine-200);
}
*/

/* ============================================================
 * Carousel Styles
 * ============================================================ */
main .wp-block-splide-carousel .splide__arrows .splide__arrow,
main .wp-block-splide-carousel .splide__toggle {
	transition: all 0.1s linear;
}

.wp-block-splide-carousel .splide__pagination .splide__pagination__page,
.wp-block-splide-carousel .splide__pagination .splide__pagination__page:hover,
.wp-block-splide-carousel
	.splide__pagination
	.splide__pagination__page:focus-visible {
	opacity: 1;
}

.wp-block-splide-carousel .splide__pagination .splide__pagination__page:hover,
.wp-block-splide-carousel
	.splide__pagination
	.splide__pagination__page:focus-visible {
	background-color: #fff;
	transform: scale(1.2);
}

.wp-block-splide-carousel
	.splide__pagination
	.splide__pagination__page.is-active:hover,
.wp-block-splide-carousel
	.splide__pagination
	.splide__pagination__page.is-active:focus-visible {
	background-color: var(--wp--preset--color--tangerine);
}

.hidden-home-carousel-logo-heading-text-and-button
	.wp-block-splide-carousel
	ul.splide__pagination {
	bottom: 1rem;
	gap: 0.5rem;
}

.hidden-home-carousel-logo-heading-text-and-button
	.wp-block-splide-carousel
	button.splide__pagination__page {
	height: 1.2rem;
	width: 1.2rem;
}

.hidden-home-carousel-ecampus-elern .wp-block-splide-carousel .splide__list {
	align-items: center;
}

.wp-block-splide-carousel .splide__controls .splide__toggle svg {
	fill: #ffffff;
}

.wp-block-splide-carousel .splide__controls .splide__toggle {
	background-color: var(--wp--preset--color--aubergine);
	border: 2px solid #ffffff;
	opacity: 1;
}

.wp-block-splide-carousel .splide__controls .splide__toggle:hover svg {
	fill: var(--wp--preset--color--aubergine);
}

.wp-block-splide-carousel .splide__controls .splide__toggle:hover {
	background-color: #ffffff;
	border: 2px solid var(--wp--preset--color--aubergine);
}

.wp-block-splide-carousel:has(.splide__controls) .splide__arrow {
	top: calc(50% + 24px);
}

.hidden-home-carousel-schools-aubergine
	.wp-block-splide-carousel:has(.splide__controls)
	.splide__controls,
.has-aubergine-background-color
	.wp-block-splide-carousel:has(.splide__controls)
	.splide__controls {
	padding-top: 1rem;
}

/* ============================================================
 * Section headings
 * ============================================================ */

.eco-section-heading-wrapper,
main > .wp-block-post-content > .wp-block-group.eco-section-heading-wrapper {
	position: relative;
	margin-top: 2rem;
	margin-bottom: 2rem;
	background-color: var(--wp--preset--color--tangerine);
}

.eco-section-heading-wrapper::after {
	content: "";
	position: absolute;
	height: 100%;
	left: var(--eco-row-padding-right);
	z-index: -2;
	background-color: var(--wp--preset--color--tangerine);
}

.eco-section-heading {
	display: inline-block;
	position: relative;
	background-color: transparent;
	margin: 0;
	z-index: 1;
	padding: 0.5rem 2rem 0.5rem 0;
}

.eco-section-heading::before {
	content: "";
	position: absolute;
	width: 5rem;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
	background-color: #fff;
}

.eco-section-heading::after {
	content: "";
	position: absolute;
	width: 100%;
	height: calc(100% + 2px);
	top: -1px;
	left: 0;
	z-index: -1;
	background-color: #fff;
	transform-origin: left bottom;
	transform: skewX(-18deg);
}

main > .wp-block-post-content > .wp-block-group.eco-section-heading-wrapper {
	padding-top: 0;
	padding-bottom: 0;
}

.eco-section-heading-wrapper.eco-section-heading-aubergine,
main
	> .wp-block-post-content
	> .wp-block-group.eco-section-heading-wrapper.eco-section-heading-aubergine {
	background-color: var(--wp--preset--color--aubergine);
}

.eco-section-heading-wrapper.eco-section-heading-steel,
main
	> .wp-block-post-content
	> .wp-block-group.eco-section-heading-wrapper.eco-section-heading-steel {
	background-color: var(--wp--preset--color--steel);
}

.eco-section-heading-wrapper.eco-section-heading-grass,
main
	> .wp-block-post-content
	> .wp-block-group.eco-section-heading-wrapper.eco-section-heading-grass {
	background-color: var(--wp--preset--color--grass-50);
}

/* ============================================================
 * Home page specific styles
 * ============================================================ */

.eco-home-about {
	background-color: var(--wp--preset--color--aubergine);
	color: #fff;
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.eco-home-about h2 {
	margin-top: 0;
	color: var(--wp--preset--color--tangerine);
}

.eco-home-featured-projects {
	background-color: var(--wp--preset--color--steel-50);
	color: var(--wp--preset--color--aubergine);
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.eco-featured-post {
	padding-bottom: var(--eco-row-padding-bottom);
}

.eco-featured-post .wp-block-post-date,
.eco-featured-post .wp-block-post-excerpt,
.eco-featured-post .wp-block-post-terms.taxonomy-post_tag {
	font-weight: 300;
}

.home .eco-featured-posts {
	margin-bottom: var(--eco-row-padding-bottom);
}

.eco-featured-post h3.wp-block-post-title {
	font-size: 1.25rem;
	font-weight: bold;
}

.eco-featured-posts .eco-featured-posts-recent-posts h4.wp-block-post-title {
	font-size: 1rem;
	font-weight: bold;
}

.eco-featured-posts .wp-block-cover .wp-block-cover__background {
	opacity: 0.95;
}

.eco-featured-posts .wp-block-cover .wp-block-post-terms.taxonomy-category a {
	display: inline-block;
	background-color: transparent;
	padding: 0.25rem 1rem;
	text-transform: uppercase;
	position: relative;
}

.eco-featured-posts
	.wp-block-cover
	.wp-block-post-terms.taxonomy-category
	a::after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	background-color: var(--wp--preset--color--tangerine);
	border-radius: 3px;
	z-index: -1;
	top: 0;
	left: 0;
	transform-origin: center center;
	transform: skewX(-18deg);
}

.eco-featured-posts
	.wp-block-cover
	.wp-block-post-terms.taxonomy-category
	a:link,
.eco-featured-posts .wp-block-post-terms.taxonomy-category a:visited {
	color: var(--wp--preset--color--aubergine);
	text-decoration: none;
}

.eco-featured-posts
	.wp-block-cover
	.wp-block-post-terms.taxonomy-category
	a:hover,
.eco-featured-posts
	.wp-block-cover
	.wp-block-post-terms.taxonomy-category
	a:focus-visible {
	text-decoration: underline;
}

.eco-featured-posts .wp-block-cover .wp-block-post-date,
.eco-post-author-and-date,
.eco-post .wp-block-post-terms.taxonomy-category,
.eco-post .wp-block-post-terms.taxonomy-post_tag,
.eco-post-footer .wp-block-post-date {
	font-size: 0.9em;
	margin-bottom: 1rem;
}

.eco-featured-posts .wp-block-cover .wp-block-read-more,
.eco-post-most-recent .wp-block-cover .wp-block-read-more,
.eco-post-split-most-recent .wp-block-read-more {
	padding: var(--eco-button-padding);
	margin-top: 2rem;
	background-color: var(--wp--preset--color--aubergine);
	border: 1px solid var(--wp--preset--color--tangerine);
	border-radius: var(--eco-button-border-radius);
	color: var(--wp--preset--color--tangerine);
}

.eco-featured-posts .wp-block-cover .wp-block-read-more:hover,
.eco-featured-posts .wp-block-cover .wp-block-read-more:focus-visible,
.eco-post-most-recent .wp-block-cover .wp-block-read-more:hover,
.eco-post-most-recent .wp-block-cover .wp-block-read-more:focus-visible,
.eco-post-split-most-recent .wp-block-read-more:hover,
.eco-post-split-most-recent .wp-block-read-more:focus-visible {
	background-color: var(--wp--preset--color--tangerine);
	color: var(--wp--preset--color--aubergine);
	text-decoration: none;
}

@media (prefers-contrast: more) {
	.eco-featured-posts .wp-block-cover .wp-block-read-more:hover,
	.eco-featured-posts .wp-block-cover .wp-block-read-more:focus-visible,
	.eco-post-most-recent .wp-block-cover .wp-block-read-more:hover,
	.eco-post-most-recent .wp-block-cover .wp-block-read-more:focus-visible,
	.eco-post-split-most-recent .wp-block-read-more:hover,
	.eco-post-split-most-recent .wp-block-read-more:focus-visible {
		text-decoration: underline;
	}
}

.eco-featured-posts .wp-block-cover .wp-block-read-more:focus-visible,
.eco-post-most-recent .wp-block-cover .wp-block-read-more:focus-visible,
.eco-post-split-most-recent .wp-block-read-more:focus-visible {
	outline: var(--eco-outline);
	outline-offset: var(--eco-outline-offset);
}

.eco-featured-posts .wp-block-cover .wp-block-post-terms.taxonomy-post_tag {
	margin-top: 1rem;
	font-size: 0.9em;
}

.eco-featured-posts
	.wp-block-cover
	.wp-block-post-terms.taxonomy-post_tag
	a:link,
.eco-featured-posts
	.wp-block-cover
	.wp-block-post-terms.taxonomy-post_tag
	a:visited {
	color: #fff;
	text-decoration: none;
}

.eco-featured-posts
	.wp-block-cover
	.wp-block-post-terms.taxonomy-post_tag
	a:hover,
.eco-featured-posts
	.wp-block-cover
	.wp-block-post-terms.taxonomy-post_tag
	a:focus-visible {
	text-decoration: underline;
}

.eco-featured-posts .eco-featured-and-recent-posts-heading {
	padding: 0.25rem 1rem;
	background-color: var(--wp--preset--color--aubergine);
	color: #fff;
	margin: 0;
	text-align: center;
	text-transform: uppercase;
}

.eco-featured-posts .eco-featured-posts-recent-posts {
	padding-top: 1rem;
}

.eco-featured-posts .eco-featured-posts-recent-posts li.wp-block-post {
	padding-bottom: 1rem;
}

.eco-featured-posts
	.eco-featured-posts-recent-posts
	li.wp-block-post:last-child {
	padding-bottom: 0;
}

.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-category {
	background-color: var(--wp--preset--color--aubergine);
	padding: 0.25rem 0.5rem;
}

.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-category
	a:link,
.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-category
	a:visited {
	color: #fff;
	text-decoration: none;
}

.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-category
	a:hover,
.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-category
	a:focus-visible {
	text-decoration: underline;
}

.eco-featured-posts .eco-featured-posts-recent-posts h4.wp-block-post-title {
	margin: 0 0 0.25rem 0;
}

.eco-featured-posts .eco-featured-posts-recent-posts .wp-block-post-date {
	font-size: 0.9em;
}

.eco-featured-posts .eco-featured-posts-recent-posts .wp-block-read-more {
	margin-top: 2px;
	color: var(--wp--preset--color--aubergine);
	background-color: transparent;
	border: 0 none;
	text-decoration: underline;
	font-weight: bold;
}

.eco-featured-posts .eco-featured-posts-recent-posts .wp-block-read-more:hover,
.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-read-more:focus-visible {
	color: #00f;
}

@media (prefers-contrast: more) {
	.eco-featured-posts .eco-featured-posts-recent-posts .wp-block-read-more {
		text-decoration: none;
		padding: 0.25rem 0.5rem;
		border: 1px solid #fff;
		border-radius: 0.25rem;
	}

	.eco-featured-posts
		.eco-featured-posts-recent-posts
		.wp-block-read-more:hover,
	.eco-featured-posts
		.eco-featured-posts-recent-posts
		.wp-block-read-more:focus-visible {
		text-decoration: underline;
	}
}

.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-post_tag {
	font-size: 0.9em;
}

.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-post_tag
	a:link,
.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-post_tag
	a:visited {
	color: var(--wp--preset--color--aubergine);
	text-decoration: none;
}

.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-post_tag
	a:hover,
.eco-featured-posts
	.eco-featured-posts-recent-posts
	.wp-block-post-terms.taxonomy-post_tag
	a:focus-visible {
	text-decoration: underline;
}

.eco-featured-posts .wp-block-columns {
	gap: 0;
}

.text-right .wp-block-read-more {
	display: inline-block;
}

@media (max-width: 781px) {
	:root {
		--eco-row-padding-horizontal: 2rem;
		--eco-row-padding-vertical: 2rem;
		--eco-row-padding-left: 2rem;
		--eco-row-padding-right: 2rem;
	}

	.eco-featured-posts .eco-featured-and-recent-posts-heading {
		margin-top: 1rem;
	}

	.eco-featured-posts
		.eco-featured-posts-recent-posts
		.wp-block-post-terms.taxonomy-category {
		display: none;
	}

	ul.eco-featured-posts-recent-posts li:nth-child(even) {
		background-color: #f6f6fa;
	}

	.eco-featured-posts
		.eco-featured-posts-recent-posts
		li
		.wp-block-post-featured-image {
		margin: 0;
	}

	.eco-featured-posts
		.eco-featured-posts-recent-posts
		li
		.wp-block-column:last-child {
		padding: 1rem;
	}

	.wp-block-tb-tab .wp-block-columns {
		gap: 0;
	}

	.eco-center-under-781 {
		justify-content: center;
		text-align: center;
	}

	.eco-flex-reverse-order-under-781 {
		flex-direction: column-reverse;
	}

	.eco-padding-left-under-781 {
		padding-left: var(--eco-row-padding-left);
	}
}

@media (min-width: 782px) {
	.eco-featured-posts .eco-featured-posts-recent-posts .wp-block-columns {
		padding-left: 1rem;
		gap: 1rem;
	}
}

/* ============================================================
 * About page styles
 * ============================================================ */

.eco-featured-image-banner span.wp-block-cover__background {
	opacity: 0.8;
}

.eco-banner-title {
	font-size: 3rem;
	font-weight: bold;
	margin-bottom: 2rem;
	position: relative;
	text-align: center;
}

.eco-banner-title::before {
	content: "";
	display: inline-block;
	position: absolute;
	left: calc(50% - 3rem);
	top: calc(100% + 13px);
	width: 6rem;
	border-bottom: 6px solid #fff;
}

.eco-banner-tagline {
	font-size: 1.5rem;
	text-align: center;
	margin-top: 0;
	margin-bottom: 0.5rem;
}

.eco-numbered-list-blocks {
	list-style: none;
	counter-reset: eco-block-counter;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
	column-gap: 2rem;
	row-gap: 1rem;
}

.eco-numbered-list-blocks li {
	counter-increment: eco-block-counter;
	position: relative;
	align-items: stretch;
	border: 1px solid var(--wp--preset--color--tangerine);
	padding: 1rem 1rem;
	flex-basis: 0;
	flex-grow: 1;
}

.eco-numbered-list-blocks li::before {
	content: counter(eco-block-counter);
	position: absolute;
	top: 0.25rem;
	left: 1rem;
}

.eco-numbered-list-blocks li > h2,
.eco-numbered-list-blocks li > h3,
.eco-numbered-list-blocks li > h4 {
	font-size: 2rem;
	margin-top: 1.5rem;
}

@media screen and (max-width: 1200px) {
	.eco-numbered-list-blocks li > h2,
	.eco-numbered-list-blocks li > h3,
	.eco-numbered-list-blocks li > h4 {
		font-size: 1.5rem;
	}
}

@media screen and (max-width: 999px) {
	.eco-numbered-list-blocks {
		display: block;
	}

	.eco-numbered-list-blocks li {
		margin-bottom: 2rem;
	}
}

.eco-tabs-tangerine .tb__tab-labels {
	background-color: var(--wp--preset--color--tangerine);
	border-left: 1px solid var(--wp--preset--color--tangerine);
	position: relative;
}

.eco-tabs-tangerine .tb__tab-labels::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	z-index: -1;
	background-color: var(--wp--preset--color--tangerine);
	transform-origin: left bottom;
}

.eco-tabs-tangerine .tb__tab-label {
	font-weight: bold;
	padding: 1rem 2rem;
	border-radius: 0;
	border: 0 none;
	position: relative;
	bottom: -1px;
	background: transparent;
	color: var(--wp--preset--color--aubergine);
	margin-top: 4px;
}

.eco-tabs-tangerine .tb__tab-label:focus,
.eco-tabs-tangerine .tb__tab-label:hover {
	color: var(--wp--preset--color--aubergine);
	background: var(--wp--preset--color--tangerine-75);
}

.eco-tabs-tangerine .tb__tab-label:focus-visible {
	outline: var(--eco-outline);
	outline-offset: -3px;
}

.eco-tabs-tangerine .tb__tab-label[aria-selected="true"] {
	color: var(--wp--preset--color--aubergine);
	background: #f1f1f1;
	margin-top: 0;
	border-top: 4px solid var(--wp--preset--color--tangerine);
}

@media (prefers-contrast: more) {
	.eco-tabs-tangerine .tb__tab-label {
		border: 1px solid var(--wp--preset--color--tangerine);
	}

	.eco-tabs-tangerine .tb__tab-label:focus,
	.eco-tabs-tangerine .tb__tab-label:hover {
		text-decoration: underline;
	}
}

.eco-tabs-tangerine .tb__tab-content {
	border: 1px solid var(--wp--preset--color--tangerine);
	background: #f1f1f1;
	color: var(--wp--preset--color--aubergine);
}

.eco-tabs .tb__tab-content {
	padding: 0;
}

.eco-tabs .tb__tab-content .tb__tab-panel.active {
	padding: 2rem;
}

.tb__tab-panel:focus-visible {
	outline: var(--eco-outline);
	outline-offset: -3px;
}

.eco-tabs-labels-overlap {
	position: relative;
	z-index: 1;
}

.eco-tabs-labels-overlap .tb__tab-labels {
	position: absolute;
	bottom: 100%;
	width: 100%;
	/*display: flex;
	justify-content: center;*/
}

.eco-tabs-labels-overlap .tb__tab-label {
	height: 3rem;
}

.eco-tabs-aubergine:not(.eco-tabs-centered) .tb__tab-labels {
	background-color: var(--wp--preset--color--aubergine);
	border-left: 1px solid var(--wp--preset--color--aubergine);
	position: relative;
}

.eco-tabs.eco-tabs-centered .tb__tab-labels {
	background-color: transparent;
	border: 0 none;
	width: 100%;
	display: flex;
	justify-content: center;
}

.eco-tabs-aubergine .tb__tab-label {
	font-weight: normal;
	padding: 1rem 3rem;
	border-radius: 0;
	border: 0 none;
	position: relative;
	background: var(--wp--preset--color--aubergine);
	color: #ffffff;
	margin-top: 4px;
}

.eco-tabs-aubergine:not(.eco-tabs-centered):not(.eco-tabs-vertical-left)
	.tb__tab-label {
	bottom: -1px;
	top: 1px;
}

.eco-tabs-aubergine.eco-tabs-centered .tb__tab-label {
	bottom: 0;
	top: 0;
	flex: 1;
	text-align: center;
}

.eco-tabs-aubergine .tb__tab-label:focus,
.eco-tabs-aubergine .tb__tab-label:hover {
	color: var(--wp--preset--color--aubergine);
	background: var(--wp--preset--color--tangerine);
	font-weight: normal;
}

.eco-tabs-aubergine .tb__tab-label:focus-visible {
	outline: var(--eco-outline);
	outline-offset: -3px;
}

.eco-tabs-aubergine .tb__tab-label[aria-selected="true"] {
	color: var(--wp--preset--color--aubergine);
	background: var(--wp--preset--color--tangerine);
	margin-top: 0;
	border-top: 4px solid var(--wp--preset--color--aubergine);
}

@media (prefers-contrast: more) {
	.eco-tabs-aubergine .tb__tab-label {
		border: 1px solid var(--wp--preset--color--tangerine);
	}

	.eco-tabs-aubergine .tb__tab-label:focus,
	.eco-tabs-aubergine .tb__tab-label:hover {
		text-decoration: underline;
	}
}

.eco-tabs-aubergine:not(.eco-tabs-centered) .tb__tab-content {
	border: 1px solid var(--wp--preset--color--aubergine);
	background: #f1f1f1;
	color: var(--wp--preset--color--aubergine);
}

.eco-tabs-aubergine.eco-tabs-centered .tb__tab-content {
	border: 0 none;
	background: #fff;
	color: var(--wp--preset--color--aubergine);
}

.eco-tab-padding-horizontal .tb__tab-content {
	margin-left: var(--eco-row-padding-left);
	margin-right: var(--eco-row-padding-right);
}

.eco-tabs.eco-tabs-vertical-left {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: stretch;
	gap: 0;
}

.eco-tabs.eco-tabs-vertical-left .tb__tab-labels {
	flex-basis: 30%;
	flex-grow: 0;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.eco-tabs.eco-tabs-vertical-left .tb__tab-labels li {
	display: flex;
	flex-direction: row;
	justify-content: stretch;
}

.eco-tabs.eco-tabs-vertical-left .tb__tab-label {
	flex-grow: 1;
	padding: 1.5rem 0.5rem;
	text-align: center;
	margin-top: 0;
	margin-left: 4px;
}

.eco-tabs.eco-tabs-vertical-left.eco-tabs-aubergine .tb__tab-label {
	border: 1px solid var(--wp--preset--color--aubergine);
}

.eco-tabs.eco-tabs-vertical-left.eco-tabs-aubergine
	.tb__tab-label[aria-selected="true"] {
	margin-left: 0;
	border-left: 4px solid var(--wp--preset--color--aubergine);
}

@media screen and (max-width: 999px) {
	.wp-block-tb-tabs.eco-tabs .tb__tab-labels {
		display: none;
	}

	.wp-block-tb-tabs.eco-tabs .tb__tab-content {
		border: 0 none;
		padding: 0;
		background-color: transparent;
	}

	.wp-block-tb-tabs.eco-tabs .tb__tab-content .tb__tab-panel {
		display: block;
		padding-bottom: 1rem;
		margin-bottom: 2rem;
		border-bottom: 1px solid #f1f1f1;
	}

	.wp-block-tb-tabs.eco-tabs .tb__tab-content .tb__tab-panel:last-child {
		padding-bottom: 0;
		margin-bottom: 0;
		border-bottom: 0 none;
	}

	.eco-tabs .tb__tab-content .tb__tab-panel.active {
		padding: 0;
	}

	.eco-tab-padding-horizontal .tb__tab-content {
		margin-left: 0;
		margin-right: 0;
	}

	.eco-tab-padding-horizontal .tb__tab-content .tb__tab-panel {
		padding-left: var(--eco-row-padding-left);
		padding-right: var(--eco-row-padding-right);
	}

	.eco-tab-padding-horizontal
		.tb__tab-content
		.tb__tab-panel
		.wp-block-buttons:last-child {
		margin-bottom: 1rem;
	}
}

/* ============================================================
 * Breadcrumb styles
 * ============================================================ */

.eco-breadcrumbs {
	background-color: var(--wp--preset--color--aubergine-10);
	margin-bottom: var(--eco-row-padding-bottom);
}

/* ============================================================
 * Home page specific styles
 * ============================================================ */

.eco-split-content-and-image .wp-block-columns {
	gap: 2rem;
	justify-content: space-between;
}

.eco-split-content-and-image .wp-block-columns.has-background {
	gap: 0;
	padding: 0;
}

.eco-split-content-and-image .has-background .wp-block-column {
	padding: 2rem;
}

.eco-split-content-and-image.eco-split-image-left .wp-block-column:first-child,
.eco-split-content-and-image:not(.eco-split-image-left)
	.wp-block-column:last-child {
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.eco-split-content-and-image.eco-split-image-left .wp-block-column:first-child {
	align-items: flex-start;
}

.eco-split-content-and-image.eco-split-image-left
	.wp-block-column:first-child
	.wp-block-image,
.eco-split-content-and-image:not(.eco-split-image-left)
	.wp-block-column:last-child
	.wp-block-image {
	margin: 0;
}

.eco-split-content-and-image .wp-block-column > *:first-child {
	margin-top: 0;
}

.eco-split-content-and-image .wp-block-column > *:last-child {
	margin-bottom: 0;
}

.wp-block-column > *:first-child {
	margin-top: 0;
}

.wp-block-column > *:last-child {
	margin-bottom: 0;
}

.eco-split-content-and-image.eco-split-steel .wp-block-columns {
	background-color: var(--wp--preset--color--steel);
	color: var(--wp--preset--color--aubergine);
}

/* ============================================================
 * Banners
 * ============================================================ */

.eco-banner-no-image {
	background-color: var(--wp--preset--color--aubergine);
	color: #fff;
	padding: var(--eco-row-padding-vertical) var(--eco-row-padding-horizontal);
}

.eco-banner-no-image h1,
.eco-banner-no-image .eco-banner-title {
	margin-top: 0;
}

.eco-background-light-tangerine {
	background-color: var(--wp--preset--color--tangerine-50);
	color: var(--wp--preset--color--aubergine);
}

.eco-background-light-tangerine .eco-banner-title::before {
	border-bottom-color: var(--wp--preset--color--aubergine);
}

/* ============================================================
 * Post Archive Pages
 * ============================================================ */

.eco-post-most-recent {
	margin-bottom: 2rem;
}

.eco-post-most-recent .wp-block-cover .wp-block-cover__background {
	left: 30%;
	right: 70%;
	width: 40%;
	opacity: 0.95;
}

.eco-post-most-recent .wp-block-cover .wp-block-cover__inner-container {
	width: 30%;
}

@media screen and (max-width: 999px) {
	.eco-post-most-recent .wp-block-cover .wp-block-cover__background {
		left: 10%;
		right: 90%;
		width: 80%;
	}

	.eco-post-most-recent .wp-block-cover .wp-block-cover__inner-container {
		width: 60%;
	}
}

@media screen and (max-width: 599px) {
	.eco-post-most-recent .wp-block-cover .wp-block-cover__background {
		left: 0;
		right: 100%;
		width: 100%;
	}

	.eco-post-most-recent .wp-block-cover .wp-block-cover__inner-container {
		width: 90%;
	}
}

.eco-post-most-recent .wp-block-cover .eco-post-most-recent-label {
	font-size: 0.9em;
	margin-top: 0;
}

.eco-post-most-recent h2,
.eco-post-split-most-recent h2 {
	font-size: 2rem;
	font-weight: 500;
	padding-bottom: 1rem;
	border-bottom: 3px solid var(--wp--preset--color--tangerine);
}

.eco-post-split-most-recent .wp-block-group.eco-4-line-max {
	margin-bottom: 2rem;
	position: relative;
}

.eco-post-split-most-recent .wp-block-group.eco-4-line-max::after {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 60%;
	border-bottom: 3px solid var(--wp--preset--color--tangerine);
}

@media screen and (max-width: 781px) {
	.eco-post-split-most-recent .wp-block-group.eco-4-line-max::after {
		width: calc(100% - 4rem);
	}
}

.eco-post-split-most-recent .wp-block-group.eco-4-line-max h2 {
	padding-bottom: 0;
	border-bottom: none;
}

.eco-post-split-most-recent .wp-block-post-title,
.eco-post-split-most-recent .eco-post-author-and-date,
.eco-post-split-most-recent .wp-block-post-date time,
.eco-post-split-most-recent .wp-block-post-author-name {
	color: var(--wp--preset--color--white);
}

.eco-post-split-most-recent .wp-block-columns {
	padding: 0;
}

.eco-post-split-most-recent .wp-block-columns .wp-block-column:first-child {
	padding-left: 2rem;
	padding-right: 2rem;
}

/* Override bottom margin on image blocks (<figure>) in columns */
.wp-block-column figure:last-child,
.eco-post-split-most-recent figure {
	margin-bottom: 0;
}

/* Override top margin on headings in blocks and columns */
.wp-block h2:first-child,
.wp-block h3:first-child,
.wp-block h4:first-child,
.wp-block-column h2:first-child,
.wp-block-column h3:first-child,
.wp-block-column h4:first-child {
	margin-top: 0;
}

/* Override the built-in padding (padding: 1.25em 2.375em) applied to blocks that have a background colour applied */
main :where(main .wp-block-columns.has-background) {
	padding: 2rem;
}

main :where(main .has-background .wp-block-columns.has-background) {
	padding: 0;
	margin-bottom: 0;
}

/* Override columns block bottom margin when it is last block in a container */
.wp-block-columns:last-child {
	margin-bottom: 0;
}

.eco-post-split-most-recent figure img {
	height: 20vw;
}

@media screen and (max-width: 999px) {
	.eco-post-split-most-recent figure img {
		height: 33vw;
	}
}

.eco-post-split-most-recent .wp-block-post-excerpt {
	padding-top: 1rem;
}

.eco-post-split-most-recent .wp-block-read-more {
	margin-bottom: 2rem;
}

.eco-page-bg-tinted {
	background-color: #efefef;
}

.eco-posts-list .wp-block-post {
	position: relative;
	/*border-bottom: 3px solid var(--wp--preset--color--aubergine);*/
	border-radius: 0.5rem;
	box-shadow: 0 8px 20px var(--wp--preset--color--aubergine-25);
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	padding-bottom: 1rem;
}

.eco-posts-list-item-body {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	background-color: #fff;
	padding: 1rem 1rem 0 1rem;
}

.eco-posts-list .wp-block-post-featured-image {
	margin-bottom: 0;
}

.eco-posts-list .wp-block-post-featured-image,
.eco-posts-list .wp-block-post-featured-image img {
	border-top-left-radius: 0.5rem;
	border-top-right-radius: 0.5rem;
}

.eco-posts-list .wp-block-post-featured-image img {
	object-fit: cover;
	object-position: 50% 0%;
	width: 100%;
	height: 10rem;
}

.eco-posts-list .wp-block-post-terms.taxonomy-category {
	position: absolute;
	top: -3px;
	right: -3px;
	background-color: var(--wp--preset--color--aubergine);
	box-shadow: -2px 2px 2px 0px rgba(30, 26, 52, 0.4);
	border-top-right-radius: 4px;
	padding: 0.25rem 1rem;
	z-index: 1;
	color: var(--wp--preset--color--tangerine);
}

.eco-posts-list h2 {
	font-size: 1.4rem;
	font-weight: bold;
	/*text-align: center;*/
	padding-bottom: 1rem;
	/*border-bottom: 3px solid var(--wp--preset--color--aubergine-10);*/
}

.eco-posts-list .wp-block-post-excerpt {
	margin-bottom: 1rem;
}

.eco-posts-list a.wp-block-read-more {
	margin-top: auto;
	margin-bottom: 0;
}

.eco-post-author-and-date p,
.eco-post-author-and-date .wp-block-post-author-name,
.eco-post-author-and-date .wp-block-post-date {
	display: inline;
}

.eco-posts-list .wp-block-read-more {
	text-decoration: none;
}

.wp-block-query-no-results {
	padding-left: var(--eco-row-padding-left);
	padding-right: var(--eco-row-padding-left);
	overflow: auto;
}

.wp-block-query .wp-block-query-pagination {
	justify-content: center;
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.wp-block-query-pagination .page-numbers,
.wp-block-query-pagination > .wp-block-query-pagination-next,
.wp-block-query-pagination > .wp-block-query-pagination-previous {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	margin: 0.5rem;
}
@media (max-width: 700px) {
	.wp-block-query-pagination .page-numbers,
	.wp-block-query-pagination > .wp-block-query-pagination-next,
	.wp-block-query-pagination > .wp-block-query-pagination-previous {
		width: 1.2rem;
		height: 1.2rem;
	}
}
.wp-block-query
	.wp-block-query-pagination
	> .wp-block-query-pagination-numbers {
	margin: 0;
}

.wp-block-query
	.wp-block-query-pagination
	.wp-block-query-pagination-next-arrow,
.wp-block-query
	.wp-block-query-pagination
	.wp-block-query-pagination-previous-arrow {
	margin: 0;
	font-weight: 700;
}

.wp-block-query-pagination .page-numbers.current {
	border: 1px solid var(--wp--preset--color--aubergine);
	background-color: var(--wp--preset--color--aubergine);
	color: #fff;
}

.wp-block-query-pagination a.page-numbers:link,
.wp-block-query-pagination a.page-numbers:visited {
	border: 1px solid var(--wp--preset--color--aubergine);
	color: var(--wp--preset--color--aubergine);
	text-decoration: none;
}

.wp-block-query-pagination a.wp-block-query-pagination-next:link,
.wp-block-query-pagination a.wp-block-query-pagination-next:visited,
.wp-block-query-pagination a.wp-block-query-pagination-previous:link,
.wp-block-query-pagination a.wp-block-query-pagination-previous:visited {
	border: 1px solid var(--wp--preset--color--aubergine-75);
	color: var(--wp--preset--color--aubergine);
	text-decoration: none;
}

.wp-block-query-pagination a.page-numbers:hover,
.wp-block-query-pagination a.page-numbers:focus,
.wp-block-query-pagination a.wp-block-query-pagination-next:hover,
.wp-block-query-pagination a.wp-block-query-pagination-next:focus,
.wp-block-query-pagination a.wp-block-query-pagination-previous:hover,
.wp-block-query-pagination a.wp-block-query-pagination-previous:focus {
	background-color: var(--wp--preset--color--aubergine-75);
	color: #fff;
}

.wp-block-query-pagination a.page-numbers:hover,
.wp-block-query-pagination a.page-numbers:focus {
	text-decoration: none;
}

@media (prefers-contrast: more) {
	.wp-block-query-pagination a.page-numbers:hover,
	.wp-block-query-pagination a.page-numbers:focus,
	.wp-block-query-pagination a.wp-block-query-pagination-next:hover,
	.wp-block-query-pagination a.wp-block-query-pagination-next:focus,
	.wp-block-query-pagination a.wp-block-query-pagination-previous:hover,
	.wp-block-query-pagination a.wp-block-query-pagination-previous:focus {
		text-decoration: underline;
	}
}

.wp-block-query-pagination a.page-numbers:active,
.wp-block-query-pagination a.wp-block-query-pagination-next:active,
.wp-block-query-pagination a.wp-block-query-pagination-previous:active {
	background-color: var(--wp--preset--color--aubergine);
}

.wp-block-query-pagination a.page-numbers:focus-visible,
.wp-block-query-pagination a.wp-block-query-pagination-next:focus-visible,
.wp-block-query-pagination a.wp-block-query-pagination-previous:focus-visible {
	outline: var(--eco-outline);
	outline-offset: var(--eco-outline-offset);
}

/* ============================================================
 * Job Postings List (Archive Page)
 * ============================================================ */

.eco-job-postings > .wp-block-columns {
	column-gap: 4rem;
}

.eco-job-postings > .wp-block-columns > .wp-block-column:first-child {
	flex-basis: auto;
	flex-grow: 0;
}

.eco-job-postings > .wp-block-columns > .wp-block-column:last-child {
	flex-basis: auto;
}

.eco-job-postings .wp-block-post-template {
	display: table;
	border-collapse: collapse;
	margin-bottom: 2rem;
}

.eco-job-postings .wp-block-post-template > li {
	display: table-row;
	border-bottom: 1px solid var(--wp--preset--color--aubergine-25);
}

.eco-job-postings .wp-block-post-template > li > .eco-job-posting-list-column,
.eco-job-posting-latest .eco-job-posting-list-column {
	display: table-cell;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.eco-job-postings
	.wp-block-post-template
	> li
	> .eco-job-posting-list-column
	> :first-child,
.eco-job-posting-latest .eco-job-posting-list-column > :first-child {
	margin-top: 0;
}

.eco-job-postings
	.wp-block-post-template
	> li
	> .eco-job-posting-list-column:first-child,
.eco-job-posting-latest .eco-job-posting-list-column:first-child {
	width: 100%;
}

.eco-job-postings
	.wp-block-post-template
	> li
	> .eco-job-posting-list-column:last-child,
.eco-job-posting-latest .eco-job-posting-list-column:last-child {
	white-space: nowrap;
}

.eco-job-postings .wp-block-post-template .wp-block-post-title,
.eco-job-posting-latest .eco-job-posting-list-column .wp-block-post-title {
	font-size: 1.5rem;
}

@media screen and (max-width: 999px) {
	.eco-job-postings > .wp-block-columns {
		display: block;
	}
}

@media screen and (max-width: 599px) {
	.eco-job-postings .wp-block-post-template > li > .eco-job-posting-list-column,
	.eco-job-posting-latest .eco-job-posting-list-column {
		display: block;
	}

	.eco-job-postings .wp-block-post-template {
		width: 100%;
	}
}

.eco-job-posting-latest {
	background-color: var(--wp--preset--color--steel);
	color: var(--wp--preset--color--aubergine);
	padding: 2rem;
}

/* ============================================================
 * Job Posting details page
 * ============================================================ */

.eco-job-posting {
	/* Single column layout */
}

.eco-job-posting .eco-custom-back-button {
	padding: 0;
}

.eco-job-posting .eco-border-tangerine:after {
	margin-top: 1rem;
}

.eco-job-posting-more-information {
	background-color: var(--wp--preset--color--grass-50);
	font-size: 1.25rem;
	text-align: center;
}

.eco-job-posting-more-information a:link,
.eco-job-posting-more-information a:visited {
	color: var(--wp--preset--color--aubergine);
}

.eco-job-posting-more-information a:hover,
.eco-job-posting-more-information a:focus-visible {
	color: var(--eco-link-hover-color);
}

.eco-job-posting-more-information a:active {
	color: var(--eco-link-active-color);
}


/* ============================================================
 * Jobs & Opportunities
 * ============================================================ */

.eco-column-icon {
	position: relative;
	padding-left: 4rem;
}

.eco-column-icon p:first-child {
	margin-bottom: 0;
}

.eco-column-icon p:last-child {
	margin-top: 0;
}

.eco-column-icon::before {
	display: inline-flex;
	content: "";
	background-size: 3rem 3rem;
	height: 3rem;
	width: 3rem;
	margin-right: 1rem;
	position: absolute;
	left: 0;
	top: 0.75rem;
}

.eco-column-icon-phone::before {
	background-image: url(../images/icon-phone.svg);
}

.eco-column-icon-email::before {
	background-image: url(../images/icon-letter.svg);
}

.eco-column-icon-mail::before {
	background-image: url(../images/icon-mailbox.svg);
}

/* ============================================================
 * Details - Summary, used for the Documents list filter
 * ============================================================ */

details {
	background-color: #f1f1f1;
	border: 1px solid var(--wp--preset--color--aubergine);
	color: var(--wp--preset--color--aubergine);
	border-radius: 4px;
	border-top: 4px;
	padding: 0 1rem;
}

details summary {
	background-color: var(--wp--preset--color--white);
	border-top: 1px solid var(--wp--preset--color--aubergine);
	font-size: 1.5rem;
	font-weight: bold;
	border-radius: 4px;
	margin: 1px -1rem 0;
	padding: 0 1rem;
}

details summary:hover,
details summary:focus-visible {
	background: var(--wp--preset--color--aubergine);
	color: var(--wp--preset--color--white);
}

details[open] summary {
	background-color: #f1f1f1;
	color: var(--wp--preset--color--aubergine);
}

details[open] summary:hover,
details[open] summary:focus-visible {
	background: var(--wp--preset--color--aubergine);
	color: var(--wp--preset--color--white);
}

details h2 {
	font-size: 1.25rem;
}

details .eco-current {
	color: var(--wp--preset--color--aubergine);
	text-decoration: none;
	pointer-events: none;
}

details a:link,
details a:visited {
	color: var(--wp--preset--color--aubergine);
	text-decoration: none;
}

details a:hover,
details a:focus-visible {
	text-decoration: underline;
}

.eco-documents-filter details > p {
	margin-left: 1.5rem;
}

.eco-documents-filter details > .wp-block-columns {
	margin: 1rem 0 1rem 1.5rem;
}

@media (max-width: 781px) {
	.eco-post-footer .has-text-align-right.wp-block-post-date {
		text-align: left;
	}
}

.eco-post-footer {
	border-top: 1px solid black;
	margin: 0;
}

.eco-post-footer.wp-block-columns.is-layout-flex {
	gap: 0;
}

.eco-post-footer .taxonomy-category,
.eco-post-footer .taxonomy-post_tag {
	display: inline-block;
}

.eco-post-footer .taxonomy-category,
.eco-post-footer .taxonomy-post_tag,
.eco-post-footer .wp-block-post-date {
	margin-left: 0.5rem;
	margin-right: 0.5rem;
}

.eco-post .wp-block-post-featured-image img {
	height: 33vw;
	max-height: 33vh;
}

.wp-block-post-featured-image {
	margin-bottom: 2rem;
}

.eco-3-line-max {
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	-webkit-box-orient: vertical;
}

.eco-4-line-max {
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	line-clamp: 4;
	-webkit-box-orient: vertical;
}

.eco-banner-cover-image figure.wp-block-post-featured-image,
.eco-banner-cover-image figure.wp-block-post-featured-image img {
	height: 100%;
	max-height: 30rem;
}
.eco-flex-container {
	display: flex;
	justify-content: space-between;
}
@media screen and (max-width: 599px) {
	.eco-flex-container {
		flex-direction: column;
	}
}
.eco-justify-content-end {
	justify-content: end;
}

.eco-custom-back-button {
	display: inline-block;
	font-size: 1.5rem;
	font-weight: bold;
	color: var(--wp--preset--color--aubergine) !important;
	text-decoration: none !important;
}

.eco-custom-back-button:hover {
	text-decoration: none !important;
	color: var(--wp--preset--color--aubergine) !important;
}

.eco-border-tangerine:after {
	content: "";
	display: block;
	height: 2px;
	width: 60%;
	border-bottom: 3px solid var(--wp--preset--color--tangerine);
}
.eco-more-posts-title a,
.eco-more-posts-title a:hover {
	font-size: 1.2rem !important;
	color: var(--wp--preset--color--aubergine);
}
.wp-block-cover,
.wp-block-cover-image {
	min-height: 300px;
}
.wp-block-cover .wp-block-cover__image-background {
	object-fit: fill;
}
