/*
Theme Name: GCCFN 2025 New Custom Theme 
Author: NayDream Studios
Author URI: https://naydreamstudios.com
Version: 2.0
*/
:root {
	--edge: 10%;
 	--purple: 100,70,133;	
	--blue: 25,53,128;
	--teal: 44,197,185;
	--teal: 62,176,200;
	--turq: 25,134,185;
	--cyan: 25,141,185;
	
	--white: 255,255,255;
	--black: 29,35,39;
	--gold: 247,184,0;
	--pink: 237,21,120;
	
 	--dkpurp: 82,49,120;
	--mdpurp: 98,76,121;
 	--ltpurp: 162,146,178;
 	--palepurp: 225,219,227;
	
	--dkteal: 0,133,143;
	--mdteal: 0,133,143;
 	--ltteal: 112,183,192;
	--brightteal:12,198,239;
	 --dkblue: 57,82,131;
	--mdblue: 110,127,170;
	--ltblue: 125,155,193;
	--brightblue: 25,174,252;
	
	--dkturq: 0,85,113;
	--mdturq: 71,133,161;
	--ltturq: 212,236,247;
	
	--dkgrey: 124,134,142;
	--mdgrey: 163,169,174;
	--ltgrey: 193,198,201;
	--palegrey: 205,220,236;
	--paleblue: 147,203,254;
	--palecyan: 186,221,234;
	--neon:171,245,34;
	--green:11,243,55;
	--red:229,29,48;
	--s: 120px; 
  --c1: #ffffff;
  /*--c2: #f0f4ff; */
	--c2: #f0ffff;
  --_g: 
     var(--c1) 0%  5% ,var(--c2) 6%  15%,var(--c1) 16% 25%,var(--c2) 26% 35%,var(--c1) 36% 45%,
     var(--c2) 46% 55%,var(--c1) 56% 65%,var(--c2) 66% 75%,var(--c1) 76% 85%,var(--c2) 86% 95%,
     #0000 96%;
   --s2: 150px; 
  --c12: #395283;
  --c22: #3d578a;  
  --_g2: 
     var(--c12) 0%  5% ,var(--c22) 6%  15%,var(--c12) 16% 25%,var(--c22) 26% 35%,var(--c12) 36% 45%,
     var(--c22) 46% 55%,var(--c12) 56% 65%,var(--c22) 66% 75%,var(--c12) 76% 85%,var(--c22) 86% 95%,
     #0000 96%;
}


@font-face {
   font-family: 'Font Awesome';
   font-style: normal;
   font-weight: 900;
   font-display: block;
   src: url("./css/fonts/fontawesome/webfonts/fa-solid-900.woff2") format("woff2"),
   url("./css/fonts/fontawesome/webfonts/fa-solid-900.ttf") format("truetype");
	 }
@font-face {
   font-family: 'Font Awesome-brands';
   font-style: normal;
   font-weight: 900;
   font-display: block;
   src: url("./css/fonts/fontawesome/webfonts/fa-brands-400.woff2") format("woff2"),
   url("./css/fonts/fontawesome/webfonts/fa-brands-400.ttf") format("truetype");
	 }
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
 	}
html, body {
	position: relative;
	width: 100%;
	height: 100%;	
	margin: 0;
	padding: 0;
	overflow: visible;
	}
html {
 	height: -webkit-fill-available;
	height: 100%;
 	font-size: calc(14px + (26 - 14) * ((100vw - 300px) / (1600 - 300)));
	}

body {
 	position: relative;	
	background: #fff;	
 	text-align: center;	
	color: rgb(var(--black));
	font-family: "Montserrat", sans-serif;
 	font-weight: 400;
 	font-style: normal;
	font-size: .7rem;
	min-height: 100%;
	height: auto;
	overflow-x: hidden;
	}
* {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	}
#sb-site, .sb-site-container, .sb-slidebar {	
	margin: 0;
	padding: 0;	
	}

.svg {
   position: absolute;
   width: 0;
   height: 0;
	}
img {
	width: 100%;
	height: auto;
	max-width: 100%;
	}
img.halfimg {
	width:70%;
	margin-left:15%;
	margin-right:15%;
}
.whole {
	width:100%!important;
}
.no-btm-pad {
	padding-bottom:0!important;
}
.icon::before {
   font-family: 'Font Awesome 6 Free';
   font-weight: 900;
   -webkit-font-smoothing: antialiased;
	}
a img {
	border: none;
	}
a {	
	color: rgb(var(--purple));
	text-decoration: none;	
	opacity: 1;
	-webkit-transition: all .5s;
 	-o-transition: all .5s;
 	transition: all .5s;
	}
a:hover {
	opacity: .8;
	}
#logo a:hover,
.card-top a:hover,
#smlogo a:hover {
	opacity:1;
}
a.bottom-box:hover { 
	opacity:1;
	background:linear-gradient(to bottom, rgb(var(--dkblue)) 0%,rgb(var(--dkpurp)) 77%);
	outline:2px solid rgba(var(--white),0.7);
	outline-offset:.25rem;
}
p {
	line-height: 1.3;
	}
p.small {
	font-size: .4rem;
	font-style: italic;
	}
p.emph {
	font-size: 1rem;
	font-weight: 500;
	color: rgba(var(--cyan));
	line-height: 1.1;
	margin-bottom: 1rem;
	}
.btn {
	position: relative;
	padding: 0 45px 0 65px;
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--palegrey)) 100%) padding-box, linear-gradient(rgb(var(--cyan)) 0%, rgb(var(--teal)) 100%) border-box;
 	border-radius: 500px;
 	border: 5px solid transparent;
	color: rgb(var(--blue));
	font-family: "Montserrat", sans-serif;
 	font-weight: 500;
 	font-style: normal;
	font-size: .65rem;
	text-transform: uppercase;	
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 60px;
	max-width: 350px;
	z-index: 1;	
	cursor: pointer;
	}
aside .btn {
	max-width: none;	
	}
.btn::after {
	content: "\f105";
	position: absolute;
	top: 50%;
	right: .5rem;
	color: rgb(var(--blue));
	transform: translateY(-50%);	
	font-family: "Font Awesome";
	font-size: .8rem;
	z-index: 2;
	}
.btn::before {
	content: "";
	position: absolute;
	top: -1px;
	left: -1px;
	color: rgb(var(--white));
	background: rgb(var(--blue));
	height: 50px;
	width: 50px;
	aspect-ratio: 1/1;
	border-radius: 100%;
	border: 1px solid rgb(var(--white));
	font-family: "Font Awesome";
	z-index: 2;
	}
.btn i {
	position: absolute;
	left: 25px;
	top: 50%;
	width: auto;
	height: auto;
	transform: translate(-50%,-50%);	
	color: rgb(var(--white));
	font-size: .65rem;
	z-index: 6;
	}
.learnbtn {
	flex: 1 1 100%;
	position: relative;
	border: 1px solid rgb(var(--white));
	border-top-right-radius: .25rem;
	border-bottom-right-radius: .25rem;
	border-left: 5px solid rgb(var(--gold));
	padding: .5rem 1.25rem .5rem .5rem;	
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	z-index: 1;
	background: rgb(var(--dkpurp));
	}
aside .learnbtn {
	margin-bottom: .5rem;
	}
ul .learnbtn {
	margin-left:-.75rem;
}
.learnbtn span {
	color: rgb(var(--white));	
	line-height: 1;
	z-index: 3;
	text-align:left;	
	font-size: .8rem;	
	font-family: "Montserrat", sans-serif;
 	font-weight: 500;
 	font-style: normal;	
	text-transform: uppercase;	
	}
.learnbtn::before {
	content: "\f105";
	position: absolute;
	top: 50%;
	right: .5rem;
	color: rgb(var(--gold));
	transform: translateY(-50%);	
	font-family: "Font Awesome";
	font-size: 1rem;
	z-index: 2;
	}
#submit {
	position: relative;
	min-width: 200px;
	margin: 0 auto;
	padding: 0 .5rem;
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--palegrey)) 100%) padding-box, linear-gradient(rgb(var(--cyan)) 0%, rgb(var(--teal)) 100%) border-box;
 	border-radius: 500px;
 	border: 5px solid transparent;
	color: rgb(var(--blue));
	font-family: "Montserrat", sans-serif;
 	font-weight: 500;
 	font-style: normal;
	font-size: .5rem;
	text-transform: uppercase;	
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 60px;
	max-width: 250px;
	z-index: 1;	
	cursor: pointer;
	}
h1,h2,h3,h4,h5 {
 	font-family: "Bebas Neue", sans-serif;
 	font-weight: 500;
 	font-style: normal;
	line-height: 1!important;
	}
.tealp {
	color:rgb(var(--dkteal))!important;
	margin-top:2rem;
	margin-bottom:.5rem;
	background:rgba(var(--teal),0.3);
	padding:.75rem 1rem;
}
.purpp {
	color:rgb(var(--dkpurp))!important;
	margin-top:2rem;
	margin-bottom:.5rem;
	background:rgba(var(--dkpurp),0.3);
	padding:.75rem 1rem;
}
.bluep {
	position:relative;
	color:rgb(var(--blue))!important;
	margin-top:2rem;
	margin-bottom:.5rem;
	background:rgba(var(--dkblue),0.3);
	padding:.75rem 1rem;
}
.turqp {
	position:relative;
	color:rgb(var(--dkturq))!important;
	margin-top:2rem;
	margin-bottom:.5rem;
	background:rgba(var(--dkturq),0.3);
	padding:.75rem 1rem;
}
.benetext {
	margin-top:0;
	padding-top:0;
}
.cyp {
	position:relative;
	color:rgb(var(--dkblue))!important;
	margin-top:2rem;
	margin-bottom:.5rem;
	background:rgba(var(--cyan),0.3);
	padding:.75rem 1rem;
}
header, footer, section, nav {
	display: block;
	position: relative;
	float:left;
	clear: both;
	margin: 0;
	padding: 0;	
	height: auto;
	width: 100%;	
	z-index: 1;
	overflow: visible;
	}
.row {
	position: relative;
	float:left;
	clear: both;
	width: 100%;
	height: auto;
	margin: 1rem 0rem;	
	}
nav {
	position: fixed;	
	width: 100%;
	height: 58px;
	display: flex;
    justify-content: flex-end;
    align-items: center;
    align-content: flex-end;
	padding: 0 0 0 10rem;
	z-index: 10000;
	background: rgb(var(--white));	
	border-bottom:3px solid rgb(var(--cyan));
	}
#socials  {
	flex: 1;	
	width: auto;	
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	column-gap: .5rem;	
	}
#menu-btn{
	flex: 1;
	max-width: 75px;
	margin-left: 5px;
	}
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after,
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
    background-color: rgb(var(--dkblue));
}

#sidebox {
	position:relative;
	float:right;
	width:30%;
	padding:1rem;
	margin:0 0 1rem 1rem;
	background:rgba(var(--cyan),0.2);
	border-left:4px solid rgb(var(--brightteal));
	text-align:center;
	font-size:.6rem;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
}
a.newsbtn {
	font-size: .6rem;
	color: rgb(var(--white))!important;
	text-align: center;
	vertical-align: middle;
	margin-top: 1rem;	
	background: rgb(var(--cyan));
	text-transform: uppercase;
	padding: .25rem .5rem;
	border-radius: .15rem;
	}
a.morebtn {
	font-size: .60rem;
	text-align:left;
	vertical-align: middle;
	background: rgb(var(--cyan));
	color: rgb(var(--white));
	padding: .25rem .5rem;
	border-radius: .15rem;
	display: inline-block;
	}
#socials a.escape,
#socials a.donate {
	flex:0 0 auto;
	background: rgb(var(--pink));
	color: rgb(var(--white))!important;
	text-transform: uppercase;
	padding: 0px .5rem;
	height:26px;
	width:auto;
	border-radius: .15rem;
	z-index: 3;
	font-size: .5rem!important;
	position: relative;
	display: flex;
	flex-direction: row;
	align-items:center;
	align-self: flex-start;	
	margin-top:-3px;
	}

#socials a.donate {
	background: rgb(var(--dkteal));	
	}

body.home header {
	position: relative;
	display: block;
	float:left;
	clear: both;
	z-index: 1;	
	padding: 0;
	margin: 0;
	width: 100vw;
	height:50vw;
	overflow: visible;	
	background:linear-gradient(to right, rgb(var(--purple)) 0%,rgb(var(--dkblue)) 45%, rgb(var(--cyan)) 100%);
	margin-top:58px;
	}
body.page header,
body.single-post header,
body.single-event header {
	position: relative;
	display: block;
	float:left;
	clear: both;
	z-index: 2;	
	padding: 0;
	margin: 0;
	width: 100%;
	height: auto;
	aspect-ratio: 5/1;
	overflow: visible;
	background-image: url("img/4X/subhead.webp");
	background-size: cover;
	margin-top:58px;
	}
body.serv header,
body.emp header,
#wide header {
	position: relative;
	display: block;
	float:left;
	clear: both;
	z-index: 2;	
	padding: 0;
	margin: 0;
	width: 100%;
	height: auto;
	aspect-ratio: 4/1;
	overflow: visible;
	background-image: url("img/4X/subhead.webp");
	background-size: cover;
	margin-top:58px;
	}
#banner-head {
	position: absolute;
	bottom: 0;
	left: 0rem;
	width: 100%;
	height: auto;
	aspect-ratio: 4.5/1;
	z-index: 3;
	overflow: hidden;
	}
#banner-head img {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: auto;
	transform: translateY(-50%);
	z-index: 3;
	}
body.serv header::after,
body.emp header::after,
body.arch header::after,
#wide header::after {
	content: "";
	position: absolute;
	bottom: -3rem;
	left: var(--edge);
	right: var(--edge);
	height: 6rem;
	z-index: 3;
	background: rgb(var(--white));
	border-radius: 1rem;
	}
body.indserv header::after {
	content: "";
	position: absolute;
	bottom: -3rem;
	left: var(--edge);
	right: var(--edge);
	height: 6rem;
	z-index: 3;
	background: rgb(var(--white));
	border-radius: 1rem;
	}
body.dv header::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: var(--edge);
	width: 70%;
	height: 4rem;
	z-index: 3;
	background: rgb(var(--purple));
	border-top-left-radius: 1rem;
	border-top-right-radius: 1rem;
	}
body.sa header::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: var(--edge);
	width: 70%;
	height: 4rem;
	z-index: 3;
	background: rgb(var(--teal));
	border-top-left-radius: 1rem;
	border-top-right-radius: 1rem;
	}
body.soh header::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: var(--edge);
	width: 70%;
	height: 4rem;
	z-index: 3;
	background: rgb(var(--blue));
	border-top-left-radius: 1rem;
	border-top-right-radius: 1rem;
	}
body.ht header::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: var(--edge);
	width: 70%;
	height: 4rem;
	z-index: 3;
	background: rgb(var(--dkturq));
	border-top-left-radius: 1rem;
	border-top-right-radius: 1rem;
	}
body.single-post header::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: var(--edge);
	width: 60%;
	height: 4rem;
	z-index: 3;
	background: rgb(var(--white));
	border-top-left-radius: 1rem;
	border-top-right-radius: 1rem;
	}
body.single-event header::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: var(--edge);
	width: 70%;
	height: 4rem;
	z-index: 3;
	background: rgb(var(--dkblue));
	border-top-left-radius: 1rem;
	border-top-right-radius: 1rem;
}
#video-holder {
	position: absolute;
	right:0;
	top:0;
	width: 60%;
	height: 100%;
	height:50vw;
	-webkit-clip-path: url(#headclip);
 	clip-path: url(#headclip);
	overflow:hidden;
	z-index: 12;	
	padding: 0;
	margin: 0;		
	}
#video-holder-border {	
	display:block;
	position: absolute;
	right:7px;
	top:0;
	width: 60%;
	height:50vw;	
	overflow:hidden;
	z-index: 2;	
	padding: 0;
	margin: 0;	
	-webkit-clip-path: url(#headclip);
 	clip-path: url(#headclip);
	background-color:rgb(var(--cyan));
}

#slides-container {
	position: absolute;
	display: block;
	top: 0;
	right:0;
	width: auto;
	height:80%;	
	aspect-ratio:1.5/1;
	}
#slides-container img {
	position:absolute;
	top:45%;
	left:50%;
	height:100%;
	width:auto;
	min-width:100%;
	max-width:none;
	transform:translate(-50%,-50%);
	aspect-ratio:1.5/1;
}
#slides-container img:not(:first-of-type) {
	opacity:0;
}
#overlay {
	position: absolute;
	left: 0;
	bottom: -11%;
	height: auto;
	width: 100%;
	display: block;
	aspect-ratio: 4/1;
	overflow: visible;	
	background-image: url("img/4X/swirl-r.webp");
	background-size: cover;
	z-index: 14;
	}
#mast {
	position: absolute;
	top: 5%;
	left: 20%;
	width: calc(39% - var(--edge));
	height:65%;
	z-index: 5;	
	text-align:left;
	transform:translateX(-50%);
	display:flex;
	flex-direction:column;
	align-content:flex-start;
	align-items:flex-start;	
	}
#mast div {
	flex: 1;
	margin: auto;	
	}
#mast h1{
	position: relative;	
	font-size: 1.2rem;
	font-family: "Montserrat", sans-serif;
    font-weight: 400;
	color: rgb(var(--white));
	text-align:left;
	}
#mast h1 span {	
	display:inline-block;
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 400;
 	font-style: normal;
	font-size: 3rem;	
	text-align:left;
	line-height: 1;
	padding: 0 0 .25rem 0;	
	color: rgb(var(--white));
	border-bottom:1px solid rgba(var(--cyan),0.8);
	margin-bottom:1rem;
	}
body.home #logo {	
	flex:0;	
	z-index: 100000;
	text-align:left;
	padding-bottom:1rem;
	}
body.home #logo img {		
	width: 40%;
	height: auto;
	aspect-ratio: 1/1;		
	}
#smlogo {	
	position: absolute;
	left: 2rem;
	top:13px;
	width: 7rem;
	height: auto;
	aspect-ratio: 1/1;	
	z-index: 10;	
	}
body.home #smlogo {	
	display:none;	
	}
#feature-photo,
body.single-post #feature-photo,
body.page #feature-photo {
	position: absolute;
	left: auto;
	right:var(--edge);
	bottom: -2rem;
	width: 40%;
	height: auto;	
	overflow: visible;
	border: 5px solid;
	border-image-slice: 1;
	border-width: 10px;
 	border-image-source: linear-gradient(180deg,rgba(var(--turq),1) 0%, rgba(var(--turq),0.3) 100%);
	outline: none;
	border-radius: 0%;
	aspect-ratio: 2/1;
	z-index: 4;	
	
	}
body.dv.page #feature-photo,
body.sa.page #feature-photo,
body.ht.page #feature-photo,
body.soh.page #feature-photo {
	position: absolute;
	left: 70%;
	right:auto;
	bottom: -1.5rem;
	width: 20%;
	height: auto;
	aspect-ratio: 1/1;
	border-radius: 100%;
	border: 4px solid rgb(var(--ltteal));
	outline: 3px solid rgb(var(--white));
 	outline-offset: .7rem;
	overflow: visible;
	z-index: 4;
	}
