/*! normalize.css v1.1.3 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}html,button,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.67em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}blockquote{margin:1em 40px}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;_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:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ul,nav ol{list-style:none;list-style-image:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure{margin:0}form{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal;*margin-left:-7px}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 1em;
    line-height: 1.8;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
img,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}
.hidden {
    display: none !important;
    visibility: hidden;
}
.clearfix:before,
.clearfix:after,
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.clearfix:after,
.cf:after {
    clear: both;
}
.clearfix,
.cf {
    *zoom: 1;
}

/* ==========================================================================
   Core styles
   ========================================================================== */

html {
  box-sizing: border-box;
}

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

body {
    font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: .75em;
    line-height: 1.8;
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    background:#eee;
}
a{
    color: #025099
}

/* ==========================================================================
   IE
   ========================================================================== */

html.lt-ie9 i{
    display: none;
}

/* ==========================================================================
    lightbox styles
   ========================================================================== */

body:after{content:url(../img/close.png) url(../img/loading.gif) url(../img/prev.png) url(../img/next.png);display:none}.lightboxOverlay{position:absolute;top:0;left:0;z-index:9999;background-color:#000;filter:alpha(Opacity=80);opacity:.8;display:none}.lightbox{position:absolute;left:0;width:100%;z-index:10000;text-align:center;line-height:0;font-weight:400}.lightbox .lb-image{display:block;height:auto;max-width:inherit}.lightbox a img{border:none}.lb-outerContainer{position:relative;background-color:#fff;width:250px;height:250px;margin:0 auto}.lb-outerContainer:after{content:"";display:table;clear:both}.lb-container{padding:4px}.lb-loader{position:absolute;top:43%;left:0;height:25%;width:100%;text-align:center;line-height:0}.lb-cancel{display:block;width:32px;height:32px;margin:0 auto;background:url(../img/loading.gif) no-repeat}.lb-nav{position:absolute;top:0;left:0;height:100%;width:100%;z-index:10}.lb-container>.nav{left:0}.lb-nav a{outline:0;background-image:url(data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==)}.lb-next,.lb-prev{height:100%;cursor:pointer;display:block}.lb-nav a.lb-prev{width:34%;left:0;float:left;background:url(../img/prev.png) left 48% no-repeat;filter:alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-prev:hover{filter:alpha(Opacity=100);opacity:1}.lb-nav a.lb-next{width:64%;right:0;float:right;background:url(../img/next.png) right 48% no-repeat;filter:alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-next:hover{filter:alpha(Opacity=100);opacity:1}.lb-dataContainer{margin:0 auto;padding-top:5px;width:100%;-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px}.lb-dataContainer:after{content:"";display:table;clear:both}.lb-data{padding:0 4px;color:#ccc}.lb-data .lb-details{width:85%;float:left;text-align:left;line-height:1.1em}.lb-data .lb-caption{font-size:13px;font-weight:700;line-height:1em}.lb-data .lb-number{display:block;clear:left;padding-bottom:1em;font-size:12px;color:#999}.lb-data .lb-close{display:block;float:right;width:30px;height:30px;background:url(../img/close.png) top right no-repeat;text-align:right;outline:0;filter:alpha(Opacity=70);opacity:.7;-webkit-transition:opacity .2s;-moz-transition:opacity .2s;-o-transition:opacity .2s;transition:opacity .2s}.lb-data .lb-close:hover{cursor:pointer;filter:alpha(Opacity=100);opacity:1}

/* ==========================================================================
   columns n junk
   ========================================================================== */

.container{
    max-width: 1280px;
    margin: 0 auto;
    background:#fff;
}
.col-left, .col-right{
    position: relative;
    padding-bottom: 2%;
}
body.contact .col-left{
    padding-bottom: 0;
}
.col-right{
padding: 2% 5%;
}
.col-left .wrap{
    padding: 0 5%;
}
.col-left .wrap.wide{
    padding: 0 2%;
}
/* ==========================================================================
   headings and whatever
   ========================================================================== */

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6{
    font-weight: 300;
}
.h2{
    font-size: 1.5em;
}
.h3{
    font-size: 1.25em;
}

/* ==========================================================================
   little helpers / modules
   ========================================================================== */

.hor-list{
    display: block;
    width: 100%;
    text-align: left;
}
.hor-list li{
    display: inline-block;
    zoom:1;
}
html.lt-ie8 .hor-list li{
  display:inline;
}
.strong{
    font-weight: bold;
}
.italic{
    font-style: italic;
}
.red-col{
 color:#b00808
}
.blue-col{
    color: #025099;
}
.red-bg{
 background-color:#b00808
}
.blue-bg{
    background-color: #025099
}
.fa-li{
    line-height: 1.5!important;
}
/*
.videoWrapper {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 25px;
    height: 0;
}
.videoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
*/

.videoWrapper iframe {
    width: 100%;
    height: 220px;
    position: relative;
}



/* ==========================================================================
   buttons
   ========================================================================== */

.button{
    font-family: 'Open Sans', sans-serif;
    position: relative;
    padding: 1.5em;
    line-height: 1;
    border-radius: 3px;
    background: #025099;
    border:0;
    margin: 1em 0;
    color: #fff;
    font-size: 1em;
    text-transform: uppercase;
    display: inline-block;
    text-decoration: none;
}

.button.alt{
    background: #b00808;
}
.button:active, .button:focus{
    top: 1px;
    outline: none;
}
.button i{
    position: absolute;
    right: 1em;
    top: 35%;
    opacity: 0;
}

/* ==========================================================================
   sidr
   ========================================================================== */

.sidr {
    display: none;
    position: absolute;
    position: fixed;
    top: 0;
    height: 100%;
    z-index: 999999;
    width: 260px;
    overflow-x: none;
    overflow-y: auto;
    font-size: 1.5em;
    background: #eee;
}
.sidr.right {
    left: auto;
    right: -260px;
}
.sidr ul {
    display: block;
    padding: 0;
    margin: 0;
}
.sidr ul li {
    display: block;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #ddd;
}
.sidr ul li a{
    padding: 1em;
    border-left:.25em solid #eee;
    display: block;
    text-decoration: none;
    border-bottom: 0;
}
.sidr ul li.sidr-class-active a{
    border-left-color: #025099;
}

/* ==========================================================================
   sidebar
   ========================================================================== */

.sidebar{
    border-top: 1px solid #eee;
}
.sidebar h3{
    margin-bottom: 0;
}
.sidebar a{
    color: inherit;
    text-decoration: none;
}

/* ==========================================================================
   forms + inputs
   ========================================================================== */

input[type="text"], input[type="email"], input[type="tel"], select, textarea{
    width: 100%;
    border:0;
    background:none;
    border:1px solid #ddd;
    border-radius: 3px;
    padding: .5em;
    margin-bottom: 1em;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, textarea:focus{
    border-color: #025099;
    outline: none;
}

/* ==========================================================================
   alerts + messages
   ========================================================================== */

   .cf_alert{
    display: block;
    width: 100%;
    padding: .5em .5em .5em 3em;
    position: relative;
    background: #eee;
    font-style: italic;
    margin-bottom: 1em;
    display: none;
   }
   .cf_alert:before{
    position: absolute;
    height: 100%;
    left: 1em;
    top: 0;
    line-height: 2.75em;
    font-style: normal;
    font-family: fontAwesome;
   }
   .cf_alert.cf_error:before, .cf_alert.cf_hp:before{
    content: '\f00d';
    color: crimson;
   }
   .cf_alert.cf_success:before{
    content: '\f00c';
    color: limegreen;
   }

/* ==========================================================================
   main header
   ========================================================================== */

#main-header{
    position: relative;
}
#main-header .banner-img{
    width: 100%;
    height: auto;
}
#logo{
    position: absolute;
    top: 1em;
    left: 1em;
    z-index: 5;
    max-width: 25%;
    height: auto;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
    -moz-box-shadow:    0px 0px 10px 0px rgba(0, 0, 0, 0.25);
    box-shadow:         0px 0px 10px 0px rgba(0, 0, 0, 0.25);
    max-width: 8em;
    height: auto;
}

