
/*
Theme Name: Jason Dorsey
Author: Glass Mountains Digital
Version: 2.0
*/


* {
vertical-align: baseline;
border: 0 none;
outline: 0;
padding: 0;
margin: 0;
}
body {
font-family: 'HCo Ideal Sans', sans-serif;
font-size: 1.05em;
font-weight: 400;
color: #07292b;
background: #e7e7e7;
-webkit-text-size-adjust: none;
-ms-text-size-adjust: none;
}
body.noscroll {
overflow: hidden;
}


/* Canvas layout
....................................................................... */
#site-wrapper {
overflow: hidden;
width: 100%;
}
#site-canvas {
-webkit-transform: none;
transform: none;
-o-transform: none;
-ms-transform: none;
-webkit-transition: .3s ease all;
transition: .3s ease all;
-ms-transition: .3s ease all;
}
#site-left {
width: 300px;
height: auto;
position: absolute;
top: 0;
left: -301px;
background: #263a3d;
overflow: hidden;
overflow-y: auto;
visibility: hidden;
}


/* Layout
....................................................................... */
#page-wrap_header {
position: relative;
clear: both;
float: left;
width: 100%;
color: #e3e3e3;
background: #263a3d;
padding: 32px 0;
z-index: 11;
}
#page-wrap_heading {
clear: both;
float: left;
width: 100%;
background: #b5bfc0;
padding: 50px 0;
}
#page-wrap_hero {
position: relative;
clear: both;
float: left;
width: 100%;
background-color: #263a3d;
background-position: 100% 50%;
background-repeat: no-repeat;
background-size: cover;
z-index: 1;
}
.page-wrap_content {
position: relative;
clear: both;
float: left;
width: 100%;
}
.page-wrap_popularposts {
position: relative;
clear: both;
float: left;
width: 100%;
color: #07292b;
background: #b5bfc0;
padding: 50px 0;
}
.page-wrap_cta {
clear: both;
float: left;
width: 100%;
text-align: center;
background: #263a3d;
background-size: cover;
padding: 120px 0;
}
#page-wrap_footer {
clear: both;
float: left;
width: 100%;
color: #07292b;
background: #b5bfc0;
padding: 60px 0;
}
.center {
clear: both;
width: 980px;
margin: 0 auto;
}

.row:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
.row.noblocks {
padding: 60px 0;
}
.row {
display: inline-block;
}
html[xmlns] .row {
display: block;
}
* html .row {
height: 1%;
}
.span1 {
float: left;
width: 5.125%;
margin: 0 3.5% 0 0;
}
.span2 {
float: left;
width: 13.75%;
margin: 0 3.5% 0 0;
}
.span3 {
float: left;
width: 22.375%;
margin: 0 3.5% 0 0;
}
.span4 {
float: left;
width: 31%;
margin: 0 3.5% 0 0;
}
.span5 {
float: left;
width: 39.625%;
margin: 0 3.5% 0 0;
}
.span6 {
float: left;
width: 48.25%;
margin: 0 3.5% 0 0;
}
.span7 {
float: left;
width: 56.875%;
margin: 0 3.5% 0 0;
}
.span8 {
float: left;
width: 65.5%;
margin: 0 3.5% 0 0;
}
.span9 {
float: left;
width: 74.125%;
margin: 0 3.5% 0 0;
}
.span10 {
float: left;
width: 82.75%;
margin: 0 3.5% 0 0;
}
.span11 {
float: left;
width: 91.375%;
margin: 0 3.5% 0 0;
}
.span12 {
float: left;
width: 100%;
margin: 0 0 0 0;
}
.span1.last,
.span2.last,
.span3.last,
.span4.last,
.span5.last,
.span6.last,
.span7.last,
.span8.last,
.span9.last,
.span10.last,
.span11.last {
margin: 0;
}
.span1 :last-child,
.span2 :last-child,
.span3 :last-child,
.span4 :last-child,
.span5 :last-child,
.span6 :last-child,
.span7 :last-child,
.span8 :last-child,
.span9 :last-child,
.span10 :last-child,
.span11 :last-child,
.span12 :last-child {
margin-bottom: 0;
}


/* Globals
....................................................................... */
p {
line-height: 1.3em;
margin: 0 0 1.1em 0;
word-wrap: break-word;
word-break: break-word;
}
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: 1.5em;
padding: 0.5em 0 0 0;
margin: 0 0 1.5em 0;
}
span.nobr {
white-space: nowrap;
}
a {
color: #3f6e97;
text-decoration: underline;
transition: all 0.2s;
}
a:hover,
a:focus {
opacity: 0.7;
}
.text_columns {
columns: 2;
column-gap: 55px;
margin: 0 0 1.1em 0;
}
h1 {
font-size: 1.75em;
font-weight: 600;
line-height: 1.25em;
margin: 0 0 0.6em 0;
}
h1.caps {
font-size: 48px;
font-weight: 500;
}
h2,
h1.h2 {
font-size: 1.75em;
font-weight: 600;
line-height: 1.2em;
margin: 0 0 0.6em 0;
}
h3,
p.h3 {
font-size: 1.3em;
font-weight: 400;
line-height: 1.3em;
margin: 0 0 0.65em 0;
}
h4,
p.h4 {
font-size: 1em;
font-weight: 600;
line-height: 1.5em;
margin: 0 0 0.75em 0;
}
h5 {
font-size: 0.9em;
font-weight: 600;
text-transform: uppercase;
line-height: 1.5em;
margin: 0 0 0.75em 0;
}
h6 {
font-size: 0.8em;
font-weight: 400;
line-height: 1.5em;
margin: 0 0 0.75em 0;
}
strong {
font-weight: 600;
}
h3 strong {
font-weight: 500;
}
img {
max-width: 100%;
height: auto !important;
}
img, img a {
border: 0;
text-decoration: none;
}
ol {
list-style: none;
counter-reset: item;
margin: 0 0 0.75em 0;
}
ol li {
counter-increment: item;
line-height: 1.6em;
padding: 0 0 20px 20px;
margin: 0 0 0 0;
}
ol li:before {
display: inline-block;
vertical-align: top;
content: counter(item);
width: 20px;
margin: 0 0 0 -20px;
}
ul {
padding: 0;
margin: 0 0 0.75em 10px;
list-style: none;
}
ul li {
position: relative;
margin: auto;
list-style: none;
line-height: 1.3em;
padding: 0 0 0.75em 25px;
margin: 0 0 0 0;
}
ul li:before {
position: absolute;
top: 0;
left: 0;
font-family: 'FontAwesome';
content: '\f111';
font-size: 8px;
color: #263a3d;
}
ul:not(.swiper-wrapper) li ul {
margin: 0.75em 0 0 0;
}
li ul li:last-child {
padding-bottom: 0;	
}
ul.inline {
display: flex;
justify-content: space-evenly;
margin: 0 0 20px 0;
}
ul.inline li {
padding: 0 5px;
margin: 0;
}
ul.inline li:before {
display: none;
}
hr {
clear: both;
border: 0;
border-bottom: 1px solid #263a3d;
background: transparent;
height: 1px;
padding: 25px 0 0 0;
margin: 0 auto 40px auto !important;
}
blockquote {
background: #e7e7e7;
border-left: 10px solid #263a3d;
padding: 30px 50px;
margin: 0 0 20px 0;
}
blockquote p:last-child {
margin: 0;
}
.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;
}
.floatleft {
float: left;
}
.floatright {
float: right;
}
.alignleft {
float: left;
margin: 0 15px 5px 0;
}
.alignright {
float:right;
margin: 0 0 5px 15px;
}
.textcenter,
.aligncenter {
text-align: center;
}
img.aligncenter {
display: block;
margin: 0 auto 15px auto;
}
.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 {
line-height: 1.5;
font-size: 0.7em;
font-style: italic;
margin: 0;
}
.textcenter,
.aligncenter {
text-align: center;
}
img.aligncenter {
display: block;
margin: 0 auto;
}
.textright {
text-align: right;
}
.small {
font-size: 0.8em;
}
.nomargin {
margin: 0;
}
.hidden {
display: none;
}
.uppercase {
text-transform: uppercase;
}
.fa {
display: inline-block;
font-family: FontAwesome;
font-feature-settings: normal;
font-kerning: auto;
font-language-override: normal;
font-size: inherit;
font-size-adjust: none;
font-stretch: normal;
font-style: normal;
font-synthesis: weight style;
font-variant: normal;
font-weight: normal;
line-height: 1;
text-rendering: auto;
}
h1 .fa,
h2 .fa,
h3 .fa,
h4 .fa {
font-size: 0.6em;	
}
.viewall_link {
position: relative;
}
.viewall_link h1,
.viewall_link h2,
.viewall_link h3,
.viewall_link h4 {
/* Approx max-width of a 'view all' link */
padding-right: 190px;
}
p.viewall {
position: absolute;
right: 0;
top: 50%;
font-size: 0.9em;
margin-top: -0.75em;
}
.spacer {
clear: both;
padding: 15px 0;
}
.divider {
clear: both	;
padding: 15px 0;
}
.cta a,
a.cta {
display: inline-block;
text-decoration: none;
font-size: 0.9em;
font-weight: 600;
line-height: 1.25em;
color: #fff;
background: #3f6e97;
border-radius: 4px;
padding: 10px 15px;
margin: 30px 0 5px 0;
transition: all 0.2s;
}
.cta a:hover,
a.cta:hover,
.cta a:focus,
a.cta:focus {
opacity: 1;
color: #e3e3e3;
background: #263a3d;
text-decoration: none;
}
.cta.cta_big a,
a.cta.cta_big {
font-size: 1.25em;
text-transform: none;
padding: 15px 20px 15px 20px;
}
.cta a .fa,
a.cta .fa {
font-size: 0.8em;
}
.cta.cta_block {
display: block;
text-align: center;
}
a.boldlink {
display: inline-block;
}
a.boldlink .fa {
font-size: 0.8em;
}
.show-on-mobile {
display: block !important;
}


/* Forms
....................................................................... */
form {
margin: 0 0 20px 0;
padding: 0;
}
fieldset {
max-width: none !important;
border: 0;
padding: 0;
margin: 0;
}
legend {
color: #07292b;
font-size: 1.3em;
font-weight: 300;
padding: 0;
margin: 0 0 15px 0;
}
label {
display: block;
color: #07292b;
font-size: 1em;
font-weight: 400;
padding: 0 0 5px 0;
}
input,
textarea,
select {
display: block;
color: #07292b;
width: 100%;
font-size: 1em;
font-weight: normal;
font-family: 'HCo Ideal Sans', sans-serif;
background: transparent;
border: 0;
border-bottom: 1px solid #07292b;
padding: 10px 0;
margin: 0 5px 25px 0;
box-sizing: border-box;
}
input:focus,
textarea:focus {
}
::-webkit-input-placeholder {
color: y;
opacity: 1;
}
:-moz-placeholder { /* Firefox 18- */
color: #07292b;
opacity: 1;
}
::-moz-placeholder {  /* Firefox 19+ */
color: #07292b;
opacity: 1;
}
:-ms-input-placeholder {
color: #07292b;
opacity: 1;
}
select {
line-height: 2.25em;
}
select option {
color: #07292b;
padding: 1px 10px;
}
textarea {
overflow: auto;
overflow-x: hidden;
resize: none;
}
.radio,
.checkbox {
display: inline-block;
font-family: 'HCo Ideal Sans', sans-serif;
padding: 5px 15px 10px 0;
}
input[type="radio"],
input[type="checkbox"] {
display: inline-block;
width: auto !important;
padding: 0;
border: 0;
}
input:disabled {
cursor: not-allowed;
}
button,
input.submit, 
input[type=submit] {
width: auto;
display: inline-block;
text-decoration: none;
font-size: 1.25em;
font-weight: 600;
line-height: 1.25em;
color: #e3e3e3;
background: #3f6e97;
border-radius: 4px;
border: 0;
padding: 15px 20px 15px 20px;
margin: 15px 0 5px 0;
transition: all 0.2s;
-webkit-appearance: none;
cursor: pointer;
transition: all 0.2s;
}
button:hover,
input.submit:hover, 
input[type=submit]:hover,
button:focus,
input.submit:focus, 
input[type=submit]:focus {
background: #263a3d;
}