body.sa.page #feature-photo {
	border: 4px solid rgb(var(--cyan));
	}
body.single-event #feature-photo {
	position: absolute;
	left: 70%;
	right:auto;
	bottom: -1.5rem;
	width: 20%;
	height: auto;
	aspect-ratio: 1/1;
	border-radius: 100%;
	border: 4px solid rgb(var(--white));
	outline: 3px solid rgb(var(--ltteal));
 	outline-offset: .7rem;
	overflow: hidden;
	z-index: 4;
	}
#feature-photo img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: 100%;
	min-width: 100%;
	max-width: none;
	transform: translate(-50%,-50%);
	z-index: 3;
	border-radius: 100%;
	}
body.single-post #feature-photo::before,
body.page #feature-photo::before {
	content: "";
	position: absolute;
	bottom: 25%;
	left: -10%;
	width: auto;
	height: 100%;
	aspect-ratio: 1/1;
	border-radius: 100%;
	border: 4px solid rgb(var(--teal));
	outline: 3px solid rgb(var(--cyan));
 	outline-offset: .25rem;
	z-index: 2;
	}
/*body.single-post #feature-photo img,
body.page #feature-photo img {
	border-radius: 0%;
	width: 100%;
	height: auto;
	min-width: 100%;
	max-width: none;	
	}*/
#feature-photo .boxer {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	overflow:hidden;
}
body.single-post #feature-photo img,
body.page #feature-photo img {
	border-radius: 0%;
	width: 100%;
	height:auto;		
	aspect-ratio:initial;
	}
/*body.single-post #feature-photo img {
	clip-path: inset(13.5% 0 13.5% 0);
	aspect-ratio:initial;
}*/
body.dv.page #feature-photo img,
body.sa.page #feature-photo img,
body.ht.page #feature-photo img,
body.soh.page #feature-photo img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: 100%;
	min-width: 100%;
	max-width: none;
	transform: translate(-50%,-50%);
	z-index: 3;
	border-radius: 100%;	
	}
body.dv.page #feature-photo::before,
body.sa.page #feature-photo::before,
body.ht.page #feature-photo::before,
body.soh.page #feature-photo::before {
	content: "";
	display: none;
	z-index: 2;
	}
body.single-post.eventpage #feature-photo img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: 100%;
	min-width: 100%;
	max-width: none;
	transform: translate(-50%,-50%);
	z-index: 3;
	border-radius: 100%;
	clip-path:none;
	}
#main {
	background: rgb(var(--white));
	padding: 1rem var(--edge) 3rem;
	z-index: 1;
	display: flex;
	align-items: stretch;
	flex-direction: row;
	justify-content: flex-start;
	gap: 1.5rem;
	}
body.serv #main,
body.emp #main,
body.arch #main,
#wide #main {
	padding: 5rem var(--edge) 4rem;
	}
#wide .heateor_sss_sharing_container {
	display:none;
}
#topmain {	
	padding: 3rem var(--edge) 1rem;
	display: flex;
	align-items: stretch;
	flex-direction: row;
	justify-content: flex-start;
	gap: 1.5rem;
	}
body.ht #topmain {
	background: rgb(var(--dkturq));
	color: rgb(var(--white));
	}
body.dv #topmain {
	background: rgb(var(--purple));
	color: rgb(var(--white));
	}
body.sa #topmain {
	background: rgb(var(--teal));
	color: rgb(var(--white));
	}
body.soh #topmain {
	background: rgb(var(--blue));
	color: rgb(var(--white));
	}
#main aside {
	flex: 1 1 35%;
	max-width: 35%;
	border-right: 4px solid rgba(var(--blue),0.2);
	padding: 0rem 1rem 1rem 0;
	text-align:left;
	color: rgb(var(--black));
	margin-top: 0;
	font-size: 1rem;
	}
#main aside ul {
	margin-bottom: 1rem;
	}
#main aside div.cont {
	border: 1px solid rgba(var(--white),0.7);
	background: linear-gradient(to bottom, rgb(var(--turq)) 0%, rgb(var(--teal)) 70%, rgb(var(--dkblue)) 100%);
	padding: .5rem;
	text-align:left;
	color: rgb(var(--white));
	margin-top: 1rem;
	border-radius: .25rem;
	font-size: .75rem;
	}
#main aside h2 {
	font-size: 1.7rem;
	color: rgba(var(--blue),0.7);
	font-family: "Bebas Neue", sans-serif;
	margin-left: -.75rem;
	}
#main aside h3 {
	font-size: 1.4rem;
	color: rgb(var(--gold));
	}
aside .btn {
	margin-top: .5rem;
	margin-left: auto;
	margin-right: auto;
	}
.withaside aside .btn {
	margin-left: 0;
	}
#side-vid {
	flex: 1 1 27%;
	max-width: 27%;
	position: relative;
	aspect-ratio: 16/9;
	display: block;
	margin-bottom: 1.5rem;
	overflow:hidden;
	border:3px solid rgb(var(--white));
	outline: 2px solid rgb(var(--ltteal));
 	outline-offset: .25rem;
	}
.small-vid {
	position: relative;
	float:left;
	clear:both;
	width:100%;
	aspect-ratio: 16/9;
	display: block;
	margin-top: 1rem;
	margin-bottom: 1rem;
	}
#side-vid video,
.small-vid iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;	
	aspect-ratio: 16/9;
	}
#main-content {
	flex: 1;
	text-align:left;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	gap: 1.5rem;
	}
#main-post-content {	
	text-align:left;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	row-gap: 1.5rem;
	padding: 4rem var(--edge) 1rem var(--edge);
	overflow: hidden;
	}
#main-post-content h2,
#main-content h2 {
	font-size: 1.6rem;
	color: rgb(var(--cyan));
	font-family: "Bebas Neue", sans-serif;
	}
.content {
	flex: 1;
	text-align:left;	
	}
.content:first-of-type {
	padding-bottom: 1rem;
	}
.content h3,
.full-bkg h3,
.purplebox h3 {
	font-size: .85rem;
	color: rgb(var(--gold));
	font-family: "Montserrat", sans-serif;
 	font-weight: 400;
 	font-style: normal;	
	text-transform: uppercase;	
	}
.withaside {
	position: relative;
	display: flex;
	flex-direction: row;	
	align-content: space-between;
	justify-content: space-between;
	align-items: stretch;	
	margin-bottom: 1rem;
	}
.withaside aside {
	flex: 1 1 24%;	
	z-index: 3;
	position: relative;	
	padding: .5rem .5rem 1rem 0rem;	
	order: 1;	
	color: rgb(var(--blue));
	border-right: 3px solid rgb(var(--brightteal));
	font-size: 1rem;
	}
.withaside .textcol {
	flex: 1 1 75%;
	order: 2;
	padding-left: 1rem;
	}
.bigside {
	flex: 1 1 75%;
	padding-right: 1rem;
}
.lgside {
	flex:1 1 auto;
	display:flex;
	flex-direction:column;
	align-content:space-between;
	padding-right:1rem;
	}
.tealbkg {
	background:rgb(var(--dkteal));
	color:rgb(var(--white));
}
.purpbkg {
	background:rgb(var(--dkpurp));
	color:rgb(var(--white));
}

.smallside {
	flex: 1 1 25%;
	padding:1rem;
}
.smallside.iframed {
	width:420px!important;
	min-width:420px!important;
	max-width:420px!important;
	padding:.5rem;
	overflow:hidden;
}
.iframed div {
	max-width:100%!important;
	width:100%!important;
	}
.smallside h4 {
	font-size:1.2rem;
	color:rgb(var(--gold));
}
.smallside a {
	color:rgb(var(--paleblue));
}
.smallside.nobkg {
	flex:1 1 33%;
	background:rgb(var(--white));
	color:rgb(var(--dkpurp));
	padding:0;
}
.fullphoto {
	flex:1 1 100%;
	min-width:100%;
	height:auto;
	aspect-ratio:3/1;
	position:relative;
	margin-top:1rem;
	overflow:hidden;
}
.fullphoto img {
	position:absolute;
	top:50%;
	left:0;
	width:100%;
	height:auto;
	transform:translateY(-50%);
}
.padded {
	padding:1rem;
}
.calloutbx {
	float:left;
	width:25%;
	height:auto;
	min-height:200px;
	background:rgba(var(--cyan),0.2);
	border-right:5px solid rgb(var(--brightblue));;
	padding:1rem;
	margin:1rem 1rem 1rem 0rem;
	text-align:center;
	display:flex;
	align-items:center;
	justify-content:center;
}
.thirdcol {
	flex: 0 0 34%;	
	z-index: 3;
	position: relative;	
	text-align:left;
	padding-bottom: 1rem;
	padding-right: 1rem;
	}
.thirdcol img {
	margin-bottom:.5rem;
	}
.thirdcol-r {
	flex: 0 0 34%;	
	z-index: 3;
	position: relative;	
	text-align:left;
	padding-bottom: 1rem;
	padding-left: 1rem;
	}
.highlighted {
	position: relative;
	display: block;
	background: rgba(var(--cyan),0.1);
	padding: .5rem;
	}
.program {
	position: relative;
	display: block;
	background: rgba(var(--dkblue),0.3);
	padding: .5rem;
	border:1px solid rgba(var(--white), 0.3);
	}
.highlighted h3 {
	margin-bottom: .75rem;
	font-weight: 500;
	}
.highlighted h4 {
	font-size: 1rem;
	color: rgb(var(--cyan));
	}
.highlighted h4::before {
	content: "\f0da";
	font-family: "Font Awesome";
	color: rgb(var(--gold));
	position: relative;
	margin-right: .25rem;
	}
.restcol {
	flex: 1 1 66%;	
	background: rgb(var(--dkteal));
	}
.restcol-l {
	flex: 1 1 66%;	
	background: rgb(var(--dkblue));
	padding: .5rem;
	}
.withaside aside p {
	font-size: .7rem;
	}
.withaside aside ul {
	margin-bottom: 1rem;
	}
.fullblue {
	position: relative;
	float:left;
	width: 100%;
	text-align:left;
	background: rgba(var(--cyan),0.1);
	padding: 0 1rem 0 0;
	margin-top: 1rem;
	margin-bottom: 1rem;
	color: rgb(var(--blue));
	font-size: .85rem;
	}
.fullblue p {
	margin: 1rem;
	}
.float-left {
	position: relative;
	float:left;	
	margin: 0 1rem 0 0;
	}
.float-right {
	position: relative;
	float:right;	
	margin: 0 0 0 1rem;
	}
.quarter {
	flex:1 1 25%;
}
.threequarter {
	flex:1 1 75%;
}
.third {
	width: 33%;
	}
.forty {
	width: 40%;
	}
.top-up {
	margin-top: -2rem;
	}
.apart {
	position: relative;
	width: 100%;
	margin-top: 1rem;
	padding: 0;	
	}
.apart img {
	width: 100%;
	height: auto;
	max-width: 100%;
	margin-bottom: .5rem;
	}
.apart .highlighted {
	font-size: .6rem;
	}
.indent {
	display: block;
	margin-left: .75rem;
	}
.marg-top {
	margin-top:1rem!important;
}
.marg-bottom {
	margin-bottom:1rem!important;
}
.circle-it {
	aspect-ratio: 1/1;
	border-radius: 100%;
	border: 4px solid rgb(var(--white));
	outline: 3px solid rgb(var(--cyan));
 	outline-offset: .25rem;
	}
.circlethis {
	position: relative;
	width: 22%;
	aspect-ratio: 1/1;
	border-radius: 100%;
	border: 4px solid rgb(var(--cyan));
	outline: 3px solid rgb(var(--ltteal));
 	outline-offset: .25rem;
	overflow: hidden;
	}
.med {
	width: 28%;
	}
.larger {
	width: 35%;
	}
.largerer {
	width: 42%;
	}
.cycle {
	width:110%;
	margin:-2rem 0 2rem -2rem;
	max-width:none;
	}
.circlethis img {
	position: absolute;
	top: 50%;
	left: 50%;
	height: 100%;
	min-width: 100%;
	max-width: none;
	transform: translate(-50%,-50%);
	border-radius: 100%;
	}
.offset-left {
	margin-top: 2rem;
	margin-top: 0;
	margin-left: -3rem;
	margin-bottom: -2rem;
	z-index: 20;
	}
.offset-right {
	margin: -3rem -3rem 1rem 1rem;
	z-index: 20;
	}
.offset-top {
	margin: -3rem -1rem 1rem 1rem;
	z-index: 20;
	}
.hang-left {
	margin:1.25rem 1.25rem 1.25rem 0rem;
}
.hang-right {
	margin:1.25rem 0rem 1.25rem 1.25rem;
}
.pad-left {
	padding-left:26%;
}
.pad-one {
	padding-left:1rem;
}
.pad-left-more {
	padding-left:30%;
}
.marg-left {
	float:left;
	clear:both;
	margin-left:30%;
}
.small-left {
	margin-left:-.5rem;
}
.big-left {
	margin-left:-1.5rem;
}
.small-right {
	margin-right:-.5rem;
}
.big-right {
	margin-right:-1.5rem;
}
.no-top {
	margin-top:0;
}
.no-btm {
	margin-bottom:0;
}
.no-btmpad {
	padding-bottom:0!important;
}
#main-post-content p,
#wide #main-content p {
	margin-bottom: .5rem;
	}
.full-bkg {
	flex: 1;
	width: calc(100% + var(--edge) + var(--edge) + 3rem);
	margin-left: calc(-1 * (var(--edge) + 1.5rem));	
	background: rgb(var(--dkblue));
	color: rgb(var(--white));
	position: relative;
	font-size: .6rem;
	}
.full-bkg ul li {
	font-size: .6rem;
	}
.full-bkg ul {
	margin-bottom: 1rem;
	}
.preschool {
	display: flex;
	flex-direction: row;	
	}
.preschool ul {
	margin-top: 0;
	padding-top: 0;
	}
.purplebox {
	position: relative;
	padding: 0;
	background: rgb(var(--mdpurp));	
	display: flex;
	flex-direction: row;	
	}
.cyanbox {
	background: rgb(var(--cyan));	
	}
.purplebox h2,
.restcol h2,
.restcol p,
.restcol-l h2,
.restcol-l p {
	color: rgb(var(--white))!important;
	}
.restcol-l img {
	width: 100%;
	display: block;
	margin: .25rem 0 1rem 0;
	}
.sohthird {
	flex:1 1 30%;
}
.sohthird img{
	width:100%;
	aspect-ratio:1/1;
	margin:1rem 1rem 0 -1rem;
}
.quarter img.left {
	width:80%;
	float:right;
	aspect-ratio:1/1;
}
.quarter img.right {
	width:80%;
	aspect-ratio:1/1;
	margin:0 -1rem 0 0;
}
.quarter img.smleft {
	width:65%;
	float:left;
	aspect-ratio:1/1;
	margin-top:1rem;
}
.sohrest {
	flex:1 1 70%;
}
.houses {
	flex: 1 1 50%;
	padding: 2rem 1rem 2rem var(--edge);
	display: flex;
	flex-direction: column;	
	}
.jh {
	flex: 1 1 50%;
	max-width: 50%;	
	padding: 2rem var(--edge) 2rem 1rem;
	border-left: 4px solid rgb(var(--brightteal));
	background: rgba(var(--cyan),0.2);	
	display: flex;
	flex-direction: column;	
	}
.hthalves {
	position: relative;
	width: 100%;
	height: auto;
	display: flex;
	flex-direction: row;
	flex-wrap:nowrap;
	gap: .5rem;
	justify-content: space-between;
	}
.hthalf {
	flex: 1 1 48%;
	max-width: 48%;	
}
.hthalf:nth-of-type(2) {
	background:rgb(var(--dkblue));
	color:rgb(var(--white));
	padding:1rem;
}
.hthalf:nth-of-type(1) h2 {
	margin-top:0 !important;
}
.hthalf:nth-of-type(2) h2 {
	color:rgb(var(--gold))!important;
}
.hthalf a {
	color:rgb(var(--paleblue))!important;
}
.houserow {
	flex: 1;
	width: 100%;	
	}
.houserow img {
	float:left;
	margin: 0 .5rem .5rem 0;
	height: auto;
	aspect-ratio: 1/1;
	width: 25%;
	}
.house {
	flex: 1;
	display: flex;
	flex-direction: row;
	gap: .5rem;
	}
.houseimg {
	flex: 1 1 25%;
	min-width: 25%;
	}
.house img {	
	width: 100%;
	height: auto;
	aspect-ratio: 1/1;
	}
.houserow h3 {
	margin-bottom: .25rem;
	}
.schoolpic {
	position: absolute;
	top: 0;
	left: 0;
	width: 35%;
	height: auto;
	aspect-ratio: 1.4846416382/1;
	overflow: hidden;
	border-top-right-radius: 100%;
	border-bottom-right-radius: 100%;
	border: 4px solid rgb(var(--white));
	outline: 3px solid rgb(var(--cyan));
 	outline-offset: .7rem;
	margin-top: 1rem;
	margin-bottom: -.8rem;
	}
.full-bkg a {
	color: rgb(var(--paleblue));
	}
.full-bkg a.btn {
	width: 100%;
	max-width: none;
	color: rgb(var(--blue));
	line-height: 1;
	}
.schoolpic img {
	position: absolute;
	top: 50%;
	left: 50%;
	height: 100%;
	min-width: 100%;
	max-width: none;
	transform: translate(-50%,-50%);
	border-top-right-radius: 100%;
	border-bottom-right-radius: 100%;
	}
.halves {
	position: relative;
	float:left;
	clear: both;
	width: 100%;
	height: auto;
	display: flex;
	flex-direction: row;
	gap: .5rem;
	justify-content: flex-start;
	}
.meetings {
	position: relative;
	float:left;
	clear: both;
	width: 100%;
	height: auto;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	padding:1rem 0;
	gap:1rem;
}
.fold {
	gap:10px!important;
}
.smquarter {
	flex:1;
	flex-basis:100%;
	border-bottom:4px solid rgb(var(--cyan));
	padding:0rem .75rem 1.5rem;
	background:rgba(var(--cyan),0.1);
	margin-top:2rem;
}
.smquarter h2 {	
	color:rgb(var(--dkblue))!important;
	margin-top:-1.5rem;
	font-size:1.25rem;
	padding:.75rem 0rem;
}
.smquarter  h2 i {
	color:rgb(var(--brightblue));
	margin-right:.5rem;
}
.smquarter ul {
	margin-top:0;
}
.full-box {
	position:relative;
	float:left;
	clear:both;
	margin:0;
	width:100%;
	padding:0;
}
.half {
	flex: 1 1 50%;	
	}
.jphalf1 {
	padding: 2rem 1rem 2rem calc(var(--edge) + .25rem);	
	}
.jphalf2 {
	padding: 2rem calc(var(--edge) + .25rem) 2rem 1rem;
	}