.title{
    display: none;
}
/* menu toggle */

#menu-toggle span{
    display: none;
}
html.lt-ie8 span{
    display: block;
}
#menu-toggle{
    color: #fff;
    position: absolute;
    top: .25em;
    right: .25em;
    background: rgba(0,0,0,0.35);
    font-size: 2em;
    padding: .35em;
    cursor:pointer;
    text-decoration: none;
    transition:transform .25s ease;
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5);
    line-height: 1;
}
body.sidr-open #menu-toggle{
     -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);   
}
/* main nav */

#main-nav{
    display: none;
}

/* ==========================================================================
   main footer
   ========================================================================== */

/* testimonials */

#testimonials{
    background: url(../img/testimonials-bg.jpg) center center no-repeat;
    background-size: cover;
    padding: 8%;
    color: #fff;
}
#testimonials > div{
    margin: 0 auto;
    padding-left: 4em;
    position: relative;
}
#testimonials > div:before{
    font-family: fontAwesome;
    content: '\f10d';
    position: absolute;
    top: -.15em;
    left: 0;
    color:#fff;
    font-size: 2.5em;
}
#testimonials .h2{
    display: block;
}
#testimonials span{
    font-style: italic;
}

/* footer navigation */

#main-footer nav{
    padding: 2em;
}
#main-footer nav ul{
    text-align: center;
    padding: 0;
}
#main-footer nav ul li{
    margin: 0 .4em;
}
#main-footer nav ul li a{
    color: inherit;
    text-decoration: none;
    font-size: 1em;
}

