*,
*::before,
*::after {
	box-sizing: border-box;
}

:root {
	--canvas-heading-scale: 1;
	--canvas-sticky-header-top: 0px;
	--canvas-sticky-header-transition: 220ms ease;
	--canvas-aos-distance: 100px;
	--canvas-aos-distance-negative: -100px;
	--canvas-aos-duration: 600ms;
	--canvas-aos-delay: 0ms;
	--canvas-aos-easing: ease;
	--canvas-modal-overlay: rgb(0 0 0 / 68%);
	--canvas-modal-overlay-filter: none;
	--canvas-modal-max-width: 72rem;
}

html {
	background: var(--canvas-color-body-back);
	font-family: sans-serif;
	font-size: 62.5%;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

body {
	min-height: 100vh;
	margin: 0;
	background: var(--canvas-color-body-back);
	color: var(--canvas-color-body-fore);
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.55;
	overflow-x: hidden;
}

img,
svg,
video,
canvas,
iframe {
	max-width: 100%;
}

img {
	height: auto;
	border: 0;
}

a {
	color: var(--canvas-color-link-fore);
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.16em;
}

a:hover,
a:focus {
	color: var(--canvas-color-link-hover);
}

a.no-ul {
	text-decoration: none;
}

a.no-ul:hover,
a.no-ul:focus {
	text-decoration: underline;
}

:focus-visible {
	outline: 0.2rem solid currentColor;
	outline-offset: 0.25rem;
}

body.canvas-modal-open {
	overflow: hidden;
}

.canvas-modal-dialog {
	width: 100vw;
	max-width: none;
	height: 100dvh;
	max-height: none;
	padding: clamp(1.2rem, 3vw, 3rem);
	margin: 0;
	border: 0;
	background: transparent;
	color: inherit;
}

.canvas-modal-dialog[open] {
	display: grid;
	place-items: center;
}

.canvas-modal-dialog::backdrop {
	background: var(--canvas-modal-overlay);
	backdrop-filter: var(--canvas-modal-overlay-filter);
}

.canvas-modal-dialog.canvas-modal-small {
	--canvas-modal-max-width: 48rem;
}

.canvas-modal-dialog.canvas-modal-medium {
	--canvas-modal-max-width: 72rem;
}

.canvas-modal-dialog.canvas-modal-wide {
	--canvas-modal-max-width: 96rem;
}

.canvas-modal-dialog.canvas-modal-full {
	--canvas-modal-max-width: min(128rem, calc(100vw - 2.4rem));
}

.canvas-modal-frame {
	display: flex;
	flex-direction: column;
	width: min(calc(100vw - 2.4rem), var(--canvas-modal-max-width));
	max-height: min(86dvh, calc(100dvh - 2.4rem));
	overflow: hidden;
	background: var(--canvas-color-body-back);
	color: var(--canvas-color-body-fore);
	border-radius: 0.6rem;
	box-shadow: 0 2rem 6rem rgb(0 0 0 / 30%);
}

.canvas-modal-header {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem;
	border-bottom: 1px solid rgb(0 0 0 / 10%);
}

.canvas-modal-title {
	margin: 0;
	color: inherit;
	font-size: clamp(1.8rem, 2vw, 2.4rem);
	line-height: 1.25;
}

.canvas-modal-close {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 0.5rem;
	min-height: 3.8rem;
	margin: 0;
	padding: 0.7rem 1rem;
	background: transparent;
	color: inherit;
	border: 0;
	border-radius: 0.4rem;
	font: inherit;
	line-height: 1;
}

.canvas-modal-close:hover,
.canvas-modal-close:focus {
	background: rgb(0 0 0 / 8%);
	color: inherit;
}

.canvas-modal-close [aria-hidden="true"] {
	font-size: 2.4rem;
	line-height: 0.8;
}

.canvas-modal-content {
	flex: 1 1 auto;
	min-height: 0;
	padding: clamp(2rem, 4vw, 4rem);
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.canvas-modal-content > *:first-child {
	margin-top: 0;
}

.canvas-modal-content > *:last-child {
	margin-bottom: 0;
}

.canvas-modal-status {
	margin: 0;
}

.canvas-modal-content.is-loading,
.canvas-modal-content.has-error {
	padding: clamp(2rem, 4vw, 4rem);
}

.canvas-modal-content.has-iframe {
	padding: 0;
	overflow: hidden;
}

.canvas-modal-iframe {
	display: block;
	width: 100%;
	height: 24rem;
	max-height: min(76dvh, 80rem);
	border: 0;
	background: var(--canvas-color-body-back);
}

.canvas-modal-view .canvas-header-stack,
.canvas-modal-view .site-footer,
.canvas-modal-view #skip {
	display: none;
}

.canvas-modal-view .site-canvas {
	display: block;
	min-height: 0;
}

.canvas-modal-view .main {
	padding-block: 0;
}

.canvas-modal-view .content.container {
	width: 100%;
	max-width: none;
	padding-inline: 0;
}

@media (max-width: 600px) {
	.canvas-modal-dialog {
		padding: 1rem;
	}

	.canvas-modal-frame {
		width: calc(100vw - 2rem);
		max-height: calc(100dvh - 2rem);
	}

	.canvas-modal-content {
		padding: 2rem;
	}

	.canvas-modal-iframe {
		max-height: calc(100dvh - 8.8rem);
	}
}

html.canvas-aos-prep [data-aos]:not(.aos-animate) {
	opacity: 0;
}

.canvas-aos-ready [data-aos].aos-init {
	transition-duration: var(--canvas-aos-duration);
	transition-property: opacity, transform, clip-path;
	transition-timing-function: var(--canvas-aos-easing);
}

.canvas-aos-ready.canvas-aos-initializing [data-aos].aos-init {
	transition: none;
}

.canvas-aos-ready [data-aos].aos-init.aos-animate {
	transition-delay: var(--canvas-aos-delay);
}

.canvas-aos-ready [data-aos^="fade"].aos-init {
	opacity: 0;
}

.canvas-aos-ready [data-aos^="fade"].aos-init.aos-animate {
	opacity: 1;
	transform: none;
}

.canvas-aos-ready [data-aos="fade-up"].aos-init {
	transform: translateY(var(--canvas-aos-distance));
}

.canvas-aos-ready [data-aos="fade-down"].aos-init {
	transform: translateY(var(--canvas-aos-distance-negative));
}

.canvas-aos-ready [data-aos="fade-right"].aos-init {
	transform: translateX(var(--canvas-aos-distance-negative));
}

.canvas-aos-ready [data-aos="fade-left"].aos-init {
	transform: translateX(var(--canvas-aos-distance));
}

.canvas-aos-ready [data-aos="fade-up-right"].aos-init {
	transform: translate(var(--canvas-aos-distance-negative), var(--canvas-aos-distance));
}

.canvas-aos-ready [data-aos="fade-up-left"].aos-init {
	transform: translate(var(--canvas-aos-distance), var(--canvas-aos-distance));
}

.canvas-aos-ready [data-aos="fade-down-right"].aos-init {
	transform: translate(var(--canvas-aos-distance-negative), var(--canvas-aos-distance-negative));
}

.canvas-aos-ready [data-aos="fade-down-left"].aos-init {
	transform: translate(var(--canvas-aos-distance), var(--canvas-aos-distance-negative));
}

.canvas-aos-ready [data-aos^="zoom"].aos-init {
	opacity: 0;
	transform: scale(0.6);
}

.canvas-aos-ready [data-aos^="zoom"].aos-init.aos-animate {
	opacity: 1;
	transform: none;
}

.canvas-aos-ready [data-aos="zoom-in-up"].aos-init {
	transform: translateY(var(--canvas-aos-distance)) scale(0.6);
}

.canvas-aos-ready [data-aos="zoom-in-down"].aos-init {
	transform: translateY(var(--canvas-aos-distance-negative)) scale(0.6);
}

.canvas-aos-ready [data-aos="zoom-in-right"].aos-init {
	transform: translateX(var(--canvas-aos-distance-negative)) scale(0.6);
}

.canvas-aos-ready [data-aos="zoom-in-left"].aos-init {
	transform: translateX(var(--canvas-aos-distance)) scale(0.6);
}

.canvas-aos-ready [data-aos="zoom-out"].aos-init {
	transform: scale(1.2);
}

.canvas-aos-ready [data-aos="zoom-out-up"].aos-init {
	transform: translateY(var(--canvas-aos-distance)) scale(1.2);
}

.canvas-aos-ready [data-aos="zoom-out-down"].aos-init {
	transform: translateY(var(--canvas-aos-distance-negative)) scale(1.2);
}

.canvas-aos-ready [data-aos="zoom-out-right"].aos-init {
	transform: translateX(var(--canvas-aos-distance-negative)) scale(1.2);
}

.canvas-aos-ready [data-aos="zoom-out-left"].aos-init {
	transform: translateX(var(--canvas-aos-distance)) scale(1.2);
}

.canvas-aos-ready [data-aos^="slide"].aos-init {
	visibility: hidden;
	transition-property: transform, visibility;
}

.canvas-aos-ready [data-aos^="slide"].aos-init.aos-animate {
	visibility: visible;
	transform: none;
}

.canvas-aos-ready [data-aos="slide-up"].aos-init {
	transform: translateY(100%);
}

.canvas-aos-ready [data-aos="slide-down"].aos-init {
	transform: translateY(-100%);
}

.canvas-aos-ready [data-aos="slide-right"].aos-init {
	transform: translateX(-100%);
}

.canvas-aos-ready [data-aos="slide-left"].aos-init {
	transform: translateX(100%);
}

.canvas-aos-ready [data-aos^="flip"].aos-init {
	backface-visibility: hidden;
	transform-style: preserve-3d;
}

.canvas-aos-ready [data-aos="flip-left"].aos-init {
	transform: perspective(2500px) rotateY(-100deg);
}

.canvas-aos-ready [data-aos="flip-left"].aos-init.aos-animate {
	transform: perspective(2500px) rotateY(0);
}

.canvas-aos-ready [data-aos="flip-right"].aos-init {
	transform: perspective(2500px) rotateY(100deg);
}

.canvas-aos-ready [data-aos="flip-right"].aos-init.aos-animate {
	transform: perspective(2500px) rotateY(0);
}

.canvas-aos-ready [data-aos="flip-up"].aos-init {
	transform: perspective(2500px) rotateX(-100deg);
}

.canvas-aos-ready [data-aos="flip-up"].aos-init.aos-animate {
	transform: perspective(2500px) rotateX(0);
}

.canvas-aos-ready [data-aos="flip-down"].aos-init {
	transform: perspective(2500px) rotateX(100deg);
}

.canvas-aos-ready [data-aos="flip-down"].aos-init.aos-animate {
	transform: perspective(2500px) rotateX(0);
}

@media (prefers-reduced-motion: reduce) {
	.canvas-aos-ready [data-aos].aos-init {
		transition: none;
	}
}

p,
ul,
ol,
dl,
figure,
blockquote {
	margin-top: 0;
}

.cde-richtext ul,
.cde-richtext ol {
	padding-left: 2.2rem;
}

.menu,
.widget-area,
.commentlist {
	padding-left: 0;
	list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 2.4rem 0 1rem;
	color: var(--canvas-color-heading-fore);
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.15;
}

h1 {
	margin-top: 0;
	font-size: clamp(3.2rem, 2.4rem + 2vw, 5.4rem);
	font-size: calc(clamp(3.2rem, 2.4rem + 2vw, 5.4rem) * var(--canvas-heading-scale));
}

h2 {
	font-size: clamp(2.6rem, 2.1rem + 1.2vw, 4rem);
	font-size: calc(clamp(2.6rem, 2.1rem + 1.2vw, 4rem) * var(--canvas-heading-scale));
}

h3 {
	font-size: clamp(2.2rem, 1.9rem + 0.8vw, 3.1rem);
	font-size: calc(clamp(2.2rem, 1.9rem + 0.8vw, 3.1rem) * var(--canvas-heading-scale));
}

h4 {
	font-size: clamp(1.9rem, 1.7rem + 0.45vw, 2.4rem);
	font-size: calc(clamp(1.9rem, 1.7rem + 0.45vw, 2.4rem) * var(--canvas-heading-scale));
}

h5 {
	font-size: clamp(1.7rem, 1.6rem + 0.3vw, 2rem);
	font-size: calc(clamp(1.7rem, 1.6rem + 0.3vw, 2rem) * var(--canvas-heading-scale));
}

h6 {
	font-size: 1.6rem;
	font-size: calc(1.6rem * var(--canvas-heading-scale));
	text-transform: uppercase;
}

h2,
h3,
h4,
h5,
h6 {
	color: var(--canvas-color-subhead-fore);
}

button,
input,
select,
textarea {
	max-width: 100%;
	color: inherit;
	font: inherit;
}

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
	width: 100%;
	padding: 0.8rem 1rem;
	background: var(--canvas-color-body-back);
	border: 0.1rem solid color-mix(in srgb, var(--canvas-color-body-fore), transparent 70%);
	border-radius: 0.4rem;
}

