:root {
	--sprite:		url("../images/css/icon-sprite-v18.min.png");
}

html, body {
	margin:			0;
	padding:		0;
	border:			0;
	font-style:		inherit;
	vertical-align:	baseline;
	outline-color:	invert;
	outline-style:	none;
	outline-width:	0;
	min-height:		101%;
    color:			#383d3d;
}

html {
	overflow-x:					hidden;
    font-size: 					19px;
    line-height: 				1.35;
	height:						100%;
    background:					#fff;
	scroll-behavior: 			smooth;
	-webkit-text-size-adjust: 	100%; /* Prevent font scaling in landscape while allowing user zoom */
}

body {
	font-family: 			"futura-pt",Arial,sans-serif;   
	font-weight:		400;
	text-align:				left;
	width:					100%;
    background:				#fff;
}

/* These two @media queries have purposefully different breakpoints to actual mobile/desktop */
@media (max-width:800px) {
	.show-screen-big {
		display:			none	!important;
	}
}

@media (min-width:800.98px) {
	.show-screen-small {
		display:			none	!important;
	}
}

@media (max-width:890px) {
	.PhoneMenuOpen {
		min-height:			101%;
	}

	.PhoneMenuOpen body {
		background:			#FFBF59;
	}
	
	main {
		padding-top:		90px;
	}
}

@media (min-width:890.98px) {
	main {
		padding-top:		165px;
	}
}

.jumpAnchor {
    height:					0;
    width:					100%;
    position:				absolute;
	top:					-15px;
	left:					0;
    font-size:				0;
}

#viewport {
	box-sizing: 			border-box;
	border: 				15px solid #fff;
	overflow: 				hidden;
}

.viewport-inner {
	z-index:				1;
	display:				inline-block;
	position:				relative;
    color:					#fff;
    text-shadow:			0 0 1px #383d3d;
	width:					100%;
}

.bg-viewport-none .viewport-inner {
    color:					inherit;
    text-shadow:			none;
	padding:				40px 0;
}

.bg-viewport-none .viewport-inner-category {
	padding-bottom:			0;
}
	
@media (min-width:790.98px) {
	.viewport-inner {
		padding:			100px 0;
	}
	
	.viewport-inner-archive {
		padding:			70px 0	!important;
	}
}

/*
@media (min-width:1150.98px) {
	.viewport-inner {
		padding:			150px 0;
	}
}

@media (min-width:790.98px) and (max-width:1150px) {
	.viewport-inner {
		padding:			110px 0;
	}
}
*/

#viewport.bg-viewport-none.viewport-light-theme + #viewport-below > .row-1.light-outer {
	padding-top: 			0;
	margin-top: 			-25px;
}

@media (max-width:790px) {
	.viewport-inner {
		padding:			50px 0;
	}
}

@media (min-width:891px) and (min-height:765px) {	
	.fit-to-viewport .viewport-inner {
		top: 					40%;
		transform: 				translateY(-40%);
	}
}

.div-bg-container {
	padding:						0 60px 0 60px;
    box-sizing: 					border-box;
	float: 							left;
	width: 							100%;
	position:						relative;
}

.div-bg-left,
.div-bg-right {
	color:							inherit;
}

@media (min-width:890.98px) {
	.div-bg-container {
		margin-top:					40px;
		margin-bottom:				40px;
	}
		
	.div-bg-large {
		padding-top:				30px;
		padding-bottom:				45px;
	}

	.div-bg-left {
		padding:					0 0 20px 40%;
	}

	.div-bg-right {
		padding:					0 40% 20px 0;
	}

	.div-bg-left 	> .div-bg,
	.div-bg-right 	> .div-bg {
		width:						calc(40% - 30px);
	}
}

@media (max-width:890px) {
	#viewport-below .div-bg {
		height:						280px	!important;
		max-height:					280px	!important;
		right:						auto;
		left:						50%;
		transform: 					translateX(-50%);
	}

	#viewport-below .div-bg.img-rounded {
		width:						280px	!important;
	}
	
	.div-bg-container {
		margin-top:					20px;
		margin-bottom:				20px;
	}
	
	.div-bg-left,
	.div-bg-right {
		padding:						300px 15px 0 15px;
	}
}
	
.img-border {
	border:							5px solid #fff;
	background:						#fff;
    box-sizing: 					border-box;
}

.img-small {
	max-height:						125px;
}

.div-bg {
    display:						block;
    position:						absolute;
    width:							100%;
	height:							100%;
    top:							0;
    background-color:				#383d3d;
	background-size:				cover;
	z-index:						0;
    box-sizing: 					border-box;
	background-repeat: 				no-repeat;
}

.img-contain {
	background-color:				transparent;
	background-repeat:				no-repeat;
    background-size:				contain;
}

.img-rounded {
	border-radius:					50%;
	height: 						calc(100% - 30px);
}

.fit-to-viewport .div-bg {
	transition: 					opacity 2s linear;
}

@media (min-width:890.98px) {
	.fit-to-viewport {
		height: 					calc(100vh - 165px);
		min-height: 				580px;
	}
}

.div-bg-left 	> .div-bg {
    left:							0;
}

.div-bg-right 	> .div-bg {
	right:							0;
}

.viewport-bg {
	z-index:						-1;
	position:						absolute;
	top:							0;
	left:							0;
	width:							100%;
	height:							100vh;
	background-size:				cover;
}

#viewport-below {
    z-index:				51;
	position:				relative;
}

/* Element layouts */

.clear {
    position:				relative;
    width:					100%;
    float:					left;
    clear:					left;
}

p {
	padding:				0;
	/*
	display:				block;
	*/
	display:				inline-block;
	/*
	float:					left;
	clear:					left;
	*/
    width:					100%;
	position:				relative;
	/*
	margin:					10px 0;
	*/
	margin:					5px auto 5px;
}

/*
.C3 p {
	max-width: 				550px;
	margin-left: 			auto;
	margin-right: 			auto;
	float: 					none;
}
*/

.content-text p {
	max-width:				850px;
}

img {
	border:					none;
	max-width:				100%;
    display:				inline-block;
}

.small-thumbnail {
	height:					150px;
}

.ai {
    text-align:				inherit; 
}

@media (min-width:850.98px) {
	.al {
		text-align:				left; 
	}

	.ar {
		text-align:				right; 
	}
}

.ac {
    text-align:				center; 
}

.tm {
    margin-top:				30px		!important;
}

.bm {
    margin-bottom:			30px		!important;
}

.ltm {
    margin-top:				15px		!important;
}

.lbm {
    margin-bottom:			15px		!important;
}

.ntm {
    margin-top:				0			!important;
}

.nbm {
    margin-bottom:			0			!important;
}

.hide {
    display:				none		!important;
}

.spacer {
	height:					20px;
}

strong,
b {
    font-weight:			500;
}

a {
	color:					inherit;
    outline: 				0;
	transition: 			color 0.25s linear;
}

a:hover {
    color:					#d8494c;
    cursor:					pointer;
}

header {
	position:				fixed;
    top:					0;
    left:					0;
	width:					100%;
	z-index:				2;
}

#header-top {
	float:					left;
	padding:				20px 0;
	width:					100%;
    position:				relative;
}

/*
@media (max-width:659.98px) {
*/
@media (max-width:769.98px) {
	.header-cta	{
		display:					none;
	}
}
/*
@media (min-width:660px) {
*/
@media (min-width:770px) {
	.header-cta {
		float:					right;
		margin: 				7px -15px 0 20px;
	}
}

