@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap');

/* variables
--------------------------------------------------  */
:root {
	--dc-brand-blue-dark:  #282B65;
	--dc-brand-blue-light: #6AA0C9;

	--dc-blue:   		 #465074;
	--dc-light-blue: #DADCE4;
	--dc-lighter-blue: #F1F6FC;
	--dc-blue-gray:  #C0C2C2;
	--dc-beige:      #EBE6C9;
	--dc-light-beige:#F5F2E4;
	--dc-dark-gray:	   #404040;
	--dc-gray:				 #9F9F9F;
	--dc-light-gray:	 #cccccc;
	--dc-lighter-gray: #F0F0F0;
	--dc-off-white:  	 #F6F6F1;
	
	--dc-space-xs: 		 20px;
	--dc-space-sm: 		 40px;
	--dc-space-md: 		 80px;
	--dc-space-lg: 		 100px;
	--dc-space-xl: 		 120px;
}


html { color: var(--dc-dark-gray); font-size: 1em; line-height: 1.4; }

/* interface styles
----------------------------------------------------------------------------- */
body {
	font: 16px/24px 'Lato', "Helvetica Neue", Helvetica, Arial, sans-serif;
	margin: 0;
	padding: 0;
	color: var(--dc-dark-gray);
	line-height: 100%;
	background-color: var(--dc-blue);
	background-image: url(../img/bg-interface-blue-ridge.jpg); /* default background image */
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.NewJuneLight { font-family: NewJuneLight; }
.NewJuneMedium { font-family: NewJuneMedium; }
.NewJuneSemibold { font-family: NewJuneSemibold; }

#wrapper {
	position: relative;
	width: 90%;
	max-width: 1440px;
	margin: 20px auto;
	padding: 0;
	box-sizing: border-box;
	background-color: #ffffff;
	border-radius: 15px;
	overflow: hidden;
}

@media screen and (max-width: 900px) {
	body {
		background-image: none;
	}
	#wrapper {
		width: 100%;
		margin: 0;
		padding: 0;
		border-radius: 0;
	}
}

/* some generics
----------------------------------------------------------------------------- */
::-moz-selection { background: #aac7e2; text-shadow: none; }
::selection { background: #aac7e2; text-shadow: none; }

audio, canvas, iframe, img, svg, video { vertical-align: middle; }
fieldset { border: 0; margin: 0; padding: 0; }
textarea { resize: vertical; }

hr {
	clear: both;
	display: block;
	width: 100%;
	height: 1px;
	border: 0;
	border-top: 2px solid var(--dc-brand-blue-light);
	margin: 25px auto;
	padding: 0;
}
.hr-top {
	border-top: 1px solid var(--dc-brand-blue-light);
	padding-block: 40px;
	margin-top: 40px;
}
.hr-btm {
	border-bottom: 1px solid var(--dc-brand-blue-light);
	padding-block: 40px;
	margin-bottom: 40px;
}

a { color: var(--dc-brand-blue-light); text-decoration: none; }
a:hover { color: var(--dc-brand-blue-dark); }
.entry-content a:hover { text-decoration: underline; }

.entry-content a.cta-btn:hover,
.entry-content .location a:hover,
.entry-content .columns .one-third a:hover { text-decoration: none; }

.cta-btn,
form .ctct-button,
form .gform_button,
.cta-btn-container a {
	display: inline-block;
	margin: 0 0 20px 0;
	padding: 10px 20px ;
	color: var(--dc-blue);
	font-size: 14px;
	font-weight: 400;
	line-height: 150%;
	text-transform: uppercase;
	background-color: var(--dc-beige);
	box-sizing: border-box;
	border: 1px solid var(--dc-light-blue);
	border-radius: 25px;
	transition: all 0.33s ease-in-out;
}
.cta-btn::after {
	font-family: "FontAwesome";
	font-size: 16px;
	content: "\f105";
	padding-left: 7px;
	padding-right: 3px;
	transition: all 0.33s ease-in-out;
}
.cta-btn:hover,
form .ctct-button:hover,
form .gform_button:hover,
.cta-btn-container a:hover {
	color: var(--dc-blue);
	background-color: var(--dc-lighter-blue);
	box-sizing: border-box;
	border: 1px solid var(--dc-blue);
}
.cta-btn:hover::after {
	padding-left: 10px;
	padding-right: 0px;
}

.cta-btn i,
form .gform_button i,
.cta-btn-container a i { font-size: 18px; }


.cta-btn.display-single {
	display: table;
}

/* back to button */
.back-to-btn {
	display: inline-block;
	margin: 20px 0;
	padding: 0;
	color: var(--dc-brand-blue-light);;
	font-size: 16px;
	font-weight: 400;
	line-height: 150%;
}
.back-to-btn::before {
	display: inline-block;
	font-family: "FontAwesome";
	font-size: 18px;
	content: "\f104";
	width: 20px;
	text-align: left;
}

/* &nbsp; <i class="fa fa-angle-right" aria-hidden="true"></i> */


.for-mobile, #mobile-menu, #mobile-call-cta { display: none; }
.for-desktop { display: block; }

.entry-content {
	padding-top: 50px;
}

/* header
----------------------------------------------------------------------------- */
#announcement {
	position: relative;
  width: 90%;
	max-width: 1440px;
  margin: 0 auto;
	padding: 15px 0;
  box-sizing: border-box;
	border-bottom-right-radius: 15px;
	border-bottom-left-radius: 15px;
  overflow: hidden;
	color: #ffffff;
	text-align: center;
	font-size: 16px;
	background-color: var(--dc-brand-blue-dark);
}
#announcement a {
	display: block;
	color: #ffffff;
}
@media screen and (max-width: 900px) {
	#announcement {
		width: 100%;
		margin: 0;
		border-radius: 0px;
	}
}

#header-spacer { /* keep space of header active while animating the fixed header into view */
	width: 100%;
	height:  200px;
}
#header-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 200px;
	box-sizing: border-box;
}
#header {
	position: relative;
	width: 100%;
	height: 200px;
	padding: 0 40px;
	box-sizing: border-box;
	background-color: #fff;
}
#logo,
#logo-persistent {
	position: absolute;
	top: 30px;
	left: 40px;
	display: block;
	width: 160px;
	height: auto;
}
#logo-persistent { display: none; }

#logo img,
#logo-persistent img { width: 100%; }

/* persistent */
#header-container.reset,
#header-container.reset #header { height: 0px; }

#header-container.persistent,
#header-container.persistent #header {
	height: 90px;
	border-bottom: 1px solid #e7e9ea;
	-webkit-transition: height .5s ease-out;
	-moz-transition: height .5s ease-out;
	-ms-transition: height .5s ease-out;
	-o-transition: height .5s ease-out;
	transition: height .5s ease-out;
}
#header-container.persistent #header { position: fixed; top: 0; left: 0; z-index: 99; }
#header-container.persistent #logo { display: none; }
#header-container.persistent #logo-persistent { display: block; max-width: 100px; width: 100px; bottom: 25px; }



/* social / search / navigation / badges
----------------------------------------------------------------------------- */
#header #mobile-menu { display: none; }
#header #social-search {
	position: absolute;
	top: 60px;
	right: 40px;
	width: auto;
	text-align: right;
}
#header #social-search a {
	float: right;
	height: 28px;
	line-height: 28px;
	font-size: 13px;
	color: var(--dc-blue);
	margin: 0 10px 0 0;
	box-sizing: border-box;
	background-size: 20px;
	background-position: calc(100% - 10px) 50%;
	background-repeat: no-repeat;
	border-radius: 15px;
	border: 1px solid #ffffff;
	font-family: NewJuneLight, 'Lato';
}
#header #social-search a.icon-phone {
	padding: 2px 35px 0px 10px;
	background-image: url(../img/icon-phone.png);
}
#header #social-search a.button-style {
	overflow: hidden;
	padding: 0px 10px;
	margin: 0;
	border: 1px solid var(--dc-blue);
	transition: all 0.33s ease-in-out;
	/* background-image: url(../img/icon-online-payments@2x.png); */
}
#header #social-search a.button-style:hover {
	color: #ffffff;
	background-color: var(--dc-blue);
}
/* #header #social-search a.icon-mail { background-image: url(../img/icon-mail.png); }
#header #social-search a.icon-facebook { background-image: url(../img/icon-facebook.png); margin: 0; } */


#header #social-search .search-form {
	width: 230px;
	height: 36px;
	float: right;
	display: none; /* added 11.13.2020 */
}
#header #social-search .search-form input {
	width: 215px;
	height: 30px;
	color: #666d89;
	font-size: 13px;
	padding: 2px 0 0 2%;
	box-sizing: border-box;
	border: 2px solid #666d89;
}

#header nav#main-navigation,
#header nav#secondary-navigation {
	position: absolute;
	bottom: 0px;
	z-index: 100;
}
#header nav#main-navigation {
	left: auto;
	right: 0;
	width: 100%;
	padding: 0 40px 0 0;
	background-color: var(--dc-light-beige);
}
#header nav#secondary-navigation {
	top: 106px;
	right: 40px;
	bottom: auto;
	z-index: 101;
}

#header nav#main-navigation ul,
#header nav#secondary-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#header nav#main-navigation ul li,
#header nav#secondary-navigation ul li {
	position: relative;
	float: left;
	padding: 0 25px;
}
#header nav#main-navigation ul li:last-child,
#header nav#secondary-navigation ul li:last-child {
	padding-right: 0;
}
#header nav#main-navigation ul li::after,
#header nav#secondary-navigation ul li::after {
	position: absolute;
	top: calc(50% - 10px);
	right: 0;
	content: "";
	width: 1px;
	height: 20px;
	background-color: var(--dc-light-blue);
}
#header nav#main-navigation ul li ul li::after,
#header nav#main-navigation ul li:last-child::after,
#header nav#secondary-navigation ul li ul li::after,
#header nav#secondary-navigation ul li:last-child::after {
	content: "";
	width: 0px;
	background-color: none;
}
#header nav#secondary-navigation ul li::after {
	top: calc(50% - 7px);
	height: 14px;
}

#header nav#main-navigation ul li a,
#header nav#secondary-navigation ul li a {
	display: block;
	color: var(--dc-blue);
	font-size: 14px;
	font-family: NewJuneMedium;
	font-weight: normal;
	text-transform: uppercase;
}
#header nav#secondary-navigation ul li a {
	font-size: 13px;
	padding-block: 4px;
	font-family: NewJuneLight, 'Lato';
}
#header nav#secondary-navigation ul li ul li a {
	font-size: 14px;
	font-family: NewJuneMedium, 'Lato';
}
#header nav#main-navigation ul li a:hover,
#header nav#secondary-navigation ul li a:hover { color: var(--dc-brand-blue-dark); }
#header nav#main-navigation ul li.current-menu-item a,
#header nav#secondary-navigation ul li.current-menu-item a,
#header nav#main-navigation ul li.current-menu-ancestor a,
#header nav#main-navigation ul li.current-page-ancestor a,
#header nav#secondary-navigation ul li.current-menu-ancestor a { color: var(--dc-brand-blue-dark); font-family: NewJuneSemibold; }

#header nav#main-navigation ul li ul,
#header nav#secondary-navigation ul li ul {
	display: none;
	position: absolute;
	top: 100%;
	left: -40px;
	width: 300px;
	height: auto;
	padding: 20px;
	background-color: var(--dc-light-beige);
	border-top: 4px solid var(--dc-blue);
}

/* remove pointer on links that are disabled */
.disable-link a { cursor: default; }
.disable-link .sub-menu a { cursor: pointer; }


#header nav#main-navigation ul li.right-aligned-sub ul,
#header nav#secondary-navigation ul li.right-aligned-sub ul {
	left: auto;
	right: -40px;
}

#header nav#main-navigation ul li ul li,
#header nav#secondary-navigation ul li ul li {
	float: none;
	padding: 0;
	border-bottom: none;
}
#header nav#main-navigation ul li > ul > li:last-child,
#header nav#secondary-navigation ul li > ul > li:last-child { border: none; }
#header nav#main-navigation ul li ul li a,
#header nav#secondary-navigation ul li ul li a,
#header nav#main-navigation ul li.current-menu-item ul li a,
#header nav#secondary-navigation ul li.current-menu-item ul li a,
#header nav#main-navigation ul li.current-menu-ancestor ul li a,
#header nav#secondary-navigation ul li.current-menu-ancestor ul li a {
	height: auto;
	padding: 8px 0;
	color: var(--dc-blue);
	font-size: 15px;
	line-height: 120%;
	text-transform: none;
}
#header nav#main-navigation ul li ul li a:hover,
#header nav#secondary-navigation ul li ul li a:hover { color: var(--dc-brand-blue-dark); }


/* 08/2024 - navigation updates */
#header nav#main-navigation ul {
	display: flex;
	justify-content: flex-end;
}
#header nav#main-navigation ul::before {
	content: "OUR SERVICES:";
	color: var(--dc-blue);
	font-size: 14px;
	font-family: NewJuneSemibold;
	padding-block: 15px;
}
#header nav#main-navigation ul li,
#header nav#main-navigation ul li a {
	text-align: center;
}
#header nav#main-navigation ul li {
	background-image: url(../img/bg-main-nav-arrow.png);
	background-position: center calc(100% + 20px);
	background-repeat: no-repeat;
	background-size: 5px;
}
#header nav#main-navigation ul li:hover {
	background-position: center 100%;
}

#header nav#main-navigation ul li a {
	padding-block: 15px;
}
#header nav#main-navigation ul li ul,
#header nav#secondary-navigation ul li ul {
	opacity: 0;
	width: 0px;
	height: 0px;
	padding: 0px;
	overflow: hidden;
	transition: all 0.33s ease-in-out;
}
#header nav#main-navigation ul li ul::before {
	content: "";
}
#header nav#main-navigation ul li:hover ul.sub-menu,
#header nav#secondary-navigation ul li:hover ul.sub-menu {
	display: block;
	z-index: 9999;
	opacity: 1;
	width: 450px;
	height: auto;
	overflow: hidden;
	padding-block: 15px;
	box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.16);
}
#header nav#main-navigation ul li ul li,
#header nav#main-navigation ul li ul li a {
	display: block;
	width: 450px;
	text-align: left;
}
/* #header nav#main-navigation ul li.right-aligned-sub ul li,
#header nav#main-navigation ul li.right-aligned-sub ul li a,
#header nav#secondary-navigation ul li.right-aligned-sub ul li,
#header nav#secondary-navigation ul li.right-aligned-sub ul li a {
	text-align: right;
} */
#header nav#main-navigation ul li ul li {
	background: none;
}
#header nav#main-navigation ul li ul.sub-menu li a,
#header nav#secondary-navigation ul li ul.sub-menu li a {
	font-family: NewJuneMedium;
	font-size: .9rem;
	padding: 10px 20px 10px 40px !important;
	background-image: url(../img/bg-sub-menu-arrow.svg);
	background-repeat: no-repeat;
	background-position: 20px 50%;
	background-size: 6px;
	transition: all 0.25s ease-in-out;
}
#header nav#main-navigation ul li ul.sub-menu li a:hover,
#header nav#secondary-navigation ul li ul.sub-menu li a:hover {
	background-position: 26px 50%;
	background-size: 7px;
}
#header nav#secondary-navigation ul li ul.sub-menu {
	top: 100%;
	width: 400px;
	height: auto;
	padding: 20px;
	background-color: var(--dc-light-beige);
	border-top: 4px solid var(--dc-blue);
}
/* #header nav#secondary-navigation ul li ul li a {
	padding-block: 10px;
} */


