/*
Theme Name: Alcumus Safe Contractor
Author: Glass Mountains Digital
Version: 1.0
*/


* {
vertical-align: baseline;
border: 0 none;
outline: 0;
padding: 0;
margin: 0;
}
body {
font-family: 'Instrument Sans', sans-serif;
font-size: 16px;
line-height: 140%;
font-weight: 400;
color: #011C41;
background: #F5FBFF;
-webkit-text-size-adjust: none;
-ms-text-size-adjust: none;
padding-top: 70px; /* For sticky header (can be overwritten in js) */
overflow-x: hidden; /* For carousels */
}
body.noscroll {
overflow-y: hidden;
}


/* Page Layout
....................................................................... */
#scroll_top {
position: relative;
top: -70px;
}
.page-wrap_top { /* Sticky header */
position: fixed;
top: 0;
width: 100%;
min-height: 70px;
background: #F5FBFF;
border-bottom: 1px solid #E9EEF4;
z-index: 100;
transition: top 0.2s ease-in-out;
}
.page-wrap_top.nav-up { /* Sticky header */
top: -70px;
}
.page-wrap_content {
position: relative;
overflow-x: hidden;
}
.page-wrap_footer {
position: relative;
color: #f5fbff;
background: #011c41 url(images/shield/shdw-right-inner/navy.svg) 50% 250px no-repeat;
background-size: 1800px 2296px;
padding: 40px 0;
}
.center {
max-width: 1440px;
width: 90%;
margin: 0 auto;
}
.center .center {
width: 100%;
}
.center .fullwidth .center {
width: 90%;
}
.center.center-wide {
max-width: 1640px;
}
.fullwidth {
margin-left: calc(50% - 50vw) !important;
margin-right: calc(50% - 50vw) !important;
width: 100vw !important;
max-width: 100vw !important;
overflow-x: hidden;
}


/* Logged in view
....................................................................... */
html {
margin-top: 0 !important;
}
#wpadminbar { 
position: fixed !important;
top: auto !important;
bottom: 0;
}
#wpadminbar .menupop .ab-sub-wrapper {
bottom: 28px;
}


/* Grid
....................................................................... */
.row {
display: flex;
}
.row.valign-center {
align-items: center;
}
.row:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
.span1 {
flex: 1 1 5.125%;
margin: 0 3.5% 0 0;
}
.span2 {
flex: 1 1 13.75%;
margin: 0 3.5% 0 0;
}
.span3 {
flex: 1 1 22.375%;
margin: 0 3.5% 0 0;
}
.span4 {
flex: 1 1 31%;
margin: 0 3.5% 0 0;
}
.span5 {
flex: 1 1 39.625%;
margin: 0 3.5% 0 0;
}
.span6 {
flex: 1 1 48.25%;
margin: 0 3.5% 0 0;
}
.span7 {
flex: 1 1 56.875%;
margin: 0 3.5% 0 0;
}
.span8 {
flex: 1 1 65.5%;
margin: 0 3.5% 0 0;
}
.span9 {
flex: 1 1 74.125%;
margin: 0 3.5% 0 0;
}
.span10 {
flex: 1 1 82.75%;
margin: 0 3.5% 0 0;
}
.span11 {
flex: 1 1 91.375%;
margin: 0 3.5% 0 0;
}
.span12 {
flex: 1 1 100%;
margin: 0 0 0 0;
}
.span:empty {
margin-bottom: 0;
}
.row > .span:last-child{
margin: 0;
}
@media screen and (max-width: 767px) {
	.row {
	flex-wrap: wrap;
	}
	.span1,
	.span2,
	.span3,
	.span4,
	.span5,
	.span6,
	.span7,
	.span8,
	.span9,
	.span10,
	.span11,
	.span12 {
	flex: 1 0 100%;
	margin: 0 0 60px 0;
	}
}

/* Global block rules
....................................................................... */
.block:not(.fullwidth) + .block:not(.fullwidth),
.posthead-container + .block:not(.fullwidth),
ul.hero-menu + .block:not(.fullwidth),
.reviews + .block:not(.fullwidth) {
/* Where non full width blocks are displayed consecutively, remove top padding from subsequent blocks to prevent large double-padding spaces */
padding-top: 0;
}


/* Globals
....................................................................... */
p {
margin: 0 0 30px 0;
word-wrap: break-word;
}
small {
font-size: 14px;
}
pre {
white-space: pre-wrap;
white-space: -moz-pre-wrap;
white-space: -pre-wrap;
white-space: -o-pre-wrap;
word-wrap: break-word;
line-height: 140%;
padding: 0 0 0 0;
margin: 0 0 30px 0;
overflow-x: auto;
}
a {
color: #0172C5;
text-decoration: underline;
transition: all 0.2s;
}
a:hover,
a:focus {
color: #011C41;
}
a.no-decoration {
color: #011C41;
text-decoration: none;
font-weight: 600;
}
a.no-decoration:hover,
a.no-decoration:focus {
text-decoration: underline;
}
h1 {
font-size: 56px;
line-height: 110%;
font-weight: 500;
margin: 0 0 30px 0;
}
h2,
h1.h2 {
font-size: 48px;
line-height: 110%;
font-weight: 600;
margin: 0 0 30px 0;
}
h3,
h1.h3 {
font-size: 32px;
line-height: 120%;
font-weight: 600;
margin: 0 0 30px 0;
}
h4,
h1.h4 {
font-size: 24px;
line-height: 120%;
font-weight: 500;
margin: 0 0 30px 0;
}
h5 { /* Sub */
font-size: 18px;
line-height: 140%;
font-weight: 600;
margin: 0 0 30px 0;
}
h6 { /* Overline */
font-size: 14px;
line-height: 140%;
font-weight: 400;
text-transform: uppercase;
letter-spacing: 0.05em;
margin: 0 0 15px 0;
}
body.single-post .singleintro-block .span:last-child h1,
body.single-post .singleintro-block .span:last-child h2,
body.single-post .text-block h1,
body.single-post .text-block h2,
body.single-post .textmedia-block h1,
body.single-post .textmedia-block h2,
body.single-post .iconsidebar-block .iconsidebar-article h1,
body.single-post .iconsidebar-block .iconsidebar-article h2 { /* Mimick default H3 on single post page */
font-size: 32px;
line-height: 120%;
font-weight: 600;
margin: 0 0 30px 0;
}
body.single-post .singleintro-block .span:last-child h3,
body.single-post .text-block h3,
body.single-post .textmedia-block h3,
body.single-post .iconsidebar-block .iconsidebar-article h3 { /* Mimick default H4 on single post page */
font-size: 24px;
line-height: 120%;
font-weight: 500;
margin: 0 0 30px 0;
}
body.single-post .singleintro-block .span:last-child h4,
body.single-post .text-block h4,
body.single-post .textmedia-block h4,
body.single-post .iconsidebar-block .iconsidebar-article h4 { /* Mimick default H5 on single post page */
font-size: 18px;
line-height: 140%;
font-weight: 600;
margin: 0 0 30px 0;
}

