@import "https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css";

/* font styles */
.h1, h1 {
    font-weight: 800;
    font-size: calc(3rem + 0.3vw);
}

.h2, h2 {
    font-weight: 600;
    /* font-size: calc(1.8rem + 0.1vw); */
    font-size: calc(2.4rem + 0.25vw); /* 80% of h1 */

}

.h3, h3 {
    font-weight: 600;
    /* font-size: calc(75% + 1vw); */
    font-size: calc(1.7rem + 0.17vw); /* 60% of h1 */
    
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    line-height: 1.2;
    margin-bottom: 0.25rem;    
}

.h4, h4 {
    font-weight: 600;
    /* font-size: calc(1.3rem + 0.2vw); */
    font-size: calc(1.4rem + 0.15vw); /* 47% of h1 */

}

.h5, h5 {
    font-weight: 400;
    /* font-size: calc(1.25rem + 0.1vw); */
    font-size: calc(1.1rem + 0.1vw); /* 37% of h1 */

}

.h6, h6 {
    font-weight: 400;
    line-height: 1.5;
    font-size: calc(1.1rem + 0.1vw); /* 37% of h1 */
    margin-bottom: 1.0rem;
}

a, a:focus, a:hover {
    color: inherit;
    outline: none;
    text-decoration: none;
}

body {
    margin: 0;
    font-family: Roboto,Arial,Helvetica, sans-serif;
    /* font-size: calc(40% + 1.1vw); */
    font-size: calc(1rem + 0.1vw); /* Default body text size */
    font-weight: 400;
    line-height: 1.6;
    color: #161616;
    text-align: left;
    overflow-wrap: normal;
    hyphens: inherit;
}

p {
  font-size: calc(1rem + 0.1vw); /* Same as body size */
  line-height: 1.6;
}

b, strong {
    font-weight: 700;
}

.btn.btn-default:hover {
    color: #f10000;
}

.img-headline .ezimage-field {
    max-height: 9rem !important;
    max-width: 30rem !important;
}

.img-table-header .ezimage-field {
    width: 60% !important;
    text-align: center !important;
    display: grid;
    margin-inline: auto;    
}

img {
    max-width: 100%;
    opacity: 1;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
}

/* view size */
/* @media (min-width: 1200px) */
.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xs {
    max-width: 90%; 
    /*ORIG 1400px */
}

.container-wide {
    max-width: 2500px;
    padding-left: 3rem;
    padding-right: 3rem;
}

.container-narrow {
    max-width: 75%!important;
}


.main-navigation .navbar-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: right;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.65rem;
    list-style-type: none;
    margin: 0 7% 0 0;
    padding: 0 1rem;
    text-align: center;
}


@media (max-width: 991.98px)
.main-navigation {
    display: none;
    position: absolute;
    left: 0.9375rem;
    right: 0.9375rem;
    top: 4rem;
    z-index: 1000;
    background: #757575;
    -webkit-box-shadow: 0 0.5rem 1rem rgb(0 0 0 / 12%);
    box-shadow: 0 0.5rem 1rem rgb(0 0 0 / 12%);
    color: #f10000;
}

.main-navigation .navbar-nav .tertiary-navigation {
    font-size: 1rem!important;
    margin: 0 0 0 0!important;
}

/* top menu underline on hover */
.header-search .searchbox-toggle::after, .language-selector a::after, .main-navigation .navbar-nav > li > a::after, .main-navigation .active > span, .active > a, .navbar-nav > li > span::after {
    background: #f10000;
    color: #fff;
}

.main-navigation .navbar-nav .active>a, .main-navigation .navbar-nav .active>span, .main-navigation .navbar-nav>li:hover>a, .main-navigation .navbar-nav>li:hover>span {
    color: #fff;
    font-size: 0.65rem;
}


.full-page-header {
    background:#161616;
    color: #ffffff;
    text-align: left; 
}

.full-page-header .full-page-info {
    font-size: 1rem;
    margin: 0;
    color: #757575;
    opacity: .54;
}

