/*Adding dynamic padding around offset card content*/
.card.card--offset .card-body{
	padding: clamp(1rem, 3vw, 4rem);
}

/*Fixing weird gap beneath images so shadow aligns nicely*/
.card__offset-container img{
	margin-bottom: -6px;
}

/* generic styling of image to round via class*/
.rounded-img img{
		border-radius: .5rem;
		box-shadow: 0 2px 6px rgba(0,0,0,.5), 0 5px 10px rgba(0,0,0,.3);
	}

/* base level for grid-intro div */
.grid-intro{
	.embedded-entity img{
		border-radius: .5rem;
		box-shadow: 0 2px 6px rgba(0,0,0,.5), 0 5px 10px rgba(0,0,0,.3);
	}
}
/* Constant Contact Embeded Form */
.ccembed div.ctct-form-embed div.ctct-form-defaults{padding: 0;}

@media(max-width:767px){
	body:not(.front_page) .layout.layout--hero .block.block--hero .block--hero__content .content-wrapper{
		    background-color: rgba(0,86,184,0.8);
		    padding: 1rem;
	}
}
.theme-class--1 .grid-description svg{
	color: var(--blue--fade);
}
@media (min-width:768px){
	.theme-class--1 .layout__region.layout__region--first{
		padding: 1rem;
		display: grid;
		grid-gap: 1rem 2rem;
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: auto;
		
		/*First position the element in it's parent */
		.grid-intro{
			grid-row: 1/2;
			grid-column: 1/-1;
		}
	}
}

/* Correcting for the background in the grid-intro for the heading only at this size*/
@media (min-width:768px) and (max-width:1049px){
	.grid-intro .block--body{
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: repeat(3, auto);
		justify-content: flex-end;
		
		.embedded-entity,h2,p{
			grid-column: 1/-1;
		}
		.embedded-entity{
			grid-row: 1/3;
			position: relative;
			z-index: 1;
		}
		h2{
			grid-row: 2/3;
			position: relative;
			z-index: 2;
			margin-bottom: 0;
      padding: .5rem 1rem;
      border-radius: 0 0 .5rem .5rem;
      background-color: oklch(0.47 0.17 257.73 / .9);
      backdrop-filter: blur(5px);
      color: white;
      transform: translateY(-5px);
		}
		p{
			grid-row: 3/4;
			margin-top: 1rem;
		}
	}
}

/* ACCORDION SECTIONS */
.theme-class--2{
	padding: 2rem 0;
	.accordion.card{
		.card-header button{
			font-weight: 600;
			font-szie: 1.333rem;
			line-height: 1.5rem;
		}
	}
	.layout__region .block--accordion:last-child{
		margin-bottom:0;
	}
	.icon{
		display: none;
		/*--size: 75px;*/
		/*width: var(--size);*/
		/*height: var(--size);*/
		/*border-radius: 50%;*/
		/*display: flex;*/
		/*align-items: center;*/
		/*justify-content: center;*/
		/*color: white;*/
		/*background-color: var(--primary);*/
	}
}
/*Sticky the intro block in desktop*/
@media (min-width: 820px){
	.theme-class--2{
		padding: 6rem 0;
	}
	.theme-class--2 .layout__region--first{ 
		.block--basic{
			position: sticky;
	    top: 25vh;
		}
	}
}

/* Constant Contact Embeded Form */
.ccembed .ctct-form-custom #first_name_field_1{float: left; width: 49%;}
.ccembed .ctct-form-custom #last_name_field_1{float: right; width: 49%;}
.ccembed .ctct-form-custom #job_title_field_1{clear: both;}


@media (min-width: 1050px){
	.theme-class--1{
		padding: 4rem 0;
	}
	
	.theme-class--1 .layout__region.layout__region--first{
		padding: 0;
		grid-gap: 2rem 4rem;
		grid-template-columns: repeat(3, 1fr);
		
		.grid-intro .block--body{
			display: grid;
			grid-template-columns: repeat(6, 1fr);
			grid-template-rows: repeat(2, auto);
			justify-content: initial;
			
			.embedded-entity{
				grid-column: 4/7;
				grid-row: 1/3;
				position: relative;
				z-index: 1;
			}
			
			h2, p{
				border-style:solid;
				border-color: #eee;
				background: #ffffff;
				background: linear-gradient(90deg, rgba(0, 85, 184, 0.15) 0%, rgba(255, 255, 255, 0.9) 100%);
				backdrop-filter: blur(4px);
				grid-column: 1/4;
				margin: 0;
				padding: 1rem 2rem;
				position: relative;
				width: 110%;
				z-index: 2;
			}
			h2{
				border-width: 1px 1px 0 1px;
				border-radius: .5rem .5rem 0 0;
				color: var(--primary);
				grid-row: 1/2;
				align-self: flex-end;
				padding-bottom: 0;
			}
			p{
				border-width: 0px 1px 1px 1px;
				border-radius: 0 0 .5rem .5rem;
				box-shadow: 0 10px 10px -8px rgba(0,0,0,.3);
				grid-row: 2/3;
				align-self: flex-start;
			}
		}
	}
	
}