/* ==========================================================================
   Fonts
   ========================================================================== */

    @import url('https://fonts.googleapis.com/css?family=Lato');

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

  	body {
  	    background: #fff;
  	    color: #393939;
  	    font-family: 'Lato', sans-serif;
  	    font-size: 13px;
  	    font-weight: 400;
  	    -webkit-font-smoothing: antialiased;
  	    /*background: url(../img/bg.jpg) repeat-x top center;*/
  	}

    #site_wrap {
      overflow: hidden;
    }

    a {
        text-decoration: none !important;
    }

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

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

/* Font Colour Overwerides, use only if really needed */
  	.c1 {
  	    color: #393939 !important;
  	}

  	.c2 {
  	    color: #fff !important;
  	}

  	.c3 {
  	    color: #1d72a9 !important;
  	}

  	.c4 {
  	    color: #967fb5 !important;
  	}

/* Background styles*/

  	.bg1 {
  	    background: #ffffff;
  	    border-color: #cfd0d0;
  	    color: #393939;
  	}

  	.bg2 {
  	    background: #d5d4d4;
  	    border-color: #d5d4d4;
  	    color: #3a3c3f;
  	}

  	.bg3 {
  	    background: #1d72a9;
  	    border-color: #1d72a9;
  	    color: #ffffff;
  	}

  	.bg4 {
  	    background: #6fb3de;
  	    border-color: #6fb3de;
  	    color: #ffffff;
  	}

    .bg1 a {
        color: #1d72a9;
    }

    .bg2 a {
        color: #1d72a9;
    }

    .bg2 p a {
        text-decoration:underline !important;
    }

    .bg3 a {
        color: #fff;
    }

    .bg4 a {
        color: #104d74;
    }

    .bg1 a:hover {
        color: #000;
    }

    .bg2 a:hover {
        color: #222;
    }

    .bg3 a:hover {
        color: #ddd;
    }

    .bg4 a:hover {
        color: #222;
    }


  	.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: #393939;
  	}

  	.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: #393939;
  	}

  	.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: #ffffff;
  	}

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

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

    .btn {
        -webkit-border-radius: 0;
        border-radius: 0;
        margin:  0.5em 0 0.5em 0;
        text-shadow: transparent  0 0 0 !important;
        font-weight: 700;
        text-transform: uppercase;
        background: transparent;
        border: 2px solid #48178a;
        color: #48178a;
    }

    .btn-block {
      margin: 0 !important;
      display: block;
    }

    .btn-lg {
      font-size: 15px;
      padding: 10px 25px;
    }

    .btn i {
        opacity: 0.5;
    }


    .bg3 .btn,
    .bg4 .btn {
        border-color: #fff;
        color: #fff;
    }

    .bg3 .btn:hover,
    .bg4 .btn:hover {
        background: #48178a;
        color: #fff;
    }

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

    #header {
        font-size: 13px;
        line-height: 15px;
        font-family: 'Lato', serif;
        
    }

    #branding h1 {
        margin: 0;
    }

/*    #branding img {
      margin: 15px 0;
    }*/

    #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', serif;
        /*text-transform: uppercase;*/
        font-weight: 700;
    }

    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: 36px;        
        font-weight: 400;
    }

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

    h3, .h3_sub {
        font-size: 18px;
        font-weight: 400;
    }
/* Main Nav */


/* Universal mobile nav */

    #mobile_controls {
        display: none;
        width: 25px;
        height: 25px;
        line-height: 25px;
        text-align: center;
        font-size: 25px;
    }

    .mobile #mobile_controls {
        display: block;
    }

    #mob-nav>div {
        display: none;
        position: absolute;
        width:100%;
        top: 100%;
        left: 0;
        max-width: 980px;
        padding: 10px 0 10px 0;
    }

    #mob-nav>div>ul>li {
        border-bottom: 1px solid #eceff4;
    }

    #mob-nav > div > ul > li > a {
        display: block;
        padding: 10px 15px;
        line-height: 20px;
        font-size: 18px;
    }

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

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

    #mob-nav>div>ul>li.menu-item-has-children:after {
        display: block;
        background: #222;
        width: 40px;
        height: 42px;
        border: 1px solid #eceff4;
        content: '\f078';
        line-height: 40px;
        text-align: center;
        font-family: FontAwesome;
        position: absolute;
        top: -1px;
        right: -1px;
        color: #dbdbdb;
    }

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

    #mob-nav>div>ul>li.menu-item-has-children.open>a {
        border-bottom: 1px solid #eceff4;
    }

    #mob-nav>div>ul li:hover>a {
        background: #dbdbdb !important;