.side {
	background: rgba(var(--teal),0.1);
	border-top: 3px solid rgb(var(--brightteal));
	border-left: 3px solid rgb(var(--brightteal));
	padding: .5rem;
	}
.side ul li {
	font-size: .65rem;
	}

#page-mast {
	position: absolute;
	bottom: 0;
	left: var(--edge);
	width: 40%;
	height: 3rem;
	color: rgb(var(--white));	
	z-index: 4;
	text-align:left;	
	padding: 0 1rem;
	}
body.single-event #page-mast,
body.dv.page #page-mast,
body.sa.page #page-mast,
body.ht.page #page-mast,
body.soh.page #page-mast {	
	width: 60%;	
	}
#page-mast h1 {
	margin: 0;
	padding: 0;
	font-size: 3rem;
	}
body.single-post #page-mast h1 {
	font-size: 1.7rem;
	color: rgb(var(--blue));
	line-height: 1;
	height: auto;
	min-height: 3rem;
	text-align:left;	
	}
#subpage-mast {
	position: absolute;
	bottom: -3rem;
	right: calc(var(--edge) + 1rem);	
	left: calc(var(--edge) + 1rem);
	height: 6rem;
	color: rgb(var(--white));
	font-size: 3rem;
	z-index: 4;
	display: flex;
	flex-direction: row;
	gap: 1.5rem;
	justify-content: space-between;
	align-items: center;
	border-bottom: 2px solid rgb(var(--ltteal));
	}
#subpage-mast div {
	flex: 1 1 50%;
	text-align:left;	
	}
#subpage-mast div:last-of-type {
	flex: 1 1 auto;
	text-align:left;
	}
#subpage-mast h1 {
	color: rgb(var(--cyan));
	color: rgb(var(--purple));
	font-size: 3rem;
	line-height: 1;
	padding: 0;
	margin: 0;
	}
#subpage-mast p {
	color: rgb(var(--blue));
	font-size: .8rem;
	padding: 0;
	margin: 0;
	}
#mission h1 {	
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 400;
 	font-style: normal;
	font-size: 2rem;	
	text-align:left;
	line-height: 1;
	padding: 0;	
	color: rgb(var(--blue));
	}
#mission {	
	position: relative;	
	float:left;
	clear: both;	
	width: 100%;
	height: auto;
	min-height: 38vh;
	color: rgb(var(--blue));
	font-size: .9rem;
	line-height: 1.4;	
	z-index: 18;
	text-align:left;	
	padding: 1.5rem var(--edge) 1rem;
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	}

#cluster1 {
	flex:1 1 37%;		
	width: 37%;
	position:relative;
	}
#statement {
	position:relative;
	flex:1 1 61%;
	display: flex;
	flex-direction: column;
}
#statement h3 {
	color:rgb(var(--teal));
	font-size:1.4rem;
	margin-bottom:.25rem;
}
#cluster1 img {
	position:absolute;
	top:-2rem;
	left:-10%;
	width:100%;
	height:auto;
	aspect-ratio: .885/1;
}
#render {
	position:relative;
	width:100%;
	height:auto;
	min-height:400px;
	float:left;
	clear:both;
	aspect-ratio:3.5/1;
	background:url('img/4X/fjc-render.webp');
	background-size:cover;
	background-position:right top;
	padding:1rem var(--edge);
	display:flex;
	align-items:center;
	align-content:center;
	justify-content:flex-start;
}
#render-overlay {
	flex:0 1 50%;
	position:relative;
	padding:2rem 1rem 1rem;
	background:rgba(var(--white),0.8);
	font-size: .75rem;
	line-height: 1.3;	
	font-weight:500;
	
	text-align:left;
}
#render-overlay h1 {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:auto;
	color:rgb(var(--white));
	font-size:1.4rem;
	margin-bottom:.25rem;
	background:rgb(var(--teal));
	padding:.25rem 1rem;
}
#demo-div {
	background:
    radial-gradient(50% 50% at 100% 0,var(--_g)),
    radial-gradient(50% 50% at 0 100%,var(--_g)),
    radial-gradient(50% 50%,var(--_g)),
    radial-gradient(50% 50%,var(--_g)) calc(var(--s)/2) calc(var(--s)/2)
    var(--c1);
  background-size: var(--s) var(--s);
	padding: 5rem var(--edge);
	}
#card-holder,
#serv-holder,
#dv-holder {
	flex: 1;
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-between;
	}
#serv-holder {	
	row-gap: 2.25rem;
	}
body.emp #serv-holder {
	flex-wrap: nowrap;
	}
#demos,
#fdemos{	
	display: flex;
	flex-direction: row;
    justify-content: space-between;	
    align-items: stretch;
	gap: 1rem;
	}
#demos .card,
#fdemos .card {
	flex: 1 1 25%;
	z-index: 3;
	position: relative;	
	}
#card-holder .card {
	flex: 1 1 48%;
	z-index: 3;
	position: relative;
	max-width: 48%;
	}
#serv-holder .card {
	flex: 1 1 23%;	
	z-index: 3;
	position: relative;	
	}
#dv-holder .card {
	flex: 1 1 30%;	
	z-index: 3;
	position: relative;	
	margin-top: 1.5rem;
	}
.servwrapper {
	flex: 1;
	display: flex;
	gap: 2rem;
	flex-wrap: nowrap;
	flex-direction: row;
	justify-content: space-between;
    align-items:stretch;	
	margin-bottom:.5rem;
}
.swraphalf {
	flex:1 1 50%;
	flex-basis:100%;
	display:flex;
	flex-direction: column;
	align-content:space-between;
	row-gap:2rem;		
}
.swraphalf .card {
	flex: 1 1 100%;	
	z-index: 3;
	position: relative;		
	background:rgb(var(--palecyan));
	padding:0 1rem;
}
.swraphalf .sbox {
	margin-top:1rem;
}

.swraphalf .cardtop {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:1.5rem;
	background:rgba(var(--purple),1);
	z-index: 3;
}
.swraphalf .ebtn {
	position:absolute;
	bottom:0;
	left:0;
	width:calc(100% - .5rem);
	max-width:100%;
	height:2rem;
	background:rgba(var(--cyan),0.6);
	border-radius:0;
	color:rgb(var(--white));
	padding-left:1rem;
	display:flex;
	align-items:center;
	text-transform:uppercase;
}
.swraphalf .ebtn i {
	content:"";
	position:absolute;
	right:-1rem;
	bottom:-.5rem;
	width:3rem;
	height:3rem;
	background:rgb(var(--white));
	display:flex;
	justify-content:center;
	align-items:center;
	border: 1px solid rgb(var(--ltgrey));
	color: rgb(var(--teal));
	border-radius:100%;
}
#main-content .swraphalf .sbox h2 {
	color:rgb(var(--purple));
	margin-top:-.5rem;
	font-size:1.3rem;	
	border-bottom:1px solid rgb(var(--brightblue));
	padding-bottom:.25rem;
	display:inline-block;
	width:auto;
	position:relative;
}

.swraphalf .sbox h2 i {
	color:rgb(var(--brightblue));
	margin-right:.5rem;
	z-index: 14;
	
}
#main-content .swraphalf .sbox h2::before {
	content:"";
	position:absolute;
	top:-1rem;
	left:-1rem;
	display:inline-block;
	width:calc(100% + 2.25rem);
	height:1.75rem;
	background:rgb(var(--palecyan));
	border-top-left-radius:.25rem;
	border-top-right-radius:.25rem;
	z-index:-1;
}
.ulcols {
	position:relative;
	width:100%;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	align-content:flex-start;
}
.ulcolumn {
	flex:1 1 50%;
	padding-right:3px;
}
#serv-holder .exp,
.swraphalf .exp {
	flex: 1 1 100%;	
	z-index: 3;
	position: relative;	
	background: rgb(var(--purple));
	}
#serv-holder .positions {
	flex: 1 1 74%;
	z-index: 3;
	position: relative;	
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: flex-start;
	align-content:flex-start;
	flex-wrap: wrap;
	column-gap: .5rem;
	row-gap:1rem;
	order: 2;
	}
.marg-top {
	margin-top:1rem;
	
}
#serv-holder .position {
	flex: 0 1 48%;	
	min-width: 33%;
	max-width: 50%;	
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--blue),1) 0%, rgba(var(--blue),0.3) 100%) border-box;
 	border: 10px solid transparent;
	color: rgb(var(--white));
	position: relative;	
	overflow: hidden;
	}
#serv-holder .position a {
	position:relative;
	width:100%;
	height:100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;	
	justify-content: flex-start;
	align-items: center;
	gap: .5rem;
	color: rgb(var(--blue));
	}
#serv-holder .position a p {
	flex: 0 1 50%;
	position: relative;
	text-transform: uppercase;
	font-weight: 500;
	font-size: .7rem;
	margin: 0;
	padding: 0;
	padding-right: 1rem;
	line-height: normal;
	color: rgb(var(--blue));
	}
#serv-holder .position a p span.second {
	color: rgb(var(--teal));
	font-size: .5rem;
	line-height: 1;
	text-transform: none;
	}
/*#serv-holder .position a img.feature {
	flex: 1 1 50%;	
	max-width: 150px;
	height: auto;
	aspect-ratio: 1/1;
	border-right: 4px solid rgb(var(--brightteal));
	}*/
#serv-holder .pos-thumb {
	flex: 1 1 50%;
	position:relative;
	max-width: 150px;
	height: auto;
	aspect-ratio: 1/1;
	border-right: 4px solid rgb(var(--brightteal));
	overflow:hidden;
}
#serv-holder .pos-thumb img {
	position:absolute;
	top:0;
	left:50%;
	height:100%;
	width:auto;
	max-width:none;
	transform:translateX(-50%);
}
#serv-holder .position::after {
	content: "\f105";
	position: absolute;
	top: 50%;
	right: .5rem;
	color: rgb(var(--blue));
	transform: translateY(-50%);	
	font-family: "Font Awesome";
	font-size: .8rem;
	z-index: 2;
	}
#serv-holder .last,
.swraphalf .exp.last {	
	background: rgb(var(--dkblue))!important;
	position: relative;
	}
#serv-holder .exp img,
.swraphalf .exp img {
	position: relative;
	float:right;
	top: -.5rem;
	right: -.5rem;
	width: 40%;
	height: auto;
	aspect-ratio: 1/1;
	border-radius: 100%;
	border: 4px solid rgb(var(--white));
	outline: 3px solid rgb(var(--ltteal));
	outline-offset: .7rem;	
	margin: 1rem;	
	}
#benefits {
	flex: 1 1 24%;	
	z-index: 3;
	position: relative;	
	padding: 0rem .5rem .5rem 0rem;	
	order: 1;	
	color: rgb(var(--blue));
	background: rgb(var(--white));
	border-right: 3px solid rgb(var(--brightteal));
	font-size: 1rem;
	}
#benefits hr {
	background: rgba(var(--white),0.3);
	border: 1px solid rgba(var(--white),0.3);
	display: block;
	position: relative;
	width: 80%;
	margin: .5rem auto;
	}
#benefits .card-text {
	padding-top:0 !important;
	margin-top:0 !important;
}
#benefits img {
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	height: 100%;
	display: none;
	}
#benefits h2 {
	font-size: 1.2rem;
	font-family: "Bebas Neue", sans-serif;
	text-align:left;
	color: rgb(var(--purple));
	margin-top:1rem;
	}
#benefits a {
	color: rgb(var(--teal));
	}
#serv-holder .btn-holder img,
.swraphalf .btn-holder img {
	position: absolute;	
	float: none;
	top: 0rem;
	right: auto;
	bottom: auto;
	left: -1.5rem;
	width: 40%;
	height: auto;
	aspect-ratio: 1/1;
	border-radius: 100%;
	border: 4px solid rgb(var(--white));
	outline: 3px solid rgb(var(--ltteal));
 	outline-offset: .7rem;	
	margin: 0 1.25rem -1rem 0;
	}
#serv-holder .btn,
.swraphalf .btn {
	margin-top: .5rem;
	max-width: none;
	}
#serv-holder .card {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--blue),1) 0%, rgba(var(--blue),0.4) 100%) border-box; 	
 	border: 10px solid transparent;
	}
#dv,
#dv-holder .card {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--purple),1) 0%, rgba(var(--purple),0.4) 100%) border-box; 	
 	border: 10px solid transparent;
	overflow: visible;
	}
#sa {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--teal),1) 0%, rgba(var(--teal),0.4) 100%) border-box; 	
 	border: 10px solid transparent;
	}
#ht {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--blue),1) 0%, rgba(var(--blue),0.4) 100%) border-box; 	
 	border: 10px solid transparent;
	}
#soh,
#pre-1,
#pre-2,
#pre-3,
#pre-4 {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--turq),1) 0%, rgba(var(--turq),0.4) 100%) border-box; 	
 	border: 10px solid transparent;
	}
body.dv #card-holder .card,
#dv-1,
#dv-2,
#dv-3,
#dv-4,
#dv-5 {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--purple),0.9) 0%, rgba(var(--purple),0.4) 100%) border-box; 	
 	border: 10px solid transparent;
	}
body.sa #card-holder .card,
.teal {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--teal),0.9) 0%, rgba(var(--teal),0.4) 100%) border-box!important;
 	border: 10px solid transparent;
	}
body.soh #card-holder .card {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--blue),0.9) 0%, rgba(var(--blue),0.4) 100%) border-box; 	
 	border: 10px solid transparent;
	}
body.ht #card-holder .card {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--turq),0.9) 0%, rgba(var(--turq),0.4) 100%) border-box; 	
 	border: 10px solid transparent;	
	}
#demos .card-top,
#fdemos .card-top {	
	position: relative;	
	width: 100%;
	height: auto;	
	aspect-ratio: 2/1;	
	background-position: center center;
	background-size: 110% 110%;
	background-repeat: no-repeat;
	transition: background-size 0.5s ease;	
	-webkit-clip-path: url(#myclip21);
 	clip-path: url(#myclip21);
	overflow: hidden;
	z-index: 5;
	}
#card-holder .card-top {	
	position: relative;	
	width: 100%;
	height: auto;	
	aspect-ratio: 3/2;	
	-webkit-clip-path: url(#myclip32);
 	clip-path: url(#myclip32);
	overflow: hidden;
	z-index: 5;
	}
#serv-holder .card-top {	
	position: relative;	
	width: 100%;
	height: auto;	
	padding-top: .5rem;
	aspect-ratio: 3/1;	
	-webkit-clip-path: url(#myclip32);
 	clip-path: url(#myclip32);
	overflow: hidden;
	background: rgb(var(--cyan));
	z-index: 57;
	display: flex;
	justify-content: center;
	align-items: center;
	}
#dv-holder .card-top {	
	position: relative;	
	width: 100%;
	height: auto;	
	margin-top: 0rem;
	padding-top: 1.5rem;
	aspect-ratio: 2/1;	
	-webkit-clip-path: url(#myclip21);
 	clip-path: url(#myclip21);
	overflow: visible;
	background: rgb(var(--purple));
	z-index: 5;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align:center;
	}
#card-holder .card-top img {	
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	max-width: none;
	min-width: 100%;
	height: 110%;
	aspect-ratio: 3/2;
	transform: translate(-50%,-50%);
	transition: all 0.5s ease;	
	}
#card-holder .card:hover .card-top img {	
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: 100%;
	aspect-ratio: 3/2;
	transition: all 0.5s ease;
	transform: translate(-50%,-50%);
	}	
#dv:hover .card-top,
#sa:hover .card-top,
#soh:hover .card-top,
#ht:hover .card-top,
#pre-1:hover .card-top,
#pre-2:hover .card-top,
#pre-3:hover .card-top,
#pre-4:hover .card-top,
#dv-1:hover .card-top,
#dv-2:hover .card-top,
#dv-3:hover .card-top,
#dv-4:hover .card-top,
#dv-5:hover .card-top{
	background-size: 100% 100%;	
	transition: background-size 0.5s ease;
	}
#dv .card-top {
	background-image: url("img/2X/dv.webp");	
	border: 1px solid rgb(var(--purple));
	z-index: 14;
	}
#sa .card-top {
	background-image: url("img/2X/sa.webp");	
	border: 1px solid rgb(var(--teal));
	}
#soh .card-top {
	background-image: url("img/2X/soh.webp");	
	border: 1px solid rgb(var(--blue));
	}
#ht .card-top {
	background-image: url("img/2X/ht.webp");
	border: 1px solid rgb(var(--turq));
	}
#pre-1 .card-top {
	background-image: url("img/2X/chtherapist.webp");
	}
#pre-2 .card-top {
	background-image: url("img/2X/ccare.webp");
	}
#pre-3 .card-top {
	background-image: url("img/2X/people3.webp");
	}
#pre-4 .card-top {
	background-image: url("img/2X/teach.webp");
	}
#dv-1 .card-top {
	background-image: url("img/2X/therapist.webp");
	}
#dv-1.wl .card-top {
	background-image: url("img/2X/cleaning.webp");
	}
#dv-1.vol .card-top {
	background-image: url("img/2X/movers.webp");
	}
#dv-1.htserv .card-top {
	background-image: url("img/2X/ht-legal.webp");
	}
#dv-2 .card-top {
	background-image: url("img/2X/casemgr-sm.webp");
	}
#dv-2.wl .card-top {
	background-image: url("img/2X/office-supplies.webp");
	}
#dv-2.vol .card-top {
	background-image: url("img/2X/reception.webp");
	}
#dv-2.htserv .card-top {
	background-image: url("img/2X/ht-cm.webp");
	}
#dv-3 .card-top {
	background-image: url("img/2X/househelp2.webp");
	}
#dv-3.wl .card-top {
	background-image: url("img/2X/home-supplies.webp");
	}
#dv-3.vol .card-top {
	background-image: url("img/2X/event-vol.webp");
	}
#dv-3.htserv .card-top {
	background-image: url("img/2X/ht-counsel.webp");
	}
#dv-4 .card-top {
	background-image: url("img/2X/legalaid.webp");
	}
#dv-4.wl .card-top {
	background-image: url("img/2X/preschool-supplies.webp");
	}
#dv-4.vol .card-top {
	background-image: url("img/2X/pro-vol.webp");
	}
#dv-4.htserv .card-top {
	background-image: url("img/2X/ht-housing.webp");
	}
#dv-5 .card-top {
	background-image: url("img/2X/sanetrain.webp");
	}
#dv-1.soh,
#dv-2.soh,
#dv-3.soh,
#dv-4.soh {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--blue),0.9) 0%, rgba(var(--blue),0.4) 100%) border-box;
	}
#dv-1.htserv,
#dv-2.htserv,
#dv-3.htserv,
#dv-4.htserv {
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--dkturq),0.9) 0%, rgba(var(--dkturq),0.4) 100%) border-box;
	}
#dv-1.soh .card-top {
	background-image:url("img/2X/counselor-soh.webp");
	}
#dv-2.soh .card-top {
	background-image:url("img/2X/cm-soh.webp");
	}
#dv-3.soh .card-top {
	background-image:url("img/2X/cookware.webp");
	}
