/*
    Theme Name: Telecom Alarms
    Theme URI: http://ctow.co.uk
    Description: Wordpress theme developed by Close To Water
    Version: 1.0
    Author: Benji Huggins
    Tags: CTOW, Close to Water, HTML5, CSS3
*/
/*------------------------------------*\
    MAIN
\*------------------------------------*/
/* global box-sizing */

*, *:after, *:before {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
/* html element 62.5% font-size for REM use */

html {
    font-size: 62.5%;
}
body {
    font: 300 18px/1.4'Georgia,Times', 'Times New Roman', serif;
    font-size: 18px;
    color: #2a2a2a;
    font-family: Georgia, Times, "Times New Roman", serif
}
/* clear */

.clear:before, .clear:after {
    content: ' ';
    display: table;
}
.clear:after {
    clear: both;
}
.clear {
    *zoom: 1;
}
img {
    max-width: 100%;
    vertical-align: bottom;
}
a {
    color: #2a2a2a;
    text-decoration: none;
}
a:hover {
    color: #444;
}
a:focus {
    outline: 0;
}
a:hover, a:active {
    outline: 0;
}
h1 {
    font-family: 'nexa_boldregular';
    text-transform: uppercase;
}
h1, h2, h3, h4, h5 {
    font-weight: 300;
    margin: 0;
    line-height: normal;
}
/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/
/* wrapper */

.wrapper {
    margin-top: 92px;
}
/* header */

.header {
    border-top: 5px solid #282828;
    background-color: #FFF;
    border-bottom: 1px solid #efefef;
    position: fixed;
    width: 100%;
    z-index: 1;
    top: 0;
    background-color: #FFF;
    z-index: 99;
}
/* logo */

.logo {
    height: 92px;
    line-height: 50px;
    padding: 15px 0;
    margin-top: -5px;
    border-top: 5px solid #282828;
}
.home .logo {
    border-top: 5px solid #d72c21;
}
.logo a {
    text-decoration: none !important;
}
.logo-img {
    max-height: 58px;
    display: inline-block;
    margin: 0 15px;
}
.company-name {
    display: inline-block;
    color: #d72c21;
    font-size: 30px;
    text-decoration: none !important;
    margin-left: 10px;
}
/* nav */

.nav {
    position: absolute;
    right: 0;
    margin-left: 330px;
    top: -5px;
    background-color: #FFF;
}
.nav ul {
    list-style: outside none none;
    margin: 0;
    padding: 0;
}
.nav ul li {
    float: left;
    height: 92px;
    padding: 0 18px;
    border-top: 5px solid #282828;
    border-left: 1px solid #efefef;
    font-size: 16px;
    line-height: 87px;
    position: relative;
}
.nav .current-menu-item, .single-case-study .nav .menu-item-29 {
    border-top: 5px solid #d72c21 !important;
    background-color: #EFEFEF;
}
.current-menu-item a .border-hide, .single-case-study .menu-item-29 a .border-hide {
    background-color: #d72c21
}
.border-hide {
    width: 1px;
    height: 5px;
    position: absolute;
    top: -5px;
    left: -1px;
    content: attr(data-before);
    background-color: #282828
}
.current-menu-item .border-hide, .single-case-study .menu-item-29 .border-hide {
    background-color: #d72c21
}
.nav ul li a {
    color: #555555;
    text-decoration: none;
}
/* mobile navigation */

.hamburger {
    position: absolute;
    top: 50%;
    margin-top: -21px;
    right: 0;
    cursor: pointer;
    height: 41px;
    width: 41px;
    background-color: #D72C22;
}
.mobile-nav {
    background-color: #d72c22;
    border-bottom: 5px solid #2a2a2a;
    border-top: 5px solid #2a2a2a;
    display: none;
    position: fixed;
    top: 93px;
    width: 100%;
    z-index: 99;
}
.mobile-nav ul {
    list-style: outside none none;
    margin: 0;
    padding: 0;
}
.mobile-nav ul li {
    padding: 10px 20px;
    font-size: 14px;
    font-family: 'nexa_boldregular';
    text-transform: uppercase;
}
.mobile-nav ul li:first-child {
    padding: 20px 20px 10px;
}
.mobile-nav ul li:last-child {
    padding: 10px 20px 20px;
}
.mobile-nav ul li a {
    color: #FFF;
}
.mobile-nav .current-menu-item, .single-case-study .mobile-nav .menu-item-29 {
    background-color: #2a2a2a;
}
.mobile-nav .current-menu-item a, .single-case-study .mobile-nav .menu-item-29 a {
    color: #D72C22;
}
/* sidebar */

.sidebar {}
/* footer */

.footer {
    height: 90px;
    line-height: 90px;
}
.footer-logo {
    float: left;
    height: 90px;
    line-height: 75px;
}
.copyright {
    float: right;
    height: 90px;
    line-height: 90px;
    color: #303030;
    text-align: right;
    font-size: 16px;
}
/*------------------------------------*\
    PAGES
\*------------------------------------*/
/* HOME PAGE */

.top-box {
    height: 545px;
    width: 100%;
    display: table;
}
.home .top-box {
    height: 630px;
}
.top-content {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    color: #FFF;
}
.top-content h1, .top-content h3 {
    font-size: 68px;
    font-family: 'nexa_boldregular';
    text-transform: uppercase;
}
.top-content h2 {
    font-size: 39px;
    margin: -5px 0 70px;
}
.top-content.smaller-heads h1 {
    font-size: 57px;
}
.top-content.smaller-heads h2 {
    font-size: 32px;
    width: 70%;
    margin: 0 auto 50px;
}
.security .top-content.smaller-heads h2 {
    width: 60%;
}
.top-content h3 {
    font-size: 25px;
    word-spacing: 10px;
    margin: 0 0 80px;
}
.top-button {
    border: 2px solid #FFF;
    padding: 10px 25px;
    display: inline;
    font-size: 24px;
}
.top-button a {
    color: #FFF;
}
.promo-box {
    text-align: center;
    padding: 20px 0 60px;
}
.promo-icon {
    max-width: 55px;
    margin: 0 auto 20px;
}
.promo-box h3 {
    font-size: 22px;
    font-style: italic;
}
.promo-box h1 {
    font-size: 61px;
}
.promo-box h2 {
    font-family: 'nexa_lightregular';
    font-size: 22px;
    text-transform: uppercase;
    margin-top: -15px;
}
.promo-box h2 {
    color: #FFF;
}
.home-about {
    font-size: 18px;
    line-height: 26px;
    margin: 0 auto;
    padding: 30px 0 90px;
    text-align: center;
    width: 65%;
}
.home-about h1 {
    border-bottom: 2px solid #d72c21;
    font-size: 28px;
    color: #555555;
    display: inline-block;
    padding: 0 20px 10px;
    margin-bottom: 15px;
}
.home-about .top-button, .grey-bg .page-content .top-button {
    border: 2px solid #d72c21;
    margin-top: 40px;
    padding: 12px 22px;
    display: inline-block;
    font-size: 20px
}
.home-about .top-button a, .grey-bg .page-content .top-button a {
    color: #d72c21;
}
.success-header {
    font-size: 28px;
    margin: 30px 0;
    text-align: center;
}
.success-tagline h1 {
    font-family: 'nexa_lightregular';
    font-size: 28px;
    text-align: center;
    margin: 40px 0;
}
.success-contain {
    position: relative;
    height: 400px;
    display: table;
    width: 100%;
}
.case-feed .fluidparent:last-child .success-contain {
    padding-bottom: 23px;
}
.success-logo {
    position: relative;
    display: table-cell;
    height: 400px;
    width: 100%;
    background-image: url(/wp-content/uploads/2015/02/big-logo-bg.png);
    background-size: 115px 115px;
    background-position: center center;
    background-repeat: no-repeat;
    vertical-align: middle;
    text-align: center;
    z-index: 3;
}
.success-logo img {
    max-width: 95px;
    max-height: 80px;
}
.half-grey-bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50%;
    background-color: #ECECEC;
}
.accred-block {
    padding: 40px 0;
    text-align: center;
}
.accred-block h1 {
    font-size: 24px;
    padding-bottom: 10px;
    display: inline-block;
    border-bottom: 2px solid #d72c21;
    color: #c1c1c1;
    text-align: center;
}
.accred-logos.pad-right {
    padding-right: 60px;
}
.accred-logos.pad-left {
    padding-left: 60px;
}
.accred-logo {
    position: relative;
    margin: 15px 0 0;
    min-height: 110px;
}
.accred-logo img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    max-height: 110px;
    max-width: 80%;
}
/* ABOUT PAGE */