strong {
font-weight: 600;
}
img {
max-width: 100%;
height: auto;
}
img,
img a {
border: 0;
text-decoration: none;
}
ol {
list-style: none;
counter-reset: item;
margin: 0 0 30px 0;
}
ol > li {
counter-increment: item;
line-height: 1.6em;
padding: 0 0 20px 30px;
margin: 0 0 0 0;
}
ol > li:before {
display: inline-block;
vertical-align: top;
content: counter(item);
color: #0172c5;
font-weight: 600;
width: 30px;
margin: 0 0 0 -30px;
}
ol > li:nth-child(-n+9):before {
content: '0'counter(item);
}
ul {
padding: 0;
margin: 0 0 20px 10px;
list-style: none;
}
ul li {
position: relative;
margin: auto;
list-style: none;
line-height: 1.6em;
padding: 0 0 20px 8px;
margin: 0 0 0 0;
}
ul > li:before {
content: '';
position: absolute;
top: 10px;
left: -10px;
background: #0172C5;
width: 8px;
height: 8px;
border-radius: 50%;
}
ul.tick li,
.tick ul li {
padding-left: 14px;
}
ul.tick > li:before,
.tick ul > li:before {
top: 5px;
background: url(images/icons/tick-box.svg) 50% 50% no-repeat;
background-size: 16px 16px;
width: 16px;
height: 16px;
border-radius: 0;
}
li ul,
li ol {
margin: 20px 0 0 10px;
}
li ul li:last-child,
li ol li:last-child {
padding-bottom: 0.25em;	
}
hr,
hr.wp-block-separator {
clear: both;
border: 0;
border-bottom: 1px solid #ccc;
background: transparent;
height: 1px;
padding: 5px 0 0 0;
margin: 0 0 30px 0;
}
blockquote {
padding: 40px 5%;
margin: 0 0 25px 0;
background: #E9EEF4;
}
blockquote p:last-of-type {
margin: 0;
}
blockquote cite {
display: inline-block;
font-style: normal;
margin: 20px 0 0 0;
}
.hidden {
position: absolute;
top: -9999px;
left: -9999px;
}
.clearfix:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
.clearfix {
display: inline-block;
}
html[xmlns] .clearfix {
display: block;
}
* html .clearfix {
height: 1%;
}
.clear {
clear: both;
}
.wp-caption {
margin-bottom: 1.5em;
text-align: center;
padding-top: 5px;
}
.wp-caption.aligncenter {
width: 100% !important;
}
.wp-caption.alignleft,
.wp-caption.alignright {
}
.wp-caption img {
border: 0 none;
padding: 0;
margin: 0;
}
.wp-caption p.wp-caption-text {
font-size: 14px;
color: #9095a0;
margin: 0;
}
.textcenter,
.aligncenter {
text-align: center;
}
.textcenter ul,
.textcenter ol {
text-align: left;
}
img.aligncenter {
display: block;
margin: 0 auto 15px auto;
}
.textleft {
text-align: left;
}
.textright {
text-align: right;
}
a.cta,
button {
display: inline-block;
text-decoration: none;
font-size: 16px;
font-weight: 600;
line-height: 26px;
text-align: center;
color: #f5fbff;
background: #0172c5;
border: none;
box-shadow: none;
padding: 7px 22px 7px 22px;
border-radius: 20px;
margin: 5px 0;
transition: all 0.2s;
}
a.cta:hover,
a.cta:focus {
background: #015594;
}
a.cta i,
button i {
display: inline-block;
vertical-align: middle;
width: 24px;
height: 24px;
background: #f5fbff;
-webkit-mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
-webkit-mask-size: 16px 16px;
mask-size: 16px 16px;
margin: -3px 0 0 5px;
transition: all 0.2s;
}
a.cta.cta-icon,
button.cta_icon {
padding-left: 8px;
padding-right: 8px;
}
a.cta.cta-icon span,
button.cta_icon span {
position: absolute;
top: -9999px;
left: -9999px;
}
a.cta.cta-icon i,
button.cta_icon i {
margin-left: 0;
}
.form-modal-group + .form-modal-group,
.form-modal-group + a.cta,
a.cta + .form-modal-group,
a.cta + a.cta,
button + button {
margin-left: 10px;
}
@media screen and (max-width: 767px) {
	p,
	li {
	font-size: 16px;
	line-height: 140%;
	}
	small {
	font-size: 14px;
	line-height: 140%;
	}
	h1 {
	font-size: 36px;
	line-height: 110%;
	}
	h2,
	h1.h2 {
	font-size: 28px;
	line-height: 110%;
	}
	h3,
	h1.h3 {
	font-size: 22px;
	line-height: 120%;
	}
	h4,
	h1.h4 {
	font-size: 20px;
	line-height: 120%;
	}
	h5 { /* Sub */
	font-size: 16px;
	line-height: 140%;
	}
	h6 { /* Overline */
	font-size: 14px;
	line-height: 120%;
	}
	body.single-post .singleintro-block .span:last-child h1,
	body.single-post .singleintro-block .span:last-child h2,
	body.single-post .text-block h1,
	body.single-post .text-block h2,
	body.single-post .textmedia-block h1,
	body.single-post .textmedia-block h2 { /* Mimick default H3 on single post page */
	font-size: 22px;
	line-height: 120%;
	}
	body.single-post .singleintro-block .span:last-child h3,
	body.single-post .text-block h3,
	body.single-post .textmedia-block h3 { /* Mimick default H4 on single post page */
	font-size: 20px;
	line-height: 120%;
	}
	body.single-post .singleintro-block .span:last-child h4,
	body.single-post .text-block h4,
	body.single-post .textmedia-block h4 { /* Mimick default H5 on single post page */
	font-size: 16px;
	line-height: 140%;
	}

	a.cta {
	font-size: 16px;
	display: block;
	}
	a.cta.cta-icon,
	button.cta_icon {
	display: inline-block;
	}
	.form-modal-group + .form-modal-group,
	.form-modal-group + a.cta,
	a.cta + .form-modal-group,
	a.cta + a.cta,
	button + button {
	margin-top: 10px;
	margin-left: 0;
	}
}


