/*! HTML5 Boilerplate v4.3.0 | MIT License | https://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

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

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

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

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

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

/*
 * A better looking default horizontal rule
 */

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

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

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

/*
 * Remove default fieldset styles.
 */

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

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/*!
 * Bootstrap-select v1.9.3 (https://silviomoreto.github.io/bootstrap-select)
 *
 * Copyright 2013-2015 bootstrap-select
 * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE)
 */.bootstrap-select{width:220px\9}.bootstrap-select>.dropdown-toggle{width:100%;padding-right:25px;z-index:1}.bootstrap-select>select{position:absolute!important;bottom:0;left:50%;width:.11px!important;height:100%!important;padding:0!important;opacity:0!important;border:none}.bootstrap-select>select.mobile-device{top:0;left:0;display:block!important;width:100%!important;z-index:2}.error .bootstrap-select .dropdown-toggle,.has-error .bootstrap-select .dropdown-toggle{border-color:#b94a48}.bootstrap-select.fit-width{width:auto!important}.bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn){width:220px}.bootstrap-select .dropdown-toggle:focus{outline:thin dotted #333!important;outline:5px auto -webkit-focus-ring-color!important;outline-offset:-2px}.bootstrap-select.form-control{margin-bottom:0;padding:0;border:none}.bootstrap-select.form-control:not([class*=col-]){width:100%}.bootstrap-select.form-control.input-group-btn{z-index:auto}.bootstrap-select.btn-group:not(.input-group-btn),.bootstrap-select.btn-group[class*=col-]{float:none;display:inline-block;margin-left:0}.bootstrap-select.btn-group.dropdown-menu-right,.bootstrap-select.btn-group[class*=col-].dropdown-menu-right,.row .bootstrap-select.btn-group[class*=col-].dropdown-menu-right{float:right}.form-group .bootstrap-select.btn-group,.form-horizontal .bootstrap-select.btn-group,.form-inline .bootstrap-select.btn-group{margin-bottom:0}.form-group-lg .bootstrap-select.btn-group.form-control,.form-group-sm .bootstrap-select.btn-group.form-control{padding:0}.form-inline .bootstrap-select.btn-group .form-control{width:100%}.bootstrap-select.btn-group.disabled,.bootstrap-select.btn-group>.disabled{cursor:not-allowed}.bootstrap-select.btn-group.disabled:focus,.bootstrap-select.btn-group>.disabled:focus{outline:0!important}.bootstrap-select.btn-group.bs-container{position:absolute}.bootstrap-select.btn-group.bs-container .dropdown-menu{z-index:1060}.bootstrap-select.btn-group .dropdown-toggle .filter-option{display:inline-block;overflow:hidden;width:100%;text-align:left}.bootstrap-select.btn-group .dropdown-toggle .caret{position:absolute;top:50%;right:12px;margin-top:-2px;vertical-align:middle}.bootstrap-select.btn-group[class*=col-] .dropdown-toggle{width:100%}.bootstrap-select.btn-group .dropdown-menu{min-width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select.btn-group .dropdown-menu.inner{position:static;float:none;border:0;padding:0;margin:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.bootstrap-select.btn-group .dropdown-menu li{position:relative}.bootstrap-select.btn-group .dropdown-menu li.active small{color:#fff}.bootstrap-select.btn-group .dropdown-menu li.disabled a{cursor:not-allowed}.bootstrap-select.btn-group .dropdown-menu li a{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bootstrap-select.btn-group .dropdown-menu li a.opt{position:relative;padding-left:2.25em}.bootstrap-select.btn-group .dropdown-menu li a span.check-mark{display:none}.bootstrap-select.btn-group .dropdown-menu li a span.text{display:inline-block}.bootstrap-select.btn-group .dropdown-menu li small{padding-left:.5em}.bootstrap-select.btn-group .dropdown-menu .notify{position:absolute;bottom:5px;width:96%;margin:0 2%;min-height:26px;padding:3px 5px;background:#f5f5f5;border:1px solid #e3e3e3;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05);pointer-events:none;opacity:.9;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select.btn-group .no-results{padding:3px;background:#f5f5f5;margin:0 5px;white-space:nowrap}.bootstrap-select.btn-group.fit-width .dropdown-toggle .filter-option{position:static}.bootstrap-select.btn-group.fit-width .dropdown-toggle .caret{position:static;top:auto;margin-top:-1px}.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark{position:absolute;display:inline-block;right:15px;margin-top:5px}.bootstrap-select.btn-group.show-tick .dropdown-menu li a span.text{margin-right:34px}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle{z-index:1061}.bootstrap-select.show-menu-arrow .dropdown-toggle:before{content:'';border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid rgba(204,204,204,.2);position:absolute;bottom:-4px;left:9px;display:none}.bootstrap-select.show-menu-arrow .dropdown-toggle:after{content:'';border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;bottom:-4px;left:10px;display:none}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:before{bottom:auto;top:-3px;border-top:7px solid rgba(204,204,204,.2);border-bottom:0}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:after{bottom:auto;top:-3px;border-top:6px solid #fff;border-bottom:0}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:before{right:12px;left:auto}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:after{right:13px;left:auto}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle:after,.bootstrap-select.show-menu-arrow.open>.dropdown-toggle:before{display:block}.bs-actionsbox,.bs-donebutton,.bs-searchbox{padding:4px 8px}.bs-actionsbox{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-actionsbox .btn-group button{width:50%}.bs-donebutton{float:left;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-donebutton .btn-group button{width:100%}.bs-searchbox+.bs-actionsbox{padding:0 8px 4px}.bs-searchbox .form-control{margin-bottom:0;width:100%;float:none}



/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Core CSS
   ========================================================================== */

    body {
        background: #fff;
        color: #3d3d3d ;
        font-family: 'PT Sans', sans-serif;
        font-size: 14px;
        font-weight: 400;
        -webkit-font-smoothing: antialiased;
        /*background: url(../img/bg.jpg) repeat-x top center;*/
        min-height: 600px;
    }

    a {
        text-decoration: none !important;
        color: #333;
    }

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

    p {
        margin-bottom: 1em;
        line-height: 1.6923em; 
    }

    p:last-child {
        margin-bottom: 0;
    }

    table {
        width: 100%;
    }

    ul,ol {
      padding-left: 1em;
    }

    .container {
        max-width: 100%;
    }

    .clearfix {
        display: block;
        clear: both;
    }

    .clearfix:before,.clearfix:after {
        display: block;
        clear: both;
        content: '';
    }

    .row_pad {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    .row_pad_md {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .row_pad_lg {
        padding-top: 45px;
        padding-bottom: 45px;
    }

    .row_pad_xl {
        padding-top: 90px;
        padding-bottom: 90px;
    }

    .extra_pad {
        padding: 30px 45px;
    }

    .f1 {
      font-family: 'Lato', sans-serif;
    }

    .f2 {
      font-family: 'Lato', sans-serif;
    }

    .c1 {
        color: #000 !important;
    }

    .c2 {
        color: #fff !important;
    }

    .c3 {
        color: #3d3d3d !important;
    }



    .bg1 {
        background: #fff;
        border-color: #f3f3f3;
        color: #3d3d3d;
    }

    .bg2 {
        background: #f3f3f3;
        border-color: #f3f3f3;
        color: #3d3d3d;
    }

    .bg3 {
        background: #222222;
        border-color: #222222;
        color: #fff;
    }

    .bg1 a {
        color: #000;
    }

    .bg2 a {
        color: #000;
    }

    .bg3 a {
        color: #fff;
    }

    .bg1 a:hover {
        text-decoration: underline !important;
    }
    .bg2 a:hover {
        text-decoration: underline !important;
    }
    .bg3 a:hover {
        opacity: 0.8;
    }


    .bg1 h1, .bg1 .h1_sub,.bg1 h2, .bg1 .h2_sub,.bg1 h3, .bg3 .h3_sub,.bg1 h4, .bg1 .h4_sub,.bg1 h5, .bg1 .h5_sub,.bg1 h6, .bg1 .h6_sub {
        color: #222222;
    }

    .bg2 h1, .bg2 .h1_sub,.bg2 h2, .bg2 .h2_sub,.bg2 h3, .bg3 .h3_sub,.bg2 h4, .bg2 .h4_sub,.bg2 h5, .bg2 .h5_sub,.bg2 h6, .bg2 .h6_sub {
        color: #222222;
    }

    .bg3 h1, .bg3 .h1_sub,.bg3 h2, .bg3 .h2_sub,.bg3 h3, .bg3 .h3_sub,.bg3 h4, .bg3 .h4_sub,.bg3 h5, .bg3 .h5_sub,.bg3 h6, .bg3 .h6_sub {
        color: #fff;
    }

    .pannel {
        border-width: 1px;
        border-style: solid;
    }

    .btn {
        -webkit-border-radius: 0;
        border-radius: 0;
        margin:  0;
        text-shadow: transparent  0 0 0 !important;
        font-weight: 700;
        border-width: 2px;
        border-style: solid;
        box-shadow:none !important;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 10px 15px;
        line-height: 21px;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        text-transform: uppercase;
    }

    .btn.btn-default {
      background: #fff;
      border-color: #333;
      color: #333;
    }

    .btn.btn-default:hover {
      background: #333;
      border-color: #dedede;
      color: #fff;
    }

    .btn.btn-lg {
      display: block;
    }

    .btn.btn-primary {
      background: #333;
      border-color: #333;
      color: #fff;
      font-weight: 400;

    }

    .btn.btn-primary:hover {
      background: #f3f3f3;
      border-color: #333;
      color: #333 ;
    }

    .btn:focus {
      background: #E3E3E3 !important;
      border-color: #F2F1F1 !important;
      color: #F2F1F1 !important;
      outline: none !important;
    }

    .btn i {
        opacity: 0.5;
    }

    .bootstrap-select {
      display: block;
      width: 100%;
    }

    .bootstrap-select .btn {
      display: block;
      width: 100%;
      background: #fff;
      border: 2px solid #dbdada;
      -webkit-border-radius: 0px;
      border-radius: 0px;
      color: #555 !important;
      -webkit-transition: all 0.3s ease;
      -moz-transition: all 0.3s ease;
      -ms-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease;
    }

    .bootstrap-select .btn:hover {
      background: #fff !important;
      color: #555 !important;
      border-color: #333 !important;
    }

    .i {
        font-style: italic;
    }

    blockquote {
      color: inherit;
    }

    nav ul {
        display: block;
        padding: 0;
        margin: 0;
    }

    nav ul>li {
        display: block;
        padding: 0;
        margin: 0;
    }

    nav ul>li>a {
        display: block;
    }

    nav.inline ul>li {
        display: inline-block;
    }


    #mob-nav {
        display: none;
    }

    .mobile #mob-nav {
        display: block;
    }

    .mobile #main-menu {
        display: none;
    }

    /* Heading Styles */

    h1,.h1_sub,h2,.h2_sub,h3,.h3_sub,h4,.h4_sub,h5,.h5_sub,h6,.h6_sub {
        margin: 15px 0 15px 0;
        display: block;
        padding: 0;
        font-family: 'Lato', sans-serif;
        border-color:#46c7a6;
    }

    h1:first-child,.h1_sub:first-child,h2:first-child,.h2_sub:first-child,h3:first-child,.h3_sub:first-child,h4:first-child,.h4_sub:first-child,h5:first-child,.h5_sub:first-child,h6:first-child,.h6_sub:first-child {
        margin-top: 0;
    }

    h1,.h1_sub {
        font-size: 20px;        
        font-weight: 600;
    }

    h2, .h2_sub {
        font-size: 28px;
        font-weight: 400;
    }

    h3, .h3_sub {
        font-size: 18px;
        font-weight: 400;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        line-height: 24px;
    }




