@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700|Roboto+Mono:300,400,500,700|Roboto:100,300,400,500,700');

* {
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    color: #2E2A25;
}

::-moz-selection { color: #FFFFFF; background: #CF0A2C; }
::selection { color: #FFFFFF; background: #CF0A2C; }

@font-face {
    font-family: 'Glyphter';
    src: url('/fonts/Glyphter.eot');
    src: url('/fonts/Glyphter.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Glyphter.woff') format('woff'),
        url('/fonts/Glyphter.ttf') format('truetype'),
        url('/fonts/Glyphter.svg#Glyphter') format('svg');
    font-weight: normal;
    font-style: normal;
}

.icon-01-circle-arrow:before{content:'\0041';}
.icon-02-down-arrow:before{content:'\0042';}
.icon-03-down-triangle:before{content:'\0043';}
.icon-04-menu:before{content:'\0044';}
.icon-05-cancel:before{content:'\0045';}
.icon-06-up-arrow:before{content:'\0046';}
.icon-07-internet:before{content:'\0047';}
.icon-08-telephone:before{content:'\0048';}
.icon-09-email:before{content:'\0049';}
.icon-10-mandown:before{content:'\004a';}
.icon-11-checkin:before{content:'\004b';}
.icon-12-tick:before{content:'\004c';}
.icon-13-cross:before{content:'\004d';}
.icon-14-install:before{content:'\004e';}
.icon-15-24-hour:before{content:'\004f';}
.icon-16-money:before{content:'\0050';}
.icon-17-burglar:before{content:'\0051';}

body {
    max-width: 100%;
    margin: 0 auto;
    font-size: 18px;
}

h1, h2, h3 {
    color: #CF0A2C;
}

h4 {
    color: #6E6259;
    font-weight: 300;
}

h1 {
    font-size: 2.5em;
}

h2 {
    font-size: 1.75em;
}

h3 {
    font-size: 1.25em;
}
.h3 {
    font-size: 1.25em;
}

a {
    color: #CF0A2C;
    text-decoration: none;
    cursor: pointer;
}

a strong{
    color: inherit;
}

a:hover {
    color: #2E2A25;
}

strong {
    font-weight: 400;
}

ul {
    text-align:left;
}

ol li
{
    /* Bullet color */
    color: #CF0A2C;
    font-weight:700;
}

ul li {
    /* Bullet color */
    color: #CF0A2C;
    list-style-type: disc;
}

.redText {
    color: #CF0A2C;
}

.greyText {
    color: #2E2A25;
}

ul.greyText li, ol.greyText li {
    color: #2E2A25;
}

.smallText {
    font-size: 0.7em;
}

hr {
    width: 100%;
    display: block;
    margin: 50px auto;
    color: #D9D8D6;
    border-width: 0;
    border-top-width: 2px;
    border-style: solid;
    grid-column: full!important;
    -ms-grid-column: 1!important;
    -ms-grid-column-span: 3!important;
}

.hr-5 {
    margin: 5px auto;
}

.hr-10 {
    margin: 10px auto;
}

footer {
    margin-top: 100px;
}

.textIconWhite {
    font-family: 'Glyphter';    
    color: #fff;
}

.textIconGrey {
    font-family: 'Glyphter';    
    color: #4f5858;
}

.textIcon {
    font-family: 'Glyphter';    
    color: #2E2A25;
}

.textIcon:hover {
    color: #CF0A2C;
}

.globalMessage {
    border-radius: 0;
    margin-top: 0px;
    padding: 20px;
}

#globalSuccess {
    background-color: #FFFFFF;
    border: 2px solid #FFFFFF;
    color: #76881D;
}

#globalError {
    background-color: #FFFFFF;
    border: 2px solid #FFFFFF;
    color: #CF0A2C;
}


#mainContainer {
    padding: 0 20px 0px;
    margin: 0 auto;
    display: grid;
    display: -ms-grid;
    grid-template-columns: 
    [full-start] minmax(1em, 1fr) 
    [main-start] minmax(0, 1380px) [main-end]
    minmax(1em, 1fr) [full-end];
        -ms-grid-columns: minmax(1em, 1fr) minmax(0, 1380px) minmax(1em, 1fr);
}

#mainContainer > *:nth-child(1) {
    -ms-grid-row: 1;
    grid-row: 1;
}

#mainContainer > *:nth-child(2) {
    -ms-grid-row: 2;
    grid-row: 2;
}

#mainContainer > *:nth-child(3) {
    -ms-grid-row: 3;
    grid-row: 3;
}

#mainContainer > *:nth-child(4) {
    -ms-grid-row: 4;
    grid-row: 4;
}

#mainContainer > *:nth-child(5) {
    -ms-grid-row: 5;
    grid-row: 5;
}

#mainContainer > *:nth-child(6) {
    -ms-grid-row: 6;
    grid-row: 6;
}

#mainContainer > *:nth-child(7) {
    -ms-grid-row: 7;
    grid-row: 7;
}

#mainContainer > *:nth-child(8) {
    -ms-grid-row: 8;
    grid-row: 8;
}

#mainContainer > *:nth-child(9) {
    -ms-grid-row: 9;
    grid-row: 9;
}

#mainContainer > *:nth-child(10) {
    -ms-grid-row: 10;
    grid-row: 10;
}

#mainContainer > *:nth-child(11) {
    -ms-grid-row: 11;
    grid-row: 11;
}

#mainContainer > *:nth-child(12) {
    -ms-grid-row: 12;
    grid-row: 12;
}

#mainContainer > *:nth-child(13) {
    -ms-grid-row: 13;
    grid-row: 13;
}

#mainContainer > *:nth-child(14) {
    -ms-grid-row: 14;
    grid-row: 14;
}

#mainContainer > *:nth-child(15) {
    -ms-grid-row: 15;
    grid-row: 15;
}

#mainContainer > * {
    grid-column: main;
    -ms-grid-column: 2;
}

.articlePicture {
    display: block;
    overflow: hidden;    
    display: flex; 
    align-items: flex-start;
    justify-content: center;
    /* background: #ACA39A; */
}

/* .sectorPicture {
    height: 130px!important;
} */

.pageTitle {
    color: #6E6259;
    font-size: 2.5em;
    text-align: left;
    padding-bottom: 10px;
    border-bottom: 2px solid #d9d8d6;
    width: fit-content;
}

.pageTitleCenter {
    color: #6E6259;
    font-size: 2.5em;
    text-align: center;
}

a img {
    -webkit-transition:transform ease 0.2s, opacity ease 0.2s;
    transition:transform ease 0.2s, opacity ease 0.2s;
}

a img:hover {
    opacity: 0.8;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.webgrey {
    font-weight: 300;
    color: #4f5858;
}

.webgreybold {
    font-weight: 500;
    color: #4f5858;
}

.webwhite {
    font-weight: 300;
    color: #ffffff;
}

.webwhitebold {
    font-weight: 500;
    color: #ffffff;
}

.webred {
    font-weight: 300;
    color: #CF0A2C;
}

.webredbold {
    font-weight: 500;
    color: #CF0A2C;
}


@media screen and (max-width: 980px) {
    .pageTitle {
        font-size: 1.6em;
    }

    .notResponsive {
        display:none!important;
    }
}
  
#xmas2025Header::after {
    background-color: rgba(0, 0, 0, 0.55);
}

#xmas2025Header .sectorTitleContent,
#xmas2025Header .sectorTitleContent * {
    color: #fff !important;
}

#xmas2025Header .sectorTitleContent img {
    max-width: 600px;
    width: 100%;
    height: auto;
}

#xmas2025Header .sectorButtonLight {
    color: #fff !important;
    border-color: #fff;
}
/* @media screen and (min-width: 600px) {
    a {
       pointer-events: none; 
    }
} */

@media screen and (max-width: 400px) {
    h1 {
        font-size: 2em;
    }
    
    h2 {
        font-size: 1.5em;
    }
    
    h3 {
        font-size: 1em;
    }
}

/* -------------
    Header items 
    ------------*/

#mainHeader {
    display: grid;
    display: -ms-grid;
    grid-template-columns: 
    [full-start] minmax(1em, 1fr) 
    [main-start] minmax(0, 1380px) [main-end]
    minmax(1em, 1fr) [full-end];
        -ms-grid-columns: minmax(1em, 1fr) minmax(0, 1380px) minmax(1em, 1fr);
    width: 100%;
    height: auto;
    background-color: #D9D8D6;
}

#mainHeader .mainLogo {
    padding: 20px 25px 20px 5px;
    margin: 0;
    height: 100%;
    position: relative;
    box-sizing: border-box;
    border-right: 2px solid #FFFFFF;
}

#mainHeader .mainStrapline {
    font-size: 2em;
    margin-left: 18px;
    color: #CF0A2C;
}

.mainHeaderBox {
    grid-column: main;
    -ms-grid-column: 2;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
}

.solarStatus {
    position: absolute;
    right: 150px;
    top: 30px;
    
    
}

.solarStatus img{
    height: 80px;
   
}

.fullWidthSection {
    grid-column: full!important;
    -ms-grid-column: 1!important;
    -ms-grid-column-span: 3!important;
    margin: 0 -20px;
    display: grid;
    display: -ms-grid;
    grid-template-columns: 
    [full-start] minmax(1em, 1fr) 
    [main-start] minmax(0, 1380px) [main-end]
    minmax(1em, 1fr) [full-end];
        -ms-grid-columns: minmax(1em, 1fr) minmax(0, 1380px) minmax(1em, 1fr);
}

.fullWidthSection.slim > * {
    grid-column: main!important;
    -ms-grid-column: 2!important;
}

.fullWidthSection > *:nth-child(1) {
    -ms-grid-row: 1;
    grid-row: 1;
}

.fullWidthSection > *:nth-child(2) {
    -ms-grid-row: 2;
    grid-row: 2;
}

.fullWidthSection > *:nth-child(3) {
    -ms-grid-row: 3;
    grid-row: 3;
}

.fullWidthSection > *:nth-child(4) {
    -ms-grid-row: 4;
    grid-row: 4;
}

.fullWidthSection > *:nth-child(5) {
    -ms-grid-row: 5;
    grid-row: 5;
}

.fullWidthSection > *:nth-child(6) {
    -ms-grid-row: 6;
    grid-row: 6;
}

.fullWidthSection > *:nth-child(7) {
    -ms-grid-row: 7;
    grid-row: 7;
}

.fullWidthImage {
    margin: 0 -20px 20px;
    min-height: 500px;
    background-size: cover;
    background-position: center center;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    grid-column: full!important;
    -ms-grid-column: 1!important;
    -ms-grid-column-span: 3!important;
}

.fullWidthImage.slim {
    min-height: 200px!important;
}

.fullWidthImage h2 {
    color: #FFFFFF;
    margin: 0;
    text-align: center;
    padding: 35px 20px;
    background-color: rgba(46, 42, 37, 0.849);
}

h2#headerText {
    font-weight: 300;
    font-size: 2.4em;
    padding-left: 20px;
    color: #4F5858;
}

.provision-picture .fullWidthImage {
    width: auto;
    height:100%;
}

.seeMoreLink {
    display:block;
    color: #6E6259;
    font-weight: 400;
    padding: 5px 0;
    margin:0 auto;
    border: 2px solid #6E6259;
    text-align: center;
    width:100px;
}

.provisionStatementText .seeMoreLink {
    margin:auto auto 0;
}

.seeMoreLink:hover {
    color: #FFFFFF;
    border-color: #CF0A2C;
    background: #CF0A2C;
}

.seeMoreButton {
    margin: 0 auto;
    display: block;
    width: 200px;
    padding: 10px!important;
    text-align: center!important;
    color: #4F5858!important;
    border: 2px solid #ACA39A;
    cursor: pointer;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
}

.seeMoreButton:hover {
    background-color: #ACA39A;
    color: #FFFFFF!important;
    border: 2px solid #ACA39A;
}

#fogButton {
    background-color: rgba(250, 250, 250, .5);
    font-weight: 500;
    font-size: 17px;
    margin-top: 30px;
}

@media screen and (max-width: 775px) {
    .mainHeaderBox {
        align-items: center;
        align-content: center;
        justify-content: space-between;
    }

    #mainHeader .mainLogo {
        border: none;
        padding: 15px;
    }

    #mainHeader .mainLogo img {
        width: 100px;
    }

    h2#headerText {
        display: none;
    }

    .mainStrapline {
        display: none;
    }

    .solarStatus {
        position: absolute;
        right: 120px;
        top: 20px;
    }

    .solarStatus img{
        height: 60px;
       
    }

    .currentStatus {
        margin: 5px!important;
    }
}

/* -------------
    Navigation 
    ------------*/
.menuToggle {
    display: none;
}

#mainNavigation {
    height: 44px;
    width: 100%;
    z-index: 300;
    position: sticky;
    top: 0;
    background-color: #FFFFFF;
    border-bottom: 2px solid #CF0A2C;
    display: grid;
    display: -ms-grid;
    grid-template-columns: 
    [full-start] minmax(1em, 1fr) 
    [main-start] minmax(0, 1380px) [main-end]
    minmax(1em, 1fr) [full-end];
    -ms-grid-columns: minmax(1em, 1fr) minmax(0, 1380px) minmax(1em, 1fr);
}

.mainNavigationBox {
    -ms-grid-column: 2;
    grid-column: main;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

#phoneNavBlock {    
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #FFFFFF;
    transition: all .2s ease-in;
    -webkit-transition: all .2s ease-in;
    position: relative;
}

.telephoneFlag {
    width: 15px;
    height: 15px;
}

.telephoneFlagLarge {
    width: 25px;
    height: 25px;
}

.navCallUs {
    color: #CF0A2C;
    font-size: 1.2rem;
    font-weight: 300;
    min-width: 140px;
    cursor: pointer;
    user-select: none;
}