/* hero photo
----------------------------------------------------------------------------- */
#hero-photo {
	position: relative;
	width: 100%;
	height: auto;
	height: 500px;
	max-height: 500px;
	overflow: hidden;
	background-color: var(--dc-blue);
}
#hero-photo img {
    max-width: 100%;
    height: auto;
		max-height: 500px;
		margin: 0 auto;
}
/* services photos with service section below */

/* page headers
----------------------------------------------------------------------------- */
header {
	/* position: static; */
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	/* padding: 0 10%; */
	box-sizing: border-box;
}
header #page-header {
	width: 100%;
	border-radius: 0px;
	/* overflow: hidden;
	min-height: 150px; */
	margin: 0;
	padding: 30px calc(10% + 50px);
	box-sizing: border-box;
	/* border-bottom: 4px solid var(--dc-blue); */
	/* background-color: rgba(241,246,252,0.9); */
	background-color: rgba(40,43,101,0.85);
	color: #fff;
	/* -webkit-border-top-right-radius: 30px;
	-moz-border-radius-topright: 30px;
	border-top-right-radius: 30px; */
}
header #page-header h1 {
	/* color: var(--dc-blue); */
	font-size: 36px;
	font-family: NewJuneMedium;
	font-weight: 500;
	line-height: 100%;
	margin: 0 0 16px 0;
}
header #page-header h6 {
	/* color: var(--dc-blue); */
	font-size: 18px;
	font-family: NewJuneLight;
	line-height: 120%;
	margin: 0;
	padding-bottom: 0px;
}
/* #hero-photo {
	height: auto;
	min-height: auto;
	max-height: 100%;
} */
#hero-photo img#hero-image {
	display: none;
}


/* content
----------------------------------------------------------------------------- */
#content-container {
    width: 100%;
    margin: 0 auto;
    padding: 25px 10% 80px 10%;
    box-sizing: border-box;
}

.columns hr { width: 100%; border-top-width: 1px; }
.columns img, .entry-content img {
	width: auto;
	max-width: 100%;
	height: auto;
}

.columns {
	position: relative;
	clear: both;
	margin-bottom: 40px;
}
.columns .col-2-1,
.columns .col-2-2,
.columns .col-3-1,
.columns .col-3-2,
.columns .col-3-3,
.columns .seventy-five,
.columns .twenty-five,
.columns .eighty,
.columns .twenty,
.columns .full-width {
	float: left;
	width: 50%;
	height: auto;
	line-height: 150%;
	margin: 0 0 25px 0;
	box-sizing: border-box;
}
.columns .seventy-five { width: 75%; }
.columns .twenty-five { width: 25%; }
.columns .full-width { float: none; width: 100%; }
.page-template-services .columns .full-width { padding-inline: 50px; }

.columns img.alignleft {
	float: left;
}
.columns img.alignright {
	float: right;
}
.columns img.aligncenter {
	display: block;
	margin: 0 auto;
}

.columns .col-2-1 { padding-right: 3%; }
.columns .col-2-2 { padding-left: 3%; }

.columns .col-3-1,
.columns .col-3-2,
.columns .col-3-3 { width: 30%; }

.columns .col-3-2 { margin: 0 5%; }

.columns .col-2-2.fix-spacing,
.columns .col-3-2.fix-spacing,
.columns .col-3-3.fix-spacing { margin-top: -16px; }

.columns .one-third,
.columns .two-thirds {
    float: left;
    width: 33%;
    box-sizing: border-box;
}
.columns .two-thirds {
    width: 67%;
    padding-right: 4%;
}

/* bold all links in main content column */
.columns .two-thirds a {
	font-weight: 700;
	/* font-family: NewJuneSemibold; */
}

.intro-text {
    font-size: 24px;
    font-weight: 400;
}

.home .intro-text { font-size: 20px; text-align: center; }
.home .intro-text h1 { font-size: 79px; }
article .intro-text p { margin-bottom: 35px; line-height: 36px; }
.home article .intro-text p { margin-bottom: 30px; line-height: 30px; }

article h1,
article h2,
article h3,
article h4,
article h5,
article h6,
h1.blog-header {
    font-family: NewJuneSemibold;
    font-weight: normal;
    color: var(--dc-dark-gray);
    margin: 0 0 15px 0;
    padding: 0;
    line-height: 120%;
}

article h1,
h1.blog-header {
    /* font-family: NewJuneLight;
    font-size: 72px; */
    color: var(--dc-brand-blue-dark);
		font-size: 36px;
    font-family: NewJuneMedium;
    margin: 0 0 25px 0;
}
h1.blog-header {
    margin: 25px 0;
    padding: 0 10%;
    box-sizing: border-box;
}

article h2 {
    font-family: NewJuneMedium;
    font-size: 32px;
    margin: 0 0 25px 0;
}

.home article h2 {
    font-family: NewJuneLight;
    font-size: 72px;
    margin: 0 0 25px 0;
}

article h3 {
    font-family: NewJuneMedium;
    font-size: 24px;
    margin: 0 0 25px 0;
}

article h4 { font-size: 24px; }

article h6 {
    color: #575d74;
    font-family: NewJuneSemibold;
    font-size: 16px;
    line-height: 150%;
    margin: 0;
}

article p,
article ol,
article ul {
    font-size: 100%;
    line-height: 180%;
    padding: 0 0 0 0;
    margin: 0 0 20px 0;
}

article ol,
article ul {
    clear: both;
    margin-left: 18px;
}

article ol li,
article ul li {
    margin-bottom: 8px;
    padding-left: 0px;
}



article blockquote {
    min-height: 100px;
    color: var(--dc-brand-blue-light);
    font-size: 16px;
    font-weight: 700;
    line-height: 180%;
    margin: 0 0 25px 0;
    padding: 20px 0 15px 125px;
    box-sizing: border-box;
    background-image: url(../img/icon-megaphone.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100px;
}
article blockquote p { margin: 0; }
article blockquote span {
    display: block;
    color: #252a82;
    font-weight: 400;
}

/* images */
.entry-content img {
    width: auto;
    max-width: 100%;
}


/* services
----------------------------------------------------------------------------- */
.page-template-services #content-container { padding: 0 10% 80px 10%; }
.page-template-faqs #content-container { padding: 0 10% 80px 10%; }

.page-template-services .columns .two-thirds,
.page-template-services .columns .seventy-five { padding: 40px 0 0 50px; }
.page-template-services .columns .one-third,
.page-template-services .columns .twenty-five { padding: 100px 0 0 0; box-sizing: border-box; }
.page-template-services .columns .twenty-five { padding: 100px 4% 0 4%; box-sizing: border-box; }

.page-template-services .seventy-five hr { margin: 50px 0; }

.page-template-services #service-logo { width: 100%; max-width: 280px; }
.page-template-services #service-logo img { width: 100%; max-width: 500px; }

.page-template-services article .one-third h5 {
    color: #465074;
    font-family: NewJuneMedium;
    font-size: 24px;
    font-weight: normal;
    margin: 0 0 25px 0;
}

/* locations + additional resources headers */
.page-template-services article h2.locations-header.locations-icon,
.page-template-services article h2.resources-header.resources-icon {
		margin: 30px 0 40px 50px;
    padding: 2px 0 10px 38px;
    background-image: url(../img/location-dot-thin.svg);
    background-repeat: no-repeat;
    background-position: 0 2px;
    background-size: 24px;
}
.page-template-services article h2.resources-header.resources-icon {
	padding: 0 0 0 38px;
	background-image: url(../img/square-info-thin.svg);
	background-position: 0 4px;
}

/* service-location used on service detail and team pages */
.service-location, .service-callout { color: #666d89; margin-bottom: 50px; }

#service-locations-columns {
	display: flex;
	flex-wrap: wrap;
	/* justify-content: space-between; */
}

.service-location {
	width: 30%;
}
.service-location:nth-child(3n+2) {
	padding-inline: 5%;
}

.service-location p { line-height: 180%; }
.service-location p span { text-transform: capitalize; }
.service-location p strong.location-address { color: #575D74; }

.one-third .cta-btn {
    width: auto;
    font-size: 12px;
    letter-spacing: 2px;
    background-color: var(--dc-brand-blue-light);
}
.one-third .cta-btn i { float: right; margin-top: -1px; }
.one-third .cta-btn.right-align-cta { float: right; }

/* services photos */
.page-template-services #hero-photo,
.page-template-faqs #hero-photo { background-position: 50% 50%; background-size: cover; }

/* autism services */
/* .service-aba header #page-header { background-color: var(--dc-brand-blue-light); } */
.service-aba article h3,
.service-day article h3,
.service-youth article h3,
.service-waiver article h3,
.service-academy article h3,
.service-outpatient article h3,
.service-assessment article h3 { color: #fff; padding: 10px 20px; background-color: var(--dc-brand-blue-dark); }
.service-aba article .two-thirds a { color: var(--dc-brand-blue-light); }

/* community-based mental health */
/* .service-day header #page-header { background-color: var(--dc-brand-blue-dark); }
.service-day article h3 { color: #fff; padding: 10px 20px; background-color: var(--dc-brand-blue-dark); }
.service-day article .two-thirds a { color: var(--dc-brand-blue-dark); } */

/* educational services */
/* .service-youth header #page-header { background-color: var(--dc-brand-blue-light); }
.service-youth article h3 { color: #fff; padding: 10px 20px; background-color: var(--dc-brand-blue-light); }
.service-youth article .two-thirds a { color: var(--dc-brand-blue-light); } */

/* intellectual and developmental disabilities services */
/* .service-waiver header #page-header { background-color: var(--dc-brand-blue-dark); }
.service-waiver article h3 { color: #fff; padding: 10px 20px; background-color: var(--dc-brand-blue-dark); }
.service-waiver article .two-thirds a { color: var(--dc-brand-blue-dark); } */

/* outpatient therapy */
/* .service-outpatient header #page-header { background-color: var(--dc-brand-blue-light); }
.service-outpatient article h3 { color: #fff; padding: 10px 20px; background-color: var(--dc-brand-blue-light); }
.service-outpatient article .two-thirds a { color: var(--dc-brand-blue-light); } */

/* private day school */
/* .service-academy header #page-header { background-color: var(--dc-brand-blue-dark); }
.service-academy article h3 { color: #fff; padding: 10px 20px; background-color: var(--dc-brand-blue-dark); }
.service-academy article .two-thirds a { color: var(--dc-brand-blue-dark); } */

/* outpatient therapy */
/* .service-assessment header #page-header { background-color: var(--dc-brand-blue-light); }
.service-assessment article h3 { color: #fff; padding: 10px 20px; background-color: var(--dc-brand-blue-light); }
.service-assessment article .two-thirds a { color: var(--dc-brand-blue-light); } */

/* service cta buttons */
/* .service-aba article a.cta-btn,
.service-day article a.cta-btn,
.service-youth article a.cta-btn,
.service-waiver article a.cta-btn,
.service-outpatient article a.cta-btn,
.service-assessment article a.cta-btn,
.service-academy article a.cta-btn { color: #ffffff; font-weight: 400; background-color: var(--dc-brand-blue-light); } */

/* article .service-button .cta-btn { background-color: var(--dc-brand-blue-dark) !important; } */




/* faqs */
.page-template-faqs .entry-content { padding: 0 50px; }

/* collapsable service sections */
article div.hidden-section { display: none; }
.service-section-container .teaser span { font-size: 100%; line-height: 180%; padding: 0 0 0 0; margin: 0 0 20px 0; }


.service-section-container { padding-top: 100px; }
.service-section-container .service-section-content { padding: 0px 40px; }
/* article h3.service-section-hdr { position: relative; color: #fff; margin-top: 80px; padding: 10px 35px 10px 20px; cursor: pointer; } */
article h3.service-section-hdr { position: relative; color: #fff; padding: 10px 20px; margin: 0 0 20px 0; }
article h3.service-section-hdr i.fa { position: absolute; top: 12px; right: 15px;  }

article .hidden-section h3 { padding: 10px 20px; }


article h3.faq-section-hdr { position: relative; color: #fff; margin-top: 80px; padding: 10px 35px 10px 20px; cursor: pointer; }
article h3.faq-section-hdr i.fa { position: absolute; top: 12px; right: 15px;  }
article .hidden-section h3 { padding: 10px 0 0 0; }

/* article h3.faq-section-hdr.faq-aba { background-color: var(--dc-brand-blue-light); }
article h3.faq-section-hdr.faq-day { background-color: var(--dc-brand-blue-dark); }
article h3.faq-section-hdr.faq-youth { background-color: var(--dc-brand-blue-light); }
article h3.faq-section-hdr.faq-waiver { background-color: var(--dc-brand-blue-dark); }
article h3.faq-section-hdr.faq-outpatient { background-color: var(--dc-brand-blue-light); }
article h3.faq-section-hdr.faq-academy { background-color: var(--dc-brand-blue-dark); }
article h3.faq-section-hdr.faq-assessment { background-color: var(--dc-brand-blue-light); } */

article h3.faq-section-hdr { background-color: var(--dc-brand-blue-dark); }

article .hidden-section.faq-aba h3,
article .hidden-section.faq-day h3,
article .hidden-section.faq-youth h3,
article .hidden-section.faq-waiver h3,
article .hidden-section.faq-outpatient h3,
article .hidden-section.faq-assessment h3,
article .hidden-section.faq-academy h3 { color: var(--dc-dark-gray); background-color: transparent; }



/* team
----------------------------------------------------------------------------- */
/* .page-template-team #content-container { padding: 0 10% 100px 10%; } */
.template-team-overview #content-container { padding: 80px 10% 100px 10%; }

.back-to-top-team { display: none; }

#team-filter {
    position: relative;
    width: 100%;
    margin: 0 0 30px 0;
    padding: 0;
    box-sizing: border-box;
}
#team-filter ul,
#team-filter ul li {
    list-style: none;
    height: 75px;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: NewJuneMedium;
    font-size: 18px;
    background-color: #BBCCE7;
}
#team-filter ul {
    position: relative;
    /* -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px; */
    overflow: hidden;
}
#team-filter ul li {
    float: left;
    line-height: 75px;
    color: #616679;
    padding: 0 50px;
}
/* #team-filter ul li.selected-filter {
    width: 100%;
    display: block;
    cursor: pointer;
    margin: 0;
    padding: 0 50px 0 350px;
    box-sizing: border-box;
}
#team-filter ul li.selected-filter .fa {
    float: right;
    font-size: 24px;
    padding: 28px 0 0 0;
} */


#team-filter ul li#filter-by {
    color: #FFFFFF;
    width: 100%;
    cursor: pointer;
    box-sizing: border-box;
    padding: 0 30px;
    background-color: var(--dc-brand-blue-dark);
}

