@import "./custom-properties.css";


/* Typography */

.entry-content h1 {
	font-size: 2.5em !important;
	font-size: clamp(1.25em, -1rem + 15vw, 2em) !important ;
	line-height: 1em !important;
	font-weight: 400 !important;
}

h1.has-medium-font-size { 
	font-size: 1.8em !important;
}

.wp-block-cover__inner-container :is(h1, h2, h3, h4, h5, h6, p, ul, figure), .block-content-section__container :is(h1, h2, h3, h4, h5, h6, p, ul, figure) {
	margin-top: 0 !important;
	margin-bottom: 1rem !important;
}

.wp-block-cover__inner-container *:last-child, .block-content-section__container *:last-child {
	margin-bottom: 0 !important;
}

.wp-block-separator {
	margin: 1.5em 0 !important;
}

.underline em {
	text-decoration: underline;
}


.no-margin-bottom:is(h1, h2, h3, h4, h5, h6, p, ul, figure) {
	margin-bottom: 0 !important;
}

.wp-block-list {
	list-style: disc;
	list-style-position: outside;
	margin-left: 1.5rem;
	display: grid;
	gap: .5rem;
}

ol.wp-block-list {
	list-style: decimal;
}

.wp-block-list:last-child {
	margin-bottom: 0;
}

@media (min-width:600px) {
	.wp-block-list.two-columns {
		column-count: 2;
		display: block;
		column-gap: 3rem;
	}
}


/* Video
--------------------------------------------- */

.video-container {
	border-radius: var(--container-radius);
	overflow: hidden;
	aspect-ratio:16/9;
	box-shadow: 0 .25em 1em rgb(0 0 0 / 0.2);
}

.fill-the-gap {
	padding: .5rem 1.25rem !important;
	border-radius: var(--container-radius);
	display: inline-block;
	margin-inline: auto;
}


.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	width: 100%;
	max-width: 100%;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Allows Block Editor to be full width */
#editor :where(.wp-block) {
	max-width: 90rem;
	margin-top: .75em;
	margin-bottom: 0;
	box-sizing: border-box;
}
#editor :where(.wp-block) .wp-block {
	margin-top: 0;
}

#editor :where(.wp-block) p {
	font-size: 1rem;
	line-height: 1.2rem;
	padding: 0;
}
#editor .entry-content > h2 {
	padding: 20px;
}
.entry-content > h2 {
	padding: 1.5rem var(--h-spacing) 0 var(--h-spacing);
	margin: 0;
}

/* Modal */

.modal-slider figure {
	display: grid !important;
	gap: 1rem;
}

.modal-slider figure img {
	height: auto;
	width:100%;
	object-fit: cover;
	aspect-ratio: 16 / 9;
}

.modal-slider figure figcaption {
	color: #fff;
	text-align: center;
}

/* Cover */

.wp-block-cover.has-background {
	padding: var(--md-space);
}
#editor .wp-block-cover {
	width: 100% !important;
	padding: 1.5rem !important;
	border: solid 1px var(--bg-grey);
	font-size: 14px;
}

.wp-block-cover.is-style-main-section, .wp-block-cover.is-style-main-section-narrow, .wp-block-cover.is-style-main-section-medium, .wp-block-cover.is-style-main-section-skinny, .wp-block-cover[class*="is-style-hero"] {
	padding: 5rem var(--h-spacing);
	display: flex !important;
}
.wp-block-cover.is-style-main-section-medium .wp-block-cover__inner-container {
	max-width: 60em;
}

.wp-block-cover.is-style-main-section-narrow .wp-block-cover__inner-container {
	max-width: 50em;
}

.wp-block-cover.is-style-main-section-skinny .wp-block-cover__inner-container {
	max-width: 38em;
}

@media (min-width:60em) {
	.wp-block-cover.is-style-hero .wp-block-cover__inner-container {
		max-width: 70%;
	}
}

@media (min-width:70em) {
	.wp-block-cover.is-style-hero .wp-block-cover__inner-container {
		max-width: 50%;
	}
}

.img-contain img {
	object-fit:contain !important;
}

.wp-block-cover.img-contain-left img {
	object-fit:contain !important;
	inset: 1.5rem 1.5rem 1.5rem var(--h-spacing);
	width: calc( 100% - 1.5rem - var(--h-spacing));
	height: calc( 100% - 3rem);
}

.wp-block-cover.is-style-contain img {
	object-fit: contain;
}

.has-corner-radius {
	border-radius: 1rem;
	overflow: hidden;
}


.wp-block-cover[class*="is-style-hero-wave"] {
	isolation: isolate;
}

.wp-block-cover[class*="is-style-hero-wave"] .wp-block-cover__inner-container {
	z-index: 100 !important;
}

