/*
    Numberworks Color Palette
    Yellow:         #ffc628;
    Red:            #e31e36;
    Purple:         #6c2c91;
    Dark:           #3c3c3c;
    MidGrey:        #c8c8c8;
    LightGrey:      #ebebeb;
*/

html, body {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    color:  #3c3c3c;
    line-height: 1.6;
    position: relative;
}

.uc {
    text-transform: uppercase;
}

.spaced {
    letter-spacing: 1px;
}

.hide {
    display: none;
}

.icon {
    width: 60px;
    height: auto;
}

section.inverted *,
.col.inverted *
{
    color: white;
}

.a,
.btn-toolbar input,
button,
div.checkbox label
{
    cursor: pointer;
    cursor: hand;
}

.btn-toolbar input[type=submit]:disabled,
.btn-toolbar button:disabled {
    background:  #ccc;
    cursor: wait;
}

.block {
    display: block;
}

    .block img {
        width: 100%;
        height: auto;
    }

.flex,
.flex-mobile 
{
    display: flex;
}

    .flex.space-between {
        justify-content: space-between;
    }

    .flex.two-col {
        justify-content: space-between;
    }

    .flex.two-col .col {
        flex-basis: 45%;
    }

    .flex.two-col .col h2 {
        color: #e31e36;
    }

    .flex.two-col .col h3:first-of-type {
        margin-top: 0px;
    }

    .flex.three-col {
        justify-content: space-between;
    }

    .flex.three-col .col {
        display: flex;
        flex-direction: column;
        flex-basis: 28%;
        padding: 20px 10px;
    }

    .flex.three-col .col.ph-deep {
        box-sizing: border-box;
        flex-basis: 31%;
        padding: 20px 30px;
    }

    .flex.three-col .col .detail {
        flex-grow: 1;
    }

    .flex.three-col a.col {
        cursor: pointer;
        color: inherit;
    }

    .flex .col {
        flex-grow: 0;
        flex-shrink: 0;
    }

    .flex .half {
        flex-basis: 50%;
    }

    .flex .third {
        flex-basis: 35%;
    }

    .flex img {
        margin-right: 20px;
        flex-grow: 0;
        flex-shrink: 0;
    }

.three-col img:not(.icon) {
    width: 100%;
    height: auto;
}

.three-col .text {
    height: 100%;
    text-align: center;
    padding: 30px;
    word-wrap: break-word;
}

.three-col .icon {
    display: inline-block;
    margin: 0 0 15px;
}

    .three-col .center .icon {
        margin: 30px auto;
    }

.three-col .heading {
    justify-content: center;
}

.show-mobile {
    display: none;
}

.mr {
    margin-right: 30px;
}

.ml {
    margin-left: 30px;
}

.mt {
    margin-top: 30px;
}

.pb-shallow,
section.content.pb-shallow
{
    padding-bottom: 30px;
}

.mt-deep {
    margin-top: 50px;
}

.mb,
section.content .container.mb
{
    margin-bottom: 30px;
}

.mb-deep,
section.content .container.mb-deep
{
    margin-bottom: 50px;
}

.p-nmb p, p.p-nmb, .nmb {
    margin-bottom: 0px;
}

.p-nmt p, .nmt {
    margin-top: 0px;
}

