
@media (max-width:781px) {
	.wp-block-column[style*="--order-mobile"] {
		order: var(--order-mobile, 0);
	}
	
	.wp-block-columns>.wp-block-column:not([style*="--order-mobile"]) {
		order: 999;
	}
}

.wp-block-column.is-linked, .wp-block-group.is-linked {
	cursor: pointer !important;
	position: relative;
}

.wp-block-column.is-linked:hover, .wp-block-group.is-linked:hover {
	cursor: pointer;
}

.wp-block-column.is-linked .ollie-group-link, .wp-block-group.is-linked .ollie-group-link {
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	clip: rect(0, 0, 0, 0);
	border: 0;
	pointer-events: none;
	text-decoration: none;
	white-space: nowrap;
}

.wp-block-group[data-sticky-on-scroll-up=true] {
	transition: transform .3s cubic-bezier(.4, 0, .2, 1);
}

.wp-block-group[data-sticky-on-scroll-up=true].is-sticky-hidden {
	transform: translateY(calc(-100% - var(--sticky-full-offset, 0px)));
}

.wp-block-group[data-sticky-on-scroll-up=true].is-sticky-active {
	transform: translateY(0);
}

.wp-block-group[data-sticky-on-scroll-up=true]:has(.has-modal-open) {
	transform: none;
	transition: none;
}

@media (max-width:600px) {
	.wp-block-group.ollie-row-stack {
		flex-direction: column !important;
	}
	
	.wp-block-group.ollie-row-stack>* {
		max-width: none !important;
		width: 100% !important;
	}
}