@media (max-width: 900px) {
	.wp-block-cover[class*="is-style-hero-wave"] {
		padding: 0 !important;
		flex-direction: column;
	}
	.wp-block-cover[class*="is-style-hero-wave"] .wp-block-cover__inner-container {
		order: 1;
		position: relative;
		width: 100% !important;
		padding: 3rem var(--h-spacing) !important;
		background: var(--blue);
		background: linear-gradient(45deg, rgba(0,80,200,1) 50%, rgba(0,155,250,1) 90%);
		z-index: 100;
	}
	.wp-block-cover[class*="is-style-hero-wave"] .wp-block-cover__inner-container > * {
		z-index: 50;
		position: relative;
	}
	.wp-block-cover[class*="is-style-hero-wave"] .wp-block-cover__image-background, .wp-block-cover[class*="is-style-hero-wave"] .wp-block-cover__video-background {
		position: relative;
		order: 2;
		max-height: 40vh;
	}
	
	.wp-block-cover[class*="is-style-hero-wave"] .wp-block-cover__inner-container::after {
		background-position: center;
		background-repeat: no-repeat;
		background-size: 100% 100%;
		content: '';
		transform: translateY( 60px);
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 10;
	}
	.wp-block-cover.is-style-hero-wave-v1  .wp-block-cover__inner-container {
		padding-bottom: 150px !important;
	}
	.wp-block-cover.is-style-hero-wave-v1  .wp-block-cover__inner-container::after {
		background-image: url(../img/hero-wave-vertical-v1.png);
		height: 260px;
	}
	.wp-block-cover.is-style-hero-wave-v2  .wp-block-cover__inner-container::after {
		background-image: url(../img/hero-wave-vertical-v2.png);
		height: 400px;
	}
	.wp-block-cover.is-style-hero-wave-v3  .wp-block-cover__inner-container {
		padding-bottom: 100px !important;
	}
	.wp-block-cover.is-style-hero-wave-v3  .wp-block-cover__inner-container::after {
		background-image: url(../img/hero-wave-vertical-v3.png);
		transform: translateY( 100px);
		height: 200px;
	}
}

@media (min-width: 900px) {
	.wp-block-cover[class*="is-style-hero-wave"] .wp-block-cover__inner-container {
		margin-right: calc(50% + 1.5rem) !important;
	}

	.wp-block-cover[class*="is-style-hero-wave"] .wp-block-cover__image-background, .wp-block-cover[class*="is-style-hero-wave"] .wp-block-cover__video-background  {
		left: 50%;
		width: 50%;
	}
	
	.wp-block-cover[class*="is-style-hero-wave"]::after {
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		content: '';
		position: absolute;
		top:0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 10;
	}
	
	.wp-block-cover.is-style-hero-wave-v1::after {
		background-image: url(../img/hero-wave-v1.png);
	}
	.wp-block-cover.is-style-hero-wave-v2::after {
		background-image: url(../img/hero-wave-v2.png);
	}
	.wp-block-cover.is-style-hero-wave-v3::after {
		background-image: url(../img/hero-wave-v3.png);
	}

}

.wp-block-cover.is-style-wave-mask-bottom {
	position: relative;
	padding: 3rem var(--h-spacing) 0 var(--h-spacing)  !important;
	overflow-y: visible;
}

.wp-block-cover.is-style-wave-mask-bottom::after {
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	content: '';
	height: 7rem;
	position: absolute;
	top: auto !important;
	left: -1rem !important;
	right:  -1rem !important;
	bottom:  -1rem !important;
	z-index: 10;
	background-image: url(../img/white-wave-bottom.png);
}

.wp-block-cover.is-style-wave-mask-bottom .wp-block-cover__inner-container {
	z-index: 11;
}



.wp-block-cover.is-style-wave-mask-top-bottom {
	position: relative;
	padding: 10rem var(--h-spacing) !important;
}

.wp-block-cover.is-style-wave-mask-top-bottom::before {
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	content: '';
	height: 7rem;
	position: absolute;
	top: -1rem !important;
	left: -1rem !important;
	right:  -1rem !important;
	bottom:  auto !important;
	z-index: 10;
	background-image: url(../img/white-wave-top.png);
}

.wp-block-cover.is-style-wave-mask-top-bottom::after {
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	content: '';
	height: 7rem;
	position: absolute;
	top: auto !important;
	left: -1rem !important;
	right:  -1rem !important;
	bottom:  -1rem !important;
	z-index: 10;
	background-image: url(../img/white-wave-bottom.png);
}

.wp-block-cover.is-style-wave-mask-top-bottom .wp-block-cover__inner-container {
	z-index: 11;
}



.wp-block-cover.is-style-wave-mask-top {
	position: relative;
	padding:  10rem var(--h-spacing) 3rem var(--h-spacing)  !important;
}