@media (max-width:890px) {
	#header-top {
		padding:				13px 100px 13px 0;
		text-align:				left;
		height:					91px;
		z-index:				999;
		background:				#f3f3f3;
		box-sizing: 			border-box;
	}

	.PhoneMenuOpen header { 
		position:				relative;
	}

	#header-call {
		margin:						11px 0 0 0;
	}
}

@media (max-width:560px) {
	#header-call {
		display:					none;
	}
}

@media (min-width:890.98px) {
	#header-top {
		background:					#fff;
	}
	
	#header-cta,
	.header-cta {
		float:						right;
		padding: 					10px 25px;
		margin:						11px 0 0 5px;
	}

	#header-call {
		margin:						11px 15px 0 0;
	}
}

#header-logo {
	float:						left;
}

#header-call {
	float:						right;
	padding: 					13px 0 0 40px;
	font-size: 					0.9em;
	line-height:				1.2rem;
	font-weight:				600;
	text-decoration:			none;
	position:					relative;
}

#header-call::before {
    content:				" ";
    position: 				absolute;
	top:					6px;
	left: 					0;
    background-image:		var(--sprite);
    background-repeat:		no-repeat;
    height:					35px;
    width:					35px;
    background-position:	-256px -29px;
	background-size:		auto 60px;
}

@media (max-width:890px) {
	#header-logo {
		width:					205px;
	}
}

#header-bottom {
	float:					left;
	width:					100%;
	text-align:				center;
	position:				relative;
	background:				#f3f3f3;
	color:					#003283; 
}

.image-fixed {
	background-size:		cover;
	height:					30vw;
	max-height:				300px;
	box-sizing: 			border-box;
}

.ac .image-fixed {
	margin-left:			auto;
	margin-right:			auto;
}

@media (min-width:890.98px) {
	.image-fixed {
		max-height:				450px;
	}
	
	.C2 .image-fixed {
		height:					300px;
	}
}

@media (min-width:1150.98px) {
	.C3 .image-fixed {
		height:					250px;
	}
}

.image-icon {
	border-radius:			50%;
	max-width:				100%;
	margin-top:				20px;
	margin-bottom:			15px;
	background-size:		cover !important;
	display:				inline-block;
}

@media (max-width:790px) {
	.image-icon {
		width: 				120px;
		height:				120px;
	}
}

@media (min-width:790.98px) {
	.image-icon {
		width: 				160px;
		height:				160px;
	}
}

.ac .image-icon {
	margin-left:			auto;
	margin-right:			auto;
}

.image-icon-large {
    width: 					200px;
    height:					200px;
	margin-top:				30px;
}

.image-icon-wide {
	width: 					360px;
	height: 				230px;
	margin-bottom: 			25px;
	margin-top: 			0;
}

.image-icon-left-header-wrap {
	float:					right;
	margin-top:				20px;
}

@media (max-width:790px) {
	.image-icon-left-header-wrap {
		width:				calc( 100% - 140px );
	}
}

@media (min-width:790.98px) {
	.image-icon-left-header-wrap {
		width:				calc( 100% - 190px );
	}
}

#header-logo {
    width: 					215px;
	height:					66px;
    background-repeat:		no-repeat;
    display:				inline-block;
	background-size:		contain;
	transition: 			background 0.25s linear;
    background-image:		url("../images/logos/the-infants-home-logo-horizontal-2024.min.png");
}

.icon {
    display:				inline-block;
    position:				relative;
    text-indent:			-9999px;
    margin:					0;
    line-height:			0;
    z-index:				0;
}

.icon::before {
    content:				" ";
    position: 				absolute;
	bottom:					0;
	left:					0;
    background-image:		var(--sprite);
    background-repeat:		no-repeat;
    height:					56px;
    width:					56px;
	background-size:		auto 100px;
}

.icon-ac::before {
	left:					50%;
	transform: 				translateX(-50%);
}

.header-icon {
    height:					44px;
    width:					50px;
    display:				inline-block;
    position:				relative;
    text-indent:			-9999px;
    line-height:			0;
    z-index:				0;
    margin:					0 5px;
}

.header-icon::before {
    content:				" ";
    position: 				absolute;
	top:					0;
	left:					0;
    background-image:		var(--sprite);
    background-repeat:		no-repeat;
    height:					100%;
    width:					100%;
    box-sizing: 			border-box;
	background-size: 		auto 110px;
}

button[type="button"] {
	-webkit-appearance: 	none;
	-moz-appearance: 		none;
	appearance: 			none;
	border: 				none;
}

@media (max-width:890px) {
	#drop-down-menu {
		position:				absolute;
		top:					10px;
		right:					10px;
		height:					70px;
		width:					70px;
		text-indent:			-9999px;
		line-height:			0;
		z-index:				0;
		background-color:		#F39305;
		display:				block;
		border-radius:			50%;
	}

	#drop-down-menu::before {
		content:				" ";
		position: 				absolute;
		top:					0;
		left:					21px;
		background-image:		var(--sprite);
		background-repeat:		no-repeat;
		height:					70px;
		width:					30px;
		box-sizing: 			border-box;
		background-size: 		auto 90px;
		background-position:	-174px 11px;
	}
}

.facebook-icon::before {
    background-position:	-147px -44px;
}

.facebook-icon:hover::before {
    background-position:	-147px 5px;
}

.header-with-icon {
    height:					64px;
}

.header-with-icon::before {
	background-origin:		border-box;
}

.map-icon::before {
    background-position:	-369px -48px;
}

.tel1-icon::before {
    background-position:	-498px -1px;
}

.light-theme	.tel1-icon::before {
    background-position:	-498px -54px;
}

.tel2-icon::before {
    background-position:	-430px -48px;
}

.fax-icon::before {
    background-position:	-567px 4px;
}

.light-theme	.fax-icon::before {
    background-position:	-567px -48px;
}

.email-icon::before {
    background-position:	-631px -1px;
}

.light-theme	.email-icon::before {
    background-position:	-631px -53px;
}

p.header-with-icon.five-star-ccc-icon {
	height:					115px;
	width: 					212px;
}

a.header-with-icon.five-star-ccc-icon {
	height: 				110px;
	width: 					390px;
	padding:	 			100px 0 0 267px;
	text-indent:			0;
	box-sizing:				border-box;
}

.five-star-ccc-icon::before {
	background-position: 	-1459px -60px;
	height: 				115px;
	width: 					100%;
	background-size: 		auto 170px;
}

a.five-star-ccc-icon::before {
	bottom: 				auto;
	top: 					0;
}

.education-program-ccc-icon::before {
    background-position:	-2248px -44px;
	background-size: 		auto auto;
}

.meals-provided-ccc-icon::before {
    background-position:	-2242px -135px;
	background-size: 		auto auto;
}

.kindergarten-program-ccc-icon::before {
    background-position:	-2335px -136px;
	background-size: 		auto auto;
}

.baby-ccc-icon::before {
    background-position:	-2178px -134px;
	background-size: 		auto auto;
}

.tel-ccc-icon::before {
    background-position:	-2595px -13px;
	background-size: 		auto auto;
}

.map-ccc-icon::before {
    background-position:	-2600px -91px;
	background-size: 		auto auto;
}

.time-ccc-icon::before {
    background-position:	-2604px -176px;
	background-size: 		auto auto;
}

.kids-ccc-icon::before {
    background-position:	-2598px -256px;
	background-size: 		auto auto;
}

.indigenous-education-ccc-icon::before {
    background-position:	-2520px -213px;
	background-size: 		auto auto;
}