/* Forms
....................................................................... */
form {
margin: 0 0 20px 0;
padding: 0;
}
fieldset {
border: 0;
padding: 0;
margin: 0;
}
legend {
color: #011c41;
font-size: 14px;
font-weight: 600;
padding: 0;
margin: 0 0 5px 0;
}
label {
display: block;
color: #011c41;
font-size: 14px;
font-weight: 600;
padding: 0 0 5px 0;
}
label abbr {
color: #cc004a;
text-decoration: none;
cursor: help;
}
input,
textarea,
select {
display: block;
color: #011c41;
width: 100%;
font-family: 'Instrument Sans', sans-serif;
font-size: 14px;
font-weight: 400;
background: #F5FBFF;
border: 1px solid #ccc;
padding: 8px 12px;
margin: 0 5px 20px 0;
border-radius: 8px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
input:focus,
textarea:focus,
select:focus {
color: #011c41;
border-color: #0172C5;
-webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
}
::-webkit-input-placeholder {
color: #011c41;
opacity: 1;
}
:-moz-placeholder {
/* Firefox 18- */
color: #011c41;
opacity: 1;
}
::-moz-placeholder {
/* Firefox 19+ */
color: #011c41;
opacity: 1;
}
:-ms-input-placeholder {
color: #011c41;
opacity: 1;
}
select {
line-height: 2.25em;
}
select option {
font-family: 'Instrument Sans', sans-serif;
padding: 0 15px;
}
textarea {
overflow: auto;
overflow-x: hidden;
resize: none;
}
.checkbox,
.radio {
display: grid;
align-items: top;
grid-template-columns: 2.25em auto;
gap: 0.5em;
margin: 0 0 20px 0;
}
input[type="radio"],
input[type="checkbox"] {
-webkit-appearance: none;
appearance: none;
display: grid;
place-content: center;
width: 1.2em;
height: 1.2em;
font-size: 1.25em;
color: #011c41;
background-color: #F5FBFF;
border: 1px solid #ccc;
border-radius: 8px;
padding: 0;
margin: 0;
}
input[type="radio"] {
border-radius: 50%;
}
input[type="radio"]:before {
content: '';
display: block;
width: 8px;
height: 8px;
opacity: 0;
box-shadow: inset 1em 1em #191349;
border-radius: 50%;
}
input[type="checkbox"]:before {
content: '';
display: block;
width: 0.5em;
height: 0.5em;
opacity: 0;
box-shadow: inset 1em 1em #191349;
clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
input[type="radio"]:checked,
input[type="checkbox"]:checked {
border-color: #0172c5;
}
input[type="radio"]:checked:before,
input[type="checkbox"]:checked:before {
opacity: 1;
}
button,
input.submit,
input[type="submit"],
input[type="button"] {
width: auto;
font-family: 'Instrument Sans', sans-serif;
font-size: 16px;
font-weight: 600;
line-height: 26px;
color: #f5fbff;
background: #0172c5;
padding: 7px 22px 7px 22px;
border-radius: 20px;
border: none;
box-shadow: none;
-webkit-appearance: none;
transition: all 0.2s;
cursor: pointer;
}
button:hover,
input.submit:hover,
input[type="submit"]:hover,
input[type="submit"]:hover,
button:focus,
input.submit:focus,
input[type="submit"]:focus,
input[type="submit"]:focus {
background: #015594;
}
.input-error input,
.input-error textarea,
.input-error select {
border-color: #CC004A;
}
.input-prompt p,
.input-error p {
font-size: 14px;
color: #9095A0;
margin: -12px 0 20px 0;
}
.input-error p {
color: #CC004A;
}
label i {
display: inline-block;
vertical-align: middle;
text-indent: -9999px;
width: 18px;
height: 18px;
background: #BBC3CC;
-webkit-mask: url(images/icons/info-grey.svg) 50% 50% no-repeat;
mask: url(images/icons/info-grey.svg) 50% 50% no-repeat;
-webkit-mask-size: 16px 16px;
mask-size: 16px 16px;
margin: -2px 0 0 0;
cursor: help;
}
select#tab_options {
border: 0;
border-radius: 0;
border-bottom: 3px solid #0172c5;
padding-left: 0;
color: #0172c5;
font-weight: 600;
}
/* WP Forms fixes */
.wpforms-container .wpforms-field {
padding: 0 0 25px 0 !important;
}
.wpforms-container .wpforms-field-label {
font-weight: 600 !important;
}
.wpforms-container .wpforms-required-label {
color: #cc004a !important;
}
.wpforms-container label.wpforms-error,
.wpforms-container em.wpforms-error {
color: #cc004a !important;
padding-top: 5px;
}
.wpforms-container .wpforms-field input[type="checkbox"].wpforms-error {
border: 1px solid #cc004a !important;
}
.wpforms-container ul li {
padding: 8px 0 8px 40px;
margin: 0;
}
.wpforms-container ul li:before {
display: none;
}
.wpforms-container input[type="checkbox"],
.wpforms-container input[type="radio"] {
width: 24px !important;
height: 24px !important;
vertical-align: middle !important;
margin: 0 10px 0 -40px !important;
}
.wpforms-container input[type="checkbox"]:before {
margin: 6px 0 0 6px;
}
.wpforms-container input[type="radio"]:before {
margin: 7px 0 0 7px;
}
.wpforms-container .wpforms-field-label-inline {
display: inline-block !important;
vertical-align: middle !important;
line-height: 140%;
padding-bottom: 0 !important;
}
@media screen and (max-width: 767px) {
	button,
	input.submit,
	input[type="submit"],
	input[type="button"] {
	width: 100%;
	}
}
/* Hubspot fixes */
.hs-fieldtype-intl-phone.hs-input .hs-input {
/* Fix for Hubspot phone fields */
margin-bottom: 20px;
}
.hs-form fieldset {
max-width: none !important;
}
.hs-form .hs-input {
width: 100% !important;
}
.hs-form ul.inputs-list {
margin: 0 !important;
}
.hs-form ul.inputs-list li {
padding: 8px 0 8px 40px;
}
.hs-form ul.inputs-list li:before {
display: none;
}
.hs-form ul.inputs-list li input[type="checkbox"],
.hs-form ul.inputs-list li input[type="radio"] {
width: 24px !important;
height: 24px !important;
display: inline-block;
vertical-align: middle;
margin: 0 10px 0 -40px !important;
}
.hs-form ul.inputs-list li input[type="checkbox"]:before {
margin: 6px 0 0 6px;
}
.hs-form ul.inputs-list li input[type="radio"]:before {
margin: 7px 0 0 7px;
}
.hs-form ul.inputs-list.hs-error-msgs {
margin: -15px 0 15px 0 !important;
}
.hs-form ul.inputs-list.hs-error-msgs li {
padding: 0;
}
.hs-form ul.inputs-list.hs-error-msgs li label {
color: #cc004a !important;
padding: 5px 0;
}
.hs-form .hs_recaptcha {
padding: 10px 0 30px 0;
}


/* Scroll reveal transitions
....................................................................... */
.fadein {
opacity: 0;
visibility: hidden;
transition: opacity 0.5s ease-out;
will-change: opacity, visibility;
}
.fadeinfromleft {
opacity: 0;
transform: translateX(-30px);
visibility: hidden;
transition: opacity 0.5s ease-out, transform 0.5s ease-out;
will-change: opacity, visibility;
}
.fadeinfromright {
opacity: 0;
transform: translateX(30px);
visibility: hidden;
transition: opacity 0.5s ease-out, transform 0.5s ease-out;
will-change: opacity, visibility;
}
.fadeinfrombottom {
opacity: 0;
transform: translateY(30px);
visibility: hidden;
transition: opacity 0.5s ease-out, transform 0.5s ease-out;
will-change: opacity, visibility;
}
.fadein.is-visible,
.fadeinfromleft.is-visible,
.fadeinfromright.is-visible,
.fadeinfrombottom.is-visible {
opacity: 1;
transform: none;
visibility: visible;
}


/* Tooltips
....................................................................... */
.tooltip {
position: relative;
display: inline-block;
}
.tooltip i {
display: inline-block;
vertical-align: middle;
text-indent: -9999px;
width: 18px;
height: 18px;
background: #BBC3CC;
-webkit-mask: url(images/icons/info-grey.svg) 50% 50% no-repeat;
mask: url(images/icons/info-grey.svg) 50% 50% no-repeat;
-webkit-mask-size: 16px 16px;
mask-size: 16px 16px;
margin: -2px 0 0 0;
cursor: help;
}
.tooltip .tooltiptext {
visibility: hidden;
position: absolute;
width: 200px;
color: #fff;
background-color: #011c41;
font-size: 15px;
line-height: 130%;
text-align: center;
box-sizing: border-box;
border-radius: 4px;
padding: 10px;
z-index: 1;
}
.tooltip:hover .tooltiptext,
.tooltip:focus .tooltiptext {
visibility: visible;
}
.tooltip-top {
bottom: 125%;
left: 50%;
margin-left: -100px;
}
.tooltip-right {
top: 50%;
left: 25px;
transform: translateY(-50%);
}
.tooltip-bottom {
top: 135%;
left: 50%;
margin-left: -100px;
}
.tooltip-left {
top: 50%;
right: 25px;
transform: translateY(-50%);
}
.tooltiptext:after {
content: '';
position: absolute;
border-style: solid;
border-width: 5px;
border-color: transparent;
}
.tooltiptext.tooltip-top:after {
top: 100%;
left: 50%;
margin-left: -5px;
border-top-color: #011c41;
}
.tooltiptext.tooltip-right:after {
top: 50%;
right: 100%;
margin-top: -5px;
border-right-color: #011c41;
}
.tooltiptext.tooltip-bottom:after {
bottom: 100%;
left: 50%;
margin-left: -5px;
border-bottom-color: #011c41;
}
.tooltiptext.tooltip-left:after {
top: 50%;
left: 100%;
margin-top: -5px;
border-left-color: #011c41;
}


/* Social Links
....................................................................... */
.socnet a {
display: inline-block;
vertical-align: middle;
color: #011c41;
margin: 0 15px 0 0;
}
.socnet a span {
position: absolute;
left: -9999px;
top: -9999px;
}
.socnet a i {
display: inline-block;
vertical-align: middle;
width: 20px;
height: 20px;
background: #f5fbff;
-webkit-mask-size: 20px 20px;
mask-size: 20px 20px;
}
.socnet a.tw i {
-webkit-mask: url(images/icons/twitter-white.svg) 50% 50% no-repeat;
mask: url(images/icons/twitter-white.svg) 50% 50% no-repeat;
}
.socnet a.fb i {
-webkit-mask: url(images/icons/facebook-white.svg) 50% 50% no-repeat;
mask: url(images/icons/facebook-white.svg) 50% 50% no-repeat;
}
.socnet a.li i {
-webkit-mask: url(images/icons/linkedin-white.svg) 50% 50% no-repeat;
mask: url(images/icons/linkedin-white.svg) 50% 50% no-repeat;
}
.socnet a.yt i {
-webkit-mask: url(images/icons/youtube-white.svg) 50% 50% no-repeat;
mask: url(images/icons/youtube-white.svg) 50% 50% no-repeat;
}
.socnet a.ig i {
-webkit-mask: url(images/icons/instagram-white.svg) 50% 50% no-repeat;
mask: url(images/icons/instagram-white.svg) 50% 50% no-repeat;
}


/* Header
....................................................................... */
header {
display: flex;
align-items: center;
min-height: 70px;
}
.header_logo {
flex: 0 1 auto;
order: 1;
}
.header_navi {
flex: 1 0 auto;
order: 2;
padding: 0 15px;
}
.header_extras {
flex: 0 0 auto;
order: 3;
display: flex;
align-items: center;
}
.header_logo a {
display: block;
border: 1px solid #f5fbff;
border-radius: 3px;
padding: 5px;
}
.header_logo a:focus {
border: 1px solid #011c41;
}
.header_logo img {
display: block;
width: 100%;
height: auto;
max-width: 196px;
}
.header_logo .text {
position: absolute;
left: -9999px;
top: -9999px;
}
.header_extras p {
margin: 0;
}
.header_extras a.cta {
margin: 0 5px;
}
.header_extras .lang {
position: relative;
padding: 0 0 0 5px;
}
.header_extras .lang:before {
/*content: '';
position: absolute;
left: 0;
top: 15px;
width: 1px;
height: 40px;
background: #E9EEF4;*/
}
.header_extras .lang img {
display: block;
}
.header_extras .toggle {
display: inline-block;
vertical-align: middle;
margin: 0 0 0 10px;
}
.header_extras .toggle span {
position: absolute;
top: -9999px;
left: -9999px;
}
.header_extras .toggle i {
display: inline-block;
vertical-align: middle;
background: #011c41;
mask-size: 24px 17px;
margin: -2px 0 0 0;
}
.header_extras .toggle_navi i:hover,
.header_extras .toggle_navi a:focus i,
.header_extras .toggle_search i:hover,
.header_extras .toggle_search a:focus i {
background: #0172c5;
}
.header_extras .toggle_navi i {
-webkit-mask: url(images/icons/menu-dark.svg) 50% 50% no-repeat;
mask: url(images/icons/menu-dark.svg) 50% 50% no-repeat;
width: 24px;
height: 17px;
-webkit-mask-size: 24px 17px;
}
.header_extras .toggle_search i {
-webkit-mask: url(images/icons/search-dark.svg) 50% 50% no-repeat;
mask: url(images/icons/search-dark.svg) 50% 50% no-repeat;
width: 17px;
height: 17px;
-webkit-mask-size: 17px 17px;
}
.signin_navi ul {
/* Sign In menu */
padding: 0;
margin: 0;
}
.signin_navi li {
display: inline-block;
vertical-align: middle;
list-style: none;
background-image: none;
padding: 0;
margin: 0 -3px 0 0;
}
.signin_navi li:before {
display: none;
}
.signin_navi li a {
display: block;
font-size: 16px;
font-weight: 600;
text-decoration: none;
line-height: 16px;
color: #011c41;
border-bottom: 4px solid #f5fbff;
padding: 25px 14px;
margin: 0;
}
.signin_navi li ul li {
display: block;
margin: 0;
}
.signin_navi li ul li a {
font-size: 16px;
font-weight: 400;
border: 0;
padding: 15px 0;
margin: 0;
}
.signin_navi li ul li a small {
display: block;
color: #0172c5;
padding: 5px 0 0 0;
}
.signin_navi li ul li a:hover,
.signin_navi li ul li a:focus {
text-decoration: underline;
}
.signin_navi a[href="#"] {
pointer-events: none;
}
@media screen and (min-width: 1024px) {
	.signin_navi > ul > li:hover > a,
	.signin_navi > ul > li > a:focus {
	border-bottom: 4px solid #0172c5;
	}
	.signin_navi li.menu-item-has-children > a .indicator {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	height: 6px;
	background: url(images/icons/chevron-down-dark.svg) 50% 50% no-repeat;
	background-size: auto;
	background-size: contain;
	margin: 0 0 0 3px;
	z-index: 101;
	}
	.signin_navi li ul {
	opacity: 0;
	position: absolute;
	right: -9999px;
	top: 70px;
	width: 300px;
	background: #f5fbff;
	border: 1px solid #E9EEF4;
	padding: 5px 0 5px 0;
	margin: 0 0 0 -100px;
	z-index: 99;
	-webkit-transition: opacity 0.2s;
	-o-transition: opacity 0.2s;
	transition: opacity 0.2s;
	}
	.signin_navi > ul > li:hover > ul,
	.signin_navi > ul > li:focus-within > ul {
	opacity: 1;
	right: 0;
	}
	.signin_navi li ul li a {
	text-align: right;
	padding-left: 20px;
	padding-right: 20px;
	}
}

.navi_extras {
display: none;
padding: 40px 5%;
}
.navi_message {
display: none;
color: #f5fbff;
background: #0172c5;
padding: 25px 5%;
}
.navi_message p {
margin-bottom: 15px;
}
.navi_message p:last-child {
margin: 0;
}
.navi_message a {
display: inline-block;
color: #f5fbff;
text-decoration: none;
}
.navi_message a:hover,
.navi_message a:focus {
color: #f5fbff;
text-decoration: underline;
}
.navi_message a i {
display: inline-block;
vertical-align: middle;
width: 20px;
height: 20px;
background: #f5fbff;
-webkit-mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
-webkit-mask-size: 14px 14px;
mask-size: 14px 14px;
}
header ul .navi_message {
display: block;
padding: 0;
}
header ul .navi_message .inner {
display: flex;
max-width: 860px;
padding: 15px 0;
margin: 0 auto;
}
header ul .navi_message .inner p {
margin: 0;
}
header ul .navi_message .inner p:last-child {
margin-left: auto;
}

.navi_cta {
position: relative;
display: flex;
flex-wrap: wrap;
min-height: 150px;
text-align: left;
box-shadow: none;
color: #f5fbff;
background: #0172c5;
border: 0;
border-radius: 4px;
padding: 20px;
margin: 60px 0 0 60px;
overflow: hidden;
}
.navi_cta h5,
.navi_cta p {
position: relative;
z-index: 1;
}
.navi_cta p {
flex: 0 0 100%;
margin: auto 0 0 0;
}
.navi_cta p.cta_head {
flex: 0 0 100%;
font-size: 18px;
line-height: 140%;
font-weight: 600;
margin: 0 0 30px 0;
}
.header_navi li .navi_cta a {
display: inline-block;
font-size: 16px;
color: #f5fbff;
text-decoration: none;
border: 0;
padding: 0;
}
.navi_cta a:hover,
.navi_cta a:focus {
color: #f5fbff !important;
text-decoration: underline !important;
}
.navi_cta a i {
display: inline-block;
vertical-align: middle;
width: 20px;
height: 20px;
background: #f5fbff;
-webkit-mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
mask-size: auto;
-webkit-mask-size: 14px 14px;
mask-size: 14px 14px;
}
.navi_cta .bg-shdw {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url(images/shield/shdw-right-inner/cobalt.svg) 75% 60% no-repeat;
background-size: 1000px 1000px;
z-index: 0;
opacity: 0.65;
}

@media screen and (min-width: 1024px) {
	.header_navi {
	display: block !important;
	}
	.header_navi > ul > li > ul .header_subnavi {
	display: flex !important;
	}
	.header_extras .toggle_navi {
	display: none;
	}
}
@media screen and (max-width: 1023px) {
	.page-wrap_top .center {
	width: 100%;
	margin: 0;
	}
	header {
	flex-wrap: wrap;
	}
	.header_logo {
	padding: 15px 0;
	margin: 0 0 0 calc(5% - 5px);
	}
	.header_navi {
	display: none;
	order: 3;
	flex: 1 1 100%;
	height: calc(100vh - 70px);
	padding: 0;
	margin: 0;
	overflow: auto;
	overflow-x: hidden;
	}
	.header_extras {
	order: 2;
	min-height: 24px;
	padding-left: 15px;
	margin: 0 5% 0 auto;
	}
	.header_extras .toggle_navi {
	display: inline-block;
	}
	.header_extras .signin_navi,
	.header_extras a.cta {
	display: none;
	}
	.header_extras .lang {
	border-left: 0;
	padding-left: 0;
	}
	.header_extras .lang:before {
	display: none;
	}
	.navi_extras,
	.navi_message {
	display: block;
	}
	header ul .navi_message {
	display: none;
	}	
	.navi_cta {
	margin-top: 15px;
	margin-left: 0;
	}
}
@media screen and (max-width: 479px) {
	.header_logo {
	flex-basis: 49%;
	}
}


/* Header navigation
....................................................................... */
/* Level 1 */
.header_navi ul {
text-align: center;
padding: 0;
margin: 0;
}
.header_navi li {
display: inline-block;
vertical-align: middle;
list-style: none;
background-image: none;
padding: 0;
margin: 0 -3px 0 0;
}
.header_navi li:before {
display: none;
}
.header_navi li > a {
display: block;
font-size: 16px;
font-weight: 600;
text-decoration: none;
line-height: 16px;
color: #011c41;
border-bottom: 4px solid #f5fbff;
padding: 25px 14px;
margin: 0;
}
.header_navi > ul > li.menu-item-has-children > a .indicator {
position: relative;
display: inline-block;
vertical-align: middle;
width: 12px;
height: 6px;
/* Don't use mask due to rotation glitch */
background: url(images/icons/chevron-down-dark.svg) 50% 50% no-repeat;
background-size: contain;
margin: 0 0 0 3px;
z-index: 101;
}
.header_navi > ul > li:hover > a,
.header_navi > ul > li > a:focus {
border-bottom: 4px solid #0172c5;
}
/* Level 2 */
.header_navi > ul > li > ul {
opacity: 0;
position: fixed;
left: -9999px;
top: 70px;
width: 100vw;
background: #f5fbff;
border-top: 1px solid #E9EEF4;
box-shadow: 0 2px 2px rgba(0,0,0,0.1);
padding: 0;
margin: 0;
z-index: 100;
transition: opacity 0.2s;
}
.page-wrap_top.nav-up .header_navi > ul > li > ul {
top: 70px !important;
}
.header_navi > ul > li:hover > ul,
.header_navi > ul > li:focus-within > ul {
opacity: 1;
left: 0;
}
.header_navi > ul > li > ul .header_subnavi {
display: flex;
gap: 30px;
width: 90%;
max-width: 860px;
padding: 31px 0;
margin: 0 auto;
}
.header_navi > ul > li > ul .header_subnavi_column {
flex: 1;
}
/* Levels 3+4 */
.header_navi .header_subnavi_column li {
display: block;
background-image: none;
border: 0;
padding: 0;
margin: 0;
}
.header_navi .header_subnavi_column li a {
position: relative;
font-size: 16px;
font-weight: 400;
text-align: left;
border: 0;
padding: 15px 0 15px 35px;
margin: 0;
}
.header_navi .header_subnavi_column li a:hover:not([href^="#"]),
.header_navi .header_subnavi_column li a:focus:not([href^="#"]) {
text-decoration: underline;
}
.header_navi .header_subnavi_column li a strong {
display: block;
font-size: 18px;
line-height: 140%;
font-weight: 600;
margin: 0;
}
.header_navi .header_subnavi_column li a span {
display: block;
color: #0172c5;
font-size: 14px;
line-height: 140%;
font-weight: 400;
text-transform: uppercase;
letter-spacing: 0.05em;
margin: 0 0 15px 0;
margin: 0 0 5px 0;
}
.header_navi .header_subnavi_column li a small {
display: block;
color: #0172c5;
padding: 5px 0 0 0;
}
.header_navi .header_subnavi_column li a .icon {
position: absolute;
left: 0;
top: 15px;
width: 25px;
height: 25px;
}
.header_navi .header_subnavi_column li ul {
padding: 0;
margin: 0;
}
.header_navi .header_subnavi_column li a.header_subnavi_parent {
border-bottom: 2px solid #0172c5;
padding-left: 0;
}
/* Level 4 */
.header_navi .header_subnavi_column li ul li ul {
border: 1px solid #cdcdcd;
background: #e9eef4;
position: relative;
height: 144px;
overflow-y: scroll;
padding: 5px 0;
margin: 0;
z-index: 99;
scrollbar-color: #cdcdcd #f5fbff;
}
.header_navi .header_subnavi_column li ul li ul li {
min-height: 36px;
padding-right: 15px;
}
.header_navi .header_subnavi_column li ul li ul li a {
font-size: 15px;
line-height: 20px;
border-radius: 0;
padding: 8px 0 8px 35px;
}
/* 'CTA' menu item class */
.header_navi .header_subnavi_column > li > ul > li.cta {
border-radius: 5px;
overflow: hidden;
}
.header_navi .header_subnavi_column > li > ul > li.cta a,
.header_navi .header_subnavi_column > li > ul > li.cta a small {
color: #fff;
}
.header_navi .header_subnavi_column > li > ul > li.cta > a {
background: #0172c5;
margin: 1px 0;
}
.header_navi .header_subnavi_column > li > ul > li.cta > a > .icon {
left: 7px;
width: 20px;
height: 20px;
}
.header_navi .header_subnavi_column > li > ul > li.cta ul {
border: 0;
background: #0172c5;
box-shadow: inset 0 5px 10px rgba(0, 0, 0, 0.15);
margin-top: -5px;
scrollbar-color: #f5fbff #0165b1;
}


@media screen and (min-width: 1024px) {
	.header_navi a[href="#"] {
	pointer-events: none;
	}
}
@media screen and (max-width: 1023px) {
	.header_navi ul {
	text-align: left;
	}
	.header_navi li {
	display: block;
	margin: 0;
	}
	.header_navi li a {
	font-size: 22px;
	padding: 27px 0;
	border-bottom: 1px solid #E9EEF4;
	}
	.header_navi li a:hover,
	.header_navi li a:focus {
	text-decoration: underline;
	}
	.header_navi > ul > li > a {
	padding-left: 5%;
	padding-right: 5%;
	}
	.header_navi > ul > li:hover > a,
	.header_navi > ul > li > a:focus {
	position: relative;
	border-bottom: 1px solid #E9EEF4;
	}
	.header_navi > ul > li.menu-item-has-children > a .indicator {
	position: absolute;
	top: 4px;
	right: 3%;
	width: 50px;
	height: 70px;
	background-size: 20px 10px;
	margin: -5px 0 0 0;
	transition: all 0.3s;
	z-index: 101;
	cursor: pointer;
	}
	.header_navi li .indicator.on {
	transform: rotate(180deg);
	}
	.header_navi > ul > li > ul {
	opacity: 1;
	position: relative;
	top: auto !important;
	left: auto;
	width: auto;
	box-shadow: none;
	border: 0;
	}
	.header_navi > ul > li > ul .header_subnavi {
	display: none;
	width: 100%;
	max-width: none;
	background: #E9EEF4;
	box-sizing: border-box;
	padding: 25px 5%;
	margin: 0;
	}
	.header_navi > ul > li > ul .header_subnavi_column {
	}
	.header_navi .header_subnavi_column > li > ul {
	padding: 25px 0 !important;
	}
	.header_navi .header_subnavi_column li ul li ul {
	height: auto;
	overflow-y: visible;
	border: 0;
	padding: 5px 0;
	margin: -5px 0 0 0;
	}
	.navi_extras {
	display: block;
	}
}


/* Alert Banner
....................................................................... */
.header_alert {
box-sizing: border-box;
padding: 15px 0;
}
.header_alert .center {
display: flex;
align-items: center;
box-sizing: border-box;
}
.header_alert p:first-child {
flex: 1;
text-align: center;
font-weight: 500;
line-height: 130%;
margin: 0 30px 0 0;
}
.header_alert p:last-child {
margin: 0 0 0 auto;
}
@media screen and (max-width: 1023px) {
	.header_alert .center {
	padding: 0 5%;
	}
}
@media screen and (max-width: 767px) {
	.header_alert {

	}
	.header_alert .center {
	display: block;
	}
	.header_alert p:first-child {
	margin: 0 0 15px 0;
	}
}

/* Tabbed content
....................................................................... */
.tab_container {
clear: both;
}
ul.tab_list {
display: flex;
flex-wrap: wrap;
justify-content: center;
padding: 0;
margin: 0 0 0 0;
}
ul.tab_list li {
flex: 0 0  auto;
position: relative;
display: inline-block;
vertical-align: top;
list-style: none;
text-align: center;
font-size: 16px;
font-weight: 600;
box-sizing: border-box;
border-bottom: 4px solid #f5fbff;
padding: 15px;
margin: 0 2px;
cursor: pointer;
transition: all 0.2s;
}
ul.tab_list li:before {
display: none;
}
ul.tab_list li:hover,
ul.tab_list li:focus {
border-color: #0172c5;
}
ul.tab_list li.tab_on {
border-color: #0172c5;
color: #0172c5;
}
.tab_container select {
display: none;
}
@media screen and (max-width: 767px) {
	ul.tab_list {
	display: none;
	}
	.tab_container select {
	display: block;
	margin-bottom: 40px;
	}
}


/* Swiper header controls
....................................................................... */
.swiper-header {
display: flex;
margin: 0 0 50px 0;
}
.swiper-header h2,
.swiper-header h3,
.swiper-header h4,
.swiper-header p {
flex: 0 1 auto;
margin: 0;
}
.swiper-header p {
font-size: 32px;
line-height: 120%;
font-weight: 600;
}
.swiper-header nav {
flex: 0 0 auto;
padding-left: 10px;
margin-left: auto;
}
.swiper-header .swiper-button-prev,
.swiper-header .swiper-button-next {
visibility: hidden;
position: relative;
top: auto;
left: auto;
right: auto;
display: inline-block;
vertical-align: middle;
width: auto;
height: auto;
font-size: 16px;
font-weight: 600;
line-height: 26px;
background: #0172c5;
padding: 7px 8px;
border-radius: 20px;
margin: 0 0 0 5px;
transition: all 0.2s;
}
.swiper-header .swiper-button-prev:hover,
.swiper-header .swiper-button-next:hover,
.swiper-header .swiper-button-prev:focus,
.swiper-header .swiper-button-next:focus {
background: #015594;
}
.swiper-header .swiper-button-prev.visible,
.swiper-header .swiper-button-next.visible {
visibility: visible;
}
.swiper-header .swiper-button-prev span,
.swiper-header .swiper-button-next span {
position: absolute;
top: -9999px;
left: -9999px;
}
.swiper-header .swiper-button-prev i,
.swiper-header .swiper-button-next i {
display: inline-block;
vertical-align: middle;
width: 24px;
height: 24px;
-webkit-mask-size: 16px 16px;
mask-size: 16px 16px;
margin: -3px 0 0 0;
}
.swiper-header .swiper-button-prev i {
background: #f5fbff;
-webkit-mask: url(images/icons/arrow-back-white.svg) 50% 50% no-repeat;
mask: url(images/icons/arrow-back-white.svg) 50% 50% no-repeat;
}
.swiper-header .swiper-button-next i {
background: #f5fbff;
-webkit-mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
}
.swiper-header .swiper-button-prev.swiper-button-disabled,
.swiper-header .swiper-button-next.swiper-button-disabled {
background: #f5fbff;
}
.swiper-header .swiper-button-prev.swiper-button-disabled i,
.swiper-header .swiper-button-next.swiper-button-disabled i {
background: #BBC3CC;
}
.swiper-button-next:after,
.swiper-button-prev:after {
display: none;
}
@media screen and (max-width: 767px) {
	.swiper-header {
	display: block;
	margin-bottom: 30px;
	}
	.swiper-header nav {
	padding: 20px 0 0 0;
	margin: 0;
	}
	.swiper-header p {
	font-size: 22px;
	line-height: 120%;
	}
}


/* Swiper footer controls
....................................................................... */
.swiper-footer {
padding: 50px 0 0 0;
}
.swiper-pagination,
.swiper-pagination-bullets.swiper-pagination-horizontal {
position: relative;
bottom: auto;
top: auto;
left: auto;
max-width: 1440px;
width: 90%;
margin: 0 auto;
}
.swiper-pagination .swiper-pagination-bullet {
width: 16px;
height: 16px;
border: 0;
background: #011c41;
margin: 0 7px;
opacity: 0.1;
transition: all 0.2s;
}
.swiper-pagination .swiper-pagination-bullet:hover,
.swiper-pagination .swiper-pagination-bullet:focus {
opacity: 0.25;
}
.swiper-pagination .swiper-pagination-bullet-active {
background: #0172c5;
opacity: 1;
}


/* Post listings
....................................................................... */
.post {
border-radius: 4px;
border: 1px solid transparent;
box-shadow: 0 0 50px rgba(0,0,0,0.1);
box-sizing: border-box;
overflow: hidden;
transition: all 0.2s;
}
.post:hover,
.post:focus-within {
border: 1px solid #BBC3CC;
box-shadow: 0 0 50px rgba(0,0,0,0.25);
}
.post.nolink:hover,
.post.nolink:focus {
border: 1px solid transparent;
box-shadow: 0 0 50px rgba(0,0,0,0.1);
}
.post figure.pic  {
margin: 0;
}
.post .pic img {
display: block;
width: 100%;
border-radius: 4px 4px 0 0;
}
.post .text {
padding: 25px 25px 30px 25px;
}
.post h4 {
margin: 0;
}
.post h4 a {
color: #011c41;
text-decoration: none;
display: block;
}
.post h6 a {
color: #011c41;
text-decoration: none;
display: inline-block;
margin: 0 10px 0 0;
}


/* Post grid listings
....................................................................... */
.post-grid {
display: flex;
flex-wrap: wrap;
margin: 0 -1.75%;
}
.post-grid .post {
flex: 0 0 29.833%;
min-height: 300px;
margin: 0 1.75% 3.5% 1.75%;
}
@media screen and (max-width: 1023px) {
	.post-grid .post {
	flex-basis: 46.5%;
	flex-grow: 1;
	}
}
@media screen and (max-width: 767px) {
	.post-grid .post {
	flex-basis: 97%;
	}
	.post-grid .post {
	margin-bottom: 30px;
	}
	.post-grid .post:last-child {
	margin-bottom: 0;
	}
}
/* Post grid CTAs */
.post-grid .post.post-cta {
flex-grow: 1;
display: flex;
flex-wrap: wrap;
box-shadow: none;
border: 0;
padding: 30px;
}
.post-cta h4 {
flex: 0 0 100%;
}
.post-cta p {
flex: 0 0 100%;
margin: auto 0 0 0;
}
.post-cta .form-modal-group {
display: flex;
align-items: flex-end;
}
.post-cta a {
display: inline-block;
color: #f5fbff;
text-decoration: none;
}
.post-cta a:hover,
.post-cta a:focus {
text-decoration: underline;
}
.post-cta a i {
display: inline-block;
vertical-align: middle;
width: 20px;
height: 20px;
background: #f5fbff;
-webkit-mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
-webkit-mask-size: 12px 12px;
mask-size: 12px 12px;
}
/* Post grid CTA background images */
.post-cta {
position: relative;
}
.post-cta h4,
.post-cta p {
position: relative;
z-index: 1;
}
.post-cta .bg-shdw {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-position: 50% 90%;
background-repeat: no-repeat;
background-size: 1000px 1000px;
opacity: 0.6;
z-index: 0;
}
.post-cta.orange-bg-color a i,
.post-cta.yellow-bg-color a i {
background: #011c41;
}
/* Post grid 10th item on index only */
.post-grid.post-index-grid .post:nth-child(10) {
flex: 0 0 96.5%;
display: flex;
flex-wrap: wrap;
flex-direction: row-reverse;
min-height: 300px;
margin-top: calc(80px - 3.5%);
margin-bottom: 80px;
}
.post-grid.post-index-grid .post:nth-child(10) .text {
flex: 0 0 48.25%;
min-height: 240px;
max-width: 500px;
box-sizing: border-box;
}
.post-grid.post-index-grid .post:nth-child(10) figure.pic {
flex: 0 0 48.25%;
margin-left: auto;
}
.post-grid.post-index-grid .post:nth-child(10) .pic img {
display: block;
width: 100%;
height: 100% !important;
object-fit: cover;
object-position: 50% 50%;
border-radius: 0 4px 4px 0;
}
@media screen and (max-width: 767px) {
	.post-grid.post-index-grid .post:nth-child(10) {
	flex-direction: column-reverse;
	}
	.post-grid.post-index-grid .post:nth-child(10) .text {
	flex: 0;
	max-width: none;
	}
	.post-grid.post-index-grid .post:nth-child(10) .pic {
	flex: 0 0 100%;
	}
	.post-grid.post-index-grid .post:nth-child(10) .pic img {
	border-radius: 0 0 4px 4px;
	}
}
/* Post grid > 10th item on index only */
.post-grid.post-index-grid .post:nth-child(n+11) {
padding-bottom: 10%;
}
.post-grid.post-index-grid .post:nth-child(n+11).post-cta {
padding-bottom: 30px;
}
.post-grid.post-index-grid .post:nth-child(n+11) .pic {
display: none;
}


/* Post grid filter + load more
....................................................................... */
.post-filters,
.post-more {
display: flex;
align-items: flex-start;
margin: 0 0 40px 0;
}
.post-filters .facetwp-facet,
.post-more .facetwp-facet {
margin: 0;
}
.post-tag-filter,
.post-author-filter,
.post-more-button {
margin-left: auto;
}
.post-tag-filter + .post-tag-filter {
margin-left: 20px;
}
.post-tag-filter select,
.post-author-filter select {
min-width: 200px;
}
.post-content-filter select {
display: none;
}
.post-content-filter .facetwp-radio {
display: inline-block;
font-size: 16px;
font-weight: 600;
background-image: none !important;
border-bottom: 4px solid #f5fbff;
padding: 10px 15px;
}
.post-content-filter .facetwp-radio.checked {
border-color: #0172c5;
color: #0172c5;
}
.post-content-filter .facetwp-radio .facetwp-counter {
display: none;
}
.post-content-filter .facetwp-radio .facetwp-display-value {
padding: 0;
}
.post-filters ul.tab_list {
justify-content: flex-start;
}
.post-filters h6 {
font-weight: 700;
}
.post-filters select {
font-weight: 700;
}
@media screen and (max-width: 1023px) {
	.post-filters,
	.post-more {
	display: block;
	}
	.post-counter {
	text-align: center;
	padding: 30px 0 10px 0;
	}
	.post-content-filter select {
	display: block;
	}
	.post-content-filter .tab_list {
	display: none;
	}
	.post-tag-filter + .post-tag-filter {
	margin-left: 0;
	}
}


/* Archive page post grid filter + load more
....................................................................... */
body.archive.category .post-filters {
margin: 0 0 30px 0;
}



/* Featured post listings
....................................................................... */
.post.post-featured {
position: relative;
display: block;
}
.post-featured .pic {
width: 100%;
}
.post-featured .text {
position: absolute;
bottom: 0;
left: 0;
max-width: 400px;
background: #f5fbff;
border-radius: 0 4px 0 0;
padding: 25px;
}
.post-featured .pic img {
display: block;
border-radius: 4px;
}
@media screen and (max-width: 767px) {
	.post.post-featured {
	}
	.post-featured .text {
	position: relative;
	bottom: auto;
	left: auto;
	max-width: none;
	border-radius: 0;
	}
	.post-featured .pic {
	aspect-ratio: 1 / 1;
	}
	.post-featured .pic img {
	width: auto;
	height: 100% !important;
	object-fit: cover;
	object-position: 50% 50%;
	border-radius: 4px 4px 0 0;
	}
}


/* Related posts carousel listings
....................................................................... */
.related-posts {
position: relative;
max-width: 100%;
}
.swiper-posts {
overflow: visible;
margin: 0 0 50px 0;
}
.swiper-posts .swiper-container {
overflow: visible;
}
.swiper-posts .swiper-slide {
/* Apply styling to slide itself instead of the post so matching heights still apply */
height: auto;
border-radius: 4px;
border: 1px solid transparent;
box-shadow: 0 0 50px rgba(0,0,0,0.1);
box-sizing: border-box;
overflow: hidden;
transition: all 0.2s;
}
.swiper-posts .swiper-slide:hover,
.swiper-posts .swiper-slide:focus-within {
border: 1px solid #BBC3CC;
box-shadow: 0 0 50px rgba(0,0,0,0.25);
}
.swiper-posts .swiper-slide .post,
.swiper-posts .swiper-slide .post:hover {
border-radius: 4px;
border: 0;
box-shadow: none;
}


/* Posts block
....................................................................... */
.posts-block {
padding: 90px 0 calc(90px - 3.5%) 0;
}
.posts-block figure {
margin-bottom: 0;
}
body.archive.category .archive-heading + .posts-block,
body.archive.tag .archive-heading + .posts-block,
body.archive.author .archive-heading + .posts-block {
padding-top: 0;
}
@media screen and (max-width: 767px) {
	.posts-block {
	padding: 60px 0 calc(60px - 3.5%) 0;
	}
}


/* Single post page
....................................................................... */
.author-info {
display: flex;
align-items: center;
margin: 0 0 30px 0;
}
.author-info figure {
flex: 0 0 auto;
width: 56px;
height: 56px;
margin: 0 15px 0 0;
}
.author-info figure img {
display: block;
border-radius: 50%;
aspect-ratio: 1 / 1;
}
.author-info h6 {
margin: 0;
}
.postheading h6 a {
color: #011c41;
text-decoration: none;
}
.postheading h6 a:hover,
.postheading h6 a:focus {
text-decoration: underline;
}
@media screen and (min-width: 768px) {
	.posthead-container {
	position: relative;
	margin-bottom: 120px;
	}
	.posthead-container .block {
	position: static !important;
	}
	.posthead-container .block.text-block.singleintro-block { /* Reduce padding on 1st block */
	padding-top: 80px;
	}
	.posthead-container .block.last-selected {
	padding-bottom: 0 !important; /* Remove bottom padding so bottom limit is inline with left sticky col */
	}
	.postheading {
	width: 100%;
	}
	.postheading.sticky.with-top-nav {
	top: 0;
	}
	.postheading.stickytop {
	position: fixed;
	top: 80px;
	width: calc(90% - 46.75%); /* Not relative to container, so mimick organic width here */
	max-width: 691px;
	}
	.postheading.stickybottom {
	position: absolute;
	top: auto;
	bottom: 0;
	width: 48.25%; /* Relative to container, so match organic width here */
	max-width: 691px;
	}
}


/* Archive + search templates
....................................................................... */
.archive-heading {
max-width: 800px;
text-align: center;
padding: 80px 0;
margin: 0 auto;
}
.archive-heading h1 {
margin: 0;
}
.archive-heading p.bio {
margin: 20px 0 0 0;
}
.archive-heading figure {
flex: 0 0 auto;
width: 56px;
height: 56px;
margin: 0 auto;
}
.archive-heading figure img {
display: block;
border-radius: 50%;
aspect-ratio: 1 / 1;
}
@media screen and (max-width: 767px) {
	.archive-heading {
	padding: 50px 0;
	}
}


/* Hero menu
....................................................................... */
ul.hero-menu {
margin-left: calc(50% - 50vw) !important;
margin-right: calc(50% - 50vw) !important;
width: 100vw !important;
max-width: 100vw !important;
overflow-x: hidden;
text-align: center;
background: #f5fbff;
box-sizing: border-box;
padding: 10px;
margin: 0;
}
.hero-menu li {
display: inline-block;
vertical-align: top;
list-style: none;
padding: 10px;
margin: 0;
}
.hero-menu li:before {
display: none;
}
.hero-menu li a {
display: block;
font-weight: 600;
color: #011c41;
padding: 5px 0;
}
.hero-menu li a:hover,
.hero-menu li a:focus {
color: #0172c5;
}
.hero-menu li a:focus {
text-decoration-style: double;
}
@media screen and (min-width: 768px) {
	.hero-menu-container {
	height: 76px;
	}
	ul.hero-menu {
	height: 76px;
	}
	.hero-menu.heronav-up { /* Sticky nav */
	position: fixed;
	/* Top set via js */
	left: 0;
	z-index: 99;
	background: #011C41;
	box-shadow: 0 0 10px rgba(0,0,0,0.15);
	}
	.hero-menu.heronav-up li a {
	color: #fff;
	}
}


/* Reviews (hero blocks only)
....................................................................... */
.reviews {
position: relative;
bottom: -40px;
max-width: 1200px;
margin: 0 auto;
}
.herocolone-block .maxwidth:not(.textcenter) + .reviews,
.herocoltwo-block .reviews,
.heroform-block.contentleft .reviews,
.heroform-block.imagebgleft .reviews,
.productfinder-block .reviews {
/* Left aligned reviews */
margin: 0;
}
.herocoltwo-block .hero-textright .reviews,
.heroform-block.contentright .reviews,
.heroform-block.imagebgright .reviews {
/* Right aligned reviews */
margin: 0 0 0 auto;
}
.heroform-block.imageleft .reviews {
top: -40px;
bottom: auto;
}
.productfinder-block.image-right .reviews {
top: -30px;
bottom: auto;
z-index: 1;
}


/* Sticky headings
....................................................................... */
@media screen and (min-width: 768px) {
	.sticky-element.stickytop {
	position: fixed;
	top: 80px;
	width: calc(90% - 46.75%); /* Not relative to container, so mimick organic width here */
	max-width: 600px;
	}
	.sticky-element.stickybottom {
	position: absolute;
	top: auto;
	bottom: 0;
	width: 48.25%; /* Relative to container, so match organic width here */
	max-width: 600px;
	}
}


/* Breadcrumb
....................................................................... */
.breadcrumbs {
font-size: 12px;
padding: 0 0 25px 0;
}
.breadcrumbs a {
color: #011c41;
text-decoration: none;
}
.breadcrumbs a:hover,
.breadcrumbs a:focus {
color: #0172c5;
}


/* Footer
....................................................................... */
footer {
display: flex;
gap: 30px;
}
.footer_col {
flex: 1 1 auto;
min-width: 130px; /* Rough guide to prevent narrow cols */
padding: 0 0 20px 0;
}
.footer_col.footer_col1 {
flex-basis: 20%;
min-width: 240px; /* Rough guide to prevent narrow col */
}
.footer_col.footer_col1 img {
max-width: 200px;
}
footer  a {
color: #f5fbff;
text-decoration: none;
}
footer a:hover:not(.cta),
footer a:focus:not(.cta) {
color: #f5fbff;
text-decoration: underline;
}
footer .form-modal-group {
display: inline-block;
margin: 0;
}
footer p.col_head {
position: relative;
font-size: 14px;
line-height: 140%;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.05em;
padding: 20px 0;
margin: 0;
}
footer p.col_head .indicator {
display: none;
position: absolute;
top: 4px;
right: 0;
width: 16px;
height: 56px;
/* Don't use mask due to rotation glitch */
background: url(images/icons/chevron-down-white.svg) 50% 50% no-repeat;
background-size: 100% auto;
margin: -5px 0 0 0;
transition: all 0.3s;
z-index: 98;
cursor: pointer;
}
footer p.col_head .indicator.on {
transform: rotate(180deg);
}
footer ul {
padding: 0;
margin: 0;
}
footer ul li {
line-height: 140%;
padding: 8px 0;
margin: 0;
}
footer ul li:before {
display: none;
}
footer .socnet a:hover i,
footer .socnet a:focus:not(.cta) i {
background: #0172c5;
}
footer p.socnet {
margin-top: 20px;
}
footer a.cta.cta-transparent {
color: #fff !important;
}
footer a.cta.cta-transparent i {
background: #fff !important;
}

.footer_lower {
padding: 60px 0 0 0;
}
.footer_copyright {
width: calc( 100% - 410px);
max-width: 570px;
}
.footer_copyright img {
max-width: 170px;
}
.footer_copyright p {
font-size: 12px;
line-height: 17px;
color: #7b8ca0;
}
.footer_message {
position: absolute;
bottom: 70px;
right: 0;
max-width: 350px;
color: #f5fbff;
background: #0172c5;
box-sizing: border-box;
border-radius: 4px 0 0 4px;
padding: 25px 30px;
}
.footer_message p.head {
font-size: 24px;
line-height: 120%;
font-weight: 500;
margin: 0 0 30px 0;
margin-bottom: 15px;
}
.footer_message p {
margin-bottom: 15px;
}
.footer_message p:last-child {
margin: 0;
}
.footer_message a {
display: inline-block;
color: #f5fbff;
text-decoration: none;
}
.footer_message a:hover,
.footer_message a:focus {
color: #f5fbff;
text-decoration: underline;
}
.footer_message a i {
display: inline-block;
vertical-align: middle;
width: 20px;
height: 20px;
background: #f5fbff;
-webkit-mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
mask: url(images/icons/arrow-forward-white.svg) 50% 50% no-repeat;
-webkit-mask-size: 14px 14px;
mask-size: 14px 14px;
}
.top_link {
display: none;
position: fixed;
bottom: 230px;
right: 30px;
z-index: 99;
}
.top_link a.cta i {
background: #f5fbff;
-webkit-mask: url(images/icons/chevron-up-white.svg) 50% 50% no-repeat;
mask: url(images/icons/chevron-up-white.svg) 50% 50% no-repeat;
-webkit-mask-size: 16px 16px;
mask-size: 16px 16px;
}
@media screen and (min-width: 1024px) {
	footer ul {
	display: block !important;
	}
}
@media screen and (max-width: 1023px) {
	footer {
	display: block;
	}
	footer p.col_head {
	cursor: pointer;
	}
	footer p.col_head .indicator {
	display: block;
	}
	footer ul {
	display: none;
	}
	.footer_copyright {
	width: 100%;
	max-width: none;
	}
	.footer_message {
	position: relative;
	bottom: auto;
	right: auto;
	max-width: none;
	width: 90%;
	border-radius: 4px;
	margin: 30px auto 0 auto;
	}
	.top_link {
	/* Leave room for chat btn */
	bottom: 90px;
	right: 8px;
	}
}
@media screen and (max-width: 767px) {
	footer .form-modal-group {
	display: block;
	}
}


/* Form Modal
....................................................................... */
.form-modal {
background: rgba(0, 0, 0, 0.85);
position: fixed;
top: 0;
left: 0;
width: 100%;
max-width: none !important;
height: 100vh;
z-index: 9999999;
display: flex;
justify-content: center;
align-items: center;
text-align: left;
display: none;
}
.form-modal-content {
position: relative;
width: 90%;
height: 66.66%;
max-width: 700px;
background: #f5fbff;
box-sizing: border-box;
border-radius: 6px;
padding: 30px;
margin: 0 auto;
overflow: hidden;
overflow-y: auto;
z-index: 99999999;
}
.form-modal-content h4 {
color: #011c41 !important;
margin-bottom: 40px;
}
.form-modal-close {
position: absolute;
top: 10px;
right: 10px;
width: 17px;
height: 17px;
background: url(images/icons/close-dark.svg) 50% 50% no-repeat;
background-size: cover;
cursor: pointer;
z-index: 999999999;
}
.form-modal-close:hover,
.form-modal-close:focus {
opacity: 0.6;
}
.form-modal-close .text {
display: none;
}
@media screen and (max-width: 767px) {
	.form-modal-content {
	height: 90%;
	}
}


/* Search Modal
....................................................................... */
.search-modal {
background: rgba(0, 0, 0, 0.85);
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100vh;
z-index: 9999999;
display: flex;
justify-content: center;
align-items: center;
display: none;
}
.search-modal-content {
position: relative;
width: 90%;
max-width: 600px;
background: #f5fbff;
box-sizing: border-box;
border-radius: 6px;
padding: 30px;
margin: 0 auto;
z-index: 99999999;
}
.search-modal-content h4 {
margin-bottom: 20px;
}
.search-modal-close {
position: absolute;
top: 10px;
right: 10px;
width: 17px;
height: 17px;
background: url(images/icons/close-dark.svg) 50% 50% no-repeat;
background-size: cover;
cursor: pointer;
z-index: 999999999;
}
.search-modal-close:hover,
.search-modal-close:focus {
opacity: 0.6;
}
.search-modal-close .text {
display: none;
}


/* Search form
....................................................................... */
.search-modal form {
max-width: 600px;
margin: 0 auto 20px auto;
}
.search-modal form > div {
position: relative;
}
.search-modal label {
font-size: 24px;
line-height: 120%;
font-weight: 500;
margin: 0 0 20px 0;
}
.search-modal input {
padding: 11px;
margin: 0;
}
.search-modal button#searchsubmit {
position: absolute;
top: 0;
right: 0;
width: 42px;
height: 42px;
border: 0;
font-size: 1.25em;
line-height: 1px;
padding: 0 !important;
margin: 0;
border-radius: 0 4px 4px 0;
cursor: pointer;
}
.search-modal #searchsubmit span {
display: none;
}
.search-modal button#searchsubmit i {
margin: -3px 5px 0 5px;
}