.navCallBlock {
    display: none;
    position: absolute;
    min-width: 200px;
    top: 35px;
    left: 0px;
    background-color: #CF0A2C;
    box-sizing: border-box;
    padding: 10px;
}

.navCallBlock a {
    padding: 5px;
    color: #FFFFFF;
    line-height: 25px;
}

.navCallBlock a:hover {
    text-decoration: underline;
}

.menuImage {
    width: 100%;
    max-width: 200px;
    max-height: 100px;
    height: 100%;
}

#siteTopnav {
    background: #FFFFFF;
    max-width: 1000px;
    width: 100%;
    user-select: none;
}

#siteTopnav .contentNavDesc {
    grid-column: 1;
    -ms-grid-column: 1;
    grid-row: 2;
    -ms-grid-row: 2;
    width: 100%;
    max-width: 400px;
    border-right: 2px solid rgba(255, 255, 255, 0.5);
}

.navigationTitle {
    font-size: 2em;
    font-weight: 300;
    color: #FFFFFF;
}

.menuBanner {
    max-width: 200%!important;
    height: initial!important;
    max-height: initial!important;
}

@media screen and (max-width: 981px) {   
    .menuBanner {
        max-width: 100%;
    } 
    .navigationTitle {
        display: none;
    }
}

#siteTopnav h2 {
    margin-top: 5px;
    margin-bottom: 10px;
    color: #FFFFFF;
    grid-row: 1;
    -ms-grid-row: 1;
} 

#siteTopnav .contentNavDesc p {
    line-height: 1.8em;
    color: #FFFFFF;
    grid-row: 2;
    -ms-grid-row: 2;
    padding-right: 15px;
}

#siteTopnav .contentAlign {
    grid-row: 2;
    -ms-grid-row: 2;
    grid-column: 2;
    -ms-grid-column: 2;
    margin: 10px;
}

#siteTopnav strong {
    padding: 5px;
    color: #FFFFFF;
    text-transform: capitalize;
}

#siteTopnav .contentAlign a:hover {
    text-decoration: underline;
}

#siteTopnav .contentAlign a[target=_blank] {
    position: relative;
}

#siteTopnav .contentAlign a[target=_blank]::after {
    font-family: 'Glyphter';
    content: 'R';
    width: 12px;
    position: absolute;
    margin-left: 10px;
}

#siteTopnav .contentButton[target=_blank] {
    position: relative;
}

#siteTopnav .contentButton[target=_blank]::after {
    font-family: 'Glyphter';
    content: 'R';
    width: 22px;
    position: absolute;
    margin-left: 5px;
    opacity: 0.1;
}

#siteTopnav .contentButton {
    width: 200px;
    padding: 10px!important;
    text-align: center!important;
    background-color: #FFFFFF;
    color: #2E2A25!important;
    border: 2px solid #CF0A2C;
    cursor: pointer;
}

#siteTopnav .megaMenuSub a {
    display: flex!important;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

#siteTopnav .megaMenuSub a p {
    color: #FFFFFF;
    font-size: 14px;
    max-width: 200px;
}

#siteTopnav .megaMenuSub a picture {
    width: 100%;
    max-width: 200px;
    margin-top: 5px;
}

#siteTopnav .contentTrigger {
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 15px;
    position: relative;
    z-index: 5;
    padding: 0 30px;
    cursor: pointer;
    transition: all .2s ease-in;
    -webkit-transition: all .2s ease-in;
}

.topNavRevealingContent {
    display: inline-flex;
    margin-left: 20px;
}

#siteTopnav .contentGrid {
    display: grid;
    display: -ms-grid;
    grid-auto-columns: minmax(50px, 25%);
    -ms-grid-columns: minmax(50px, 25%);
}

#siteTopnav .contentGrid > *:nth-child(1) {
    grid-column: 1;
    -ms-grid-column: 1;
}

#siteTopnav .contentGrid > *:nth-child(2) {
    grid-column: 1;
    -ms-grid-column: 1;
}

#siteTopnav .contentGrid > *:nth-child(3) {
    grid-column: 2;
    -ms-grid-column: 2;
}

#siteTopnav .contentGrid > *:nth-child(4) {
    grid-column: 3;
    -ms-grid-column: 3;
}

#siteTopnav .contentGrid > *:nth-child(5) {
    grid-column: 4;
    -ms-grid-column: 4;
}

#siteTopnav .contentGrid > *:nth-child(6) {
    grid-column: 5;
    -ms-grid-column: 5;
}

#siteTopnav .contentBlock {
    display: none;
    position: absolute;
    left: 0;
    top: 44px;
    background: rgba(207, 10, 43, 0.9);
    width: 100%;
    padding: 45px;
    color: #FFFFFF;
    box-sizing: border-box;
    z-index: 10;
    padding-left: 13%;
}

/* Safari 7.1+ */

_::-webkit-full-page-media, _:future, :root #siteTopnav .contentBlock {
    top: inherit;
}


_::-webkit-full-page-media, _:future, :root #siteTopnav .triggerActive::after {
    left: 48%;
}

/* IE11 */

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    #siteTopnav .contentBlock {
        top: inherit;
    }

    #siteTopnav .triggerActive::after {
        left: 48%;
    }
    
    .testimonialLogo {
        height: inherit!important;
        width: 70px!important;
    }

    .provisionFour {
        flex-grow: 0!important;
    }

    .latestThree {
        flex-grow: 0!important;
    }

    #seeMoreLink {
        display: none!important;
    }

    .cmsCloudInfo {
        display: block!important;
    }

    .sectorButton, .sectorButtonLight {
        max-width: 250px!important;
    }

    .sectorTitleSection {
        flex-grow: 0!important;
    }

    .sectorBenefit {
        flex-basis: 23%!important;
    }

    .provisionFour {
        flex-basis: 24%!important;
    }

    .latestThree {
        flex-basis: 33%!important;
    }

    #callbackImage.sectorInfo {
        justify-content: center;
    }

    #phoneNavBlock {
        display: none;
    }

    img {
        animation: none!important;
        opacity: 1!important;
    }
}

/* EDGE */
@supports (-ms-ime-align:auto) {
    #seeMoreLink {
        display: none!important;
    }
}

#siteTopnav .contentBlock a {
    color: #FFFFFF;
    text-align: left;
    box-sizing: border-box;
    padding: 5px;
    display: block;
}

@media screen and (max-width: 980px) {
    #siteTopnav .contentGrid {
        display: block;
    }

    #siteTopnav .megaMenuSub a p {
        display: none;
    }
    
    #siteTopnav .megaMenuSub a picture {
        display: none;
    }

    #siteTopnav .megaMenuSub a strong {
        display: block!important;
        color: #2E2A25!important;
        font-weight: 300;
    }
    
    #siteTopnav .megaMenuSub a {
        display: block!important;
    }

    #navTelephoneLink:hover {
        color: #CF0A2C;
    }

    .menuToggle {
        margin-left: auto;
        height: 44px;
        line-height: 44px;
        margin-right: 5px;
        color: #6E6259;
        display: block;
    }

    .menuToggle:hover,
    .menuToggle:hover span {      
        color: #CF0A2C;
    }

    #menuiconclosed {
        display: flex;
    }

    #menuiconopen {
        font-size: 1em;
        padding: 5px 17px;
        text-align: right;
    }

    #menuiconclosed .textIcon {
        font-size: 1em;
        margin-left: 10px;
    }

    .bodyFixed {
        position: fixed;
    }

    .bodyFixed::after {
        content: "";
        position: fixed;
        height: 100%;
        width: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        display: block;
        z-index: 100;
        top: 0;
        left: 0;
    }

    #siteTopnav {
        position: fixed;
        top: 0;
        right: 0;
        height: 100vh;
        background: #D9D8D6;
        transform: scaleX(0);
        width: 60%;
        box-shadow: 0px 0 10px rgba(0, 0, 0, 0.5);
        -webkit-transition: transform ease 0.3s;
        transition: transform ease 0.3s;
        transform-origin: right;
        overflow-y: scroll;
        z-index: 150;
    }

    #siteTopnav .contentNavDesc, #siteTopnav h2, #siteTopnav .contentAlign strong {
        display: none;
    }

    #siteTopnav .contentAlign {
        width: 100%;
        grid-column: 1/5;
        -ms-grid-column: 1;
        -ms-grid-column-span: 5;
        grid-row: auto;
        -ms-grid-row: auto;
        margin: 0;
    }

    #siteTopnav .contentAlign a[target=_blank]::after {
        font-family: 'Glyphter';
        content: 'R';
    }

    #siteTopnav .contentTrigger {
        padding: 30px 20px;
        line-height: 44px;
        height: 44px;
        width: 100%;
        font-size: 1.0em;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        box-sizing: border-box;
        border-top: 2px solid #D9D8D6;
    }

    #siteTopnav .contentTrigger::after {
        content: '\0042';
        font-family: 'Glyphter';
        margin-left: auto;
        font-size: 1.0em;
        margin-right: 0;
        position: absolute;
        right: 20px;
        -webkit-transition: transform ease 0.3s;
        transition: transform ease 0.3s;
    }

    #siteTopnav .topNavcontentWrap:last-of-type .contentTrigger::after {
        content: '';
    }
    
    #siteTopnav .contentTrigger.triggerActive::after {
        transform: rotate(180deg);
    }
    
    #siteTopnav .triggerActive {
        box-shadow: 0 7px 5px -5px #ACA39A;
    }

    #siteTopnav .topNavcontentWrap:last-of-type .triggerActive {
        box-shadow: none;
    }

    .topNavRevealingContent {
        flex-direction: column;
        width: 100%;
        margin-left: 0px;
    }

    #siteTopnav .contentBlock {
        position: relative;
        top: 0px;
        width: 100%;
        padding: 0;
    }

    #siteTopnav.menuopen {
        transform: scaleX(1);  
    }

    .topNavcontentWrap {
        display: flex; 
        flex-direction: column;
        position: relative;
    }

    #siteTopnav .contentBlock a {
        display: block;
        padding: 20px;
        width: 100%;
        border-top: 2px solid #D9D8D6;
        background: #FFFFFF;
        color: #2E2A25;
    }

    #siteTopnav .contentBlock a:hover {
        background: #CF0A2C;
        color: #FFFFFF;
    }

    #siteTopnav .contentGrid > *:nth-child(1n) {
        grid-column: 1/5;
        -ms-grid-column: 1/5;
    }

    #navNewsContainer {
        display: none;
    }
}

#ulStyle {
    padding-left: 0;
}

.listStyle {
    list-style: none;
}

.listStyle::before {
    content: "-";
    padding-right: 10px;
}

@media screen and (min-width: 980px) {
    #siteTopnav .triggerActive::after {
        content: "";
        position: absolute;
        border: 5px solid #CF0A2C;
        bottom: -5px;
        animation: rise .1s ease-in-out;
        -webkit-animation: rise .1s ease-in-out;
        animation-fill-mode: forwards;
        -webkit-animation-fill-mode: forwards;
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
    }
    
    @keyframes rise {
        0% {border: 0px solid #CF0A2C}
        100% {border: 5px solid #CF0A2C}
    }
    
    @-webkit-keyframes rise {
        0% {border: 0px solid #CF0A2C}
        100% {border: 5px solid #CF0A2C}
    }

    #siteTopnav, .topNavRevealingContent, .contentTrigger {
        height: 100%;
    }

    .active-mobile {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
        color: #6E6259;
    }
}

@media screen and (max-width: 980px) {
    .contentTrigger .active-mobile {
        width: 100%;
        position: absolute;
        left: 0;
        top: 0;
        padding: 5px 20px;
        box-sizing: border-box;
        color: #2E2A25;
    }
}

/* --------------------
    Lower Site Elements 
    --------------------*/
#mainFooter {
    display: grid;
    display: -ms-grid;
    grid-template-columns: 
    [full-start] minmax(1em, 1fr) 
    [main-start] minmax(0, 1380px) [main-end]
    minmax(1em, 1fr) [full-end];
    -ms-grid-columns: minmax(1em, 1fr) minmax(0, 1380px) minmax(1em, 1fr);
    background: #6E6259;
    padding: 20px 0 0 0;
    box-shadow: inset 0px 100px 150px -130px;
}

#mainFooter > * {
    grid-column: main;
    -ms-grid-column: 2;
}

#mainFooter #bottomLinks a[target=_blank] {
    position: relative;
}

#mainFooter #bottomLinks a[target=_blank]::after {
    font-family: 'Glyphter';
    content: 'R';
    width: 12px;
    position: absolute;
    margin-left: 10px;
}

#mainFooter a {
    color: #ddd;
}

#mainFooter a:hover {
    text-decoration: underline;
}

#mainFooter li {
    list-style: none;
}

#scrollTopButton {
    position: fixed;
    right: 20px;
    bottom: 95px;
    opacity: 0.6;
    z-index: 100;
    display: none;
    background-color: #FFFFFF;
    width: 50px;
    height: 50px;
}

#scrollTopButton img {
    width: 50px;
    height: 50px;
}

#footerBlock {
    margin: 30px 0;
    display: flex;
    color: #FFFFFF;
    -ms-grid-row: 1;
    grid-row: 1;
}

form span {
    margin-bottom: 10px;
    color: #FFFFFF;
}

form {
    display: flex;
    flex-direction: column;
    padding-right: 15px;
    margin-right: 25px;
    margin-bottom: 20px;
    /* border-right: 2px solid rgba(255,255,255,.5); */
    box-sizing: border-box;
}

.footerInput {
    display: flex;
    justify-content: flex-start;
    flex-direction: row-reverse;
    margin-bottom: 10px;
}

