/* =============================================================================================
	BASE STYLES AND LAYOUT
============================================================================================= */

/* ------------------------------------------------------------------------ Page Styles & Resets */

html {
	position: relative; /*for sticky footer*/
  	min-height: 100%;
}

body {
	font: normal 100%/1.6 'Krub', sans-serif, sans-serif; 
	color: #444;
} 

.preload * { /* Transitions fire only after page load http://css-tricks.com/transitions-only-after-page-load/ */
	-webkit-transition: none !important;
		transition: none !important;
	}

p a.anchor {
	margin-bottom: 0;
}

.overflow-x {
	overflow-x: scroll;
}

.anchor, .anchor-home { 
	display: inline-block;
	height: 10px;
	margin-top: -10px;
	visibility: hidden;
}

.ToTop {
    position:fixed;
    bottom:2rem;
    right:2rem;
    z-index:2000;
    opacity:0;
    transition:all 0.25s;
}

.ToTop.show {
    opacity:1;
    transition:all 0.25s;
}

.ToTop a { 
    display:block;
    width:2.5em;
    height:2.5em;
    margin:0;
    background-repeat:no-repeat;
    background-position:center center;
    transition:all 0.25s;
    background:#618022;
    border-radius:50%;
	color: #000;
	font-size: 1em;
}

.ToTop a:hover {
    background:#5e5e5e;
	color: #fff;
}

.ToTop svg{ 
    fill:#fff;
    -webkit-transition:fill 0.5s;
    transition:fill 0.5s;
    width:2.5rem;
    height:2.5rem;
    transition:all 0.25s;
}

.ToTop span {
    text-indent:100%;
    white-space:nowrap;
    overflow:hidden;
    transition:all 0.25s;
}

@media (min-width: 992px) {

	/*offset sticky footer*/
	.body--sticky-footer {
		padding-bottom: 258px; /*This will change depending on the height of the footer*/
	}

	/*if the header is fixed, add this class to the body*/
	.body--fixed-header {
		padding-top: 74px; /*This will change depending on the height of the header*/
	}
	
	.anchor { 
		height: 130px;
		margin-top: -130px;
	}
	
	.anchor-home { 
		height: 180px;
		margin-top: -180px;
	}
	
}




/* ------------------------------------------------------------------------ Keyboard Accessibility */

.skip-link { 
	position:absolute; 
	left:-10000px; 
	top:0; 
	width:1px; 
	height:1px; 
	overflow:hidden;
	background-color: #666;
	color: #fff;
	font-size: 0.875rem;
	text-decoration:none;
	z-index: 1100;
	padding:0.5rem 0.625rem; 
} 

.skip-link:focus, .skip-link.sr-only-focusable:active, .skip-link.sr-only-focusable:focus {
	position: absolute; 
	outline: none; 
	left:0;
	outline: none; 
	width:auto; 
	height:auto;
} 

.skip-link:hover {
	color: #fff;
	background-color: #777;
}

a:focus, .carousel-control-next:focus,.carousel-control-prev:focus, .btn:focus, .carousel__link:focus .carousel__btn, .form-control-file:focus {
	outline: solid thin rgba(0, 0, 0, 0.5);
	box-shadow: none;
} 

.sidenav__header-link:focus, .card__header-link:focus {outline: solid thin rgba(255, 255, 255, 0.5);}

a:hover, a:active { outline: none !important; } /*...not with mouse (kinda) */


/* ------------------------------------------------------------------------ Headers */

h1, h2, h3,
.h1, .h2, .h3  {
	font-family: 'Red Hat Display', sans-serif;
	font-weight: 700;
	line-height:1.4;
}	

h1, .h1 {	
	font-size: 1.75rem;
}
	
h2, .h2 {
	font-size: 1.5rem; 
}

h2 a {
	text-decoration: none;
	/*    color: #4CA1D2;*/
    color: #2B7CAB;
}
		
h3, .h3 { 
	font-size: 1.375rem; 
}	
	
		
@media (min-width: 768px) {	

	h1, .h1 {
		font-size: 2.25rem;
	}

	h2, .h2 {
		font-size: 2rem;
	}
}	

	
/* ------------------------------------------------------------------------ Lists */

ul, .list { 
	list-style: none; 
	list-style-position: outside;
	padding-left: 0;
}

ul li, .list__item {	
    padding: 0 0 0.25rem 1rem;
	background: url(../../images/arrow-right-gray.svg) no-repeat left 0.625rem;
	background-size: 0.625rem 0.625rem;
}

ul ul, .list__sub-list {
	margin-top: 0.25rem;
}


ul ol {
	padding-left: 1.375rem;
	margin-top: 0.25rem;
}

ul ol li {
	background-image: none;
	padding-left: 0;
}
		
ol {
	padding-left: 1rem;
}	

ol li {padding-bottom: 0.25rem;}

ol ol {
	padding-left: 2.25rem;
	margin-top: 0.25rem;
}

ol ul {margin-top: 0.25rem;}
		
li:last-child { 
	padding-bottom:0;
}
		
					
/* ------------------------------------------------------------------------ Other Base Text Styles */

.color-inherit {
	color: inherit;
}	

.text-muted {
	color: #888!important;
}

p.Date {
	font-style: italic;
	font-size: 0.95em;
	}
p.Title {
	font-size: 1.25em;
	border-bottom: 1px solid #FFF;
	font-weight: 700;
	line-height: 1.3;
	padding-bottom: 0.75em;
	margin-bottom: 0.5em;
	}

.Description {
	position: relative;
	font-size: 0.95em;
	}
	.Description p {	
		color: #FFF;
		font-size: 1em;
		}
		.Description p:empty {display: none}

.intro-text {
	font-size:1.25rem;
}

.intro__heading {
	font-size: 1.5rem;
	font-weight: 400;
}

.note {
	font-size: .875rem;
}

.heading__xl {
	font-size: 2.25rem;
	font-weight: 900;
	line-height: 0.9;
}

.accent--blue {
	/*    color: #4CA1D2;*/
    color: #2B7CAB;
;
}

.accent--green {
	color: #618022;
}

.accent--brown {
	color: #421400;
}

sup, sub {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup { 
	top: -0.5em; 
}

sub { 
	bottom: -0.25em; 
}

@media (min-width: 992px) {	

	.intro-text {
		font-size:1.5rem;
		line-height: 1.6;
	}
	
	.heading__xl {
		font-size: 3.375rem;
	}
	
	.intro__heading {
		font-size: 2.25rem;
		font-weight: 400;
	}

}

	
/* ------------------------------------------------------------------------ Links */

a { 
	color: #444;
    word-wrap: break-word;
    text-decoration: underline;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    font-weight: normal;
}	

a:hover {
	text-decoration: none;
	/*    color: #4CA1D2;*/
    color: #2B7CAB;
}

main a { 
	word-wrap: break-word; 
}

a img {
	border: none;
	-webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0) scale(1.0, 1.0);
	transition: opacity 0.25s;
}				