/* Header */

    #header {

    }

    #header #header_top {
        padding-bottom: 15px;
    }

    #header #contact_details {
        float: right;
        text-align: center;
    }

    #header #contact_details ul > li > a {
        display: block;
        padding: 0 15px;
    }

    #header #contact_details ul > li .fa {
        color: #919191;
    }

    #header #contact_details ul > li:last-child > a {
        padding-right: 0;
    }

    #header #branding {
        display: block;
        float: left;
        text-align: center;
        
    }

    #header #branding > * {
        display: inline-block;
        margin: 0;
        max-width: 120px;
    }

    #header #main-menu {
        padding: 10px 15px;
        line-height: 25px;
        text-align: center;
        text-transform: uppercase;
    }

    #header #main-menu > div > ul > li {
        padding: 0 30px;
        position: relative;
    }

    #header #main-menu > div > ul > li > a {
        display: block;
        line-height: 25px;
    }

    #header #main-menu > div > ul > #home_link {
        float: left;
        padding-left: 0;
    }

    #header #main-menu > div > ul > #search_link {
        float: right;
        padding-right: 0;
    }

    #header #main-menu > div > ul > li > div {
        position: absolute;
        top: 100%;
        padding-top: 10px;
        width: 300px;
        left: -900000px;
    }

    #header #main-menu > div > ul > li.menu-item-has-children > a:after {
        content: '\f107';
        font-size: 12px;
        font-family: FontAwesome;
        padding-left: 5px;
        color: #a7a6a6;
    }

    #header #main-menu > div > ul > li:hover > div {
        display: block;
        left: 0;
        z-index: 999;
    }

    #header #main-menu > div > ul > li > div > ul {
        opacity: 0;
        display: block;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        text-align: left;
        padding: 10px;

    }

    #header #main-menu > div > ul > li:hover > div > ul {
        opacity: 1;
        -webkit-box-shadow: 3px 3px 0 0 rgba(0,0,0,0.1);