.footerTitles {
    text-transform: uppercase;
    color: #aca39a!important;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 3px;
    margin-bottom: 20px!important;
    font-family: 'Roboto Mono', Arial, Helvetica, sans-serif;
    vertical-align: top;
    margin-left: 10px;
}

label {
    background-color: rgb(172, 163, 154);
    padding: 10px 10px 9px 10px;
    width: 30%;
    font-size: 14px;
    text-align: center;
    color: #FFFFFF;
    user-select: none;
    transition: background-color .2s ease-in-out;
    box-sizing: border-box;
}

form input, form select {
    width: 70%;
    border: none;
    padding: 10px;
    background-color: rgba(172, 163, 154, 0.5);
    color: #FFFFFF;
    font-size: 14px;
    transition: all .3s ease-in-out;
    box-sizing: border-box;
}

form option {
    background-color: #ffffff!important;
    color: #2E2A25!important;
}

form input::placeholder {
    color: #FFFFFF;
}

form input:focus {
    outline: none;
    background-color: rgba(172, 163, 154, 0.8);
    color: #000;
    box-shadow: 0 0 5px 2px rgba(46, 42, 37, 0.205);
}

form input:focus + label {
    background-color: rgba(172, 163, 154, 0.1);
}

form .privacyCheckbox {
    display: none;
    padding: 5px;
    justify-content: center;
    align-items: center;
}

form .privacyCheckbox label {
    color: #FFFFFF;
    font-size: 12px;
    width: 100%;
    text-align: left;
}

form input[type=checkbox] {
    max-width: 55px;
    width: 100%;
    padding: 5px;
}

form input[type=submit] {
    width: 100%;
    padding: 8px 10px;
    margin: 0;
    margin-top: 10px;
    cursor: pointer;
    background-color: rgba(110,98,89,0);
    border: 2px solid #aca39a;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    color: #aca39a;
    font-weight: 500;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-family: 'Roboto Mono', Arial, Helvetica, sans-serif;
}

form input[type=submit]:hover {
    background-color: #aca39a;
    border: 2px solid #aca39a;
    color: #FFFFFF;
}

form input[type=submit]:disabled:hover {
    background-color: #aca39a;
    border: 2px solid #aca39a;
    cursor: not-allowed;
    color: #FFFFFF;
}

#contactInformation {
    /* border-right: 2px solid rgba(255,255,255,.5); */
    padding-right: 10px;
    margin-bottom: 20px;
    margin-right: 25px;
    box-sizing: border-box;
}

#contactInformation table {
    margin-top: 10px;
}

#contactInformation span {
    margin-bottom: 10px;
    color: #ddd;
}

#contactInformation .contactDesc img {
    width: 20px;
    height: 20px;
}

#contactInformation .contactDesc {
    color: #ddd;
    margin-bottom: 10px;
}

#contactInformation .contactDesc td {
    color: #ddd;
    padding-right: 10px;
    font-size: 14px;
}

.coninfo {
    height: 20px;
}

.twitterTweetWrapper {
    color: #ddd;
    box-sizing: border-box;
}

.twitterTweetWrapper span {
    padding-left: 0px;
    margin-bottom: 10px;
    color: #ddd;
}

.twitterTweet {
    display: flex;
    flex-wrap: 1;
    color: #ddd;
    margin-top: 10px;
}

.twitterTweet a, .twitterTweet p {
    color: #ddd;
    margin-top: 5px;
    margin-bottom: 5px;
}

.twitterTweetImg {
    width: 60px;
    height: 60px;
    flex-grow: 1;
    padding-left: 0px;
}

.twitterTweetContent {
    width: 100%;
    flex-grow: 1;
    padding-left: 10px;
    max-width: 250px;
}

.twitterTweet a {
    font-size: 12px;
    margin: 0;
}

.twitterTweet p {
    font-size: 14px;
}

#footerBottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 2px solid rgba(255, 255, 255, 0.5);
    -ms-grid-row: 2;
    grid-row: 2;
}

#socialMediaLinks {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 290px;
    margin: 0 auto;
}

#socialMediaLinks a img {
    height: 33px;
    fill: #fff;
    padding: 2px;
}

#bottomLinks {
    display: flex;
    padding: 20px 0;
    font-size: 14px;
}

#bottomLinks a {
    color: #fff;
    padding-left: 10px;
    margin-left: 10px;
    border-left: 2px solid #ACA39A;
}

#bottomLinks a:first-of-type {
    padding-left: 0px;
    margin-left: 0px;
    border-left: none;
}

@media screen and (min-width: 1600px) {
    #footerBlock {
        flex-wrap: nowrap!important;
    }
}

@media screen and (min-width: 901px) {
    #footerBlock > *:nth-child(1n){
        flex-basis: 32%;
    }
    #footerBlock > *:last-child {
        box-shadow: none;
    }
    #footerBlock {
        flex-wrap: wrap;
    }
    #contactInformation {
        margin-right: 20px;
    }
}

@media screen and (min-width: 1000px) {
    form {
        margin-right: 50px;
    }
}

@media screen and (min-width: 1300px) {
    #footerBlock {
        flex-wrap: nowrap;
    }
}

@media screen and (max-width: 900px) {
    #bottomLinks, #footerBottom {
        align-items: flex-start;
        flex-direction: column;
    }

    #bottomLinks a {
        padding-left: 0px;
        margin-left: 0px;
        margin-top: 5px;
        border-left: none;
    }

    #footerBlock {
        flex-wrap: wrap;
        flex-direction: column;
        align-items: center;
    }

    #footerBlock form {
        width: 80%;
        padding-right: 15px;
        margin-right: 15px;
    }

    #footerBlock form .privacyCheckbox label {
        font-size: 16px;
    }
}

@media screen and (max-width: 650px) {
    #footerBlock {
        flex-direction: column;
        flex-wrap: nowrap;
    }

    #footerBlock form {
        border-right: none;
        border-bottom: 2px solid rgba(250, 250, 250, 0.5);
        padding-bottom: 20px;
        width: 100%;
        max-width: 100%;
        padding-right: 5px;
        margin-right: 0px;
    }

    .twitterTweetWrapper span {
        padding-left: 0;
    }

    .twitterTweetWrapper {
        border-top: 2px solid rgba(250, 250, 250, 0.5);
        padding-top: 15px;
        margin-top: 20px;
    }

    #contactInformation {
        border-right: none;
    }
}

/* -------------
    Footer 
    ------------*/
footer {
    display: flex;
    flex-direction: column;
    padding: 32px 15px;
    margin: 0;
    text-align:center;
    grid-column: full!important;
    -ms-grid-row: 3;
    grid-row: 3;
    -ms-grid-column: 1!important;
    -ms-grid-column-span: 3!important;
    background-color: #FFFFFF;
}

footer p {
    font-size: 0.7em;
    color: #6E6259;
}

#footerDesign {
    display: flex;
    align-items: center;
    flex-direction: row;
    justify-content:center;
}

#designFlag {
    height: 25px;
    width: 25px;
    margin-right: 10px;
}

.Flags {
    vertical-align: top;
    margin-left: 4px;
}

@media screen and (max-width: 720px) {
    footer {
        text-align:left;
    }

    #footerDesign {
        justify-content:flex-start;
    }
}



/* ----------------------------
    Homepage Content Elements 
-------------------------------*/

.blockTitle {
    text-align: center;
    padding: 0 0 30px 0;        
    margin: 0;
    font-size: 1.6em;
}

.blockTitle a:hover {
    color: #2E2A25;
    text-decoration: underline;
}

.homeButton {
    margin: 0 auto;
    display: block;
    width: 200px;
    padding: 10px!important;
    text-align: center!important;
    color: #4F5858!important;
    border: 2px solid #ACA39A;
    cursor: pointer;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
}

.homeButton:hover {
    background-color: #ACA39A;
    color: #FFFFFF!important;
    border: 2px solid #ACA39A;
}

.trainingButton {
    margin: 0 auto;
    display: block;
    width: auto;
    padding: 10px!important;
    text-align: center!important;
    color: #4F5858!important;
    border: 2px solid #ACA39A;
    cursor: pointer;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
}

.trainingButton:hover {
    background-color: #ACA39A;
    color: #FFFFFF!important;
    border: 2px solid #ACA39A;
}


#videoBlock {
    overflow: hidden;    
    min-height: 500px;
    height: 500px;
    height: 35vw;
    display: flex;
    justify-content: center;
    margin: 0 -20px;
    position: relative;    
    align-items: center;
    grid-column: full;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    background-color: rgba(255, 255, 255, 0);
}

@media screen and (max-width: 600px) {    
    #videoBlock #videoText h1 {
        font-size: 1.1em
    }
}

#homeVideo {
    /* top: -170px; */
    position: relative;
    z-index: -1;
    opacity: 1;
    object-fit: fill;
    object-position: bottom;
}

@-moz-document url-prefix() { 
    #homeVideo {
        top: 0px;
        width: 100%;
        min-width: 1000px;
    }
}

#videoPlaceholder {
    width:100%;
    margin:0 auto;
    display:flex;
}

#videoText {
    color: #ffffff;
    padding: 10px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    font-size: 1.15em;
    box-sizing: border-box;
    width: 100%;
    top: 0px;
    /*height: 100%;*/
    position: absolute;
}

#videoText p {
    color: #FFFFFF;
    font-weight: 300;
}

#videoText h1 {
    color: #FFFFFF;
    font-weight: 900;
    margin: 0;
    font-size: 1.6em;
}

#awardsSection {
    box-shadow: 0 0 150px -80px #000;
    margin: 30px 0;
}

#awardsSection > * {
    grid-column: full;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
}

#awardsCarousel::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: linear-gradient(90deg, #ffffff 50%, rgba(250, 250, 250, 0));
    height: 100%;
    width: 20%;
    z-index: 1;
}

#awardsCarousel::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    background: linear-gradient(-90deg, #ffffff 50%, rgba(250, 250, 250, 0));
    height: 100%;
    width: 20%;
    z-index: 1;
}

#awardsCarousel {
    width: 100%;
    margin: 30px 0;
    position: relative;
}

.awardsLink {
    width: 100px;
    display: block;
}

.awardsLink img {
    width: auto;
    height: auto;
    max-height: 80px;
    margin: 0 auto;
    display: block;
}

#awardsTitle {
    margin: 3vh auto;
    padding: 0 20px;
    color: #6E6259;
    position: relative;
    z-index: 2;
}

#awardsLinks {
    width:100%;
    display: flex;
    padding-bottom:30px;
    flex-wrap: wrap;
    justify-content: space-around;
    flex-basis:auto;
    flex-shrink:1;
}

#awardsLinks img {
    width:auto;
}

#openingStatement {
    position: relative;
    font-size: 1.2em;
    padding: 30px;
    margin: 0 -20px 25px;
    background-color: #D9D8D6;
    display: flex;
    justify-content: center;
}

#openingStatement .iconDownArrow {
    color: #CF0A2C;
}

#openingStatement img {
    width:100%;
    height: auto;
}

#openingStatementText {
    color: #6E6259;
    padding: 10px 20px;
    margin-top:-5px;
    width: 100%;
    max-width: 750px;
}

#covidUpdate {
    background-color: #003B71;
}

.covidTitle {
    text-align: center;
    padding: 10px 0 10px 0;
    margin: 0;
    font-size: 1.6em;
    color: #ffffff;
}

.covidButton {
    margin: 0 auto;
    display: block;
    width: 200px;
    text-align: center!important;
    padding: 10px!important;
    color: #ffffff!important;
    cursor: pointer;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
}

#videoText a span,
.iconDownArrow {
    font-family: 'Glyphter';
    font-size: 1.4em;
    display: block;
    margin-top: 10px;
}

#videoText,
#videoText .iconDownArrow,
#videoText, a span,
#videoText p strong {
    color: #FFFFFF;
}

#iconDownArrow {
    color: #6E6259;
}

#videoText .smoothScroll:hover strong,
#videoText .smoothScroll:hover .iconDownArrow {
    color: #D9D8D6;
}

#videoText a,
#openingStatementText  {
    font-weight: 400;
}

#caseStudiesBlock {
    margin: 40px -20px;
}

#caseStudiesBlock .caseStudies {
    display: flex;
}

#caseStudiesBlock .caseStudies .caseStudyImage {
    width: 100%;
    height: auto;
}

#caseStudiesBlock .caseStudyText {
    padding: 10px;
}

#homeNewsBlock {
    margin: 40px -20px;
}

#caseStudiesBlock .caseStudy,
#homeNewsBlock .newsStory {
    display: flex;
    flex-direction: column;
    margin: 0 5px;
    flex-grow: 1;
    flex-basis: 0;
    min-width: 0;
}

#homeNewsBlock .newsStory:first-of-type {
    margin-left: 0;
}

#homeNewsBlock .newsStory:last-of-type {
    margin-right: 0;
}

#homeNewsBlock .newsStoryText {
    padding: 10px;
    display: flex;
    flex-direction: column;
}

#homeNewsBlock .newsStoryText p {
    font-size: 16px;
}

#homeNewsBlock .newsStoryText h2 {
    margin: 0;
    font-weight: 300;
    font-size: 1em;
}

#homeNewsBlock .newsStoryImage {
    width: 100%;
}

.homeNews {
    display: flex;
    flex-direction: row;
}

#testimonialBlock {
    background-color: #D9D8D6;
    padding: 40px 10px;
    margin-top: 20px;
    margin-bottom: -35px;
}

.testimonials {
    display: flex;
    flex-grow: 1;
    flex-wrap: wrap;
}

.testimonial {
    display: flex;
    flex-direction: column;
    margin: 10px 5px;
    flex-grow: 1;
    min-width: 0;
    width: 350px;
}

.seeMoreLink {
    margin-top:auto;
}