.about .top-box {
    margin: 0 auto;
    width: 70%;
    height: 545px;
}
.about .top-content h1 {
    font-size: 57px;
}
.about .top-content h2 {
    font-size: 32px;
}
.down-button img {
    opacity: 0.6;
    cursor: pointer;
}
.sub-header {
    width: 100%;
    background-color: #FFF;
    position: relative;
    z-index: 1;
    border-bottom: 1px solid #efefef;
}
#sticky.stick {
    position: fixed;
    top: 93px;
    z-index: 10000;
}
.electrical .sub-header {
    border-bottom: none;
}
.sub-nav ul {
    list-style: outside none none;
    margin: 0;
    padding: 0;
    text-align: center;
}
.sub-nav ul li {
    padding: 20px 25px;
    display: inline-block;
    font-size: 16px;
    color: #555555;
}
.page-content {
    padding: 80px 0;
    text-align: center;
    font-size: 18px;
    line-height: 26px;
}
.page-content.top-page {
    padding: 30px 0;
}
.page-content.alt-pad {
    padding: 57px 0 80px;
}
.page-content h1:first-of-type {
    font-size: 28px;
    padding-bottom: 10px;
    display: inline-block;
}
.white-bg .page-content h1:first-of-type {
    color: #555;
    border-bottom: 2px solid #d72c21;
}
.red-bg .page-content h1:first-of-type, .gradient-bg .page-content h1:first-of-type {
    color: #FFF;
    border-bottom: 2px solid #3a3a3a;
}
.grey-bg .page-content h1:first-of-type {
    color: #555;
    border-bottom: 2px solid #d72c21;
}
.image-bg .page-content h1:first-of-type {
    color: #FFF;
    border-bottom: 2px solid #d72c21;
}
.page-content .content-button {
    margin-top: 40px;
    padding: 12px 22px;
    display: inline-block;
    font-size: 24px;
    cursor: pointer;
}
.image-bg .page-content .content-button {
    color: #d72c21;
    border: 2px solid #d72c21;
}
.red-bg .page-content .content-button, .gradient-bg .page-content .content-button {
    color: #FFF;
    border: 2px solid #fff;
}
.white-bg .page-content .content-button, .grey-bg .page-content .content-button {
    color: #d72c21;
    border: 2px solid #d72c21;
}
.why-promo {
    text-align: center;
}
.why-promo h1:first-of-type {
    display: block;
    border-bottom: none !important;
    font-size: 21px;
    margin-top: 15px;
}
.about .success-contain, .partners .page-content .success-contain {
    display: table;
    height: 300px;
    margin-bottom: 63px;
    width: 100%;
}
.partners .page-content .success-contain {
    height: 165px;
    margin-bottom: 0;
}
.partners .content-pager {
    padding-bottom: 63px;
}
.about .success-logo, .partners .page-content .success-logo {
    height: 300px;
    background-size: 147px 147px;
}
.partners .page-content .success-logo {
    height: 165px;
}
.about .success-logo img, .partners .page-content .success-logo img {
    max-width: 117px;
    max-height: 112px;
}
.partners .page-content .success-logo img {
    max-width: 117px;
    max-height: 75px;
}
.partners .page-content .success-logo img {
    opacity: 0.2;
    transition: opacity .40s ease-in-out;
    -moz-transition: opacity .40s ease-in-out;
    -webkit-transition: opacity .40s ease-in-out;
}
.partners .page-content .success-logo .active img, .partners .page-content .success-logo img:hover {
    opacity: 1;
    transition: opacity .40s ease-in-out;
    -moz-transition: opacity .40s ease-in-out;
    -webkit-transition: opacity .40s ease-in-out;
}
.member-block {
    text-align: center;
}
.member-profile {
    max-width: 240px;
    margin: 0 auto;
}
.member-block h1 {
    border-bottom: none !important;
    font-size: 20px !important;
    padding: 0 !important;
    margin: 30px 0 0;
}
.member-block h2 {
    font-size: 19px !important;
    color: #d72c21;
    margin: 0 0 7px;
    font-style: italic;
}
.member-block a {
    color: #555555;
    text-decoration: underline !important;
}
.policy-contain {
    position: relative;
    text-align: center;
}
.policy-contain .policy-title {
    left: 50%;
    margin-left: -64px;
    margin-top: -10px;
    max-width: 128px;
    position: absolute;
    text-align: center;
    top: 25%;
    width: 100%;
}
a .policy-title {
    color: #FFF;
}
.page-content .policy-contain .content-button {
    margin-top: 20px;
}
/* SECURITY/ELECTRICAL */

