/* icon_element */
.smallquarter {
	align-items:flex-end;
	background-position:center center;
	background-repeat:no-repeat;
	display:flex;
	font-weight:300;
	justify-content:center;
	text-align:center;
}
.icon-element {
	display:grid;
	grid-column-gap:4px;
	justify-content:center;
}
.firstquarter {
	align-items:flex-end;
	background-position:center center;
	background-repeat:no-repeat;
	display:flex;
	font-weight:600;
	justify-content:center;
}
.icon-element a:hover {
	opacity:.64;
	transition:opacity .24s ease-in-out;
}
#home-elements .icon-element a {
	color:#fff;
	transition:opacity .24s ease-in-out;
}
@media screen and (max-width:639px) {
	.icon-element {
		grid-row-gap:3px;
		grid-template-columns:146px 146px;
		margin-right:-12px;
		margin-left:-12px;
		padding:32px 12px;
		width:calc(100% + 24px);
	}
	.firstquarter {
		grid-column-start:1;
		grid-column-end:3;
		grid-row-start:1;
		grid-row-end:2;
		background-size:123.333px auto;
		font-size:21px;
		height:296px;
		padding:24px;
		width:296px;
	}
	.smallquarter {
		background-size:49.333px auto;
		font-size:15px;
		height:146px;
		line-height:1;
		padding:12px;
		width:146px;
	}
	.secondquarter {
		grid-column-start:2;
		grid-column-end:3;
		grid-row-start:2;
		grid-row-end:3;
	}
	.thirdquarter {
		grid-column-start:2;
		grid-column-end:3;
		grid-row-start:3;
		grid-row-end:4;
	}
	.fourthquarter {
		grid-column-start:1;
		grid-column-end:2;
		grid-row-start:3;
		grid-row-end:4;
	}
	.fifthquarter {
		grid-column-start:1;
		grid-column-end:2;
		grid-row-start:2;
		grid-row-end:3;
	}
}
@media screen and (min-width:640px) {
	.icon-element {
		grid-row-gap:4px;
	}
	.firstquarter {
		grid-column-start:1;
		grid-column-end:2;
		grid-row-start:1;
		grid-row-end:3;
		justify-content:center;
	}
	.secondquarter {
		grid-column-start:3;
		grid-column-end:4;
		grid-row-start:1;
		grid-row-end:2;
	}
	.thirdquarter {
		grid-column-start:3;
		grid-column-end:4;
		grid-row-start:2;
		grid-row-end:3;
	}
	.fourthquarter {
		grid-column-start:2;
		grid-column-end:3;
		grid-row-start:2;
		grid-row-end:3;
	}
	.fifthquarter {
		grid-column-start:2;
		grid-column-end:3;
		grid-row-start:1;
		grid-row-end:2;
	}
}
@media screen and (min-width:640px) and (max-width:959px) {
	.icon-element {
		grid-template-columns:272px 134px 134px;
		margin-right:-24px;
		margin-left:-24px;
		padding:48px;
		width:calc(100% + 48px);
	}
	.firstquarter {
		background-size:113.333px auto;
		font-size:18px;
		height:272px;
		padding:48px;
		width:272px;
	}
	.smallquarter {
		background-size:45.333px auto;
		font-size:15px;
		height:134px;
		line-height:1;
		padding:8px 4px;
		width:134px;
	}
}
@media screen and (min-width:960px) and (max-width:1439px) {
	.icon-element {
		grid-template-columns:352px 176px 176px;
		margin-right:-32px;
		margin-left:-32px;
		padding:96px 128px;
		width:100vw;
	}
	.firstquarter {
		background-size:146.666px auto;
		font-size:21px;
		height:352px;
		padding:64px;
		width:352px;
	}
	.smallquarter {
		background-size:58.666px auto;
		font-size:18px;
		height:174px;
		line-height:1;
		padding:12px 24px;
		width:174px;
	}
}
@media screen and (min-width:1440px) {
	.icon-element {
		grid-template-columns:480px 238px 238px;
		margin-right:-32px;
		margin-left:-32px;
		padding:96px 224px;
		width:calc(100% + 64px);
	}
	.firstquarter {
		background-size:200px auto;
		font-size:24px;
		height:480px;
		padding:80px;
		width:480px;
	}
	.smallquarter {
		background-size:80px auto;
		font-size:21px;
		height:238px;
		padding:16px 40px;
		width:238px;
	}
}
/* icon element */