box-shadow: 3px 3px 0 0 rgba(0,0,0,0.1);
    }

    #header #main-menu > div > ul > li > div > ul > li {
        display: block;
    }

    #header #main-menu > div > ul > li > div > ul > li > a {
        padding: 5px 0;
        line-height: 20px;
        border-bottom: 1px solid #d0d0d0;
        text-decoration: none !important;
    }

    #header #main-menu > div > ul > li > div > ul > li:last-child > a {
        border-bottom: 0 !important;
    }

    #header #main-menu > div > ul > li > div > ul > li:hover > a {
        font-weight: 900 !important;
    }


    #header #mob-nav {
        display: none;
        padding-top: 45px;
        position: relative;
    }

    .mobile #header #mob-nav {
        display: block;
    }

    #header #mob-nav > div > ul {
        position: absolute;
        top: 45px;
        width: 100%;
        max-width: 600px;
        text-align: left;
        max-height: 0;
        overflow: hidden;
        z-index: 999;
        border: 2px solid transparent;
    }

    #header #mob-nav .control {
        position: absolute;
        top:0;
        left: 0;
        width: 45px;
        height: 45px;
        line-height: 45px;
        text-align: center;
        
        cursor: pointer;
    }

    #header #mob-nav .control:before {
        content: '\f0c9 ';
        font-family: FontAwesome;
    }

    .nav-open #header #mob-nav > div > ul {
        max-height: 10000px;
        border: 2px solid #dedede;
    }

    #header #mob-nav > div > ul > li {
        display: block;
        padding: 0 15px;
        line-height: 25px;
        position: relative;
    }

    #header #mob-nav > div > ul > li a {
        border-bottom: 1px solid #dedede;
        display: block;
        line-height: 25px;
        padding: 10px 0;
    }

    #header #mob-nav > div > ul > li.menu-item-has-children {
        position: relative;
    }

    #header #mob-nav > div > ul > li.menu-item-has-children:after {
        display: block;
        position: absolute;
        right: 15px;
        top: 0;
        width: 45px;
        height: 46px;
        text-align: center;
        line-height: 45px;
        font-size: 16px;
        content: '\f105';
        font-family: FontAwesome;
        background: #ddd;
        border: 2px solid #dedede;
    }

    #header #mob-nav > div > ul > li.menu-item-has-children:hover:after {
        background: #333;
        color: #fff;

    }

    #header #mob-nav > div > ul > li.menu-item-has-children.open:after {
        content: '\f107';
    }

    #header #mob-nav > div > ul > li.menu-item-has-children > a {
        margin-right: 45px;
    }

    #header #mob-nav > div > ul > li.mob-controls a {
        width: 50%;
        text-align: center;
        margin-right: -1px;
        float: left;
        color: #333;
        font-size: 10px;
    }

    #header #mob-nav > div > ul > li.mob-controls a i {
        font-size: 20px;
        margin-right: 5px;
    }

    #header #mob-nav > div > ul > li.mob-controls a:first-child {
        border-right: 1px solid #dedede;
    }

    #header #mob-nav > div > ul > li.mob-controls:after {
        clear: both;
        display: block;
        content: '';
    }

    #header #mob-nav > div > ul > li > ul {
        overflow: hidden;
        max-height: 0;
    }

    #header #mob-nav > div > ul > li.open > ul {
        overflow: hidden;
        max-height: 1000px;
        background: #ECECEC;
    }

    #header #mob-nav > div > ul > li.open > ul > li {
        padding-left: 15px;
    }