textarea {
	min-height: 12rem;
}

button,
.button,
a.button,
li.button > a,
input[type="submit"],
input[type="reset"],
input[type="button"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 4.2rem;
	padding: 1rem 1.8rem;
	background: var(--canvas-color-button-back);
	border: 0.1rem solid var(--canvas-color-button-back);
	border-radius: 0.4rem;
	color: var(--canvas-color-button-fore);
	cursor: pointer;
	font-size: 1.4rem;
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

button:hover,
.button:hover,
a.button:hover,
li.button > a:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
	background: var(--canvas-color-button-hover);
	border-color: var(--canvas-color-button-hover);
	color: var(--canvas-color-button-hover-fore);
	text-decoration: none;
}

.canvas-button-hollow button,
.canvas-button-hollow .button,
.canvas-button-hollow a.button,
.canvas-button-hollow li.button > a,
.canvas-button-hollow input[type="submit"],
.canvas-button-hollow input[type="reset"],
.canvas-button-hollow input[type="button"] {
	background: transparent;
	color: var(--canvas-color-button-back);
}

.canvas-button-twotone button,
.canvas-button-twotone .button,
.canvas-button-twotone a.button,
.canvas-button-twotone li.button > a,
.canvas-button-twotone input[type="submit"],
.canvas-button-twotone input[type="reset"],
.canvas-button-twotone input[type="button"] {
	box-shadow: inset 0 -0.4rem 0 color-mix(in srgb, var(--canvas-color-button-hover), transparent 45%);
}