/* Color theme 
....................................................................... */
.light-grey-color,
.wp-block-button__link.light-grey-color {
color: #F5FBFF;
}
.light-grey-bg-color,
.wp-block-button__link.light-grey-bg-color {
background-color: #F5FBFF;
}
.light-grey-accent-color,
.wp-block-button__link.light-grey-accent-color {
color: #E9EEF4;
}
.light-grey-accent-bg-color,
.wp-block-button__link.light-grey-accent-bg-color {
background-color: #E9EEF4;
}
.navy-color,
.wp-block-button__link.navy-color {
color: #011C41;
}
.navy-bg-color,
.wp-block-button__link.navy-bg-color {
background-color: #011C41;
}
.navy-accent-color,
.wp-block-button__link.navy-accent-color {
color: #072651;
}
.navy-accent-bg-color,
.wp-block-button__link.navy-accent-bg-color {
background-color: #072651;
}
.cobalt-color,
.wp-block-button__link.cobalt-color {
color: #0172C5;
}
.cobalt-bg-color,
.wp-block-button__link.cobalt-bg-color {
background-color: #0172C5;
}
.magenta-color,
.wp-block-button__link.magenta-color {
color: #CC004A;
}
.magenta-bg-color,
.wp-block-button__link.magenta-bg-color {
background-color: #CC004A;
}
.green-color,
.wp-block-button__link.green-color {
color: #00804A;
}
.green-bg-color,
.wp-block-button__link.green-bg-color {
background-color: #00804A;
}
.orange-color,
.wp-block-button__link.orange-color {
color: #FF9A3D;
}
.orange-bg-color,
.wp-block-button__link.orange-bg-color {
background-color: #FF9A3D;
}
.yellow-color,
.wp-block-button__link.yellow-color {
color: #FBCB21;
}
.yellow-bg-color,
.wp-block-button__link.yellow-bg-color {
background-color: #FBCB21;
}