.wp-block-cover.is-style-wave-mask-top::before {
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	content: '';
	height: 7rem;
	position: absolute;
	top: -1rem !important;
	left: -1rem !important;
	right:  -1rem !important;
	bottom:  auto !important;
	z-index: 10;
	background-image: url(../img/white-wave-top.png);
}


.wp-block-cover.is-style-wave-mask-top .wp-block-cover__inner-container {
	z-index: 11;
}

/* Tables */

.wp-block-table {
	font-size: .7rem;
}

.wp-block-table thead {
	border-top: 2px solid;
	border-bottom: 2px solid;
}

.wp-block-table td, .wp-block-table th {
	border: none;
	padding: .35rem 1rem .35rem 0;
}

.wp-block-table tr {
	border-bottom: 1px solid;
}

/* Columns */

.add-top-margin {
	margin-top: 1.5rem !important;
}

.wp-block-group.has-background {
	padding: 1.5rem;
}

.is-style-sticky {
	 position: sticky;
	 top: 6rem;
 }
 
 .has-sub-navigation .is-style-sticky, .has-announcement-bar:not(.hide-announcement-bar) .is-style-sticky {
	 top:9rem;
 }
 @media (min-height: 800px) {
 	.has-announcement-bar:not(.hide-announcement-bar) .has-sub-navigation .is-style-sticky {
	 	top:12rem;
 	}
 }
 .open-modal .is-style-sticky {
	 position: relative;
 }
 
#editor .is-style-sticky {
	  position: sticky;
	  top: 1.5rem;
  }
 
 .wp-block-columns {
	 margin: 0;
	 gap: 1.5em;
 }
 
 .wp-block-cover .wp-block-columns {
	 min-height: unset;
 }

 .wp-block-cover.no-margin {
	 padding-top:1.5rem;
	 padding-bottom: 1.5rem;
	 min-height: 0;
 }

.wp-block-column.has-background {
	padding: 1.5rem;
	border-radius: var(--container-radius);
}

.wp-block-quote.has-background, .wp-block-group.has-background {
	padding: 1.5rem;
	border-radius: var(--container-radius);
	margin-bottom: 1.5rem;
}
.wp-block-group.has-background.no-margin {
	padding: 0 !important;
	border-radius: 0;
}
.wp-block-quote.has-background:last-child, .wp-block-group.has-background:last-child, .wp-block-group.has-background.no-margin {
	margin-bottom: 0;
}

.wp-block-pullquote.has-background {
	padding: 2.5rem 1.5rem 1.5rem 1.5rem;
	margin-top: 1.5rem;
	margin-bottom: 0;
	border-radius: var(--container-radius);
	position: relative;
}
.wp-block-pullquote.has-background::before {
	content: '';
	position: absolute;
	left: 1.5rem;
	top: -1.5rem;
	height: 3rem;
	width: 3rem;
	background-image: url(../img/pullquote-icon.png);
	background-size: 100%;
}

.wp-block-pullquote blockquote {
	margin: 0 !important;
	font-size: 1.2rem;
	font-weight: 600;
}

.wp-block-image.is-style-rounded img {
	border-radius: var(--container-radius);
}

#editor .wp-block-columns {
	gap: 1.5em;
}



#editor .wp-block-columns, .wp-block-columns {
	gap: 1.5rem;
}

#editor .wp-block-column {
	margin-top: 0 !important;
}

.wp-block-columns.is-style-wide-gap {
	gap: 1.5rem 3rem;
}

.wp-block-columns.has-background, .wp-block-column.has-background {
	padding: 1.5rem;
}

@media (min-width:70em) {
	.wp-block-columns.is-style-one-third-two-third {
		grid-template-columns: 1fr 2fr;
	}
	.wp-block-columns.is-style-two-third-one-third {
		grid-template-columns: 2fr 1fr;
	}
}

@media (min-width:50em) {
	.wp-block-columns.is-style-half-half {
		grid-template-columns: 1fr 1fr;
	}
}



/* Card Block --------------------------------------------- */

.wp-block-acf-card {
	height: 100%;
}

.block-card {
	display: grid;
	align-content: start;
	--content-spacer: 1rem;
	height: 100%;
}
.editor-styles-wrapper .wp-block-acf-card.has-background {
	overflow: hidden;
	border-radius: var(--container-radius);
	isolation: isolate;
}

.block-card.has-background {
	border-radius: var(--container-radius);
	isolation: isolate;
	overflow: hidden;
	position: relative;
}

.block-card .card-inner-blocks {
	padding-top: var(--md-space);
}

.block-card.has-background .card-inner-blocks {
	padding: var(--md-space);
}

.card-image.card-image {
	overflow: hidden;
	aspect-ratio: 16/9;
	margin-bottom: 0 !important;
}

