/*

	!COLOURS

    Green: #165D30;
    Yellow (new): rgba(255, 219, 0, 1.0);
   
*/


/*

	!GLOBAL

*/

html {
	-webkit-font-smoothing: antialiased; /* Fixes font thinning with sliders. Source: http://stackoverflow.com/questions/9049524/safari-rendering-page-fonts-thinner-with-jquery-slider-on-page */
}

html[lang] {
  margin-top: 0 !important;
}

html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*, *:before, *:after {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit;
  }

body.admin-bar .header-outer {
	padding-top: 32px;
}

body,
.pure-g [class *= "pure-u"],
.pure-g-r [class *= "pure-u"] {
	text-rendering: optimizeLegibility;
    font-family: 'Barlow Semi Condensed', sans-serif;
    font-style: normal;
    font-weight: 400;
}

body {
	color: #444;
	font-size: 1em;
	line-height: 1.7;
	background-color: #EEE;
}

.wrap {
	max-width: 62.5em;
	margin: 0 auto;
	position: relative;
}

main,
#sb-site {
	background-color: #EEE;
}

.inner {
	padding: 1em;
}

.header-outer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 105;
}

article {
    margin: 3em 0;
    background-color: #fff;
}

article .inner {
    padding: 4em 6em;
}

.post-meta {
    margin: 0 0 1em 0;
}

a {
    color: #502F92;
    text-decoration: none;
    border-bottom: solid 1px #502F92;
}

article a {
    padding: 0.125em 0.25em;
    background-color: transparent;
    transition: background-color 0.5s ease;
}

article a:hover {
    background-color: rgba(255, 219, 0, 0.2);
}

.organisation-holder {
    margin: 0 0 2em 0;
}

.organisation-holder .short-bar {
    text-align: center;
    margin: 1em auto;
    width: 20%;
}

.organisation-holder .short-bar hr {
    border-top: 0.3em solid #ccc;
}

.organisation p {
    margin: 0;
    font-size: 0.875em;
}

.read-more {
    background-color: #eee;
    height: 1.25em;
    background: url('../img/read-more-arrow.svg') no-repeat;
}


.block-a a:hover .read-more path {
    fill: #fff;
}

.video-holder {
    width: 100%;
    height: 36em;
    position: relative;
    overflow: hidden;
    background-color: #000;
}

.video-holder video {
    position: absolute;
    left: 50%;
    top: 50%;
    min-width: 100%;
    min-height: 100%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    z-index: 0;
}

#mission-statement {
    position: absolute;
    bottom: 7%;
    width: 100%;
    z-index: 199;
    line-height: 1.1;
    color: #fff;
    text-align: center;
}

#mission-statement h2 {
   font-size: 2.5em;
}


#mission-statement h2 {
    color: #fff;
}

.herotint {
	position: absolute;
    left: 0;
    top: 0;
    z-index: 103;
    width: 100%;
	height: 36em;
}

.herotint:after {
    content:'';
    position:absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display:inline-block;
    background: rgb(0,0,0);
    background: -moz-linear-gradient(180deg, rgba(0,0,0,0.3295693277310925) 0%, rgba(0,0,0,1) 100%);
    background: -webkit-linear-gradient(180deg, rgba(0,0,0,0.3295693277310925) 0%, rgba(0,0,0,1) 100%);
    background: linear-gradient(180deg, rgba(0,0,0,0.3295693277310925) 0%, rgba(0,0,0,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#000000",GradientType=1);
}

/*

    !MENUS

*/

.menu-toggle {
    display: none;
}

nav a {
    border-bottom: none;
    text-decoration: none;
}

.primary-menu-outer {
    padding: 1.5em 1em;
}	

.secondary-menu-outer {
   padding: 1em;
   background-color: rgba(255, 219, 0, 1.0);
}	

.primary-menu {
    font-size: 1.25em;
    line-height: 1;
    margin-top: 1em;
    text-align: right;
    background-color: transparent;
}

.primary-menu .pure-menu-item a {
    color: #fff;
    padding: 0.5em 1em;
    text-transform: uppercase;
}

.primary-menu .pure-menu-item a:hover,
.primary-menu li.active a {
    color: #DFE32E;
}

nav#mobile-menu {
    font-size: 1.25em;
    line-height: 1;
    margin-top: 2em;
    text-align: left;
    background-color: transparent;
}

#mobile-menu li a {
    display: block;
    transition: background-color 0.5s ease;
    color: #fff;
    padding: 0.75em 1.25em;
}