/* homepage */ 

#home .banner {
    min-height: 489px;
    background: #333;
    text-align: center;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

#home .banner > div {
    background: rgba(0,0,0,0.35);
    -webkit-transition: all 0.2s ease;
-moz-transition: all 0.2s ease;
-ms-transition: all 0.2s ease;
-o-transition: all 0.2s ease;
transition: all 0.2s ease;
}

#home .banner h2 {
    font-size: 30px;
    color: #fff;
    opacity: 0.7;
    text-transform: uppercase;
    font-size: 400;
    letter-spacing: 0.3em;
    padding:0 45px;
}

#home .banner h2 strong {
    font-size: 90px;
    line-height: 1em;
    display: block;
    font-weight: 400;
    margin-bottom: 15px;
}

#home .banner .support_text {
    max-width: 515px;
    padding: 0 15px;
    margin: 0 auto;
    color: #fff;
    font-family: 'Vollkorn', serif;
    font-size: 18px;
    padding-bottom: 30px;
}

#home .banner .btn {
    display: inline-block;
    padding: 10px 45px;
    line-height: 25px;
    font-size: 16px;
    text-transform: uppercase;
    color: #fff;
    background: transparent;
    border: 2px solid #000;
    font-family: 'PT Sans', sans-serif;
    font-weight: 400;
    letter-spacing: 0.1em;
}

