
/*	MAJOR DIVS
------------------------------------------------------------------*/
body	{
	background:#77A8A7;
	background-image:url('/images/subtle-grey.png');	/*	www.transparenttextures.com	*/
}
.headerGridContainer	{
	padding:0;
}
.grid-container	{	/*	Make all content areas narrower, like Foundation 5	*/
	max-width:1200px;
	background:#fff;
}
footer img 	{
	border-radius:8px;
}
footer p, footer ul	{
	font-size:.8rem;
	text-align: center;
	margin-left:0;
}
footer li	{
	display:inline;
}
footer li::after	{
	content: "\00A0\00A0\25CF\00A0\00A0";	/*	Two non-breaking spaces aside a bullet	*/
	color:#0E4E71;
}
footer li.last::after	{
	content: "";
}
.homePageContainer	{
	margin-top:-15px;
}


/*	CALLOUTS
------------------------------------------------------------------*/
.callout	{
	margin:1rem 0 1rem 0 !important;
	border:0;
}
.callout.success	{
	background:#e2f9eb !important;
}
.callout p:last-child	{
	margin-bottom:0;
}
.callout p, .callout li	{
	padding-right:2rem;
}
.callout.primary	{
	background:#e5f3fd;
}
.callout.secondary	{
	background:#f2f2f2;
}
.callout.alert	{
	border: 1px solid #cc4b37;
}


/*	TABLES
------------------------------------------------------------------*/
th, td	{
	border:0;
	vertical-align: top;
}
th	{
	text-align: left;
	color:#fff;
	background-color:#0E4E71;
}
table tbody th, table tbody td	{
	padding: 0.15rem 0.625rem;
}
table	{
	width:100% !important;
}
table th, table td	{
	border:1px solid #0E4E71;
}
table.unbordered tbody, table.unbordered tbody tr	{
	border:0;
}
table.unbordered tbody th:first-child, table.unbordered tbody td:first-child	{
	padding: 0.15rem 0 !important;
}
table.hover tbody tr:hover	{
	background:#ffeedc !important;
}
table.hover tbody tr:nth-child(2n):hover	{
	background:#f9e8d7 !important;
}
table.tablesorter thead tr .headerSortDown, table.tablesorter thead tr .headerSortUp	{
	background-color:#115E89 !important;
}
table.tablesorter th	{
	padding-right:1.25rem;
}


/*	HEADER, TOP NAV
------------------------------------------------------------------*/
#logo	{
	margin:.5rem 0;
	padding-right: 1.25rem;
}
.top-bar	{
	padding:0rem;
}
.top-bar, .top-bar a:link, .top-bar a:visited, .top-bar a:hover, .top-bar a:active	{
	color:#fff !important;
	text-decoration: none;
}
.top-bar, .top-bar ul, .title-bar	{
	background:#0E4E71;
}
.top-bar .submenu li a{
	line-height:1.4;
}
.top-bar input	{
	height:1.75rem;
	font-size:.9rem;
	margin-top:.1rem;
}
.top-bar .button	{
	margin-right:.75rem;
	padding:.4rem 1rem;
	margin-top:.1rem;
	border-radius: 1px !important;
	background:#0E4E71 !important;
	color:#1d3678;
	text-transform: uppercase;
}
.top-bar .button:hover	{
	background:#fa9b43;
	color:#162a5d;
}
.drilldown a, .drilldown .is-drilldown-submenu	{
	background:#0E4E71;
}
.title-bar .menu-icon:hover::after	{
	background: #fff;
	box-shadow: 0 7px 0 #fff, 0 14px 0 #fff;
}
.dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after	{
	border-color:#dadfec transparent transparent;
}
.drilldown .is-drilldown-submenu-parent > a::after	{
	border-color:transparent transparent transparent #dadfec;
}
.drilldown .js-drilldown-back > a::before	{
	border-color: transparent #dadfec transparent transparent;
}
.is-drilldown a	{
	color:#fff;
}
ul.loginCreateAccount, .loggedIn	{
	text-align: right;
	font-size: .9rem;
	padding-top: 1rem;
}
.loggedIn	{
	margin-bottom:0;
	margin-top:.5rem;
}
.loginCreateAccount li	{
	display:inline;
}
.loginCreateAccount li::after	{
	content: "\00A0\00A0\25CF\00A0\00A0";	/*	Two non-breaking spaces aside a bullet	*/
	color:#0E4E71;
}
.loginCreateAccount li.last::after, .loggedIn	{
	content: "";
	margin-right:1rem;
}