.canvas-button-shape-square button,
.canvas-button-shape-square .button,
.canvas-button-shape-square a.button,
.canvas-button-shape-square li.button > a,
.canvas-button-shape-square input[type="submit"],
.canvas-button-shape-square input[type="reset"],
.canvas-button-shape-square input[type="button"] {
	border-radius: 0;
}

.canvas-button-shape-pill button,
.canvas-button-shape-pill .button,
.canvas-button-shape-pill a.button,
.canvas-button-shape-pill li.button > a,
.canvas-button-shape-pill input[type="submit"],
.canvas-button-shape-pill input[type="reset"],
.canvas-button-shape-pill input[type="button"] {
	border-radius: 999rem;
}

.canvas-button-text-upper button,
.canvas-button-text-upper .button,
.canvas-button-text-upper a.button,
.canvas-button-text-upper li.button > a,
.canvas-button-text-upperspaced button,
.canvas-button-text-upperspaced .button,
.canvas-button-text-upperspaced a.button,
.canvas-button-text-upperspaced li.button > a {
	text-transform: uppercase;
}

.canvas-button-text-upperspaced button,
.canvas-button-text-upperspaced .button,
.canvas-button-text-upperspaced a.button,
.canvas-button-text-upperspaced li.button > a {
	letter-spacing: 0;
}