a img:hover { 
	opacity: .9;
}		

.btn {
	font-family: 'Red Hat Display', sans-serif;
	padding: .37rem 2rem;
	border-radius:0;
	text-transform: uppercase;
	cursor: pointer;
}

.btn-group-lg>.btn, .btn-lg {
	font-size: 1.125rem;
}

.btn-primary {
	background-color: #618022;
	border-color: #618022;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:not([disabled]):not(.disabled).active, .btn-primary:not([disabled]):not(.disabled):active, .show>.btn-primary.dropdown-toggle {
	background-color: #777;
	border-color: #777;
	font-weight: bold;
	box-shadow: none;
}


.dashboard a.btn-primary {
	margin-bottom: 1em;
}

.dashboard a.btn-primary.active {
	background-color: #4BA3D5 !important;
	border-color: #4BA3D5 !important;
	color: #fff;
}

.btn-secondary {
	background-color: #618022;
	border-color: #618022;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	text-transform: capitalize;
	font-size: 0.85em;
	padding: 0.5em 0.75em;
}

.btn-secondary:hover,
.btn-secondary:active,
.btn-secondary:not([disabled]):not(.disabled).active, .btn-secondary:not([disabled]):not(.disabled):active, .show>.btn-secondary.dropdown-toggle {
	background-color: #777;
	border-color: #777;
	box-shadow: none;
}

.btn-blue {
	background-color: #4BA3D5;
	border-color: #4BA3D5;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}

.btn-blue:hover,
.btn-blue:active,
.btn-blue:not([disabled]):not(.disabled).active, .btn-blue:not([disabled]):not(.disabled):active, .show>.btn-blue.dropdown-toggle {
	background-color: #777;
	border-color: #777;
	color: #fff;
	font-weight: bold;
	box-shadow: none;
}

.pdf__link {
	color: #618022;
	font-weight: 700;
	text-decoration: none;
}

.pdf__link::before {
	display: inline-block;
    content: ' ';
    background-image: url(../../images/pdf.png);
    background-size: 17px 19px;
    width: 17px;
    height: 19px;
    margin-right: 0.5em;
}

/* ------------------------------------------------------------------------ Images */
	
img {
	max-width: 100%;
	height: auto!important; 
}

   .img--float-left, .img--float-right { 
	margin: .5rem 0 1rem 0;	
}

@media (min-width: 576px) {	
	.img--float-left {
		float: left;
		margin: .5rem 1.5rem .375rem 0;
		max-width:50%;
		}
		
	.img--float-right {
		float: right;
		margin: .5rem 0 .375rem 1.5rem;
		max-width:50%;
		}
}

@media (min-width: 768px) {	
	.img--float-left, 
	.img--float-right { max-width:33%; }
}	

	
/* ------------------------------------------------------------------------ SVG's */

svg {
	width: 1rem;
	height: 1rem;
}	
	

/* ------------------------------------------------------------------------ Horizontal Rules */

hr, .hr { 
	margin: 1.5rem auto;
}	

@media (min-width: 768px) {

	hr, .hr {
		margin: 1.25rem auto;
	}

}	



/* =============================================================================================
	HEADER
============================================================================================= */

.print-header { display:none; }
	
.logo { 
	flex: 1;
	display: block;
}

.logo__img {
	max-width: 21.5rem;
	width: 100%;
	transition: all 0.25s;
}

.header {
	border-bottom: 1px solid #ddd;
}

.header--fixed-top {
	transition: background-color .5s;
}

.header__content {
	margin-top: 0.75rem;
	transition: all 0.25s;
}

.header--fixed-top.bg-white {
	transition: all 0.25s;
	padding-top: 2.45rem !important;
	padding-bottom: 2.45rem !important;
}

@media (max-height: 768px) and (min-width: 992px) {
	.logo__img {
		max-width: 15em;
		transition: all 0.25s;
	}

	.header--fixed-top.bg-white  {
		padding-top: 1rem !important;
		padding-bottom: 1rem !important;
		transition: all 0.25s;
	}
}

@media (min-width: 768px) {	
		
	.logo__error-page {
		margin:1.5rem auto 2.5rem auto;
		float: none;
	}
	
}

@media (min-width: 992px) {	
	
	.logo__img {
		max-width: 18rem;
	}

	.header--scroll .header__content {
		/*display: none !important;*/
		transition: all 0.25s;
	}

	.header--fixed-top.py-5.header--scroll  {
		padding-top: 1rem !important;
		padding-bottom: 1rem !important;
		transition: all 0.25s;
	}
	
	.header--scroll .logo__img {
		/*max-width: 12em;*/
		transition: all 0.25s;
	}
	
	.header__content { 
		margin-top: 0;
		margin-left:1.5em;
	}

	.header--fixed-top {
		position: fixed;
	    top: 0;
	    right: 0;
	    left: 0;
	    z-index: 1040;    
	}
}

@media (min-width: 1200px) {	

	.header__content { 
		margin-left:2em;
	}
	
	.logo__img {
		max-width: 21.5rem;
	}

}

@media (min-width: 1440px) {	

	.header__content { 
		margin-left:2em;
	}

}
		
/* ------------------------------------------------------------------------ TopLinks */

.top-links { 
	padding-bottom: 0.5rem;
}

.top-links__link { 
	text-decoration:none;
	font-size: 0.8rem;
	font-weight: 400;
	padding: 0 0.5rem;
	color: #444;
}

.top-links__link:hover {
	text-decoration:underline;
	color: #777 ;
}	

@media (min-width: 768px) {
		
	.top-links__link {
		font-size: 0.9375rem;
	}

}

@media (min-width: 992px) {

	.top-links {
		padding: 0;
	}

	.top-links__link:last-child { 
		padding-right: 0;
	}

}


/* ------------------------------------------------------------------------ Seach Area */

.search-form__input {
	border-radius: 0;
	border-right: 0;
	width: 100%;
}

.newsletter-form {
	width: 100%;
}

.search-form__btn {
	position: relative;
	width: 3rem;
	padding: 1.12rem .75rem;
	border-radius: 0;
}

.search-form__btn:after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	background: url(../../images/search-icon.svg) no-repeat center;
	background-size: 1.25rem auto;
	width: 100%;
	height: 100%;

}