/*	CURRENT PAGES
------------------------------------------------------------------*/
#homePage #homeLink a, #aboutUsPage #aboutUsLink a, #resourcesPage #resourcesLink a, #samplePage #sampleLink a, #faqPage #faqLink a, #interventionPage #interventionLink a,
#contactPage #contactLink a, #backgroundPage #curriculumLink a	{
	background:#1F8BCC;
	cursor:default;
}

.adminPage #adminLink a, #adminHomePage #adminHomeLink a, #adminPassword #adminPasswordLink, #adminResources #adminResourcesLink, #loginPage #loginLink a,
.userPage #userAccountLink a, #userHomePage #userHomeLink a, #createAccountPage #createAccountLink a, #updateProfilePage #userProfileLink,
#userPasswordPage #userPasswordLink, #contactPage #contactLink, #samplePageEditor #samplePageLink, #adminSubcategories #adminSubcateogoriesLink,
#subscribePage #subscribeLink a, #sourcesPage #sourcesLink, #adminCodes a#adminCodesLink, #adminAccessCodes a#adminCodesLink {
	color:#000 !important;
	cursor:default;
	text-decoration: none;
}


/*	SIDEBAR
------------------------------------------------------------------*/
.sidebar	{
	margin-top:2rem;
}
.sidebar h3	{
	font-size:1.2rem;
}
.sidebar p, .sidebar li	{
	font-size:.85rem;
	line-height:1.4;
}
.sidebar ul	{
	margin-left:0;
	list-style-type: none;
}


/*	TYPOGRAPHY
------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6	{
	font-family: "Open Sans", sans-serif;	/* Open Sans has weights 400, 600, 700, 800	*/
	font-weight:700;
	line-height:1.2;
	letter-spacing:-1px;
	color:#0E4E71;
}
h2, h3, h4, h5, h6	{
	margin:0;
}
h1 {
	margin-top:3rem;
	line-height:1.1;
	font-size:1.75rem;
}
h2	{
	margin-top:1.75rem;
	font-size:1.33rem;
}
h3	{
	font-size:1.15rem;
	margin-bottom:.33rem;
}
h4, h5, h6	{
	font-size:1.15rem;
	font-style: italic;
	margin-bottom:.25rem;
}
ul, ol, ul ol, ul ul, ol ul, ol ol	{
	margin-left:2.5rem;
}
.button	{
	line-height:1.4;
	background:#0E4E71;
}
.button:hover	{
	background:#1577AD;
}
a.button	{
	text-decoration: none !important;
	color:#fff !important;
}
submit.button.large, .button.large	{
	font-size:1.5rem !important;
}
.button.twoLiner	{
	font-weight: bold;
	text-transform: uppercase;
	font-size: 1.5rem;
}
.button.twoLiner span 	{
	font-weight: normal;
	text-transform: none;
	display: block;
	font-size: 1rem;
}
.caption	{
	font-style:italic;
	color:#0C4361;
	margin-bottom:2rem;
}
blockquote, blockquote p	{
	color:#000;
}
blockquote	{
	border-left:5px solid #95CC7B;
}


/*	LINKS
------------------------------------------------------------------*/
a:link, .fauxLink	{
	color:#24408e;
	text-decoration: underline;
	cursor:pointer;
}
a:visited	{
	color:#087f9e;
	text-decoration: underline;
}
a:hover, .alwaysHot:hover	{
	color:#087f9e;
	text-decoration: underline;
}
a:active	{
	color:#0E4E71;
	text-decoration: underline;
}
.alwaysHot	{
	color:#24408e !important;
}


/*	FORMS
------------------------------------------------------------------*/
label small	{
	margin-left:.5rem;
	font-size:.6rem;
}
input, select, textarea	{
	font-size:.9rem !important;
}
label	{
	line-height: 1.4;
	margin-bottom: 6px;
}
div[data-abide-error] p {
	color: #cc4b37;
	font-weight: bold;
}


/*	FAQ
------------------------------------------------------------------*/
.accordion-item span 	{
	margin-left: 65px;
	text-indent: 0px;
}
.accordion-item em 	{
	font-style: normal;
	position: absolute;
	top: 0;
	left: 0;
	background: #0E4E71;
	color: #fff;
	padding: 1rem;
	height: 100%;
	width: 3.5rem;
	font-size: 1.4rem;
	border-bottom: 1px solid #fff;
	display: flex;
	align-items: center; 		/* Vertically centers the content */
	justify-content: center; 	/* Ensures horizontal centering */
}
.accordion-content {
	position: relative;
	padding-left: 80px;
}
.accordion-content::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 80px; /* Adjust this to control the width of the background area */
	height: calc(100% - 1px);
	background: url('/images/faq_bg.png') repeat-y;
}
a[aria-expanded="true"] em {
	border-bottom:0;
}