.content-callout {
    margin: 3rem 0 3rem 1rem;
    padding: 0rem 30px;
    border-left: 5px solid #f10000;
    /*font-family: Roboto;*/
    font-weight: 400;
    font-size: 1.5rem;
}

.product-callout-h4 {
    font-weight: 400!important;
}

.product-topic-tag a {
    color: #f10000;
    outline: none;
    text-decoration: none;
    font-size: .75rem;
    text-transform: uppercase;
    font-weight: 900;
    letter-spacing: 1px;
    padding: .3333333em 1em .3333333em .3333333em;
}

.product-box {
    background-color: #212121;
    color: #fff;
    padding-top: 3.5rem;
    text-align: center;
    margin-bottom: 0 !important;
    padding-right: 10%;
    padding-left: 10%;
    padding-bottom: 1rem;
    border-right-color: #00000000;
    border-right-width: initial;
    border-right-style: outset;    
}

.product-box a {
    color: #f10000;
    font-weight: 700;
    font-size: 1.125rem;
    border-color: #f10000;
    display: inline-block;
    align-content: center;
    border: solid;
    border-block-width: 2px;
    border-block-start-width: 2px;
    border-block-end-width: 2px;    
    padding: 0.6rem 1rem 0.6rem 1rem;
    justify-content: center;
}

.product-box img {
    max-width: 50%;
}

.product-box-checklist {
    background-color: #212121;
    font-size: 1rem;
    font-size: 1vw;
    color: #fff;
    padding-top: 1.3rem;
    line-height: 1;
    text-align: center;
    text-wrap-mode: wrap;
    text-wrap-style: balance;
    padding-right: 3.5rem;
    padding-left: 3.5rem;
    padding-bottom: 1rem;
    border-right-color: #00000000;
    border-right-width: initial;
    border-right-style: outset;
}

.product-box-checklist img {
    max-height: 1.6rem;
}

.product-box-checklist p {
    margin: 0 0 0 0 !important;
}

.product-box-checklist-no-bkgnd {
    background-color: #16161600!important;
}

.product-box-checklist-green {
    background-color: #4aec26!important;
    color: #161616!important;
}

.product-box-checklist-yellow {
    background-color: #fce94f!important;
    color: #161616!important;
}

.product-box-checklist-red {
    background-color: #f10000!important;
    color: #161616!important;
}

.product-box-checklist-align-left {
    text-align: left!important;
}

.product-box-checklist-align-center {
    text-align: center!important;
}

.product-content-intro-image img {
    max-width: 87%;
    padding: 0 15% 0 15%;
}

/* product button hover */
.product-box a:active, .product-box a:hover, .product-box:not(:disabled):not(.disabled).active, .product-box:not(:disabled):not(.disabled):active {
    background: #f10000;
    color: #fff;
    border-color: #f10000;
}

.product-box-button ul {
    list-style-type: none;
    padding-left: 0px;
}
 
blockquote {
    margin: 3rem 0 3rem 1rem;
    padding: 0rem 30px;
    border-left: 5px solid #f10000;
    color: #f10000;
    font-family: Roboto;
    font-weight: 400;
    font-size: 1.5rem;
}

.inset-title-red {
    margin: 3rem 0 3rem 1rem;
    padding: 0rem 30px;
    color: #f10000;
    font-family: Roboto,Arial,Helvetica, sans-serif;
    font-weight: 400;
    font-size: 1.5rem;
}

.inset-title-white {
    margin: 3rem 0 3rem 1rem;
    padding: 0rem 30px;
    color: #ffffff;
    font-family: Roboto,Arial,Helvetica, sans-serif;
    font-weight: 400;
    font-size: 1.5rem;
}

.inset-title-black {
    margin: 3rem 0 3rem 1rem;
    padding: 0rem 30px;
    color: #161616;
    font-family: Roboto,Arial,Helvetica, sans-serif;
    font-weight: 400;
    font-size: 1.5rem;
}