#dv-4.soh .card-top {
	background-image:url("img/2X/adv-soh.webp");
	}
#dv-5.soh .card-top {
	background-image:url("img/2X/referral-soh.webp");
	}
#dv .card-top-before {
	display: block;
	position: absolute;
	width: 100%;
	height: auto;
	top: 5px;
	left: 0;
	aspect-ratio: 2/1;
	-webkit-clip-path: url(#myclip21);
 	clip-path: url(#myclip21);
	background: rgb(var(--purple));
	z-index: 0;	
	}
#sa .card-top-before {
	display: block;
	position: absolute;
	width: 100%;
	height: auto;
	top: 5px;
	left: 0;
	aspect-ratio: 2/1;
	-webkit-clip-path: url(#myclip21);
 	clip-path: url(#myclip21);
	background: rgb(var(--teal));
	z-index: 0;	
	}
#ht .card-top-before {
	display: block;
	position: absolute;
	width: 100%;
	height: auto;
	top: 5px;
	left: 0;
	aspect-ratio: 2/1;
	-webkit-clip-path: url(#myclip21);
 	clip-path: url(#myclip21);
	background: rgb(var(--turq));
	z-index: 0;	
	}
#soh .card-top-before,
#pre-1 .card-top-before,
#pre-2 .card-top-before,
#pre-3 .card-top-before,
#pre-4 .card-top-before,
#dv-1 .card-top-before,
#dv-2 .card-top-before,
#dv-3 .card-top-before,
#dv-4 .card-top-before,
#dv-5 .card-top-before {
	display: block;
	position: absolute;
	width: 100%;
	height: auto;
	top: 5px;
	left: 0;
	aspect-ratio: 2/1;
	-webkit-clip-path: url(#myclip21);
 	clip-path: url(#myclip21);
	background: rgb(var(--blue));
	z-index: 0;
	}
#card-holder .card-top-before {
	display: block;
	position: absolute;
	width: 100%;
	height: auto;
	top: 5px;
	left: 0;
	aspect-ratio: 3/2;
	-webkit-clip-path: url(#myclip32);
 	clip-path: url(#myclip32);
	background: rgb(var(--blue));
	z-index: 0;	
	}
#serv-holder .card-top-before {
	display: block;
	position: absolute;
	width: 100%;
	height: auto;
	top: 5px;
	left: 0;
	aspect-ratio: 3/1;
	-webkit-clip-path: url(#myclip32);
 	clip-path: url(#myclip32);
	background: rgb(var(--blue));
	z-index: 0;	
	}
#dv-holder .card-top-before {
	display: block;
	position: absolute;
	width: 100%;
	height: auto;
	top: 5px;
	left: 0;
	aspect-ratio: 2/1;
	-webkit-clip-path: url(#myclip21);
 	clip-path: url(#myclip21);
	background: rgb(var(--cyan));
	z-index: 0;	
	}
#serv-holder .icon {
	flex: none;
    width: 8rem;
    height: 4rem;
    top: -2rem;
    left: calc(50% - 4rem);
    border-radius: 100%;
    background-color: rgb(var(--cyan));
    border: 10px solid rgb(var(--blue));
    position: absolute;
	z-index: 50;
	}
#serv-holder .shape {
	position: absolute;
	left: 0;
	top: -.25rem;
	width: 100%;
	height: 4rem;
	text-align: center;	
	z-index: 59;
	}
#serv-holder .shape i {
    flex: none;
    position: absolute;
    color: rgb(var(--paleblue));
    font-size: 1.3rem;
    left: 50%;
    top: 0;
    transform: translate(-50%,-50%);
	z-index: 60;
	}
#dv-holder .card span {
	position: absolute;
	aspect-ratio: 1/1;
	width: 3rem;
	height: 3rem;
	left: 50%;
	top: -10px;
	transform: translate(-50%,-50%);
	background: rgb(var(--cyan));
	border-radius: 100%;
	z-index: 10;
	overflow: visible;
	border: 2px solid rgb(var(--purple));
	}
.card-text {	
	flex: 1;
	padding: .75rem .5rem 2rem;
	text-align: left;
	font-size: .6rem;
	line-height: 1.2;
	}
.card-min p,
.card-min ul li {
	font-size: .55rem!important;
	}
.card-min .card-text {
	padding-bottom: .5rem;
	padding-top: .5rem;
	}
#serv-holder .card-text,
#dv-holder .card-text,
.swraphalf .card-text {
	text-align: left;
    font-size: .85rem!important;
	padding-bottom: 3rem;
	}
.swraphalf .sbox .card-text {	
	padding-left: 0rem;
	padding-right: 0rem;
	}
#serv-holder .card-text ul {
	text-align:left;
	}
#serv-holder .exp .card-text,
.swraphalf .exp .card-text {
	margin: .5rem;
	text-align:left;	
	color: rgb(var(--white));
	font-size: .65rem!important;
	}
#serv-holder .last .card-text,
.swraphalf .last .card-text {	
	color: rgb(var(--white));
	}
#serv-holder .last .btn-holder,
.swraphalf .last .btn-holder{
	width: 100%;
	padding-left: 40%;
	position: relative;	
	margin-top: 1.5rem;
	}
#serv-holder .exp .card-text p,
.swraphalf .exp .card-text p {
	margin-bottom: .25rem;
	}
#serv-holder ul li,
.swraphalf ul li {
	font-size: .7rem;
	}

#dv-holder h3 {
	display:inline-block;
	padding-bottom:.5rem;
}
#serv-holder .card-top h3,
#dv-holder h3 {
	font-size: 1.2rem;
	line-height: 1;
	color: rgb(var(--white))!important;	
	z-index: 55;
	}
#demos a.learnmore,
#fdemos a.learnmore {	
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 3rem;
	height: 3rem;
	transform: translate(-50%,50%);
	border: 1px solid rgb(var(--ltgrey));
	color: rgb(var(--blue));
	display: inline-block;	
	border-radius: 100%;
	aspect-ratio: 1/1;
	text-align: center;	
	font-size: 1.2rem;
	background: rgb(var(--white));
	}
#demos a.learnmore i,
#fdemos a.learnmore i,
#dv-holder .card span i {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	}
#dv-holder .card span i {
	color: rgb(var(--white));
	font-size: 1.4rem;
	}
#card-holder a.learnmore {	
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 2.5rem;
	height: 2.5rem;
	transform: translate(-50%,50%);
	border: 1px solid rgb(var(--ltgrey));
	color: rgb(var(--blue));
	display: inline-block;	
	border-radius: 100%;
	aspect-ratio: 1/1;
	text-align: center;	
	font-size: 1.1rem;
	background: rgb(var(--white));
	}
#card-holder a.learnmore i {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	}
#dv .card-text h3,
#sa .card-text h3,
#ht .card-text h3,
#soh .card-text h3,
#pre-1 .card-text h3,
#pre-2 .card-text h3,
#pre-3 .card-text h3,
#pre-4 .card-text h3,
#dv-1 .card-text h3,
#dv-2 .card-text h3,
#dv-3 .card-text h3,
#dv-4 .card-text h3,
#dv-5 .card-text h3 {
	display: block;
	font-size: 1.2rem;
	font-family: "Bebas Neue", sans-serif;
	text-align: center!important;
	}
#dv-holder .card-top h3 {
	color: rgb(var(--white));
	font-size: 1.1rem;
	}
#serv-holder .card-top h3 {
	color: rgb(var(--white));
	font-size: 1.2rem;
	padding-bottom: .5rem;
	}
.exp h2 {
	display: block;
	font-size: 1.5rem;
	font-family: "Bebas Neue", sans-serif;
	text-align:left;
	color: rgb(var(--gold));
	}
.exp strong {
	color: rgb(var(--ltturq));
	text-decoration: underline;
	}
.exp strong span {
	color: rgb(var(--gold));
	color: rgb(var(--brightteal));
	}
#forensic {
	position: relative;
	padding: 1rem;
	}
#dv .card-text h3 {	
	color: rgb(var(--purple));
	}
#sa .card-text h3 {
	color: rgb(var(--teal));	
	}
#soh .card-text h3,
#pre-1 .card-text h3,
#pre-2 .card-text h3,
#pre-3 .card-text h3,
#pre-4 .card-text h3 {
	color: rgb(var(--blue));
	}
#dv-1 .card-text h3,
#dv-2 .card-text h3,
#dv-3 .card-text h3,
#dv-4 .card-text h3,
#dv-5 .card-text h3 {
	color: rgb(var(--purple));
	}
#card-holder .card-text {
	padding-top: .5rem!important;
	}
#card-holder .card-text h3,
#card-holder .card-text a h3 {	
	font-size: 1.1rem;
	font-family: "Bebas Neue", sans-serif;
	text-align:left;
	color: rgb(var(--cyan));
	}
#demos .card .card-text h3,
#fdemos .card .card-text h3 {
	text-align:center!important;
	text-align-last: center;
    }
#servlist {
	position: relative;
	float:left;
	width: 100%;
	height: auto;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	flex-wrap:nowrap;
	gap: 1rem;
	color: rgb(var(--black));	
	border-top:1px solid rgba(var(--cyan),0.5);
	margin-top:1rem;
	}
#servlist div {
	flex:1;
	flex-basis:100%;
}
ul {
	position:relative;
	list-style-type: none;
	padding-left: .75rem;
	margin-top: 1rem;
	margin-left: 0;
	}
ul li {
	font-size: .75rem;	
	}
ul li::before {
	content: "\f0da";
	font-family: "Font Awesome";
	color: rgb(var(--gold));
	position: relative;
	margin-right: .40rem;
	margin-left: -.75rem;
	}
ul li p {
	margin-top:0;
	padding-top:0;
}
ul li span {
	color: rgb(var(--brightteal));
	}
ul.sponsor-ul span {
	color:rgb(var(--cyan));
	text-transform:uppercase;
	font-weight:600;
	display:inline-block;
	font-size:.7rem;
}
ul.sponsor-ul li p {
	font-size:.6rem;
}
#benefits ul {
	margin-top: 0;
	padding-top: 0;
	}
#dv-holder ul li {
	font-size: .65rem;
	}
#helps {
	position: relative;
	width: 100%;
	height: auto;
	padding: 1.5rem var(--edge) 1.5rem 40% ;
	background: rgb(var(--purple));
	color: rgb(var(--white));
	display: flex;	
	flex-direction: column;
	justify-content: center;
	gap: 1rem;
	
	}
#helps h2 {
	font-size: 1rem;
	font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-style: italic;
	color: rgb(var(--gold));
	text-align: center;
	}
#helps p {
	text-align: left;
	}
#helplines h3 {
	color: rgb(var(--gold));
	font-family: "Montserrat", sans-serif;
 	font-weight: 500;
 	font-style: normal;
	font-size: 1.2rem;
	text-transform: uppercase;
	}
#btns {
	position: relative;
	flex: 1;
	width: 100%;	
	height: 60px;
	text-align:left;	
	display: flex;	
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 1rem;
	}
#btns .btn {
	flex: 0 1 auto;
	}
#ht .card-text h3 {
	color: rgb(var(--turq));
	}
#impact {
	padding: 2rem var(--edge);
	background: rgb(var(--cyan));
	background: rgb(var(--dkblue));
	color: rgb(var(--white));
	overflow: visible;
	z-index: 8;
	text-align:left;
	}
#impact p {
	border-bottom:1px solid rgba(var(--white),0.5);
	padding-bottom:.5rem;
	margin-bottom:.5rem;
}
#impact-row {
	position: relative;
	width: 100%;
	display: flex;
	flex-direction: row;	
	gap: 0rem;
	}
#impact-left {
	flex: 1 1 60%;
	}
#impact-right {
	flex: 1 1 40%;
	position:relative;
	}
#counters li{
	font-family: "Bebas Neue", sans-serif;
	font-size:1.1rem;
}
#counters li span {
	color: rgb(var(--paleblue));
	}
#cluster2 {
	position: absolute;
	right: -8%;
	top: -3rem;
	height: auto;
	width: 110%;
	aspect-ratio: .885/1;
	}

#adbuttons {
	padding:0;
	background:rgb(var(--teal));
	display:flex;
	flex-direction:row;
}
#impact h1 {
	flex: 1;
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 400;
 	font-style: normal;
	font-size: 2rem;	
	text-align:left;	
	padding: 0;	
	color: rgb(var(--white));
	margin: 0;	
	}
#impact h1 span {
	display: block;
	font-family: "Montserrat", sans-serif;
 	font-weight: 300;
 	font-style: normal;
	font-size: 1rem;
	text-transform: uppercase;
	padding: 0;
	margin: 0;	
	color: rgb(var(--gold));
	}
#events {	
	padding: 6rem var(--edge) 3rem;
	background:
    radial-gradient(50% 50% at 100% 0,var(--_g)),
    radial-gradient(50% 50% at 0 100%,var(--_g)),
    radial-gradient(50% 50%,var(--_g)),
    radial-gradient(50% 50%,var(--_g)) calc(var(--s)/2) calc(var(--s)/2)
    var(--c1);
  background-size: var(--s) var(--s);
	display: flex;
	flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
	gap: 20px;
	}
#event-head {
	flex: 1 1 25%;
	display: flex;
	flex-direction: column;	
	justify-content: flex-start;
	align-content: center;
	text-align:left;
	gap: 1rem;
	}
#event-head h1 {
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 400;
 	font-style: normal;
	font-size: 2rem;	
	text-align:left;
	line-height: 1;
	padding: 0;	
	color: rgb(var(--blue));
	margin: 0;
	}
#sched {
	flex: 1 1 75%;
	display: flex;
	flex-direction: row;
 	justify-content: space-between;
	align-items: stretch;
	gap: .5rem;
	}
.event {
	flex: 1 1 25%;	
	max-width: 25%;
	z-index: 3;
	position: relative;	
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 60%,rgb(var(--palegrey)) 100%) padding-box, linear-gradient(180deg,rgba(var(--blue),1) 0%, rgba(var(--blue),0.3) 100%) border-box; 	
 	border: 10px solid transparent;
	}
.event-top {
	position: relative;
	float:left;
	clear: both;
	width: 100%;
	height: auto;
	padding: .5rem;
	}
.event-av {
	position: relative;
	float:left;
	clear: both;
	width: 100%;
	height: auto;
	aspect-ratio: 1/1;	
	border-radius: .25rem;
	overflow: hidden;	
	margin: -1.5rem 0;
	z-index: 3;
	border: 1px solid rgb(var(--blue));
	}
.event-av img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	aspect-ratio: 1/1;
	transform: translate(-50%, -50%);
	}
.event-title {
	position: relative;
	float:left;
	clear: both;
	width: 100%;
	height: auto;
	background: rgba(var(--blue),.9);
	color: rgb(var(--white));
	font-family: "Montserrat", sans-serif;
 	font-weight: 600;
 	font-style: normal;
	font-size: .5rem;
	text-transform: uppercase;
	text-align: center;
	padding: 1.5rem .5rem .25rem;
	z-index: 2;
	}
.event-title a {
	color: rgb(var(--white));
	}
.event-date {
	position: relative;
	float:left;
	clear: both;
	width: 100%;
	min-width:100%;
	height: auto;
	padding: .5rem .5rem .5rem .5rem;
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 600;
 	font-style: normal;
	font-size: 1.8rem;	
	text-align:left;
	color: rgb(var(--cyan));
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	align-items:center;
	column-gap:5px;
	}
.event-date span {
	color: rgb(var(--teal));
	}

.event-btn {	
	position: relative;	
	width: 25%;
	max-width:2rem;
	height: auto;	
	border: 1px solid rgb(var(--ltgrey));
	color: rgb(var(--teal));
	border-radius: 100%;
	aspect-ratio: 1/1;
	text-align: center;	
	font-size: 1.2rem;
	background: rgb(var(--white));	
	}
#serv-holder .event-btn {	
	position: absolute;
	bottom: 0;
	right: 0;
	left:0;
	width:100%;
	max-width:100%;
	height: 2rem;	
	color: rgb(var(--dkblue));	
	border-radius: 0%;
	aspect-ratio: initial;
	text-align: left;	
	font-size: .65rem;
	background: rgb(var(--white));
	padding:.25rem 1.25rem .25rem .5rem;
	display: flex;	
	align-items:center;
	justify-content:center;
	font-size:.85rem;
	text-transform:uppercase;
	}
.event-btn i {
	position: absolute;
	top: 50%;
	left: 50%;
	color: rgb(var(--teal));
	transform: translate(-50%,-50%);
	}
#serv-holder .event-btn i {
	position: relative;
	display:inline;
	top: auto;
	left: auto;
	color: rgb(var(--teal));
	transform: none;
	font-size:.85rem;
	margin-left:.25rem;
}
#bottom-section {
	position: relative;
	width: 100%;
	height:auto; 	
	background:rgba(var(--dkpurp), 0.9);
	padding: 2rem 0rem 4rem;	
	z-index: 7;
	margin-bottom:4rem;
	}
body.home #bottom-section {	
	padding: 4rem 0rem;		
	margin-bottom:0rem;
	}
#bottom-section h1 { 
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 400;
 	font-style: normal;
	font-size: 2rem;	
	text-align:center;	
	padding: 0;	
	color: rgb(var(--white));
	margin: 0 0 1rem 0;		
	
}
body.home #bottom-section h1 {
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 400;
 	font-style: normal;
	font-size: 2rem;	
	text-align:left;	
	color: rgb(var(--white));
	margin-bottom:1rem;	
	padding-left:var(--edge);
}
#bottom-boxes {	
	position:relative;
	z-index: 5;
	float:left;
	clear:both;
	width:100%;
	height:100%;
	padding: 0rem var(--edge);
	display: block;		
	overflow:visible;	
	
	}

#bxs {
	position:relative;
	width:100%;
	display:flex;
	flex-direction: row;
	justify-content: center;
	align-items:flex-end;
	column-gap:1rem;	
}
.bottom-box {
	flex:1;
	flex-basis:100%;
	background: linear-gradient(to bottom, rgb(var(--brightteal)) 0%,rgb(var(--dkturq)) 77%);
	color:rgb(var(--white));
	text-align:center;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	align-content:center;
	padding:2rem .5rem;	
	font-size:1.5rem;
	text-transform:uppercase;	
	margin-bottom:-6rem;
	outline:2px solid rgba(var(--white),0.7);
	outline-offset:.25rem;
}
.bottom-box i {
	color:rgb(var(--white));
}
#late-row {
	flex: none;
	padding:0;
	margin:0;
	width:100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	}
#late-row h2 {
	flex: 1 1 35%;
	}
#late-row .soc {
	flex: 1 1 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	flex-wrap: nowrap;
	}
.connect {
	flex: 0 0 2rem;	
	position: relative;
	aspect-ratio: 1/1;
	background: rgb(var(--white));	
	border-radius: 100%;
	border: 1px solid rgb(var(--teal));
	color: rgb(var(--blue));
	height: 2rem;
	margin: 0 auto;	
	z-index: 1;
	}