.testimonialQuote {
    padding: 20px;
    position: relative;
    min-height: 200px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: #FFFFFF;
    box-shadow: 0 2px 9px 0px rgba(110, 98, 89, 0.219);
}

.testimonialQuote::after {
    content: "";
    background-color: #ffffff;
    width: 10px;
    height: 10px;
    position: absolute;
    bottom: -5px;
    left: 49%;
    transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

.testimonialText {
    padding:0 10px;
    display:flex;
    flex-direction: column;
}

.testimonialText p {
    margin: 5px;
}

.testimonialDetails {
    font-size: 0.9em;
    font-weight: 400;
    color: #CF0A2C;
}

.testimonialJobTitle {
    font-size: 0.7em;
}

.testimonialLogo {
    margin: 20px auto;
    height: 50px;
    width: auto;
}

#awardsTitle {
    text-align: center;
}

#openingStatementText a span{
    display: block;
}

#openingStatementText {
    position: relative;
    text-align: center;        
}

#openingStatementText {
    text-align: center;
}

#openingStatementText span {
    display: block;
}

#openingStatementText a {
    font-weight: 400;
}

#provisionStatement {
    margin: 40px -20px;
}

#latestStatement {
    margin: 40px -20px;
}

.provisionBlock {
    margin: 0 5px;
}

.provisionStatementText {
    display: flex;
    flex-direction: column;    
    flex: 1 0 auto;
}

.provisions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.provision {
    flex-grow: 1;
    width: 300px;
    padding: 5px;
    position: relative;
    margin-bottom: 25px;
}

.provisionFour {
    flex-grow: 0.25;
    flex-basis: 25%;
    width: 100%;
    min-width: 230px;
    padding: 5px;
    position: relative;
    margin-bottom: 25px;
    box-sizing: border-box;
}

.latests {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-between;
}

.latestThree {
    flex: 0 1 calc(33.333% - 15px);
    min-width: 230px;
    padding: 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #fff;
    box-sizing: border-box;
}

.provisionLink {
    color: #cf0a2c;
    text-decoration: underline;
    font-weight: 400;
}

@media screen and (max-width: 1100px) {  
    .provisionFour {
        flex-grow: 0.5;
        flex-basis: 50%;
        width: 100%;
        min-width: 230px;
        padding: 5px;
        position: relative;
        margin-bottom: 25px;
        box-sizing: border-box;
    }

    .latestThree {
        flex: 0 1 calc(50% - 20px); /* subtract gap or margin */
        min-width: 230px;
        padding: 15px;
        border: 1px solid #ccc;
        border-radius: 5px;
        background-color: #fff;
        box-sizing: border-box;
    }
}

@media screen and (max-width: 600px) {
    .latestThree {
      flex: 0 1 100%;
    }
  }

.homeTitle {
    color: #CF0A2C;
    margin: 10px 0;
    font-size: 1.1em;
}

.homeHeader {
    color: #CF0A2C;
    margin: 10px 0;
    font-weight: 400;
    font-size: 1.1em;
}

.homeSwitch {
    margin: 0 auto;
    font-size: 0.9em;
    display: block;
    width: 300px;
    padding: 10px;
    text-align: center;
    color: #4F5858;
    border: 2px solid #ACA39A;
    cursor: pointer;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
}

.callToActionHeader {
    color: #CF0A2C;
    margin: 10px 0;
    font-weight: 400;
    font-size: 1.1em;
    height: 50px;
    text-align: center;
}

.callToActionIntro {
    height: 92px;
}

.callToActionSwitch {
    margin: 0 auto;
    font-size: 0.9em;
    display: block;
    width: 300px;
    padding: 10px;
    text-align: center;
    color: #4F5858;
    border: 2px solid #ACA39A;
    cursor: pointer;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
}

@media screen and (max-width: 400px) {
    .callToActionSwitch {
      width: 90%;
      max-width: 300px;
    }

    .callToActionHeader {
        height: 75px; /* was 40px, now taller */
      }
    
      .callToActionIntro {
        height: 120px; /* was 70px, now taller */
      }
  }

  @media screen and (max-width: 520px) {
    .callToActionHeader {
        height: 75px;
    }

    .callToActionIntro {
        height: 120px;
    }

    .callToActionSwitch {
        width: 90%;
        max-width: 300px;
      }
}


#bsiaLogo, #ESALogo {
    width: 100%;
    max-width: 150px;
    margin: 10px;
}

#webLogo {
    width: 100%;
    max-width: 250px;
    margin: 10px;
}

#vigileyezBanner {
    display:flex;
    justify-content: center;
    align-items: center;
}

#vigileyezLogo {
    width: 100%;
    max-width: 250px;
    cursor: pointer; 
}

.vigileyezCounter {
    width: 550px; 
    height: 100%; 
    border: none; 
    margin: 0px; 
    visibility: visible;
}

.vigileyezCounter {
    width: 300px; 
    height: 90%; 
    border: none; 
    margin: 0px; 
    visibility: visible;
}
#vigileyezMailList {
    display:flex;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
    margin-bottom: 33px;
}
#vigileyezMailListTitle {
    width: 100%;
    text-align: center;
    font-size: 13px;
    margin-top: -9px;
}
.vigileyezMailListiframe {
    width: 100%;
    border: none; 
    margin-bottom: -10px;
    margin-top: -40px;
}

#vigileyezLandingLink {
    display:flex;
    justify-content: center;
    align-items: center;
    margin-top: 30px;
    margin-bottom: 30px;
}
#vigileyezLandingTitle {
    width: 100%;
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    margin-top: 0px;
}


@media screen and (min-width: 500px) { 
    
    #vigileyezLogo {
        max-width: 300px;
        margin-top: 10px;
        cursor: pointer;
    }
    .vigileyezCounter {
        width:615px; 
        height: 100%; 
        border: none; 
        margin: 0px; 
        visibility: visible;
    }
    #vigileyezMailList {
        display:flex;
        justify-content: center;
        align-items: center;
        margin-top: -3px;
        margin-bottom: 15px;
    }
    
    #vigileyezMailListTitleForm {
        width: 100%;
        border: none; 
        margin: 0px; 
    }
    .vigileyezMailListiframe {
        width: 58%;
        border: none; 
        margin-left: 220px;
        margin-bottom: -10px;
        margin-top: -9px;
    }
    #vigileyezMailListTitle {
        width: 100%;
        text-align: center;
        font-size: 25px;
        margin-top: 5px;
    }    

}


#homePara {
    font-size: 0.8em;
}

#dahuaLogo, /*#hikvisionLogo,*/ #webeyeOCULiLogo, #webeyeCMSLogo {
    width: 100%;
    max-width: 250px;
    margin: 5%;
}

.companyLogo {
    width: 100%;
    text-align: -webkit-center;
}

.redTitle {
    color: #CF0A2C;
    font-weight: 500;
}

@media screen and (min-width: 400px) {
    #homePara {
        font-size: 0.9em;
    }
}

@media screen and (min-width: 450px) {
    #bsiaLogo, #ESALogo {
        margin: 20px;
    }
    #webLogo {
        margin: 20px;
    }
}

@media screen and (min-width: 500px) {
    #bsiaLogo, #ESALogo {
        margin: 40px 30px;
    }
    #webLogo {
        margin: 40px 30px;
    } 
}

@media screen and (min-width: 601px) {
    #videoText h1 {
        font-size: 1.6em;
    } 
    #homePara {
        font-size: 1.1em;
    }
}

@media screen and (min-width: 1000px) {
}

@media screen and (max-width: 1250px) {
    .homeSwitch {
        width: 200px;
    }
}

@media screen and (min-width: 1100px) {
    #bsiaLogo, #ESALogo {
        max-width: 200px;
    }
    #webLogo {
        max-width: 250px;
    }
    #vigileyezLogo {
        max-width: 300px;
        margin-top: 10px;
        cursor: pointer;
    }
    .vigileyezCounter {
        width:615px; 
        height: 100%; 
        border: none; 
        margin: 0px; 
        visibility: visible;
    }
    #vigileyezMailList {
        display:flex;
        justify-content: center;
        align-items: center;
        margin-top: -5px;
        margin-bottom: 15px;
    }
    .vigileyezMailListiframe {
        width: 100%;
        height: 100;
        border: none; 
        margin-left: 165px;
        margin-bottom: -40px;
        margin-top: -9px;
    }
    #vigileyezMailListTitle {
        width: 100%;
        text-align: center;
        font-size: 25px;
        margin-top: 10px;
    }

}


@media screen and (min-width: 1400px) {
    #bsiaLogo, #ESALogo {
        margin: 60px;
    }
    #webLogo {
        margin: 30px;
        max-width: 350px;
    }
    #videoText h1 {
        font-size: 2.1em;
    }
    #vigileyezLogo {
        margin: 30px;
        max-width: 350px;
        cursor: pointer;
    }
    .vigileyezCounter {
        width: 850px; 
        height: 100%; 
        border: none; 
        margin: 0px; 
        visibility: visible;
    }
    #vigileyezMailList {
        display:flex;
        justify-content: center;
        align-items: center;
        margin-top: -5px;
        margin-bottom: 15px;
    }
    .vigileyezMailListiframe {
        width: 100%;
        height: 100;
        border: none; 
        margin-left: 165px;
        margin-bottom: -40px;
        margin-top: -9px;
    }
    #vigileyezMailListTitle {
        width: 100%;
        text-align: center;
        font-size: 25px;
        margin-top: 5px;
    }

}

@media screen  and (min-width: 1600px) {
    #webLogo {
        margin: 60px;
        max-width: 400px;
    }
    #vigileyezLogo {
        margin: 30px;
        max-width: 350px;
        cursor: pointer;
    }
    .vigileyezCounter {
        width: 850px; 
        height: 100%; 
        border: none; 
        margin: 0px; 
        visibility: visible;
    }
    #vigileyezMailList {
        display:flex;
        justify-content: center;
        align-items: center;
        margin-top: -5px;
        margin-bottom: 15px;
    }
    .vigileyezMailListiframe {
        width: 100%;
        height: 100;
        border: none; 
        margin-left: 165px;
        margin-bottom: -40px;
        margin-top: -9px;
    }
    #vigileyezMailListTitle {
        width: 100%;
        text-align: center;
        font-size: 25px;
        margin-top: 5px;
    }

} 

.provision picture {
    position: relative;
}

picture#catalogueRoundal {
    position: absolute;
    top: 30px;
    left: 60px;
}

picture#catalogueRoundal img {
    width: auto;
    height: calc(100px + 4vw);
}


.provision[target=_blank] picture::after {
    font-family: 'Glyphter';
    content: 'R';
    width: 40px;
    position: absolute;
    bottom: 10px;
    right: 14px;
    margin-left: 10px;
}

.provisionImg {
    width: 100%;
    height: auto;
}

@media screen and (max-width: 1100px) {  
    #OCULi-home-image::before {
        background-image: url(/images/home/hikvision-square.png);
        background-size: 100%;
        background-position: center;
    }
}


@media screen and (max-width: 1550px) {
    #awardsLinks {
        justify-content:center;
    }

    #awardsLinks img {
        max-height:70px;
    }
}

@media screen and (max-width: 1500px) {
    #homeNewsBlock .newsStory:nth-of-type(4),
    #homeNewsBlock .newsStory:nth-of-type(5) {
        display:none;
    }

    .articlePicture {
        height: auto;
    }

    #homeNewsBlock .newsStoryText {
        font-size:0.9em;
    }
}

@media screen and (max-width: 980px) {
    .testimonials {
        flex-direction: column;
    }

    .testimonial {
        width: 100%;
    }

    .fullWidthImage {
        width:100%;
        height:auto;
    }

    #provisionStatement {
        flex-direction:column;
    }

    #latestStatement {
        flex-direction:column;
    }

    .provision-picture .fullWidthImage {    
        width:auto;
        height:100%;
    }

    #openingStatementText span {
        display:inline;
    }
    .provisionBlock {
        width:100%;
    }

    #provisionBlockOne {
        padding-bottom:20px;
        padding-right:0;
    }

    #provisionBlockTwo {
        padding-left:0;
    }
    
    #homeNewsBlock .newsStoryText p {
        font-size: 1em;
    }
}

@media screen and (max-width: 650px) {
    #videoPlaceholder {
        width:auto;
        height: 100%;
    }

    #homeNewsBlock .newsStory:not(:first-child),
    #caseStudiesBlock .caseStudy:not(:first-child),
    #testimonialBlock .testimonial:not(:first-child) {
        display:none;
    }

    #homeNewsBlock .newsIntroText,
    #homeNewsBlock .newsStoryText p {
        overflow: visible;
        white-space: normal;
    }

    .articlePicture {
        height: auto;
    }
    
    .sectorPicture {
        height: auto!important;
    }

    #homeNewsBlock .newsStoryText {
        height:auto;
    }
}


/* -------------
    About Page
-------------------*/

#aboutHeader {
    background-image: url(/images/about/clive_in_office.jpg);
    background-position: center top;
    position: relative;
    min-height: 500px;
    height: 50vw;
    max-height: 750px;
}

#aboutHeader .sectorTitleSection {
    max-width: 520px;
}

#aboutHeader.sectorHeader h1 {
    color: #cf122d;
    font-weight: 900;
    margin: 0;
}

#aboutHeader.sectorHeader h3 {
    color: #010101;
    font-weight: 300;
}

#aboutHeader::after {
    content: none;
}

#about-aim {
    background-color: #cf0a2b;
    padding: 1px 20px;
    font-size: 1.2em;
}

#about-aim p{
    text-align: center;
    color: white !important;
}

#about-sec1 {
    display: none;
}

#about-sec2 img {
    width: 100%;
}

#missionHeader {
    background-image: url(/images/about/mission-statement.jpg);
    background-repeat: no-repeat;
}