/* footer contact */

#main-footer nav ul.footer-contact i{
    font-size: 2em;
}

/* ==========================================================================
   opening times
   ========================================================================== */

.opening-times dt,
.opening-times dd{
    margin: 0;
    padding: 0;
    display: block;
    float: left;
    width: 70%;
    padding: .5em;
}
.opening-times dd{
    width: 30%;
}
.opening-times .row{
    background: #f5f5f5; 
}

/* ==========================================================================
   homepage specific
   ========================================================================== */

.signup{
    background-color: #e02727;
    color: #fff;
    padding: 2% 5%;
    background-image: url(../img/signup-bg-mobile.jpg);
    background-position: 0px 0px;
    background-repeat: no-repeat;
    background-size: 100%;
    padding-top: 33%;
}

.signup .h3{
    display: block;
}

/* ==========================================================================
   contact specific
   ========================================================================== */

#map{
    width: 100%;
    height: 22em;
    margin-top: 2em;
}

/* ==========================================================================
   articles specific
   ========================================================================== */



/* ==========================================================================
   gallery ul
   ========================================================================== */

.gallery{
    padding: 0;
    margin: 1em 0;
    list-style-type: none;
}
.gallery li{
    margin-bottom: 2%;
    width: 100%;
    position: relative;
    display: block;
}
.gallery li a{
    width: 100%;
    padding: 1em;
    background: #000;
    background: rgba(0,0,0,0.5);
    color: #fff;
    display: block;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    font-size: .75em;
    transition:all .2s ease;
    padding: 2em;
}
.gallery img{
    width: 100%;
    height: auto;
}
.gallery li .img{
    width: 100%;
    background: darkorange;
    height: 15em;
}
.gallery i{
    display: none;
}
/* ==========================================================================
   twoup list
   ========================================================================== */

.two-list{
    display: block;
    width: auto;
    padding: 0;
    margin: 1em 0;
}
.two-list li{
    display: inline-block;
    width: 100%;
}


/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 480px) {

.videoWrapper iframe {
    height: 340px;
}


/* gallery columns */

    .gallery li{
        float: left;
        margin-right: 2%;
        margin-bottom: 2%;
        width: 48%;
    }
    .gallery li:nth-child(2n){
        margin-right: 0;
    }

/* twoup list */

    .two-list{
        display: block;

        padding: 0;
        margin: 1em 0;
    }
    .two-list li{
        display: inline-block;
        width: 48%;
    }

}

@media only screen and (min-width: 640px) {

/* ==========================================================================
   grids and columns
   ========================================================================== */

    .col-left{
        float: left;
        width: 70%;
        font-size: 1.25em;
        border-right:1px solid #eee;
    }
    .col-left .wrap{
        padding: 0 15%;
    }
    .col-left .wrap.wide{
        padding: 0 5%;
    }
    .col-left, .col-right{
    position: relative;
    padding-bottom: 5%;
}

.title{
    position: absolute;
    top: 0;
    left: 0;
    padding-left: 7em;
    color: #fff;
    display: block;
    font-size: 1.5em;
    padding-top: 12%;
    z-index: 10;
}
.title h1, .title h2{
    font-weight: bold;
    margin-bottom: 0;
    line-height: 1;
}


body.contact .col-left{
    padding-bottom: 0;
}
    .col-right{
        float: left;
        width: 30%;
    }
    .col30{
        width: 35%;
    }
    #menu-toggle{
        display: none
    }
    #main-nav{
        width: 100%;
        background: #111;
        background: url(../img/ie-black-25.png) 0px 0px repeat;
        background: rgba(0,0,0,0.15);
        position: absolute;
        bottom: 0;
        left: 0;
        color: #fff;
        display: block;
        font-size: 1.25em;
        padding: 0;
        margin: 0;
        padding: 0 9%;
        z-index: 9999;
    }
    #main-nav ul{
        margin: 0;
        padding: 0;
    }
    #main-nav ul li a{
        display: block;
        padding: 1.25em .75em;
        color: inherit;
        text-decoration: none;
        opacity: .5;
    }
    #main-nav ul li a:hover, #main-nav ul li.active a{
        opacity: 1;
    }
    #main-nav i{
        display: none;
    }
    .sidebar{
        border-top: 0;
    }
    #logo{
        max-width: 140px;
    }