.content-icon {
    margin-bottom: 25px;
}
/* PARTNER */

.partner-link {
    margin-top: 30px
}
.partner-link a {
    color: #d72c21;
}
.content-pager {
    text-align: center;
}
/* CASE STUDIES */

.campaign-table {
    position: relative;
    height: 550px;
    /* display: table; */

    width: 100%;
    padding-top: 120px;
}
.campaign-cell {
    position: relative;
    /* display: table-cell; */

    height: 550px;
    width: 100%;
    vertical-align: middle;
    text-align: center;
    z-index: 3;
}
.case-studies .campaign-table {
    height: 450px;
}
.case-studies .campaign-cell {
    height: 450px;
}
.campaign-logo {
    background-image: url("/wp-content/uploads/2015/02/big-logo-bg.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin-bottom: 20px;
    padding: 20px;
    vertical-align: middle;
    width: 100%;
}
.case-studies .campaign-logo {
    margin-bottom: 70px;
}
.campaign-logo .c-logo {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto;
    min-height: 95px;
    width: 95px;
}
.campaign-logo .c-logo img {
    opacity: 0;
}
.case-read {
    border: 2px solid #d72c21;
    font-size: 20px;
    margin: 95px auto 0;
    padding: 10px 30px;
    max-width: 165px;
}
.case-read a {
    color: #d72c21;
}
.case-read.alt-button {
    background-color: #FFF;
}
.single-case-study .campaign-table {
    height: 345px;
}
.single-case-study .campaign-cell {
    height: 345px;
}
.single-case-study .campaign-logo {
    background-size: 145px 145px;
    height: 145px;
    margin-bottom: 0px;
}
.single-case-study .campaign-logo .c-logo {
    height: 145px;
}
.case-study-image {
    opacity: 0.6;
}
.gallery-message {
    margin-top: 10px;
    text-decoration: underline;
    color: #555555;
}
.back-button {
    position: absolute;
    top: 10px;
    right: 12.5%;
    padding: 12px 22px;
    display: inline-block;
    font-size: 20px;
    color: #d72c21;
    border: 2px solid #d72c21;
}
/* CONTACT */

.contact-details {
    font-size: 24px;
    margin: 60px 0 50px;
}
.contact-details p {
    margin: 0 0 10px;
}
.contact-details span {
    color: #d72c21
}
.input-contain {
    padding: 0 12px;
}
.form-contain {
    overflow: auto;
    margin-top: 40px;
}
.cv-form {
    display: none;
}
.form-contain input, .form-contain textarea {
    border: 1px solid #cccccc;
    padding: 18px 20px;
    background-color: rgba(24, 24, 24, 0.8);
    color: #FFF;
    font-size: 20px;
    line-height: 22px;
    width: 100%;
    margin: 0 0 25px;
}
.form-contain textarea {
    height: 145px;
}
.form-contain input[type="file"] {
    font-size: 16px;
    padding: 15px 20px;
}
.form-contain .wpcf7-submit {
    background-color: transparent;
    font-size: 24px;
    font-style: normal;
}
::-webkit-input-placeholder {
    color: #FFF;
    opacity: 1;
    font-style: italic;
}
:-moz-placeholder {
    color: #FFF;
    opacity: 1;
    font-style: italic;
}
::-moz-placeholder {
    color: #FFF;
    opacity: 1;
    font-style: italic;
}
:-ms-input-placeholder {
    color: #FFF;
    opacity: 1;
    font-style: italic;
}
div.wpcf7-response-output {
    border: medium none !important;
}
span.wpcf7-not-valid-tip {
    background-color: #2a2a2a;
    border: 1px solid #d72c21;
    color: #d72c21;
    display: block;
    font-size: 21px;
    padding: 5px;
}
/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (min-width: 765px) {
    .hamburger, .mobile-nav {
        display: none !important;
    }
}
/*------------------------------------*\
    IMAGES
\*------------------------------------*/
/*------------------------------------*\
    TYPOGRAPHY
\*------------------------------------*/

@font-face {
    font-family: 'nexa_boldregular';
    src: url('fonts/nexa_bold_0-webfont-webfont.eot');
    src: url('fonts/nexa_bold_0-webfont-webfont.eot?#iefix') format('embedded-opentype'), url('fonts/nexa_bold_0-webfont-webfont.woff2') format('woff2'), url('fonts/nexa_bold_0-webfont-webfont.woff') format('woff'), url('fonts/nexa_bold_0-webfont-webfont.ttf') format('truetype'), url('fonts/nexa_bold_0-webfont-webfont.svg#nexa_boldregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'nexa_lightregular';
    src: url('fonts/Nexa_Free_Light-webfont.eot');
    src: url('fonts/Nexa_Free_Light-webfont.eot?#iefix') format('embedded-opentype'), url('fonts/Nexa_Free_Light-webfont.woff2') format('woff2'), url('fonts/Nexa_Free_Light-webfont.woff') format('woff'), url('fonts/Nexa_Free_Light-webfont.ttf') format('truetype'), url('fonts/Nexa_Free_Light-webfont.svg#nexa_lightregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
/*------------------------------------*\
    MISC
\*------------------------------------*/

.white-bg {
    background-color: #FFF;
}
.black-bg {
    background-color: #000;
}
.red-bg {
    background-color: #D72C22;
    color: #FFF;
}
.gradient-bg {
    background: rgb(171, 28, 20);
    background: -moz-linear-gradient(top, rgba(171, 28, 20, 1) 0%, rgba(211, 43, 32, 1) 68%, rgba(210, 42, 31, 1) 70%, rgba(215, 44, 34, 1) 79%, rgba(215, 44, 34, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(171, 28, 20, 1)), color-stop(68%, rgba(211, 43, 32, 1)), color-stop(70%, rgba(210, 42, 31, 1)), color-stop(79%, rgba(215, 44, 34, 1)), color-stop(100%, rgba(215, 44, 34, 1)));
    background: -webkit-linear-gradient(top, rgba(171, 28, 20, 1) 0%, rgba(211, 43, 32, 1) 68%, rgba(210, 42, 31, 1) 70%, rgba(215, 44, 34, 1) 79%, rgba(215, 44, 34, 1) 100%);
    background: -o-linear-gradient(top, rgba(171, 28, 20, 1) 0%, rgba(211, 43, 32, 1) 68%, rgba(210, 42, 31, 1) 70%, rgba(215, 44, 34, 1) 79%, rgba(215, 44, 34, 1) 100%);
    background: -ms-linear-gradient(top, rgba(171, 28, 20, 1) 0%, rgba(211, 43, 32, 1) 68%, rgba(210, 42, 31, 1) 70%, rgba(215, 44, 34, 1) 79%, rgba(215, 44, 34, 1) 100%);
    background: linear-gradient(to bottom, rgba(171, 28, 20, 1) 0%, rgba(211, 43, 32, 1) 68%, rgba(210, 42, 31, 1) 70%, rgba(215, 44, 34, 1) 79%, rgba(215, 44, 34, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#ab1c14', endColorstr='#d72c22', GradientType=0);
    color: #FFF;
}
.grey-bg {
    background-color: #EFEFEF
}
.image-bg {
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-position: center center;
    color: #FFF;
}
.red-left-bg, .red-right-bg {
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: -26px;
    bottom: 0;
}
.inner-red {
    background-color: #d72c22;
    height: 26px;
    width: 28%;
}
.red-right-bg .inner-red {
    float: right;
}
.red-left-bg {
    background-image: url("/wp-content/uploads/2015/02/promo-bg-left.png");
    background-position: right top;
    background-size: 640px 276px;
    border-right: 1px solid #fff;
    left: 0;
    width: 50%;
}
.red-right-bg {
    background-image: url("/wp-content/uploads/2015/02/promo-bg-right.png");
    background-position: left top;
    background-size: 640px 276px;
    border-left: 1px solid #fff;
    right: 0;
    width: 50%;
}
.hatch-over {
    background-image: url(/wp-content/uploads/2015/02/hatch-bg.png);
    background-repeat: repeat;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0
}
.red-over {
    background-color: rgba(215, 44, 34, 0.7);
    background-repeat: repeat;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0
}
.red-mask {
    width: 100%;
    background-image: url(/wp-content/uploads/2015/02/top-mask.png);
    background-position: center center;
    height: 25px;
    margin-top: -25px;
}
.down-arrow {
    position: absolute;
    top: -2px;
    left: 50%;
    margin-left: -23px
}
.white-masker, .red-masker, .grey-masker, .gradient-masker {
    width: 100%;
    margin-top: -23px;
    margin-bottom: -23px;
    position: absolute;
}
.mask-bar {
    left: 50%;
    margin-left: -22px;
    position: absolute;
    top: 0px;
    height: 23px;
}
.mask-bar img {
    vertical-align: top;
}
.left-bar, .right-bar {
    position: absolute;
    height: 23px;
    width: 45%;
    width: calc(50% - 22px);
    top: 0;
}
.white-masker .left-bar, .white-masker .right-bar {
    background-color: #FFF;
}
.red-masker .left-bar, .red-masker .right-bar {
    background-color: #D72C22;
}
.gradient-masker .left-bar, .gradient-masker .right-bar {
    background-color: #AB1C14;
}
.grey-masker .left-bar, .grey-masker .right-bar {
    background-color: #ECECEC;
}
.left-bar {
    left: 0;
}
.right-bar {
    right: 0;
}
.anchor-div {
    position: absolute;
    top: -155px;
}
.anchor-div-menu {
    position: absolute;
    top: -93px;
}
:: selection {
    background: #2a2a2a;
    color: #D72C21;
    text-shadow: none;
}
::-webkit-selection {
    background: #2a2a2a;
    color: #D72C21;
    text-shadow: none;
}
::-moz-selection {
    background: #2a2a2a;
    color: #D72C21;
    text-shadow: none;
}
/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
    margin: 5px 20px 20px 0;
}
.aligncenter, div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}
.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}
.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}
a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}
a img.alignnone {
    margin: 5px 20px 20px 0;
}
a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.wp-caption {
    background: #FFF;
    border: 1px solid #F0F0F0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center;
}
.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}
.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}
.wp-caption .wp-caption-text, .gallery-caption {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}
.sticky {} .bypostauthor {}
/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
    * {
        background: transparent !important;
        color: #000 !important;
        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)")";
    }
    .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;
    }
    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;
    }
}
/*------------------------------------*\
    Fluid Containers
\*------------------------------------*/