.navy-bg-color,
.navy-accent-bg-color,
.cobalt-bg-color,
.magenta-bg-color,
.green-bg-color,
.navy-bg-color a,
.navy-accent-bg-color a,
.cobalt-bg-color a,
.magenta-bg-color a,
.green-bg-color a {
color: #f5fbff;
}
.navy-bg-color ul li:before,
.navy-accent-bg-color ul li:before,
.cobalt-bg-color ul li:before,
.magenta-bg-color ul li:before,
.green-bg-color ul li:before,
.navy-bg-color .swiper-pagination .swiper-pagination-bullet,
.navy-bg-color .swiper-pagination .swiper-pagination-bullet-active,
.navy-accent-bg-color .swiper-pagination .swiper-pagination-bullet,
.navy-accent-bg-color .swiper-pagination .swiper-pagination-bullet-active,
.cobalt-bg-color .swiper-pagination .swiper-pagination-bullet,
.cobalt-bg-color .swiper-pagination .swiper-pagination-bullet-active,
.magenta-bg-color .swiper-pagination .swiper-pagination-bullet,
.magenta-bg-color .swiper-pagination .swiper-pagination-bullet-active,
.green-bg-color .swiper-pagination .swiper-pagination-bullet,
.green-bg-color .swiper-pagination .swiper-pagination-bullet-active {
background: #f5fbff;
}
.light-grey-bg-color,
.light-grey-accent-bg-color,
.yellow-bg-color,
.orange-bg-color,
.light-grey-bg-color a,
.light-grey-accent-bg-color a,
.yellow-bg-color a,
.orange-bg-color a {
color: #011c41;
}
.yellow-bg-color .swiper-pagination .swiper-pagination-bullet,
.yellow-bg-color .swiper-pagination .swiper-pagination-bullet-active,
.orange-bg-color .swiper-pagination .swiper-pagination-bullet,
.orange-bg-color .swiper-pagination .swiper-pagination-bullet-active {
background: #011c41;
}
.light-grey-bg-color a:not(.cta):hover,
.light-grey-accent-bg-color a:not(.cta):hover,
.yellow-bg-color a:not(.cta):hover,
.orange-bg-color a:not(.cta):hover,
.navy-bg-color a:not(.cta):hover,
.navy-accent-bg-color a:not(.cta):hover,
.cobalt-bg-color a:not(.cta):hover,
.magenta-bg-color a:not(.cta):hover,
.green-bg-color a:not(.cta):hover {
}
.light-grey-bg-color a:not(.cta):focus,
.light-grey-accent-bg-color a:not(.cta):focus,
.yellow-bg-color a:not(.cta):focus,
.orange-bg-color a:not(.cta):focus,
.navy-bg-color a:not(.cta):focus,
.navy-accent-bg-color a:not(.cta):focus,
.cobalt-bg-color a:not(.cta):focus,
.magenta-bg-color a:not(.cta):focus,
.green-bg-color a:not(.cta):focus {
text-decoration-style: double;
}
.navy-bg-color ul.tick li:before,
.navy-bg-color .tick ul li:before,
.navy-accent-bg-color ul.tick li:before,
.navy-accent-bg-color .tick ul li:before,
.cobalt-bg-color ul.tick li:before,
.cobalt-bg-color .tick ul li:before,
.magenta-bg-color ul.tick li:before,
.magenta-bg-color .tick ul li:before,
.green-bg-color ul.tick li:before,
.green-bg-color .tick ul li:before {
background: transparent url(images/icons/tick-box-white.svg) 50% 50% no-repeat;
background-size: 16px 16px;
}
.navy-bg-color ol li:before,
.navy-accent-bg-color ol li:before,
.cobalt-bg-color ol li:before,
.magenta-bg-color ol li:before,
.green-bg-color ol li:before {
color: #F5FBFF;
}