/*        color: #fff !important;*/
    }

    #mob-nav>div>ul>li>ul {
        display: block;
        overflow: hidden;
        max-height: 0;
        -webkit-transition: max-height 0.5s ease;
        -moz-transition: max-height 0.5s ease;
        -ms-transition: max-height 0.5s ease;
        -o-transition: max-height 0.5s ease;
        transition: max-height 0.5s ease;

    }

    #mob-nav>div>ul>li>ul>li a {
        padding: 5px 20px;
        font-size: 16px;
    }

    #mob-nav>div>ul>li.open>ul {
        max-height: 1000px;
    }

    .nav-open #mob-nav>div {
        display: block;
        z-index: 9999;
    }

    #mob-nav>div>ul li>a.view_all:hover {
        color: #222 !important;
    }

/* Slider Global */

    .owl-controls {
        position: absolute;
        top: 100%;
        width: 100%;
    }

    .owl-nav {
        position: absolute;
        bottom: 0px;
        width: 100%;
    }


  	.owl-nav>* {
  	    position: absolute;
  	    width: 60px;
  	    height: 60px;
  	    background: rgba(29,114,169,.8);
  	    bottom: 0;
  	    text-align: center;
  	    line-height: 60px;
  	    font-size: 30px;
  	    color: #fff;
        opacity: 0.9;
  	}

    .owl-nav>.owl-next {
        right: 0px;
    }

    .owl-nav>*:hover {
      opacity: 1;
    }

    .owl-dots {
      text-align: center;
    }
    .owl-dot {
      width: 10px;
      height: 10px;
      border:2px solid #dbdbdb;
      display: inline-block;
      margin: 0 5px;
      -webkit-border-radius: 30px;
      border-radius: 30px;
    }

    .owl-dot:hover {
      background-color:#dbdbdb;

    }

    .owl-dot.active {
      background: #dbdbdb;
      border-color:#dbdbdb;
    }

    #header>#navigation #main-menu li a:hover {
      background-color:#104d74;
      color: #fff;
    }

/* ==========================================================================
   CMS Services
   ========================================================================== */

    #services_slider .service {
        display: block;
        font-size: 13px;
        padding-bottom: 15px;
    }

    #services_slider .service .text {
        padding: 35px 45px 0 45px;
    }

    #services_slider .service .roundal {
        height: 15px;
        margin-top: 35px;
    }

    #services_slider .service .roundal i.fa {
        display: inline-block;
        height: 30px;
        width: 30px;
        text-align: center;
        line-height: 30px;
        font-size: 15px;
        -webkit-border-radius: 30px;
        border-radius: 30px;
    }


    #services_slider .service .image {
        position: relative;
        border:0px;
    }

    #services_slider .service .image:after {
        display: block;
        content: '';
        position: absolute;
        top: 10px;
        bottom: 10px;
        left:10px;
        right: 10px;
        background: rgba(29,114,169,0.8) !important;
        border: rgb(29,114,169) solid 2px;
        opacity: 0;
        -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;
    }

    #services_slider .service:hover .image:after {
        opacity: 1;
    }

    #services_slider {
      margin-top:16px;
    }

    #services_slider h3 {
      color:#145f8f;
      font-size:22px !important;
      font-weight:700 !important;
    }

/* ==========================================================================
   Page
   ========================================================================== */
    .page_cta .row_pad {
        padding-bottom: 30px;
    }

    .page_cta .cta {
        display: block;
        padding: 10px;
        font-size: 34px;
        text-transform: uppercase;
        font-weight: 400;
        background-position: center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_cta .cta>div {
        border: 1px solid rgba(255,255,255,0.7);
        padding: 15px;
    }

    #page_head header {
      padding: 0px;
      background-position: center;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
      min-height: 195px;
    }

    #page_head h1 {
      margin: 0;
    }

    #page_head header>* {
      background-color: rgba(0, 0, 0, 0.2);
    }

    #page_head h1 span {
      font-weight: 400;
      display: block;
    }

    .extra_pad {
      padding: 30px 45px;
    }