.reset-list {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    .reset-list li {
        padding: 0px;
    }

button.clear {
    padding: 0px;
    border: none;
    outline: none;
}

.inline-buttons .btn {
    margin: 0 10px 15px 0;
    box-sizing: border-box;
}

    @media only screen and (max-width: 680px) {
        .inline-buttons .btn {
            width: 45%;
        }
    }

    @media only screen and (max-width: 420px) {
        .inline-buttons .btn {
            margin-right: 0px;
            width: 100%;
        }
    }

/* 
    Reset all lis of underline style
*/
ul.default li,
ul.reset-list li,
.slick-dots li
{
    padding: auto;
    border-top: none;
}

/*
    Social media bar
 */
.social-bar {
    position: fixed;
    z-index: 8;
    height: auto;
    top: 450px;
    right: 22px;
}

    .social-bar ul, .social-bar li {
        list-style-type: none;
        margin: 0px;
        padding: 0px;
    }

    .social-bar li {
        width: 35px;
        margin-bottom: 15px;
        text-align: center;
        position: relative;
    }

    .social-bar li:last-of-type {
        margin-bottom: 0px;
    }

    .social-bar a {
        display: block;
        overflow: hidden;
        width: 100%;
        height: 15px;
        text-indent: -999px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: top center;
    }

        .social-bar a.facebook {
            background-image: url(/_resources/themes/nww/images/icon-facebook.svg);
        }

        .social-bar a.blog {
            background-image: url(/_resources/themes/nww/images/icon-blog.svg);
        }

        .social-bar a.instagram {
            background-image: url(/_resources/themes/nww/images/icon-instagram.svg);
        }

        .social-bar a.linkedin {
            background-image: url(/_resources/themes/nww/images/icon-linkedin.svg);
        }

        .social-bar li.arcade {
            margin-top: 20px;
            height: 60px;
        }

        .social-bar a.arcade {
            position: absolute;
            width: 50px;
            height: 35px;
            left: -5px;
            background-image: url(/_resources/themes/nww/images/icon-arcade.svg);
        }

/*
    Headings
 */
.heading {
    display: flex;
    align-items: center;
}

    .heading.center {
        justify-content: center;
    }

    .heading .icon {
        margin-right: 20px;
        width: 60px;
        height: 60px;
    }

    .heading.image-heading {
        position: relative;
        display: block;
        overflow: hidden;
    }

        .heading.image-heading span {
            position: absolute;
            left: -999px;
        }

        .heading.image-heading img {
            width: 33%;
            height: auto;
        }

    .heading .replaced-image {
        max-width: 100%;
    }

    
    h1.heading {
        margin-top: 0px;
    }

    .header h1.heading {
        margin: 0 0 30px 0;
    }

    .heading a {
        text-decoration: none;
    }

    .header h2.indented {
        margin-left: 80px; 
        margin-top: -25px;
    }


.uc-headers {}
    
    .uc-headers h1,
    .uc-headers h2,
    .uc-headers h3 
    {
        text-transform: uppercase;
        color: #e31e36;
        font-size: 14.875px;
        font-weight: 600;
        margin-top: 50px;
    }

    .uc-headers h1 {
        margin-top: 0px;
    }

/*
    Search form
 */
.site-search .search {
    height: 30px;
    margin: 0 35px;
    position: relative;
    border-bottom: 1px solid #e31e36;
}

    .site-search .search .text {
        font-weight: 500;
        font-size: 12.5px;
        border: none;
        background: transparent;
        outline: none;
        box-sizing: border-box;
        padding: 8px 20px 8px 0;
        font-family: 'Montserrat', Helvetica Neue, Helvetica, Arial, sans-serif;
        color:  #e31e36;
    }

    .site-search .search .text::placeholder {
        color:  #e31e36;
        font-weight: 500;
        font-family: 'Montserrat', Helvetica Neue, Helvetica, Arial, sans-serif;
    }

        /* For Edge - doesn't work chained with other directives */
        .site-search .search .text::-ms-input-placeholder {
            color:  #e31e36; 
        }

    .site-search .search .submit {
        position: absolute;
        right: 0px;
        top: 0px;
        background: none;
        border: none;
        overflow: hidden;
        text-indent: -999px;
        width: 20px;
        height: 25px;
    }

    .site-search .search img {
        width: 12px;
        height: auto;
        position: absolute;
        right: 0px;
        bottom: 10px;
        margin-right: 0px;
    }

/*
    Header
 */
header {
    border-bottom: black;
    position: fixed;
    width: 100%;
    left: 0px;
    top: 0px;
    background-image: linear-gradient(to right, #e7e6dd,  #e7e6dd, white, #e7e6dd, #e7e6dd);
    box-shadow: 0 4px 10px -2px rgba(0, 0, 0, 0.51); 
    z-index: 99;
}


    header, header .container {
        height: 80px;
    }

        body {
            padding-top: 80px;
        }

    header .container {
        margin: 0 55px 0 2vw;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

        header .container .flex {
            align-items: center;
        }

    header .logo {
        display: block;
        line-height: 1;
    }

    header .logo img {
        width: 310px;
        height: auto;
    }

    header ul {
        list-style-type: none;
        margin: 0 2vw 0 0;
        padding: 0;
        position: relative;
    }

        header ul li {
            line-height: 1;
            display: block;
            float: left;
            text-transform: uppercase;
            padding: 2px 0.75vw;
            border-right: 1px solid #e31e36;
        }

        header ul li:first-of-type {
            padding-left: 0px;
        }

        header ul li:last-of-type {
            border-right: 0px;
            padding-right: 0px;
        }

        header ul li a {
            text-decoration: none;
            color: #e31e36;
        }

        header ul li a:hover {
            color: #6c2c91;
            transition: all 0.5s;
        }

        header .phone {
            line-height: 1;
        }
            
            header .phone a {
                display: flex;
                color: #e31e36;
                text-decoration: none;
                align-items: center;
            }

            header .phone svg {
                width: 25px;
                height: 25px;
                margin-right: 10px;
            }

        header .infopack {
            margin-left: 10px;
            top: 5px;
            margin-right: 50px;
        }

            header .infopack a {
                display: block;
                width: 140px;
            }

                header .infopack svg {
                    width: auto;
                    height: auto;
                }

            @media (hover: hover) {

                header .phone a:hover {
                    transition: all 0.5s;
                    color: #6c2c91;
                }

                header .phone a:hover svg path.cog {
                    transition: all 0.5s;
                    fill: #6c2c91;
                }
            }

        header .toggle {
            position: absolute;
            right: 25px;
            top: 20px;
            width: 30px;
            overflow: hidden;
        }

        header .toggle:after, 
        header .toggle:before, 
        header .toggle div {
          background-color: #e31e36;
          content: '';
          display: block;
          height: 2px;
          margin: 10px 0;
          transition: all .2s ease-in-out;
        }

        @media (hover: hover) {
            header .toggle:hover:before,
            header .toggle:hover:after,
            header .toggle:hover div
            {
                background: #6c2c91;;   
            }
        }

        header .toggle.show:before {
            transform: translateY(12px) rotate(135deg);
        }

        header .toggle.show:after {
            transform: translateY(-12px) rotate(-135deg);
        }

        header .toggle.show div {
            transform: scale(0);
        }

        /*
            For browsers that don't support "hidden" attribute
         */
        header .toggle span {
            position: absolute;
            left: -9999px;
        }

/*
    Main navigation
 */
#main-nav {
    opacity: 0;
    position: fixed;
    width: 40vw;
    top: 80px;
    height: 100vh;
    box-sizing: border-box;
    right: 0px;
    z-index: 10;
    padding: 50px 150px 0 50px;
    transform: translateX(100%);
    transition: transform 0.3s ease-in-out;
    overflow-y: scroll;
}

    #main-nav.show {
        transform: translateX(0);
    }

    #main-nav ul,
    #main-nav li
    {
        margin: 0px;
        padding: 0px;
        list-style-type: none;
    }

        #main-nav ul {
            padding-bottom: 60px;
            border-bottom: 1px solid #6c2c91;
        }

        #main-nav ul.mb-shallow {
            padding-bottom: 0px;
            margin-bottom: 30px;
        }

    #main-nav li {
        border-bottom: 1px solid #6c2c91;
    }
        #main-nav li:last-of-type {
            border-bottom: 0px;
        }

        #main-nav li a {
            display: flex;
            align-items: center;
            padding: 5px 0;
            color: #6c2c91;
            text-decoration: none;
            transition: color 0.5s;
        }

        #main-nav li .icon {
            width: 22px;
            height: 22px;
            margin-right: 8px;
        }

    #main-nav .site-search .search {
        margin: 30px 0 0 0;
        display: none;
    }