.connect i {	
	position: absolute;
	top: 50%;
	left: 50%;
	color: rgb(var(--brightblue));
	font-size: 1.2rem;	
	transform: translate(-50%,-50%);
	z-index: 3;
	}

footer {
	background: rgb(var(--dkblue));
	color: rgb(var(--white));
	display: flex;	
	flex-direction: row;
	justify-content: center;
	gap: .5rem;
	padding: 4rem var(--edge) 1rem;
	}
.addresses {
	flex:0 1 auto;
	width:100%;
	text-align:left;
	padding:.25rem;
	background:rgba(var(--teal), 0.2);
	display: flex;
	}
.addresses p i {
	color:rgb(var(--gold));
	margin-right:4px;
}
#footerrow {
	flex: 1 1 100%;	
	text-align: center;
	display: flex;
	flex-direction: row;
 	justify-content: space-between;
	gap: 25px;
	}
#ftlogo {
	display:inline-block;
	width: 4rem;
	height: 4rem;
	margin-left:auto;
	margin-right:auto;
	}
#leftfooter,
#rightfooter,
#midfooter {
	flex: 1 1 33%;
	max-width:33%;
	display:flex;
	flex-direction: column;
	align-items:stretch;	
	justify-content:space-between;
	}
#midfooter {
	row-gap:20px;
}
#rightfooter {
	row-gap:10px;
}

p.copy {
	font-size: .5rem;
	}

#midfooter h1 {
	font-family: "Bebas Neue", sans-serif;
	font-weight: 500;
	font-size: 1rem;
	color: rgb(var(--brightteal));
	line-height: 1;
	}
#midfooter h2 {
	font-family: "Montserrat", sans-serif;
 	font-weight: 500;
 	font-style: normal;
	font-size: .7rem;
	text-transform: uppercase;
	color: rgb(var(--gold));
	line-height: 1;
	}
footer p.small {
	margin-top: 1rem;	
	}
#homefooter,
#footprint {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items:flex-start;
	gap: 20px;
	}
#llc {
	width:100%;
	position:relative;
	text-align:center;
	line-height:1.3;
}
.addresses h4 {
	font-family: "Bebas Neue", sans-serif;
	font-weight: 500;
	font-size: .75rem;
	display: block;
	width: 100%;
	}

.addresses p {
	font-size: .55rem;
	display: block;
	width: 100%;
	text-align:left;
	}

footer p.small {
	text-align: justify;	
	text-align-last:left;
	word-spacing: -0.05em;
	font-size:.5rem;
	}
footer a:link,
footer a:visited {
	color: rgb(var(--brightblue));
	}
footer a.priv {
	width: 100%;
	margin-bottom: .5rem;
	border: 1px solid rgb(var(--white));
	color: rgb(var(--white));
	background: rgb(var(--turq));
	display: inline-block;
	padding: .5rem;
	text-align:left;	
	font-size: .6rem;	
	}	
#uw {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 20px;
	}
#uw a {
	flex: 1;
	}
#fbpost {
	flex:0 1 auto;	
	padding:0;	
}
#fbpost {	
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--white)) 100%) padding-box, linear-gradient(rgba(var(--brightblue), 0.6) 0%, rgba(var(--teal),0.8) 100%) border-box;
	border-radius: .15rem;
	border: 10px solid transparent;
	overflow:hidden;
	}
#fbpost #cff .cff-photo {
	/*max-width: 50%!important;*/
	float:right;
 	display: block;
 	position: relative;
	margin: 0!important;
	padding: 0!important;
	}
.cff-post-text {
	margin: 0!important;
	padding: 0 .25rem 0 0!important;
	font-size: .55rem;
	text-align: justify;
	text-align-last:left;
	word-spacing: -0.05em;
	color: rgb(var(--black));
	}
#fbpost .cff-post-text {
	float:left;
 	/*max-width: 50%!important;*/
	font-size: .55rem!important;
	text-align: justify;
	text-align-last:left!important;
	word-spacing: -0.05em!important;
	padding-bottom:1rem!important;
	}
#cff-load-more,
a.cff-load-more,
.cff-comments-box,
.cff-view-comments-wrap,
.cff-author {
	display: none!important;
	}
.cff-wrapper-ctn {
	padding: 0!important;
	margin: 0!important;
	overflow: hidden;
	background: transparent!important;
	}
.cff-wrapper .cff-visual-header {
 	margin-bottom: 0px!important;
	}
#cff:after, .cff-lightbox-dataContainer:after, .cff-lightbox-outerContainer:after, .cff-wrapper:after {
	display: none;
	}
.cff-count,
.cff-viewpost-facebook,
.cff-share-link {
	font-size: .5rem;
	color: rgb(var(--cyan));
	}
.cff-viewpost-facebook,
.cff-share-link {
	font-size: .55rem!important;	
	color: rgb(var(--blue));
	}
.cff-viewpost-facebook a:hover,
.cff-share-link a:hover {
	text-decoration: none!important;
	}

#resource-list {
	position:relative;
	 width:100%;
	padding:0 1rem;
	  display:flex;	
          flex-wrap: wrap;
          flex-direction:row;
          row-gap: 1rem;          
	align-items:stretch;
	justify-content:space-between;	
          }
	  
.resource {
	position:relative;
    flex: 1 1 48%;
	max-width:48%;
	padding:0;
	border:1px solid rgba(var(--dkblue),0.7);
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	overflow:hidden;
          }
.resource-pic {
	position:relative;
	display:flex;
	flex:1 1 33%;
	aspect-ratio:1/1;
	border-right:3px solid rgb(var(--brightteal));
	}
.resource img {
	display:flex;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	aspect-ratio:1/1;		
	}
.resource-text {
	position:relative;
	display:flex;
	flex:1 1 60%;
	padding:.5rem;
	text-align:left;
	font-size:.55rem;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	}
.resource-text h3 {
	padding-bottom:5px;
	border-bottom:1px solid rgb(var(--gold));
	margin-bottom:.25rem;
}
#privacy-notice strong {
	display:inline;	
}	
#privacy-notice h3 {
	display:block;
	margin:.75rem 0!important;
	color:rgb(var(--blue));
	font-family: "Bebas Neue", sans-serif;
	font-size:1.1rem;
}
#privacy-notice h4 {
	display:block;
	margin:.75rem 0!important;
	font-family: "Montserrat", sans-serif;
	text-transform:uppercase;
	color:rgb(var(--gold));
	
}
#privacy-notice ul {
	margin-bottom:1rem;
}
#privacy-notice ul li {	
	padding-left:1.25rem;
	margin-bottom:.25rem;
}
#privacy-notice ul li p {
	display:inline;
	line-height:1!important;
	margin-top:0;
	margin-bottom:0;
}
   .cls-1 {
        fill: #8b8c8b;
        font-family: MultiDisplay-Bold, MultiDisplay;
        font-size: 11.2px;
        font-weight: 700;
      }

      .cls-2 {
        clip-path: url(#clippath-6);
      }

      .cls-3 {
        clip-path: url(#clippath-7);
      }

      .cls-4 {
        letter-spacing: 0em;
      }

      .cls-5 {
        clip-path: url(#clippath-4);
      }

      .cls-6 {
        fill: url(#linear-gradient-2);
      }

      .cls-7 {
        stroke-width: .8px;
      }

      .cls-7, .cls-8, .cls-9 {
        fill: none;
      }

      .cls-7, .cls-9 {
        stroke: #8b8c8b;
        stroke-miterlimit: 10;
      }

      .cls-10 {
        fill: #fff;
      }

      .cls-11 {
        fill: url(#linear-gradient-4);
      }

      .cls-12 {
        fill: url(#linear-gradient-3);
      }

      .cls-13 {
        clip-path: url(#clippath-1);
      }

      .cls-9 {
        stroke-width: 1.6px;
      }

      .cls-14 {
        clip-path: url(#clippath-5);
      }

      .cls-15 {
        clip-path: url(#clippath-8);
      }

      .cls-16 {
        clip-path: url(#clippath-3);
      }

      .cls-17 {
        letter-spacing: 0em;
      }

      .cls-18 {
        letter-spacing: 0em;
      }

      .cls-19 {
        clip-path: url(#clippath-2);
      }

      .cls-20 {
        fill: url(#linear-gradient);
      }

      .cls-21 {
        clip-path: url(#clippath);
      }
.cky-notice-des p {
	text-align:left;
}
.cky-notice-des p:first-of-type {
	color:rgb(var(--pink))!important;
	font-weight:bold !important;
}
/*/// FORMS /////*/
form {
	position: relative;	
	width: 100%;
	background: rgba(var(--purple),0.7);
	padding: 1rem 0rem;
	color: rgb(var(--white));
}
fieldset {
	position: relative;
	background: rgba(var(--purple),1);
	margin: 0rem auto 1rem auto;
	border: 1px solid rgb(var(--blue));
	padding-top: 1rem;
	padding-bottom: 1.5rem;
	width: 90%;
	}
form hr {
	width: 70%;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid rgba(var(--white),0.4);
	}
.smpad {
	padding-top: .5rem;
	padding-bottom: 0rem;
	background: rgb(var(--white));
	color: rgb(var(--blue));
	}
legend {
	width: 80%;
	font-family: "Bebas Neue", sans-serif;
	background: rgb(var(--cyan));
	color: rgb(var(--white));
	padding: .25rem .5rem;
	border-radius: .25rem;
	text-align: center;
	font-size: 1.2rem;	
	text-transform: uppercase;
	line-height: normal;
	}
legend.top {
	background: rgb(var(--dkturq));
	background: linear-gradient(rgb(var(--cyan)) 0%, rgb(var(--dkturq)) 100%) padding-box, linear-gradient(180deg,rgba(var(--teal),0.9) 0%, rgba(var(--teal),0.4) 100%) border-box!important;
 	border: 10px solid transparent;
	color: rgb(var(--gold));
	font-size:1.6rem;
	}
.formwrap {
	position: relative;
	clear: both;
	width: 90%;
	margin: 0rem auto 0.5rem auto;
	display: -webkit-box;
 	display: -ms-flexbox;
 	display: flex;
	flex-direction:row;	
     -webkit-box-pack: space-between;
     -ms-flex-pack: space-between;
     justify-content: space-between;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
	}
.formwrapcons {
	position: relative;
	float:left;
	clear: both;
	width: 90%;
	height:auto;
	margin: 0rem 5% 0.5rem 5%;
	display:block;
 	}
fieldset.smpad .formwrap {
	margin: 0rem auto 0rem auto;
	}
.formwrap2 {
	position: relative;
	clear: both;
	width: 90%;
	margin: 0rem auto 0rem auto;
	display: -webkit-box;
 	display: -ms-flexbox;
 	display: flex;
	flex-direction:row;	
    -webkit-box-pack: flex-start;
    -ms-flex-pack: flex-start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	}
.left {
	-webkit-box-pack: flex-start;
   	-ms-flex-pack: flex-start;
   	justify-content: flex-start;
	}
.wrapped {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;	
	}
#hid,
#hid2 {
	display: none;
	}
#places:after {
	content: '';
	flex: auto;
	}
label {
	padding-right: .5rem;
	flex: 0 0 auto;
	color: rgb(var(--white));
	font-size: .75rem;
	line-height: 1rem;
	}
label.cons {
	flex:none;
	display:inline-block;
	float:left;
	position:relative;
	width:33%;
	line-height:1;
	padding:.25rem!important;
	height:30px;
	vertical-align:middle;
	}
label.norm {
	font-size: .6rem;
	color: rgb(var(--white));
	}
input[type=checkbox]+ label,
input[type=radio]+ label {
	position: relative;
	flex: none;
	padding-left: .25rem;
	font-size: .5rem;
	}
input[type=text],
input[type=email]{
	padding: .35rem 1rem;
	height: 1rem;
	line-height: 1rem;
	flex: 1 1 100%;
	border-radius: 1rem;
	border: 2px solid rgba(139, 139, 139, .5);	
	min-width: 30px;
	width: 100%;
	font-size: .5rem;
	font-family: "Montserrat", sans-serif;
	font-style: normal;
	font-weight: 400;
	}
input[type=tel] {
	flex: 1 1 100%;
	padding: .35rem 1rem;
	height: 1rem;
	line-height: 1rem;
	border-radius: 1rem;
	border: 2px solid rgba(139, 139, 139, .5);	
	min-width: 30px;
	font-size: .5rem;
	font-family: "Montserrat", sans-serif;
	font-style: normal;
	font-weight: 400;
	}
input[type=tel].cons,
input[type=text].cons,
input[type=email].cons {
    flex:none;
	display:inline-block;
	float:right;
	position:relative;
	width:65%;
	font-size:.65rem;
	line-height:1;
	padding:.25rem!important;
	height:30px;
}
input[type=tel].cons.wpcf7-not-valid,
input[type=text].cons.wpcf7-not-valid,
input[type=email].cons.wpcf7-not-valid {
	border: 4px solid rgb(var(--neon));
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus {
	-webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
	border-color: inherit;
    -webkit-box-shadow: none;
    box-shadow: none;
	outline: none;
	border: 2px solid rgba(139, 139, 139, .3);
	background: #cfd9e6;
	}
.spaced {
	padding-left: 1rem;
	}
.wpcf7-form-control-wrap {	
	width:100%;
 	display: flex;
}
.wpcf7-form-control.wpcf7-checkbox {	
	width:100%;
	display: -webkit-box;
 	display: -ms-flexbox;
 	display: flex;
	flex-wrap:wrap;
	flex-direction:row;	
     -webkit-box-pack: space-between;
     -ms-flex-pack: space-between;
     justify-content: space-between;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
	align-content:space-between;
}
.formwrapcons .wpcf7-form-control-wrap {
	display:block;
}
textarea,
.wpcf7-textarea {
	width: 100%!important;
	height: 150px!important;
	padding: .5rem;
	border-radius: 1rem;
	border: 2px solid rgba(139, 139, 139, .5);
	min-height: 30px;
	min-width:100%;
	font-size: .65rem;
	font-family: "Montserrat", sans-serif;
	font-style: normal;
	font-weight: 400;
	}
.wpcf7-list-item {
	margin-left:0!important;
}
input[type=checkbox]+ label,
input[type=radio]+ label {
     display: inline-block;
     background-color: rgba(255, 255, 255, .9);
     border: 2px solid rgba(139, 139, 139, .3);
     color: #395283;
     border-radius: 1rem;
     white-space: nowrap;
     margin: 3px 0px;
     -webkit-touch-callout: none;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
     -webkit-tap-highlight-color: transparent;
     transition: all .2s;
	}
input[type=checkbox]+ label,
input[type=radio]+ label  {
     padding: 3px 10px;
     cursor: pointer;
	 line-height: normal;
	}
input[type=checkbox]+ label::before,
input[type=radio]+ label::before  {
	 display: inline-block;
	 font-style: normal;
	 font-variant: normal;
	 text-rendering: auto;
	 -webkit-font-smoothing: antialiased;
	 font-family: "Font Awesome";
	 font-weight: 900;
	 font-size: 12px;
	 padding: 2px 6px 2px 2px;
	 content: "\f067";
	 transition: transform .3s ease-in-out;
	}
input[type=checkbox]:checked + label::before,
input[type=radio]:checked + label::before { 
	 content: "\f00c";
	 transition: transform .3s ease-in-out;
	}
input[type=checkbox]:checked + label,
input[type=radio]:checked + label {
	 border: 2px solid #748bc1;
	 background-color: #f7b800;
	 color: #fff;
	 transition: all .2s;
	}
input[type=checkbox],
input[type=radio] {
	 position: absolute;
	 opacity:0;
	width:1px;
	height:1px;
	}
input[type=checkbox]:focus + label,
input[type=radio]:focus + label {
 	border: 2px solid #7c868e;
	}
.error {
	background: #c51244 !important;
	padding: 10px !important;
	border-radius: 5px !important;
	position: relative;
	display: inline-block !important;
	box-shadow: 1px 1px 1px #aaaaaa;
 	margin-top: 10px;
	text-align: center;
	color: #fff;
	font-size: .65rem;
	}
.error:before{
	content: '';
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 10px solid #c51244;
 	position: absolute;
 	top: -10px;
	}
.wpcf7-list-item input[type=radio],
.wpcf7-list-item input[type=checkbox] {
  position: absolute;
  opacity:0;
  width:1px;
  height:1px;
}

.wpcf7-list-item input[type=radio] + .wpcf7-list-item-label,
.wpcf7-list-item input[type=checkbox] + .wpcf7-list-item-label {
      display: inline-block;
     background-color: rgba(255, 255, 255, .9);
     border: 2px solid rgba(139, 139, 139, .3);
     color: #395283;	
     border-radius: 1rem;
     white-space: nowrap;
     margin: 3px 0px;
     -webkit-touch-callout: none;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
     -webkit-tap-highlight-color: transparent;
     transition: all .2s;
	font-size: .5rem;
	padding: 0px 10px;
}
.wpcf7-list-item input[type=radio] + .wpcf7-list-item-label::before,
.wpcf7-list-item input[type=checkbox] + .wpcf7-list-item-label::before {
     display: inline-block;
	 font-style: normal;
	 font-variant: normal;
	 text-rendering: auto;
	 -webkit-font-smoothing: antialiased;
	 font-family: "Font Awesome";
	 font-weight: 900;
	 font-size: 12px;
	 padding: 0px 6px 0px 0px;
	 content: "\f067";
	 transition: transform .3s ease-in-out;
}
.wpcf7-list-item input[type=radio]:checked + .wpcf7-list-item-label::before,
.wpcf7-list-item input[type=checkbox]:checked + .wpcf7-list-item-label::before { 
	 content: "\f00c";
	 transition: transform .3s ease-in-out;
	}
.wpcf7-list-item input[type=radio]:checked + .wpcf7-list-item-label,
.wpcf7-list-item input[type=checkbox]:checked + .wpcf7-list-item-label {
	 border: 2px solid #748bc1;
	 background-color: #f7b800;
	 color: #fff;
	 transition: all .2s;
	}
.wpcf7-list-item input[type=radio]:focus + .wpcf7-list-item-label,
.wpcf7-list-item input[type=checkbox]:focus + .wpcf7-list-item-label {
 	border: 2px solid #7c868e;
	}
.wpcf7-not-valid-tip {		
	position:relative!important;
	float:left!important;
	clear:both!important;
	display:block!important;	
	font-size:.5rem;
	color:rgb(var(--neon));	
	padding-left:35%;
}
#centered {
	position:relative;
	width:100%;
	text-align:center;
}
.wpcf7-spinner {
    margin: 1rem auto 0rem;
    }
.wpcf7-spinner::before {
	background-color:rgb(var(--gold));
}
.wpcf7 form .wpcf7-response-output {
    margin: .5rem auto 1rem;
    padding: 1rem;
    border: 2px solid #00a0d2;
}
/*//////////////////////////NAVIGATION //////////////////////////////////*/
  
.sb-slidebar {
	right: 0; 
	background-color: rgb(var(--dkblue));
	background-color: rgb(var(--purple));
	border-left:10px solid rgb(var(--cyan));
	padding:60px 1rem 1rem 1rem;
	margin-left:0;
	}
.menu-main-menu-container {
	margin-top:1rem;
}
.sb-slidebar ul {
	position:relative;
	display:block;
	margin:0;
	padding:0;
	}
.sb-slidebar ul li {
	position:relative;
	display:block;
	text-align:left;
	border-bottom:1px solid rgba(var(--white),.2);	
	}
body.home #menu-main-menu li:nth-of-type(1){
	display:none;
    }
.sb-slidebar ul li::before {
	content: none;
	display:none;
}
.sb-slidebar ul.sub-menu {
	border-top:1px solid rgba(var(--gold),.3);
	position:relative;
	padding:0;
	margin:0 .5rem 0 1rem;
	display:none;
	}

.sb-slidebar ul li a {
	font-family: "Montserrat", sans-serif; 
	font-size:.75rem;
	text-transform:uppercase;
	padding:.25rem 0rem;
	line-height:1;
	color:rgb(var(--white));	
	display:inline-block;
	width:100%;
	background:transparent;
	}
.sb-slidebar ul li a:hover {
	text-decoration:none;
	background:rgba(var(--blue),.6);
	-webkit-transition: all 400ms ease;
	   -moz-transition: all 400ms ease;
	     -o-transition: all 400ms ease;
	        transition: all 400ms ease;
	}
#menu-socials {
	position:relative;
	width:100%;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	justify-content:space-between;
	align-items:center;
	padding-top:1rem;
}
#menu-socials a {
	flex:1;
	font-size:1rem;
	color:rgb(var(--paleblue));
	
}
#main-post-content .articlebx {
	position:relative;
	width:100%;
	margin-bottom:1.75rem;
	background:rgba(var(--teal),0.2);
	padding:1rem;
}
#main-post-content .articlebx.purplebx {
     background:rgba(var(--purple),0.2);
}
#main-post-content .articlebx.bluebx {
     background:rgba(var(--cyan),0.2);
}
#main-post-content .articlebx.turqbx {
     background:rgba(var(--turq),0.1);
}
#main-post-content .articlebx:nth-child(1) {
	margin-top:2.5rem!important;
}
#main-post-content .articlebx h2{
	color:rgb(var(--dkturq));
	margin-top:-1.75rem;
	font-size:1.35rem;
	display:block;
}
#main-post-content .articlebx.purplebx h2{
	color:rgb(var(--dkpurp));	
}
#main-post-content .articlebx h2 i {
	color:rgb(var(--brightblue));
	margin-right:.5rem;
}
#main-post-content .articlebx h3 {
	color:rgb(var(--cyan));
	font-weight:500;
	margin-bottom:1rem;
}
.bluebkg {
	flex:1 1 33%;
	flex-basis:100%;
	padding:.5rem;
	text-align:center;
	display:flex;
	flex-direction:column;
	justify-content:flex-start;
	align-items:stretch;
	background: linear-gradient(rgba(var(--paleblue),0.3) 0%, rgba(var(--cyan),0.5) 100%) padding-box, linear-gradient(180deg,rgba(var(--blue),1) 0%, rgba(var(--blue),0.4) 100%) border-box; 	
 	border: 10px solid transparent;
}
.bluebkg h3 {
	color:rgb(var(--white));
	padding-bottom:.25rem;
	border-bottom:1px solid rgb(var(--brightblue));
	margin-bottom:.5rem;
}
.bluebkg p {
	color:rgb(var(--white));
}
.bluebkg img {
	width:100px;
	min-width:100px;
	max-width:100px;
	margin-left:auto;
	margin-right:auto;
}
/*///////////////////////QUIZ////////////////////////////////////////*/
#qbox{ 
	position:relative;   
    width:100%;
	margin:1rem auto 0;
    height:300px;
    overflow:hidden;
	display:block;
	}