.container {
	width: min(94vw, var(--canvas-container-max));
	margin-inline: auto;
}

.row {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: clamp(2rem, 3vw, 4rem);
	align-items: start;
}

.column,
.columns {
	grid-column: 1 / -1;
	min-width: 0;
}

.screen-reader-text,
.screen-reader-only,
#skip a {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus,
#skip a:focus {
	z-index: 100000;
	top: 1rem;
	left: 1rem;
	width: auto;
	height: auto;
	padding: 1rem 1.4rem;
	background: #fff;
	color: #111;
	clip: auto;
	white-space: normal;
}

.site-canvas {
	display: flex;
	min-height: 100vh;
	flex-direction: column;
	transition: transform 0.35s ease;
}

.admin-bar.canvas-sticky-header {
	--canvas-sticky-header-top: 32px;
}

.canvas-header-stack {
	position: relative;
	z-index: 30;
}

.canvas-sticky-header .canvas-header-stack {
	position: sticky;
	top: var(--canvas-sticky-header-top);
	z-index: 900;
	transition: transform var(--canvas-sticky-header-transition), box-shadow var(--canvas-sticky-header-transition);
}

.canvas-sticky-header.header-not-at-top .canvas-header-stack {
	box-shadow: 0 0.4rem 1.6rem rgb(0 0 0 / 10%);
}

.canvas-sticky-header.canvas-header-hide-on-scroll .canvas-header-stack {
	will-change: transform;
}

.canvas-sticky-header.canvas-header-hide-on-scroll.header-is-hidden .canvas-header-stack {
	transform: translateY(-100%);
}

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

@media (prefers-reduced-motion: reduce) {
	.canvas-sticky-header .canvas-header-stack {
		transition: none;
	}
}

.main {
	flex: 1 0 auto;
	padding-block: clamp(3rem, 5vw, 6rem);
}

.canvas.has-cde-flex-content .main {
	padding-block: 0;
}

.content.container {
	background: var(--canvas-color-body-back);
}

.site-header {
	background: var(--canvas-color-header-back);
	color: var(--canvas-color-header-fore);
}

.site-header__main {
	background-color: var(--canvas-color-header-back);
}

.site-header__compact {
	display: none;
	background: var(--canvas-color-header-back);
	color: var(--canvas-color-header-fore);
}

.site-header__compact > .container {
	display: flex;
	gap: 2rem;
	align-items: center;
	justify-content: space-between;
	padding-block: 1rem;
}

.canvas-header-has-compact.header-compact-active .site-header,
.canvas-header-has-compact.header-compact-active .primary-navigation {
	display: none;
}

.canvas-header-has-compact.header-compact-active .site-header__compact {
	display: block;
}

.site-header__layout {
	display: grid;
	gap: clamp(1.8rem, 3vw, 4rem);
	align-items: center;
	padding-block: 2rem;
}

.canvas-header-height-medium .site-header__layout {
	padding-block: 5rem;
}

.canvas-header-height-tall .site-header__layout {
	padding-block: 8rem;
}

.site-header__layout--left {
	grid-template-columns: minmax(18rem, 4fr) minmax(0, 8fr);
}

.site-header__layout--center {
	grid-template-columns: minmax(0, 4fr) minmax(18rem, 4fr) minmax(0, 4fr);
}

.site-header__layout--right {
	grid-template-columns: minmax(0, 8fr) minmax(18rem, 4fr);
}

.site-branding {
	display: grid;
	gap: 0.4rem;
}

.site-header__layout--center .site-branding {
	grid-column: 2;
	justify-self: center;
	text-align: center;
}

.site-header__layout--right .site-branding {
	grid-column: 2;
	justify-self: end;
	text-align: right;
}

.site-logo img,
.custom-logo {
	display: block;
	width: auto;
	max-width: min(100%, 28rem);
	max-height: 12rem;
}

.site-header__layout--center .site-logo img,
.site-header__layout--center .custom-logo {
	margin-inline: auto;
}

.site-header__layout--right .site-logo img,
.site-header__layout--right .custom-logo {
	margin-left: auto;
}

.site-title {
	font-size: clamp(2.4rem, 2rem + 1vw, 3.6rem);
	font-weight: 700;
	line-height: 1.05;
}

.site-title a {
	color: var(--canvas-color-site-title);
	text-decoration: none;
}

.site-description {
	font-size: 1.4rem;
}

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

.primary-navigation,
.site-header__top-nav {
	background: var(--canvas-color-menu-back);
	color: var(--canvas-color-menu-fore);
}

.primary-navigation .container,
.site-header__top-nav .container {
	display: flex;
}

.menu {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	margin: 0;
}

.menu li {
	position: relative;
	margin: 0;
}

.menu a {
	display: block;
	padding: 1.2rem 1.4rem;
	color: inherit;
	text-decoration: none;
}

.menu a:hover,
.menu a:focus,
.menu .current-menu-item > a,
.menu .current_page_item > a {
	background: var(--canvas-color-menu-active);
	color: var(--canvas-color-menu-active-fore);
}

.menu .sub-menu {
	position: absolute;
	z-index: 20;
	top: 100%;
	left: 0;
	display: none;
	min-width: 22rem;
	padding: 0;
	background: var(--canvas-color-mobile-menu-back);
	box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.14);
	list-style: none;
}