@media (hover: hover) {
    #main-nav li a:hover {
        color: black;
    }
}


/*
    Hero
 */

#hero {
    display: flex;
}

    #hero .banner-images {
        position: relative;
        overflow: hidden;
        background-image: url(/_resources/themes/nww/images/animation-loading.svg);
        background-position: center center;
        background-repeat: no-repeat;
    }

    #hero .banner-images,
    #hero .image
    {
        width: 60vw;
    }

    #hero .image {
        box-sizing: border-box;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        position: absolute;
        left: 0px;
        right: 0px;
        top: 0px;
        bottom: 0px;
    }

    #hero .text {
        width: 40vw;
        box-sizing: border-box;
        padding: 45px;
        padding-bottom: 285px;
        padding-right: 0px;
        position: relative;
    }

        #hero .text h1 {
            margin: 0 0 30px 0;
        }

        #hero .text p.heading 
        {
            display: block;
            margin: 0 0 15px 0;
            line-height: 1.1;
        }

            #hero .text p.heading span {
                display: block;
            }

            @media only screen and (max-width: 360px) {
                #hero .text p.heading span {
                    display: inline;
                }
            }

        #hero .text h2 {
            position: absolute;
            margin: 0px;
            text-align: center;
        }

            #hero .text h2 a {
                text-decoration: none;
                box-sizing: border-box;
                color: #e31e36;
                display: block;
                font-size: 12.5px;
                font-weight: 600;
                transition: transform .3s;
                position: relative;
            }

            #hero .text h2 a span {
                position: relative;
                z-index: 1;
            }

            #hero .text h2 a:before {
                content: "";
                position: absolute;
                width: 100%;
                height: 100%;
                top: 0px;
                left: 0px;
                background-repeat: no-repeat;
                background-size: contain;
                transition: transform 0.5s;
                transform: rotate(0deg);
            }

            @media (hover: hover) and (min-width: 681px) {
                #hero .text h2 a:hover {
                    z-index: 10;
                    transform: scale(1.25);
                }

                    #hero .text h2 a:hover:before {
                        transform: rotate(45deg);
                        filter:drop-shadow(0px 0px 10px #d9a71c);
                    }
            }

            
            #hero .text h2 a strong {
                margin-bottom: 5px;
            }

            #hero .cogs {
                position: absolute;
                bottom: 40px;
                left: 40px;
                width: 340px;
                height: 235px;
            }

            #hero .text h2.maths {
                left: 0px;
                top: -20px;
            }

                #hero .text h2.maths a:before {
                    background: url(/_resources/themes/nww/images/cog-yellow.svg);
                }

                #hero .text h2.maths a {
                    width: 150px;
                    height: 150px; 
                    padding-top: 50px;
                }

            #hero .text h2.english {
               bottom: -10px;
               left: 91px;
            }

                #hero .text h2.english a:before {
                    background: url(/_resources/themes/nww/images/cog-yellow.svg);
                }

                #hero .text h2.english a {
                    width: 156px;
                    height: 156px; 
                    padding-top: 55px;
                }

            #hero .text h2.free-assessment {
                top: 10px;
                right: 0px;
            }

                #hero .text h2.free-assessment a:before {
                    background: url(/_resources/themes/nww/images/cog-red.svg);
                }

                #hero .text h2.free-assessment a {
                    width: 135px;
                    height: 135px;
                    color: white;
                    padding: 30px 20px 0 20px;
                    font-weight: 500;
                    line-height: 1.2;
                }

                #hero .text h2.free-assessment a strong {
                    text-decoration: none;
                }

            @media  (min-width: 681px) {
                
                #hero .text h2 a strong {
                    font-size: 24px;
                    display: block;
                    text-decoration: underline;
                }

                #hero .text h2.free-assessment a strong {
                    font-size: 15px;
                }
            }

        #hero .text p.heading {
            line-height: 1.3;
        }

section.content {
    padding: 75px 0;
    position: relative;
}