/* Hubspot forms
....................................................................... */
.hs-richtext {
display: none;
}
.hs-form-field {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
border-bottom: 1px solid #07292b;
padding: 0 0 5px 0;
margin: 0 0 25px 0 !important;
}
fieldset.form-columns-2 .hs-form-field {
width: 100% !important;
float: none !important;
}
.hs-form-field label {
flex: 0 0 auto;
padding: 10px 10px 0 0;
margin: 0;
}
.hs-form-field .input {
flex: 1 1 auto;
}
.hs-form-field input,
.hs-form-field textarea,
.hs-form-field select {
width: 100% !important;
border-bottom: 0;
margin: 0;
}
.hs-form-field textarea {
height: 100px;
margin-bottom: 10px;
}
.hs-form-field p {
position: absolute;
bottom: 0;
left: 0;
margin: 0;
}
.hs-form-field ul.hs-error-msgs {
flex: 0 0 100%;
padding: 0;
margin: 0;
}
.hs-form-field ul.hs-error-msgs li {
list-style: none;
padding: 0 0 10px 0;
margin: 0;
}
.hs-form-field ul.hs-error-msgs li label {
width: auto !important;
font-style: italic;
padding: 0;
}
.hs-form-field ul.hs-error-msgs li:before {
display: none;
}
.hs-form-field ul.inputs-list {
padding: 0;
margin: 0;	
}
.hs-form-field ul.inputs-list li {
padding-left: 0;
margin: 0;
}
.hs-form-field ul.inputs-list li:before {
display: none;
}
.hs-form-field ul.inputs-list li label {
display: flex;
padding: 20px 0;
}
.hs-form-field ul.inputs-list li label input {
width: 25px !important;
margin: 0 5px 0 0;
}
/* Contact Form */
#hsForm_93c1d6a8-fbfd-46d7-8f2d-03b050a387f5 .hs-form-field label {
width: 140px;
}
#hsForm_93c1d6a8-fbfd-46d7-8f2d-03b050a387f5 .hs-form-field ul.hs-error-msgs li {
margin-left: 150px;
}
/* Newsletter Form */
#hsForm_b0791c6a-2092-4879-a91f-c5310ddd4c48 .hs-form-field label {
width: 95px;
}
#hsForm_b0791c6a-2092-4879-a91f-c5310ddd4c48 .hs-form-field ul.hs-error-msgs li {
margin-left: 105px;
}
.span3 #hsForm_b0791c6a-2092-4879-a91f-c5310ddd4c48 .hs-form-field ul.hs-error-msgs li,
.span4 #hsForm_b0791c6a-2092-4879-a91f-c5310ddd4c48 .hs-form-field ul.hs-error-msgs li {
margin-left: 0;
}
/* Jason 101 Form */
#hsForm_9eff6b93-8e52-47df-adf0-b13367fa5bb1 .hs-form-field.hs-recaptcha {
border: 0;
}
#hsForm_9eff6b93-8e52-47df-adf0-b13367fa5bb1 .hs-button {
text-transform: capitalize;
}
/* Event questionnaire forms */
.box_customform {
max-width: 960px;
margin: 0 auto;
}
.box_customform p {
margin-bottom: 40px;
}
#hsForm_e2b3292c-530d-4650-a925-21a0e4520beb .hs-form-field {
display: block;
}
/* Handle checkboxes & radio buttons */
.hs-form-field.hs-fieldtype-booleancheckbox {
border: 0;
padding: 0;
margin: 0 !important;
}
.checkbox,
.radio,
.hs-form-booleancheckbox-display {
display: grid;
align-items: center;
grid-template-columns: 2.25em auto;
gap: 0.5em;
margin: 0 0 20px 0;
cursor: pointer;
}
input[type="checkbox"],
input[type="radio"],
.hs-form-booleancheckbox-display input[type="checkbox"],
.hs-form-booleancheckbox-display input[type="radio"] {
-webkit-appearance: none;
appearance: none;
display: grid;
place-content: center;
width: 1.2em;
height: 1.2em;
font-size: 1.25em;
color: #07292b;
background-color: transparent;
border: 1px solid #07292b;
border-radius: 4px;
padding: 0;
margin: 0;
cursor: pointer;
}
input[type="radio"],
.hs-form-booleancheckbox-display input[type="radio"] {
border-radius: 50%;
}
input[type="radio"]:before,
.hs-form-booleancheckbox-display input[type="radio"]:before {
content: '';
display: block;
width: 8px;
height: 8px;
opacity: 0;
box-shadow: inset 1em 1em #07292b;
border-radius: 50%;
transition: opacity 0.2s ease;
}
input[type="checkbox"]:before,
.hs-form-booleancheckbox-display input[type="checkbox"]:before {
content: '';
display: block;
width: 0.55em;
height: 0.55em;
opacity: 0;
box-shadow: inset 1em 1em #07292b;
clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
transition: opacity 0.2s ease;
}
input[type="checkbox"]:checked,
input[type="radio"]:checked,
.hs-form-booleancheckbox-display input[type="checkbox"]:checked,
.hs-form-booleancheckbox-display input[type="radio"]:checked {
border-color: #07292b;
}
input[type="checkbox"]:checked::before,
input[type="radio"]:checked::before,
.hs-form-booleancheckbox-display input[type="checkbox"]:checked::before,
.hs-form-booleancheckbox-display input[type="radio"]:checked::before {
opacity: 1;
}
input[type="checkbox"]:hover,
input[type="radio"]:hover,
.hs-form-booleancheckbox-display input[type="checkbox"]:hover,
.hs-form-booleancheckbox-display input[type="radio"]:hover {
border-color: #07292b;
}
input[type="checkbox"]:focus-visible,
input[type="radio"]:focus-visible,
.hs-form-booleancheckbox-display input[type="checkbox"]:focus-visible,
.hs-form-booleancheckbox-display input[type="radio"]:focus-visible {
outline: 2px solid #07292b;
outline-offset: 2px;
}



/* Ninja Forms
....................................................................... */
.ninja-forms-all-fields-wrap {
border-top: 1px solid #e7e7e7;
padding-top: 20px;
}
.nf-before-form-content,
.ninja-forms-required-items {
padding-bottom: 20px;
}
/* Ninja form appends to Ultimate Posts content in sidebar */
.upw-content .ninja-forms-cont {
display: none !important;
}
/* Contact page form */
@media screen and (min-width: 600px) {
	form.jd-contact-form fieldset:nth-child(1) .hs-form-field {
	/* First 2 fields are within a single fieldset */
	display: inline-block !important;
	vertical-align: top;
	width: calc(50% - 10px) !important;
	}
	form.jd-contact-form fieldset:nth-child(1) .hs-form-field:nth-child(2) {
	margin-left: 20px !important;
	}
	form.jd-contact-form fieldset:nth-child(2),
	form.jd-contact-form fieldset:nth-child(3) {
	/* Second 2 fields are within separate fieldsets */
	display: inline-block !important;
	width: calc(50% - 10px) !important;
	}
	form.jd-contact-form fieldset:nth-child(3) {
	margin-left: 20px !important;
	}
}



/* Social links
....................................................................... */
.socnet strong {
display: inline-block;
vertical-align: middle;
}
.socnet a {
display: inline-block;
vertical-align: middle;
text-decoration: none;
padding: 5px 2px;
margin: 0 5px;
}
.socnet a span {
display: none;
}
.socnet a .fa {
font-size: 1.75em;
color: #000;
}
.socnet a:hover .fa.fa-twitter,
.socnet a:focus .fa.fa-twitter {
color: #56bee5;
}
.socnet a:hover .fa.fa-facebook,
.socnet a:focus .fa.fa-facebook {
color: #084b8f;
}
.socnet a:hover .fa.fa-linkedin,
.socnet a:focus .fa.fa-linkedin {
color: #127db5;
}
.socnet a:hover .fa.fa-youtube,
.socnet a:focus .fa.fa-youtube {
color: #e52117;
}
.socnet a:hover .fa.fa-instagram,
.socnet a:focus .fa.fa-instagram {
color: #b826e1;
}
.socnet a:hover .fa.fa-pinterest,
.socnet a:focus .fa.fa-pinterest {
color: #bd081c;
}



/* Side navigation
....................................................................... */
#sidehead {
padding: 35px 20px;
}
#sidehead strong {
font-size: 1em;
color: #e3e3e3;
text-transform: uppercase;
}
#sidehead a.close_menu {
display: inline-block;
float: right;
color: #e3e3e3;
font-size: 1.4em;
padding: 5px 0 5px 5px;
margin: -8px 0 0 0;
transition: all 0.2s;
}
#sidehead a.close_menu:hover,
#sidehead a.close_menu:focus {
opacity: 0.7;
}
#sidehead a.close_menu span {
position: absolute;
top: -9999px;
left: -9999px;
}
#sidenavi {
clear: both;
position: relative;
}
#sidenavi ul {
border-top: 1px solid rgba(255,255,255,0.1);
background: #263a3d;
box-sizing: border-box;
padding: 0;
margin: 0;
}
#sidenavi li {
position: static;
list-style: none;
background-image: none;
border-bottom: 1px solid rgba(255,255,255,0.1);
padding: 0;
margin: 0;
}
#sidenavi li:before {
display: none;
}
#sidenavi li a {
position: relative;
display: block;
width: 300px;
font-size: 0.9em;
font-weight: 600;
color: #e3e3e3;
text-decoration: none;
box-sizing: border-box;
padding: 15px 45px 15px 20px;
margin: 0;
transition: all 0.2s;
}
#sidenavi li > a:after {
content: '\f054';
position: absolute;
right: 30px;
top: 50%;
color: rgba(255,255,255,0);
display: inline-block;
font-family: FontAwesome;
font-feature-settings: normal;
font-kerning: auto;
font-language-override: normal;
font-size: inherit;
font-size-adjust: none;
font-stretch: normal;
font-style: normal;
font-synthesis: weight style;
font-variant: normal;
font-weight: normal;
line-height: 0.1;
text-rendering: auto;
font-size: 15px;
}
#sidenavi li.menu-item-has-children > a:after {
color: #e3e3e3;
}
#sidenavi li a:hover,
#sidenavi li a:focus {
opacity: 0.7;
}
#sidenavi li.current_page_item > a {
background: rgba(255,255,255,0.1);
}
#sidenavi li ul {
position: absolute;
top: 0;
left: 300px;
transition: all 0.3s;
z-index: 9999;
background: #263a3d;
}
#sidenavi li ul li a {
padding-left: 30px;
}
#sidenavi li ul li a:before {
content: '-';
display: inline-block;
padding: 0 5px 0 0;
}
#sidenavi li ul li.title a {
padding-left: 20px;
}
#sidenavi li ul li.title a:before {
content: '';
display: none;
}
#sidenavi li ul li.back a {
font-weight: 600;
padding-left: 20px;
}
#sidenavi li ul li.back a:before {
content: '\f053';
display: inline-block;
font-family: FontAwesome;
font-feature-settings: normal;
font-kerning: auto;
font-language-override: normal;
font-size: inherit;
font-size-adjust: none;
font-stretch: normal;
font-style: normal;
font-synthesis: weight style;
font-variant: normal;
font-weight: normal;
line-height: 0.1;
text-rendering: auto;
font-size: 15px;
}
#sidenavi li.back > a:after {
content: '';
display: none;
}
#sidenavi li ul li ul {
border: 0;
}
#site-left li.contact {
border: 0;
}
#site-left li.contact > a {
background: #3f6e97;
width: 280px;
border-radius: 4px;
padding: 15px 35px 15px 10px;
margin: 0 10px;
}
#site-left li.contact > a:after {
right: 20px;
}