.fluidparent {
    position: relative;
    width: auto;
    height: auto;
}
.inlineparent {
    position: relative;
    width: auto;
    height: auto;
    font-size: 0px;
    letter-spacing: 0px;
    word-spacing: 0px;
    text-align: center;
}
.fluidparent:after, .inlineparent:after {
    clear: both;
    content: "";
    display: block;
}
.fluidcontent {
    position: relative;
    max-width: 1280px;
    margin: 0 auto;
    width: 95%;
    z-index: 1;
}
.fluidbox {
    position: relative;
    float: left;
    height: auto;
}
.inlinebox {
    position: relative;
    display: inline-block;
    height: auto;
}
.centrebox {
    position: relative;
    margin: 0 auto;
    height: auto;
}
.eighth {
    width: 12.5%;
}
.sixth-alt {
    width: 15.66666666666667%;
}
.sixth {
    width: 16.66666666666667%;
}
.fifth {
    width: 20%;
}
.quarter {
    width: 25%;
}
.quarter-alt {
    width: 24%;
}
.third {
    width: 33.33333333333333%;
}
.half {
    width: 50%;
}
.twothird {
    width: 66.66666666666667%;
}
.threequarter {
    width: 75%;
}
.5sixth {
    width: 83.333333333333%;
}
.full {
    width: 100%;
}
.seventy {
    width: 70%;
}
.thirty {
    width: 30%;
}
.eighty {
    width: 80%;
}
.ninety {
    width: 90%;
}
.grid-margins .third:nth-child(3n+1) .grid-marg {
    margin: 40px 33px 95px 0;
}
.grid-margins .third:nth-child(3n+2) .grid-marg {
    margin: 40px 16.5px 95px;
}
.grid-margins .third:nth-child(3n+3) .grid-marg {
    margin: 40px 0 95px 33px;
}
.grid-margins .third:nth-child(3n+1) .grid-marg.accred-logo {
    margin: 30px 13px 0 0;
}
.grid-margins .third:nth-child(3n+2) .grid-marg.accred-logo {
    margin: 30px 6.5px 0;
}
.grid-margins .third:nth-child(3n+3) .grid-marg.accred-logo {
    margin: 30px 0 0 13px;
}
.grid-margins .third:nth-child(3n+1) .member-block.grid-marg {
    margin: 20px 13px 50px 0;
}
.grid-margins .third:nth-child(3n+2) .member-block.grid-marg {
    margin: 20px 6.5px 50px;
}
.grid-margins .third:nth-child(3n+3) .member-block.grid-marg {
    margin: 20px 0 50px 13px;
}
.grid-margins .third:nth-child(3n+1) {
    clear: both;
    content: "";
    display: block;
}
.grid-margins .quarter:nth-child(4n+4) {
    padding: 40px 0 30px 13px;
}
.grid-margins .quarter:nth-child(4n+2), .grid-margins .quarter:nth-child(4n+3) {
    padding: 40px 6.5px 30px;
}
.grid-margins .quarter:nth-child(4n+1) {
    padding: 40px 13px 30px 0;
}
/* .grid-margins .quarter:nth-child(4n+3) {
    clear: both;
    content: "";
    display: block;
} */

