:root {
	--px-h-full: 142px;
	--px-h-small: 80px;
}
@media (max-width: 560px) {
	:root {
		--px-h-full: 100px;
		--px-h-small: 70px;
	}
}

.et_pb_section.praxis-header {
	height: var(--px-h-full);
	min-height: var(--px-h-full);
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
}
.praxis-header .et_pb_row {
	width: 100%;
	max-width: none;
	padding: 0 !important;
}
.praxis-header .et_pb_column,
.praxis-header .et_pb_code,
.praxis-header .et_pb_code_inner {
	margin: 0 !important;
	padding: 0 !important;
}

.px-head {
	--px-ink: #788379;
	--px-accent: var(--ma-limegreen, #dedc00);
	--px-white: #fff;
	--px-display: 'Nunito Sans', sans-serif;
	--px-body: 'Nunito Sans', sans-serif;
	--px-h: var(--px-h-full);
	--px-logo: 94px;
	--px-panel: 66vw;
	--px-extra: 0px;
	--px-slant: 25vh;
	--px-burger-slant: 2px;
	--px-burger-h: 4px;
	--px-menu-size: clamp(1.6rem, min(.5rem + 2vw, 4.8vh), 3rem);
	--px-ease: cubic-bezier(.77, 0, .18, 1);
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: var(--px-sbw, 0px);
	z-index: 99990;
	pointer-events: none;
	color: var(--px-ink);
	font-family: var(--px-body);
	font-size: 16px;
	line-height: 1.4;
	-webkit-font-smoothing: antialiased;
}
.px-head.px-small {
	--px-h: var(--px-h-small);
	--px-logo: 44px;
	--px-line: var(--ma-limegreen);
}

@media (min-width: 821px) and (max-width: 1279px) {
	.px-head { --px-panel: 80vw; }
}
.admin-bar .px-head { top: 32px; }
@media (max-width: 782px) { .admin-bar .px-head { top: 46px; } }

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

.px-head a {
	color: inherit;
	text-decoration: none;
	border: 0;
	box-shadow: none;
}
.px-head button,
.px-head button:hover,
.px-head button:focus {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	font: inherit;
	color: inherit;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}
.px-head :focus-visible {
	outline: 3px solid var(--px-ink);
	outline-offset: 3px;
}

.px-head::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	background: rgba(255, 255, 255, .7);
	opacity: 0;
	visibility: hidden;
	transition: opacity .4s ease, visibility 0s linear .4s;
}
.px-open::before {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transition: opacity .4s ease, visibility 0s;
}

.px-bg {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1;
	height: var(--px-h);
	background: var(--px-white);
	border-bottom: 1px solid var(--px-line);
	pointer-events: auto;
	transition: height .3s ease;
	overflow: hidden;
}