.nature-based-play-ccc-icon::before {
    background-position:	-2520px -138px;
	background-size: 		auto auto;
}

.video::before { 
    top: 					50%;
    left: 					50%;
    margin:					-26px 0 0 -26px;
    width: 					50px;
    height: 				50px;
    background-size:		auto 90px;
	transition: 			all 0.25s linear;
    background-position:	-278px 9px;
	background-color:		#d8494c;
	border:					8px solid #d8494c;
}

.video:hover::before { 
	background-color:		#E15B59;
	border-color:			#E15B59;
}

nav {
	font-weight:			600;
	width:					100%;
	float:					left;
}

@media (max-width:890px) {
	nav { 
		height:					0;
		opacity:				0;
		display:				none;
		transition: 			opacity 2s ease;
		box-sizing: 			border-box;
		font-size: 				1.2rem;
	}

	.PhoneMenuOpen nav { 
		display:				block;
		height:					100vh;
	}
}

.make-visible {
    opacity:				1		!important;
}

.menu-main-menu-container {
	display:				table;
	width:					100%;
}

.menu { 
    display:				table-row;
    vertical-align: 		middle;
    float:					none;
    line-height:			1;
	height:					60px;
}

.menu > .menu-item {
    display:				table-cell;
	position:				relative;
	vertical-align:			middle;
}

.menu a {
	padding:				35px 5px;
    box-sizing: 			border-box;
    text-decoration:		none			!important;
	white-space:			nowrap;
}

@media (min-width:850.98px) {
	.menu > .menu-item-has-children > a {
		padding-right:		20px;
		position:			relative;
	}
}
@media (max-width: 890px) {
	.menu > .menu-item-has-children > a {
		padding:			0 20px 0 0;
		position:			relative;
	}
}

.menu > .menu-item-has-children > a::after {
	content:				" ";
	position:				absolute;
	top:					50%;
	right:					0;
	border: 				solid #383d3d;
	border-width: 			0 3px 3px 0;
	display: 				inline-block;
	padding: 				3px;
	transform: 				translateY(-50%) rotate(45deg);
	-webkit-transform: 		translateY(-50%) rotate(45deg);
}
 
.menu 							  	  a:hover,
.menu 	li.current-menu-item		> a,
.menu >	li.current-menu-ancestor	> a,
.menu >	li.current-menu-parent		> a {
    color:					#d8494c;
}

.menu > li > .sub-menu {
    display:				none;
    opacity:				0;
	transition: 			opacity .15s linear;
    z-index:				9998;      
    margin:					10px 0 0 0;
    padding:				10px 0;
    min-width:				100%;
    width:					auto;
    position:				absolute;
    top:					100%;
    left:					-10px;
    background-color:		#f3f3f3;
	text-align:				left;
	border-radius:			10px;
	font-size:				.9rem;
	box-shadow:				0 4px 8px rgba(0,0,0,.3);
}

.menu > li.open-leftwards > .sub-menu {
	left:					auto;
	right:					-50px;
}

.menu > li.open-leftwards > .sub-menu::before {
	left:					auto;
	right:					90px;
	border-width: 			0 5px 10px 10px;
}

.sub-menu .sub-menu {
	padding:				10px 0 0 0;
	margin:					0;
}

@media (max-width:890px) {
	.menu { 
		float:					left;
		width:					100%	!important;
		margin-top:				30px;
		height:					auto;
	}

	.menu > .menu-item {
		width:					100%;
		margin:					15px 0;
		display:				block;
		float:					left;
	}

	.menu > li > .sub-menu {
		position:				relative;
		padding:				0;
		top:					0;
		background-color:		transparent;
		left:					0;
		font-size:				1.1rem;
		text-align: 			center;
		font-weight: 			500;
		box-shadow:				none;
	}
	
	.sub-menu .sub-menu {
		font-weight: 			400;
		font-size:				1rem;
	}
}

.menu > li.li-open > .sub-menu {
    display:				block !important;
}

.menu > li.li-visible > .sub-menu {
    opacity:				1 !important;
}

.sub-menu li {
	float:					left;
    width:					100%;
	padding: 				5px 15px;
    box-sizing: 			border-box;
	position:				relative;
}

.sub-menu .sub-menu li {
	padding: 				0 10px 5px 15px;
}

li.open-leftwards a {
	white-space: 			normal;
	min-width:				200px;
}

.sub-menu a {
    display: 				block;
    padding: 				5px 0	!important;
    height:					auto;
}

.bg-fw {
    float:					left;
    position:				relative;
	width: 					calc(100% - 30px);
	margin: 				0 15px 15px;
    padding: 				30px 0;
	background:				#fff;
    box-sizing: 			border-box;
}

#banner-ad {
    float:					left;
    position:				relative;
	width: 					100%;
    padding: 				8px 10px 10px		!important;
	z-index:				1;
	border-radius: 			0 					!important;
	margin: 				0 					!important;
	border-bottom: 			15px solid #fff 	!important;
}

#banner-ad u {
	text-underline-offset: 		2px;
	text-decoration-thickness: 	2px;
}
  
@media (min-width:850.98px) {
	.bg-fw.light-outer {
		padding-top: 			25px;
		padding-bottom: 		25px;
	}
}

@media (max-width:850px) {
	.bg-fw.light-outer {
		padding-top: 			15px;
		padding-bottom: 		15px;
	}
}

.bg-viewport-none.light-inner + .row-1.bg-fw.light-outer {
	margin-top:				-40px;
}

/*
.image-outer {
	min-height:				600px;
}

@media (min-width:850.98px) and (max-width:1150px) {
	.image-outer {
		min-height:				500px;
	}
}

@media (max-width:850px) {
	.image-outer {
		min-height:				400px;
	}
}
*/

.section-merge {
	margin-top:				-40px		!important;
	padding-top:			0			!important;
}

.article-inner,
.column-outer .column-inner {
	float:					left;
	width:					100%;
	position:				relative;
}

.article-inner {
	padding:				30px;
	margin:					0 0 5px;
	box-sizing:				border-box;
}

.no-padding {
	padding-top:			0			!important;
	padding-bottom:			0			!important;
}

.inner-column {
    margin: 				0 auto;
    clear:					both;
    position:				relative;
	padding: 				0 20px;
	box-sizing:				border-box;
}

.narrow-width {
	max-width:				850px;
}

.verynarrow-width {
	max-width:				730px;
}

.medium-width {
	max-width:				1025px;
}

.viewport-inner .inner-column,
.wide-width {
	max-width:				1200px;
}

.full-width {
	max-width:				auto;
    padding-left: 			0		!important;
    padding-right: 			0		!important;
}

.viewport-inner span {
	display:				block;
	text-transform: 		capitalize;
}

main,
article {
	float:				left;  
    width:				100%;
    position:			relative;
    margin:				0;
    z-index:			1;
}

@media (max-width:890px) {
	.PhoneMenuOpen .viewport-bg,
	.PhoneMenuOpen main,
	.PhoneMenuOpen footer {
		display:			none;
	}
}

footer {
    background:				#f1f1f1;
    width:					100%;
    float:					left;
    position:				relative;
    display:				block;
    padding:				40px 0;
    z-index:				1;
	font-size:				0.9em;
}

.acnc-logo {
	margin-top:				10px;
    width: 					150px;
}

.C-footer {
	display: 				grid;
	grid-gap:				30px;
}

@media (min-width:950.98px) {	
	.C-footer {
		grid-template-columns: 	220px 270px 1fr 152px;
	}
}

@media (min-width:800.98px) and (max-width:950px) {	
	.C-footer {
		grid-template-columns: 	1fr 1fr;
	}
}