/* contact element */
.rectanglecontent {
	display:flex;
	flex-direction:column;
	height:100%;
	justify-content:center;
	width:100%;
}
.rectanglecontent div {
	padding-right:0;
	padding-left:0;
}
.rectanglecontent strong {
	display:block;
}
.rectanglecontent a {
	color:#fff;
}
.contact-element h4 {
	font-weight:600;
}
.contact-element a {
	transition:opacity .24s ease-in-out;
}
#home-elements .contact-element a {
	color:#fff;
}
#home-elements .contact-element a:hover {
	opacity:.64;
	transition:opacity .24s ease-in-out;
}
@media screen and (max-width:639px) {
	.contact-element {
		margin-bottom:32px;
		margin-right:-12px;
		margin-left:-12px;
		overflow-x:hidden;
		padding:32px 0 26px;
		width:100vw;
	}
	.imagecontainer {
		align-items:center;
		display:flex;
		height:358.4px;
		justify-content:space-between;
	}
	.rectangle {
		background-color:var(--color-primary);
		color:#fff;
		height:409.6px;
		width:240px;
		z-index:0;
	}
	.rectanglecontent {
		font-size:18px;
		line-height:24px;
		padding-top:96px;
		padding-bottom:96px;
		padding-left:12px;
	}
	.contact-element h4 {
		font-size:24px;
		line-height:30px;
		padding-bottom:48px;
	}
	.imagecontainer img {
		display:block;
		height:358.4px;
		margin-left:-322.4px;
	}
	.rectanglecontent div {
		padding-bottom:16px;
	}
	.rectanglecontent strong {
		font-size:26px;
		letter-spacing:-1px;
		line-height:34px;
	}
	.rectangle:after {
		border:0 solid transparent;
		border-top-width:0;
		content:"";
		display:block;
		height:0;
		width:0;
		border-bottom-width:409.6px;
		border-left:102.4px solid var(--color-primary);
		margin-top:-409.6px;
		margin-left:240px;
	}
}
@media screen and (min-width:640px) {
	.phone-white,.email-white {
		background-repeat:no-repeat;
	}
	.phone-white {
		background-image:url(../../images/phone-white.svg);
	}
	.email-white {
		background-image:url(../../images/email-white.svg);
	}
}
@media screen and (min-width:640px) and (max-width:959px) {
	.contact-element {
		margin-bottom:32px;
		padding:32px 0 26px;
	}
	.imagecontainer {
		align-items:center;
		display:flex;
		height:358.4px;
		justify-content:space-between;
	}
	.rectangle {
		background-color:var(--color-primary);
		color:#fff;
		height:409.6px;
		width:240px;
		z-index:0;
	}
	.rectanglecontent {
		font-size:15.36px;
		line-height:21.76px;
		padding-top:102.4px;
		padding-bottom:102.4px;
		padding-left:25.6px;
	}
	.email-white {
		background-size:auto 28px;
		min-height:28px;
	}
	.phone-white {
		background-size:auto 32px;
		background-position:left 8px;
	}
	.contact-element h4 {
		font-size:32px;
		line-height:38px;
		padding-bottom:64px;
	}
	.imagecontainer img {
		display:block;
		height:358.4px;
		margin-left:-240px;
		object-fit:contain;
		width:calc(100vw - 48px);
	}
	.rectanglecontent div {
		padding-left:38.4px
	}
	.rectanglecontent strong {
		font-size:25.6px;
		line-height:30.72px;
	}
	.rectangle:after {
		border:0 solid transparent;
		border-top-width:0;
		content:"";
		display:block;
		height:0;
		width:0;
		border-bottom-width:409.6px;
		border-left:102.4px solid var(--color-primary);
		margin-top:-409.6px;
		margin-left:240px;
	}
	.rectanglecontent div:not(:last-child) {
		padding-bottom:16px;
	}
}
@media screen and (min-width:960px) {
	.imagecontainer {
		align-items:center;
		display:flex;
	}
	.rectangle {
		background-color:var(--color-primary);
		color:#fff;
		z-index:0;
	}
	.imagecontainer img {
		display:block;
	}
	.rectangle:after {
		border:0 solid transparent;
		border-top-width:0;
		content:"";
		display:block;
		height:0;
		width:0;
	}
}
@media screen and (min-width:960px) and (max-width:1147px) {
	.imagecontainer {
		margin-right:-80px;
		margin-left:-80px;
	}
	.imagecontainer picture {
		width:calc(100vw - 412px);
	}
}
@media screen and (min-width:1148px) and (max-width:1439px) {
	.imagecontainer {
		justify-content:center;
	}
	.imagecontainer picture {
		width:calc(100vw - 627px);
	}
}
@media screen and (min-width:960px) and (max-width:1439px) {
	.contact-element {
		margin-bottom:48px;
		padding:48px 48px 32px;
	}
	.imagecontainer {
		height:448px;
	}
	.rectangle {
		height:512px;
		width:320px;
	}
	.rectanglecontent {
		font-size:19.2px;
		line-height:34px;
		padding-top:132px;
		padding-bottom:132px;
		padding-left:32px;
	}
	.email-white {
		background-size:auto 32px;
		min-height:32px;
	}
	.phone-white {
		background-size:auto 40px;
		background-position:left 12px;
	}
	.contact-element h4 {
		font-size:36px;
		line-height:44px;
		padding-right:72px;
		padding-bottom:72px;
		padding-left:72px;
	}
	.imagecontainer picture {
		overflow-x:hidden;
	}
	.imagecontainer img {
		height:448px;
		object-fit:contain;
		width:100%;
	}
	.rectanglecontent div {
		padding-left:48px;
	}
	.rectanglecontent strong {
		font-size:32px;
		line-height:38.4px;
	}
	.rectangle:after {
		border-bottom-width:512px;
		border-left:128px solid var(--color-primary);
		margin-top:-512px;
		margin-left:320px;
	}
	.rectanglecontent div:not(:last-child) {
		padding-bottom:32px;
	}
}
@media screen and (min-width:1440px) {
	.contact-element {
		margin-bottom:64px;
		padding:64px 64px 40px;
	}
	.imagecontainer {
		height:560px;
		justify-content:space-between;
		margin-right:-96px;
		margin-left:-96px;
	}
	.rectangle {
		height:640px;
		width:512px;
	}
	.rectanglecontent {
		font-size:24px;
		line-height:34px;
		padding-top:160px;
		padding-bottom:160px;
		padding-left:40px;
	}
	.email-white {
		background-size:auto 40px;
		min-height:40px;
	}
	.phone-white {
		background-size:auto 48px;
		background-position:left 8px;
	}
	.contact-element h4 {
		font-size:40px;
		line-height:48px;
		padding-right:192px;
		padding-bottom:136px;
		padding-left:192px;
	}
	.imagecontainer img {
		height:560px;
		object-fit:contain;
		width:920px;
	}
	.rectanglecontent div {
		padding-left:56px;
	}
	.rectanglecontent strong {
		font-size:40px;
		line-height:48px;
	}
	.rectangle:after {
		border-bottom-width:640px;
		border-left:160px solid var(--color-primary);
		margin-top:-640px;
		margin-left:512px;
	}
	.rectanglecontent div:not(:last-child) {
		padding-bottom:48px;
	}
}
/* contact element */








