﻿* { -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%; }

/* = Body
----------------------------------------------------------------------------------------------------------------- */
body { color: #0c4964; font-size: 1em; text-align: left; font-family: 'Open Sans', Arial, Sans-Serif; background: #fff; }

/* = Typography
----------------------------------------------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6 { margin: 0 0 20px; color: #0c4964; font-weight: 600; }
h1 { font-size: 2.7em; }
h2 { font-size: 1.5em; }
h3 { font-size: 1.4em; }
h4 { font-size: 1.3em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1.2em; }

p { margin: 0 0 20px; line-height: 1.55em; }

blockquote { margin: 0 0 20px; font-weight: 300; font-style: italic; font-size: 1.5em; text-align: center; }
blockquote p { margin: 0; line-height: 1.4em; text-indent: 25px; background: url(/_img/icons/quotes-start.svg) no-repeat top left; }
blockquote p span { width: 19px; height: 19px; display: inline-block; margin: 0 0 0 5px; vertical-align: bottom; background: url(/_img/icons/quotes-end.svg) no-repeat center center; }
blockquote cite { font-size: 0.6em; font-style: normal; font-weight: 400; }

a { color: #0198c3; text-decoration: none; }
a:hover { color: #0198c3; text-decoration: none; }

img { vertical-align: bottom; height: auto; -ms-interpolation-mode: bicubic; }
hr { margin: 40px 0; height: 1px; border: 0; border-top: 1px solid #ccc; }
small { font-size: 0.8em; color: #a6b1b7; }
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 { clear: both; }
.leader { font-size: 1.25em; }
.textLeft { text-align: left; }
.textCenter { text-align: center; }
.textRight { text-align: right; }
.highlight { color: #0198c3; }
.marked { color: #fff; background: #0198c3; }
.meta { color: #023850; font-style: italic; font-weight: bold; font-size: 0.9em; margin-bottom: 20px; }
.lrgfont { font-size: 3em; }
.extramargin { margin-bottom: 60px; }

@media screen and (max-width: 740px) {
    .leader { font-size: 1.1em; }
}

@media screen and (max-width: 480px) {
    .lslide blockquote {font-size: 1.25em;}
}

/* = Colours
----------------------------------------------------------------------------------------------------------------- */
.branddarkblue { color: #fff; background: #023850; }
.brandblue { color: #fff; background: #0198c3; }
.brandred { color: #fff; background: #d1594b; }
.block { display: inline-block; padding: 50px 50px 10px 20px; font-weight: 600; }

/* = Buttons
----------------------------------------------------------------------------------------------------------------- */
.btn, .hs-button,
.hbspt-form  .hs_submit.hs-submit  .actions .hs-button { display: inline-block; padding: 10px 20px;     line-height: 1.55em; color: #fff; font-size: 1em; font-family: 'Open Sans', Arial, Sans-Serif; outline: none; cursor: pointer; border: 1px solid #0198c3; background: #0198c3; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; box-shadow: none; text-shadow: none; }
.btn:hover, .hs-button:hover { color: #fff; }

.btnImpact { border-color: #d1594b; background: #d1594b; }

input.btn { font-size: 1em; line-height: 1.5em; }

.applyButtons {display: block;}

.btnEnrol { margin-bottom: 20px; text-align: center; width: 100%; }

@media screen and (max-width: 960px) {
.applyButtons .btn  { display: block; width:100%; }
.applyButtons .btn + .btn {margin-top:15px;}
}

@media screen and (max-width: 750px) {
    .applyButtons  { margin-bottom: 50px; }

    }

@media screen and (max-width: 480px) {
    .btn, .hs-button { font-size: 0.8em; padding: 5px 10px }
    .btnEnrol { font-size: 1em; padding: 10px 20px; }
}

/* = Lists
----------------------------------------------------------------------------------------------------------------- */
ul { margin: 0 0 20px 15px; line-height: 1.5em; }
ul li { margin: 0 0 10px; }
ul li ul { margin-top: 20px; margin-left: 30px; list-style-type: circle; }

ol { margin: 0 0 20px 18px; 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 20px; line-height: 1.5em; }
dt { color: #111; font-weight: 600; }
dd { margin: 0 0 20px; }

.inline { margin-left: 0; list-style: none; }
.inline li { display: inline; margin: 0 15px 0 0; }

.breadcrumb ul { margin-left: 0; list-style: none; }
.breadcrumb ul li { display: inline; margin: 0 10px 0 0; }

.paging { margin: 0 0 20px; }
.paging ul { margin: 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: 600; padding: 6px 12px; color: #0c4964; }
.paging ul li a:hover { background: #edeff0; }
.paging ul li a.on { background: #023850; color: #fff; }

/* = Tables
----------------------------------------------------------------------------------------------------------------- */
table { width: 100%; margin: 0 0 20px; border-spacing: 0; border-collapse: collapse; }
th { padding: 15px 10px; color: #023850; border-bottom: 1px solid #023850; }
tr:nth-child(even) td { background: #edeff0; }
td { padding: 15px 10px; border-bottom: 1px solid #e5e5e5; background: #fff; }
.rowItemStandout td { font-weight: 600; }

/* = Screen Messages
----------------------------------------------------------------------------------------------------------------- */
.msg { margin: 0 0 20px; padding: 20px; background: #edeff0; }
.msg p { margin-bottom: 0; }
.msg ul { margin-bottom: 0; }
.msg ul li { margin-bottom: 5px; }

.msgImp { padding-left: 65px; color: #fff; background: #0198c3 url(/_img/icons/important.svg) no-repeat 30px center; }
.msgImp a { color: #fff; font-weight: 600; }
.msgError { padding-left: 65px; color: #fff; background: #d1594b url(/_img/icons/error.svg) no-repeat 20px center; }
.msgError a { color: #fff; font-weight: 600; }
.msgSuccess { padding-left: 65px; color: #fff; background: #91baa3 url(/_img/icons/success.svg) no-repeat 20px center; }
.msgSuccess h3 { margin: 0 0 10px; color: #fff; }
.msgSuccess a { font-weight: 600; }
.msgAssist { background-color: #edeff0; }

.no-svg .msgImp { background-image: url(/_img/icons/important.png); }
.no-svg .msgError { background-image: url(/_img/icons/error.png); }
.no-svg .msgSuccess { background-image: url(/_img/icons/success.png); }

/* = Columns
----------------------------------------------------------------------------------------------------------------- */
.colsHalf .col { width: 49%; float: left; margin-right: 2%; }
.colsThird .col { width: 32%; float: left; margin-right: 2%; }
.colsFourth .col { width: 22%; float: left; margin-right: 4%; }
.cols .endCol { margin-right: 0; }

@media screen and (max-width: 740px) {
    .colsHalf .col { width: 100%; margin-right: 0; }
    .colsThird .col { width: 100%; margin-right: 0; }
    .colsFourth .col { width: 100%; margin-right: 0; }
}

/* = Modules
----------------------------------------------------------------------------------------------------------------- */
.module { margin: 0 0 20px; padding: 30px; background: #eeeff1; }
.module h3 { margin: 0; line-height: 1em; }
.module h3 a { color: #0c4964; }
.module p { margin: 20px 0 0; }

.moduleBlue { color: #fff; background: #005c85; }
.moduleBlue h3 { color: #fff; }
.moduleBlue h3 a { color: #fff; }

/* = Tabs
----------------------------------------------------------------------------------------------------------------- */
.tabs { margin: 0 0 20px; }
.tabs > ul { margin: 0; list-style: none; }
.tabs > ul > li { display: inline-block; width: 32.5%; margin: 0 0 4px; font-size: 0.9em; }
.tabs > ul > li a { display: block; color: #000; padding: 5px 15px; border: 2px solid #ccc; background: #f8f8f8; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; }
.tabs > ul > li a:hover { background: #f5f5f5; }
.tabs > ul > li a.on { font-weight: 600; background: #fff; border-bottom-color: #ccc; border-left: 4px solid #0198c3; }

.tabs .panel { padding: 24px 0 0; }

.module + .tabs {margin-top:40px;}

.no-js .tabs ul { display: none; }
.no-js .tabs .panel { margin: 0; padding: 0; border: 0; }

@media screen and (max-width: 1300px) {
    .tabs > ul > li { display: inline-block; width: 49%; margin: 0 0 4px; }
    .tabs > ul > li a { display: block; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; }
    .tabs > ul > li a.on { border-bottom-color: #ccc; border-left: 4px solid #0198c3; }

    .tabs .panel { border-top: none; padding: 24px 0 0; }
}

@media screen and (max-width: 600px) {
    .tabs > ul > li { width: 100%; margin: 0 0 4px; }

    .module + .tabs {margin-top:35px;}
}


/* = Accordions
----------------------------------------------------------------------------------------------------------------- */
.accordion { margin: 0 0 20px; }
.accordion h3 { display: block; color: #0c4964; font-size: 1.375em; margin: 0 0 10px; padding: 10px 15px; border: 1px solid #e6e6e6; background: #f5f5f5 url(/_img/arrows/down.svg) no-repeat right 15px center; }
.accordion h3:hover { cursor: pointer; background-color: #f9f9f9; }
.accordion h3.on { color: #fff; border-color: #0198c3; background-color: #0198c3; background-image: url(/_img/arrows/up.svg); }
.accordion h3 span { font-weight: 400; }
.accordion .content { display: none; }
.accordion .content.contentopen { display: block; }

.no-svg .accordion h3 { background-image: url(/_img/arrows/down.png); }
.no-svg .accordion h3.on { background-image: url(/_img/arrows/up.png); }

.no-js .accordion h3 { background: #f5f5f5; }
.no-js .accordion .content { display: block; }

/* = Forms
----------------------------------------------------------------------------------------------------------------- */
.webForm div { margin: 0 0 20px; }
.webForm div em { display: block; margin-top: 10px; font-size: 0.9em; }

label { display: block; padding: 0 0 10px; font-weight: 600; }
input.text, textarea, select, .hs-input,
.hbspt-form input.hs-input, 
.hbspt-form textarea.hs-input,
.hbspt-form select.hs-input  { width: 100%; padding: 10px; font-size: 1em;   height: auto;  line-height: normal; color: #0c4964; font-family: 'Open Sans', Arial, Sans-Serif; border: 1px solid #e5e5e5; background: #fff; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; box-shadow:none; }

.hs-input,
.hbspt-form input.hs-input, 
.hbspt-form textarea.hs-input,
.hbspt-form select.hs-input  {box-sizing: border-box !important; } 


.hbspt-form select.hs-input  {     padding: 9px 10px; box-sizing: content-box; } 
.hbspt-form .hs-form-field label { margin:0 !important; } 
.hbspt-form .hs-form-field label span {  font-family: 'Open Sans', Arial, Sans-Serif;  font-size: 1.15em; }

.hbspt-form li.hs-form-radio {margin-bottom: 5px;}
.hbspt-form .no-list.hs-error-msgs {    padding: 5px 0 0; }
.hbspt-form  .legal-consent-container { max-width: 500px; }
.hbspt-form  .legal-consent-container p { font-family: 'Open Sans', Arial, Sans-Serif;  font-size: .9em; }

.hbspt-form  .hs_submit.hs-submit  .actions  {margin:0; padding: 0;     text-align: left; }

input.text:focus, textarea:focus, select:focus, .hs-input:focus { outline: none; border-color: #ccc; }

.formList { display: block; line-height: 1.5em; }
.formList label { display: inline-block; padding: 0; font-weight: 400; }
.formList input { width: auto; margin: 0 10px 0 0; padding: 0; border: 0; }

.checkbox { display: block; padding: 0; }
.checkbox input { margin: 0; padding: 0; border: 0; }

.check { display: block; padding: 0; }
.check input { margin: 0; padding: 0; border: 0; }

.hs-input { width: 100% !important; }
.hs-form-field { margin: 0 0 20px; }
.hs-form fieldset { max-width: none !important; }
.hs-form fieldset.form-columns-1 input[type="checkbox"],
.hs-form fieldset.form-columns-1 input[type="radio"] { width: auto !important; margin: 0 10px 0 0; padding: 0; border: 0; }
.hs-form fieldset.form-columns-1 .input { margin-right: 0; }
.hs-field-desc { font-weight: 600; }
.hs-richtext { margin: 0 0 20px; line-height: 1.55em; }
.hs-form-field label .hs-input { width: auto !important; }

.inputs-list { margin: 0; list-style: none; list-style-position: inside; }
.inputs-list li { margin: 0; }
.inputs-list li label { font-weight: 400; }

.grid .box.enquirybox .hs-form-field { margin: 0; }
.grid .box.enquirybox .hs-form-field label { padding: 0 0 5px; }
.grid .box.enquirybox .hs-form .form-columns-1 { width: 49%; float: left; margin: 0 0 10px; margin-right: 2%; }
.grid .box.enquirybox .hs-form .form-columns-1:nth-child(2n+2) { margin-right: 0; }
.grid .box.enquirybox .hs-form .hs-button { margin: 27px 0 0; clear: right; border-color: #fff; background: none; }
.grid .box.enquirybox .hs-form .hs_mobilephone label { padding: 0 0 5px; }
.grid .box.enquirybox .hs-form select { padding: 9px; }
.grid .box.enquirybox .hs-form .inputs-list li { list-style: none; }
.grid .box.enquirybox .hs-form .hs_submit { width: 49%; float: left; margin: 0 0 10px; margin-right: 0; }

.grid .box.enquirybox .hs-form-field { float: left; width: 48%; margin: 0 2% 10px 0; }
.grid .box.enquirybox .hs-form-field label .hs-input { margin-right: 10px; }


@media screen and (max-width: 740px) {
    .webForm div { margin: 0 0 15px; }
    .webForm div em { margin-top: 5px; }

    label { padding-bottom: 5px; }
    .grid .box.enquirybox .hs-form .form-columns-1 { width: 100%; }
    .grid .box.enquirybox .hs-form .hs-button { margin-top: 10px; }
    .grid .box.enquirybox .hs-form .hs_submit { width: 100%; }
    
    .grid .box.enquirybox .hs-form-field { width: 100%; }
}


/* = Error
----------------------------------------------------------------------------------------------------------------- */
#error header { position: static; background: #000; }
#error header .container { border: 0; }

/* = Clearing
----------------------------------------------------------------------------------------------------------------- */
.container, .cols, .grid, #home .hbspt-form, .news > ul, .news > ul > li { zoom: 1; }
.container:after, .cols:after, .grid:after, #home .hbspt-form:after, .news > ul:after, .news > ul > li:after { content: "."; clear: both; display: block; height: 0; visibility: hidden; overflow: hidden; }
