@charset "utf-8";
/* Default stylesheet - developed by Bull Marketing 2024 */

/* Reset */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var,
b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure,  footer, header, 
hgroup, menu, nav, section, summary, time, mark, audio, video {margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}
body { line-height:1;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
nav ul {list-style:none;}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after, q:before, q:after {content:''; content:none;}
a {margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent;}
ins {text-decoration:none;}
del {text-decoration: line-through;}
abbr[title], dfn[title] {border-bottom:1px dotted; cursor:help;}
table {border-collapse:collapse; border-spacing:0;}
:focus {outline: none;}
hr {display:block; height:1px; border:0; margin:1em 0; padding:0;}
input, select {vertical-align:middle;}
html {scroll-behavior: smooth;}

/* Gimme some fonts */
@font-face {font-family: "Gilroy W00 UltraLight"; src: url("../fonts/Gilroy-W00-UltraLight.woff2") format("woff2"), url("../fonts/Gilroy-W00-UltraLight.woff") format("woff");}
@font-face {font-family: "Gilroy W00 Thin"; src: url("../fonts/Gilroy-W00-Thin.woff2") format("woff2"), url("../fonts/Gilroy-W00-Thin.woff") format("woff");}
@font-face {font-family: "Gilroy W00 Thin Italic"; src: url("../fonts/Gilroy-W00-Thin-Italic.woff2") format("woff2"), url("../fonts/Gilroy-W00-Thin-Italic.woff") format("woff");}
@font-face {font-family: "Gilroy W00 Light"; src: url("../fonts/Gilroy-W00-Light.woff2") format("woff2"), url("../fonts/Gilroy-W00-Light.woff") format("woff");}
@font-face {font-family: "Gilroy W00 SemiBold"; src: url("../fonts/Gilroy-W00-SemiBold.woff2") format("woff2"), url("../fonts/Gilroy-W00-SemiBold.woff") format("woff");}
@font-face {font-family: "Gilroy W00 Bold"; src: url("../fonts/Gilroy-W00-Bold.woff2") format("woff2"), url("../fonts/Gilroy-W00-Bold.woff") format("woff");}
@font-face {font-family: "Gilroy W00 Regular"; src: url("../fonts/Gilroy-W00-Regular.woff2") format("woff2"), url("../fonts/Gilroy-W00-Regular.woff") format("woff");}
@font-face {font-family: "Gilroy W00 Regular Italic"; src: url("../fonts/Gilroy-W00-Regular-Italic.woff2") format("woff2"), url("../fonts/Gilroy-W00-Regular-Italic.woff") format("woff");}
@font-face {font-family: "Gilroy W00 Medium"; src: url("../fonts/Gilroy-W00-Medium.woff2") format("woff2"), url("../fonts/Gilroy-W00-Medium.woff") format("woff");}
@font-face {font-family: "Gilroy W00 Medium Italic"; src: url("../fonts/Gilroy-W00-Medium-Italic.woff2") format("woff2"), url("../fonts/Gilroy-W00-Medium-Italic.woff") format("woff");}
@font-face {font-family: "Gilroy W00 Heavy"; src: url("../fonts/Gilroy-W00-Heavy.woff2") format("woff2"), url("../fonts/Gilroy-W00-Heavy.woff") format("woff");}

/* Set some variables */
:root {
  --white: #ffffff;
	--blue: #1a99d9;
	--black: #000000;
	--pink: #bf0c6e;
	--light-grey: #e5e5e7;
	--dark-grey: #050a10;
	--heavy-font: 'Gilroy W00 Heavy', sans-serif;;
	--title-font: 'Gilroy W00 Bold', sans-serif;;
	--heading-font: 'Gilroy W00 SemiBold', sans-serif;;
	--copy-font: 'Gilroy W00 Regular', sans-serif;;
	--light-font: 'Gilroy W00 Light', sans-serif;;
	--lighter-font: 'Gilroy W00 UltraLight', sans-serif;;
	--awesome-font: "Font Awesome 5 Free";
}

/* Begin styles */
a {color: var(--blue); text-decoration: none; transition: all .25s ease-in-out;}
a:hover {color: var(--pink);}

body {font-size: 1em; font-family: var(--copy-font); color: var(--white);}

main {float: left; width: 100%; height: 1145px; position: fixed; z-index: 10; top: 0px; left: 0px;}
main .homepage-banners {position: absolute; top: 0px; left: 0px; width: 100%;}
main .homepage-banners div img {min-width: 100%; width: auto; height: auto; min-height: 100vh;}

header {float: left; width: 100%; height: 108px; position: fixed; z-index: 1000; background: rgb(0,0,0); background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.85) 45%);}
header .logo {float: left; width: 263px; margin-right: 130px; height: 68px; padding: 20px 0;}
header .logo img {width: auto; height: 68px;}

header nav {float: left; width: calc(100% - 742px); height: 108px;}
header nav ul.main-nav {float: left; width: 100%;}
header nav ul.main-nav li {font-size: 1.0em; position: relative; display: inline-block; float: left;}
header nav ul.main-nav li.desktop-hide {display: none;}
header nav ul.main-nav li a {display: block; position: relative; width: auto; z-index: 10; height: 70px; color: var(--white); padding: 50px 25px 0 25px;}
header nav ul.main-nav li a span {position: absolute; height: 3px; width: 0%; top: 75px; left: 25px; transition: all .25s ease-in-out;}
header nav ul.main-nav li a:hover {color: var(--white);}
header nav ul.main-nav li a:hover span {width: calc(100% - 50px); background: var(--white);}
header nav ul.main-nav li ul {float: left; display: none; position: absolute; z-index: 100; margin-top: -30px; left: 25px; border: 1px solid var(--white); background: rgba(5,10,16,0.8);}
header nav ul.main-nav li ul li {float: left; font-size: 1.0em; display: block; width: 100%; border-bottom: 1px solid var(--white);}
header nav ul.main-nav li ul li:last-child {border-bottom: none;}
header nav ul.main-nav li ul li a {display: block; white-space: nowrap; position: relative; height: 28px; color: var(--white); padding: 12px 35px 0 25px;}
header nav ul.main-nav li ul li a span {display: none;}
header nav ul.main-nav li ul li a:hover {color: var(--blue);}
header nav ul.main-nav li ul li a:hover span {display: none;}
header nav ul.main-nav li:hover ul {display: block;}
header nav ul.main-nav li:hover ul li ul {display: none;}

header nav ul.main-nav li ul li ul {float: left; display: none; position: absolute; z-index: 100; margin-top: -1px; top: 0; left: 100%; border-bottom: 1px solid var(--white); background: rgba(5,10,16,0.8);}
header nav ul.main-nav li ul li ul li {float: left; font-size: 1.0em; display: block; width: 100%; border-bottom: 1px solid var(--white);}
header nav ul.main-nav li ul li ul li:last-child {border-bottom: none;}
header nav ul.main-nav li ul li ul li a {display: block; white-space: nowrap; position: relative; height: 28px; color: var(--white); padding: 12px 35px 0 25px;}
header nav ul.main-nav li ul li ul li a span {display: none;}
header nav ul.main-nav li ul li ul li a:hover {color: var(--blue);}
header nav ul.main-nav li ul li ul li a:hover span {display: none;}
header nav ul.main-nav li ul li:hover ul {display: block;}


header nav a.toggle {display: none;}