.card-image img {
	display: block;
	height: 100%;
	width:100%;
	object-fit: cover;
	object-position: center;
}

.block-card.horizontal {
	grid-template-columns: 1fr 3fr;
	margin-bottom: 1.5rem;
}
.block-card.horizontal .card-image {
	aspect-ratio: unset;
	margin: 0 !important;
}


/* Lists */

ul.is-style-default, ul.is-style-arrow-list {
	list-style: none;
	display: grid;
	gap: .75rem;
	margin: 0;
	padding: 0;
}


ul.is-style-arrow-list li, #solutions-page-nav .sub-menu li {
	margin: 0 !important;
	padding: 0 0 0 1.75rem;
	position: relative;
	width:100%;
	box-sizing: border-box;
	color: inherit;
	line-height: 1.2rem
}

ul.is-style-arrow-list li::before, #solutions-page-nav .sub-menu li::before {
	content: '';
	line-height: 1.2rem;
	font-size: 2rem;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url(../img/blue-arrow-list.svg);
	background-repeat: no-repeat;
	background-size: auto .75rem;
	background-position: center right;
	text-align: center;
	color: inherit;
	flex-shrink: 0;
	width: 1rem;
	height: 1.2rem;
}
ul.is-style-arrow-list.has-white-color li::before {
	background-image: url(../img/white-arrow-list.svg);
}

ul.is-style-references, ol.is-style-references, p.is-style-reference {
	color: var(--lt-grey) !important;
	font-size: .7em;
	margin: 0;
	display: grid;
	gap: .5em;
}
p.is-style-reference {
	display: block;
}

ul.is-style-references li, ol.is-style-references li {
	margin: 0 0 0 1.5rem !important;
}

.is-style-references a {
	color: var(--lt-grey);
}
.is-style-references a:hover {
	color: var(--grey);
}

.is-style-preheader {
	padding: .5rem 1rem !important;
	line-height: 1rem;
	border-radius: 1rem;
	display: inline-block;
	font-size: .9em;
}

ul.has-green-arrow.is-style-arrow-list li::before {
	background-image: url(../img/green-arrow-list.svg);
}

ul.has-magenta-arrow.is-style-arrow-list li::before {
	background-image: url(../img/magenta-arrow-list.svg);
}

ul.has-grey-arrow.is-style-arrow-list li::before {
	background-image: url(../img/grey-arrow-list.svg);
}


/* Buttons */

.wp-block-buttons {
	font-size: .75em;
	gap: 1rem !important;
}

.wp-block-button .wp-block-button__link {
	border-radius: 0;
	padding: .6em 1rem;
	line-height: 1em;
	display: flex !important;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: .5em;
	align-items: center;
	background-color: var(--dk-blue);
}

#editor .wp-block-button .wp-block-button__link {
	padding: .6em;
	background-color: var(--dk-blue);
}

.wp-block-button.is-style-outline .wp-block-button__link {
	padding-top: calc(.7em - 2px);
	padding-bottom: calc(.7em - 2px);
	padding-left: calc(.9em - 2px);
	padding-right: calc(.9em - 2px);
	background: transparent;
}

.wp-block-button:not([class*="is-style-arrow-link"]) .wp-block-button__link {
	border-radius: 2rem;
	height: 100%;
	text-align: left;
}

.wp-block-button:not([class*="is-style-arrow-link"]) .wp-block-button__link:hover, .wp-block-button:not([class*="is-style-arrow-link"]) .wp-block-button__link:visited {
	color: #fff;
}

.wp-block-button:not([class*="is-style-arrow-link"]) .wp-block-button__link:hover {
	text-decoration: underline;
}



#wpforms-submit-10766712 {
	background-color: var(--grey) !important;
}

#wpforms-submit-10766712::before {
	background-image: url(../img/grey-button-arrow.svg);
	background-color: #fff;
}

