/*# sourceMappingURL=base-video.css.map */

/* Accordion: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/accordion.md#accordion
--------------------------------------------------------------- */
:where(.content-block):not([data-accordionStyles-enabled="false"]) .accordion:not(.open) {
	display: none;
}

/* Accordion: Toggle  https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/accordion.md#data-toggle-accordion
--------------------------------------------------------------- */
:where(.content-block):not([data-accordionStyles-enabled="false"]) .accordion-trigger {
	cursor: pointer;
	border-bottom: 1px solid var(--color-neutral);
	padding-bottom: 2rem;
	margin-bottom: 2rem;
}

:where(.content-block):not([data-accordionStyles-enabled="false"]) .accordion-trigger > * {
	pointer-events: none;
}

:where(.content-block):not([data-accordionStyles-enabled="false"]) .accordion-trigger::after {
	content: "+";
}

:where(.content-block):not([data-accordionStyles-enabled="false"]) .accordion-trigger.open {
	color: var(--color-primary);
}

:where(.content-block):not([data-accordionStyles-enabled="false"]) .accordion-trigger.open::after {
	content: "-";
}

/*# sourceMappingURL=base-accordion.css.map */

/* Awards https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/parts/awards.md
--------------------------------------------------------------- */
:where(.content-block):not([data-awardsStyles-enabled="false"]) .awards {
	justify-self: stretch;
}

:where(.content-block):not([data-awardsStyles-enabled="false"]) .awards:where(:has(.awards-container:is(.container))) {
	margin-inline: calc(0px * -1);
	margin-inline: calc(var(--container-gutter, 0px) * -1);
}

/*# sourceMappingURL=base-awards.css.map */

/* Buttons: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/buttons.md
--------------------------------------------------------------- */