.aboutTeamBoxes {
    display: flex;
    flex-wrap: wrap;
}

.aboutTeamBox {
    width: calc(25% - 10px);
    position: relative;
    /*border: 2px solid rgba(239, 239, 239, 1);*/
    box-sizing: border-box;
    margin: 5px;
}

.aboutTeamBoxInfo {
    position: absolute;
    opacity: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    text-align: center;
    background-color: rgba(239, 239, 239, 1);
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
    display: flex;
    justify-content: center;
    align-items: center;
}

.aboutTeamBoxInfo span {
    color: #2E2A25;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

.aboutTeamBoxInfo div {
    position: absolute;
    top: calc(50% - 33px);
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

.aboutTeamBoxInfoHover {
    background-color: rgba(255, 255, 255, 0);
}

.aboutTeamBoxInfoHover span {
    color: #ffffff;
    font-weight: 600;
}

.aboutTeamBoxInfoHover span.aboutTeamBoxName {
    opacity: 0.6;
}

.aboutTeamBoxInfoHover div {
    top: calc(75% - 53px);
}

.aboutTeamBoxInfoAlt span {
    color: #2E2A25;
}

.aboutTeamBoxName {
    font-size: 30px;
    font-weight: bold;
}

.aboutTeamBoxJob {
    font-size: 24px;
}

.aboutTeamBox img {
    max-width: 100%;
}

.usaTeamBoxes {
    width: 100%;
}

@media screen and (max-width: 1100px) {
    .aboutTeamBox {
        width: calc(50% - 10px);
    }
}

@media screen and (max-width: 600px) {
    #aboutHeader {
        background-position: left top!important;
    }
    #aboutHeader .sectorTitleSection {
        min-height: unset;
    }
    #aboutHeader #missionOpeningText {
        max-width: 100%;
        background-color: rgba(0, 0, 0, 0.5);
    }
    #aboutHeader.sectorHeader h1 {
        color: #fff;
    }
    #aboutHeader.sectorHeader h3 {
        color: #fff;
    }
    .aboutTeamBox {
        width: calc(100% - 10px);
    }
}

/* ------------------------
    Main News Article Pages
------------------------ */

.newsArticleBody {
    padding: 20px 0;
}

.newsArticleBody img {
    max-width: 100%;
}

#mainNewsBlock {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

#mainNewsBlock .newsStory {
    display: flex;
    flex-direction: column;
    margin: 10px 5px;
    flex-grow: 1;
    min-width: 0;
    width: 250px;
}

#mainNewsBlock .newsStoryText {
    padding: 10px;
    display: flex;
    flex-direction: column;
}

#navNewsContainer #mainNewsBlock .newsStoryText {
    padding: 10px 0!important;
}

#mainNewsBlock .newsStoryText p {
    font-size: 0.8em;
}

#mainNewsBlock .newsStoryText h2 {
    margin: 0;
    font-weight: 300;
    font-size: 1em;
}

#mainNewsBlock .newsStoryImage {
    width: 100%;
    max-width: 100%;
    max-height: inherit;
    height: auto;
}

.homeNews {
    display: flex;
    flex-direction: row;
}

.newsQuote {
    font-style: italic;
    font-weight: 400;
}

@media screen and (max-width: 650px) {

    #mainNewsBlock .newsStoryText {
        width: 100%;
    }

    #aboutIntro h2 {
        font-size: 1.2em;
    }
}


/* ------------------------------------
    Testimonial Pages
------------------------------------*/

#mainTestimonialContainer {
    background-color: #D9D8D6;
    margin: 0 -20px -30px;
    padding: 30px 0;
}

/* ------------------------------------
    Case Study Pages
------------------------------------*/

#mainCaseStudyBlock {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

#mainCaseStudyBlock .caseStudy {
    display: flex;
    flex-direction: column;
    margin: 10px 5px;
    flex-grow: 1;
    min-width: 0;
    width: 250px;
}

#mainCaseStudyBlock .caseStudyImage {
    width: 100%;
}

#mainCaseStudyBlock .caseStudyText h2 {
    margin: 0;
    font-weight: 300;
    font-size: 1em;
}

#mainCaseStudyBlock .caseStudyText p {
    font-size: 0.8em;
}

#mainCaseStudyBlock .caseStudyText {
    padding: 5px;
}

#cmslogo {
    margin: 84px 10px;
}

@media screen and (max-width: 650px) {

    #socialMediaBlock .caseStudyImage {
        display: none;
    }

    #socialMediaBlock .newsStoryText {
        width:100%;
    }
}

@media screen and (max-width: 600px) {
    #cmslogo {
        margin: 0 20px;
    }
}


/* ---------------------------------
    Sector Pages 
------------------------------------*/
.sectorHeader {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    background-position: center;
    background-size: cover;
    position: relative;
    margin-bottom: 0px;
}

.sectorHeader::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 1;
    background-color: rgba(46, 42, 37, 0.7);
}

.sectorHeader.noFilter::after {
    background-color: transparent!important;
}

/* .sectorHeader.noFilter h1 {
    color: #c2d500;
}

.sectorHeader.noFilter h3 {
    color: #c2d500;
} */

.sectorHeader > * {
    z-index: 2;
}

.sectorHeader h3, .sectorHeader h2 {
    color: #FFFFFF;
}

.sectorHeader h1 {
    color: #FFFFFF;
    font-weight: 900;
    margin: 0;
}

.productHeader h1 {
    font-size: 1.4em;
    font-weight: 300!important;
    /* margin-top: 20px; */
}

.sectorDualLogos {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
}

.sectorDualLogos img {
    width: auto!important;
    height: auto;
}

.sectorDualImages {
    display: flex;
    width: 100%;
    justify-content: space-around;
    align-items: center;
}

.sectorDualImages img {
    padding: 10px;
    box-sizing: border-box;
    width: 50%;
}

.sectorButton {
    margin: 0 auto;
    display: block;
    width: 100%;
    width: fit-content;
    max-width: 250px;
    min-width: 200px;
    padding: 10px!important;
    text-align: center!important;
    color: #ACA39A!important;
    border: 2px solid #ACA39A;
    cursor: pointer;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
}

.sectorButton:hover {
    background-color: #ACA39A;
    color: #FFFFFF!important;
    border: 2px solid #ACA39A;
}

.vigileyezLandingButton {
    margin: 0 auto;
    display: block;
    width: 100%;
    max-width: 350px; /* limit the button width */
    min-width: 200px; /* optional: make it responsive below 350px */
    padding: 10px !important;
    text-align: center !important;
    color: #837c75 !important;
    border: 2px solid #ACA39A;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    font-weight: bold;
    box-sizing: border-box;
}

.vigileyezLandingButton:hover {
    background-color: #ACA39A;
    color: #FFFFFF!important;
    border: 2px solid #ACA39A;
}

.sectorButtonLight {
    margin: 0 auto;
    display: block;
    width: 100%;
    width: fit-content;
    max-width: 250px;
    min-width: 200px;
    padding: 10px!important;
    text-align: center!important;
    color: #FFFFFF!important;
    background-color: rgba(0, 0, 0, 0.2);
    border: 2px solid #FFFFFF;
    cursor: pointer;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
}

.sectorButtonLight:hover {
    background-color: #ACA39A;
    color: #FFFFFF!important;
    border: 2px solid #ACA39A;
}

.sectorBoxWrapper {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -30px;
}

.sectorBox {
    min-height: 500px;
    width: 50%;
    min-width: 250px;
    flex-grow: 1;
    padding: 30px;
    padding: 5vw;
    box-sizing: border-box;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    position: relative;
    transition: all .5s ease-in-out;
}

.sectorBox:hover {
    box-shadow: inset 0 0 500px 0px black;
}

.sectorBox > * {
    z-index: 1;
    color: #FFFFFF;
}

.sectorBox h2 {
    font-weight: 900;
    font-size: 2em;
    margin: 0;
}

.sectorBox a {
    font-weight: 500;
}

.sectorBox a:hover {
    color: #CF0A2C;
}

.sectorBox::after {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: rgba(46, 42, 37, 0.75);
    content: "";
}

.sectorTitleSection {
    max-width: 700px;
    flex-grow: 1;
    min-height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 20px 0;
}

.sectorTitleContent {
    padding: 50px 0;
    box-sizing: border-box;
    max-width: 600px;
}

.sectorTitleContent img {
    max-width: 550px;
    width: 100%;
}

.webeyeFogContent img {
    max-width: 450px;
    width: 100%;
}

.sectorFlex {
    display: flex;
}

.sectorBenefitsTitle {
    max-width: 700px;
    display: block;
    margin: 10px auto;
    padding-bottom: 10px;
    text-align: center
}

.sectorBenefitsBox {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.sectorBenefits {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    padding: 10px;
    width: 100%;
}

.sectorBenefit {
    display: flex;
    flex-direction: column;
    flex-basis: 25%;
    flex-grow: 1;
    min-width: 200px;
    padding: 10px;
    margin-top: 10px;
    text-align: center;
    opacity: 0;
    box-sizing: border-box;
}

.sectorBenefit.lg img {
    width: 200px;
    height: 200px;
}

.sectorBenefits.threeRow .sectorBenefit {
    flex-basis: 33.33%;
}

.sectorBenefits.fiveRow .sectorBenefit {
    flex-basis: 20%;
}

.animateAppear {
    animation: appear 1s ease-in-out;
    animation-fill-mode: forwards;
}

.sectorBenefitMaxWidth {
    max-width: 1300px;
}

.sectorBenefitPadding {
    padding: 20px 0;
}

@keyframes appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.sectorBenefit p {
    font-size: 0.8em;
    margin: 5px 0;
}

.sectorBenefit h3 {
    margin: 20px 0 5px;
    color: #2E2A25;
}

.sectorBenefit img {
    width: 100px;
    height: 100px;
    margin: 0 auto;
    display: block;
    -webkit-transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
}

.landFont {
    font-size: 1.1em;
    margin-top: 0!important;
}

#techLine {
    font-size: 1.1em;
}

#webeyeImage, #currencyIcon, #telephoneLogo {
    width: 200px;
    height: 200px;
}

#submissionImage {
    margin-bottom: 0;
}

/*.sectorBenefit img:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}*/

.sectorTickList {
    list-style-image: url(/images/videofied/tickcircle-20.png);
}

.sectorTickList li {
    padding: 5px;
}

.webeyeBenefitsIcon {
    font-family: 'Glyphter';
    font-size: 2.5em;
    color: #6E6259;
    transition: all 0.5s ease-in-out;
    cursor: default;
}

.webeyeBenefitsIcon:hover {
    color: #CF0A2C;
}

.sectorDark {
    background-color: #CF0A2C;
}

.sectorRed {
    background-color: #D9D8D6;
}

#managementTool .sectorInfo {
    padding-top: 0px;
}

.sectorInfo {
    padding: 80px 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
}

.sectorInfoCenter {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.sectorInfoDesc {
    max-width: 700px;
}

.sectorInfoHeader {
    margin-top: 0;
    color: #2E2A25;
}

.sectorInfoWhite {
    margin-top: 0;
    color: #ffffff !important;
}

.sectorInfoContent {
    width: 50%;
    min-width: 300px;
    flex-grow: 1;
    flex-basis: 0;
}

.sectorInfoContent > *:nth-child(1) {
    padding-right: 20px;
}

.sectorKeyMedia {
    width: 50%;
    min-width: 300px;
    flex-grow: 1;
    flex-basis: 0;
    display: flex;
    flex-direction: column;
    position: relative;
}

.sectorKeyMedia:nth-child(1) {
    padding-right: 20px;
}

.sectorKeyMedia img {
    width: 100%;
    max-width: 600px;
    height: auto;
    display: block;
    margin: 0 auto;
}

.sectorVideo {
    width: 100%;
    max-width: 600px;
    height: 320px;
    display: block;
    margin: 0 auto;
}

.sectorImage {
    max-width: 100%;
    padding: 30px 0;
}

.sectorImageCapped {
    max-width: 300px;
    width: 100%;
    display: block;
    margin: 0 auto;
}

.fogdownload {
    width: 100%;
    text-align: center;
}

.foginfo {
    display: inline-block;
}

.sectorDiagram {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 40px 0;
    text-align: center;
}

.sectorSignOff {
    padding: 50px 0px;
    margin: 0 0 -30px;
}

.sosapp {
    font-size: 0.7em;
}

#incfeat {
    margin-bottom: 0;
}

#personalImage::after {
    background-color: rgba(0, 0, 0, 0.3)!important
}

.flip-card {
    background-color: transparent;
    width: 100%;
    height: 182px;
    perspective: 1000px;
  }
  
  .flip-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
  }
  
  .flip-card:hover .flip-card-image {
    opacity: 0;
    height: 0;
  }

  .flip-card:hover .flip-card-content {
    opacity: 1;
    -webkit-transition: opacity .3s .3s ease;
    -moz-transition: opacity .3s .3s ease;
    -ms-transition: opacity .3s .3s ease;
    -o-transition: opacity .3s .3s ease;
    transition: opacity .3s .3s ease;
  }

  .flip-card-content {
      opacity: 0;
      -webkit-transition: opacity .4s .0s ease;
      -moz-transition: opacity .4s .0s ease;
      -ms-transition: opacity .4s .0s ease;
      -o-transition: opacity .4s .0s ease;
      transition: opacity .4s .0s ease;
  }

  .flip-card-image {
      opacity: 1;
      height: 100px;
      -webkit-transition: height .3s .2s ease!important;
      -moz-transition: height .3s .2s ease!important;
      -ms-transition: height .3s .2s ease!important;
      -o-transition: height .3s .2s ease!important;
      transition: height .3s .2s ease!important;
  }
  
  .flip-card-front {
    width: 100%;
    height: 100%;
  }
  
  .flip-card-front {
    background-color: #d9d8d6;
    color: black;
  }

  .flip-card-front h3 {
      margin: 0!important;
  }

  .flip-card-front span {
      color: #cf0a2c;
  }