header .social {float: right; height: 28px; padding: 40px 0 40px 38px;}
header .social ul.social-links {float: left; margin-top: 8px;}
header .social ul.social-links li {display: inline-block;}
header .social ul.social-links li a {display: block; padding: 0 9px; font-size: 1.0em;}
header .social ul.social-links li a:hover {color: var(--white);}
header .social a.btn {float: left; border: 2px solid #ffffff; margin-left: 20px; padding: 8px 30px; font-size: 0.9em; color: var(--white); text-transform: uppercase;}
header .social a.btn:hover {border: 2px solid #ffffff; color: var(--blue); background: var(--white);}

header.scroll {height: 85px; background: var(--dark-grey);}
header.scroll .logo {height: 45px;}
header.scroll .logo img {height: 45px;}
header.scroll nav {height: 85px;}
header.scroll nav ul.main-nav li a {height: 50px; padding: 35px 25px 0 25px;}
header.scroll nav ul.main-nav li a span {top: 57px;}
header.scroll nav ul.main-nav li ul {margin-top: -15px; background: var(--dark-grey);}
header.scroll nav ul.main-nav li ul li a {height: 28px; padding: 12px 35px 0 25px;}
header.scroll nav ul.main-nav li ul li ul {margin-top: -1px;}
header.scroll .social {padding: 27px 0 0 38px;}

section.banner {float: left; width: 100%; height: calc(100vh - 108px); margin-top: 108px; z-index: 100; position: fixed; background: url("../images/banner-icon.png") no-repeat center top;}
section.banner article {width: 100%; max-width: calc(90% - 28px); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); margin-top: -90px;}
section.banner article div.first-line {width: 100%; font-size: 65px; font-family: var(--heavy-font); text-transform: uppercase; letter-spacing: 5px; line-height: 80%; color: var(--white); text-align: center; text-shadow: /*left*/-4px 0px 25px rgba(0,0,0,0.5), /*right*/4px 0px 25px rgba(0,0,0,0.5);}
section.banner article div.last-line {width: 100%; font-size: 150px; font-family: var(--heavy-font); text-transform: uppercase; letter-spacing: 5px; line-height: 90%; color: rgba(255,255,255,0.3); text-align: center; -webkit-text-fill-color: none; -webkit-text-stroke: 3px var(--white);}
section.banner article .button {width: 100%; display: block; position: absolute; bottom: -220px;}
section.banner article .button a {width: 50px; height: 47px; padding: 23px 0 0 20px; border: 1px solid var(--white); border-radius: 50%; display: block; margin: 0 auto 20px auto;}
section.banner article .button a .faux-arrow {width: 20px; height: 20px; border: 1px solid var(--white); border-top: none; border-left: none; transform: rotate(-45deg); transition: all .25s ease-in-out;}
section.banner article .button a:hover {background: rgba(5,10,16,0.8);}
section.banner article .button a:hover .faux-arrow {margin-left: 3px;}
section.banner article .button p {font-size: 1.0em; font-family: var(--lighter-font); text-transform: uppercase; color: var(--white); text-align: center;}

section.intro {float: left; width: 100%; border-top: 6px solid var(--white); background: url("../images/bg-intro.png") no-repeat center center var(--dark-grey); position: relative; margin-top: 100vh; z-index: 500;}
section.intro article {width: 900px; max-width: 100%; margin: 0 auto; text-align: center;}
section.intro article h1 {font-family: var(--copy-font); font-size: 1.6em; line-height: 130%; font-weight: 400; padding-bottom: 25px; text-align: center;}
section.intro article p {font-family: var(--copy-font); font-size: 1.0em; line-height: 145%; width: 66%; padding: 0 17% 25px 17%; font-weight: 400; text-align: center;}
section.intro article a.btn {border: 1px solid var(--white); width: auto; display: inline-block; margin: 0 auto 25px auto; padding: 15px 50px; font-size: 1.0em; color: var(--white); text-transform: uppercase;}
section.intro article a.btn:hover {border: 1px solid var(--white); color: var(--blue); background: var(--white);}

section.services {float: left; width: 100%; border-top: 6px solid var(--white); border-bottom: 6px solid var(--white); background: var(--white); position: relative; z-index: 500;}
section.services .flex-services {gap: 6px; flex-wrap: wrap;}
section.services article {width: calc(33.3% - 4px); overflow: hidden; padding: 22% 0 0 0; position: relative;}
section.services article .box-inner {position: absolute; top: 0px; left: 0px; height: 100%; width: 100%;}
section.services article .box-inner img {position: absolute; top: 0px; left: 0px; width: 100%; height: auto; transition: all .25s ease-in-out;}
section.services article:hover .box-inner img {transform: scale(1.1);}
section.services article .box-inner .title {position: absolute; bottom: 0px; left: 0px; width: 100%; height: 50%; background: rgb(0,0,0); background: linear-gradient(0deg, rgba(0,0,0,0.75) 40%, rgba(0,0,0,0) 100%);}
section.services article a .box-inner .title h2 {font-family: var(--light-font); font-size: 1.6em; line-height: 130%; font-weight: 400; position: absolute; bottom: 25px; left: 0px; width: 100%; text-align: center; color: var(--white);}
section.services article a .box-inner .title h2::after {font-family: var(--awesome-font); font-weight: 900; content: "\f054"; padding-left: 8px;}
section.services article:hover a .box-inner .title h2::after {padding-left: 11px; margin-right: -3px;}

section.clients {float: left; width: 100%; background: url("../images/bg-client-logo.png") no-repeat center center var(--dark-grey); position: relative; z-index: 200;}
.internal section.clients {border-top: 6px solid var(--white);}
section.clients article {width: 100%;}
section.clients article h2 {font-family: var(--copy-font); font-size: 1.6em; line-height: 130%; font-weight: 400; padding-bottom: 25px; text-align: center;}
section.clients article p {font-family: var(--copy-font); font-size: 1.0em; line-height: 145%; padding-bottom: 25px; font-weight: 400; text-align: center;}
section.clients article ul {text-align: center; list-style: none; margin-bottom: 25px;}
section.clients article ul li {display: inline-block; font-family: var(--lighter-font); font-size: 1.0em; line-height: 145%; padding: 0 10px 0 20px; position: relative;}
section.clients article ul li::before {content: "•"; font-size: 1.5em; color: var(--blue); position: absolute; left: 0px;}
section.clients article ul li:first-child::before {content: none;}
section.clients .clients-carousel {position: relative;}
section.clients .clients-carousel .slick-track {display: flex; gap: 50px; justify-content: center; align-content: center; align-items: center;}
section.clients .clients-carousel div.image {display: flex; justify-content: center; filter: brightness(0) invert(1); width: auto; max-width: 192px; height: auto;}
section.clients .clients-carousel button {width: 55px; height: 55px; background: none; border: none; cursor: pointer; outline: none;}
section.clients .clients-carousel button i {font-size: 1.9em; color: var(--white); transition: all .25s ease-in-out;}
section.clients .clients-carousel button:hover i {color: var(--blue);}
section.clients .clients-carousel button.asset-prev {position: absolute; top: 50%; left: -50px; transform: translateY(-50%);}
section.clients .clients-carousel button.asset-next {position: absolute; top: 50%; right: -50px; transform: translateY(-50%);}

/* Internal page layouts */
section.internal-banner {float: left; width: 100%; overflow: hidden; min-height: 750px; z-index: 100; position: fixed;}
section.internal-banner .image {position: absolute; overflow: hidden; top: 0px; left: 0px; width: 100%; height: 100%;}
section.internal-banner .image img {position: absolute; top: 0px; left: 0px; width: 100%; height: auto;}
section.internal-banner article {width: 100%; max-width: 90%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
section.internal-banner article div.first-line {width: 100%; font-size: 65px; font-family: var(--heavy-font); text-transform: uppercase; letter-spacing: 5px; line-height: 80%; color: var(--white); text-align: center; text-shadow: /*left*/-4px 0px 25px rgba(0,0,0,0.5), /*right*/4px 0px 25px rgba(0,0,0,0.5);}
section.internal-banner article div.last-line {width: 100%; font-size: 150px; font-family: var(--heavy-font); text-transform: uppercase; letter-spacing: 5px; line-height: 90%; color: rgba(255,255,255,0.3); text-align: center; -webkit-text-fill-color: none; -webkit-text-stroke: 3px var(--white);}
section.internal-banner article .button {width: 100%; display: block; position: absolute; bottom: -220px;}
section.internal-banner article .button a {width: 50px; height: 47px; padding: 23px 0 0 20px; border: 1px solid var(--white); border-radius: 50%; display: block; margin: 0 auto 20px auto;}
section.internal-banner article .button a .faux-arrow {width: 20px; height: 20px; border: 1px solid var(--white); border-top: none; border-left: none; transform: rotate(-45deg); transition: all .25s ease-in-out;}
section.internal-banner article .button a:hover {background: rgba(5,10,16,0.8);}
section.internal-banner article .button a:hover .faux-arrow {margin-left: 3px;}
section.internal-banner article .button p {font-size: 1.0em; font-family: var(--lighter-font); text-transform: uppercase; color: var(--white); text-align: center;}

div.internal {float: left; width: 100%; overflow: hidden; position: relative; z-index: 200; margin-top: 750px; background: var(--white);}
section.content-area {float: left; width: 100%; background: url("../images/bg-content-area.png") no-repeat center center; border-top: 6px solid var(--white);}
section.content-area.dark {background-color: var(--dark-grey); color: var(--white);}
section.content-area.light {background-color: var(--light-grey); color: var(--black);}
section.content-area.dark a {color: var(--pink);}
section.content-area.dark a:hover {color: var(--blue);}
section.content-area article h2 {font-family: var(--copy-font); font-size: 2.0em; line-height: 120%; font-weight: 400; padding-bottom: 25px; text-transform: uppercase;}
section.content-area article h3 {font-family: var(--copy-font); font-size: 1.3em; line-height: 130%; font-weight: 400; padding-bottom: 25px;}
section.content-area article h4 {font-family: var(--copy-font); font-size: 1.1em; line-height: 150%; font-weight: 400; padding-bottom: 25px;}
section.content-area article p {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; font-weight: 400; padding-bottom: 25px;}
section.content-area article ul {list-style: none; margin-bottom: 25px;}
section.content-area article ul li {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; padding: 0 0 0 20px; position: relative;}
section.content-area article ul li::before {content: "•"; font-size: 1.5em; position: absolute; left: 0px;}
section.content-area article ul li ul {margin-bottom: 0px;}
section.content-area article img {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); height: auto; margin-bottom: 25px;}
section.content-area article img.alignnone {float: left; width: auto; max-width: 100%; border: none; height: auto; margin-bottom: 25px;}
section.content-area article img.alignleft {float: left; width: auto; max-width: 100%; border: none; height: auto; margin-bottom: 25px; margin-right: 25px;}
section.content-area article img.alignright {float: right; width: auto; max-width: 100%; border: none; height: auto; margin-bottom: 25px; margin-left: 25px;}
section.content-area article img.aligncenter {float: none; width: auto; max-width: 100%; display: block; border: none; height: auto; margin: 0 auto 25px auto;}
section.content-area article video {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); margin-bottom: 25px;}
section.content-area article iframe {float: left; width: auto; max-width: 100%; margin-bottom: 25px;}
section.content-area article a.btn {width: auto; display: inline-block; margin: 0 auto; padding: 11px 30px; font-size: 1.0em; text-transform: uppercase;}
section.content-area.dark article a.btn {border: 1px solid var(--white); color: var(--white);}
section.content-area.dark article a.btn:hover {border: 1px solid var(--white); color: var(--black); background: var(--white);}
section.content-area.light article a.btn {border: 1px solid var(--black); color: var(--black);}
section.content-area.light article a.btn:hover {border: 1px solid var(--black); color: var(--white); background: var(--black);}
section.content-area .form-container {float: left; width: calc(100% - 50px); padding: 25px; background: rgba(255,255,255,0.6); border-radius: 5px;}
section.content-area article ul.contact-methods {list-style: none; margin-bottom: 25px;}
section.content-area article ul.contact-methods li {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; padding: 0 0 10px 30px; position: relative;}
section.content-area article ul.contact-methods li::before {content: none;}
section.content-area article ul.contact-methods li i {font-size: 1.2em; position: absolute; left: 0px; top: 3px; color: var(--pink);}