section.alert {
    display: block;
    padding: 10px 0;
}

    section.alert .container {
        position: relative;
        padding-left: 40px;
        box-sizing: border-box;
    }

    section.alert * {
        color: white;
    }


    section.alert.inverted * {
        color: black;
    }

        section.alert.inverted p:first-of-type strong {
            color: #e31e36 !important;
        }


    section.alert svg {
        width: 25px;
        height: 25px;
        position: absolute;
        left: 0px;
        top: 0px;
    }

        section.alert.inverted svg {
            fill: #e31e36 !important;
        }

    section.page-section p.btn {
        margin-bottom: 0px;
    }

    section.page-section.header {
        background-repeat: no-repeat;
        background-position: top right;
    }

        section.page-section.header.cover {
            background-size: cover;
            background-position: top center;
        }

        section.page-section.header p span {
            display: block;
        }

        section.page-section.header .container {
            position: relative;
        }

        section.page-section.header .text {
            margin-right: 200px;
        }

        section.page-section.header .button {
            position: absolute;
            width: 150px;
            right: 50px;
            top: 170px;
        }

        section.page-section.header .button a {
            display: block;
        }

    section.page-section.map {
        padding: 0px;
    }

    section.content .container {
        width: 880px;
        margin: 0 auto;
    }

        section.content .container.text-center {
            text-align: center;
        }

        section.content .container.carousel {
            box-sizing: border-box;
            width: 100%;
            padding: 0 40px;
        }

        section.content .container.wide {
            width: 80%;
        }

        section.content .container.full {
            width: 100%;
        }

        section.content .container:last-of-type {
            margin-bottom: 0px;
        }

    section.content.shallow {
        padding: 40px 0;
    }

    section.content.shallow-top {
        padding-top: 0px;
    }

    section.content.shallow-bottom {
        padding-bottom: 0px;
    }

    section.content.header {
        padding: 0;
    }

        section.content.header.centre-page {
            height: auto;
            background-image: url(/_resources/themes/nww/images/header-centre-page.svg);
            background-position: 95% top;
            background-repeat: no-repeat;
            background-size: auto 90%;
        }

        section.content.header .container {
            padding: 60px 0;
            background-size: 41%;
            background-repeat: no-repeat;
            background-position: top right;
        }

        section.content.header.centre-page .buttons a {
            margin: 0 30px 0 0;
            position: relative;
        }

        section.content.header.centre-page .buttons a svg {
            width: 30px;
            height: auto;
            position: absolute;
            left: 10px;
            top: 10px;
        }

        section.content.header.centre-page .buttons .rounded.has-icon {
            padding-left: 60px;
        }

        section.content.header.centre-page .buttons a svg .cog {
            fill: white;
        }

        section.content.header.centre-page .buttons a svg .phone {
            fill: #e31e36;
        }

        section.content.header .half {
            width: 60%;
        }

    section.address ul {
        margin-bottom: 30px;
    }

        section.address ul a {
            color:  #3c3c3c;
        }

    hr {
        box-sizing: border-box;
        border: 0px;
        border-bottom: 1px solid #c8c8c8;
        margin: 0 auto;
        width: 940px;
    }

        .two-col .col hr {
            width: 100%;
            margin: 30px 0;
        }

    /*
        Responsive containers
     */
    @media only screen and (max-width: 1080px) {
        section.content .container {
            width: 785px;
        }

        hr {
            width: 800px;
        }
    }

    @media only screen and (max-width: 880px) {
        section.content .container {
            width: 85%;
        }

        hr {
            width: 85%;
        }
    }

    @media only screen and (max-width: 760px) {
        section.content.header .half {
            width: 100%;
        }
    }

    section.content h2 {
        margin: 0 0 28px 0;
        line-height: 1.2;
    }

        section.content h2.mt-deep {
            margin-top: 40px;
        }

        section.content h2.mb {
            margin-bottom: 35px;
        }

        section.content h2.mb-shallow {
            margin-bottom: 15px;
        }

    .business-section section.content a {
        color: #3c3c3c;
    }

        .business-section section.content .btn a:hover {
            color: white;
        }

        .business-section section.content.inverted a {
            color: white;
        }

            .business-section section.content.inverted.red-bg .btn a:hover {
                color: #e31e36;
            }

        .business-section section.content a strong {
            text-transform: uppercase;
            letter-spacing: 2px;
        }

    /*.business-section .header h1,
    .business-section section.content h2,
    .business-section section.content.default h1
    {
        font-size: 2rem;
    }

    .business-section section.content.default h1 {
        margin-bottom: 40px;
    }*/

    .business-section section.content .show-more h2
    {
        text-transform: uppercase;
        font-size: 14px;
        color: #e31e36;
        letter-spacing: 1px;
        margin: 40px 0 20px 0;
    }

    .business-section section.content .show-more h2 {
        clear: both;
        padding-top: 20px;
        margin-top: 0px;
        display: block;
    }

    .business-section section.content.default h3 {
        font-size: 16px;
        font-weight: 600;
        margin: 30px 0 0 0;
    }

    .business-section section.content.default h2.heading {
        margin-top: 0px;
    }

/*
    Section menu
 */
ul.section-menu {
    margin-top: 60px;
    width: 90%;
}

    ul.section-menu li {
        padding: 0px;
        box-sizing: border-box;
        width: 30%;
        display: inline-block;
        margin-bottom: 15px;
    }

    ul.section-menu li a {
        padding-bottom: 5px;
        display: inline-block;
        text-decoration: none;
        border-bottom: 1px solid #49453a;
        font-weight: 400;
        transition: color 0.5s, border-color 0.5s;
        color: #49453A;
    }

        ul.section-menu li a:hover {
            color: #6C2C91;
            border-color: #6C2C91;
        }

    @media only screen and (max-width: 680px) {
        ul.section-menu {
            width: 100%;
        }

            ul.section-menu li {
                width: 48%;
                font-size: 0.95rem;
            }

            ul.section-menu li a {
                font-weight: 500;
            }
    }


    @media only screen and (max-width: 360px) {
        ul.section-menu li {
            width: 100%;
        }

            ul.section-menu li a {
                display: block;
            }
    }