.menu li:hover > .sub-menu,
.menu li:focus-within > .sub-menu {
	display: block;
}

.menu .sub-menu a {
	color: var(--canvas-color-mobile-menu-fore);
}

.menu li.button,
.menu li.button:hover,
.menu li.button:focus-within {
	display: flex;
	align-items: center;
	align-self: center;
	min-height: 0;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	color: inherit;
	cursor: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	text-align: inherit;
}

.menu li.button > a,
.menu li.button.current-menu-item > a,
.menu li.button.current_page_item > a {
	background: var(--canvas-color-button-back);
	border-color: var(--canvas-color-button-back);
	color: var(--canvas-color-button-fore);
}

.menu li.button > a:hover,
.menu li.button > a:focus {
	background: var(--canvas-color-button-hover);
	border-color: var(--canvas-color-button-hover);
	color: var(--canvas-color-button-hover-fore);
}

.nav-align-right .container,
.nav-align-right .menu {
	justify-content: flex-end;
}

.nav-align-center .container,
.nav-align-center .menu {
	justify-content: center;
}

.nav-align-justify .menu {
	width: 100%;
	justify-content: space-between;
}

.canvas-primary-menu-align-left .site-header__main .menu,
.canvas-primary-menu-align-left .primary-navigation .menu {
	justify-content: flex-start;
	text-align: left;
}

.canvas-primary-menu-align-right .site-header__main .menu,
.canvas-primary-menu-align-right .primary-navigation .menu {
	justify-content: flex-end;
	text-align: right;
}

.canvas-primary-menu-align-center .site-header__main .menu,
.canvas-primary-menu-align-center .primary-navigation .menu {
	justify-content: center;
	text-align: center;
}

.canvas-primary-menu-align-justify .site-header__main .menu,
.canvas-primary-menu-align-justify .primary-navigation .menu {
	width: 100%;
	justify-content: space-between;
	text-align: left;
}

.canvas-top-menu-align-left .site-header__top-nav .menu {
	justify-content: flex-start;
}

.canvas-top-menu-align-right .site-header__top-nav .menu {
	justify-content: flex-end;
}

.canvas-top-menu-align-center .site-header__top-nav .menu {
	justify-content: center;
}

.canvas-top-menu-align-justify .site-header__top-nav .menu {
	width: 100%;
	justify-content: space-between;
}

.mobile-nav {
	display: none;
	background: var(--canvas-color-mobile-bar-back);
	color: var(--canvas-color-mobile-bar-fore);
}

.mobile-nav__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 5.6rem;
}

.mobile-nav__bar--none {
	justify-content: flex-start;
}

.mobile-nav__bar--right {
	justify-content: space-between;
}

.mobile-nav__menu,
.mobile-menubar {
	flex: 1 1 auto;
	min-width: 0;
}

.mobile-nav__menu .menu,
.mobile-menubar .menu {
	align-items: center;
}

.mobile-nav__bar--left .mobile-nav__menu,
.mobile-nav__bar--left .mobile-menubar {
	text-align: right;
}

.mobile-nav__bar--left .mobile-nav__menu .menu,
.mobile-nav__bar--left .mobile-menubar .menu {
	justify-content: flex-end;
}

.mobile-nav__bar--right .mobile-nav__menu,
.mobile-nav__bar--right .mobile-menubar {
	text-align: left;
}

.mobile-nav__bar--right .mobile-nav__menu .menu,
.mobile-nav__bar--right .mobile-menubar .menu {
	justify-content: flex-start;
}

.mobile-nav__logo {
	display: flex;
	align-items: center;
	flex: 0 1 min(60%, 24rem);
	min-width: 0;
}

.mobile-nav__bar--left .mobile-nav__logo {
	justify-content: flex-end;
	text-align: right;
}

.mobile-nav__bar--right .mobile-nav__logo {
	justify-content: flex-start;
	text-align: left;
}

.mobile-nav__logo .custom-logo-link {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
	line-height: 0;
}

.mobile-nav__bar--left .mobile-nav__logo .custom-logo-link {
	justify-content: flex-end;
}

.mobile-nav__bar--right .mobile-nav__logo .custom-logo-link {
	justify-content: flex-start;
}

.mobile-nav__logo img,
.mobile-nav__logo .custom-logo {
	display: block;
	width: min(52vw, 22rem);
	max-width: 100%;
	height: auto;
	max-height: 3.8rem;
	object-fit: contain;
}

.mobile-nav__bar--left .mobile-nav__logo img,
.mobile-nav__bar--left .mobile-nav__logo .custom-logo {
	object-position: right center;
}

.mobile-nav__bar--right .mobile-nav__logo img,
.mobile-nav__bar--right .mobile-nav__logo .custom-logo {
	object-position: left center;
}

.canvas-mobile-toggle {
	display: inline-flex;
	gap: 0.8rem;
	align-items: center;
	flex: 0 0 auto;
	min-height: 4.2rem;
	padding: 0.7rem 1rem;
	background: transparent;
	border-color: currentColor;
	color: inherit;
}

.mobile-nav .canvas-mobile-toggle {
	background: transparent;
	border-color: currentColor;
	color: inherit;
}

.mobile-nav__bar--right .canvas-mobile-toggle {
	flex-direction: row-reverse;
}

.canvas-mobile-toggle:hover,
.canvas-mobile-toggle:focus {
	background: color-mix(in srgb, currentColor, transparent 85%);
	color: inherit;
}