#mobile-menu li a:hover {
    color: #fff;
    background-color: rgba(24, 175, 233, 0.5);
}

#mobile-menu .sub-menu {
    visibility: visible;
}

#mobile-menu .sub-menu li a {
    font-size: 0.875em;
    line-height: 1.3;
    margin-left: 2em;
}


/*
.pure-menu-item {
    position: static;
}
*/

#secondary-menu {
    text-align: right;
    margin-right: 1em;
}

.secondary-menu .pure-menu-item a {
    color: #502F92;
    margin: 0.5em 1em;
    padding: 0.5em 0.5em 0.5em 2.75em;
}

.secondary-menu .parents a {
    background: url('../img/parents.svg') no-repeat;
}

.secondary-menu .teachers a {
    background: url('../img/teachers.svg') no-repeat;
}

.secondary-menu .disabled-people a {
    background: url('../img/dpos.svg') no-repeat;
}

.secondary-menu .decision-makers a {
    background: url('../img/decision-makers.svg') no-repeat;
}

.footer-menu {
    padding-bottom: 0;
}

.footer-menu .pure-menu-item a:hover,
.secondary-menu .pure-menu-item a:hover {
    border-bottom: solid 1px #502F92;
}

.footer-menu .pure-menu-item a {
    color: #502F92;
    margin: 0.5em;
}

/* Dropdowns */
.sub-menu,
.sub-nav-holder {
    visibility: hidden;
}

.primary-menu .sub-menu { 
    position: absolute;
    top: 170%;
    left: 1em; /* dropdown left or right */
    z-index: 1000;
    min-width: 18em;
    max-width: 100%;
	padding: 0;
	margin: 0;
	font-size: 0.8125em;
	text-align: left;
    background-color: rgba(255, 219, 0, 1.0);
    color: #502F92;
}

.primary-menu .sub-menu:before {
    position: absolute;
    content: '';
    top: -25px;
    left: 1.25em;
    width: 0;
    height: 0;
    border: 15px solid transparent; /* arrow size */
    border-bottom-color: rgba(255, 219, 0, 1.0);;  /* arrow color */
}

.primary-menu .sub-menu li {
    border-top: solid 1px #FFD368;
    color: #fff;
    padding: 1.25em 0.5em;
}

.primary-menu .sub-menu li:first-of-type { 
    border-top: none;
}

.primary-menu .sub-menu li a { 
    color: #502F92;
}

.primary-menu .sub-menu li a:hover {
}


/*

	!TYPOGRAPHY

*/


#site-description {
	font-size: 1em;
	text-indent: -999em;
}

#site-logo {
    position: relative;
}

#site-logo a img {
    position: absolute;
    top: 0;
	font-size: 1em;
    width: 10em;
    height: 4em;
	border: none;
	text-decoration: none;
    z-index: 101;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #165D30;
    line-height: 1.3;
	margin: 1.5em 0 0.5em 0;
    font-weight: 400;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #165D30;
	border: none;
    text-decoration: none;
}

h1 {
	font-size: 2.5em;
    padding: 0 0 0.25em 0;
    margin: 0.75em 0 0.5em 0;
}

h2 {
	font-size: 1.75em;
}

.band h2 {
    margin-top: 0;
}

.band h3 {
    text-transform: uppercase;
}

.band-green p {
    font-size: 1.25em;
}

h3 {
	font-size: 1.5em;
}

h4 {
	font-size: 1.25em;
}

h5, h6 {
	font-size: 1.125em;
}

.title-holder {
    background-color: rgba(255, 219, 0, 1.0);
    background-color: #eee;
    background-color: rgba(80, 47, 146, 1.0);
    color: #fff;
}

.title-holder h1,
.title-holder .intro {
    color: #fff;
}

.title-holder .short-bar hr {
    border-top: 0.4em solid #fff;
}

.short-bar {
    text-align: left;
    width: 30%;
    margin: 1em auto;
}

.short-bar hr {
    border: none;
    border-top: 0.3em solid #165D30;
}

h1 + .short-bar hr {
    border: none;
    border-top: 0.4em solid #165D30;
}