#preview {
	position:relative;
	display:block;
	width:100%;
	height:300px;	
	background:linear-gradient(180deg,rgba(var(--dkblue),1) 0%, rgba(var(--dkblue),1) 50%,rgba(var(--dkpurp),1) 100%);
	color:rgb(var(--white));
	}
.qnumber {
	position:relative;
	float:left;
	margin-top:10px;
	margin-left:20%;
	margin-right:20%;
	width:60%;
	height:40px;
	z-index:5000;
    background-color:rgb(var(--cyan));
	text-align:center;
	color:rgb(var(--white));
	font-family: "Bebas Neue", sans-serif;
	border-radius:.15rem;
	font-size:1.3rem;
	display: flex;
	justify-content: center;
	align-items:center;	
}
#preview .qnumber {
	margin-left:0;
	margin-right:auto;
	width:100%;	
	font-size:1.5rem;
	color:rgb(var(--paleblue));	
	background:transparent;
}
.arrows	{
	position:relative;
	float:left;
	clear:both;
	flex:0 0 100%;
	width:100%;
	height:50px;
	margin-top:0px;	
	}
.leftarrow,
.rightarrow 	{
	position: absolute;	
	width:2.5rem;
	height:2.5rem;
	bottom:5px;
	left:5px;
	border:1px solid rgb(var(--white));
	border-radius:100%;
	cursor:pointer;
	z-index:1000;
	}
.rightarrow 	{	
	left:auto;
	right:5px;
	}
.leftarrow::after {
	content:"\f0a8";
	color:rgb(var(--gold));
	font-size:1.5rem;
	font-family: 'Font Awesome';
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
}
.rightarrow::after {
	content:"\f35a";
	color:rgb(var(--gold));
	font-size:1.5rem;
	font-family: 'Font Awesome';
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
}

.continue {
    position: relative;
	min-width: 150px;
	margin: 1rem auto;
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--palegrey)) 100%) padding-box, linear-gradient(rgb(var(--cyan)) 0%, rgb(var(--teal)) 100%) border-box;
 	border-radius: 500px;
 	border: 5px solid transparent;
	color: rgb(var(--blue));
	font-family: "Montserrat", sans-serif;
 	font-weight: 500;
 	font-style: normal;
	font-size: .9rem;
	text-transform: uppercase;	
	display: flex;
	justify-content: center;
	align-items:center;
	height: 50px;
	max-width: 250px;
	cursor:pointer;
}
.continue i {
	display:inline;
	}
.continue:hover {
	background: linear-gradient(rgb(var(--white)) 0%, rgba(var(--paleblue),0.3) 100%) padding-box, rgb(var(--cyan)) border-box;
}
.rightarrow:hover, 
.leftarrow:hover	{
	background:rgba(var(--blue),0.6);
	}
#steps{
	position:absolute;
	top:0;
	left:0;
    width:2000%;
	height:300px;
	display:none;
	}
.step{
    display:block;
	float:left;
    width:5%;
  	height:300px;
	margin:0;
	padding:0;
	border:none;	
	background-color:rgb(var(--dkpurp));
	}
#formElem {
	margin:0;
	padding:0;
	width:100%
}

.qp {
	position:relative;
	display:block;
	float:left;
	clear:both;
    width:100%;
	height:140px;
	padding:1rem 2rem;  
	text-align:center;
	font-size:1rem;
	line-height:1.3;
	}
#preview .qp {
	height:200px;
	font-size:.8rem;
	line-height:1;
}
#preview .qp p {
	font-size:.8rem;
	line-height:1;
}
.qp p {
	font-size:1rem;
	line-height:1.3;
}
#formElem p label {
   	width:160px;
   	float:left;
    text-align:right;
   	margin-right:15px;   
	}
#formElem input:not([type=radio]),
#formElem textarea,
#formElem select {       
    width:33%;
    float:left;
}
.regular-radio {
	float:left;
	width:66%;
	display:block;
	clear:both;
	}
#navigation {
	position:relative;	
	width:90%;
	height:25px;
	margin:2px auto;
	display:none;
	}
#navigation ul {
	list-style-type:none;
	padding:0;
	margin:0;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	}
#navigation ul li  {
	flex:1;
	aspect-ratio:1/1;
	text-align:center;
	position:relative;
	
	}
#navigation ul li::before {
	content:none;
	display:none;
}
#navigation ul li a  {	
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	display:block;
	width:10px;
	height:10px;
	background-color:rgb(var(--dkblue));
	font-size:.45rem;
	border-radius:100%;
	}
.answer   {
	position:relative;
	float:left;
	clear:both;
	text-align:center;
	width:100%;
	height:50px;
	display:flex;
	flex-direction:row;
	align-items:center;
	justify-content:center;
	gap:1rem;
	}
.input_hidden {
    position: absolute;
    left: -19999px;
}
.selected {
    background-color: rgb(var(--neon));    
}

#formElem input[type="radio"]+ label {
     background-color: rgb(var(--gold));
     border: 2px solid rgb(var(--white));
     color: rgb(var(--black));
     margin: .25rem;
     padding: 8px 20px;
	font-size:.7rem;
     }
#formElem input[type="radio"]+ label::before {
	 display: none;
}
#formElem input[type="radio"]:checked + label::before {
	 display: inline-block;
	}
#formElem input[type="radio"]:checked + label {
	 border: 2px solid rgb(var(--white));
	 background-color:rgb(var(--neon));
	 color: rgb(var(--black));	 
	}
.answer label img {
    padding: 3px;
}


#alldone  {
	cursor:pointer;
	position:relative;
	float:right;
	margin-right:95px;
	margin-top:10px;
	margin-bottom:-35px;
	-moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
	padding:5px;
	border:1px solid #691c4d;
	}
#finished, 
#alldone, 
#results   {
	display:none;
	}
#results   {
	padding:1rem;
	
	}
#results strong  {
	color:rgb(var(--teal));
	text-transform:uppercase;
	border-bottom:1px solid rgb(var(--gold));
	padding-bottom:.5rem;
	margin-bottom:.5rem;
	font-size:1rem;
	display:inline-block;
	
	}
#results p.emph {
	color: rgba(var(--dkblue));
	line-height: 1.2;
	font-size:1rem;
}
#scale {
	display:block;
	width:70%;
	margin:0 auto 2rem;
	position:relative;
	height:15px;
	border:1px solid rgb(var(--black));
	background:linear-gradient(90deg, rgb(var(--green)) 0%, rgb(var(--neon)) 25%, rgb(var(--red)) 70%);
}
#marker {
	position:absolute;
	bottom:-22px;
	left:0;
	width:auto;
	height:15px;
	background:rgb(var(--black));
	aspect-ratio: 1/cos(30deg);
    clip-path: polygon(50% 0,100% 100%,0 100%);
	transform:translateX(-50%);
}
.resulttype  {
	position:relative;
	float:left;
	clear:both;
	width:100%;
	padding:1rem;
	margin-bottom:.5rem;
	background-color:rgba(var(--paleblue),0.2); 
	border-bottom:3px solid rgb(var(--gold));
	font-size:.65rem;	
	 }
.resulttype p {
	font-size:.75rem;
	line-height:1.3;
}
#doneyes, 
#doneno {
    position: relative;
	min-width: 80px;	
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--palegrey)) 100%) padding-box, linear-gradient(rgb(var(--cyan)) 0%, rgb(var(--teal)) 100%) border-box;
 	border-radius: 500px;
 	border: 5px solid transparent;
	color: rgb(var(--blue));
	font-family: "Montserrat", sans-serif;
 	font-weight: 500;
 	font-style: normal;
	font-size: .9rem;
	text-transform: uppercase;	
	display: flex;
	justify-content: center;
	align-items:center;
	height: 50px;
	max-width: 150px;
	cursor:pointer;
	}
.spinner {
	  position:relative;
	margin:2rem auto;
      width: 50px;
      height: 50px;
      border: 5px solid #f3f3f3; 
      border-top: 5px solid rgb(var(--blue));  
      border-radius: 50%;
      animation: spin 1s linear infinite; 
    }

    @keyframes spin {
      0% { transform: rotate(0deg); }
      100% { transform: rotate(360deg); }
    }

    .sr-only {  
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

.heateor_sss_sharing_container heateor_sss_horizontal_sharing {
	border-bottom:1px solid rgba(var(--brightblue),0.3)!important;
	padding-bottom:.5rem!important;
	margin-bottom:.5rem!important;
}
body.single-event .vsel-meta {
padding:0 1rem 0 0;
/*background:rgba(var(--cyan),0.1);*/
border-right:8px solid rgba(var(--cyan),0.4);
}
body.single-event .vsel-meta-time,
body.single-event .vsel-meta-date,
body.single-event .vsel-meta-location{
color:rgb(var(--dkblue));
font-family: "Bebas Neue", sans-serif;
	font-size:1.3rem;
}
body.single-event .vsel-meta-time span,
body.single-event .vsel-meta-date span,
body.single-event .vsel-meta-location span {
font-weight:400;
color:rgb(var(--black));
font-family: "Montserrat", sans-serif;
	font-size:1rem;
}
body.single-event .vsel-meta-link a,
a.basic-btn {
	position: relative;
	margin: 0 auto;
	padding: 0 .5rem;
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--palegrey)) 100%) padding-box, linear-gradient(rgb(var(--cyan)) 0%, rgb(var(--teal)) 100%) border-box;
 	border-radius: 500px;
 	border: 5px solid transparent;
	color: rgb(var(--blue))!important;
	font-family: "Montserrat", sans-serif;
 	font-weight: 500;
 	font-style: normal;
	font-size: .5rem;
	text-transform: uppercase;	
	display: flex;
	flex-direction: column;
	justify-content: center;	
	height: 60px;
	z-index: 1;	
	cursor: pointer;
}
body.single-event .vsel-meta-link a::after,
a.basic-btn::after {
	content: "\f105";
	position: absolute;
	top: 50%;
	right: .5rem;
	color: rgb(var(--blue));
	transform: translateY(-50%);	
	font-family: "Font Awesome";
	font-size: .8rem;
	z-index: 2;
	}
body.single-event .vsel-meta-cats {
display:none;
}
body.arch #main aside {
	flex:1 1 20%;
}
body.arch aside ul{
	margin-top:0;
}
body.arch aside ul li a span{
	color:rgb(var(--cyan));
}
body.arch aside ul li {
	margin-left:0.75rem;
}
body.arch aside ul h3:not(:first-child) {
	margin-top:1rem;
}
body.arch .listings h2 {
	font-size: 1.6rem;
	color: rgb(var(--cyan));
	border-bottom:1px solid rgb(var(--gold));
	padding-bottom:.5rem;
	margin-bottom:1.5rem;
}
.listings {
	display:flex;
	flex-direction:column;
	row-gap:1.5rem;
	align-items:stretch;
	justify-content:flex-start;
}
article.postentry {
	flex: 1 1 100%;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;	
	border-bottom:1px solid rgba(var(--dkblue),0.5);
	padding-bottom:.5rem;
}
.post-aside {
	flex:1 1 30%;
}
.post-left-side {
	flex:1 1 25%;
}
.post-right-side {
	flex:1 1 25%;
}
.postmid {
	flex:1 1 50%;
	padding:0 1rem;
}
.postdiv {
	flex:1 1 70%;
	padding-left:1rem;
	display:flex;
	flex-direction:column;
	align-items:stretch;
	justify-content:space-between;
	row-gap:.5rem;
}
.postdiv h1 a,
.postmid h1 a {
	font-size:.8rem;
	font-family: "Montserrat", sans-serif;
 	color:rgb(var(--cyan));
}
.postcontent {
	font-size:0.6rem;
}
article.postentry .meta {
	flex:1 1 100%;
	font-size:0.55rem;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	align-content:space-between;
	justify-content:center;
	border-top:1px solid rgba(var(--dkblue),0.5);
	padding-top:5px;
}
article.postentry .date {
	flex:1;	
}
article.postentry .catbox {
	flex:1;	
}
article.postentry a.cats {	
	text-align:center;
	color:rgb(var(--dkblue));
	float:right;
	margin-left:3px;
	border:1px solid rgb(var(--dkblue),0.1);
	padding:2px 5px;
}
.evlistings {
	position:relative;
	width:100%;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	row-gap:1.5rem;
	align-items:stretch;
	align-content:flex-start;
	justify-content:space-between;	
}
.event-article {
	position:relative;
	flex: 1 1 49%;
	max-width:49%;
	display:flex;
	flex-direction:column;
	border-bottom:1px solid rgba(var(--dkblue),0.5);
	padding-bottom:.25rem;	
	background: linear-gradient(to bottom, rgb(var(--white)) 0%, rgb(var(--white)) 70%, rgba(var(--ltgrey),0.7) 100%);
}
.event-art-top {
	position:relative;
	flex:none;
	background:rgb(var(--dkpurp));
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	align-content:center;
}
.ea-top-meta {
	flex:1 1 65%;
	padding:.5rem;
	text-align:center;
}
.ea-top-meta p {
	color: rgb(var(--white));
	text-align:left;
	text-transform:uppercase;
	font-weight: 500;
	padding:0;
	margin:0;
}
.ea-top-meta h1 {
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 600;
 	font-style: normal;
	font-size: 1.9rem;	
	text-align:left;
	color: rgb(var(--ltgrey));
}
.ea-top-meta h2 {
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 600;
 	font-style: normal;
	font-size: 1.75rem;	
	text-align:left;
	color: rgb(var(--ltteal));
}
.ea-thumb {
	flex:1 1 35%;
	position:relative;
	aspect-ratio:1/1;
	overflow:hidden;
	border:1px solid rgba(var(--dkblue),0.5);
}
.ea-thumb img {
	position:absolute;
	top:50%;
	left:0;
	width:100%;	
	height:auto;
	transform:translateY(-50%);
}
.event-art-text {
	position:relative;
	clear:both;
	font-size:.60rem;
	line-height:1.2;
	text-align:left;
	padding:1rem .5rem .25rem;
	min-height:150px;
}
.event-art-text  h1 {
	font-family: "Bebas Neue", sans-serif;
 	font-weight: 400;
 	font-style: normal;
	font-size: 1.6rem;	
	text-align:left;
	color: rgb(var(--cyan));
}
.event-art-btn {
	position: relative;
	margin: 0 auto;
	padding: 0 .5rem;
	background: linear-gradient(rgb(var(--white)) 0%, rgb(var(--palegrey)) 100%) padding-box, linear-gradient(rgb(var(--cyan)) 0%, rgb(var(--teal)) 100%) border-box;
 	border-radius: 500px;
 	border: 5px solid transparent;
	color: rgb(var(--blue));
	font-family: "Montserrat", sans-serif;
 	font-weight: 500;
 	font-style: normal;
	font-size: .5rem;
	text-transform: uppercase;	
	display: flex;
	flex-direction: column;
	justify-content: center;	
	height: 60px;
	z-index: 1;	
	cursor: pointer;
	margin-top:1rem;
	}
.event-art-btn::after {
	content: "\f105";
	position: absolute;
	top: 50%;
	right: .5rem;
	color: rgb(var(--blue));
	transform: translateY(-50%);	
	font-family: "Font Awesome";
	font-size: .8rem;
	z-index: 2;
	}
.pagination {
	position:relative;
	clear:both;
	width:100%;
	height:auto;
	margin:2rem 0;
	text-align:left;
	line-height:1;
	font-size:.9em;
}