.px-bg::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	height: clamp(420px, 52vw, 820px);
	aspect-ratio: 1135 / 2970;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1135 2970'%3E%3Cg fill='%23788379' opacity='.10' fill-rule='evenodd'%3E%3Cpath d='M11.364 2962.52l7.197 -17.993 905.477 -611.781 -454.922 -663.822 0 0.001c0,-0.364 -259.852,-451.647 -259.852,-451.647l294.789 -469.844 334.459 -442.185 -734.427 -17.105 -14.558 -9.462 973.172 -268.222 8.37 24.384 -188.885 249.662 200.531 6.55 -0.728 21.837 -215.815 -6.915 -343.558 454.194 -287.146 457.469 252.936 439.638 454.559 663.095 165.228 -114.276 12.374 18.197 -165.591 114.276 174.69 248.57 -1129.66 382.863 10.718 -7.247 0.646 -0.237zm925.412 -611.211l-783.558 540.811 937.14 -316.626 -153.582 -223.822 0 -0.363zm-695.849 -2087.18l614.327 20.017 184.153 -243.474 -798.48 223.458 0 -0.001z'/%3E%3Cpolygon points='1129.66,2587.14 1091.09,2586.77 1094.72,2223.93 473.483,1662.37 493.863,783.459 1062.7,293.599 1062.7,10.456 1100.91,0 1100.91,311.068 532.077,801.293 512.424,1645.99 1133.3,2206.82 1133.3,2223.93'/%3E%3Cpath d='M146.303 1323.54l-13.466 -205.261 -42.945 -839.969 21.837 -1.092 42.945 836.329 77.519 104.087 -85.889 105.542 -0.001 0.364zm10.553 -171.051l7.643 115.732 43.309 -50.951 -50.952 -64.781z'/%3E%3Cpolygon points='29.842,2950.35 0,2970 144.483,1295.16 166.319,1296.98'/%3E%3C/g%3E%3C/svg%3E") center / 100% 100% no-repeat;
	transform: translate(calc(-22% + 70px), -14%) rotate(-12deg);
	pointer-events: none;
}
@media (max-width: 767px) { .px-bg::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1135 2970'%3E%3Cg fill='%23788379' opacity='.08' fill-rule='evenodd'%3E%3Cpath d='M11.364 2962.52l7.197 -17.993 905.477 -611.781 -454.922 -663.822 0 0.001c0,-0.364 -259.852,-451.647 -259.852,-451.647l294.789 -469.844 334.459 -442.185 -734.427 -17.105 -14.558 -9.462 973.172 -268.222 8.37 24.384 -188.885 249.662 200.531 6.55 -0.728 21.837 -215.815 -6.915 -343.558 454.194 -287.146 457.469 252.936 439.638 454.559 663.095 165.228 -114.276 12.374 18.197 -165.591 114.276 174.69 248.57 -1129.66 382.863 10.718 -7.247 0.646 -0.237zm925.412 -611.211l-783.558 540.811 937.14 -316.626 -153.582 -223.822 0 -0.363zm-695.849 -2087.18l614.327 20.017 184.153 -243.474 -798.48 223.458 0 -0.001z'/%3E%3Cpolygon points='1129.66,2587.14 1091.09,2586.77 1094.72,2223.93 473.483,1662.37 493.863,783.459 1062.7,293.599 1062.7,10.456 1100.91,0 1100.91,311.068 532.077,801.293 512.424,1645.99 1133.3,2206.82 1133.3,2223.93'/%3E%3Cpath d='M146.303 1323.54l-13.466 -205.261 -42.945 -839.969 21.837 -1.092 42.945 836.329 77.519 104.087 -85.889 105.542 -0.001 0.364zm10.553 -171.051l7.643 115.732 43.309 -50.951 -50.952 -64.781z'/%3E%3Cpolygon points='29.842,2950.35 0,2970 144.483,1295.16 166.319,1296.98'/%3E%3C/g%3E%3C/svg%3E"); } }

.px-bar {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 5;
	height: var(--px-h);
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	padding: 0 50px;
	transition: height .3s ease;
}
.px-bar > * { pointer-events: auto; }
@media (max-width: 560px) {
	.px-bar { padding: 0 20px; }
}

.px-contact {
	--d: .4s;
	grid-column: 1;
	justify-self: start;
	display: flex;
	align-items: center;
	gap: 4px 24px;
}
.px-contact a {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 48px;
	font: 600 .95rem/1 var(--px-body);
	white-space: nowrap;
	position: relative;
	transition: color .25s var(--d);
}
.px-contact a::after {
	content: "";
	position: absolute;
	inset: -6px -8px;
}

.px-txt {
	position: relative;
	padding-bottom: .2em;
	line-height: 1.2;
}
.px-txt::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	background: var(--px-accent);
	transform: skewX(20deg) scaleX(0);
	transform-origin: right center;
	transition: transform .35s var(--px-ease);
}
.px-contact a:hover .px-txt::after,
.px-contact a:focus-visible .px-txt::after {
	transform: skewX(20deg) scaleX(1);
	transform-origin: left center;
}

.px-ico {
	display: block;
	line-height: 0;
	color: var(--px-accent);
}
.px-ico svg {
	display: block;
	width: auto;
	height: 28px;
}
@media (max-width: 979px) {
	.px-txt { display: none; }
	.px-contact { gap: 20px; }
}

.px-logo {
	--d: .25s;
	grid-column: 2;
	display: block;
	line-height: 0;
}
.px-logo svg {
	display: block;
	height: var(--px-logo);
	width: auto;
	transition: height .3s ease;
}
.px-lg {
	fill: var(--px-ink);
	transition: fill .25s var(--d);
}
@media (max-width: 560px) {
	.px-head { --px-logo: 52px; }
	.px-head.px-small { --px-logo: 38px; }
}