/* 
    Numbered list
*/
ul.numbered {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    ul.numbered strong {
        line-height: 1;
        display: block;
    }

    ul.numbered h3 {
        margin: 10px 0 -5px 0;
        line-height: 1;
    }

    ul.numbered li {
        border-bottom: 1px solid #e31e36;
        padding: 30px 0;
    }

        ul.numbered li:first-of-type {
            padding-top: 0px;
        }

        ul.numbered li:last-of-type {
            border-bottom: none;
            padding-bottom: none;
        }

        ul.numbered li p {
            margin-bottom: 0px;
        }


/*
    Accordion
 */
ul.accordion {}

    ul.accordion .content {
        padding: 1px 30px; /* 1px to avoid jolting on open */
    }

    ul.accordion > li:before {
        content: '';
        background: url(/_resources/themes/nww/images/arrow-chevron-down.svg);
        width: 15px;
        height: 15px;
        position: absolute;
        right: 15px;
        top: 30px;
        transition: transform 0.2s;
    }

    ul.accordion > li.open:before {
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -o-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    .js ul.accordion .content {
        display: none;
    }

    ul.accordion .content ul,
    ul.accordion .content ol {
        margin: 0 0 20px 20px;
        padding: 0px;
    }

    ul.accordion .content ul li,
    ul.accordion .content ol li {
        border: none;
        margin: 5px 0 0 0;
        padding: 0;
    }

    ul.accordion .content ul li {
        list-style-type: disc;
    }

/*
    Maps
 */

#map {
    margin-left: auto;
}
    
    #map.small {
        flex-grow: 0;    
        flex-shrink: 0; 
        flex-basis: 280px;
        height: 280px;
        background: #efefef;
        margin-left: 30px;
    }

    #map.wide {
        width: 100%;
        height: 500px;
    }

    .two-col .col #map.small {
        margin-left: 0px;
        margin-top: 30px;
    }

.multipoint-map {
    width: 100%;
    height: 500px;
}

    .multipoint-map + ul {
        display: none;
    }

.large-map {
    height: 520px;
}

    .large-map .map-listing select {
        width: 100%;
    }

    .large-map .map-listing .search {
        margin: 10px 0;
    }

        .large-map .map-listing .search p {
            margin: 5px 0 10px 0;
            line-height: 1;
            text-align: center;
        }

        .large-map .map-listing > div:first-child label {
            text-indent: -999px;
        }

        .large-map .map-listing .text-search {
            position: relative;
            margin-bottom: 10px;
        }
            .large-map .map-listing .text-search img {
                position: absolute;
                right: 10px;
                top: 50%;
                margin-top: -16px;
                width: 30px;
                height: auto;
                cursor: pointer;
                cursor: hand;
            }

        .large-map .map-listing input[type=text] {
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
            box-sizing: border-box;
            border-radius: 0px;
            width: 100%;
            font-size: 16px;
            padding: 15px 40px 15px 10px;
            border: 1px solid #c8c8c8;

        }

        .large-map .map-listing.loading {
            background-image: url(/_resources/themes/nww/images/animation-loading.svg);
            background-position: center center;
            background-repeat: no-repeat;
        }

    /* Map size setup */
    .large-map #map                                 { width: 65% }
    .large-map .map-listing                         { width: 34%; }
    .large-map #map, .large-map .map-listing        { height: 520px; }


        @media only screen and (max-width: 1150px) {
            .large-map #map                                 { width: 60% }
            .large-map .map-listing                         { width: 39%; }
        }

        @media only screen and (max-width: 840px) {
            .large-map                                      { height: auto; }
            .large-map #map                                 { width: 100%; float: none; }
            .large-map #map                                 { height: 40vh; }
            .large-map .map-listing.loading                 { background-position: 50% 75%; min-height: 300px; }
            
            .large-map .map-listing { 
                width: 100%; 
                float: none; 
                margin-bottom: 40px; 
                height: auto; 
                overflow: visible; 
            }
        }

        @media only screen and (max-width: 500px) {
            .large-map #map                                 { height: 25vh; }
        }


    .large-map #map {
        float: right;
        background: #efefef;
    }

    .large-map .map-listing {
        overflow-y: scroll;
        padding: 10px;
        box-sizing: border-box;
        margin-right: 1%;
        float: left;
        border: 1px solid #ebebeb;
    }

    .large-map .map-listing ul,
    .large-map .map-listing ul li
    {
        margin: 0px;
        padding: 0px;
        border: 0px;
    }

    .large-map .map-listing ul li {
        background: #fafafa;
        border-bottom: 1px solid #ebebeb;
        padding: 15px;
        font-size: 0.9rem;
    }

    .large-map .map-listing ul li:last-of-type {
        border-bottom: 0px;
    }

    .large-map .map-listing ul li svg {
        width: 15px;
        height: 15px;
        position: relative;
        top: 2px;
        margin-right: 3px;

    }

    .map-listing h3 {
        margin: 0 0 8px 0;
        font-size: 1rem;
    }

    .map-listing p {
        margin: 0px;
    }

    .map-listing a {
        color: #3c3c3c;
    }

    .map-listing .map-link {
        display: inline-block;
        margin-top: 20px;
        color: #3c3c3c;
        text-transform: uppercase;
        font-size: 10px;
        font-weight: 500;
        margin-right: 10px;
    }

        .map-listing .map-link.apple {
            
        }

        .map-listing .map-link.google {
            
        }

/*
    Info windows
 */
#map .gm-style-iw {
    font-family: 'Montserrat', Helvetica Neue, Helvetica, Arial, sans-serif;
    width: 280px;
}

#map .gm-style-iw h2 {
    margin: 0 0 10px 0;
    font-size: 0.9rem;
}

#map .gm-style-iw h2 a {
    text-decoration: none;
}

#map .gm-style .gm-style-iw-c {
    padding: 20px;
}

#map .gm-style p.address {
    width: 80%;
}

#map p.no-margin {
    margin: 5px 0;
}

    @media only screen and (max-width: 840px) {
        #map .gm-style-iw {
            width: auto !important;
        }
    }

/*
    Videos
 */