@media (max-width:800px) {
	footer {
		text-align:				center;
	}
}

.google-translate-wrap {
	margin-top:				5px;
}

.social-icon {
	display:				inline-block;
	width:					40px;
	height:					40px;
	position:				relative;
	margin:					5px 5px 5px 0;
	background-color:		#003283;
	border-radius:			7px;
	transition: 			background-color 0.25s linear;
}

.social-icon:hover {
	background-color:		#144697;
}

#viewport .social-icon {
	margin:					0 5px;
	background-color:		#CC1D5B;
}

#viewport .social-icon:hover {
	background-color:		#DB2C6A;
}

.social-icon::before {
    content:				" ";
    position: 				absolute;
	top:					0;
	left:					0;
    background-image:		var(--sprite);
    background-repeat:		no-repeat;
    height:					35px;
    width:					35px;
}

.social-facebook-icon::before {
    background-position:	6px -50px;
	background-size:		auto 84px;
}

.social-linkedin-icon::before {
    background-position:	9px 8px;
	background-size:		auto 70px;
}

.social-instagram-icon::before {
	background-position: 	-130px -20px;
	background-size: 		auto 51px;
}

.contact-icon {
	position:				relative;
	display:				inline-block;
	width:					100%;
	box-sizing:				border-box;
}

.contact-icon b {
	font-size:				1rem;
}

.contact-icon::before {
    content:				" ";
    position: 				absolute;
    background-image:		var(--sprite);
    background-repeat:		no-repeat;
    height:					35px;
    width:					35px;
}

@media (max-width:800px) {
	.contact-icon {
		padding:			34px 0 10px;
	}

	.contact-icon::before {
		top:				-3px;
		left:				50%;
		transform:			translateX(-50%);
	}
}

@media (min-width:800.98px) {
	.contact-icon {
		padding:			0 0 10px 45px;
	}

	.contact-icon::before {
		left:				0;
		top:				-5px;
	}
}

.contact-map-icon::before {
    background-position:	-199px -26px;
	background-size:		auto 55px;
}

.contact-tel-icon::before {
    background-position:	-299px -32px;
	background-size:		auto 60px;
}

.contact-email-icon::before {
    background-position:	-351px -27px;
	background-size:		auto 56px;
}

.top-divider {
	position:				relative;
	border-top:				1px solid #fff;
	padding-top:			20px;
	margin-top:				25px;
}

.image {
    box-sizing: 			border-box;
}

.bg-image-container {
    background-size:		cover	!important;
    width:					100%;
	height:					100%;
    top:					0;
	left:					0;
    position:				absolute;
    z-index:				0;
	background:				#fff;
}

.dark-theme .bg-image-container {
	background:				#383d3d;
}

.bg-overlay::after {
    content:				" ";
    width: 					100%;
    height: 				100%;
    position:				absolute;
    top:					0;
    left:					0;
	background-color:		#eaeaea;
}

.dark-theme {
	color:					#fff;
}

.dark-theme	.bg-overlay::after,
#viewport	.bg-overlay::after {
	background-color:		#001E51;
}

.bg-overlay-none::after {
    opacity:				0;
}

.bg-overlay-light::after {
    opacity:				.3;
}

.bg-overlay-medium::after {
    opacity:				.6;
}

.bg-overlay-dark::after {
    opacity:				.8;
}

.bg-overlay-verydark::after {
    opacity:				.9;
}

table {
	border-collapse:		collapse;
	float:					left;
	border:					none;
}

td {
	vertical-align:				top;
	border:						none;
	padding:					5px 20px 5px 0;
}

table.bordered {
	width:						100%;
}

.ac table.bordered {
	max-width: 					600px;
	margin-left: 				auto;
	margin-right: 				auto;
	float: 						none;
	text-align: 				left;
}

table.bordered td {
	border:						2px solid #efefef;
	padding:					7px 10px;
}

ol,
ul {
	margin:					0;
	float:					left;
    width:					100%;
}

ul {
    list-style-type: 		none; 
	padding:				0;
}

ol {
    box-sizing: 			border-box;
	padding: 				0 0 0 20px;
}

.content-text ol,
.content-text ul {
    margin:					5px 0;
}

.content-text p + ol,
.content-text p + ul {
    margin-top:				0;
}

.ac .content-text ol,
.ac .content-text ul {
	float:					none;
	margin-left:			auto;
	margin-right:			auto;
}

.content-text li {
	padding:				2px 0 2px 16px;
    position:				relative;
    text-align:				left;
	float:					left;
    width:					100%;
    box-sizing: 			border-box;
}

.content-text ul li::before {
    position:				absolute;
	top:					12px; 
    left:					0;
    width:					7px;
    height:					7px;
    display:				block;
    content: 				" ";
    background-color:		#d8494c;
	border-radius:			50%;
}

/* Column layouts */

.flex {
	display:				flex;
	justify-content: 		center;
	flex-wrap: 				wrap;
}

.flex > div {
	width:					290px;
	padding:				20px 15px;
	margin: 				5px;
}

.C1,
.C2,
.C3,
.C4 {
	display: 				grid;
	grid-column-gap:		30px;
}

.has-block-bg-diff {
	grid-gap:				10px;
	margin-top:				30px;
}

.has-block-bg-diff > div {
	padding:				20px 15px;
}

@media (max-width:890px) {
	.ac .C2.responsive,
	.ac .C4.responsive	{
		justify-content: 		center;
	}
	
	.C2.responsive	> div,
	.C4.responsive	> div {
		max-width: 				820px;
	}
}

@media (max-width:1150px) {
	.ac .C3.responsive {
		justify-content: 		center;
	}
	
	.C3.responsive	> div {
		max-width: 				820px;
	}
}

@media (min-width:890.98px) {
	.C2	{
		grid-template-columns: 	1fr 1fr;
	}
}

@media (min-width:0px) {
	.C2.non-responsive {
		grid-template-columns: 	1fr 1fr;
	}
}

@media (min-width:590.98px) {
	.C2.delay-responsive	{
		grid-template-columns: 	1fr 1fr;
	}
}

@media (min-width:1150.98px) {	
	.C4 {
		grid-template-columns: 	1fr 1fr 1fr 1fr;
	}
}

@media (min-width:890.98px) and (max-width:1150px) {
	.C4 {
		grid-template-columns: 	1fr 1fr;
	}
}

@media (min-width:590.98px) and (max-width:1150px) {
	.C4.delay-responsive {
		grid-template-columns: 	1fr 1fr;
	}
}

@media (max-width:550px) {
	.non-responsive {
		font-size: 			17px;
		grid-column-gap: 	10px;
	}
}

@media (min-width:1150.98px) {
	.C3 {
		grid-template-columns: 	1fr 1fr 1fr;
	}
}

@media (min-width:0px) {
	.C3.non-responsive {
		grid-template-columns: 	1fr 1fr 1fr;
	}
}

@media (min-width:790px) {
	.C3.delay-responsive {
		grid-template-columns: 	1fr 1fr 1fr;
	}
}

h1 { 
    float:					left;
    clear:					left;
    font-weight:			500; 
    width:					100%;    
    padding:				0;
    margin:					0 0 5px;
    line-height:			1.2;
}

.viewport-light-theme	h1 {
	color:					#003283;
}

.viewport-dark-theme 	h1,
.viewport-dark-theme 	h2 {
	text-shadow: 			1px 1px 1px #000;
}

h2 {  
    float:					left;
    clear:					left;
    width:					100%;
    padding:				0;
    line-height:			1.3;
	margin:					5px 0 10px;
	font-weight: 			500;
}