.has-hover__color:not(.wp-block-button) {
	transition: color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.has-hover__color:not(.wp-block-button):hover {
	color: var(--hover-color) !important;
}

.has-hover__background-color:not(.wp-block-button) {
	transition: background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.has-hover__background-color:not(.wp-block-button):hover {
	background-color: var(--hover-background-color) !important;
}

.has-hover__border-color:not(.wp-block-button) {
	transition: border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.has-hover__border-color:not(.wp-block-button):hover {
	border-color: var(--hover-border-color) !important;
}

.has-hover__color.has-hover__background-color:not(.wp-block-button) {
	transition: color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.has-hover__color.has-hover__border-color:not(.wp-block-button) {
	transition: color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.has-hover__background-color.has-hover__border-color:not(.wp-block-button) {
	transition: background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.has-hover__color.has-hover__background-color.has-hover__border-color:not(.wp-block-button) {
	transition: color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.has-hover__color .wp-element-button {
	transition: color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.has-hover__color:hover .wp-element-button {
	color: var(--hover-color) !important;
}

.wp-block-button.has-hover__background-color .wp-element-button {
	transition: background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.has-hover__background-color:hover .wp-element-button {
	background-color: var(--hover-background-color) !important;
}

.wp-block-button.has-hover__border-color .wp-element-button {
	transition: border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.has-hover__border-color:hover .wp-element-button {
	border-color: var(--hover-border-color) !important;
}

.wp-block-button.has-hover__color.has-hover__background-color .wp-element-button {
	transition: color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.has-hover__color.has-hover__border-color .wp-element-button {
	transition: color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.has-hover__background-color.has-hover__border-color .wp-element-button {
	transition: background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.has-hover__color.has-hover__background-color.has-hover__border-color .wp-element-button {
	transition: color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.ollie-animate-scaleOnHover.has-hover__color:not(.wp-block-button) {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.ollie-animate-scaleOnHover.has-hover__background-color:not(.wp-block-button) {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.ollie-animate-scaleOnHover.has-hover__border-color:not(.wp-block-button) {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.ollie-animate-scaleOnHover.has-hover__color.has-hover__background-color:not(.wp-block-button) {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.ollie-animate-scaleOnHover.has-hover__color.has-hover__border-color:not(.wp-block-button) {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.ollie-animate-scaleOnHover.has-hover__background-color.has-hover__border-color:not(.wp-block-button) {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.ollie-animate-scaleOnHover.has-hover__color.has-hover__background-color.has-hover__border-color:not(.wp-block-button) {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.ollie-animate-scaleOnHover.has-hover__color .wp-element-button {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.ollie-animate-scaleOnHover.has-hover__background-color .wp-element-button {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.ollie-animate-scaleOnHover.has-hover__border-color .wp-element-button {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.ollie-animate-scaleOnHover.has-hover__color.has-hover__background-color .wp-element-button {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.ollie-animate-scaleOnHover.has-hover__color.has-hover__border-color .wp-element-button {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.ollie-animate-scaleOnHover.has-hover__background-color.has-hover__border-color .wp-element-button {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button.ollie-animate-scaleOnHover.has-hover__color.has-hover__background-color.has-hover__border-color .wp-element-button {
	transition: transform var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), background-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease), border-color var(--hover-transition-duration, .2s) var(--hover-transition-timing, ease);
}

.wp-block-button[class*=has-icon__] .wp-block-button__link {
	align-items: center;
	display: flex;
	gap: .5em;
}

.wp-block-button[class*=has-icon__] .wp-block-button__link span {
	line-height: 0;
}

.wp-block-button[class*=has-icon__] .wp-block-button__link svg {
	color: currentColor;
	fill: currentColor;
}

.is-content-justification-center .wp-block-button[class*=has-icon__] .wp-block-button__link {
	justify-content: center;
}

.is-content-justification-right .wp-block-button[class*=has-icon__] .wp-block-button__link {
	justify-content: flex-end;
}

.is-content-justification-left .wp-block-button[class*=has-icon__] .wp-block-button__link {
	justify-content: flex-start;
}

.is-content-justification-space-between .wp-block-button[class*=has-icon__] .wp-block-button__link {
	justify-content: space-between;
}

.wp-block-button[class*=has-icon__][class*=has-icon__] svg {
	height: 1.2em;
	width: 1.2em;
}

.has-hover-decoration, .has-hover-decoration a {
	transition: -webkit-text-decoration .2s ease;
	transition: text-decoration .2s ease;
	transition: text-decoration .2s ease, -webkit-text-decoration .2s ease;
}

.ollie-animate {
	--animation-duration: 1s;
	--animation-delay: 0s;
	--animation-distance: 30px;
	--animation-scale: 1.05;
}

.ollie-animate:not(.ollie-animate-on-scroll) {
	backface-visibility: hidden;
	transform: translateZ(0);
	will-change: transform, opacity;
}

@keyframes ollieAnimateFadeIn {
	0% {
		opacity: 0;
	}
	
	to {
		opacity: 1;
	}
}

@keyframes ollieAnimateFadeInUp {
	0% {
		opacity: 0;
		transform: translateY(var(--animation-distance));
	}
	
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes ollieAnimateFadeInDown {
	0% {
		opacity: 0;
		transform: translateY(calc(var(--animation-distance) * -1));
	}
	
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes ollieAnimateFadeInLeft {
	0% {
		opacity: 0;
		transform: translateX(var(--animation-distance));
	}
	
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes ollieAnimateFadeInRight {
	0% {
		opacity: 0;
		transform: translateX(calc(var(--animation-distance) * -1));
	}
	
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes ollieAnimateZoomIn {
	0% {
		opacity: 0;
		transform: scale(calc(2 - var(--animation-scale)));
	}
	
	to {
		opacity: 1;
		transform: scale(1);
	}
}

@keyframes ollieAnimatePulse {
	0% {
		transform: scaleX(1);
	}
	
	50% {
		transform: scale3d(var(--animation-scale), var(--animation-scale), var(--animation-scale));
	}
	
	to {
		transform: scaleX(1);
	}
}

.ollie-animate-scaleOnHover:not(.has-hover__color):not(.has-hover__background-color):not(.has-hover__border-color) {
	transition: transform var(--animation-duration) ease;
}

.ollie-animate-scaleOnHover {
	transform: scale(1);
	transform-origin: center center;
}

.ollie-animate-scaleOnHover:hover {
	transform: scale(var(--animation-scale, 1.05));
}

.ollie-animate:not(.ollie-animate-on-scroll):not(.ollie-animate-scaleOnHover) {
	animation-fill-mode: both;
}

.ollie-animate:not(.ollie-animate-on-scroll):not(.ollie-animate-scaleOnHover).ollie-animate-fadeIn {
	animation: ollieAnimateFadeIn var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate:not(.ollie-animate-on-scroll):not(.ollie-animate-scaleOnHover).ollie-animate-fadeInUp {
	animation: ollieAnimateFadeInUp var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate:not(.ollie-animate-on-scroll):not(.ollie-animate-scaleOnHover).ollie-animate-fadeInDown {
	animation: ollieAnimateFadeInDown var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate:not(.ollie-animate-on-scroll):not(.ollie-animate-scaleOnHover).ollie-animate-fadeInLeft {
	animation: ollieAnimateFadeInLeft var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate:not(.ollie-animate-on-scroll):not(.ollie-animate-scaleOnHover).ollie-animate-fadeInRight {
	animation: ollieAnimateFadeInRight var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate:not(.ollie-animate-on-scroll):not(.ollie-animate-scaleOnHover).ollie-animate-zoomIn {
	animation: ollieAnimateZoomIn var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate:not(.ollie-animate-on-scroll):not(.ollie-animate-scaleOnHover).ollie-animate-pulse {
	animation: ollieAnimatePulse var(--animation-duration) ease-in-out var(--animation-delay) both;
}

.ollie-animate-on-scroll {
	opacity: 0;
}

.ollie-animate-on-scroll.ollie-animate-pulse {
	opacity: 1;
}

.ollie-animate-on-scroll.ollie-animate-ready {
	will-change: transform, opacity;
}

.ollie-animate-on-scroll.ollie-animated {
	opacity: 1;
	transition: opacity .1s ease-out;
}

.ollie-animate-on-scroll.ollie-animated.ollie-animation-done {
	will-change: auto;
}

.ollie-animate-on-scroll.ollie-animated.ollie-animate-fadeIn {
	animation: ollieAnimateFadeIn var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate-on-scroll.ollie-animated.ollie-animate-fadeInUp {
	animation: ollieAnimateFadeInUp var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate-on-scroll.ollie-animated.ollie-animate-fadeInDown {
	animation: ollieAnimateFadeInDown var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate-on-scroll.ollie-animated.ollie-animate-fadeInLeft {
	animation: ollieAnimateFadeInLeft var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate-on-scroll.ollie-animated.ollie-animate-fadeInRight {
	animation: ollieAnimateFadeInRight var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate-on-scroll.ollie-animated.ollie-animate-zoomIn {
	animation: ollieAnimateZoomIn var(--animation-duration) ease-out var(--animation-delay) both;
}

.ollie-animate-on-scroll.ollie-animated.ollie-animate-pulse {
	animation: ollieAnimatePulse var(--animation-duration) ease-in-out var(--animation-delay) both;
}

.ollie-animate-sequentially.ollie-animate {
	animation: none !important;
}

.ollie-animate-sequentially.ollie-animate-on-scroll:not(.ollie-animated), .ollie-animate-sequentially:not(.ollie-animate-on-scroll) {
	opacity: 1 !important;
	transform: none !important;
}

@media (prefers-reduced-motion:no-preference) {
	.ollie-animate-sequentially>:not(.ollie-animate) {
		opacity: 0;
	}
}

.ollie-no-motion {
	animation: none !important;
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}