.intro {
	font-size: 1.4em;
	line-height: 1.4;
    color: #502F92;
    margin: 2em 0;
}

blockquote {
    color: #502F92;
	font-size: 1em;
    padding: 0;
    margin: 0;
    font-style: normal;
}

blockquote em {
    font-style: normal;
}

p {
	margin: 0 0 1em 0;
}

.content {
    font-size: 1.125em;
}

.content ul,
.content ol,
.block ul,
.block ol,
.block-a ul,
.block-a ol {
	margin: 0 0 1em 1.125em;
}

.content h1:first-child,
.content h2:first-child, 
.content h3:first-child, 
.content h4:first-child {
    margin-top: 0;
}

.footer-logos {
    margin: 3em 0;
}



/*

    !FORMS

*/

.pure-form label {
    margin: 1em 0 0.25em 0;
    font-weight: bold;
    display: block;
}

.pure-form label .required {
    font-weight: normal;
    font-style: normal;
}

.label-message {
    font-weight: normal;
    color: #888;
}

label.error,
p.error,
.error {
    color: #d72c19;
    background-color: #FFE7EF;
    margin: 0.25em 0;
    padding: 0.2em 0.4em;
    font-weight: normal;
    border-left: solid 0.25em #CD1C1F;
    display: block;
}

.instruction {
    font-weight: normal;
}

#status {
    display: none;
    margin: 0.25em 0;
    padding: 0.2em 0.4em;
    background-color: #FFFAE0;
    border-left: solid 0.25em #FFB268;
}

.pure-form input[type=password], .pure-form input[type=email], .pure-form input[type=url],
.pure-form input[type=date], .pure-form input[type=month], .pure-form input[type=time],
.pure-form input[type=datetime], .pure-form input[type=datetime-local],
.pure-form input[type=week], .pure-form input[type=tel], .pure-form input[type=color],
.pure-form input[type=number], .pure-form input[type=search], .pure-form input[type=text],
.pure-form select, .pure-form textarea {
    padding: .75em 1em;
    border: none;
    border-bottom: 1px solid #502F92;
    background-color: #eee;
    box-shadow: none;
    border-radius: 0;
}




/*

	!IMAGES
	
*/

img {
	vertical-align: middle; /* Removes white space underneath */
}

.image {
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	text-align: center;
}

.gallery-item {
    text-align: center;
    margin: 0 0 2em 0;   
}

.gallery-item img {
    padding: 0.5em;
    background-color: #eee;
    border: solid 0.0625em #eee;
}

.gallery-item a {
    border: none;
}

.wp-caption {
    margin: 0.5em 0;
    font-size: 0.75em;
    line-height: 1.2;
    font-style: italic;
}

.wp-caption {
    max-width: 100%;
}

.content img,
.comment-content img,
.imagegallery img,
.widget img,
.wp-bespoke-img,
.feature-image img {
    max-width: 100%; /* Fluid images for posts, comments, and widgets */
    height: auto;
}

img[class*="align"],
img[class*="wp-image-"] {
    height: auto; /* Make sure images with WordPress-added height and width >attributes are scaled correctly */
}

.wp-image-circular {
   -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  
}

.hero {
    height: 30em;
    min-height: 26em;
    max-height: 36em;
    width: 100%;
}

.bxslider-single {
}

ul.bxslider-single,
ul.bxslider {
    list-style: none;
    padding: 0;
    margin: 0;
}



/*

	!NAVIGATION

*/

ul,
li {
	margin: 0;
	padding: 0;
}

.pure-menu.pure-menu-open {
	border: none;
}



/*

    !BUTTONS

*/

.pure-button-custom {
    background: transparent;
    background-image: none !important;
    margin: 1em 0;
    padding: 0.75em 1.5em;
    border: none;
}

.pure-button-yellow {
    color: #165D30;
    background-color: rgba(255, 219, 0, 1.0);
}

.pure-button-yellow:hover {
    color: rgba(255, 219, 0, 1.0);
    background-color: #165D30;
}

body .pure-button-yellow:hover {
    color: #165D30;
    background-color: #FFF;
}

.pure-button-yellow-outline {
    color: rgba(255, 219, 0, 1.0);
    border: solid 2px rgba(255, 219, 0, 1.0);
}