h2.small {
	font-size:				1.07em;
	font-weight: 			400;
}

h3 {
    float:					left;
    clear:					left;
    width:					100%;
	margin:					20px 0 10px;    
    padding:				0;   
    line-height:			1.1;
    position:				relative;
	font-weight: 			600;
	letter-spacing:			-0.75px;
	font-size:				2rem;
	word-spacing:			-2px;
	max-width:				900px;
}

h3 strong,
h3 b {
    font-weight:			500;
}


@media (min-width:790.98px) {
	h1 {
		letter-spacing:			-1.5px;
		font-size:				2.5rem;
		word-spacing:			-3px;
	}

	h1.large {
		font-size:				3rem;
		letter-spacing:			-2px;
		word-spacing:			-5px;
	}
	
	.ac 				h2 {  
		width:					80%;
		margin:					5px 10% 10px;
	}
	
	.ac 				h4 {  
		width:					70%;
		margin-left:			15%;
		margin-rigt:			15%;
	}
	
	h2 {  
		font-size:				1.25rem;
	}
}

@media (max-width:790px) {
	h1 {
		letter-spacing:			-1px;
		font-size:				2.2rem;
		word-spacing:			-3px;
	}
	
	h2 { 
		font-size:				1.1rem;
	}
}

h4 {
    font-weight:			500;
	text-transform:			uppercase;
    float:					left;
    clear:					left;
    width:					100%;
    margin:					15px 0 5px;
    font-size:				1.15rem;
    padding:				0;
    line-height:			1.35;
	position:				relative;
	letter-spacing:			-0.5px;
	max-width:				900px;
}

h4 strong,
h4 b {
    font-weight:			600;
}


h3 + h4 {
	margin-top:				5px;
}

h5 {
	font-weight:			600; 
	text-transform:			uppercase;
	font-size:				1.1rem;
	letter-spacing:			-.25px;
    float:					left;
    clear:					left;
    width:					100%;
	margin:					10px 0;
    padding:				0;
    line-height:			1.3;
	position:				relative;
	max-width:				900px;
}

.ac h5 {
	font-size: 				1.35rem;
	font-weight:			500;
}

h5 b {
	font-size: 				2.25rem;
	margin-top: 			5px;
	display: 				inline-block;
	line-height:			1.1;
	font-weight: 			600		!important;
}

.bg-light h5 b {
	color:					#003283;
}

.icon + h5 {
	margin-top:				5px;
}

.teal-inner h5 b {
	color:					#fff;
	text-shadow:			0px 0px 3px #08363b;
}

.grey-bg-icon + h5 {
	color:					#003283;
}

h5 u {
	text-decoration:		none;
	margin-top: 			5px;
	display: 				inline-block;
	font-size: 				1.1rem;
	line-height: 			1.25;
	font-weight:			400;
}

h5 strong, 
h5 b {
    font-weight:			500;
}

h5 i {
	font-size:				0.9rem;
	line-height:			1.15;
	display:				block;
	margin:					-5px auto 10px;
	letter-spacing:			0;
    font-weight:			400;
	font-style:				normal;
	max-width:				450px;
}

.sub-sub-header {
	margin:					5px auto 10px;
	max-width:				450px;
	font-weight:			500;
}

h6 {
    float:					left;
    clear:					left;
    width:					100%;
	margin:					5px 0;
	text-transform:			uppercase;
	font-weight:			600;
	font-size:				1rem;
    padding:				0;   
    line-height:			1.35;
	position:				relative;
	word-spacing:			-1px;
	max-width:				900px;
}

.light-inner	.image-icon + h5,
.grey-inner		.image-icon + h5 {
	color:					#003283;
}

.image-icon + h6 {
	font-size: 				1.6rem;
	line-height:			1.3;
	margin-bottom:			10px;
	margin-top:				10px;
}

.ac h3,
.ac h4,
.ac h5,
.ac h6 {
	float:					none;
	margin-left:			auto;
	margin-right:			auto;
}

/*
h6.with-sub-sub-header {
	text-transform:			none;
}
*/

h6.small {
	font-size:				1.2em;
}

h4:first-child {
	margin-top:				10px;
}

/* Light and grey colour schemes */

.light-outer,
.light-inner {
	background: 			#fff;
	color:					#383d3d;
	text-shadow: 			none;
}

.grey-outer,
.grey-inner {
	background: 			#f3f3f3;
	color:					#383d3d;
	text-shadow: 			none;
}

.light-outer	h3,
.grey-outer 	h3 {
	color:					#003283;
}

.light-img-border {
	border-color:			#f3f3f3;
}

.grey-img-border {
	border-color:			#fff;
}

.content-text-light	li::before,
.content-text-grey	li::before {
    background-color:		#d8494c;
}

.yellow-outer,
.yellow-inner {
	background: 			#e68500;
	color:					#fff;
	text-shadow: 			1px 1px 2px #000;
}

.brown-outer,
.brown-inner {
	background: 			#B75C16;
	color:					#fff;
	text-shadow: 			1px 1px 2px #000;
}

.red-outer,
.red-inner {
	background: 			#b92a2d;
	color:					#fff;
	text-shadow: 			1px 1px 2px #000;
}

.purple-outer,
.purple-inner {
    color:					#fff;
	background:				#5e407b;
	text-shadow: 			1px 1px 2px #000;
}

.green-outer,
.green-inner {
	color:					#fff;
	background: 			#00805B;
	text-shadow: 			1px 1px 2px #000;
}

.teal-outer,
.teal-inner {
	background:				#00697E;
	color:					#fff;
	text-shadow: 			1px 1px 2px #000; 
}

.blue-outer,
.blue-inner { 
	background:				#03396c;
	color:					#fff;
	text-shadow: 			1px 1px 2px #000;
}

/* Dark colour schemes */

.bg-dark 	.img-border,
.bg-dark 	.video-wrap iframe {
	border-color:			#fff;
}

.bg-dark 	a:hover {
    color:					#d8494c;
	text-shadow:			none;
}

.bg-dark 	li::before {
    background-color:		#fff;
}

.bg-dark 	h3,
.bg-dark 	h4 {
	color:					#fff	!important;
}

/* Image with dark overlay colour scheme */

.image-outer.dark-theme {
	text-shadow: 			1px 1px 1px #000;
}

.dark-theme h4 {
	color:					#fff;
}

.dark-theme h6 {
	color:					#fff;
}

.dark-theme p strong {
	color:					#FA8705;
}

.dark-theme a:hover {
    color:					#d8494c	!important;
}

/* Inputs */

input[type=submit],
.button,
.pagination	a {
	vertical-align:			middle;
    box-sizing: 			border-box;
	outline-style:			none;
	outline-width:			0;
	-webkit-appearance:		none;    
    background-image:		none;
    display:				inline-block;
    text-align:				center;
	text-decoration:		none; 
    outline: 				0;
    line-height:			1.2rem;
	transition: 			all 0.25s ease;
    font-family: 			inherit;  
    border:					none;
}

input[type=submit] {
	font-weight:			600; 
	padding:				15px 30px; 
    font-size:				0.9rem;
	white-space:			nowrap;
    display:				inline-block;
    margin:					10px 0 0;
	/*
	background-color:		#fff;
    color:					#4b5a61;
	*/
	background-color:		#2FA63C;
    color:					#fff;
	float:					left;
	border-radius:			40px;
}

input[type=submit]:hover {
	background-color:		#43BA50				!important;
	color:					#fff				!important;
	text-shadow: 			1px 1px 2px #000	!important;
    cursor:					pointer;
}