@media (min-width: 992px) {
	.search-form__input {
		max-width: 10em;
		width: 100%;
	}
	
	.newsletter-form {
		max-width: 20em;
		width: 100%;
	}

}


/* ------------------------------------------------------------------------ Navbar Nav */

.navbar-nav .nav-link {
	border-bottom: 1px solid #ddd;
	color: #444;
	padding: .625rem 0;
	font-family: 'Red Hat Display', sans-serif;
	text-decoration: none;
	font-weight: normal;
}

.navbar-nav .nav-item {
	background-image: none;
	padding: 0;
}

.nav-item.dropdown.active .nav-link {
    /*color: #4CA1D2;*/
		color: #2B7CAB;
	font-weight: 700;
}

.nav-link.highlight {
	font-weight: bold;
	color: #618022;
}

.navbar-nav .nav-item.active:hover .nav-link, .navbar-nav .nav-link:hover {
    /*    color: #4CA1D2;*/
    color: #2B7CAB;
}

.navbar-nav .dropdown-menu {
	border: 0;
	padding-top: 0;
	background-color: #eee;
	border-radius: 0;
	margin:0;
	padding:0;
}

.navbar-nav .dropdown-menu li.active > .dropdown-item {
	color: #fff;
	font-weight: 700;
	background: #618022;
}

.navbar-nav .dropdown-item {
	border-bottom: 1px solid #fff;
	padding: .625rem 1.5rem;
	text-decoration: none;
	font-size: 0.8em;
}

.navbar-nav li:last-child > .dropdown-item {
	border-bottom: none;
}

.navbar-nav li {
	padding: 0;
	background-image: none;
}

.navbar-nav .dropdown-item:hover {
	background-color: rgba(0,0,0,.1);
}

.navbar-nav .dropdown-item:active {
	color:#444;
}

.navbar-nav .dropdown-item:focus {
	background-color:#eee;
}

.navbar-nav .dropdown-menu .dropdown-menu {
	background-color: #ddd;
}

.navbar-nav.sm-collapsible .dropdown-menu .dropdown-menu {
	margin:0;
}

.navbar-nav .dropdown-item .dropdown-item {
	background-color: inherit;
}

.navbar-nav:not(.sm-collapsible) .nav-link .sub-arrow {
	display: none;
	border:0;
}

.navbar-nav.sm-collapsible .sub-arrow {
	border: none;
	width: 2rem;
	margin-right: 0;
}

.navbar-nav:not(.sm-collapsible) .dropdown-item .sub-arrow, .navbar-nav:not(.sm-collapsible):not([data-sm-skip]) .dropdown-menu .dropdown-toggle::after {
   /* border: none;
    width: .625rem;
    height: .625rem;
    background-image: url(../../images/arrow-right-gray.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: .625rem .625rem;*/
}

.dropdown-toggle::after {
   display:none
}

@media (min-width: 992px) {	

	.navbar {
		margin-top: 0; 
	}

	.navbar-nav .nav-item.active .nav-link {
		position: relative;
        /*color: #4CA1D2;*/
		color: #2B7CAB;
	   font-weight: 700;
	}

	.navbar-nav .nav-item.active .nav-link:after {
		content: "";
		position: absolute;
		bottom: -1px;
		left: 0;
		width: 100%;
    	transition: border-color 0.25s;
	}

	.navbar-nav .nav-item.active:hover .nav-link:after {
		border-color: #777;
	}

	.navbar-nav .nav-link {
		padding: .5rem 0!important;
		margin-right: 1rem;
		font-size: 0.75rem;
		border-bottom: 0;
	}
	.navbar-nav .nav-item:last-child .nav-link {
		margin-right:0; 
	}

	.navbar-nav .dropdown-menu {
		padding: 0;
		min-width: 15rem !important;
	}

}

@media (min-width: 1200px) {

	.navbar-nav .nav-link {
		font-size: 0.85rem;
		margin-right: 1.5rem;
	}

}

@media (min-width: 1440px) {

	.navbar-nav .nav-link {
		font-size: 1rem;
		margin-right: 1.4rem;
	}

}


/* ------------------------------------------------------------------------ Navbar Toggler */

.navbar-toggler {
	padding: 0 0 0 1rem;
	border: none;
	cursor: pointer;
}

