﻿/* Sitewide styles */


html, button, input, select, textarea,
.pure-g [class *= "pure-u"] {
    /* Set your content font stack here: */
    font-family: 'vag-rundschrift-d', 'GothamRounded', Arial, Helvetica, sans-serif;
}

html {
    box-sizing: border-box;
    font-size: 17px;
}

*, *:before, *:after {
    box-sizing: inherit;
}

a {
    text-decoration: none;
}
.white {
    color: rgb(255, 255, 255);
}

@media (max-width: 567px) {
    .hidden-xs {
        display: none !important;
    }
}

@media (max-width: 767px) {
    .hidden-sm {
        display: none !important;
    }
}

@media (max-width: 1023px) {
    .hidden-md {
        display: none !important;
    }
}

@media (max-width: 1279px) {
    .hidden-lg {
        display: none !important;
    }
}


@media (min-width: 568px) {
    .hidden-sm-up {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .hidden-md-up {
        display: none !important;
    }
}

@media (min-width: 1024px) {
    .hidden-lg-up {
        display: none !important;
    }
}

@media (min-width: 1280px) {
    .hidden-xl-up {
        display: none !important;
    }
}


.pure-g-stretch {
    align-content: stretch;
}

.content-relative {
    position: relative;
}

.container {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    overflow-x: hidden;
}

.cf:after {
    content: "";
    display: block;
    clear: both;
}

.clearFix {
    clear: both;
}

.non-flex {
    display: block;
}

h1 {
    font-size: 47px;
    margin-bottom: 46px;
    margin-top: 22px;
    line-height: 1;
}

h2 {
    font-size: 27px;
}

h3 {
    font-size: 20px;
}

.heading1 {
    font-size: 1.8em;
    margin: 0.5em 0;
    display: block;
    font-weight: bold;
    margin-block-start: 0.5em;
    margin-block-end: 0.5em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

input-border {
    color: rgb(241,242,241);
}

.button-primary,
.button-secondary {
    font-size: 18px;
    padding: 0.3em 1.6em 0.2em 1.6em;
    transition: all 300ms;
    border-radius: 30px;
}

.button-secondary, .brand-bg-1 .button-secondary {
    background-color: transparent;
    border: 1px solid white;
    color: white;
    font-weight: normal;
}

.button-secondary.pure-button-hover, .button-secondary.pure-button:hover {
    background: white;
    color: rgb(102,103,103);
}

.button-primary.pure-button-hover, .button-primary.pure-button:hover {
    background-image: linear-gradient( rgba(0,0,0,0.1), rgba(0,0,0,0.1));
}

.line-break {
    width: 100%;
    height: 1px;
    background-color: rgb(213, 213, 213);
}

.flip-img {
    -moz-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    filter: FlipH;
    -ms-filter: "FlipH";
}

.contactsearch {
    float: right;
    margin: 40px 10px 0 20px;
}

.nav-container {
    width: 100%;
    position: relative;
}

.navheader {
    max-width: 1228px;
    margin: 0 auto;
    position: relative;
    overflow: visible;
    z-index: 25;
    height: 100px;
}

.thin-nav-header {
    display: none;
    height: 26px;
    max-width: 100%;
    z-index: 1;
}

.thin-nav-header .thin-nav-container {
    max-width: 1228px;
    margin: 0 auto;
    position: relative;
    font-size: 16px;
    line-height: 26px;
}

.thin-nav-header .thin-nav-container .contact {
    float: right;
    margin-right: 10px;
}
.thin-nav-header .thin-nav-container a {
    color: #fff;
}

.thin-nav-header .thin-nav-container .languages {
    float: right;
    margin-right: 20px;
}
.thin-nav-header .thin-nav-container .languages .language-link {
    display: inline-block;
    margin-right: 5px;
    font-size: 16px;
}

.navheader .navmenu {
    font-size: 17px;
    white-space: normal;
}

.nav-logo-bg {
    width: 212px;
    position: absolute;
    left: 0;
    z-index: 2;
}

.nav-logo { 
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -50%;
    margin-top: -17%;
    width: 100%;
    max-width: none;
}

.contact-phone {
    font-size: 15px;
    font-weight: normal;
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
}

.contact-phone a {
    font-size: 19px;
}

/* Navigation */
.navmenu ul.pure-menu-list {
    float: left;
    margin-left: 250px;
}

.pure-menu-horizontal .pure-menu-list.nav-bg {
    background-color: transparent;
}

.nav-bg-2 {
    background-color: rgb(255,255,255);
    color: rgb(102,103,103);
}

.pure-menu-link, .pure-menu-disabled, .pure-menu-heading {
    padding: 0.5em 0.5em;
    font-size: 19px;
}

.pure-menu-active > .pure-menu-link, .pure-menu-link:hover, .pure-menu-link:focus {
    background-color: initial;
}

.pure-menu-children {
    text-align: left;
    padding: 10px 15px;
    border: 1px solid #eee;
}

.pure-menu-children .pure-menu-link {
    font-size: 16px;
}

.pure-menu-has-children > .pure-menu-link:after {
    padding-left: 0.3em;
}

.pure-menu-item.pure-menu-has-children, .pure-menu-item.pure-menu-no-children {
    padding-bottom: 10px;
}

.pure-menu-link {
    color: inherit;
}

.pure-menu-link.language-link {
    font-size: 19px;
}

.pure-menu-link.language-link.en {
    padding-right: 53px;
    background: url(/Global/images/flag-en.png) right no-repeat;
}

.pure-menu-link.language-link.cn {
    padding-right: 49px;
    background: url(/Global/images/flag-cn.png) right no-repeat;
    margin-right: 15px;
}
.language-link.en-small {
    padding-left: 18px;
    background: url(/Global/images/flag-en-small.png) left no-repeat;
}

.language-link.cn-small {
    padding-left: 18px;
    background: url(/Global/images/flag-cn-small.png) left no-repeat;
}

.navmenu.pure-menu-horizontal .pure-menu-children {
    margin-top: 10px;
}

.navmenu.pure-menu-horizontal .pure-menu-list li:last-of-type .pure-menu-children {
    left: inherit;
    right: 0;
}

/*collapsing menu taken from http://purecss.io/layouts/tucked-menu-vertical/ */

.nav-wrapper {
    /* margin-bottom: 1em;*/
    padding-top: 34px;
    -webkit-font-smoothing: antialiased;
    height: 2em;
    -webkit-transition: height 0.5s;
    -moz-transition: height 0.5s;
    -ms-transition: height 0.5s;
    transition: height 0.5s;
    position: relative;
}

.nav-wrapper.open {
    height: 500px;
}

.nav-toggle {
    width: 34px;
    height: 34px;
    position: absolute;
    top: 35px;
    left: 30px;
    display: none;
    z-index: 12;
}

.nav-toggle .bar,
.nav-toggle .shortbar {
    background-color: rgb(241,242,241);
    display: block;
    width: 32px;
    height: 2px;
    border-radius: 100px;
    position: absolute;
    top: 18px;
    right: 7px;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    transition: all 0.5s;
}

.nav-toggle .shortbar {
    width: 26px;
    right: 10px;
}

.nav-toggle i:first-of-type {
    -webkit-transform: translateY(-14px);
    -moz-transform: translateY(-14px);
    -ms-transform: translateY(-14px);
    transform: translateY(-14px);
}

.nav-toggle i:last-of-type {
    -webkit-transform: translateY(7px);
    -moz-transform: translateY(7px);
    -ms-transform: translateY(7px);
    transform: translateY(7px);
}


.nav-toggle s:first-of-type {
    -webkit-transform: translateY(-7px);
    -moz-transform: translateY(-7px);
    -ms-transform: translateY(-7px);
    transform: translateY(-7px);
}

.nav-toggle.x .bar {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}


.nav-toggle.x .shortbar {
    opacity: 0;
}

.nav-toggle.x s:first-of-type {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.nav-thin-enabled .navheader {
    height: 90px;
}
.nav-thin-enabled .nav-wrapper {
    padding-top: 29px;
}
.nav-thin-enabled .thin-nav-header {
    display: block;
}
.nav-thin-enabled .nav-logo-bg {
    top: -26px;
}
.nav-thin-enabled .contactsearch {
    margin-top: 35px;
}
.nav-thin-enabled .contact-phone {
    display: none;
}
.nav-thin-enabled .nav-toggle {
    top: 30px;
}

@media (max-width: 1330px) {
    .navheader .navmenu {
        font-size: 15px;
    }
    .navmenu ul.pure-menu-list {
        float: left;
        margin-left: 230px;
    }

    .pure-menu-link, .pure-menu-disabled, .pure-menu-heading {
        font-size: 17px;
        padding-left: 0.4em;
        padding-right: 0.4em;
    }

    .contactsearch {
        margin-left: 10px;
    }
    .contactsearch a, .contactsearch .button-primary {
        font-size: 16px;
    }
    .contactsearch .button-primary {
        padding-left: 1.1em;
        padding-right: 1.1em;
    }
}

@media (max-width: 1023px) {
    .nav-toggle {
        display: block;
    }

    .nav-wrapper .pure-menu-horizontal {
        display: none;
    }

    .nav-wrapper {
        height: 0em;
        overflow: hidden;
        padding-top: 60px;
    }
    .nav-thin-enabled .nav-wrapper {
        padding-top: 55px;
    }

    .navheader .navmenu {
        padding: 5px 30px 0px 5px;
        text-align: left;
        padding: 1em 1em;
    }

    .nav-logo-bg {
        left: 78px;
        z-index: 10;
    }

    .navmenu ul.pure-menu-list {
        float: left;
        padding-bottom: 15px;
        padding-top: 20px;
        margin-left: 0;
        z-index: 26;
    }

    .pure-menu-link.language-link {
        padding-top: 0.2em;
        padding-bottom: 0.2em;
        margin-right: 10px !important;
    }
}

@media (max-width: 767px) {
    .navmenu ul.pure-menu-list {
        width: 100%;
        padding-bottom: 0;
    }

    .pure-menu-item.pure-menu-has-children, .pure-menu-item.pure-menu-no-children {
        padding-bottom: 0;
    }

    .pure-menu-item a {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .pure-menu-children a {
        padding-top: 0.5em;
        padding-bottom: 0.5em;
    }

    .pure-menu-children,
    .pure-menu-allow-hover:hover > .pure-menu-children, .pure-menu-active > .pure-menu-children {
        position: static;
        display: block;
        padding-left: 30px;
    }

    .nav-wrapper.open {
        height: auto;
        z-index: 11;
    }

    .pure-menu-link {
        white-space: normal;
    }
}


.hero-item, .content-hero, .hero-video {
    position: relative;
}

.hero-item img, .content-hero img {
    object-fit: cover;
    font-family: 'object-fit: cover;';
    max-height: 785px;
    width: 100%;
    min-height: 672px;
}

.hero-item:before, .content-hero:before, .hero-video:before {
    content: " ";
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.2);
}

.content-hero:before {
    bottom: 4px;
}

.no-content-hero {
    padding-top: 35px;
}

.no-content-hero-thick {
    padding-top: 60px;
}

.centre-site .hero-item img {
    min-height: 440px;
    max-height: 440px;
}

.content-hero img {
    max-height: 484px;
    min-height: 357px;
}

.hero-video {
    min-height: 440px;
    max-height: 440px;
    width: 100%;
    position: relative;
}

.hero-video-wrapper {
    min-height: 440px;
    max-height: 440px;
    width: 100%;
    overflow: hidden;
    display: flex;
    justify-content: center;
    position: relative;
}

.hero-video-body {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    width: 100%;
    min-width: 1140px;
}

.hero-video iframe {
    position: absolute;
    top: -5%;
    left: 0;
    width: 100%;
    height: 100%;
}

@media (max-width: 1280px) {
    .hero-video iframe {
        top: 0;
    }
}

.hero-item .hero-title, .content-hero .hero-title, .hero-video .hero-title {
    position: absolute;
    width: 100%;
    text-align: center;
    top: 20%;
}

.hero-item .hero-title h1,
.content-hero .hero-title h1,
.hero-video .hero-title h1,
.hero-item .hero-title .heading1,
.content-hero .hero-title .heading1,
.hero-video .hero-title .heading1 {
    font-size: 45px;
}

.hero-video .hero-title h1, .hero-video .hero-title .heading1, .hero-video .hero-title h2 {
    color: #fff;
}

.hero-video-body:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.45);
}


.content-background-gradient {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background: linear-gradient(rgba(216,216,216,1), rgba(255,255,255,1));
}

.content-container {
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 30px;
    margin: 0 auto;
    width: 1165px;
    max-width: 100%;
    font-size: 17px;
    line-height: 1.5;
}

.full-content-container {
    max-width: 1165px;
    width: 100%;
    margin: 0 auto;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 50px;
}

.full-content-container.wide {
    max-width: 1500px;
}

.full-content-container.wide .content-column {
    padding: 0 25px 25px;
}

.content-column {
    padding-right: 30px;
}

@media (max-width: 767px) {
    .content-column {
        padding-right: 0;
    }
}

.content-container p {
    margin-bottom: 28px;
}

.content-container img.centre-manager-image {
    float: right;
    max-width: 40%;
    padding: 15px;
    margin-left: 35px;
    box-shadow: 0 0 15px #AAA;
}

.content-container img.staff-image {
    float: none;
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.container .bx-wrapper {
    border: none;
    margin-bottom: 0;
    z-index: 1;
}

.container .hero-bottom-wave {
    margin-top: -2.6%;
    padding-top: 2.81%;
    position: relative;
    z-index: 2;
}
.container .hero-bottom-wave img {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
}

.hero-title h1, .hero-title h2 {
    color: rgb(255, 255, 255);
}

.container .bx-wrapper .bx-pager.bx-default-pager a:hover,
.container .bx-wrapper .bx-pager.bx-default-pager a.active {
    background-color: white;
}

.container .bx-wrapper .bx-pager.bx-default-pager a {
    background-color: transparent;
    border: 2px solid white;
}

.container .bx-wrapper .bx-pager.bx-default-pager a {
    width: 15px;
    height: 15px;
    border-radius: 15px;
}

.container .bx-wrapper .bx-pager {
    top: 50%;
    left: 20px;
    bottom: initial;
    width: initial;
}

.container .bx-wrapper .bx-pager .bx-pager-item {
    display: block;
    padding-bottom: 10px;
}

.bx-controls.bx-has-pager {
    display: none;
}

.centre-feature-container {
    overflow: hidden;
    padding: 60px 10px;
}

.centre-feature-container > div {
    max-width: 100%;
    width: 1265px;
    margin: 0 auto;
}


@media (max-width: 1023px) {
    .no-content-hero {
        padding-top: 82px;
    }

    .full-content-container {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (max-width: 767px) {
    .content-hero img {
        min-height: calc(50vw + 82px);
    }

    .content-container {
        margin-left: 0;
        margin-right: 0;
        padding-left: 30px;
        padding-right: 30px;
        width: 100%;
        max-width: 100%;
        font-size: 19px;
    }

    .content-container img.centre-manager-image {
        float: none;
        width: 100%;
        max-width: 500px;
        display: block;
        margin: auto;
    }

    .content-container h1 {
        font-size: 35px;
        line-height: 1;
        margin-bottom: 35px;
        margin-top: 22px;
    }
}

@media (max-width: 567px) {
    .contactsearch .brand-bg-cta {
        display: none;
    }

    .hero-item .hero-title {
        margin-top: -50px;
    }

    .hero-item .hero-title h1,
    .content-hero .hero-title h1,
    .hero-video .hero-title h1,
    .hero-item .hero-title .heading1,
    .content-hero .hero-title .heading1,
    .hero-video .hero-title .heading1 {
        font-size: 35px;
    }

    .full-content-container {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.youtube-wrapper {
    margin: 0 auto;
    max-width: 700px;
}

.video {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    padding-top: 25px;
    height: 0;
}

.video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.testimonials {
    width: 100%;
    position: relative;
}

.testimonials .top-wave {
    padding-top: 2.81%;
    position: relative;
    z-index: 2;
}
.testimonials .top-wave img {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
}

.testimonials-container {
    text-align: center;
    padding: 20px 0 50px 0;
}

.testimonial-slider {
    width: 1024px;
}

.testimonial-text {
    padding: 15px 0;
    font-size: 18px;
    text-align: left;
}

.testimonial-author {
    text-align: left;
    font-size: 15px;
}

.testimonials img {
    display: inline-block !important;
}

@media (max-width: 767px ) {
    .testimonials-container {
        padding: 20px 30px 50px 30px;
    }
}

.page-background {
    background-color: rgb(196,208,224);
}

.content-background {
    background-color: rgb(255,255,255);
}

.homepage.content-background {
    background-color: rgb(241,242,241);
}

.brand-copy-dark {
    color: rgb(102,103,103);
}

.brand-copy-light {
    color: rgb(255,255,255);
}

.brand-bg-light {
    background-color: rgb(255,255,255);
    color: rgb(128,128,128);
}

.footer-tandc {
    font-size: 13px;
    font-weight: normal;
    margin: 0;
    padding-top: 0;
    padding-bottom: 0;
    line-height: 40px;
}

.footer-tandc a,
.footer-tandc a:visited {
    color: inherit;
}

/* contact us form */
.contactusForm {
    max-width: 745px;
    width: 100%;
    padding: 30px;
    float: left;
    font-size: 18px;
    background-color: #BFDB79;
}

.contactusForm:after {
    content: "";
    display: block;
    clear: both;
}

.contactusForm select {
    font-size: 18px;
}

.formWrapper, .inpWrap, .formBox form, .formAccordian, .formAccordBox, .formLabelBox {
    clear: both;
    float: left;
    width: 100%;
}

.inpWrap {
    margin-bottom: 10px;
    position: relative;
}

.inpWrap input, .inpWrap select {
    border: none;
    line-height: 60px;
    height: 60px;
    width: 100%;
    padding: 0px 30px;
    border-radius: 8px;
}

.inpWrap textarea {
    border: none;
    line-height: 1.6;
    height: 200px;
    width: 100%;
    padding: 20px 30px;
}

.formLabelBox.label_2 .inpWrap, .formLabelBox.label_2 .inpWrapSubmit {
    float: left;
    width: 49%;
    clear: none;
}

.formLabelBox.label_2 .inpWrap:first-child, .formLabelBox.label_2 .inpWrapSubmit:first-child {
    margin-right: 2%;
}


.inputHolder {
    color: #808285;
    line-height: 25px;
    height: 25px;
    position: absolute;
    left: 20px;
    top: 17px;
    cursor: text;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0px 10px;
    transition: all 0.5s;
}

.formLabelBox input[type=submit] {
    width: 100%;
}

.formBox form {
    margin-top: 10px;
}

.formBox .required {
    float: right;
    margin-bottom: 2px;
    color: #797979;
}

.inpWrap .holderTarget.filled + span.inputHolder,
.inpWrap .holderTarget:focus + span.inputHolder {
    transform: translate(-10px, -18px);
    -webkit-transform: translate(-10px, -18px);
    -moz-transform: translate(-10px, -18px);
    font-size: 12px;
    color: #AAA;
}

.formLabelBox {
    margin-bottom: 12px;
}

.formAccordian .tabBtn {
    line-height: 77px;
    border-radius: 8px;
    position: relative;
    cursor: pointer;
    padding: 0px 30px;
    color: white;
    background: #6A7686;
    display: block;
}

.formAccordian .tabBtn:after {
    position: absolute;
    content: '+';
    top: 0;
    bottom: 0;
    margin: auto;
    right: 10px;
}

.formAccordian.AccordActive .tabBtn:after {
    content: '-';
}

.formAccordBox {
    background: #F6F6F6;
    padding: 10px;
    display: none;
    padding-top: 18px;
    margin-top: -9px;
}

.formAccordBox .inpWrap:last-child {
    margin-bottom: 0;
}

.contactusForm .formAccordian {
    width: 100%;
    margin-bottom: 20px;
}

@media (max-width: 767px ) {
    .formLabelBox.label_2 .inpWrap, .formLabelBox.label_2 .inpWrapSubmit {
        width: 100%;
        clear: none;
    }

    .formLabelBox.label_2 .inpWrap:first-child, .formLabelBox.label_2 .inpWrapSubmit:first-child {
        margin-right: 0;
    }

    .formLabelBox {
        margin-bottom: 0;
    }
}

.blog-summary.non-featured {
    margin-bottom: 46px;
}

.blog-image {
    border-radius: 5px;
    background-size: cover;
    background-position: center center;
}

.blog-summary .blog-image {
    height: 233px;
}

.blog-post .blog-image {
    padding-bottom: 65%;
}

@media screen and (min-width: 64em) {
    .blog-summary.featured .blog-image {
        height: 661px;
    }
}

.blog-date {
    font-weight: 100;
    font-size: 16px;
    margin-top: 10px;
}

.blog-content h2 {
    margin: 15px 0 10px;
}

.blog-summary .blog-content .blog-content-summary {
    line-height: 1.5em;
    font-weight: 100;
    font-size: 17px;
}

.blog-summary .blog-content .blog-content-summary p {
    margin-block-start: 0;
    margin-block-end: 0;
}

.blog-summary.featured .blog-content .blog-content-summary {
    height: 9.2em;
}

.read-more .pure-button.button-primary {
    margin: 20px 0;
}

@media screen and (max-width: 63.99em) {
    .blog-summary .read-more a.pure-button.button-primary {
        padding: 0;
        border: none;
    }

    .blog-summary .read-more a.pure-button.button-primary:hover {
        background-image: none;
    }

    .blog-summary .read-more a.pure-button.button-primary::after {
        content: '>';
        position: relative;
        right: -10px;
    }

    .blog-summary.non-featured {
        max-height: 457px;
        margin-bottom: 20px;
    }

    .blog-summary .blog-content .blog-content-summary, .blog-summary.featured .blog-content .blog-content-summary {
        height: auto;
        max-height: 4.6em;
    }
}

.blog-categories {
    background-color: #5c6574;
    border-radius: 4px;
    margin: 46px 0 76px;
    height: 70px;
    overflow: hidden;
    position: relative;
    transition: all 0.25s ease-in-out;
}

.blog-categories ul {
    padding-inline-start: 30px;
    padding-inline-end: 35px;
    margin-block-start: 0;
}

.blog-categories li {
    display: inline-block;
    color: white;
    padding: 22px 25px;
}

.blog-categories li a {
    color: white;
}

.blog-categories li.categories-toggle {
    position: absolute;
    top: 16px;
    right: 10px;
    padding: 0;
}

.categories-toggle a {
    width: 50px;
    height: 44px;
    display: block;
}

.categories-toggle .bar {
    background-color: #fff;
    display: block;
    width: 32px;
    height: 4px;
    border-radius: 100px;
    position: absolute;
    top: 18px;
    right: 7px;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    transition: all 0.5s;
}

.categories-toggle s:first-of-type {
    -webkit-transform: translateY(-10px);
    -moz-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
}

.categories-toggle s:last-of-type {
    -webkit-transform: translateY(10px);
    -moz-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
}


.set-width {
    max-width: 1440px;
    margin: 0 auto;
    width: 100%;
}

.edge-phobic { /* combine with .set-width where necessary */
    width: calc(100% - 60px);
}

.fa-phone {
    transform: rotate(90deg);
}

img.nqs-rating {
    max-width: 100%;
    display: inline-block;
}

@media screen and (max-width: 47.99em) {
    img.nqs-rating {
        width: 350px;
        max-width: 100%;
        padding: 0 20px;
    }
}

.centre-cta,
.content-cta {
    padding: 20px 15px;
    text-align: center;
}

.centre-cta .button-secondary,
.content-cta .button-secondary {
    margin: 10px 6px;
}

.content-cta .button-secondary {
    border: 1px solid rgb(102,103,103);
    color: rgb(102, 103, 103);
    white-space: normal;
}

.content-cta .button-secondary.pure-button-hover, .content-cta .button-secondary.pure-button:hover {
    background: rgb(102,103,103);
    color: white;
}

.footer-links {
    padding: 55px 0;
    font-size: 15px;
}

.footer-links > .pure-g {
    max-width: 1165px;
    margin: 0 auto;
}

.footer-links ul {
    display: inline-block;
    padding-left: 0;
}

.footer-links li {
    list-style: none;
    padding: 4px 5px;
    text-align: left;
}
.footer-columns {
	justify-content: center;
}

.Content p,
.Content li {
    font-size: 17px;
    line-height: 1.6;
}

.centre-footer-details {
    overflow: hidden;
    padding: 0px 0px 0px 0px;
    text-align: center;
    position: relative;
}

#LocationMapBox {
    height: 600px;
    width: 100%;
}
.static-location #LocationMapBox {
    height: 100%;
}
.static-location {
    width: 100%;
    position: relative;
}
.static-location #static-map {
    object-fit: cover;
    font-family: 'object-fit: cover;';
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    height: 100%;
}
.static-location .location-floater {
    position: absolute;
    left: 52%;
    top: 35px;
    max-width: 450px;
    box-shadow: 0px 0px 15px #AAA;
}
.static-location a {
    color: inherit;
}
.static-location a:visited {
    color: inherit;
}
.static-location .location-box {
    background-color: rgb(187, 214, 121);
    color: rgb(255, 255, 255);
    min-height: 450px;
}
.static-location .location-box .contact-details {
    padding: 30px 60px;
}
.static-location .location-box .contact-details h2 {
    color: rgb(255, 255, 255);
}
.static-location .location-box .contact-details img {
    max-width: 100%;
}
.static-location .location-box .contact-details img.lll-logo {
    padding-top: 20px;
}

.home-feature-list > div {
    padding: 10px 7px 32px 7px;
}


.home-feature-list .feature-lll {
    padding: 0 20px 10px 20px;
    overflow: hidden;
    position: absolute;
    left: 0px;
    right: 0px;
    bottom: -20px;
    top: 0px;
    text-align: center;
}

.home-feature-list .feature-rounded {
    border-radius: 5px;
}

.home-feature-list .pure-img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;"
}

.feature-item {
    position: relative;
    padding-bottom: 100%;
}

.feature-item > a {
    position: absolute;
    top: 0;
    right: 0;
    bottom: -20px;
    left: 0;
    display: block;
    z-index: 2;
}

.feature-item > a:hover + .home-feature-title {
    background-image: linear-gradient( rgba(0,0,0,0.1), rgba(0,0,0,0.1));
}

.feature-item .button-medium {
    font-size: 13px;
}

@media (max-width: 1023px) {
    .feature-item {
        padding-bottom: 65%;
    }
}

@media (max-width: 767px) {
    .feature-item {
        padding-bottom: 100%;
    }
}

.home-feature-title {
    position: absolute;
    bottom: -20px;
    right: 15px;
    left: 15px;
    border-radius: 5px;
    font-size: 18px;
    text-align: center;
    padding: 12px 15px;
}

.feature-lll + .home-feature-title {
    display: none;
}

.feature-lll .button-secondary {
    position: absolute;
    bottom: 20px;
    left: 50%;
    margin-left: -80px;
}

@media (max-width: 1279px) {
    .feature-lll p:last-child {
        display: none;
    }
}

.feature-book {
    height: 100%;
}

.feature-book img {
    height: 60%;
}

.feature-book h3 {
    padding: 15px 0 0 0;
    font-size: 30px;
}

@media (max-width: 567px) {
    .feature-book img {
        height: 50%;
        margin-top: 5%;
    }
}

.location-floater,
.our-people-why-feature,
.our-people-contact-details,
.lll-feature {
    width: calc(100% - 20px);
    background-color: white;
    margin-right: 20px;
    margin-top: 16px;
    margin-bottom: 16px;
    overflow: hidden;
    padding: 15px 30px 35px;
}

.lll-feature {
    padding-top: 30px;
    padding-bottom: 18px;
}

.lll-feature p {
    margin-left: 12px;
}

.location-floater {
    margin: 0;
    width: auto;
}

.location-page .location-floater {
    margin-left: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.our-people-why-feature li {
    font-size: 17px;
    line-height: 1.6;
}


.location-floater,
.our-people-contact-details,
.lll-feature {
    font-size: 17px;
}

.location-floater h1,
.our-people-contact-details h1 {
    font-size: 26px;
}

.location-floater p,
.our-people-contact-details p,
.lll-feature {
    line-height: 1.5;
}

.location-floater dt,
.our-people-contact-details dt,
.static-location .contact-details dt {
    float: left;
    display: block;
    line-height: 1.6;
    clear: left;
    margin-top: 0;
    margin-bottom: 0;
}
.location-floater.contact-right-module dt {
    min-width: 60px;
}

.our-people-contact-details dl {
    padding-left: 0;
}

.location-floater dd,
.our-people-contact-details dd,
.static-location .contact-details dd {
    display: block;
    float: left;
    line-height: 1.6;
    margin-left: 20px;
}

.static-location .contact-details dd {
    float: none;
    margin-left: 100px;
}

.location-floater dl.phone-numbers {
    padding-bottom: 12px;
}

.location-floater.smaller {
    font-size: 15px;
}

.location-floater.smaller h1 {
    font-size: 26px;
}

.lll-feature .button-secondary {
    border: 1px solid rgb(102,103,103);
    color: rgb(102, 103, 103);
}

.lll-feature .button-secondary:hover {
    background: rgb(102,103,103);
    color: white;
}

.our-people {
    position: relative;
    z-index: 10;
    overflow: hidden;
}

.our-people-features {
    padding: 20px 0;
}

.our-people-container img {
    position: absolute;
    max-width: 100%;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    font-family: "object-fit: cover;";
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    z-index: -2;
}

.our-people-container:after {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.85) 100%);
    z-index: -1;
}

.our-people-content {
    position: relative;
    height: 100%;
    width: 100%;
}

.our-people-caption {
    position: absolute;
    bottom: 0;
    padding: 40px;
}

.contact-right-module {
    border: 1px solid #6A7686;
    margin-bottom: 20px;
    padding: 0 20px 30px 20px;
    font-size: 17px;
}

.contact-right-module h1 {
    font-size: 26px;
}

.contact-right-module h3 {
    margin: 12px 0 5px 0;
}

@media (max-width: 1023px) {
    .contact-right-module {
        font-size: 15px;
    }

    .location-floater {
        font-size: 15px;
    }

    .location-floater h1 {
        font-size: 22px;
    }
}

@media (max-width: 767px) {
    .our-people-container {
        position: relative;
    }

    .our-people-why-feature,
    .our-people-contact-details,
    .lll-feature {
        width: 100%;
    }

    .our-people-caption {
        position: static;
        padding: 40px;
        margin-top: 20vw;
    }

    .our-people-container:after {
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.85) 100%);
    }
}