.pure-button-yellow-outline:hover {
    color: #165D30;
    background-color: rgba(255, 219, 0, 1.0);
}

.pure-button-green {
    color: rgba(255, 219, 0, 1.0);
    background-color: #165D30;
}

.pure-button-green:hover {
    color: #165D30;
    background-color: #fff;
}

.see-all {
    font-size: 0.5em;
    margin-left: 0.75em;
}


/*

	!PAGINATION
	
*/

.pagination {
	margin: 2em 0 1em 0;
}

.page-numbers {
	padding: 0.2em 0.5em;
	background-color: #eee;
	border-bottom: solid 0.0625em #888;
}

span.current {
	color: #fff;
	background-color: #333;
}



/*

	!INDEX LISTS
	
*/

.list-item {
}




/*

	!FOOTER

*/

footer {
    text-align: center;
    margin: 3em 0 2em 0;
}



/*

	!HELPERS

*/

/* Hiding */
.visually-hidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.clearfix:before,
.clearfix:after {
	content: " "; /* 1 */
	display: table; /* 2 */
}

.clearfix:after {
	  clear: both;
}

/* For IE 6/7 only. Include this rule to trigger hasLayout and contain floats. */
.clearfix {
	*zoom: 1;
}

.alignleft {
    float: left; 
    margin-right: 1em;
}

.alignright {
    float: right;   
    margin-left: 1em;
}


/*

	!CAROUSELS

*/

.carousel-content {
    position: relative;
}

.carousel-content {
	text-align: center;
    padding-left: 1em;
}

.carousel-content h1 {
	font-size: 3em;
	margin: 0 0 0.25em 0;
	line-height: 1;
	color: #fff;
    font-weight: 900;
}

.carousel-summary {
	color: #502F92;
	position: absolute;
	top: 7em;
	right: 0;
    width: 50%;
	z-index: 50;
}

.carousel-summary p {
 	font-size: 1.25em;
	margin: 0 0 0.5em 0;
	line-height: 1.2;
    font-weight: 300;
	color: #fff;
    padding: 0 3em;
}



/*

	!SIDEBAR 

*/

.sidebar {
}



/*

	!SLATES

*/

.slate {
	padding: 0 0.5em;
}


/* Three horizontal boxes */
.slate-threes {
}


/* Four horizontal boxes */
.slate-fours {
}


/*

    !COMMENTS

*/

.comments-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.comments-list li {
    margin: 0 0 1em 0;
    border-bottom: solid 1px #ccc;
}

.comment-body h4 {
    margin: 0;
}

.comment-body {
    font-size: 0.875em;   
}

.comment-author {
    font-weight: bold; 
}

.comment-date {
    font-weight: normal; 
}


/*

    !FLEXIBLE FIELDS

*/

.band,
.large-quote {
    padding: 4em 1em;
    text-align: center;
}

.large-quote p {
    font-size: 1.75em;
    margin-bottom: 0.25em;
}

.band-icon {
    width: 7em;
    height: auto;
}

.block,
.block-a {
    position: relative;
    text-align: center;
    padding-top: 2em;
}


.blocks-three-up .block .image,
.blocks-three-up .block-a .image {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 20em;
    width: 100%;
}

.blocks-three-up .block-has-image {
    padding-bottom: 20em;
}

.blocks-three-up-top-img .block-has-image {
    padding-top: 18em;
}

.blocks-three-up-top-img .block,
.blocks-three-up-top-img .block-a {
    text-align: left;   
}

.blocks-three-up-top-img .block .image,
.blocks-three-up-top-img .block-a .image {
    position: absolute;
    top: 0;
    left: 0;
    height: 18em;
    width: 100%;
}

.block-a a {
    color: #502F92;
    display: block;
    height: 100%;
    text-decoration: none;
    border-bottom: none;
}

.block-a a:hover {
    color: #fff;
    background-color: #502F92;
}

.block-a a:hover h2,
.block-a a:hover h3,
.block-a a:hover h4 {
    color: #fff;
}

.block-a a:hover .short-bar hr {
    border-top: 0.3em solid #fff;
}


.block a ~ a,
.block-a a ~ a {
    color: #5a6267;
    display: inline;
}

.block a.pure-button {
    display: inline-block;
}