#home .banner .btn:hover {
    background: rgba(255,255,255,0.9);
    color: #000;
}

#home .banner:hover > div {
    background: rgba(0,0,0,0.75);
}

#footer > div {
    padding-left: 45px;
    padding-right: 45px;
    line-height: 15px;
}

#footer #footer_contact_details {
    float: right;
    text-align: right;
}

#footer #footer_contact_details ul > li a {
    padding: 0 0 5px 15px;
    display: block;
}

#footer #footer_menu ul > li {
   
    margin-right: -3px;
    margin-bottom: 5px;
}

#footer #footer_menu ul > li a {
    border-right: 1px solid #fff;
    padding: 0 10px 0 10px;
    text-transform: uppercase;
}

#footer #footer_menu ul > li:last-child a {
    border-right: 0px solid #fff;
}

.fancy_head > * {
    font-size: 20px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 30px;
    text-align: center;
    letter-spacing: 0.1em;

}

.fancy_head > *:after {
    height: 0;
    width: 90px;
    border-top:4px solid #d3d3d4;
    content: '';
    display: block;
    margin: 15px auto 0 auto;
}
.fancy_head img {
	max-width: 400px;
}
.fancy_head h1 {
	margin: 40px auto 0;
}

/*Partners */ 

    #partners ul li {
        display: block;
    }



    #partners ul li a {
        display: block;
        padding: 10px 0;
        border-top: 1px solid #d3d3d4;
        border-bottom: 1px solid #d3d3d4;
        text-transform: uppercase;
        position: relative;
        margin-bottom: -1px;
    }

    #partners ul li a:hover {
        border-top: 1px solid #000;
        border-bottom: 1px solid #000;
        z-index: 999;
        color: #000;
        font-weight: 900;
    }

    #brands .brand {
        text-align: center;
    }

    #brands .brand > div {
        position: relative;
        background: #f3f3f3;
    }

    #brands .brand > div > .logo {
        padding-left: 15px;
        padding-right: 15px;
    }

    #brands .brand > div > .logo > img {
        display: inline-block;
    }

    #brands .brand > div > .overlay {
        position: absolute;
        height: 100%;
        top: 0;
        bottom: 0;
        width: 100%;
        left: 0;
        right: 0;
        background: #222;
        color: #fff;
        opacity: 0;
        -webkit-transition: all 0.1s ease;
        -moz-transition: all 0.1s ease;
        -ms-transition: all 0.1s ease;
        -o-transition: all 0.1s ease;
        transition: all 0.1s ease;
    }

    #brands .brand:hover > div > .overlay {
        opacity: 1;
    }

    #brands .brand > div > .overlay > a > .text {
        padding: 15px;
    }

    #brands .brand > div > .overlay > a {
        display: block;
        color: #fff;
    }

    #brands .brand > div > .overlay > a > .text h3 {
        font-size: 20px;
        text-transform: uppercase;
        font-weight: 400;
    }

    .mfp-bg {
        opacity:1;
    }

    .mfp-title {
        padding-top: 30px;
        text-align: center;
        font-size: 16px;
        padding-right: 0;
        line-height: 1.5em;
    }

    .mfp-title a {
        display: block;
        margin-top: 15px;
        color: #fff;
        font-size: 20px;

    }