section.content-area.dark article ul li::before {color: var(--pink);}
section.content-area.light article ul li::before {color: var(--blue);}
section.content-area .flex {display: flex; flex-wrap: nowrap; align-content: center; justify-content: flex-start;}
section.content-area .flex .column aside {float: left; width: 100%; height: 100%; overflow: hidden; position: relative;}
section.content-area .flex .column aside img {width: auto; height: auto; min-width: 100%; min-height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
section.content-area .block .column aside {float: left; width: 100%; height: auto; padding: 100% 0 0 0; border: 3px solid var(--white); margin: 45px 0; overflow: hidden; position: relative;}
section.content-area .block .column aside img {width: 100%; height: 100%; position: absolute; top: 0; left: 0;}
section.content-area .block .column aside img.hover {opacity: 0;}
section.content-area .block .column aside img.default {opacity: 1;}
section.content-area .block .column aside:hover img.hover {opacity: 1;}
section.content-area .block .column aside:hover img.default {opacity: 0;}

section.case-studies {float: left; width: 100%; background: url("../images/bg-content-area.png") no-repeat center center var(--light-grey); position: relative; border-top: 6px solid var(--white);}
section.case-studies article.intro h2 {font-family: var(--copy-font); font-size: 2.0em; line-height: 120%; font-weight: 400; padding-bottom: 25px; text-transform: uppercase; text-align: center; color: var(--black);}
section.case-studies article.intro p {font-family: var(--copy-font); font-size: 1.2em; line-height: 155%; padding-bottom: 25px; font-weight: 400; color: var(--black); text-align: center;}
section.case-studies .flex {display: flex; flex-wrap: nowrap; align-content: center; justify-content: flex-start; border-bottom: 3px solid var(--white); background: url("../images/icon-fan-only-200.png") no-repeat center center var(--dark-grey);}
section.case-studies .flex .column {width: 50%;}
section.case-studies .flex .column aside {float: left; width: 100%; height: 100%; overflow: hidden; position: relative;}
section.case-studies .flex .column aside img {width: auto; height: auto; min-width: 100%; min-height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
section.case-studies .flex .column article {float: left; width: calc(100% - 120px); padding: 60px;}
section.case-studies .flex article.overview h3 {font-family: var(--copy-font); font-size: 1.5em; line-height: 130%; font-weight: 400; padding-bottom: 25px;}
section.case-studies .flex article.overview p {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; padding-bottom: 25px; font-weight: 400;}
section.case-studies .flex article.overview a.btn {width: auto; display: inline-block; border: 1px solid var(--white); color: var(--white); padding: 11px 30px; font-size: 1.0em; text-transform: uppercase;}
section.case-studies .flex article.overview a.btn:hover {border: 1px solid var(--white); color: var(--black); background: var(--white);}
section.case-studies .flex-1212cl .column:first-child {order: 2;}
section.case-studies .flex-1212cr article.overview h3 span:first-child {border-bottom: 3px solid var(--pink);}
section.case-studies .flex-1212cl article.overview h3 span:first-child {border-bottom: 3px solid var(--blue);}

section.testimonials {float: left; width: 100%; background: url("../images/bg-client-logo.png") no-repeat center center var(--dark-grey); position: relative; z-index: 200;}
section.testimonials article {width: 100%;}
section.testimonials article h2 {font-family: var(--copy-font); font-size: 2.0em; line-height: 120%; font-weight: 400; padding-bottom: 25px; text-transform: uppercase; text-align: center; color: var(--white);}
section.testimonials article h3 {font-family: var(--copy-font); font-size: 1.5em; line-height: 130%; font-weight: 400; padding-bottom: 25px; text-align: center; color: var(--white);}
section.testimonials article p {font-family: var(--copy-font); font-size: 1.0em; line-height: 155%; padding-bottom: 25px; font-weight: 400; color: var(--white); text-align: center;}
section.testimonials aside.testimonial-quotes {display: block; margin: 25px auto 0 auto; border-top: 1px solid var(--white); padding: 25px 25px 0 25px; width: calc(80% - 50px); text-align: center;}
section.testimonials aside.testimonial-quotes p {font-family: var(--copy-font); font-size: 1.2em; line-height: 140%; font-weight: 400; padding: 0 25px 25px 25px; color: var(--white); font-style: italic;}
section.testimonials aside.testimonial-quotes img {display: block; margin: 0 auto 45px auto; width: auto; max-width: 200px; height: auto;}
section.testimonials aside.testimonial-quotes ul.slick-dots {list-style: none;}
section.testimonials aside.testimonial-quotes ul.slick-dots li {display: inline-block; margin: 0 3px; cursor: pointer; height: 9px; width: 9px; background: var(--white); border-radius: 50%; border: none;}
section.testimonials aside.testimonial-quotes ul.slick-dots li.slick-active {background: var(--blue);}
section.testimonials aside.testimonial-quotes ul.slick-dots li button {display: none;}

/* Services Child Page Additions */
section.services-intro {float: left; width: 100%; background: url("../images/bg-content-area.png") no-repeat center center var(--light-grey); color: var(--black); border-top: 6px solid var(--white);}
section.services-intro article {float: left; width: 100%; text-align: center;}
section.services-intro article h1 {font-family: var(--copy-font); font-size: 2.0em; line-height: 120%; font-weight: 400; padding-bottom: 25px; text-transform: uppercase;}
section.services-intro article h2 {font-family: var(--copy-font); font-size: 2.0em; line-height: 120%; font-weight: 400; padding-bottom: 25px; text-transform: uppercase;}
section.services-intro article h3 {font-family: var(--copy-font); font-size: 1.3em; line-height: 130%; font-weight: 400; padding-bottom: 25px;}
section.services-intro article h4 {font-family: var(--copy-font); font-size: 1.1em; line-height: 150%; font-weight: 400; padding-bottom: 25px;}
section.services-intro article p {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; font-weight: 400; padding-bottom: 25px;}
section.services-intro article ul {list-style: none; margin-bottom: 25px;}
section.services-intro article ul li {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; padding: 0 0 0 20px; position: relative;}

/* Different flex layouts */
/* Two thirds content left, one third image right */
section.content-area .flex-2313 .column {width: 33.33%;}
section.content-area .flex-2313 .column:first-child {order: 2;}
section.content-area .flex-2313 .column:last-child {flex-grow: 2;}
section.content-area .flex-2313 .column article {float: left; width: 80%; padding: 45px 0 45px 20%; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.content-area .flex-2313 .column article .content {padding-right: 50px; flex: 1 1 0;}

/* Two thirds content right, one third image left */
section.content-area .flex-1323 .column {width: 33.33%;}
section.content-area .flex-1323 .column:last-child {flex-grow: 2;}
section.content-area .flex-1323 .column article {float: left; width: 80%; padding: 45px 20% 45px 0; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.content-area .flex-1323 .column article .content {padding-left: 50px; flex: 1 1 0;}

/* One half content right, one half image left */
section.content-area .flex-1212cr .column {width: 50%;}
section.content-area .flex-1212cr .column article {float: left; width: 80%; padding: 45px 20% 45px 0; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.content-area .flex-1212cr .column article .content {padding-left: 50px; flex: 1 1 0;}

/* One half image right, one half content left */
section.content-area .flex-1212cl .column {width: 50%;}
section.content-area .flex-1212cl .column:first-child {order: 2;}
section.content-area .flex-1212cl .column article {float: left; width: 80%; padding: 45px 0 45px 20%; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.content-area .flex-1212cl .column article .content {padding-right: 50px; flex: 1 1 0;}

/* One half content left one half content right */
section.content-area .flex-1212 .column {width: 50%;}
section.content-area .flex-1212 .column article {float: left; width: 100%; padding: 45px 0; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.content-area .flex-1212 .column article:first-child .content {padding-right: 50px; flex: 1 1 0;}
section.content-area .flex-1212 .column article:last-child .content {padding-left: 50px; flex: 1 1 0;}

/* Three fifths content left, two fifths image right */
section.content-area .flex-3525 .column {width: 40%;}
section.content-area .flex-3525 .column:first-child {order: 2;}
section.content-area .flex-3525 .column:last-child {flex-grow: 1.5;}
section.content-area .flex-3525 .column article {float: left; width: 80%; padding: 45px 0 45px 20%; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.content-area .flex-3525 .column article .content {padding-right: 50px; flex: 1 1 0;}

/* Three fifths content right, two fifths image left */
section.content-area .flex-2535 .column {width: 40%;}
section.content-area .flex-2535 .column:last-child {flex-grow: 1.5;}
section.content-area .flex-2535 .column article {float: left; width: 80%; padding: 45px 20% 45px 0; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.content-area .flex-2535 .column article .content {padding-left: 50px; flex: 1 1 0;}

/* One third image left, one third content center, one third image left */
section.content-area .flex-131313 .column {width: 33.33%;}
section.content-area .flex-131313 .column article {float: left; width: 100%; padding: 45px 0; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.content-area .flex-131313 .column article .content {padding: 0 50px; flex: 1 1 0;}

/* Two thirds content right, one third image left */
section.content-area .block-1323 .column:first-child {float: left; width: 33.33%;}
section.content-area .block-1323 .column:last-child {float: left; width: 66.66%;}
section.content-area .block-1323 .column article {float: left; width: 100%; padding: 45px 0;}
section.content-area .block-1323 .column article .content {padding-left: 50px;}

/* Two thirds content left, one third image right */
section.content-area .block-2313 .column:last-child {float: left; width: 66.66%;}
section.content-area .block-2313 .column:first-child {float: left; width: 33.33%;}
section.content-area .block-2313 .column article {float: left; width: 100%; padding: 45px 0;}
section.content-area .block-2313 .column article .content {padding-right: 50px;}

/* Full width text - no image */
section.content-area .flex-1100 .column {width: 100%;}
section.content-area .flex-1100 .column article {float: left; width: 100%; padding: 45px 0; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.content-area .flex-1100 .column article .content {padding: 0 50px 0 0; flex: 1 1 0;}

section.content-intro {float: left; width: 100%; overflow: hidden; position: relative; border-top: 6px solid var(--white);}
section.content-intro .image {position: absolute; overflow: hidden; z-index: 100; top: 0px; left: 0px; width: 100%; height: 100%;}
section.content-intro .image img {position: absolute; top: 50%; left: 50%; width: 100%; min-height: 100%; transform: translate(-50%, -50%); opacity: 0.17; object-fit: cover;}
section.content-intro article {width: 800px; max-width: calc(100% - 100px); position: relative; z-index: 200; padding: 50px; padding-bottom: 25px; background: var(--dark-grey); display: block; margin: 0 auto;}
section.content-intro article h1 {font-family: var(--copy-font); font-size: 2.0em; line-height: 120%; font-weight: 400; padding-bottom: 25px; text-align: center; text-transform: uppercase;}
section.content-intro article h2 {font-family: var(--copy-font); font-size: 1.4em; line-height: 120%; font-weight: 400; padding-bottom: 25px; text-align: center; text-transform: uppercase;}
section.content-intro article p {font-family: var(--copy-font); font-size: 1.0em; line-height: 155%; font-weight: 400; padding-bottom: 25px; text-align: center;}
section.content-intro article a.btn {width: auto; display: inline-block; margin: 0 auto; border: 1px solid var(--white); color: var(--white); padding: 11px 30px; font-size: 1.0em; text-transform: uppercase;}
section.content-intro article a.btn:hover {border: 1px solid var(--white); color: var(--black); background: var(--white);}

section.quadrant {float: left; width: 100%; padding: 50px 0 25px 0;}
section.quadrant h3 {font-family: var(--copy-font); font-size: 1.4em; line-height: 120%; font-weight: 400; padding-bottom: 5px; text-align: center; color: var(--black);}
section.quadrant .quadrant-holder {display: block; margin: 0 auto; position: relative; width: 600px; max-width: 100%;}
section.quadrant .quadrant-holder img {width: 100%; height: auto;}
section.quadrant .quadrant-holder .quarter {position: absolute; width: 50%; height: 50%;}
section.quadrant .quadrant-holder .quarter.bl {top: 50%; left: 0%;}
section.quadrant .quadrant-holder .quarter.tl {top: 0%; left: 0%;}
section.quadrant .quadrant-holder .quarter.tr {top: 0%; left: 50%;}
section.quadrant .quadrant-holder .quarter.br {top: 50%; left: 50%;}
section.quadrant .quadrant-holder .quarter a {display: block; width: 100%; height: 100%;}
section.quadrant .quadrant-holder .quarter a:hover {background: rgba(255,255,255,0.3);}

section.event-title {float: left; width: 100%; overflow: hidden; position: relative; border-top: 6px solid var(--white);}
section.event-title h2 {font-family: var(--copy-font); font-size: 2.0em; padding-bottom: 50px; line-height: 120%; font-weight: 400; text-align: center; text-transform: uppercase; color: var(--black);}
section.event-title:nth-child(odd) h2 span:last-child {border-bottom: 3px solid var(--pink);}
section.event-title:nth-child(even) h2 span:last-child {border-bottom: 3px solid var(--blue);}
section.event-title .flex-events {gap: 6px; justify-content: center; align-content: center; flex-wrap: nowrap;}
section.event-title article {overflow: hidden; position: relative; width: 25%;}
section.event-title article .image {overflow: hidden; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 100;}
section.event-title article .image img {position: absolute; top: 50%; width: 100%; min-height: 100%; left: 50%; transform: translate(-50%, -50%); object-fit: cover;}
section.event-title article .default {position: absolute; opacity: 1; top: 50%; left: 50%; width: calc(100% - 50px); padding: 0 25px; z-index: 200; transform: translate(-50%, -50%);}
section.event-title article .default h3 {font-family: var(--light-font); font-size: 1.6em; line-height: 130%; font-weight: 400; text-align: center; color: var(--white); text-shadow: 1px 1px 15px var(--black), 1px -1px 15px var(--black), -1px -1px 15px var(--black), -1px 1px 15px var(--black);}
section.event-title article .default h3::after {font-family: var(--awesome-font); font-weight: 900; content: "\f054"; padding-left: 8px;}
section.event-title article .hover {position: relative; width: calc(100% - 50px); height: calc(100% - 50px); padding: 25px; z-index: 200; background: rgba(5,10,16,0.7); opacity: 0; transition: all .25s ease-in-out;}
section.event-title article .hover p {font-family: var(--copy-font); font-size: 1.0em; line-height: 155%; padding-bottom: 15px;}
section.event-title article .hover p:last-child {padding-bottom: 0;}
section.event-title article:hover .default {opacity: 0;}
section.event-title article:hover .hover {opacity: 1;}

section.values-headings {float: left; width: 100%; overflow: hidden; position: relative; z-index: 200; border-top: 6px solid var(--white);}
section.values-headings .flex-values {gap: 6px; justify-content: center; align-content: center; flex-wrap: nowrap;}
section.values-headings aside {overflow: hidden; position: relative; width: 25%;}
section.values-headings aside h3 {font-family: var(--light-font); font-size: 1.6em; line-height: 130%; font-weight: 400; text-align: center; color: var(--white);}
section.values-headings aside h3 a {color: var(--white); display: block; width: calc(100% - 50px); padding: 25px;}
section.values-headings aside h3 a::after {font-family: var(--awesome-font); font-weight: 900; content: "\f078"; padding-left: 8px;}
section.values-headings aside h3 a:hover::after {padding-left: 11px; margin-right: -3px;}

section.values-headings aside:nth-child(1) {background: url("../images/icon-fan-only-whiteout.png") no-repeat bottom -13px right -10px #3382c8;}
section.values-headings aside:nth-child(2) {background: url("../images/icon-fan-only-whiteout.png") no-repeat bottom -13px right -10px #4c6db8;}
section.values-headings aside:nth-child(3) {background: url("../images/icon-fan-only-whiteout.png") no-repeat bottom -13px right -10px #982c87;}
section.values-headings aside:nth-child(4) {background: url("../images/icon-fan-only-whiteout.png") no-repeat bottom -13px right -10px #b31575;}

section.values-content {float: left; width: 100%; overflow: hidden; position: relative; z-index: 100; margin-top: -174px; padding-top: 174px; background: url("../images/bg-content-area.png") no-repeat center top 174px;}
section.values-content .flex {display: flex; flex-wrap: nowrap; align-content: center; justify-content: flex-start; border-top: 6px solid var(--white);}
section.values-content .flex .column aside {float: left; width: 100%; height: 100%; overflow: hidden; position: relative;}
section.values-content .flex .column aside img {width: auto; height: auto; min-width: 100%; min-height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
section.values-content .flex-2313 .column {width: 33.33%;}
section.values-content .flex-2313 .column:first-child {flex-grow: 2;}
section.values-content .flex-2313 .column article {float: left; width: 80%; padding: 45px 0 45px 20%; display: flex; align-content: flex-start; align-items: flex-start; flex-wrap: nowrap;}
section.values-content .flex-2313 .column article .content {padding-right: 50px; flex: 1 1 0;}
section.values-content article {color: var(--black);}
section.values-content article h2 {font-family: var(--copy-font); font-size: 2.0em; line-height: 120%; font-weight: 400; padding-bottom: 25px; text-transform: uppercase;}
section.values-content article h3 {font-family: var(--copy-font); font-size: 1.3em; line-height: 130%; font-weight: 400; padding-bottom: 25px;}
section.values-content article h4 {font-family: var(--copy-font); font-size: 1.1em; line-height: 150%; font-weight: 400; padding-bottom: 25px;}
section.values-content article p {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; padding-bottom: 25px; font-weight: 400;}
section.values-content article ul {list-style: none; margin-bottom: 25px;}
section.values-content article ul li {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; padding: 0 0 0 20px; position: relative;}
section.values-content article ul li::before {content: "•"; font-size: 1.5em; position: absolute; left: 0px; color: var(--blue);}
section.values-content article ul li ul {margin-bottom: 0px;}
section.values-content article img {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); height: auto; margin-bottom: 25px;}
section.values-content article video {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); margin-bottom: 25px;}
section.values-content article iframe {float: left; width: auto; max-width: 100%; margin-bottom: 25px;}
section.values-content article a.btn {width: auto; display: inline-block; margin: 0 auto; padding: 11px 30px; font-size: 1.0em; text-transform: uppercase;}
section.values-content article a.btn {border: 1px solid var(--black); color: var(--black);}
section.values-content article a.btn:hover {border: 1px solid var(--black); color: var(--white); background: var(--black);}

section.misc-banner {float: left; width: 100%; overflow: hidden; min-height: 350px; z-index: 100; position: fixed;}
section.misc-banner .image {position: absolute; overflow: hidden; top: 0px; left: 0px; width: 100%; height: 100%;}
section.misc-banner .image img {position: absolute; top: 0px; left: 0px; width: 100%; height: auto;}

section.case-study-banner {float: left; width: 100%; overflow: hidden; min-height: 450px; z-index: 100; position: fixed;}
section.case-study-banner .image {position: absolute; overflow: hidden; top: 0px; left: 0px; width: 100%; height: 100%;}
section.case-study-banner .image img {position: absolute; top: -5%; left: 0px; width: 100%; height: auto;}
section.case-study-banner article {width: 100%; max-width: 90%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
section.case-study-banner article div.last-line {width: 100%; font-size: 100px; font-family: var(--heavy-font); text-transform: uppercase; letter-spacing: 5px; line-height: 90%; color: rgba(255,255,255,0.3); text-align: center; -webkit-text-fill-color: none; -webkit-text-stroke: 3px var(--white);}

section.news-banner {float: left; width: 100%; overflow: hidden; min-height: 450px; z-index: 100; position: fixed;}
section.news-banner .image {position: absolute; overflow: hidden; top: 0px; left: 0px; width: 100%; height: 100%;}
section.news-banner .image img {position: absolute; top: -5%; left: 0px; width: 100%; height: auto;}
section.news-banner article {width: 100%; max-width: 90%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
section.news-banner article div.last-line {width: 100%; font-size: 100px; font-family: var(--heavy-font); text-transform: uppercase; letter-spacing: 5px; line-height: 90%; color: rgba(255,255,255,0.3); text-align: center; -webkit-text-fill-color: none; -webkit-text-stroke: 3px var(--white);}

div.misc-internal {float: left; width: 100%; overflow: hidden; position: relative; z-index: 200; margin-top: 350px;}

.gallery-collection {display: none;}

section.misc-content-area {float: left; width: 100%; overflow-x: hidden; position: relative; background: url("../images/bg-content-area.png") no-repeat top center var(--white); color: var(--black);}
section.misc-content-area h1 {font-family: var(--copy-font); font-size: 2.3em; line-height: 120%; font-weight: 600; padding-bottom: 35px; text-transform: uppercase;}
section.misc-content-area h2 {font-family: var(--copy-font); font-size: 1.5em; line-height: 120%; font-weight: 400; padding-bottom: 25px; text-transform: uppercase;}
section.misc-content-area h3 {font-family: var(--copy-font); font-size: 1.3em; line-height: 130%; font-weight: 400; padding-bottom: 25px;}
section.misc-content-area h4 {font-family: var(--copy-font); font-size: 1.1em; line-height: 150%; font-weight: 400; padding-bottom: 25px;}
section.misc-content-area p {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; padding-bottom: 25px; font-weight: 400;}
section.misc-content-area ul {list-style: none; margin-bottom: 25px;}
section.misc-content-area ul li {font-family: var(--light-font); font-size: 1.0em; line-height: 155%; padding: 0 0 0 20px; position: relative;}
section.misc-content-area ul li::before {content: "•"; font-size: 1.5em; position: absolute; left: 0px; color: var(--blue);}
section.misc-content-area ul li ul {margin-bottom: 0px;}
section.misc-content-area img {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); height: auto; margin-bottom: 25px;}
section.misc-content-area video {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); margin-bottom: 25px;}
section.misc-content-area iframe {float: left; width: auto; max-width: 100%; margin-bottom: 25px;}
section.misc-content-area a.btn {width: auto; display: inline-block; margin: 0 auto; padding: 11px 30px; font-size: 1.0em; text-transform: uppercase;}
section.misc-content-area a.btn {border: 1px solid var(--black); color: var(--black);}
section.misc-content-area a.btn:hover {border: 1px solid var(--black); color: var(--white); background: var(--black);}

div.cs-internal {float: left; width: 100%; overflow: hidden; position: relative; z-index: 200; margin-top: 450px;}

section.cs-content-area {float: left; width: 100%; overflow-x: hidden; position: relative; background: url("../images/bg-content-area.png") no-repeat top center var(--light-grey); color: var(--black); border-top: 6px solid var(--white);}
section.cs-content-area article {float: left; width: 100%;}
section.cs-content-area article h1 {font-family: var(--heading-font); font-size: 2.2em; line-height: 120%; padding-bottom: 25px;}
section.cs-content-area article h2 {font-family: var(--copy-font); font-size: 1.7em; line-height: 130%; font-weight: 400; padding-bottom: 25px;}
section.cs-content-area article h3 {font-family: var(--heading-font); font-size: 1.5em; line-height: 150%; padding-bottom: 25px;}
section.cs-content-area article h4 {font-family: var(--copy-font); font-size: 1.3em; line-height: 150%; font-weight: 400; padding-bottom: 25px;}
section.cs-content-area article p {font-family: var(--copy-font); font-size: 1.0em; line-height: 155%; font-weight: 400; padding-bottom: 25px;}
section.cs-content-area article ul {list-style: none; margin-bottom: 25px;}
section.cs-content-area article ul li {font-family: var(--copy-font); font-size: 1.0em; line-height: 155%; padding: 0 0 0 20px; position: relative;}
section.cs-content-area article ul li::before {content: "•"; font-size: 1.5em; position: absolute; left: 0px; color: var(--blue);}
section.cs-content-area article ul li ul {margin-bottom: 0px;}
section.cs-content-area article ol {margin-bottom: 25px; margin-left: 20px;}
section.cs-content-area article ol li {font-family: var(--copy-font); font-size: 1.0em; line-height: 155%; padding: 0 0 0 20px; position: relative;}
section.cs-content-area article ol li::marker {position: absolute; left: 0px; color: var(--blue);}
section.cs-content-area article ol li ol {margin-bottom: 0px;}
section.cs-content-area article img {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); height: auto; margin-bottom: 25px;}
section.cs-content-area article img.alignnone {float: none; width: auto; max-width: 100%; height: auto; margin-bottom: 0;}
section.cs-content-area article img.alignleft {float: left; width: auto; max-width: 100%; height: auto; margin-bottom: 25px; margin-right: 25px;}
section.cs-content-area article img.alignright {float: right; width: auto; max-width: 100%; height: auto; margin-bottom: 25px; margin-left: 25px;}
section.cs-content-area article img.aligncenter {float: none; width: auto; max-width: 100%; display: block; height: auto; margin: 0 auto 25px auto;}
section.cs-content-area article a.btn {width: auto; display: inline-block; margin: 0 auto; padding: 11px 30px; font-size: 1.0em; text-transform: uppercase;}
section.cs-content-area article a.btn {border: 1px solid var(--black); color: var(--black);}
section.cs-content-area article a.btn:hover {border: 1px solid var(--black); color: var(--white); background: var(--black);}
section.cs-content-area article video {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); margin-bottom: 25px;}
section.cs-content-area article iframe {float: left; width: auto; max-width: 100%; margin-bottom: 25px;}
section.cs-content-area article .image-container {float: right; width: auto; border: 3px solid var(--white); position: relative; height: auto; margin: 0 -250px 25px 25px;}
section.cs-content-area article .image-container img {width: auto; max-width: 600px; border: none; margin-bottom: 0px; position: relative; z-index: 5; height: auto; display: block;}
section.cs-content-area article .image-container a.gallery {position: absolute; z-index: 10; bottom: 0px; left: 0px; background: var(--white); padding: 11px 26px 8px 23px;}

section.cs-content-area aside {float: left; width: calc(100% - 50px); padding: 25px; margin-top: 25px; background: url("../images/icon-fan-only-200.png") no-repeat bottom right -150px var(--dark-grey);}
section.cs-content-area aside h3 {font-family: var(--heading-font); font-size: 1.7em; line-height: 150%; padding-bottom: 25px; color: var(--white);}
section.cs-content-area aside p {font-family: var(--copy-font); font-size: 1.2em; line-height: 155%; font-weight: 400; padding-bottom: 25px; color: var(--white);}

section.news-overview {float: left; width: 100%; overflow-x: hidden; position: relative; background: url("../images/bg-content-area.png") no-repeat top center var(--dark-grey); border-top: 6px solid var(--white);}
section.news-overview h1 {font-family: var(--copy-font); font-size: 2.0em; line-height: 120%; font-weight: 400; text-align: center; padding-bottom: 35px; text-transform: uppercase;}
section.news-overview .flex-news {display: flex; width: calc(100% - 200px); padding: 0 100px; align-content: center; justify-content: flex-start; gap: 30px; flex-wrap: wrap;}
section.news-overview article {float: left; width: calc(20% - 55px); background: var(--white); padding: 15px; position: relative; border-radius: 3px;}
section.news-overview article .image-container {float: left; overflow: hidden; width: 100%; padding: 62.5% 0 0 0; margin-bottom: 15px; position: relative;}
section.news-overview article .image-container img {display: block; position: absolute; width: 100%; height: 100%; top: 0px; left: 0px; transition: all .15s ease-in-out;}
section.news-overview article:hover .image-container img {transform: scale(1.1);}
section.news-overview article .title-container {float: left; width: 100%; margin-bottom: 15px;}
section.news-overview article .title-container h2 {font-family: var(--title-font); font-size: 1.1em; line-height: 130%; font-weight: 400;}
section.news-overview article .content-container {float: left; width: 100%; margin-bottom: 55px;}
section.news-overview article .content-container p {font-family: var(--light-font); font-size: 0.9em; line-height: 145%; font-weight: 400; color: var(--black);}
section.news-overview article .date-container {float: left; width: calc(100% - 30px); border-top: 1px solid var(--light-grey); padding-top: 10px; position: absolute; bottom: 15px;}
section.news-overview article .date-container p {font-family: var(--light-font); font-style: italic; font-size: 0.8em; line-height: 145%; font-weight: 400; color: #8d8d8d;}
section.news-overview article .date-container p i {padding-right: 5px;}

section.news-content-area {float: left; width: 100%; overflow-x: hidden; position: relative; background: url("../images/bg-content-area.png") no-repeat top center var(--light-grey); color: var(--black); border-top: 6px solid var(--white);}
section.news-content-area article {float: left; width: 100%;}
section.news-content-area article h1 {font-family: var(--heading-font); font-size: 2.4em; line-height: 120%; padding-bottom: 25px;}
section.news-content-area article .meta-content {float: left; width: 100%; margin-bottom: 50px;}
section.news-content-area article .meta-content p {font-family: var(--light-font); font-size: 0.9em; line-height: 145%; font-weight: 400; color: #8d8d8d;}
section.news-content-area article .meta-content p i {padding-right: 5px;}
section.news-content-area article .meta-content p span {padding: 0 45px 5px 0;}
section.news-content-area article .entry-content h2 {font-family: var(--copy-font); font-size: 1.7em; line-height: 130%; font-weight: 400; padding-bottom: 25px;}
section.news-content-area article .entry-content h3 {font-family: var(--heading-font); font-size: 1.5em; line-height: 150%; padding-bottom: 25px;}
section.news-content-area article .entry-content h4 {font-family: var(--copy-font); font-size: 1.3em; line-height: 150%; font-weight: 400; padding-bottom: 25px;}
section.news-content-area article .entry-content p {font-family: var(--copy-font); font-size: 1.0em; line-height: 155%; font-weight: 400; padding-bottom: 25px;}
section.news-content-area article .entry-content ul {list-style: none; margin-bottom: 25px;}
section.news-content-area article .entry-content ul li {font-family: var(--copy-font); font-size: 1.0em; line-height: 155%; padding: 0 0 0 20px; position: relative;}
section.news-content-area article .entry-content ul li::before {content: "•"; font-size: 1.5em; position: absolute; left: 0px; color: var(--blue);}
section.news-content-area article .entry-content ul li ul {margin-bottom: 0px;}
section.news-content-area article .entry-content ol {margin-bottom: 25px; margin-left: 20px;}
section.news-content-area article .entry-content ol li {font-family: var(--copy-font); font-size: 1.0em; line-height: 155%;}
section.news-content-area article .entry-content ol li ol {margin-bottom: 0px;}
section.news-content-area article .entry-content img {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); height: auto; margin-bottom: 25px;}
section.news-content-area article .entry-content video {float: left; width: auto; max-width: calc(100% - 6px); border: 3px solid var(--white); margin-bottom: 25px;}
section.news-content-area article .entry-content iframe {float: left; width: auto; max-width: 100%; margin-bottom: 25px;}
section.news-content-area article .entry-content img.alignnone {float: none; width: auto; max-width: 100%; height: auto; margin-bottom: 0;}
section.news-content-area article .entry-content img.alignleft {float: left; width: auto; max-width: 100%; height: auto; margin-bottom: 25px; margin-right: 25px;}
section.news-content-area article .entry-content img.alignright {float: right; width: auto; max-width: 100%; height: auto; margin-bottom: 25px; margin-left: 25px;}
section.news-content-area article .entry-content img.aligncenter {float: none; width: auto; max-width: 100%; display: block; height: auto; margin: 0 auto 25px auto;}
section.news-content-area article .entry-content a.btn {width: auto; display: inline-block; margin: 0 auto; padding: 11px 30px; font-size: 1.0em; text-transform: uppercase;}
section.news-content-area article .entry-content a.btn {border: 1px solid var(--black); color: var(--black);}
section.news-content-area article .entry-content a.btn:hover {border: 1px solid var(--black); color: var(--white); background: var(--black);}

section.news-content-area article .image-container {float: right; width: auto; border: 3px solid var(--white); position: relative; height: auto; margin: 0 -250px 25px 25px;}
section.news-content-area article .image-container img {width: auto; max-width: 600px; border: none; margin-bottom: 0px; position: relative; z-index: 5; height: auto; display: block;}

footer {float: left; width: 100%; background: url("../images/bg-footer.png") no-repeat center left var(--dark-grey); border-top: 6px solid var(--white); position: relative; z-index: 200;}
footer .logo-holder {width: 265px; margin-bottom: 35px;}
footer .logo-holder img {width: 100%; height: auto;}
footer a.btn {float: right; border: 2px solid #ffffff; padding: 12px 30px; font-size: 0.9em; color: var(--white); text-transform: uppercase; margin-bottom: 55px;}
footer a.btn:hover {border: 2px solid #ffffff; color: var(--blue); background: var(--white);}
footer h3 {font-family: var(--lighter-font); clear: both; font-size: 1.2em; text-align: right; line-height: 165%; font-weight: 300; color: var(--white); padding-bottom: 15px;}
footer h4 {font-family: var(--lighter-font); clear: both; font-size: 1.1em; line-height: 165%; font-weight: 300; color: var(--white); padding-bottom: 15px;}
footer p {font-family: var(--lighter-font); clear: both; font-size: 0.9em; line-height: 165%; color: var(--white); padding-bottom: 15px;}
footer p span {padding: 0 5px;}
footer p a {color: var(--white);}
footer p a:hover {color: var(--white); text-decoration: underline;}
footer ul.social-links {float: right; clear: both;}
footer ul.social-links li {display: inline-block;}
footer ul.social-links li a {display: block; padding: 0 9px; font-size: 1.0em;}
footer ul.social-links li a:hover {color: var(--white);}
footer ul.sitemap {list-style: none;}
footer ul.sitemap li {float: left; font-size: 0.9em; line-height: 165%; font-weight: 400;}
footer ul.sitemap li a {color: var(--white); margin-right: 50px;}
footer ul.sitemap li a:hover {text-decoration: underline;}

footer .cb {float: right; margin-right: 15px; margin-top: -4px;}
footer .cb a:hover img {opacity: 0.7;}

/* Popups */
.popup {width: 100%; height: 100%; display: none; position: fixed; top: 0px; left: 0px; background: rgba(0,0,0,0.7); z-index: 10000;}
.popup-outer {width: 100%; height: 100%; display: block; position: relative; top: 0px; left: 0px;}
.popup-inner {max-width: 90%; width: 1200px; height: auto; max-height: 90%; position: absolute; z-index: 10000; top: 50%; left: 50%; transform: translate(-50%, -50%);}
a.p-close {font-family: var(--heading-font); position: absolute; top: 25px; right: 25px; font-size: 1.4em; font-weight: 600; background: var(--dark-grey); width: 50px; height: 35px; border: 1px solid var(--white); border-radius: 50%; padding-top: 15px; text-decoration: none; color: var(--white); text-align: center;}
a.p-close:hover {background: var(--blue);}
.popup-inner article.video {float: left; width: 100%; margin: 0; padding: 56.25% 0 0 0; position: relative; z-index: 10000;}
.popup-inner article.video video {width: 100% !important; height: 100%; position: absolute; top: 0; left: 0; z-index: 10000;}
.popup-inner article.form {float: left; width: calc(100% - 70px); margin: 0; padding: 35px; background: var(--white);}
.popup-inner article.form h2 {font-family: var(--copy-font); font-size: 1.4em; color: var(--dark-grey); line-height: 130%; font-weight: 400; padding-bottom: 25px;}
.popup-inner article.form h3 {font-family: var(--copy-font); font-size: 1.3em; color: var(--dark-grey); line-height: 130%; font-weight: 400; padding-bottom: 25px;}
.popup-inner article.form h4 {font-family: var(--copy-font); font-size: 1.1em; color: var(--dark-grey); line-height: 130%; font-weight: 400; padding-bottom: 25px;}
.popup-inner article.form p {font-family: var(--copy-font); font-size: 1.0em; color: var(--dark-grey); line-height: 145%; font-weight: 400; padding-bottom: 25px;}


/* generic styling */
.inner {width: 1200px; margin: 0 auto;}
.inner-full {width: 95%; margin: 0 2.5%;}
.row {float: left; width: 100%; display: block; clear: both;}
.col1 {float: left; width: 100%;}
.col2 {float: left; width: 50%;}
.col3 {float: left; width: 33.3%;}
.col3-span2 {float: left; width: 66.6%;}
.col4 {float: left; width: 25%;}
.col4-span3 {float: left; width: 75%;}
.col5 {float: left; width: 20%;}
.col5-span2 {float: left; width: 40%;}
.col5-span3 {float: left; width: 60%;}
.col5-span4 {float: left; width: 80%;}
.col6 {float: left; width: 16.6%;}
.col-switch {float: right !important;}
.left {float: left;}
.right {float: right;}
.flex {display: flex; align-content: center; justify-content: center;}
.pad25 {padding-top: 25px !important; padding-bottom: 25px !important;}
.padtop25 {padding-top: 25px !important;}
.padbot25 {padding-bottom: 25px !important;}
.mar0 {margin-top: 0px !important; margin-bottom: 0px !important;}
.martop0 {margin-top: 0px !important;}
.marbot0 {margin-bottom: 0px !important;}
.mar25 {margin-top: 25px !important; margin-bottom: 25px !important;}
.martop25 {margin-top: 25px !important;}
.marbot25 {margin-bottom: 25px !important;}
.pad50 {padding-top: 50px !important; padding-bottom: 50px !important;}
.padtop50 {padding-top: 50px !important;}
.padbot50 {padding-bottom: 50px !important;}
.pad75 {padding-top: 75px !important; padding-bottom: 75px !important;}
.padtop75 {padding-top: 75px !important;}
.padbot75 {padding-bottom: 75px !important;}
.pad100 {padding-top: 100px !important; padding-bottom: 100px !important;}
.padtop100 {padding-top: 100px !important;}
.padbot100 {padding-bottom: 100px !important;}
.pad125 {padding-top: 125px !important; padding-bottom: 125px !important;}
.padtop125 {padding-top: 125px !important;}
.padbot125 {padding-bottom: 125px !important;}
.pad150 {padding-top: 150px !important; padding-bottom: 150px !important;}
.padtop150 {padding-top: 150px !important;}
.padbot150 {padding-bottom: 150px !important;}
.txtcenter {text-align: center;}
.txtleft {text-align: left;}
.txtright {text-align: right;}
.pink-text {color: var(--pink) !important;}
.blue-text {color: var(--blue) !important;}

.page-template-template-services-child section.internal-banner article {
	text-align: center;
}

.page-template-template-services-child section.internal-banner article div.first-line {
	font-family: var(--heavy-font);
	font-size: 32px;
	padding-bottom: 20px;
}

.page-template-template-services-child section.internal-banner article div.last-line {
	font-family: var(--heading-font);
	padding-bottom: 50px;
}

.page-template-template-services-child .gradient-bg {
  background-image: linear-gradient(90deg, #1D96D7 0%, #BE0D6F 100%);
  cursor: pointer;
  display: inline-block;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  padding: 0 !important;
}

.page-template-template-services-child .gradient-bg a {
color: #fff;
  padding: 15px 20px;
  border: 2px solid #fff;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 16px;
  display: block;
  text-align: center;
}

.page-template-template-services-child .gradient-bg a.no-border {
	border: 0;
}

.page-template-template-services-child .gradient-bg a:hover {
	color: #fff;
}

.page-template-template-services-child .gradient-bg:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background-image: linear-gradient(90deg, #1D96D7 0%, #1D96D7 100%);
	opacity: 0;
	transition: opacity 0.5s linear;
	z-index: -1;
}

.page-template-template-services-child .gradient-bg:hover::before {
  opacity: 1;
}

.page-template-template-services-child section.clients {
	background: #000;
}

.page-template-template-services-child section.content-intro article {
	text-align: center;
	background-color: rgba(5, 10, 16, .9);
}

section.usps {
	float: left;
    width: 100%;
    overflow: hidden;
    position: relative;
    border-top: 6px solid var(--white);
	background: url("../images/bg-intro.png") no-repeat center center;
}
section.usps * {
	color: #000;
}

section.usps h2 {
	font-family: var(--heading-font);
    font-size: 2.0em;
    line-height: 120%;
    font-weight: 700;
    padding-bottom: 25px;
    text-align: center;
    text-transform: uppercase;
}

section.usps h3 {
	font-family: var(--heading-font);
    font-size: 1.2em;
    line-height: 130%;
    font-weight: 500;
	padding-bottom: 1rem;
}

section.usps p {
	max-width: 767px;
	margin: 0 auto;
	line-height: 1.3;
}

.usps .col1 {
	padding-bottom: 30px;
}

.usps .flex {
	gap: 20px;
}

.usps .flex .usp {
	padding: 30px;
	border: 1px solid #000;
}

.usps .flex .usp i {
	font-size: 2.5rem;
	color: var(--blue);
	margin-bottom: 1rem;
}

.usps .flex .usp:nth-of-type(2) i {
	color: #d6249f;
}

.split-section {
	float: left;
    width: 100%;
    overflow: hidden;
    position: relative;
    border-top: 6px solid var(--white);
	background: url("../images/bg-intro.png") no-repeat center center;
}

.split-section:nth-of-type(odd) .row {
	justify-content: start;
}
.split-section:nth-of-type(even) .row {
	justify-content: end;
}

.spse-image {
	width: 45%;
	max-height: 500px;
}

.spse-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.spse-content {
	width: 28%;
}

.spse-content > * {
	padding-right: 12%;
}

.spse-content.right {
	order: 1;
}

.spse-content.right > * {
	padding-right: 0;
	padding-left: 12%;
}

.page-template-template-services-child .spse-content.right .gradient-bg {
	margin-left: 12%;
}

.split-section * {
	color: #000;
}

.split-section p {
	font-family: var(--copy-font);
    font-size: 1.0em;
    line-height: 155%;
	padding-bottom: 32px;
}

.split-section.black-bg * {
	color: #fff;
}

.split-section.black-bg {
	background-color: #000;
}

.split-section.grey-bg {
	background-color: #e5e5e7;
}

.split-section h3 {
	font-family: var(--heading-font);
    font-size: 2.0em;
    line-height: 120%;
    font-weight: 700;
    padding-bottom: 25px;
    text-transform: uppercase;
}

.page-template-template-services-child .intro {
	margin-top: 0;
}

.guide {
	float: left;
    width: 100%;
    overflow: hidden;
    position: relative;
    border-top: 6px solid var(--white);
	background: url("../images/bg-intro.png") no-repeat center center;
	background-color: #e5e5e7;	
}

.guide .flex {
	justify-content: start;
}

.guide .guide-image {
	width: 45%;
	max-height: 600px;
}

.guide .guide-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.guide .guide-content {
	width: 35%;
	padding-left: 2%;
}

.guide .guide-content * {
	color: #000;
}

.guide .guide-content h2 {
	font-family: var(--heading-font);
    font-size: 2.0em;
    line-height: 120%;
    font-weight: 700;
    padding-bottom: 25px;
    text-transform: uppercase;
}

.guide .guide-content p {
	font-family: var(--copy-font);
    font-size: 1.0em;
    line-height: 155%;
	padding-bottom: 15px;
}

.guide .guide-content p a {
	color: var(--blue);
}

.guide .guide-content .btn {
	padding: 15px 20px;
	border: 1px solid #000;
	transition: .3s ease all;
	display: inline-block;
	margin: 25px 0;
}

.guide .guide-content .btn:hover {
	background-color: #000;
	color: #fff;
}

.page-template-template-services-child section.intro article a.btn {
	margin-bottom: 0;
}

@media screen and (max-width: 1440px) {
	.spse-content {
		width: 50%;
	}
}

@media screen and (max-width: 991px) {
	.usps .flex, .split-section .row, .guide .flex {
		flex-direction: column;
	}
	.spse-content, .guide .guide-content {
		width: calc(100% - 30px);
		padding: 0 15px;
	}
	.spse-image, .guide .guide-image {
		width: 100%;
		overflow: hidden;
	}
	.spse-image img, .guide .guide-image img {
		display: block;
	}
	.spse-content.right > * {
		padding-left: 0;
	}
	.page-template-template-services-child .spse-content.right .gradient-bg {
		margin-left: 0;
	}
	.page-template-template-services-child .intro {
		padding-left: 15px;
		padding-right: 15px;
		width: calc(100% - 30px);
	}
	.page-template-template-services-child section.internal-banner article div.last-line {
		font-size: 30px;
	}
}