.videos {
    margin-top: 60px;
}

    .videos h3 {
        line-height: 1.4;
    }

    .videos .video {
        width: 33%;
        margin: 0 50px 0 0;
    }
        .videos .video:last-of-type {
            margin-right: 0px;
        }

    .videos .video-holder {
        width: 100%;
        z-index: 1;
        position: relative;
        overflow: hidden;
        border-bottom: 5px solid #6c2c91;
    }

    .videos.videos-1 {
        display: block;
    }

        .videos.videos-1 .video {
            width: 440px;
        }

            .videos.videos-1 .video .video-holder {
                width: 440px;
                height: 240px;
                overflow: hidden;
            }

                .videos.videos-1 .video .video-holder video {
                    position: relative;
                    top: -40px;
                }

                .videos.videos-1 .video .video-holder button.play-video {
                    bottom: 25px;
                    background: transparent url(/_resources/themes/nww/images/icon-play-purple.svg) top left no-repeat;
                }

                .videos.videos-1 .video .video-holder button.play-video.stop {
                    background: transparent url(/_resources/themes/nww/images/icon-pause-purple.svg) top left no-repeat;
                }

        .video-holder .play-video {
        }

            a.play-video {
                color: #3c3c3c;
            }

            button.play-video {
                width: 44px;
                height: 44px;
                margin-left: -22px;
                opacity: 0.9;
                position: absolute;
                z-index: 2;
                left: 50%;
                bottom: 15px;
                overflow: hidden;
                background-size: cover;
                background: transparent url(/_resources/themes/nww/images/icon-play.svg) top left no-repeat;
            }

                button.play-video.stop {
                    background: transparent url(/_resources/themes/nww/images/icon-pause.svg) top left no-repeat;
                }

            button.play-video span {
                position: absolute;
                left: -9999px;
            }

            button.play-video svg polygon {
                fill: white;
            }

        .videos .video-holder video {
            width: 100%;
            display: block;
        }

.testimonial {}

    .testimonial blockquote {
        margin: 0px;
        padding: 0px;
        color: #3c3c3c;
        border: none;
    }

    .testimonial h3,
    .testimonial h3.body
    {
        line-height: 1.6;
    }

    .testimonial cite {
        margin: 0px;
        line-height: 1;
        position: relative;
        top: 5px;
        font-style: normal;
    }

    .testimonial .responsive {
        display: none;
    }

/*
    Blog & listings
 */
.listing {
    display: flex;
    padding: 60px 0;
}

    .listing.wrap {
        display: block;
        clear: both;
    }

    .listing.last {
        border-bottom: 0px;
    }

    .listing h2 {
        margin-top: 0px;
    }

        .listing h2 a {
            text-decoration: none;
            transition: color 0.5s;
        }

        .listing h2 a:hover,
        .listing .image:hover + .text h2 a
        {
            color: #3c3c3c;
        }

    .listing .text {
        flex-basis: 60%;
        flex-grow: 1;
    }

    .listing .show-more {
        display: none;
    }

    .listing p.more {
        margin-bottom: 0px;
    }
s
        .listing p.more a {
            color: #3c3c3c;
        }

    .listing .image {
        display: block;
        margin-right: 40px;
        flex-basis: 40%;
    }

        .listing.wrap .image {
            width: 40%;
            float: left;
        }

        .listing .image img {
            width: 100%;
            height: auto;
        }

article {}

    article .feature-image {
        float: left;
        width: 40%;
        height: auto;
        margin: 0 40px 20px 0;
    }

    article img {
        max-width: 100%;
    }

    article p.center img, 
    img.center, 
    .blog-entry article p img:not(.feature-image)
    {
        height:auto;
        text-align:center;
        display:  block;
        margin: 20px auto;
    }


#intro .intro p {
    margin-top: 0;
}