.wp-block-button.is-style-download .wp-block-button__link::before {
	content: '';
	background-image: url(../img/download-icon.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 1em;
	background-color: transparent;
	border-radius:0;
	height: 1.1em;
	width: 1.1em;
	flex-shrink: 0;
}

/* Button Color Overrides */

.wp-block-button.is-style-download .wp-block-button__link.has-white-background-color::before {
	background-image: url(../img/download-icon-white.svg);
}

.wp-block-button:not([class*="is-style-arrow-link"]) .wp-block-button__link.has-blue-background-color::before {
	background-color: var(--dk-blue);
}

.wp-block-button:not([class*="is-style-arrow-link"]).has-select-background-color .wp-block-button__link::before {
	background-color: var(--grey);
}

.wp-block-button:not([class*="is-style-arrow-link"]) a.wp-block-button__link[target=_blank]::before {
	display: none;
}

.wp-block-button:not([class*="is-style-arrow-link"]) a.wp-block-button__link[target=_blank]::after {
	content: '';
	background-image: url(../img/external-link.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1em;
	height: 1.2em;
	width: 1.2em;
}

.wp-block-button:not([class*="is-style-arrow-link"]) a.wp-block-button__link[href^="#"]::before {
	transform: rotate(90deg);
}

.wp-block-button.is-style-outline:not([class*="is-style-arrow-link"]) a.wp-block-button__link[target=_blank]::after {
	background-image: url(../img/external-link-blue.svg);
}

.wp-block-button[class*="is-style-arrow-link"] .wp-block-button__link {
	color: var(--blue);
	background: transparent !important;
	padding: 0;
}

.wp-block-button[class*="is-style-arrow-link"] .wp-block-button__link::after {
	content: '';
	background-image: url(../img/blue-arrow.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 2em;
	height: 1em;
	width: 2em;
	transition: left .5s ease;
	left: 0;
	position: relative;
}

.wp-block-button.is-style-arrow-link-white .wp-block-button__link::after {
	background-image: url(../img/white-arrow-right.svg);
}


.wp-block-button[class*="is-style-arrow-link"] .wp-block-button__link:hover::after {
	left: .3em;
}

p.is-style-emphasis {
	font-weight: 400 !important;
	font-size: 1.25em !important;
	line-height: 1.2em !important;	
}

p.is-style-global-content {
	background: #f1f1f1;
	padding: .35em .5em .35em 2em;
	display: inline-block;
	border-radius: .25rem;
	margin: 0;
	position: relative;
	line-height: 1em;
}

p.is-style-global-content::before {
	content: '';
	height: 1em;
	width:1em;
	line-height: 1em;
	background-image: url(../img/globe-icon.svg);
	background-repeat: no-repeat;
	background-position: center;
	display: block;
	margin-right: .3em;
	position: absolute;
	top: 50%;
	left: .5em;
	transform: translateY(-50%);
}
p.is-style-preheader {
	padding: .3em .5em !important;
	display: inline-block;
	border-radius: .25rem;
	margin: 0;
	line-height: 1em;
	font-size: .9em;
}

.wp-block-quote {
	display: flex !important;
	flex-direction: column;
	gap: 1em;
	padding-left: 0;
	margin: 0;
	border: none;
}

.wp-block-quote * {
	margin: 0;
}

.wp-block-quote:before {
	content: '';
	height: 2em;
	width: 2.35em;
	background-image: url(../img/quote.svg);
	background-size: 2.35em;
	background-repeat: no-repeat;
}

.wp-block-quote cite {
	font-weight: 600;
}

.wp-block-quote cite::before {
	content: '— ';
}


/* Video Ratio Settings */


.wp-embed-aspect-16-9.wp-has-aspect-ratio {
	margin: 0;
}

.wp-block-embed__wrapper {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%; }
	
.wp-block-embed__wrapper iframe, .embed-container object, .embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%; 
}


/* Image Settings */

.is-style-icon-image img {
	height: 3em !important;
	width: auto;
}

.is-style-logo-image img {
	height: 4em !important;
	width: auto;
}


.is-style-pack-shot img {
	height: 12em !important;
	width: 100%;
	object-fit: contain;
	object-position: center;
}

.is-style-short img {
	height: 12em !important;
	width: 100%;
	object-fit: cover;
	object-position: center;
}

figure.is-style-small {
	margin-bottom: 2rem !important;
}

.is-style-small img, #editor figure.is-style-small .components-resizable-box__container img {
	height: 7em !important;
	width: auto;
}

.is-style-large img {
	height: 30rem;
	width: 100%;
	object-fit: contain;
	object-position: center;
}

.is-style-medium img {
	height: 28em !important;
	max-height: 50vh;
	width: 100%;
	object-fit: cover;
	object-position: center;
}

.is-style-tall img {
	height: 40em !important;
	width: 100%;
	object-fit: cover;
	object-position: center;
}

.is-style-slideshow {
	justify-content: center;
}

.is-style-slideshow img {
	max-width: 50em;
	max-height: calc(80vh - 8em);
	object-fit: contain;
	width: 100%;
}

/* Query Loop */

.wp-block-query {
	padding: 3rem 0;
}

.wp-block-query > *:not(.wp-block-post-template) {
	padding: 0 var(--h-spacing) !important;
}

.wp-block-query > h2 {
	margin-bottom: 0;
}

#editor .wp-block-query .wp-block-post-template, #editor .wp-block-query > *:not(.wp-block-post-template) {
	padding: 20px !important;
}

