/*

	!COLOURS

   
*/


/*

	!GLOBAL

*/

.wf-loading #sb-site {
  opacity: 0;
  /* -webkit-transform: translateY(-10px);
      -ms-transform: translateY(-10px);
          transform: translateY(-10px); */
}

#loading {
  display: none;
}

.wf-loading #loading {
  display: block;
}

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: "proxima-nova", sans-serif;
    font-style: normal;
    font-weight: 400;
}

body {
	color: rgba(22, 35, 65, 1.0);
	font-size: 1em;
	line-height: 1.4;
	background-color: #EEE;
}

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

#sb-site {
	background-color: rgba(209, 211, 213, 1.0);
}

#site-logo  {
   text-align: center;
}


#site-logo img {
    height: 7em;
    width: auto;
    margin: 0 auto;
}

#site-logo a,
#site-logo a img {
    color: transparent;
	border: none;
}


ul.social-icons {
    list-style: none;
    margin: 1em 0 0 0;
    padding: 0;
}

footer ul.social-icons {
    margin: 0 0 1em 0;
    padding: 0;
}



.social-icons li {
    display: inline-block;
}

.social-icons li a {
    display: block;
    height: 2em;
    width: 2em;
    text-indent: -9999px;
    text-decoration: none;
    border: none;
}

.social-icons li.linkedin a {
  background: url(../img/linkedin.svg) no-repeat center center;
  background-size: cover; }

.social-icons li.twitter a {
  background: url(../img/twitter.svg) no-repeat center center;
  background-size: cover; }



.sb-slidebar {
 	background-color: rgba(209, 211, 213, 1.0);
}

main {
    background-color: #fff;
    padding-bottom: 2em;
}

.inner {
	padding: 1em;
}

.header-outer {
    margin-bottom: -1em;
    margin-bottom: 0;
}

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

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

.small-info-text {
    font-size: 0.875em;
    color: #666;
}

.post-meta {
    margin: 0.5em 0 2em 0;
}

.post-meta-content {
    display: table-cell;
    height: 1em;
    line-height: 1em;
}

.post-meta time {
    vertical-align: middle;
    padding-left: 1.75em;
    background: url(../img/time.svg) no-repeat center left;
}

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);
    background-color: rgba(80, 47, 146, 0.08);
}

iframe {
    width: 100%;
    height: 25em;
}



/*

    !MENUS

*/

    .menu-toggle {
        text-align: right;
        display: none;
        margin: 2em 1em 0 0;
    }
        
    .menu-toggle a {
        font-size: 1.25em;
        font-family: "mrs-eaves", serif;
        font-style: normal;
        font-weight: 400;
        padding-right: 1.75em;
        color: #888;
        text-decoration: none;
        border-bottom: none;
        background: url('../img/hamburger-grey.svg') no-repeat right center;
   }
        
    .menu-toggle a:hover {
        color: #444;
   }

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

.primary-menu-outer {
    padding: 1em;
    background-color: #FFF;
    padding-bottom: 2.5em;
    border-bottom: solid 2px #eee;
}	

.primary-menu {
    font-size: 1.35em;
    line-height: 1;
    margin-top: 4em;
    background-color: transparent;
}

.primary-menu .pure-menu-item a {
    color: rgba(22, 35, 65, 1.0);
    padding: 0.5em 0.5em 0.5em 1.5em;
    margin-bottom: 0.25em;
    font-family: "mrs-eaves", serif;
    font-style: normal;
    font-weight: 400;
    display: block;
    border-bottom: solid 1px #ccc;
}

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

.primary-menu .sub-menu .pure-menu-item a:hover {
    color: #502F92;
}

.wp-block-columns {
    margin: 3.5em 0;
}

.wp-block-columns div:nth-child(2) {
    border-left: solid 1px #eee;
    padding-left: 1em;
    margin-left: 1em;
}

.wp-block-columns.no-margin-bt div:nth-child(2) {
    border: none;
}

.wp-block-columns.no-margin-tp {
    margin-top: 1em; 
}

.wp-block-columns.no-margin-bt {
    margin-bottom: 0; 
}

.wp-block-columns.no-margin-bt .wp-block-image {
    margin-bottom: 0; 
}

/*

	!TYPOGRAPHY

*/


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