/* Header
....................................................................... */
header {
float: left;
width: 100%;
}
.logo {
display: inline-block;
vertical-align: middle;
width: 30%;
margin: 0 -4px 0 0;
}
.logo span {
position: absolute;
left: -9999px;
top: -9999px;
}
.logo a {
display: block;
}
.logo img {
width: 100%;
height: auto;
display: block;
max-width: 290px;
}
#header_tools {
display: inline-block;
vertical-align: middle;
width: 70%;
text-align: right;
margin: 0 -4px 0 0;
}
#header_contact {
display: inline-block;
color: #e3e3e3;
font-size: 0.9em;
font-weight: 600;
margin: 0 0 15px 0;
}
#header_contact a {
display: inline-block;
color: #e3e3e3;
text-decoration: none;
margin: 0 5px;
transition: all 0.2s;
}
#header_contact a:hover,
#header_contact a:focus {
opacity: 0.7;
}
.toggle_navi {
display: none;
}
.toggle_navi a {
display: block;
font-size: 0.9em;
font-weight: 600;
text-decoration: none;
color: #e3e3e3;
transition: all 0.2s;
}
.toggle_navi a .fa {
vertical-align: middle;
font-size: 1.3em;
color: #e3e3e3;
padding-right: 4px;
margin: -2px 0 0 0;
}
.toggle_navi a:hover,
.toggle_navi a:focus {
opacity: 0.7;
}


/* Top navigation
....................................................................... */
#stickynavi {
position: fixed;
top: -60px;
width: 100%;
background: #263a3d;
z-index: 999;
opacity: 0;
padding: 15px 0;
margin: 0 auto;
-webkit-transition: all 0.3s;
-o-transition: all 0.3s;
transition: all 0.3s;
}
#stickynavi.visible {
top: 0;
opacity: 1;
}
body.logged-in.admin-bar #stickynavi.visible {
top: 32px;
}
#topnavi {
clear: both;
float: left;
width: 100%;
}
#topnavi ul {
margin: 0;
padding: 0;
}
#stickynavi ul {
text-align: right;
margin: 0;
padding: 0;
}
#topnavi li,
#stickynavi li {
display: inline-block;
vertical-align: middle;
position: relative;
list-style: none;
padding: 0;
margin: 0 -4px 0 0;
}
#topnavi li:before,
#stickynavi li:before {
display: none;
}
#topnavi li a,
#stickynavi li a {
display: block;
color: #e3e3e3;
font-size: 1em;
font-weight: 600;
text-decoration: none;
padding: 5px 10px;
margin: 0;
transition: all 0.2s;
}
#topnavi li.menu-item-has-children > a:after,
#stickynavi li.menu-item-has-children > a:after {
content: '\f078';
color: #e3e3e3;
display: inline-block;
vertical-align: middle;
font-family: FontAwesome;
font-feature-settings: normal;
font-kerning: auto;
font-language-override: normal;
font-size: inherit;
font-size-adjust: none;
font-stretch: normal;
font-style: normal;
font-synthesis: weight style;
font-variant: normal;
font-weight: normal;
line-height: 0.1;
text-rendering: auto;
font-size: 7px;
margin: -2px 0 0 4px;
}
#topnavi > ul > li.current-menu-item > a,
#stickynavi > ul > li.current-menu-item > a {
}
#topnavi li:hover > a,
#topnavi li:focus > a,
#stickynavi li:hover > a,
#stickynavi li:focus > a {
opacity: 0.7;
}
#topnavi li a.nolink,
#stickynavi li a.nolink {
cursor: default;
}
#topnavi li a.nolink:hover,
#topnavi li a.nolink:focus,
#stickynavi li a.nolink:hover,
#stickynavi li a.nolink:focus {
text-decoration: none;
}
#topnavi li ul,
#stickynavi li ul {
visibility: hidden;
opacity: 0;
position: absolute;
left: 0;
top: 37px;
width: 200px;
text-align: left;
background: #263a3d;
padding: 3px 0 3px 0;
margin: 0 0 0 0;
z-index: 99;
-webkit-transition-property: opacity, visibility;
-moz-transition-property: opacity, visibility;
-o-transition-property: opacity, visibility;
transition-property: opacity, visibility;
-webkit-transition-duration: .4s, 0s;
-moz-transition-duration: .4s, 0s;
-o-transition-duration: .4s, 0s;
transition-duration: .4s, 0s;
-webkit-transition-delay:  0s, .4s;
-moz-transition-delay:  0s, .4s;
-o-transition-delay:  0s, .4s;
transition-delay:  0s, .4s;
}
#topnavi li ul li,
#topnavi li.current-menu-item ul li,
#stickynavi li ul li,
#stickynavi li.current-menu-item ul li {
clear: both;
background-image: none;
border: 0 !important;
padding: 0;
margin: 0;
}
#topnavi li ul li a,
#topnavi li.current-menu-item ul li a,
#stickynavi li ul li a,
#stickynavi li.current-menu-item ul li a {
float: none;
display: block;
width: 180px;
background: transparent;
font-weight: 400;
font-size: 0.8em;
line-height: 1.2em;
text-transform: none;
text-decoration: none;
border-top: 1px solid rgba(255,255,255,0.1);
background-image: none !important;
padding: 8px 0;
margin: 0 10px 0 10px;
}
#topnavi li:hover ul li a,
#topnavi li:focus ul li a,
#stickynavi li:hover ul li a,
#stickynavi li:focus ul li a {
background: transparent;
}
#topnavi li ul li.menu-item-has-children > a:after,
#stickynavi li ul li.menu-item-has-children > a:after {
content: '\f054';
position: absolute;
left: auto;
bottom: auto;
right: 10px;
top: 50%;
margin-left: 0;
}
#topnavi li ul li:hover > a,
#topnavi li ul li:focus > a,
#topnavi li ul li > a:hover,
#topnavi li ul li > a:focus,
#topnavi li.current-menu-item ul li > a:hover,
#topnavi li.current-menu-item ul li > a:focus,
#stickynavi li ul li:hover > a,
#stickynavi li ul li:focus > a,
#stickynavi li ul li > a:hover,
#stickynavi li ul li > a:focus,
#stickynavi li.current-menu-item ul li > a:hover,
#stickynavi li.current-menu-item ul li > a:focus {
background: transparent;
}
#topnavi li ul li:first-child > a,
#topnavi li.current-menu-item ul li:first-child > a,
#stickynavi li ul li:first-child > a,
#stickynavi li.current-menu-item ul li:first-child > a {
border-top: 0;
}
#topnavi li ul li:last-child a,
#topnavi li.current-menu-item ul li:last-child a,
#stickynavi li ul li:last-child a,
#stickynavi li.current-menu-item ul li:last-child a {
border-bottom: 0;
}
#topnavi ul li:hover > ul,
#topnavi ul li:focus-within > ul,
#stickynavi ul li:hover > ul,
#stickynavi ul li:focus-within > ul {
visibility: visible;
opacity: 1;
-webkit-transition-delay:  0s, .0s;
-moz-transition-delay:  0s, .0s;
-o-transition-delay:  0s, .0s;
transition-delay:  0s, .0s;
}
#topnavi ul li ul li ul,
#stickynavi ul li ul li ul {
display: none !important;
}
@media screen and (max-width: 767px) {
	#stickynavi {
	display: none !important;
	}
}

#stickynavi .center {
display: flex;
align-items: center;
}
#stickynavi .logo {
}
#stickynavi .logo a {
padding: 0;
}
#stickynavi .logo a img {
display: block;
width: auto;
max-height: 33px;
}
#stickynavi .center > ul,
#stickynavi .toggle_navi {
margin-left: auto;
}


/* Page heading
....................................................................... */
#page-wrap_heading h1 {
margin: 0;
}


/* Hero
....................................................................... */
.row#hero {
clear: both;
position: relative;
padding: 40px 0 90px 0;
}
.hero_pic {
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 100%;
background-position: 100% 50%;
background-repeat: no-repeat;
background-size: cover;
z-index: -2;
}
#hero_overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgb(38,58,61);
background: linear-gradient(90deg, rgba(38,58,61,0.8) 10%, rgba(38,58,61,0) 75%);
z-index: -1;
}
.hero_text {
min-height: 400px;
}
#hero h1,
#hero h2,
#hero h3,
#hero h4,
#hero h5,
#hero h6,
#hero p,
#hero li,
#hero a {
color: #e3e3e3;
}
#hero a:hover,
#hero a:focus,
#hero a.cta {
color: #e3e3e3;
}
#hero li::before {
color: #e3e3e3;
}
#hero h1 {
margin: 0 0 0.5em 0;
}
#hero h1.h2,
#hero h2,
#hero h3,
#hero h4 {
margin: 0 0 1em 0;
}
#hero .suffix {
position: absolute;
left: 0;
bottom: 60px;
width: 48.25%;
min-height: 30px;
}
#hero .suffix h6 {
margin: 0;
}
.hero_button {
min-height: 90px;
margin: 0 0 20px 0;
}
#hero p:last-child,
#hero ul:last-child {
margin-bottom: 0;
}
#hero p.postscript {
font-size: 0.8em;
}

@media screen and (max-width: 1023px) {
	.row#hero {
	min-height: 0;
	}
	#hero_overlay {
	background: rgba(0,0,0,0.45);
	}
	.hero_text_maxwidth {
	max-width: none !important;
	}
}
@media screen and (max-width: 768px) {
	#page-wrap_hero {
	background-position: 80% 0;
	background-repeat: no-repeat;
	z-index: 1;
	}
	.hero_pic {
	width: 100%;
	height: 300px;
	}
	.hero_pic:after {
	content: '';
	width: 100%;
	height: 75px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: rgb(38,58,61);
	background: linear-gradient(0deg, rgba(38,58,61,1) 50%, rgba(38,58,61,0) 100%);
	}
	.hero_text {
	min-height: 0;
	}
	.hero_button {
	min-height: 0;
	}
	#hero .suffix {
	position: relative;
	left: auto;
	bottom: auto;
	width: auto;
	min-height: 0;
	margin-bottom: 50px;
	}
	#hero_overlay {
	background: transparent;
	}
	.row#hero {
	padding: 250px 0 20px 0;
	}
}