.wp-block-query .wp-block-post-template {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat( auto-fit, minmax(250px, 1fr) );
	margin: 0;
}
 @media (pointer: coarse) {
.wp-block-query .wp-block-post-template::-webkit-scrollbar {
  display: none;
}
}
.wp-block-query .wp-block-post-template .wp-block-post {
	display: flex;
    flex-direction: column;
	flex-grow:1;
    width: 100%;
    color: var(--dk-grey);
    position: relative;
    top:0;
 }
 
#editor .wp-block-query .wp-block-acf-post-content {
	 width: 100%;
 }
 
.wp-block-query .wp-block-post-template .wp-block-post .post-wrap {
	display: flex;
	flex-direction: column;
	flex-grow:1;
	justify-content: flex-start;
	text-decoration: none;
	transform: translateY(0);
	transition: transform .5s ease;
	background: #fff;
	border-radius: .25rem;
	overflow: hidden;
	box-shadow: 0 .5em .7em rgb(0 0 0 / 0.1);
 }
 @media (pointer: fine) {
.wp-block-query .wp-block-post-template .wp-block-post .post-wrap:hover {
	transform: translateY(-.5em);
 }
}

.wp-block-query .wp-block-post-template .wp-block-post a {
	color: inherit;
	text-decoration: none;
}
.wp-block-query .wp-block-post-template .wp-block-post a:hover {
	color: inherit;
	text-decoration: underline;
}

.wp-block-query .wp-block-post-template .wp-block-post .inner {
	padding: 1rem;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: .5rem;
	box-sizing: border-box;
	flex-grow: 1;
}

.wp-block-query .wp-block-post-template .wp-block-post .inner h3 {
	width: 100%;
	font-weight: 600;
	line-height: 1.1em;
	margin: -.1em 0 !important;
	font-size: .85rem;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	line-clamp: 3;
	overflow: hidden;
	padding-bottom: .1rem;
}

.wp-block-query .wp-block-post-template .wp-block-post .inner p {
	margin: 0;
	font-size: .8em;
}

.wp-block-query .wp-block-post-template .wp-block-post figure, .post-content > figure {
	margin: 0;
	width:100%;
	object-fit: cover;
	overflow: hidden;
	inset: 0;
	aspect-ratio: 16/9;
	position: relative;
}
.wp-block-query .wp-block-post-template .wp-block-post figure a {
	display: flex;
	height: 100%;
}
.wp-block-query .wp-block-post-template .wp-block-post figure a > img, .wp-block-query .wp-block-post-template .wp-block-post .wp-post-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	aspect-ratio: 16/9;
}

.wp-block-query .wp-block-post-template .inner ul.post-categories {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: .5em;
	margin: 0 3em 0 0;
	padding: 0;
}

.wp-block-query .wp-block-post-template h3 {
	color: var(--dk-blue);
}


.post-type {
	text-transform: uppercase;
	font-size: .7em;
	line-height: 1em;
	font-weight: 600;
	color: var(--blue);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .5rem;
}

.post-type::after {
	width: 1.6rem;
	height: .8rem;
	content: '';
	background-image: url(../img/blue-arrow.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center right;
}

.thumbnail-overlay {
	position: absolute;
	top:0;
	right: 0;
	bottom: 2rem;
	left: 0;
	width: 100%;
	height: 75%;
	object-fit: cover;
	object-position: center;
	z-index: 0;
}

.base-thumbnail {
	z-index: 1;
	position: relative;
	aspect-ratio: 16/9;
}

.citation {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 9;
}

.post-headshot{
	height: 45%;
	aspect-ratio: 1/1;
	border-radius: 60%;
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: .5rem;
	left: .75rem;
	z-index: 10;
	background: #fff;
	pointer-events: none;
}
.post-headshot.secondary {
	left: 27%;
}

.biobrief .post-headshot {
	background: rgb(0,182,165);
	background: linear-gradient(45deg, rgba(0,182,165,1) 10%, rgba(0,155,250,1) 90%);
}

.clinical-case .post-headshot, .biobrief .post-headshot.secondary {
	background: rgb(239,124,0);
	background-image: linear-gradient(45deg, rgba(239,124,0,1) 10%, rgba(229,0,125,1) 90%);
}

.webinar .post-headshot {
	background: rgb(255,237,0);
	background: linear-gradient(45deg, rgba(255,237,0,1) 10%, rgba(0,182,165,1) 90%);
}

.post-headshot img {
	position: absolute;
	inset: 3px;
	border-radius: 50%;
	height: calc(100% - 6px);
	width: calc(100% - 6px);
	object-fit: cover;
	object-position: center;
}

.citation div {
	height: 100%;
	padding: .5rem .75rem;
	display: flex;
	align-items: flex-end;
	z-index: 1;
}

.citation div p {
	font-size: .7rem !important;
	color: #fff;
	font-size: 1em;
	line-height: 1em;
	display: -webkit-box;
	  -webkit-line-clamp: 3;
	  -webkit-box-orient: vertical;
	  overflow: hidden;
}

.cal-icon {
	height: 2.5rem;
	width: 2.5rem;
	display: grid;
	border-radius: .25rem;
	background: #fff;
	border: solid 1px var(--dk-blue);
	overflow: hidden;
	text-align: center;
	flex-shrink: 0;
	float: left;
}

.cal-icon .month {
	background: var(--dk-blue);
	color: #fff;
	font-size: .65rem;
	font-weight: 600;
	line-height: 1rem;
	text-transform: uppercase;
}

.cal-icon .day {
	color: var(--dk-blue);
	font-size: 1.2rem;
	line-height: 1.4rem;
}

header.event-header {
	display: flex;
	gap: .75rem;
	margin-bottom: 1rem;
}

header.event-header h1 {
	margin: 0;
}
.event-type {
	margin-bottom: 1rem;
}

.event-summary {
	font-size: .85rem;
	margin-top: 1.5rem;
	color: var(--grey);
	
}

/* Wordpress Media Text Block Overrides */

#editor .wp-block-media-text .wp-block-media-text__content {
	padding: 1.5em;
}