.button {
	text-transform:			uppercase;
	font-weight:			600; 
    font-size:				0.9em;
    text-decoration:		none;
	margin:					10px 0;
	border-radius:			40px;
}

.bg-dark .button {
	color:					#010101;
	background-color:		#fff;
	text-shadow:			none;
	box-shadow: 			0px 0px 11px rgba(3,3,3,0.3);
}

.bg-dark .button:hover {
	color:					#010101;
	background-color:		#fff;
}	
	
@media (min-width:850.98px) {
	.button {
		font-size:			0.9em;
		padding:			20px 20px; 
	}

	.bg-dark a.button:hover {
		padding:			20px 30px; 
	}
}

@media (max-width:850px) {
	.button {
		font-size:			0.8em;
		padding:			15px; 
	}

	.bg-dark a.button:hover {
		padding:			15px 20px; 
	}
}

.button {
	color:					#fff;
	background-color:		#010101;
}

.button:hover {
	background-color:		#222;
	color:					#fff;
}

.viewport-dark-theme .button {
	box-shadow: 			0 0 10px rgba(0,0,0,0.7);
}

.viewport-dark-theme .button-green {
	background-color:		#34AB41;
}

.viewport-dark-theme .button-green:hover {
	background-color:		#43BA50; 
}

#viewport-text {
	max-width:				600px;
	display:				block;
}

.button-blue  {
	color:					#fff;
	background-color:		#003283;
	text-shadow: 			1px 1px 2px #000;
}

.button-blue:hover {
	color:					#fff;
	background-color:		#0A3C8D;
}

.button-red  {
	color:					#fff;
	background-color:		#CC1D5B;
	text-shadow: 			1px 1px 2px #000;
}

.button-red:hover {
	color:					#fff;
	background-color:		#DB2C6A;
}

.button-green {
	color:					#fff;
	background-color:		#21982E;
	text-shadow: 			1px 1px 2px #000;
}

.button-green:hover {
	color:					#fff;
	background-color:		#2FA63C; 
}

.button-outlined {
	border: 				2px solid #fff;
	text-shadow:			none;
	color:					#fff;
	background-color: 		rgba(0,0,0,.4);
}

.button-outlined:hover {
	background-color:		#fff;
	color: 					#383d3d;
}

@media (min-width:850.98px) {
	#header-container			.button {
		margin:				-30px 0 60px;
	}
}

@media (max-width:850px) {
	#header-container	.button {
		margin:				0 0 30px;
	}
}

.testimonial {
	font-weight:			500;
	text-align:				center;
}

.testimonial::before,
.testimonial::after {
    content:				" ";
    position: 				absolute;
    background-image:		var(--sprite);
    background-repeat:		no-repeat;
	height: 				30px;
	width: 					47px;
	background-size: 		auto 175px;
}

.testimonial::before {
	background-position: 	-158px -71px;
}

.bg-dark .testimonial::before {
	background-position: 	-158px -20px;
}

.testimonial::after {
	background-position: 	-207px -71px;
}

.bg-dark .testimonial::after {
	background-position: 	-207px -20px;
}

.testimonial u {
	text-decoration:			none;
	color:						#003283;
}

.bg-dark .testimonial u {
	color: 					#fff;
}

@media (max-width:790px) {
	.testimonial {
		font-size:			1.25rem;
		padding: 			50px 0 0;
	}

	.testimonial::before,
	.testimonial::after {
		top:				0;
	}
	
	.testimonial::before {
		left: 				50%;
		transform: 			translateX(-60px);
	}
	
	.testimonial::after {
		right: 				50%;
		transform: 			translateX(60px);
	}
}

@media (min-width:790.98px) {
	.testimonial {
		font-size:			1.35rem;
		padding: 			20px 60px 0;
		box-sizing: 		border-box;
	}
	
	.testimonial::before,
	.testimonial::after {
		top:				15px;
	}

	.testimonial::before {
		left: 				0;
	}
	
	.testimonial::after {
		right: 				0;
	}
}

.referee {
	margin-top:				0;
	color:					#003283;
	font-weight:			500;
	margin-bottom:			20px;
	margin-top:				10px;
	font-size:				1.25rem;
}

.teal-inner .referee {
	color:					#fff;
	text-shadow:			0px 0px 3px #08363b;
}

.content-text	iframe {
    box-sizing: 			border-box;
	width:					100%;
	padding:				0;
	margin:					5px 0;
	background:				#fff;
	border:					5px solid #d8494c;
	min-height:				300px;
}

.raisely-donate-wrap {
	float:					left;
	width:					100%;
	max-width:				425px;
}

.partner {
	display:				inline-block;
	transition: 			filter 0.25s ease;
}

.partner img {
	max-width: 				280px;
}
	
.partner:hover {
	filter:					grayscale(1);
}

@media (max-width:790px) {
	.partner {
		padding:			10px 15px;
	}

	.partner img {
		max-height: 		145px;
	}
}

@media (min-width:790.98px) {
	.partner {
		padding:			20px 25px;
	}
	
	.partner img {
		max-height: 		175px;
	}
}

.video-wrap {
	height: 				0;
	padding-bottom: 		57%;
	max-width: 				640px;
}

.video-wrap iframe {
    box-sizing: 			border-box;
	width:					100%;
	margin:					15px 0;
	background:				#fff;
	border:					5px solid #f3f3f3;
	height: 				100%;
	position: 				absolute;
	top: 					0;
	left: 					0;
}

.fancybox-wrap-div {
    display:				inline-block;
    width:					100%;
    max-width: 				500px;
    margin:					15px auto;
}

.fancybox {
    display:				inline-block;
    position:				relative;
    width:					250px;
	height: 				250px;
	display: 				inline-block;
	margin: 				10px;
}

.fancybox-small {
    width:					auto;
	height: 				150px;
	margin: 				10px 10px 0 0;
}

.fancybox img {
    box-sizing: 			border-box;
	float:					left;
	transition: 			border-color 0.25s linear;
}

.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-tmp
{
	padding: 		0;
	margin: 		0;
	border: 		0;
	outline: 		none;
	vertical-align: top;
}

.fancybox-wrap {
	position: 		absolute;
	top: 			0;
	left: 			0;
	z-index: 		90200020;
    font-size:		0.9em;
}

.fancybox-skin {
	position: 		relative;
}

.fancybox-opened {
	z-index: 		90200030;
}

.fancybox-outer, 
.fancybox-inner {
	position: 		relative;
}