/*	MISC
------------------------------------------------------------------*/
video { width: 100%; }
video + h3 {
	text-align: center;
	padding: 1rem;
	background: #000;
	color: #fff;
	margin-top: -.75rem;
	margin-bottom:0;
}
.fi-arrows-out {
	margin-right:.5rem;
}
.slogan	{
	text-align: right; 
	padding-right:1rem;
	padding-top:3rem;
}
.slogan p 	{
	margin-bottom: 0;
	font-size: 1.33rem;
	font-style: italic;
	line-height: 1.5;
	color: #264E6D;
	font-weight: bold;
}
.accordion-title::before	{
	font-size:2rem;
	top: 30%;
	margin-top:-.6rem;
}
#homePage .callout	{
	color:#fff;
	background: rgb(72,138,199);
	background: -moz-linear-gradient(155deg, rgba(72,138,199,1) 0%, rgba(14,78,113,1) 78%);
	background: -webkit-linear-gradient(155deg, rgba(72,138,199,1) 0%, rgba(14,78,113,1) 78%);
	background: linear-gradient(155deg, rgba(72,138,199,1) 0%, rgba(14,78,113,1) 78%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#488ac7",endColorstr="#0e4e71",GradientType=1);
	padding:2rem;
	border-radius:0px 0 6px 6px;
	margin-bottom:1.75rem !important;
	margin-top:0 !important;
}
#homePage .callout a 	{
	color:#fff;
}
#homePage .callout p {
	font-size:1.1rem;
}
.callout li 	{
	font-size:1.2rem;
}
#homePage .callout p strong	{
	font-size: 1.5rem;
	display: block;
	line-height: 1.4;
}
#homePage .clipboard	{
	rotate: -5deg;
	padding:.5rem;
	margin-top:1rem;
}
#userHomePage table th 	{
	padding:.5rem 1rem !important;
	border-bottom:1px solid #fff;
}
#userHomePage table td 	{
	padding-top:.5rem !important;
}
.staffRow h3	{
	margin:.75rem 0 0 0;
}
.staffRow a	{
	text-decoration: none;
	color:#000;
}
.staffCell	{
	background:#EBF4F3;
	margin-bottom:2rem;
}
.staffCell h3	{
	margin-top:4rem;
}
.staffCell img	{
	border:1px solid #0E4E71;
}
.subcategoryDescription	{
	font-style: italic;
	font-weight:600;
	color:#414042;
}
.accordion-title	{
	font-size:1rem;
	color:#0E4E71 !important;
	text-decoration: none !important;
	font-weight:600;
}
.accordion-title	{
	border-color:#0E4E71;
	line-height: 1.4;
}
.accordion-title span	{
	padding-right:3rem !important;
	display:block;
}
.accordion-content	{
	border-top:none;
	border-right:1px solid #0E4E71;
	border-left:1px solid #0E4E71;
}
:last-child:not(.is-active) > .accordion-title	{
	border-color:#0E4E71;
	border-bottom:1px solid;
}
:last-child > .accordion-content:last-child {
	border-color:#0E4E71;
	border-bottom:1px solid;
}
.accordion-title:hover, .accordion-title:focus	{
	background-color:#F1FAEC;
}
.footnote, figcaption	{
	font-size:.85rem;
	margin-top:1rem;
	font-style: italic;
}
body	{
	color:#000;
	font-family: "Open Sans", sans-serif;	/* Open Sans has weights 400, 600, 700, 800	*/
	font-size:95%;
}
.button.radius, button.radius	{
	border-radius:4px;
}
.fi-info	{
	color:#52b5fa;
	font-size:1.1rem;
	margin-left:.25rem;
}
.has-tip	{
	border-bottom:none;
}
.deck	{
	font-weight:700;
	font-size:1.1rem;
	color:#787A7D;
	font-style: italic;
	line-height:1.3;
	margin-bottom: 1.75rem;
	letter-spacing:0;
	margin-top:0;
}
.funding	{
	margin-top:4rem;
	border-top:1px solid #808285;
	padding-top:1rem;
}
.funding p 	{
	font-size: .82rem;
	line-height: 1.5;
	font-style: italic;
}
.funding p strong 	{
	text-transform: uppercase;
	font-size: 1rem;
	font-size: .85rem;
}
.showMore, .showLess	{
	text-decoration: underline;
	color:#24408e;
	cursor:pointer;
}
.details 	{
	display:none;
}
.partners img 	{
	border-radius: 12px;
}
#aboutUsPage table tr td:first-child	{
	white-space: nowrap;
}
#aboutUsPage table 	{
	font-size:.9rem;
}
#backgroundPage .modules .deck	{
	margin-bottom:2rem;
}
#backgroundPage .modules p, #backgroundPage .modules li {
	font-size:1.1rem;
}
.sources {
	margin-top:2rem;
}
.sources p, .sources li, #backgroundPage .modules p.footnote 	{
	font-size:.8rem !important;
}
.testimonial 	{
	margin-top:3rem;	
	background: rgb(135,183,101);
	background: -moz-linear-gradient(180deg, rgba(135,183,101,1) 0%, rgba(83,124,57,1) 100%);
	background: -webkit-linear-gradient(180deg, rgba(135,183,101,1) 0%, rgba(83,124,57,1) 100%);
	background: linear-gradient(180deg, rgba(135,183,101,1) 0%, rgba(83,124,57,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#87b765",endColorstr="#537c39",GradientType=1);
	position: relative;
	margin-top: 3rem;
	padding: 2rem;
	font-size: 2.25rem;
	text-align: center;
	color: #fff;
	font-family: "EB Garamond", serif;
	mix-blend-mode: multiply; /* Blend background with elements underneath */
}
.testimonial::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgb(135, 183, 101);
	background: linear-gradient(180deg, rgba(135, 183, 101, 0.8) 0%, rgba(83, 124, 57, 0.8) 100%);
	opacity: 0.3; /* Set opacity for semi-transparency */
	z-index: -1; /* Keep this behind the content */
	mix-blend-mode: multiply; /* Apply multiply blend mode to background */
}
.testimonial * {
	position: relative;
	z-index: 1; /* Keep content above the background */
}
.testimonial p 	{
	line-height:1.3;
	text-shadow: 1px 1px 1px #496B31;
}
.testimonial em 	{
	display:block;
	font-size:1.75rem;
	margin-top:1rem;
}
.noBreak	{
	white-space: nowrap;
}
.screenBox {
	background-image: url('/images/logo-screen.png');
	background-position: top right 10%; /* Aligns the image to the bottom-right corner */
	background-repeat: no-repeat; /* Ensures the image does not repeat */
	background-size: 60%; /* Sets the background image size to 50% of the element */
}


/*	MEDIA QUERIES
------------------------------------------------------------------*/

/* Small only */
@media screen and (max-width: 39.9375em)	{
	h1 {
		margin-top:1rem;
		line-height:1.1;
		font-size:1.5rem;
	}
	h2	{
		font-size:1.25rem;
	}
	h3	{
		font-size:1.1rem;
	}
	h4, h5, h6	{
		font-size:1rem;
		font-style: italic;
		letter-spacing:0;
	}
	ul, ol, ul ol, ul ul, ol ul, ol ol	{
		margin-left:1.75rem;
	}
	ul.loginCreateAccount, .loggedIn	{
		text-align:center;
		margin-top:0;
		margin-left:0;
		margin-right:0;
		padding-top:2rem;
	}
	ul.loginCreateAccount 	{
		padding-top:1rem;
	}
	.loggedIn	{
		margin-bottom:0;
		padding-top:0;
	}
	.staffCell h3	{
		margin-top:0;
	}
	.staffCell	{
		margin-bottom:0;
	}
	.screenBox {
		background-size: 100%;
		background-position: right top;
	}
	.testimonial	{
		font-size:1.75rem;
	}
	.testimonial em 	{
		font-size:1.25rem;
	}
	.slogan	{
		padding-bottom:2rem;
		padding-right:0;
		padding-top:1rem;
		text-align: center;
	}
	.slogan p 	{
		font-size:1rem;
	}
	.homePageContainer	{
		margin-top:-10px;
	}
}

/* Medium and up */
@media screen and (min-width: 40em)	{
	.button-group.stacked-for-small .button	{
		flex:auto !important;
	}	
}

/* Medium only */
@media screen and (min-width: 40em) and (max-width: 63.9375em)	{
	.screenBox {
		background-position: right bottom 80%;
		background-size: 80%;
	}
	.slogan	{
		padding-bottom:2.5rem;
		padding-right:0;
		padding-top:1rem;
		text-align: center;
	}
}

/* Large and up */
@media screen and (min-width: 64em)	{

}

/* Large only */
@media screen and (min-width: 64em) and (max-width: 74.9375em)	{

}