.px-burger {
	--d: 0s;
	grid-column: 3;
	justify-self: end;
	position: relative;
	width: 40px;
	height: 56px;
	display: grid;
	place-content: center;
	justify-items: end;
	gap: 8px;
}
.px-burger::after {
	content: "";
	position: absolute;
	inset: 0 -12px;
}
.px-burger span {
	display: block;
	width: 40px;
	height: var(--px-burger-h);
	background: var(--px-ink);
	clip-path: polygon(0 0, calc(100% - var(--px-burger-slant)) 0, 100% 100%, var(--px-burger-slant) 100%);
	transition: transform .3s, width .25s, opacity .2s, clip-path .3s, background-color .25s var(--d);
}
.px-burger span:nth-child(2) { width: 24px; }
.px-burger span:nth-child(3) { width: 32px; }
.px-burger:hover span:nth-child(2),
.px-burger:hover span:nth-child(3) { width: 40px; }

.px-burger[aria-expanded="true"] span:nth-child(1) {
	transform: translateY(12px) rotate(45deg);
	clip-path: polygon(var(--px-burger-h) 0, 100% 0, calc(100% - var(--px-burger-h)) 100%, 0 100%);
}
.px-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.px-burger[aria-expanded="true"] span:nth-child(3) {
	transform: translateY(-12px) rotate(-45deg);
	width: 40px;
	clip-path: polygon(0 0, calc(100% - var(--px-burger-h)) 0, 100% 100%, var(--px-burger-h) 100%);
}

.px-veil,
.px-menu {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: calc(var(--px-panel) + var(--px-extra));
	transform: translateX(-100%);
	visibility: hidden;
	clip-path: polygon(0 0, 100% 0, calc(100% - var(--px-slant)) 100%, 0 100%);
}
.px-veil {
	z-index: 3;
	width: calc(var(--px-panel) + var(--px-extra) + 13px);
	background: var(--px-accent);
	transition: transform .75s var(--px-ease) .08s, visibility 0s linear .83s;
}
.px-menu {
	z-index: 4;
	background: var(--px-ink);
	pointer-events: auto;
	transition: transform .75s var(--px-ease), visibility 0s linear .75s;
}
.px-open .px-veil {
	transform: none;
	visibility: visible;
	transition: transform .75s var(--px-ease), visibility 0s;
}
.px-open .px-menu {
	transform: none;
	visibility: visible;
	transition: transform .75s var(--px-ease) .08s, visibility 0s;
}

.px-menu::before {
	content: "";
	position: absolute;
	z-index: 0;
	left: calc(var(--px-panel) + var(--px-extra) - var(--px-slant) - 11vw);
	bottom: 5vh;
	width: 33vw;
	aspect-ratio: 1135 / 2970;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1135 2970'%3E%3Cg fill='%23fff' fill-rule='evenodd'%3E%3Cpath d='M11.364 2962.52l7.197 -17.993 905.477 -611.781 -454.922 -663.822 0 0.001c0,-0.364 -259.852,-451.647 -259.852,-451.647l294.789 -469.844 334.459 -442.185 -734.427 -17.105 -14.558 -9.462 973.172 -268.222 8.37 24.384 -188.885 249.662 200.531 6.55 -0.728 21.837 -215.815 -6.915 -343.558 454.194 -287.146 457.469 252.936 439.638 454.559 663.095 165.228 -114.276 12.374 18.197 -165.591 114.276 174.69 248.57 -1129.66 382.863 10.718 -7.247 0.646 -0.237zm925.412 -611.211l-783.558 540.811 937.14 -316.626 -153.582 -223.822 0 -0.363zm-695.849 -2087.18l614.327 20.017 184.153 -243.474 -798.48 223.458 0 -0.001z'/%3E%3Cpolygon points='1129.66,2587.14 1091.09,2586.77 1094.72,2223.93 473.483,1662.37 493.863,783.459 1062.7,293.599 1062.7,10.456 1100.91,0 1100.91,311.068 532.077,801.293 512.424,1645.99 1133.3,2206.82 1133.3,2223.93'/%3E%3Cpath d='M146.303 1323.54l-13.466 -205.261 -42.945 -839.969 21.837 -1.092 42.945 836.329 77.519 104.087 -85.889 105.542 -0.001 0.364zm10.553 -171.051l7.643 115.732 43.309 -50.951 -50.952 -64.781z'/%3E%3Cpolygon points='29.842,2950.35 0,2970 144.483,1295.16 166.319,1296.98'/%3E%3C/g%3E%3C/svg%3E") center / 100% 100% no-repeat;
	opacity: .3;
	transform: translate(-50%, 50%) rotate(-120deg);
	pointer-events: none;
}

