@font-face { font-family: 'icons'; src: url('/assets/iconfont/font/icons.woff2') format('woff2'), url('/assets/iconfont/font/icons.woff') format('woff'), url('/assets/iconfont/font/icons.ttf') format('truetype'); font-weight: normal; font-style: normal }

/* 1 = CORE & RESET */
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

/* = Reset
----------------------------------------------------------------------------------------------------------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, hr, a, a img, font, img, dd, dl, dt, li, ol, ul, blockquote, fieldset, form, label, legend, table, caption, tr, th, td { margin: 0; padding: 0; border: 0; font-size: 100%; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
audio, canvas, video { display: inline-block; }
html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

/* = Body
----------------------------------------------------------------------------------------------------------------- */
body { color: #2F2F2F; font-size: 18px; text-align: left; font-family: myriad-pro, sans-serif; font-weight: 400; font-style: normal; text-rendering: optimizeLegibility; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased;  background: #fff; }

@media screen and (max-width: 440px) {
    body { font-size: 17px;  }
}

@media screen and (max-width: 400px) {
    body { font-size: 16px;  }
}

/* = ICONS (font based - paste "/assets/iconfont/font/config.json" file into fontello.com website to modify/edit these icons)
----------------------------------------------------------------------------------------------------------------- */
.icon:before,
.icon:after,
.btn--login:after,
.msg:before,
.sb-pill:before { font-family: "icons"; font-style: normal; font-weight: normal; speak: none; display: inline-block; text-decoration: inherit; min-width: 1em; text-align: center; font-variant: normal; text-transform: none; line-height: 1em; text-decoration: none; }

.icon-demo .icon:after {padding-left:10px;}

.icon--chevron-left:after { content: '\e80b'; }
.icon--chevron-right:after { content: '\e810'; }
.icon--chevron-up:after { content: '\e811'; }
.icon--chevron-down:after { content: '\e812'; }
.icon--arrow-left:after { content: '\e814'; }
.icon--arrow-right:after { content: '\e815'; }
.icon--arrow-up:after { content: '\e813'; }
.icon--arrow-down:after { content: '\e818'; }

.icon--email:after { content: '\e802'; }
.icon--email-alt:after { content: '\e80e'; font-size: .8em; }
.icon--download:after { content: '\e80c'; font-size: 1.35em; }
.icon--search:after { content: '\e807';  font-size: .8em ;}
.icon--tel:after { content: '\e81a';  font-size: .8em ; }
.icon--tick:after { content: '\e80a';  }
.icon--pricetag:after { content: '\e81c';  }
.icon--pc:after { content: '\e81d';  font-size: .9em ; }
.icon--printer:after { content: '\e81e';   }
.icon--printer-alt:after { content: '\e817';   }
.icon--loading:after { content: '\e832';  font-size: .9em ;  }
.icon--twitter:after { content: '\f099';   }
.icon--facebook:after { content: '\f09a';   }
.icon--instagram:after { content: '\f16d';   }
.icon--linkedin:after { content: '\f0e1';   }
.icon--youtube:after { content: '\f16a';   }
.icon--doc-link:after { content: '\e80d'; }
.icon--doc-pdf:after { content: '\e819'; }
.icon--doc-xls:after { content: '\e81b'; }
.icon--doc-doc:after { content: '\e808'; }
.icon--doc-media:after { content: '\e80f'; }
.icon--ext:after { content: '\f08e'; }

/* = Typography
----------------------------------------------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 { font-family: myriad-pro, sans-serif; font-weight: 700; margin: 0 0 30px; color: #005062; line-height: normal;  }

h1, .h1 { font-size: 40px; }
h2, .h2, .h1-small  { font-size: 32px; }
h3, .h3, .h2-small { font-size: 26px; }
h4, .h4  { font-size: 22px; margin-bottom: 25px;  }
h5, .h5  { font-size: 20px; margin-bottom: 25px; }
h6, .h6  { font-size: 20px; margin-bottom: 25px;  }

.hUnderline { padding-bottom: 30px; margin:40px 0 35px; border-bottom: 4px solid #DEE3E8; }
.hUnderline:first-child { margin-top:0; }

p { margin: 0 0 30px; line-height: 1.5em; }
p:last-child {margin-bottom:0;}

.leader { font-size: 22px; font-weight: 600; color:#005062; }
.leader-small { font-size: 20px; font-weight: 600; color:#005062; }
.leader--lined { padding-bottom: 28px; margin-bottom: 35px; border-bottom: 4px solid #DEE3E8; }

p + h2 { margin-top:35px; }
.leader + h2 { margin-top:40px; }

strong, b { font-weight: 600;}

.textCenter { text-align: center; }

.date-cat { display:block; font-size: 16px; letter-spacing: 1px; text-transform: uppercase; font-weight: 600; }
.date-cat--comp { color:#007DB3; }

blockquote { margin: 40px 0; border-left: 6px solid #6934F7; padding-left: 28px; }
blockquote:first-child { margin-top: 5px;}
blockquote:last-child { margin-bottom: 5px;}
blockquote p { margin: 0; font-family: myriad-pro, sans-serif; color:#005062; font-weight: 600; }
blockquote cite { font-size: 1em; font-style: normal; margin-top: 15px; display: block; color:#6934F7; }
blockquote p cite { font-size: 0.75em; }

a { color: #6934F7; text-decoration: none; }

a:hover,
a:focus { color: #6934F7; text-decoration: underline; }

img { max-width: 100%; height: auto; vertical-align: bottom; -ms-interpolation-mode: bicubic; }

small { font-size: 0.8em; }
address { margin: 0 0 20px; line-height: 1.5em; font-style: normal; }

sub, sup { line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

pre { margin: 0; }
pre code { font-size: 1.5em; white-space: pre-wrap; }

figure { margin: 0 0 20px; }
figcaption { padding-top: 10px; color: #444; font-size: 0.85em; }

.clr { clear: both; }

hr { margin: 50px 0; height: 1px; border: 0; border-top: 4px solid #DEE3E8;}
.hr--760 { max-width: 760px; margin-left:auto; margin-right: auto;}

@media screen and (max-width: 1000px) {
    h1, .h1 { font-size: 38px; }

    .leader--lined { padding-bottom: 0; border-bottom: none; }
}

@media screen and (max-width: 750px) {
    h1, .h1 { font-size: 36px; }

    h2, .h2, .h1-small  { font-size: 30px; }
}

@media screen and (max-width: 600px) {
    h1, .h1 { font-size: 34px; }

    .leader { font-size: 21px; }
    .leader-small { font-size: 19px; }

}

@media screen and (max-width: 480px) {
    h1, .h1 { font-size: 32px; }
    h2, .h2, .h1-small  { font-size: 28px; }
    h3, .h3, .h2-small { font-size: 24px; margin-bottom: 25px; }

    .leader { font-size: 20px; }
    .leader-small { font-size: 18px; }

    hr { margin: 45px 0; }
}

@media screen and (max-width: 440px) {
    h1, .h1 { font-size: 30px; }
    h2, .h2, .h1-small  { font-size: 26px; }

    .leader { font-size: 19px; }
    .leader-small { font-size: 17px; }

    .date-cat { font-size: 15px;  }
}

@media screen and (max-width: 400px) {
    h1, .h1 { font-size: 28px; }
    h2, .h2, .h1-small  { font-size: 24px; margin-bottom: 25px; }
    h3, .h3, .h2-small { font-size: 22px; }
    h4, .h4  { font-size: 20px; }
    h6, .h6  { font-size: 19px; }

    .leader { font-size: 18px; }

    .date-cat { font-size: 14px; }
}

/* = Skip to content
----------------------------------------------------------------------------------------------------------------- */
.skip-to-content { position: fixed; top:12px; left:12px; padding: 10px 20px; font-size: 16px; color:#fff; background: #2F2F2F; border:2px solid #6934F7; -webkit-transform: translateY(calc(-100% - 20px)); transform: translateY(calc(-100% - 20px)); -webkit-transition: transform 0.3s ease; transition: transform 0.3s ease; z-index: 10; }
.skip-to-content:active,
.skip-to-content:hover,
.skip-to-content:focus { color:#fff; -webkit-transform: translateY(0%); transform: translateY(0%); }

/* = Buttons
----------------------------------------------------------------------------------------------------------------- */
.btn { font-family: myriad-pro, sans-serif; font-size: 1em; font-weight: 600; padding: 0.75em 1.2em; text-decoration: none; display: inline-block; background: #6934F7; border:1px solid #6934F7; color: #fff; position: relative; transform: perspective(0) translateZ(0); line-height: 1; margin:0; outline: none; cursor: pointer;   -webkit-border-radius: 0; border-radius: 0; -webkit-transition: all .3s ease; transition: all .3s ease; }

.btn--chevron { padding-right: calc(2em + 8px); background-image:url(/assets/icons/icon-button-chevron.svg); background-position: right 1.25em center; background-repeat: no-repeat;} 

.btn--download { padding-left: calc(2em + 8px); background-image:url(/assets/icons/icon-button-download.svg); background-position: left 1.25em center; background-repeat: no-repeat;} 


.btn--outline { color: #6934F7; background-color: transparent; border-color:#6934F7; box-shadow: inset 0 0 0 1px #6934F7; }
.btn--outline-white { background-color: transparent; border-color: #fff; box-shadow: inset 0 0 0 1px #fff; }

.btn--white {  color: #6934F7; border-color: #fff; background-color: #fff;}

.btn:hover,
.btn:focus { color: #fff; background-color: #007DB3;  border-color:#007DB3; text-decoration: none; }

.btn--white:hover,
.btn--white:focus { color: #6934F7; background-color: #EFF3F7; border-color: #EFF3F7; } 

.btn--outline:hover,
.btn--outline:focus,
.btn--outline-white:hover,
.btn--outline-white:focus { box-shadow: none; }

.btn.btn--login  { padding: 0.5em 1em;  }
.btn--login { font-size: 16px;  }
.btn--login:after {  content:'\f08e'; font-size: .875em; padding-left:5px; }
.btn--login span { display: none; }
.btn--login span.s { display: inline; }

@media screen and (min-width: 800px) {
    .btn--login span { display: inline; }
    .btn--login span.s { display: none; }
}

@media screen and (max-width: 440px) {
    .btn {  padding: 0.75em 1.1em; }   

    .btn--chevron { padding-right: calc(1.8em + 8px); background-position: right 1em center; }
    .btn--download { padding-left: calc(1.8em + 8px); background-position: left 1em center; }
}

@media screen and (max-width: 400px) {
    .btn {  padding: 0.75em 1em; }   

    .btn--chevron { padding-right: calc(1.6em + 8px); background-position: right 0.8em center; }
    .btn--download { padding-left: calc(1.6em + 8px); background-position: left 0.8em center; }
}


/* = Lists in main text
----------------------------------------------------------------------------------------------------------------- */
ul { margin: 0 0 30px; padding-left: 25px; line-height: 1.5em; list-style: square; }
ul:last-child {margin-bottom: 0;}

ul li { margin: 0 0 13px; }
ul li ul { margin-top: 20px; margin-left: 20px; list-style-type: circle; }
ul li ul:last-child { margin-bottom: 20px;}

ol { margin: 0 0 30px;  padding-left: 25px; line-height: 1.5em; }
ol li { margin: 0 0 13px; }
li ol { margin-top: 20px; margin-left: 20px; list-style-type: lower-latin; }

dl { margin: 0 0 30px;  line-height: 1.5em; }
dt { color: #111; font-weight: 60; }
dd { margin: 0 0 20px; }

/* = Forms
----------------------------------------------------------------------------------------------------------------- */
form { margin:40px 0;}
form:first-child {margin-top: 0;} 
form:last-child {margin-bottom: 0;} 

input.text, textarea, select, .cd-title, 
input[type=text], input[type=password] { color:#2F2F2F; width: 100%; padding: 11px 18px; margin:0; font-weight: 400; font-family: myriad-pro, sans-serif; font-size: 1em; border: 1px solid #6934F7; background: #fff; -webkit-border-radius: 0; border-radius: 0; }
input.text:focus, textarea:focus, select:focus, input[type=text]:focus, input[type=password]:focus, .cd-title:focus   { outline: none; border-color: #6934F7; box-shadow: inset 0 0 0px 2px #6934F7;  }

.select { width: 100%;}

/*Cross browser & device resets*/
select,  .cd-title { padding-right: 45px; cursor: pointer; /*outline: none;*/ color:#2F2F2F;  background: #fff url(/assets/icons/icon-chevron-down.svg) right 17px center no-repeat; background-size: 15px auto; -moz-appearance: none; -webkit-appearance: none; -webkit-box-shadow: none; box-shadow: none; -webkit-border-radius: 0; border-radius: 0; }
select:-moz-focusring { color: transparent; text-shadow: 0 0 0 #2c2c2c; }
select::-ms-expand { display: none; }
select option {  color: #2F2F2F}
select option:first-child {  color: #76757B;} 
select:invalid { color: #333;}
select:valid { color: #2F2F2F;}

.checkradio-group { margin:10px 0 0; }
.checkradio-group legend { display: none;}
.checkbox-dropdown {width: 100%; position: relative;}
.cd-checkboxes { height: 0; padding: 0 18px; margin:0; border: 1px solid transparent; border-width: 0 1px 1px 1px;  border-radius: 0 0 4px 4px; background: #fff; overflow: hidden; } 
.on .cd-checkboxes { height: auto; padding: 18px;  border-color: #441F77; }

textarea,
input.text,
input[type="text"],
input[type=password],
input[type="button"],
input[type="submit"],
.input-checkbox { -webkit-appearance: none; -moz-appearance: none; appearance: none; -webkit-border-radius: 0;  border-radius: 0; }

textarea { min-height:150px; min-width:100%; max-width:100%; }

::-webkit-input-placeholder { color: #333; opacity:1;  font-family: myriad-pro, sans-serif; }
::-moz-placeholder { color: #333; opacity:1;  font-family: myriad-pro, sans-serif; }
:-ms-input-placeholder { color: #333; opacity:1;  font-family: myriad-pro, sans-serif; }
:-moz-placeholder { color: #333;  opacity:1;  font-family: myriad-pro, sans-serif; }

/*Start - Custom checkbox and radio buttons*/
input[type="checkbox"],
input[type="radio"] { opacity: 0; float: left; margin: 0; top:  0;  left: 0;  height:  20px;  width:  20px;  -webkit-appearance:  none; outline:none;}

.checkradio-label { cursor: pointer; margin-bottom: 12px; padding-left: 35px; font-size: 18px; font-weight: 500; line-height: 1.55em; display: block; position: relative; outline: none; }
.checkradio-label:last-child { margin-bottom: 0;}

.checkradio-label a { text-decoration: underline;}

.checkradio-label:before, 
.checkradio-label:after { pointer-events: none; }

.checkradio-label:before { position: absolute; top:0; left:0; content: ' '; height:  22px;  width:  22px;  margin-right:  10px; border:   1px solid #B9B9B9; -webkit-border-radius: 4px; border-radius: 4px; background:  #fff;}
.checkradio-label--check:after { content: ''; position: absolute;  top: 4px;  left: 8px;   width: 5px;  height: 10px;  border: solid #6934F7;  border-width: 0 3px 3px 0;  -webkit-transform: rotate(45deg) scale(0); transform: rotate(45deg) scale(0);  -webkit-transition:  transform .3s ease; transition:  transform .3s ease; }

.checkradio-label--check--small {padding-left:28px; }
.checkradio-label--check--small:before { top:2px; height:  15px;  width:  15px;  margin-right:  8px; border-color: #E4E3DE; border-radius: 3px; }
.checkradio-label--check--small:after { top: 4px; left: 6px;  width: 3px;  height: 7px; }

.checkradio-label--radio:after { content: '';  position:  absolute; top:  6px;  left:  6px;  height:  12px;  width:  12px; -webkit-border-radius: 2px; border-radius: 2px; background: #6934F7; -webkit-transform: scale(0); transform: scale(0); -webkit-transition:  transform .3s ease; transition:  transform .3s ease; }
.checkradio-label--radio:before,
.checkradio-label--radio:after { border-radius:  50%; }

input[type="checkbox"]:focus + .checkradio-label:before,
input[type="radio"]:focus + .checkradio-label:before { box-shadow: 0 0 0 2px #6934F7;  }

.checkradio-group input[type="radio"]:checked + .checkradio-label:after { -webkit-transform:  scale(1); transform:  scale(1);}
.checkradio-group input[type="checkbox"]:checked + .checkradio-label--check:after {  -webkit-transform: rotate(45deg) scale(1);  transform: rotate(45deg) scale(1); } 
/*End - Custom checkbox and radio buttons*/

.form-field {margin-bottom: 20px; position: relative; display: -ms-flexbox; display: -webkit-flex; display: flex;  -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.form-field:last-child {margin-bottom:0;}
.form-field > .label,
.form-field > label { display: block; margin: 0 0 5px;  width:100%; font-weight: 400; }
.form-field .label,
.form-field label { color:#2F2F2F; }
.form-field--submit {margin-bottom: 0; }
.form-field--submit .btn {margin-bottom: 5px; }

.sb-pill { cursor: pointer; display: inline-block; font-size: 13px; margin:10px 10px 0 0; padding:4px 10px; color:#fff; border-radius: 2px; background: #005062; -webkit-transition: background .2s ease; transition: background .2s ease;}
.sb-pill:hover,
.sb-pill:focus { background: #007DB3; }

.sb-pill:before { content: '\e803';  padding-right: 3px;  font-size: .7em;  vertical-align: middle; }

@media screen and (min-width:751px) {
    .form-field,
    .form-field--checkradio {margin-bottom: 25px; }
    .form-field > .label,
    .form-field > label { width:25%;  margin: 0 30px 0 0; padding: 11px 0;}

    .form-field > input,
    .form-field > .select,
    .form-field > select,
    .form-field > .checkradio-group,
    .form-field > .checkbox-dropdown { width:calc(75% - 30px); }

    .form-field > textarea { min-width:calc(75% - 30px); width:calc(75% - 30px); }

    .selected-checkboxes {margin-left: calc(25% + 30px);}
    .form-field--submit .btn {margin: 0; width: auto; min-width: 150px; }  

    .form--full-width .form-field > .label,
    .form--full-width .form-field > label { display: block; width:100%; margin:0 0 10px; padding: 0; }

    .form--full-width  .form-field--submit .label { display: none;}

    .form--full-width .form-field > input,
    .form--full-width .form-field > .select,
    .form--full-width .form-field > select,
    .form--full-width .form-field > .checkradio-group,
    .form--full-width .form-field > .checkbox-dropdown,
    .form--full-width .form-field > textarea { width:100%; }
}

@media screen and (max-width:480px) {
    .sb-pill {  font-size: 13px;}
}

@media screen and (max-width:400px) {
    .sb-pill {  font-size: 12px;}
}

/* = Object fit images
----------------------------------------------------------------------------------------------------------------- */
.ofi {  width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; }
.ofi--center {object-position: center; font-family: 'object-fit: cover; object-position: center;';  }
.ofi--abs {position: absolute; top: 0; left: 0; }
.ofi--contain { object-fit: contain; font-family: 'object-fit: contain;'; }
.ofi--scaledown { object-fit: scale-down; font-family: 'object-fit: scale-down;'; }

/* = Lazyload  images
----------------------------------------------------------------------------------------------------------------- */
.lazyload,
.lazyloading { opacity: 0; }
.lazyloaded { opacity: 1; -webkit-transition: opacity 300ms; transition: opacity 300ms; }

/* = YouTube Container
----------------------------------------------------------------------------------------------------------------- */
.youtube-container { position: relative; margin: 30px 0; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.youtube-container iframe, .youtube-container object, .youtube-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; }
.youtube-container:first-child { margin-top: 0; }
.youtube-container:last-child { margin-bottom: 15px; }
.modal .youtube-container:last-child {margin-bottom: 0;}

/* = Inline ambeds
----------------------------------------------------------------------------------------------------------------- */
.embed-container { margin:45px 0; position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } 
.embed-container:first-child { margin-top:0; }
.embed-container:last-child { margin-bottom:0; }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; }

@media screen and (max-width:440px) {
    .embed-container { margin:40px 0; }
}

/* = Inline Images 
----------------------------------------------------------------------------------------------------------------- */
.article-image {margin:45px 0; border-radius: 2px; position: relative; }
.article-image img { border-radius: 2px;}
.article-image:first-child {margin-top: 5px;}
.article-image:last-child {margin-bottom: 5px;}
.image-caption { position: absolute; bottom:0; right: 0; padding:.5em 1em; font-size: 14px; border-radius:  2px 0 0 0; background: #fff;}

@media screen and (max-width:440px) {
    .article-image {margin:40px 0;}
    .image-caption {  padding: .4em .85em; font-size: 12px;}
}

/* = Inline links 
----------------------------------------------------------------------------------------------------------------- */
.body-text a:not([class]) { text-decoration: underline; text-underline-offset: 2px; }
.body-text a:not([class]):hover,
.body-text a:not([class]):focus { color: #0077ab; text-underline-offset: 3px; }
 
/* = Flex
----------------------------------------------------------------------------------------------------------------- */
.flx { display: -ms-flexbox; display: -webkit-flex; display: flex; }
.flx-inl { display: -ms-inline-flexbox; display: -webkit-inline-flex; display: inline-flex; }
.flx--col { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; }
.flx--jc { -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
.flx--jc-sb { -webkit-justify-content: space-between; -ms-flex-pack: justify;  justify-content: space-between; }
.flx--jc-sa { -webkit-justify-content: space-around;-ms-flex-pack: distribute; justify-content: space-around; }
.flx--jc-end { -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; }
.flx--ac { -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center; }
.flx--ai { -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
.flx--ai-end { -webkit-align-items: flex-end; -ms-flex-align: end;  align-items: flex-end;  }
.flx--wr { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.flx--noSh { -webkit-flex: 0 0 auto; -ms-flex: 0 0 auto; flex: 0 0 auto; }


/* = Standout quote
----------------------------------------------------------------------------------------------------------------- */
.standout-quote { position: relative; }

.sq-title { display: inline-block; padding: 0.45em 1.25em;  color: #fff; background-color: #6934F7; }
.sq-content { padding:60px; background-color: #EFF3F7; }
.sq-text { margin-bottom: 22px; color: #005062; font-size: 22px; font-style: italic;  }
.sq-cite {text-transform: uppercase; letter-spacing: 1.2px;  font-weight: 600; font-size: 18px; font-style: normal; color:#005062; }

@media screen and (max-width: 750px) {
    .sq-content { padding:50px; }
    .sq-text  { font-size: 21px;}
    .sq-cite { font-size: 17px; letter-spacing: 1px; }
}

@media screen and (max-width: 480px) {
    .sq-content { padding:12% 10%; }

    .sq-text  { font-size: 19px;}
    .sq-cite { font-size: 16px;  }
}

@media screen and (max-width: 400px) {
    .sq-content{ padding:12% 9%; }
    .sq-text  { font-size: 18px;} 
    .sq-cite { font-size: 15px; letter-spacing: 0.75px; }
}

/* = Header
----------------------------------------------------------------------------------------------------------------- */
header { background-color: #F4F6F9; }
header ul { list-style: none; margin:0; padding: 0; }

.hdr-strip { padding:7px 0; background-color: #fff; }
.hdr-main { position: relative;  }

.hdr-main .btn--login { display:none; }

.hs-links li { margin:0 28px 0 0; display: inline-block; vertical-align: middle; }
.hs-links li:last-child { margin:0; }
.hs-links a { font-size: 16px; font-weight: 600; text-decoration: none; }
.hs-links a:not(.btn) {  color:#007DB3; position: relative; -webkit-transition: color .4s ease; transition: color .4s ease; }
.hs-links a:not(.btn):hover,
.hs-links a:not(.btn):focus,
.hs-links a.on { color:#6934F7; }

.main-menu { margin-left: auto;}

.hm-links li { margin:0 14px; display: inline-block; vertical-align: middle; }
.hm-links li:last-child { margin-right:0; }
.hm-links a { display: block; padding: 37px 0; font-weight: 600; color: #0077ab; text-decoration: none; position: relative; -webkit-transition: color .4s ease; transition: color .4s ease;  }
.hm-links a.on { color:#6934F7; }

.hm-links a:hover,
.hm-links a:focus { color:#6934F7; }
.hm-links a.on.liHasChildren:before { content:''; position: absolute; left: calc(50% - 20px); bottom:-2px; width: 0; height: 0; border-style: solid; border-width: 0 20px 20px 20px; border-color: transparent transparent #007DB3 transparent; } 

.hs-links a span,
.hm-links a span { position: relative; }

.hs-links a:not(.btn) span:after,
.hm-links a span:after { content:''; position: absolute; left:0; width:0; height: 1px; bottom:-4px; background-color: #6934F7;  -webkit-transition: all .4s ease;  transition: all .4s ease; }

.hs-links a:hover span:after,
.hs-links a:focus span:after, 
.hm-links a:hover span:after,
.hm-links a:focus span:after { width:100%; }

.hdr-funded { padding-left: 24px; margin-left: 30px; border-left:1px solid #ACB8C6; position: relative; }
.hdr-funded p { margin: 0px; font-size: 10px; line-height: 1; color: #007DB3; position: absolute; top: 0px; left: 56.5%; }
.hdr-funded img { max-height: 64px; }

.hdr-logo > a { display: block; }
.hdr-logo--default { display: block; }
.hdr-logo--nhs { display: none; }

@media screen and (min-width: 1101px) and (max-width: 1200px) {
    .hm-links a { font-size: 16px; }
}

@media screen and (max-width: 1100px) {
    header { background-color: #fff; box-shadow: 0 3px 8px #00000029;  }

    .main-menu { display: none; }

    .hdr-strip { display: none; }
    .hdr-main { padding: 20px 0; }

    .hdr-main .btn--login { display: block; }

    .hdr-funded { margin-right: auto; border-color: #e2e4e7; } 
}

@media screen and (max-width: 600px) {
    
    .hdr-funded { padding-left: 20px; margin-left: 25px;  }
    .hdr-funded p { margin: 0px; font-size: 10px; }
    .hdr-funded img { max-height: 56px; }

    .hdr-logo img { max-height: 60px; }

    .hdr-main .btn--login { font-size: 14px;}

}

@media screen and (max-width: 460px) {
    .hdr-main { padding:15px 0;  }
    .hdr-main .btn--login { font-size: 13px; }

    .hdr-funded { margin-left: 20px;  }
    .hdr-funded p { margin: 0px; font-size: 8px; left: 48%; }
    .hdr-funded img { max-height: 42px; }
    .hdr-logo img { max-height: 50px; } 
}

@media screen and (max-width: 400px) {
    .hdr-funded { padding: 0;  border:none;  }

    .hdr-main .btn--login { font-size: 12px;}
}

@media screen and (max-width: 360px) {
    .hdr-main .btn--login { font-size: 11px;}
    .hdr-funded {  margin-left: 18px;  }
}

@media screen and (max-width: 350px) {
    .hdr-funded {  margin-left: 15px; }
    .hdr-main .btn--login:after { content:none;}
}

/* = SUBNAV - Container
----------------------------------------------------------------------------------------------------------------- */
.sub-menu { background-color: #007DB3;}

@media screen and (max-width: 1100px) {
    .sub-menu  { height: 1px; overflow: hidden; visibility: hidden;}
}

/* = SUBNAV - Greedy nav
----------------------------------------------------------------------------------------------------------------- */
.greedy-nav { position: relative; min-width: 250px; max-width: 1420px; padding: 0 40px; margin: 0 auto; }
.greedy-nav--sub {width: 100%;}
.greedy-nav a { display: block; color:#fff; text-decoration: none; padding: 18px 0; white-space: nowrap; -webkit-transition: color .25s ease; transition: color .25s ease;   }
.greedy-nav a.on { font-weight: 600;}

.greedy-nav .more { position: absolute; right:40px; display: flex; align-items: center; padding: 0 36px; line-height: 54px; margin-left: 15px; color:#fff; background-color: #2791bf; border: 0; cursor: pointer; -webkit-transition: color .3s ease;transition: color .3s ease; }
.greedy-nav .more.on { background-color: #2791bf; font-weight: normal; }
.greedy-nav .more img { margin-left:12px;}

.greedy-nav ul { list-style: none; margin: 0; padding:0; line-height: 1; }
.greedy-nav ul li { margin: 0; }

.greedy-nav > ul:not(.hidden-links) { display: inline-table; margin: 0; }
.greedy-nav > ul:not(.hidden-links) > li { padding:0 15px; display: table-cell; position: relative; }
.greedy-nav > ul:not(.hidden-links) > li:first-child {padding-left:8px; }
.greedy-nav > ul:not(.hidden-links) > li.has-children > a:after { content: '';  margin: 0 0 2px 8px; display: inline-block; vertical-align: middle;   width: 0;  height: 0; border-style: solid; border-width: 7px 4px 0 4px; border-color: #162831 transparent transparent transparent;}

.greedy-nav .hidden-links { position: absolute;  min-width: 250px; padding: 20px 40px; right: 40px; top: 100%; text-align: left;  background: #2791bf; box-shadow: 0 15px 20px rgba(0, 0, 0, 0.125); z-index: 3;  }
.greedy-nav .hidden-links a { padding: 4px 0; text-transform: none; letter-spacing: normal; }
.greedy-nav .hidden-links li { display: block; margin: 20px 0; position: relative; }

.greedy-nav .hidden-links .has-children > ul { display: none; }
.greedy-nav .hidden-links .has-children:hover > ul { display: block; }
.greedy-nav .hidden-links .has-children > ul { position: absolute;right: calc(100% + 40px);top: -40px;padding: 20px 40px;min-width: 200px;background: #fff;box-shadow: 0 15px 20px rgba(0, 0, 0, 0.125);}

.greedy-nav .hidden-links .has-children > a:after { content: '';  margin: 0 0 1px 8px; display: inline-block; vertical-align: middle;   width: 0;  height: 0; border-style: solid; border-width: 6px 4px 0 4px; border-color: #162831 transparent transparent transparent;}
.greedy-nav .hidden-links .has-children > a:before { content: ''; position: absolute;  top: 0; right: calc(100% - 10px); width: 75px; height: 100%;  }

.greedy-nav .hidden { visibility: hidden;  display: none;}


.greedy-nav a span { position: relative;}
.greedy-nav a span:after { content: ''; position: absolute; left: 0;  width: 0; height: 1px; bottom: -4px;  background-color: #fff; -webkit-transition: all .4s ease; transition: all .4s ease;}
.greedy-nav a:hover span:after,
.greedy-nav a:focus span:after {  width: 100%;  } 

.greedy-nav ul li a.on span { position: relative; }
.greedy-nav ul li a.on span:after { width:100%; height: 0; bottom:-4px; background-color: transparent; border-bottom: 2px dotted #f4f6f9; }

.greedy-nav > ul:not(.hidden-links) li ul { min-width: 180px; background: #fff; box-shadow: 0 15px 20px rgba(0, 0, 0, 0.125); }

.greedy-nav > ul:not(.hidden-links) > li > ul { position: absolute; top: 100%;  padding: 20px 40px; left: 50%; transform: translate(-50%, -20px); min-width: 180px; background-color: #fff;  visibility: hidden; opacity: 0; -webkit-transition: opacity 200ms, transform 200ms; transition: opacity 200ms, transform 200ms; z-index: 8; }
.greedy-nav > ul:not(.hidden-links) > li:hover > ul { visibility: visible; opacity: 1; transform: translate(-50%, 0); }

.greedy-nav > ul:not(.hidden-links) li ul li { margin:20px 0; width: 100%; position: relative;  }
.greedy-nav > ul:not(.hidden-links) li ul li a { padding: 4px 0; text-transform: none; font-weight: 600; }
.greedy-nav > ul:not(.hidden-links) li ul li ul { display: none; position: absolute; left: 100%; top: 0; padding: 5px 0; }
.greedy-nav > ul:not(.hidden-links) li ul li:hover ul { display: block; }
.greedy-nav > ul:not(.hidden-links) li ul li ul li { font-weight: normal; margin: 0; }
.greedy-nav > ul:not(.hidden-links) li ul li ul li a { font-weight: normal; }

@media screen and (min-width: 1101px) and (max-width: 1200px) {
    .greedy-nav a { font-size: 16px; }
}

@media screen and (max-width: 650px) {
    .greedy-nav { visibility: hidden; height: 1px; margin-top:-1px; border: none; min-width: 150px; }
    .greedy-nav > ul:not(.hidden-links) > li > ul  {display: none;}
}

/* = Nav Hamburger
----------------------------------------------------------------------------------------------------------------- */
.hdr-burger { margin:0 0 0 40px; display: none; vertical-align: middle; overflow: hidden; cursor: pointer; user-select: none; -webkit-tap-highlight-color: transparent; z-index: 1;}

@media screen and (max-width: 1100px) {
    .hdr-burger {  display: block;  }
}

@media screen and (max-width: 600px) {
    .hdr-burger {  margin:0 0 0 30px; }
}

@media screen and (max-width: 400px) {
    .hdr-burger { margin:0 0 0 25px; }
}

@media screen and (max-width: 350px) {
    .hdr-burger { margin:0 0 0 20px; }
}


/* = Mobile menu nav
----------------------------------------------------------------------------------------------------------------- */
.menu-trigger { display: none; margin: 18px 0 18px 35px; vertical-align: middle; color: #454D50; font-weight: 700; }
.menu-propsearch { display: none; margin: 18px 0; padding-right: 22px; vertical-align: middle; color: #454D50; font-weight: 600; position: relative; }

.mobile-menu-wrap { display: none; position: fixed; top: 0; right: 0; padding: 110px 35px 35px; width: 440px; max-width: 100%; height: 100%; -webkit-transition: -webkit-transform 500ms ease; transition: transform 500ms ease; -webkit-transform: translate3d(470px, 0, 0); transform: translate3d(470px, 0, 0); background: #007DB3 url(/assets/logos/SBRI_white_mobile.svg) 35px 30px no-repeat; box-shadow: 5px 5px 25px rgba(0, 0, 0, 0.2); z-index: 10; }
.nav-on .mobile-menu-wrap { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.mobile-menu { position: relative; max-height: 100%; overflow: auto; }
.mobile-menu ul { list-style: none; margin: 0; padding: 0; }
.mobile-menu ul li { margin: 0; padding: 2px 0; position: relative; border-bottom: 1px solid #209cc7; }
.mobile-menu ul li:first-child { border-top: 1px solid #209cc7; }
.mobile-menu a { display: block; padding: 12px 54px 12px 0px; font-size: 18px; /*white-space: nowrap;*/ font-weight: 600; color: #fff; }

.mobile-menu .liHasChildren > a { position: relative; }
.mobile-menu .liHasChildren > ul { display: none; }
.mobile-menu .liHasChildren.subOn > ul { display: block; }
.mobile-menu .liHasChildren.subOn > a { padding-bottom: 14px; border-bottom: 1px solid #209cc7;}

.mobile-menu .liHasChildren ul a { padding: 5px 0; font-size: 16px; font-weight: 400;   }
.mobile-menu .liHasChildren > ul { margin: 12px 0 10px; padding: 0 20px; }
.mobile-menu .liHasChildren > ul > li { border: none; }
.mobile-menu .liHasChildren > ul > li > ul { margin: 0 0 5px 10px; }

.mobile-menu .liOn > a { color: #A2C617; }

.mobile-menu > ul > li.liHasChildren .icon { display: flex; align-items: center; justify-content: center; position: absolute; top: 0; right: 0; font-size: 18px; margin: 6px 0; height: 44px; width: 54px; text-align: center; cursor: pointer;  border-left: 1px solid #209cc7; }

.mobile-menu > ul > li.liHasChildren .icon:after { content:'';  width: 0; min-width: 0;  height: 0; border-style: solid;  border-width: 5px 5px 0 5px; border-color: #ffffff transparent transparent transparent;}
.mobile-menu > ul > li.liHasChildren.subOn .icon:after { -webkit-transform:rotate(180deg); transform:rotate(180deg); } 

.closeMenu { position: absolute; top: 42px; right: 35px; cursor: pointer; height: 28px; width: 28px; z-index: 2; }

.cover { background: #fff; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 5; opacity: 0.8; display: none; }

@media screen and (min-width: 1101px) {
    .cover { display: none !important; }
}

@media screen and (max-width: 1100px) {
    .mobile-menu-wrap { display: block; }
}

@media screen and (max-width: 460px) {
    .mobile-menu-wrap { padding: 100px 35px 35px;  background-position: 35px 20px; }
    .closeMenu {  top: 28px; right: 30px; }
}

@media screen and (max-width: 360px) {
    .mobile-menu-wrap { padding: 110px 30px 30px; background-position: 30px 20px;   }
    .closeMenu {  right: 25px; }

    .mobile-menu .liHasChildren > ul { margin: 12px 0 10px; padding: 0 15px; }
}

@media screen and (max-width: 340px) {
    .mobile-menu a { font-size: 17px; }
    .mobile-menu .liHasChildren ul a { padding: 4px 0; font-size: 15px; }
}


/* = Containers
----------------------------------------------------------------------------------------------------------------- */
.row { padding:80px 0; background: #fff; position: relative; }
.row--light-blue { background-color: #EFF3F7; }

.row--white + .row--white { padding-top:0; }

.main-content > .row:first-child { padding-top: calc(80px - 1.75%);}

.main-content--home > .row:first-child:before { content:''; position: absolute; top:0; left:0; width: 100%; height: 240px; background-color: #EFF3F7;}

.container { max-width: 1420px; padding:0 40px; margin:0 auto; } 
.container--1320 { max-width: 1320px; }
.container--medium { max-width: 1460px; }
.container--large { max-width: 1600px; }
.container--lgrey { background: #f5f5f5;}

.inner { max-width: 800px; margin: 80px auto;} 
.inner--400 {max-width: 400px;}
.inner--500 {max-width: 500px;}
.inner--600 {max-width: 600px;}
.inner--650 {max-width: 650px;}
.inner--700 {max-width: 700px;}
.inner--750 {max-width: 750px;}
.inner--850 {max-width: 850px;}
.inner--900 {max-width: 900px;}
.inner--950 {max-width: 950px;}
.inner--980 {max-width: 980px;}
.inner--1024 {max-width: 1024px;}
.inner--1040 {max-width: 1040px;}
.inner--1100 {max-width: 1100px;}
.inner--1160 {max-width: 1160px;}
.inner--1200 {max-width: 1200px;}
.inner:first-child {margin-top:0; }
.inner:last-child {margin-bottom:0; }

@media screen and (min-width: 1401px) {
    .row { padding:90px 0; } 

    .main-content > .row:first-child { padding-top: calc(90px - 1.75%);}
}

@media screen and (min-width: 1601px) {
    .row { padding:100px 0; } 

    .main-content > .row:first-child { padding-top: calc(100px - 2.25%);}
}

@media screen and (min-width: 1801px) {
    .row { padding:110px 0; } 

    .main-content > .row:first-child { padding-top: calc(120px - 3%);}
}

@media screen and (max-width: 1400px) {
.main-content--home > .row:first-child:before { height: 15vw; }
}

@media screen and (max-width: 1100px) {
    .container.container--slider-home { padding:0; }

    .main-content--home > .row:first-child:before { height: 20vw; }
}

@media screen and (max-width: 800px) {
    .main-content--home > .row:first-child:before { height: 30vw; }
}

@media screen and (max-width: 600px) {
    .container { padding:0 6%; }

    .row { padding:70px 0; } 
    .inner { margin: 70px auto;} 

    .main-content > .row:first-child { padding-top: calc(70px - 1.75%);}

    .main-content--home > .row:first-child:before { height: 35vw; }
}

@media screen and (max-width: 440px) {
    .row { padding:60px 0; } 
    .inner { margin: 60px auto;} 

    .main-content > .row:first-child { padding-top: calc(60px - 1.75%);}

    .main-content--home > .row:first-child:before { height: 35vw; }
}

@media screen and (max-width: 400px) {
    .row { padding:55px 0; } 
    .inner { margin: 55px auto;} 

    .main-content > .row:first-child { padding-top: calc(55px - 1.75%);}
}

/* = Aside main template
----------------------------------------------------------------------------------------------------------------- */
.aside-main { max-width: 1160px; margin:0 auto; }

.aside { width: 360px; margin: 0 40px 0 0; }
.main { width:calc(100% - 400px); }

.main > ul:not([class])  { font-weight: 600; }

@media screen and (max-width: 1000px) {
    .aside { width: 100%; margin:0 0 50px; padding-bottom: 50px; border-bottom: 4px solid #DEE3E8;  }
    .main { width:100%; }
}

/* = Columns
----------------------------------------------------------------------------------------------------------------- */
.cols { margin:45px 0; }
.cols:first-child { margin-top:0; }
.cols:last-child { margin-bottom:0; }

.cols .col { margin: 0 0 45px;}
.cols .col:last-child { margin-bottom: 0; }

@media screen and (min-width:851px) {
    .cols {  display: -ms-flexbox; display: -webkit-flex; display: flex; }

    .cols--half .col { float:left; width: calc(50% - 25px); margin:50px 50px 0 0; }
    .cols--half .col:nth-child(2n+2) { margin-right: 0; }
    .cols--half .col:nth-child(-n+2) { margin-top: 0; }

    .cols--twoThirds .col { float:left; width: calc(66% - 20px); margin:40px 40px 0 0; }
    .cols--twoThirds .col:nth-child(2n+2) { width: calc(34% - 20px); margin-right: 0; }
    .cols--twoThirds .col:nth-child(-n+2) { margin-top: 0; }
}

@media screen and (min-width:1025px) {
    .cols--half .col { width: calc(50% - 30px); margin:60px 60px 0 0; }
}

@media screen and (max-width:480px) {
    .cols .col { margin: 0 0 40px;}
}

/* = Accordion
----------------------------------------------------------------------------------------------------------------- */
.accordion { margin: 50px 0; padding: 0; list-style: none; }
.accordion:first-child { margin-top: 0; }
.accordion:last-child { margin-bottom: 0; }

.accordion > h3 { display: block;  outline: none;  margin: 0; padding: 14px 45px 14px 4px; border-top:2px solid #6934F7; font-size: 22px; background-color: #fff; cursor: pointer; position: relative;  -webkit-transition:  color 0.3s, background-color 0.3s; transition: color 0.3s, background-color 0.3s; }
.accordion > h3:last-of-type { border-bottom: 2px solid #6934F7; margin-bottom: 0;} 
.accordion > h3.on:last-of-type { border-color: transparent ;}
.accordion > h3:after { content:''; right:10px; top:50%; width:16px; height: 10px; transform: translateY(-50%); position: absolute; background: url(/assets/icons/icon-chevron-down.svg); -webkit-transition: transform .2s linear; transition: transform .2s linear; }
.accordion > h3.on:after  { -webkit-transform: translateY(-50%) rotate(180deg); transform: translateY(-50%) rotate(180deg); }
.accordion > h3:focus-within { text-decoration: underline;}


.accordion p { line-height: 1.6em;}

.accordion .acc-content { display: none; padding: 15px 20px 40px; }
.accordion .acc-content:last-of-type {padding-bottom: 0;}
.accordion .acc-content.open { display: block; margin: 0; }

@media all and (max-width: 750px) {
    .accordion .acc-content { padding: 15px 4px 40px; }
}

@media all and (max-width: 480px) {
    .accordion { margin: 45px 0; }
    .accordion > h3 {  font-size: 20px; }

    .accordion .acc-content { padding: 10px 4px 35px; }
}

@media all and (max-width: 400px) {
    .accordion { margin: 35px 0; }
    .accordion > h3 { font-size: 19px; padding: 14px 35px 14px 0; }
    .accordion > h3:after {  right:4px; }
    .accordion .acc-content { padding: 10px 0 35px; }
}

/* = Tabs - Defaults
----------------------------------------------------------------------------------------------------------------- */
.tabs { margin: 40px 0; }
.tabs:first-child {margin-top:0;}
.tabs:last-child {margin-bottom:0;}
.tab-links { margin: 0; padding: 0; list-style: none; }
.tab-links li { display: inline-block; margin: 0 20px 0 0; }
.tab-links li a { display: inline-block;  position: relative; font-weight: 700; text-decoration: none;}
.tab-links li a:hover { color: #666; }
.tab-links li a.on { color: #6934F7; }
.tab-links li a.on:after  {content:''; position: absolute; bottom:-1px; left:0; width:100%; height: 2px; background:#6934F7; }
.tabs .tab-panel { margin: 20px 0 0; }

/* = Tabs - Team toggle
----------------------------------------------------------------------------------------------------------------- */
.tabs--team .tab-panel  { margin:50px 0 0; }

.tab-links--team li { margin:0; }
.tab-links--team li a { padding:.5em 1.5em; border:1px solid #6934F7; color:#9AB1B5; font-weight: 600; } 
.tab-links--team li a.on { background-color: #6934F7; color:#fff; }
.tab-links--team li a.on:after { content:none; }

/* = Tables
----------------------------------------------------------------------------------------------------------------- */
.tableWrap { margin:40px 0; overflow: auto; }
.tableWrap:first-child { margin-top:0; }
.tableWrap:last-child { margin-bottom:0; }

table { width: 100%; margin: 0; border-spacing: 0; border-collapse: collapse; }
th { padding: 25px 30px; color: #005062; font-weight: 700; border: 1px solid #c5ccd5; background: #EFF3F7; }
td { padding: 25px 30px; border: 1px solid #c5ccd5; background: #fff; }

.table--directory { margin-bottom: 10px;}
.table--directory th,
.table--directory td { border-width: 1px 0 0 0; } 

.table--directory th { width:34%; }

.table--directory tr:last-child th,
.table--directory tr:last-child td { border-bottom-width: 1px;}

@media all and (max-width: 480px) {
    .table--directory,
    .table--directory tr { display: block;}
    .table--directory th,
    .table--directory td { display: block; width: 100%; padding: 15px 20px; }
}


/* = Screen Messages
----------------------------------------------------------------------------------------------------------------- */
.msg { margin: 35px 0; padding: 20px 25px; font-weight: 700; background: #fff; border:3px solid #6934F7; -webkit-border-radius: 2px; border-radius: 2px; position: relative;}
.msg:first-child {margin-top: 0;}
.msg:last-child {margin-bottom: 0;}
.msg:before { position: absolute; top:50%; left:22px; transform: translateY(-50%); font-size: 1.25em; }

.msg--green { border-color: #00AA5C; }
.msg--green:before {color:#00AA5C;} 

.msg--orange { border-color: #FD8227; }
.msg--orange:before {color:#FD8227;} 

.msg--info { padding-left: 60px;  }
.msg--info:before {  content:'\e801';  color:#6934F7;  }

.msg--error { padding-left: 60px; border-color: #FD8227; }
.msg--error:before {  content:'\e803'; }

.msg--alert { padding-left: 60px; border-color: #FD8227; }
.msg--alert:before {  content:'\e805';  }

.msg--success { padding-left: 60px; border-color: #00AA5C; }
.msg--success:before {  content:'\e804';  }

.msg p { margin-bottom: 0; font-weight: 700;  }
.msg ul {  margin-bottom: 0; font-weight: 700;  }
.msg ul li { margin-bottom: 5px; }
.msg ul li:last-child {margin-bottom: 0;}

@media screen and (max-width:400px) {
    .msg { margin: 30px 0; }
}

/* Uniform Errors */
.uniform-errors { margin: 35px 0; padding: 20px 25px; font-weight: 700; background: #fff; border:3px solid #FD8227; -webkit-border-radius: 2px; border-radius: 2px; position: relative;}
.uniform-errors:first-child {margin-top: 0;}
.uniform-errors:last-child {margin-bottom: 0;}
.uniform-errors:before { position: absolute; top:50%; left:22px; transform: translateY(-50%); font-size: 1.25em; }

.uniform-errors p { margin-bottom: 0; font-weight: 700;  }
.uniform-errors ul {  margin-bottom: 0; font-weight: 700;  }
.uniform-errors ul li { margin-bottom: 5px; }
.uniform-errors ul li:last-child {margin-bottom: 0;}

@media screen and (max-width:400px) {
    .uniform-errors { margin: 30px 0; }
}

/* Form Validation */
.error,
.error label,
.error label.error,
.error input,
.error textarea,
.error select {
    color: #BA2E31;
    border-color: #BA2E31;
}

.valide,
.valide label,
.valide label.valide,
.valide input,
.valide textarea,
.valide select {
    color: #40A54D;
    border-color: #40A54D;
}



/* = Pagination
----------------------------------------------------------------------------------------------------------------- */
.paging { margin:40px 0 0; text-align: center; list-style: none; padding:0; }
.paging li { display: inline-block; vertical-align: top; margin: 0 3px; position: relative;  }
.paging li a { display: block; font-size: 15px; width:30px; height: 30px; line-height: 26px; border:2px solid #DEE3E8; text-decoration: none; font-weight: 600; border-radius: 50%; transition: all .2s ease; transition: all .2s ease; }
.paging li a.on { color:#fff; background: #6934F7; border-color: #6934F7;}
.paging li a.icon { border-color: transparent;}

.icon--pg-left:before {content: '\e809';  }
.icon--pg-right:before {content: '\e809'; transform: rotate(180deg);  }

.paging li a:not(.on):hover,
.paging li a:not(.on):focus { color:#fff; background: #007DB3; border-color:#007DB3; }

@media screen and (min-width:351px) {
    .paging li { margin: 0 4px;  }
    .paging li a {font-size: 16px; width:32px; height: 32px; line-height: 28px; }
}

@media screen and (min-width:651px) {
    .paging li {  margin: 0 5px; }
    .paging li a { font-size: 1em; width:36px; height: 36px; line-height: 32px; }
}

/* = Slider - Defaults
----------------------------------------------------------------------------------------------------------------- */
.slider-wrap { margin:45px 0; }
.slider-wrap:first-child { margin-top:0; }
.slider-wrap:last-child { margin-bottom:0; }

.lSSlideOuter { overflow: hidden; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none }
.lightSlider:before, .lightSlider:after { content: " "; display: table; }
.lightSlider { overflow: hidden; margin: 0; }
.lSSlideWrapper { max-width: 100%; overflow: hidden; position: relative; }
.lSSlideWrapper > .lightSlider:after { clear: both; }
.lSSlideWrapper .lSSlide { -webkit-transform: translate(0px, 0px); transform: translate(0px, 0px); -webkit-transition: all 1s; -webkit-transition-property: -webkit-transform,height; -moz-transition-property: -moz-transform,height; transition-property: transform,height; -webkit-transition-duration: inherit !important; transition-duration: inherit !important; -webkit-transition-timing-function: inherit !important; transition-timing-function: inherit !important; }
.lSSlideWrapper .lSFade { position: relative; }
.lSSlideWrapper .lSFade > * { position: absolute !important; top: 0; left: 0; z-index: 0; margin-right: 0; width: 100%; }
.lSSlideWrapper.usingCss .lSFade > * { opacity: 0; -webkit-transition-delay: 0s; transition-delay: 0s; -webkit-transition-duration: inherit !important; transition-duration: inherit !important; -webkit-transition-property: opacity; transition-property: opacity; -webkit-transition-timing-function: inherit !important; transition-timing-function: inherit !important; }
.lSSlideWrapper .lSFade > *.active { z-index: 1; }
.lSSlideWrapper.usingCss .lSFade > *.active { opacity: 1; }

/* Slider Pager */
.lSSlideOuter .lSPager.lSpg { margin: 10px 0 0; padding: 0; text-align: center;}
.lSSlideOuter .lSPager.lSpg > li { cursor: pointer; display: inline-block;   padding: 0 7px; margin:30px 0 0; }
.lSSlideOuter .lSPager.lSpg > li:first-child {padding-left: 0;}
.lSSlideOuter .lSPager.lSpg > li:last-child {padding-right: 0;}
.lSSlideOuter .lSPager.lSpg > li a { background-color: #fff; display: inline-block; width: 14px; height: 14px; border: 2px solid #6934F7; overflow: hidden; text-indent: -999em;   position: relative; -webkit-transition: all 0.4s linear 0s; transition: all 0.4s linear 0s;  z-index: 1;}
.lSSlideOuter .lSPager.lSpg > li.active a { background-color: #6934F7;}

/* Slider Gallery */
.lSSlideOuter .lSPager.lSGallery { list-style: none outside none; padding-left: 0;   margin: 0; overflow: hidden;  transform: translate3d(0px, 0px, 0px); -moz-transform: translate3d(0px, 0px, 0px); -webkit-transform: translate3d(0px, 0px, 0px); -o-transform: translate3d(0px, 0px, 0px);  -webkit-transition-property: -webkit-transform; -moz-transition-property: -moz-transform; -webkit-touch-callout: none; -webkit-user-select: none; -ms-user-select: none;  user-select: none;}
.lSSlideOuter .lSPager.lSGallery li { overflow: hidden;-webkit-transition: border-radius 0.12s linear 0s 0.35s linear 0s;  transition: border-radius 0.12s linear 0s 0.35s linear 0s;}
.lSSlideOuter .lSPager.lSGallery li.active, .lSSlideOuter .lSPager.lSGallery li:hover { border-radius: 5px;}
.lSSlideOuter .lSPager.lSGallery img { display: block; height: auto; max-width: 100%;}
.lSSlideOuter .lSPager.lSGallery:before, .lSSlideOuter .lSPager.lSGallery:after {  content: " "; display: table;}
.lSSlideOuter .lSPager.lSGallery:after { clear: both;}

/* Slider actions */
.lSAction > a,
.lSAction > .lsArrow {  width: 44px;  height: 44px; line-height: 44px; text-align: center; display: block; top: calc(50% - 22px);  background:#6934F7; cursor: pointer;position: absolute;  -webkit-transition: opacity 0.35s linear 0s; transition: opacity 0.35s linear 0s; z-index: 1;   box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);}
.lSAction > .lSPrev { left: 0; background: #6934F7 url(/assets/icons/icon--nav-left.svg) center no-repeat; }
.lSAction > .lSNext { right: 0; background: #6934F7 url(/assets/icons/icon--nav-right.svg) center no-repeat; }
.lSAction > a.disabled,
.lSAction > .lsArrow.disabled { pointer-events: none; }
.cS-hidden { height: 1px; opacity: 0; overflow: hidden;}

.lSAction > .lSPrev:hover,
.lSAction > .lSPrev:focus,
.lSAction > .lSNext:hover,
.lSAction > .lSNext:focus   { background-color: #007DB3;}

/* Rtl */
.lSSlideOuter.lSrtl { direction: rtl; }
.lSSlideOuter .lightSlider, .lSSlideOuter .lSPager { padding-left: 0; list-style: none outside none; }
.lSSlideOuter.lSrtl .lightSlider, .lSSlideOuter.lSrtl .lSPager { padding-right: 0; }
.lSSlideOuter .lightSlider > *, .lSSlideOuter .lSGallery li { float: left; }
.lSSlideOuter.lSrtl .lightSlider > *, .lSSlideOuter.lSrtl .lSGallery li { float: right !important; }

@-webkit-keyframes rightEnd {
    0% { left: 0; }
    50% { left: -15px; }
    100% { left: 0; }
}

@keyframes rightEnd {
    0% { left: 0; }
    50% { left: -15px; }
    100% { left: 0; }
}

@-webkit-keyframes leftEnd {
    0% { left: 0; }
    50% { left: 15px; }
    100% { left: 0; }
}

@keyframes leftEnd {
    0% { left: 0; }
    50% { left: 15px; }
    100% { left: 0; }
}

.lSSlideOuter .rightEnd { -webkit-animation: rightEnd 0.3s; animation: rightEnd 0.3s; position: relative; }
.lSSlideOuter .leftEnd { -webkit-animation: leftEnd 0.3s; animation: leftEnd 0.3s; position: relative; }
.lSSlideOuter.lSrtl .rightEnd { -webkit-animation: leftEnd 0.3s; animation: leftEnd 0.3s; position: relative; }
.lSSlideOuter.lSrtl .leftEnd { -webkit-animation: rightEnd 0.3s; animation: rightEnd 0.3s; position: relative; }

/* = Hero banners
----------------------------------------------------------------------------------------------------------------- */
.hero { min-height: 300px; overflow: hidden; position: relative; background: #0D7298; background: conic-gradient(from 68deg at 103% 33%, #1D556A 0.00%, #317790 12.15%, #0D7298 43.66%, #115A76 53.53%, #01192B 79.93%, #1D556A 100.00%) 0% 0%;  }
.hero:after { content:''; position: absolute; top:0; right:0; height: 100%; width:100%; background: url(/assets/shapes/hero-curves.svg) 100% 50% no-repeat; }

.hero--home { min-height: 400px; }
.hero--home:after { background-size: auto 100%;}

.hero-image { position: absolute; top:0; left:0; width: 100%; height: 100%; }
.hero-image:after { content:''; position: absolute; top:0; left:0; width:100%; height:100%;  background: #1D556A;  mix-blend-mode: multiply; opacity: 0.25; }

.hero--home .hero-image:after { content:none; }
.hero--home .hero-image img { object-position: 85% 50%; font-family: 'object-fit: cover; object-position: 85% 50%;';  }

.hero * { color:#fff; }
.hero h1:last-child { margin-bottom: 0;}
.hero .container { width:100%; }
.hero-sub-heading { margin:0 0 13px; font-weight: 600; letter-spacing: 1.5px; }

.hero-content { padding: 50px 0; padding-bottom: calc(50px + 4%); position: relative; z-index: 1;  }
.hero-content .btn + .btn { margin-left: 25px;}

@media screen and (min-width: 751px) {
    .hero { min-height: 350px; }
    .hero--home { min-height: 450px; }
}

@media screen and (min-width: 951px) {
    .hero { min-height: 375px; }
    .hero-content { max-width: 75%; }

    .hero--home { min-height: 475px; }
    .hero--home .hero-content { max-width: 600px; }
}

@media screen and (min-width: 1401px) {
    .hero { min-height: 400px; }

    .hero--home { min-height: 500px; }
    .hero--home h1 { font-size: 44px;}
}

@media screen and (min-width: 1601px) {
    .hero { min-height: 450px; }

    .hero--home { min-height: 550px; }
    .hero--home h1 { font-size: 46px;}
    .hero--home .hero-content { max-width: 620px; }
}

@media screen and (min-width: 1701px) {
    .hero--home h1 { font-size: 48px;}
    .hero--home .hero-content { max-width: 650px; }
}

@media screen and (max-width: 950px) {
    .hero--home .hero-content { max-width: 550px; }
}

@media screen and (max-width: 750px) {
    .hero-sub-heading { font-size: 16px; }
}

@media screen and (max-width: 650px) {
    .hero:after {  background-size: auto 100%; }
    .hero--home:after { content:none; }

    .hero--home .hero-image:after {  content:''; opacity: 0.3;  }
    .hero--home .text {max-width: 80%;}
}

@media screen and (max-width: 480px) {
    .hero-sub-heading { font-size: 15px; }

    .hero-content .btn + .btn { margin-left: 20px;}
}

@media screen and (max-width: 440px) {
    .hero--default { min-height: 275px; }
    .hero-sub-heading { font-size: 14px; }

    .hero:after {  right:-15px;  }

    .hero-content .btn + .btn { margin-left: 15px;}
}

/* = Main content
----------------------------------------------------------------------------------------------------------------- */
.main-content { position: relative; }
.main-content::before { content:''; position: absolute; top:0; left:0; width: 100%; padding-top: 2.92%; -webkit-transform: translateY(calc(-100% + 1px)); transform: translateY(calc(-100% + 1px)); background: url(/assets/shapes/base-curve-white.svg) center no-repeat; background-size: cover; }

.main-content--home:before { background: url(/assets/shapes/base-curve-home.svg) center no-repeat; } 

/* = Cards - Shared
----------------------------------------------------------------------------------------------------------------- */
.card { color:#2F2F2F; }
a.card { display: block;  } 

.card:hover,
.card:focus { text-decoration: none; color:#2F2F2F; }

.card-image { margin:25px 0; height: 0; padding-top: 55.56%; overflow: hidden; position: relative; }
.card-image:first-child {margin-top:0;}
.card-image:last-child {margin-bottom:0;}

/* = Cards - Home slider
----------------------------------------------------------------------------------------------------------------- */
a.card--home:focus-visible { outline-offset: -4px; } 

.card--home .card-title { padding-bottom: 20px; margin-bottom: 25px; border-bottom: 4px solid #d7e0e2;} 
.card--home p:last-child { padding-bottom: 5px;}
.card--home:focus-visible .btn {  background-color: #007DB3; border-color: #007DB3; }
.card--home:focus-visible .card-title { color:#6934F7; text-decoration: underline; }

.slider--home  { margin-bottom: 10px; }

.slider a.card { padding:5px; }
 
@media screen and (min-width: 1101px) {
    .slider--home { transform:none !important; }
}

@media screen and (max-width: 1100px) {
    .slider-wrap--home .lSSlideOuter  { position: relative; }
    .slider-wrap--home .lSSlideWrapper { margin:0 85px;  position: unset; }
    .slider-wrap--home .lSAction > .lSPrev {  left: 15px; }
    .slider-wrap--home .lSAction > .lSNext {  right: 15px; }
}

@media screen and (max-width: 800px) {
    .slider-wrap--home { position: relative; padding: 0 20% 0 40px; overflow: hidden;  }
    .slider-wrap--home .lSSlideOuter { overflow: visible; position: unset;    }
    .slider-wrap--home .lSSlideWrapper { overflow: visible; margin:0; }
    .slider-wrap--home .lSAction > .lSPrev {  display: none; }
    .slider-wrap--home .lSAction > .lSNext {  right: 20px; }
}

@media screen and (max-width: 600px) {
    .slider-wrap--home { position: relative; padding: 0 20% 0 6%; overflow: hidden;  }
    .slider-wrap--home .lSSlideOuter { overflow: visible; position: unset;    }
    .slider-wrap--home .lSSlideWrapper { overflow: visible; margin:0;  }
    .slider-wrap--home .lSAction > .lSNext {  right: 15px; }
}

/* = Cards - Description
----------------------------------------------------------------------------------------------------------------- */
.card-desc { margin-bottom: 25px;}
.card-desc:last-child { margin-bottom: 0; }

/* = Cards - Numbers (Hompeage)
----------------------------------------------------------------------------------------------------------------- */
.slider--numbers { display: flex; }
.card--numbers { padding:0 6px; text-align: center; display: flex; flex-direction: column; position: relative;  }
.card--numbers:after { content:''; position: absolute; top:0; right:-15px; height: 100%; border-right: 1px solid #AEB8C5;}

.cn-number {  font-size: 60px; color:#6934F7; }
.cn-sub { font-size: 20px; color:#6934F7; font-weight: 600; }
.cn-title { display: flex; align-items: flex-end; flex: 1 1 auto; margin:auto auto 0; padding-top:20px; max-width: 200px; font-size: 20px; color:#005062; font-weight: 700;}

@media screen and (min-width: 1101px) {
    .slider--numbers { transform:none !important; }

    .card--numbers { min-height: 175px;}
}

@media screen and (max-width: 480px) {
    .cn-number { font-size: 12vw;  }

    .cn-sub { font-size:18px; }
    .cn-title { padding-top:15px;  font-size:18px; }
}

@media screen and (max-width: 440px) {
    .cn-sub {  font-size:16px; }
    .cn-title { padding-top:10px; font-size:16px; }
}

/* = Cards - Numbers at a glance
----------------------------------------------------------------------------------------------------------------- */
.cards-stats { margin:50px 0; }
.cards-stats:first-child { margin-top: 5px; }
.cards-stats:last-child { margin-bottom: 5px; }

h2 + .cards-stats { margin-top: 30px;}

.card--stat { margin:5px 0; width:100%; padding:60px 40px; background-color: #EFF3F7; } 
.cs-number { margin-bottom: 18px; line-height: 1; font-size: 60px; color:#6934F7; }
.cs-title { font-size: 20px; color: #005062;  font-weight: 700;}

@media screen and (min-width: 751px) and (max-width: 900px), screen and (min-width: 1141px) and (max-width: 1200px) {
    .cs-number {  font-size: 52px; }
}

@media screen and (min-width: 751px) and (max-width: 1000px), screen and (min-width: 1141px) {
    .cards-stats--x2 .card--stat  { width: calc(50% - 2.5px); margin: 0 5px 0 0; }
    .cards-stats--x2 .card--stat:last-child { margin:0; } 
}

@media screen and (max-width:480px) {
    .cs-number { font-size: 12vw; margin-bottom: 12px;}
    .card--stat {  padding: 12% 10%; }
}

@media screen and (max-width:400px) {
    .cs-title { font-size: 18px; }
}

/* = Cards - Testimonials
----------------------------------------------------------------------------------------------------------------- */
.card--testimonial { background-color: #fff; }
.ct-inner { padding:60px; }

.ct-image { min-width: 120px; width:120px; height: 120px; margin-right: 25px; border-radius: 50%; overflow: hidden; position: relative; }
.ct-image img { position: absolute; top: 50%; left:50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.ct-text p {   color:#005062; font-size: 20px; font-style: italic; }
.ct-text p:not(:last-child) { margin-bottom: 20px; }
.ct-text .ct-name { text-transform: uppercase; letter-spacing: 1.2px; font-weight: 600; font-size: 18px; font-style: normal; }

.slider-title { display: inline-block; padding: 0.45em 1.25em; color:#fff; background-color: #6934F7; }

@media screen and (max-width: 750px) {
    .ct-inner { padding:50px; }
}

@media screen and (max-width: 600px) {
    .ct-image { display: none;}
}

@media screen and (max-width: 480px) {
    .ct-inner { padding:12% 10%; }

    .ct-text p  { font-size: 19px;}
    .ct-text .ct-name { font-size: 17px; letter-spacing: 1px; }
}

@media screen and (max-width: 400px) {
    .ct-inner { padding:12% 9%; }
    .ct-text p  { font-size: 18px;} 
    .ct-text .ct-name { font-size: 15px; letter-spacing: 0.75px; }
}

/* = Cards - Tweets
----------------------------------------------------------------------------------------------------------------- */
.card--tweet { width:100%; margin:0 0 30px;}
.card--tweet:last-child { margin:0; }
.card--tweet p { color:#005062; }

.ctw-main { padding:32px; border-radius: 20px 20px 20px 0; background-color: #F4F6F9; position: relative;  } 
.ctw-main:after { content:''; position: absolute; bottom:-14px; left:0; width:28px; height: 15px; background: url(/assets/shapes/tweet-corner.svg) 0 0 no-repeat;}
.ctw-handle-date { margin: 12px 32px; font-size: 16px; }
/*.ctw-handle-date a { color:#005062; }*/

@media screen and (min-width: 651px) {
    h2 + .tweets { margin-top: 40px;}
    .card--tweet { width:calc(50% - 15px); margin-right:30px;  }
    .card--tweet:last-child { margin:0; }
}

/* = Cards - Reports
----------------------------------------------------------------------------------------------------------------- */
.reports  { margin:0 0 10px; }
.card--report { padding:26px; background-color: #EFF3F7;  box-shadow: inset 0 0 0px 1px transparent; -webkit-transition: box-shadow .3s ease; transition: box-shadow .3s ease; }

.card--report:hover,
.card--report:focus { box-shadow: inset 0 0 0px 1px #6934F7; }

.card--report .card-image { padding-top: 140%; }
.card--report .card-title { text-align: center; font-weight: 600; margin: 0 0 20px; padding:0 3%; color:#005062; line-height: 1.35em; }
.card--report .card-button { text-align: center; }
.card--report .file-size {  display: block; margin:12px 0 0; color:#005062; font-size: 16px; }

@media screen and (min-width: 481px) and (max-width:600px)  {
    .card--report { width:calc(50% - 12.5px); margin:25px 25px 0 0; padding: 3.5%;  }
    .card--report:nth-child(even) { margin-right: 0; }
    .card--report:nth-child(-n+2) { margin-top:0; }

    .card--report .card-image { margin-bottom: 20px;}
    .card--report .card-title { padding:0; }
}

@media screen and (min-width: 601px) and (max-width:900px)  {
    .card--report { width:calc(50% - 15px); margin:30px 30px 0 0; padding: 4%; }
    .card--report:nth-child(even) { margin-right: 0; }
    .card--report:nth-child(-n+2) { margin-top:0; }
}

@media screen and (min-width: 901px) and (max-width:1200px) {
    .card--report { width:calc(33.333% - 20px); margin:30px 30px 0 0; }
    .card--report:nth-child(3n+3) { margin-right: 0; }
    .card--report:nth-child(-n+3) { margin-top:0; }
}

@media screen and (min-width: 1201px) {
    .card--report { width:calc(25% - 22.5px); margin:30px 30px 0 0; }
    .card--report:nth-child(4n+4) { margin-right: 0; }
    .card--report:nth-child(-n+4) { margin-top:0; }
}

@media screen and (max-width:480px)  {
    .card--report { margin:35px auto 0; max-width: 350px; }
}

/* = Cards - Case Study
----------------------------------------------------------------------------------------------------------------- */
.card--case-study { overflow: hidden; position: relative; }
.card--case-study .card-image { padding-top: 135.18%; margin:0; position: relative;}
.card--case-study .card-image:after { content:''; position: absolute; top:0; left:0; width:100%; height: 100%;  background: linear-gradient(180deg, rgba(0, 37, 54, 0.8) 0%, rgba(84, 109, 120, 0) 100%); opacity: 0.8; }

.card--case-study .card-content { position: absolute; top:0; left:0; width:100%; height: 100%; padding: 9% 8%; }
.card--case-study .card-content > * { color:#fff; position: relative; }

.card--case-study .card-desc { opacity: 0; -webkit-transition: opacity .3s ease;  transition: opacity .3s ease; }

.card--case-study:hover .card-desc,
.card--case-study:focus .card-desc { opacity: 1;}

.card--case-study .card-button { margin:auto 0 12px; text-align: center; opacity:0;  -webkit-transform: translateY(100px);  transform: translateY(100px); -webkit-transition:all .3s ease; transition:all .3s ease; }
.card--case-study:hover .card-button,
.card--case-study:focus .card-button  { opacity: 1; -webkit-transform: translateY(0);  transform: translateY(0); }

.card--case-study .card-content:before { content:''; opacity: 0; position: absolute; top:0; left:0; width:100%; height: 100%;  background: linear-gradient(180deg, #6934F7 0%, #6934F7 30%, rgba(255, 255, 255, 0.82) 100%); -webkit-transition:opacity .5s ease; transition:opacity .5s ease;}
.card--case-study:focus .card-content:before,
.card--case-study:hover .card-content:before { opacity: 1; } 

.card--case-study .btn { min-width: 160px; }

.case-studies + .paging { margin-top: 60px; } 

@media screen and (min-width: 651px) and (max-width:950px)  {
    .card--case-study { width:calc(50% - 15px); margin:30px 30px 0 0;}
    .card--case-study:nth-child(even) { margin-right: 0; }
    .card--case-study:nth-child(-n+2) { margin-top:0; }
}

@media screen and (min-width: 951px) {
    .card--case-study { width:calc(33.333% - 20px); margin:30px 30px 0 0; }
    .card--case-study:nth-child(3n+3) { margin-right: 0; }
    .card--case-study:nth-child(-n+3) { margin-top:0; }
}

@media screen and (min-width: 951px) and (max-width: 1200px), screen and (min-width: 651px) and (max-width: 750px)  {
    .card--case-study .card-title { font-size: 28px; margin-bottom: 20px; } 
    .card--case-study .card-desc { line-height: 1.35em; font-size: 17px; }
}

@media screen and (min-width: 1201px) {
    .card--case-study { width:calc(33.333% - 26.67px); margin:40px 40px 0 0; }
}

@media screen and (max-width: 650px) {
    .case-studies { display: block;}

    .card--case-study { max-width: 400px; margin:40px auto 0; }
    .card--case-study .card-button { transform:none; opacity: 1; }
    .card--case-study .card-desc { opacity: 1; }
    .card--case-study .card-content:before { opacity: 0.1;  }
}

@media screen and (max-width: 480px) {
    .card--case-study { margin:35px auto 0; }
}

@media screen and (max-width:440px) {
    .case-studies + .paging { margin-top:50px; }
}

@media screen and (max-width:400px) {
    .case-studies + .paging { margin-top:45px; }
}

/* = Case Study filters
----------------------------------------------------------------------------------------------------------------- */
.filter-case-studies { margin:0 0 60px; position: relative;}
.fcs-mob-toggle { font-weight: 600; color:#005062; margin-right: 20px; }

.pill {  font-size: 16px; text-align: center; border: 1px solid #d3d7db; border-radius: 20px; color:#6934F7; font-weight: 600; letter-spacing: 1px;  text-transform: uppercase; -webkit-transition: all .3s ease; transition: all .3s ease; }
.pill.on { color:#fff; background-color: #6934F7; border-color: #6934F7; }

.pill:focus,
.pill:hover { text-decoration: none; border-color: #6934F7; }

@media screen and (min-width:951px) {
    .pill { display: inline-block; margin:0 4px; padding: 0.5em 1em; font-size: 16px; border: 1px solid #d3d7db; border-radius: 20px; color:#6934F7; font-weight: 600; letter-spacing: 1px;  text-transform: uppercase; -webkit-transition: all .3s ease; transition: all .3s ease; }
}

@media screen and (max-width:950px) {
    .filter-case-studies {  display: block;  max-width: 560px; margin: 0 auto 50px; }
    .fcs-mob-toggle {  display: block; margin:0; padding: 12px 18px; border:1px solid #6934F7; background: #fff url(/assets/icons/icon-chevron-down.svg) right 17px center no-repeat; background-size: 15px auto; }

    .fcs-options { display: none;  position: absolute; top: calc(100% - 1px); left:0; width:100%; padding: 40px 35px 20px; border:1px solid #6934F7; background-color: #fff; column-count: 2; z-index: 1; }

    .fcs-mob-toggle.on + .fcs-options { display: block;}

    .pill { display: block; padding:10px 0; margin:0 0 20px;  break-inside: avoid; }
}

@media screen and (max-width:650px) {
    .filter-case-studies {   max-width: 400px; margin: 0 auto 45px; }
}

@media screen and (max-width:600px) {
    .fcs-options {  column-count: 1;}

    .filter-case-studies { margin: 0 auto 40px; }
}

@media screen and (max-width:440px) {
    .fcs-options { padding: 30px 25px 15px; }

    .pill { margin: 0 0 15px; padding: 8px 0; font-size: 15px; }
}

/* = Case Study - VIEW
----------------------------------------------------------------------------------------------------------------- */
.csv-subtitle { width:120px; min-width: 120px; margin-right: 50px;}
.csv-subtitle p { color:#6934F7; }
.csv-section { padding:30px 0; border-bottom: 2px solid #c3d6da; }
.csv-section:first-child { padding-top:0; }

.csv-section.csv-section--video { margin:60px auto; max-width: 650px; padding:0; border:none; }
.csv-section--video + .csv-section { padding-top:0; }

.csv-section--quote { padding: 50px 0; }

.csv-section--expandable { padding-bottom: 100px; position: relative;}
.csv-section--expandable .csv-content { max-height: 250px; overflow: hidden; }
.csv-section--expandable.on .csv-content { max-height: none; overflow: unset; }
.csv-section--expandable:after { content:''; position: absolute; left:0; bottom:0; width:100%; height:300px; background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%); } 
.csv-section--expandable.on:after { visibility: hidden; }

.expand-wrap { position: absolute; left:0; bottom:40px; width:calc(100% - 170px); margin-left: 170px; z-index: 1; }

.csv-expand-section { display: block; margin:0 auto; width:32px; height: 32px; }
.csv-expand-section span { display: block; width:32px; height: 32px;  background: #6934F7 url(/assets/icons/icon-expand.svg) center no-repeat; border-radius: 50%; }
.csv-expand-section span.on  { -webkit-transform: rotate(45deg); transform: rotate(45deg); } 

@media screen and (max-width:750px) {
    .csv-section { padding:35px 0; display: block; }
    .csv-section--expandable { padding-bottom: 90px;}
    .csv-subtitle { width: 100%; margin:0 0 20px;}

    .expand-wrap { width: 100%; margin: 0; bottom:30px; }
}

@media screen and (max-width:440px) {
    .csv-section.csv-section--video { margin:50px auto;  }
}

@media screen and (max-width:400px) {
    .csv-expand-section {  width:26px; height: 26px; }
    .csv-expand-section span { width:26px; height: 26px; background-size: 14px; }

    .csv-section--expandable { padding-bottom: 80px;}
}

/* = Company directory - Forms
----------------------------------------------------------------------------------------------------------------- */
.form--company-search .form-field:not(:last-child) { margin-bottom: 22px; }
.form--company-search .form-field > input { width:100%; }
.form--company-search .btn { width: 100%; }

.form--company-filters { margin: 50px 0;}
.form--company-filters:first-child { margin-top: 0;}
.form--company-filters:last-child { margin-bottom: 0;}
.form--company-filters > p { color:#005062; margin-bottom: 15px;}
.form--company-filters .form-field:not(:last-child) { margin-bottom: 20px; }
.form--company-filters .form-field > input,
.form--company-filters .form-field > .select,
.form--company-filters .btn  { width:100%; }
.form--company-filters .form-field > label { width: 100%; color:#005062; padding:0; margin:0 0 10px; }
.form--company-filters .form-field--submit { margin-top:30px; }

@media screen and (max-width:440px) {
    .form--company-filters .form-field > label {  margin:0 0 8px; }
    .form--company-filters .form-field:not(:last-child) { margin-bottom: 15px; }
}



/* = Company directory - Listing
----------------------------------------------------------------------------------------------------------------- */
.directory { margin:50px 0;}
.directory:first-child { margin-top: 5px; } 
.directory:last-child { margin-bottom: 5px; } 

.directory-item { padding:40px 0; border:1px solid #9AB1B5; border-width: 1px 0; }
.directory-item h3 { font-weight: 600; }
.directory-item + .directory-item { border-top-color: transparent;}


@media screen and (min-width:481px) {
    .directory-item h3 { font-size: 24px;}
}

/* = News listing
----------------------------------------------------------------------------------------------------------------- */
.news-card { width:100%; max-width: 450px; padding-top:25px; margin: 40px auto 0; border-top:4px solid #DEE3E8; }

.news-card h2 { margin-bottom: 20px;}
.news-card h2 a { color:#005062; }
.news-card h2 a:hover,
.news-card h2 a:focus { color: #6934F7; text-decoration: underline; }
.news-image { display: block; margin:30px 0; width: 100%; height: 0;  padding-top: 55.56%; overflow: hidden; position: relative; }

.news-date { margin-right: 15px; color:#007DB3;}
.news-type { padding:0.2em 0.75em; font-size: 14px; letter-spacing: 1px; text-transform: uppercase; color:#6934F7; border:1px solid #6934F7; border-radius: 20px;}

.news + .paging { margin-top: 75px; } 

@media screen and (max-width: 650px) {
    .news-card:first-child { margin:0 auto; } 

    .news + .paging { margin-top: 70px; } 
}

@media screen and (min-width: 651px) and (max-width: 950px) {
    .news-card { width:calc(50% - 15px); margin:40px 30px 0 0; }
    .news-card:nth-child(even) { margin-right: 0; }
    .news-card:nth-child(-n+2) { margin-top:0; }
}

@media screen and (min-width: 951px) {
    .news-card { width:calc(33.333% - 20px); margin:40px 30px 0 0; }
    .news-card:nth-child(3n+3) { margin-right: 0; }
    .news-card:nth-child(-n+3) { margin-top:0; }
}

@media screen and (max-width:440px) {
    .case-studies + .paging { margin-top:50px; }

    .news + .paging { margin-top: 60px; } 
}

@media screen and (max-width:400px) {
    .case-studies + .paging { margin-top:45px; }

    .news + .paging { margin-top: 50px; } 
}

/* = Contact cards
----------------------------------------------------------------------------------------------------------------- */
.contacts-wrap { margin: 40px 0; }
.contacts-wrap:first-child { margin-top: 0;}
.contacts-wrap:last-child { margin-bottom: 0;}

.contact-card { width:100%; max-width: 500px; margin:20px auto 0; color:#005062; background-color: #EFF3F7; text-decoration: none; }

.contact-card:focus,
.contact-card:hover { color:#005062; text-decoration: none;  }

.cc-icon { width: 74px; min-height: 74px; background-color: #6934F7; color:#fff; font-size: 24px; -webkit-transition: background-color .3s ease; transition: background-color .3s ease; }
.cc-text { color:#005062; padding:10px 25px; }
.cc-title { display: inline-block; margin-bottom: 5px; font-size: 22px; color:#6934F7; font-weight: 700; }
.cc-size { display: block; width: 100%; font-size: 14px; font-weight: 600;}

.contact-card--has-title .cc-text { padding: 20px 25px; font-size: 22px; }

.contact-card:focus .cc-text,
.contact-card:hover .cc-text { text-decoration: underline;}

.contact-card:focus .cc-icon,
.contact-card:hover .cc-icon { background-color: #007DB3; }

@media screen and (max-width:750px) {
    .contact-card:first-child { margin-top: 0;}
}

@media screen and (max-width:480px) {
    .cc-icon { width: 64px; min-height: 64px; font-size: 22px; }
    .cc-text { padding:10px 20px; }

    .contact-card--has-title .cc-text { padding:15px;}

    .contact-card--has-title .cc-text,
    .contact-card--has-title .cc-title { font-size: 20px; }
}

@media screen and (max-width:400px) {
    .cc-icon { width: 56px; min-height: 56px; font-size: 20px; }
    .cc-text { padding:5px 20px; }

    .cc-title { margin-bottom: 2px; }

    .contact-card--has-title .cc-text,
    .contact-card--has-title .cc-title { font-size: 18px; }
    .contact-card--has-title .cc-text { padding:14px 20px;}
}

@media screen and (max-width:380px) {
    .contact-card--has-title .cc-text,
    .contact-card--has-title .cc-title { font-size: 16px; }
}

@media screen and (min-width:751px) {
    .contacts-wrap--x2 .contact-card { width:calc(50% - 10px); margin: 20px 20px 0 0; }
    .contacts-wrap--x2 .contact-card:nth-child(even) { margin-right: 0;}
    .contacts-wrap--x2 .contact-card:nth-child(-n+2) { margin-top:0;  }
}

@media screen and (min-width:751px) and (max-width:850px) {
    .contacts-wrap--x2 .cc-icon { width: 56px; min-height: 56px; font-size: 20px; }
    .contacts-wrap--x2 .cc-text { padding:5px 20px; }

    .contact-card--has-title .cc-text { padding: 15px 20px; }
}

@media screen and (min-width:851px) and (max-width:950px) {
    .contacts-wrap--x2 .cc-icon { width: 64px; min-height: 64px; font-size: 22px; }
    .contacts-wrap--x2 .cc-text { padding:10px 20px; }

    .contact-card--has-title .cc-text { padding: 20px; }
}

/* = Social contact tiles
----------------------------------------------------------------------------------------------------------------- */
.social-tile { width:100px; height: 100px; margin:10px; background-color: #6934F7; color:#fff; font-size: 34px; }
.social-tile:hover,
.social-tile:focus { background-color: #007DB3; color:#fff; text-decoration: none; }

@media screen and (max-width:600px) {
    .socials-contact { max-width: 240px; margin:0 auto; }
}

@media screen and (max-width:440px) {
    .social-tile { width:90px; height: 90px; font-size: 32px; }
}

@media screen and (max-width:400px) {
    .social-tile { width:80px; height: 80px; font-size: 30px; }
}

/* = Contact form
----------------------------------------------------------------------------------------------------------------- */
.form--contact-page { padding:60px 50px; background-color: #EFF3F7; }
.form--contact-page .form-field--submit .btn { margin:0 auto; min-width: 200px;}
.form--contact-page .form-field > label { display: none; }

@media screen and (max-width:600px) {
    .form--contact-page { padding: 12% 8%; }
}

/* = Team members cards
----------------------------------------------------------------------------------------------------------------- */
.member p:not(:last-child) { margin-bottom: 15px;} 

.member-image { width:100%; height: 0; padding-top:100%; margin-bottom: 20px; overflow: hidden; position: relative;}
.member-image:after { content:''; position: absolute; top:0; left:0; width:100%; height: 100%;  background-color: #007DB3; mix-blend-mode: multiply;  opacity: 0.15; }
.member-image img { filter: grayscale(100%); }

.member-name { color:#6934F7; } 
.member-links a { margin-right: 15px;}
.member-links a:hover,
.member-links a:focus { text-decoration: none; color:#005062;}
.member-links a::after { min-width:none; }

@media screen and (max-width:800px) {
    .members-list { max-width: 600px; margin:0 auto; }
}

@media screen and (max-width:480px) {
    .member { width:100%; max-width: 350px; margin: 45px auto 0; }
    .member:first-child { margin:0 auto; }
}

@media screen and (min-width:481px) and (max-width:800px) {
    .member { width:calc(50% - 10px); margin:45px 20px 0 0; } 
    .member:nth-child(even) { margin-right: 0;}
    .member:nth-child(-n+2) { margin-top:0; }
}

@media screen and (min-width:801px) and (max-width:1001px) {
    .member { width:calc(33.333% - 13.333px); margin:45px 20px 0 0; } 
    .member:nth-child(3n+3) { margin-right: 0;}
    .member:nth-child(-n+3) { margin-top:0; }
}

@media screen and (min-width:1001px) {
    .member { width:calc(25% - 15px); margin:45px 20px 0 0; } 
    .member:nth-child(4n+4) { margin-right: 0;}
    .member:nth-child(-n+4) { margin-top:0; }
}


/* = CTAs - Image
----------------------------------------------------------------------------------------------------------------- */
.cta { margin:80px auto; max-width: 750px; }
.cta:first-child { margin-top:0; } 
.cta:last-child { margin-bottom:0; } 

.cta-content { padding:200px 50px 50px; background-color: #fff; box-shadow: 0 8px 48px rgba(0, 0, 0, 0.15);  }
.cta-content .date-cat { margin-bottom: 20px; color:#007DB3; }
.cta-image { max-width: 600px; padding:0 50px; margin:0 auto -140px; position: relative; z-index: 1;}

@media screen and (min-width: 901px) {
    .cta--with-image { max-width: 950px; -webkit-display:flex; display: flex; -webkit-align-items: center;  align-items: center; }

    .cta-image { padding:0; width:390px; min-width: 390px; height: 300px; margin:0 -185px 0 0; overflow: hidden;  }
    .cta-image img { position: absolute; top:50%; left:50%; width:100%; transform: translate(-50%, -50%); }

    .cta-content { padding:60px 60px 60px 245px; }
}

@media screen and (max-width: 480px) {
    .cta-content { padding:190px 40px 50px; }
    .cta-image { padding:0 40px; }
}

@media screen and (max-width: 440px) {
    .cta-content { padding:160px 35px 45px; }
    .cta-image { padding:0 35px; margin:0 auto -120px; }
}

@media screen and (max-width: 440px) {
    .cta-content { padding:160px 30px 45px; }
    .cta-image { padding:0 30px; }
}

/* = Box aside
---------------------------------------------------------------------------------------------------------------- */
.box-aside { margin:40px 0; padding:50px; color:#fff; background-color: #6934F7;}
.box-aside:first-child { margin-top: 5px;}
.box-aside *:not(.btn) { color:#fff; }

/* = Boxed title
---------------------------------------------------------------------------------------------------------------- */
.boxed-title { padding: 0.6em 1em; color:#007DB3; background-color: #EFF3F7; }


/* = Timeline
---------------------------------------------------------------------------------------------------------------- */
.timeline {  margin: 40px 0; padding: 0; list-style:none; position: relative; }
.timeline:first-child { margin-top: 0; }
.timeline:last-child { margin-bottom: 0; }
.timeline:before { content: ''; position: absolute; top:30px; left:19px; width: 2px; height: calc(100% - 60px); background-color: #6934F7; } 
.timeline li { counter-increment: counter; margin:0 0 35px; padding-left: 75px; font-size: 24px; line-height: 1.35em; position: relative;  color:#005062; }
.timeline li:last-child { margin:0 0 5px; } 
.timeline li strong { font-weight: 700; font-size: 22px;}
.timeline li:before { position: absolute; top: calc(50% - 20px); left:0; width: 36px; height: 36px; line-height: 34px; text-align: center; font-size: 20px; font-weight: 600; content: counter(counter);border:2px solid #6934F7;background-color: #fff;color: #6934F7;border-radius: 50%;}
.timeline .status:before { color:#fff; background-color: #6934F7; }

@media screen and (max-width: 480px) {
    .timeline li { font-size: 22px;  }
    .timeline li strong { font-size: 20px;}
}

/* = Documents list
---------------------------------------------------------------------------------------------------------------- */
.documents-title { font-size: 24px; color:#007DB3; }

.documents { margin: 25px 0; padding: 0; gap: 0 27px; list-style:none; position: relative; }
.documents li { max-width: 130px; margin:13px 0; text-align: center; }
.documents a { color:#2F2F2F; }
.documents:first-child { margin-top: 0; }
.documents:last-child { margin-bottom: 0; }

.documents + .paging { margin-top: 0; padding-top: 30px; border-top: 1px solid #DEE3E8; }

.doc-card { margin:0 0 15px; width:130px; height: 160px; background-color: #EFF3F7; border:1px solid #E3E4E4; position: relative; -webkit-transition: border .3s ease; transition: border .3s ease; }
.doc-card:after { position: absolute; font-size: 48px; top:50%; transform: translate(-50%, -50%); color:#007DB3; }
.doc-card.icon--doc-pdf:after { color: #00137B; }
.doc-card.icon--doc-media:after { color: #FD8227; }
.doc-card.icon--doc-xls:after { color: #00AA5C; }

a:hover .doc-card,
a:focus .doc-card { border-color: #6934F7;}

.doc-name { line-height: 1.25em; word-break: break-word; }

@media screen and (max-width: 1000px) {
    .documents-title { text-align: center; }
    .documents {  -webkit-justify-content: center; justify-content: center; }
}

@media screen and (max-width: 600px) {
    .documents {  -webkit-justify-content: space-evenly; justify-content: space-evenly; }
}

/* = Competitions - Filters
----------------------------------------------------------------------------------------------------------------- */
.form--filter-competitions { justify-content: space-between; }
.form--filter-competitions:first-child { margin-top:60px; }
.form--filter-competitions .label { width: auto; padding: 11px 0; margin: 0 60px 0 0;  color:#005062; font-weight: 600; white-space: nowrap; }
/*.form--filter-competitions .form-field { margin:0 40px 0 0; flex: 1 1 auto; }*/
.form--filter-competitions .form-field { margin:0 40px 0 0; }
.form--filter-competitions .form-field:last-child { margin:0; }
.form--filter-competitions .form-field .select { min-width: 270px;}
.form--filter-competitions .form-field select { width: 100%; }
.form--filter-competitions .form-field > label { width: auto; margin: 0 20px 0 0; color:#005062; }
.form--filter-competitions .form-field .btn { border: none; }

@media screen and (max-width: 1060px) {
    .form--filter-competitions .form-field .select { width: 100%; min-width: 0; }
}

@media screen and (max-width: 900px) {
    .form--filter-competitions { -webkit-flex-wrap: wrap; flex-wrap: wrap; }
    .form--filter-competitions .label { width: 100%; padding:0; margin:0 0 20px;}
    .form--filter-competitions .form-field { width:calc(50% - 15px);  margin-right: 30px; }
    .form--filter-competitions .form-field > label { padding:0; margin:0 0 10px; }
}

@media screen and (max-width: 480px) {
    .form--filter-competitions .form-field { width: 100%; margin:0 0 15px; }
}

/* = Competitions - List
----------------------------------------------------------------------------------------------------------------- */
.comp-item { width: 100%; margin:40px 0; padding: 40px; color: #2F2F2F; border: 1px solid #DEE3E8;  box-shadow: 0 8px 14px rgba(0, 0, 0, 0.05); transition: border .3s ease;  }
.comp-item:first-child { margin-top: 0; }
.comp-item:last-child { margin-bottom: 0; }
.comp-item:hover,
.comp-item:focus { text-decoration: none; }  

.comp-main { margin-right: 35px;}
.comp-button .btn { white-space: nowrap;}
.comp-date { margin:0 0 7px; color:#007DB3; }
.comp-title { margin:0; }

.comp-item:hover, 
.comp-item:focus { border-color:#6934F7; }

.comp-item:hover .btn,
.comp-item:focus .btn {background-color: #007DB3; border-color: #007DB3; } 

.competitions + .paging { margin-top:50px; }

@media screen and (max-width: 750px) {
    .comp-item{ display: block; }
    .comp-main { margin: 0 0 30px; }
}

@media screen and (max-width:480px) {
    .comp-item {  padding: 40px 35px;  }

    .comp-date { line-height: 1; letter-spacing: 0.5px; }
}

@media screen and (max-width:440px) {
    .comp-item { margin:35px 0; padding: 40px 30px;  }
    .competitions + .paging { margin-top:45px; }
}

@media screen and (max-width:400px) {
    .comp-item {  padding: 35px 25px;  }
    .competitions + .paging { margin-top:40px; }
}

/* = Impact chart
----------------------------------------------------------------------------------------------------------------- */
.impact-chart { margin:80px 0 0; position: relative;}
.impact-title { text-transform: uppercase; font-weight: 700; }

.ic-heading { width:50px; margin:5px 0; margin-right: 5px; color:#fff; background-color: #6934F7; position: relative; }
.ic-heading:after { content: ''; position: absolute; top: calc(50% - 12px); right: -9px; width: 0; height: 0;  border-style: solid;  border-width: 12px 0 12px 10px; border-color: transparent transparent transparent #6934f7; } 
.ic-heading strong { position: absolute;  font-size: 20px; letter-spacing: 0.25px; text-transform: uppercase; font-weight: 600;  display: block;  top: 50%;  left: 50%; -webkit-transform: translateX(-50%) translateY(-50%) rotate(-90deg);  transform: translateX(-50%) translateY(-50%) rotate(-90deg); }

.ic-item-wrap { padding:5px; width:calc(20% - 11px); }
.ic-item { width:100%; height: 0; padding-top:100%; border:1px solid #6934F7; position: relative;}
.ic-item-inner { position: absolute; top:0; left:0; width: 100%; height: 100%; text-align: center; padding:0 5.5%; }

.ic-number { margin:4px 0; font-size: 40px; font-weight: 700; color:#6934F7; }
.ic-desc { color:#005062; font-weight: 600; line-height: 1.15em; }
.ic-desc--large { font-size: 24px; padding:0 5px;}

.ic-icon { width:45px; height: 45px; width:25%; height: 26%; -webkit-display: flex; display: flex; align-items: flex-end; }
.ic-icon img { max-height: 100%; max-width: 50px; }

.ic-row--output .ic-heading { background-color: #007DB3; }
.ic-row--output .ic-item { border-color: #007DB3; }
.ic-row--output .ic-number { color: #007DB3; }
.ic-row--output .ic-heading:after { border-color: transparent transparent transparent #007DB3; } 

.ic-row--outcome .ic-heading { background-color: #B404D7; }
.ic-row--outcome .ic-item { border-color: #B404D7; }
.ic-row--outcome .ic-number { color: #B404D7; }
.ic-row--outcome .ic-heading:after { border-color: transparent transparent transparent #B404D7; } 

.ic-row--impact .ic-heading { background-color: #468000; }
.ic-row--impact .ic-item { border-color: #468000; }
.ic-row--impact .ic-number { color: #468000; }
.ic-row--impact .ic-desc { color:#468000; }
.ic-row--impact .ic-heading:after { border-color: transparent transparent transparent #468000; } 

@media screen and (min-width:851px) {
    .impact-title { position: absolute; top:0; right:0; font-size: 38px; }
}

@media screen and (min-width:1025px) {
    .impact-title { font-size: 44px; }
}

@media screen and (min-width:1201px) {
    .impact-title { font-size: 48px; }
}

@media screen and (min-width:1301px) {
    .impact-title { font-size: 52px; }
}

@media screen and (min-width:1401px) {
    .impact-title { font-size: 54px; }
}

@media screen and (max-width:1200px) {
    .impact-chart { margin:60px 0 0; }

    .ic-number { margin: 3px 0; font-size: 3.4vw; } 
    .ic-desc { font-size: 1.5vw; line-height: 1.1em;  }
    .ic-desc--large { font-size: 2vw; }
    .ic-heading strong { font-size: 1.7vw; }
}

@media screen and (max-width:750px) {
    .ic-row { margin-bottom: 10px; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
    .ic-row:last-child { margin-bottom: 0;}
    .ic-heading { width:100%; height: 44px; margin: 0 0 10px; }
    .ic-item-wrap {  width: calc(25% - 1px); }

    .ic-heading strong { font-size: 18px; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
    .ic-number {  font-size: 4.5vw; margin: 2px 0; } 
    .ic-desc { font-size: 2vw; }
    .ic-desc--large { font-size: 2.65vw; }

    .ic-heading:after {  top: auto; bottom:-9px; right: calc(50% - 11px); border-width: 10px 12px 0 12px; border-color: #6934f7 transparent transparent transparent; } 

    .ic-row--output .ic-heading:after { border-color: #007DB3 transparent transparent transparent; } 
    .ic-row--outcome .ic-heading:after { border-color: #B404D7 transparent transparent transparent; } 
    .ic-row--impact .ic-heading:after { border-color: #468000 transparent transparent transparent; } 
}

@media screen and (max-width:600px) {
    .ic-item-wrap {  width: calc(50% - 1px); }

    .ic-number {  font-size: 8vw;  } 
    .ic-desc { font-size: 3.75vw; }
    .ic-desc--large { font-size: 5.25vw; padding:0 2.5%; }
}

/* = Process graphic
----------------------------------------------------------------------------------------------------------------- */
.impact-title.impact-title--process { position: relative; } 

.graphic-zoom { position: relative; overflow: hidden; }

.graphic-mobile { display: none;}

.impact-title--process { margin-bottom: 40px;}

@media screen and (max-width:950px) {
    .graphic-desktop { display: none; }
    .graphic-mobile { display: block; }
}

@media screen and (min-width:951px) {
    .impact-title--process { margin-bottom: 45px;}
}

@media screen and (min-width:1001px) {
   .impact-title--process {  margin-bottom: 50px;}
}

@media screen and (min-width:1201px) {
    .impact-title--process {  margin-bottom: 60px;}
 }
 


/* = Modals
----------------------------------------------------------------------------------------------------------------- */
.modal { display: none; background: rgba(0, 0, 0, 0.5); position: fixed; top: 0; left: 0; height: 100%; width: 100%; z-index: 9999; }
.modal.on { display: block; }
.modal .modal-inner { max-width: 840px; width: 90%; max-height: 90%; left: 50%; top: 45%; padding: 40px; margin: 0 auto; background: #fff;  display: block; float: none; position: absolute; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); overflow: auto; -webkit-transition: top .3s ease-in-out; transition: top .3s ease-in-out; }
.modal.on .modal-inner { top: 50%; }
.modalClose { cursor: pointer; text-decoration: none; top: 0; right: 0; width: 50px; height: 50px; line-height: 50px; color: #2F2F2F;  overflow: hidden; position: absolute; text-align: center;  z-index: 1; }
.modalClose:hover { color:#6934F7; }
.modalClose:after { line-height: 50px; text-align: center; }
.modal-content p:last-child { margin-bottom: 5px; }

.modal--youtube .modal-inner {max-width: 900px;}

@media screen and (max-width: 600px) {
    .modal .modal-inner { top: -100%; left: 0; padding: 40px 30px 30px; width: 100%; height: 100%; max-height: 100%; transform: none;  border-radius: 0; }
    .modal.on .modal-inner { top: 0; }

    .modal--youtube .modal-inner { padding:20px 0;  display: flex; align-items: center;}
    .modal--youtube .modal-content { width:100%; }
}

@media screen and (max-width: 480px) {
    .modal .modal-inner { padding: 45px 25px 25px; }
    .modalClose { position: fixed; width: 46px; height: 46px; line-height: 46px; opacity: 0.8; }
    .modalClose:after { line-height: 46px; }
}

/* = Footer - subscribe
----------------------------------------------------------------------------------------------------------------- */
.form--subscribe { max-width: 1000px; margin:35px auto 10px; } 
.form--subscribe .form-field { display: block; margin:0 12px 0 0; -webkit-flex: 1 1 auto; flex: 1 1 auto; }
.form--subscribe .form-field:last-child { margin:0; flex:none; }
.form--subscribe label  { width:100%; margin: 0 0 10px; padding:0; display: none; }
.form--subscribe input { width:100%; }

@media screen and (max-width: 850px) {
    .subs-intro  { max-width: 600px; margin-left:auto; margin-right: auto;}

    .form--subscribe { display: block; max-width: 600px; padding:0 15px; }
    .form--subscribe .form-field { margin:0 0 10px; }
    .form--subscribe .btn { min-width: 150px;}
}

@media screen and (max-width: 440px) {
    .form--subscribe .btn { width: 100%;}
}

@media screen and (max-width: 400px) {
    .form--subscribe {  padding:0 10px; }
}

/* = Footer - main
----------------------------------------------------------------------------------------------------------------- */
footer { padding:80px 0px 140px 0px; background-color: #005062;}
footer p,
footer a { color:#fff; }
footer a:hover,
footer a:focus { color:#EFF3F7; }

footer ul { list-style: none; margin:0; padding: 0; }
footer li { margin: 0 0 7px; }

.cols--half-footer .col { column-gap: 15%;}
.ftr-contact { width: 42.5%; }

.ftr-social a { margin-right: 16px; text-align: center; line-height: 32px; font-size: 22px; display: inline-block; vertical-align: top; width:32px; height: 32px; border-radius: 2px; color:#005062; background-color: #fff; transition:all .3s ease; }
.ftr-social a:hover,
.ftr-social a:focus { color: #fff;  background-color: #007DB3;}

.ftr-logos { -webkit-flex:1 1 auto;  flex:1 1 auto; }
.ftr-logos a { display: block; }
.ftr-logos-group p:not(:last-child) { margin-bottom: 50px;}
.ftr-logos-group--nhs { display: none; }

.ftr-logo-x2 img + img { margin-left:60px; }
.ftr-logo-x2 a + a { margin-left:60px; }

@media screen and (max-width: 1300px) {
    .cols--half-footer { display: block; }
    .cols--half-footer .col { float: none; width: 100%; margin: 0; }
    .cols--half-footer .col:nth-child(2) { margin-top: 60px; }
}

@media screen and (max-width: 600px) {
    .cols--half-footer .col { display: block; } 
    .cols--half-footer .col > div:nth-child(2) { margin-top: 60px; }
    .ftr-contact { width: auto; }
    
    .ftr-general { display: none; }
}

@media screen and (max-width: 440px) {
    footer { padding:60px 0px 120px 0px; }

    .ftr-title { margin-bottom: 20px; }

    .cols--half-footer .col:nth-child(2),
    .cols--half-footer .col > div:nth-child(2) { margin-top:50px; }
    .ftr-contact { width: auto; }
    
    .ftr-logo-x2 { align-items: flex-end; }
    .ftr-logo-x2 img {  max-width: 48%; }
    .ftr-logo-x2 img + img { margin-left:40px; }
    .ftr-logo-x2 a + a { margin-left:40px; }

    .ftr-logos-group p:not(:last-child) { margin-bottom: 40px; }
}


/* = NHS Brand ovverides
----------------------------------------------------------------------------------------------------------------- */
.hdr-logo--nhs img { height: 50px;}

.brand-nhs .hdr-funded { display: none;}
.brand-nhs .hdr-logo--default { display: none;}
.brand-nhs .hdr-logo--nhs { display: block;}

.brand-nhs .box-aside { background-color: #217B97;} 
.brand-nhs .btn--white { color:#217B97; }

.brand-nhs .greedy-nav > ul:not(.hidden-links) { margin: 0 auto; }

.brand-nhs  .timeline:before {  background-color: #217B97; } 
.brand-nhs  .timeline li:before { border:2px solid #217B97;color: #217B97;border-radius: 50%;}
.brand-nhs  .timeline .status:before { color:#fff; background-color: #217B97; }

.brand-nhs .paging li a {  color:#217B97; }
.brand-nhs .paging li a.on { color:#fff; background: #217B97; border-color: #217B97; } 
.brand-nhs .paging li a.icon { color:#217B97; }
.brand-nhs .paging li a.icon:hover,
.brand-nhs .paging li a.icon:focus { color:#fff; }


.brand-nhs .ftr-logos-group--main { display: none; }
.brand-nhs .ftr-logos-group--nhs { display: block; }

@media screen and (max-width: 1100px) {
    .btn--login  { margin-left:auto; }
}


/* = Global Accesibility focus withins
----------------------------------------------------------------------------------------------------------------- */
a:focus-visible,
input.btn:focus-visible,
.accordion > h3:focus-visible { outline: 3px dashed #FD8227; outline-style: dotted;  outline-offset: 8px; outline-offset: 0.3rem; } 


/* = Clearfix
----------------------------------------------------------------------------------------------------------------- */
.clearfix:after { content: ""; display: table; clear: both; }

.uniform__potty {
    position: absolute;
    left: -9999px;
}


/* = CTA Block
----------------------------------------------------------------------------------------------------------------- */
.cta-item { width: 100%; margin: 40px 0; padding: 40px; color: #6934F7; border: 4px solid #6934F7; transition: border .3s ease; }
.cta-item:first-child { margin-top: 0; }
.cta-item:last-child { margin-bottom: 0; }
.cta-item:hover,
.cta-item:focus { text-decoration: none; }  

.cta-main { margin-right: 40px; }
.cta-button .btn { white-space: nowrap; }
.cta-title { color: #6934F7; margin: 0 0 14px; }

.cta-item:hover, 
.cta-item:focus { border-color: #007DB3; color: #007DB3; }
.cta-item:hover .cta-title,
.cta-item:focus .cta-title { color: #007DB3; }

.cta-item:hover .btn,
.cta-item:focus .btn { background-color: #007DB3; border-color: #007DB3; } 

@media screen and (max-width: 750px) {
    .cta-item { display: block; }
    .cta-main { margin: 0 0 30px; }
}

@media screen and (max-width: 480px) {
    .cta-item {  padding: 40px 35px;  }
}

@media screen and (max-width: 440px) {
    .cta-item { margin: 35px 0; padding: 40px 30px;  }
}

@media screen and (max-width: 400px) {
    .cta-item {  padding: 35px 25px;  }
}


/* Cookie Banner */

.cookie-modal { position:fixed; z-index:9; width:100%; height:100%; left:0; top:0; pointer-events:none; }
.cookie-modal--hidden { display:none; }
.cookie-modal__content {
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    padding: 20px;
    box-shadow: 0 6px 10px rgba(0,0,0,0.33);
    background-color: #FFFFFF;
    pointer-events: auto;
}

@media (min-width:601px) {
    .cookie-modal__content {
        max-width: 450px;
        bottom: 40px;
        left: 40px;
    }
}

.cookie-modal__title { font-size:1.4rem; font-weight:700; margin-bottom:10px; }
.cookie-modal__text {
    font-size: 14px;
    margin-bottom: 20px;
    line-height: 1.4;
}
.cookie-modal__text a { text-decoration:underline; }
.cookie-modal__options { margin-bottom:20px; display:flex; flex-direction:row; align-items:flex-start; justify-content:flex-start; flex-wrap:wrap; }
.cookie-modal__options > * { width:calc(33.3333% - 30px); }

@media (min-width:601px) {

}

.cookie-modal__option { display:inline-flex; flex-direction:row; align-items:center; justify-content:flex-start; position:relative; cursor:pointer; text-transform: capitalize; margin-right:30px; margin-bottom:10px; }
.cookie-modal__option.disabled { opacity:.7; }
.cookie-modal__checkbox { opacity:1 !important; appearance:none; -webkit-appearance:none; -moz-appearance:none; display:block; width:20px; height:20px; border-radius:0; border:2px solid #000; margin-right:6px !important; flex-shrink:0; }
.cookie-modal__checkbox:checked { background-color:#000; }
.cookie-modal__checkbox:checked:focus { outline:none; background-color:#007DB3; }
.cookie-modal__checkbox:focus { outline:none; border-color:#007DB3; }
.cookie-modal__check { position:absolute; left:0; z-index:1; display:flex; justify-content:center; align-items:center; width:20px; height:20px; flex-shrink:0; }
.cookie-modal__check svg { stroke:#fff; }
.cookie-modal__label { font-size: 16px; font-weight: bold; line-height:22px; }
.cookie-modal__buttons { display:flex; flex-direction:row; align-items:flex-start; justify-content:flex-start; }
.cookie-modal__button {
    display:block;
    /*min-width: calc(50% - 4px);*/
    margin-right: 14px;
    white-space:nowrap;
    border:2px solid #6934F7;
    text-decoration:none;
    color:#6934F7;
    font-size: 1em;
    font-weight: 600;
    padding: 0.7em 1.2em;
    line-height: 1;
    text-align: center;
}

@media (min-width:601px) {
    .cookie-modal__button {
        /*min-width: calc(50% - 15px);*/
        margin-right: 20px;
    }

}
.cookie-modal__button.primary { background-color:#6934F7; color:#fff; }
.cookie-modal__button.primary:focus,
.cookie-modal__button.primary:hover { background-color:#007DB3; color:#fff; }
.cookie-modal__button:focus,
.cookie-modal__button:hover { text-decoration:none; outline:none; border-color:#007DB3; color:#007DB3; }
.cookie-modal__button.hide { display:none; }

/* Edit Cookies Button */
.cookie-settings {
    display: none;
    position: fixed;
    bottom: 20px;
    left: 6%;
    z-index: 9;
}

@media (min-width:601px) {
    .cookie-settings {
        bottom: 40px;
        left: 40px;
    }
}

.cookie-settings-btn {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: none;
    box-shadow: 0 6px 10px rgba(0,0,0,0.33);
    cursor: pointer;
    background: none;
    padding: 0px;
}

.cookie-settings-btn svg {
    width: 48px;
    height: 48px;
    transition: all 0s ease;
    transition-delay: .2s;
    border: none;
    cursor: inherit;
    font-weight: inherit;
    line-height: 1.5;
}

.cookie-settings-btn svg circle {
    fill: #6934F7;
}

.cookie-settings-btn:hover svg circle {
    fill: #007DB3;
}

.cookie-modal.cookie-modal--hidden + .cookie-settings {
    display: block;
}


/* UserWay Widget & Cookie Modal Clash Fix */
body.body-cookie-modal-shown .uwy {
    display: none !important;
}

/* UserWay Widget & Mobile Menu Clash */
body.nav-on .uwy {
    display: none !important;
}

/* Add shadow and radius to match cookie button */
body .uwy .userway_buttons_wrapper {
    box-shadow: 0 6px 10px rgba(0,0,0,0.33);
    border-radius: 50%;
}


/* Slider Fix for slipped items when text size increases */
.lightSlider {
    height: auto !important;
}