#team-filter #filter-options {
    display: none;
    width: 100%;
    height: auto;
    box-sizing: border-box;
    padding: 25px 0;
    overflow: visible;
    -webkit-border-top-right-radius: 0px;
    -moz-border-radius-topright: 0px;
    border-top-right-radius: 0px;
}
#team-filter #filter-options li {
    float: none;
    width: 100%;
    height: 40px;
    box-sizing: border-box;
    line-height: 40px;
    margin: 0;
    padding: 0 30px;
    cursor: pointer;
    font-size: 16px;
}

article h1#team-heading {
	/* padding-top: 60px; */
	color: var(--dc-brand-blue-dark);
	font-family: NewJuneLight;
}
article h1#team-heading span {
	font-family: NewJuneMedium;
}
/* #team-heading.aba { color: var(--dc-brand-blue-light); }
#team-heading.academy { color: var(--dc-brand-blue-dark); }
#team-heading.admin, #team-heading.all { color: var(--dc-brand-blue-light); }
#team-heading.day { color: var(--dc-brand-blue-dark); }
#team-heading.outpatient { color: var(--dc-brand-blue-light); }
#team-heading.waiver { color: var(--dc-brand-blue-dark); }
#team-heading.youth { color: var(--dc-brand-blue-light); }
#team-heading.assessment { color: var(--dc-brand-blue-light); } */


.page-template-team #content-container .columns .two-thirds { padding-top: 80px; }

.team-members {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}
.team-member-bio,
.team-members .team-member {
	width: 31%;
	margin-top: 40px;
	cursor: pointer;
}

.team-member-bio {
	position: relative;
	width: 40%;
	height: 0px;
	visibility: hidden;
	display: none !important;
	max-width: 500px;
	min-width: 300px;
	max-height: 90vh;
	margin: 0px auto;
	padding-bottom: 25px;
	cursor: default;
	background-color: #ffffff;
	box-shadow: 0px 0px 24px rgba(33,33,33,0.8);
}
.mfp-content .team-member-bio {
	display: block !important;
	height: auto;
	visibility: visible;
}




.team-members .team-member:nth-child(3n+2) {
	padding-inline: 3.5%;
}
.team-member-bio .team-photo,
.team-members .team-member .team-photo {
	width: 100%;
	height: 240px;
	margin: 0;
	padding: 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center; 
	border: 1px solid var(--dc-brand-blue-dark);
	box-sizing: border-box;
}
.team-member-bio .team-photo {
	height: 340px;
}
.team-member-bio .name-title-location,
.team-members .team-member .name-title-location {
	padding: 20px 60px 20px 20px;
	background-color: var(--dc-brand-blue-dark);
	background-image: url(../img/circle-plus-solid.svg);
	background-position: calc(100% - 20px) 50%;
	background-repeat: no-repeat;
	background-size: 30px;
}
.team-member-bio .name-title-location {
	padding: 20px;
	background-image: none;
}
.team-members .team-member .name-title-location {
	min-height: 65px;
}

.team-member-bio .name-title-location h3,
.team-member-bio .name-title-location h4,
article .team-members .team-member .name-title-location h3,
article .team-members .team-member .name-title-location h4 {
	margin: 0;
	padding: 0;
}

.team-member-bio .name-title-location h3,
.team-member-bio .name-title-location h4.title,
article .team-members .team-member .name-title-location h3,
article .team-members .team-member .name-title-location h4.title {
	color: #ffffff;
	font-size: 1rem;
}
.team-member-bio .name-title-location h3 {
	font-family: NewJuneMedium;
	font-size: 1.25rem;
}
.team-member-bio .name-title-location h4.title,
article .team-members .team-member .name-title-location h4.title {
	font-family: NewJuneLight;
	font-weight: 300;
	font-size: .9rem;
	padding: 2px 0 0 0;
}
.team-member-bio .name-title-location h4.title {
	font-size: 1rem;
	padding: 4px 0 0 0;
}

.team-member-bio .name-title-location h4.locations,
article .team-members .team-member .name-title-location h4.locations {
	padding-top: 6px;
}
.team-member-bio .name-title-location h4.locations,
.team-member-bio .name-title-location h4.locations a,
article .team-members .team-member .name-title-location h4.locations,
article .team-members .team-member .name-title-location h4.locations a {
	font-size: .9rem;
	color: #ffffff;
	text-decoration: none;
}
.team-member-bio .name-title-location h4.locations,
.team-member-bio .name-title-location h4.locations a {
	font-size: 1rem;
}

.team-member .bio-cta,
.team-member-bio .bio-cta {
	display: block;
	color: #ffffff;
	background-color: var(--dc-brand-blue-light);
	font-size: 15px;
	font-family: NewJuneMedium;
	font-weight: normal;
	padding: 10px 20px;
}
.team-member .bio-cta:hover,
.team-member-bio .bio-cta:hover {
	text-decoration: none;
}
.team-member .bio-cta::after,
.team-member-bio .bio-cta::after {
	font-family: "FontAwesome";
	font-size: 15px;
	content: "\f105";
	padding-left: 10px;
}

.team-member-bio .bio-content {
	font-family: NewJuneMedium;
	font-size: .95rem;
	line-height: 150%;
	max-height: 20vh;
	overflow-y: scroll;
}


/* removed team colors 08.23.2021 */
/* ul.team-members li.team-aba { background-color: var(--dc-brand-blue-light); }
ul.team-members li.team-academy { background-color: var(--dc-brand-blue-dark); }
ul.team-members li.team-admin { background-color: var(--dc-brand-blue-light); }
ul.team-members li.team-day { background-color: var(--dc-brand-blue-dark); }
ul.team-members li.team-outpatient { background-color: var(--dc-brand-blue-light); }
ul.team-members li.team-waiver { background-color: var(--dc-brand-blue-dark); }
ul.team-members li.team-youth { background-color: var(--dc-brand-blue-light); }
ul.team-members li.team-assessment { background-color: var(--dc-brand-blue-light); } */


#team-logo h3, .team-photo h3 {
    width: 100%;
    height: auto;
    box-sizing: border-box;
    margin: 0;
    padding: 10px 25px 6px 25px;
    color: #fff;
    font-size: 22px;
    line-height: 150%;
}
#team-logo h3 span,
.team-photo h3 span { font-size: 16px; font-family: NewJuneLight; }
.page-template-team article h4.title { font-size: 16px; font-family: NewJuneMedium; padding: 10px 25px; }
.bio-content { font-size: 14px; font-weight: 400; padding: 25px 25px 0 25px; }
.page-template-team .service-location {
	width: 100%;
	margin: 0;
	padding: 0 25px;
}

.page-template-team .columns .one-third .service-location { padding: 25px; background-color: #f1f6fc; }


/* team service / location styles */
/* removed team colors 08.23.2021 */
/* .team-aba .team-photo h3 { background-color: var(--dc-brand-blue-light); }
.page-template-team article .one-third .team-aba h4.title { color: var(--dc-brand-blue-light); }
.team-aba p span { color: var(--dc-brand-blue-light); }

.team-academy .team-photo h3 { background-color: var(--dc-brand-blue-dark); }
.page-template-team article .one-third .team-academy h4.title { color: var(--dc-brand-blue-dark); }
.team-academy p span { color: var(--dc-brand-blue-dark); }

#team-logo .team-photo h3,
.team-admin .team-photo h3 { background-color: #252a82; }
.page-template-team article .one-third .team-admin h4.title { color: #252a82; }
.team-admin p span { color: #252a82; }

.team-day .team-photo h3 { background-color: var(--dc-brand-blue-dark); }
.page-template-team article .one-third .team-day h4.title { color: var(--dc-brand-blue-dark); }
.team-day p span { color: var(--dc-brand-blue-dark); }

.team-outpatient .team-photo h3 { background-color: var(--dc-brand-blue-light); }
.page-template-team article .one-third .team-outpatient h4.title { color: var(--dc-brand-blue-light); }
.team-outpatient p span { color: var(--dc-brand-blue-light); }

.team-youth .team-photo h3 { background-color: var(--dc-brand-blue-light); }
.page-template-team article .one-third .team-youth h4.title { color: var(--dc-brand-blue-light); }
.team-youth p span { color: var(--dc-brand-blue-light); }

.team-waiver .team-photo h3 { background-color: var(--dc-brand-blue-dark); }
.page-template-team article .one-third .team-waiver h4.title { color: var(--dc-brand-blue-dark); }
.team-waiver p span { color: var(--dc-brand-blue-dark); }

.team-assessment .team-photo h3 { background-color: var(--dc-brand-blue-light); }
.page-template-team article .one-third .team-assessment h4.title { color: var(--dc-brand-blue-light); }
.team-assessment p span { color: var(--dc-brand-blue-light); } */


/* start state */
.my-mfp-zoom-in .zoom-anim-dialog {
	opacity: 0;
	-webkit-transition: all 0.2s ease-in-out; 
	-moz-transition: all 0.2s ease-in-out; 
	-o-transition: all 0.2s ease-in-out; 
	transition: all 0.2s ease-in-out; 
	-webkit-transform: scale(0.8); 
	-moz-transform: scale(0.8); 
	-ms-transform: scale(0.8); 
	-o-transform: scale(0.8); 
	transform: scale(0.8); 
}

/* animate in */
.my-mfp-zoom-in.mfp-ready .zoom-anim-dialog {
	opacity: 1;
	-webkit-transform: scale(1); 
	-moz-transform: scale(1); 
	-ms-transform: scale(1); 
	-o-transform: scale(1); 
	transform: scale(1); 
}

/* animate out */
.my-mfp-zoom-in.mfp-removing .zoom-anim-dialog {
	-webkit-transform: scale(0.8); 
	-moz-transform: scale(0.8); 
	-ms-transform: scale(0.8); 
	-o-transform: scale(0.8); 
	transform: scale(0.8); 
	opacity: 0;
}

/* Dark overlay, start state */
.my-mfp-zoom-in.mfp-bg {
	opacity: 0;
	-webkit-transition: opacity 0.3s ease-out; 
	-moz-transition: opacity 0.3s ease-out; 
	-o-transition: opacity 0.3s ease-out; 
	transition: opacity 0.3s ease-out;
}
/* animate in */
.my-mfp-zoom-in.mfp-ready.mfp-bg {
	opacity: 0.8;
}
/* animate out */
.my-mfp-zoom-in.mfp-removing.mfp-bg {
	opacity: 0;
}

.mfp-arrow,
.mfp-arrow:active {
	position: absolute;
	opacity: 0.65;
	margin: 0;
	top: 50%;
	left: 20px;
	margin-top: -26px;
	padding: 0;
	width: 30px;
	height: 53px;
	-webkit-tap-highlight-color: transparent;
}

.mfp-arrow.mfp-arrow-left,
.mfp-arrow.mfp-arrow-right {
	background-image: url(../img/chevron-left-solid.svg);
	background-repeat: no-repeat;
	background-size: 30px;
}
.mfp-arrow.mfp-arrow-right {
	left: auto;
	right: 20px;
	background-image: url(../img/chevron-right-solid.svg);
}
.mfp-arrow.mfp-arrow-right:active {
	left: auto;
	right: 20px;
}

.mfp-arrow.mfp-arrow-left::after,
.mfp-arrow.mfp-arrow-left::before { content: ''; border: none; }
.mfp-arrow.mfp-arrow-right::after,
.mfp-arrow.mfp-arrow-right::before { content: ''; border: none; }


.mfp-close,
.mfp-close:active {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 24px;
	height: 24px;
	margin: 0;
	padding: 0;
	background-image: url(../img/circle-xmark-solid.svg);
	background-repeat: no-repeat;
	background-size: 100%;
}
.single-homes button.mfp-close {
	display: block;
	position: absolute;
	top: -40px;
	right: 10px;
	width: 24px;
	height: 24px;
	margin: 0;
	padding: 0;
	background-image: none;
	background-color: #252A82;
	border-radius: 50%;
	line-height: 100%;
	text-align: center;
	font-size: 18px;
}

/* connect
----------------------------------------------------------------------------- */
#connect-map {
    position: relative;
    margin-bottom: 80px;
}

#connect-map #virginia {
    position: relative;
    z-index: 9;
    width: 100%;
}
.location-icon {
    position: absolute;
    z-index: 12;
    width: 50px;
    height: 55px;
    text-indent: -5000px;
    cursor: pointer;
    background-image: url(../img/connect-map-icon.png);
    background-size: 100%;
    background-repeat: no-repeat;
}
.location-icon:hover,
.location-icon.selected-icon { background-position: 0 100%; }

.location-icon.alexandria { top: 19%; right: 22%; }
.location-icon.colonial-heights { top: 61%; right: 22.50%; }
.location-icon.fredericksburg { top: 35.5%; right: 25%; }
.location-icon.lynchburg { top: 64%; right: 44%; }
.location-icon.midlothian { top: 56%; right: 27%; }
.location-icon.norfolk { top: 86%; right: 9%; }
.location-icon.roanoke { top: 66%; right: 53%; }
.location-icon.richmond { top: 54%; right: 24%; }
.location-icon.ruther-glen { top: 45%; right: 24%; }

.location-label {
    position: absolute;
    z-index: 12;
    color: #252a82;
    font-size: 14px;
}

.location-label.alexandria { top: 23%; right: 26%; }
.location-label.colonial-heights { top: 73%; right: 21%; }
.location-label.fredericksburg { top: 40%; right: 29%; }
.location-label.lynchburg { top: 75%; right: 43.5%; }
.location-label.midlothian { top: 59%; right: 31%; }
.location-label.norfolk { top: 97%; right: 9.5%; }
.location-label.roanoke { top: 77%; right: 53%; }
.location-label.richmond { top: 56%; right: 19%; }
.location-label.ruther-glen { top: 47%; right: 18%; }