/* Larger text version */
.horizontalbig .row#hero h1 {
font-size: 48px;
font-weight: 500;
margin: 0 0 15px 0;
}
.horizontalbig .row#hero h2 {
font-size: 22px;
font-weight: 400;
margin: 0 0 25px 0;
}
.horizontalbig .row#hero p {
font-size: 20px;
}
@media screen and (min-width: 768px) {
	.horizontalbig .row#hero {
	padding-top: 100px;
	}
}
@media screen and (max-width: 768px) {
	.horizontalbig .row#hero h1 {
	font-size: 36px;
	margin: 0 0 0.5em 0;
	}
	.horizontalbig .row#hero h2 {
	font-size: 20px;
	margin: 0 0 0.5em 0;
	}
	.horizontalbig .row#hero p {
	font-size: 18px;
	}
}

/* Valign Centered version */
@media screen and (min-width: 768px) {
	#page-wrap_hero.horizontalcenter .row#hero {
	display: flex;
	align-items: center;
	padding: 65px 0;
	}
	#page-wrap_hero.horizontalcenter #hero .span6.last {
	min-height: 510px;
	}
	#page-wrap_hero.horizontalcenter .hero_text {
	min-height: 0;
	}
}

/* Vertical version */
#page-wrap_hero.vertical {
background-position: 50% 0;
background-size: 100% auto;
background-repeat: no-repeat;
z-index: 1;
}
.vertical .hero_text {
min-height: 0;
}
.vertical .hero_button {
min-height: 0;
}
.vertical #hero .suffix {
position: relative;
left: auto;
bottom: auto;
width: auto;
min-height: 0;
margin-bottom: 50px;
}
.vertical #hero_overlay {
width: 100%;
height: 200px;
position: absolute;
top: 350px;
left: 0;
}
.vertical #hero_underlay {
width: 100%;
height: calc(100% - 550px);
position: absolute;
bottom: 0;
left: 0;
z-index: -1;
}
.vertical .row#hero {
max-width: 800px;
text-align: center;
padding: 450px 0 20px 0;
margin: 0 auto;
}
.vertical .row#hero h1 {
font-size: 48px;
font-weight: 500;
margin: 0 0 10px 0;
}
.vertical .row#hero h2 {
font-size: 22px;
font-weight: 400;
margin: 0 0 25px 0;
}
.vertical form {
text-align: left;
padding: 20px 0 0 0;
}
.vertical form .hs-form-field {
border: 1px solid #07292b;
background: rgba(255,255,255,0.03);
box-sizing: border-box;
padding: 5px 15px;
}
.vertical form input.hs-button {
display: block;
color: #07292b !important;
background: #e7e7e7;
margin-left: auto;
margin-right: auto;
}
.vertical .center.accent + #hero_overlay {
background: rgb(75,125,174);
background: linear-gradient(0deg, rgba(75,125,174,1) 0%, rgba(75,125,174,0) 100%);
}
.vertical .center.dark + #hero_overlay {
background: rgb(38,58,61);
background: linear-gradient(0deg, rgba(38,58,61,1) 0%, rgba(38,58,61,0) 100%);
}
.vertical .center.light + #hero_overlay {
background: rgb(181,191,192);
background: linear-gradient(0deg, rgba(181,191,192,1) 0%, rgba(181,191,192,0) 100%);
}
.vertical .center.white + #hero_overlay {
background: rgb(231,231,231);
background: linear-gradient(0deg, rgba(231,231,231,1) 0%, rgba(231,231,231,0) 100%);
}
.vertical .center.accent + #hero_overlay + #hero_underlay {
background: #3f6e97;
}
.vertical .center.dark + #hero_overlay + #hero_underlay {
background: #263a3d;
}
.vertical .center.light + #hero_overlay + #hero_underlay {
background: #b5bfc0;
}
.vertical .center.white + #hero_overlay + #hero_underlay {
background: #e7e7e7;
}
.vertical .center.accent  #hero h1,
.vertical .center.accent  #hero h2,
.vertical .center.accent  #hero h3,
.vertical .center.accent  #hero h4,
.vertical .center.accent  #hero h5,
.vertical .center.accent  #hero h6,
.vertical .center.accent  #hero p,
.vertical .center.accent  #hero li,
.vertical .center.accent  #hero a,
.vertical .center.accent label,
.vertical .center.accent input,
.vertical .center.accent textarea,
.vertical .center.accent select,
.vertical .center.accent form .hs-form-field
.vertical .center.dark  #hero h1,
.vertical .center.dark  #hero h2,
.vertical .center.dark  #hero h3,
.vertical .center.dark  #hero h4,
.vertical .center.dark  #hero h5,
.vertical .center.dark  #hero h6,
.vertical .center.dark  #hero p,
.vertical .center.dark  #hero li,
.vertical .center.dark  #hero a,
.vertical .center.dark label,
.vertical .center.dark input,
.vertical .center.dark textarea,
.vertical .center.dark select,
.vertical .center.dark form .hs-form-field {
color: #e3e3e3;
border-color: #e3e3e3;
}
.vertical .center.accent ::-webkit-input-placeholder,
.vertical .center.dark ::-webkit-input-placeholder {
color: #e3e3e3;
}
.vertical .center.accent :-moz-placeholder,
.vertical .center.dark :-moz-placeholder { /* Firefox 18- */
color: #e3e3e3;
}
.vertical .center.accent ::-moz-placeholder,
.vertical .center.dark ::-moz-placeholder {  /* Firefox 19+ */
color: #e3e3e3;
}
.vertical .center.accent :-ms-input-placeholder,
.vertical .center.dark :-ms-input-placeholder {
color: #e3e3e3;
}
.vertical .center.dark .hs-form-field > label {
display: none;
}
.vertical .center.accent a.cta,
.vertical .center.dark a.cta {
color: #e3e3e3;
border: 1px solid #e3e3e3;
background: transparent;
}
.vertical .center.dark #hero a.cta:hover,
.vertical .center.dark #hero a.cta:focus {
color: #263a3d;
background: #e7e7e7;
border-color: #e7e7e7;
}
.vertical .center.accent #hero a.cta:hover,
.vertical .center.accent #hero a.cta:focus {
color: #e7e7e7;
background: #263a3d;
border-color: #263a3d;
}
.vertical .center.dark form input.hs-button:hover,
.vertical .center.dark form input.hs-button:focus {
color: #e7e7e7 !important;
background: #3f6e97;
}
.vertical .center.white #hero h1,
.vertical .center.white #hero h2,
.vertical .center.white #hero h3,
.vertical .center.white #hero h4,
.vertical .center.white #hero h5,
.vertical .center.white #hero h6,
.vertical .center.white #hero p,
.vertical .center.white #hero li,
.vertical .center.light #hero h1,
.vertical .center.light #hero h2,
.vertical .center.light #hero h3,
.vertical .center.light #hero h4,
.vertical .center.light #hero h5,
.vertical .center.light #hero h6,
.vertical .center.light #hero p,
.vertical .center.light #hero li {
color: #07292b;
}
.vertical .center.white #hero a,
.vertical .center.light #hero a {
color: #3f6e97;
}
.vertical .center.white #hero a.cta,
.vertical .center.light #hero a.cta {
color: #07292b;
border: 1px solid #07292b;
background: transparent;
}
.vertical .center.white #hero a.cta:hover,
.vertical .center.light #hero a.cta:hover,
.vertical .center.white #hero a.cta:focus,
.vertical .center.light #hero a.cta:focus {
color: #e7e7e7;
background: #3f6e97;
border-color: #3f6e97;
}
@media screen and (max-width: 1440px) {
	#page-wrap_hero.vertical {
	background-size: auto 630px;
	}
}
@media screen and (max-width: 768px) {
	#page-wrap_hero.vertical {
	background-size: auto 400px;
	}
	.vertical .row#hero {
	padding-top: 250px;
	}	
	.vertical #hero_overlay {
	top: 150px;
	}
	.vertical #hero_underlay {
	height: calc(100% - 350px);
	}
	.vertical .row#hero h1 {
	font-size: 36px;
	}
	.vertical .row#hero h2 {
	font-size: 20px;
	}
}

/* Outline style CTA for vertical hero */
#page-wrap_hero:not(.vertical) a.cta {
color: #e3e3e3;
border: 1px solid #e3e3e3;
background: transparent;
border-radius: 30px;
padding: 15px 15px 15px 25px;
}
#page-wrap_hero:not(.vertical) a.cta:hover,
#page-wrap_hero:not(.vertical) a.cta:focus {
color: #fff;
background: #3f6e97;
border-color: #3f6e97;
}
#page-wrap_hero:not(.vertical) a.cta:after {
content: '';
display: inline-block;
vertical-align: middle;
background: url(img/hero-play.svg) 50% 50% no-repeat;
background-size: contain;
width: 30px;
height: 30px;
border-radius: 50%;
margin: -5px 0 0 15px;
}


/* Breadcrumb
....................................................................... */
.breadcrumbs {
font-size: 0.75em;
line-height: 2em;
border-bottom: 1px solid #e7e7e7;
padding: 0 0 20px 0;
margin: 0 0 20px 0;
}
.breadcrumbs a {
display: inline-block;
padding: 0 3px;
}
.breadcrumbs > span:last-child a {
color: #434343;
text-decoration: none;
}


/* Client logo list
....................................................................... */
ul.client_list {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
padding: 0;
margin: 0;
}
.client_list li {
flex: 0 0 auto;
background-image: none;
box-sizing: border-box;
padding: 15px 0;
margin: 0;
}
.client_list li:before {
display: none;
}
.client_list li.breaker {
/* Added after each regular list item */
display: none;
}
.client_list li.breaker:nth-child(8n+8) {
/* Display 4 regular list items per row, then break */
display: block;
flex-basis: 100%;
}
.client_list li img {
display: block;
max-height: 95px;
width: auto;
margin: 0;
}

/* Deviation from original spec starts... */
.client_list li {
flex: 0 0 25%;
text-align: center;
}
.client_list li img {
display: inline-block;
}
/* Deviation from original spec ends ... */

/* Custom rules for half width element starts */
.span6 .client_list li {
flex: 0 0 33.333%;
}
.span6 .client_list li.breaker:nth-child(8n+8) {
display: none;
}
.span6 .client_list li img {
width: 85%;
}
/* Custom rules for half width element ends */

@media screen and (max-width: 1199px) {
	.client_list li img {
	width: 85%;
	margin: 0 auto;
	}
}
@media screen and (max-width: 1023px) {
	.client_list li {
	display: flex;
	flex: 0 0 33.33%;
	}
	.client_list li.breaker:nth-child(8n+8) {
	display: none;
	}
	.client_list li img {
	width: 80%;
	max-height: 75px;
	}
}
@media screen and (max-width: 767px) {
	.client_list li,
	.span6 .client_list li {
	flex: 0 0 50%;
	}
}


/* Client logo list (ticker)
....................................................................... */
.client_ticker {
position: relative;
min-height: 95px;
white-space: nowrap;
margin-left: calc(50% - 50vw) !important;
margin-right: calc(50% - 50vw) !important;
width: 100vw !important;
max-width: 100vw !important;
}
.client_ticker ul {
display: inline-block;
vertical-align: middle;
white-space: nowrap;
padding: 0;
margin: 0;
}
.client_ticker li {
display: inline-block;
vertical-align: middle;
background-image: none;
box-sizing: border-box;
padding: 5px 0 0 0;
margin: 0 30px;
}
.client_ticker li:before {
display: none;
}
.client_ticker li img {
display: block;
max-height: 95px;
width: auto;
margin: 0;
}