.podcast-audio { 
    border-left: .5rem solid #161616;
    padding: 0 2rem 0 2rem ;
    margin: 0 0 0 0;
    background: #16161624;
}

.podcast-audio h2 {
    font-size: 2rem;
}

.ngl-block.whitespace-bottom-large {
    padding-bottom: 9rem;
}

.ngl-block.whitespace-top-large {
    padding-top: 9rem;
}

.ngl-block.bg-color-black {
    background-color: #161616;
    color: #fff;
}

.ngl-block.bg-color-grey {
    background-color: #ededed;
    color: #161616;
}

.ngl-block.bg-color-secondary {
    background-color: #212121;
    color: #fff;
}

.site-header {
    background:#161616;
    color: #ffffff;
}

.site-header>.container {
    height: 5.9375rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #161616;
}

.list-numbered .list-item:before {
    font-size: 2.0625rem;
    font-weight: 900;
    color: #f10000;
}

.list-numbered .list-item+.list-item {
    padding-top: 1rem;
    margin-top: 1rem;
    border-top: 2px dashed #75757524;
}

.site-logo img { 
    max-height: 3.8rem;
}

.full-page-header .full-page-intro {
    color: #ffffff;
    font-weight: 400;
    opacity: 100;
}

.image-wrapper {
    position: relative;
    text-align: center;
}

.ezrichtext-field {
    max-width: 100%;
}

/*
.ezrichtext-field .h3 {
    font-size: 1.0rem;
}
*/

.site-footer .footer-menu .navbar-nav a {
    font-size: .65rem;
    color: #757575;
    text-transform: uppercase;
    font-weight: 900;
    letter-spacing: 1px;
    padding: .5em 1.1428571429em;
}

.site-footer .footer-menu .navbar-nav .active>a {
    color: #ffffff;
}

.secondary-nav-list .vl6 .title {
    display: block;
    color: #f10000;
    margin: 0 0 0 0 !important;
    text-transform: uppercase;
    font-size: .85rem;
    letter-spacing: 1px;
    text-align: left;
    border-top: 1px solid #75757524;
    line-height: 1.85;
}

/* right justification */
.right-align {
    text-align: right !important;
}

/* same but for right justification */
.secondary-nav-list.right-align .title {
    text-align: right !important;
}

.secondary-nav-list ul li a::after {
  float: right;
  margin-right: 10px;
}

.secondary-nav-list .title::after {
    content: "\203A";
    margin-left: 0.5em;
    color: #757575;
    font-size: 1.5rem;
}

.secondary-nav-list-external .title::after {
    content: "\2B9D";
    margin-left: 0.5em;
    color: #757575;
    font-size: 1.5rem;    
}

.title>h2>a::after {
    content: "\203A";
    margin-left: 0.5em;
    color: #757575;
    font-size: 1.5rem;
}

.testimonial .vl1 .title {
    font-size: 1.0rem;
    font-style: italic;
    font-weight: 500;
    line-height: 1.5;
    color: #fff;
}

.footer-client-logos {
    filter: grayscale(100%) brightness(0.9);
    opacity: 0.8;
    /* margin: 20px 30px 0px 0px; */
    margin: auto;
    -moz-transition: all .5s ease-in;
    -o-transition: all .5s ease-in;
    -webkit-transition: all .5s ease-in;
    transition: all .5s ease-in;    
}

.footer-client-logos:hover {
    filter: grayscale(0%) brightness(1.0);
    opacity: 1;
}


/* video icon */
.vl1 .article-icon, .vl2 .article-icon {
    background: #578ccd;
}

/* search form */

.header-search .searchbox-toggle {
    color: #6c757d;
    display: block;
    font-size: 1rem;
    line-height: 5.9375rem;
    width: 4rem;
    text-align: center;
    background: transparent;
    z-index: 2;
    -webkit-transition: color .2s,background .3s;
    transition: color .2s,background .3s;
}

.header-search .search-query {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 100%;
    background: transparent;
    border: 0;
    /* border-bottom: 2px solid #000; */
}