#connect-map #map-content {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 13;
    width: 40%;
    height: auto;
    padding: 25px;
    box-sizing: border-box;
    background-image: url(../img/bg-connect-map-content.png);
}

#connect-map #map-content .location { display: none; }
#connect-map #map-content .location h4 { margin: 0 0 35px 0; }
#connect-map #map-content .location p,
#connect-map #map-content .location address { color: #666d89; font-style: normal; margin: 0 0 8px 0; }
#connect-map #map-content .location p { margin: 0 0 25px 0; }

#connect-map address .location-index,
#connect-map .services-offered .location-index { display: none; }

/*#map-content .services-offered span, .mobile-services-offered span { color: var(--dc-brand-blue-light); }*/
#map-content .services-offered span.color-aba, .mobile-services-offered span.color-aba { color: #252a82; }
#map-content .services-offered span.color-academy, .mobile-services-offered span.color-academy { color: #252a82; }
#map-content .services-offered span.color-day, .mobile-services-offered span.color-day { color: #252a82; }
#map-content .services-offered span.color-waiver, .mobile-services-offered span.color-waiver { color: #252a82; }
#map-content .services-offered span.color-youth, .mobile-services-offered span.color-youth { color: #252a82; }
#map-content .services-offered span.color-outpatient, .mobile-services-offered span.color-outpatient { color: #252a82; }

span.service-suffix { display: none; }

span.service-id-day span.service-suffix,
span.service-id-outpatient span.service-suffix,
span.service-id-waiver span.service-suffix,
span.service-id-youth span.service-suffix { display: inline-block; }

#connect-map .cta-btn,
.mobile-services-offered .cta-btn {
    margin: 15px 0 0 0;
    width: 180px;
    font-size: 14px;
    letter-spacing: 2px;
    background-color: var(--dc-brand-blue-light);
}
#connect-map .cta-btn i,
.mobile-services-offered .cta-btn i { float: right; margin-top: -1px; }

#connect-form h4 { margin: 0; line-height: 160%; }
#connect-form p { color: #252a82; }

#mobile-locations { display: none; margin: 0 0 100px 0; }

#mobile-locations h4 { margin: 0; }
.mobile-services-offered { line-height: 150%; }
.mobile-services-offered .cta-btn { margin-top: 10px; }



/* forms */
form input,
form select,
form textarea,
.gform_wrapper .top_label input.large,
.gform_wrapper .top_label input.medium {
    width: 100%;
    height: 40px;
    color: #666d89;
    margin: 0 0 25px 0;
    padding: 5px 10px;
    box-sizing: border-box;
    border-radius: 0px;
    border: 1px solid #666d89;
}

form .ginput_container { margin-bottom: 25px; }

.gform_wrapper#gform_wrapper_2 input { margin: 0 0 10px 0; }
form .ginput_container_address input { margin: 0 0 5px 0; }
form .ginput_container_address label { padding-left: 8px; }

form textarea { padding: 15px 10px; }
form .columns input,
form .columns select,
form .columns textarea { margin: 0; }

/* form select { color: #fff; background-color: #252a82; } */
form textarea { height: 300px; }

/* date picker */
.gform_wrapper .top_label input.medium.datepicker,
.gform_wrapper .top_label .ginput_container_phone input {
  width: 50% !important;
}


.gform_wrapper .gform_footer input.button,
.gform_wrapper .gform_footer input[type=submit],
.gform_wrapper .gform_page_footer input.button,
.gform_wrapper .gform_page_footer input[type=submit],
form input.gform_button {
    width: 200px !important;
    height: auto !important;
    /* float: right; */
    margin-right: 0 !important;
    font-size: 12px !important;
    letter-spacing: 2px !important;
    background-color: var(--dc-beige);
}
.gform_wrapper#gform_wrapper_2 .gform_footer input.button,
.gform_wrapper#gform_wrapper_2 .gform_footer input[type=submit],
.gform_wrapper#gform_wrapper_2 .gform_page_footer input.button,
.gform_wrapper#gform_wrapper_2 .gform_page_footer input[type=submit],
#gform_wrapper_2 form input.gform_button {
  float: none;
  margin: 25px 0 0 0 !important;
}

.gform_wrapper#gform_wrapper_2 .gform_footer {
  margin: 25px 0 0 0;
  border-top: 1px solid #ccc;
}


.one-third .cta-btn i { float: right; margin-top: -1px; }

.gform_wrapper ul.gform_fields li.gfield.fifty-percent {
    clear: none;
    float: left;
    width: 50%;
    height: auto;
    line-height: 150%;
    margin: 0 0 25px 0;
    box-sizing: border-box;
}

.gform_wrapper ul.gform_fields li.gfield { padding-right: 0 !important; }
.gform_wrapper ul.gform_fields li.gfield.fifty-percent.first-column { padding-right: 3% !important; }
.gform_wrapper ul.gform_fields li.gfield.fifty-percent.second-column { padding-left: 3% !important; }

.gform_wrapper ul.gform_fields li.gfield.fifty-percent input,
.gform_wrapper ul.gform_fields li.gfield.one-hundred-percent,
.gform_wrapper ul.gform_fields li.gfield.one-hundred-percent input { width: 100%; }

.gform_wrapper ul.gfield_checkbox {
    list-style: none;
    margin: 0 0 25px 0;
    padding: 0;
}

.gform_wrapper ul.gfield_checkbox li {
    position: relative;
    width: 50%;
    float: left;
    box-sizing: border-box;
}
.gform_wrapper ul.gfield_checkbox li input,
.gform_wrapper.gf_browser_chrome .gfield_checkbox li input,
.gform_wrapper.gf_browser_chrome .gfield_checkbox li input[type=checkbox] {
    width: auto;
    height: auto;
    margin: 2px 0 0 0;
    padding: 0;
}

.gform_wrapper .field_sublabel_below ul.gfield_checkbox li label {
    padding: 2px 0 4px 15px;
    display: inline-block;
}

.ginput_container.ginput_container_radio input.gfield-choice-input {
	width: 20px;
	margin: 0 8px 0 0;
	padding: 0;
	box-sizing: border-box;
}
.ginput_container.ginput_container_radio label.gform-field-label {
	cursor: pointer;
}


.gform_wrapper ul.gfield_radio {
    list-style: none;
    margin: 0 0 25px 0 !important;
    padding: 0;
}

.gform_wrapper ul.gfield_radio li {
    position: relative;
    width: 100%;
    float: none;
    box-sizing: border-box;
}
.gform_wrapper ul.gfield_radio li input,
.gform_wrapper.gf_browser_chrome .gfield_radio li input,
.gform_wrapper.gf_browser_chrome .gfield_radio li input[type=radio] {
    width: auto;
    height: auto;
    margin: 0px 4px 0 0;
    padding: 0;
}

.gform_wrapper ul.gfield_radio,
.gform_wrapper ul.gfield_checkbox { padding: 0 0 0 0; }
.gform_wrapper ul.gfield_checkbox { padding: 0 0 10px 0; }
.gform_wrapper ul.gfield_checkbox::after {
  content: "";
  display: block;
  clear: both;
}
.gform_wrapper ul.gfield_radio li label { padding: 4px 0 0 0; }
.gform_wrapper ul.gfield_checkbox li label { padding: 4px 0 0 10px; }

.gform_wrapper ul.gfield_radio li input,
.gform_wrapper ul.gfield_checkbox li input {
	float: left;
	width: auto !important;
}
.gform_wrapper ul.gfield_radio li label { padding: 4px 0 0 0; }
.gform_wrapper ul.gfield_checkbox li label { padding: 4px 0 0 10px; }

.gform_wrapper ul.gfield_radio li input,
.gform_wrapper ul.gfield_checkbox li input {
	float: left;
	width: auto !important;
}


.gform_wrapper ul.gform_fields li.gfield.one-hundred-percent.subject-field { clear: both; padding-top: 30px;  }

/* hide the field and text area labels */
.gform_wrapper ul.gform_fields li.gfield.fifty-percent label,
.gform_wrapper ul.gform_fields li.gfield.one-hundred-percent label { display: none; }

.gform_footer, .gform_footer.top_label { margin: 0 !important; padding: 0 !important; clear: both; }
.gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=submit] { margin: 0 !important; }


/* updates - 08/20/2020 */
.gfield_contains_required label {
  font-weight: 700;
  font-family: NewJuneSemibold;
}
.gfield--type-radio .ginput_container_radio .gfield_radio .gchoice label,
.gfield_contains_required label.gform-field-label.gform-field-label--type-sub {
	font-weight: 400;
	font-family: NewJuneMedium;
}

form .gfield_contains_required input,
form .gfield_contains_required select,
form .gfield_contains_required textarea,
.gform_wrapper .top_label .gfield_contains_required input.large,
.gform_wrapper .top_label .gfield_contains_required input.medium {
    /* border: 2px solid #666d89; */
    background-color: #f1f6fc;
}

/* careers
----------------------------------------------------------------------------- */
.page-template-careers #content-container { padding-bottom: 0px; }

.team-quotes span { display: none; }

#mid-hero-photo {
    position: relative;
    width: 100%;
    height: auto;
    max-height: 735px;
    overflow: hidden;
    background-image: url(../img/hero-photo-careers.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 100%;
}
#mid-hero-photo img { width: 100%; height: auto; }

#current-opportunities {
    width: 100%;
    margin: 0 auto;
    padding: 40px 5% 100px 5%;
    box-sizing: border-box;
}

#current-opportunities article h3 { margin-bottom: 10px; }

.filter-jobs {
    width: 100%;
    height: auto;
    margin: 0 0 40px 0;
    padding: 0 0 0 25px;
    box-sizing: border-box;
    list-style: none;
    background-color: #e7e9ea;
    -webkit-border-top-right-radius: 15px;
    -moz-border-radius-topright: 15px;
    border-top-right-radius: 15px;
}
.filter-jobs li {
    position: relative;
    float: left;
    width: 20%;
    margin: 0;
    font-size: 15px;
    padding: 10px 25px 6px 0;
    box-sizing: border-box;
    color: #666d89;
    cursor: pointer;
}
/*.filter-jobs.job-location li { width: 25%; }*/

.filter-jobs li label { color: #666d89; }
.filter-jobs li input {
    position: absolute;
    top: 15px;
    left: 0;
    width: auto;
    height: auto;
    padding: 0;
}

#job-listings { width: 100%; margin: 25px 0; }
#job-listings .listing {
    width: 100%;
    display: table;
    border-bottom: 2px solid #c2c2c2;
}
#job-listings .listing .logo-icon { width: 50px; margin: 0 10px 0 0; }
#job-listings .listing div {
    position: relative;
    height: 120px;
    display: table-cell;
    vertical-align: middle;
    box-sizing: border-box;
    color: #252a82;
}
#job-listings .listing .department { color: var(--dc-brand-blue-light); width: 30%; }
#job-listings .listing .job-title { width: 30%; }
#job-listings .listing .job-type { width: 10%; font-size: 14px; }
#job-listings .listing .job-location { width: 30%; font-size: 14px; }

#job-listings .listing .department.outpatient span { color: #252a82; }
#job-listings .listing .department.waiver span { color: #252a82; }
#job-listings .listing .department.day span { color: #252a82; }
#job-listings .listing .department.academy span { color: #252a82; }
#job-listings .listing .department.youth span { color: #252a82; }
#job-listings .listing .department.aba span { color: #252a82; }

#job-listings .listing .job-location .map-marker {
    width: 20px;
    margin: 0 10px 0 0;
}
#job-listings .listing .job-location span {
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 8px 10px;
    box-sizing: border-box;
    color: #666d89;
    font-size: 12px;
    text-align: right;
    background-color: #e7e9ea;
    -webkit-border-top-right-radius: 8px;
    -moz-border-radius-topright: 8px;
    border-top-right-radius: 8px;
}


/* careers template updates 03/10/2021
----------------------------------------------------------------------------- */
.page-template-careers #content-container { padding: 25px 15% 80px 15%; }
.careers-content-block { margin: 0 0 50px 0; }
.careers-content-block.video-block { width: 80%; margin: 0 auto 50px auto; }
.centered-heading { text-align: center; }

.video-embed {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.video-embed iframe,
.video-embed object,
.video-embed embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}



/* blog + search results
----------------------------------------------------------------------------- */
/* set selected state on blog posts and archive */
.single #menu-item-288 a,
.archive #menu-item-288 a { color: #252a82; font-family: NewJuneSemibold; }

.single #content-container,
.archive #content-container,
.page-template-blog-overview #content-container { padding-top: 60px; }

.single #hero-photo,
.archive #hero-photo,
.page-template-blog-overview #hero-photo {
  max-height: 500px;
  background-image: url(../img/NEW-hero-educational-services.jpeg);
}

#blog-column,
#search-column {
    float: left;
    width: 75%;
    padding: 0 3% 0 0;
    box-sizing: border-box;
}
#blog-column .post,
#search-column .post { width: 100%; }

.post .featured-image { position: relative; margin: 0 0 30px 0; }
.post .featured-image img { width: 100%; }