/* Contact Page */
    
    #map-canvas {
        min-height: 660px;
    }

    .contact_location {
        padding:0 30px;
    }

    .contact_location > div {
        padding: 30px 0;
    }

    .contact_location span,
    .contact_location address {
        display: block;
        margin-bottom: 15px;
        position: relative;
        padding-left: 30px; 
    }

    .contact_location i.fa {
        position: absolute;
        left: 5px;
        top: 5px;
    }

    .contact_location strong {
        text-transform: uppercase;
    }


    .contact_cta {
        display: inline-block;
        border: 2px solid #000;
        padding: 10px 45px;
        text-transform: uppercase;
        text-align: center;
        font-weight: 400;
        letter-spacing: 0.1em;
        font-size: 20px;
    }

    .contact_cta:hover {
        background: #333;
        border: 2px solid #dedede;
        color: #fff;
    }

    #contact_form input.form-control,
    #contact_form textarea.form-control {
        display: block;
        line-height: 20px;
        border: 2px solid #dedede;
        border-radius: 0px;
    }

    #contact_form input.form-control:hover,
    #contact_form textarea.form-control:hover {
        border: 2px solid #222;
    }

    #contact_form input.form-control:focus,
    #contact_form textarea.form-control:focus {
        border: 2px solid #333;
        background: #f3f3f3;
    }

    #contact_form input.form-control {
        height: 45px;
    }

    #contact_form input.form-control.wpcf7-not-valid,
    #contact_form textarea.form-control.wpcf7-not-valid {
        border:2px solid #EC6E6E;
    }

    #contact_form .wpcf7-not-valid-tip {
        background: #EC6E6E;
        color: #fff;
        padding: 3px 15px;
    }

    .testimonial {
        display: block;
        padding: 45px;
        text-align: center;
        border: 2px solid #dedede;
    }

    .testimonial .quote {
        max-width: 680px;
        margin: 0 auto;
        margin-bottom: 30px;
        position: relative;
        font-family: 'Vollkorn', serif;
        font-size: 18px;
    }

    .testimonial .quote h2,
    .testimonial .quote h3,
    .testimonial .quote h4,
    .testimonial .quote h5,
    .testimonial .quote h6 {
        font-size: 30px;
        text-transform: none;
        font-family: 'Vollkorn', serif;
        line-height: 50px;
    }

    .testimonial .quote > div {
        position: relative;
        min-height:50px;
    }

    .testimonial .quote > div:before {
        content: '\f10d ';
        font-family: FontAwesome;
        font-size: 50px;
        position: absolute;
        top: 0;
        left: -60px;
        width: 50px;
        top: 0%;
        height: 50px;
        color: #dedede;
        line-height: 50px;
    }

    .testimonial .quote > div:after {
        content: '\f10e ';
        font-family: FontAwesome;
        font-size: 50px;
        position: absolute;
        bottom: 0;
        right: -60px;
        width: 50px;
        height: 50px;
        color: #dedede;
        line-height: 50px;

    }

    .testimonial .author {
        text-transform: uppercase;
    }

    #ajs_searchbox {
        opacity: 0;
        max-height: 0;
        overflow: hidden;
        -webkit-transition: all 0.1s ease;
        -moz-transition: all 0.1s ease;
        -ms-transition: all 0.1s ease;
        -o-transition: all 0.1s ease;
        transition: all 0.1s ease;
    }

    #ajs_searchbox > div {
        background: #f3f3f3;
        height: 90px;
        padding: 15px 45px;
    }

    .ajs_search #ajs_searchbox {
        max-height: 90px;
        height: 90px;
        opacity: 1;
    }

    #ajs_searchbox > div  input[type=text] {
        line-height: 60px;
        display: block;
        font-size: 30px;
        font-family: 'Vollkorn', serif;
        height: 60px;
        width: 100%;
        background: none;
        border:0;
        outline: 0 !important;
        padding-right: 60px;
    }

    #ajs_searchbox .searchform {
        position: relative;
    }

    #ajs_searchbox .searchform .fa-search {
        position: absolute;
        top: 0;
        right: 0;
        width: 60px;
        height: 60px;
        line-height: 60px;
        text-align: center;
        font-size: 30px;
        color: #dedede;
    }

    #ajs_searchbox .searchform .fa-search:hover {
        color: #c6c6c6;
    }

    #search_results .search_result {
        
        border-bottom: 2px solid #dedede;
        text-align: center;
        display: block;
    }