.navbar-toggler-icon {
    background-image: url(../../images/menu-icon.svg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	background-image: url(../../images/menu-icon-open.svg);
}

@media (min-width: 992px) {

	.navbar-toggler {
		display: none;
	}

}



/* =============================================================================================
	MAIN CONTENT AREA
============================================================================================= */

@media (min-width: 992px) {		
	
	.aside {
		padding-left: 1rem
	}
	
	.main--full-width {
		width: 100%;
		padding-left: 0;
	}

	main p,
	main li,
	label,
	table {
		font-size: 1.125rem;
	}	
					
}

@media (min-width: 1440px) {
	.container {
	    max-width: 1360px;
	}
}



/* ------------------------------------------------------------------------ Sidenav */

.sidenav {
	
}

.sidenav.sticky-top {
	top: 102px; /*This will change depending on the height of the header*/
}

.sidenav__header a {
	font-family: 'Red Hat Display', sans-serif;
	padding: .75rem 0rem;
	text-transform: uppercase;
	color: #333;
	font-weight: bold;
	font-size: 	1.75rem;
	text-decoration: none;
}

.sidenav__header-link {
	color: #fff;
	display: block;
	transition: all 0.25s;
}

.sidenav__header-link:hover {
 	color: #777; 
 	text-decoration: none;
}

.sidenav__list {
	list-style: none;
}

.sidenav__item {
	line-height: 1.4;
	padding: 0;
	background-image: none;
}

.sidenav__list .sidenav__item > .sidenav__list .sidenav__item {
	margin-left: 1.5em;
}

.sidenav__list .sidenav__item.Active > .sidenav__list .sidenav__item.Active {
    color: #618022;
    font-weight: 700;
	border-right: none;
	transition: all 0.25s;
	margin-left: 1.5em;
}

.sidenav__list .sidenav__item.Active > .sidenav__list .sidenav__item {
	margin-left: 1.5em;
}


.sidenav__item.Active > .sidenav__link {
    color: #618022;
    font-weight: 700;
	border-right: solid 3px #618022;
	transition: all 0.25s;
}

.sidenav__link {
	display: block;
	font-size: 1rem;
	padding: .75rem 0rem;
	color: #444;
	font-weight: 400;
	border-right: solid 1px #ddd;
	transition: all 0.25s;
	text-decoration: none;
}

.sidenav__link:hover { 
	color: #618022;
	text-decoration: none;
	border-right: solid 3px #618022;
	transition: all 0.25s;
	font-weight: 400;
}

.sidenav__sub-list {
	background-color: #ddd;
	margin:0;
}

.sidenav__sub-list .sidenav__item { 
	background: url(../../images/arrow-right-gray.svg) no-repeat 2rem 1.125rem;
	background-size: 0.625rem 0.625rem;
}

.sidenav__sub-list .sidenav__link {
	padding-left: 3rem ;
}


@media (max-width: 992px) {

	.sidenav.sticky-top {
		position: static; /*disable on smaller screens*/
	}

}


.side__infobox {
	
}

.info__box {
	background: #F3F2EF;
	border-top: solid 3px #421400;
}

.info__box__header {
	font-family: 'Red Hat Display', sans-serif;
	font-size: 1.5rem;
	text-transform: uppercase;
	/*    color: #4CA1D2;*/
    color: #2B7CAB;
	font-weight: 700;
}

.info__box a {
	/*    color: #4CA1D2;*/
    color: #2B7CAB;
    text-decoration: none;
	display: block;
	margin-bottom: 2em;
	background: #fff;
	padding: 2em;
}

.info__box a:last-child {
	margin-bottom: 0;
}

.info__box a:hover {
    color: #444;
    text-decoration: none;
}

.Social.AALPSocial {
	display: block;
	margin: 0 auto;
	padding-top: 0;
	text-align: center;
	font-size: 1em
}

.Social.AALPSocial svg { 
	fill: #3f96c7;
	width: 4rem;
	height: 2rem;
}


	.Social.AALPSocial a:last-child {margin-right: 0;}	


/* ------------------------------------------------------------------------ InfoBox Modules */

.InfoBox {	
	background: #f5f5f5; 
	}	
	.InfoBox.Padded, .InfoBox .Padded { 
		/*padding: 1.25em 1.5em .75em 1.5em;*/
		padding: 1.5em;
		} /*If extra padding is needed*/

	.InfoBox.HasBorder {border-bottom: 5px solid #367da5;}
	
	.InfoBox input, .InfoBox select, .InfoBox textarea { border: none; }
	
	
	.InfoBox h2 {
		/*background: url(../../images/highlight-lighter.svg) no-repeat center;
    	background-size: 100% 100%;*/
    	/*padding: 0.3em 0.435em;*/
    	margin: 0.25em 0 0.75em 0;
    	padding-left: 0;
		}

	/*.InfoBox.Blue {
		background-color: #4BA3D5;
		}
		.InfoBox.Blue h2,
		.InfoBox.Blue p,
		.InfoBox.Blue li,
		.InfoBox.Green h2,
		.InfoBox.Green p,
		.InfoBox.Green li {color: #FFF;}

	.InfoBox.Green {
		background-color: #80BF4E;
		}*/			


/* ------------------------------------------------- Accordions Module */

.InfoBox .Accordion { 
	margin: 0;
	padding:0;
	overflow:hidden;	
	list-style: none; 
	}
	.InfoBox .Accordion dt:nth-of-type(odd) {
		background: #f8f9fa;
	}
	.InfoBox .Accordion dt { 
		margin:0; 
		padding: 0;
		border-bottom:1px solid #e9e9e9;
		position:relative;			
		}
		.InfoBox .Accordion dt.Active {
			border-bottom: 1px solid #D4D4D4;
			}	

		.InfoBox .Accordion dt a {  		
			position: relative;
			display: block;
			width: 100% !important;
			padding: .5em 1.5em .5em 1.5em;
			font-size: 1.1875em;
			font-weight: 500;
			text-decoration:none;
			/*    color: #4CA1D2;*/
    color: #2B7CAB;
			}
			.InfoBox .Accordion dt a:after {
			    content: "";
			    display: inline-block;
			    float: right;
			    background: url(../../images/arrow-right-icon.svg) no-repeat center;
			    width: 7px;
			    height: 11px;
			    margin-top: 0.5em;
			    /* margin-left: 0.75em; */
			    transition: all 0.25s ease-in-out;
			    -webkit-transition: all 0.25s ease-in-out;
				}
			.InfoBox .Accordion dt a:hover { 
				background-color: #e9e9e9;
				}
				.InfoBox .Accordion dt.Active a { 
					background-color: #e9e9e9;
					}
					.InfoBox .Accordion dt.Active a:after {
						-webkit-transform: rotate(90deg);
						transform: rotate(90deg);
						}
					.InfoBox .Accordion dt.Active a:focus { outline: none } 
				

.InfoBox .Accordion dd {		
	margin: 0 ;
	padding:  1em 1.5em .75em 1.5em ;
	display: block;
	background: #fbfbfb;
	}	
			
	.InfoBox .Accordion dd a {}	


.InfoBox .Accordion ul {padding-bottom: 1em}
	.InfoBox .Accordion li {font-size: 1em;}		

@media all and (min-width: 60em) {

	.InfoBox .Accordion dd p {font-size: 1.1em;}
}

/* ------------------------------------------------------------------------ Staff Photos */

.StaffPhoto {
	/*max-width: 13.125em;*/
	margin: 0 auto 0.75em auto;
	overflow: hidden;
	}
	.StaffPhoto img {margin-bottom: 0; max-height: 20em; height: 100%}


/* ------------------------------------------------------------------------ Sections */

.section, .section-nobanner { 
	padding: 2rem 0;
}

.section--grey {
	background-color: #eee;
}

.section--darkgrey {
	background-color: #ddd;
}

@media (min-width: 768px) {	

	.section { 
		padding: 3rem 0; 
	}
}

@media (min-width: 992px) {	
	
	.section.section-nobanner {
		padding: 4rem 0;
	}

}

/* ------------------------------------------------------------------------ Page Fold */	

.page__fold__height {
	height: auto;
}

.page__fold {
	background: #fff; 
	position: relative;
	top: 0em;
	z-index: 1;
	-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
	transition: all 0.25s;
}

@media (min-width: 992px) {
	
	.page__fold__height {
		height: 10em;
		transition: all 0.25s;
	}
	
	.page__fold {
		top: -3em;
		-webkit-box-shadow: 0px -10px 13px -1px rgba(0,0,0,0.28);
		-moz-box-shadow: 0px -10px 13px -1px rgba(0,0,0,0.28);
		box-shadow: 0px -10px 13px -1px rgba(0,0,0,0.28);
		transition: all 0.25s;
	}
}

@media (min-width: 1200px) {
	
	
	.page__fold {
		top: -5em;
		transition: all 0.25s;
	}
}


/* ------------------------------------------------------------------------ Carousel */	

.carousel__link {
	display: block;
}

.carousel__btn {
	transition: all 0.25s;
}

.carousel__link:hover .carousel__btn {
	background-color: #777
}

.carousel__image {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	min-height: 15rem;
	background-color: #ddd;
	transition: opacity 0.25s ease-in-out;
}

.carousel__link:hover .carousel__image {
	opacity: .9;
}

.carousel__heading, .carousel__boldheading span.symbol {
	font-family: 'Marck Script', cursive;
    font-size: 2.625rem;
    line-height: 1.3;
    margin-bottom:.5rem;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.25);
}

.carousel__boldheading {
	font-family: 'Red Hat Display', sans-serif;
	font-weight: 900;
	}

.carousel__heading, .carousel__boldheading span.symbol {
	font-size: 1.2rem;
    line-height: 0.3;
    transition: all 0.25s;
}

.carousel__boldheading span.symbol {
	top: -0.45em;
	left: 0;
	position: relative;
}

.carousel__boldheading {
    font-size: 2rem;
    line-height: 1;
    transition: all 0.25s;
}

.carousel__boldheading.shift {
		position: relative;
		left: 0.7em;
	}

.carousel__link:hover {
	text-decoration: none;
}

.carousel__subheading {
	text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.25);
	font-weight:400;
}