.post .featured-image h1 {
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 25px;
    color: #fff;
    font-size: 20px;
    font-family: NewJuneMedium;
    background-color: #252a82;
}
.post .featured-image h1 a { display: block; color: #fff; }

/* category colors */
.category-aba .featured-image h1 { background-color: #252a82; }
.category-academy .featured-image h1 { background-color: #252a82; }
.category-day .featured-image h1 { background-color: #252a82; }
.category-outpatient .featured-image h1 { background-color: #252a82; }
.category-waiver .featured-image h1 { background-color: #252a82; }
.category-youth .featured-image h1 { background-color: #252a82; }

.service-logo {
    float: left;
    width: 20%;
    height: 200px;
    text-align: center;
    box-sizing: border-box;
    background-size: contain;
    background-repeat: no-repeat;
}
.category-aba .service-logo { background-image: url(../img/logo-dominion-aba.png); }
.category-academy .service-logo { background-image: url(../img/logo-dominion-academy.png); }
.category-day .service-logo { background-image: url(../img/logo-dominion-day.png); }
.category-outpatient .service-logo { background-image: url(../img/logo-dominion-outpatient.png); }
.category-waiver .service-logo { background-image: url(../img/logo-dominion-waiver.png); }
.category-youth .service-logo { background-image: url(../img/logo-dominion-educational.png); }

.post-content {
    float: left;
    width: 80%;
    padding: 0 0 100px 3%;
    box-sizing: border-box;
}
.post-content p { margin-bottom: 0; }
.post-content a { font-family: NewJuneSemibold; }
#search-column .post-content { width: 100%; padding: 0 0 35px 0; }

.search .post,
.search .page,
.archive .post,
.search .careers,
.page-template-blog-overview .post {
    margin: 0 0 35px 0;
    padding: 0;
    box-sizing: border-box;
    border-bottom: 2px solid var(--dc-brand-blue-light);
}

.archive .post:last-child { border: none; margin: 0; }

.keep-reading { float: right; }


.post-date {
    color: var(--dc-brand-blue-light);
    margin: 0 0 25px 0;
}
.email-a-friend {
    position: relative;
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 0 0 0 40px;
    box-sizing: border-box;
}
.email-a-friend i {
    position: absolute;
    top: 9px;
    left: 0px;
    font-size: 30px;
}

#sidebar {
    float: right;
    width: 25%;
    padding: 50px 30px;
    box-sizing: border-box;
    background-color: #f1f6fc;
}
article #sidebar h3 {
    color: #465074;
    font-size: 20px;
    margin: 0 0 30px 0;
}
article .entry-content #sidebar ul {
    list-style: none;
    margin: 0 0 50px 0;
    padding: 0;
}
article .entry-content #sidebar ul li {
    list-style: none;
    margin: 0 0 8px 0;
    padding: 0;
    line-height: 140%;
}
article .entry-content #sidebar ul li a { color: var(--dc-brand-blue-light); }

.tag-cloud-header { display: none; }


/* pagination */
.search-pagination { text-align: center; }


/* accreditations page
----------------------------------------------------------------------------- */
.page-template-accreditations .entry-content img {
    width: auto;
    max-width: 500px;
    height: auto;
    margin: 0 0 25px 0;
}



/* home page
----------------------------------------------------------------------------- */
#slide-container {
    position: relative;
    width: 100%;
    height: auto;
    max-height: 500px;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    box-sizing: border-box;
    background-color: #f1f6fc;
}
.slides {
  width: 100%;
  height: auto;
  max-height: 500px;
  overflow: hidden;
  text-align: center;
  box-sizing: border-box;
}
/* hold the space open for photo */
.slides img.spacer {
    width: 100%;
    height: 100%;
}

.loading {
    position: absolute;
    top: 48%;
    left: auto;
    color: #252a82;
    width: 100%;
    height: 100%;
    text-align: center;
}

.slides .slide {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    max-height: 500px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* .slides .slide .slide-photo {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9;
  width: 100%;
} */
.slide-content {
  box-sizing: border-box;
  width: 90%;
  height: auto;
  text-align: center;
  opacity: 1;
  margin: 0;
  padding: 0;
}
.slide-content h2 {
    color: #fff;
    font-size: 50px;
    font-family: NewJuneSemibold;
    font-weight: normal;
    line-height: 100%;
    margin: 0 0 35px 0;
    padding: 0;
    text-shadow: 0px 0px 5px #333333;
}
/*.slide-4 .slide-content h2 { color: #252a82; }*/
/* .slide-content .cta-btn {
    letter-spacing: 2px;
    margin: 0;
    padding-top: 15px;
    padding-bottom: 15px;
    border: none;
    background-color: #64a0d6;
} */
#slide-container #medicaid {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 15;
    width: 10%;
    height: auto;
		padding: 10px;
		-webkit-border-top-left-radius: 5px;
		-moz-border-radius-topleft: 5px;
		border-top-left-radius: 5px;
		background-color: rgba(255,255,255,0.75);
}
#slide-container #medicaid img {
    width: 100%;
    max-width: 200px;
}
#slide-container #slide-navigation {
    position: absolute;
    bottom: 0px;
    z-index: 20;
    width: 100%;
    height: 30px;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
}
#slide-container #slide-navigation li {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    color: #fff;
    text-align: center;
    cursor: pointer;
}



/* home page content */
.home #content-container { padding: 80px 10% 60px 10%; }

.hp-intro-content {
  text-align: center;
  margin: 0 0 75px 0;
}
.hp-intro-content h3 {
  font-size: 2em;
	font-family: 'Lato', "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
}
#hp-outro-content {
	margin: 75px 0 0 0;
}
#outro-graphic,
#outro-content {
	text-align: center;
	margin: 0 0 50px 0;
}

h3.hp-h3 {
  text-align: center;
	color: var(--dc-brand-blue-dark);
}
h4.hp-h4 {
  font-size: 2em;
  text-align: center;
  margin: 0 0 50px 0;
	color: var(--dc-brand-blue-dark);
}

.home #featured-content {
	width: 100%;
	margin: 60px 0;
	padding: 40px 1.5%;
	border-top: 1px solid var(--dc-blue-gray);
	border-bottom: 1px solid var(--dc-blue-gray);
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}
.home #featured-content #featured-image {
	width: 30%;
}
.home #featured-content #featured-image img {
	box-shadow: 0px 0px 10px rgba(0, 0, 0, .33);
}
.home #featured-content #featured-text {
	width: 65.5%;
	height: 100%;
}
.home #featured-content #featured-text h1,
.home #featured-content #featured-text h2,
.home #featured-content #featured-text h3,
.home #featured-content #featured-text h4 {
	color: var(--dc-brand-blue-dark);
}


@media screen and (max-width: 960px) {
	
	.home #featured-content {
		flex-wrap: wrap;
	}
	.home #featured-content #featured-image, 
	.home #featured-content #featured-text {
		width: 100%;
		padding: 10px 10%;
	}

}
@media screen and (max-width: 500px) {
	
	.home #featured-content #featured-image, 
	.home #featured-content #featured-text {
		width: 100%;
		padding: 10px 0;
	}

}

#services-callouts {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: space-around;
    justify-content: flex-start;
    margin: 50px 0;
    padding: 0;
    list-style: none;
    box-sizing: border-box;
}
#services-callouts li {
	width: 30%;
	margin: 0 1.5% 20px 1.5%;
	padding: 0;
	box-sizing: border-box;
	text-align: center;
}
#services-callouts.callout-count-2 li {
	width: 47%;
}
#services-callouts li a {
  text-decoration: none;
  border: none;
}
#services-callouts li a.cta-btn {
	font-size: 1rem;
	text-transform: capitalize;
	background-color: #fff;
	border: 1px solid #fff;
}
#services-callouts li a.cta-btn:hover {
	color: var(--dc-blue);
  background-color: var(--dc-lighter-blue);
	border: 1px solid var(--dc-blue);
}

.service-photo {
	position: relative;
  overflow: hidden;
  /* -webkit-border-top-left-radius: 50px;
  -moz-border-radius-topleft: 50px;
  border-top-left-radius: 50px; */
	/* border-top-right-radius: 10px;
	border-top-left-radius: 10px;
	border: 1px solid var(--dc-blue); */
	border-bottom: none;
	margin-bottom: 20px;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, .33);
}
/* .service-photo a {
	transition: 0.33s ease-in-out;
}
.service-photo a:hover {
	opacity: .8;
} */
.service-label {
	display: block;
	/* background-color: rgba(70,80,116,0.9); */
	width: 100%;
  padding: 0px 20px 10px 20px;
  color: var(--dc-brand-blue-dark);
  font-weight: bold;
  font-size: 1.125em;
	line-height: 120%;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
	/* border: 1px solid var(--dc-blue);
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px; */
  /* -webkit-border-bottom-right-radius: 50px;
  -moz-border-radius-bottomright: 50px;
  border-bottom-right-radius: 50px; */
	font-family: NewJuneMedium, 'Lato', "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
}
.service-label a {
  color: var(--dc-blue);
}

/*#about-dys { height: 80px; }*/

#services-callouts li img { width: 100%; }



/* residential homes - 04.03.2024
----------------------------------------------------------------------------- */
.heading-and-filter {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin: 60px 0;
}
article .heading-and-filter h2 {
	margin: 0;
}
/* filter dropdown */
.heading-and-filter .filter-button {
	position: relative;
	width: auto;
	background-color: var(--dc-brand-blue-light);
	border-radius: 5px;
	color: #fff;
	font-size: 1rem;
	font-family: NewJuneLight, 'Lato';
	font-weight: 300;
	padding: 10px 50px 10px 20px;
	cursor: pointer;
}
.heading-and-filter .filter-button::after {
	position: absolute;
	top: 5px;
	right: 20px;
	font-family: "FontAwesome";
	font-size: 18px;
	content: "\f105";
	padding-left: 10px;
	transform: rotate(90deg);
}
.heading-and-filter .filter-button.open-filter {
	border-radius: 0;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
.heading-and-filter .filter-button.open-filter::after {
	top: 15px;
	right: 21px;
	transform: rotate(-90deg);
}
.heading-and-filter .filter-button .city-filter {
	display: none;
	position: absolute;
	top: 100%;
	right: 0;
	width: auto;
	min-width: 175px;
	padding: 10px 20px;
	color: #fff;
	border-top: 1px solid #fff;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	background-color: var(--dc-brand-blue-light);
}
/* .heading-and-filter .filter-button.open-filter .city-filter {
	display: block;
	opacity: 1;
} */
.heading-and-filter .filter-button .city-filter a {
	display: block;
	color: #fff;
	margin: 8px 0;
	padding: 8px 0;
	text-align: right;
	transition: color 0.33s ease;
}
.heading-and-filter .filter-button .city-filter a::after {
	font-family: "FontAwesome";
	font-size: 18px;
	content: "\f105";
	padding-left: 10px;
}
.heading-and-filter .filter-button .city-filter a.active-filter::after {
	font-family: "FontAwesome";
	font-size: 16px;
	content: "\f00d";
	padding-left: 10px;
}
.heading-and-filter .filter-button .city-filter a:hover,
.heading-and-filter .filter-button .city-filter a.active-filter {
	color: #252a82;
	text-decoration: none;
}
.heading-and-filter .filter-button .city-filter a.show-all {
	display: none;
}
.tax-home_cities .heading-and-filter .filter-button .city-filter a.show-all {
	display: block;
}


.residential-homes-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.home-listing {
	width: 31%;
	margin-bottom: 40px;
	background-color: #fff;
	transition: all 0.33s ease;
}
.home-listing:last-child {
	height: 0px;
	overflow: hidden;
	visibility: hidden;
}
/* listing content */
.home-listing .listing-photo {
	height: 200px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.home-listing .listing-text {
	padding: 20px;
}
article .home-listing .listing-text h4 {
	font-size: 1.125rem;
	margin: 0 0 2px 0;
}
.home-listing .listing-features,
article .home-listing .listing-text h5 {
	color: var(--dc-brand-blue-light);
	font-size: 1rem;
	font-family: NewJuneLight, 'Lato';
	font-weight: 300;
}
article .home-listing .listing-text h5 {
	margin-bottom: 16px;
}
.home-listing .listing-features {
	position: relative;
	padding: 16px 0 0 0;
	border-top: 1px solid rgba(108,172,228,0.3);
}
.home-listing .listing-features.accessible-home {
	background-size: 16px;
	background-repeat: no-repeat;
	background-position: 100% 16px;
	background-image: url(../img/icon-accessible.svg);
}
.home-listing a,
.home-listing a:hover,
.home-listing a:visited {
	text-decoration: none;
}

/* listing hover */
.home-listing:hover {
	background-color: #252A82;
}
.home-listing:hover a,
article .home-listing:hover h4,
article .home-listing:hover h5,
article .home-listing:hover .listing-features {
	color: #fff;
}
.home-listing:hover .listing-features.accessible-home {
	background-image: url(../img/icon-accessible-light.svg);
}


/* residential home detail */
.single-homes .entry-content {
	padding: 0 50px;	
}
article h1.residential-home-title {
	margin: 0 0 6px 0;
}
article h4.home-city,
article h4.home-city a {
	color: var(--dc-brand-blue-light);
	font-size: 1.125rem;
	font-family: NewJuneLight, 'Lato';
	font-weight: 300;
}
article h4.home-city a:hover {
	color: #252A82;
	text-decoration: none;
}
#home-photos {
	display: flex;
	justify-content: space-between;
	margin: 30px 0 60px 0;
}
#home-photos #featured-photo {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	position: relative;
	width: 65%;
	height: 500px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	background-color: #252A82;
}
#home-photos #featured-photo .featured-icon {
	display: block;
	width: 46px;
	height: 40px;
	margin-left: 5px;
	background-color: var(--dc-brand-blue-light);
	background-size: 24px;
	background-position: center;
	background-repeat: no-repeat;
	transition: background 0.33s ease;
}
#home-photos #featured-photo .featured-icon:hover {
	background-color: #252A82;
}
#home-photos #featured-photo .featured-icon.icon-video {
	background-image: url(../img/icon-youtube.svg);
}
#home-photos #featured-photo .featured-icon.icon-slides {
	background-image: url(../img/icon-slideshow.svg);
}
#home-photos #slide-thumbnails {
	width: 30%;
	height: 500px;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}
#home-photos.with-slideshow #slide-thumbnails {
	width: 30%;
	height: 500px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#home-photos #slide-thumbnails #home-features {
	margin-top: 40px;
}


#home-photos #slide-thumbnails a {
	margin: 0;
}
#home-photos #slide-thumbnails a.slide-thumb {
	display: block;
	width: 100%;
	height: 200px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	background-color: #252A82;
}
.single-homes .cta-btn {
	text-transform: none;
	/* background-color: #252A82; */
	transition: all 0.33s ease;
}
/* .single-homes .cta-btn:hover {
	color: #fff;
	background-color: var(--dc-brand-blue-light);
} */

#home-content {
	display: flex;
	justify-content: space-between;
	margin: 0 0 60px 0;
}
#home-content #home-description {
	width: 65%;
}
#home-content #home-features {
	width: 30%;
}
ul.features-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.features-list li {
	margin: 0 0 6px 0;
	padding: 0 0 0 30px;
	color: #252A82;
	font-size: 1rem;
	font-family: NewJuneMedium, 'Lato';
	font-weight: 400;
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: 0 50%;
	background-image: url(../img/icon-features.svg);
}

#dominion-care-contact {
	border-top: 1px solid var(--dc-brand-blue-light);
	border-bottom: 1px solid var(--dc-brand-blue-light);
	padding-block: 40px;
}
article #dominion-care-contact h3 {
	margin: 0 0 10px 0;
}
article #dominion-care-contact h5 {
	color: #252A82;
	font-size: 1.125rem;
	font-family: NewJuneMedium, 'Lato';
	font-weight: 400;
	margin: 0 0 4px 0;
}
article #dominion-care-contact p {
	font-size: 1.125rem;
}

#home-slideshow {
	display: none;
}