#servicesImage          {background-image: url(/images/cms/sunsetcity.jpg)}
#constructionImage      {background-image: url(/images/construction/construction-wide.jpg)}
#arcImage               {background-image: url(/images/alarmreceivingcentres/alarm-receiving-centres-wide.png)}
#guardingImage          {background-image: url(/images/guarding/guarding.jpg)}
#residentialImage       {background-image: url(/images/residential/residential.jpg)}
#personalImage          {background-image: url(/images/landing/security-guard.jpg)}
#simCardImage           {background-image: url(/images/landing/sim-banner-web-alt.jpg)}
#virtualGuardImage      {background-image: url(/images/landing/virtual-guard-lp3.jpg)}
#recurringRevenueImage  {background-image: url(/images/landing/recurring-revenue.jpg)}
#videofiedKitImage      {background-image: url(/images/landing/construction.jpg)}
#securityGuardImage     {background-image: url(/images/landing/security-guard.jpg)}
#launchImage            {background-image: url(/images/landing/v3.2-banner.jpg)}
#submissionImage        {background-image: url(/images/landing/thank-you-banner.jpg)}
#directImage            {background-image: url(/images/landing/DahuaD2C.jpg)}
#blendedSolutionsImage  {background-image: url(/images/landing/construction-site.png)}

#simCardImage {      
    background-position-y: -100px;
    background-repeat: no-repeat;
}

#simCardImage .sectorTitleContent {
    text-shadow: #071731 0px 0px 120px;
}

.m2mSimForm {
    color: white;
}

.m2mSimForm {
    margin-top: 0; 
}

.whiteTextForm {
    color: white;
}

.whiteTextForm {
    margin-top: 0; 
}

#m2mSim {
    color: white;
}
.verex {
    font-size: 0.8em;
}

#uspridet {
    font-size: 1.5em;
}

#catalogueImage::after {
    background-color: rgba(207, 10, 44, 1);
}

@media screen and (max-width: 1500px) {
    #simCardImage {
        background-position-y: -50px;
    }
}

@media screen and (max-width: 1400px) {
    #simCardImage {
        background-position-y: -30px;
    }
}

@media screen and (max-width: 1200px) {
    #simCardImage {
        background-position-y: -10px;
    }
}

@media screen and (max-width: 1100px) {
    #simCardImage {
        background-position-y: 0px;
    }
}

@media screen and (max-width: 875px) {
    .sectorFlex {
        flex-direction: column;
    }
    
    .sectorInfoHeader {
        margin-top: 20px;
    }
}

@media screen and (max-width: 750px) {
    #simCardImage {
        background-image: url(/images/landing/sim-banner-web-alt-mobile.jpg)
    }
}

@media screen and (max-width: 700px) {
    .landing-page-key-image {
        flex-direction: column;
    }
}


/* -------------------------------
----------- App Page -------------
------------------------------- */

#appImage {
    background-image: url(/images/support/iphone-app-template-1080w.jpg)
}

.appWrapper {
    display: flex;
    flex-wrap: wrap;
}

.appSection {
    flex-basis: 0;
    flex-grow: 1;
    width: 250px;
    min-width: 250px;
    padding: 0 10px 10px 0;
    text-align: center;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.appIcon > * {
    width: 120px;
    height: 120px;
}

.appLegal {
    font-size: 0.6em;
}

.appPlayBadge {
    width: 150px;
    height: auto;
    margin: 0 10px 10px 0;
}

.appIOSBadge {
    width: 135px;
    height: auto;
    margin: 0 10px 10px 0;
    padding-top: 3px;
}

/* ---------------------------------
Downloads Pages 
------------------------------------ */


.downloadsBlock {
    display:flex;
    flex-direction: row;
    flex-wrap:wrap;
    justify-content: space-around;
    font-size:0.8em;
}

.downloadsBlock section{
    width:20%;
    padding:0 20px 20px;
    box-sizing: border-box;
}

.downloadsBlock section img{
    margin: 0 auto;
    display: block;
    border: 2px solid #D9D8D6;
}

@media screen and (max-width: 1500px) {

    .downloadsBlock section{
        width:25%;
    }
}

@media screen and (max-width: 875px) {

    .downloadsBlock section{
        width:50%;
    }
}

@media screen and (max-width: 420px) {

    .downloadsBlock section{
        width:100%;
    }
}

/* ---------------------------------
    Contact Page 
------------------------------------*/

#fullContactDetails {
    display: flex;
    flex-wrap:wrap;
}

#fullContactDetails h2 {
    margin:0;
}

#fullContactDetails h3 {
    margin:0;
}

#fullContactDetails h4 {
    margin:20px 0;
}

.openingTimes {
    padding: 13px;
    margin-top: 20px;
    width: 50%;
    box-sizing: border-box;
    display: grid;
    display: -ms-grid;
    grid-auto-columns: 45px minmax(300px, 95%);
    -ms-grid-auto-columns: 45px minmax(300px, 95%);
}

.contactLocation {
    padding: 13px;
    margin-top: 20px;
    width: 50%;
    box-sizing: border-box;
    display: grid;
    display: -ms-grid;
    grid-auto-columns: 45px minmax(300px, 95%);
    -ms-grid-auto-columns: 45px minmax(300px, 95%);
}

.contactLocation:first-of-type {
    background-color: #D9D8D6;
    width: 100%;
}

.contactLocation div {
    padding: 5px;
}

.contactLocation.techPartner {
    background-color: #D9D8D6;
    position: relative;
}

.contactLocation.techPartner .techTitle {
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    width: 100%;
    background-color: #6E6259;
    color: #FFFFFF;
    box-sizing: border-box;
}

.contactLocation.techPartner .techPartnerImg {
    width: 100%;
    max-width: 180px;
    padding: 25px 0px 10px;
}

.contactLocationTitle {
    grid-column: 2;
    -ms-grid-column: 2;
    grid-row: 1;
    -ms-grid-row: 1;
}

.contactLocationDetails {
    grid-column: 2;
    -ms-grid-column: 2;
    grid-row: 2;
    -ms-grid-row: 2;
    display: flex;
}

.contactLocationDetails div {
    margin-right: 5px;
}

.contactLocationDetails div:first-of-type {
    border-right: 2px solid #CAC7A7;
    padding-right: 10px;
}

.contactLocation .contactFlag{
    height:35px;
    width: 35px;
    border-radius: 50%;
}

#contactcopy {
    margin: 20px 0px;
    background-color: #d9d8d6;
    padding: 10px 20px;
}

#contactcopy h3 {
    margin-bottom: 0;
}

#contactcopy p {
    margin: 4px 0;
}

.telephoneLink::before {
    content:'\0048';
}

.emailLink::before {
    content:'\0049';
}

.internetLink::before {
    content:'\0047';
}

.telephoneLink::before,
.emailLink::before,
.internetLink::before {
    font-family: 'Glyphter';
    position:relative;
    top:3px;
    margin-right: 10px;
}

@media screen and (max-width: 980px) {
    #fullContactDetails {
        flex-direction:column;
    }

    .contactLocation {
        padding: 1%;
        margin: 1%;
        margin-bottom: 20px;
        width: 100%;
        display: flex;
        flex-direction: column;
        border-bottom: 2px solid #CAC7A7;
    }

    .contactFlag {
        margin: 10px auto;
    }

    .contactLocationTitle {
        text-align: center;
    }

    .contactLocationDetails {
        flex-direction: column;
    }

    .contactLocationDetails div:first-of-type {
        border-right: 0px solid #CAC7A7;
    }
}

/* ------------------------------------
-------------- Call back page ---------
-------------------------------------*/

#callbackImage {
    background-image: url(/images/home/webeye-background-image-tall.jpg);
    margin-bottom: -30px;
}

#callbackImage .sectorTitleSection {
    display: block;
    box-sizing: border-box;
    padding: 5px;
    width: 100%;
}

form#callBackPageForm {
    border: none;
    margin: 0 auto;
    max-width: 400px;
    padding-right: 0;
}

#callBackPageForm input {
    background: none;
    border: 2px solid #FFFFFF;
}

#callBackPageForm input:focus {
    outline: 0;
    background-color: rgba(255,255,255,0.8);
}

#callBackPageForm textarea {
    background: none;
    border: 2px solid #FFFFFF;
    color: #FFFFFF;
    padding: 10px;
    font-size: 14px;
    transition: 0.3s all ease-in-out;
    width: 100%;
    box-sizing: border-box;
}

#callBackPageForm textarea:focus {
    outline: 0;
    background-color: rgba(255,255,255,0.8);
    color: #2E2A25;
}

#callBackPageForm textarea::-webkit-input-placeholder {
    color: #FFFFFF;
}

#callBackPageForm textarea:focus::-webkit-input-placeholder {
    color: #2E2A25;
}

#callBackPageForm label {
    background: none;
}

/* ------------------------------------
    FAQ Page
------------------------------------*/

#faqSection {
    margin: 0 -20px -30px;
    padding: 25px 0;
}

.faqQuestion {
    position: relative;
    padding: 30px 0;
    background-color: #ffffff;
    margin: 10px 0px;
    border-bottom: 2px solid #D9D8D6;
}

/* ------------------------------------
    Privacy and Cookie Policies Page 
------------------------------------*/

#privacyCookiePolicies {padding:0 20px 30px;}

#tandcBlock {padding:0 20px 30px;}

#tandcBlock .tandcDownload:first-of-type {
    border-bottom: 1px solid #D9D8D6;
}

#tandcBlock .tandcDownload:hover p {
    color: #CF0A2C;
}

#tandcBlock .tandcDownload:hover a img {
    opacity:0.6;
    transform:scale(0.9);
}

.tandcDownload {
    border-bottom: 1px solid #d9d8d6;
}


/* ------------------------------------ 
   Product Pages
------------------------------------*/

#rapidOpening {
    background: url(/images/rapid/webeyeRAPID-background.jpg) center;
    background-size: cover;
}

#cmsOpening {
    background: url(/images/cms/whatwhymonitoring.jpg) center;
    background-size: cover;
}

#cmsDetailsOpening {
    background: url(/images/cms/cementline.jpg);
    background-size: cover;
}

#cloudAutomation {
    margin-top: 30px;
}

#cloudDetails {
    margin-top: 10px;
}

#cloudDetails div p {
    margin-top: 5px;
}

a.viewFullLink {
    font-weight: 500;
}

.halfBox {
    min-width: 200px;
    flex-grow: 1;
    flex-basis: 0;
}

.halfBox:nth-child(1) {
    padding-right: 20px;
}

#calipsa-logo {
    max-width: 100%;
    margin-top: 30px;
}

#cmsDetailsKeyFeatures {
    display: block;
    margin: 0 auto;
    max-width: 1050px;
    padding-top: 40px;
}

.cmsDetailsKeyImageBlock {
    height: 100%;
    max-height: 100px;
}

.imgDetailsKeyImage {
    width: auto!important;
    height: 100%!important;
}

.imgDetailsAlarmImage {
    width: 100%!important;
    height: 100%!important;
}

.inlineImage {
    float: right;
    max-width: 50%!important;
    padding: 20px;
}


#leftTextContentBlock {
    background-color: #D9D8D6;
    margin-top: 45px;
}

.leftTextContent {
    width: 50%;
    min-width: 300px;
    flex-grow: 1;
    flex-basis: 0;
}

#cmsInfoGraphicBlock {
    background-color: #D9D8D6;
    margin-top: 45px;
}

.cmsInfo {
    width: 60%;
    flex-grow: 1;
    padding-right: 30px;
}

.cmsInfo > * {
    max-width: 900px;
}

#productCardWrapper {
    background-color: #FFFFFF;
    box-shadow: 0 0 35px -15px #000;
    min-height: 300px;
    max-width: 300px;
}

#productCards {
    margin: 30px 0;
    position: relative;
    padding: 10px;
}

.productCard {
    width: 100px;
    display: block;
    text-align: center;
}

.productCard img {
    width: 100%;
    height: auto;
    margin: 0 auto;
    display: block;
    margin-bottom: 20px;
}

.productCardNumber {
    margin: 0 auto;
    z-index: 10;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    padding: 4px;
    background: #CF0A2C;
    border: 2px solid #FFFFFF;
    color: #FFFFFF;
    text-align: center;
    font-size: 1.7em;
}

#cmsCloudBasedProcess {
    flex-direction: column;
}

.cmsCloudInfo {
    display: flex;
    width: 100%;
}

.cmsCloudInfo img {
    margin: 0 auto;
    display: block;
}

.cmsCloudInfo .halfBox:nth-child(2) {
    background-color: #d9d8d6;
    padding: 50px;
}

.centerTextWrapper {
    width: 100%;
    display: flex;
    justify-content: center;
}

.centerTextContent {
    width: 100%;
    max-width: 750px;
    text-align: center;
}

.productBenefit {
    max-width: 400px!important;
}

.sosProductInfo {
    display: flex;
    width: 100%;
}

.sosProductInfo img {
    margin: 0 auto;
    display: block;
    max-width: 350px;
}

#seeMoreLink {
    font-size: 17px;
}

#webeyeFogDetailsOpening {
    background: url(/images/webeyefog/bluesmoke.jpg);
    background-size: cover;
    margin-bottom: 0;
}

.slogan {
    background-image: url(/images/webeyefog/fogshape.png);
    background-size: cover;
    text-align: center;
}

.slogan img {
    width: 100%;
    max-width: 500px;
    display: block;
    margin: 0 auto;
}

.slogan h2 {
    margin: 0;
}