.carousel-indicators {
	display: none;
}

.carousel-caption { 
	top: 32%;
    max-width: 71rem;
    margin: 0 auto;
    padding: .5rem 1rem;
    transition: all 0.25s;
}

.carousel-control-next, .carousel-control-prev {
	align-items: stretch;	
}

.carousel-control-next-icon, .carousel-control-prev-icon {
	width: 2rem;
	height: 2rem;
	margin-top: 6.5rem;
	transition: all 0.25s;
}

.carousel-control-prev-icon {
	background-image: url(../../images/carousel-control-prev-icon-white.svg);
}

.carousel-control-next-icon {
	background-image: url(../../images/carousel-control-next-icon-white.svg);
}

.carousel__image {
	min-height: 18rem;
}

.carousel-control-next-icon, .carousel-control-prev-icon {
	margin-top: 8rem;
}

@media (min-width: 576px) {	
	
	.carousel__boldheading {
    	font-size: 2.8rem;
	}
	
	.carousel__heading, .carousel__boldheading span.symbol {
		font-size: 2rem;
	}

	.carousel__image {
		min-height: 18rem;
	}

	.carousel-control-prev:hover {
	padding-right: .75rem;
	}

	.carousel-control-next:hover {
		padding-left: .75rem;
	}

}

@media (min-width: 992px) {	

	.carousel__image {
		min-height: auto;
		height: 0;
		padding-bottom: 34%;
		min-height: 30rem;
	}

	.carousel__link:hover .carousel-caption {
		transform: translateY(-.375rem);
	}

	.carousel__image:after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 50%;
		/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.25+100 */
		background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.6) 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.6) 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.6) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#40000000',GradientType=0 ); /* IE6-9 */
		z-index: 1;
	}
	
	.carousel__heading, .carousel__boldheading span.symbol {
		font-size: 3.5rem;
		line-height: 1.8;
		transition: all 0.25s;
	}
	
	.carousel__boldheading span.symbol {
		top: -0.45em;
		left: 0;
		position: relative;
	}
	
	.carousel__boldheading span.xl {
		font-size: 8rem;
		line-height: 1;
	}
	
	.carousel__boldheading {
		font-size: 4.8rem;
		line-height: 0;
		transition: all 0.25s;
	}

	.carousel-control-next, .carousel-control-prev {
		align-items: center;
	}

	.carousel-control-next-icon, .carousel-control-prev-icon {
		width: 3rem;
		height: 3rem;
		margin-top:0;
	}
	
	.carousel-caption { 
		top: 28%;
	}

}

@media (max-height: 768px) and (min-width: 992px) {
	
	.carousel-caption { 
		top: 24%;
	}
	
}


@media (min-width: 1200px) {

	.carousel__image {
		padding-bottom: 40%;
	}
	
	.carousel__image {
		min-height: 30rem;
		padding-bottom: 0;
	}

}

@media (min-width: 1200px) {
	
	.carousel__image {
		min-height: 40rem;
		padding-bottom: 0;
	}
}

@media (min-width: 1600px) {
	.carousel__heading, .carousel__boldheading span.symbol {
		font-size: 5.625rem;
		line-height: 0.5;
		transition: all 0.25s;
	}
	
	.carousel__boldheading {
		font-size: 7.5rem;
		line-height: 1;
		transition: all 0.25s;
	}
}

@media (min-width: 1920px) {

	.carousel__image {
		min-height: 47rem;
		padding-bottom: 0;
	}

}


/* ------------------------------------------------------------------------ Jumbotron/banner */

.jumbotron {
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	padding: 0;
	margin-bottom: 0;
	min-height: 12rem;
	background-color: #444;
}


#jumbotron-caption {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -moz-linear-gradient(top, rgba(0,0,0,0.5), rgba(0,0,0,0.5), rgba(0,0,0,0.5), rgba(0,0,0,0.5));
    background: -webkit-linear-gradient(top, rgba(0,0,0,0.5), rgba(0,0,0,0.5), rgba(0,0,0,0.5), rgba(0,0,0,0.5));
    background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5), rgba(0,0,0,0.5), rgba(0,0,0,0.5));
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#40000000', endColorstr='#00000000',GradientType=0 );
    z-index: -1;
}


.container-fluid h1 {
	font-size: 1.5rem;
}
	
.container-fluid {
	padding: 5rem 2rem;
	transition: all 0.25s;
	color: #fff;
	position: relative;
	z-index: 2;
}

.aalp-logo {
	position: absolute;
    top: -2.5em;
    max-width: 3em;
    width: 100%;
}

@media (min-width: 576px) {	

	.container-fluid h1 {
		font-size: 1.75rem;
	}
	
	.jumbotron {
		min-height: 12rem;
	}

}



@media (min-width: 992px) {	
	
	.jumbotron {
		min-height: 22rem;
	}
	
	.container-fluid {
	padding: 10.6rem 3rem;
	}
	
	.container-fluid h1 {
		font-size: 3.75rem;
		position: relative;
		top: 3.25rem;
	}
	
	.aalp-logo {
		position: absolute;
		top: -1em;
		max-width: 6em;
		width: 100%
	}

}