/* ==========================================================================
   CMS Content
   ========================================================================== */    
    
    #content h2 {
        font-size: 24px;
        font-weight: 400;
    }

    #content h2 span {
        font-size: 20px;
        display: block;
        font-weight: 500;
    }

    #content h3 {
        font-size: 18px;
        font-weight: 400;
    }

    #content h4 {
      font-size: 18px;
      font-weight: 400;
    }

/*  textarea1*/
    
    .textarea1 section {
      padding: 45px 30px;
      position: relative;
      z-index: 1;
    }

    .textarea1 aside {
      margin-left: -16.66666666%;
    }
/*  textarea2*/
    
    .textarea2 article {
        padding-top: 45px;
        padding-bottom: 45px;
        line-height: 30px;

    }

/*  textarea3 with Gallery */

    #gallery_slider {
        margin-bottom: 15px;
    }

/*  textarea4 with Background Image */

    .textarea4>div>div.pannel {
        display:block;
        padding: 30px;
    }

    .textarea4>div>div.pannel {
        background: url(images/bg.jpg) no-repeat center center; 
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
        /*max-height: 315px;*/
        max-height: 387px;
    }

    .textarea4>div>div.pannel section {
        padding: 30px;
        min-height: 255px;
    }

/* Paralax */

    .textarea_paralax {
      padding: 125px 90px;
      margin-top:16px;
      background-position: center;
      background-attachment: fixed;
        -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
    }

    .textarea_paralax h2, .textarea_paralax h3 {
      margin-bottom:40px;
    }

    .textarea_paralax {
      font-size:15px;
    }

    .textarea-btn {
      padding:13px 35px;
      background-color:#e5e9e3;
      display:inline-block;
      color:#111111 !important;
      margin-top:30px;
      font-weight:700;
    }

    .textarea-btn:hover {
      background-color:#1d72a9;
      color:#fff !important;
    }
    
/* Tables */

    .tables .description {
      margin-bottom: 30px;
    }

    .nb_table {
      font-size: 17px;
      padding-bottom: 30px;
    }

    .nb_table .th {
        border-bottom: inherit;
        margin-bottom: 30px;
    }

    .nb_table .info {
      font-size: 15px;
    }

    .home_content>div>div {
      padding: 30px;
    }

    .home_content>div>div>div>div {
      background: rgba(252, 191, 51, 0.85) !important;
      color: #fff;
    }

    .home_content>div>div>div>div h2 {
      color: #fff;
    }

    .home_content section {
      padding-top: 30px;
      padding-bottom: 30px;
    }

    .home_content .read_more {
      display: inline-block;
      line-height: 15px;
      padding: 15px 45px;
      font-weight: 700;
      text-transform: uppercase;
    }

    .aj_pagination {
      padding-top: 15px;
    }

    .aj_pagination>div {
      display: inline-block;
    }

    .aj_pagination>div>* {
      display: block;
      float: left;
      padding: 10px 0px;
      width: 45px;
      height: 45px;
      line-height: 25px;
      font-size: 18px;
      text-align: center;
      border-width: 1px;
      border-color: inherit;
      border-style: solid;
      vertical-align: middle;
      margin: -1px 0px -1px -1px;
    }

    .aj_pagination>* i {
      vertical-align: middle;
    }

    .aj_pagination a.page-numbers.next,.aj_pagination a.page-numbers.prev {
      background: #f2f4f4;
    }

    .aj_pagination *.page-numbers.current {
      background: #f2f4f4;
    }

    .aj_pagination a:hover {
      background: #222 !important;
      color: #fff !important;
    }