/* buttons! */

    .button{
    padding: 1em;
    font-size: .85em;
}

/* testimonials */

    #testimonials > div{
        max-width: 930px;
        padding-left: 8em;
    }
    #testimonials > div:before{
        font-family: fontAwesome;
        content: '\f10d';
        font-size: 4em;
    }
    #testimonials .h2{
        display: block;
    }

/* footer navigation */

    #main-footer nav ul{
        text-align: left;
        padding: 0;
        padding: 0 1em;
        width: auto;
    }
    #main-footer nav ul li{
        margin-right: .5em;
    }
    #main-footer nav ul li a{
        font-size: .85em;
    }
    #main-footer a:hover{
        text-decoration: underline;
    }
    #main-footer nav ul.footer-nav{
        float: left;
    }
    #main-footer nav ul.footer-contact{
        float: right;
    }

/* gallery columns */

    .gallery li{
        width: 32%;
    }
    .gallery li:nth-child(2n){
        margin-right: 2%;
    }
    .gallery li:nth-child(3n){
        margin-right: 0;
}

/* signup */

.signup{
    background-color: #e02727;
    color: #fff;
    padding: 2% 5%;
    background-image: url(../img/signup-bg.jpg);
    background-position: 0px 0px;
    background-repeat: no-repeat;
    background-size: contain;
}
.signup .col30{
    float: right;
}

/* articles */

.article-list{
    padding-left: 0;
    list-style-type: none;
}
.article-list li{
    border-bottom: 1px solid #eee;
}
.article-list li:last-child{
    border-bottom: 0;
}

.article-list a{
    text-decoration: none;
    color: inherit;
    display: inline-block;
    padding: 1em 0;
    position: relative;
}
.article-list a:after{
    font-family: fontAwesome;
    content: '\f054';
    position: absolute;
    right: -2em;
    color: #bbb;
    top:1em;
    opacity: 1;
}



}

@media only screen and (min-width: 768px) {

    .videoWrapper iframe {
    height: 500px;
}

    .h2{
        font-size: 2em;
    }
    .h3{
        font-size: 1.5em;
    }

/* gallery */

.gallery li img{
    max-width: 100%;
    height: auto;
}

}

@media only screen and (min-width: 1024px) {
    body{
        font-size: 1em;
    }
    a, .button, input[type="submit"], .button i{
        transition: background .25s ease, opacity .25s ease, color .25s ease, padding .25s ease;
    }
    input{
        transition: border-color .25s ease;
    }
    #main-nav i{
        margin-right: .5em;
        display: inline;
    }
    .button:hover{
        padding-right: 3em;
    }
    html.lt-ie9 .button:hover{
        padding-right: 1em;
    }
    .button:hover i{
        opacity: 1;
    }
    .gallery .overlay{
    top: 0;
    height: 100%;
    display: block;
    padding: 2em;
    opacity: 0;
    transition: opacity .25s ease;
    bottom: 0;
    left: 0;
    padding: .5em;
    width: 100%;
    display: block;
    background: rgba(0,0,0,0.75);
    position: absolute;
    z-index: 999;
    color: #fff;
    }
    .gallery .overlay > div{
    height: 100%;
    width: 100%;
    display: table;
    transition: height .25s ease;
    }
    .gallery .overlay a{
        display: table-cell;
    vertical-align: middle;
    width: 100%;
    color: inherit;
    text-align: center;
    }
    .gallery li:hover .overlay{
        opacity: 1;
    }
    .gallery{
        margin: 2em 0;
    }
.gallery i{
    display: block;
    text-align: center;
}

.article-list a:after{
    transition:all .25s ease;
    right: -1em;
    top:1em;
    opacity: 0;
}
.article-list a:hover:after{
    opacity: 1;
    right: -2em;
}


}

@media only screen and (min-width: 1680px) {

 .container{
    max-width: 1440px;
    margin: 0 auto;
    background:#fff;
}


}