@media (min-width: 1200px) {	

	.jumbotron {
		min-height: 26rem;
	}

}

@media (max-height: 768px) and (min-width: 992px) {
	
	.jumbotron {
    	min-height: 21rem;
	}
	
	.container-fluid {
    	padding: 7.6rem 3rem;
	}
	
	.container-fluid h1 {
    	top: 1.5rem;
	}
	
	.aalp-logo {
		top: -2em;
	}

}


/* ------------------------------------------------------------------------ Modal */

.modal {
	z-index: 10001;
	background: rgb(0,0,0,0.5);
}

.modal a {
	color: #fff;
	font-weight: bold;
}

.modal h2 {
	color: #fff;
}

.modal-content {
	background-color: #2B7CAB;
	border-radius: 0;
	border: none;
	color: #fff;
}

.modal-content p {
	font-size: 1rem;
}

.modal-body {
	padding: 2em;
	font-size: 1rem;
}

.modal-body .close {
	color:#fff;
}

.modal-body .close:hover {
	color:#ddd;
}

.modal ul {
	margin-left: 3em;
}

.modal ul li {
	background: none;
	list-style:circle;
	padding: 0;
	font-size: 1rem;
}


/* ------------------------------------------------------------------------ Callouts */


.callout-group { 
	font-family: 'Red Hat Display', sans-serif;
	padding-top: .5rem;
}


.callout-group__callout--stacked:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.25);
}

.callout-group__callout--stacked .callout-group__content {
	position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    color: #FFF;
    text-align: center;
    width: 100%;
    margin: 0;
    padding: 0 1rem;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.25);
}

.callout-group__callout--stacked:hover .callout-group__heading{
	color: #fff;
}


.callout-group__callout {
	background: #4CA1D2;
	display: block;
	font-weight: 400;
	position: relative;
	color: inherit;
	cursor:pointer;
}

.callout-group__overlay--blue {
	background: #4CA1D2;
	opacity: 0.6;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	transition: all 0.25s;
}

.callout-group__overlay--green {
	background: #618022;
	opacity: 0.6;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	transition: all 0.25s;
}

.callout-group__overlay--brown {
	background: #421400;
	opacity: 0.6;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	transition: all 0.25s;
}

.callout-group__callout:hover .callout-group__overlay--blue, .callout-group__callout:hover .callout-group__overlay--green, .callout-group__callout:hover .callout-group__overlay--brown {
	opacity: 0.8;
	transition: all 0.25s;
}
	

.callout-group__callout:hover {
	text-decoration: none;
	color: inherit;
	transition: all 0.25s;
}

.callout-group__image {
	height: 0;
	padding-bottom: 58%;
	background-repeat: no-repeat;
	background-size: cover;
	transition: all 0.25s;
	background-position: center center;
}

.callout-group__callout:hover .callout-group__image {
	opacity: 1;
	transition: all 0.25s;
}

.callout-group__heading {
	margin-top: 1rem;
	font-weight: 700;
	text-align: center;
	transition: all 0.25s;
	font-size: 	1.25rem;
}

.callout-group__callout:hover .callout-group__heading{
	color: #fff;
}

.callout-group__text {
	font-size: 1rem;
	text-align: center;
	color: #888;
}

@media all and (min-width: 992px) {
	.callout-group__image {
		padding-bottom: 90%;
	}
}

@media all and (min-width: 1200px) {
	.callout-group__heading {
		font-size: 	1.75rem;
	}
	
	.callout-group__image {
		padding-bottom: 77%;
	}
}

/* ------------------------------------------------------------------------ Cards */

.card, .card-header:first-child  {
	border-radius: 0;
}

.card:hover {
	text-decoration: none;
}

.card--open-concept {
	border:none;
	background-color: transparent;
}

.card--open-concept:hover {
	background-color: transparent;
}

.card--open-concept .card-body{
	padding: 0;
}

a.card--open-concept{
	text-decoration: none;
	color: #444;
}

a.card--open-concept:hover {
	text-decoration: none;
	 /*    color: #4CA1D2;*/
    color: #2B7CAB;
}

.card-text p {
	/*font-size: 1rem;
    font-weight: 400;*/
}

.card-body .post__title {
	font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.3;
	min-height: 0;
}

.card--open-concept:hover .btn {
	background-color: #777;
}

.card-header {
	background-color: #222;
    border-bottom: 0;
    color: #fff;
    font-weight: 700;
}

.card__header-link {
	color: #fff;
	display: block;
	transition: all 0.25s;
}

.card__header-link:hover {
 	color: #777; 
 	text-decoration: none;
}

.card__header-no-link {
	transition: all 0.25s;
}

.card:hover .card__header-no-link {
	color: #777;
}

.card-text {
	/*font-size: 1rem;
	font-weight: 400;*/
}

a.card-text {
	font-size: 1rem;
	font-weight: 400;
}

.card__date, .card:hover .card__date {
	font-weight: bold;
	font-size: 1rem;
}

a.card__date, .card:hover .card__date {
	font-weight: bold;
	font-size: 1rem;
}

@media all and (min-width: 768px) {
	.card-body .post__title {
		min-height: 6.5em;
	}
}

@media all and (min-width: 992px) {
	.card-body .post__title {
		min-height: 5.1em;
	}
}

@media all and (min-width: 1200px) {
	.card-body .post__title {
		min-height: 3.9em;
	}
}

@media all and (min-width: 1600px) {
	.card-body .post__title {
		min-height: 2.9em;
	}
}

/* ------------------------------------------------------------------------ List Group */

.list-group__link {
	display: block;
	font-weight: 400;
	transition: all 0.25s;
	padding: 1.0rem 1.25rem;
}

.list-group__link:hover {
	text-decoration: none;
	background-color: #f8f8f8;
}

.list-group__link:hover .list-group__heading {
	text-decoration: underline;
}

.list-group-item, .list-group-item:last-child {
	padding: 0;
	background-image: none;
}


.list-group-item.active {
	background-color: #666;
    border-color: #666;
}


/* ------------------------------------------------------------------------ Accordions */

.accordion {
	background-color :#fff;
}

.accordion .card  {
	background-color: #f8f8f8;
	border:none;
}