/* Sidebar
....................................................................... */
.widget {
clear: both;
position: relative;
padding: 0;
margin: 0 0 50px 0;
}
.widget p img {
width: 100%;
}
.widget a.cta {
margin: 5px 0 5px 0;
}
.widget ul {
padding: 0;
margin: -10px 0 0 0;
}
.widget li {
position: relative;
border-bottom: 1px solid #b5bfc0;
background-image: none;
padding: 10px 0 10px 0;
margin: 0;
}
.widget li:before {
display: none;
}
.widget li:last-child {
border: 0;
}
.widget li a {
position: relative;
display: block;
color: #07292b;
line-height: 1.5em;
text-decoration: none;
padding: 0 15px 0 0;
}
.widget li a:after {
content: '\f054';
position: absolute;
right: 0;
top: 5px;
color: #07292b;
display: inline-block;
font-family: FontAwesome;
font-feature-settings: normal;
font-kerning: auto;
font-language-override: normal;
font-size: inherit;
font-size-adjust: none;
font-stretch: normal;
font-style: normal;
font-synthesis: weight style;
font-variant: normal;
font-weight: normal;
line-height: 1;
text-rendering: auto;
font-size: 15px;
}
.widget form {
padding: 0;
margin: 0;
}
.widget input,
.widget textarea,
.widget select {
font-size: 0.9em;
}
.widget button,
.widget input.submit, 
.widget input[type=submit] {
font-size: 1em;
}

.widget.widget_boxed {
clear: both;
background: #b5bfc0;
padding: 30px 20px;
}
.widget.widget_boxed p:last-child {
margin: 0;
}

.widget.widget_boxed.widget_dark {
clear: both;
color: #e3e3e3;
background: #263a3d;
padding: 30px 20px;
}
.widget.widget_boxed.widget_dark h2.title {
color: #e3e3e3;
}
.widget.widget_boxed.widget_dark h1,
.widget.widget_boxed.widget_dark h3,
.widget.widget_boxed.widget_dark p,
.widget.widget_boxed.widget_dark li,
.widget.widget_boxed.widget_dark a,
.widget.widget_boxed.widget_dark label {
color: #e3e3e3;
}
.widget.widget_boxed.widget_dark input,
.widget.widget_boxed.widget_dark textarea,
.widget.widget_boxed.widget_dark select {
color: #e3e3e3;
border-color: #e3e3e3;
}
.widget.widget_boxed.widget_dark ::-webkit-input-placeholder {
color: #e3e3e3;
}
.widget.widget_boxed.widget_dark :-moz-placeholder { /* Firefox 18- */
color: #e3e3e3;
}
.widget.widget_boxed.widget_dark ::-moz-placeholder {  /* Firefox 19+ */
color: #e3e3e3;
}
.widget.widget_boxed.widget_dark :-ms-input-placeholder {
color: #e3e3e3;
}
.widget.widget_boxed.widget_dark .post.post_textonly {
border-color: #e3e3e3;
}

.widget .post {
width: 100%;
padding: 0;
margin: 0 0 30px 0;
}
.widget .post:last-child {
margin: 0;
}
.widget .post .text {
padding: 20px;
}
.widget .post h3 {
font-size: 1em;
margin: 0;
}
.widget .post h3 a .fa {
font-size: 0.8em;
}
.widget .post h1,
.widget .post h2,
.widget .post h3,
.widget .post h4 {
min-height: 0;
}

.widget .video_list_item {
width: 100%;
padding: 0;
margin: 0;
}
.widget .video_list_item a {
color: #07292b;
}
.widget .video_list_item a:hover,
.widget .video_list_item a:focus {
color: #07292b;
}
.widget .video_list_item a:after {
display: none;
}
.widget .video_list_item .pic a {
padding: 0;
}

.widget.widget_services li a {
font-size: 1.5em;
font-weight: 600;
}
.widget.widget_services li a:after {
top: 14px;
}


/* Post list
....................................................................... */
.post {
display: inline-block;
vertical-align: top;
width: 100%;
background: #fff;
box-sizing: border-box;
border-radius: 4px;
overflow: hidden;
margin: 15px -4px 30px 0%;
}
.post a {
display: block;
color: #07292b !important;
text-decoration: none;
}

.span12 .post {
width: 32%;
margin-left: 2%;
}
.span12 .post:nth-child(3n+1) {
margin-left: 0;
}
.span9 .post {
width: 49%;
margin-left: 2%;
}
.span9 .post:nth-child(2n+1) {
margin-left: 0;
}

.post .pic {
border-radius: 4px 4px 0 0;
}
.post .pic img {
position: relative;
right: 0;
display: block;
width: 100%;
object-fit: cover;
aspect-ratio: 3/2;
max-width: none;
transition: all .2s;
z-index: 2;
-webkit-backface-visibility: hidden;
}
.post .pic a:hover img,
.post .pic a:focus img {
opacity: 0.95;
}

.post .text {
padding: 7.5%;
}
.post h1,
.post h2,
.post h3,
.post h4 {
color: #07292b !important;
min-height: 145px;
margin: 0 0 15px 0;
}
.post h3 a,
.post h2 a,
.post h3 a,
.post h4 a {
color: #07292b !important;
text-decoration: none;
}
.post p {
color: #07292b !important;
margin: 0 0 10px 0;
}
.post p.body {
margin-top: -40px;
}
.post .post_link {
color: #07292b !important;
display: inline-block;
text-decoration: none;
font-size: 1.1em;
font-weight: 500;
margin: 0 !important;
}
.post .post_link .fa {
font-size: 0.7em;
}
.post p:last-child {
margin: 0;
}
@media (max-width: 767px) {
	.post .text {
	padding: 30px 25px;
	}
	.post h1,
	.post h2,
	.post h3,
	.post h4 {
	min-height: 100px;
	}
}


/* Post list - Other layouts
....................................................................... */
.post.post_compact {
padding: 0 0 0 130px;
}
.post.post_compact .pic {
display: inline-block;
vertical-align: top;
max-width: 100px;
padding: 10px;
margin: 0 0 0 -130px;
}
.post.post_compact .text {
display: inline-block;
vertical-align: top;
box-sizing: border-box;
padding: 10px;
}
.post.post_compact h1,
.post.post_compact h2,
.post.post_compact h3,
.post.post_compact h4 {
min-height: 0;
margin: 0 0 2px 0;
}
.post.post_compact p {
margin: 0 0 2px 0;
}
.post.post_textonly {
background: transparent;
border-bottom: 1px solid #07292b;
border-radius: 0;
margin: 0;
}
.post.post_textonly .text {
padding: 20px 0;
}
.post.post_textonly:first-child .text {
padding-top: 0;
}
.post.post_textonly .text a {
color: #07292b;
text-decoration: none;
}
.post.post_textonly .fa {
font-size: 0.7em;
}


/* Post list - Flex layout 
....................................................................... */
.blog_flex .post {
display: block;
width: 100%;
margin-right: 0;
}


/* Posts - Detail page
....................................................................... */
.post_full {
display: block;
max-width: 960px;
border: 0;
padding: 0;
margin: 0 auto;
}
.post_full .pic {
padding: 30px 0;
}
.post_full .pic img {
display: block;
width: 100%;
margin: 0 0 20px 0;
}
.post_full p {
color: #07292b;
margin: 0 0 1.1em 0;
}
.post_full p.powerpress_links {
font-size: 0.9em;
padding: 1em 0;
margin: 0;
}
.post_full .addthis_toolbox {
display: inline-block !important;
}
.post_full p.category {
font-size: 1em;
font-weight: 600;
line-height: 1.4em;
color: #07292b;
margin: 0;
}
.post_full p.category span {
margin: 0 5px 0 0;
}
.post_full p.category a {
display: inline-block;
white-space: nowrap;
color: #07292b;
text-decoration: none;
margin: 5px;
}

.post_full .postmeta {
border-top: 1px solid #263a3d;
padding: 50px 0 0 0;
margin: 50px 0 0 0;
}
.post_full .postmeta .sharing {
padding: 20px 0 0 0;
}


/* Shared elements (author)
....................................................................... */
.post_author {
display: flex;
align-items: center;
background: #fff;
padding: 40px;
margin: 50px 0 20px 0;
}
.post_author figure.pic {
flex: 0 0 100px;
aspect-ratio: 1 / 1;
overflow: hidden;
padding: 0;
margin: 0;
}
.post_author .pic img {
width: 100%;
height: 100% !important;
object-fit: cover;
}
.post_author .text {
flex: 1 1 auto;
padding: 0 0 0 20px;
}
.post_author p {
color: #07292b;
}
.post_author p:last-child {
margin: 0;
}
@media screen and (max-width: 767px) {
	.post_author {
	display: block;
	padding: 25px;
	}
	.post_author figure.pic {
	width: 100px;
	margin: 0 0 20px 0;
	}
	.post_author .text {
	padding: 0;
	}
}

.commentlist li {
list-style: none;
background-image: none;
border-top: 1px solid #e7e7e7;
padding: 15px 0 5px 50px;
margin: 0 0 20px 0;
}
.commentlist li:before {
display: none;
}
.commentlist .avatar {
float: left;
margin-left: -50px;
}
.commentlist li a {
color: #616365;
}
.commentlist li a:hover,
.commentlist li a:focus {
color: #000;
}
.comment-author {
color: #07292b;
}
.comment-meta {
font-size: 0.9em;
color: #07292b;
padding: 10px 0 10px 0;
}
.reply {
font-size: 0.9em;
}
#respond { /* Comments form */
clear: both;
background: #e7e7e7;
padding: 15px;
}
#respond textarea {
width: 96%;
}
#respond a {
color: #07292b;
}


/* Post navigation
....................................................................... */
.navigation {
clear: both;
margin: 20px 0 30px 0;
}
.prev-posts,
.next-posts {
display: inline-block;
width: 50%;
margin: 0 -4px 0 0;
}
.prev-posts {
text-align: right;
}
.prev-posts a,
.next-posts a {
color: #07292b;
font-weight: 600;
text-decoration: none;
}

.wp-pagenavi-container {
clear: both;
padding: 20px 0 20px 0;
}
.wp-pagenavi {
font-size: 0.9em;
padding: 10px 0 0 0;
}
.wp-pagenavi a,
.wp-pagenavi span {
display: inline-block;
color: #07292b;
border-color: #e7e7e7 !important;
border-radius: 0;
}
.wp-pagenavi a:hover,
.wp-pagenavi a:focus,
.wp-pagenavi span.current {
color: #07292b !important;
}