/* search magnifier */
.searchbox-active .header-search .searchbox-toggle {
    background: #161616;
    color: #fff;
}

/* search expansion in header */

.header-search .navbar-search {
    padding: 1rem 4rem 1rem 1rem;
    width: 0;
    -webkit-transition: width .4s,opacity .23s;
    transition: width .4s,opacity .23s;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background: #757575;
    opacity: 0;
}

/* tag at the top of single article */
.full-page-header .full-page-main-tag > a, .full-page-header .full-page-main-tag > span, .full-page-header .full-page-sponsored-tag > a, .full-page-header .full-page-sponsored-tag > span {
    color: #f10000;
    background: #00000000;
}

/* intro content block */
.full-article-body .article-intro {
    font-size: 1.5rem;
    font-style: italic;
    color: #161616;
}

/* tag at the bottom of single article */
.full-article-tags a {
    border: 2px solid #161616;
}

.article-header-transparent .vl2 .article-header {
    text-indent: 100%!important;
    white-space: nowrap!important;
    overflow: hidden!important;
}

.vl1 .title a:hover, .vl2 .title a:hover, .vl4 .title a:hover, .vl5 .title a:hover, .vl6 .title a:hover, .vl7 .title a:hover {
    border-bottom-color: #f10000;
}

.vl2 .title {
    font-size: 1.2125rem;
    margin: 0 0 .25rem;
    line-height: 1.25;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 5em;
}

/* tag and topic text under articles */
.vl1 .info .sponsored-tag, .vl1 .info a, .vl2 .info .sponsored-tag, .vl2 .info a, .vl4 .info .sponsored-tag, .vl4 .info a, .vl5 .info .sponsored-tag, .vl5 .info a, .vl6 .info .sponsored-tag, .vl6 .info a, .vl7 .info .sponsored-tag, .vl7 .info a {
    font-weight: 700;
    color: #f10000;
}

.vl1 .info>a+a:before, .vl1 .info>a+span:before, .vl1 .info>a+time:before, .vl1 .info>span+a:before, .vl1 .info>span+span:before, .vl1 .info>span+time:before, .vl1 .info>time+a:before, .vl1 .info>time+span:before, .vl1 .info>time+time:before, .vl2 .info>a+a:before, .vl2 .info>a+span:before, .vl2 .info>a+time:before, .vl2 .info>span+a:before, .vl2 .info>span+span:before, .vl2 .info>span+time:before, .vl2 .info>time+a:before, .vl2 .info>time+span:before, .vl2 .info>time+time:before, .vl4 .info>a+a:before, .vl4 .info>a+span:before, .vl4 .info>a+time:before, .vl4 .info>span+a:before, .vl4 .info>span+span:before, .vl4 .info>span+time:before, .vl4 .info>time+a:before, .vl4 .info>time+span:before, .vl4 .info>time+time:before, .vl5 .info>a+a:before, .vl5 .info>a+span:before, .vl5 .info>a+time:before, .vl5 .info>span+a:before, .vl5 .info>span+span:before, .vl5 .info>span+time:before, .vl5 .info>time+a:before, .vl5 .info>time+span:before, .vl5 .info>time+time:before, .vl6 .info>a+a:before, .vl6 .info>a+span:before, .vl6 .info>a+time:before, .vl6 .info>span+a:before, .vl6 .info>span+span:before, .vl6 .info>span+time:before, .vl6 .info>time+a:before, .vl6 .info>time+span:before, .vl6 .info>time+time:before, .vl7 .info>a+a:before, .vl7 .info>a+span:before, .vl7 .info>a+time:before, .vl7 .info>span+a:before, .vl7 .info>span+span:before, .vl7 .info>span+time:before, .vl7 .info>time+a:before, .vl7 .info>time+span:before, .vl7 .info>time+time:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: .25rem;
    height: .25rem;
    background: #000;
    margin: 0 .25rem .125rem 0;

}

.vl1 .image img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    position: absolute;
    width: 100%;
    /* height: 70%; */
}