.fancybox-inner {
	overflow: 		hidden !important;
    text-align:		center;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-image, 
.fancybox-iframe {
	display: 				block;
	width: 					100%;
	height: 				100%;
	border:					5px solid #fff;		
    box-sizing: 			border-box;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

.fancybox-close { 
    position: 				fixed;
    top: 					25px;
    right: 					35px;
    width: 					40px;
    height: 				40px;
    z-index: 				90200040;
    background:				transparent var(--sprite) -201px -66px no-repeat;
    background-size:		auto 105px	!important;
}

.fancybox-tmp {
	position: 			absolute;
	top: 				-99999px;
	left: 				-99999px;
	visibility: 		hidden;
	max-width: 			99999px;
	max-height: 		99999px;
	overflow: 			visible !important;
}

.fancybox-lock {
	overflow: 			hidden;
}

.fancybox-overlay {
	position: 			absolute;
	top: 				0;
	left: 				0;
	overflow: 			hidden;
	display: 			none;
	z-index: 			90200010;
	background-color: 	rgba(66,81,88,0.9);
}

.fancybox-overlay-fixed {
	position: 			fixed;
	bottom: 			0;
	right: 				0;
}

.fancybox-lock .fancybox-overlay {
	overflow: 			auto;
	/* overflow-y: 		scroll; */
}

.fancybox-nav {
	position: 				fixed;
	top: 					50%;
    margin-top:				-20px;
	z-index: 				1003;
    width: 					20px;
    height: 				20px;
	border-radius: 			50%;
    border:					10px solid #000;
    background:				#000 var(--sprite) no-repeat;
    background-size:		auto 100px	!important;
	transition: 			opacity 0.25s linear;
    opacity:				1;
}

.fancybox-prev {
	left: 					20px;
    background-position:	-290px -14px;
}

.fancybox-next {
	right: 					20px;
    background-position:	-307px -14px;
}

.fancybox-nav:hover {
    opacity:				0.55;
}

.fancybox-title {
	visibility: hidden;
	position: relative;
	text-shadow: none;
	z-index: 90200050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	top: 100%;
	right: 0;
    width:100%;
	z-index: 90200050;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	padding: 10px;
	background: #B7332C;
	color: #FFF;
    width:100%;
    box-sizing: 			border-box;
}

.fancybox-title-outside-wrap {
	position: relative;
	color: #fff;
}

.fancybox-title-inside-wrap {
	padding-top: 0px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}

/* Forms */

form { 
	display:				inline-block;  
    width:					100%;
    margin:					20px 0;
	padding:				20px 20px 30px;
    box-sizing: 			border-box;
	/*
	background:				#516067;
	color:					#fff;
	*/
	background:				#f3f3f3;
	float:					left;
	text-align:				left;
}

.bg-dark form {
	background:				transparent;
	padding:				0;
}

label {
	font-weight:			500;
	width:					100%;
	margin:					5px 0;
	padding:				0;
	line-height:			inherit;
	font-size:				0.9rem;
	color:					inherit;
	float:					left;
	clear:					left;
	max-width:				100%;
}

.no-label label {
	display:				none;
}

.no-label input {
	margin:					0;
}

input::-moz-focus-inner { 
  border: 0; 
}

input[type=text],
input[type=email],
input[type=number],
textarea,
main select {
    text-align:				inherit;
    box-sizing: 			border-box;
    text-indent:			0;  
    width:					100%;
	max-width:				100%;
	border-radius:			2px;
	border:					1px solid #e5e5e5;
    font-family: 			sans-serif;
	background-color:		#fff;
	background-image:		none;
	font-weight:			400;
    line-height:			1.2;  
	outline:				none;
	float:					left;
	padding:				10px 15px;
    margin:					0 0 10px 0;    
	color:					#383d3d;	
	font-size:				15px;
}

textarea {
	height:					120px;   
}

input[type=text]::focus,
input[type=email]::focus,
input[type=number]::focus,
textarea:focus {
	border:					2px solid #8bc1fc;
	padding:				9px 15px;
}

/* Store locator */

#wpsl-wrap {
	margin-top:				20px;
	background:				#f3f3f3;
	padding:				10px;
	float:					left;
	width:					100%;
    box-sizing: 			border-box;
}

#wpsl-result-list,
#wpsl-result-list span,
#wpsl-stores,
#wpsl-wrap p,
#wpsl-wrap form	div,
#wpsl-stores	div {
	width:					100%;
	float:					left;
	margin:					0;
	padding:				0;
    box-sizing: 			border-box;
	text-align:				left;
}

.wpsl-search,
#wpsl-gmap {
	float:					left;
	margin:					0;
	padding:				0;
    box-sizing: 			border-box;
	height:					420px		!important;
}
#wpsl-search-wrap form {
	margin:					0;
	background:				transparent;
}

#wpsl-gmap {
	border: 				5px solid #fff;
}

#wpsl-result-list {
	float:					right;
	margin:					0;
	padding:				0;
}

@media (min-width:850.98px) {
	#wpsl-search-wrap form {
		padding:				15px 15px 10px 5px;
	}
	
	.wpsl-search {
		width:					220px		!important;
	}
	
	#wpsl-result-list,
	#wpsl-gmap {
		width:					calc(100% - 220px);
	}
}

@media (max-width:850px) {
	#wpsl-search-wrap form {
		padding:				15px 0 25px;
	}

	#wpsl-result-list {
		width:					100%;
	}
	
	.wpsl-search {
		width:					100%		!important;
		height:					auto		!important;
	}
	
	#wpsl-gmap {
		width:					100%;
	}
}

.wpsl-direction-wrap,
.wpsl-info-actions {
	display:				none;
}

.wpsl-input label {
	margin:					-5px 0 10px;
	font-size:				1rem;
}

#wpsl-gmap img[src*="red@2x"] {
    display: none !important;
}

#wpsl-stores ul {
	max-height:				405px;
	overflow-y:				scroll;
	margin-top:				20px;
}

#wpsl-stores li {
	font-size:				0.85rem;
	float:					left;
	width:					100%;
}

#wpsl-stores div {
	margin-bottom:			15px;
	width:					100%;
	border-bottom: 			2px solid #fff !important;
	padding-bottom: 		15px;
}

.wpsl-store-location p:nth-of-type(1) strong {
	display:				none;
}

.wpsl-store-location p:nth-of-type(1) span {
	font-weight:			500;
}

.wpsl-store-location p:nth-of-type(1) span:nth-of-type(2) {
	font-size: 				1rem;
	color: 					#003283;
	margin: 				0 0 5px 0		!important;
}

.wpsl-contact-details strong {
	font-weight:			400;
	float:					left;
	min-width:				45px;
}

#wpsl-stores li.wpsl-no-results-msg {
	color:					#fff;
	font-weight:			400;
	background:				#4B5A61;
	padding:				15px;
}

/* Gravity Forms Overrides */

.ui-datepicker {
	border: 				1px solid #e5e5e5;
	background: 			#fff;
	padding: 				10px;
}

legend {
	font-weight:			500;
	font-size:				0.9rem;
}

.gform_footer {
	display: 				flex;
	flex-wrap: 				wrap;
}

.gform-loader {
	align-self: 			center;
	animation: 				gformLoader 1.1s infinite linear;
	width: 					40px		!important;
	height: 				40px;
	border: 				5px solid #fff;
	border-top: 			5px solid #DB2C6A;
	border-radius: 			50%;
	display: 				inline-block;
	margin-left: 			10px;
	position: 				relative;
	transform: 				translateZ(0);
	vertical-align: 		middle;
	float: 					none 		!important;
}

@keyframes gformLoader {
	0% {
		transform:			rotate(0)
	}
	100% {
		transform:			rotate(360deg)
	}
}

.gform_wrapper,
.gform_confirmation_wrapper,
.gform_wrapper div,
.gform_wrapper span {
	width:					100%;
	float:					left;
    box-sizing: 			border-box;
	position:				relative;
}

.gform_required_legend {
	display:				none;
}

.gform_confirmation_wrapper {
	margin:					20px 0;
}


input.gchoice_other_control:disabled {
	display: 				none;
}

.name_first,
.name_last,
.address_state,
.address_zip {
	width:					50%					!important;
}

.gf_150th_subscription fieldset {
	border:					none;
	padding:				0;
	margin:					0;
}

.gf_150th_subscription legend {
	display:				none;
}

.gf_150th_subscription	.name_first,
.gf_150th_subscription	.name_last {
	width:					calc(50% - 2px) 	!important;
}

.gf_150th_subscription	.name_last {
	float:					right;
}