/* home page service list media queries */
@media only screen and (min-width: 1025px) and (max-width: 1200px) {

  .service-label {
    height: 100px;
    padding: 20px 15px;
    font-size: 1.1em;
    line-height: 1.2em;
  }

}
@media only screen and (max-width: 1023px) {

  #services-callouts li {
      width: 40%;
      margin: 0 5% 20px 5%;
  }
	#services-callouts.callout-count-2 li {
		width: 47%;
		margin: 0 1.5% 20px 1.5%;
	}
  .service-label {
    /* height: 100px; */
    padding: 15px;
    font-size: 1.1em;
    line-height: 1.2em;
  }

}
@media only screen and (max-width: 767px) {

  .hp-intro-content h3 {
    font-size: 1.6em;
    font-family: NewJuneLight;
  }
  h4.hp-h4 {
    font-size: 1.6em;
    margin: 0 0 30px 0;
  }

}
@media only screen and (max-width: 500px) {

  #services-callouts li,
	#services-callouts.callout-count-2 li {
      width: 90%;
      margin: 0 5% 20px 5%;
  }
  .service-label {
    /* height: 120px; */
    padding: 10px 15px;
    font-size: 1.2em;
    line-height: 1.2em;
  }

}
/* // end home page service list media queries */






/* dys map */
#dys-map {
  margin: 0 0 25px 0;
}
h3.hp-h3.locations-toggle {
  margin: 0 0 45px 0;
	font-family: 'Lato', "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
}
h3.hp-h3.locations-toggle a {
  margin: 0 0 45px 0;
  text-decoration: none;
}

#dys-map-content {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: space-around;
  justify-content: flex-start;
  padding: 0 0 50px 0;
}
.location-column {
  display: none;
  width: 47%;
  margin: 0 1.5%;
}
.location-column h4  {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #a0bee4;
}
.location-column h4:first-of-type  {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

/* connect page map updates */
.page-template-connect #dys-map { margin: 0 0 25px 0; padding: 40px 17%; }
.page-template-connect h3.hp-h3.locations-toggle { display: none; }
.page-template-connect .location-column { display: block; }



/* location list media queries */
@media only screen and (max-width: 1024px) {
  .location-column {
    display: none;
    width: 90%;
    margin: 0 1.5%;
  }
  .location-column h4,
  .location-column h4:first-of-type  {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #a0bee4;
  }
  #dys-map-content > .location-column:first-child > h4:nth-child(1) {
    margin-top: 0px;
    padding-top: 0px;
    border-top: none;
  }
	/* mobile menu only */
	#header nav ul li.mobile-menu-only {
		display: block;
	}
	
}
@media only screen and (max-width: 767px) {


}
/* // end location list media queries */


/* mission highlights */
.mission-highlights { margin: 40px 0; }
.mission-highlights img { width: 100%; }





/* landing page  - added 11.13.2020 */
/* shut off header/footer elements */
.page-template-landing-page #header-spacer,
.page-template-landing-page #header-container,
.page-template-landing-page #footer-container { display:none;  }

#landing-page-container {
  padding: 80px 10% 60px 10%;
}

.landing-page-logo {
  margin: 0 auto 60px auto;
  /* padding: 80px 0 60px 0; */
}
.landing-page-logo, .landing-page-logo img {
  width: 100%;
  max-width: 500px;
}

.landing-page-hero {
  position: relative;
  width: 100%;
  height: auto;
  margin: 0 0 40px 0;
}
.landing-page-hero img {
  width: 100%;
}
.landing-page-hero h1 {
  position: absolute;
  bottom: 50px;
  width: 100%;
  color: #fff;
  font-size: 50px;
  font-family: NewJuneSemibold;
  font-weight: normal;
  line-height: 100%;
  margin: 0;
  padding: 0;
  text-align: center;
  text-shadow: 0px 0px 5px #999999;
}

.page-template-landing-page .entry-content h1,
.page-template-landing-page h1.page-title-alternate {
	font-family: NewJuneSemibold;
	font-weight: normal;
	color: #252a82;
	line-height: 140%;
	text-align: center;
	font-size: 2.6em;
	margin: 0 0 25px 0;
	font-family: NewJuneSemibold;
}

@media only screen and (max-width: 767px) {

	.page-template-landing-page .entry-content h1
	.page-template-landing-page h1.page-title-alternate {
		font-size: 2em;
	}
	
}

.lp-intro-content {
  margin: 0 0 80px 0;
}
.lp-intro-content.flexed {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  align-items: flex-start;
  justify-content: space-between;
}
.lp-two-column {
  width: 47%;
}

.lp-intro-content h3 {
  font-size: 1.8em;
  text-align: center;
  font-family: NewJuneLight;
}

.static-lp-map {
	margin: 0 auto 80px auto;
}

/* landing page form */
.column-single .gform_wrapper {
	width: 80%;
	margin: 0 auto;
}

.gform_wrapper .top_label input.large,
.gform_wrapper .top_label input.medium {
	height: 36px;
	margin: 0 0 10px 0;
}

.page-template-landing-page .gform_wrapper ul.gfield_radio,
.page-template-landing-page .gform_wrapper ul.gfield_checkbox { padding: 0 0 0 0; }
.page-template-landing-page .gform_wrapper ul.gfield_checkbox { padding: 0 0 10px 0; }
.page-template-landing-page .gform_wrapper ul.gfield_checkbox::after {
  content: "";
  display: block;
  clear: both;
}

.page-template-landing-page .gform_wrapper ul.gfield_radio li label { padding: 4px 0 0 0; }
.page-template-landing-page .gform_wrapper ul.gfield_checkbox li label { padding: 4px 0 0 10px; }

.page-template-landing-page .gform_wrapper ul.gfield_radio li input,
.page-template-landing-page .gform_wrapper ul.gfield_checkbox li input {
	float: left;
	width: auto !important;
}


/* landing page media queries */
@media only screen and (min-width: 1025px) and (max-width: 1440px) {
  #landing-page-container {
    padding-right: 5%;
    padding-left: 5%;
  }
}
@media only screen and (max-width: 1024px) {

  #landing-page-container {
    padding: 50px 5%;
  }
  .landing-page-logo, .landing-page-logo img {
    max-width: 300px;
  }
  .landing-page-hero h1 {
    bottom: 25px;
    font-size: 34px;
  }
  .lp-intro-content h3 {
    font-size: 1.5em;
  }
}
@media only screen and (max-width: 767px) {

  .landing-page-logo, .landing-page-logo img {
    max-width: 250px;
  }
  .landing-page-hero h1 {
    bottom: 25px;
    font-size: 30px;
  }
  .lp-two-column {
    width: 90%;
    margin-bottom: 40px;
  }
  .lp-intro-content h3 {
    font-size: 1.5em;
  }

	/* form adjustments*/
	.page-template-landing-page .gform_wrapper ul.gfield_checkbox li {
		width: 100%;
	}


}
/* // end landing page media queries */




/* mailing list form
----------------------------------------------------------------------------- */
.ctct-custom-form p label { display: block; margin-bottom: 10px; }
.ctct-form-required { font-weight: bold; }
.ctct-form-errorMessage { color: #cc0000; }
.is-error { border-color: #cc0000; }




/* footer
----------------------------------------------------------------------------- */
#footer-container {
    position: relative;
    color: var(--dc-blue);
    font-size: 14px;
    padding: 40px;
		min-height: 240px;
    box-sizing: border-box;
    background-color: var(--dc-light-beige);
}

#footer-container footer {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
}

footer  a { color: var(--dc-blue); }
footer a.cta-btn { color: #fff; margin: 0; }
footer h2, footer h2 a { color: var(--dc-blue); font-weight: 400; }

#footer-social {
	position: absolute;
	top: 40px;
	right: 40px;
}
#footer-social a.icon-link {
	display: inline-block;
	height: 40px;
	line-height: 40px;
	margin: 0 0 0 30px;
	padding: 0 0 0 50px;
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 36px;
}

#footer-container p,
#footer-container h3,
#footer-container ul,
#footer-container ul li {
    font-size: 100%;
    line-height: 130%;
    margin: 0 0 10px 0;
    padding: 0 0 0 0;
}
#footer-container p { line-height: 160%; }
#footer-container ul li { list-style: none; }

#footer-content {
    position: absolute;
		top: 40px;
		left: 140px;
    width: 30%;
		min-height: 150px;
		line-height: 150%;
		padding: 0 0 0 20px;
    box-sizing: border-box;
		border-left: 1px solid var(--dc-blue-gray);
}
.footer-ctas {
    float: left;
    width: 70%;
    text-align: right;
    padding: 10px 0;
    box-sizing: border-box;
}
#copyright {
	position: absolute;
	bottom: 10px;
}

#footer-navigation {
	position: absolute;
	top: 100px;
	right: 40px;
}
#footer-navigation a {
	position: relative;
	display: inline-block;
	padding: 0;
}
#footer-navigation a::after {
	content: "•";
	display: inline-block;
	width: 40px;
	color: var(--dc-blue);
	text-align: center;
}
#footer-navigation a:last-child::after {
	content: "";
	width: 0px;
}

#footer-search {
    clear: both;
    text-align: right;
}

#footer-search .search-form {
    width: 230px;
    height: 36px;
    float: right;
}
#footer-search .search-form input {
    width: 215px;
    height: 30px;
    color: #666d89;
    font-size: 13px;
    padding: 2px 0 0 2%;
    box-sizing: border-box;
    border: 2px solid #666d89;
    background-color: #e7e9ea;
}

footer #carf {
	position: absolute;
	top: 40px;
	left: 40px;
	width: 80px;
}
footer #carf img {
	width: 100%;
}

/* helper classes
------------------------------------------------------------ */
.hidden { display: none !important; visibility: hidden; }

.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

.invisible { visibility: hidden; }

/* Clearings
------------------------------------------------------------ */
.clear:before,
.clear:after,
.clearfix:before,
.clearfix:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
}

.clear:after,
.clearfix:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}



/* media queries
------------------------------------------------------------ */
@media only screen and (min-width: 1441px) and (max-width: 1600px) {

    #header #social-search { width: 80%; right: 40px; }
    /* FIX LATER #header #social-search a { font-size: 13px; margin: 0 8px 0 0; padding: 0 35px 0 0; } */
    /* #header nav { right: 10%; } */

    #header nav ul li { padding: 0 15px; }
    #header nav ul li a { font-size: 14px; }

    /* footer */
    #footer-container { font-size: 13px; }
    .footer-col a.cta-btn { font-size: 14px; padding: 10px 40px 10px 25px; }

}

@media only screen and (min-width: 1025px) and (max-width: 1440px) {

    #logo {
			bottom: auto;
			top: 18px;
			left: 5%;
			width: 160px;
    }
    #header #social-search { width: auto; right: 40px; }
		#header nav ul li { padding: 0 12px; }
    #header nav ul li a { font-size: 14px; }

    #header #social-search .search-form {
        width: 225px;
        height: 28px;
    }
    #header #social-search .search-form input {
        width: 200px;
        height: 28px;
        color: #666d89;
        font-size: 14px;
        padding: 0 0 0 2%;
        box-sizing: border-box;
        border: 2px solid #666d89;
    }

    /* team */
    #team-filter ul, #team-filter ul li { font-size: 16px; }
    /* #team-filter ul li#filter-by { width: 200px; padding: 0 40px 0 20px; } */
    /* #team-filter #filter-options li, #team-filter ul li.selected-filter { padding: 0 40px 0 240px; } */

    .page-template-team article .columns .two-thirds h1 { font-size: 40px; }
    .team-photo h3 { font-size: 15px; }
    .team-photo h3 span { font-size: 14px; }
    ul.team-members li { width: 100px; height: 100px; margin: 0 15px 15px 0; -webkit-border-radius: 50px; -moz-border-radius: 50px; border-radius: 50px; }


    /* connect */
    #connect-map #map-content { padding: 15px; }
    #connect-map #map-content .location h4 { font-size: 16px; margin: 0 0 15px 0; }
    #connect-map #map-content .location p,
    #connect-map #map-content .location address { font-size: 13px; margin-bottom: 2px; }
    #connect-map #map-content .location p { margin: 0 0 15px 0; }

    #connect-map .cta-btn { display: none; }
    .location-icon { width: 35px; height: 39px; }

    .location-label { font-size: 12px; }
    .location-label.alexandria { top: 23%; right: 27%; }
    .location-label.fredericksburg { top: 39%; right: 30%; }
    .location-label.richmond-west-end { top: 58%; right: 30%; }
    .location-label.richmond-north-side { top: 53%; right: 12.5%; }
    .location-label.colonial-heights { top: 73%; right: 20%; }
    .location-label.virginia-beach { top: 88%; right: 14%; }
    .location-label.lynchburg { top: 76%; right: 43.5%; }
    .location-label.roanoke { top: 78%; right: 52%; }

    /* careers */
    .filter-jobs li { width: 20%; font-size: 14px; }
    #job-listings .listing div { font-size: 14px; }
    #job-listings .listing .department { width: 30%; }
    #job-listings .listing .job-title { width: 30%; }
    #job-listings .listing .job-type { width: 10%; }
    #job-listings .listing .job-location { width: 30%; }

    /* home page */
    .slide-content h2 { font-size: 36px; }

    /* footer */
    #footer-container { font-size: 13px; }
    .footer-ctas,
    .footer-content {
        float: none;
        width: 100%;
        text-align: left;
    }
    .footer-col a.cta-btn { font-size: 14px; padding: 10px 40px 10px 25px; }

    #footer-search { text-align: left; }
    #footer-search .search-form { float: left; }


}


@media only screen and (min-width: 1100px) and (max-width: 1280px) {


	#header nav#secondary-navigation ul li {
		padding: 0 15px;
	}
	#header nav#main-navigation ul li {
		padding: 0 18px;
	}


	#home-photos #featured-photo {
		width: 65%;
		height: 400px;
	}
	#home-photos #slide-thumbnails,
	#home-photos.with-slideshow #slide-thumbnails {
		width: 30%;
		height: 400px;
	}
	#home-photos #slide-thumbnails a.slide-thumb {
		width: 100%;
		height: 140px;
	}

    #team-filter ul, #team-filter ul li { font-size: 14px; }
    #team-filter #filter-options li { font-size: 14px; }

		.team-members {
			display: flex;
			justify-content: space-between;
		}
		.team-member-bio,
		.team-members .team-member {
			width: 48%;
		}
		.team-member-bio {
			width: 60%;
		}
		.team-members .team-member:nth-child(3n+2) {
			padding-inline: 0;
		}

    /* connect */
    #connect-map #map-content { padding: 15px; }
    #connect-map #map-content .location h4 { font-size: 16px; margin: 0 0 15px 0; }
    #connect-map #map-content .location p,
    #connect-map #map-content .location address { font-size: 13px; margin-bottom: 2px; }
    #connect-map #map-content .location p { margin: 0 0 15px 0; }

    .location-label.alexandria { top: 23%; right: 26.5%; }
    .location-label.colonial-heights { top: 73%; right: 20%; }
    .location-label.fredericksburg { top: 39%; right: 29.5%; }
    .location-label.midlothian { top: 59%; right: 31%; }
    .location-label.lynchburg { top: 76%; right: 43.5%; }
    .location-label.richmond { top: 56%; right: 17%; }
    .location-label.ruther-glen { top: 47%; right: 16%; }


    /* footer */
    #footer-container { font-size: 13px; }
    footer a.cta-btn { font-size: 14px; padding: 10px 40px 10px 25px; }

    #footer-search { text-align: left; }
    #footer-search .search-form { float: left; }

		#footer-social a.icon-link span { display: none; }

}