.px-menu-inner {
	width: var(--px-panel);
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: calc(var(--px-h) + 24px) calc(var(--px-slant) - var(--px-extra) + 50px) 50px clamp(24px, 8vw, 120px);
	overflow-y: auto;
	overscroll-behavior: contain;
	position: relative;
	z-index: 1;
}
@media (max-width: 560px) {
	.px-menu-inner { padding-right: calc(var(--px-slant) - var(--px-extra) + 20px); padding-bottom: 20px; }
}
.px-menu a {
	display: flex;
	align-items: baseline;
	gap: 18px;
	padding: .35em 0;
	color: var(--px-white);
	font: 700 var(--px-menu-size)/1.1 var(--px-display);
	letter-spacing: .02em;
	text-transform: uppercase;
	opacity: 0;
	transform: translateX(-40px);
	transition: opacity .4s, transform .5s cubic-bezier(.2, .8, .2, 1), color .4s ease;
}
.px-open .px-menu a {
	opacity: 1;
	transform: none;
	transition-delay: calc(.35s + var(--i) * .07s), calc(.35s + var(--i) * .07s), 0s;
}
.px-menu a small {
	flex: none;
	align-self: center;
	width: .3em;
	height: .3em;
	background: var(--px-accent);
	transform: skewX(20deg);
}

.px-menu a:first-child { margin-top: auto; }
.px-menu a:nth-last-child(2) { margin-bottom: 28px; }
.px-menu a:not(.px-cta):hover { color: var(--px-accent); }
.px-menu .px-cta {
	align-self: flex-end;
	margin-top: auto;
	position: relative;
	isolation: isolate;
	padding: 18px 30px;
	background: none;
	color: var(--ma-black, #323131);
	font: 700 1rem/1.2 'Roboto Condensed', 'Arial Narrow', sans-serif;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.px-menu .px-cta::before,
.px-menu .px-cta::after {
	content: "";
	position: absolute;
	transform: skewX(9deg);
	pointer-events: none;
}
.px-menu .px-cta::before {
	inset: 0;
	z-index: -1;
	background: var(--px-accent);
	transition: background-color .4s ease;
}

.px-menu .px-cta:hover::before { background: #fff; }
.px-menu .px-cta::after {
	inset: 2px;
	z-index: -2;
	animation: px-puls 2.4s ease-out infinite;
}
@keyframes px-puls {
	0%        { box-shadow: 0 0 0 0 rgba(222, 220, 0, .45); }
	70%, 100% { box-shadow: 0 0 0 18px rgba(222, 220, 0, 0); }
}
@media (prefers-reduced-motion: reduce) {
	.px-menu .px-cta::after { animation: none; }
}
.px-menu .px-cta:focus-visible {
	outline-offset: -6px;
	outline-color: var(--px-ink);
}

.px-open .px-contact { --d: .15s; }
.px-open .px-logo { --d: .35s; }
.px-open .px-burger { --d: .5s; }
.px-open .px-contact a { color: var(--px-white); }

.px-open .px-lg { fill: var(--px-white); }
.px-open :focus-visible { outline-color: var(--px-accent); }

.px-open .px-burger:focus-visible { outline-color: var(--px-ink); }

@media (max-width: 820px) and (orientation: portrait) {
	.px-head { --px-panel: 100vw; --px-extra: var(--px-slant); }
	.px-open .px-burger span { background: var(--px-accent); }
	.px-open .px-burger:focus-visible { outline-color: var(--px-accent); }
}

@media (prefers-reduced-motion: reduce) {
	.px-head,
	.px-head::before,
	.px-head *,
	.px-head *::before,
	.px-head *::after { transition: none !important; }
}