/*.businessGrowthList {
    list-style: none;
}

.businessGrowthList::before {
    content: "\2022";
    color: #CF0A2C;
    font-size: 2em;
    display: inline-block;
    position: absolute;
    top: 0em;
}

ul li.businessGrowthList {
    color: #000000;
}*/

#oculiImage {background-image: url(/images/oculi/donkey.jpg) }
#avigilonImage {background-image: url(/images/avigilon/airport.jpg) }
#videofiedImage {background-image: url(/images/videofied/building-site.jpg) }
#hikvisionImage {background-image: url(/images/hikvision/hikvision-background.jpg) }
#rsiImage {background-image: url(/images/rsi/scaffold.jpg) }
#sosImage {background-image: url(/images/sos/carpark.jpg) }
#sosDetailsImage {background-image: url(/images/sos/skyline.jpg) }
#oculiDetailsImage {background-image: url(/images/oculi/village.jpg) }
#avigilonDetailsImage {background-image: url(/images/avigilon/office.jpg) }
#videofiedDetailsImage {background-image: url(/images/videofied/constructionsite.jpg) }
#rsiDetailsImage {background-image: url(/images/rsi/house.jpg) }
#rapidImage {background-image: url(/images/rapid/rapid-intruder.jpg) }
#fogImage {background-image: url(/images/webeyefog/bluesmoke.jpg)}
#dahuaImage {background-image: url(/images/dahua/LadinOppsRoom.jpg)}
#ajaxImage {background-image: url(/images/ajax/LadinOppsRoom.jpg)}
#webeyego-background {background-image: url(/images/webeyego/webeyego-background.jpg)}
#videoMonitoringSolution {background-image: url(/images/videomonitoringsolution/training.jpg)}

@media screen and (max-width: 1300px) {
    #cloudAutomation, .cmsCloudInfo, .sosProductInfo {
        flex-direction: column;
    }

    .sosProductInfo img {
        max-width: 150px;
    }

    .cmsCloudInfo .halfBox:nth-child(2) {
        padding: 0px;
    }
}

@media screen and (max-width: 950px) {
    .inlineImage {
        float: center;
        max-width: 100%!important;
        padding: 20px 0;
    }
}

@media screen and (min-width: 800px) {
    .sectorBenefitMinWidth {
        min-width: 0;
    }
}

@media screen and (min-width: 555px) {
    #calipsa-logo {
        margin-top: 30px;
    }
}

/* -----------------------
------ Status pages ------
----------------------- */

.currentStatus {
    margin-left: auto;
    margin-right: 20px;
    display: inline-block;
}


.statusMeter.downtime,
.availableStatus div.downtime {
    background-color: #CF0A2C;
}

.statusMeter.disruption,
.availableStatus div.disruption {
    background-color: #F18A00;
}

.statusMeter.healthy,
.availableStatus div.healthy {
    background-color: #C2D500;
}

.statusMeter.maintenance,
.availableStatus div.maintenance {
    background-color: #006BA6;
}

.statusBar {
    width: 100%;
    padding: 30px 0;
    text-align: center;
    grid-column: full!important;
    color: #FFFFFF;
}

.statusBar > * {
    color: #FFFFFF;
}

.statusCalendar {
    padding: 20px 0;
}

.statusDescription {
    text-align: center;
    padding: 20px;
}

.statusKey {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding: 10px;
}

.availableStatus {
    width: 24%;
    min-width: 250px;
    margin: 5px;
    height: auto;
    text-align: center; 
    display: flex;
    flex-direction: column;
}

.availableStatus h3, .availableStatus p {
    margin: 8px 5px 0 5px;
}

.availableStatus div:first-child {
    height: 30px;
    width: 30px;
    margin: 0 auto;
}

.statusUpdatesTime {
    color: #ACA39A;
}

.activityHeatmapWrapper{
    width: 100%; 
    height: 100%; 
    display: flex; 
    flex-wrap: wrap;
    justify-content: center; 
    align-items: center;
}

#activityHeatmap {
    direction: rtl;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: auto;
    width: 100%;
    max-width: 1250px;
    margin: 10px;
}

.activityHeatmap-wrapper {
    width: 100%;
    height: 100%;
    display: grid;
    display: -ms-grid;
    grid: 50px 10px 50px / auto-flow;
    -ms-grid: 50px 10px 50px / auto-flow;
    grid-gap: 1px;
    -ms-grid-gap: 1px;
}

.activityHeatmap-day {
    cursor: pointer;
    grid-row: 1;
    -ms-grid-row: 1;
    width: 0px;
    height: 100%;
    direction: ltr;
    user-select: none;
    font-size: 0px;
    z-index: 10;
    position: relative;
    display: inline-block;
    background-color: #D9D8D6;
    transition: all .3s cubic-bezier(0.68, 0.01, 0.69, 1);
        -webkit-transition: all .3s cubic-bezier(0.68, 0.01, 0.69, 1);
}

.activityHeatmap-day:hover {
    margin-top: 12px;
}

.activityHeatmap-day:hover + .activityHeatmap-dot{
    background-color: rgba(255, 255, 255, 1);
}

.activityHeatmap-day.selected {
    grid-row: 1/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    border-right-width: 18px;
    width: 200px;
    margin: 12px 5px 0 5px;
    position: relative;
    font-size: 12px;
}

.activityHeatmap-day.selected span.title {
    font-weight: 900;
}

.activityHeatmap-day.selected + .activityHeatmap-dot {
    display: none;
}

.activityHeatmap-day-date {
    position: absolute;
    right: 0;
    bottom: 5px;
    height: 0;
    width: 0;
    color: #FFFFFF;
    font-size: 14px;
    text-transform: uppercase;
    transform: rotate(-90deg);
}

.activityHeatmap-day-update {
    background-color: #D9D8D6;
    padding: 5px;
    transition: all .3s ease-in-out;
        -webkit-transition: all .3s ease-in-out;
}

.activityHeatmap-day-update strong {
    font-weight: 500;
    line-height: 20px;
}

.activityHeatmap-day-update h4 {
    margin: 3px 0 3px 0;
    color: #2E2A25;
}

.activityHeatmap-dot {
    grid-row: 2;
    -ms-grid-row: 2;
    background-color: #D9D8D6;
    border-radius: 25px;
    margin: 3px;
    width: 3px;
    height: 3px;
    position: relative;
    z-index: 11;
    transition: all .3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -webkit-transition: all .3s cubic-bezier(0.175, 0.885, 0.32, 1.275);  
}

.activityHeatmap-month {
    direction: ltr;
    grid-row: 3;
    -ms-grid-row: 3;
    width: 9px;
    position: relative;
}

.activityHeatmap-month::after {
    content: attr(title);
    position: absolute;
    font-size: 14px;
    padding: 40px 0 10px 5px;
    line-height: 0;
    user-select: none;
    border-left: 1px solid #D9D8D6;
    text-transform: uppercase;  
}

.status-Healthy {border-right: 9px solid #C2D500;}
.status-Disruption {border-right: 9px solid #F18A00;}
.status-Downtime {border-right: 9px solid #CF0A2C;}
.status-Maintenance {border-right: 9px solid #006BA6;}
.status-Unknown {border-right: 9px solid #000000;}

.bar-Healthy {background-color:  #C2D500;}
.bar-Disruption {background-color:  #F18A00;}
.bar-Downtime {background-color:  #CF0A2C;}
.bar-Maintenance {background-color:  #006BA6;}
.bar-Unknown {background-color:  #000000;}

.text-Healthy {color:  #C2D500;}
.text-Disruption {color:  #F18A00;}
.text-Downtime {color:  #CF0A2C;}
.text-Maintenance {color:  #006BA6;}
.text-Unknown {color: #000000;}

#platformStatusPage > * {
    grid-column: main;
    -ms-grid-column: 2;
}

#platformStatusMobile {
    display: none;
}

.platformStatusWrapper {
    position: relative;
    width: 130px;
    height: 130px;
    display: flex;
    align-items: center;
}

.canvasGauge {
    position: absolute; 
    z-index: 1; 
    left: 0px;
    top: 0px;
}

.canvasDial {
    position: absolute;
    z-index: 2;
    left: 0px;
    top: 0px;
}

.statusTextDiv {
    text-align: center;
    margin: auto;
    display: block;
    z-index: 3;
    font-size: 14px;
}

@media screen and (max-width: 750px) {
    #platformStatus {
        display: none;
    }

    #platformStatusMobile {
        display: block;
    }

    #platformStatusMobile .statusTextDiv {
        display: block;
        text-align: right!important;
        left: -86px;
        top: 1px!important;
        position: relative;
    }
}


/* -----------------------
----- Not Found Page -----
----------------------- */

.notFoundWrapper {
    text-align: center;
    padding: 150px 0;
    margin-bottom: -30px;
    background-image: url(/images/general/404.png);                          
    background-position: center;
    background-size: cover;
    position: relative;
}

.notFoundWrapper > * {
    z-index: 2;
    position: relative;
}

.notFoundWrapper::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 1;
    background-color: #FFFFFF;
    opacity: 0.9;
}

.notFoundWrapper h1 {
    font-weight: 900;
    margin-top: 0;
}

/* ------------------------
------ Slick Slider -------
------------------------ */

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;
    margin: 5px 40px;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}

/* Icons */
@font-face
{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;

    src: url('./fonts/slick.eot');
    src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg');
}
/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: #cf0a2c;;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev
{
    left: 0px;
}
[dir='rtl'] .slick-prev
{
    right: 0px;
    left: auto;
}
.slick-prev:before
{
    content: '←';
}
[dir='rtl'] .slick-prev:before
{
    content: '→';
}

.slick-next
{
    right: 0px;
}
[dir='rtl'] .slick-next
{
    right: auto;
    left: 0px;
}
.slick-next:before
{
    content: '→';
}
[dir='rtl'] .slick-next:before
{
    content: '←';
}

/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: black;
}


/* landing pages */
.landing-page {
    display: flex;
}
.landing-page-col1 {
    flex-basis: 60%;
    flex-grow: 1;
}
.landing-page-col1-content {
    margin-right: 70px;
}
.landing-page-col2 {
    flex-basis: 40%;
    flex-grow: 1;
}
.landing-page-col2 form h2 {
    color: #fff!important;
}
.landing-page-col2 form {
    margin: 5px;
    margin-top: 25px;
    padding: 20px;
    background-color: #4F5858;
    position: sticky;
    top: 35px;
}
.landing-page-key-product {
    display: flex;
    align-items: center;
}
.landing-page-key-product div {
    flex-grow: 1;
    flex-basis: 0;
}
.landing-page-key-product img {
    padding: 10px;
}
.landing-page-feat-image {
    max-width: 600px;
    width: 100%;
}

.landing-page-feat-image-2 {
    max-width: 800px;
    width: 100%;
}


.landing-page-col1 #trigger {
    color: #000;
}

.landing-page-col1 #obligation {
    font-size: 0.7em;
}

.cmsvid {
    width: 100%;
    max-width: 250px;
}

.blandimg img {
    width: 100%;
    max-width: 280px;
    display: block;
    margin: auto;
}

.bwidthimg img {
    width: 100%;
    max-width: 400px;
    display: block;
    margin: auto;
}


@media screen and (max-width: 700px) {
    .landing-page {
        flex-direction: column-reverse;
    }
}

@media screen and (min-width: 700px) and (max-width: 900px) {
    .landing-page-key-product {
        flex-direction: column;
    }
}

@media screen and (max-width: 700px) {
    .landing-page-key-product {
        flex-direction: column;
    }
}


img.lazy {
    animation: none;
}
img {
    -webkit-animation: appear .45s .05s 1 ease-in forwards;
    -moz-animation: appear .45s .05s 1 ease-in forwards;
    -ms-animation: appear .45s .05s 1 ease-in forwards;
    -o-animation: appear .45s .05s 1 ease-in forwards;
    animation: appear .45s .05s 1 ease-in forwards;
    opacity: 0; 
}
@-webkit-keyframes appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-moz-keyframes appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-ms-keyframes appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-o-keyframes appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

#videoButton {
    background-color: rgba(250, 250, 250, .5);
    font-weight: 500;
    font-size: 17px;
}

.cmsDialog {
    position: fixed;
    z-index: 300;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cmsDialog iframe {
    width: 50%;
    height: 50%;
    min-width: 560px;
    min-height: 340px;
    display: block;
    margin: auto;
}

.cmsDialog::before {
    content: '';
    position: absolute;
    z-index: -1;
    background-color: rgba(0,0,0,0.5);
    width: 100%;
    height: 100%;
}

.headerModalRedCircle {
    background-color: #cf0a2c;
    color: #ffffff!important;
    border-radius: 50%;
    width: 280px;
    height: 280px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    border: 5px dotted #fff;
    position: absolute;
    right: 10%;
    top: 110px;
}

.headerModalRedCircle span {
    color: #fff!important;
}

.headerModalRedCircleTextLarge {
    font-size: 3em;
    line-height: 1em;
    margin-bottom: 4px;
    font-weight: 400;
}

#varwirsen {
    text-align: center;
}

.directBottom {
    text-align: center;
}

.listindent {
    list-style: none!important;
    margin-left: 4%!important;
}

.sectorLandingContent {
    padding: 50px 0;
    box-sizing: border-box;
    max-width: 700px;
}

.appStoreSplit {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

.appStoreSplit img {
    max-width: 150px;
}

.dahuaWebeyeLogo {
    max-width: 550px;
    margin-bottom: 15px;
}

@media screen and (max-width: 1500px) {
    .headerModalRedCircle {
        right: 5%;
        top: 120px;
        width: 250px;
        height: 250px;
    }
}

@media screen and (max-width: 1250px) {
    .headerModalRedCircle {
        right: 3%;
        top: 140px;
        width: 220px;
        height: 220px;
    }
    .headerModalRedCircleTextLarge {
        font-size: 2em;
    }
}

@media screen and (max-width: 1100px) {
    .headerModalRedCircle {
        right: 3%;
        top: 165px;
        width: 190px;
        height: 190px;
    }
    .headerModalRedCircleTextLarge {
        font-size: 1.5em;
    }
}

@media screen and (max-width: 1000px) {
    .headerModalRedCircle {
        position: relative;
        top: unset;
        right: unset;
    }
    .collapseAt1000 {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
}

/* ------------------------------------
    Monitoring Stations Pages
------------------------------------*/

#mainAlarmReceivingCentresBlock {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

#mainAlarmReceivingCentresBlock .arcItemContent {
    background: #ededed;
    border-radius: 20px;
    padding: 16px 24px 24px;
    width: 100%;
    margin-bottom: 20px;
}

#mainAlarmReceivingCentresBlock .arcItemContentForm {
    margin: 25px 5px 5px;
    padding: 20px;
    background-color: #4f5858;
    position: sticky;
    top: 35px;
}

#mainAlarmReceivingCentresBlock .arcRow {
    display: flex;
    flex-wrap: wrap;
    margin-right: -16px;
    margin-left: -16px;
    
}

#mainAlarmReceivingCentresBlock .company-logo {
    display: block;
    text-align: center;
}


#mainAlarmReceivingCentresBlock .col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

#mainAlarmReceivingCentresBlock img {
    display: inline-block;
    vertical-align: middle;
    border-style: none;
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
    height: 60px;
}

#mainAlarmReceivingCentresBlock .name {
    font-family: Roboto Medium,sans-serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.2;
    margin-bottom: 8px;
}