.pagination span, .pagination a {
	display:block;
	float:left;
	margin: 2px 2px 2px 0;
	padding:6px 9px 5px 9px;
	text-decoration:none;
	width:auto;
	color:rgb(var(--white));
	background: rgb(var(--cyan));
}

.pagination a:hover{
	color:rgb(var(--white));
	background:rgb(var(--dkblue));
}

.pagination .current{
	padding:6px 9px 5px 9px;
	background:rgb(var(--mdpurp));
	color:rgb(var(--white));
}
/*////////////////////MEDIA QUERIES //////////////////////////////*/
@media screen and (max-width: 1440px) {
      :root {
          --edge:5%;
          }	      
      
	  #dv-holder .card-top h3 {	
	      font-size: .90rem;
		  margin-top:-.5rem;
	  }
      
      .houses,
      .jphalf1 {
          padding: 2rem 1rem 2rem calc(var(--edge) + 1rem);
          }
      .jh,
      .jphalf2 {
          padding: 2rem calc(var(--edge) + 1rem) 2rem 1rem;
          }
      .offset-left {
          margin-top: 1rem;
          margin-left: -1rem;
          margin-bottom: -1rem;
          }
      .offset-right {
          margin: -1rem -1rem 1rem 1rem;	
          }
	  #page-mast {	
          width: 50%;
          }
}
@media screen and (max-width: 1280px) { 
	 #page-mast h1 {	
	font-size: 2.5rem;
	}
      
      #subpage-mast {
          gap: .25rem;
          }
      #subpage-mast div {
          flex: 1 0 30%;	
          }
      #subpage-mast div:last-of-type {
          flex: 1 1 70%;
          }
      #serv-holder .position {
          flex: 0 1 100%;	
          min-width: 100%;
          max-width: 100%;	
          }
	
	#demos,
	#fdemos{    
    column-gap: 0.5rem;
}
body.serv header,
body.emp header,
#wide header,
body.page header,
body.single-post header,
body.single-event header {
	background-image: url("img/3X/subhead.webp");
	}
#overlay {
	background-image: url("img/3X/swirl-r.webp");
	}
body.home #bottom-section {    
    padding: 3rem 0rem;
}
#helps {
	padding: 1.5rem var(--edge);		
	}
#helps p,
#btns {
	text-align: center;
	}

}







@media screen and (max-width: 1020px) {
      :root {
          --edge:3%;	
          }	
      .apart .highlighted {
          font-size: .75rem;
          }
	  #serv-holder .card {
          flex: 1 1 48%;
          }
      #serv-holder .exp {
          flex: 1 0 100%;	
          padding: 1rem;
          order: 1;
          }
      #serv-holder .exp.last {
          order: 10;
          }
      #serv-holder .exp img {	
          width: 30%;
          }
      .dv-serv {order:2;}
      .sa-serv {order:3;}
      .ht-serv {order:4;}
      .soh-serv {order:5;}
      .j-serv {order:6;}
      .ch-serv {order:7;}
      .ed-serv {order:8;}
      .vol-serv {order:9;}
      
      #event-head {
          flex: 1 1 20%;
          }
      #sched {
          flex: 1 1 85%;
          gap: 10px;
          }
      #btm-mid #cff .cff-photo {
          max-width: 100%!important;
          float: none;
          margin: 0 0 1rem 0!important;
          }
      #btm-mid .cff-post-text {
          float: none;
          max-width: 100%!important;	
          }
      #demos, 
	#fdemos,
	#sched {
          flex-wrap: wrap;
          column-gap: 1rem;
          row-gap: 2rem;
          }
	  #fdemos {
          flex-wrap: nowrap;
          column-gap: .25rem;		  
          }
      #demos .card,
	#fdemos .card,
      .event {
          flex: 1 1 47%;	
          max-width: 47%;
          }
	 #fdemos .card {
		  flex: 1 1 25%;
		  border: 6px solid transparent;
	      }
      #page-mast {	
          width: 54%;
          font-size: 2.5rem;
          }
      .offset-top {
          margin: -1rem -1rem 1rem 1rem;
          }
      .houses,
      .jphalf1 {
          padding: 2rem 1rem 2rem calc(var(--edge) + 1.5rem);
          }
      .jh,
      .jphalf2 {
          padding: 2rem calc(var(--edge) + 1.5rem) 2rem 1rem;
          }
	   #sidebox {
		  width:32%;
	      }
      .btn {
          font-size: .75rem;
          }
	  #sidebox .btn {
		  font-size:.65rem;
	      }
      .btn::after {
          font-size: 1rem;
          }
      .btn i {
          font-size: .9rem;
          }
      #card-holder a.learnmore {	
          width: 3.5rem;
          height: 3.5rem;
          font-size: 1.7rem;
          }
      #card-holder .card-text {
          padding-bottom: 2rem;

          }
      #card-holder .card-text a h3 {	
          font-size: 1.1rem!important;
          line-height: 1;
          }
      #serv-holder .card-top h3 {
          font-size: 1.5rem!important;
          }
      .card-text,
      .card-min p,
      .card-min ul li {
          font-size: .75rem!important;
                   }
      .cff-post-text,
      #btm-mid .cff-post-text,
      .cff-count,
      .cff-viewpost-facebook,
      .cff-share-link { 	
          font-size: .7rem!important;
          }
      #homefooter,
      #footprint {
          flex-wrap: wrap;	
          }
      .sixth {
          flex: 1 1 30%;
          padding-left: .5rem;
          padding-right: .5rem;	
          text-align: center;
          }
      #leftfoot {
          line-height: 1.5;
          }
      #leftfoot h1 {	
          font-size: 1.2rem;	
          }
      #leftfoot h2,
      footer a:link,
      footer a:visited {
          font-size: .8rem;
          }
      #footer p.small {
          font-size: .6rem;
          }
      .sixth h4 {	
          font-size: .85rem;	
          }
      .sixth p {
          font-size: .6rem;
          }
      footer a.priv {
          font-size: .55rem;
          padding: .5rem 1rem;
          }
      #leftsec,
      #rightsec {
          flex: 1 1 100%;
          width: 100%;
          }
      #serv-holder ul li{
          font-size: .85rem;
          }
      #serv-holder .card-top h3{
          font-size: 1.5rem;
          }
      #serv-holder .shape i {
          font-size: 1.5rem;
          }	
	  #card-holder,
	  #serv-holder,
      #dv-holder {	
	      column-gap:.25rem;
	      row-gap:2rem;	  
	  }
	  #mast {	
	     left: 20%;
	     width: calc(34% - var(--edge));		
	 }

	  #mast h1{
	      font-size: 1rem;
	  } 
	
	#dv-holder .card {
    flex: 1 1 40%;
}
	#dv-holder .card-top-before {    
    top: 3px;
}
	.swraphalf .sbox::before {
		width:100%;
	}
	body.home #bottom-section {    
    padding: 2rem 0rem 3rem;
}
}

@media screen and (max-width: 900px) {
	#fdemos {	
	flex-wrap:wrap;
	}

    #fdemos .card {
	flex:1 1 47%;
	max-width:50%;
	min-width:47%;	
	}
	body.home #servlist ul li {
		font-size:.65rem;
	}
	.im-box:nth-of-type(1)::after {	
	width: 40%;
	}
.im-box:nth-of-type(2)::after {	
	width: 40%;
	}
.im-box:nth-of-type(3)::after {
	width: 40%;
	}
.im-box p {	
	padding-left: 40%;
	font-size:.9rem;
	}	
#smlogo {			
	width: 6rem;
}
.bigside {
		flex:1 1 68%;	
	}

.smallside {
		flex:1 1 32%;	
	}
	#cluster1 img {    
    left:-5%;
	width:110%;
   }
#render {	
	background:url('img/2X/fjc-render.webp');
	background-size:cover;
	background-position:right top;
	padding:1rem var(--edge);
	display:flex;
	align-items:center;
	align-content:center;
	justify-content:center;
	aspect-ratio:initial;
}
#render-overlay {
	flex:0 1 90%;
	position:relative;
	padding:4rem 1rem 2rem;	
	background:rgba(var(--white),0.7);
}
#render-overlay h1 {	
	font-size:1.2rem;
}
}




@media screen and (max-width: 800px) {
      body { 	
          font-size: .8rem;
          }	  
      #late-row {
          flex-direction: column;
          justify-content: flex-start;
          align-items: flex-start;
          }
      #late-row h2 {
          font-size: 1.2rem;
          display: block;
          width: 100%;
          margin-bottom: .25rem;
          }
      #late-row .soc {
          flex: none;
          width: 100%;
          }
      #btm-mid {
          flex: 1 1 50%;
          }
      #btm-right {
          flex: 1 1 50%;
          padding-top: 1.5rem;
          }
      #main {
          gap: .5rem;
          }
      #main aside {
          padding-right: .5rem;
          }
      .offset-top {
          margin: 0rem 0rem 1rem 1rem;
          }
      .offset-left {
          margin-top: 1rem;
          margin-left: 0rem;
          margin-bottom: -1rem;
          }
      .offset-right {
          margin: -1rem 0rem 1rem 1rem;	
          }
      #card-holder {
          gap: 2rem .5rem;
          }
      #card-holder .card {
          flex: 1 1 48%;
          max-width: 48%;
          }
      #side-vid {
          flex: 1 1 33%;
          max-width: 33%;
          }
      #card-holder .card-text {
          padding-bottom: 2rem;	
          }
      #subpage-mast h1 {
          font-size: 2.7rem;
          }
      #serv-holder .last .btn-holder {
          margin-top: 2rem;
          }
      #linepic {
          width:30%;
          margin-top:0!important;	
          margin-bottom:1rem;
          }
      #petpic,
      #sanepic {
          width:40%;
          }
	  body.serv #main,
      body.emp #main {
	      padding-top: 3rem;
	      }
	 
	#servlist ul li {
		font-size:.9rem;
	 }
	#impact-left {
	flex: 1 1 60%;
	}
#impact-right {
	flex: 1 1 40%;
	}

	#smlogo {	
	left: var(--edge);
	width: 6rem;

	}
.bigside {
        flex: 1 1 100%;
	padding-right:0;
    }
.servwrapper {    
    gap: 1rem;
    flex-wrap: nowrap;
}
	.swraphalf {    
    row-gap: 1rem;
}
	.swraphalf .sbox h2 {    
    margin-top: -.5rem;
    font-size: 1.3rem;
}
	.swraphalf ul li {
    font-size: .50rem;
	}
	#bottom-section h3 { 	
	font-size:1.8rem;
}
	.fold {
		flex-direction:column;
	}
	.bluebkg {
    flex: 1 1 100%;
    flex-basis: 100%;
    justify-content: flex-start;
    align-items: stretch;   
}
	   
	
	.smallside	 {
	 width:100%;
	}
	
	#footerrow {
		width:100%;
		padding:0;
		flex-direction:row;
		flex-wrap:wrap;
		justify-content:flex-start;
		align-content:flex-start;
		align-items:flex-start;
		gap:10px;
	}
	#leftfooter,
	#midfooter {
		flex:0 1 48%;
		min-width:48%;
		align-items:flex-start;
	}
	 
	#rightfooter {
		flex:1 1 100%;
		min-width:100%;
	}
	.connect {
	flex: 0 0 1.8rem;	
	height: 1.8rem;
	}
.connect i {	
	font-size: 1rem;	
	}
	footer {
		padding-top:1rem;
	}
	
}





@media screen and (max-width: 750px) {
      html {
          font-size: calc(20px + (26 - 14) * ((100vw - 300px) / (1600 - 300)));
          }
	#mast {
	top: 5%;
	height:60%;	
	}
	label {
        font-size: .65rem;
    
}
	 #statement h3 {
		 font-size:1.1rem;
	}
	#mast h1 {
		font-size:.65rem;
	}
	  #mast h1 span {	
	      font-size: 2rem;	
	      margin-bottom:.25rem;
	  }
	#serv-holder .exp { 		
        padding: .5rem;
    }	
	body.home #logo {	
	padding-bottom:.5rem;
	}
	
     /* body.home #logo img {		
	      width: 50%;	      		
	  }*/
	  #mission {	
		  font-size:.70rem;
		  line-height:1.2;
	      }
	  .btn {
        font-size: .60rem;
      }
	  body.home #servlist ul li {
          font-size:.65rem;
          }
	  #demo-div{    
    	padding: 3rem var(--edge);
		}
      body.emp #serv-holder {
          justify-content: flex-start;
          align-items: flex-start;
          align-content: flex-start;
          }
     #main-post-content {
          padding-top: 1rem;
          }
      .halves {	
          flex-direction: column;	
          }
      .half {
          flex: 1 1 100%;	
          }
	   #impact .halves {	
          flex-direction: row;	
          }
       #impact .half {
          flex: 1 1 50%;	
          }
      .preschool,
      .purplebox {
          flex-direction: column;	
          padding: 1rem 0;
          font-size: .7rem;
          }
      .purplebox {
              padding-bottom:0;
          }
      .houses,
      .jphalf1,
      .jh,
      .jphalf2 {
          flex: 1 1 100%;
          padding: 0rem calc(var(--edge) + 2rem);
          min-width:100%;
          }
	#wide .jphalf1 {
		border-bottom:1rem solid #fff;
		padding-bottom:1rem;
	}
	#wide .jphalf2 {		
		padding-top:1rem;
		padding-bottom:1rem;
	}
	.shrink {
		
		width:50%;
		margin:0 25%;
	}
      .houses {
          padding-top:2rem;
          padding-bottom:1rem;
          }
      .jh {
          padding-top:1rem;
          padding-bottom:2rem;
          }
      .full-bkg ul li {
          font-size: .7rem;
          }
      #demos,
		#fdemos{	
          column-gap: 0.25rem;
          row-gap: 1.5rem;
          flex-wrap: wrap;
          }
      #card-holder .card,
      #demos .card,
		#fdemos .card {
          flex: 1 1 48%;
          max-width: 48%;
          }
      body.emp #serv-holder {
          flex-wrap: wrap;
          flex-direction: column;
          column-gap: 0rem;
          row-gap: .5rem;
          }
      .positions,
      #benefits {
          flex: 1 1 100%;
          max-width: 100%;
          min-width: 100%;
          }
      #benefits {
          padding: .5rem;
          background: rgba(var(--cyan),0.1);
          border: none;
          }
      #benefits .card-text {
          padding-top: 0;
          }

      #main {
          flex-wrap: wrap;
          flex-direction: column;
          align-items: flex-start;
          padding-left: .5rem;
          padding-right: .5rem;
          }
      #main aside {
          flex: 1 0 100%;
          width: 100%;
          max-width: none;
          padding-right: 0!important;
          border: 0;
          padding-bottom: 2rem!important;
          display: flex;
          flex-direction: row;
          align-content: stretch;
          justify-content: stretch;
          }
      #main-content {
          flex: 1 1 100%;
		  width:100%;
          padding-left: 0;
          border: 0;
          }
      #main aside ul {
          flex: 1 1 50%;
          max-width: 50%;
          float:left;
          padding-right: .5rem;
          margin-left: 0;
          padding-left: 0;
          order: 1;
          }
      #main aside .cont {
          flex: 1 1 50%;
          max-width: 50%;
          order: 2;
          }
      body.page header,
      body.single-post header,
	body.single-event header,
      body.serv header,
      body.emp header,
	body.arch header,
	#wide header {
          aspect-ratio: 3/1;
          }
      body.page header::after,
      body.single-post header::after,
	body.single-event header::after,
	#wide header::after {	
          content: "";
          position: absolute;
          bottom: 0rem;
          left: var(--edge);
          right: var(--edge);	
		  width:auto;
          min-height: 3rem;
          z-index: 3;
          background: rgba(var(--blue),0.7);
          border-top-left-radius: 1rem;
          border-top-right-radius: 1rem;
          border-bottom-left-radius: 0rem;
          border-bottom-right-radius: 0rem;
          }
      body.serv header::after,
      body.emp header::after,
      body.indserv header::after,
	body.arch header::after,
	#wide header::after {	
          height: auto;
          min-height: 4rem;	
          background: rgb(var(--white));
          }
      body.dv.page header::after {
          background: rgba(var(--purple),0.7);	
          }
      body.sa.page header::after {
          background: rgba(var(--teal),0.7);	
          }
      body.ht.page header::after {
          background: rgba(var(--dkturq),0.7);	
          }
      #feature-photo,
      #banner-head,
      body.dv.page #feature-photo,
      body.sa.page #feature-photo,
      body.ht.page #feature-photo,
      body.soh.page #feature-photo,
      body.single-post #feature-photo,
      body.page #feature-photo,
	#wide #banner-head {
          position: relative;
          float:left;
          left: 0;
		  right:0;
          bottom:0;
          width: 100%;
          height: auto;
          aspect-ratio: 2/1;
          border-radius: 0%!important;
          border: 0px solid rgb(var(--white));
          outline: 0px solid rgb(var(--ltteal));
          outline-offset: 0rem;
          overflow: hidden;
          z-index: 0;
          margin-top: 2rem;
          }
      body.single-post #feature-photo::before,
	body.single-event #feature-photo::before,
      body.page #feature-photo::before {
          content: "";
          display: none;
          }
      body.dv.page #feature-photo img,
      body.sa.page #feature-photo img,
      body.ht.page #feature-photo img,
      body.soh.page #feature-photo img,
      body.single-post #feature-photo img,
      body.page #feature-photo img,
	#wide #feature-photo img{
          border-radius: 0%!important;
          width: 100%;
          height: auto;
          min-height: 100%;
          aspect-ratio: initial;
          }
	
	body.single-event #feature-photo {		
    bottom: -68%;
    width: 20%;
    border: 0px solid rgb(var(--white));
    outline: 0px solid rgb(var(--ltteal));
    outline-offset: 0rem;  
		border-radius:0%;
          }
	body.single-event #feature-photo img {	
		border-radius:0%;
	}
      body.dv.page #feature-photo img,
      body.sa.page #feature-photo img,
      body.ht.page #feature-photo img,
      body.soh.page #feature-photo img {
          display: none;
          }
      #banner-head img {
          height: 100%;
          width: auto;
          min-width: 100%;
          max-width: none;
		  left:50%;
		  top:50%;
		  transform:translate(-50%,-50%);
          }	
      body.dv.page #feature-photo {
          background-image: url("img/2X/dv.webp");
          background-position: center center;
          background-size: cover;
          background-repeat: no-repeat;
          }
      body.sa.page #feature-photo {
          background-image: url("img/2X/sa.webp");
          background-position: center center;
          background-size: cover;
          background-repeat: no-repeat;
          }
      body.ht.page #feature-photo {
          background-image: url("img/2X/ht.webp");
          background-position: center center;
          background-size: cover;
          background-repeat: no-repeat;
          }
      body.soh.page #feature-photo {
          background-image: url("img/2X/soh.webp");
          background-position: center center;
          background-size: cover;
          background-repeat: no-repeat;
          }
      #subpage-mast {
		  flex-direction:column;
		  align-items:flex-start;
          bottom: -2rem;
          height: 5rem;	
          }
	#subpage-mast div {
		flex:1 1 100%;
	}
      #subpage-mast h1 {
          font-size: 2.1rem;
          }
      #subpage-mast p {
          font-size: .60rem;
          line-height: 1;
		  padding-bottom:.5rem;
          }
      body.sa header::after,
      body.dv header::after,
      body.ht header::after,
      body.soh header::after {
          width: 94%;
          height: 3rem;
          }
      #topmain {
          flex-direction: column;
          flex-wrap: wrap;
          height: auto!important;
          aspect-ratio: initial!important;
          align-items: flex-start;
          }
      #topmain .content {
          flex: 1 0 100%;
          order: 1;
          }
      #side-vid {
          flex: 1 1 100%;
          max-width: 100%;
          min-width: 98%;
          order: 2;
          }
      #page-mast {
          width: auto;
          bottom: 0rem;
          min-height: 2rem;
          height: auto;
          right:var(--edge);
          }
      body.page #logo,
      body.single-post #logo {	
          left: 1rem;
          }
      body.page nav,
      body.single-post nav {	
          align-content: flex-end;
          padding: .5rem 0 .5rem 10rem;
          }      
      #bottom-inset {	
          padding: 2rem var(--edge) 1rem;
          flex-direction: column;
          justify-content: flex-start;	
          gap: 0;
          }
      #btm-mid {
          flex: 1 1 100%;
          padding: 0;
          }
      #btm-right {
          flex: 1 1 100%;
          padding-top: 0;
          }	
      #late-row h2 {
          font-size: 2rem!important;
          }
     
      #topmain {
          padding-top: .75rem;
          padding-bottom: .5rem;
          }
      #page-mast h1 {
          font-size: 1.7rem;	
          }
      body.single-post #page-mast h1 {
          font-size: 1.3rem;
		  color:rgb(var(--white));
          }	
      .withaside {
          flex-direction: column;	
          align-content: flex-start;
          justify-content: flex-start;
          align-items: flex-start;	
          }
      .withaside aside {
          flex: 1 1 100%;	
          padding: .5rem 0rem;	
          order: 1;	
          border-right: 0px solid rgb(var(--brightteal));	
          }
      .withaside .textcol {
          flex: 1 1 100%;
          padding-left: 0rem;
          }
      .thirdcol,
      .thirdcol-r {
          flex: 1 1 100%;	
          padding: .5rem 0rem;	
          }
      .restcol,
      .restcol-l {
          flex: 1 1 100%;	
          }
      #serv-holder .positions {
          flex: 1 1 74%;
          flex-direction: column;
          align-content: flex-start;
          justify-content: flex-start;
          column-gap:0rem;
          }
      #serv-holder .position {
          flex: 0 1 100%;	
          max-width: 100%;	
          min-width:100%;
          }
      #serv-holder .exp img {	
          top: -1rem;
          right: -1rem;
          width: 45%;
          }
      #serv-holder .btn-holder img {	
          left: -1.5rem;
          width: 45%;
          margin: 0 1.25rem -1rem 0;
          }
      #serv-holder .last .btn-holder {	
          padding-left: 45%;
          }
	  #sidebox {
		  width:45%;
		  padding:.75rem;
	      }
		
	#helps {
		padding-top:2rem;
		padding-bottom:2rem;
	}
	
	#impact-left {
		flex:1 1 70%;
	}
	#impact-left p {
		padding-right:2rem;
	}
	#impact-right {
		flex:1 1 30%;
	}
	#cluster2 {
		width:145%;
		margin-top:35%;
		right:-.5rem;
	}
	#impact p {
		border-bottom: 0px solid rgba(var(--white), 0.5);
	}
	.resource {
    flex: 1 1 100%;
	max-width:100%;
	flex-wrap:wrap;
          }
	#preview .qp p {
     font-size:.65rem;
		line-height:1.2;
	}
	.qp {
     padding:.5rem;
	}
	.qp p {
     font-size:.80rem;
	}
	.circlethis {
    width:33%;
    }