/* Video listings
....................................................................... */
.video_list_item {
display: inline-block;
vertical-align: top;
width: 100%;
background: #fff;
list-style: none;
text-align: left;
border-radius: 4px;
overflow: hidden;
box-sizing: border-box;
padding: 0;
margin: 15px -4px 30px 0;
}
.span12 .video_list_item {
width: 32%;
margin-left: 2%;
}
.span12 .video_list_item:nth-child(3n+1) {
margin-left: 0;
}
.span9 .video_list_item {
width: 49%;
margin-left: 2%;
}
.span9 .video_list_item:nth-child(2n+1) {
margin-left: 0;
}
.video_list_item:before {
display: none;
}
.video_list_item .pic {
position: relative;
border-radius: 4px 4px 0 0;
}
.video_list_item .pic a {
position: absolute;
top: 0;
left: 0;
display: block;
width: 100%;
height: 100%;
background: rgba(255,255,255,0) url(img/play_arrow_small.png) 50% 50% no-repeat;
text-indent: -9999px;
z-index: 11;
transition: all 0.2s;
}
.video_list_item .pic img {
width: 100%;
display: block;
}
.video_list_item .pic a:hover,
.video_list_item .pic a:focus {
background-color: rgba(255,255,255,0.15);
}
.video_list_item .text {
padding: 7.5%;
}
.video_list_item a {
display: block;
color: #07292b !important;
text-decoration: none;
}
.video_list_item h1,
.video_list_item h2,
.video_list_item h3,
.video_list_item h4 {
color: #07292b !important;
min-height: 145px;
margin: 0 0 15px 0;
}
.video_list_item p {
font-size: 1.1em;
font-weight: 400;
margin: 0;
}
.video_list_item p .fa {
font-size: 0.7em;
}
.video_list_item .post_link {
color: #07292b !important;
display: inline-block;
text-decoration: none;
font-size: 1.1em;
font-weight: 500;
margin: 0 !important;
}
@media (max-width: 767px) {
	.video_list_item .text {
	padding: 30px 25px;
	}
	.video_list_item h1,
	.video_list_item h2,
	.video_list_item h3,
	.video_list_item h4 {
	min-height: 100px;
	}
}


.swiper_videos {
padding: 20px 0 0 0;
}
.swiper_videos .swiper-container {
margin-bottom: 20px;
}
.swiper_videos li.swiper-slide {
text-align: center;
}
.swiper-slide .video_list_item {
width: 94% !important;
height: 100%;
margin: 0;
}
.swiper-pagination.swiper-pagination-videos {
width: 33.333%;
text-align: center;
margin: 0 auto;
}
.swiper_videos .more_link,
.swiper_articles .more_link {
width: 33.333%;
text-align: right;
margin: -25px 10px 0 auto;
}
.swiper_videos .more_link a,
.swiper_articles .more_link a {
color: #07292b;
font-weight: 500;
text-decoration: none;
}
.swiper_videos .more_link a .fa,
.swiper_articles .more_link a .fa {
font-size: 0.7em;
}
@media (max-width: 767px) {
	.swiper-pagination.swiper-pagination-videos {
	width: 100%;
	}
	.swiper_videos .more_link,
	.swiper_articles .more_link {
	width: 100%;
	text-align: center;
	margin: 30px auto 0 auto;
	}
}
@media (max-width: 599px) {
	.swiper-slide .video_list_item {
	width: 100% !important;
	}
}

.video_full_player {
background: #fff;
border-radius: 5px;
padding: 30px;
margin: 0 0 30px 0;
}
.video_full_player_inner {
max-width: 800px;
margin: 0 auto;
}


/* Feature listings
....................................................................... */
.feature_list_topstrip {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 145px;
background: #e7e7e7;
}
.section.light .feature_list,
.section.accent .feature_list,
.section.dark .feature_list {
margin: -65px 0 0 0;
}
.feature_list_item {
display: inline-block;
vertical-align: top;
width: 100%;
list-style: none;
text-align: left;
overflow: hidden;
box-sizing: border-box;
padding: 0;
margin: 0 -4px 30px 0;
}
.span12 .feature_list_item {
width: 32%;
margin-left: 2%;
}
.span12 .feature_list_item:nth-child(3n+1) {
margin-left: 0;
}
.span9 .feature_list_item {
width: 49%;
margin-left: 2%;
}
.span9 .feature_list_item:nth-child(2n+1) {
margin-left: 0;
}
.feature_list_item a {
display: block;
color: #07292b;
text-decoration: none;
}
.feature_list_item .pic {
position: relative;
background: #e7e7e7;
border-radius: 4px 4px 0 0;
}
.feature_list_item .pic img {
width: 100%;
display: block;
}
.feature_list_item .pic a:hover,
.feature_list_item .pic a:focus {
background-color: rgba(255,255,255,0.15);
}
.feature_list_item .text {
padding: 10% 10% 0 0;
}
.feature_list_item a {
display: block;
text-decoration: none;
}
.feature_list_item h1,
.feature_list_item h2,
.feature_list_item h3,
.feature_list_item h4 {
margin: 0 0 30px 0;
}
.feature_list_item hr {
padding: 0;
border: 0;
margin: 0 auto 25px auto !important;
}
.feature_list_item p {
font-size: 1.1em;
font-weight: 400;
}
.feature_list_item p.post_link {
color: #3f6e97;
text-decoration: underline;
}
.feature_list_item p .fa {
font-size: 0.7em;
}


/* Testimonial listings (regular)
....................................................................... */
.testimonial .text {
padding: 0 1px;
}
.testimonial p {
font-weight: 600;
}
.testimonial p.name,
.testimonial p.name strong {
font-weight: 400;
}
.testimonial p:last-of-type {
margin: 0;
}
/*.testimonial .text p:first-child:before {
content: '\201C';
display: inline-block;
}
.testimonial .text p:last-of-type:after {
content: '\201D';
display: inline-block;
}*/
.testimonial .company {
padding: 1.1em 0 0 0;
}


/* Testimonial listings (boxed)
....................................................................... */
.testimonial_box {
display: flex;
align-items: flex-start;
background: #fff;
padding: 40px 20px 40px 40px;
}
.testimonial_box .text {
flex: 1 1 auto;
}
.testimonial_box .text p {
color: #263a3d;
font-size: 32px;
font-style: italic;
letter-spacing: 0;
line-height: 1.225em;
text-indent: -0.4em; /* Indent first line */
word-break: keep-all;
white-space: normal;
}
.testimonial_box .company {
flex: 0 0 29%;
box-sizing: border-box;
padding: 10px 0 0 45px;
}
.testimonial_box .company p {
color: #263a3d;
margin: 0 !important;
}
.testimonial_box .company p strong {
font-weight: 500;
}
@media (max-width: 767px) {
	.testimonial_box {
	display: block;
	}
	.testimonial_box .text p {
	font-size: 24px;
	}
	.testimonial_box .company {
	padding: 0;
	}
}

/* Testimonial listings (boxed small)
....................................................................... */
.testimonial_box_small {
background: #fff;
padding: 20px 25px;
margin: 7px 0 0 0;
}
.testimonial_box_small .text p {
color: #263a3d;
font-style: italic;
text-indent: -0.4em; /* Indent first line */
margin: 0 !important;
}
.testimonial_box_small .company {
position: relative;
padding: 0 0 0 15px;
}
.testimonial_box_small .company:before {
content: '-';
position: absolute;
left: 0;
top: 0;
width: 10px;
}
.testimonial_box_small .company p {
margin: 0 !important;
}
.testimonial_box_small .company p br {
display: none;
}


/* Research listings
....................................................................... */
.research {
box-sizing: border-box;
padding: 10px 30px 10px 115px;
margin: 10px -4px 10px 0;
}
.span12 .research,
.span9 .research,
.span8 .research {
display: inline-block;
vertical-align: top;
width: 50%;
}
.span6 .research,
.span4 .research,
.span3 .research {
display: block;
width: 100%;
}
.research .icon {
display: inline-block;
vertical-align: top;
width: 100px;
height: 100px;
margin: 0 10px 0 -115px;
}
.research .text {	
display: inline-block;
vertical-align: top;
width: 100%;
}
.research h4 {

margin-bottom: 10px;
}
.research p {
font-size: 0.9em;
margin-bottom: 10px;
}


/* Swiper controls
....................................................................... */
.swiper-container {
margin-bottom: 0;
}
.swiper-pagination {
position: relative;
top: auto;
}
ul.swiper-wrapper {
align-items: stretch !important;
padding: 0;
margin: 0;
}
.swiper_content ul.swiper-wrapper {
align-items: flex-start !important;
}
li.swiper-slide {
padding: 0;
margin: 0;
}
li.swiper-slide:before {
display: none;
}
.swiper-pagination {
position: relative;
top: auto;
left: auto;
text-align: left;
padding-top: 15px;
}
.swiper-pagination-bullet {
width: 12px;
height: 12px;
background: #07292b;
opacity: 0.33;
margin: 0 12px 0 0;
}
.swiper-pagination-bullet:focus {
transform: scale(1.2);
}
.swiper-pagination-bullet-active {
opacity: 1;
}


/* Content carousel
....................................................................... */
.swiper_content .span6 p {
padding-left: 1px;
padding-right: 1px;
}
.swiper-pagination.swiper-pagination-content {
text-align: center;
margin: 30px 0 0 0;
}


/* Accordion
....................................................................... */
.accordion {
border-bottom: 1px solid #07292b;
}
.accordion_section {
border-top: 1px solid #07292b;
padding: 0;
}
h2.accordion_head {
position: relative;
cursor: pointer;
transition: all 0.2s;
padding: 30px 50% 30px 0;
margin: 0;
transition: all 0.2s;
}
h2.accordion_head:hover,
h2.accordion_head:focus {
opacity: 0.7;
}
h2.accordion_head:after {
content: '\f054';
color: #07292b;
display: inline-block;
vertical-align: middle;
font-family: FontAwesome;
font-feature-settings: normal;
font-kerning: auto;
font-language-override: normal;
font-size: inherit;
font-size-adjust: none;
font-stretch: normal;
font-style: normal;
font-synthesis: weight style;
font-variant: normal;
font-weight: normal;
line-height: 0.1;
text-rendering: auto;
font-size: 15px;
margin: 0 0 0 10px;
}
.accordion_section.on h2.accordion_head:after {
content: '\f078';
}
.accordion_body {
padding: 0 0 50px 0;
}
@media screen and (max-width: 767px) {
	h2.accordion_head {
	padding-right: 0;
	}
}


/* Article multiple 
....................................................................... */
.span12 .multiple_articles {
}
.multiple_articles .article_vt {
display: inline-block;
vertical-align: top;
background: transparent;
border-radius: 0;
margin: 15px -4px 15px 0;
}
.article_vt .pic {
border-radius: 0;
}
.multiple_articles .article_vt .article_text {
padding: 0 0 20px 0;
}
.span12 .multiple_articles .article_vt {
width: 32%;
margin-left: 2%;
}
.span12 .multiple_articles .article_vt:nth-child(3n+1) {
margin-left: 0;
}
.span8 .multiple_articles .article_vt,
.span9 .multiple_articles .article_vt {
width: 49%;
margin-left: 2%;
}
.span8 .multiple_articles .article_vt:nth-child(2n+1),
.span9 .multiple_articles .article_vt:nth-child(2n+1) {
margin-left: 0;
}
@media screen and (max-width: 1023px) {
	.span12 .multiple_articles .article_vt {
	width: 49%;
	margin-left: 2%;
	}
	.span12 .multiple_articles .article_vt:nth-child(3n+1) {
	margin-left: 2%;
	}
	.span12 .multiple_articles .article_vt:nth-child(2n+1) {
	margin-left: 0;
	}
}
@media screen and (max-width: 600px) {
	.span12 .multiple_articles .article_vt,
	.span9 .multiple_articles .article_vt,
	.span8 .multiple_articles .article_vt {
	width: 100% !important;
	margin-left: 0 !important;
	}
}


/* Article carousel 
....................................................................... */
.swiper_articles {
padding: 20px 0 0 0;
}
.swiper_articles .swiper-container {
margin-bottom: 20px;
}
.swiper_articles li.swiper-slide {
}
.swiper-slide .article_vt {
width: 94% !important;
height: 100%;
margin: 0 auto !important;
}
.swiper-slide .article_vt .article_text h1,
.swiper-slide .article_vt .article_text h2,
.swiper-slide .article_vt .article_text h3,
.swiper-slide .article_vt .article_text h4 {
min-height: 75px;
}
.swiper-pagination.swiper-pagination-articles {
width: 33.333%;
text-align: center;
margin: 0 auto;
}
@media (max-width: 767px) {
	.swiper-pagination.swiper-pagination-articles {
	width: 100%;
	}
}
@media (max-width: 599px) {
	.swiper-slide .article_vt {
	width: 100% !important;
	}
}