/* Button Skeletons. do not edit 
--------------------------------------------------------------- */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button {
	border: var(--button-border-width) solid;
	padding-inline: calc(var(--button-padding-x) - var(--button-border-width));
	padding-block: calc(( var(--button-height) - var(--button-border-width) * 2 - 1em * var(--button-lines) * var(--button-line-height) ) * var(--button-baseline-offset)) calc(( var(--button-height) - var(--button-border-width) * 2 - 1em * var(--button-lines) * var(--button-line-height) ) * ( 1 - var(--button-baseline-offset) ));
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	max-width: 100%;
	background: none;
	text-align: center;
	transition: all .125s ease-in-out;
	min-height: var(--button-height);
	border-radius: var(--button-border-radius);
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	vertical-align: middle;
	gap: .25em;
	background-clip: border-box;
	background-origin: border-box;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button, :where(.content-block):not([data-buttonStyles-enabled="false"]) .button:is(:hover, :focus) {
	text-decoration: none;
}

/* Button Customizations: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/buttons.md#css-vars 
--------------------------------------------------------------- */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button {
	--button-height: 4rem;
	--button-border-width: 2px;
	--button-border-radius: 10px;
	--button-padding-x: 1.5em;
	--button-lines: 1;
	--button-baseline-offset: .5;
	--button-line-height: 1.125;
	font-size: 1rem;
	line-height: 1.125;
	line-height: var(--button-line-height);
	font-family: var(--font-accent);
	color: var(--color-primary);
	letter-spacing: .1em;
	text-transform: uppercase;
	font-style: normal;
	font-weight: 700;
	text-decoration: none;
	min-width: 12ch;
}

/* Buttons Sizing Helpers: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/button.md#button-size-name
--------------------------------------------------------------- */

/* button w/ a height even more smaller than the default height */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-size-micro {
	font-size: .75rem;
	--button-height: 2em;
}

/* button w/ a height smaller than the default height */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-size-small {
	font-size: .875rem;
	--button-height: 3em;
}

/* button w/ a height slightly larger than the default height but it's not that big */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-size-medium {
	--button-height: 4.5em;
}

/* button w/ a height larger than the default height */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-size-large {
	--button-height: 5em;
}

/* button w/ a height that's even larger for no reason than the larger height */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-size-larger {
	font-size: 1.25rem;
	--button-height: 5.5em;
}

/* constricts the width equal to whatever size height is set*/
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-size-equal {
	--button-padding-x: 0;
	min-width: 0;
	width: var(--button-height);
	text-overflow: ellipsis;
	overflow: hidden;
}

/* Buttons Color Palette Helpers: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/button.md#button-palette-name
--------------------------------------------------------------- */

/* 
* Default - most frequent button palette in the comps
* Invert - reuses default's colors but palettes for hover vs not hover are reversed
* Outline - text w/ border influencing text color
* Minimal - no colors except for the text
Adjust as needed.
*/
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-default, :where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-reverse:is(:hover, :focus) {
	background-image: linear-gradient(to top, var(--color-primary-gradient-start) 0%, var(--color-primary-gradient-end) 100%);
	background-color: var(--color-primary);
	color: var(--color-light);
	border-color: transparent;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-default:is(:hover, :focus), :where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-outline:is(:hover, :focus), :where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-reverse {
	background-image: linear-gradient(to top, var(--color-secondary-gradient-start) 0%, var(--color-secondary-gradient-end) 100%);
	background-color: var(--color-secondary);
	color: var(--color-light);
	border-color: transparent;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-minimal {
	background-color: transparent;
	background-image: none;
	color: inherit;
	border-color: transparent;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-minimal.nitro-lazy {
	background-image: none !important;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-minimal:is(:hover, :focus) {
	background-color: transparent;
	background-image: none;
	color: var(--scheme-sp, var(--color-primary));
	border-color: transparent;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-minimal:is(:hover.nitro-lazy, :focus).nitro-lazy {
	background-image: none !important;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-outline {
	background-color: transparent;
	background-image: none;
	color: inherit;
	border-color: currentColor;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-palette-outline.nitro-lazy {
	background-image: none !important;
}

/*
primary palette. adjust or omit as needed
* Tip: if both a flat and gradient version of the palette exists in the design, adding the class .button-style-flat to this .button-palette-* class will disable the gradient
*/

/*
secondary palette. adjust or omit as needed
* Tip: if both a flat and gradient version of the palette exists in the design, adding the class .button-style-flat to this .button-palette-* class will disable the gradient
*/

/*
accent palette. adjust or omit as needed
* Tip: if both a flat and gradient version of the palette exists in the design, adding the class .button-style-flat to this .button-palette-* class will disable the gradient
*/

/* Other Buttons Variations Helpers: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/button.md#button-style-name
--------------------------------------------------------------- */

/* buttons with extra decorations or whichever is the most specially styled. overhaul or add more button styles as needed */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-special {
	position: relative;
	z-index: 1;
	transform-style: preserve-3d;
	--button-border-offset: .5em;
	border-color: rgba(255, 255, 255, .2);
	box-shadow: 0 0 0 var(--button-border-width) var(--color-accent);
	border-width: .5em;
	border-width: var(--button-border-offset);
	background-clip: padding-box;
	padding-block: calc(( var(--button-height) - .5em * 2 - var(--button-border-width) * 2 - 1em * var(--button-lines) * var(--button-line-height) ) * var(--button-baseline-offset)) calc(( var(--button-height) - .5em * 2 - var(--button-border-width) * 2 - 1em * var(--button-lines) * var(--button-line-height) ) * ( 1 - var(--button-baseline-offset) ));
	padding-block: calc(( var(--button-height) - var(--button-border-offset) * 2 - var(--button-border-width) * 2 - 1em * var(--button-lines) * var(--button-line-height) ) * var(--button-baseline-offset)) calc(( var(--button-height) - var(--button-border-offset) * 2 - var(--button-border-width) * 2 - 1em * var(--button-lines) * var(--button-line-height) ) * ( 1 - var(--button-baseline-offset) ));
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-special::before {
	content: "";
	transition: box-shadow .125s ease-in-out;
	display: inline-block;
	align-self: center;
	margin-right: 1.5em;
	margin-left: .375em;
	margin-bottom: .375em;
	width: 1.5rem;
	height: var(--button-border-width);
	background: currentColor;
	box-shadow: 0em -.375em 0 0, -.375em 0 0 0, .375em 0 0 0, 0em .375em 0 0;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-special:is(:hover, :focus) {
	box-shadow: 0 0 0 var(--button-border-width) var(--color-primary);
	border-color: rgba(255, 255, 255, .5);
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-special:is(:hover, :focus)::before {
	box-shadow: .375em -.375em 0 0, -.75em 0 0 0, -.75em 0 0 0, .375em .375em 0 0;
}

/* link style button. Usually the maps link or read more text for blog posts */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-link {
	--button-border-width: 2px;
	border-radius: 0;
	padding: 0 0 .5em;
	border-width: 0 0 2px;
	border-width: 0 0 var(--button-border-width);
	min-height: 0;
	min-height: 0;
	background: none;
	box-shadow: none;
	min-width: 0;
	color: inherit;
	letter-spacing: 0em;
	text-transform: none;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-link:is(:hover, :focus) {
	background: none;
	border-color: var(--color-primary);
}

/* undo background gradients in favor for the flat background color for button-palette. will only work if backgrounds are setup with proper fallbacks (background-gradient with a background-color fallback) */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-flat, :where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-flat:is(:hover, :focus) {
	background-image: none;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-flat.nitro-lazy, :where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-flat:is(:hover.nitro-lazy, :focus).nitro-lazy {
	background-image: none !important;
}

/* remove radius */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-no-radius {
	--button-border-radius: 0;
}

/* no corners for the button. only soft bbies */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-round {
	--button-border-radius: calc(var(--button-height) * .5);
}

/* very corners for the button. only pointy bbies */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-sharp {
	--button-border-radius: 0em;
}

/* button styles that have thicker borders than usual */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-thick-border {
	--button-border-width: 4px;
}

/* button styles that have thicker borders than usual */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-thin-border {
	--button-border-width: 1px;
}

/* button styles that have thicker borders than usual */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-no-border {
	--button-border-width: 0px;
}

/* diamond buttons. best if paired with .button-size-equal */
@supports (clip-path: polygon(0 0, 0 0, 0 0, 0 0)) {
	:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-diamond {
		overflow: hidden;
		clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
	}
}

/* if the slider buttons have unique overrides */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button.button-style-slider.button-palette-minimal {
	--button-height: 2.5em;
	--button-padding-x: .4em;
}

/* Misc Button stuff. Add as needed
--------------------------------------------------------------- */

/* little arrow indicator for slider arrows: .button.button-size-equal.button-palette-default > i.button-slider-glyph */
:where(.content-block):not([data-buttonStyles-enabled="false"]) .button-slider-glyph:empty::after {
	display: inline-block;
	order: 9;
	align-self: center;
	transform-origin: center center;
	content: "";
	width: 1em;
	height: 1em;
	border: 2px solid currentColor;
	border-left: 0;
	border-bottom: 0;
	transform: rotate(45deg);
	flex: 0 0 auto;
	margin-left: -.375em;
}

:where(.content-block):not([data-buttonStyles-enabled="false"]) :is(.prev, [rel=prev], .slick-prev, .swpier-button-prev) .button-slider-glyph {
	transform: scaleX(-1);
}

/*# sourceMappingURL=base-button.css.map */

/* Carousels https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/repeater/carousel.md
--------------------------------------------------------------- */

/* Carousel Item skeletons. Do not Edit.
--------------------------------------------------------------- */
:where(.content-block):not([data-carouselStyles-enabled="false"]) .carousel-item {
	text-align: center;
}

:where(.content-block):not([data-carouselStyles-enabled="false"]) .carousel-item-image {
	height: var(--carousel-height);
}

:where(.content-block):not([data-carouselStyles-enabled="false"]) .carousel-item-image > :where(*) {
	pointer-events: none;
}

:where(.content-block):not([data-carouselStyles-enabled="false"]) .carousel-item-image, :where(.content-block):not([data-carouselStyles-enabled="false"]) .carousel-item-image picture {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

:where(.content-block):not([data-carouselStyles-enabled="false"]) .carousel-item-image :where(svg, object, img) {
	height: auto !important;
}

:where(.content-block):not([data-carouselStyles-enabled="false"]) .carousel-item-image :where(img, svg, object, picture) {
	width: auto !important;
	max-width: 100% !important;
	max-height: 100% !important;
	align-self: center;
	flex: 0 0 auto;
}

/* Carousel Item Customizations
--------------------------------------------------------------- */
:where(.content-block):not([data-carouselStyles-enabled="false"]) :where(.swiper, .slick) {
	/* height of award. best to set to the tallest award logo provided  */
	--carousel-height: 120px;
}

/*# sourceMappingURL=base-carousel.css.map */

/* Columns: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/columns.md
--------------------------------------------------------------- */

/* Column Skeletons. do not edit 
Vars: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/columns.md#css-vars
--------------------------------------------------------------- */
:where(.content-block):not([data-columnsStyles-enabled="false"]) .columns {
	--columns-gap-x: 0px;
	--columns-gap-y: 0rem;
	--columns-number: 1;
	width: 100%;
}

:where(.content-block):not([data-columnsStyles-enabled="false"]) .columns, :where(.content-block):not([data-columnsStyles-enabled="false"]) .columns > :where(*) {
	min-width: 0;
	max-width: 100%;
	width: 100%;
}

:where(.content-block):not([data-columnsStyles-enabled="false"]) .columns:where(.columns-flex) {
	display: flex;
	flex-wrap: wrap;
	row-gap: var(--columns-gap-y);
	-moz-column-gap: var(--columns-gap-x);
	column-gap: var(--columns-gap-x);
}

:where(.content-block):not([data-columnsStyles-enabled="false"]) .columns:where(.columns-flex) > :where(*) {
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: calc(100% / var(--columns-number) - var(--columns-gap-x) * ( var(--columns-number) - 1 ) / var(--columns-number));
}

:where(.content-block):not([data-columnsStyles-enabled="false"]) .columns:where(.columns-grid) {
	display: grid;
	grid-row-gap: var(--columns-gap-y);
	row-gap: var(--columns-gap-y);
	grid-column-gap: var(--columns-gap-x);
	-moz-column-gap: var(--columns-gap-x);
	column-gap: var(--columns-gap-x);
	grid-template-columns: repeat(var(--columns-number), calc(100% / var(--columns-number) - var(--columns-gap-x) * ( var(--columns-number) - 1 ) / var(--columns-number)));
}

:where(.content-block):not([data-columnsStyles-enabled="false"]) .columns.columns-masonry {
	-moz-column-count: var(--columns-number);
	column-count: var(--columns-number);
	-webkit-column-count: var(--columns-number);
	-moz-column-gap: var(--columns-gap-x);
	column-gap: var(--columns-gap-x);
	-webkit-column-gap: var(--columns-gap-x);
}

:where(.content-block):not([data-columnsStyles-enabled="false"]) .columns.columns-masonry > :where(*) {
	page-break-inside: avoid;
	-moz-column-break-inside: avoid;
	break-inside: avoid;
}

:where(.content-block):not([data-columnsStyles-enabled="false"]) .columns.columns-masonry > :where(*):nth-child(n+2) {
	margin-top: var(--columns-gap-y);
}

/*# sourceMappingURL=base-columns.css.map */

/* Container: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/container.md
--------------------------------------------------------------- */

/* Container Skeletons. do not edit 
--------------------------------------------------------------- */
:where(.content-block):not([data-containerStyles-enabled="false"]) .container {
	/* do not attempt to override or your container may misalign. containers are meant to always be centered after all */
	
	/* Tip: if something in the design is off center, consult with designer or use additional padding or margin as needed for the contents instead */
	padding-inline: min(var(--container-fallback), var(--container-gutter)) !important;
	margin-inline: auto !important;
	max-width: 100%;
	width: calc(100% - max(var(--container-gutter) - min(var(--container-fallback), var(--container-gutter)), 0rem) * 2);
	min-width: 0;
	flex: 0 0 auto;
	grid-column: 1/-1;
	container: container/inline-size;
}

/* Fallback Scaffolding. Usually no need to edit: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/container.md#css-vars 
--------------------------------------------------------------- */
:where(.content-block):not([data-containerStyles-enabled="false"]) .container {
	--container-fallback: 20px;
	--container-size-reference: var(--comp);
	--container-gutter: var(--container-fallback);
}

@media only screen and (min-width: 1400px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container {
		--container-fallback: 60px;
	}
}

/* on some cases container query support is a conflict of interest and makes positioned/flex/grid children act weird. use this helper if you dont need container queries */
:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-style-normal {
	/* container query support */
	container-type: normal;
}

/* Custom Container Size Variations: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/container.md#container-size-name
--------------------------------------------------------------- */

/* repeating/ internal page container sizing. sometimes designers will use the same gutter width for internals and or gridded template. this can be used so you dont have to copy paste identical styles to different selectos like 10 times */
:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-size-default {
	--container-gutter: 30px;
}

@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-size-default {
		--container-gutter: 60px;
	}
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-size-default {
		--container-gutter: 90px;
	}
}

@media only screen and (min-width: 1400px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-size-default {
		--container-gutter: 120px;
	}
}

@media only screen and (min-width: 1900px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-size-default {
		--container-gutter: 150px;
	}
}

/* Reduces horizontal padding */
@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-size-wide {
		--container-gutter: 15px;
	}
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-size-wide {
		--container-gutter: 30px;
	}
}

/* Reduces horizontal padding for xs only */
@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-size-wide-xs {
		--container-fallback: 15px;
		--container-gutter: var(--container-fallback);
	}
}

/* Reduces horizontal padding for sm only */
@media only screen and (min-width: 768px) and (max-width: 1199px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-size-wide-sm {
		--container-fallback: 30px;
		--container-gutter: var(--container-fallback);
	}
}

/* Other Container Variations: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/container.md#container-style-name
--------------------------------------------------------------- */

/* sometimes when you dont need the fallback gutter for the container but also need to constrict the layout, here's ya boi. Note: Make sure you add appropriate padding for the innards of this container */
:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-style-no-padding {
	--container-fallback: 0px;
}

/* constrict container to how wide it is in the deisgn comps. makes sure it never goes beyond the comp or set gutter or fallback global padding + adding important disables third party scripts from overriding our styles */
@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-style-maxed {
		max-width: calc(var(--container-size-reference) - max(var(--container-gutter) - min(var(--container-fallback), var(--container-gutter)), 0rem) * 2) !important;
	}
}

/* constrict container to how wide it is in the deisgn comps for mobile/xs and smaller only */
@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-style-maxed-xs {
		max-width: calc(var(--container-size-reference) - max(var(--container-gutter) - min(var(--container-fallback), var(--container-gutter)), 0rem) * 2) !important;
	}
}

/* constrict container to how wide it is in the deisgn comps for hd/xl and beyond only */
@media only screen and (min-width: 1900px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-style-maxed-xl {
		max-width: calc(var(--container-size-reference) - max(var(--container-gutter) - min(var(--container-fallback), var(--container-gutter)), 0rem) * 2) !important;
	}
}

/* constrict container to how wide it is in the deisgn comps for touch devices/xs to sm-max only */
@media only screen and (max-width: 1199px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-style-maxed-touch {
		max-width: calc(var(--container-size-reference) - max(var(--container-gutter) - min(var(--container-fallback), var(--container-gutter)), 0rem) * 2) !important;
	}
}

/* constrict container to how wide it is in the deisgn comps for touch devices/xs to sm-max only */
@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-containerStyles-enabled="false"]) .container.container-style-maxed-nontouch {
		max-width: calc(var(--container-size-reference) - max(var(--container-gutter) - min(var(--container-fallback), var(--container-gutter)), 0rem) * 2) !important;
	}
}

/*# sourceMappingURL=base-container.css.map */

/* Helpers: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/components/helper.md

Note: Styles already prebuilt in this section must not be omitted
--------------------------------------------------------------- */

/* Clearfix stuff
--------------------------------------------------------------- */
:where(.content-block):not([data-helpersStyles-enabled="false"]) .clearfix::after {
	content: "";
	font-size: 0;
	visibility: hidden;
	height: 0;
	clear: both;
	display: table;
	width: 100%;
	flex: 0 0 auto;
}

/* hide element while being ADA and SEO friendly
--------------------------------------------------------------- */
:where(.content-block):not([data-helpersStyles-enabled="false"]) .sr-only {
	border: 0 !important;
	clip: rect(0, 0, 0, 0) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 1px !important;
	word-wrap: normal !important;
}

/* emulate background cover on image tags
--------------------------------------------------------------- */
:where(.content-block):not([data-helpersStyles-enabled="false"]) .cover {}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .cover {
	position: relative;
	border-radius: inherit;
	overflow: hidden;
	overflow: clip;
	display: block;
	max-width: 100%;
	width: 100%;
	background-color: var(--color-light-alt);
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .cover.cover-constricted {}

@supports not (aspect-ratio: var(--cover-aspect-w, 4)/var(--cover-aspect-l, 3)) {
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .cover.cover-constricted::before {
		content: "";
		display: block;
		padding-bottom: calc(100% * var(--cover-aspect-l, 3) / var(--cover-aspect-w, 4));
	}
}

@supports (aspect-ratio: var(--cover-aspect-w, 4)/var(--cover-aspect-l, 3)) {
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .cover.cover-constricted {
		aspect-ratio: var(--cover-aspect-w, 4)/var(--cover-aspect-l, 3);
	}
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .cover > :where(*), :where(.content-block):not([data-helpersStyles-enabled="false"]) .cover-child {
	/* element to emulate background-size cover. Add important in case wistia is somehow in this descendancy */
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 100% !important;
	-o-object-fit: cover !important;
	object-fit: cover !important;
	display: block;
}

/* wrap svgs in this helper to control sizing like font glyphs. Sets an svg to align to the bottom left. Set a font size to it to align heights. ie Case Results Icon, Selling Points, Testimonial stars, Social Media, iLawyer Logo, etc.
--------------------------------------------------------------- */
:where(.content-block):not([data-helpersStyles-enabled="false"]) .content-icon {
	height: 1em;
	display: inline-flex;
	flex-direction: column;
	justify-content: flex-end;
	flex: 0 0 auto;
	width: -moz-max-content;
	width: max-content;
	max-width: 100%;
	text-overflow: ellipsis;
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .content-icon :where(img, picture, svg, object) {
	max-height: 100%;
	width: auto;
	height: 100%;
	flex: 1 1;
	-o-object-fit: contain;
	object-fit: contain;
}

/* clamp blocks of texts to up to a certain height only. NOTE: for this to work there should be no custom line height on the text or any of its bllock children. if any, they should be passed to --line-height
--------------------------------------------------------------- */
:where(.content-block):not([data-helpersStyles-enabled="false"]) .clamp-text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: clip;
	overflow: hidden;
	-webkit-line-clamp: 3;
	-webkit-line-clamp: var(--clamp-text-cap, 3);
}

/* nikky's script to fade text to the right for scrolling
--------------------------------------------------------------- */
:where(.content-block):not([data-helpersStyles-enabled="false"]) .fade-text {
	-webkit-mask-image: linear-gradient(to left, transparent 0em, black 2em, black 100%);
	-webkit-mask-image: linear-gradient(to left, transparent 0em, black var(--fade-text-offset, 2em), black 100%);
	mask-image: linear-gradient(to left, transparent 0em, black 2em, black 100%);
	mask-image: linear-gradient(to left, transparent 0em, black var(--fade-text-offset, 2em), black 100%);
	overflow-x: scroll;
	scrollbar-width: none;
	white-space: nowrap;
	width: 100%;
	padding-right: 2em;
	padding-right: var(--fade-text-offset, 2em);
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .fade-text::-webkit-scrollbar {
	display: none;
}

/* like content-icon except friendlier styles for logos to support styleable svg logos while allowing for an img tag for SEO to exist in the same block
--------------------------------------------------------------- */
:where(.content-block):not([data-helpersStyles-enabled="false"]) .logo {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	align-self: stretch;
	justify-content: center;
	max-width: -moz-max-content;
	max-width: max-content;
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .logo-wrapper {
	position: relative;
	overflow: hidden;
	height: 100%;
	width: auto;
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .logo-wrapper :where(img, picture, svg, object) {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: 100%;
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .logo-wrapper :where(svg, object):not(:only-child) {
	pointer-events: none;
	position: absolute;
	margin: auto;
	margin: auto;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .logo-wrapper :is(svg, object) ~ :where(img, picture:not(.inline-svg)) {
	opacity: 0;
}

/* Responsive Global Helpers. Integrated to PHP template parts. Proceed with caution when modifying.
* Note: if the element relies on being set as another display type that's not block (flex, inline-block, inline-flex, etc. ) on  breakpoint/s it is suppose to show, using the *-hide helpers is recommended (eg: instead of xs-only, use sm-hide md-hide lg-hide xl-hide)

* Info to what everything means:
-----------------------------------------------
Tag 	Device		min				max	  
-----------------------------------------------
xs: 	mobile		0				767px
sm: 	tablet		768px	1199px
md: 	laptop		1200px	1399px
lg: 	desktop		1400px	1899px
xl: 	hd			1900px	999999999999+
--------------------------------------------------------------- */
:where(.content-block):not([data-helpersStyles-enabled="false"]) .xl-only, :where(.content-block):not([data-helpersStyles-enabled="false"]) .lg-only, :where(.content-block):not([data-helpersStyles-enabled="false"]) .md-only, :where(.content-block):not([data-helpersStyles-enabled="false"]) .sm-only, :where(.content-block):not([data-helpersStyles-enabled="false"]) .xs-only, :where(.content-block):not([data-helpersStyles-enabled="false"]) .home-only, :where(.content-block):not([data-helpersStyles-enabled="false"]) .internal-only, :where(.content-block):not([data-helpersStyles-enabled="false"]) .print-only {
	display: none !important;
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .onep21-template-home .home-only {
	display: block !important;
}

:where(.content-block):not([data-helpersStyles-enabled="false"]) .onep21-template-home .home-hide {
	display: none !important;
}

body:not(.onep21-template-home) .internal-only {
	display: block !important;
}

body:not(.onep21-template-home) .internal-hide {
	display: none !important;
}

@media only print {
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .print-only {
		display: block !important;
	}
	
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .print-hide {
		display: none !important;
	}
}

@media only screen and (min-width: 1900px) {
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .xl-only {
		display: block !important;
	}
	
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .xl-hide {
		display: none !important;
	}
}

@media only screen and (min-width: 1400px) and (max-width: 1899px) {
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .lg-only {
		display: block !important;
	}
	
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .lg-hide {
		display: none !important;
	}
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .md-only {
		display: block !important;
	}
	
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .md-hide {
		display: none !important;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .sm-only {
		display: block !important;
	}
	
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .sm-hide {
		display: none !important;
	}
}

@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .xs-only {
		display: block !important;
	}
	
	:where(.content-block):not([data-helpersStyles-enabled="false"]) .xs-hide {
		display: none !important;
	}
}

/* Add more helpers as needed */

/*# sourceMappingURL=base-helpers.css.map */

/* Layout Banner https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/layout/banner.md
--------------------------------------------------------------- */

/* Layout Banner Variables
--------------------------------------------------------------- */

/* In case banner is also as crazy as the header */

/* Tip: placing the css var on :root can allow elements outside of the layout header utilize the variable if needed ie sticky stuff, offsets, jump link scroll etc. */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) {
	--layout-banner-offset: 100px;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image {}

/* Layout Banner Overlaps
	NOTE: Classes to use:
		.layout-banner-offset-element => the element within the layout that will have the negative margins to overlap itself
		.has-layout-banner-offset => the adjacent layouts/ child of adjacent layouts that will have the pseudo element to adjust itself if the `layout-banner-offset-element` is next to it
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-can-overlap:has(.has-layout-banner-offset) :is(.layout-banner .layout-banner-offset-element)::after {
	content: "";
	flex: 0 0 auto;
	grid-column: 1/-1;
	height: 100px;
	height: var(--layout-banner-offset, 0px);
	margin-bottom: min(var(--profile-section-1-offset) - var(--overlap-buffer), 0px);
	display: block;
	width: 100%;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-can-overlap .has-layout-banner-offset:not(:has(.has-layout-banner-offset)):is(:is(.layout-banner + *), :is(.main, main, .aside, aside):first-child, .layout-banner + :is(.main, main) > :first-child, .layout-banner + :is(.main, main) > :first-child *) {
	isolation: isolate;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-can-overlap:has(.has-layout-banner-offset) .layout-banner-offset-element:is(.layout-banner > :last-child, .layout-banner > :last-child *) {
	margin-bottom: calc(( 100px + var(--overlap-buffer) ) * -1);
	margin-bottom: calc(( var(--layout-banner-offset, 0px) + var(--overlap-buffer) ) * -1);
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-can-overlap:has(.has-layout-banner-offset) .layout-banner:has(.layout-banner-offset-element) {
	padding-bottom: var(--overlap-buffer);
}

/* Layout Banner Itself
--------------------------------------------------------------- */
@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .layout-banner {}
	
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .layout-banner-container {
		--container-gutter: 10px;
	}
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .layout-banner {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image .layout-banner {}

/* Banner Background
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-background {
	--responsive-background-overlay-mix-blend: multiply;
	--responsive-background-overlay-background: rgba(0, 0, 0, .5);
	--responsive-background-overlay-opacity: .75;
	--responsive-background-bg-position: center top;
}

@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-background {
		--responsive-background-overlay-background: linear-gradient(to bottom, rgba(0, 0, 0, .8) 0, transparent calc(var(--layout-header-height, 0) * 1.5)), linear-gradient(45deg, var(--color-dark) calc(50vw - min(480px, 25%)), transparent calc(50vw + min(480px, 25%)));
	}
}

/* Banner Main
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-main {
	padding-block: 2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-main-blocks {
	display: grid;
	grid-template-columns: 100%;
	justify-items: center;
	justify-content: center;
	align-items: center;
	grid-gap: 3rem;
	gap: 3rem;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-main-block, :where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-main-blocks {
	min-width: 0;
	max-width: 100%;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-main-block:only-child {
	flex: 1 1;
	grid-column: 1/-1;
	grid-row: 1/-1;
	justify-self: stretch;
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-main {
		padding-block: 5rem 4rem;
	}
	
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-main-blocks {
		grid-template-columns: 1fr auto;
	}
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .banner-main {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .banner-main {
	padding-block: 1.5rem;
	background-color: var(--scheme-bg, var(--color-dark-alt));
	color: var(--scheme-fg, var(--color-light));
	min-height: 180px;
}

@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .banner-main {
		min-height: 360px;
	}
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .banner-main {
		padding-block: 5rem;
		min-height: 600px;
	}
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image.header-can-overlap .banner-main {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image .banner-main {}

/* Banner Body
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-body, :where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-body-blocks {
	display: grid;
	grid-template-columns: 100%;
	align-items: inherit;
	justify-content: inherit;
	justify-items: inherit;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-body-block, :where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-body-blocks {
	min-width: 0;
	max-width: 100%;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-body-blocks {
	gap: 2.125rem;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .banner-body {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image .banner-body {}

/* Global Banner Text
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .banner-text {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image .banner-text {}

/* Global Secondary Heading
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading {
	font-size: 1rem;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading em {}

@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading > span {
		display: inline-block;
	}
	
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading > span:nth-child(n+2)::before {
		content: "●︎";
		margin-inline: .5em;
	}
}

@media only screen and (max-width: 1199px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading > span {
		display: inline-block;
	}
}

@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading > span {
		display: block;
	}
	
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading > span::before {
		content: "●︎";
		margin-inline: 0 .5em;
	}
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .secondary-heading {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image .secondary-heading {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading.secondary-heading-default {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading.secondary-heading-blog {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading.secondary-heading-blog-posts {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .secondary-heading.secondary-heading-blog-post {}

/* Global Primary Heading
--------------------------------------------------------------- */

/* Note: default styles are set to custom internal templates w/ no banner background images  (Case Results, Testimonials, etc.) to reduce repetitive styles and or lengthy selectors */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading {
	/* Global Styles / custom page template heading styles (Testimonials Grid, Attorney Grid, etc.) */
	font-size: 3rem;
	line-height: calc(1em + 5px);
	text-wrap: balance;
	margin-bottom: 0;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading em {
	/* emphasized words */
	color: var(--scheme-sp, var(--color-accent));
	font-style: normal;
}

@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading {
		font-size: 4rem;
	}
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading {
		font-size: 5rem;
	}
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading.primary-heading-default {
	/* Styles specific for default template primary heading (Single Post, Single Page, Possibly Blog/ Archive etc.) */
	font-size: 2rem;
}

@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading.primary-heading-default {
		font-size: 3rem;
	}
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading.primary-heading-default {
		font-size: 4rem;
	}
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading.primary-heading-default-h1 {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading.primary-heading-blog {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading.primary-heading-blog-posts {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading.primary-heading-blog-post {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .layout-banner .primary-heading {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading.h1-fallback-heading {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .primary-heading.h1-fallback-heading:where(.section-heading) {
	text-align: center;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .layout-banner .primary-heading {
	color: inherit;
	text-shadow: 0 2px .125em var(--scheme-bg, var(--color-dark));
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .primary-heading {
	/* Styles specific for when banner has background image */
	color: inherit;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image .primary-heading {}

/* Banner Awards (Optional depending on comps)
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-awards {
	grid-column: 1/-1;
	flex: 0 0 auto;
	order: 99;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .banner-awards {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image .banner-awards {}

/* Banner video (Optional depending on comps)
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-video .video-thumbnail {
	width: 300px;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-video-cta.video-button:not(.video-button-default-has-text) {
	display: block;
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-video {
		order: 99;
	}
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .banner-video {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image .banner-video {}

/* Banner Content (Optional depending on comps)
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-content {
	text-wrap: balance;
	max-width: 90ch;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-background-image .banner-content {}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-no-background-image .banner-content {}

/* Banner Buttons
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-buttons {
	display: inline-flex;
	gap: 1rem;
	align-items: inherit;
	text-align: inherit;
	justify-content: inherit;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-buttons-touch {
	margin-top: 3.25rem;
	margin-bottom: 4rem;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-buttons-touch:first-child {
	margin-top: -1rem;
}

@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-button-shift .banner-buttons-touch, :where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-has-h1.banner-button-shift .banner-buttons-touch + hr {
		/* hide buttons outside of banner */
		display: none;
	}
}

@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-buttons, :where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-buttons-touch {
		flex-direction: column;
	}
	
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-buttons-touch {
		width: 100%;
		align-items: stretch;
	}
	
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .h1-fallback-heading:has(+ .banner-buttons-touch) {
		margin-bottom: 0;
	}
	
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-button-shift :is(.layout-banner .banner-buttons, .banner-buttons-nontouch) {
		/* hide buttons inside of banner */
		display: none;
	}
}

/* Banner Form
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .field-form {
	margin-left: auto;
	margin-right: auto;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .gform_title:last-child {
	margin-bottom: 0;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .gform_description {
	max-width: 80ch;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .gform_body {
	margin-left: auto;
	margin-right: auto;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .gform_footer {
	justify-content: center;
	text-align: center;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .gfield.gfield--type-submit {
	/* dont stretch flex button */
	align-self: flex-start;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .field-form-body {
	position: relative;
	padding-bottom: 2rem;
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form.required-message {
	position: absolute;
	left: 0;
	right: 0;
	text-align: center;
	top: 100%;
}

@media only screen and (max-width: 1199px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .gform_fields .gfield:not(.gfield-width-full) {
		/* fix gravity forms from deciding to undo the grid columns on mobile instead of tablet now */
		grid-column: 1/-1;
	}
}

@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .field-form-body {
		position: relative;
		padding-bottom: 2rem;
	}
	
	:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) #banner-form .gfield.required-message {
		position: absolute;
		left: 0;
		right: 0;
		text-align: center;
		top: 100%;
	}
}

/* Banner Firm info
--------------------------------------------------------------- */
:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-firm-info {
	padding-block: 2rem;
	background: var(--color-light-alt);
}

:where(.content-block):not([data-layoutBannerStyles-enabled="false"]) .banner-firm-info-header {
	text-align: center;
}

/*# sourceMappingURL=base-layout-banner.css.map */
:where(.content-block):not([data-lityStyles-enabled="false"]) .lity {
	z-index: 9990;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	white-space: nowrap;
	background: #0b0b0b;
	background: rgba(0, 0, 0, .9);
	outline: none !important;
	opacity: 0;
	transition: opacity .3s ease;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity.lity-opened {
	opacity: 1;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity.lity-closed {
	opacity: 0;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity * {
	box-sizing: border-box;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-wrap {
	z-index: 9990;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	text-align: center;
	outline: none !important;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-wrap:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
	margin-right: -.25em;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-loader {
	z-index: 9991;
	color: #fff;
	position: absolute;
	top: 50%;
	margin-top: -.8em;
	width: 100%;
	text-align: center;
	font-size: 14px;
	font-family: Arial, Helvetica, sans-serif;
	opacity: 0;
	transition: opacity .3s ease;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-loading .lity-loader {
	opacity: 1;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-container {
	z-index: 9992;
	position: relative;
	text-align: left;
	vertical-align: middle;
	display: inline-block;
	white-space: normal;
	max-width: 100%;
	max-height: 100%;
	outline: none !important;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-content {
	z-index: 9993;
	width: 100%;
	transform: scale(1);
	transition: transform .3s ease;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-loading .lity-content, :where(.content-block):not([data-lityStyles-enabled="false"]) .lity-closed .lity-content {
	transform: scale(.8);
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-content:after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	display: block;
	right: 0;
	width: auto;
	height: auto;
	z-index: -1;
	box-shadow: 0 0 8px rgba(0, 0, 0, .6);
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-close {
	z-index: 9994;
	width: 35px;
	height: 35px;
	position: fixed;
	right: 0;
	top: 0;
	-webkit-appearance: none;
	cursor: pointer;
	text-decoration: none;
	text-align: center;
	padding: 0;
	color: #fff;
	font-style: normal;
	font-size: 35px;
	font-family: Arial, Baskerville, monospace;
	line-height: 35px;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
	border: 0;
	background: none;
	outline: none;
	box-shadow: none;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-close::-moz-focus-inner {
	border: 0;
	padding: 0;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-close:hover, :where(.content-block):not([data-lityStyles-enabled="false"]) .lity-close:focus, :where(.content-block):not([data-lityStyles-enabled="false"]) .lity-close:active, :where(.content-block):not([data-lityStyles-enabled="false"]) .lity-close:visited {
	text-decoration: none;
	text-align: center;
	padding: 0;
	color: #fff;
	font-style: normal;
	font-size: 35px;
	font-family: Arial, Baskerville, monospace;
	line-height: 35px;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
	border: 0;
	background: none;
	outline: none;
	box-shadow: none;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-close:active {
	top: 1px;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-image img {
	max-width: 100%;
	display: block;
	line-height: 0;
	border: 0;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-iframe .lity-container, :where(.content-block):not([data-lityStyles-enabled="false"]) .lity-youtube .lity-container, :where(.content-block):not([data-lityStyles-enabled="false"]) .lity-vimeo .lity-container, :where(.content-block):not([data-lityStyles-enabled="false"]) .lity-facebookvideo .lity-container, :where(.content-block):not([data-lityStyles-enabled="false"]) .lity-googlemaps .lity-container {
	width: 100%;
	max-width: 964px;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-iframe-container {
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	overflow: auto;
	pointer-events: auto;
	transform: translateZ(0);
	-webkit-overflow-scrolling: touch;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-iframe-container iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 0 8px rgba(0, 0, 0, .6);
	background: #000;
}

:where(.content-block):not([data-lityStyles-enabled="false"]) .lity-hide {
	display: none;
}

/*# sourceMappingURL=base-lity.css.map */

/* Profile https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/repeater/profile.md
-------------------------------------------------------------------------------- */

/* Profile Image Skeletons. No need to edit 
--------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image {
	--cover-aspect-w: var(--profile-image-aspect-w);
	--cover-aspect-l: var(--profile-image-aspect-l);
	flex: 0 0 auto;
	position: relative;
	background-color: var(--color-light-alt);
	display: block;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image::before {
	/* hover overlay */
	content: "";
	display: block;
	position: absolute;
	inset: 0;
	background: var(--profile-image-overlay-background);
	z-index: 1;
	opacity: 0;
	pointer-events: none;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image-placeholder {
	display: flex;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image-placeholder img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) :is(.profile-image-img, .profile-image-placeholder, .profile-image-placeholder-img) {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) :is(.profile-image-img, .profile-image-placeholder-img) {
	max-width: none;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: var(--profile-image-position);
	object-position: var(--profile-image-position);
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href]::before, :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href] .profile-view {
	pointer-events: none;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href]::before {
	opacity: var(--profile-image-overlay-opacity);
	mix-blend-mode: var(--profile-image-overlay-mix-blend);
	-webkit-backdrop-filter: var(--profile-image-overlay-backdrop-filter);
	backdrop-filter: var(--profile-image-overlay-backdrop-filter);
	pointer-events: auto;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href] .profile-view {
	opacity: 0;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href]:is(:hover, :focus-within)::before, :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href]:is(:hover, :focus-within) .profile-view, :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-pointer-reference:is(:hover, :focus, :focus-within) .profile-image[href]::before, :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-pointer-reference:is(:hover, :focus, :focus-within) .profile-image[href] .profile-view {
	pointer-events: auto;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href]:is(:hover, :focus-within) .profile-view, :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-pointer-reference:is(:hover, :focus, :focus-within) .profile-image[href] .profile-view {
	opacity: 1;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href] .profile-view {
	/*  */
	z-index: 2;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: -moz-max-content;
	max-width: max-content;
	max-height: -moz-min-content;
	max-height: min-content;
}

/*
* Profile Image. Customizations https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/repeater/profile.md#css-vars
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image {
	--profile-image-aspect-w: 490;
	--profile-image-aspect-l: 550;
	--profile-image-position: 50% 15%;
	--profile-image-overlay-background: var(--color-dark-alt) linear-gradient(to bottom right, var(--color-dark), var(--color-dark-alt));
	--profile-image-overlay-opacity: 0;
	--profile-image-overlay-mix-blend: multiply;
	--profile-image-overlay-backdrop-filter: blur(1px);
}

/*
* Profile Placeholder. Customizations https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/repeater/profile.md#css-vars
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image-placeholder {
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 2rem;
	margin: 0;
	background: var(--profile-image-overlay-background, linear-gradient(to bottom right, var(--color-dark), var(--color-dark-alt)));
	font-size: 1.5rem;
	font-family: var(--font-secondary);
	color: var(--color-light);
	text-align: center;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image-placeholder-icon {
	font-size: 96px;
}

@media only screen and (min-width: 1900px) {
	:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image-placeholder-icon {
		font-size: 128px;
	}
}

/*
* Profile Image Pseudos: wheh linking to a bio page only
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href]::before, :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href] .profile-view {
	transition: .5s ease-in-out all;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href]:is(:hover, :focus-within), :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-pointer-reference:is(:hover, :focus, :focus-within) .profile-image[href] {
	--profile-image-overlay-opacity: .8;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image[href]:is(:hover, :focus-within):has(.profile-image-placeholder), :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-pointer-reference:is(:hover, :focus, :focus-within) .profile-image[href]:has(.profile-image-placeholder) {
	--profile-image-overlay-opacity: 1;
}

/*
* Profile View text
-------------------------------------------------------------------------------- */

/*
* Profile Thumbnail, contains profile image, special blurb, whatever can be included in a thumbnail
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-thumbnail {
	flex: 0 0 auto;
	align-self: stretch;
	width: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

/* Profile Additional Details. No need to edit 
--------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-details {
	opacity: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-direction: column;
	text-align: center;
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 1;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-details::before {
	content: "";
	color: var(--color-light);
	opacity: .8;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: -1;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-details:is(:hover, :focus-within), :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-pointer-reference:is(:hover, :focus, :focus-within) .profile-details {
	opacity: 1;
	pointer-events: auto;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-details-body {
	flex: 1 1;
	overflow-y: scroll;
	scrollbar-width: none;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-details-body::-webkit-scrollbar {
	display: none;
}

/*
* Profile Additional Details Customizations
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-details {}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-details {
	padding-block: 2rem;
	padding-inline: 1rem;
	transition: .5s ease-in-out all;
	background: var(--color-dark-alt);
	color: var(--color-light);
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-details-body + .profile-details-footer {
	padding-top: 2rem;
	align-self: stretch;
}

/*
* Profile Name
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-info-name {
	align-content: center;
}

/*
* Profile Name
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-info-position {
	margin-top: auto;
}

/*
* includes/repeater-profile
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-profileStyles-enabled="false"]) .profile {}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile {
	background: var(--color-light-alt);
	align-self: stretch;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile:has([href]):is(.profile-pointer-reference):is(:hover, :focus-within) {
	background: var(--color-neutral);
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile {
	max-width: 100%;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile, :where(.content-block):not([data-profileStyles-enabled="false"]) .profile-container {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-container {
	width: 100%;
	flex: 1 1;
	gap: 1.5rem;
	padding: 1.5rem;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-info {
	flex: 1 1;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-info {
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: .5rem;
}

:where(.content-block):not([data-profileStyles-enabled="false"]) .profile-image {
	width: 100%;
}

/*# sourceMappingURL=base-profile.css.map */

/*  Responsive Background skeletons: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/field/responsive-background
--------------------------------------------------------------- */

/* Responsive Background skeletons. Do not Edit.
--------------------------------------------------------------- */
:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) .responsive-background {
	pointer-events: none;
	overflow: hidden;
	transform-style: preserve-3d;
	z-index: -1;
	background-color: var(--responsive-background-bg-color, var(--scheme-bg, var(--color-dark-alt)));
}

:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) .responsive-background::after {
	content: "";
	display: block;
	inset: 0;
	position: absolute;
	pointer-events: none;
	mix-blend-mode: none;
	mix-blend-mode: var(--responsive-background-overlay-mix-blend, none);
	background: normal;
	background: var(--responsive-background-overlay-background, normal);
	opacity: .75;
	opacity: var(--responsive-background-overlay-opacity, .75);
}

:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) .responsive-background-wrapper {
	position: relative;
	z-index: 0;
}

:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) .responsive-background, :where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) .responsive-background-bg {
	position: absolute !important;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) .responsive-background-bg {
	/* Note: when styling instances of this block, make sure properties are NOT set as shorthand to avoid override issues */
	background-size: cover;
	background-position: var(--responsive-background-bg-position);
	background-color: inherit;
	z-index: -2;
	background-image: none !important;
	background-image: var(--responsive-background-image, none) !important;
}

:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) .responsive-background-bg.nitro-lazy {
	background-image: none !important;
}

:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) .responsive-background-bg:is(img) {
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: var(--responsive-background-bg-position);
	object-position: var(--responsive-background-bg-position);
	width: 100%;
	height: 100%;
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) :is(.responsive-background-animated-on-loaded, .responsive-background-animated-on-visible.visible) .responsive-background-bg {
		/* make background block animate for document ready or when visible*/
		transition: opacity ease-in-out 1s, transform ease-in-out 1s;
		opacity: 1;
		transform: scale(1);
		transform-style: preserve-3d;
	}
	
	:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) :is(html:not(.doc-images-loaded) .responsive-background-animated-on-loaded, .responsive-background-animated-on-visible:not(.visible)) .responsive-background-bg {
		/* hide if not ready to let the world to know got to let it show */
		opacity: 0;
		transform: scale(1.1);
	}
}

/* Responsive Background Customizations
--------------------------------------------------------------- */
:where(.content-block):not([data-responsiveBackgroundStyles-enabled="false"]) .responsive-background {
	--responsive-background-overlay-mix-blend: normal;
	--responsive-background-overlay-background: none;
	--responsive-background-overlay-opacity: .75;
	--responsive-background-bg-position: center center;
}

/*# sourceMappingURL=base-responsive-background.css.map */

/* Case Results https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/repeater/result.md
-------------------------------------------------------------------------------- */

/*
* Case Result Icon
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-resultStyles-enabled="false"]) .result-icon {
	font-size: 3rem;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) :where(.content-palette-dark) .result-icon {
	color: inherit;
	color: var(--scheme-sp, inherit);
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-popup .result-icon {
	font-size: 100px;
}

/*
* Case Result Value
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-resultStyles-enabled="false"]) .result-value {
	font-size: 4rem;
	text-transform: uppercase;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) :where(.content-palette-dark) .result-value {
	color: inherit;
	color: var(--scheme-sp, inherit);
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-value-confidential {
	font-size: .6em;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-value-number-long {
	font-size: .75em;
}

@media only screen and (min-width: 768px) {
	:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-popup .result-value.h1 {
		font-size: 100px;
	}
}

/*
* Case Result Type
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-resultStyles-enabled="false"]) :where(.content-palette-dark) .result-type {
	color: inherit;
	color: var(--scheme-sp, inherit);
}

/*
* Case Result Title - Optional
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-resultStyles-enabled="false"]) :where(.content-palette-dark) .result-title {
	color: inherit;
	color: var(--scheme-sp, inherit);
}

/*
* Case Result Description
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-resultStyles-enabled="false"]) :where(.content-palette-dark) .result-description {
	color: inherit;
	color: var(--scheme-sp, inherit);
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-default .result-description {
	flex: 1 1;
}

/*
* Case Result Content
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-resultStyles-enabled="false"]) :where(.content-palette-dark) .result-content {
	color: inherit;
	color: var(--scheme-sp, inherit);
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-default .result-content {
	max-width: 50ch;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-popup .result-content {
	margin-top: 3rem;
	text-align: left;
	text-align: initial;
}

/*
* Case Result Learn More - Optional
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-resultStyles-enabled="false"]) .result-learn-more {
	margin-top: 2em;
	align-self: center;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) :where(.content-palette-dark) .result-learn-more {
	color: inherit;
	color: var(--scheme-sp, inherit);
}

@media only screen and (min-width: 1900px) {
	:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-default .result-learn-more:first-child {
		margin-top: auto;
	}
}

/*
* includes/repeater-result
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-resultStyles-enabled="false"]) .result {
	max-width: 100%;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result, :where(.content-block):not([data-resultStyles-enabled="false"]) .result-container {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-container {
	width: 100%;
	flex: 1 1;
	gap: .75rem;
	align-items: center;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result :where(.result-description, .result-content) {
	margin-left: auto;
	margin-right: auto;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-pointer-reference:has(.result-details, [href]):is(:hover, :focus-within) .result-summary .result-value {
	color: inherit;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-summary {
	text-align: center;
	display: contents;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-summary:nth-last-child(n+2) {
	margin-bottom: auto;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-default {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1 1;
	margin-top: 1.5em;
	border-top: 1px solid var(--color-neutral);
	padding-top: 1.5rem;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-pointer-reference:not(:is(:hover, :focus-within)) .result-details-hover {
	pointer-events: none;
	opacity: 0;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-hover {
	max-width: none;
	position: absolute;
	background-color: var(--color-dark-alt);
	color: var(--color-light);
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0;
	scrollbar-width: none;
	overflow-y: scroll;
	transition: .25s all ease-in-out;
	padding: 2rem;
	opacity: 1;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-hover::-webkit-scrollbar {
	display: none;
}

:where(.content-block):not([data-resultStyles-enabled="false"]) .result-details-popup {
	text-align: center;
	flex-direction: column;
	display: flex;
	gap: 1rem;
}

/*# sourceMappingURL=base-result.css.map */

/* Vendor - Slick - will be deprecated
--------------------------------------------------------------- */
:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-disabled {
	cursor: not-allowed !important;
	opacity: .4 !important;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-list {
	flex: 1 1;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-slider {
	--slick-custom-dots-margin-top: 2.5rem;
	--slick-custom-arrows-margin-x: 2rem;
	padding-bottom: 2.5rem;
	padding-bottom: var(--slick-custom-dots-margin-top);
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-arrow {
	background: none;
	position: absolute;
	max-height: -moz-max-content;
	max-height: max-content;
	display: inline-flex;
	align-items: center;
	transform: none;
	transform: none;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
	overflow: hidden;
	padding: 0;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-arrow::before, :where(.content-block):not([data-slickStyles-enabled="false"]) .slick-arrow::after {
	opacity: 1;
	text-indent: 0;
	color: inherit;
	display: block;
	font-size: inherit;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-arrow.prev {
	right: 100%;
	margin-right: var(--slick-custom-arrows-margin-x);
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-arrow.next {
	left: 100%;
	margin-left: var(--slick-custom-arrows-margin-x);
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-dots {
	font-size: 8px;
	line-height: 1;
	text-align: center;
	margin-top: -1em;
	color: inherit;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-dots li {
	width: auto;
	height: auto;
	display: inline-block;
	color: inherit;
	margin: 0 .75em;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-dots li::before {
	content: "";
	background: currentColor;
	display: inline-block;
	width: 1em;
	height: 1em;
	border-radius: 9999em;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-dots li.slick-active {
	color: var(--color-primary);
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-dots button {
	display: none;
}

/* custom helpers
---------------------------------------------------------------*/
:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-arrow-glyph:empty {}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-arrow-glyph:empty::before {
	content: "";
	display: inline-block;
	font-size: .75em;
	width: 1em;
	height: 1em;
	border-width: 2px 2px 0 0;
	border-style: solid;
	transform-origin: center center;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .prev .slick-custom-arrow-glyph:empty {
	margin-left: .25em;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .prev .slick-custom-arrow-glyph:empty::before {
	transform: rotate(-135deg);
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .next .slick-custom-arrow-glyph:empty {
	margin-right: .25em;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .next .slick-custom-arrow-glyph:empty::before {
	transform: rotate(45deg);
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-equal-heights {}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-equal-heights.slick-initialized .slick-track {
	display: flex;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-equal-heights.slick-initialized .slick-track::before, :where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-equal-heights.slick-initialized .slick-track::after {
	content: none;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-equal-heights.slick-initialized .slick-slide {
	float: none;
	height: auto;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-equal-heights.slick-initialized .slick-slide img {
	margin: auto;
}

:where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-equal-heights.slick-initialized .slick-slide, :where(.content-block):not([data-slickStyles-enabled="false"]) .slick-custom-equal-heights.slick-initialized .slick-slide > div:not([style]):not([class]) {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

/*# sourceMappingURL=base-slick.css.map */

/* Vendor - Swiper
--------------------------------------------------------------- */

/* Swiper Customizations
Variable docs: https://oxygen4fun.supadezign.com/tips/swiperjs-tips-and-good-practice/#customcss
--------------------------------------------------------------- */
:where(.content-block):not([data-swiperStyles-enabled="false"]) {
	--swiper-theme-color: var(--scheme-sp, var(--color-primary));
	--swiper-navigation-sides-offset: 0px;
	--swiper-pagination-bottom: 1.5rem;
	--swiper-pagination-top: auto;
	--swiper-pagination-right: 1rem;
	--swiper-pagination-left: auto;
	--swiper-pagination-bullet-size: .375rem;
	--swiper-pagination-bullet-width: var(--swiper-pagination-bullet-size);
	--swiper-pagination-bullet-height: var(--swiper-pagination-bullet-size);
	--swiper-pagination-bullet-border-radius: 9999em;
	--swiper-pagination-bullet-horizontal-gap: calc(var(--swiper-pagination-bullet-size) * 1.5);
	--swiper-pagination-bullet-vertical-gap: var(--swiper-pagination-bullet-size);
	--swiper-pagination-bullet-opacity: 1;
	--swiper-pagination-bullet-inactive-opacity: 1;
	--swiper-pagination-bullet-inactive-color: currentColor;
	--swiper-pagination-progressbar-size: var(--swiper-pagination-bullet-size);
	--swiper-pagination-progressbar-bg-color: var(--color-neutral-lighter);
	--swiper-scrollbar-border-radius: calc(var(--swiper-pagination-bullet-size) * .5);
	--swiper-scrollbar-bg-color: var(--swiper-pagination-progressbar-bg-color);
	--swiper-scrollbar-drag-bg-color: var(--color-neutral);
	--swiper-scrollbar-size: 2px;
	--swiper-scrollbar-sides-offset: 1rem;
	--swiper-scrollbar-bottom: 1.5rem;
	--swiper-scrollbar-top: auto;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) :where(.content-palette-dark) {
	--swiper-theme-color: var(--scheme-fg, var(--color-primary-alt));
}

/* Swiper Enhancements
--------------------------------------------------------------- */
:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper {
	transition: opacity .25s ease-in-out;
	opacity: 0;
	padding-inline: var(--swiper-custom-arrow-offset-x, min(var(--container-fallback), var(--container-gutter)));
	margin-inline: calc(var(--swiper-custom-arrow-offset-x-negate, var(--swiper-custom-arrow-offset-x, min(var(--container-fallback), var(--container-gutter)))) * -1);
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper.swiper-initialized {
	opacity: 1;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-button-prev.swiper-button-disabled, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-button-next.swiper-button-disabled {
	display: none;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) :is(:where(.swiper-horizontal) > .swiper-pagination-bullets, .swiper-pagination-bullets:where(.swiper-pagination-horizontal), .swiper-pagination-custom, .swiper-pagination-fraction):not(.swiper-pagination-lock) {
	bottom: 1.5rem;
	bottom: var(--swiper-pagination-bottom);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: calc(.375rem * 1.5);
	gap: var(--swiper-pagination-bullet-horizontal-gap);
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-button-next, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-button-prev {
	/* customize swiper buttons to utilize theme's styles for the button */
	--button-baseline-offset: .5 !important;
	--swiper-navigation-size: var(--button-height);
	z-index: 1;
	width: auto;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-button-next::before, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-button-next::after, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-button-prev::before, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-button-prev::after {
	content: none;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-scrollbar-drag {
	height: calc(2px * 2);
	height: calc(var(--swiper-scrollbar-size) * 2);
	top: -50%;
	bottom: -50%;
	margin-block: auto;
}

/* Swiper Custom Helpers
--------------------------------------------------------------- */
:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-scrollbar-static .swiper-scrollbar {
	position: static;
	margin-top: 1.5rem;
	margin-top: var(--swiper-scrollbar-bottom);
	margin-bottom: 2px;
	margin-bottom: var(--swiper-scrollbar-size);
	margin-inline: auto;
	margin-left: 1rem;
	margin-left: var(--swiper-scrollbar-sides-offset, 1%);
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-pagination-static .swiper-pagination {
	position: static;
	margin-top: 1.5rem;
	margin-top: var(--swiper-pagination-bottom);
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-pagination-static-sm .swiper-pagination {
		position: static;
		margin-top: 1.5rem;
		margin-top: var(--swiper-pagination-bottom);
	}
}

@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-pagination-static-xs .swiper-pagination {
		position: static;
		margin-top: 1.5rem;
		margin-top: var(--swiper-pagination-bottom);
	}
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-wrapper {
	height: auto;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-custom-buttons {
	display: flex;
	justify-content: center;
	gap: .75rem;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-custom-buttons .swiper-button-prev, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-custom-buttons .swiper-button-next {
	margin-inline: 0;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-button-next, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-button-prev {
	position: static;
	transform: none;
	margin: 0;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-button-next ~ .swiper-pagination, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-button-prev ~ .swiper-pagination {
	display: inline-flex;
	width: auto;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-button-prev {
	margin-right: .375rem;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static .swiper-button-next {
	margin-left: .375rem;
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-wrapper {
		height: auto;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-custom-buttons {
		display: flex;
		justify-content: center;
		gap: .75rem;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-custom-buttons .swiper-button-prev, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-custom-buttons .swiper-button-next {
		margin-inline: 0;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-button-next, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-button-prev {
		position: static;
		transform: none;
		margin: 0;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-button-next ~ .swiper-pagination, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-button-prev ~ .swiper-pagination {
		display: inline-flex;
		width: auto;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-button-prev {
		margin-right: .375rem;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-sm .swiper-button-next {
		margin-left: .375rem;
	}
}

@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-wrapper {
		height: auto;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-custom-buttons {
		display: flex;
		justify-content: center;
		gap: .75rem;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-custom-buttons .swiper-button-prev, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-custom-buttons .swiper-button-next {
		margin-inline: 0;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-button-next, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-button-prev {
		position: static;
		transform: none;
		margin: 0;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-button-next ~ .swiper-pagination, :where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-button-prev ~ .swiper-pagination {
		display: inline-flex;
		width: auto;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-button-prev {
		margin-right: .375rem;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-buttons-static-xs .swiper-button-next {
		margin-left: .375rem;
	}
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-hide-slides:is(.swiper-initialized, :has(.swiper-initialized)) .swiper-slide:not(.swiper-slide-duplicate-visible):not(.swiper-slide-visible):not(.swiper-slide-active) {
	opacity: 0 !important;
	pointer-events: none !important;
	transition: opacity .25s ease-in-out;
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-hide-slides-sm:is(.swiper-initialized, :has(.swiper-initialized)) .swiper-slide:not(.swiper-slide-duplicate-visible):not(.swiper-slide-visible):not(.swiper-slide-active) {
		opacity: 0 !important;
		pointer-events: none !important;
		transition: opacity .25s ease-in-out;
	}
}

@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-hide-slides-xs:is(.swiper-initialized, :has(.swiper-initialized)) .swiper-slide:not(.swiper-slide-duplicate-visible):not(.swiper-slide-visible):not(.swiper-slide-active) {
		opacity: 0 !important;
		pointer-events: none !important;
		transition: opacity .25s ease-in-out;
	}
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-ticker {
	--swiper-wrapper-transition-timing-function: linear;
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-stagger :where(.swiper-slide > :only-child) {
		transition-duration: .1s;
		transition-property: transform, opacity;
		opacity: 0;
		transform: translateX(50px);
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-stagger.visible :where(.swiper-slide > :only-child) {
		transition-duration: 1s;
		transition-delay: calc(1s + .25s * 0);
		transition-delay: calc(1s + .25s * var(--swiper-custom-slide-i, 0));
		opacity: 1;
		transform: translateX(0px);
	}
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-remove-background .swiper-slide {
	mix-blend-mode: multiply;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights .swiper-slide {
	height: auto;
	align-self: stretch;
	display: flex;
	flex-direction: column;
}

:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights .swiper-slide > :where(:only-child) {
	flex: 1 1;
}

@media only screen and (min-width: 1200px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights-nontouch .swiper-slide {
		height: auto;
		align-self: stretch;
		display: flex;
		flex-direction: column;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights-nontouch .swiper-slide > :where(:only-child) {
		flex: 1 1;
	}
}

@media only screen and (max-width: 1199px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights-touch .swiper-slide {
		height: auto;
		align-self: stretch;
		display: flex;
		flex-direction: column;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights-touch .swiper-slide > :where(:only-child) {
		flex: 1 1;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights-sm .swiper-slide {
		height: auto;
		align-self: stretch;
		display: flex;
		flex-direction: column;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights-sm .swiper-slide > :where(:only-child) {
		flex: 1 1;
	}
}

@media only screen and (max-width: 767px) {
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights-xs .swiper-slide-slide {
		height: auto;
		align-self: stretch;
		display: flex;
		flex-direction: column;
	}
	
	:where(.content-block):not([data-swiperStyles-enabled="false"]) .swiper-custom-equal-heights-xs .swiper-slide-slide > :where(:only-child) {
		flex: 1 1;
	}
}

/*# sourceMappingURL=base-swiper.css.map */

/* Testimonial https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/repeater/testimonial.md
-------------------------------------------------------------------------------- */

/*
* Testimonial Stars
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial-stars {
	font-size: 2rem;
}

/*
* Testimonial Highlight / Main quote
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial-highlight {
	text-align: inherit;
	max-width: none;
	margin-inline: 0;
}

/*
* Testimonial Quote Body / other parts of the quote
-------------------------------------------------------------------------------- */

/*
* Testimonial Divider - Optional
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial-divider {
	--fancy-border-margin-y: 0em;
}

/*
* Testimonial Source + Optional Icon
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial-source span:nth-last-child(n+2)::after {
	content: "●︎";
	color: var(--color-primary);
	letter-spacing: 0em;
	margin-inline: .25em;
}

:where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial-source.testimonial-source-has-first-letter::before {
	content: attr(data-first-letter);
	display: flex;
	align-content: center;
	align-items: center;
	justify-content: center;
	width: 1.75em;
	height: 1.75em;
	border-radius: 999em;
	background: var(--scheme-sp, var(--color-primary));
	font-size: 18px;
	font-family: var(--font-accent);
	color: var(--color-light);
	text-transform: uppercase;
}

:where(.content-block):not([data-testimonialStyles-enabled="false"]) :where(.content-palette-dark) .testimonial-source {
	color: inherit;
	color: var(--scheme-sp, inherit);
}

:where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial-source-icon {
	font-size: 1.25em;
}

/*
* includes/repeater-testimonial
-------------------------------------------------------------------------------- */
:where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial {
	max-width: 100%;
}

:where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial, :where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial-container {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

:where(.content-block):not([data-testimonialStyles-enabled="false"]) .testimonial-container {
	width: 100%;
	flex: 1 1;
	gap: .75rem;
}

/*# sourceMappingURL=base-testimonial.css.map */

/* Video Button - Default (One that doesnt have custom markup in it, just the usual one with a play symbol)
https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/helper/video-button.md
--------------------------------------------------------------- */

/* Video Button Skeletons. No need to edit 
--------------------------------------------------------------- */
@keyframes video-button-default-text-rotate {
	from {
		transform: rotate(0deg);
	}
	
	to {
		transform: rotate(360deg);
	}
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default {
	display: inline-flex;
	width: 1em;
	height: 1em;
	position: relative;
	font-size: var(--video-button-size);
	z-index: 0;
	cursor: pointer;
	align-items: center;
	justify-content: center;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default:is(.video-button-no-api) {
	pointer-events: none;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail .video-button-default {
	/* customize instances of video button within thumbnail*/
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	--video-button-size: 70px;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-image, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text-svg, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text span, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default::before, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default::after {
	position: absolute;
	margin: auto;
	pointer-events: none;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-image {
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon::before, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon::after {
	content: "";
	display: block;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default > .wistia_click_to_play {
	position: static !important;
	width: auto !important;
	height: auto !important;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-glyph {
	display: flex;
	align-items: center;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-glyph::before {
	content: "";
	display: block;
	width: var(--video-button-glyph-width);
	height: var(--video-button-glyph-height);
	background: currentColor;
	background: var(--video-button-glyph-color, currentColor);
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-glyph:not(.video-button-default-glyph-has-text) {
	padding-left: calc(var(--video-button-glyph-width) * .25);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-glyph-has-text::before {
	content: none;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text {
	font-size: var(--video-button-glyph-height);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text-svg {
	transform-style: preserve-3d;
	max-width: none;
	top: -100%;
	left: -100%;
	right: -100%;
	bottom: -100%;
	margin: auto;
	font-size: calc(1em * 1 / var(--video-button-text-svg-radius-ratio));
	width: calc(200% * var(--video-button-text-svg-radius-ratio));
	height: calc(200% * var(--video-button-text-svg-radius-ratio));
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text-svg-path {
	transform-origin: center center;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text-html span {
	top: 0;
	bottom: 0;
	width: -moz-max-content;
	width: max-content;
	height: -moz-max-content;
	height: max-content;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text-html span:not(.video-button-default-text-html-separator):first-child {
	right: 100%;
	margin-right: 1em;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text-html span:not(.video-button-default-text-html-separator):last-child {
	left: 100%;
	margin-left: 1em;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-image-init:not(:only-child), :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default:is(:hover, :focus) .video-button-default-image-hover, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:is(:hover, :focus, :focus-within) .video-button-default-image-hover {
	opacity: 1;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-image-hover, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default:is(:hover, :focus) .video-button-default-image-init:not(:only-child), :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:is(:hover, :focus, :focus-within) .video-button-default-image-init:not(:only-child) {
	opacity: 0;
}

/* Video Button Customizations: https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/helper/video-button.md#css-vars
--------------------------------------------------------------- */
:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default {
	--video-button-size: 80px;
	--video-button-text-svg-radius-ratio: 1.25;
	--video-button-text-svg-start-offset: 50%;
	--video-button-glyph-height: .24em;
	--video-button-glyph-width: .16em;
	--video-button-glyph-color: currentColor;
	color: var(--color-light);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-image, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default::before, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default::after, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-thumbnail-markup::after {
	transition-duration: .25s;
	transition-timing-function: ease-in-out;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-image, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-thumbnail-markup::after {
	transition-property: opacity, left, top, bottom, right, width, height;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default::before, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default::after {
	transition-property: all;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail .video-button-default {
	/* customize instances of video button within thumbnail*/
	--video-button-size: 70px;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail .video-button-default:is(:hover, :focus), :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:is(:hover, :focus, :focus-within) .video-thumbnail .video-button-default {
	--video-thumbnail-overlay-opacity: .8;
}

@media only screen and (min-width: 1400px) {
	:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default {
		--video-button-size: 100px;
	}
	
	:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail .video-button-default {
		--video-button-size: 120px;
	}
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-glyph {
	letter-spacing: .05em;
	text-transform: uppercase;
	font-weight: 700;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-glyph::before {
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text {
	font-size: .75rem;
	line-height: 1;
	color: var(--color-neutral);
	letter-spacing: .05em;
	text-transform: uppercase;
	font-weight: 700;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text-separator {
	color: inherit;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text-svg {
	transform: rotate(32deg);
	color: inherit;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default-text-html > span {
	top: 0;
	bottom: 0;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon {
	/* tru element/background */
	
	/* these are basic styles. overhaul as needed */
	background: rgba(255, 255, 255, .2);
	box-shadow: 0 0 0 0 rgba(255, 255, 255, .2);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon::before, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon::after {
	/* these are basic styles. overhaul as needed */
	border-radius: 999em;
	transform: scale(1);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon::before {
	/* fake extra background */
	
	/* these are basic styles. overhaul as needed */
	background: linear-gradient(to bottom, var(--color-primary-gradient-start), var(--color-primary-gradient-end));
	z-index: -1;
	top: .1em;
	bottom: .1em;
	left: .1em;
	right: .1em;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon::after {
	/* other element for fx */
	
	/* these are basic styles. overhaul as needed */
	border: .0125em solid var(--color-accent);
	top: .15em;
	bottom: .15em;
	left: .15em;
	right: .15em;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon:is(:hover, :focus), :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:is(:hover, :focus, :focus-within) .video-button-default.video-button-default-no-icon {
	/* on hover on itself/ containing repeater/ .video-pointer-reference */
	--video-button-glyph-color: linear-gradient(to bottom, var(--color-light-alt), var(--color-light));
	box-shadow: 0 0 0 .1em rgba(255, 255, 255, .2);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon:is(:hover, :focus)::before, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:is(:hover, :focus, :focus-within) .video-button-default.video-button-default-no-icon::before {
	/* these are basic styles. overhaul as needed */
	background: linear-gradient(to bottom, var(--color-primary-gradient-start), var(--color-primary-gradient-end));
	transform: scale(1.25);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-button-default.video-button-default-no-icon:is(:hover, :focus)::after, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:is(:hover, :focus, :focus-within) .video-button-default.video-button-default-no-icon::after {
	/* these are basic styles. overhaul as needed */
	transform: scale(.98);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail .video-button-default.video-button-default-no-icon:is(:hover, :focus), :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:has(.video-thumbnail .video-button-default.video-button-default-no-icon):is(:hover, :focus-within) .video-button-default.video-button-default-no-icon {}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail .video-button-default.video-button-default-no-icon:is(:hover, :focus)::before, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:has(.video-thumbnail .video-button-default.video-button-default-no-icon):is(:hover, :focus-within) .video-button-default.video-button-default-no-icon::before {}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail .video-button-default.video-button-default-no-icon:is(:hover, :focus)::after, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:has(.video-thumbnail .video-button-default.video-button-default-no-icon):is(:hover, :focus-within) .video-button-default.video-button-default-no-icon::after {}

/* Video Pointer Reference
--------------------------------------------------------------- */
:where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference {
	cursor: pointer;
}

/* Video Thumbnail https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/helper/video-thumbnail.md
--------------------------------------------------------------- */

/* Video Thumbnail Skeletons. No need to edit 
--------------------------------------------------------------- */
:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail {
	--cover-aspect-w: var(--video-thumbnail-aspect-w);
	--cover-aspect-l: var(--video-thumbnail-aspect-l);
	flex: 0 0 auto;
	position: relative;
	background-color: var(--color-light-alt);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail-markup {
	border-radius: inherit;
	overflow: hidden;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail-markup[href]::after, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail-markup.wistia_embed::after {
	/* overlay */
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	pointer-events: none;
	background: var(--video-thumbnail-overlay-background);
	opacity: var(--video-thumbnail-overlay-opacity);
	mix-blend-mode: var(--video-thumbnail-overlay-mix-blend);
	-webkit-backdrop-filter: var(--video-thumbnail-overlay-backdrop-filter);
	backdrop-filter: var(--video-thumbnail-overlay-backdrop-filter);
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail-markup-img img {
	max-width: none;
}

/* force object fit cover where we need to, im looking at you wistia
--------------------------------------------------------------- */
:where(.content-block):not([data-videoStyles-enabled="false"]) :is(.video-thumbnail-markup > *, .video-thumbnail-markup img) {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	position: absolute !important;
	top: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	right: 0 !important;
	-o-object-fit: cover !important;
	object-fit: cover !important;
	margin: 0 !important;
}

/* Video Thumbnail
https://github.com/1point21interactive/1p21_wp_boilerplate/blob/master/wp-content/themes/1p21-boilerplate/docs/includes/helper/video-thumbnail.md#css-vars
--------------------------------------------------------------- */
:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail {
	--video-thumbnail-aspect-w: 16;
	--video-thumbnail-aspect-l: 9;
	--video-thumbnail-overlay-background: var(--color-dark-alt) linear-gradient(to bottom right, var(--color-dark), var(--color-dark-alt));
	--video-thumbnail-overlay-opacity: 0;
	--video-thumbnail-overlay-backdrop-filter: none;
	--video-thumbnail-overlay-mix-blend: multiply;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail:is(:hover, :focus), :where(.content-block):not([data-videoStyles-enabled="false"]) .video-pointer-reference:is(:hover, :focus, :focus-within) .video-thumbnail {
	--video-thumbnail-overlay-opacity: .8;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail-markup[href]::after, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-thumbnail-markup.wistia_embed::after {
	/* overlay */
	transition: .25s ease-in-out all;
}

/* includes/repeater-video
--------------------------------------------------------------- */
:where(.content-block):not([data-videoStyles-enabled="false"]) .video {}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video {
	max-width: 100%;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video, :where(.content-block):not([data-videoStyles-enabled="false"]) .video-container {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-container {
	width: 100%;
	flex: 1 1;
	gap: 1rem;
}

:where(.content-block):not([data-videoStyles-enabled="false"]) .video-title {
	flex: 1 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	margin-block: 0;
}