.ui-datepicker-title select {
	margin:					0					!important;
	width:					78px;
	height:					30px;
	border-color:			#666;
	font-weight:			400;
    line-height:			1;  
	outline:				none;
	float:					left;
	padding:				5px 10px; 
	color:					#383d3d;	
	font-size:				0.7rem;
	letter-spacing:			0;
}

/*
.ginput_card_security_code_icon {
    width: 					32px;
    height: 				23px;
    background-image: 		url(../gravity-form-images/gf-creditcard-icons.png);
    background-repeat: 		no-repeat;
    background-position: 	0 -128px;
    position: 				relative;
    top: 					-1px;
    left: 					6px;
    display: 				-moz-inline-stack;
    display: 				inline-block;
}

.gform_card_icon {
    margin-right: 			4px;
    text-indent: 			-9000px;
    background-image: 		url(../gravity-form-images/gf-creditcard-icons.png);
    background-repeat: 		no-repeat;
    width: 					36px;
    height: 				32px;
    float: 					left;
}

.gform_card_icon_amex {
    background-position: -72px 0;
}

.gform_card_icon_discover {
    background-position: -108px 0;
}

.gform_card_icon_mastercard {
    background-position: -36px 0;
}

.gform_card_icon_visa {
    background-position: 0 0;
}
*/

.gform_validation_container {
	display:				none;
}

.gfield_description,
.ginput_container_date span {
	margin:					0 0 5px 0;
	font-size:				0.8rem;
}

label.gform-field-label--type-sub {
	margin-top:				5px;
}

input + label.gform-field-label--type-sub {
	margin-top:				0;
}

fieldset {
	border:					1px solid #e5e5e5;
	margin: 				10px 0;
	float: 					left;
	width: 					100%;
	box-sizing: 			border-box;
}

.gfield--type-stripe_creditcard-card .StripeElement {
	align-items: 			center;
	display: 				flex;
	background: 			#fff;
	padding: 				15px 5px;
	border-radius: 			2px;
	border: 				1px solid #e5e5e5;
}

.gchoice {
	padding:				0 0 0 30px;
}

.ginput_total {
	font-size: 				1.3rem;
	font-weight: 			600;
	color: 					#003283;
}

.gfield_radio 		li,
.gfield_checkbox	li {
    position:				relative;
	float:					left;
    width:					50%;
	padding:				0 0 0 30px;
	margin:					0;
    box-sizing: 			border-box;
}

.gfield_radio 		input:first-of-type,
.gfield_checkbox	input:first-of-type {
	position:				absolute;
	top:					17px;
	left:					8px;
	margin:					-7px 0 0 0;
}

.gfield_radio 		label,
.gfield_checkbox	label {
	clear:					none;
	margin:					5px 0;
	font-weight:			400;
	max-width:				none;
}

div.gform_card_icon {
	width:					36px;
}

.gfield_required {
	display: 				inline-block;
	float: 					none 	!important;
	width: 					auto 	!important;
	color:					#d8494c;
}

.gfield--type-html b {
	color:					#d8494c;
}

.ginput_complex label {
	font-weight:			400;
}

.gform_confirmation_message,
.gform_wrapper div.validation_error,
.gform_wrapper .validation_message {
	font-weight:			500;
	padding:				10px 0;
	font-size:				1rem;
}

.gform_confirmation_message {
	background-color: 		#43BA50;
	color: 					#fff;
	padding:				30px 15px;
}

.gform_wrapper div.validation_error,
.gform_wrapper .validation_message {
	color:					red;
}

.gfield_error input,
.gfield_error textarea {
	border:					1px solid red;
	color:					red;
}

.gfield_error input:focus,
.gfield_error textarea:focus {
	border:					2px solid #ec674c;
}

.pac-container {
	display:				none;
}

.gfield_radio li input+input {
	flex-basis:			 	80%;
	margin: 				0 0 0 3px 	!important;
}

::-webkit-input-placeholder {
	opacity:				1;
}
::-moz-placeholder {
	opacity:				1;
}
:-ms-input-placeholder {
	opacity:				1;
}
:-moz-placeholder {
	opacity:				1;
}

/* Posts */

.archive-wrap {
	clear:				both;
	display:			flex;
	flex-direction:		row;
	justify-content:	space-between;
	align-items:		flex-start;
	flex-wrap:			wrap;
	margin:				0 auto
}

.archive-wrap__sidebar {
	flex-basis:			33.3%;
	padding-top:		30px;
	padding-right:		30px;
    box-sizing: 		border-box;
}

.sidebar__list {
	margin-bottom:			20px
}

@media (max-width:790px) {
	.archive-wrap {
		 flex-direction:	column;
		 flex-wrap:			nowrap
	}

	.archive-wrap__sidebar {
		display: 			none;
	}
	
	.sidebar__list {
		margin-bottom:		20px
	}
}

.sidebar__list__header {
	font-weight:		600;
	margin:				0 0 15px;
}

.sidebar__list__date {
	color: 				#383d3d;
	font-weight:		400;
	float:				left;
	width:				100%;
	margin-top:			5px;
	font-size:			15px;
	text-transform: 	uppercase;
}

a:hover .sidebar__list__date,
a:focus .sidebar__list__date {
	color: 				#fff
}

.sidebar__list>li a {
	margin-bottom:		1px;
	background-color:	#f3f3f3;
	color:				#003283;
	float:				left;
	width:				100%;
	font-size:			17px;
	font-weight:		500;
	padding:			9px 20px;
	text-decoration:	none;
	transition:			color 0.2s ease, background-color 0.2s ease, padding 0.2s ease;
	box-sizing: 		border-box;
}

.sidebar__list>li a:hover,
.sidebar__list>li a:focus {
	background-color:	#144697;
	color:				#fff;
	padding-left:		25px;
}

.sidebar__list>li.active a {
	background-color:	#144697;
	color:				#fff;
}
.archive-wrap__content {
	flex-basis:			66.6%
}

@media (max-width:790px) {
	.archive-wrap__content {
		width:			100%
	}
}

.archive-wrap__footer {
	flex-basis:			100%
}

.pagination {
	display:			flex;
	flex-direction:		row;
	justify-content:	space-between;
	align-items:		center;
	padding:			0 0 30px 0;
	width:				100%;
	box-sizing:			border-box
}

.pagination a {
	padding:				10px; 
    font-size:				0.8em;
	margin:					5px 0;
	border-radius:			0px;
	background-color:		#003283;
	color:					#fff;
}

.pagination a:hover {
	color:					#fff;
	background-color:		#0A3C8D;
}

.entry-with-image {
	position:				relative;
	padding-left:			170px;
	min-height:				148px;
	margin:					10px 0;
	overflow:				hidden;
    box-sizing: 			border-box;
}

.entry-with-image-wrapper {
	position:				absolute;
	top:					0;
	left:					0;
	width:					148px;
	height:					148px;
	overflow:				hidden;
}

.entry-with-image-wrapper img {
	position:				absolute;
	top:					0;
	left:					0;
	width:					148px;
	max-width:				148px;
	height:					auto	!important;
}

.img-border.entry-with-image-wrapper img {
	width:					138px;
	max-width:				138px;
}

.entry-title {
	margin:					0;
	line-height: 			1.35;
	font-size: 				1.25rem;
	letter-spacing: 		-0.25px;
}

.entry-subtitle {
	margin:					0;
}

.entry-meta {
	font-size:				15px;
	text-transform:			uppercase;
}

.entry-meta .cat-links {
	padding-left:			1rem
}