.centre-list,
.centre-list ul,
.centre-list li 
{
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    .centre-list > li {
        padding-bottom: 15px;
    }

    .centre-list li h2 {
        border-top: 1px solid #c1c1c1;
        margin: 0px;
        padding: 15px 0;
    }

    .centre-list h3 {
        margin: 5px 0;
    }

    .centre-list .expand {
        cursor: pointer;
        cursor: hand;
    }

    .centre-list .centres {
        margin: 10px 20px;
    }

.comments-holder-container {
}

    .comments-holder-container h4 {
        text-transform: uppercase;
        font-size: 1rem;
        color: #e31e36;
        margin-top: 60px;
    }

.comments-list {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    .comments-list li {
        margin: 40px 0;
        padding: 5px 30px;
        border-left: 5px solid #e31e36;
    }

    .comments-list li p {
        margin-top: 0px;
    }

    .comments-list .info {
        text-transform: uppercase;
    }

    .comments-list .info .author {
        font-weight: 500;
    }

    .comments-list .info .date {
        display: block;
        font-size: 0.8rem;
    }

    .commenting-rss-feed {
        display: none;
    }

    .comment-moderation-options a {
        display: inline-block;
        padding: 10px 20px;
        text-transform: uppercase;
        background: #777;
        color: white;
        margin: 30px 10px 0 0;
        font-size: 0.8rem;
        text-decoration: none;
        font-weight: 400;
    }
/*
    Slider
 */
.slider {
    position: relative;
}

    .slider .hide {
        display: none !important;
    }

        .slider .hide:first-of-type {
            display: inline-block !important;
        }

        .slider .hide.flex:first-of-type {
            display: flex !important;
        }

    .slider.slick-initialized .flex {
        display: flex !important;
    }

    .slider .nav {
        overflow: hidden;
        background-size: cover;
        background-repeat: no-repeat;
        position: absolute;
        top: 6vh;
        width: 50px;
        height: 10px;
    }

    .slider span {
        display: none;
    }

    .slider .prev {
        left: 100px;
        background-image: url('/_resources/themes/nww/images/arrow-left.svg');
    }

    .slider .next {
        right: 100px;
        background-image: url('/_resources/themes/nww/images/arrow-right.svg');
    }

    .slick-slider.three-col .slick-arrow {
        background: white;
        position: absolute;
        top: 50%;
        display: block;
        width: 30px;
        height: 30px;
        -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        transform: translate(0, -50%);
        cursor: pointer;
        z-index: 99;
    }

    .slick-slider.three-col .prev {
        left: -25px;
        background-image: url('/_resources/themes/nww/images/arrow-left.svg');
        background-repeat: no-repeat;
    }

    .slick-slider.three-col .next {
        right: -25px;
        background-image: url('/_resources/themes/nww/images/arrow-right.svg');
        background-repeat: no-repeat;
    }

    .slick-slider.three-col .slick-track {
        display: flex;
    }

    .slick-slider.three-col .slick-slide {
        margin-left: 15px;
        margin-right: 15px;
        height: inherit;
    }

    .slick-slider.three-col .slick-slide > div {
        height: 100%;
    }

    .slick-slider.three-col .slick-slide .slide {
        display: flex !important;
        flex-direction: column;
        height: 100%;
    }

    .slick-slider.three-col .slick-dots {
        text-align: center;
    }

    .slide h3 {
        margin: 0px;
    }

    .slide .inverted * {
        color: white;
    }

    .slide .text ul,
    .slide .text ol {
        text-align: left;
    }

    .slick-dots {
        list-style-type: none;
        margin: 50px 0 0 0;
        padding: 0;
    }

        .testimonial .slick-dots {
            margin-top: 20px;
        }

    .slick-dots li {
        display: inline-block;
        margin-right: 20px;
    }

    .slick-dots li button {
        width: 12px;
        height: 12px;
        border-radius: 18px;
        overflow: hidden;
        text-indent: -9999px;
        margin: 0px;
        padding: 0px;
        line-height: 1;
        background: transparent;
        border: 1px solid #e31e36;
        display: block;
        outline: none;
    }

        .red-bg .slick-dots li button {
            border-color: white;
        }

    .slick-dots li.slick-active button {
        background: #e31e36;
    }

        .red-bg .slick-dots li.slick-active button {
            background: white;
        }

    @media only screen and (max-width: 1280px) {
        .slider .prev {
            left: 30px;
        }

        .slider .next {
            right: 30px;
        }

        .slick-slider.three-col .prev {
            left: -25px;
        }

        .slick-slider.three-col .next {
            right: -25px;
        }
    }

    @media only screen and (max-width: 980px) {
        .slider .nav {
            display: none !important;
        }

        .testimonial .responsive {
            display: block;
        }   
    }

/*
    Forms
 */
fieldset {
    border: none;
    padding: 0px;
    margin: 0px;
    display: block;
}


.select2-results li {
    border: 0px;
    padding: 5px 15px;
}

fieldset input.text,
fieldset textarea,
.select2-container--default .select2-selection--single {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0px;
    border: 1px solid #c8c8c8;
}

.select2-container--default .select2-selection--single {
    height: 50px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 15px;
    padding-top: 10px;
    color: black;
    font-size: 16px;
    font-family: Arial, Helvetica, sans-serif;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    font-size: 16px;
    padding: 5px;
}

.select2-selection__arrow {
    right: 10px !important;
    top: 10px !important;
}


fieldset input.text,
fieldset textarea
{
    width: 100%;
    padding: 15px;
    font-size: 16px;
    box-sizing: border-box;
}

fieldset select {
    width: 100%;
}

    fieldset input.text.is-invalid,
    fieldset textarea.is-invalid
    {
        border-color: #e31e36;
    }

fieldset span.readonly {
    display: block;
    padding: 12px 15px;
    border: 1px solid #c8c8c8;
}

fieldset .info {
    margin: 40px 0 0 0;
    box-sizing: border-box;
    padding: 30px;
}

    fieldset .info h5 {
        margin: 0 0 20px 0;
    }

    fieldset .info p {
        margin: 5px 0;
        line-height: 1.2;
    }

fieldset label {
    display: block;
    font-weight: 500;
    font-size: 0.9rem;
    color: #3c3c3c;
    margin-bottom: 10px;
}

fieldset div.field {
    margin: 20px 0;
}

    fieldset .invalid-feedback span {
        display: inline-block;
        margin-top: 5px;
        font-size: 0.85rem;
        font-weight: 500;
        color: #e31e36;
    }

    fieldset div.no-margin {
        margin: 0px;
    }

    fieldset div.nocaptcha {
        margin: 40px 0 20px 0;
    }

    fieldset div.checkbox {
        position: relative;
    }

    fieldset div.checkbox label {
        display: inline-block;
        margin: 5px 0;
    }

    fieldset div.checkbox input[type="checkbox"] {
        opacity: 0;
        position: absolute;
        left: 0px;
        top: 0px;
    }

        fieldset div.checkbox label {
            position: relative;
            padding-left: 50px;
            min-height: 30px;
        }

        fieldset div.checkbox label::before,
        fieldset div.checkbox label::after {
            position: absolute;
        }

        fieldset div.checkbox label::before{
            content: "";
            display: inline-block;
            height: 30px;
            width: 30px;
            border: 1px solid #c8c8c8;
            left: 0px;
            top: -6px;
        }

        fieldset div.checkbox label::after {
            content: "";
            display: inline-block;
            height: 6px;
            width: 13px;
            border-left: 2px solid #e31e36;
            border-bottom: 2px solid #e31e36;
            transform: rotate(-45deg);
            left: 9px;
            top: 6px;
        }

        .checkbox input[type="checkbox"]:focus + label::before {
            outline: rgb(59, 153, 252) auto 5px;
        }
        
        fieldset div.checkbox input[type="checkbox"] + label::after {
            content: none;
        }
        
        /*Unhide the checkmark on the checked state*/
        fieldset div.checkbox input[type="checkbox"]:checked + label::after {
            content: "";
        }

    /* Login form */
    #MemberLoginForm_LoginForm_Remember_Holder label {
        text-transform: none;
        font-weight: normal;
    }

    p#ForgotPassword {
        font-size: 0.8rem;
    }

        p#ForgotPassword a {
            color: #e31e36;
        }

