﻿* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

/* = Reset
----------------------------------------------------------------------------------------------------------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, hr, a, a img, font, img, dd, dl, dt, li, ol, ul, blockquote, fieldset, form, label, legend, table, caption, tr, th, td { margin: 0; padding: 0; border: 0; font-size: 100%; }

/* = HTML5 Elements
----------------------------------------------------------------------------------------------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
audio, canvas, video { display: inline-block; }

html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

/* = Fonts
----------------------------------------------------------------------------------------------------------------- */
/* =====
h1 = Merriweather
Titles = Lato
Body = Montserrat
===== */
@font-face { font-family: 'Lato'; src: url('/_fonts/lato-bold-webfont.woff2') format('woff2'), url('/_fonts/lato-bold-webfont.woff') format('woff'); font-weight: bold; font-style: normal; }
@font-face { font-family: 'Lato'; src: url('/_fonts/lato-regular-webfont.woff2') format('woff2'), url('/_fonts/lato-regular-webfont.woff') format('woff'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'Merriweather'; src: url('/_fonts/merriweather-regular-webfont.woff2') format('woff2'), url('/_fonts/merriweather-regular-webfont.woff') format('woff'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'Montserrat'; src: url('/_fonts/montserrat-bold-webfont.woff2') format('woff2'), url('/_fonts/montserrat-bold-webfont.woff') format('woff'); font-weight: bold; font-style: normal; }
@font-face { font-family: 'Montserrat'; src: url('/_fonts/montserrat-regular-webfont.woff2') format('woff2'), url('/_fonts/montserrat-regular-webfont.woff') format('woff'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'Montserrat'; src: url('/_fonts/montserrat-regularitalic-webfont.woff2') format('woff2'), url('/_fonts/montserrat-regularitalic-webfont.woff') format('woff'); font-weight: normal; font-style: italic; }
@font-face { font-family: 'Montserrat'; src: url('/_fonts/montserrat-semibold-webfont.woff2') format('woff2'), url('/_fonts/montserrat-semibold-webfont.woff') format('woff'); font-weight: 600; font-style: normal; }
@import url('https://fonts.googleapis.com/css?family=Lato:400,700|Merriweather|Montserrat:400,400i,600,700&display=swap');

/* = Body
----------------------------------------------------------------------------------------------------------------- */
body { color: #000; font-size: 16px; text-align: left; font-family: 'Montserrat', sans-serif; text-rendering: optimizeLegibility; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; background: #fff; word-break: break-word; }

main { position: relative; }

section > * { position: relative; z-index: 3; }
section > div:last-child,
section > p:last-child,
section .paging:last-child { margin-bottom: 0; }

@media screen and (max-width: 1200px) {
    body { font-size: 15px; }
}

@media screen and (max-width: 960px) {
    body { font-size: 14px; }
}

/* = Typography
----------------------------------------------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6 { font-family: 'Lato', sans-serif; margin: 0 0 20px; line-height: normal; }
h1 { font-size: 3em; font-family: 'Merriweather', serif; line-height: 1.3em; font-weight: normal; margin-bottom: 30px; }
h2 { font-size: 1.7em; margin-bottom: 25px; }
h3 { font-size: 1.6em; }
h4 { font-size: 1.5em; }
h5 { font-size: 1.4em; }
h6 { font-size: 1.3em; }

p { margin: 0 0 20px; line-height: 1.5em; }

@media screen and (max-width: 1200px) {
    h1 { font-size: 2.6em; }
    h2 { font-size: 1.7em; }
    h3 { font-size: 1.6em; }
    h4 { font-size: 1.5em; }
    h5 { font-size: 1.4em; }
    h6 { font-size: 1.3em; }
}

@media screen and (max-width: 960px) {
    h1 { font-size: 2.2em; }
    h2 { font-size: 1.5em; }
    h3 { font-size: 1.4em; }
    h4 { font-size: 1.3em; }
    h5 { font-size: 1.2em; }
    h6 { font-size: 1em; }
}

@media screen and (max-width: 768px) {
    h1 { font-size: 2em; }
    h2 { font-size: 1.5em; }
    h3 { font-size: 1.4em; }
    h4 { font-size: 1.3em; }
    h5 { font-size: 1.2em; }
    h6 { font-size: 1em; }
}

blockquote { margin: 40px 0; border-left: 6px solid #c7c7c7; padding-left: 35px; }
blockquote p { margin: 0; font-size: 1.4em; line-height: 1.4em; font-family: 'Montserrat', sans-serif; }
blockquote cite { font-size: 1em; font-style: normal; margin-top: 15px; display: block; }
blockquote p cite { font-size: 0.75em; }

a { color: #0064B1; text-decoration: none; }
a:hover { color: #0064B1; text-decoration: underline; }
/*don't want underline on these*/
a.btn:hover,
.menu a:hover,
.news a:hover,
.paging a:hover,
.blackBox a:hover,
.filteredList a:hover { text-decoration: none; }

.link-blue {
    color: #0064B1;
}

.link-blue:hover {
    color: #0064B1;
}

.link-purple {
    color:#C10362;
}


.link-purple:hover {
    color:#C10362;
}

.link-orange {
    color:#EE2A24;
}

.link-orange:hover {
    color:#EE2A24;
}

.link-green {
    color:#94B93C;
}

.link-green:hover {
    color:#94B93C;
}

.link-under {
    text-decoration: underline;
}

a label { display: inline-block; cursor: pointer; }

img { vertical-align: bottom; height: auto; -ms-interpolation-mode: bicubic; }
hr { margin: 64px 0; height: 1px; border: 0; border-top: 1px solid #ccc; }
small { color: #838B8F; font-size: 0.8em; }
address { margin: 0 0 20px; line-height: 1.5em; font-style: normal; }

sub, sup { line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

pre { margin: 0; }
pre code { font-size: 1.5em; white-space: pre-wrap; }

figure { margin: 0 0 20px; }
figcaption { padding-top: 10px; color: #777; font-size: 0.8em; }

.floatLeft { float: left; }
.floatRight { float: right; }
.hide { display: none; }
.hideText { text-indent: 100%; white-space: nowrap; overflow: hidden; }
.clr:after { content: ''; display: table; clear: both; }
.leader { font-size: 1.2em; }
.textLeft { text-align: left; }
.textCenter { text-align: center; }
.textRight { text-align: right; }
.highlight { color: #19C5A3; }
.marked { color: #fff; background: #19C5A3; }
.meta { color: #666; font-style: italic; font-size: 0.9em; margin-bottom: 10px; }
.lrgfont { font-size: 3em; }
.fixed { position: fixed; top: 20px; }

p.homeLeader { display: block; max-width: 800px; margin-left: auto; margin-right: auto; }

.static { position: static; }
.fullHeight { height: 100%; }

.relative { position: relative; }

.overflowHidden { overflow: hidden; }

.showTablet { display: none; }

/* ===== padding classes ===== */
.padded { padding: 64px; }
.paddedSmall { padding: 32px; }
.paddedTall { padding: 128px 64px; }
.marginTop { margin-top: 64px; }
.marginBottom { margin-bottom: 64px; }
.smallMarginTop { margin-top: 16px; }
.smallMarginBottom { margin-bottom: 16px; }
.noMargin { margin: 0; }

@media screen and (max-width: 1200px) {
    .padded { padding: 48px; }
    .paddedTall { padding: 80px 48px; }
    /* .paddedSmall { padding: 48px; } */
    .marginTop { margin-top: 48px; }
    .marginBottom { margin-bottom: 48px; }
}

@media screen and (max-width: 960px) {
    hr { margin: 48px 0; }
    .padded { padding: 32px; }
    .paddedTall { padding: 128px 32px; }
    /* .paddedSmall { padding: 32px; } */
    .marginTop { margin-top: 32px; }
    .marginBottom { margin-bottom: 32px; }
    .showTablet { display: block; }
}

@media screen and (max-width: 768px) {
    hr { margin: 32px 0; }
    /* .padded { padding: 26px; } */
    .fixed { position: static; }
    .marginBottomMobile { margin-bottom: 32px }
}

@media screen and (max-width: 400px) {
    .paddedSmall { padding: 24px; }
    .marginTop { margin-top: 24px; }
    .marginBottom { margin-bottom: 24px; }
}

.noPadding { padding: 0; }
.noPaddingTop,
.container.noPaddingTop { padding-top: 0; }
.noPaddingBottom,
.container.noPaddingBottom { padding-bottom: 0; }
.noMarginBottom { margin-bottom: 0; }
.shiftUp { margin-top: -128px; padding-top: 128px; position: relative; z-index: 1; }

.bgBlue { background-color: #04BDDB; color: #fff; background-image: -webkit-gradient(linear, left top, left bottom, from(#04BDDB), to(#7DBFCA)); background-image: -webkit-linear-gradient(#04BDDB, #7DBFCA); background-image: -o-linear-gradient(#04BDDB, #7DBFCA); background-image: linear-gradient(#04BDDB, #7DBFCA); }
.bgBlue .field { max-width: 700px; margin: 0 auto 16px; text-align: left; }
.bgBlue .field:last-child { margin-bottom: 0; }
.bgBlue input.text { width: calc(100% - 116px); background-color: #fff; color: #222; padding: 12px 16px; vertical-align: top; }
.bgBlue input.text::placeholder { color: #ccc; }
.bgBlue .btn { padding: 14px 32px; vertical-align: top; margin-left: 8px; }
.bgBlue label { text-align: left; padding-left: 48px; vertical-align: middle; }
.bgBlue a { color: #fff; }
.bgBlue a:hover { text-decoration: none; }

/* = Colours
----------------------------------------------------------------------------------------------------------------- */
.brandblack { color: #fff; background: #000; }
.brandorange { color: #fff; background: #19C5A3; }
.brandred { color: #fff; background: #a8274c; }
.block { display: inline-block; padding: 50px 50px 10px 20px; font-weight: bold; }

/* = Buttons
----------------------------------------------------------------------------------------------------------------- */
.btn { display: inline-block; padding: 16px 32px; color: #fff; font-weight: bold; font-family: 'Montserrat', sans-serif; font-size: 0.8em; text-transform: uppercase; text-decoration: none; text-align: center; outline: none; cursor: pointer; border: 0 solid #19C5A3; background-color: #19C5A3; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; }
.btn:hover { background-color: #63E0C2; color: #fff; }

p .btn { line-height: 1em; }

.btnImpact { border-color: #0B2538; background: #0B2538; }
.btnImpact:hover { background-color: #154669; }

.btnAlt { border-color: #0B2538; background: #0B2538; }
.btnAlt:hover { background-color: #154669; }

/* = Lists
----------------------------------------------------------------------------------------------------------------- */
ul { width: 100%; margin: 0 0 25px; padding-left: 25px; line-height: 1.5em; }
ul li { margin: 0 0 10px; }
ul li ul { margin-top: 20px; margin-left: 30px; list-style-type: circle; }
ul.tickList { list-style: none; padding-left: 0; }
ul.tickList li, ul.tickList li:nth-of-type(2n) { font-weight: 900; margin-bottom: 30px; padding-left: 45px; position: relative; }
ul.tickList li:before { background: #19C5A3 url(/_img/icons/white-tick.png) no-repeat center/20px auto; content: ''; display: block; height: 30px; left: 0; position: absolute; top: -3px; width: 30px; }

ol { margin: 0 0 25px; overflow: hidden; padding-left: 25px; line-height: 1.5em; }
ol li { margin: 0 0 10px; }
ol li ol { margin-top: 20px; margin-left: 30px; list-style-type: lower-latin; }

dl { margin: 0 0 25px; overflow: hidden; line-height: 1.5em; }
dt { color: #111; font-weight: bold; }
dd { margin: 0 0 20px; }

.inline { margin-left: 0; padding: 0; list-style: none; }
.inline li { display: inline-block; margin: 0 15px 0 0; }

.breadcrumb ul { margin-left: 0; padding: 0; list-style: none; }
.breadcrumb ul li { display: inline; margin: 0 10px 0 0; }

.progress { margin: 0; position: relative; }
.progress { padding: 0; }
.progress li { float: left; text-align: center; position: relative; margin-right: 16px; margin-bottom: 16px; }
.progress li a { padding: 10px 14px 10px 28px; background-image: url(/_img/icons/dot.svg); background-position: left 10px center; background-repeat: no-repeat; background-size: 6px; line-height: initial; vertical-align: middle; }
.progress li.progressSuccess a { background-image: url(/_img/icons/complete.svg); background-color: #69b239; }
.progress li.progressActive a { background-image: url(/_img/icons/down.svg); background-color: #2EB89C; background-size: 10px; }

.checkoutProgress { padding: 0; }
.checkoutProgress li.progressSuccess a { background-color: #69b239; }
.checkoutProgress li.progressActive a { background-color: #0B2538; }
.checkoutProgress li.progressBasket a { background-image: url(/_img/icons/basket.svg); }
.checkoutProgress li.progressLogin a { background-image: url(/_img/icons/login.svg); }
.checkoutProgress li.progressAddress a { background-image: url(/_img/icons/address.svg); }
.checkoutProgress li.progressSummary a { background-image: url(/_img/icons/summary.svg); }
.checkoutProgress li.progressPayment a { background-image: url(/_img/icons/payment.svg); }
.checkoutProgress li.progressComplete a { background-image: url(/_img/icons/complete.svg); background-size: 12px; }

.moveon:after { content: ''; display: table; clear: both; }

.paging { margin: 0 0 20px; }
.paging ul { margin: 0; padding: 0; list-style: none; }
.paging ul li { display: inline; }
.paging ul li.det { padding-right: 10px; }
.paging ul li a { display: inline-block; font-weight: bold; padding: 6px 12px; color: #A8AEB0; background: transparent; }
.paging ul li a:hover { color: #454545; }
.paging ul li a.on { color: #2D3A41; }

.paging ul li.prev a,
.paging ul li.next a,
.paging ul li.first a,
.paging ul li.last a { background-color: #2D3A41; color: #fff; }
.paging ul li.prev a:hover,
.paging ul li.next a:hover,
.paging ul li.first a:hover,
.paging ul li.last a:hover { background-color: #19C5A3; color: #fff; }

/* = Tables
----------------------------------------------------------------------------------------------------------------- */
.tableWrap,
section div.tableWrap:last-of-type { overflow: auto; margin-bottom: 24px; }
.tableWrap table,
.tableWrap .table { min-width: 600px; }
table { width: 100%; border-spacing: 0; border-collapse: collapse; }
th { padding: 15px 10px; color: #fff; border: 1px solid #333; background: #333; }
tr:nth-child(even) td { background: #f6f6f6; }
td { padding: 10px; border: 1px solid #e5e5e5; background: #fff; }
.rowItemStandout td { color: #fff; background: #a1c897; }

.table { display: table; table-layout: fixed; width: 100%; height: 100px; }
.table .table { height: 100%; }

/* === IE 10 only - wont accept flexbox solution === */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .table { height: auto\9; }
}

@-moz-document url-prefix() {
    .table { height: auto; }
}

.thead { display: table-header-group; }
.th { display: table-cell; }

.tbody { display: table-row-group; height: 100%; }
.tr { display: table-row; }
.td { display: table-cell; height: 100%; vertical-align: middle; }

.table .col { float: none; }

.featuredGrid { position: relative; background-color: #D5DDE2; }
.featuredGrid label.large { margin-bottom: 28px; }
.featuredGrid label.large.shifted { margin-bottom: 0; }

/*.table.featuredGrid .table .td { display: block; min-height: 50%; }*/
.table.featuredGrid .table .td { height: 50%; }

/* Flex box form browsers that support it */
@supports (display: flex) or (display: -ms-flexbox) or (display: -webkit-box) {
    .table.featuredGrid .table { display: block; }
    .table.featuredGrid .table .tbody { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-line-pack: center; align-content: center; }
    .table.featuredGrid .table .tr { -webkit-box-flex: 1; -ms-flex: 1; flex: 1; display: -webkit-box; display: -ms-flexbox; display: flex; }
    .table.featuredGrid .table .tr .td { display: block; -webkit-box-flex: 1; -ms-flex: 1; flex: 1; height: auto; }
}

.imageRight { width: 180px; margin-right: -16px; float: right; }
.imageLeft,
.currentIssues .image { width: 180px; margin-right: 32px; float: left; border: 2px solid #D5DDE2; }

.prevIssues ul { list-style: none; padding: 0; margin: 0; }
.prevIssues ul li { margin-bottom: 4px; }

@media screen and (max-width: 960px) {
    .featuredGrid.table, .featuredGrid .tbody, .featuredGrid .tr, .featuredGrid .td { display: block; height: auto; }
    .featuredGrid label.large.shifted { margin-bottom: 28px; }

    .imageRight { width: 200px; margin-right: 0; }
    .imageLeft,
    .currentIssues .image { width: 200px; }
}

@media screen and (max-width: 768px) {
    .table, .thead, .th, .tbody, .tr, .td { display: block; height: auto; }
    #templateGreyShifted #zone1.table,
    #templateGreyShifted #zone1 .tbody,
    #templateGreyShifted #zone1 .tr,
    #templateGreyShifted #zone1 .td { min-height: 260px; }

    .featuredGrid label.large.shifted { margin-bottom: 28px; }
}

@media screen and (max-width: 550px) {
    .imageRight { float: none; }
    .imageLeft,
    .currentIssues .image { float: none; }
}

/* = Background Block
----------------------------------------------------------------------------------------------------------------- */
.backgroundBlock { display: block; background-color: #1C1C2D; color: #fff; height: 100%; background-repeat: no-repeat; background-position: center; background-size: cover; }
.backgroundBlock.specialHeight { height: 80%; height: calc(100% - 97px); }

@media screen and (max-width: 1200px) {
    .backgroundBlock.specialHeight { height: calc(100% - 81px); }
}

@media screen and (max-width: 960px) {
    .backgroundBlock.specialHeight { height: calc(100% - 65px); }
}

.white { background-color: #fff; color: #0B2538; }
.lightGrey { background-color: #DBE4EC; color: #0B2538; }
.darkGrey { background-color: #1C1C2D; color: #fff; }
.darkGrey label.large { border-color: #fff; color: #fff; }

label.type { display: inline-block; padding: 6px 14px; font-size: 10px; letter-spacing: 1px; line-height: 1.4em; font-weight: 600; text-transform: uppercase; -webkit-transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1); -o-transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1); }
label.large { display: inline-block; color: #1C1C2D; border: 1px solid #1C1C2D; padding: 11px 16px 8px; font-size: 1.2em; font-weight: 600; line-height: initial; text-transform: uppercase; margin-bottom: 64px; }
label.shifted { position: relative; right: 32px; bottom: 32px; margin-bottom: 0; }

.arrowBox { background-color: #1C1C2D; width: 32px; line-height: 20px; /* height: 32px; */ padding: 5px; }
.arrowBox img { width: 100%; }

@media screen and (max-width: 1200px) {
    label.large { margin-bottom: 48px; }
    label.shifted { right: 16px; bottom: 16px; margin-bottom: 16px; }
}

@media screen and (max-width: 960px) {
    label.large { margin-bottom: 32px; }
    label.shifted { position: static; right: 0; bottom: 0; }
}

/* = Label Colours
----------------------------------------------------------------------------------------------------------------- */
.bordered { background-color: transparent; border: 1px solid; }
.orange { background-color: #DB7E04; color: #fff; }
.blue { background-color: #2394EB; color: #fff; }
.lightGrey { background-color: #D5DDE2; color: #0B2538; }
.green { background-color: #7D8D2E; color: #fff; }
.pink { background-color: #C10362; color: #fff; }
.darkBlue { background-color: #0B2538; color: #fff; }
.grey { background-color: #DBE4EC; color: #0B2538; }

.childrensServices { background-color: #28B73B; color: #fff; }
.media { background-color: #2394EB; color: #fff; }
.retail { background-color: #7D8D2E; color: #fff; }
.edTech { background-color: #C10362; color: #fff; }
.supportServices { background-color: #94B93C; color: #fff; }
.elearning { background-color: #857E3A; color: #fff; }
.qualsAndAssessment { background-color: #C6706D; color: #fff; }
.higherEducation { background-color: #EE2A24; color: #fff; }
.tutoring { background-color: #7D42C1; color: #fff; }
.schools { background-color: #D1B500; color: #fff; }
.earlyYears { background-color: #2F5163; color: #fff; }
.languageLearning,
.englishLanguage { background-color: #945503; color: #fff; }
.vocationalProf { background-color: #DB7E04; color: #fff; }
.property { background-color: #46AE8B; color: #fff; }
.privateEquity { background-color: #0064B1; color: #fff; }
/*new*/
.aQA { background-color: #0910B8; color: #fff; }
.asia { background-color: #494B85; color: #fff; }
.cambridgeAssessment { background-color: #FF5722; color: #fff; }
.catering { background-color: #41A386; color: #fff; }
.companyNews { background-color: #CDDC39; color: #fff; }
.eUTenders { background-color: #BD9320; color: #fff; }
.governmentPolicy { background-color: #00BCD4; color: #fff; }
.international { background-color: #53878A; color: #fff; }
.marketing { background-color: #009688; color: #fff; }
.militaryEducation { background-color: #F26D80; color: #fff; }
.misc { background-color: #BD1381; color: #fff; }
.secondThoughts { background-color: #4CAF50; color: #fff; }
.transport { background-color: #E980F2; color: #fff; }
.tribalGroup { background-color: #3F51B5; color: #fff; }
.uKEducationNews { background-color: #9C27B0; color: #fff; }


/* = Screen Messages
----------------------------------------------------------------------------------------------------------------- */
.msg { margin: 0 0 20px; padding: 20px; background: #f5f5f5; }
.msg p { margin-bottom: 0; }
.msg ul { list-style: none; padding: 0; margin-bottom: 0; }
.msg ul li { margin-bottom: 5px; }

.msgImp { padding-left: 65px; color: #fff; background: #0064B1 url(/_img/icons/important.svg) no-repeat 30px center; }
.msgImp a { color: #fff; text-decoration: underline; }
.msgError { padding-left: 65px; color: #fff; background: #C10362 url(/_img/icons/error.svg) no-repeat 20px center; }
.msgError a { color: #fff; text-decoration: underline; }
.msgSuccess { padding-left: 65px; color: #fff; background: #28B73B url(/_img/icons/success.svg) no-repeat 20px center; }
.msgSuccess h3 { color: #fff; margin: 0 0 10px; }
.msgSuccess a { color: #fff; text-decoration: underline; }
.msgAssist { background-color: #fff0bc; }
.msgAssist a { color: #000; }

.shiftUp .msg { display: inline-block; }

/* = Columns
----------------------------------------------------------------------------------------------------------------- */
.colsHalf > li,
.colsHalf > .col { width: 50%; float: left; }
/* if news cols */
.news .colsHalf { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.news .colsHalf > li,
.news .colsHalf > .col { width: 50%; float: left; -ms-flex-preferred-size: 50%; flex-basis: 50%; }

.colsHalf > li:nth-of-type(2n-1),
.colsHalf > .col:nth-of-type(2n-1) { padding-right: 16px; }
.colsHalf > li:nth-of-type(2n),
.colsHalf > .col:nth-of-type(2n) { padding-left: 16px; }

.table.colsHalf .col.td:first-child { border-right: 16px transparent solid; }
.table.colsHalf .col.td:last-child { border-left: 16px transparent solid; }

.colsHalf:after,
.colsHalf ul:after { content: ''; display: table; clear: both; }

.colsThird .col { width: 33.33%; width: calc(100% / 3); float: left; }
.colsThird .col:nth-of-type(3n-2) { padding-right: 16px; }
.colsThird .col:nth-of-type(3n-1) { padding-left: 16px; padding-right: 16px; }
.colsThird .col:nth-of-type(3n) { padding-left: 16px; }
.colsThird:after { content: ''; display: table; clear: both; }

.colsFourth li,
.colsFourth .col { width: 25%; padding-left: 16px; padding-right: 16px; float: left; }
.colsFourth li:nth-of-type(4n-3),
.colsFourth .col:nth-of-type(4n-3) { padding-left: 0; }
.colsFourth li:nth-of-type(4n),
.colsFourth .col:nth-of-type(4n) { padding-right: 0; }

.colsFourth:after { content: ''; display: table; clear: both; }

@media screen and (max-width: 960px) {
    .colsFourth li,
    .colsFourth .col { width: 50%; }
    .colsFourth li:nth-of-type(2n-1),
    .colsFourth .col:nth-of-type(2n-1) { padding-left: 0; }
    .colsFourth li:nth-of-type(2n),
    .colsFourth .col:nth-of-type(2n) { padding-right: 0; }
}

@media screen and (max-width: 768px) {
    .news .colsHalf { display: block; }
    .news .colsHalf li,
    .news .colsHalf .col,
    .colsHalf li,
    .colsHalf .col { width: 100%; float: none; }
    .colsHalf li:nth-of-type(2n-1),
    .colsHalf .col:nth-of-type(2n-1) { padding-right: 0; }
    .colsHalf li:nth-of-type(2n),
    .colsHalf .col:nth-of-type(2n) { padding-left: 0; }

    .table.colsHalf .col.td:first-child { border-right: 0; }
    .table.colsHalf .col.td:last-child { border-left: 0; }

    .colsThird .col { width: 100%; float: none; }
    .colsThird .col:nth-of-type(3n-2) { padding-right: 0; }
    .colsThird .col:nth-of-type(3n-1) { padding-left: 0; padding-right: 0; }
    .colsThird .col:nth-of-type(3n) { padding-left: 0; }

    .colsFourth li,
    .colsFourth .col { width: 100%; padding: 0; float: none; }

    .col { margin-bottom: 32px; }
    .col:last-of-type { margin-bottom: 0; }
}

/* = Modules
----------------------------------------------------------------------------------------------------------------- */
.module h3 { margin: 0 0 10px; }

/* = Tabs
----------------------------------------------------------------------------------------------------------------- */
.tabs { margin: 40px 0; }
.tabs > ul { margin: 0; padding: 0; list-style: none; }
.tabs > ul li { display: inline; margin: 0 20px 0 0; }
.tabs > ul li a { display: inline-block; color: #000; }
.tabs > ul li a:hover { color: #666; }
.tabs > ul li a.on { color: #19C5A3; }

.tabs .panel { padding: 20px 0 0; }

/* = Accordions
----------------------------------------------------------------------------------------------------------------- */
.accordion { margin: 40px 0; }
.accordion > h3 { display: block; text-align: center; color: #fff; margin: 0 0 10px; padding: 10px 15px; background: #080808; }
.accordion > h3:hover { cursor: pointer; background: #19C5A3; }
.accordion > h3.on { margin: 0 0 15px; background: #19C5A3; }
.accordion .content { display: none; }
.accordion .content.contentopen { display: block; }

/* = Inline images (CKeditor)
----------------------------------------------------------------------------------------------------------------- */
.inline-image { margin: 30px 0; }
.inline-image--left-half { float: left; margin: 5px 5% 5% 0; width: 50%; }
.inline-image--right-half { float: right; margin: 5px 0 5% 5%; width: 50%; }

.inline-image--left-third { float: left; margin: 5px 4% 4% 0; width: 33.3%; }
.inline-image--right-third { float: right; margin: 5px 0 4% 4%; width: 33.3%; }

@media screen and (max-width: 1024px) {
    .inline-image--left-third { margin: 5px 5% 5% 0; width: 50%; }
    .inline-image--right-third { margin: 5px 0 5% 5%; width: 50%; }
}

@media screen and (max-width: 650px) {
    .inline-image--left-half,
    .inline-image--right-half,
    .inline-image--left-third,
    .inline-image--right-third { float: none; margin: 30px 0; width: 100%; }
}

/* = YouTube Videos (CKeditor)
----------------------------------------------------------------------------------------------------------------- */
.youtube-container { position: relative; margin: 40px 0; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.youtube-container iframe, .youtube-container object, .youtube-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* = Forms
----------------------------------------------------------------------------------------------------------------- */
.survey div, .webForm div { margin: 0 0 20px; }
.survey > div:after, .webForm > div:after { content: ''; display: table; clear: both; }
.survey div em, .webForm div em { display: block; margin-left: 25%; margin-top: 10px; }
.survey label, .webForm label { width: 25%; float: left; padding-right: 8px; padding-top: 10px; }
.survey .submitBtn, .webForm .submitBtn { margin: 20px 0; }
.survey .submitBtn label, .webForm .submitBtn label { display: none; }

.survey .table div, .webForm .table div { margin: 0; }
.survey .table div .td, .webForm .table div .td { margin: 0 0 20px; }

@media screen and (max-width: 750px) {
    .formSubmit > label { display: none; }
}

.currentIssues ul { list-style: none; padding: 0; margin: 0; }
.currentIssues ul li { padding: 0; margin-bottom: 32px; }
.currentIssues ul li .image { margin-bottom: 16px; }

label { display: block; margin-bottom: 16px; }
input.text, textarea, select { width: 75%; padding: 10px; margin: 0; font-size: 1em; font-family: 'Montserrat', sans-serif; border: 1px solid #e5e5e5; background-color: inherit; color: inherit; background: transparent; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; }
input.text:focus, textarea:focus, select:focus { outline: none; border-color: #ccc; }
input.file { margin: 8px 0; }
input.text--small { width: 50%; }

/*Cross browser & device select reset*/
.select { position: relative; width: 75%; float: left; }
.select:after { content: ''; position: absolute; top: 0; width: 0; height: 0; right: 15px; bottom: 0; margin: auto; border-style: solid; border-width: 6px 5px 0px 5px; border-color: #333 transparent transparent transparent; pointer-events: none; }
.select select { content: ''; height: 100%; width: 100%; cursor: pointer; outline: none; padding-right: 40px; -moz-appearance: none; -webkit-appearance: none; -webkit-box-shadow: none; box-shadow: none; -webkit-border-radius: 0; border-radius: 0; }
.select select:-moz-focusring { color: transparent; text-shadow: 0 0 0 #000; }
.select select::-ms-expand { display: none; }
.select select option { background-color: #fff; color: #0B2538; }
/*@-moz-document url-prefix() {
	.select:after { top: 46%; }
}*/


.no-csstransforms3d .select select { padding-right: 10px; }
.no-csstransforms3d .select:after { content: none; }

/*Cross browser & device input reset*/
textarea,
input.text,
input[type="text"],
input[type="button"],
.formSubmit input[type="submit"], /* specific forms only */
.input-checkbox { color: inherit; -webkit-appearance: none; border-radius: 0; }

.formSubmit input[type="submit"] { color: #fff; }

.formSubmit input[type="submit"], /* specific forms only */
.input-checkbox { color: #fff; -webkit-appearance: none; border-radius: 0; }



textarea { min-height: 150px; min-width: 75%; max-width: 75%; }

/*Cross browser & device placeholder reset*/
::-webkit-input-placeholder { color: #000; }
::-moz-placeholder { color: #000; }
:-ms-input-placeholder { color: #000; }
:-moz-placeholder { color: #000; }

input:-webkit-autofill,
select:-webkit-autofill,
input:-webkit-autofill:hover,
select:-webkit-autofill:hover input:-webkit-autofill:focus,
select:-webkit-autofill:focus,
input:-webkit-autofill:active,
select:-webkit-autofill:active { -webkit-animation: autofill 0s forwards; animation: autofill 0s forwards; }

@keyframes autofill {
    100% { background: transparent; color: #000; }
}

@-webkit-keyframes autofill {
    100% { background: transparent; color: #000; }
}

.formList { display: inline-block; padding: 2px 0; line-height: 1.5em; }
.formList label { width: auto; padding: 0 10px 0 0; float: none; }
.formList input { width: auto; margin: 0 10px 0 0; padding: 0; border: 0; }

.checkbox, .check { display: inline-block; padding: 3px 0; }
.checkbox input, .check input { float: left; margin: 0; padding: 0; border: 0; position: relative; }

/*Cross browser & device custom checkbox and radio lists*/
.formList input { opacity: 0; position: absolute; margin: 12px 10px 0 12px; }
.formList label { display: inline-block; vertical-align: middle; margin: 5px 0; cursor: pointer; position: relative }
.formList label:before, .checkbox input:before, .check input:before { content: ''; background: #fff; border: 1px solid #ddd; display: inline-block; vertical-align: middle; width: 16px; height: 16px; padding: 2px; margin-bottom: 4px; margin-right: 10px; text-align: center; cursor: pointer }
.formListRadio label:before,
.radList label:before { -webkit-border-radius: 16px; border-radius: 16px; }
.formListRadio label.checked:after,
.radList label.checked:after { content: ''; position: absolute; left: 6px; top: 6px; width: 10px; height: 10px; border-radius: 10px; background: #333; }
.formListCheckbox label.checked:after,
.checkList label.checked:after,
.checkbox input.checked:after,
.check input.checked:after { content: ''; position: absolute; left: 8px; top: 4px; width: 4px; height: 10px; border: solid #333; border-width: 0 2px 2px 0; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }

/* IE9 input fallback */
.no-csstransforms3d .formList { margin-top: 6px; }
.no-csstransforms3d .checkbox, .no-csstransforms3d .check { padding: 10px 0; }
.no-csstransforms3d .formList input { opacity: 1; position: relative; margin: 0 10px 0 0; }
.no-csstransforms3d .formList label { margin: 0 0 5px; }
.no-csstransforms3d .formList label:before,
.no-csstransforms3d .checkbox input:before,
.no-csstransforms3d .formListCheckbox label.checked:after,
.no-csstransforms3d .checkList label.checked:after,
.no-csstransforms3d .checkbox input.checked:after,
.no-csstransforms3d .formListRadio label.checked:after,
.no-csstransforms3d .radList label.checked:after { content: none; }

.labelfullwidth div { clear: left; margin: 0 0 10px; }
.labelfullwidth div .label { width: 100%; padding: 0 0 10px; }
.labelfullwidth label.labelhide { display: none; }
.labelfullwidth input.text, .labelfullwidth textarea, .labelfullwidth select { width: 100%; }
.labelfullwidth .formList { width: 100%; float: left; margin: 0 0 10px; }
.labelfullwidth .formList input { float: left; margin: 3px 5px 0 0; }
.labelfullwidth .formList label { width: auto; float: none; padding: 0; }
.labelfullwidth .formList br { clear: left; }

@media screen and (max-width: 750px) {
    .survey div em, .webForm div em { margin-top: 5px; margin-left: 0; }
    .select { width: 100%; }
    .survey label, .webForm label { width: 100%; float: left; padding-top: 0; padding-bottom: 8px; margin-bottom: 0; }
    .survey > div > label, .webForm > div > label { margin-bottom: 8px; }
    input.text, textarea, select { width: 100%; }
    input.file { margin-top: 0; margin-bottom: 0; }
    .formList { padding-top: 0; padding-bottom: 0; }
    .checkbox { padding-top: 5px; }
    textarea { min-width: 100%; max-width: 100%; }
}

/* = No Javascript
----------------------------------------------------------------------------------------------------------------- */
.no-js .tabs ul { display: none; }
.no-js .tabs .panel { padding: 0; }
.no-js .accordion .content { display: block; }
.no-js header { padding-top: 0; }
.no-js header .nojavascript { padding: 10px 15px; text-align: center; background-image: none; }

/* = Clearing
----------------------------------------------------------------------------------------------------------------- */
.clearFix:after, .container:after, .cols:after, .progress:after, .template:after, .survey > div:after, .webForm > div:after, .cards-list > ul:after { content: ""; display: table; clear: both; }