* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
@font-face { font-family: 'arialregular'; src: url(https://res.cloudinary.com/dyw8mv3b0/raw/upload/font/arial-webfont.woff2) format('woff2'), url(https://res.cloudinary.com/dyw8mv3b0/raw/upload/font/arial-webfont.woff) format('woff'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'arialbold'; src: url(https://res.cloudinary.com/dyw8mv3b0/raw/upload/font/arialbd-webfont.woff2) format('woff2'), url(https://res.cloudinary.com/dyw8mv3b0/raw/upload/font/arialbd-webfont.woff) format('woff'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'polhome-icons'; src: url(https://res.cloudinary.com/dyw8mv3b0/raw/upload/font/icons/polhome-icons.woff2) format('woff2'), url(https://res.cloudinary.com/dyw8mv3b0/raw/upload/font/icons/font/polhome-icons.woff) format('woff'), url('https://res.cloudinary.com/dyw8mv3b0/raw/upload/font/icons/polhome-icons.ttf') format('truetype'); font-weight: normal; font-style: normal; }

/* = 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: #1d1d1c; font-size: 14px; text-align: left; font-family: 'Open Sans', sans-serif; text-rendering: optimizeLegibility; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; background: #fff; }

.page-loading { position: relative; }
.page-loading:after { content: ''; position: fixed; top: 0; left: 0; bottom: 0; width: 100%; height: 100%; height: 100vh; background: rgba(255, 255, 255, 0.5) url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/loader.gif) no-repeat center center; z-index: 1; }

@media screen and (max-width: 600px) {
    .page-loading:after { background-size: 24px; }
}

/* = Icon font
----------------------------------------------------------------------------------------------------------------- */
.icon:before,
.icon:after,
.menu ul li.liHasChildren span:after,
.paging ul li.first:before,
.paging ul li.prev:before,
.paging ul li.next:before,
.paging ul li.last:before,
.paging ul li.last:after,
.paging ul li.first:after,
blockquote:before,
.tick-list > li:before,
.accordion > h5:after,
.must-reads > li:after,
.checkoutProgress li a:before,
.ss-filters .news-title span:after,
.menu--tw > a span:before,
.sticky-srch:before { font-family: "polhome-icons"; font-style: normal; font-weight: normal; speak: none; display: inline-block; text-decoration: inherit; width: 1em; text-align: center; font-variant: normal; text-transform: none; line-height: 1em; }

.icon--twitter:before,
.menu--tw > a span:before { content: '\f099'; }
.menu--tw > a span:before { padding-right: 4px; }

.icon--facebook:before { content: '\f09a'; }
.icon--linkedIn:before { content: '\f0e1'; }
.icon--instagram:before { content: '\f16d'; }
.icon--youtube:before { content: '\f16a'; }
.icon--email:before { content: '\e815'; padding: 0 4px; font-size: .9em; text-decoration: none; }
.icon--chevDown:after { content: '\e808'; }
.icon--chevLeft:before { content: '\f104'; }
.icon--chevRight:after { content: '\f105'; }
.icon--arrowLeft:before { content: '\f177'; }
.icon--arrowRight:after { content: '\f178'; }
.icon--search:after { content: '\e80c'; }
.icon--close:after { content: '\e819'; vertical-align: top; }
.icon--clock:after { content: '\e813'; }
.icon--all:after { content: '\e80a'; padding-left: 10px; line-height: 1; display: inline; }
.icon--mic:after { content: '\e812'; }
.icon--info:after { content: '\e80d'; }
.icon--plus:after { content: '\e81b'; }
.icon--minus:after { content: '\e81d'; }
.icon--plusSlim:after { content: '\e81c'; }
.icon--minusSlim:after { content: '\e81e'; }
.icon--cat:before { content: '\e82d'; }
.icon--tag:before { content: '\e82b'; }
.icon--cal:before { content: '\e82e'; }
.icon--keyInfo:after { content: '\f175'; position: absolute; top: 6px; right: 0; }
.icon--external:before { content: '\f08e'; padding: 0 4px; font-size: .9em; text-decoration: none; }
.icon--subsClose:before { content: ''; width: 12px; height: 12px; margin: -1px 7px 0 0; background: url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/icons/close-thin.svg) center no-repeat; background-size: 10px; vertical-align: middle; }
blockquote:before { content: '\e81f'; }
.tick-list > li:before { content: '\e823'; }
.icon--apple:before { content: '\f179'; padding-right: 5px; color: #666; }
.icon--spotify:before { content: '\f1bc'; padding-right: 5px; color: #1DB954; }
.icon--soundCloud:before { content: '\f1be'; padding-right: 12px; color: #ff7700; }
.icon--playerFm:before { content: '\e825'; padding-right: 5px; color: #c90a25; }
.paging ul li.first:before { content: '\e809'; width: 7px; margin-right: -2px; }
.paging ul li.first:after { content: '\e809'; width: 7px; }
.paging ul li.prev:before { content: '\e809'; }
.paging ul li.next:before { content: '\e80a'; }
.paging ul li.last:before { content: '\e80a'; width: 7px; }
.paging ul li.last:after { content: '\e80a'; width: 7px; margin-left: -2px; }

.btn.icon--prev,
.goBackFromSummary .btn { line-height: 1.65em; background-image: url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/icons/caret-left.svg); background-repeat: no-repeat; background-position: 1em center; background-size: 6px auto; padding-left: 2em; }
.btn.icon--next { line-height: 1.65em; background-image: url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/icons/caret-right.svg); background-repeat: no-repeat; background-position: right 1em center; background-size: 6px auto; padding-right: 2em; }

@media screen and (min-width: 851px) {
    .menu ul li.liHasChildren:not(.noSub) > a span:after { content: '\e800'; padding-left: 6px; color: #a8ddde; }
}

/* = Typography
----------------------------------------------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 { font-family: 'arialbold'; margin: 0 0 15px; color: #1d1d1c; line-height: normal; font-weight: normal; }

.h1, h1 { font-size: 34px; margin: 0 0 20px; }
.h2, h2 { font-size: 30px; line-height: 1.15em; }
.h3, h3 { font-size: 24px; }
.h4, h4 { font-size: 22px; }
.h4--sm { font-size: 20px; }
.h5, h5 { font-size: 18px; }
.h6, h6 { font-size: 16px; }

.main-content h1 { margin-bottom: 25px; border-bottom: 1px solid #1d1d1c; padding-bottom: 5px; line-height: 1.25em; }

.main-content > h2, .main-content > h3, .main-content > h4, .main-content > h5, .main-content > h6,
.av-article > h2, .av-article > h3, .av-article > h4, .av-article > h5, .av-article > h6 { line-height: 1.25em; }

p { margin: 0 0 20px; line-height: 1.65em; }
.leader { font-size: 16px; }

.main-content > p,
.main-content > ul,
.main-content > ol { font-size: 16px; line-height: 1.75em; }

.main-content > p strong,
.main-content > p b { font-weight: 600; }

.main-content > p:last-child,
.main-content > ul:last-child,
.main-content > ol:last-child { margin-bottom: 5px; }

.main-content .leader { font-size: 18px; font-weight: 600; }

.arial { font-family: 'arialbold'; line-height: normal; }

blockquote { margin: 40px 0; padding: 35px 0; display: block; border-width: 2px 0; border-style: solid; border-color: #eee; position: relative; }
blockquote:before { position: absolute; top: 0em; left: 50%; width: 85px; font-size: 42px; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: #00a3a6; background: #fff; }

blockquote p { margin: 0 0 15px; font-size: 20px; line-height: 1.65em; font-family: 'Open Sans', sans-serif; font-weight: 600; }
blockquote p:last-child { margin: 0; }
blockquote cite { font-size: 1em; font-style: normal; margin-top: 15px; display: block; }
blockquote p cite { font-size: 1em; }

a { color: #00A3A6; text-decoration: none; -webkit-transition: color .2s ease; transition: color .2s ease; }
a:hover { color: #00A3A6; text-decoration: none; }

.av-article > p > a:not(.btn),
.template--1col .main-content p a:not(.btn) { text-decoration: underline; }

img { vertical-align: bottom; height: auto; -ms-interpolation-mode: bicubic; }
hr { margin: 40px 0; height: 1px; border: 0; border-top: 1px solid #ddd; }
.main-content hr { margin: 35px 0; }

small { 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; }

.floatLeft { float: left; }
.floatRight { float: right; }
.hide { display: none; }
.hideText { text-indent: 100%; white-space: nowrap; overflow: hidden; }
.clr { clear: both; }

.textCenter { text-align: center; }

.highlight { color: #00A3A6; }
.marked { color: #fff; background: #00A3A6; }
.meta { color: #666; font-style: italic; font-size: 0.9em; margin-bottom: 10px; }
.green { color: #00A3A6; }

.lazyload,
.lazyloading { opacity: 0; }
.lazyloaded { opacity: 1; -webkit-transition: opacity .25s; transition: opacity .25s; }
.no-img { opacity: 0; }

img[data-sizes="auto"] { display: block; width: 100%; }

@media screen and (max-width: 1024px) {
    .h1, h1 { font-size: 30px; }
    .h2, h2 { font-size: 26px; }
}

@media screen and (max-width: 600px) {
    blockquote { margin: 40px 0 35px; }

    .h1, h1 { font-size: 28px; }
    .h2, h2 { font-size: 24px; }
    .h3, h3 { font-size: 22px; }
    .h4, h4 { font-size: 20px; }
}

@media screen and (max-width: 1024px) and (min-width: 601px) {
    .cta-block .h2 { font-size: 30px }
}

@media screen and (max-width: 600px) and (min-width: 481px) {
    .cta-block .h2 { font-size: 28px }
}

@media screen and (max-width: 480px) {
    .h1, h1 { font-size: 26px; }
    .h2, h2 { font-size: 22px; }
    .h3, h3 { font-size: 20px; }
    .h4, h4 { font-size: 18px; }

    .main-content h1 { margin-bottom: 22px; }

    blockquote { padding: 32px 0 30px; text-align: center; }
    blockquote p { font-size: 18px; }
    blockquote:before { width: 80px; font-size: 40px; }
    blockquote cite { font-size: .9em; }
}

@media screen and (max-width: 400px) {
    .h1, h1 { font-size: 25px; }

    blockquote { margin: 35px 0; padding: 32px 0 28px; }
    blockquote:before { width: 76px; font-size: 38px; }

    .main-content > p,
    .main-content > ul,
    .main-content > ol { font-size: 15px; }

    .main-content .leader { font-size: 16px; }
    .main-content hr { margin: 30px 0; }
}

@media screen and (max-width: 340px) {
    blockquote { margin: 32px 0; padding: 32px 0 25px; }
    .leader { font-size: 15px; }
}

/* = Flex
----------------------------------------------------------------------------------------------------------------- */
.flx { display: -ms-flexbox; display: -webkit-flex; display: flex; }
.flx-inl { display: -ms-inline-flexbox; display: -webkit-inline-flex; display: inline-flex; }
.flx--col { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; }
.flx--jc { -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
.flx--ac { -webkit-align-content: center; -ms-flex-line-pack: center; align-content: center; }
.flx--ai { -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
.flx--wr { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.flx--noSh { -webkit-flex: 0 0 auto; -ms-flex: 0 0 auto; flex: 0 0 auto; }

/* = Buttons
----------------------------------------------------------------------------------------------------------------- */
.btn { display: inline-block; margin: 0; padding: .5em 1.25em; color: #fff; font-weight: 700; font-family: 'Open Sans', sans-serif; outline: none; cursor: pointer; border: 1px solid #00A3A6; background: #00A3A6; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; }
.btn:hover { color: #fff; opacity: 0.8; }

.btn--small { font-size: 13px; }
.btn--xsmall { font-size: 12px; }
.btn--xPadding { padding: .75em 1.55em; }
.btn--black { border-color: #1d1d1c; background: #1d1d1c; }
.btn--outlineWhite { border-color: #fff; color: #fff; background: transparent; }
.btn--outlineBlack { border-color: #1d1d1c; color: #1d1d1c; background: transparent; }
.btn--outlineBlack:hover { color: #1d1d1c; }

.podcast-buttons { width: 100%; display: table; padding: 10px; border: 1px solid #b3b3b3; -webkit-border-radius: 6px; border-radius: 6px; margin-bottom: 30px; }
.podcast-buttons .btn { padding: 0 .5em; display: table-cell; text-align: center; border: none; color: #1d1d1c; background: transparent; border-left: 1px solid #b3b3b3; }
.podcast-buttons .btn:first-child { border: none; }
.podcast-buttons .btn:hover { color: #1d1d1c; opacity: 1; text-decoration: underline; }
.podcast-buttons .btn:before { text-decoration: none; }

input.btn { font-size: 1em; line-height: 1.65em; }

@media screen and (max-width: 480px) {
    .podcast-buttons { padding: 0; display: block; border: none; }
    .podcast-buttons .btn { padding: 10px; display: block; border: none; background: #e8e8e8; margin: 10px 0 0; }
}

@media screen and (max-width: 400px) {
    .podcast-buttons .btn { padding: 8px; }
}

/* = Lists
----------------------------------------------------------------------------------------------------------------- */
ul { margin: 0 0 25px; padding-left: 20px; line-height: 1.5em; }
ul li { margin: 0 0 10px; }
ul li ul { margin-top: 20px; margin-left: 20px; list-style-type: circle; }
ul li ul b { font-weight: 600; }

ol { margin: 0 0 25px; padding-left: 25px; line-height: 1.5em; }
ol li { margin: 0 0 10px; }
ol li ol { margin-top: 20px; margin-left: 20px; list-style-type: lower-latin; }

ol { list-style: none; counter-reset: counter-numbers; padding: 0; }
ol > li { counter-increment: counter-numbers; padding-left: 25px; position: relative; }
ol > li:before { content: counter(counter-numbers) ". "; position: absolute; left: 0; color: #00a3a6; font-weight: 600; }
ol > li > ol { margin-top: 20px; margin-left: 20px; list-style-type: lower-latin; }
ol > li > ol > li { padding: 0; }
ol > li > ol > li:before { content: none; font-weight: normal; }

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; margin: 0 15px 0 0; }

.paging { margin: 20px 0 40px; padding-top: 20px; border-top: 1px solid #1d1d1c; }
.paging:last-child { margin-bottom: 0; }
.col--75 .paging { margin-bottom: 25px; }

.paging ul { margin: 0; padding: 0; list-style: none; text-align: center; line-height: 1; }
.paging ul li { display: inline-block; vertical-align: middle; min-width: 28px; padding: 0 0 0 4px; margin: 0; border-left: 1px solid #c1c1c1; text-align: center; position: relative; }
.paging ul li:first-child { padding: 0; border: none; }
.paging ul li:last-child { border: none; }
.paging ul li.det { margin-right: 10px; border: none; font-size: 13px; }
.paging ul li a { display: inline-block; padding: 4px 6px; font-size: 15px; color: #1d1d1c; }
.paging ul li a:hover { color: #00A3A6; }
.paging ul li a.on { font-weight: 700; position: relative; }
.paging ul li a.on:after { content: ''; position: absolute; width: calc(100% - 10px); height: 1px; left: 5px; bottom: 0; background: #1d1d1c; }
.paging ul li.prev + li { border: none; }
.paging ul li.next { margin-left: 4px; }

.paging ul li.first, .paging ul li.prev,
.paging ul li.next, .paging ul li.last { border: none; padding: 5px 0 4px; }

.paging ul li.first:hover, .paging ul li.prev:hover,
.paging ul li.next:hover, .paging ul li.last:hover { color: #00A3A6; }

.paging ul li.prev a,
.paging ul li.first a,
.paging ul li.next a,
.paging ul li.last a { font-size: 0; position: absolute; top: 0; left: 0; padding: 0; width: 100%; height: 100%; }

.tick-list { padding: 0; list-style: none; }
.tick-list > li { position: relative; padding-left: 25px; }
.tick-list > li:before { position: absolute; top: 4px; left: 0; color: #00a3a6; }
.tick-list--square > li { padding-left: 35px; }
.tick-list--square > li:before { top: 2px; padding: 1px; border: 2px solid #00a3a6; }

.must-reads > li { margin: 0px 0 20px; padding: 20px 45px 20px 50px; border: 1px solid #00a3a6; border: 1px solid rgba(0, 163, 166, 0.4); }
.must-reads > li a { display: block; color: #1d1d1c; }
.must-reads > li a:hover { text-decoration: underline; }
.must-reads > li:before { content: counter(counter-numbers); position: absolute; top: -1px; left: -1px; text-align: center; width: 26px; height: 26px; line-height: 26px; color: #fff; background: #00a3a6; border: 2px solid #00a3a6; }
.must-reads > li:after { content: '\f08e'; position: absolute; top: -1px; right: -1px; width: 24px; height: 24px; border: 1px solid #00a3a6; border-color: rgba(0, 163, 166, 0.4); font-size: 14px; line-height: 26px; text-align: center; }

@media screen and (min-width: 481px) {
    .paging ul li a { padding: 4px 10px; }
}

@media screen and (min-width: 1025px) {
    .paging ul li a { padding: 4px 12px; }
}

@media screen and (max-width: 1080px) {
    .col--75 .paging { margin-bottom: 20px; }
}

@media screen and (max-width: 600px) {
    .paging { margin: 15px 0 40px; }

    .col--75 .paging { margin-bottom: 15px; }
}

@media screen and (max-width: 480px) {
    .must-reads > li { padding: 20px 40px 20px 45px; line-height: 1.65em; }
}

@media screen and (max-width: 400px) {
    .paging { margin: 15px 0 35px; }

    .col--75 .paging { margin-bottom: 10px; }
}

@media screen and (max-width: 380px) {
    .paging ul li a { padding: 4px 5px; }
}

@media screen and (max-width: 340px) {
    .paging ul li { min-width: 27px; }
    .paging ul li.first,
    .paging ul li.prev,
    .paging ul li.next,
    .paging ul li.last { min-width: 24px; }
}

/* =  Checkout
----------------------------------------------------------------------------------------------------------------- */
.progress-bar { background: #d2eaea; }

.checkoutProgress { display: table; width: 100%; background: #d2eaea; }
.checkoutProgress li { display: table-cell; border: 1px solid #fff; text-align: center; }
.checkoutProgress li.progressActive { background: #00a3a6; }
.checkoutProgress .btn { padding: .65em; width: 100%; color: #00a3a6; font-weight: 600; background: #dbf1f1; border: none; }
.checkoutProgress .btn:hover { opacity: 1; background: #d2eaea; }
.checkoutProgress .progressActive .btn { color: #fff; background: #00a3a6; }
.checkoutProgress li a:before { display: block; margin: 2px auto 2px; }
.checkoutProgress a[id$="Basket"]:before { content: '\e826'; font-size: 1.125em; }
.checkoutProgress a[id$="Login"]:before { content: '\e82a'; font-size: 1.1em; }
.checkoutProgress a[id$="Address"]:before { content: '\f2bc'; font-size: .95em; }
.checkoutProgress a[id$="Summary"]:before { content: '\f0f6'; padding-right: 5px; }
.checkoutProgress a[id$="Payment"]:before { content: '\e828'; padding-right: 6px; }
.checkoutProgress a[id$="Complete"]:before { content: '\e823'; font-size: 1.125em; }

.checkout-summary .col:first-child { margin-bottom: 30px; }
.checkout-summary .colsHalf .col { float: none; width: 100%; }
.checkout-summary .moduleSurvey h2 { display: none; }
.checkout-summary .moduleSurvey .survey { border: 1px solid #00a3a6; margin: 20px 0; padding: 25px 30px; background: #f9f9f9; }
.checkout-summary .moduleSurvey .survey .questTypeOneToMany > label { float: none; font-weight: 600; margin: 0px 0 10px; padding: 0; display: block; width: 100%; }
.checkout-summary .moduleSurvey .formList { display: block; }
.checkout-summary .coDeliveryAddress h2 { display: none; }
.checkout-summary .coDeliveryAddress { float: left; width: 50%; }
.checkout-summary .coDeliveryAddress .btn { padding: .25em 1em; background: none; border-color: #9e9e9e; color: #1d1d1c; border-radius: 4px; }
.checkout-summary .coTerms { float: left; width: 50%; }
.checkout-summary .coTerms + .tableWrap { margin-top: 30px; float: left; clear: both; width: 100%; }
.checkout-summary .coTerms h2 { font-size: 20px; margin-bottom: 10px; }
.checkout-summary .acceptTerms .checkbox { position: absolute; top: 3px; left: 0; padding: 0; }
.checkout-summary .acceptTerms p { padding-left: 30px; position: relative; }
.checkout-summary .acceptTerms .checkbox input { width: 20px; height: 20px; z-index: 1; opacity: 0; cursor: pointer; }
.checkout-summary .acceptTerms .checkbox input:before,
.checkout-summary .acceptTerms .checkbox input.checked:after { content: none; }
.checkout-summary .acceptTerms .checkbox:before { content: ''; position: absolute; top: -1px; left: 0; width: 14px; height: 14px; padding: 2px; background: #fff; border: 1px solid #ddd; vertical-align: middle; cursor: pointer; z-index: 0; }
.checkout-summary .acceptTerms .checkbox.is-checked:after { content: ''; position: absolute; left: 8px; top: 2px; width: 4px; height: 10px; border: solid #00a3a6; border-width: 0 2px 2px 0; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); z-index: 0; }
.checkout-summary .coOrderSummary { margin: 0; }
.checkout-summary .coOrderSummary tr:last-child { font-weight: 700; }

.checkout-basket th,
.checkout-basket td { text-align: right; }
.checkout-basket th:first-child,
.checkout-basket td:first-child { text-align: left; }
.checkout-basket .colRemove { text-align: center; }
.checkout-basket .colRemove .btn { margin: 2px 0; vertical-align: top; font-size: 0; width: 15px; height: 15px; border-radius: 50%; border: none; background: #F44336 url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/icons/cross.svg) no-repeat center; background-size: 9px; }

.checkoutBackContinue .col { width: 50%; }
.checkoutBackContinue .col:last-child { text-align: right; }

.coOrderSummary h2 { font-size: 20px; }
.completedOrderInfo > div { margin-bottom: 10px; padding: 15px 20px; border: 1px dotted #ddd; }
.completedOrderInfo span:first-child { display: block; font-weight: 600; }

.hrule-or { overflow: visible; position: relative; }
.hrule-or:before { content: 'or'; position: absolute; display: inline-block; padding: 0 20px; top: -11px; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); color: #1d1d1c; background: #fff; z-index: 1; }

@media screen and (max-width: 600px) {
    .progress-bar,
    checkoutProgress { display: none; }

    .checkout-summary .col:first-child { margin-bottom: 25px; }
    .checkout-summary .colsHalf .col:last-child { margin-top: 25px; }
    .checkout-summary .coTerms + .tableWrap { margin: 0; }
    .checkout-summary .coDeliveryAddress { float: none; width: 100%; }
    .checkout-summary .coTerms { float: none; width: 100%; margin: 25px 0; }
    .coOrderSummary h2 { font-size: 18px; }
    .checkout-summary .moduleSurvey .survey { padding: 25px; margin: 15px 0; }
}

@media screen and (max-width: 400px) {
    .checkout-summary .moduleSurvey .survey { margin: 10px 0; }
    .checkout-summary .col:first-child { margin-bottom: 20px; }
    .checkout-summary .colsHalf .col:last-child { margin-top: 20px; }
}

/* = Tables
----------------------------------------------------------------------------------------------------------------- */
.tableWrap { overflow: auto; }
table { width: 100%; margin: 0 0 20px; border-spacing: 0; border-collapse: collapse; }


th { padding: 10px; color: #fff; border: 1px solid #1d1d1c; background: #1d1d1c; }
tr:nth-child(even) td { background: #f6f6f6; }
td { padding: 10px; border: 1px solid #e5e5e5; background: #fff; }
.rowItemStandout td { background: #c8f2f3; }

th p, td p { margin: 0 0 15px; line-height: 1.5em; }
th p:last-child, td p:last-child { margin: 0; }

/* = Columns
----------------------------------------------------------------------------------------------------------------- */
.cols { margin-bottom: 30px; }

.cols:last-child,
.col ul:last-child,
.col p:last-child { margin-bottom: 0; }

.colsHalf .col,
.cols--half .col { float: left; width: calc(50% - 15px); margin: 30px 30px 0 0; }

.colsHalf .col:nth-child(odd),
.cols--half .col:nth-child(odd) { clear: left; }

.colsHalf .col:nth-child(even),
.cols--half .col:nth-child(even) { margin-right: 0; clear: right; }

.colsHalf .col:nth-child(-n+2),
.cols--half .col:nth-child(-n+2) { margin-top: 0; }

.cols--third .col { float: left; width: calc(33.333% - 20px); margin: 30px 30px 0 0; }
.cols--third .col:nth-child(3n+1) { clear: left; }
.cols--third .col:nth-child(3n+3) { margin-right: 0; clear: right }
.cols--third .col:nth-child(-n+3) { margin-top: 0; }

.cols--fourth .col { float: left; width: calc(25% - 15px); margin: 20px 20px 0 0; }
.cols--fourth .col:nth-child(4n+4) { margin-right: 0; }
.cols--fourth .col:nth-child(-n+4) { margin-top: 0; }

.cols--register .col { padding: 95px 40px 110px; border: 1px solid #666; position: relative; font-size: 16px; }
.cols--register .col h2:first-child { margin: 0 0 30px; position: absolute; top: 0; left: 0; width: 100%; padding: 12px 15px; text-align: center; color: #fff; background: #00a3a6; }
.cols--register .col ul li { margin-bottom: 15px; }
.cols--register .col ul:last-of-type { margin-bottom: 0; }
.cols--register .col ul:last-of-type li:last-child { margin: 0; }
.cols--register ul { line-height: 1.65em; }
.cols--register ul p { margin-bottom: 12px; }
.cols--register .col-signup { position: absolute; bottom: 40px; left: 40px; width: calc(100% - 80px); }
.cols--register .col-signup .btn { width: 100%; text-align: center; }
.cols--register .col--pro { border-color: #00a3a6; background: #f7fcfc; }
.cols--register .col--free h2:first-child { background: #666; }
.cols--register .col--free .tick-list--square > li:before { color: #666; border-color: #666; }
.cols--register .col--free .col-signup .btn { background: #666; border-color: #666; }

@media screen and (max-width: 1200px) and (min-width: 851px) {
    .cols--register .col h2:first-child { font-size: 22px; }
    .cols--register .col { width: calc(50% - 10px); margin: 20px 20px 0 0; padding: 80px 25px 90px; font-size: 15px; }
    .cols--register .col-signup { bottom: 25px; left: 25px; width: calc(100% - 50px); }
}

@media screen and (max-width: 1024px) {
    .cols--fourth .col:nth-child(odd),
    .cols--fourth .col:nth-child(even) { float: left; width: calc(50% - 15px); margin: 30px 30px 0 0; }
    .cols--fourth .col:nth-child(even) { margin-right: 0; }
    .cols--fourth .col:nth-child(-n+2) { margin-top: 0; }
}

@media screen and (max-width: 1024px) {
    .cols--third .col,
    .cols--third .col:nth-child(-n+3) { margin: 30px 0 0; width: 100%; }
    .cols--third .col:first-child { margin-top: 0; }
}

@media screen and (max-width: 850px) {
    .cols--register .col { width: 100%; float: none; margin-right: 0; }
    .cols--register .col.col--pro:nth-child(2) { order: 1; margin: 0 0 30px; }
    .cols--register .col.col--free { order: 2; }
}

@media screen and (max-width: 750px) {
    .colsHalf .col,
    .cols--half .col,
    .cols--fourth .col:nth-child(odd),
    .cols--fourth .col:nth-child(even) { width: 100%; margin: 30px 0 0; }

    .cols--fourth .col:first-child { margin: 0; }

    .colsHalf .col:nth-child(even),
    .cols--half .col:nth-child(even) { margin-top: 30px; }
}

@media screen and (max-width: 600px) {
    .cols--register .col h2:first-child { font-size: 22px; }
    .cols--register .col { padding: 80px 25px 90px; font-size: 15px; }
    .cols--register .col-signup { bottom: 25px; left: 25px; width: calc(100% - 50px); }
}

@media screen and (max-width: 480px) {
    .cols--half .col:nth-child(odd),
    .cols--half .col:nth-child(even),
    .cols--third .col:nth-child(odd),
    .cols--third .col:nth-child(even),
    .cols--fourth .col:nth-child(odd),
    .cols--fourth .col:nth-child(even) { margin-top: 25px; }

    .colsHalf .col:first-child,
    .cols--half .col:first-child,
    .cols--third .col:first-child,
    .cols--fourth .col:first-child { margin-top: 0; }

    .cols--register .col.col--pro:nth-child(2) { margin: 0 0 25px; }
    .cols--register .col h2:first-child { font-size: 18px; }
    .cols--register .col { padding: 75px 25px 90px; }
    .cols--register .col ul li ul { margin-left: 0; }
}

@media screen and (max-width: 400px) {
    .cols--register .col { padding: 70px 20px 85px; }
}

/* = Modals
----------------------------------------------------------------------------------------------------------------- */
.modal { display: none; background: rgba(0, 0, 0, 0.3); position: fixed; top: 0; left: 0; height: 100%; width: 100%; z-index: 9999; }
.modal.on { display: block; }
.modal .modal-inner { max-width: 800px; width: 90%; max-height: 90%; left: 50%; top: 45%; padding: 30px; margin: 0 auto; background: #fff; display: block; float: none; position: absolute; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); overflow: auto; -webkit-transition: top .3s ease-in-out; transition: top .3s ease-in-out; }
.modal.on .modal-inner { top: 50%; }
.modal p { margin-bottom: 20px; }
.modalClose { cursor: pointer; top: 0; right: 0; width: 32px; height: 32px; line-height: 35px; text-align: center; position: absolute; color: #fff; background: #1d1d1c url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/icons/icon-close.svg) no-repeat center; z-index: 1; }
.modalClose:after { font-size: 22px; width: 16px; vertical-align: baseline; line-height: 1; }
.modal-content p:last-child { margin-bottom: 5px; }
.modal--personalise h3 { margin-bottom: 10px; }

.modal--personalise .formListCheckbox br,
.modal--personalise .questTypeOneToMany > label,
.modal--personalise .questTypeAutoComplete > label,
.modal--personalise .autocomplete br { display: none; }
.modal--personalise .autocomplete .ac-addTag input.text { width: 100%; }
.modal--personalise.saving .modal-inner:after { content: ''; position: absolute; top: 0; left: 0; bottom: 0; width: 100%; height: 100%; height: 100%; background: rgba(255, 255, 255, 0.5) url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/loader.gif) no-repeat center center; z-index: 1; }

@media screen and (max-width: 480px) {
    .modal-content p:last-child { margin-bottom: 0; }
}

@media screen and (max-width: 400px) {
    .modal .modal-inner { padding: 40px 20px 20px; width: 100%; max-height: 100%; min-height: 100%; }
    .modal--personalise .autocomplete .ac-currentTags { margin: 15px 0; }
}

/* = Screen Messages
----------------------------------------------------------------------------------------------------------------- */
.msg { margin: 0 0 20px; padding: 20px; background: #f5f5f5; }
.msg p { margin-bottom: 0; }
.msg ul { margin-bottom: 0; }
.msg ul li { margin-bottom: 5px; }
.msg ul li:last-child { margin-bottom: 0; }
.msgImp { padding-left: 65px; color: #fff; background: #00A3A6 url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/icons/important.svg) no-repeat 30px center; }
.msgImp a { color: #fff; font-weight: bold; }
.msgError { padding-left: 65px; color: #fff; background: #e84d54 url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/icons/error.svg) no-repeat 20px center; }
.msgError a { color: #fff; font-weight: bold; }
.msgSuccess { padding-left: 65px; color: #fff; background: #00A3A6 url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/icons/success.svg) no-repeat 20px center; }
.msgSuccess h3 { color: #fff; margin: 0 0 10px; }
.msgSuccess a { color: #fff; font-weight: bold; }
.msgAssist { background-color: #fff0bc; }

@media screen and (max-width: 480px) {
    .msgImp { padding-left: 60px; }

    .msg { padding: 16px; }
    .msgError { padding-left: 60px; background-size: 21px auto; }
    .msgSuccess { padding-left: 60px; background-size: 24px auto; }
}

/* = 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: #1d1d1c; }
.tabs > ul li a:hover { color: #666; }
.tabs > ul li a.on { color: #00A3A6; }
.tabs .panel { padding: 20px 0 0; }

/* = Accordions
----------------------------------------------------------------------------------------------------------------- */
.accordion { margin: 40px 0; }
.accordion:last-child { margin-bottom: 0; }
.accordion > h5 { display: block; margin: 0; padding: 8px 40px 7px 0; border-top: 1px solid #e4e4e4; background: #fff; position: relative; }
.accordion > h5:last-of-type { border-bottom: 1px solid #e4e4e4; }
.accordion > h5:after { content: '\e81b'; font-size: .9em; position: absolute; top: 14px; right: 0; color: #00a3a6; }
.accordion > h5:hover { cursor: pointer; }
.accordion > h5.on { color: #00a3a6; }
.accordion > h5.on:after { content: '\e81d'; }
.accordion > h5:last-of-type.on { border-bottom-color: #fff; }
.accordion .content { display: none; }
.accordion .content.contentopen { display: block; margin-top:10px; }

/* = Inline images (CKeditor)
----------------------------------------------------------------------------------------------------------------- */
.inline-image,
.av-article .inline-image { margin: 30px 0; display: block; }

.inline-image--left-third { float: left; margin: 8px 3% 3% 0; width: 33.3%; }
.inline-image--right-third { float: right; margin: 8px 0 3% 3%; width: 33.3%; }

.inline-image--left-half,
.av-article .inline-image--left-half,
.av-article .inline-image--left-third { float: left; margin: 8px 4% 4% 0; width: 50%; }

.inline-image--right-half,
.av-article .inline-image--right-half,
.av-article .inline-image--right-third { float: right; margin: 8px 0 4% 4%; width: 50%; }

@media screen and (min-width: 1401px) {
    .av-article .inline-image--left-third { float: left; margin: 8px 3% 3% 0; width: 33.3%; }
    .av-article .inline-image--right-third { float: right; margin: 8px 0 3% 3%; width: 33.3%; }
}

@media screen and (max-width: 580px), screen and (min-width: 1081px) and (max-width: 1150px) {
    .av-article .inline-image--left-half,
    .av-article .inline-image--right-half,
    .av-article .inline-image--left-third,
    .av-article .inline-image--right-third { float: none; margin: 30px 0; width: 100%; }
}

@media screen and (max-width: 580px) {
    .inline-image--left-half,
    .inline-image--right-half,
    .inline-image--left-third,
    .inline-image--right-third { float: none; margin: 30px auto; width: auto; }

    p + .inline-image,
    p + p > .inline-image { margin-top: 15px; }
}

@media screen and (max-width: 400px) {
    .inline-image,
    .av-article .inline-image { margin-top: 25px; margin-bottom: 25px; }
}

/* = Embedded content
----------------------------------------------------------------------------------------------------------------- */
.youtube-container, .media_embed { position: relative; margin: 35px 0; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.youtube-container iframe, .youtube-container object, .youtube-container embed, .media_embed iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.pdf-container { margin:35px 0; width: 100%; height: 0; padding-top: 135%; position:relative;  }
.pdf-container:first-child { margin-top:0; }
.pdf-container:last-child { margin-bottom:0; }
.pdf-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

[data-oembed-url] { margin: 35px 0; }
[data-oembed-url] .twitter-tweet { margin: 0 auto; padding: 0; }

.youtube-container:last-child,
[data-oembed-url]:last-child { margin-bottom: 0; }

blockquote.twitter-tweet:before { content: none; }
.twitter-tweet { margin: 30px auto; padding: 14px 0 25px; }

@media screen and (max-width: 900px) {
    .twitter-tweet { padding: 10px 0 20px; }
}

@media screen and (max-width: 480px) {
    .youtube-container,
    [data-oembed-url] { margin: 30px 0; }
}

@media screen and (max-width: 400px) {
    .youtube-container,
    [data-oembed-url] { margin: 25px 0; }
}

/* = Forms
----------------------------------------------------------------------------------------------------------------- */
.webForm div { margin: 0 0 15px; }
.webForm div em { display: block; margin-left: 25%; margin-top: 12px; }
.webForm .submitBtn { margin: 20px 0; }
.webForm .submitBtn label { display: none; }
.webForm div em input[type=checkbox] { margin: 0px 6px 2px 0; vertical-align: middle; }

.box-text + div > .webForm--register { margin-top: 25px; }
.webForm--register .newsletter-choices { margin-top: 30px; margin-left: 25%; }
.webForm--register .newsletter-choices .formList { display: block; }
.webForm--register .newsletter-choices .formList label { display: block; margin: 0; }
.webForm--register .newsletter-choices .formList label strong { font-weight: 600; }

.webForm .indentLeft  {margin-left:25%;}


label { width: 25%; float: left; padding: 9px 0; }
input.text, textarea, select { width: 75%; padding: .608em .85em; margin: 0; font-size: 1em; font-family: 'Open Sans', sans-serif; border: 1px solid #e5e5e5; background: #fff; -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; }

._hj-widget-container label { width:100%; }

/*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: #00a3a6 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 #1d1d1c; }
.select select::-ms-expand { display: none; }

/*Cross browser & device input reset*/
textarea,
input.text,
input[type="text"],
input[type="button"],
input[type="submit"],
.input-checkbox { -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: #1d1d1c; }
::-moz-placeholder { color: #1d1d1c; }
:-ms-input-placeholder { color: #1d1d1c; }
:-moz-placeholder { color: #1d1d1c; }

.formList { display: inline-block; padding: 6px 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: 6px 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; visibility: hidden; position: absolute; margin: 0; }
.formList label { display: inline-block; vertical-align: middle; line-height: 1.25em; margin: 6px 0; padding-left: 28px; cursor: pointer; position: relative }
.formList label:before, .checkbox input:before, .check input:before { content: ''; position: absolute; top: -1px; left: 0; width: 14px; height: 14px; padding: 2px; background: #fff; border: 1px solid #ddd; vertical-align: middle; 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: 5px; top: 4px; width: 10px; height: 10px; border-radius: 10px; background: #00a3a6; }

.formListCheckbox label.checked:after,
.checkList label.checked:after,
.checkbox input.checked:after,
.check input.checked:after { content: ''; position: absolute; left: 8px; top: 2px; width: 4px; height: 10px; border: solid #00a3a6; border-width: 0 2px 2px 0; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.checkFullWidth { position: relative; }
.checkFullWidth label { float: none; width: 100%; display: block; padding: 0; padding-left: 32px; cursor: pointer; }
.checkFullWidth .check { position: absolute; top: -4px; left: 0; }

.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; }

.webForm .g-recaptcha {margin-top: 25px;}
.webForm .g-recaptcha:first-child {margin-top:0;}
.webForm .g-recaptcha:last-child,
.webForm .g-recaptcha:last-of-type  {margin-bottom:0;}

@media screen and (max-width: 700px) {
    .webForm div { margin: 0 0 12px; }
    .webForm div em { margin-top: 12px; margin-left: 0; }
    .select { width: 100%; }
    label { width: 100%; float: left; padding-top: 0; padding-bottom: 5px; }
    .webForm > div > label { padding-bottom: 0; margin-bottom: 5px; }
    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%; }

    .login-wrap .formSubmit { margin-top: 20px; }

    .labelhide,
    .submitBtn label,
    .login-wrap .formSubmit label { display: none; }

    .webForm--register .newsletter-choices { margin-top: 30px; margin-left: 0; }
    .webForm--register .formSubmit label { display: none; }

    .webForm .indentLeft  {margin-left:0;}
}

@media screen and (max-width: 400px) {
    label { padding-bottom: 4px; }
    .webForm div { margin: 0 0 10px; }

    .formList label { margin: 5px 0; padding-left: 24px; }

    .formList label:before,
    .checkbox input:before, .check input:before { top: 0; width: 12px; height: 12px; }

    .formListRadio label.checked:after, .radList label.checked:after { left: 5px; top: 5px; width: 8px; height: 8px; border-radius: 8px; }
    .formListCheckbox label.checked:after, .checkList label.checked:after, .checkbox input.checked:after, .check input.checked:after { left: 7px; top: 3px; width: 3px; height: 8px; }
  
  
    .webForm  .g-recaptcha { margin-top:15px; transform: scale(0.9); transform-origin: 0 0;}

}


/* = Generic loading pane, useful for UpdatePanels etc
----------------------------------------------------------------------------------------------------------------- */
div.is-loading-std { position: relative; }
div.is-loading-std::after { position: absolute; content: ""; top: 0; left: 0; bottom: 0; right: 0; background: url(https://res.cloudinary.com/dyw8mv3b0/image/upload/img/loader.gif) rgba(255, 255, 255, .8) center center no-repeat; }


/* = Clearing
----------------------------------------------------------------------------------------------------------------- */
.clearFix:after, .container:after, .cols:after, .progress:after, .template:after, .webForm > div:after, .member-item:after, .mi-profile:after, .mi-profile > a:after, .mia-meta:after,
.hdr-top:after, .news-list:after, .news-item:after, .ni-meta:after, .row-x2-split:after, .av-meta:after, .paging ul:after, .ms-alpha ul:after, .mi-article > a:after, .cal-list:after, .colHasSummary:after { content: ""; display: table; clear: both; }