/* Full width image with text overlay
....................................................................... */
.image_with_text {
position: relative;
z-index: 1;
}
.image_with_text .center {
width: 100% !important;
margin: 0 !important;
}
.image_with_text .pic {
position: absolute;
top: 0;
right: 0;
margin-left: calc(50% - 50vw) !important;
margin-right: calc(50% - 50vw) !important;
width: 100vw !important;
max-width: 100vw !important;
margin-top: -65px;
margin-bottom: -65px;
height: calc(100% + 65px + 65px);
background-position: 100% 5%;
background-repeat: no-repeat;
background-size: cover;
z-index: -2;
}
.image_with_text .text {
width: 60%;
min-height: 110px;
}
.image_with_text .overlay {
position: absolute;
top: 0;
right: 0;
margin-left: calc(50% - 50vw) !important;
margin-right: calc(50% - 50vw) !important;
width: 100vw !important;
max-width: 100vw !important;
margin-top: -65px;
margin-bottom: -65px;
height: calc(100% + 65px + 65px);
background: rgb(38,58,61);
background: linear-gradient(90deg, rgba(38,58,61,0.8) 10%, rgba(38,58,61,0) 75%);
z-index: -1;
}
@media (max-width: 767px) {
	.image_with_text .pic {
	width: 100%;
	height: 300px;
	}
	.image_with_text .pic:after {
	content: '';
	width: 100%;
	height: 75px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: rgb(38,58,61);
	background: linear-gradient(0deg, rgba(38,58,61,1) 50%, rgba(38,58,61,0) 100%);
	}
	.image_with_text .text {
	width: 100%;
	min-height: 0;
	padding: 190px 0 0 0;
	}
	.image_with_text .overlay {
	background: transparent;
	}
}




/* Sticky Sidebar Menu
....................................................................... */
.sticky_container {
/* Outer boundary */
position: relative;
}
.section.sticky_section {
/* All sections within the outer boundary */
position: static;
}
.menu_block {
/* Prevent menu becoming too narrow */
min-width: 290px;
}
.menu_block.sticky {
/* When sticky is active */
z-index: 100;
}
.menu_block ol {
margin: 0 0 30px 0;
}
.menu_block ol li {
opacity: 0.6;
font-size: 18px;
line-height: 1.5em;
font-weight: 500;
padding-left: 35px;
transition: opacity 0.2s;
}
.menu_block ol li.on,
.menu_block ol li:hover {
opacity: 1;
}
.menu_block ol li:before {
width: 35px;
margin-left: -35px;
text-align: center;
margin: 0 0 0 -35px;
}
.menu_block ol li.faq-link:before {
content: "R";
}
.menu_block ol li a {
display: inline-block;
color: #07292b;
text-decoration: none;
}
.menu_block ol li a:focus {
opacity: 1;
text-decoration: underline;
}
.menu_block p {
font-size: 19px;
max-width: 210px;
}
.menu_block p a {
display: block;
position: relative;
max-width: 200px;
padding: 3px 0 3px 37px;
}
.menu_block p a:before {
content: '';
position: absolute;
top: 3px;
left: 0;
background-position: 50% 50%;
background-repeat: no-repeat;
background-size: auto;
background-size: contain;
width: 27px;
height: 27px;
margin: 0 0 0 0;
}
.menu_block p:nth-child(1) a:before {
background-image: url(img/stickymenu-linkicon2.svg);
}
.menu_block p:nth-child(2) a:before {
background-image: url(img/stickymenu-linkicon1.svg);
}
@media screen and (min-width: 1024px) {
	.menu_block.sticky.stickytop {
	position: fixed;
	top: 65px;
	}
	.menu_block.sticky.stickybottom {
	position: absolute;
	top: auto;
	bottom: 65px;
	}
	.section.sticky_section .span8.last {
	/* Force large screen content width to match supplied visual */
	width: calc( 65.5% + 30px);
	}
}
@media screen and (max-width: 1023px) {
	.menu_block.sticky {
	display: block;
	position: absolute;
	width: 100% !important;
	left: -9999px;
	bottom: -9999px;
	text-align: center;
	background: #e7e7e7;
	box-shadow: 0 0 15px rgba(0,0,0,0.2);
	padding: 20px 0 0 0;
	opacity: 0;
	transition: opacity 0.2s ease;
	}
	.menu_block.sticky.stickyfooter {
	position: fixed;
	left: 0;
	bottom: 0;
	}
	.menu_block.sticky.opacity1 {
	opacity: 1;
	}
	.menu_block p {
	display: inline-block;
	width: auto;
	font-size: 20px;
	max-width: none;
	padding: 3px 10px;
	margin: 0 -4px 0 0;
	}
	.menu_block p a {
	max-width: none;
	}
	.menu_block.sticky ol {
	display: none;
	}
}




/* Footer call to action
....................................................................... */
.page-wrap_cta h2,
.page-wrap_cta p {
display: inline-block;
color: #e3e3e3;
padding: 0 5px;
margin: 0;
}
.page-wrap_cta a.cta {
color: #e3e3e3;
background: #373737;
}
.page-wrap_cta a.cta:hover,
.page-wrap_cta a.cta:focus {
color: #434343;
background: #fff;
}



/* Bio page specific customisations
....................................................................... */
body.page-id-15 .section.dark:nth-child(1) {
padding: 45px 0;
}
.bio_stat {
display: inline-block;
vertical-align: top;
width: 31%;
padding: 15px 0;
margin: 0 -4px 0 3.5%;
font-size: 1.5em;
}
.bio_stat:nth-child(3n+1) {
margin-left: 0;
}
.bio_stat br {
display: none;
}
.bio_stat strong {
display: block;
font-size: 80px;
font-weight: 400;
line-height: 80px;
margin: -25px 0 5px 0;
}
.bio_stat em {
font-style: normal;
}
.bio_stat em:after {
content: '\f054';
display: inline-block;
font-family: FontAwesome;
font-feature-settings: normal;
font-kerning: auto;
font-language-override: normal;
font-size: inherit;
font-size-adjust: none;
font-stretch: normal;
font-style: normal;
font-synthesis: weight style;
font-variant: normal;
font-weight: normal;
line-height: 0.1;
text-rendering: auto;
font-size: 0.6em;
padding: 0 0 0 5px;
}
@media screen and (max-width: 1023px) {
	body.page-id-15 .section.dark:nth-child(1) .span12 {
	margin: 0;
	}
	.bio_stat {
	font-size: 1.25em;
	}
	.bio_stat strong {
	display: block;
	font-size: 60px;
	line-height: 60px;
	margin-top: -15px;
	}
}
@media screen and (max-width: 767px) {
	body.page-id-15  #page-wrap_hero {
	box-shadow: 0 0 15px rgba(0,0,0,0.5);
	}
	body.page-id-15 .section .span12 > h2 {
	font-size: 1.5em;
	}
	.bio_stat {
	width: 48.25%;
	}
	.bio_stat:nth-child(3n+1) {
	margin-left: 3.5%;
	}
	.bio_stat:nth-child(2n+1) {
	margin-left: 0;
	}
}
@media screen and (max-width: 599px) {
	body.page-id-15 .large_pic {
	display: flex;
	justify-content: center;
	align-items: center;
	}
	body.page-id-15 .large_pic img {
	height: 200px !important;
	width: auto !important;
	max-width: none;
	}
}
@media screen and (max-width: 549px) {
	.bio_stat {
	display: block;
	width: 100%;
	margin: 0 !important;
	}
}


/* Footer
....................................................................... */
footer p.h3 {
font-size: 1.8em;
line-height: 1.3em;
font-weight: 600;
}
footer a {
color: #07292b;
}
footer p.h3 a {
text-decoration: none;
}
footer p.h4 {
font-size: 1.15em;
font-weight: 400;
}
footer ul:not(.copyright) {
display: inline-block;
vertical-align: top;
width: 33.33%;
padding: 0;
margin: 0 -4px 0 0;
}
footer ul:not(.copyright) li {
display: block;
padding: 0 3% 8px 0;
margin: 0 -4px 0 0;
}
footer li:before {
display: none;
}
footer li a {
text-decoration: none;
}
footer ul.copyright {
padding: 70px 0 0 0;
margin: 0;
}
footer ul.copyright li {
display: inline-block;
vertical-align: top;
font-size: 0.75em;
padding: 0;
margin: 0 5px 0 0;
}


/* Video Modals
....................................................................... */
.videomodal {
display: none;
background: rgba(0,0,0,0.9);
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 9999999999;
}
.videomodal_content {
position: fixed;
top: 4%;
left: 4%;
width: 92%;
height: 92%;
text-align: center;
overflow: hidden;
color: #e3e3e3;
box-sizing: border-box;
margin: 0;
z-index: 99999999999;
float: left;
display: table;
vertical-align: middle;
}
.videomodal .centertop {
display: table-cell;
vertical-align: middle;
}
.modalvideo {
display: block;
}
.videomodal_content iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.videomodal_close {
position: absolute;
top: 15px;
right: 15px;
width: 30px;
height: 30px;
z-index: 999999999999;
color: #e3e3e3;
font-size: 2em;
cursor: pointer;
}
.videomodal_close:hover,
.videomodal_close:focus {
color: #3f6e97;
}
.videomodal_close .text {
display: none;
}
.videomodal .addthis_toolbox {
display: none !important;
}
@media screen and (max-width: 767px) {
	.videomodal_content {
	top: 2.5%;
	left: 2.5%;
	width: 95%;
	height: 95%;
	border: 0;
	margin: 0;
	}
	.videomodal_close {
	top: 2.5%;
	right: 2.5%;
	}
}


/* GM modal
....................................................................... */
#gm_modal {
display: none;
background: rgba(0,0,0,0.9);
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 9999999999;
}
#gm_content {
position: fixed;
top: 50%;
left: 50%;
width: 700px;
height: 540px;
text-align: center;
border: 10px solid #333;
overflow: hidden;
box-sizing: border-box;
border-radius: 5px;
margin: -270px 0 0 -350px;
z-index: 99999999999;
}
#gm_content iframe {
width: 100% !important;
height: 100% !important;
border: 0 !important;
}
#gm_close {
position: absolute;
top: 20px;
right: 20px;
width: 21px;
height: 21px;
background: rgba(255,255,255,1);
border-radius: 50%;
z-index: 999999999999;
cursor: pointer;
}
#gm_close:hover,
#gm_close:focus {
background: rgba(255,255,255,0.8);
}
#gm_close .text {
display: none;
}
#gm_close .line {
position: absolute;
left: 5px;
top: 9px;
display: inline-block;
width: 12px;
height: 3px;
background: #000;
transform-origin: 50% 50%;
transition: all .3s;
}
#gm_close .line1 {
-moz-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
-o-transform:rotate(45deg);
-ms-transform:rotate(45deg);
}
#gm_close .line2 {
-moz-transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
-o-transform:rotate(-45deg);
-ms-transform:rotate(-45deg);
}
@media screen and (max-width: 767px) {
	#gm_content {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
	margin: 0;
	}
}