a.cta.cta-lightgrey {
color: #011c41;
background: #F5FBFF;
}
a.cta.cta-lightgrey:hover,
a.cta.cta-lightgrey:focus {
background: #dce1e5
}
a.cta.cta-lightgreyaccent {
color: #011c41;
background: #E9EEF4;
}
a.cta.cta-lightgreyaccent:hover,
a.cta.cta-lightgreyaccent:focus {
background: #d1d6db
}
a.cta.cta-navy {
color: #f5fbff;
background: #011c41;
}
a.cta.cta-navy:hover,
a.cta.cta-navy:focus {
background: #011531
}
a.cta.cta-navyaccent {
color: #f5fbff;
background: #072651;
}
a.cta.cta-navyaccent:hover,
a.cta.cta-navyaccent:focus {
background: #051c3d
}
a.cta.cta-cobalt {
color: #f5fbff;
background: #0172C5;
}
a.cta.cta-cobalt:hover,
a.cta.cta-cobalt:focus {
background: #015594
}
a.cta.cta-magenta {
color: #f5fbff;
background: #CC004A;
}
a.cta.cta-magenta:hover,
a.cta.cta-magenta:focus {
background: #990037
}
a.cta.cta-green {
color: #f5fbff;
background: #00804A;
}
a.cta.cta-green:hover,
a.cta.cta-green:focus {
background: #006037
}
a.cta.cta-orange {
color: #011c41;
background: #FF9A3D;
}
a.cta.cta-orange:hover,
a.cta.cta-orange:focus {
background: #e58a37
}
a.cta.cta-yellow {
color: #011c41;
background: #FBCB21;
}
a.cta.cta-yellow:hover,
a.cta.cta-yellow:focus {
background: #e1b61e
}
a.cta.cta-outline {
color: #011c41;
border: 1px solid #011c41;
background: transparent;
}
a.cta.cta-outline:hover,
a.cta.cta-outline:focus {
color: #0172c5;
border-color: #0172c5;
}
a.cta.cta-transparent,
a.cta.cta-transparent-bordered {
color: #011c41;
background: transparent;
}
a.cta.cta-transparent-bordered {
box-shadow: inset 0 0 0 2px rgba(1,28,65,1);
}
a.cta.cta-transparent:hover,
a.cta.cta-transparent:focus,
a.cta.cta-transparent-bordered:hover,
a.cta.cta-transparent-bordered:focus {
color: #011c41;
background: rgba(0,0,0,0.1);
}
a.cta.cta-lightgrey i,
a.cta.cta-lightgreyaccent i,
a.cta.cta-orange i,
a.cta.cta-yellow i,
a.cta.cta-outline i,
a.cta.cta-transparent i,
a.cta.cta-transparent-bordered i {
background: #011c41;
}
a.cta.cta-outline:hover i,
a.cta.cta-outline:focus i {
background: #0172c5;
}
.navy-bg-color a.cta.cta-transparent,
.navy-accent-bg-color a.cta.cta-transparent,
.cobalt-bg-color a.cta.cta-transparent,
.magenta-bg-color a.cta.cta-transparent,
.green-bg-color a.cta.cta-transparent,
.navy-bg-color a.cta.cta-transparent:hover,
.navy-accent-bg-color a.cta.cta-transparent:hover,
.cobalt-bg-color a.cta.cta-transparent:hover,
.magenta-bg-color a.cta.cta-transparent:hover,
.green-bg-color a.cta.cta-transparent:hover,
.navy-bg-color a.cta.cta-transparent:focus,
.navy-accent-bg-color a.cta.cta-transparent:focus,
.cobalt-bg-color a.cta.cta-transparent:focus,
.magenta-bg-color a.cta.cta-transparent:focus,
.green-bg-color a.cta.cta-transparent:focus {
color: #f5fbff;
}
.navy-bg-color a.cta.cta-transparent-bordered,
.navy-accent-bg-color a.cta.cta-transparent-bordered,
.cobalt-bg-color a.cta.cta-transparent-bordered,
.magenta-bg-color a.cta.cta-transparent-bordered,
.green-bg-color a.cta.cta-transparent-bordered,
.navy-bg-color a.cta.cta-transparent-bordered:hover,
.navy-accent-bg-color a.cta.cta-transparent-bordered:hover,
.cobalt-bg-color a.cta.cta-transparent-bordered:hover,
.magenta-bg-color a.cta.cta-transparent-bordered:hover,
.green-bg-color a.cta.cta-transparent-bordered:hover,
.navy-bg-color a.cta.cta-transparent-bordered:focus,
.navy-accent-bg-color a.cta.cta-transparent-bordered:focus,
.cobalt-bg-color a.cta.cta-transparent-bordered:focus,
.magenta-bg-color a.cta.cta-transparent-bordered:focus,
.green-bg-color a.cta.cta-transparent-bordered:focus {
color: #f5fbff;
box-shadow: inset 0 0 0 2px rgba(245,245,255,1);
}
.navy-bg-color a.cta.cta-transparent i,
.navy-accent-bg-color a.cta.cta-transparent i,
.cobalt-bg-color a.cta.cta-transparent i,
.magenta-bg-color a.cta.cta-transparent i,
.green-bg-color a.cta.cta-transparent i,
.navy-bg-color a.cta.cta-transparent-bordered i,
.navy-accent-bg-color a.cta.cta-transparent-bordered i,
.cobalt-bg-color a.cta.cta-transparent-bordered i,
.magenta-bg-color a.cta.cta-transparent-bordered i,
.green-bg-color a.cta.cta-transparent-bordered i {
background: #f5fbff;
}
.orange-bg-color a.cta.cta-transparent-bordered,
.yellow-bg-color a.cta.cta-transparent-bordered,
.orange-bg-color a.cta.cta-transparent-bordered:hover,
.yellow-bg-color a.cta.cta-transparent-bordered:hover,
.orange-bg-color a.cta.cta-transparent-bordered:focus,
.yellow-bg-color a.cta.cta-transparent-bordered:focus {
box-shadow: inset 0 0 0 2px rgba(1,28,65,1);
}


/* WPML switcher
....................................................................... */
.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
padding-top: 23px;
padding-bottom: 23px;
border-bottom: 4px solid #f5fbff !important;
}
.wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover > a,
.wpml-ls-legacy-dropdown-click .wpml-ls-current-language > a:focus {
border-bottom: 4px solid #0172c5 !important;
}
.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
width: 12px;
height: 6px;
background: url(images/icons/chevron-down-dark.svg) 50% 50% no-repeat;
background-size: contain;
border: 0 !important;
}
.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
width: 180px;
left: auto !important;
right: 0px !important;
border-color: #E9EEF4 !important;
}
.header_extras .lang img {
display: inline-block;
vertical-align: middle;
}
.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a {
font-size: 14px;
color: #011C41;
background: #F5FBFF;
border-color: #E9EEF4;
padding: 10px;
}
.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a:hover,
.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a:focus {
color: #011C41 !important;
background: #dce1e5 !important;
}