.vl6 .short {
    margin: .25rem 0 0;
    font-size: 1.0rem;
    color: #757575;
}

.vl6 {
    margin: 0 0 0 0;
    padding: 0.5rem 0 0.5rem 0.5rem;
    /* border-left: 5px solid #f10000; */
    border-bottom: 0;
 }

.vl5 {
    margin: 0 0 0rem;
}

/* section-title style for use manually (sidebar etc) NOT WORKING PROPERLY YET ^JA*/
.section-title .title {
    font-size: 1.125rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 900;
    margin: 0 0 1.7777777778em;
    position: relative;
    padding: 0 .75em;
}

.ezimage-cta {
    max-width: 35%;
    margin-left: 35%;
}


.ezimage-cta-landing {
    max-width: 50%;
    color: #f10000;
    border-color: #f10000;
    display: flex;
    flex-wrap: nowrap;
    margin-inline: auto;
    justify-content: center;
}

.ezimage-cta-large {
    max-width: 90%;
    align-content:center;
    padding-left: 10%;
}


/* button color */
.btn-primary {
background: center;
color: #f10000;
border-color: #f10000;
}

/* button for in-content centred */
/* DEFAULT btn-inset */
.btn-inset {
    background: center;
    color: #f10000;
    border-color: #f10000;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;    }


/* PHONE size small mobile */
@media screen and (min-width: 300px) {
.btn-inset {
    background: center;
    color: #f10000;
    border-color: #f10000;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;
  }
  
/* mobile override nav colour */
.main-navigation {
    background: #161616;
  } 

.main-navigation .navbar-nav>li>a, .main-navigation .navbar-nav>li>span {
    color: #fff;
    background: #161616;
  }

.mainnav-active .mainnav-toggle {
    background: #161616;
}  
  
}




@media screen and (min-width: 600px) {
.btn-inset {
    background: center;
    color: #f10000;
    border-color: #f10000;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;
  }
  
/* mobile override nav colour */
.main-navigation {
    background: #161616;
  } 

.main-navigation .navbar-nav>li>a, .main-navigation .navbar-nav>li>span {
    color: #fff;
    background: #161616;
  }

.mainnav-active .mainnav-toggle {
    background: #161616;
}  
  
}

@media screen and (min-width: 900px) {
.btn-inset {
    background: center;
    color: #f10000;
    border-color: #f10000;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;
  }

/* mobile override nav colour */
.main-navigation .navbar-nav>li>a, .main-navigation .navbar-nav>li>span {
    color: #fff;
    background: #161616;
  }  

.main-navigation {
    background: #161616;
  }   

.mainnav-active .mainnav-toggle {
    background: #161616;
}    
  
}

@media screen and (min-width: 1200px) {
.btn-inset {
    background: center;
    color: #f10000;
    border-color: #f10000;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;
  }
}  

@media screen and (min-width: 1920px) {
.btn-inset {
    background: center;
    color: #f10000;
    border-color: #f10000;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;
  }
}

    .btn.btn-default {
        display: block;
        text-transform: uppercase;
        font-size: .75rem;
        letter-spacing: 1px;
        text-align: left;
        border-top: 1px solid #75757524;
        padding: .75em 0 .75em;
        line-height: 1.85;
    }

    .btn.btn-default:after {
        content: "\f054";
        margin-left: .5em;
        color: #757575;
    }
    
   .btn.btn-default-external:after {
        content: "\2B9D";
        margin-left: .5em;
        color: #757575;
    }    

.btn {
    display: inline-block;
    font-weight: 700;
    color: #f10000;
    line-height: 1.8;   
}    

/* button hover */
.btn-primary.active, .btn-primary:active, .btn-primary:hover, .btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active {
    background: #f10000;
    color: #fff;
    border-color: #f10000;
}

::selection {
    background: #f10000; /* Safari */
    color: #ffffff;
}
::-moz-selection {
    background: #f10000; /* Firefox */
    color: #ffffff;
}
