.has-backdrop-blur {
	--blur-amount: 5px;
	-webkit-backdrop-filter: blur(var(--blur-amount));
	backdrop-filter: blur(var(--blur-amount));
}
.blur-1  { --blur-amount: 1px  }
.blur-2  { --blur-amount: 2px  }
.blur-3  { --blur-amount: 3px  }
.blur-4  { --blur-amount: 4px  }
.blur-5  { --blur-amount: 5px  }
.blur-6  { --blur-amount: 6px  }
.blur-7  { --blur-amount: 7px  }
.blur-8  { --blur-amount: 8px  }
.blur-9  { --blur-amount: 9px  }
.blur-10 { --blur-amount: 10px }
.blur-11 { --blur-amount: 11px }
.blur-12 { --blur-amount: 12px }
.blur-13 { --blur-amount: 13px }
.blur-14 { --blur-amount: 14px }
.blur-15 { --blur-amount: 15px }
.blur-16 { --blur-amount: 16px }
.blur-17 { --blur-amount: 17px }
.blur-18 { --blur-amount: 18px }
.blur-19 { --blur-amount: 19px }
.blur-20 { --blur-amount: 20px }

@media (max-width: 991px) {
	.has-1-column-on-laptop { grid-template-columns: 1fr !important }
	.has-2-columns-on-laptop { grid-template-columns: 1fr 1fr !important }
}

@media (max-width: 781px) {
	.has-1-column-on-tablet { grid-template-columns: 1fr !important }
	.has-2-columns-on-tablet { grid-template-columns: 1fr 1fr !important }
}

@media (max-width: 580px) {
	.has-1-column-on-mobile { grid-template-columns: 1fr !important }
	.has-2-columns-on-mobile { grid-template-columns: 1fr 1fr !important }
}

.has-fancy-shadow {
	position: relative !important;
	overflow: visible;
}

.has-fancy-shadow::after {
	--fancy-shadow-data: url("data:image/png;base64,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");

	content: '';
	background-image: var(--fancy-shadow-data);
	background-size: var(--shadow-width, 100%) var(--shadow-height, 25px);
	background-position: top center;
	background-repeat: no-repeat;
	position: absolute;
	top: 100%;
	width: var(--shadow-width, 100%);
	left: 0;
	right: 0;
	height: var(--shadow-height, 25px);
	opacity: var(--shadow-opacity, 1);
	z-index: 10;
	pointer-events: none;
	overflow: overflow;
}

.align-center { text-align: center !important }
.align-center > * { text-align: center !important }
.align-center * { text-align: center; }
.align-center ul { list-style-position: inside; padding-inline-start: 0; }
.align-center .is-layout-flex { justify-content: center; }

@media (max-width: 991px) {
	.align-center-on-laptop { text-align: center !important }
	.align-center-on-laptop > * { text-align: center !important }
    .align-center-on-laptop * { text-align: center; }
	.align-center-on-laptop ul { list-style-position: inside; padding-inline-start: 0; }
	.align-center-on-laptop .is-layout-flex { justify-content: center; }
}

@media (max-width: 781px) {
	.align-center-on-tablet { text-align: center !important }
	.align-center-on-tablet > * { text-align: center !important }
    .align-center-on-tablet * { text-align: center }
	.align-center-on-tablet ul { list-style-position: inside; padding-inline-start: 0; }
	.align-center-on-tablet .is-layout-flex { justify-content: center; }
	.align-center-on-tablet .gform_footer { justify-content: center; }
}

@media (max-width: 580px) {
	.align-center-on-mobile > * { text-align: center !important }
    .align-center-on-mobile * { text-align: center }
	.align-center-on-mobile ul { list-style-position: inside; padding-inline-start: 0; }
	.align-center-on-mobile .is-layout-flex { justify-content: center; }
	.align-center-on-mobile .gform_footer { justify-content: center; }
}

.z1, .zi-1     { z-index: 1; position: relative; }
.z5, .zi-5     { z-index: 5; position: relative; }
.z10, .zi-10   { z-index: 10; position: relative; }
.z100, .zi-100 { z-index: 100; position: relative; }

@media (max-width: 991px) {	.order-first-on-laptop { order: -1; } }
@media (max-width: 781px) {	.order-first-on-tablet { order: -1;	} }
@media (max-width: 580px) {	.order-first-on-mobile { order: -1; } }

.has-ken-burns img {
  animation: kburns 6s ease-out;
}

@keyframes kburns {
  from { transform: scale(1.15) }
}

.wp-block-cover.has-carousel .cover-carousel__slide.is-active,
.home-cover .wp-block-cover__image-background {
  animation: kburns 6s ease-out;
}

.linked-group:not(.is-selected) {
    position: relative;
    overflow: hidden;

    img {
        transform: scale(1.005);
        transition: transform .33s;
        will-change: transform;
    }

    &:hover img {
        transform: scale(1.05);
    }

    a::after {
        content: '';
        position: absolute;
        inset: -500px -500px;
        z-index: 1;
    }
}

.js-aos .aos-fade-up,
.js-aos .aos-fade-in,
.js-aos .aos-fade-left,
.js-aos .aos-fade-right,
.js-aos .aos-zoom-in,
.js-aos .aos-slide-up {
    --aos-delay: 0ms;
    opacity: 0;
    transition: opacity 0.6s ease var(--aos-delay), transform 0.6s ease var(--aos-delay);
    will-change: opacity, transform;
}

.js-aos .aos-fade-up    { transform: translateY(40px); }
.js-aos .aos-fade-left  { transform: translateX(-40px); }
.js-aos .aos-fade-right { transform: translateX(40px); }
.js-aos .aos-zoom-in    { transform: scale(0.9); }
.js-aos .aos-slide-up   { transform: translateY(80px); }

.js-aos .aos-animated {
    opacity: 1 !important;
    transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
    .js-aos .aos-fade-up,
    .js-aos .aos-fade-in,
    .js-aos .aos-fade-left,
    .js-aos .aos-fade-right,
    .js-aos .aos-zoom-in,
    .js-aos .aos-slide-up {
        opacity: 1;
        transform: none;
        transition: none;
    }
}