.canvas-mobile-toggle__icon {
	position: relative;
	display: inline-grid;
	width: 2.4rem;
	height: 1.8rem;
}

.canvas-mobile-toggle__icon span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 0.2rem;
	background: currentColor;
	transition: transform 0.18s ease, opacity 0.18s ease, top 0.18s ease;
}

.canvas-mobile-toggle__icon span:nth-child(1) {
	top: 0;
}

.canvas-mobile-toggle__icon span:nth-child(2) {
	top: 0.8rem;
}

.canvas-mobile-toggle__icon span:nth-child(3) {
	top: 1.6rem;
}

.canvas-mobile-toggle[aria-expanded="true"] .canvas-mobile-toggle__icon span:nth-child(1) {
	top: 0.8rem;
	transform: rotate(45deg);
}

.canvas-mobile-toggle[aria-expanded="true"] .canvas-mobile-toggle__icon span:nth-child(2) {
	opacity: 0;
}

.canvas-mobile-toggle[aria-expanded="true"] .canvas-mobile-toggle__icon span:nth-child(3) {
	top: 0.8rem;
	transform: rotate(-45deg);
}

.canvas-mobile-menu {
	padding-block: 0.8rem;
	background: var(--canvas-color-mobile-menu-back);
	color: var(--canvas-color-mobile-menu-fore);
}

.canvas-mobile-menu .menu,
.canvas-mobile-panel .menu {
	display: block;
}

.canvas-mobile-menu .menu a,
.canvas-mobile-panel .menu a {
	padding: 1rem 1.2rem;
	color: inherit;
}

.canvas-mobile-menu .menu .current-menu-item > a,
.canvas-mobile-menu .menu .current_page_item > a,
.canvas-mobile-panel .menu .current-menu-item > a,
.canvas-mobile-panel .menu .current_page_item > a {
	background: var(--canvas-color-menu-active);
	color: var(--canvas-color-menu-active-fore);
}

.canvas-mobile-menu .sub-menu,
.canvas-mobile-panel .sub-menu {
	position: static;
	display: block;
	min-width: 0;
	padding-left: 1.5rem;
	background: transparent;
	box-shadow: none;
}

.canvas-mobile-panel {
	position: fixed;
	z-index: 1000;
	top: 0;
	bottom: 0;
	width: min(100vw, var(--canvas-mobile-panel-width, 42rem));
	background: var(--canvas-color-mobile-menu-back);
	color: var(--canvas-color-mobile-menu-fore);
	box-shadow: 0 0 4rem rgba(0, 0, 0, 0.25);
	overflow: hidden;
	transition: transform 0.32s ease;
}

.canvas-mobile-panel--left {
	left: 0;
	transform: translateX(-100%);
}

.canvas-mobile-panel--right {
	right: 0;
	transform: translateX(100%);
}

.canvas-mobile-panel.is-open {
	transform: translateX(0);
}

.canvas-mobile-panel__inner {
	display: flex;
	height: 100%;
	flex-direction: column;
	padding: 1.2rem;
	overflow-y: auto;
}

.canvas-mobile-panel__close {
	align-self: flex-start;
	gap: 0.8rem;
	margin-bottom: 1.2rem;
	background: var(--canvas-color-button-back);
	color: var(--canvas-color-button-fore);
}

.canvas-mobile-panel .canvas-mobile-panel__close {
	background: var(--canvas-color-button-back);
	color: var(--canvas-color-button-fore);
}

.canvas-menu-overlay {
	position: fixed;
	z-index: 999;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	border: 0;
}

button.canvas-menu-overlay,
button.canvas-menu-overlay:hover,
button.canvas-menu-overlay:focus {
	padding: 0;
	background: rgba(0, 0, 0, 0.45);
	border: 0;
	border-radius: 0;
	color: transparent;
}

body.canvas-menu-open {
	overflow: hidden;
}

.canvas-mobile-panel--stack .canvas-mobile-panel__nav {
	position: relative;
	flex: 1;
	min-height: 40rem;
	overflow: hidden;
}

.canvas-mobile-panel--stack .canvas-mobile-panel-list {
	position: absolute;
	inset: 0;
	margin: 0;
	padding: 0;
	overflow-y: auto;
	background: var(--canvas-color-mobile-menu-back);
	list-style: none;
	transform: translateX(100%);
	transition: transform 0.28s ease;
}

.canvas-mobile-panel--stack .canvas-mobile-panel-list.is-active {
	transform: translateX(0);
}

.canvas-mobile-panel--stack .canvas-mobile-panel-list.is-left {
	transform: translateX(-100%);
}

.canvas-mobile-forward,
.canvas-mobile-back-link {
	margin-left: auto;
	padding: 0.8rem 1rem;
	background: transparent;
	border: 0;
	color: inherit;
}

button.canvas-mobile-forward,
button.canvas-mobile-back-link {
	background: transparent;
	border: 0;
	color: inherit;
}

.canvas-mobile-back-link {
	width: 100%;
	justify-content: flex-start;
}

.canvas-mobile-forward::after {
	content: ">";
}

.canvas-mobile-back-link::before {
	content: "<";
	margin-right: 0.8rem;
}

.before-content,
.after-content-full {
	width: 100%;
}

.canvas.has-cde-flex-content .after-content-full {
	margin-block: 0;
}