.block h3,
.block-white h3,
.block-a h3 {
    text-transform: uppercase;
    margin-top: 0.5em;
    font-weight: 400;
}

.block-wide-left {
    padding: 1em 2em;
    margin-right: 0.5em;
}

.block-wide-left h2 {
    font-size: 2.5em;
    padding: 0 0 0.25em 0;
    margin: 0.75em 0 0.5em 0;
}

.block-narrow-right {
    line-height: 1.3;
    text-align: left;
    padding: 1em;
    margin-left: 0.5em;
}

.block-narrow-right p {
    font-size: 1.5em;
}

.block-1 {
   margin: 0 1em 0 0; 
}

.block-2 {
   margin: 0 0.5em 0 0.5em; 
}

.block-3 {
   margin: 0 0 0 1em; 
}

.block-label {
    display: inline-block;
   font-weight: 700;
   padding: 0.125em 0.75em;
}

.block-white,
.band-white,
.faq-answer {
    background-color: #fff; 
}

.faq-answer {
    display: none;
}

.faq-question {
    padding-left: 3em;
}

.faq h3 {
    margin: 0.25em 0;
}

.faq h4 {
    margin-top: 0;
}

.band-yellow,
.block-yellow {
    color: #165D30;
    background-color: rgba(255, 219, 0, 1.0);
}

.band-green,
.block-green {
    color: #fff;
    background-color: #165D30;
}

.band-green h2,
.block-green h2 {
    color: #fff;
}

.band-yellow h2,
.block-yellwo h2 {
    color: #165D30;
}

.band-green h2 a {
    color: rgba(255, 219, 0, 1.0);
}

.band-mulit-cols a {
    display: block;
    border: none;
    text-decoration: none
}

.faq .block-white {
    margin-bottom: 1.5em;
}



/*


    !GRAVITY FORMS

*/

body .gform_wrapper .gform_body .gform_fields .gfield input[type=text],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=email],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=tel],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=url],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=number],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=password],
body .gform_wrapper .gform_body .gform_fields .gfield textarea,
body .gform_wrapper .gform_body .gform_fields .gfield select,
body .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) {
    color: #444;
    padding: 0.75em;
    font-size: 1.25em;
}

body .gform_wrapper .gf_progressbar_wrapper .gf_progressbar .gf_progressbar_percentage {
    
}

body .gform_wrapper .validation_message,
body .gform_wrapper .validation_error {
    color: rgba(255, 255, 255, 1) !important;
    background-color: rgba(255, 0, 0, 1) !important;
    padding: 10px !important;
}
body .gform_wrapper .validation_error h2 {
    color: rgba(255, 255, 255, 1) !important;
}

body .gform_wrapper .gf_progressbar,
body .gform_wrapper .gf_progressbar:after,
body .gform_wrapper .gf_progressbar .gf_progressbar_percentage {
    border-radius: 0;
    text-shadow: none;
    background: none;
    box-shadow: none;
}

body .gform_wrapper .gf_progressbar {
    background-color: #eee;
    padding: 0;
}

body .gform_wrapper .gf_progressbar .percentbar_blue {
    background-color: #F8CF2C;
    color: #444;
}

body  .gform_wrapper .gsection {
    border-bottom: none;
}


/* Ipad and above  */

@media screen and (min-width: 48em) {

}

/* 768px: iPad  */

@media screen and (max-width: 48em) {

    .wrap {
        width: 100%;
    }
    
    #mission-statement h2 {
        font-size: 2em;
        margin: 0 3%;
    }
    
    .menu-toggle {
        text-align: right;
        display: block;
        margin: 2em 2em 0 0;
    }
        
    .menu-toggle a {
        font-size: 1.5em;
        padding-left: 1.5em;
        color: #fff;
        text-decoration: none;
        border-bottom: none;
        background: url('../img/hamburger.svg') no-repeat;
   }
        
    .menu-toggle a:hover {
        color: #F8CF2C;
   }
        
    #primary-menu,
    #secondary-menu {
        display: none;
    }

    .block-1,
    .block-2,
    .block-3 {
       margin: 0.5em 0; 
    }

    .blocks-three-up-top-img .block .image,
    .blocks-three-up-top-img .block-a .image {
        height: 24em;
    }
    
    .blocks-three-up-top-img .block-has-image {
        padding-top: 24em;
    }

}