@media only screen and (min-width: 1025px) and (max-width: 1100px) {

	#header nav#secondary-navigation ul li {
		padding: 0 15px;
	}
	#header nav#main-navigation ul li {
		padding: 0 18px;
	}

	#home-photos {
		display: flex;
		flex-wrap: wrap;
	}
	#home-photos #featured-photo {
		width: 100%;
		height: 500px;
		margin-bottom: 20px;
	}
	#home-photos #slide-thumbnails,
	#home-photos.with-slideshow #slide-thumbnails {
		width: 100%;
		height: auto;
		flex-direction: row;
		align-items: flex-start;
		justify-content: space-between;
	}
	#home-photos #slide-thumbnails a.slide-thumb {
		width: 30%;
		height: 100px;
	}
	.entry-content #home-content #home-description {
		width: 100%;
	}
	.entry-content.has-slideshow #home-content #home-description {
		width: 65%;
	}

		/* team */
    #team-filter ul li#filter-by { padding: 0 15px; }
    #team-filter ul, #team-filter ul li { font-size: 16px; }
    #team-filter #filter-options li { font-size: 14px; padding: 0 10px 0 25px; }
    article h3#team-heading { font-size: 16px; padding: 0 15px; }

		.team-members {
			display: flex;
			justify-content: space-between;
		}
		.team-member-bio,
		.team-members .team-member {
			width: 48%;
		}
		.team-member-bio {
			width: 60%;
		}
		.team-members .team-member:nth-child(3n+2) {
			padding-inline: 0;
		}

    /* connect */
    #connect-map #map-content { padding: 15px; }
    #connect-map #map-content .location h4 { font-size: 16px; margin: 0 0 15px 0; }
    #connect-map #map-content .location p,
    #connect-map #map-content .location address { font-size: 13px; margin-bottom: 2px; }
    #connect-map #map-content .location p { margin: 0 0 15px 0; }

    .location-label.alexandria { top: 23%; right: 27%; }
    .location-label.colonial-heights { top: 73%; right: 19%; }
    .location-label.fredericksburg { top: 40%; right: 30%; }
    .location-label.midlothian { top: 59%; right: 32%; }
    .location-label.lynchburg { top: 76%; right: 43.5%; }
    .location-label.richmond { top: 56%; right: 16.5%; }
    .location-label.ruther-glen { top: 47%; right: 15%; }

    /* careers */
    .filter-jobs li { width: 20%; font-size: 14px; }
    .filter-jobs.job-location li { width: 25%; }
    #job-listings { width: 100%; }
    #job-listings .listing { display: block; }
    #job-listings .listing div { position: relative; height: auto; padding: 25px 0; font-size: 14px; display: inline-table; }
    #job-listings .listing .department img { display: none; }
    #job-listings .listing .department, #job-listings .listing .job-title, #job-listings .listing .job-type, #job-listings .listing .job-location { float: left; width: 50%; }
    #job-listings .listing .job-location span { background-color: transparent; }

    
    /* footer */
    #footer-container { font-size: 13px; }
    footer a.cta-btn { font-size: 14px; padding: 10px 40px 10px 25px; }

    .footer-ctas { width: 60%; }
    .footer-content { width: 40%; }
    #footer-container a.icon-link { margin: 0 0 0 20px; }

    #footer-search { text-align: left; }
    #footer-search .search-form { float: left; }

		#footer-social a.icon-link span { display: none; }

}

@media only screen and (max-width: 1024px) {

	#content-container {
		min-height: 2400px;
	}

    .for-mobile { display: block; }
    .for-desktop { display: none; }

    /* header, logo, nav */
    #header-spacer { height: 90px; }
    #header-container { height: 90px; }
    #header { position: relative; height: 90px; padding: 90px 0 0 0; box-sizing: border-box; max-height: 90px; }


    #header-container,
    #header-container #header { -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; border-bottom: none; }

    #logo { top: 18px; left: 5%; width: 100px; height: auto; }
    #hero-photo {
			height: auto;
			min-height: auto;
			max-height: 100%;
			background-image: none !important;
		}
		#hero-photo img#hero-image {
			display: block;
		}
		header {
			position: static;
		}
		header #page-header {
			width: 100%;
			padding: 20px 10%;
			border-radius: 0px;
		}
		header #page-header h1 {
			font-size: 22px;
		}
		header #page-header h6 {
			font-size: 16px;
		}

		#header #social-search,
		#header nav#main-navigation,
		#header nav#secondary-navigation { display: none; }

    #mobile-menu-icon {
			position: absolute;
			top: 34px;
			left: auto;
			right: 40px;
			z-index: 1002;
			width: 40px;
			height: 21px;
			margin: 0;
			-webkit-transform: rotate(0deg);
			-moz-transform: rotate(0deg);
			-o-transform: rotate(0deg);
			transform: rotate(0deg);
			-webkit-transition: .5s ease-in-out;
			-moz-transition: .5s ease-in-out;
			-o-transition: .5s ease-in-out;
			transition: .5s ease-in-out;
			cursor: pointer;
		}
		#mobile-menu-icon::before{
			position: absolute;
			right: calc(100% + 10px);
			content: "Menu";
			transition: all 0.33s ease-in-out;
		}
		#mobile-menu-icon.active-icon::before{
			right: 95%;
			content: "Close";
		}

		#mobile-menu-icon span {
				display: block;
				position: absolute;
				height: 2px;
				width: 100%;
				background-color: var(--dc-blue);
				opacity: 1;
				right: 0;
				-webkit-transform: rotate(0deg);
				-moz-transform: rotate(0deg);
				-o-transform: rotate(0deg);
				transform: rotate(0deg);
				-webkit-transition: .25s ease-in-out;
				-moz-transition: .25s ease-in-out;
				-o-transition: .25s ease-in-out;
				transition: .25s ease-in-out;
		}
		#mobile-menu-icon span.line-1 { top: 0px; width: 100%; }
		#mobile-menu-icon span.line-2,
		#mobile-menu-icon span.line-3 { top: 9px;  width: 75%; }
		#mobile-menu-icon span.line-4 { top: 18px; width: 90%;}

		#mobile-menu-icon.active-icon span.line-1 { top: 9px; width: 0%; right: 50%; }
		#mobile-menu-icon.active-icon span.line-2 { -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
		#mobile-menu-icon.active-icon span.line-3 { -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); }
		#mobile-menu-icon.active-icon span.line-4 { top: 9px; width: 0%; right: 50%; }

    #mobile-menu.open-menu {
			position: relative;
			z-index: 9999;
			width: 100%;
			height: 2000px;
			background-color: var(--dc-blue);
		}
		#mobile-phone-payment {
			padding: 20px 0 0 0;
			display: flex;
			justify-content: space-between;
		}
		#mobile-phone-payment a {
			display: inline-block;
			width: auto;
			height: 30px;
			margin: 0 20px;
			color: var(--dc-off-white);
		}
		#mobile-phone-payment #mobile-phone {
			padding: 5px 0 0 35px;
			background-image: url(../img/icon-mobile-phone.svg);
			background-position: 0 50%;
			background-repeat: no-repeat;
			background-size: 26px;
		}
		#mobile-phone-payment #mobile-payment {
			border-radius: 15px;
			padding: 5px 25px 0 25px;
			border: 1px solid var(--dc-off-white);
		}
		#header #the-menus {
			display: flex;
		}
		#header #mobile-menu.open-menu nav#mobile-main-navigation,
		#header #mobile-menu.open-menu nav#mobile-secondary-navigation {
			/* position: absolute;
			top: 60px;
			left: 20px; */
			width: 50%;
			margin: 20px 0 0 0;
			padding: 20px 0 0 0;
			border-top: 1px solid var(--dc-gray);
		}
		#header #mobile-menu.open-menu nav#mobile-secondary-navigation {
			/* left: auto;
			right: 20px; */
			padding-bottom: 40px;
			border-left: 1px solid var(--dc-gray);
		}
		#header #mobile-menu.open-menu nav#mobile-main-navigation ul,
		#header #mobile-menu.open-menu nav#mobile-secondary-navigation ul,
		#header #mobile-menu.open-menu nav#mobile-main-navigation ul li,
		#header #mobile-menu.open-menu nav#mobile-secondary-navigation ul li {
			display: block;
		}
		#header #mobile-menu.open-menu nav#mobile-main-navigation ul li a,
		#header #mobile-menu.open-menu nav#mobile-secondary-navigation ul li a {
			display: block;
			padding: 8px 20px;
			text-transform: uppercase;
			font-size: .9rem;
			font-family: NewJuneMedium, 'Lato';
		}
		#header #mobile-menu.open-menu nav#mobile-main-navigation ul li ul li a,
		#header #mobile-menu.open-menu nav#mobile-secondary-navigation ul li ul li a {
			display: block;
			padding: 8px 40px;
			line-height: 135%;
			text-transform: capitalize;
			/* font-size: 1rem; */
			font-family: NewJuneLight, 'Lato';
			background-image: url(../img/bg-sub-menu-arrow.svg);
			background-repeat: no-repeat;
			background-position: 24px 12px;
			background-size: 6px;
		}
		
		#mobile-menu.open-menu nav a {
			color: var(--dc-off-white);
		}



    /* page headers */
    /* header { padding: 0; }
    header #page-header { height: auto; min-height: auto; margin: 0; padding: 25px; -webkit-border-top-right-radius: 0px; -moz-border-radius-topright: 0px; border-top-right-radius: 0px; }
    header #page-header h1 { font-size: 24px; margin: 0 0 10px 0; }
    header #page-header h6 { font-size: 14px; line-height: 130%; margin: 0; } */

    /* content / columns */
    #content-container { padding: 50px; }
    .page-template-services #content-container { padding: 0px 50px 50px 50px; }

    .columns .col-2-1,
    .columns .col-2-2,
    .columns .col-3-1,
    .columns .col-3-2,
    .columns .col-3-3 { width: 50%; margin: 0 0 25px 0; }
    .columns .col-3-1,
    .columns .col-3-2,
    .columns .col-3-3 { width: 32%; }
    .columns .col-3-2 { margin: 0 2%; }

    .columns .one-third,
    .columns .two-thirds { float: none; width: 100%; margin-bottom: 50px; }
    .columns .two-thirds { width: 100%; margin-bottom: 100px; padding-right: 0; }

    article h1, h1.blog-header { font-family: NewJuneLight; font-size: 60px; margin: 0 0 25px 0; }
    h1.blog-header { margin: 25px 0; padding: 0 10%; }


    /* services */
    .page-template-services .columns .two-thirds { margin-bottom: 0; padding-bottom: 20px; }

    /* team */
    .page-template-team #content-container { padding: 0 25px 100px 25px; }

    #team-filter #filter-options { padding: 0 0 10px 0; }
    #team-filter #filter-options li { float: none; width: 100%; height: auto; line-height: 160%; padding: 10px 25px; }

    #team-filter ul li#filter-by { padding: 0 15px; }
    #team-filter ul, #team-filter ul li { height: 60px; font-size: 14px; }
    #team-filter ul li { height: 60px; line-height: 60px; padding: 0 15px; }
    #team-filter #filter-options li { font-size: 14px; }
    article h3#team-heading { font-size: 16px; padding: 0 15px; }


    .page-template-team #content-container .columns .one-third { float: right; width: 50%; }
    .page-template-team #content-container .columns .two-thirds { float: left; width: 50%; padding: 40px 15px 0 0; box-sizing: border-box; }

    .page-template-team article .columns .two-thirds h1 { font-size: 60px; }
    ul.team-members li { width: 100px; height: 100px; margin: 0 15px 15px 0; -webkit-border-radius: 50px; -moz-border-radius: 50px; border-radius: 50px; }

    .team-photo h3 { font-size: 15px; }
    .team-photo h3 span { font-size: 14px; }

    /* connect */
    #connect-map { width: auto; height: auto; }
    #connect-map #map-content { position: relative; top: auto; left: auto; width: auto; height: auto; }
    #connect-map #map-content .location { display: block; }
    #connect-map #virginia, #connect-map .location-icon, #connect-map .location-label { display: none; }

    #connect-form { width: 90%; }

    /* careers */
    .filter-jobs li { width: 33%; }
    .filter-jobs li { font-size: 14px; }
    #job-listings { width: 100%; }
    #job-listings .listing { display: block; }
    #job-listings .listing div { position: relative; height: auto; padding: 25px 0; font-size: 14px; display: inline-table; }
    #job-listings .listing .department img { display: none; }
    #job-listings .listing .department, #job-listings .listing .job-title, #job-listings .listing .job-type, #job-listings .listing .job-location { float: left; width: 50%; }
    #job-listings .listing .job-location span { background-color: transparent; }

    /* home page */
    #slide-container { min-height: auto; box-sizing: border-box; }
    .slide-content, #slide-container #slide-navigation, #slide-container #medicaid { display: none; }

    .home article h2 { font-size: 48px; }

    /* mission highlights */
    .mission-highlights { margin: 40px 0; }
    .mission-highlights img { width: 100%; }

    /* forms */
    .gform_wrapper .gform_body { box-sizing: border-box; }

		#footer-social a.icon-link span { display: none; }


}