.AccordionBox {
	max-height: 18em;
	min-height: 12em;
	overflow: hidden;
	transition: max-height 0.4s ease-in-out;
	-webkit-transition: max-height 0.4s ease-in-out;
	}
	.AccordionBox:after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		/*height: 6em;*/
		height: 8em;
		/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#7fbe50+0,7fbe50+100&0+0,1+100 */
		background: -moz-linear-gradient(top,  rgba(127,190,80,0) 0%, rgba(127,190,80,1) 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(top,  rgba(127,190,80,0) 0%,rgba(127,190,80,1) 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to bottom,  rgba(127,190,80,0) 0%,rgba(127,190,80,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007fbe50', endColorstr='#7fbe50',GradientType=0 ); /* IE6-9 */
		pointer-events: none;
		z-index:1;
		mix-blend-mode: darken;
		transition: height 0.4s ease-in-out;
	    -webkit-transition: height 0.4s ease-in-out;
		}	

	.AccordionBox .Button {
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 5;
		width: 129px;
		margin: 0 auto;
		}
		.AccordionBox.EventBox .Button {
			bottom: 2em;
			}
	
@media all and (min-width: 60em) {

	p.Title {font-size: 1.395625em;}

	.AccordionBox {min-height: 18em;}


}

/* ------------------------------------------------------------------------ Pagination */

.page-item {
	font-size: 1rem;
	background-image: none;
	padding: 0;
}

.page-link {
	font-weight: 400;
	color: #666;
}

.page-item.active .page-link {
	background-color: #666;
	border-color: #666;
}

/* ------------------------------------------------------------------------ Blockquote */

blockquote {
	border-left: 10px solid #4BA3D5;
    margin: 1em 0 2em 0;
    padding: 1.5em 2em 1.5em 2em;
    background-color: whitesmoke;
    font-style: italic;
	font-size: 0.9em;
	color: #4BA3D5;
	}
	blockquote p {font-size: 1em!important;}	
	blockquote p.Source {
		text-align: right;
		font-style: normal;
		font-size: 1.1em;
		padding-bottom: 0;
		}


@media all and (min-width: 60em) {	

	blockquote {
		float: left;
		width: 70%;
		/*clear: both;*/
		font-size: 1.1em;
    	line-height: 1.8;
    	margin-right: 2em;
		}	
		blockquote:nth-child(odd){
			float: right;
			border-left: 0;
			border-right: 10px solid #4BA3D5;
			margin-left: 2em;
			margin-right: 0;
			}	

}

/* ------------------------------------------------------------------------ Sponsors */

.SponsorLogo {
	max-width: 12em;
    margin: 0 0 1em 0;
    display: block;
    border: 1px solid #D6D6D6;
    padding: 0.5em;
    width: 100%;
	}

/* ------------------------------------------------------------------------ Icons */

/*.blog:before {
    display: inline-block;
    content: ' ';
    background-image: url(../../images/blog-icon.svg);
    background-size: 28px 22px;
    width: 28px;
    height: 22px;
    margin-right: 0.5em;
}

.events:before {
    display: inline-block;
    content: ' ';
    background-image: url(../../images/calendar-icon.svg);
    background-size: 28px 22px;
    width: 28px;
    height: 22px;
    margin-right: 0.5em;
}

.news:before {
    display: inline-block;
    content: ' ';
    background-image: url(../../images/news-icon.svg);
    background-size: 28px 22px;
    width: 28px;
    height: 22px;
    margin-right: 0.5em;
}*/

/* ------------------------------------------------------------------------ Homepage - Events Section */	

.EventSection {
	padding: 1.0em 0 2em 0;
	background: url(../../images/events-bg.jpg) no-repeat center;
	background-size: cover;
	}

	.EventSection h2 {
		color: #3a3a3a;
		border-left: 0;
		margin: 0;
		background: none;
		padding: 0.615em 0;
		}

		.EventSection h2 svg {
			height: 34px;
			width: 27px;
			margin-right: 0.75em;
		    vertical-align: -12%;
		    fill: #3a3a3a;
			}

	.EventBox {
		position: relative;
		background-color: #489ecf;
		margin-bottom: 1em;
		}
		.EventBox .Padded {padding: 1.25em 2em;}
		.EventBox .Date {
			background-color: #3e86af;
			color: #c7deeb;
			padding: 0.8em 0;
			}

		.EventBox a {color: #FFF;}	

		.EventBox .AccordionBoxToggle {bottom: 2em;}	

		.EventBox:after {
			/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#7fbe50+0,489ecf+100&0+0,1+100 */
			background: -moz-linear-gradient(top,  rgba(127,190,80,0) 0%, rgba(72,158,207,1) 100%); /* FF3.6-15 */
			background: -webkit-linear-gradient(top,  rgba(127,190,80,0) 0%,rgba(72,158,207,1) 100%); /* Chrome10-25,Safari5.1-6 */
			background: linear-gradient(to bottom,  rgba(127,190,80,0) 0%,rgba(72,158,207,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
			filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007fbe50', endColorstr='#489ecf',GradientType=0 ); /* IE6-9 */
			}

@media all and (min-width: 70em) {

	.EventSection {padding: 2.0em 0 3.5em 0;}

	.EventSection .Col-1-4 {
		width: 23.68%;
		margin-right: 1.75%
		}
		.EventSection .Col-1-4:last-child {margin-right: 0;}

		.EventBox {margin-bottom: 0}	


}

/* ------------------------------------------------------------------------ Logo Box (on some landing pages) */

.LogoBox {
	position: relative;
	min-height: 250px;
	text-align: center;
	margin-bottom: 1em;
	}	
	.LogoBox img {
		max-height: 135px;
	    width: auto;
	    max-width: 70%;
		margin: 0 auto 0 auto;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
		}

	.LogoBox a {
		display: block;
		width: 100%;
		height: 100%
		}		


.LogoBoxFull {
	position: relative;
	min-height: 250px;
	text-align: center;
	}	
	.LogoBoxFull img {
	    width: auto;
	    max-width: 100%;
		margin: 0 auto 0 auto;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
		}

/* ------------------------------------------------------------------------ Landing Block */

.landing__block {
	margin-bottom: 3em;
    text-align: center;
    font-size: 1.25rem;
}

.landing__block img {
	margin-bottom: 1em;
}

.landing__block a {
	text-decoration: none;
}

/* ------------------------------------------------------------------------ Media Centre */	

.MediaBox {}

	.MediaBox p.Date,
	.MediaBox p.Title,
	.MediaBox .Description p {color: inherit;}

	.MediaBox p.Title {border-bottom-color: inherit;}

/* ------------------------------------------------------------------------ Contact */	

.Newsletter.NewsletterCallout {
	background: #4ba3d5 url(../../images/envelope.png) no-repeat center;
	background-size: cover;
	padding: 3.5em 7% 2em 7%;
	font-size: 0.8em;
	}
	.Newsletter.NewsletterCallout p {
		color: #FFF;
		}
	.Newsletter.NewsletterCallout .Button {
		color: #FFF;
		border-color: #FFF;
		/*border-width: 0.12em;*/
		}	
	.Newsletter.NewsletterCallout .Button:hover,
	.Newsletter.NewsletterCallout .Button:focus {
		border-color: #FFF;
		color: #489ecf;
		}
	.Newsletter.NewsletterCallout svg {
		fill: #FFF;
		}

.CanadaHelpsLogo {
	width: 100%;
	padding: 0 1em;
	margin: 0 auto;
	}

.FlickrLogo	{
	width: 100px;
	margin: 0.5em auto;
	}

@media all and (min-width: 60em) {

	.Newsletter.NewsletterCallout {
		width: 100%;
		}

	.Newsletter.NewsletterCallout svg {
		vertical-align: -28%;
		}

	.Newsletter.NewsletterCallout .LargeButton {margin-top: 0.5em;}	

}
/* ------------------------------------------------------------------------ Blog */	

.BlogEntry img {
	margin: 1em 0;
    width: auto;
	}

.BlogEntry hr {
	margin: 1.5em auto 2.5em auto;
	}		

.SubHeadingBlock {
	border-bottom: solid 1px #ddd;
    padding: 0;
    margin-bottom: 2em;
	}
	.SubHeadingBlock h2 {
		padding: 0 0 0.5em 0;
		margin: 0;
		border-left: 0;
		}

	.SubHeadingBlock .Date {
		color: #555;
		font-size: 1.0625em;
		padding-bottom: 0.25em;
		}	

	.SubHeadingBlock svg {
		width: 1.125em;
	    height: 1.4375em;
	    vertical-align: -20%;
	    margin: 0 0.6em 0 0.25em;
	    fill: #666666;
		}	


.Tags {
	}
	.Tags p {font-size: 1.06875em;}

	.Tags a {
		display: inline-block;
		color: #4ba3d5;
		background-color: #f3f3f3;
		font-weight: normal;
		padding: 0 0.5em;
		margin-left: 0.4em;
		}

.ShareButtons .ShareLabel {
	margin-right: 1em;
	vertical-align: middle;
	}		


@media all and (min-width: 60em) {

	.BlogEntry hr {
		margin: 2.75em 0 4.5em 0;
		}	
		.BlogEntry:last-of-type hr {margin-bottom: 1.75em;}

}


/* ------------------------------------------------------------------------ Tables */

.table {
	background-color: #fff;
}

.table .thead-dark th {
	background-color: #222;
    border: none;
}

.table td, .table th {
    border-top: 1px solid rgba(0,0,0,.125);
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: #f8f8f8;
}

.table td {vertical-align: middle;}
.Table-Charts .table td, .Table-Charts .table th {
	vertical-align: top;
	border: solid 1px #ddd;
}

.table-md td, .table-md th {padding: .5rem;}

.table .custom-control {
	margin: 0;
	padding-left: 1.5rem;
    }
		

/* ------------------------------------------------------------------------ Forms */

fieldset {
	border:none;
	margin:0;
	padding:0;
}

fieldset legend { display: none; }
	
legend { font-size: 1.25rem;}

.required-input {
	color: #e7004c !important;
	font-size: 0.875rem;
	font-weight:bold;
}

.form-text {
	font-style: italic;
	font-size: 80%;
    font-weight: 400;
    }

.form-control {
	border-radius:0;
	border-color: #ddd;
	padding: .5rem .75rem;
}

.form-control:focus {
	box-shadow: none;
	border-color: rgba(0, 0, 0, 0.5);
}

[type="checkbox"], [type="radio"] {
	margin-left: 0.5em;
	margin-right: 0.5em;
}

select.form-control:not([size]):not([multiple]) {
    height: calc(2.5rem + 2px);
}

.form-control-file {cursor: pointer;}

/*custom radio and checkbox*/
.custom-control {
	padding-left: 1.75rem;
	margin-bottom: 0;
	cursor: pointer;
}

.custom-control-description {
	font-weight: 400;
}

.custom-control-indicator {
	top: .375rem;
	width: 1.125rem;
    height: 1.125rem;
    background-color: #f8f8f8;
    border: 1px solid #ddd;
    border-radius: 2px;
}

.custom-control-input:checked~.custom-control-indicator {
	background-color: #666;
	border-color: #666;
}

.custom-control-input:focus ~ .custom-control-indicator {
    box-shadow: none;
    border-color: #000;
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 30px white inset;
}		

.Error {
    color: #990000;
    font-size: 0.8em;
    font-style: italic;
}

.Required {
    font-size: 0.85em;
}
			
/* =============================================================================================
	FOOTER
============================================================================================= */

.print-footer { 
	display:none;
}

.footer { 
	font-family: 'Red Hat Display', sans-serif;
	padding: 2rem 0;
	border-top: 1px solid #ddd;
	background: #333;
	color: #fff;
	font-size: 1.125rem;
}

.footer a {
	text-decoration: none;
	color: #fff;
}

.footer a:hover {
	color: #fff;
}

.footer__rkd {
	display: inline-block;
	width: 5.625rem; 
}

.logo__img__footer {
	max-width: 20rem; 
	width: 100%;
}

.footer__copyright {
	margin-bottom: 0;
	font-size: 0.875rem;
	color: rgba(255,255,255,0.5);
	color: rgba(0,0,0,0.75);
}	

.footer__link {
	margin-right: 1rem;
	text-transform: uppercase;
	}	
		
.footer__icon {
	display: inline-block;
	width: 2.525rem;
	height: 2.525rem;
	margin: 0 .5rem 0 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 1.5rem 1.5rem;
	border: solid 1px #333;
	transition: all 0.25s;
}

.footer__icon:hover { 
	border: solid 1px #4BA3D5;
	transition: all 0.25s;
}

.footer__icon--twitter { 
	background-image: url(../../images/twitter.svg); 
}
	
.footer__icon--facebook { 
	background-image: url(../../images/facebook.svg); 
}
	
.footer__icon--youtube { 
	background-image: url(../../images/youtube.svg); 
}		
			
.footer__icon--instagram { 
	background-image: url(../../images/instagram.svg); 
}		

.footer__icon--linkedin { 
	background-image: url(../../images/linkedin.svg); 
}

	
@media (min-width: 992px) {

	.footer {
		height: 258px;
		overflow: hidden;
		width: 100%;
		position: absolute;
	    bottom: 0;
	    right: 0;
	    padding: 3rem 0;
	}

}