/* 
Theme Name: Vanilla
Author: James Shakespeare
Author URI: http://jshakespeare.com 
Version: 1.0 
Description: A bare-bones starting theme based on Initializr. Uses child loops atatched to pages specified in page.php. Based on a 940px layout with media queries available for 748px, mobile landscape (450px) and portrait (300px).
*/ 

/* =============================================================================
   Initializr Styles
   ========================================================================== */
   
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio[controls], canvas, video { display: inline-block; *display: inline; *zoom: 1; }
html { font-size: 100%; overflow-y: scroll; -webkit-overflow-scrolling: touch; -webkit-tap-highlight-color: rgba(0,0,0,0); -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; font-size: 13px; line-height: 1.231; min-width:300px; }
body, button, input, select, textarea { font-family: sans-serif; color: #222; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; margin: 0; padding: 0; }
img { border: 0; -ms-interpolation-mode: bicubic; }
svg:not(:root) {    overflow: hidden;}
figure { margin: 0; }
form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
legend { border: 0; *margin-left: -7px; padding: 0; }
label { cursor: pointer; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }
table { border-collapse: collapse; border-spacing: 0; }

/* =============================================================================
   Primary styles
   Author: 
   ========================================================================== */

/* -------------------- FONTS -------------------- */


/* -------------------- ELEMENT DEFAULTS -------------------- */

body{
  font-family: 'Open Sans', sans-serif;
  font-size: 100%;
  background: #fff;
  color: #000;
}

footer {background:#6b6b6b; color:#fff; padding:20px 0;}

header {padding:20px 0;}
p{  line-height: 1.6rem; margin: 0 0 10px 0;  }
a, a:visited{   color: #000; text-decoration: underline; }
header h1 {float:left;}

header strong {float:right; font-size:1.2rem; line-height:1.8rem; padding-top:10px; }
.section {padding:20px 0;}
.section {
    padding: 20px;
    margin: 20px 0;
}
.wrapper {
     background: #b5d8f1;
 
}
.wrapper:nth-child(even){
  background:#efefef;
}
.wrapper.lead-container  {background:none; }
.section img {width:300px; max-width:100%;}
.lead-container  h4 {color: #588bad; font-size:1.6rem;}
p.cta {margin-top:20px; font-size:1.5rem;}
.banner h2 {padding: 20px;}
.banner h2 br {display: none}

.col-left {width:49%; float:left;}
.col-right {width:49%; float:left;}

/* headings */

h1, h2, h3, h4, h5{  font-weight: normal; margin: 0; color: #2b002d; }
h1{ font-size: 1.8rem;   }
h2{ font-size: 1.6rem; }
h3{ font-size: 1.7rem; padding: 0px 0 15px;}
h4{ font-size: 1.4rem;     padding: 10px 0 15px;}
header i {padding:10px;}
.section ul { padding:0 0 0 20px;}
.banner { height:600px;width:100%; /*padding-bottom:  56.25%;  */position:relative; color:#fff; display:table;}
.banner h2 {color:#fff; font-size:2.4rem;}
.banner:after {content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;}
.banner > div { background: rgba(0,0,0,0.1);color:#fff; display:table-cell; vertical-align: middle; text-align: center; height:100%;}
.banner > div .container {max-width:740px}
.banner > div .container  p {font-size:1rem;}
.section li {padding-bottom:8px;}
.section ul {margin:0;}
/* -------------------- WIDTHS -------------------- */

header, section.s1, .container, #body-wrapper{  width:100%; max-width: 1140px; clear: both; margin: 0 auto; }
.container {padding:0 20px; box-sizing: border-box;}
h4{ font-size: 1.2em; }
h5{ font-size: 1em;   }

/* -------------------- WIDTHS -------------------- */

section.s2{  width: 460px; }
section.s3{  width: 300px;}
section.s4{  width: 220px;} 

/* -------------------- LAYOUT -------------------- */

section{   float: left; margin: 0 0 0 30px; }
.wrapper{  width: 100%; clear: both; }
section:first-child{ margin-left: 0;  }

/* header */

header nav li.current_page_item a, header nav li a:hover{    color: #f00;   }
div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {background:#f7e700;}
div.wpcf7-mail-sent-ok {background: #398f14;}

/* -------------------- CLASSES -------------------- */

img.alignright {
    float: right;
}

.left{   float: left; }
.right{   float: right; }
.clear{    clear: both; }
.center{   text-align: center; }

/* typo */

.large{  font-size: 1.4em; line-height: 1em;   }
.italic{  font-style: italic; }
.meta{   font-size: .8em; }

/* buttons - for unifying styles across button-like <a>, <button>, <input type="submit"> and <input type="reset"> */

a.btn, button, input[type=submit], input[type=reset]{ padding: 8px 16px; color: #000; background: #fff; text-decoration: none; position: relative; margin: 5px 20px 10px 0; line-height: 1.1em; display: inline-block; border: none;  }
input.wpcf7-text {
    padding: 4px;
    border: none;
}
/* -------------------- MEDIA QUERIES -------------------- */

/* 748px  */
@media all and (min-width: 749px) and (max-width: 940px) { 

  section.s2, section.s3, section.s4{  width: 364px; }
  .container.white{ padding: 0; margin: 20px 0; background: transparent; }
  
  img{   max-width: 100%; }
  
}

/* Mobile Landscape */
@media all and (min-width: 480px) and (max-width: 748px) { 
    
  section{   margin: 0 !important; }
  section{  margin-bottom: 20px !important; }
  .container.white{ padding: 0; margin: 20px 0; background: transparent; }
    
  img{   max-width: 100%; }
.col-left, .col-right{width:100%; float:none;}
  .col-right {padding-top:40px;}

}

/* Mobile Portrait */
@media all and (min-width: 0px) and (max-width: 479px) { 
  .section img {float: none;
    margin: 20px 0;}
header h1 {font-size:1.4rem;}
.banner h2 br {display: block}
.banner {width:100%; height:auto;}
.banner h2  {font-size:1.6rem;}
.banner > div .container p {font-size:.75rem;}
header strong {float:left;}
  section{   margin: 0 !important; }
  section{  margin-bottom: 20px !important; }
  .container.white{ padding: 0; margin: 20px 0; background: transparent; }
  .col-left, .col-right{width:100%; float:none;}
  .col-right {padding-top:40px;}
  img{   max-width: 100%; }
  
}

/* -------------------- PSEUDO -------------------- */

/* selection colours */

::-moz-selection { background: #b5d8f1; color: #fff; text-shadow: none; }
::selection { background: #b5d8f1; color: #fff; text-shadow: none; }


/* =============================================================================
   Non-semantic helper classes
   Please define your styles before this section.
   ========================================================================== */

.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
.ir br { display: none; }
.hidden { display: none; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

/* =============================================================================
   Print styles.
   Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */
 
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: sanbeiji.com/archives/953 */
  a, a:visited { color: #444 !important; text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3{ page-break-after: avoid; }
}