/* ==========================================================================
   CMS Contact Page
   ========================================================================== */

  .contact-details>* {
    display: block;
    padding-left: 30px;
    position: relative;
  }

  .contact-details>*>i.fa {
    display: block;
    position: absolute;
    left: 0;
    width: 15px;
    text-align: center;
  }

  .textarea_contact>div>div.pannel {
    display: block;
    padding: 30px;
  }

  .textarea_contact>div>div.pannel section {
    padding: 30px;
    min-height: 255px;
  }

  #map {
    position: relative;
    background-size:cover;
  }

  #map-canvas {
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    bottom: 0;
  }

  form .btn {
    line-height: 35px;
    padding: 5px 45px;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 600;
  }

  form .btn:hover {
    background: #000 !important;
    color: #fff !important;
  }
    
  .wpcf7-not-valid.form-control {
    border:3px solid #d66d6d;
  }

  span.wpcf7-not-valid-tip {
    background: #d66d6d;
    color: #fff;
    padding: 0 15px;
    line-height: 30px;
  }

  div.wpcf7-validation-errors {
    background: #ffc425;
    border-color: #ffc425;
    line-height: 30px;
    text-align: center;
    margin: 0 0 15px 0;
  }

  #map.click .row {
    pointer-events:none;
  }

  #map .row section {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  }

  #map.click .row section {
    margin-left: 110%;
    margin-right: -110%;
    opacity: 0;
  }


/* ==========================================================================
   Pre-Footer
   ========================================================================== */

/* Pre Footer CTA Banner 1 */

    #pre-footer .cta {
        display: block;
        padding: 0px;
        font-size: 34px;
        margin-top:10px;
        text-transform: none;
        font-weight: 400;
        text-shadow: 3px 3px 2px rgba(0,0,0,.7);
        background-position: center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    #pre-footer .cta img {
      margin: 0 auto;
    }

    #pre-footer .cta span {
      text-decoration: underline;
      font-weight: 700;
    }

    #pre-footer .cta i {
      display: inline-block;
      width: 40px;
      height: 40px;
      line-height: 40px;
      -webkit-border-radius: 40px;
      border-radius: 40px;
      font-size: 20px;
      display: none;

    }

    #pre-footer .cta>div {
        background:rgba(0, 0, 0, 0) !important;
        padding: 60px 15px;
        color: #fff;
    }

    #twitter {
        padding:15px 15px 15px 85px;
        min-height: 60px;
        position: relative;
    }

    #twitter:after {
        position: absolute;
        display: block;
        left: 25px;
        font-size: 45px;
        line-height: 45px;
        height: 45px;
        content: '\f099';
        top: 50%;
        margin-top: -23px;
        font-family: FontAwesome;
        opacity: 0.3;
    }

    #twitter p {
        margin: 0;
    }

    #mailchimp {
      border-left: 0;
      border-right: 0;
      line-height: 15px;
    }

    #mailchimp .title {
      padding:0;
      line-height: 15px;
      margin: 0;
      font-size: 14px;
      text-transform: uppercase;
      font-weight: 700;
    }

    #mailchimp .sign_up {
      position: relative;
      padding:10px 0px 5px;
    }

    #mailchimp .sign_up input[type=email] {
      display: block;
      width: 100%;
      border: 0;
      margin: 0;
      padding: 15px 215px 15px 15px;
      font-style: italic;
      line-height: 15px;
      height: 45px;
    }

    #mailchimp .sign_up input[type=submit] {
      display: block;
      position: absolute;
      top: 10px;
      width: 200px;
      right: 0;
      border: 0;
      padding: 15px 0;
      line-height: 15px;
      font-size: 16px;
      font-weight: 600;
      margin: 0;
      height: 45px;
    }

    #mailchimp .newsletter-consent {
      padding-top:4px;
      color:#555;
      font-weight:400;
    }

    #mailchimp .newsletter-consent input {
      margin-right:6px;
    }

/* ==========================================================================
   Contact Form
   ========================================================================== */
   .form-group {
    margin-bottom: 13px;
   }
   .form-control {
        height: 45px;
        line-height: 25px;
        padding: 10px;
        -webkit-border-radius: 0;
        border-radius: 0;
   }

   .bg3 .form-control {
        background: #fff;
   }

   .js-contact-forms-button {
        background-color:#1d72a9;
   }

   .privacy-consent {
        font-weight:400;
   }

   .privacy-consent input[type=checkbox] {
        margin-right:5px;
   }

   .privacy-consent a {
        text-decoration:underline !important;
   }

/* ==========================================================================
   Footer
   ========================================================================== */
     
    #accred_slider img {
      max-height: 100px !important;
      width: auto !important;
      margin: 0 auto;
    }

    #accred_slider a {
      display: block;
    }

    #footer {
      font-weight: 500;
    }

    #footer address {
      margin-top: 24px;
    }

    #footer #footer-menu a, #footer #copyright a{
        color:#fff;