/* tile element */
.tile {
	background-position:center center;
	background-repeat:no-repeat;
}
.overlay {
	align-items:center;
	color:#fff;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	height:100%;
	width:100%;
}
.tile-icon {
	display:inline-block;
	width:auto;
}
.cta {
	background:#fff;
	border-radius:6px;
	box-shadow:0 2px 4px rgba(0,0,0,.48);
	display:inline-block;
	text-align:center;
}
.tile h4 {
	text-align:center;
}
@media screen and (max-width:639px) {
	.tile {
		background-size:contain;
		height:calc(100vw - 24px);
		width:calc(100vw - 24px);
	}
	.tile {
		margin-bottom:8px;
	}
	.overlay {
		padding:24px;
	}
	.tile-element {
		padding-top:32px;
		padding-bottom:24px;
	}
	.tile-icon {
		height:64px;
		margin-bottom:16px;
	}
	.cta {
		padding-top:8px;
		padding-bottom:8px;
		width:200px;
	}
	.overlay h4 {
		font-size:20px;
		line-height:28px;
	}
}
@media screen and (min-width:640px) {
	.tile-element {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
}
@media screen and (min-width:640px) and (max-width:959px) {
	.tile {
		height:calc((100vw - 52px) / 2);
		max-height:453.5px;
		width:calc((100vw - 52px) / 2);
		max-width:453.5px;
	}
	.tile-element {
		padding-top:48px;
		padding-bottom:48px;
		row-gap:4px;
	}
	.overlay {
		padding:24px;
	}
	.tile-icon {
		height:64px;
		margin-bottom:16px;
	}
	.cta {
		padding-top:8px;
		padding-bottom:8px;
		width:200px;
	}
	.overlay h4 {
		font-size:24px;
		line-height:32px;
	}
}
@media screen and (min-width:960px) and (max-width:1439px) {
	.tile {
		height:calc((100vw - 70px) / 2);
		max-height:684px;
		width:calc((100vw - 70px) / 2);
		max-width:684px;
	}
	.overlay {
		padding:64px;
	}
	.tile-element {
		padding-top:96px;
		padding-bottom:96px;
		row-gap:6px;
	}
	.tile-icon {
		height:80px;
		margin-bottom:24px;
	}
	.cta {
		margin-top:16px;
		padding-top:8px;
		padding-bottom:8px;
		width:200px;
	}
	.overlay h4 {
		font-size:32px;
		line-height:43px;
	}
}
@media screen and (min-width:1440px) {
	.tile {
		height:684px;
		width:684px;
	}
	.overlay {
		padding:96px;
	}
	.tile-element {
		padding-top:96px;
		padding-bottom:96px;
		row-gap:8px;
	}
	.tile-icon {
		height:96px;
		margin-bottom:24px;
	}
	.cta {
		margin-top:24px;
		padding-top:8px;
		padding-bottom:8px;
		width:200px;
	}
	.overlay h4 {
		font-size:32px;
		line-height:43px;
	}
}
/* tile element */