h1,
h2,
h3,
h4,
h5,
h6 {
    color: rgba(22, 35, 65, 1.0);
    line-height: 1.3;
	margin: 1.5em 0 0.5em 0;
    font-family: "mrs-eaves", serif;
    font-style: normal;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #502F92;
	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;
    text-align: center;
}

h3 {
	font-size: 1em;
    font-family: "proxima-nova", sans-serif;
    font-style: normal;
    font-weight: 900;
    color: rgba(56, 182, 204, 1.0);
    margin: 0.75em 0 0 0;
    text-transform: none;
    letter-spacing: normal;
}


.band-multi-cols h3 {
    margin-top: 1em;
}

.band-multi-cols a {
	border: none;
    text-decoration: none;
}

h4 {
	font-size: 1.25em;
}

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

.intro {
    font-family: "mrs-eaves", serif;
    font-style: normal;
    font-weight: 400;
	font-size: 1.75em;
	line-height: 1.2;
    margin: 0 1em;
    text-align: center;
    margin: 1em 0 0 0;
}

blockquote {
	font-size: 1em;
    padding: 0;
    margin: 0;
    font-style: normal;
}

blockquote em {
    font-style: normal;
}

.block-quote p {
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.3;
}

p {
	margin: 0 0 .75em 0;
}

.content {
    font-size: 1em;
}

.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 {
}

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

.blocks-two-up {
    padding-bottom: 3em;
    background: url(../img/flourish.png) no-repeat bottom center;
}

#our-clients {
    background: none;
}

.band.band-clients {
    text-align: left;
}

.band-clients h3 {
    color: rgba(56, 182, 204, 1.0);
    font-size: 1.5em;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-family: "mrs-eaves", serif;
    font-style: normal;
    font-weight: 400;
}

.client-table td {
    padding: 0.5em;
}

.client-table {
    display: none;
}

.client-table-name {
    margin-top: 1em;
    border-top: solid 1px #eee;
}

.client-table-name a {
    color: rgba(56, 182, 204, 1.0);
}

.client-text {
    width: 50%;
    vertical-align: bottom;
}

.client-text p {
    margin: 0;
}

.client-stat {
    width: 20%;
    vertical-align: bottom;
    color: #ccc;
}

.stat {
    font-size: 3em;
    font-weight: 900;
}


/*

    !FORMS

*/

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

.pure-form .inline-labels label {
    margin-right: 1em;
    display: inline-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;
    font-size: 1.25em;
    margin: 0.25em 0;
    padding: 0.2em 0.4em 0.2em 0.75em;
    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;
    border-bottom: 1px solid #ccc;
    background-color: #eee;
    box-shadow: none;
    border-radius: 0;
}

.pure-form input[type=checkbox],
.pure-form input[type=radio] {
    margin-right: 0.25em;
}

#mc_embed_signup h3 {
    margin: 0 0 1em 0;
    text-transform: uppercase;
    color: rgba(22, 35, 65, 1.0);
}

#mc_embed_signup input[type="submit"] {
    padding: 0.5em;
    text-transform: uppercase;
    color: rgba(56, 182, 204, 1.0);
    background-color: #fff;
    border: solid 1px rgba(22, 35, 65, 0.4);

}

#mc_embed_signup .button {
  display: grid;
  grid-gap: 2em;
  grid-template-columns: 5fr 2fr;
}

.mc-field-group {
  display: grid;
  grid-gap: 2em;
  grid-template-columns: 2fr 5fr;
}

#mc_embed_signup input[type="text"],
#mc_embed_signup input[type="email"] {
    padding: 0.5em;
    background-color: rgba(255, 2155, 255, 0.3);
    margin: 0.5em 0;
    width: 100%;
}

.mc-field-group label,
.mc-field-group input {
}


/*

	!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-text {
    margin: 0 0 1em 0;
    padding: 0.5em;
    font-size: 0.75em;
    line-height: 1.2;
    background: #eee;
}

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

figure {
    margin: 1em 0;
}

.hero img {
    width: 100%; /* Fluid images for posts, comments, and widgets */
    height: auto;
}

.feature-image {
    margin: 0 0 1.5em 0;
}

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%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.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:hover {
    background-image: none;
}

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


/*

	!PAGINATION
	
*/

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