/*        border-color: #cdc8bf;*/
    }



    #footer #footer-menu a:hover,#footer #copyright a:hover {
        color: #000;
    }

    #footer .social a:hover {
        background: #000;
    }


    #footer input[type="submit"] {
      background: #174988;
    }


/* ==========================================================================
   Slider 2 Overwrite
   ========================================================================== */
  

    #slider_2 .slide h2 {
      background: rgba(72,23,138,0.8) !important;
      max-width: 550px;
      padding: 30px;
      font-size: 54px;
      margin: 0 auto 30px auto;
      font-family: 'Lato', serif;
      font-weight: 700;
      color: #fff;
    }

    #slider_2 .slide .find_out_more {
      background: #967fb5 !important;
      border-color: #967fb5 !important;
      color: #fff;
      font-weight: 700;
    }

    #slider_2 .slide .find_out_more:hover {
      background-color: #000 !important;
      border-color: #000 !important;
      color: #fff !important;
    }



/* ==========================================================================
   Helper classes
   ========================================================================== */

    /*
     * 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) {
    /* Style adjustments for viewports that meet the condition */
}

@media screen and (max-width:986px) {
    #menu-footer {
      margin-bottom: 15px;
    }

    #menu-footer li {
      margin-bottom: 5px;
    }

    #mailchimp .title {
      text-align: center;
    }
}

@media only screen and (max-width: 767px) {

  #slider_2 .slide h2 {
    font-size: 30px;
  }

   #slider_2 .slide h2 span {
    font-size: 20px;
   }

   .textarea_paralax {
      padding: 60px 10px;

    }

    .textarea1 .outer {
        border-width: 1px !important;
        margin-left: 15px;
        margin-right: 15px;
    }

    .textarea1 .outer .inner {
        margin-top: -30px;
        margin-bottom: 15px;
        margin-left: -30px;
        margin-right: -30px;
        padding: 30px;
    }

    .extra_pad {
      padding: 15px 15px;
    }


    .textarea1 .js_padmiddle, .textarea1 .js_sync_heights  {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        min-height: 0 !important;
    }

    .textarea1 aside {
      margin-left: 0 !important;
      text-align: center;
    }

    .textarea1 img {
        max-width: 300px;
        width: 100%;
    }

    #footer input[type=submit] {
        width: 100%;
        text-align: center;
    }

    .page_cta .cta, #pre-footer .cta {
        font-size: 24px;
    }

    .mob_nopad {
        margin:0 -15px;
    }

    .archive-post .image {
      margin-bottom: 30px;
    }

}

@media only screen and (max-width: 480px) {
    .phone a span {
        display: none;
    }

    .phone a:after {
      content: 'Contact Us';
      display: inline-block;
    }

    #header .social li:not(.phone) {
      display: none;
    }

    .col-xxs-12 {
        width: 100%;
        margin-left: 0;
    }

    .hidden-xxs {
        display: none;
    }

    table td, table tr {
        display: block;
        padding-bottom: 5px;
    }

    .textarea_contact>div>div.pannel section {
      margin-top: 400px;
    }

    .textarea4>div>div.pannel {
      padding: 150px 15px 15px 15px;
    }

    #mailchimp .sign_up input[type=text] {
      padding: 15px;
    }

    #mailchimp .sign_up input[type=submit] {
      width: 100%;
      position: relative;
      top: auto;
      left: auto;
      right: auto;
    }

    #mailchimp .sign_up input[type=email] {
      padding-right: 15px;
    }
}

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