.pad-left {
    padding-left:28%;
 }
	.hang-left {
	margin:1.25rem 1.25rem 1.25rem -.5rem;
}
	 .swraphalf .exp img {  
    outline-offset: .2rem;
}
	#main-content .swraphalf .sbox h2::before {
		display:none;
	}
	#main-content .swraphalf .sbox::before {
	content:"";
	position:absolute;
	top:-1rem;
	left:0;
	width:100%;
	height:1rem;
	background:rgb(var(--palecyan));
	border-top-left-radius:.25rem;
	border-top-right-radius:.25rem;
}
	
#bxs {
	column-gap:10px;
		
}
.bottom-box {
	outline:0px solid rgb(var(--white));
	outline-offset:0;
	font-size:.75rem;
	
}	
	.bluebkg {
	padding:.5rem;
	}
body.single-event #page-mast, 
body.dv.page #page-mast, 
body.sa.page #page-mast, 
body.ht.page #page-mast, 
body.soh.page #page-mast {
    width: auto;
}	
	body.serv header,
body.emp header,
#wide header,
body.page header,
body.single-post header,
body.single-event header {
	background-image: url("img/2X/subhead.webp");
	}
#overlay {
	background-image: url("img/2X/swirl-r.webp");
	}


.lgside {
		padding-right:0;
	}
.smallside.iframed {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin-top:1rem;
}
}




@media screen and (max-width: 600px) {
	.hthalves,
	.evlistings {
		flex-direction:column;
	}
	#cluster1 {
		display:none;
	}
	#statement {
		flex:1 1 100%;
		padding-top:1.5rem;
	}
	
	#demo-div,
#events { 
	background:rgb(var(--white));
	}
	.losethis {
	  display:none;
	}
	.squaresix {
	position:relative;
	border-radius:0;
	border-width:4px 0px;
	width:100%!important;
	max-width:100%!important;
	padding:0;
	left:0;
	outline-width:0;
	outline-offset:0;	
	margin:-25% 0!important;
	clip-path: inset(25% 0% 25% 0%);
	aspect-ratio:auto!important;
	}
	.evlistings {
		row-gap:1rem;
		align-items:flex-start;
		justify-content:flex-start;
		align-content:flex-start;
		padding-left:.5rem;
		padding-right:.5rem;
	}
	.hthalf,
	.event-article {
		flex:1 1 100%;
		max-width:100%;
		width:100%;
		min-width:100%;
	}
	img.whole {
		border-radius:0;
		border:none;
		outline:none;
	}
	.connect {
	flex: 0 0 2.5rem;	
	height: 2.5rem;
	}
.connect i {	
	font-size: 1.5rem;	
	}
	#footerrow {
		width:100%;
		padding:1rem 0;
		display:block;
	}
	#leftfooter,
	#midfooter {
		flex:none;
		min-width:100%;
		padding:1rem 0;
	}
      #demos,
	#fdemos {	
          flex-direction: column;
          flex-wrap:wrap;
          align-items:flex-start;
          justify-content:flex-start;
          row-gap:1rem;
          column-gap:0rem;
          }
      #card-holder .card,
      #demos .card,
		#fdemos .card{
          flex: 1 1 100%;
          max-width: 100%;
          min-width:100%;
          }
	#fdemos {		
	      flex-direction: row;
          justify-content: space-between;	
          align-items: stretch;
		column-gap:.25rem;
		row-gap:1.5rem;
	}
	#fdemos .card {
        flex: 1 1 47%;
        max-width: 50%;
        min-width: 45%;
	}
      .formwrap2 {
          flex-direction:column;  
          }
      .formwrap2 .spaced {
          padding-left:0;
          }
      #dv-1 .card-text,
      #dv-2 .card-text,
      #dv-3 .card-text,
      #dv-4 .card-text {
          padding-bottom:1rem;
          } 
	  #sidebox {
		  width:100%;
		  padding:.25rem 1rem;
		  margin:0rem 0 1rem 0;
		  border-left:none;
		  border-bottom:4px solid rgb(var(--brightteal));
	      }
	  #serv-holder .card {
          flex: 1 1 100%;
		  min-width:100%;
          }
	#mast h1 {
		font-size:.60rem;
	}
	  #mast h1 span {	
	      font-size: 1.5rem;
	  }
	body.home #logo {	
	padding-bottom:.25rem;
	}
	#mission {
        font-size: .6rem;
        line-height: 1;
}
	#events {    
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 20px;
}
	#event-head {
        flex: 1 1 100%;
		min-width:100%;
		padding-bottom:1.5rem;
    }
	#footerrow {    
    flex-direction: column;
    justify-content: center;
    gap: 20px;
}
	#leftfoot,
	#rightfoot {
    max-width: 100%;
    flex:1 1 100%;
}
	#leftfoot {
		text-align:center;
	}
	#impact {
		padding-top:0;
		margin-top:1rem;
	}
	#impact-row {
		flex-direction:column;
		align-items:flex-start;
		
	}
	#impact-left {
		order:2;
		flex:1 1 100%;
		padding-right:0;
	}
	#impact-left h1 {
		margin-top:-1rem;
	}
	#impact-right {
		order:1;
		flex:1 1 100%;		
	}
	#cluster2 {
		position:relative;
		float:right;
		width:60%;
		margin-left:auto;
		margin-right:auto;
		margin-top:-1rem;
		top:0;
		right:0;
	}
	#sched {
          flex-wrap: wrap;
          column-gap: .25rem;
          row-gap: 2rem;
          }
	  
.event {
          flex: 1 1 47%;	
	min-width:47%;
          max-width: none;
          }
	#smlogo {
	width: 5rem;
	}
	#serv-holder .btn-holder img,
    #serv-holder .exp img {
    outline-offset: .4rem;
}
	.bigside {
		flex:1 1 100%;
		padding:0;
	order:2;
		margin-bottom:1rem;
	}
.smallside {
		flex:1 1 100%;
	order:1;
	margin-bottom:1rem;
	}
.meetings {
	flex-direction:column;
		row-gap:.5rem;
		column-gap:0rem;
	}
	
	.meetings .third,
	.meetings .quarter {
		flex:1 1 100%;
		width:100%!important;
	}
	.servwrapper {   
    gap: 1rem;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    margin-bottom: 1rem;
}
	.swraphalf {
    flex: 1 1 100%;
    row-gap: 1rem;
}
	.swraphalf ul li {
        font-size: .75rem;
    }
	#main-content .swraphalf .sbox h2::before {
		display:inline-block;
	}
	#main-content .swraphalf .sbox::before {
	display:none;
}
	body.ht #main aside,
body.dv #main aside,
body.sa #main aside,
body.soh #main aside {
   flex-direction:column;
   justify-content:flex-start;
}

body.ht #main aside ul,
body.dv #main aside ul,
body.sa #main aside ul,
body.soh #main aside ul,
body.ht #main aside .cont,
body.dv #main aside .cont,
body.sa #main aside .cont,
body.soh #main aside .cont {
  flex:1 1 100%;
  min-width:100%;
  padding-right:0;
}
body.ht #main aside ul,
body.dv #main aside ul,
body.sa #main aside ul,
body.soh #main aside ul {
	padding-left:1.75rem;
	}
	
	#bottom-section h3 { 	
	font-size:1.3rem;
}
	
	}

@media screen and (max-width: 480px) {
      body.page header,
      body.single-post header,          
      body.serv header,
      body.emp header,
	body.arch header,
	#wide header {
          aspect-ratio: 2/1;
          }
	body.home header {
		overflow:visible;
	}
	.sb-slidebar {	
	padding:80px 1rem 1rem 1rem;
	}
	.sb-slidebar ul li a {	
	padding:.35rem 0rem;
	}
	  #mast {
	    top: 0;
	    height:75%;	
		left:1rem;
		transform:none;	
		 padding-top:2.25rem;
	}
	body.home #logo {	
	    display:none;
	}
	body.home #smlogo {	
		left:1rem;
		bottom:0;
		margin-bottom:-2rem;
	    display:block;		
		top:auto;
		width:4rem;	
		height:4rem;
		text-align:left;		
	}
	 body.home #smlogo img {
		 position:absolute;
		 top:0;
		 left:0;
		 width:4rem; 
		 aspect-ratio:1/1;
		 height:4rem;
	}

      #main aside {	
          display: flex;
          flex-direction: column;
          align-content: flex-start;
          justify-content: flex-start;
          }	
      #main aside ul {
          flex: 1 1 100%;
          max-width: 100%;	
          padding-right: 0rem;
          padding-left: .75rem;
          }
      #main aside .cont {
          flex: 1 1 100%;
          max-width: 100%;
          }
      #footerrow {	
          flex-direction: column;
          justify-content: flex-start;
          align-items: flex-start;
          gap: .5rem;	
          }
      #leftfoot,
      #rightfoot {
          flex: 1 1 100%!important;
          min-width: 98%;
          }
      #leftfoot {
          text-align: center;
          padding-bottom: 1rem;
          }
      #ftlogo {	
          position: relative;
          display: inline-block;
          margin: 0 auto;
          width: 6rem;
          max-width: 50%;
          }
	
   #btns {
	   flex-wrap:wrap;
	}
   .btn {
       font-size: .50rem;
	   padding: 0 35px 0 55px;
    }
	#fdemos {		
	      flex-direction: column;
          justify-content: flex-start;	
          align-items: flex-start;
		  column-gap:0;
		  row-gap:2.5rem;
		
	}
	#fdemos .card {
        flex: 1 1 100%;
        max-width: 100%;
        min-width: 100%;
	}
	#adbuttons {
          flex-wrap: wrap;
          flex-direction:column;
          row-gap: 5px;
          column-gap: 0rem;
          }
	  

	#impact-left h1 {
		margin-top:0rem;
	}
	#cluster2 {		
		width:70%;
	}
	.resource-pic {	
	flex:1 1 100%;
	aspect-ratio:3/1;
	border-right:0px solid rgb(var(--brightteal));
	overflow:hidden;
	}
.resource img {
	display:block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: auto;
	aspect-ratio:initial;
	transform:translateY(-50%);		
	}
.resource-text {	
	flex:1 1 100%;
	padding:1rem .5rem;
	}
	.pad-left {
    padding-left:0%;
 }
.calloutbx {	
	width:100%;
	min-height:auto;
	margin:1rem 0rem;	
}
.circlethis,
.swraphalf .exp img {
	position:relative;
	border-radius:0;
	border-width:4px 0px;
	width:100%;
	margin:1rem 0rem 1.5rem;
	left:0;
	outline-width:0;
	outline-offset:0;	
	box-shadow: 0 -5px 0 rgb(var(--ltteal)), 0 5px 0 rgb(var(--ltteal));
	}
	.makewhole {
		width:100%;
		margin:1rem 0rem;
	}
	.staycircle { 
	border-radius:100%!important;
	border: 4px solid rgb(var(--cyan))!important;
	outline: 3px solid rgb(var(--ltteal))!important;
 	outline-offset: .25rem!important;
	}
.swraphalf .last .btn-holder {
    width: 100%;
    padding-left: 0;
    position: relative;
    margin-top:0.5rem;
}
.swraphalf ul li {
        font-size: .6rem;
    }
.sb-slidebar ul li a {	
	font-size:.65rem;
	padding:.35rem 0rem;
	}
.bottom-box {
	padding:1rem .25rem;	
	font-size:.75rem;
	margin-bottom:-5rem;
	
}
.bottom-box i {
	font-size:1.1rem;
	margin-bottom:4px;
	
	}
	#events {
		padding-top:4rem;
	}
body.serv header,
body.emp header,
#wide header,
body.page header,
body.single-post header,
body.single-event header {
	background-image: url("img/1X/subhead.webp");
	}

#overlay {
	background-image: url("img/1X/swirl-r.webp");
	}


#dv .card-top {
	background-image: url("img/1X/dv.webp");		
	}
#sa .card-top {
	background-image: url("img/1X/sa.webp");		
	}
#soh .card-top {
	background-image: url("img/1X/soh.webp");	
	}
#ht .card-top {
	background-image: url("img/1X/ht.webp");	
	}
#pre-1 .card-top {
	background-image: url("img/1X/chtherapist.webp");
	}
#pre-2 .card-top {
	background-image: url("img/1X/ccare.webp");
	}
#pre-3 .card-top {
	background-image: url("img/1X/people3.webp");
	}
#pre-4 .card-top {
	background-image: url("img/1X/teach.webp");
	}
#dv-1 .card-top {
	background-image: url("img/1X/therapist.webp");
	}
#dv-1.wl .card-top {
	background-image: url("img/1X/cleaning.webp");
	}
#dv-1.vol .card-top {
	background-image: url("img/1X/movers.webp");
	}
#dv-1.htserv .card-top {
	background-image: url("img/1X/ht-legal.webp");
	}
#dv-2 .card-top {
	background-image: url("img/1X/casemgr-sm.webp");
	}
#dv-2.wl .card-top {
	background-image: url("img/1X/office-supplies.webp");
	}
#dv-2.vol .card-top {
	background-image: url("img/1X/reception.webp");
	}
#dv-2.htserv .card-top {
	background-image: url("img/1X/ht-cm.webp");
	}
#dv-3 .card-top {
	background-image: url("img/1X/househelp2.webp");
	}
#dv-3.wl .card-top {
	background-image: url("img/1X/home-supplies.webp");
	}
#dv-3.vol .card-top {
	background-image: url("img/1X/event-vol.webp");
	}
#dv-3.htserv .card-top {
	background-image: url("img/1X/ht-counsel.webp");
	}
#dv-4 .card-top {
	background-image: url("img/1X/legalaid.webp");
	}
#dv-4.wl .card-top {
	background-image: url("img/1X/preschool-supplies.webp");
	}
#dv-4.vol .card-top {
	background-image: url("img/1X/pro-vol.webp");
	}
#dv-4.htserv .card-top {
	background-image: url("img/1X/ht-housing.webp");
	}
#dv-5 .card-top {
	background-image: url("img/1X/sanetrain.webp");
	}
#dv-1.soh .card-top {
	background-image:url("img/1X/counselor-soh.webp");
	}
#dv-2.soh .card-top {
	background-image:url("img/1X/cm-soh.webp");
	}
#dv-4.soh .card-top {
	background-image:url("img/1X/adv-soh.webp");
	}
#dv-5.soh .card-top {
	background-image:url("img/1X/referral-soh.webp");
	}
body.dv.page #feature-photo {
          background-image: url("img/1X/dv.webp");
}
body.sa.page #feature-photo {
          background-image: url("img/1X/sa.webp");
          }
body.ht.page #feature-photo {
          background-image: url("img/1X/ht.webp");
          }
body.soh.page #feature-photo {
          background-image: url("img/1X/soh.webp");
          }	
}
@media screen and (max-width: 380px) {
#mast h1{
	   font-size:.45rem;
	}
#mast h1 span{
	   font-size:.80rem;
	}
	body.home #smlogo {			
		margin-bottom:-1.75rem;
	}
	body.home #smlogo img {		 
		 width:3.5rem; 
		 height:3.5rem;
	}
	
	.bottom-box {		
		font-size:.65rem;
		
	}
}