@media only screen and (min-width: 769px) and (max-width: 1023px) {


	#home-photos {
		display: flex;
		flex-wrap: wrap;
	}
	#home-photos #featured-photo {
		width: 100%;
		height: 500px;
		margin-bottom: 20px;
	}
	#home-photos #slide-thumbnails,
	#home-photos.with-slideshow #slide-thumbnails {
		width: 100%;
		height: auto;
		flex-direction: row;
		align-items: flex-start;
		justify-content: space-between;
	}
	#home-photos #slide-thumbnails a.slide-thumb {
		width: 30%;
		height: 100px;
	}
	.entry-content #home-content #home-description {
		width: 100%;
	}
	.entry-content.has-slideshow #home-content #home-description {
		width: 65%;
	}

	.team-members {
		display: flex;
		justify-content: space-between;
	}
	.team-member-bio,
	.team-members .team-member {
		width: 48%;
	}
	.team-member-bio {
		width: 60%;
	}
	.team-members .team-member:nth-child(3n+2) {
		padding-inline: 0;
	}


    /* services */
    .page-template-services .columns .two-thirds { margin-bottom: 0; padding-bottom: 20px; }
    .page-template-services .columns .one-third { padding: 50px 15px; }


    /* footer */
    #footer-container { font-size: 13px; }
    footer a.cta-btn {
        clear: both;
        float: none;
        width: auto;
        box-sizing: border-box;
        font-size: 14px;
        margin: 20px 0;
        padding: 10px 40px 10px 25px;
    }

    #footer-container a.icon-link { margin: 0 30px 0 0; }
    #footer-container a.icon-link:last-child { margin: 0; }
    .footer-ctas, .footer-content { float: none; width: 100%; text-align: left; }

    #footer-search { text-align: left; }
    #footer-search .search-form { float: left; }

}



@media only screen and (max-width: 960px) {

	/* navigation */
	#header #the-menus {
		flex-wrap: wrap;
	}
	#header #mobile-menu.open-menu nav#mobile-main-navigation,
	#header #mobile-menu.open-menu nav#mobile-secondary-navigation {
		width: 100%;
		margin: 20px 0 0 0;
		padding: 20px 0 0 0;
		border-top: 1px solid var(--dc-gray);
		border-left: none;
	}
	#header #mobile-menu.open-menu nav#mobile-main-navigation ul,
	#header #mobile-menu.open-menu nav#mobile-secondary-navigation ul {
		margin: 0;
		padding: 0;
	}
	#header #mobile-menu.open-menu nav#mobile-main-navigation ul li ul li a,
	#header #mobile-menu.open-menu nav#mobile-secondary-navigation ul li ul li a {
		display: block;
		padding: 8px 40px;
		line-height: 135%;
		text-transform: capitalize;
		/* font-size: 1rem; */
		font-family: NewJuneLight, 'Lato';
		background-image: url(../img/bg-sub-menu-arrow.svg);
		background-repeat: no-repeat;
		background-position: 24px 12px;
		background-size: 6px;
	}

	/* footer */
	#footer-container {
    min-height: 500px;
	}
	footer #carf {
		top: 20px;
		left: 20px;
	}
	#footer-content {
    position: absolute;
		top: 120px;
		left: 20px;
    width: calc(100% - 40px);
		margin: 0 0 40px 0;
		padding: 0;
    border-left: none;
		border-bottom: 1px solid var(--dc-blue-gray);
	}
	#copyright {
		bottom: 30px;
	}
	#footer-social {
		position: absolute;
		top: auto;
		right: auto;
		bottom: 70px;
		left: 20px;
	}
	#footer-social a.icon-link {
		margin: 0 !important;
		padding: 0 0 0 40px;
		background-size: 24px;
	}
	#footer-navigation {
		position: absolute;
		top: auto;
		right: auto;
		bottom: 20px;
		left: 20px;
	}
	#footer-navigation a {
		display: block;
		margin-bottom: 5px;
	}
	#footer-navigation a::after {
		content: "";
		width: 0px;
	}
}
@media only screen and (min-width: 320px) and (max-width: 768px) {

	#mobile-phone-payment a {
		height: 30px;
		margin: 0 10px;
	}
	#mobile-phone-payment #mobile-phone {
		font-size: .9rem;
		padding: 11px 0 0 28px;
		background-size: 22px;
	}
	#mobile-phone-payment #mobile-payment {
		font-size: .9rem;
		border-radius: 10px;
		padding: 11px 15px 0 15px;
	}

	#header #mobile-menu.open-menu nav#mobile-main-navigation ul li ul li a,
	#header #mobile-menu.open-menu nav#mobile-secondary-navigation ul li ul li a {
		font-size: .8rem;
	}
	article .heading-and-filter h2 {
		width: 100%;
		font-size: 1.25rem;
		margin-bottom: 16px;
	}
	.heading-and-filter .filter-button .city-filter {
		right: auto;
		left: 0;
		border-top-left-radius: 0px;
		border-top-right-radius: 5px;
		border-bottom-left-radius: 5px;
		border-bottom-right-radius: 5px;
	}
	.home-listing {
		width: 47%;
	}
	.home-listing .listing-photo {
		height: 175px;
	}
	.home-listing .listing-text {
		padding: 5px;
	}
	article .home-listing .listing-text h4,
	.home-listing .listing-features,
	article .home-listing .listing-text h5 {
		font-size: .9rem;
	}
	article .home-listing .listing-text h5 {
		font-size: .8rem;
		margin-bottom: 10px;
	}
	.home-listing .listing-features {
		padding: 10px 0 0 0;
	}
	.home-listing .listing-features.accessible-home {
		padding-bottom: 20px;
		background-size: 12px;
		background-repeat: no-repeat;
		background-position: 0 100%;
		background-image: url(../img/icon-accessible.svg);
	}

	.single-homes .entry-content {
		padding: 0;
	}
	#home-photos {
		display: flex;
		flex-wrap: wrap;
	}
	#home-photos #featured-photo {
		width: 100%;
		height: 35vh;
		margin-bottom: 20px;
	}
	#home-photos #slide-thumbnails a.slide-thumb {
		display: none;
	}
	#home-photos #slide-thumbnails,
	#home-photos.with-slideshow #slide-thumbnails {
		width: 100%;
		height: auto;
	}
	
	#home-content {
		flex-wrap: wrap;
	}
	#home-content #home-features,
	.entry-content #home-content #home-description,
	.entry-content.has-slideshow #home-content #home-description {
		width: 100%;
	}
	

	#logo { width: 100px; }

	#badges { display: none; }

    /* phone cta */
    #mobile-call-cta {
        position: fixed;
        bottom: 0vh;
        z-index: 9999;
        width: 100%;
        text-align: center;
        display: block;
        color: #aeaeae;
        font-size: 14px;
        padding: 15px 0;
        background-color: #484848;
    }

    #content-container { padding: 25px 5%; }

    /* hero photo */
    /* #hero-photo { height: 400px; }
    .page-template-services #hero-photo.service-day { background-position: 100% -50px; }
    .page-template-services #hero-photo.service-outpatient { background-position: 20% -50px; } */

    /* content / columns */
    #content-container { padding: 50px 25px; }
    .page-template-services #content-container { padding: 0px 25px 25px 25px; }
    .page-template-faqs #content-container { padding: 0 25px 50px 25px; }
    .home #content-container { padding: 50px 25px; }

    article h1, h1.blog-header { font-family: NewJuneLight; font-size: 30px; margin: 0 0 25px 0; }
    h1.blog-header { margin: 25px 0; padding: 0 10%; }

		article h3 {
			font-size: 20px;
		}

    .columns .col-2-1,
    .columns .col-2-2,
    .columns .col-3-1,
    .columns .col-3-2,
    .columns .col-3-3 { float: none; width: 100%; padding: 0; }

    .columns .col-3-1,
    .columns .col-3-2,
    .columns .col-3-3 { float: none; width: 100%; }

    .columns .col-3-2 { margin: 0 0 25px 0; }

    .columns .one-third,
    .columns .two-thirds { float: none; width: 100%; margin-bottom: 50px; }
    .columns .two-thirds { width: 100%; margin-bottom: 100px; padding-right: 0; }

		.page-template-services .columns .seventy-five {
			width: 100%;
			padding: 0;
		}
		.page-template-services .columns .twenty-five { display: none; }

		.page-template-services .columns { margin-bottom: 50px; }
		.service-section-container { padding-top: 50px; }
		.page-template-services .columns .full-width { padding-inline: 0px; }

		.page-template-services article h2.locations-header.locations-icon, .page-template-services article h2.resources-header.resources-icon { margin: 30px 0 40px 0px; }

		.service-location { width: 100%; }
		.service-location:nth-child(3n+2) { padding-inline: 0%; }


    /* team */
		.team-member-bio,
		.team-members .team-member {
			width: 100%;
		}
		.team-member-bio {
			width: 90%;
		}
		.team-members .team-member:nth-child(3n+2) {
			padding-inline: 0;
		}
    .page-template-team #content-container .columns .one-third,
    .page-template-team #content-container .columns .two-thirds { float: none; width: 100%; }

    #team-filter ul, #team-filter ul li { height: 60px; font-size: 14px; }
    #team-filter ul li { height: 60px; line-height: 120%; padding: 20px 20px 0 20px; }

    .page-template-team #content-container { padding: 0 25px 100px 25px; }

    #team-filter #filter-options { padding: 0 0 10px 0; }
    #team-filter #filter-options li { float: none; width: 100%; height: auto; line-height: 160%; padding: 10px 25px; }

    #team-filter ul li#filter-by { padding: 0 15px; }
    #team-filter ul, #team-filter ul li { height: 60px; font-size: 14px; }
    #team-filter ul li { height: 60px; line-height: 60px; padding: 0 15px; }
    #team-filter #filter-options li { font-size: 14px; }
    article h3#team-heading { font-size: 16px; padding: 0 15px; }

    .page-template-team #content-container .columns .one-third { clear: both; float: none; width: 100%; padding-top: 40px; }
    .page-template-team #content-container .columns .two-thirds { clear: both; float: none; width: 100%; padding: 0; box-sizing: border-box; }

    .back-to-top-team { display: block; }


    /* services */
		.service-section-container .service-section-content { padding: 0px 5px; }
    .page-template-services .columns .two-thirds { margin-bottom: 0; padding-top: 50px; padding-bottom: 20px; padding-left: 0; }
    .page-template-services .columns .one-third { padding: 50px 15px; }
    .page-template-services .one-third .cta-btn { font-size: 11px; letter-spacing: 1px; padding-right: 10px; padding-left: 10px; }
    .page-template-services article .columns .two-thirds h3 { font-size: 20px; }

    article .faq-section h3, article h3.faq-section-hdr { font-size: 18px; }

    article h3.faq-section-hdr { position: relative; padding-left: 40px; }
    article h3.faq-section-hdr i.fa { top: 11px; right: auto; left: 10px; }
    article h3.service-section-hdr { position: relative; }
    article h3.service-section-hdr i.fa { top: 11px; right: auto; left: 10px; }

    .page-template-faqs .entry-content { padding: 0; }

    /* careers */
    .filter-jobs li { width: 50%; }
    .filter-jobs li { font-size: 14px; }

    #job-listings .listing { display: block; }
    #job-listings .listing div { position: relative; height: auto; padding: 15px 0; font-size: 16px; display: block; }
    #job-listings .listing .department img { display: inline; }
    #job-listings .listing .department, #job-listings .listing .job-title, #job-listings .listing .job-type, #job-listings .listing .job-location { float: none; width: 100%; }
    #job-listings .listing .job-location span { position: static; text-align: left; padding: 15px 0; background-color: transparent; }


    /* mission highlights */
    .mission-highlights .column { margin-bottom: 40px; text-align: center; }
    .mission-highlights .column img { width: 50%; }

    /* connect */
    #connect-map #map-content { padding: 15px; }
    #connect-map #map-content .location h4 { font-size: 18px; margin: 0 0 20px 0; }
    #connect-map #map-content .location p,
    #connect-map #map-content .location address { font-size: 13px; margin-bottom: 5px; line-height: 18px; }
    #connect-map #map-content .location p { margin: 0 0 15px 0; line-height: 18px; }

    .gform_wrapper ul.gform_fields li.gfield.fifty-percent { clear: both; float: none; width: 100%; height: auto; }
    .gform_wrapper ul.gform_fields li.gfield { padding-right: 0 !important; }
    .gform_wrapper ul.gform_fields li.gfield.fifty-percent.first-column { padding-right: 0% !important; }
    .gform_wrapper ul.gform_fields li.gfield.fifty-percent.second-column { padding-left: 0% !important; }
    .gform_wrapper ul.gfield_checkbox li { width: 100%; float: none; }

    /* blog */
    #blog-column, #search-column { float: none; width: 100%; padding: 0; }
    .post-content { float: none; width: 100%; padding: 0 0 25px 0; }
    .service-logo { display: none; }
    .cta-btn.keep-reading { margin-top: 15px; }
    #sidebar { clear: both; float: none; width: 100%; margin-top: 40px; padding: 30px 15px; }
    article #sidebar h3 { font-size: 18px; margin: 0 0 20px 0; }
    article .entry-content #sidebar ul {margin: 0 0 30px 0; }
    article .entry-content #sidebar ul li {
        margin: 0 0 15px 0;
        line-height: 110%;
    }
    article .entry-content #sidebar ul li a { font-size: 14px; }

    /* footer */
    #footer-container { padding: 25px 5% 100px 5%; font-size: 13px; }
    #footer-container h2 { font-size: 15px; }
    #footer-container h3 { font-size: 12px; }

}

@media only screen and (min-width: 480px) and (max-width: 768px) {

    /* home page */
    .slide-content h2 { font-size: 24px; text-shadow: 2px 2px 10px #333; }

}


@media only screen and (min-width: 320px) and (max-width: 480px) {


    /* content adjustments */
    article h2 { font-size: 30px; }


    #team-filter #filter-options,
    #team-filter #filter-options li { font-size: 13px; }

    /* careers */
    /* .filter-jobs li { width: 50%; }
    .filter-jobs.job-location li { width: 100%; } */

    ul.checkboxes li { width: 100%; float: none; }

		#current-opportunities { padding: 40px 0; }
		.page-template-careers #content-container { padding: 25px 5% 80px 5%; }
		.careers-content-block { margin: 0 0 40px 0; }
		.careers-content-block.video-block { width: 100%; margin: 0 auto 40px auto; }
		article .careers-content-block h2 { font-size: 32px; }


    /* home page */
    .slide-content h2 { font-size: 20px; text-shadow: 2px 2px 10px #333; }
    .slide-content .cta-btn {
        font-size: 15px;
        letter-spacing: 0px;
        padding-top: 10px;
        padding-bottom: 10px;
        background-color: var(--dc-brand-blue-light);
    }


    /* mission highlights */
    .mission-highlights .column img { width: 60%; }

}


@media screen and (max-width: 900px) {
	#hero-photo {
		height: auto;
		min-height: auto;
		max-height: 100%;
	}
	#hero-photo img {
		display: none;
	}
	#hero-photo img#hero-mobile-image {
		display: block;
	}
	header {
		position: static;
	}
	header #page-header {
		width: 100%;
		padding: 20px;
		border-radius: 0px;
	}
	header #page-header h1 {
		font-size: 22px;
	}
	header #page-header h6 {
    font-size: 16px;
	}
}


/* print styles
------------------------------------------------------------ */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