.before-content,
.before-content-page,
.before-content-col,
.after-content,
.after-content-page,
.after-content-full {
	margin-bottom: clamp(2rem, 4vw, 4rem);
}

.after-content,
.after-content-page,
.after-content-full {
	margin-top: clamp(2rem, 4vw, 4rem);
}

.entry-content > *:first-child {
	margin-top: 0;
}

article {
	padding-block: 2.5rem;
	border-top: 0.1rem solid color-mix(in srgb, var(--canvas-color-body-fore), transparent 85%);
}

article:first-child {
	border-top: 0;
	padding-top: 0;
}

.article-text-block {
	display: grid;
	gap: 1rem;
}

.post-date,
.post-author,
.post-cats,
.post-tags,
.meta-below,
.meta-above {
	color: color-mix(in srgb, var(--canvas-color-body-fore), transparent 20%);
	font-size: 1.4rem;
}

.post-thumbnail {
	display: block;
	margin-bottom: 1.6rem;
}

.comment-bubble {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.4rem;
	min-height: 2.4rem;
	margin-left: 0.8rem;
	padding: 0 0.6rem;
	border-radius: 99rem;
	background: var(--canvas-color-button-back);
	color: var(--canvas-color-button-fore);
	font-size: 1.2rem;
	text-decoration: none;
	vertical-align: middle;
}

.paging {
	margin-top: 3rem;
	text-align: center;
}

.page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 3.2rem;
	min-height: 3.2rem;
	margin: 0.2rem;
	padding: 0.3rem 0.7rem;
	border: 0.1rem solid color-mix(in srgb, var(--canvas-color-body-fore), transparent 80%);
	text-decoration: none;
}

.page-numbers.current {
	background: var(--canvas-color-button-back);
	color: var(--canvas-color-button-fore);
}

.sidebar {
	padding: 1.5rem;
	background: var(--canvas-color-sidebar-back);
}

.sidebar .widget {
	padding: 1.5rem;
	background: var(--canvas-color-sidebar-widget);
}

.canvas-sidebar-title-hidden .sidebar .widgettitle,
.canvas-sidebar-title-hidden .sidebar h2.widgettitle {
	display: none;
}

.widget {
	margin-bottom: 2rem;
}

.widget:last-child {
	margin-bottom: 0;
}

.widgettitle {
	margin-top: 0;
	font-size: clamp(1.8rem, 1.6rem + 0.45vw, 2.3rem);
}

.site-footer {
	margin-top: auto;
	--canvas-footer-menu-item-max: 25rem;
	--canvas-footer-menu-item-track: minmax(0, var(--canvas-footer-menu-item-max));
	background: var(--canvas-color-footer-back);
	color: var(--canvas-color-footer-fore);
}

.site-footer a {
	color: inherit;
}

.footer-section {
	padding-block: clamp(2rem, 4vw, 4rem);
	border-top: 0.1rem solid rgba(255, 255, 255, 0.12);
}

.footer-section:first-child {
	border-top: 0;
}

.footer-menus {
	display: grid;
	grid-template-columns: var(--canvas-footer-menu-item-track);
	column-gap: 3rem;
	row-gap: 0;
}

.footer-menus .menu {
	display: contents;
}

.footer-menus .menu > li {
	min-width: 0;
}

.footer-menus--onecol {
	grid-template-columns: var(--canvas-footer-menu-item-track);
}

.footer-menus--twocol {
	grid-template-columns: repeat(2, var(--canvas-footer-menu-item-track));
}

.footer-menus--threecol {
	grid-template-columns: repeat(3, var(--canvas-footer-menu-item-track));
}

.footer-menus--fourcol {
	grid-template-columns: repeat(4, var(--canvas-footer-menu-item-track));
}

.footer-menus--fivecol {
	grid-template-columns: repeat(5, var(--canvas-footer-menu-item-track));
}

.footer-menus--horz {
	display: flex;
	flex-wrap: wrap;
	column-gap: 0;
}

.footer-menus--horz .menu > li:not(:last-child)::after {
	content: "|";
	display: inline-block;
	opacity: 0.6;
}

.footer-menus--horz .menu:not(:last-child) > li:last-child::after {
	content: "|";
	display: inline-block;
	opacity: 0.6;
}

.footer-menus--horz .menu a,
.footer-menus--horz .menu li {
	display: inline-flex;
	align-items: center;
}

.footer-menus-align-center {
	justify-content: center;
	text-align: center;
}

.footer-menus-align-center .menu > li {
	justify-self: center;
}

.footer-menus-align-right {
	justify-content: flex-end;
	text-align: right;
}

.footer-menus-align-right .menu > li {
	justify-self: end;
}

.footer-menus-align-justify {
	justify-content: space-between;
}

.footer-menus-align-justify .menu > li {
	justify-self: stretch;
}

.site-footer .widget_nav_menu .menu {
	display: grid;
	grid-template-columns: var(--canvas-footer-menu-item-track);
	column-gap: 3rem;
	row-gap: 0;
}

.site-footer .widget_nav_menu .menu > li {
	min-width: 0;
}

.canvas-footer-menu-layout-onecol .site-footer .widget_nav_menu .menu {
	grid-template-columns: var(--canvas-footer-menu-item-track);
}

.canvas-footer-menu-layout-twocol .site-footer .widget_nav_menu .menu {
	grid-template-columns: repeat(2, var(--canvas-footer-menu-item-track));
}