.grid-margins .half:nth-child(even) .grid-marg {
    margin: 0 0 20px 10px;
}
.grid-margins .half:nth-child(odd) .grid-marg {
    margin: 0 10px 20px 0;
}
.grid-margins .half:nth-child(odd) {
    clear: both;
    content: "";
    display: block;
}
.sqre-container {
    position: relative;
    width: 100%;
}
.sqre-dummy {
    padding-top: 90%;
}
.sqre-content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    font: 0/0 a;
    overflow: hidden;
}
.sqre-content .sqre-centre {
    display: inline-block;
    vertical-align: middle;
    height: 100%;
}
.sqre-content img {
    vertical-align: middle;
    display: inline-block !important;
    max-width: 60%;
    margin: 0 auto;
    max-height: 100%;
    min-width: 0;
}
/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (max-width: 1110px) {
    .red-left-bg, .red-right-bg {
        display: none;
    }
    .promo-box {
        padding: 40px 0 60px;
    }
    .promo-box.right-border {
        border-right: 1px solid #FFF
    }
    .promo-box.left-border {
        border-left: 1px solid #FFF
    }
}
@media only screen and (max-width: 1110px) {
    .logo-img {
        max-height: 45px;
    }
    .nav {
        margin-left: 264px;
    }
}
@media only screen and (max-width: 1030px) {
    .nav ul li {
        font-size: 15px;
        padding: 0 10px;
    }
    .member-block {
        font-size: 15px;
    }
    .campaign-table {
        padding-top: 50px;
    }
}
@media only screen and (max-width: 890px) {
    .logo-img {
        max-height: 38px;
    }
    .logo {
        padding: 11px 0 15px;
    }
    .nav {
        margin-left: 230px;
    }
    /* HOME */

    .home .top-box {
        height: 550px;
    }
    .top-content h1, .top-content.smaller-heads h1 {
        font-size: 53px;
        line-height: 63px;
    }
    .about .top-content h1 {
        font-size: 53px;
        line-height: 53px;
    }
    .top-content h2, .about .top-content h2, .top-content.smaller-heads h2 {
        font-size: 30px;
        margin: -5px auto 20px;
    }
    .top-content h3 {
        font-size: 20px;
        margin: 0 0 30px;
    }
    .promo-box h1 {
        font-size: 45px;
    }
    .promo-box h2 {
        font-size: 19px;
        margin-top: -10px;
    }
    .success-tagline h1 {
        font-size: 18px;
        margin: 30px 0;
    }
}
@media only screen and (max-width: 850px) {
    .nav {
        top: 50%;
        margin-top: -17px
    }
    .nav ul li {
        font-size: 12px;
        height: 35px;
        line-height: 31px;
        border-bottom: 1px solid #efefef;
    }
    .nav ul li:last-child {
        border-right: 1px solid #efefef;
    }
    .page-content .policy-contain .content-button {
        font-size: 15px;
        padding: 12px 18px;
    }
    .policy-contain .policy-title {
        font-size: 16px;
    }
}
@media only screen and (max-width: 765px) {
    /* Tablet widths */

    .tab-full {
        width: 100%;
    }
    .tab-half {
        width: 50%;
    }
    .tab-third {
        width: 32.33333333333333%;
    }
    .inlinebox.tab-half {
        width: 49%;
    }
    .nav {
        display: none;
    }
    .logo {
        padding: 15px 0;
    }
    .logo-img {
        max-height: 53px;
    }
    .footer {
        height: auto;
    }
    .copyright {
        float: none;
        height: auto;
        line-height: 16px;
        padding: 31px 0 0;
    }
    body {
        color: #2a2a2a;
        font: 300 17px/1.4 Georgia, Times, "Times New Roman", serif;
    }
    .mask-bar {
        top: 0px;
    }
    /* HOME */

    .home-about {
        width: 100%;
    }
    .home-about h1 {
        font-size: 19px;
    }
    .accred-block h1 {
        font-size: 17px;
    }
    .accred-logos.pad-right {
        padding-right: 10px;
    }
    .accred-logos.pad-left {
        padding-left: 10px;
    }
    .campaign-table {
        padding-top: 120px;
    }
    /* ABOUT */

    .about .top-box {
        height: 445px;
        width: 90%;
    }
    .content-pager {
        padding-bottom: 40px;
    }
    .about .success-contain {
        display: table;
        height: 150px;
        margin-bottom: 40px;
        width: 100%;
    }
    .partners .page-content .success-contain {
        height: 150px;
        margin: 20px 0;
    }
    .about .success-logo, .partners .page-content .success-logo {
        height: 150px;
    }
    .member-block h1 {
        font-size: 17px !important;
        margin: 20px 0 0;
    }
    .member-block h2 {
        font-size: 15px !important;
        margin: 0;
    }
    .page-content .policy-contain .content-button {
        display: block;
    }
}
@media only screen and (max-width: 600px) {
    .phab-full {
        width: 100%;
    }
    .inlinebox.phab-full {
        width: 100%;
    }
    .phab-half {
        width: 50%;
    }
    .in-phab-half {
        width: 49%;
    }
    .phab-ninety {
        width: 90%;
    }
    /* Home */

    .home .top-box {
        height: 450px;
    }
    .top-content h1, .about .top-content h1, .top-content.smaller-heads h1 {
        font-size: 45px;
        line-height: 46px;
    }
    .top-content h2, .about .top-content h2, .top-content.smaller-heads h2 {
        font-size: 22px;
        margin: 0 auto 20px;
    }
    .top-content h3 {
        font-size: 17px;
        margin: 0 0 30px;
        word-spacing: 5px;
    }
    .top-button {
        font-size: 18px;
    }
    .promo-box {
        padding: 50px 0 40px;
    }
    .promo-box.right-border {
        border-right: none;
        padding: 40px 0 40px;
    }
    .promo-box.left-border {
        border-left: none;
        padding: 40px 0 80px;
        border-top: 2px solid #fff
    }
    .success-contain, .success-logo {
        height: 250px;
    }
    .success-tagline h1 {
        font-size: 18px;
        margin: 15px 0;
    }
    .grid-margins .phab-half:nth-child(odd) .grid-marg.accred-logo {
        margin: 30px 13px 0 0;
    }
    .grid-margins .phab-half:nth-child(even) .grid-marg.accred-logo {
        margin: 30px 0 0 13px;
    }
    .grid-margins .third:nth-child(3n+1) {
        clear: none;
        display: inline;
    }
    .grid-margins .third:nth-child(odd) .member-block.grid-marg {
        margin: 20px 13px 20px 0;
    }
    .grid-margins .third:nth-child(even) .member-block.grid-marg {
        margin: 20px 0 20px 13px;
    }
    .grid-margins .third.phab-full:nth-child(3n+1) .grid-marg, .grid-margins .third.phab-full:nth-child(3n+2) .grid-marg, .grid-margins .third.phab-full:nth-child(3n+3) .grid-marg {
        margin: 20px 0 60px 0;
    }
    /* ABout */

    .about .top-box {
        height: 400px;
        width: 100%;
    }
    .down-button img {
        max-width: 50px;
    }
    .sub-header {
        display: none;
    }
    .down-button {
        display: none;
    }
    .back-button {
        border: 2px solid #d72c21;
        color: #d72c21;
        display: inline-block;
        font-size: 13px;
        padding: 5px 20px;
        position: absolute;
        right: 0;
        top: 0;
    }
    .contact-details {
        font-size: 20px;
        margin: 35px 0;
    }
    .form-contain input, .form-contain textarea {
        font-size: 18px;
        line-height: 18px;
        margin: 0 0 20px;
        padding: 15px 20px;
    }
    .security .top-content.smaller-heads h2 {
        width: 90%;
    }
    .security .top-box, .electrical .top-box {
        height: 445px;
    }
    .content-icon img {
        max-width: 100px;
    }
}
@media only screen and (max-width: 480px) {
    .mob-full {
        width: 100%;
    }
    .inlinebox.mob-full {
        width: 100%;
    }
    .hide-mob {
        display: none;
    }
    .mask-bar {
        top: 0;
    }
    .grid-margins .phab-half:nth-child(odd) .grid-marg.accred-logo, .grid-margins .phab-half:nth-child(even) .grid-marg.accred-logo {
        margin: 30px 0 0;
    }
    .grid-margins .quarter.phab-half:nth-child(4n+2), .grid-margins .quarter.phab-half:nth-child(4n+1), .grid-margins .quarter:nth-child(4n+4), .grid-margins .quarter.phab-half:nth-child(4n+3) {
        padding: 20px 0 20px 0;
    }
    .grid-margins .third:nth-child(odd) .member-block.grid-marg, .grid-margins .third:nth-child(even) .member-block.grid-marg {
        margin: 20px 0;
    }
    .footer-logo {
        width: 100%;
    }
    .copyright {
        font-size: 12px;
        height: auto;
        line-height: 18px;
        margin: 10px 0;
        text-align: center;
        padding: 5px 0 0;
    }
    .logo-img {
        max-height: 90px;
        max-width: 345px;
    }
    .logo {
        overflow: hidden;
        width: 82px;
        padding: 12px 0 15px;
    }
    .half-grey-bg {
        display: none;
    }
    .home .top-box {
        height: 350px;
    }
    .security .top-box, .electrical .top-box {
        height: 280px;
    }
    .home .top-content h1 {
        font-size: 33px;
        line-height: 34px;
    }
    .home .top-content h2 {
        font-size: 18px;
        margin: 10px auto 20px;
    }
    .top-content h1, .about .top-content h1, .top-content.smaller-heads h1 {
        font-size: 20px;
        line-height: 30px;
    }
    .top-content h2, .about .top-content h2, .top-content.smaller-heads h2 {
        font-size: 16px;
        margin: 10px auto 20px;
        width: 100%;
    }
    .top-content h3 {
        font-size: 12px;
        margin: 0 0 20px;
    }
    .top-button {
        font-size: 14px;
        padding: 5px 25px;
    }
    .accred-block {
        padding: 40px 0 0;
    }
    .accred-block.last-block {
        padding: 40px 0;
    }
    .about .top-box {
        height: 260px;
    }
    .page-content {
        font-size: 15px;
        padding: 60px 0;
        text-align: center;
    }
    .grid-margins .quarter:nth-child(4n+2), .grid-margins .quarter:nth-child(4n+3) {
        padding: 30px 6.5px 40px;
    }
    .about .grid-margins .quarter:nth-child(4n+1), .about .grid-margins .quarter:nth-child(4n+2), .about .grid-margins .quarter:nth-child(4n+3), .about .grid-margins .quarter:nth-child(4n+4) {
        padding: 20px 0 20px 0;
    }
    .about .grid-margins .quarter:last-child {
        padding: 20px 0 50px 0;
    }
    .contact-details {
        font-size: 16px;
        margin: 30px 0 20px;
    }
    .contact-details p {
        margin: 0 0 5px;
    }
    .input-contain {
        padding: 0;
    }
    .form-contain input, .form-contain textarea {
        font-size: 16px;
        line-height: 16px;
        margin: 0 0 15px;
        padding: 12px 15px;
    }
    .accred-logo {
        min-height: 67px;
    }
    .accred-logo img {
        max-height: 75px;
        max-width: 50%;
    }
    .footer-logo {
        float: none;
        height: auto;
        text-align: center;
        line-height: 65px;
    }
    .footer-logo img {
        max-height: 45px;
    }
    .alt-about-pad {
        padding: 40px 0;
    }
    .security .page-content .content-button, .electrical .page-content .content-button {
        font-size: 16px;
        margin-top: 20px;
        padding: 8px 12px;
    }
    .security .top-content.smaller-heads h2 {
        width: 100%;
    }
    .promo-icon {
        max-width: 40px;
    }
    .form-contain .wpcf7-submit {
        font-size: 18px;
    }
    .map-contain {
        max-height: 300px;
    }
    .campaign-table {
        padding: 120px 5% 0;
    }
}