.wp-block-media-text .wp-block-media-text__media {
	border-radius: 1rem;
	overflow: hidden;
}

.wp-block-media-text {
	gap: 1.5rem 3rem;
}
.wp-block-media-text {
	padding: 0;
}

.wp-block-media-text.has-background {
	padding: var(--md-space);
	border-radius: .25rem;
}
.wp-block-media-text__content {
	padding: 0 !important;
}
.wp-block-media-text.is-image-fill .wp-block-media-text__media {
	min-height: 20rem;
}


.woocommerce-page .learndash-wrap {
	display: none !important;
}

/* Components */

.icon-group-rows {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 1.5rem !important;
}

.icon-group-rows:not(:last-child) {
	padding-bottom: 1.5rem;
}


@media (min-width:400px) {
	.icon-group-rows {
		gap: 5rem 2rem !important;
		grid-template-columns: 1fr 1fr;
		margin-right: 1.5rem;
	}
	.icon-group-rows > div {
		position: relative;
		--yellow: #dbcd00;
	}
	
	.icon-group-rows > div:last-child::after, .icon-group-rows > div:last-child::before {
		content:unset;
		border-bottom: none !important;
	}
	.icon-group-rows > div:not(:first-child) figure {
		position: relative;
	}
	.icon-group-rows > div:not(:first-child) figure::before {
		position: absolute;
		top: calc(50% - .3rem);
		left: -.95rem;
		height: .8rem;
		width: .8rem;
		background: transparent;
		border-right: solid 3px var(--yellow);
		border-top: solid 3px var(--yellow);
		content: '';
		transform: rotate(45deg);
	}
}

@media (min-width:400px) and (max-width:749px) {
	
	
	
	.icon-group-rows > div::after {
		position: absolute;
		height: calc(100% - 1.5rem + 3px);
		width: calc(100% + 1.5rem);
		left: 50%;
		top: 3rem;
		content:'';
		border-top: solid var(--yellow) 3px;
		z-index: -1
	}
	
	.icon-group-rows > div:nth-child(even)::after {
		width: calc(110% + 1.5rem);
		right: -1.5rem;
		left: auto;
		border-top: solid var(--yellow) 3px;
		border-right: solid var(--yellow) 3px;
		border-bottom: solid var(--yellow) 3px;
	}
	
	
	.icon-group-rows > div:nth-child(odd):not(:first-child)::before {
		position: absolute;
		height: calc(6.5rem + 3px);
		width: calc(110% + 1.5rem);
		left: 50%;
		top: -3.5rem;
		content:'';
		border-top: solid var(--yellow) 3px;
		border-left: solid var(--yellow) 3px;
		border-bottom: solid var(--yellow) 3px;
		z-index: -1
	}
	
	.icon-group-rows > div:nth-child(odd):not(:first-child) figure::before {
	left: calc(50% - .3rem);
	top: -.95rem;
	transform: rotate(135deg);
}
}