.canvas-footer-menu-layout-threecol .site-footer .widget_nav_menu .menu {
	grid-template-columns: repeat(3, var(--canvas-footer-menu-item-track));
}

.canvas-footer-menu-layout-fourcol .site-footer .widget_nav_menu .menu {
	grid-template-columns: repeat(4, var(--canvas-footer-menu-item-track));
}

.canvas-footer-menu-layout-fivecol .site-footer .widget_nav_menu .menu {
	grid-template-columns: repeat(5, var(--canvas-footer-menu-item-track));
}

.canvas-footer-menu-layout-horz .site-footer .widget_nav_menu .menu {
	display: flex;
	flex-wrap: wrap;
	column-gap: 0;
}

.canvas-footer-menu-layout-horz .site-footer .widget_nav_menu .menu > li:not(:last-child)::after {
	content: "|";
	display: inline-block;
	opacity: 0.6;
}

.canvas-footer-menu-layout-horz .site-footer .widget_nav_menu .menu a,
.canvas-footer-menu-layout-horz .site-footer .widget_nav_menu .menu li {
	display: inline-flex;
	align-items: center;
}

.canvas-footer-menu-align-left .site-footer .menu {
	justify-content: flex-start;
	text-align: left;
}

.canvas-footer-menu-align-right .site-footer .menu {
	justify-content: flex-end;
	text-align: right;
}

.canvas-footer-menu-align-center .site-footer .menu {
	justify-content: center;
	text-align: center;
}

.canvas-footer-menu-align-justify .site-footer .menu {
	width: 100%;
	justify-content: space-between;
}

.footer-section--bottom .widget-area {
    margin-bottom: 0;
}

.commentlist {
	margin-left: 0;
}

.comment-wrapper {
	display: grid;
	grid-template-columns: 4.8rem minmax(0, 1fr);
	gap: 1.5rem;
	padding-block: 1.5rem;
	border-top: 0.1rem solid color-mix(in srgb, var(--canvas-color-body-fore), transparent 85%);
}

.comment .avatar {
	border-radius: 50%;
}

.comment-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem 1.5rem;
	margin-bottom: 0.8rem;
	font-size: 1.4rem;
}

.comment-respond {
	margin-top: 3rem;
}

.comment-form {
	display: grid;
	gap: 1.2rem;
}

.alignleft {
	float: left;
	margin: 0.5rem 2rem 1.5rem 0;
}

.alignright {
	float: right;
	margin: 0.5rem 0 1.5rem 2rem;
}

.aligncenter {
	display: block;
	margin: 2rem auto;
	text-align: center;
}

.wp-caption,
.gallery-caption {
	max-width: 100%;
	color: color-mix(in srgb, var(--canvas-color-body-fore), transparent 25%);
	font-size: 1.3rem;
}

.canvas-panel {
	width: 100%;
	margin: 2rem 0;
	padding: clamp(1.8rem, 3vw, 3rem);
	background: color-mix(in srgb, var(--canvas-color-body-fore), transparent 94%);
}

.small,
.small-text {
	font-size: 1.2rem;
}

.large-text {
	font-size: clamp(2rem, 1.8rem + 0.8vw, 2.8rem);
}

.canvas-split {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.8rem 2rem;
	width: 100%;
}

.canvas-split > * {
	margin-block: 0;
}

.canvas-split > :not(:first-child):last-child {
	margin-left: auto;
	text-align: right;
}

.inline-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem 1.5rem;
	padding-left: 0;
	list-style: none;
}

.two-cols,
.three-cols,
.four-cols {
	column-gap: 3rem;
}

.two-cols {
	columns: 2;
}

.three-cols {
	columns: 3;
}

.four-cols {
	columns: 4;
}

.cde-box-menu {
	display: grid;
	gap: 2rem;
	padding-left: 0;
	list-style: none;
}

.cde-box-menu .row,
.items-per-row-1,
.items-per-row-2,
.items-per-row-3,
.items-per-row-4,
.items-per-row-5,
.items-per-row-6,
.items-per-row-7,
.items-per-row-8 {
	display: grid;
	gap: 2rem;
}

.items-per-row-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.items-per-row-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.items-per-row-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.items-per-row-5 {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.items-per-row-6 {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.items-per-row-7 {
	grid-template-columns: repeat(7, minmax(0, 1fr));
}

.items-per-row-8 {
	grid-template-columns: repeat(8, minmax(0, 1fr));
}

.cde-box-menu .box-menu-item {
	position: relative;
	min-width: 0;
}

.cde-box-menu .box-menu-item .img {
	position: relative;
	width: 100%;
	min-height: 20rem;
	margin-bottom: 1rem;
	overflow: hidden;
	background-position: center;
	background-size: cover;
}

.cde-box-menu .box-menu-item .img::before {
	content: "";
	position: absolute;
	inset: 0;
	background: inherit;
	background-position: inherit;
	background-size: inherit;
}

@media (max-width: 640px) {
	.alignleft,
	.alignright {
		float: none;
		display: block;
		margin: 2rem 0;
	}

	.two-cols,
	.three-cols,
	.four-cols {
		columns: 1;
	}

	.canvas-split {
		align-items: flex-start;
		flex-direction: column;
	}

	.canvas-split > :not(:first-child):last-child {
		margin-left: 0;
		text-align: left;
	}
}