.right-content {
    padding: 0 0 0 10px;
}

.contactus-right-content {
    text-align: center;
}

.cta-right-module {
    width: 100%;
    position: relative;
    text-align: center;
    color: #fff;
    padding: 35px 20px 30px;
    margin-bottom: 10px;
}
.cta-right-module .heading {
	font-size:24px; 
	margin-bottom: 10px;
    font-weight: bold;
}
.cta-right-module .content {
	margin-bottom: 15px;
}
.cta-right-module .button-secondary {
	border-color: #fff;
	color: #fff;
	width: 100%;
}
.cta-right-module .button-secondary a {
	color: #fff;
	letter-spacing: 1px;
}
.cta-right-module .cta-right-arrow-link {
	width: 100%;
}
.cta-right-module .cta-right-arrow-link a {
	font-weight: normal;
	font-size: 14px;
	color: #fff;
	text-transform: uppercase;
}
.cta-right-module .cta-right-arrow-link a:after {
	font-family: "sans serif";
	font-size: 24px;
	margin-left: 10px;
	content: "→";
}

.contact-right-module {
    text-align: left;
}

.social-media-links {
    margin: 30px 0;
    text-align: center;
}

.social-link {
    text-align: center;
}

.social-link img {
    padding: 20px;
}

@media (max-width: 1023px) {
    .social-link img {
        padding: 15px;
    }
}

@media (max-width: 767px) {
    .social-link img {
        padding: 10px;
    }
}

@media (max-width: 567px) {
    .social-link img {
        display: inline;
        max-width: 80%;
    }
}

.footer-buttons {
    padding: 40px 15px;
    text-align: center;
}

.staff-list {
    padding-left: 0;
    padding-right: 0;
}

.staff-member {
    margin: 0 20px 40px 20px;
    font-size: 15px;
}

.staff-list h1 {
    padding-left: 15px;
}

.staff-member h2 {
    text-align: center;
}