/* Section color themes
....................................................................... */
.section {
position: relative;
padding: 65px 0;
}
.section.white {
background: #e7e7e7;
}
.section.light {
background: #b5bfc0;
}
.section.dark {
background: #263a3d;
}
.section.accent {
background: #3f6e97;
}

.section.dark,
.section.dark h1,
.section.dark h2,
.section.dark h3,
.section.dark h4,
.section.dark a:not(.cta),
.section.dark a.boldlink:hover,
.section.dark a.boldlink:focus,
.section.dark li:before,
.section.dark label {
color: #e3e3e3;
}
.section.dark .feature_list_item p.post_link {
color: #e7e7e7;
}
.section.dark hr,
.section.dark input,
.section.dark textarea,
.section.dark select {
color: #e3e3e3;
border-color: #e3e3e3;
}
.section.dark a.cta:hover,
.section.dark button:hover,
.section.dark input.submit:hover, 
.section.dark input[type=submit]:hover,
.section.dark a.cta:focus,
.section.dark button:focus,
.section.dark input.submit:focus, 
.section.dark input[type=submit]:focus {
color: #263a3d;
background: #e7e7e7;
}
.section.dark .hs-form-field {
border-bottom: 1px solid #e3e3e3;
}
.section.dark ::-webkit-input-placeholder {
color: #e3e3e3;
}
.section.dark :-moz-placeholder { /* Firefox 18- */
color: #e3e3e3;
}
.section.dark ::-moz-placeholder {  /* Firefox 19+ */
color: #e3e3e3;
}
.section.dark :-ms-input-placeholder {
color: #e3e3e3;
}
.section.dark .post.post_textonly {
border-color: #e3e3e3;
}
.section.dark .post.post_textonly .text a {
color: #e3e3e3 !important;
}
.section.dark .accordion,
.section.dark .accordion_section {
border-color: #e3e3e3;
}
.section.dark h2.accordion_head:after {
color: #e3e3e3;
}
.section.dark .swiper-pagination-bullet {
background: #e3e3e3;
}

.section.accent,
.section.accent h1,
.section.accent h2,
.section.accent h3,
.section.accent h4,
.section.accent h5,
.section.accent h6,
.section.accent a,
.section.accent li:before,
.section.accent a.boldlink:hover,
.section.accent a.boldlink:focus,
.section.accent label {
color: #fff;
}
.section.accent a.cta,
.section.accent button,
.section.accent input.submit, 
.section.accent input[type=submit] {
color: #3f6e97;
background: #fff !important;
}
.section.accent a.cta:hover,
.section.accent button:hover,
.section.accent input.submit:hover, 
.section.accent input[type=submit]:hover,
.section.accent a.cta:focus,
.section.accent button:focus,
.section.accent input.submit:focus, 
.section.accent input[type=submit]:focus {
color: #fff;
background: #263a3d !important;
}
.section.accent .feature_list_item p.post_link {
color: #fff;
}
.section.accent hr,
.section.accent input,
.section.accent textarea,
.section.accent select {
color: #fff;
border-color: #fff;
}
.section.accent .hs-form-field {
border-bottom: 1px solid #fff;
}
.section.accent ::-webkit-input-placeholder {
color: #fff;
}
.section.accent :-moz-placeholder { /* Firefox 18- */
color: #fff;
}
.section.accent ::-moz-placeholder {  /* Firefox 19+ */
color: #fff;
}
.section.accent :-ms-input-placeholder {
color: #fff;
}
.section.accent .post.post_textonly {
border-color: #fff;
}
.section.accent .post.post_textonly .text a {
color: #fff !important;
}
.section.accent .accordion,
.section.accent .accordion_section {
border-color: #fff;
}
.section.accent h2.accordion_head:after {
color: #fff;
}
.section.accent .swiper-pagination-bullet {
background: #fff;
}

/* Remove double padding on consecutive sections */
.section.white + .section.white,
.section.light + .section.light,
.section.accent + .section.accent,
.section.dark + .section.dark {
padding-top: 0;
}


@media screen and (min-width: 1131px) {
	.center {
	max-width: 1300px !important;
	width: 90%;
	}
}


@media screen and (max-width: 1023px) {
	#site-wrapper.show-left #site-canvas {
	-webkit-transform: translateX(300px);
	transform: translateX(300px);
	-o-transform: translateX(300px);
	-ms-transform: translateX(300px);
	box-shadow: inset 0 -10px 10px rgba(0,0,0,0.25);
	position: fixed;
	}
	#site-wrapper.show-left #site-canvas-switchoff {
	opacity: 0.15;
	pointer-events: none;
	-webkit-transition: .3s ease all;
	transition: .3s ease all;
	-ms-transition: .3s ease all;
	}

	.span1,
	.span2,
	.span3,
	.span4,
	.span5,
	.span6,
	.span7,
	.span8,
	.span9,
	.span10,
	.span11,
	.span12 {
	float: none;
	clear: both;
	width: 100%;
	margin-right: 0;
	margin-bottom: 20px;
	}
	.span1.last,
	.span2.last,
	.span3.last,
	.span4.last,
	.span5.last,
	.span6.last,
	.span7.last,
	.span8.last,
	.span9.last,
	.span10.last,
	.span11.last {
	margin-bottom: 0;
	}

	.center {
	width: 88%;
	padding: 0;
	margin: 0 0 0 6%;
	}
	.sidebar {
	padding-top: 30px;
	}
	
	.logo {
	width: 50%;
	}
	#header_tools {
	width: 50%;
	}
	.toggle_navi {
	display: block;
	}
	#topnavi,
	#stickynavi ul {
	display: none;
	}
	
	.span12 .post {
	width: 49%;
	margin-left: 2%;
	}
	.span12 .post:nth-child(3n+1) {
	margin-left: 2%;
	}
	.span12 .post:nth-child(2n+1) {
	margin-left: 0;
	}
	.blog_feature .post:first-child {
	width: 100%;
	}
	
	.span12 .video_list_item {
	width: 49%;
	margin-left: 2%;
	}
	.span12 .video_list_item:nth-child(3n+1) {
	margin-left: 2%;
	}
	.span12 .video_list_item:nth-child(2n+1) {
	margin-left: 0;
	}
	
	.span12 .feature_list_item {
	width: 49%;
	margin-left: 2%;
	}
	.span12 .feature_list_item:nth-child(3n+1) {
	margin-left: 2%;
	}
	.span12 .feature_list_item:nth-child(2n+1) {
	margin-left: 0;
	}
	
	.section p:last-of-type {
	margin: 0 0 1.1em 0;
	}
	
	footer #footer_navi ul {
	width: 100%;
	text-align: center;
	}
	footer #footer_navi li {
	display: inline-block;
	width: auto;
	padding: 5px;
	}
	footer #footer_navi li.title {
	display: block;
	}
	footer #footer_bio {
	text-align: center;
	padding-top: 20px;
	margin-bottom: 50px;
	}
	footer #footer_contact {
	text-align: center;
	margin-bottom: 30px;
	}
	footer .row.copyright,
	footer .row.copyright .textright {
	text-align: center;
	}
}


@media screen and (min-width: 767px) {

	.blog_feature .post:first-child {
	position: relative;
	width: 100%;
	}
	.blog_feature .post:first-child .pic {
	margin: 0;
	}
	.blog_feature .post:first-child .text {
	position: absolute;
	bottom: 0;
	left: 1.1%;
	width: 97.75%;
	z-index: 11;
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 40%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.8) 40%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.8) 40%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#cc000000',GradientType=0 ); /* IE6-9 */
	box-sizing: border-box;
	padding: 40px 30px 20px 30px;
	}
	.blog_feature .post:first-child h4 a,
	.blog_feature .post:first-child p,
	.blog_feature .post:first-child .meta a,
	.blog_feature .post:first-child a.post_link:hover,
	.blog_feature .post:first-child a.post_link:focus {
	color: #e3e3e3;
	}
	.blog_feature .post:first-child p.category a {
	color: #434343;
	}
	.blog_feature .post:first-child p.category a:hover,
	.blog_feature .post:first-child p.category a:focus {
	color: #e3e3e3;
	background: #999;
	}

}

@media screen and (min-width: 1024px) {

	.blog_feature .post:first-child {
	position: relative;
	width: 66.666%;
	}
	
}


@media screen and (max-width: 767px) {

	#wpadminbar {
	position: fixed;
	}
	#page-wrap_header {
	position: fixed;
	padding: 20px 0;
	}
	#page-wrap_header + #page-wrap_hero,
	#page-wrap_header + .page-wrap_content {
	margin-top: 80px;
	}
	.logo img {
	max-width: 200px;
	}

	p,
	.page-wrap_content li {
	font-size: 0.95em;
	}
	.page-wrap_content li p,
	.page-wrap_content li ul li {
	font-size: 1em;
	}
	h1,
	#hero h1,
	#home_hero h1,
	#hero_specialist_row h1 {
	font-size: 1.6em;
	}
	h1.caps {
	font-size: 2em;
	}
	h2,
	h1.h2 {
	font-size: 1.3em;
	}
	h2.oversize {
	font-size: 1.5em;
	}
	h2.title {
	font-size: 1.3em;
	}
	h3,
	p.h3 {
	font-size: 1.2em;
	}
	h4,
	p.h4 {
	font-size: 1em;
	}
	.page-wrap_content img.alignleft,
	.page-wrap_content img.alignright {
	max-width: 120px;
	}
	.wp-caption.alignleft,
	.wp-caption.alignright {
	width: 100% !important;
	margin-bottom: 1.5em;
	text-align: center;
	padding-top: 5px;
	}
	a.cta {
	font-size: 0.85em;
	padding: 6px 10px;
	}
	a.cta.cta_big {
	font-size: 1.1em;
	padding: 10px 15px;
	}
	
	#header_tools {
	vertical-align: middle;
	}
	.toggle_navi a {
	padding: 10px 0;
	}
	#header_contact {
	display: none;
	}

	.research {
	display: block !important;
	width: 100% !important;
	padding-right: 0;
	margin-right: 0;
	}
	
	.page-wrap_cta {
	padding: 50px 0;
	}
	.page-wrap_cta h2,
	.page-wrap_cta p {
	display: block;
	}
	.page-wrap_cta h2 {
	margin-bottom: 15px;
	}
	
	footer p.h3 {
 	font-size: 1.3em;
	}
	footer ul:not(.copyright) {
	display: block;
	width: 100%;
	margin: 10px 0;
	}
	
	.text_columns {
	columns: 1;
	column-gap: 0;
	}

}


@media screen and (max-width: 600px) {

	.match_height {
		height: auto !important;
	}

	.viewall_link h1,
	.viewall_link h2,
	.viewall_link h3,
	.viewall_link h4 {
	padding-right: 0;
	}
	p.viewall {
	position: relative;
	right: auto;
	top: auto;
	}

	.span12 .post,
	.span9 .post {
	width: 100% !important;
	margin-left: 0 !important;
	}
	.blog_feature .post:first-child {
	width: 100%;
	}
	
	.testimonial .company_left,
	.testimonial .company_right {
	display: block;
	width: auto;
	text-align: left;
	margin: 5px 0;
	}
	
	.feature_list_item,
	.span12 .feature_list_item,
	.span9 .feature_list_item {
	width: 100%;
	padding: 0;
	margin: 0;
	}
	
}


@media screen and (max-width: 479px) {

	.video_list_item,
	.span9 .video_list_item {
	width: 100%;
	padding: 0;
	}
	
}