#mainAlarmReceivingCentresBlock .company-logo {
    margin-bottom: 16px;
    display: flex;
    padding-top: 8px;

}

#mainAlarmReceivingCentresBlock .station-title {
    color: #404040;
    font-size: 14px;
    margin: -4px 0 8px;
}

#mainAlarmReceivingCentresBlock .website {
    font-size: 16px;
    margin-bottom: 8px;
}

#mainAlarmReceivingCentresBlock .office-list {
    margin-top: 8px;
}

#mainAlarmReceivingCentresBlock .company-address {
    padding-left: 0px;
    position: relative;
}

#mainAlarmReceivingCentresBlock .city-address {
    font-size: 14px;
    margin-bottom: 10px;
}

#mainAlarmReceivingCentresBlock .city-address a {
    color: #404040;
}

#mainAlarmReceivingCentresBlock .phones {
    font-size: 14px;
    word-break: break-word;
    color: #404040;
    margin-bottom: 10px;
}

#mainAlarmReceivingCentresBlock .phones img {
    height: 20px;
    padding-right: 5px;
}

#mainAlarmReceivingCentresBlock .phones a {
    color: #404040;
}

#mainAlarmReceivingCentresBlock .email {
    font-size: 14px;
    word-break: break-word;
}

#mainAlarmReceivingCentresBlock .email a {
    color: #404040;
}

#mainAlarmReceivingCentresBlock .email img {
    height: 20px;
    padding-right: 5px;
}

.arcForm {
    color: white;
}




@media screen and (min-width: 1200px) {

    #mainAlarmReceivingCentresBlock .col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    #mainAlarmReceivingCentresBlock .col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

}

@media screen and (min-width: 768px) {
    #mainAlarmReceivingCentresBlocktabs .col-md-3 {
        flex: 0 0 30%;
        max-width: 30%;
    }

    #mainAlarmReceivingCentresBlock .company-logo {
        margin-bottom: 0;
        display: block;
        text-align: center;
    }

    #mainAlarmReceivingCentresBlock .col-md-5 {
        flex: 0 0 30%;
        max-width: 30%;
    }

    #mainAlarmReceivingCentresBlock .col-md-4 {
        flex: 0 0 40%;
        max-width: 40%;
    }

    #mainAlarmReceivingCentresBlock .col-12 {
        flex: 0 0 30%;
        max-width: 30%;
    }
}

/* ------------------------
    ARC Page Tab
------------------------ */
@import "bourbon";
@import "https://fonts.googleapis.com/css?family=Montserrat:400,700|Raleway:300,400";
/* colors */
/* tab setting */
/* breakpoints */
/* selectors relative to radio inputs */
.tabslabeltext{
    font-size: 16px;

}
.tabs {
  left: 50%;
  transform: translateX(-50%);
  position: relative;
  background: white;
  padding: 30px;
  padding-bottom: 20px;
  width: 95%;
  height: auto;
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
  border-radius: 5px;
  min-width: 240px;
}
.tabs input[name="tab-control"] {
  display: none;
}
.tabs .content section h2,
.tabs ul li label {
  font-family: "Montserrat";
  font-weight: bold;
  font-size: 16px;
  color: #428bff;
}
.tabs ul {
  list-style-type: none;
  padding-left: 0;
  display: flex;
  flex-direction: row;
  margin-bottom: 10px;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
}
.tabs ul li {
  box-sizing: border-box;
  flex: 1;
  width: 25%;
  padding: 0 10px;
  text-align: center;
  color: #ffffff;
}
.tabs ul li label {

  all: revert;
  transition: all 0.3s ease-in-out;
  color: #929daf;
  padding: 5px auto;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  white-space: nowrap;
  -webkit-touch-callout: none;
}
.tabs ul li label br {
  display: none;
}
.tabs ul li label svg {
  fill: #929daf;
  height: 1.2em;
  vertical-align: bottom;
  margin-right: 0.2em;
  transition: all 0.2s ease-in-out;
}
.tabs ul li label:hover,
.tabs ul li label:focus,
.tabs ul li label:active {
  outline: 0;
  color: #bec5cf;
}
.tabs ul li label:hover svg,
.tabs ul li label:focus svg,
.tabs ul li label:active svg {
  fill: #bec5cf;
}
.tabs .slider {
  position: relative;
  width: 25%;
  transition: all 0.33s cubic-bezier(0.38, 0.8, 0.32, 1.07);
}
.tabs .slider .indicator {
  position: relative;
  width: 50px;
  max-width: 100%;
  margin: 0 auto;
  height: 4px;
  background: #428bff;
  border-radius: 1px;
}
.tabs .content {
  margin-top: 30px;
}
.tabs .content section {
  display: none;
  animation-name: content;
  animation-direction: normal;
  animation-duration: 0.3s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
  line-height: 1.4;
}
.tabs .content section h2 {
  color: #428bff;
  display: none;
}
.tabs .content section h2::after {
  content: "";
  position: relative;
  display: block;
  width: 30px;
  height: 3px;
  background: #428bff;
  margin-top: 5px;
  left: 1px;
}


.tabs
  input[name="tab-control"]:nth-of-type(1):checked
  ~ ul
  > li:nth-child(1)
  > label {
  cursor: default;
  color: #428bff;
}
.tabs
  input[name="tab-control"]:nth-of-type(1):checked
  ~ ul
  > li:nth-child(1)
  > label
  svg {
  fill: #428bff;
}
@media (max-width: 600px) {
  .tabs
    input[name="tab-control"]:nth-of-type(1):checked
    ~ ul
    > li:nth-child(1)
    > label {
    background: rgba(0, 0, 0, 0.08);
  }
}
.tabs input[name="tab-control"]:nth-of-type(1):checked ~ .slider {
  transform: translateX(-15%);
}
.tabs
  input[name="tab-control"]:nth-of-type(1):checked
  ~ .content
  > section:nth-child(1) {
  display: block;
}


.tabs
  input[name="tab-control"]:nth-of-type(2):checked
  ~ ul
  > li:nth-child(2)
  > label {
  cursor: default;
  color: #428bff;
}
.tabs
  input[name="tab-control"]:nth-of-type(2):checked
  ~ ul
  > li:nth-child(2)
  > label
  svg {
  fill: #428bff;
}
@media (max-width: 600px) {
  .tabs
    input[name="tab-control"]:nth-of-type(2):checked
    ~ ul
    > li:nth-child(2)
    > label {
    background: rgba(0, 0, 0, 0.08);
  }
}
.tabs input[name="tab-control"]:nth-of-type(2):checked ~ .slider {
  transform: translateX(52%);
}
.tabs
  input[name="tab-control"]:nth-of-type(2):checked
  ~ .content
  > section:nth-child(2) {
  display: block;
}


.tabs
  input[name="tab-control"]:nth-of-type(3):checked
  ~ ul
  > li:nth-child(3)
  > label {
  cursor: default;
  color: #428bff;
}
.tabs
  input[name="tab-control"]:nth-of-type(3):checked
  ~ ul
  > li:nth-child(3)
  > label
  svg {
  fill: #428bff;
}
@media (max-width: 600px) {
  .tabs
    input[name="tab-control"]:nth-of-type(3):checked
    ~ ul
    > li:nth-child(3)
    > label {
    background: rgba(0, 0, 0, 0.08);
  }
}
.tabs input[name="tab-control"]:nth-of-type(3):checked ~ .slider {
  transform: translateX(120%);
}
.tabs
  input[name="tab-control"]:nth-of-type(3):checked
  ~ .content
  > section:nth-child(3) {
  display: block;
}


.tabs
  input[name="tab-control"]:nth-of-type(4):checked
  ~ ul
  > li:nth-child(4)
  > label {
  cursor: default;
  color: #428bff;
}
.tabs
  input[name="tab-control"]:nth-of-type(4):checked
  ~ ul
  > li:nth-child(4)
  > label
  svg {
  fill: #428bff;
}
@media (max-width: 600px) {
  .tabs
    input[name="tab-control"]:nth-of-type(4):checked
    ~ ul
    > li:nth-child(4)
    > label {
    background: rgba(0, 0, 0, 0.08);
  }
}
.tabs input[name="tab-control"]:nth-of-type(4):checked ~ .slider {
  transform: translateX(185%);
}
.tabs
  input[name="tab-control"]:nth-of-type(4):checked
  ~ .content
  > section:nth-child(4) {
  display: block;
}


.tabs
  input[name="tab-control"]:nth-of-type(5):checked
  ~ ul
  > li:nth-child(5)
  > label {
  cursor: default;
  color: #428bff;
}
.tabs
  input[name="tab-control"]:nth-of-type(5):checked
  ~ ul
  > li:nth-child(5)
  > label
  svg {
  fill: #428bff;
}
@media (max-width: 600px) {
  .tabs
    input[name="tab-control"]:nth-of-type(5):checked
    ~ ul
    > li:nth-child(5)
    > label {
    background: rgba(0, 0, 0, 0.08);
  }
}
.tabs input[name="tab-control"]:nth-of-type(5):checked ~ .slider {
  transform: translateX(245%);
}
.tabs
  input[name="tab-control"]:nth-of-type(5):checked
  ~ .content
  > section:nth-child(5) {
  display: block;
}


.tabs
  input[name="tab-control"]:nth-of-type(6):checked
  ~ ul
  > li:nth-child(6)
  > label {
  cursor: default;
  color: #428bff;
}
.tabs
  input[name="tab-control"]:nth-of-type(6):checked
  ~ ul
  > li:nth-child(6)
  > label
  svg {
  fill: #428bff;
}
@media (max-width: 600px) {
  .tabs
    input[name="tab-control"]:nth-of-type(6):checked
    ~ ul
    > li:nth-child(6)
    > label {
    background: rgba(0, 0, 0, 0.08);
  }
}
.tabs input[name="tab-control"]:nth-of-type(6):checked ~ .slider {
  transform: translateX(310%);
}
.tabs
  input[name="tab-control"]:nth-of-type(6):checked
  ~ .content
  > section:nth-child(6) {
  display: block;
}


@keyframes content {
  from {
    opacity: 0;
    transform: translateY(5%);
  }
  to {
    opacity: 1;
    transform: translateY(0%);
  }
}
@media (max-width: 1000px) {
  .tabs ul li label {
    white-space: initial;
  }
  .tabs ul li label br {
    display: initial;
  }
  .tabs ul li label svg {
    height: 1.5em;
  }

  .tabs {
    height: auto;
  }
}
@media (max-width: 768px) {
  .tabs ul li label {
    padding: 5px;
    border-radius: 5px;
  }
  .tabs ul li label span {
    display: none;
  }
  .tabs .slider {
    display: none;
  }
  .tabs .content {
    margin-top: 20px;
  }
  .tabs .content section h2 {
    display: block;
  }
  .tabs {
    height: auto;
  }
}

.preview-wording {
    position: fixed;
    top: 0;
    right: 0;
    padding: 10px;
    background-color: #f9f9f9;
    font-weight: bold;
}

#vigileyezCmsOpening::after {
    background-color: rgba(255, 255, 255, 0.7) !important;
}

.vigileyezHeader h2{
    color: #CF0A2C !important;
    font-weight: bold !important;
}

.vigileyezSectorInfo {
    padding: 30px 0;
    flex-wrap: wrap;
}

.vigileyezSectorInfo h2 {
    font-size: 38px;
    font-weight: bold;
    padding-left: 15px;
    padding-right: 15px;
}

.vigileyezSectorInfo P {
    padding-left: 15px;
    padding-right: 15px;
}

#vigileyezSeeMoreLink {
    display:block;
    color: #CF0A2C !important;
    font-weight: 600;
    padding: 5px 0;
    margin:0 auto;
    border: 2px solid #CF0A2C;
    text-align: center;
    width:100px;
    background-color: rgba(0, 0, 0, 0) !important;
    font-size: 18px;
}
  
  
/* On mobile: shrink the background image so it doesn't dominate */
@media screen and (max-width: 767px) {
    .fullWidthSectionVigileyez {
      background-size: contain;
      background-position: top center;
    }
}
  