/* ==========================================================================
   Animations
   ========================================================================== */


  @keyframes fadeIn {
      0% {opacity: 0;}
      100% {opacity: 1;}
  }

  @keyframes slideIn {
      0% {
        opacity: 0;
        -moz-transform: translateX(0px) translateY(-20px);
        -webkit-transform: translateX(0px) translateY(-20px);
        -o-transform: translateX(0px) translateY(-20px);
        -ms-transform: translateX(0px) translateY(-20px);
        transform: translateX(0px) translateY(-20px);
      }
      100% {
        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);
      }
  }


  body {
    opacity: 0;
    -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;
    animation-name: fadeIn;
    animation-duration: 0.5s;
    -webkit-animation-delay: 0s; /* Chrome, Safari, Opera */
    animation-delay: 0s;
  }



  #hero_slider {
    opacity: 0;
    -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;
    animation-name: fadeIn;
    animation-duration: 0.3s;
    -webkit-animation-delay: 0.5s; /* Chrome, Safari, Opera */
    animation-delay: 0.5s;
  }

  #hero_slider .active .slide a > *,
  #page_head h1,
  #archive_top .h1_sub {
    opacity: 0;
    -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;
    animation-name: fadeIn;
    animation-duration: 0.5s;
    -webkit-animation-delay: 1s; /* Chrome, Safari, Opera */
    animation-delay: 1s;
  }

  #hero_slider .active .slide p {
    opacity: 0;
    -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;
    animation-name: fadeIn;
    animation-duration: 0.5s;
    -webkit-animation-delay: 1.3s; /* Chrome, Safari, Opera */
    animation-delay: 1.3s;
  }

  #hero_slider .active .slide .btn {
    opacity: 0;
    -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;
    animation-name: fadeIn;
    animation-duration: 0.5s;
    -webkit-animation-delay: 1.5s; /* Chrome, Safari, Opera */
    animation-delay: 1.5s;
  }


  #hero_slider .active .slide .btn {
    opacity: 0;
    -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;
    animation-name: fadeIn;
    animation-duration: 0.5s;
    -webkit-animation-delay: 1.5s; /* Chrome, Safari, Opera */
    animation-delay: 1.5s;
  }


/* ==========================================================================
   Custom Fields
   ========================================================================== */

  #after-footer,#after-footer a {
    color: #545457 !important;
    border-color: #545457 !important;
  }

  #slider_1 .slide a {
    background: rgba(255, 255, 255, 0.85);
  }

  #slider_1 .slide h2 {
    font-family: 'Lato', serif;
    font-weight: 700;
  }

  #slider_1 .slide h2 span {
    font-family: 'Lato', serif;
  }

  #footer #footer-menu a, #footer #copyright a {
    color: #fff !important;
    border-color: #fff !important;
  }

  #footer input[type="submit"] {
    background: #48178a;
  }

  #footer .h2_sub {
    font-size:24px;
    margin-bottom:0px;
  }

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

  #footer {
    background: #1d72a9;
  }

  #header>#navigation #main-menu li>div li a {
    color: #000;
  }

  #mob-nav > div > ul > li a {
    color: #000;
  }

  /* NEW FOOTER FORM */
  .new-footer-form {
    display:grid;
    grid-template-columns:1.5fr 2.5fr;
    grid-template-rows:1fr auto;
    grid-column-gap:20px;
    padding:24px 0px;

    display: -ms-grid;
    -ms-grid-columns: 1fr 1vw 1fr;
    -ms-grid-rows:180px 1vw 140px;
  }

  .new-footer-form .details {
    -ms-grid-column:1;
    -ms-grid-row:1;
  }

  .new-footer-form .captcha {
    grid-column-start:1;
    grid-row-start:2;

    -ms-grid-column:1;
    -ms-grid-row:2;
  }

  .new-footer-form .enquiry {
    grid-column-start:2;
    grid-row-start:1;
    grid-row-end:3;
    -ms-grid-column:3;
    -ms-grid-row:1;
    -ms-grid-row-span:2;
  }

  .mobile-form-btn-location .js-contact-forms-button {
    display:block;
    position:relative;
    width:100%;
    top:auto;
    left:auto;
    bottom:auto;
    right:auto;
  }

  .form-textarea-relative-container {
    position:relative;
  }

  @media screen and (max-width: 670px) {

    .new-footer-form {
      display:grid;
      grid-template-columns:1fr;
      grid-template-rows:auto;
      grid-column-gap:20px;
      -ms-grid-columns: 1fr;
      -ms-grid-rows:180px 270px 220px;
    }

    .new-footer-form .captcha {
      grid-column-start:auto;
      grid-row-start:auto;
      margin-top:16px;
      -ms-grid-column:1;
      -ms-grid-row:3;
    }

    .new-footer-form .enquiry {
      grid-column-start:auto;
      grid-row-start:auto;
      -ms-grid-column:1;
      -ms-grid-row:2;
    }

  }

  .video-resp-container {
    position:relative;
    padding-bottom:56.25%;
  }

  .video-resp-container iframe {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
  }