.btn-toolbar {
    margin-top: 30px;
}

    /*
        Need to reset appearance and fonts for IOS
     */
    .btn-toolbar input {
        -webkit-appearance: none;
        font-family: 'Montserrat', Helvetica Neue, Helvetica, Arial, sans-serif;
        font-weight: 400;
        background: #e31e36;
        color: white;
        border: none;
        padding: 20px 40px;
        font-size: 12.5px;
    }

/*
    Pagination
 */
.pagination {
    display: block;
    margin: 60px 0 0 0;
    border-top: 1px solid #efefef;
    padding-top: 20px;
}

    .pagination.no-border {
        border-top: none;
        margin: 20px 0 0 0;
    }

    .pagination a {
        text-decoration: none;
        color: black;
    }

    .pagination span {
        font-size: 0.9rem;
        font-weight: 400;
        display: inline-block;
        margin: 0 15px;
    }

    .pagination span u {
        padding: 0 2px;
        text-decoration: none;
        border-bottom: 2px solid #e31e36;
        color: #e31e36;
        display: inline-block;
        margin: 0 15px;
    }
    
    .pagination span a {
        margin: 0 15px;
        font-weight: 300;
    }

        .pagination span a:hover {
            color: #e31e36;
        }

    .pagination a.next,
    .pagination a.prev {
        display: inline-block;
        width: 18px;
        height: 18px;
        background: #efefef;
        border-radius: 18px;
        line-height: 1;
        text-align: center;
    }

/*
    Footer
 */
footer {
    padding: 90px 10vw 65px 10vw;
}
    footer h2 {
        margin: 0 0 12px 0;
    }

    footer .container,
    footer .col 
    {
        display: flex;
    }

    footer .col {
        width: 40%;
    }

    footer section {
        padding-right: 4vw;
        text-align: left;
        width: 50%;
        box-sizing: border-box;
    }

    footer .arcade-logo {
        text-align: right;
        width: 20%;
    }
    
        footer .arcade-logo a {
            display: inline-block;
            position: relative;
            top: -8px;
            width: 60%;
        }

        footer .arcade-logo img {
            width: 100%;
            display: block;
        }

    footer ul {
        list-style-type: none;
        margin: 0;
        padding: 0;
    }

        footer li {
            border-top: 0.5px solid #c1c1c1;
            line-height: 1;
            padding: 10px 0 8px 0;
        }

            footer li:last-of-type {
                border-bottom: 0.5px solid #c1c1c1;
            }

        footer ul a {
            text-decoration: none;
            color: #3c3c3c;
            
        }

        footer ul a:hover {
            transition: all 0.5s;
            color: #e31e36;
        }

    section footer {
        padding: 0px;
    }

        section footer .col {
            width: 100%;
        }

        section footer section {
            margin: 20px 0 0 0;
            width: 40%;
        }

        section footer h5 {
            margin: 0 0 10px 0;
        }

        section footer p {
            margin: 0;
        }


section.custom-blog-section .container {
  width: 100%;
  max-width: 1390px;
}
.custom-blog-container {
  display: flex;
}
.blog-entry {
  width: 100%;
  flex: 1;
  padding: 0 30px;
}
.left-stickey { width: 240px; }
.left-stickey img{ vertical-align:top; max-width: 100%}
.left-stickey a.back-all-post { background: #520088; color: #fff; text-decoration: none; width: 100%; display: block; text-align: center;
  font-weight: 500; padding: 8px 0;
}
.right-stickey { width: 239px; position: relative; z-index: 9;}
.right-stickey-blog { border: 1px solid #cecece; background-color: #ffff; }
.right-stickey-blog img{ max-width:100%;}
.right-stickey h3 { margin: 8px 0; color: #e31e36; font-weight: 500; padding: 0 15px;}
.right-stickey-blog > a { margin: 5px 15px 15px 15px; display: inline-block; font-weight: 500;}
.right-stickey h4 {
    margin: 0;
    padding: 8px 15px;
    display: none;
}

.serach-mobile div#searchbtnmob {
    display: none;
}


    @media only screen and (max-width: 680px) {
        footer {
            padding: 40px 5%;
        }

            footer .container, footer .col {
                display: block;
            }

            .side_blog_title{
                display: block !important;
            }

            footer .col {
                width: 47%;
                float: left;
            }

                section footer .col {
                    float: none;
                    box-sizing: border-box;
                    width: 100%;
                    padding-left: 55px;
                }

                footer .col section {
                    padding: 0px;
                    width: 100%;
                }

                footer .col ul {
                    margin-bottom: 20px;
                }

            footer div.col:nth-child(2) {
                float: right;
            }

            footer .arcade-logo {
                clear: both;
                width: auto;
                padding-right: 5%;
                padding-top: 40px;
            }

            footer .arcade-logo a {
                width: 33%;
            }
      
      section.custom-blog-section .container {
          max-width: 85%;
        }
      .custom-blog-container {
          flex-wrap: wrap;
        }
      .left-stickey, .right-stickey, .left-stickey img, .right-stickey img{
          width: 100%;
        }
      .blog-entry {
        padding: 30px 0;
      }
      .right-stickey h4 {display: block;}
      .left-stickey {
            order: 1;
            margin-top: 20px;
        }
   
    }