/*   
Theme Name: WebSaint
Description: Blank canvas theme using Zurb Foundation Framework
Author: Brett Mallory (brett@secondmile.co.nz)
Version: 2.0
*/

@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700,800');
@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,500,700');
/* @import url('https://fonts.googleapis.com/css?family=Roboto:400,500,700,900'); */


body { color:#666666; background:#f9f9f9; font-family: 'Roboto', sans-serif; }
h1,h2,h3,h4,h5,h6 { color:#555; font-family: 'Roboto', sans-serif; font-weight:300; /*text-transform:uppercase;*/ }

h2:not(:first-of-type) { margin-top:3rem; }

h1 { font-size:40px; line-height:56px; font-weight:500; }
h2 { font-size:1.5rem; line-height:35px; font-weight:500; margin-bottom: 1.25rem; }

h3 { font-size:20px; font-weight:500; line-height:22px;}
h3.sub-heading { color:#aaa; margin-top: -20px;  font-size:20px; font-weight:400;}

h4 { font-size:16px; font-weight:500; line-height:18px;}
h4.sub-heading { color:#aaa; margin-top: -4px; font-size:16px; font-weight:400;}

ul { margin-left: 2.25rem; }
li { margin-bottom: 0.5rem; }
ul.tight li { margin-bottom: 0; }
ul.vtight li { margin-bottom: -4px; }

blockquote, blockquote p {
    font-size: 1rem;
	font-weight: 300;
	margin-left:16px;
    color: #8a8a8a;
}

section.page { padding-bottom:100px; }

.valign { width:100%; position: relative; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.lowercase { text-transform:lowercase !important; }

.staff-card { margin-bottom:40px; background-color:#fff; padding:10px; border-radius:5px; box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1); }
.staff-card h3 { font-size:16px; font-weight:400; text-align:center; margin:10px 0 0; }
.staff-card .role { font-size:12px; text-align:center; display:block; color:#999; }

.group-card { margin-bottom:40px; background-color:#fff; padding:10px; border-radius:5px; box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1); }
.group-card:hover { box-shadow: 0 0 15px 0 rgba(0, 0, 0, .5); }
.group-card:hover .button.grey { background-color:#4e90a9; color:#fff; }
.group-card .descr { padding: 5px 15px; text-align:center; }
.group-card h3 { font-size:15px; font-weight:500; text-align:center; margin:5px 0 5px; }
.group-card h4 { font-size:14px; font-weight:500; margin:5px 0 5px; text-transform:initial; }
.group-card p { font-size:13px; text-align:center; display:block; color:#999; margin-bottom:3px;}
.group-card p.excerpt { font-size:15px; text-align:center; display:block; color:#999; }

.course-card { position:relative; margin-bottom:40px; background-color:#fff; padding:10px; border-radius:5px; box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1); }
.course-card:hover { box-shadow: 0 0 10px 0 rgba(0, 0, 0, .3); }
.course-card .descr { padding: 5px 15px; text-align:center; }
.course-card h3 { font-size:15px; font-weight:500; text-align:center; margin:5px 0 5px; }
.course-card h4 { font-size:14px; font-weight:500; margin:5px 0 5px; text-transform:initial; }
.course-card p { font-size:14px; text-align:center; display:block; color:#999; margin-bottom:3px;}
.course-card p.excerpt { font-size:14px; text-align:center; display:block; color:#999; line-height:20px; }
.course-card p.startdate { font-size:14px; text-align:center; display:block; color:#66cc66; }

.course-card .course-card-icon {
	position:absolute; 
	background:#66cc66; 
	width:40px; height:40px; border-radius:20px;
	top:-20px; right:20px; 
	box-shadow: 0 4px 10px 0 rgba(0, 0, 0, .1);
	padding-top:12px;
	color:#4b4b4d;
	border:3px solid #fff;
}

.team-card { margin-bottom:40px; background-color:#fff; padding:10px; border-radius:5px; box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1); }
.team-card:hover { box-shadow: 0 0 10px 0 rgba(0, 0, 0, .3); }
.team-card .descr { padding: 5px 15px; text-align:center; }
.team-card h3 { font-size:20px; font-weight:500; text-align:center; margin:10px 0 10px; }
.team-card h4 { font-size:16px; font-weight:500; margin:8px 0 8px; text-transform:initial; }
.team-card p { font-size:13px; text-align:center; display:block; color:#999; margin-bottom:3px;}
.team-card p.excerpt { font-size:15px; text-align:center; display:block; color:#999; height:122px; overflow:hidden; }

h1.white, h2.white, h3.white, h4.white { color: #ffffff; border-color:#ffffff; }
h1.blue, h2.blue, h3.blue, h4.blue { color: #207C9F; border-color:#b9b9b9; }
h1.nobar, h2.nobar, h3.nobar, h4.nobar, .nobar h3 { border-left:none; margin-left:0; padding-left:0; }
h1.nobar2, h2.nobar2, h3.nobar2, h4.nobar2 { border-left:none; padding-left:0; }


.statement p, .large p, p.statement {font-size:1.25rem; line-height:2rem; margin-bottom:1rem; font-weight:300; }
.statement strong { font-weight:500; color:#6b6b6b; }

header {
	padding:1em 0; 
	margin-bottom:0; 
	/*background-color:rgba(10,10,10,0.35); */
	background-image: linear-gradient(to bottom, rgba(10,10,10,0.55), rgba(10,10,10,0));
	color:#fcfcfc;
	position: fixed;
    top: 0;
    width: 100%;
	transition: all 500ms cubic-bezier(0.250, 0.100, 0.250, 1.000);
	z-index: 10;
}
header a.fa { font-size:2.5rem; margin-right:16px; color:#bbb;}

header .logo {font-size:1.6em; margin-top: 0.5rem;}
header .logo a { color:#fff; }
header .logo img { transition: all 500ms cubic-bezier(0.250, 0.100, 0.250, 1.000); }

#header-mobile {
	padding:0px; 
	background-image: linear-gradient(to bottom, rgba(10,10,10,0.55), rgba(10,10,10,0));
	position:fixed;
	top:0;
	width:100%;
	z-index:10;
	color:#FFF;
}
#header-mobile .logo img { height:50px; }

p { font-size: 16px; color: rgba(41,41,41,0.85); line-height: 1.6rem; }

.active { background-color:rgba(10,10,10,0.75); padding:0; transition: all 250ms cubic-bezier(0.250, 0.100, 0.250, 1.000);}
.logo-active { height:40px !important; opacity:0.85 !important; transition: all 250ms cubic-bezier(0.250, 0.100, 0.250, 1.000); }

.hero { position:static; top:0px; height:100vh; width:100%;  }

.underlay {	width: 100%; position: absolute; top: 0; left: 0; z-index: 1; }

.overlay h1 {
	font-family: 'Open Sans', sans-serif;
	font-size:3.5rem; 
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:0.66px;
	color:#fff;
	margin-bottom: 25px;
	width: 100%;
}
.overlay p {
	font-family: 'Open Sans', sans-serif;
	color:#fff;
	font-size:30px;
	font-weight:400;
	line-height:1.6;
	text-shadow: 0px 0px 10px rgba(0,0,0,0.5);
}
.vcenter {
	position: absolute;
	max-height: 100%;
    top: 50%;
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}
.vhcenter {
	position: absolute;
	max-height: 100%;
    top: 50%;
	left:50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
	padding: 0 20px;
}


.hero .underlay {
	height: 100vh; background-color: rgba(80,80,80,.4);
}
.hero .overlay {
	z-index:2; width:100%; 
	max-height: 100vh; padding: 200px 0; overflow:hidden; 
	position: absolute;
	
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}


.page-hero { position:relative; top:0px; height:50vh; min-height:360px; width:100%; margin-bottom:3em;}
.page-hero .underlay {	
    height: 50vh;
	min-height:360px;
	background-color: rgba(0,0,0,.1);
}
.page-hero .overlay {
	z-index:2; width:100%; overflow:hidden; 
	height:	100%;
	position: absolute;
	
	
}
.page-hero .overlay h1 {
	font-size:3.5rem; 
	line-height:3.5rem; 
	letter-spacing:10px;
	opacity:.90;
}



.wide-panel { margin: 0; padding: 3em 0 4em;}
.wide-panel.grey { background-color:#eee; }
.wide-panel.white { background-color:#F9F9F9; }



.location-line { margin-left:16px; color: rgba(41,41,41,0.85); }
.location-line span { display:inline-block; width:110px; font-weight: 600; }
.location-line.address { color: rgba(41,41,41,0.85); margin-left:16px; margin-top:10px; font-size:80%; }


.event-card {
	position:relative; box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1); background-color:#ffffff; margin-bottom: 65px; border: 10px solid #fff; border-bottom: none; border-radius:5px;
}
.event-card .event-card-date {
	position:absolute; 
	background:#fff; 
	width:75px; height:70px; 
	top:-37px; right:25px; 
	box-shadow: 0 4px 10px 0 rgba(0, 0, 0, .1);
	padding-top:12px;
	color:#4b4b4d;
}
.event-card .event-card-date .month { font-family: 'Open Sans', sans-serif; font-weight:800; font-size:20px; line-height:20px;}
.event-card .event-card-date .day { font-family: 'Open Sans', sans-serif; font-weight:700; font-size:25px; line-height:25px;}
.event-card .event-card-date .multi-day { font-family: 'Open Sans', sans-serif; font-weight:600; font-size:18px; line-height:29px;}
.event-card .event-card-text { font-family: 'Open Sans', sans-serif; padding:10px; }
.event-card .event-card-text h5 { text-align:center; margin:0; padding:0; font-size: 1rem; }
.event-card .event-card-text p.title { font-family: 'Roboto', 'Open Sans', sans-serif; font-size:22px; font-weight:700; text-align:left; margin:0; padding:5px 0; }
.event-card .event-card-text p.date { font-size:18px; text-align:left; margin:0; padding:3px 0; }
.event-card .event-card-text p.type { text-align:center; text-transform:uppercase; color:#aaa; letter-spacing:3px; font-size:10px; margin:0 0 5px 0; padding:0; line-height:10px; }







footer { padding:50px 0; background:#2f2f2f; margin-top:0; color:#ccc; font-size:0.95rem;}
footer a { display:block; font-size:0.95rem; color:#999; margin-bottom:1rem; font-weight:400; }
footer a:hover { color:#fcfcfc; }
footer p { font-size:0.95rem; color:#969696; }
footer hr { border-bottom-color: #888; margin:30px 0; }
footer h6 { color:#42BAE7; font-size:1rem; font-weight:600; text-transform:uppercase; letter-spacing:1px; margin-bottom:1rem; }

.prefooter { padding:45px 0 45px; background:#E6E7E1; color:#969696; font-size:0.85rem; border-top:0px solid #000;}

.subfooter { padding:45px 0; background:#222; color:#969696; font-size:0.85rem; border-top:1px solid #000;}
.subfooter a { font-size:0.85rem; color:#969696; }


.no-margin { margin:0px !important }
.no-padding { padding:0px !important }
.stroke, .outline { border:1px solid #555; }
.fill { background-color:#eee; }



nav#primary-menu {
	margin:13px 0 0 0;
	
	
	position: absolute;
    top: 50%;
    right: -150px;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
nav#primary-menu ul {
	list-style:none;
	margin:0;
	padding:0;
	text-align:right;
	display:unset;
}
nav#primary-menu ul li {
	position:relative;
	display:inline-block;
	margin:0px 0px;
}
nav#primary-menu ul li:last-child {
	/* margin-right:0; */
}
nav#primary-menu ul li a {
	font-family: "Open Sans", sans-serif;
	font-weight: 400;
	font-size:1rem;
	text-decoration:none;
	text-transform:uppercase;
	letter-spacing:1px;
	color:#fafafa;
	display:inline-block;
	padding:20px 15px;
	/* border-bottom:3px solid transparent; */
	
	/* border-radius:5px; */
	/* box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.1); */
}
nav#primary-menu ul li:first-child a {
	/* padding-left:0px; */
}
nav#primary-menu ul li:last-child a {
	/* padding-right:0px; */
} 
nav#primary-menu ul li a:hover {
	text-decoration:none;
	color:#cccccc;
	/* border-bottom:3px solid #ccc; */
}
nav#primary-menu ul.sub-menu {
	display:none;
	left:initial;
	background-color: rgba(255,255,255,0.9);
	position:absolute;
	margin-top:0px;
	margin-left:10px;
	max-width:300px;
	width:355px;
	z-index:100;
	/* box-shadow: 0px 3px 10px rgba(0,0,0,0.5); */
}
nav#primary-menu ul.sub-menu li {
	display:block;
	/*border-bottom:1px solid #e5e5e5;*/
	margin:0px;
}
nav#primary-menu ul.sub-menu li:last-child {
	border-bottom:none;
}
nav#primary-menu ul.sub-menu li a {
	display:block;
	color:#555;
	font-weight:400;
	font-size:0.85rem;
	text-transform:uppercase;
	letter-spacing:1px;
	padding:13px 30px 13px 20px;
	text-align:left;
	text-decoration:none;
}
nav#primary-menu ul.sub-menu li a:hover {
	color:#555;
	background-color:rgba(255,255,255,0.5);
	text-decoration:none;
}
nav#primary-menu ul.sub-menu ul.sub-menu {
	position:relative;
	display:block;
	background-color:initial;
}

nav#primary-menu ul.sub-menu ul.sub-menu li a {
	font-size:0.75rem;
}
nav#primary-menu ul.sub-menu ul.sub-menu li a:hover {
	font-size:0.75rem;
	background-color:initial;
}

nav#primary-menu ul li.current-menu-item, nav#primary-menu ul li.current-menu-parent {
	/* background-color:#f5f5f5; */
	
}
nav#primary-menu ul li.current-menu-item > a {
	text-decoration:none;
	font-weight:600;
}
nav#primary-menu ul li.current-menu-parent > a {
	text-decoration:none;
	font-weight:600;
}


footer h3 {
	color:#ccc;
	font-size: 1rem;
	text-transform:uppercase;
}
nav#footer-menu ul li {
	display:block;
	margin:0 0 0 1px;
	line-height:initial;
}
nav#footer-menu ul li a {
	line-height:initial;
	display:inline;
	padding:0;
	margin-bottom:5px;
}

#nav-canvas {
	position:fixed;
	background:rgba(10,10,10,0.95);
	width:0;
	height:100%;
	top:0;
	left:0;
	padding:0px;
	z-index:100;
	color:#FFFFFF;
	overflow-x: hidden;
	transition: 0.5s;
}

#search-canvas {
	position:fixed;
	background:rgba(10,10,10,0.95);
	width:100%;
	height:20%;
	top:-20%;
	left:0;
	padding:0px;
	z-index:100;
	color:#FFFFFF;
}


nav#mobile-primary-menu ul.sub-menu {
	display:none;
}
nav#mobile-primary-menu ul.menu {
	display:block;
	
}
nav#mobile-primary-menu ul.menu li {
	
}
nav#mobile-primary-menu ul.menu li a {
	font-size:30px;
	color:#ffffff;
	text-transform:uppercase;
}

nav#mobile-primary-menu ul.sub-menu li {
	list-style:none;
}
nav#mobile-primary-menu ul.sub-menu li a {
	font-size:20px;
	color:#ffffff;
}

/* WP Core Image Alignments */

.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0px 16px 10px;
}

.alignleft {
    float: left;
    margin: 5px 16px 10px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 10px 16px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 16px 10px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.wp-caption {
    background: #fff;
    /* border: 1px solid #f0f0f0; */
    /* max-width: 96%; /* Image does not overflow the content area */
    padding: 0px;
    text-align: left;
	/* width:auto !important; */
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 16px 10px 0;
}

.wp-caption.alignright {
    margin: 5px 0 10px 16px;
}

.wp-caption.aligncenter {
     display: block;
    margin: 5px auto 5px auto;
	/* width:initial !important; */
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    /* max-width: 98.5%; */
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: auto;
    margin: 0;
    padding: 3px 4px;
}

/* FORM STYLE */

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea, select {
	display: initial;
	font-size: 16px !important;
	line-height:initial;
	border:none;
	padding:10px !important;
	margin: 0 0 16px 0;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1);
}

select {
	background-position: right 3px center;
	background-size: 16px 9px;
}

.gform_wrapper select {
    line-height: initial !important;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #4e90a9 !important;
    opacity: 0.7 !important; /* Firefox */
	font-style: italic !important;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #4e90a9;
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: #4e90a9;
}

.gform_wrapper .gform_footer {
	padding:0px !important;
}
.gform_wrapper .gform_footer input.button,
.gform_wrapper .gform_footer input[type=submit] {
}
.gform_wrapper label {
	color:#666666;
}
.gform_wrapper span.ginput_total {
    color: #42BAE7 !important;
    font-size: 25px !important;
	font-weight: 600  !important;
}

.gform_wrapper .tiny input.small, .gform_wrapper .tiny select.small {
    width: 15% !important;
}

.gfield_list_container tbody { background-color:initial; }
.gfield_list_container thead { background-color:initial; }
.gform_wrapper table.gfield_list thead th { color:#666666; font-weight:400 !important; }
.gfield_list_row_even {background-color:initial !important;}

.gform_wrapper .field_description_below .gfield_consent_description, .gform_wrapper .gfield_consent_description {
	font-size:14px !important;
}
[type='file'], [type='checkbox'], [type='radio'] {
    margin: 0 0.2rem 0.4rem;
}

.gform_wrapper .gfield_checkbox li, .gform_wrapper .gfield_radio li {
    margin: 0 0 3px !important;
}

.gform_legacy_markup_wrapper.gf_browser_chrome ul.gform_fields li.gfield select {
	min-width: 6rem;
}

/* END FORM STYLE */

.button { font-size:1rem; font-weight:400; letter-spacing:1px; background-color: #207C9F; margin:15px 0px; color:#FFF; border-radius:4px; }
.button:hover { background-color: #4e90a9; color:#fff; }

.button.tiny {border-width:1px; border-radius:4px;}
.button.indented {margin-left:16px;}
.button.nopad {margin-left:0px;}
.button.nomargin {margin-bottom:0px;}
.button.stretch {width:100%;}

.button.white { border: 2px solid #fff; background-color: rgba(200,200,200,0.5); color:#fff; }
.button.white:hover { background-color: rgba(200,200,200,0.2); color:#fff; }
.button.orange { background-color: #F27229; color:#FFFFFF; }
.button.orange:hover { background-color: #c35a1e; }

.button.orange-line { border: 2px solid #F27229; background-color: #FFFFFF; color:#F27229; }
.button.orange-line:hover { background-color: #F9F9F9; }

.button.grey { background-color: #ccc; color:#666666; }
.button.increase { font-size: 20px; border: 2px solid #fff; background-color: #F27229; color:#FFFFFF; }
.button.increase:hover { border-color: #ccc; }

.search-button { display:inline-block; margin:0; padding: 11px 15px;
    margin-top: -4px;
    margin-left: -4px; 
	border-radius: 0 4px 4px 0;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1);
}
/* WP Core Image Alignments */


div.list-post-wrapper { background:#ffffff; border:1px solid #e5e5e5; border-bottom-width:4px; padding:10px; margin-bottom:30px; height:350px; overflow:hidden; }
div.list-post-wrapper p { font-size:0.75rem; }

.reveal { outline:none; border-radius: 5px; box-shadow: 1px 1px 15px rgba(0,0,0,0.5); }


p.atrium {font-family:'Open Sans', sans-serif; font-size:25px; line-height:initial; color:#fff;}

.prefooter h3.podcast { margin-bottom:25px; }
.prefooter h3.social { margin-bottom:40px; }
.prefooter h3.search { margin-bottom:50px; }


.vce-button--style-basic.vce-button--style-basic--size-small {
    font-size: 13px !important;
}


/* Small only */
@media screen and (max-width: 39.9375em) {
	
	iframe {margin-bottom:1rem;}
	
	.prefooter h3.podcast { margin-bottom:15px; }
	.prefooter h3.social { margin:40px 0 15px 0; }
	.prefooter h3.search { margin:40px 0 0 0; }
	
	
	.page-hero .overlay h1 {
    font-size: 1.5rem;
    line-height: 1.5rem;
    letter-spacing: 5px;
}
	
	.overlay h1 {
		font-size: 1.5rem;
		line-height: 1.5rem;
	}
	.overlay p {
		font-size: 15px;
	}
	
	p.atrium {font-size:18px;}
	
	footer h6 {
		margin-top:1rem;
		text-align:center;
	}
	footer a {
		text-align:center;
	}
	
	nav#primary-menu ul li {
		display:block;
		border-bottom:1px dashed #aa0000;
	}
	nav#primary-menu ul li:last-child {
		
		border-bottom:none;
	}
	nav#primary-menu ul li a {
		width:100%;
		text-align:center;
	}
	
	
	.hero .overlay {
 padding: 150px 0; 
}

.mobile-advert { display:none; }

	
}

/* Medium and up */
@media screen and (min-width: 40em) {
	
	.hero .overlay {
 padding: 100px 0; 
}

.hero .overlay img.easter { height: 300px !important; width:auto; }
	
}

/* Medium only */
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
	
	
}

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

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