@media (min-width:750px) and (max-width:1149px) {
	.icon-group-rows {
		grid-template-columns: 1fr 1fr 1fr;
	}
	.icon-group-rows > div::after {
		position: absolute;
		height: calc(100% - 1.5rem + 3px);
		width: calc(100% + 1.5rem);
		left: 50%;
		top: 3rem;
		content:'';
		border-top: solid var(--yellow) 3px;
		z-index: -1
	}
	
	.icon-group-rows > div:nth-child(3)::after, .icon-group-rows > div:nth-child(6)::after, .icon-group-rows > div:nth-child(9)::after {
		width: calc(200% + 1.5rem);
		right: -1.5rem;
		left: auto;
		border-top: solid var(--yellow) 3px;
		border-right: solid var(--yellow) 3px;
		border-bottom: solid var(--yellow) 3px;
	}
	

	
	.icon-group-rows > div:nth-child(4)::before, .icon-group-rows > div:nth-child(7)::before, .icon-group-rows > div:nth-child(10)::before {
		position: absolute;
		height: calc(6.5rem + 3px);
		width: calc(200% + 1.5rem);
		left: 50%;
		top: -3.5rem;
		content:'';
		border-top: solid var(--yellow) 3px;
		border-left: solid var(--yellow) 3px;
		border-bottom: solid var(--yellow) 3px;
		z-index: -1
	}
	
	
	.icon-group-rows > div:nth-child(4) figure::before, .icon-group-rows > div:nth-child(7) figure::before, .icon-group-rows > div:nth-child(10) figure::before {
		left: calc(50% - .3rem);
		top: -.95rem;
		transform: rotate(135deg);
	}
	
}


@media (min-width:1150px) {
	.icon-group-rows {
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	}
	
	.icon-group-rows > div::after {
		position: absolute;
		height: calc(100% - 1.5rem + 3px);
		width: calc(100% + 1.5rem);
		left: 50%;
		top: 3rem;
		content:'';
		border-top: solid var(--yellow) 3px;
		z-index: -1
	}
	
	.icon-group-rows > div:nth-child(5)::after {
		width: calc(400% + 1.5rem);
		right: -1.5rem;
		left: auto;
		border-top: solid var(--yellow) 3px;
		border-right: solid var(--yellow) 3px;
		border-bottom: solid var(--yellow) 3px;
	}
	
	.icon-group-rows > div:last-child::after {
		content:unset;
	}
	
	.icon-group-rows > div:nth-child(6)::before {
		position: absolute;
		height: calc(6.5rem + 3px);
		width: calc(400% + 1.5rem);
		left: 50%;
		top: -3.5rem;
		content:'';
		border-top: solid var(--yellow) 3px;
		border-left: solid var(--yellow) 3px;
		border-bottom: solid var(--yellow) 3px;
		z-index: -1
	}
	
	
	.icon-group-rows > div:nth-child(6) figure::before {
		left: calc(50% - .3rem);
		top: -.95rem;
		transform: rotate(135deg);
	}
	
}

.icon-group-rows .wp-block-group {
	margin-bottom: 0 !important;
	height: 100%;
}
.icon-group-rows .wp-block-group h3 {
	font-size: .85rem !important;
}
.icon-group-rows .wp-block-group p {
	font-size: .75rem !important;
}
.icon-group-rows .wp-block-group .wp-block-image {
	margin-bottom: 1rem !important;
}

.icon-group-rows .wp-block-group .wp-block-image img {
	height: 6rem !important;
	background: #fff;
	border-radius: 50%;
}


/* Product Support Page */

.browse-product-group, .discover-grid {
display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 1.5rem !important;;
}
@media (max-width: 600px) {
.browse-product-group, .discover-grid {
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}
}

.browse-product-group > div {
background: #fff;
border-radius: var(--container-radius);
padding: 0;
position:relative;
top:0;
transition: top .5s ease;
}
.browse-product-group > div:hover {
top: -.5rem;
box-shadow: 0 0.5em 0.7em rgb(0 0 0 / 0.2);
}
.browse-product-group > div::before {
content: "";
z-index: -1;
position: absolute;
inset: -2px;
border-radius: calc(var(--container-radius) + 2px);
background: linear-gradient(45deg,#ef7c00 10%,#e5007d 90%);
box-shadow: 0 0.125em 0.25em rgb(0 0 0 / 0.3);
transition: top .5s ease, box-shadow .5s ease;
}

.browse-product-group > div:hover::before {
box-shadow: 0 0.5em 0.7em rgb(0 0 0 / 0.15);
}
.browse-product-group .is-style-small figure img {
height: 6rem !important;
width: 8rem !important;
max-width: 100%;
object-fit:contain;
object-position: center;
}

.browse-product-group figure figcaption {
text-align: center;
color: var(--blue);
font-weight: 600;
}

.is-style-preheader.product-support {
margin-bottom: 0 !important;
}

.browse-product-group figure {
position: relative;
margin: 0 !important;
display:grid !important;
}

.browse-product-group figure a {
width: 100%;
box-sizing: border-box !important;
padding: 1.5rem 1.5rem 2.5rem 1.5rem !important;
display: grid !important;
place-items: center !important;
border-radius: var(--container-radius);
}

.browse-product-group figure figcaption {
position: absolute;
bottom: 1rem;
left:0;
right:0;
font-size: .85rem;
pointer-events:none;
}

p.ce-credit {
	display: inline-block;
	border-radius: 2rem;
	padding: .25rem .75rem;
}