/*
    .bootstrap-select.black .btn {
        background: #222;
        color: #fff !important;
        font-weight: 400;
    }
*/


/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

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

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

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

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 1200px) {
    #site_wrap {
        padding: 15px 30px;
    }
}

@media only screen and (min-width: 987px) {
    #contact_form input[type=submit] {
        float: right;
    }
}

@media only screen and (max-width: 1400px) {
    
    #home .banner h2 strong {
        font-size: 60px;
    }

    #header #main-menu > div > ul > li {
        padding: 0 15px;
    }

}

@media screen and (max-width:1199px) {
    #site_wrap {
        padding: 15px;
    }

    #home .banner h2 strong {
        font-size: 50px;
    }
}

@media screen and (max-width:986px) {
    #footer #footer_contact_details,
    #footer_menu {
        float: none;
        width: 100%;
        text-align: center;
    }

    .testimonial .quote > div:before {
        font-size: 50px;
        position: relative;
        left: 0;
        right: 0;
        display: block;
        margin: 0 auto 15px auto;
        height: 50px;
        line-height: 50px;

    }

    .testimonial .quote > div:after {
        font-size: 50px;
        position: relative;
        left: 0;
        right: 0;
        display: block;
        margin: 15px auto 0 auto;
        height: 50px;
        line-height: 50px;

    }

}

@media screen and (max-width:886px) {
    #header #branding {
        width: 100%;
        float: none;
    }

    #header #contact_details {
        width: 100%;
        float: none;
        padding-top: 15px;
    }

    #header #contact_details > ul > li:first-child {
        display: block;
        margin-bottom: 5px;
    }


}

@media only screen and (max-width: 767px) {
    
    #home .banner h2 {
        font-size: 20px;
    }

    #home .banner h2 strong {
        font-size: 40px;
    }

    .contact_location {
        min-height: 0 !important;
    }
}

@media screen and (max-width: 580px) {
    .col-xxs-12 {
        width: 100%;
        float: none;
        clear: both;
    }

    #footer > div {
        padding: 45px 15px;
    }

    .testimonial {
        padding: 15px;
    }

    .extra_pad {
        padding: 15px;
    }

    .container > .extra_pad {
        margin-left: -15px;
        margin-right: -15px;
    }
}

@media only screen and (max-width: 480px) {
    #site_wrap {
        padding: 15px 0;
    }

    #home .banner {
        min-height: 0 !important;
    }

    #home .banner > div {
        padding-top: 45px !important;
        padding-bottom: 45px !important;
    }

    #home .banner h2 {
        font-size: 20px;
        padding: 0 15px;
    }

    #home .banner h2 strong {
        font-size: 30px;
    }

    #home .banner .support_text .btn {
        padding: 10px 15px;
    }

    #home .banner .support_text {
        font-size: 14px;
    }


}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    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;
    }
}

@keyframes fadeIn {
    from { 
        opacity: 0;
        
        }
    to { 
        opacity: 1;
        }
}

@keyframes fadeInPop {
    from { 
        opacity: 0;
        -moz-transform: translateX(0px) translateY(10px);
-webkit-transform: translateX(0px) translateY(10px);
-o-transform: translateX(0px) translateY(10px);
-ms-transform: translateX(0px) translateY(10px);
transform: translateX(0px) translateY(10px);
    }
    to { 
        opacity: 1;
        -moz-transform: translateX(0px) translateY(0px);
-webkit-transform: translateX(0px) translateY(0px);
-o-transform: translateX(0px) translateY(0px);
-ms-transform: translateX(0px) translateY(0px);
transform: translateX(0px) translateY(0px);
    }
}

.js_padmiddle > div{
    opacity: 0;
    animation-name: fadeIn;
    animation-duration: 0.3s;
    -webkit-animation-delay: 0.3s; /* Chrome, Safari, Opera */
    animation-delay: 0.3s;
     -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;
}

#home .banner {
    opacity: 0;
    animation-name: fadeInPop;
    animation-duration: 0.5s;
    -webkit-animation-delay: 0s; /* Chrome, Safari, Opera */
    animation-delay: 0s;
     -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;

}

#branding img {
    max-width: 230px;
}

#home .banner > div{
    opacity: 0;
    animation-name: fadeIn;
    animation-duration: 1s;
    -webkit-animation-delay: 1s; /* Chrome, Safari, Opera */
    animation-delay: 1s;
     -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;
}