.page-numbers {
    font-size: 1.5em;
	padding: 0.25em 0.75em;
    margin-right: 0.25em;
    color: #fff;
	background: #502F92;
	border-bottom: none;
}

.page-numbers:hover {
    color: #502F92;
	background-color: rgba(255, 219, 0, 1.0);
}

span.current {
	color: #502F92;
	background-color: rgba(255, 219, 0, 1.0);
}




/*

	!FOOTER

*/

footer {
    margin: 3em 0 2em 0;
}

.footer-box {
    padding: 1.5em;
    border: solid 1px #fff;
}

.footer-box:nth-child(1) {
    margin-right: 1em;
}


.footer-menu {
    list-style: none;
    margin: 1em 0;
    padding; 0;
}

.footer-menu li {
    display: inline-block;
}

.footer-menu li a {
    display: block;
    text-decoration: none;
    border: none;
	color: rgba(22, 35, 65, 1.0);
    font-size: 0.875em;
    margin-right: 1em;
}

footer a {
    text-decoration: none;
    border: none;
	color: rgba(22, 35, 65, 1.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 {
    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;
}

.bx-controls {
    position: absolute;
    bottom: 1em;
    left: 2em;
	z-index: 51;
}

.bx-controls a {
    display: inline-block;
    text-align: center;
    text-indent: -9999px;
    overflow: hidden;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: solid 0.125em #fff;
    background: transparent;
    color: #ccc;
    width: 1em;
    height: 1em;
}

.bx-pager-item {
    display: inline;
    float: none;
    _float: left;
    *float: left;
    margin-right: 0.5em;
}

.bx-pager-item a.active {
    background-color: #fff;
}



/*

    !COMMENTS

*/

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

.comments-list ul {
    list-style: none;
}

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

.comments-list li li {
    border-bottom: none;
}

.comments-list ul.children {
    margin: 0 0 1em 3em;
}

.comment-body h4 {
    margin: 0;
}

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

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

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


/*

    !FLEXIBLE FIELDS

*/

.band {
    padding: 2em 1em;
    text-align: center;
    background-color: #fff;
}

.block,
.block-a {
    position: relative;
    text-align: left;
    font-size: 0.875em;
}


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


.block h3 {
    margin-top: 0.5em;
}

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

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

.block-2 {
   margin: 0 0.5em 3.5em 0.5em; 
    border-left: solid 1px #eee;
}



/*

    !MEDIA QUERIES

*/


/* Large desktop  */

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

    .hero {
        height: 36em;
    }
        
}


 /* Standard desktop  */

@media screen and (min-width: 60em) {
    
   .inline-labels br {
        display: none;
    }
    
}


/* 960px: iPad  */

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

        
    #primary-menu,
    #secondary-menu,
    #footer-menu {
        display: none;
    }
        
    .search-field {
        width: 70%;
    }

}

/* 768px: iPad  */

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

    .wrap {
        width: 100%;
    }
    
     .carousel-summary {
        width: 90%;
        top: 14em;
        left: 1em;
        text-align: left;
    }


     .carousel-content h1 {
        font-size: 2em;
    }

     .carousel-content p {
        padding: 0;
    }

    
    article .inner {
        padding: 1em 1.5em;
    }

    .block-1,
    .block-2,
    .block-3,
    .block-3,
    .block-4,
    .block-5,
    .block-6,
    .block-7,
    .block-8,
    .block-9,
    .block-10,
    .block-11,
    .block-12,
    .block-13,
    .block-14,
    .block-15 {
       margin: 0.5em 0 3em 0; 
    }
    
    .col-left,
    .col-right {
       margin: 0; 
    }
    
    .block-wide-left {
        margin-right: 0;
    }

    .block-narrow-right {
        margin-left: 0;
    }
        
    #donation_amount {
        width: 60%;
    }

}

/* 560px: iPhones and other mobiles */

@media only screen and (max-width: 35em) {
    
    #site-logo img {
        height: 5em;
    }

    img.size-quarters {
        width: 100%;
        height: auto;
        margin-bottom: 1em;
    }
    
    .client-table td {
        width: 100%;
        display: block;
    }
    
    .wp-block-columns div:nth-child(2) {
        border-left: none;
        padding-left: 0;
        margin-left: 0;
    }



}

