/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

h1 {
    font-size: 2em;
    margin: 0.67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b, strong {
    font-weight: bolder
}

code, kbd, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

img {
    border-style: none
}

button, input, optgroup, select, textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

button, [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button
}

    button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
        border-style: none;
        padding: 0
    }

    button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
        outline: 1px dotted ButtonText
    }

fieldset {
    padding: 0.35em 0.75em 0.625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type="checkbox"], [type="radio"] {
    box-sizing: border-box;
    padding: 0
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

    [type="search"]::-webkit-search-decoration {
        -webkit-appearance: none
    }

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

@font-face {
    font-family: 'Haptik Regular';
    src: url("../fonts/haptik/GT-Haptik-Regular.eot");
    src: url("../fonts/haptik/GT-Haptik-Regular.eot?#iefix") format("embedded-opentype"),url("../fonts/haptik/GT-Haptik-Regular.woff2") format("woff2"),url("../fonts/haptik/GT-Haptik-Regular.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-stretch: normal
}

@font-face {
    font-family: 'Haptik Light';
    src: url("../fonts/haptik/GT-Haptik-Light.eot");
    src: url("../fonts/haptik/GT-Haptik-Light.eot?#iefix") format("embedded-opentype"),url("../fonts/haptik/GT-Haptik-Light.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-stretch: normal
}

@font-face {
    font-family: 'Sohne Leicht';
    src: url("../fonts/sohne/SohneWeb-Leicht.eot");
    src: url("../fonts/sohne/SohneWeb-Leicht.eot?#iefix") format("embedded-opentype"),url("../fonts/sohne/SohneWeb-Leicht.woff2") format("woff2"),url("../fonts/sohne/SohneWeb-Leicht.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-stretch: normal
}

@font-face {
    font-family: 'Sohne Leicht Kursiv';
    src: url("../fonts/sohne/SohneWeb-LeichtKursiv.eot");
    src: url("../fonts/sohne/SohneWeb-LeichtKursiv.eot?#iefix") format("embedded-opentype"),url("../fonts/sohne/SohneWeb-LeichtKursiv.woff2") format("woff2"),url("../fonts/sohne/SohneWeb-LeichtKursiv.woff") format("woff");
    font-weight: normal;
    font-style: italic;
    font-stretch: normal
}

@font-face {
    font-family: 'Sohne Mager';
    src: url("../fonts/sohne/SohneWeb-Mager.eot");
    src: url("../fonts/sohne/SohneWeb-Mager.eot?#iefix") format("embedded-opentype"),url("../fonts/sohne/SohneWeb-Mager.woff2") format("woff2"),url("../fonts/sohne/SohneWeb-Mager.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-stretch: normal
}

html {
    font-size: 75%;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal
}

body, p, ol, ul, h1, h2, h3, h4, h5, a, input, select, radio {
    text-rendering: geometricPrecision;
    font-weight: normal
}

html {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal
}

h1, h2, h3, h4, h5, p, ol, ul, fieldset, form {
    margin: 0;
    padding: 0
}

    em, p em, span em, figcaption em {
        font-style: normal;
        font-family: 'Sohne Leicht Kursiv', sans-serif;
        font-weight: normal;
        font-style: normal
    }

h3 {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    -webkit-font-smoothing: antialiased;
    margin-bottom: 24px
}

    h3 strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    h3 {
        font-size: 22px;
        line-height: 26px
    }
}

p {
    margin-bottom: 18px
}

    p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

table {
    margin: 0;
    padding: 0;
    color: #1e1e1e;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    line-height: 22px
}

    table strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    table {
        font-size: 14px;
        line-height: 20px
    }
}

table td, table th {
    border-bottom: 0.1rem solid #e1e1e1;
    padding: 1.2rem 1.5rem;
    text-align: left
}

table th {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    line-height: 22px
}

    table th strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    table th {
        font-size: 14px;
        line-height: 20px
    }
}

table td:first-child, table th:first-child {
    padding-left: 0
}

table td:last-child, table th:last-child {
    padding-right: 0
}

body {
    margin: 0;
    padding: 0;
    background-color: #fff;
    overflow-x: hidden
}

    body.black-theme .study-template .study-hero .wrap h1 {
        color: #1e1e1e
    }

    body.black-theme .main-header .main-menu a.active {
        color: #1e1e1e;
        text-decoration-color: #1e1e1e
    }

html {
    min-height: 100%;
    position: relative
}

html, body {
    width: 100%;
    width: 100vw
}

.content-wrap {
    position: relative
}

*, *:after, *::before {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

figure {
    margin: 0
}

.wrap {
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    z-index: 10;
    position: relative;
    max-width: 2000px
}

@media only screen and (max-width: 1440px) {
    .wrap {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .wrap {
        width: 94%
    }
}

.narrow-wrap {
    margin-left: auto;
    margin-right: auto;
    width: 70%;
    z-index: 10;
    position: relative
}

@media only screen and (max-width: 1440px) {
    .narrow-wrap {
        width: 80%
    }
}

@media only screen and (min-width: 2000px) {
    .narrow-wrap {
        width: 60%
    }
}

@media only screen and (max-width: 767px) {
    .narrow-wrap {
        width: 94%
    }
}

img {
    display: block;
    width: 100%;
    height: auto
}

a {
    text-decoration: none;
    outline: none;
    position: relative;
    -webkit-tap-highlight-color: transparent
}

    a:hover {
        border-color: transparent
    }

.mobile-test {
    display: none
}

@media only screen and (max-width: 767px) {
    .mobile-test {
        display: block
    }
}

.tablet-test {
    display: none
}

@media only screen and (max-width: 1024px) {
    .tablet-test {
        display: block
    }
}

.caption {
    width: 100%;
    display: block;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 14px;
    line-height: 16px;
    margin-top: 6px
}

@media only screen and (max-width: 767px) {
    .caption {
        font-size: 12px;
        line-height: 14px
    }
}

#background-colour {
    background-color: #fff;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: block;
    z-index: 1
}

@media only screen and (max-width: 767px) {
    #background-colour {
        display: none
    }
}

.call-to-action {
    background: #ff6100;
    width: 100%;
    padding: 10vw 0;
    position: relative;
    z-index: 3;
    text-align: center
}

    .call-to-action p {
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 42px;
        line-height: 42px;
        text-indent: 0
    }

@media only screen and (max-width: 767px) {
    .call-to-action p {
        font-size: 24px;
        line-height: 30px;
        letter-spacing: 0px
    }
}

@media only screen and (max-width: 767px) {
    .call-to-action p {
        width: 90%;
        margin: 0 auto
    }
}

.call-to-action .button {
    margin-top: 36px
}

@media only screen and (max-width: 767px) {
    .call-to-action br {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .call-to-action {
        padding: 20vw 0
    }
}

.video-module {
    position: relative;
    z-index: 10
}

    .video-module video {
        width: 100%;
        height: auto;
        outline: none;
        border: none
    }

#play-button {
    width: 100%;
    height: 100%;
    border: none;
    position: absolute;
    background: transparent;
    z-index: 50;
    display: block;
    top: 0;
    left: 0;
    outline: none;
    cursor: pointer
}

    #play-button:before {
        -webkit-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
        -moz-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
        -ms-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
        -o-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
        transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
        opacity: 1;
        content: "";
        width: 132px;
        height: 132px;
        border-radius: 50%;
        background: #fff;
        z-index: 15;
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        top: 50%;
        left: 50%;
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        outline: none
    }

@media only screen and (max-width: 767px) {
    #play-button:before {
        width: 84px;
        height: 84px
    }
}

#play-button:after {
    -webkit-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
    -moz-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
    -ms-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
    -o-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
    opacity: 1;
    content: "";
    position: absolute;
    display: block;
    z-index: 20;
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 24px solid #1e1e1e;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-40%, -50%);
    -ms-transform: translate(-40%, -50%);
    -webkit-transform: translate(-40%, -50%);
    transform: translate(-40%, -50%);
    outline: none;
    pointer-events: none
}

#play-button.playing:before {
    opacity: 0
}

#play-button.playing:after {
    opacity: 0
}

.story-columns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    position: relative;
    z-index: 10;
    margin-top: 5vw
}

    .story-columns .left, .story-columns .right {
        width: 47%
    }

        .story-columns .left figure figcaption, .story-columns .right figure figcaption {
            position: relative;
            display: block;
            width: 100%
        }

            .story-columns .left figure figcaption p, .story-columns .right figure figcaption p {
                font-family: 'Sohne Leicht', sans-serif;
                font-weight: normal;
                font-style: normal;
                font-size: 14px;
                line-height: 16px;
                margin-top: 6px;
                text-indent: 0
            }

@media only screen and (max-width: 767px) {
    .story-columns .left figure figcaption p, .story-columns .right figure figcaption p {
        font-size: 12px;
        line-height: 14px
    }
}

@media only screen and (max-width: 767px) {
    .story-columns .left, .story-columns .right {
        width: 100%
    }
}

.story-columns h2 {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    color: #1e1e1e;
    margin-bottom: 2.5vw;
    max-width: 550px
}

@media only screen and (max-width: 767px) {
    .story-columns h2 {
        font-size: 24px;
        line-height: 30px
    }
}

@media only screen and (max-width: 767px) {
    .story-columns h2 {
        margin-bottom: 7.5vw
    }
}

.story-columns p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    max-width: 550px
}

@media only screen and (max-width: 767px) {
    .story-columns p {
        font-size: 18px;
        line-height: 24px
    }
}

.story-columns p.link {
    text-indent: 0;
    margin-top: 2.5vw;
    max-width: 100%
}

.story-columns a {
    color: #ff6100;
    text-decoration: underline;
    text-decoration-skip: ink;
    text-decoration-color: #ff6100
}

.story-columns dl {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    margin: 2.5vw 0 0 0;
    max-width: 550px
}

@media only screen and (max-width: 767px) {
    .story-columns dl {
        font-size: 18px;
        line-height: 24px
    }
}

.story-columns dl:after {
    content: "";
    display: table;
    clear: both
}

.story-columns dl dd {
    float: left;
    margin: 0;
    width: 70%;
    max-width: 400px
}

.story-columns dl dt {
    float: left;
    width: 30%;
    padding: 0 0 0.25rem 0;
    clear: left
}

.story-columns .columns {
    -moz-columns: 2;
    -webkit-columns: 2;
    columns: 2
}

    .story-columns .columns p {
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 18px;
        line-height: 24px
    }

        .story-columns .columns p strong {
            font-family: 'Sohne Mager', sans-serif;
            font-weight: normal;
            font-style: normal
        }

@media only screen and (max-width: 767px) {
    .story-columns .columns p {
        font-size: 14px;
        line-height: 20px
    }
}

.story-columns .columns p:first-of-type {
    text-indent: 2em
}

.story-columns .columns .column-block {
    margin-bottom: 24px
}

@media only screen and (max-width: 767px) {
    .story-columns .columns {
        -moz-columns: 1;
        -webkit-columns: 1;
        columns: 1
    }
}

.story-columns h4 {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px
}

.gallery-outer {
    width: 100vw;
    max-height: 100vh;
    height: 100%;
    position: relative;
    z-index: 10
}

    .gallery-outer .gallery {
        width: 100vw;
        max-height: 100vh;
        height: 100%;
        overflow: hidden
    }

        .gallery-outer .gallery .glide__arrows {
            top: 50%;
            -moz-transform: translate(0, -50%);
            -ms-transform: translate(0, -50%);
            -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
            position: absolute;
            left: 0;
            width: 100%
        }

            .gallery-outer .gallery .glide__arrows .glide__arrow {
                position: absolute;
                font-family: 'Haptik Light', sans-serif;
                font-weight: normal;
                font-style: normal;
                font-size: 72px;
                line-height: 60px;
                border: none;
                background: transparent;
                color: #fff;
                outline: none;
                cursor: pointer;
                padding: 0;
                top: 0;
                margin-top: -30px
            }

            .gallery-outer .gallery .glide__arrows .glide__arrow--left {
                left: 36px
            }

            .gallery-outer .gallery .glide__arrows .glide__arrow--right {
                right: 36px
            }

@media only screen and (max-width: 767px) {
    .gallery-outer .gallery .glide__arrows {
        display: none
    }
}

.gallery-outer .gallery .glide__slide {
    width: 100%;
    max-height: 100vh;
    height: 100%
}

    .gallery-outer .gallery .glide__slide img {
        object-fit: cover;
        width: 100%;
        height: 100vh
    }

@media only screen and (max-width: 767px) {
    .gallery-outer .gallery .glide__slide img {
        height: auto
    }
}

.gallery-outer .gallery-caption {
    position: relative;
    color: #1e1e1e;
    z-index: 20;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    padding: 12px 3% 0 3%
}

@media only screen and (max-width: 767px) {
    .gallery-outer .gallery-caption {
        font-size: 18px;
        line-height: 24px
    }
}

@media only screen and (max-width: 767px) {
    .gallery-outer .gallery-caption {
        bottom: 0px;
        left: 0px;
        padding: 5%
    }
}

.footer-trigger, .footer-trigger--end {
    width: 100%;
    height: 1px;
    display: block;
    z-index: 100;
    position: absolute;
    left: 0
}

@media only screen and (max-width: 767px) {
    .footer-trigger, .footer-trigger--end {
        display: none;
        height: 0px
    }
}

.footer-toroa {
    bottom: 0;
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 7;
    right: 0;
    pointer-events: none;
    pointer-events: none;
    -moz-transform: translateZ(0);
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

    .footer-toroa img {
        -moz-transform: scaleY(-1);
        -o-transform: scaleY(-1);
        -webkit-transform: scaleY(-1);
        transform: scaleY(-1);
        width: 100%;
        height: auto;
        object-fit: cover
    }

@media only screen and (max-width: 767px) {
    .footer-toroa {
        height: auto;
        position: static;
        background: #1e1e1e
    }
}

.footer-toroa.active .footer__artwork {
    overflow: visible
}

.footer-toroa .js-triangle {
    z-index: 11
}

.main-footer {
    background-color: #1e1e1e;
    padding: 10vw 0 30vw 0;
    width: 100%;
    display: block;
    position: relative;
    z-index: 7
}

@media only screen and (max-width: 767px) {
    .main-footer {
        padding: 15vw 0
    }
}

.main-footer h4 {
    color: #fff;
    font-family: 'Haptik Light', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 54px;
    line-height: 60px;
    -webkit-font-smoothing: antialiased
}

    .main-footer h4 strong {
        font-family: 'Haptik Regular', sans-serif;
        font-weight: normal;
        font-style: normal
    }

.main-footer .narrow-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between
}

    .main-footer .narrow-wrap .left img {
        max-width: 300px;
        margin-top: 156px
    }

@media only screen and (max-width: 767px) {
    .main-footer .narrow-wrap .left {
        display: none
    }
}

.main-footer .narrow-wrap .right {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

    .main-footer .narrow-wrap .right ul {
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 18px;
        line-height: 24px;
        color: #fff;
        margin: 0;
        padding: 0;
        list-style-type: none;
        padding: 0;
        margin: 0
    }

        .main-footer .narrow-wrap .right ul strong {
            font-family: 'Sohne Mager', sans-serif;
            font-weight: normal;
            font-style: normal
        }

@media only screen and (max-width: 767px) {
    .main-footer .narrow-wrap .right ul {
        font-size: 14px;
        line-height: 20px
    }
}

.main-footer .narrow-wrap .right ul li {
    margin: 0;
    padding: 0
}

.main-footer .narrow-wrap .right ul a {
    color: #fff;
    text-decoration: underline;
    text-decoration-skip: ink;
    text-decoration-color: rgba(255,255,255,0.5)
}

    .main-footer .narrow-wrap .right ul a:hover {
        text-decoration: none
    }

.main-footer .narrow-wrap .right h4 {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    -webkit-font-smoothing: antialiased;
    margin-bottom: 24px
}

    .main-footer .narrow-wrap .right h4 strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .main-footer .narrow-wrap .right h4 {
        font-size: 22px;
        line-height: 26px
    }
}

@media only screen and (max-width: 767px) {
    .main-footer .narrow-wrap .right h4 {
        margin-bottom: 18px
    }
}

.main-footer .narrow-wrap .right .footer-social {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    -webkit-align-items: flex-end;
    -moz-align-items: flex-end;
    align-items: flex-end;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -moz-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

    .main-footer .narrow-wrap .right .footer-social li a {
        cursor: pointer;
        width: 36px;
        height: 36px;
        display: block;
        font-size: 0px
    }

    .main-footer .narrow-wrap .right .footer-social .instagram a {
        background: url("../img/instagram.svg") no-repeat center center;
        width: 30px;
        height: 33px
    }

    .main-footer .narrow-wrap .right .footer-social .facebook a {
        background: url("../img/facebook.svg") no-repeat center center;
        width: 28px;
        height: 31px;
        margin-bottom: 1px
    }

    .main-footer .narrow-wrap .right .footer-social .linkedin a {
        background: url("../img/linkedin.svg") no-repeat center center;
        width: 33px;
        height: 33px
    }

    .main-footer .narrow-wrap .right .footer-social .twitter a {
        background: url("../img/twitter-white.svg") no-repeat center center;
        width: 33px;
        height: 33px
    }

@media only screen and (max-width: 767px) {
    .main-footer .narrow-wrap .right .footer-social {
        display: none
    }
}

.loader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #1e1e1e;
    display: none;
    opacity: 0;
    z-index: 20000
}

.preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #1e1e1e;
    display: block;
    z-index: 25000
}

    .preloader .polygon {
        opacity: 0;
        fill: #000
    }

    .preloader svg {
        object-fit: cover;
        width: 100%;
        height: 100%
    }

@media only screen and (max-width: 767px) {
    .preloader {
        display: none
    }
}

.cursor {
    display: none
}

.glide {
    position: relative;
    width: 100%;
    box-sizing: border-box
}

    .glide * {
        box-sizing: inherit
    }

.glide__track {
    overflow: hidden
}

.glide__slides {
    position: relative;
    width: 100%;
    list-style: none;
    backface-visibility: hidden;
    transform-style: preserve-3d;
    touch-action: pan-Y;
    overflow: hidden;
    padding: 0;
    white-space: nowrap;
    display: flex;
    flex-wrap: nowrap;
    will-change: transform
}

.glide__slides--dragging {
    user-select: none
}

.glide__slide {
    width: 100%;
    height: 100%;
    flex-shrink: 0;
    white-space: normal;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent
}

    .glide__slide a {
        user-select: none;
        -webkit-user-drag: none;
        -moz-user-select: none;
        -ms-user-select: none
    }

.glide__arrows {
    -webkit-touch-callout: none;
    user-select: none
}

.glide__bullets {
    -webkit-touch-callout: none;
    user-select: none
}

.glide--rtl {
    direction: rtl
}

.button {
    background: #1e1e1e;
    color: #fff;
    padding: 24px 0;
    text-align: center;
    margin: 0 auto;
    width: 80%;
    max-width: 360px;
    display: block;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 30px;
    line-height: 24px;
    cursor: pointer;
    border: none;
    outline: none
}

@media only screen and (max-width: 767px) {
    .button {
        font-size: 24px;
        line-height: 30px
    }
}

@media only screen and (max-width: 767px) {
    .button {
        width: 100%;
        max-width: 94%;
        padding: 18px 0
    }
}

.button-small {
    background: #1e1e1e;
    color: #fff;
    padding: 18px 0;
    text-align: center;
    margin: 0 auto;
    width: 80%;
    max-width: 300px;
    display: block;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 18px;
    cursor: pointer;
    margin: 0;
    border: none;
    outline: none
}

@media only screen and (max-width: 767px) {
    .button-small {
        font-size: 18px;
        line-height: 18px
    }
}

@media only screen and (max-width: 767px) {
    .button-small {
        width: 100%;
        max-width: 100%
    }
}

form {
    margin: 0 0 10vw 0;
    border: none
}

    form h2 {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        line-height: 42px;
        -webkit-font-smoothing: antialiased;
        color: #ff6100;
        margin-bottom: 48px
    }

@media only screen and (max-width: 767px) {
    form h2 {
        font-size: 24px;
        line-height: 30px
    }
}

@media only screen and (max-width: 767px) {
    form h2 {
        margin-bottom: 24px
    }
}

form fieldset {
    border: none;
    padding: 0;
    margin-bottom: 24px
}

@media only screen and (max-width: 767px) {
    form fieldset {
        margin-bottom: 12px
    }
}

form .double {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    width: 100%
}

    form .double fieldset {
        width: 47%
    }

        form .double fieldset:first-of-type {
            margin-right: 1rem
        }

@media only screen and (max-width: 767px) {
    form .double fieldset:first-of-type {
        margin-right: 0
    }
}

form .double fieldset:last-of-type {
    margin-left: 1rem
}

@media only screen and (max-width: 767px) {
    form .double fieldset:last-of-type {
        margin-left: 0
    }
}

@media only screen and (max-width: 767px) {
    form .double fieldset {
        width: 100%
    }
}

@media only screen and (max-width: 767px) {
    form .double {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

form label {
    display: none
}

form input[type=email], form input[type=text], form input[type=number], form textarea {
    border-radius: 0;
    -webkit-appearance: none;
    border: 1px solid #e5e5e5;
    width: 100%;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    padding: 12px 18px;
    outline: none
}

    form input[type=email]::-webkit-input-placeholder, form input[type=text]::-webkit-input-placeholder, form input[type=number]::-webkit-input-placeholder, form textarea::-webkit-input-placeholder {
        color: #333;
        opacity: 1
    }

    form input[type=email]:-moz-placeholder, form input[type=text]:-moz-placeholder, form input[type=number]:-moz-placeholder, form textarea:-moz-placeholder {
        color: #333 !important;
        opacity: 1
    }

    form input[type=email]::-moz-placeholder, form input[type=text]::-moz-placeholder, form input[type=number]::-moz-placeholder, form textarea::-moz-placeholder {
        color: #333 !important;
        opacity: 1
    }

    form input[type=email]:-ms-input-placeholder, form input[type=text]:-ms-input-placeholder, form input[type=number]:-ms-input-placeholder, form textarea:-ms-input-placeholder {
        color: #333;
        opacity: 1
    }

    form input[type=email] strong, form input[type=text] strong, form input[type=number] strong, form textarea strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    form input[type=email], form input[type=text], form input[type=number], form textarea {
        font-size: 14px;
        line-height: 20px
    }
}

form input[type=email].error, form input[type=text].error, form input[type=number].error, form textarea.error {
    border-color: #ed2024
}

form input[type=email]:focus, form input[type=text]:focus, form input[type=number]:focus, form textarea:focus {
    border-color: #1e1e1e
}

@media only screen and (max-width: 767px) {
    form input[type=email], form input[type=text], form input[type=number], form textarea {
        padding: 12px 15px 6px 15px
    }
}

form textarea.error {
    border-color: #ed2024
}

form textarea:focus {
    border-color: transparent
}

form .fancy-select {
    position: relative
}

    form .fancy-select select {
        text-shadow: none;
        border: 1px solid #e5e5e5;
        outline: none;
        padding: 1rem 1.5rem 0.75rem 1.5rem;
        color: #1e1e1e;
        height: 48px;
        width: 100%;
        text-align: center;
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 18px;
        line-height: 24px;
        color: #333;
        background: #fff;
        border-radius: 0;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
    }

        form .fancy-select select strong {
            font-family: 'Sohne Mager', sans-serif;
            font-weight: normal;
            font-style: normal
        }

@media only screen and (max-width: 767px) {
    form .fancy-select select {
        font-size: 14px;
        line-height: 20px
    }
}

form .fancy-select select:focus {
    outline: none
}

form .fancy-select select option {
    text-shadow: none;
    font-size: 1.5rem;
    line-height: 1
}

form .fancy-select select.error {
    border-color: #ed2024
}

form .fancy-select select:focus {
    border-color: #1e1e1e
}

form .fancy-select.error select {
    border-color: #ed2024
}

form .fancy-select select::-ms-expand {
    display: none
}

form .fancy-select:after {
    content: "";
    position: absolute;
    top: 24px;
    right: 24px;
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    pointer-events: none;
    border-top: 8px solid #1e1e1e;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent
}

form .form-messages {
    margin: 2.5vw 0;
    display: none
}

    form .form-messages p {
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 18px;
        line-height: 24px
    }

        form .form-messages p strong {
            font-family: 'Sohne Mager', sans-serif;
            font-weight: normal;
            font-style: normal
        }

@media only screen and (max-width: 767px) {
    form .form-messages p {
        font-size: 14px;
        line-height: 20px
    }
}

.main-header {
    padding-top: 36px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10000;
    height: 400px;
    width: 100%
}

    .main-header .main-menu {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        -moz-justify-content: center;
        justify-content: center
    }

        .main-header .main-menu a {
            display: block;
            margin: 0;
            padding: 0;
            list-style-type: none;
            font-family: 'Sohne Mager', sans-serif;
            font-weight: normal;
            font-style: normal;
            font-size: 24px;
            line-height: 1.25;
            color: #1e1e1e;
            -webkit-font-smoothing: antialiased;
            text-decoration: none;
            text-decoration-skip: ink;
            cursor: pointer;
            position: relative
        }

            .main-header .main-menu a li {
                margin: 0;
                padding: 0
            }

            .main-header .main-menu a:hover {
                text-decoration: underline;
                text-decoration-skip: ink;
                text-decoration-color: rgba(0,0,0,0.5)
            }

            .main-header .main-menu a.active {
                color: #ff6100;
                text-decoration: underline;
                text-decoration-skip: ink;
                text-decoration-color: #ff6100
            }

        .main-header .main-menu .logo {
            margin-right: auto;
            text-align: left
        }

        .main-header .main-menu .apply {
            margin-left: auto;
            text-align: right
        }

        .main-header .main-menu .middle {
            height: 100%;
            width: 50%;
            text-align: center;
            margin: 0;
            padding: 0;
            list-style-type: none;
            display: -webkit-box;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            -webkit-justify-content: center;
            -moz-justify-content: center;
            justify-content: center;
            font-family: 'Sohne Mager', sans-serif;
            font-weight: normal;
            font-style: normal;
            font-size: 24px;
            line-height: 1.25;
            color: #1e1e1e;
            -webkit-font-smoothing: antialiased;
            position: relative
        }

            .main-header .main-menu .middle li {
                margin: 0;
                padding: 0
            }

            .main-header .main-menu .middle li {
                margin-right: 24px
            }

            .main-header .main-menu .middle .sub-menu {
                opacity: 0;
                margin: 0;
                padding: 0;
                list-style-type: none;
                text-align: left;
                position: absolute;
                z-index: 1;
                top: 60px;
                padding-bottom: 24px
            }

                .main-header .main-menu .middle .sub-menu li {
                    margin: 0;
                    padding: 0
                }

                .main-header .main-menu .middle .sub-menu a {
                    color: #fff;
                    white-space: nowrap
                }

                    .main-header .main-menu .middle .sub-menu a:after {
                        content: none
                    }

                .main-header .main-menu .middle .sub-menu li {
                    margin-right: 0
                }

                .main-header .main-menu .middle .sub-menu.selected {
                    opacity: 1;
                    display: block
                }

                .main-header .main-menu .middle .sub-menu.study-menu {
                    -moz-columns: 3;
                    -webkit-columns: 3;
                    columns: 3
                }

            .main-header .main-menu .middle li:last-child > .sub-menu {
                -moz-columns: 1;
                -webkit-columns: 1;
                columns: 1
            }

    .main-header .main-header-bg {
        position: absolute;
        top: 0;
        left: 0;
        background: #333;
        width: 100%;
        height: 100%
    }

@media only screen and (max-width: 767px) {
    .main-header {
        display: none
    }
}

.main-header.is-active .main-menu a {
    color: #fff;
    text-decoration-color: #fff
}

#secondary-menu {
    width: 100vw;
    height: 100vh;
    display: block;
    z-index: 10000;
    background: #333;
    position: fixed;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
    display: none
}

    #secondary-menu a {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 1.25;
        color: #1e1e1e;
        -webkit-font-smoothing: antialiased;
        color: #fff
    }

        #secondary-menu a.logo {
            position: absolute;
            top: 36px;
            left: 5%;
            z-index: 100
        }

@media only screen and (max-width: 1440px) {
    #secondary-menu a.logo {
        left: 3%
    }
}

#secondary-menu .section-title {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1.25;
    color: #1e1e1e;
    -webkit-font-smoothing: antialiased;
    position: absolute;
    top: 36px;
    left: 40%;
    color: #fff;
    display: none;
    z-index: 100
}

@media only screen and (max-width: 1440px) {
    #secondary-menu .section-title {
        left: 35%
    }
}

#secondary-menu .middle {
    position: relative;
    z-index: 100
}

    #secondary-menu .middle a {
        width: 100%;
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        line-height: 42px
    }

@media only screen and (max-width: 767px) {
    #secondary-menu .middle a {
        font-size: 24px;
        line-height: 30px
    }
}

#secondary-menu .middle a:hover, #secondary-menu .middle a .selected {
    color: #d0fc30
}

#secondary-menu .middle ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    opacity: 0;
    visibility: hidden
}

    #secondary-menu .middle ul li {
        margin: 0;
        padding: 0
    }

#secondary-menu .middle .spacer {
    margin-top: 36px;
    display: block
}

#secondary-menu .middle-outer {
    position: absolute;
    top: 50%;
    left: 40%;
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    z-index: 100
}

@media only screen and (max-width: 1440px) {
    #secondary-menu .middle-outer {
        left: 35%
    }
}

#secondary-menu .secondary-menu-close {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    z-index: 1;
    cursor: url(../img/close-white.png),pointer
}

#secondary-menu .image-one, #secondary-menu .image-two {
    position: absolute;
    width: 375px
}

@media only screen and (min-width: 2000px) {
    #secondary-menu .image-one, #secondary-menu .image-two {
        width: 450px
    }
}

#secondary-menu .image-one {
    bottom: 0;
    left: 0;
    z-index: 100
}

#secondary-menu .image-two {
    top: 0;
    right: 0;
    z-index: 100
}

body.secondary-menu-open {
    overflow: hidden
}

.inner-page-menu {
    z-index: 2000;
    position: relative
}

    .inner-page-menu .inner {
        width: 100% !important;
        padding: 24px 0;
        background: #fff;
        z-index: 1000;
        border-bottom: 2px solid #ccc
    }

@media only screen and (min-width: 2000px) {
    .inner-page-menu .inner {
        padding: 36px 0
    }
}

.inner-page-menu ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 14px;
    line-height: 14px;
    color: #1e1e1e;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto
}

    .inner-page-menu ul li {
        margin: 0;
        padding: 0
    }

    .inner-page-menu ul li {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 14px;
        line-height: 14px;
        color: #1e1e1e;
        text-transform: uppercase;
        letter-spacing: 1px;
        margin: 0 12px
    }

        .inner-page-menu ul li a {
            color: #1e1e1e
        }

            .inner-page-menu ul li a.active, .inner-page-menu ul li a:hover {
                color: #ff6100
            }

@media only screen and (max-width: 767px) {
    .inner-page-menu {
        display: none
    }
}

.community-template .inner-page-menu .inner {
    background: #feebe6
}

.homepage-template .mobile-hamburger span {
    background-color: #fff
}

    .homepage-template .mobile-hamburger span:before, .homepage-template .mobile-hamburger span:after {
        background-color: #fff
    }

.mobile-open {
    overflow: hidden
}

.mobile-hamburger {
    outline: none;
    cursor: pointer;
    padding: 0rem;
    background: transparent;
    height: 2rem;
    width: 5rem;
    margin: 0;
    text-decoration: none;
    border: none;
    color: transparent;
    font-size: 0px;
    line-height: 0px;
    display: none;
    z-index: 2500;
    position: absolute;
    top: 39px;
    left: 3%
}

    .mobile-hamburger span {
        margin: 0;
        position: absolute;
        top: 0.75rem;
        width: 5rem;
        height: 2px;
        background-color: #1e1e1e;
        display: block;
        outline: none;
        -webkit-transition-duration: 0s;
        -moz-transition-duration: 0s;
        transition-duration: 0s;
        -webkit-transition-delay: .2s;
        -moz-transition-delay: .2s;
        -o-transition-delay: .2s;
        -ms-transition-delay: .2s;
        transition-delay: .2s
    }

        .mobile-hamburger span:before, .mobile-hamburger span:after {
            position: absolute;
            content: '';
            outline: none
        }

        .mobile-hamburger span:before, .mobile-hamburger span:after {
            width: 5rem;
            height: 2px;
            background-color: #1e1e1e;
            display: block
        }

        .mobile-hamburger span:before {
            margin-top: -0.5rem
        }

        .mobile-hamburger span:after {
            margin-top: 0.5rem
        }

        .mobile-hamburger span:before {
            -webkit-transition-property: margin, -webkit-transform;
            -webkit-transition-duration: .2s;
            -webkit-transition-delay: .2s, 0s;
            -moz-transition-property: margin, -moz-transform;
            -moz-transition-duration: .2s;
            -moz-transition-delay: .2s, 0s;
            transition-property: margin, transform;
            transition-duration: .2s;
            transition-delay: .2s, 0s
        }

        .mobile-hamburger span:after {
            -webkit-transition-property: margin, -webkit-transform;
            -webkit-transition-duration: .2s;
            -webkit-transition-delay: .2s, 0s;
            -moz-transition-property: margin, -moz-transform;
            -moz-transition-duration: .2s;
            -moz-transition-delay: .2s, 0s;
            transition-property: margin, transform;
            transition-duration: .2s;
            transition-delay: .2s, 0s
        }

@media only screen and (max-width: 767px) {
    .mobile-hamburger {
        top: 10px;
        display: block
    }
}

.mobile-hamburger-close {
    outline: none;
    cursor: pointer;
    padding: 0rem;
    background: transparent;
    height: 5rem;
    width: 5rem;
    margin: 0;
    text-decoration: none;
    border: none;
    color: transparent;
    font-size: 0px;
    line-height: 0px;
    z-index: 2500;
    position: absolute;
    top: 0;
    right: 3%
}

    .mobile-hamburger-close span {
        margin: 0;
        position: absolute;
        top: 34px;
        width: 5rem;
        height: 2px;
        display: block;
        outline: none;
        background-color: rgba(255,255,255,0)
    }

        .mobile-hamburger-close span:before, .mobile-hamburger-close span:after {
            position: absolute;
            content: '';
            outline: none
        }

        .mobile-hamburger-close span:before, .mobile-hamburger-close span:after {
            width: 5rem;
            height: 2px;
            background-color: #fff;
            display: block
        }

        .mobile-hamburger-close span:before {
            margin-top: 0;
            background-color: #fff;
            -moz-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg)
        }

        .mobile-hamburger-close span:after {
            margin-top: 0;
            background-color: #fff;
            -moz-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
            -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg)
        }

.mobile-menu {
    background: #1e1e1e;
    width: 100vw;
    height: 100vh;
    display: none;
    position: fixed;
    z-index: 2000;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    -moz-align-items: flex-start;
    align-items: flex-start;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start
}

    .mobile-menu ul {
        text-align: left;
        margin: 0;
        padding: 0;
        list-style-type: none;
        width: auto;
        margin-left: 5%;
        margin-top: 5%;
        z-index: 10;
        position: relative;
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        line-height: 36px;
        -webkit-font-smoothing: antialiased
    }

        .mobile-menu ul li {
            margin: 0;
            padding: 0
        }

        .mobile-menu ul a, .mobile-menu ul li {
            color: #fff
        }

        .mobile-menu ul.sub-menu {
            display: none;
            margin: 2rem 0;
            font-family: 'Sohne Leicht', sans-serif;
            font-weight: normal;
            font-style: normal;
            font-size: 22px;
            line-height: 26px;
            -webkit-font-smoothing: antialiased
        }

    .mobile-menu .mobile-close {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 5
    }

#toroa {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 200vh;
    z-index: 5;
    right: 0;
    bottom: 0;
    pointer-events: none;
    display: none
}

    #toroa .image {
        display: block;
        position: absolute;
        top: -20vh;
        left: 0;
        width: 100%;
        height: 120vh;
        background: url("../img/toroa.svg") no-repeat center bottom;
        background-size: cover;
        display: block;
        z-index: 10
    }

@media only screen and (min-width: 2000px) {
    #toroa .image {
        height: 119vh
    }
}

#toroa:before {
    content: "";
    display: block;
    width: 100%;
    height: 25vh;
    z-index: 5;
    background-color: #ed2024;
    position: absolute;
    top: -20vh;
    left: 0
}

@media only screen and (max-width: 767px) {
    #toroa {
        display: none
    }
}

.content-wrap.swap .home-holder {
    position: relative;
    padding-top: 200vh
}

.content-wrap.swap .main-header {
    opacity: 0;
    pointer-events: none
}

@media only screen and (max-width: 767px) {
    .content-wrap {
        min-height: auto
    }
}

.content-wrap.cloak {
    min-height: 400vh
}

.homepage-template .main-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
    -moz-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
    -ms-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
    -o-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1)
}

    .homepage-template .main-header a, .homepage-template .main-header .middle {
        color: #fff
    }

        .homepage-template .main-header a:hover {
            text-decoration: underline;
            text-decoration-skip: ink;
            text-decoration-color: rgba(255,255,255,0.5)
        }

.home-hero {
    position: relative;
    display: block;
    height: 120vh;
    z-index: 5
}

    .home-hero:after {
        width: 100%;
        height: 100%;
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        background-color: rgba(0,0,0,0.2)
    }

    .home-hero .home-hero-wrap {
        height: 100vh;
        position: absolute;
        top: 0;
        left: 0;
        width: 100vw;
        display: block
    }

        .home-hero .home-hero-wrap .heading-outer {
            position: absolute;
            top: 80%;
            left: 0;
            -moz-transform: translate(0%, -50%);
            -ms-transform: translate(0%, -50%);
            -webkit-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
            z-index: 100;
            width: 100vw;
            display: block
        }

        .home-hero .home-hero-wrap h1 {
            font-family: 'Haptik Regular', sans-serif;
            font-weight: normal;
            font-style: normal;
            font-size: 114px;
            line-height: 114px;
            letter-spacing: -2px;
            -webkit-font-smoothing: antialiased;
            color: #fff;
            margin-left: auto;
            margin-right: auto;
            width: 90%;
            max-width: 2000px
        }

@media only screen and (min-width: 2000px) {
    .home-hero .home-hero-wrap h1 {
        font-size: 132px;
        line-height: 132px;
        letter-spacing: -2px
    }
}

@media only screen and (max-width: 767px) {
    .home-hero .home-hero-wrap h1 {
        font-size: 48px;
        line-height: 48px;
        letter-spacing: 0px
    }
}

@media only screen and (max-width: 1440px) {
    .home-hero .home-hero-wrap h1 {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .home-hero .home-hero-wrap h1 {
        width: 94%
    }
}

.home-hero .home-hero-wrap h1 br {
    display: none
}

@media only screen and (max-width: 767px) {
    .home-hero .home-hero-wrap h1 br {
        display: block
    }
}

@media only screen and (max-width: 767px) {
    .home-hero .home-hero-wrap h1 {
        width: 85%
    }
}

@media only screen and (max-width: 767px) {
    .home-hero .home-hero-wrap {
        height: 65vh
    }
}

.home-hero img, .home-hero video {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.home-hero img {
    display: none
}

@media only screen and (max-width: 767px) {
    .home-hero img {
        display: block
    }
}

.home-hero video {
    display: block
}

@media only screen and (max-width: 767px) {
    .home-hero video {
        display: none
    }
}

.home-hero .caption {
    width: 100%;
    text-align: right;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    display: block;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 14px;
    line-height: 16px;
    margin-top: 6px
}

@media only screen and (max-width: 1440px) {
    .home-hero .caption {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .home-hero .caption {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .home-hero .caption {
        font-size: 12px;
        line-height: 14px
    }
}

@media only screen and (max-width: 767px) {
    .home-hero .caption {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .home-hero {
        height: 65vh
    }
}

.homepage-introduction {
    padding: 20vw 0
}

    .homepage-introduction h2 {
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        line-height: 42px;
        -webkit-font-smoothing: antialiased;
        text-indent: 1.5em;
        width: 100%;
        max-width: 750px
    }

        .homepage-introduction h2 strong {
            font-family: 'Sohne Mager', sans-serif;
            font-weight: normal;
            font-style: normal
        }

@media only screen and (max-width: 767px) {
    .homepage-introduction h2 {
        font-size: 22px;
        line-height: 26px
    }
}

.homepage-introduction h2:first-of-type {
    text-indent: 0
}

@media only screen and (min-width: 2000px) {
    .homepage-introduction h2 {
        max-width: 750px
    }
}

@media only screen and (max-width: 1440px) {
    .homepage-introduction h2 {
        max-width: 775px
    }
}

@media only screen and (max-width: 767px) {
    .homepage-introduction h2 {
        text-indent: 1em
    }
}

@media only screen and (max-width: 767px) {
    .homepage-introduction {
        padding: 5vw 0
    }
}

.homepage-grid {
    position: relative;
    z-index: 10;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between
}

    .homepage-grid .col1, .homepage-grid .col2, .homepage-grid .col3 {
        width: 31%
    }

@media only screen and (max-width: 767px) {
    .homepage-grid .col1 {
        width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .homepage-grid .col3 {
        width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .homepage-grid .col2 {
        width: 100%
    }
}

.homepage-grid .subject {
    color: #1e1e1e;
    margin-bottom: 10vw;
    display: block
}

    .homepage-grid .subject p {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 30px;
        width: 100%;
        text-align: center;
        margin-top: 12px;
        color: #1e1e1e;
        -webkit-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
        -moz-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
        -ms-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
        -o-transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1);
        transition: opacity 450ms cubic-bezier(0.19, 1, 0.22, 1)
    }

@media only screen and (max-width: 767px) {
    .homepage-grid .subject p {
        font-size: 15px;
        line-height: 21px
    }
}

@media only screen and (max-width: 767px) {
    .homepage-grid .subject p {
        margin-top: 6px
    }
}

.homepage-grid .subject img {
    -moz-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transition: transform 450ms cubic-bezier(0.19, 1, 0.22, 1);
    -moz-transition: transform 450ms cubic-bezier(0.19, 1, 0.22, 1);
    -ms-transition: transform 450ms cubic-bezier(0.19, 1, 0.22, 1);
    -o-transition: transform 450ms cubic-bezier(0.19, 1, 0.22, 1);
    transition: transform 450ms cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (max-width: 767px) {
    .homepage-grid .subject {
        margin-bottom: 15vw
    }
}

.homepage-grid .subject:hover img {
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -webkit-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1)
}

.homepage-grid .subject:hover p {
    opacity: 0
}

@media only screen and (max-width: 767px) {
    .homepage-grid {
        margin-top: 10vh
    }
}

.homepage-facilities {
    position: relative;
    z-index: 10
}

@media only screen and (max-width: 767px) {
    .homepage-facilities .gallery-outer {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .homepage-facilities .teaser-columns {
        width: 100%;
        margin-top: 5vw;
        padding: 0
    }
}

@media only screen and (max-width: 767px) {
    .homepage-facilities .teaser-columns .left {
        width: 90%;
        margin: 10vw auto 0 auto;
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -moz-order: 2;
        -ms-flex-order: 2;
        -ms-flexbox-order: 2;
        order: 2
    }
}

@media only screen and (max-width: 767px) {
    .homepage-facilities .teaser-columns .right figcaption {
        width: 90%;
        margin: 0 auto 0 auto;
        text-align: right
    }
}

@media only screen and (max-width: 767px) {
    .homepage-facilities .teaser-columns .right {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -moz-order: 1;
        -ms-flex-order: 1;
        -ms-flexbox-order: 1;
        order: 1
    }
}

.teaser-columns {
    margin-left: auto;
    margin-right: auto;
    width: 70%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
    padding: 15vw 0 0 0
}

@media only screen and (max-width: 1440px) {
    .teaser-columns {
        width: 80%
    }
}

@media only screen and (min-width: 2000px) {
    .teaser-columns {
        width: 60%
    }
}

@media only screen and (max-width: 767px) {
    .teaser-columns {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .teaser-columns {
        padding: 20vw 0 0 0
    }
}

.teaser-columns .left, .teaser-columns .right {
    width: 49%
}

@media only screen and (max-width: 767px) {
    .teaser-columns .left, .teaser-columns .right {
        width: 100%
    }
}

.teaser-columns .left {
    max-width: 460px
}

.teaser-columns p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    color: #1e1e1e
}

@media only screen and (max-width: 767px) {
    .teaser-columns p {
        font-size: 18px;
        line-height: 24px
    }
}

.teaser-columns p.book {
    margin-top: 2rem;
    text-indent: 0;
    text-decoration: underline;
    text-decoration-skip: ink
}

.teaser-columns a {
    color: #1e1e1e
}

.teaser-columns figcaption p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 14px;
    line-height: 16px;
    margin-top: 6px;
    display: block
}

@media only screen and (max-width: 767px) {
    .teaser-columns figcaption p {
        font-size: 12px;
        line-height: 14px
    }
}

.teaser-columns.teaser-columns-alt .left {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -moz-order: 2;
    -ms-flex-order: 2;
    -ms-flexbox-order: 2;
    order: 2
}

.teaser-columns.teaser-columns-alt .right {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -moz-order: 1;
    -ms-flex-order: 1;
    -ms-flexbox-order: 1;
    order: 1
}

.homepage-maori-pasifika {
    position: relative;
    z-index: 10;
    margin-bottom: 10vw
}

@media only screen and (max-width: 767px) {
    .homepage-maori-pasifika .teaser-columns {
        width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .homepage-maori-pasifika .teaser-columns .left {
        width: 90%;
        margin: 10vw auto 0 auto
    }
}

@media only screen and (max-width: 767px) {
    .homepage-maori-pasifika .teaser-columns .right figcaption {
        width: 90%;
        margin: 0 auto 0 auto;
        text-align: right
    }
}

.homepage-statistics {
    position: relative;
    z-index: 8;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    padding: 0;
    border: 2px solid #ccc
}

    .homepage-statistics .stat {
        width: 50%;
        padding: 10vw 0;
        position: relative;
        overflow: hidden;
        display: block
    }

        .homepage-statistics .stat p {
            text-indent: 0;
            text-align: center
        }

            .homepage-statistics .stat p sup {
                font-family: 'Haptik Regular', sans-serif;
                font-weight: normal;
                font-style: normal;
                font-size: 60px;
                top: -1.25em
            }

@media only screen and (max-width: 767px) {
    .homepage-statistics .stat p sup {
        font-size: 36px;
        line-height: 36px;
        top: -1.25em
    }
}

.homepage-statistics .stat .number {
    font-family: 'Haptik Light', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 168px;
    line-height: 144px;
    letter-spacing: -0.03em
}

@media only screen and (max-width: 767px) {
    .homepage-statistics .stat .number {
        font-size: 96px;
        line-height: 72px;
        letter-spacing: -0.03em
    }
}

.homepage-statistics .stat .cite {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    margin-top: 24px
}

    .homepage-statistics .stat .cite strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .homepage-statistics .stat .cite {
        font-size: 14px;
        line-height: 20px
    }
}

@media only screen and (max-width: 767px) {
    .homepage-statistics .stat .cite {
        margin-top: 24px
    }
}

.homepage-statistics .stat:before {
    content: '';
    box-shadow: inset 0 0 0 2px #dddddd;
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    background: rgba(255,255,255,0);
    transition: 333ms all cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (max-width: 767px) {
    .homepage-statistics .stat:before {
        content: none
    }
}

@media only screen and (max-width: 767px) {
    .homepage-statistics .stat {
        width: 100%;
        border-bottom: 2px solid #ddd;
        padding: 10vw 0
    }
}

@media only screen and (max-width: 767px) {
    .homepage-statistics {
        border: none;
        border-top: 2px solid #ddd
    }
}

.number-trigger {
    z-index: 10;
    position: absolute;
    top: 0;
    left: 0;
    -moz-transform: translate(0, -50vh);
    -ms-transform: translate(0, -50vh);
    -webkit-transform: translate(0, -50vh);
    transform: translate(0, -50vh)
}

.study-template .study-hero {
    position: relative;
    display: block;
    z-index: 5;
    padding: 15vw 0 2.5vw 0
}

    .study-template .study-hero .wrap {
        display: block
    }

        .study-template .study-hero .wrap .heading-outer {
            z-index: 100;
            width: 100%;
            display: block
        }

@media only screen and (max-width: 1440px) {
    .study-template .study-hero .wrap .heading-outer {
        left: 3%
    }
}

.study-template .study-hero .wrap h1 {
    font-family: 'Haptik Regular', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 114px;
    line-height: 114px;
    letter-spacing: -2px;
    -webkit-font-smoothing: antialiased;
    color: #ff6100
}

@media only screen and (min-width: 2000px) {
    .study-template .study-hero .wrap h1 {
        font-size: 132px;
        line-height: 132px;
        letter-spacing: -2px
    }
}

@media only screen and (max-width: 767px) {
    .study-template .study-hero .wrap h1 {
        font-size: 48px;
        line-height: 48px;
        letter-spacing: 0px
    }
}

@media only screen and (max-width: 767px) {
    .study-template .study-hero {
        padding: 30vw 0 15vw 0
    }
}

@media only screen and (max-width: 767px) {
    .study-template .big-page-heading {
        display: none;
        margin: 20vw 0 0 0;
        padding: 0
    }
}

@media only screen and (max-width: 767px) {
    .study-template .photo-grid {
        display: none
    }
}

.columns-intro {
    position: relative;
    display: block;
    z-index: 5;
    padding: 0 0 6vw 0
}

@media only screen and (max-width: 767px) {
    .columns-intro {
        padding: 0
    }
}

.columns-intro .left, .columns-intro .right {
    width: 47%
}

    .columns-intro .left figure figcaption, .columns-intro .right figure figcaption {
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 14px;
        line-height: 16px;
        margin-top: 6px
    }

@media only screen and (max-width: 767px) {
    .columns-intro .left figure figcaption, .columns-intro .right figure figcaption {
        font-size: 12px;
        line-height: 14px
    }
}

@media only screen and (max-width: 767px) {
    .columns-intro .left, .columns-intro .right {
        width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .columns-intro .right {
        display: none
    }
}

.columns-intro .columns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    -webkit-align-items: flex-end;
    -moz-align-items: flex-end;
    align-items: flex-end
}

.columns-intro h2 {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    -webkit-font-smoothing: antialiased;
    color: #1e1e1e;
    max-width: 550px;
    margin-bottom: 5vw
}

    .columns-intro h2 strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .columns-intro h2 {
        font-size: 22px;
        line-height: 26px
    }
}

@media only screen and (min-width: 2000px) {
    .columns-intro h2 {
        max-width: 825px
    }
}

@media only screen and (max-width: 767px) {
    .columns-intro h2 {
        width: 94vw;
        margin-bottom: 10vw
    }
}

.columns-intro h2 a {
    color: #1e1e1e;
    text-decoration: underline;
    text-decoration-skip: ink
}

    .columns-intro h2 a:hover {
        text-decoration: none
    }

.photo-grid {
    position: relative;
    display: block;
    z-index: 8;
    padding: 0 0 10vw 0
}

    .photo-grid .wrap {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        justify-content: space-between;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

@media only screen and (max-width: 767px) {
    .photo-grid .wrap {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.photo-grid .intro {
    margin-bottom: 10vw;
    margin-top: 0vw;
    width: 100%
}

    .photo-grid .intro h3 {
        max-width: 750px
    }

.photo-grid .left {
    width: 53%;
    display: block
}

@media only screen and (max-width: 767px) {
    .photo-grid .left {
        width: 100%
    }
}

.photo-grid .right {
    width: 47%;
    display: block
}

@media only screen and (max-width: 767px) {
    .photo-grid .right {
        width: 100%
    }
}

.photo-grid figure {
    margin-bottom: 25vw
}

    .photo-grid figure figcaption {
        position: relative;
        display: block;
        width: 100%
    }

        .photo-grid figure figcaption p {
            font-family: 'Sohne Leicht', sans-serif;
            font-weight: normal;
            font-style: normal;
            font-size: 18px;
            line-height: 24px;
            text-align: center;
            margin: 12px auto 0 auto;
            position: absolute;
            top: 0;
            left: 50%;
            -moz-transform: translate(-50%, 0);
            -ms-transform: translate(-50%, 0);
            -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
            text-indent: 0
        }

            .photo-grid figure figcaption p strong {
                font-family: 'Sohne Mager', sans-serif;
                font-weight: normal;
                font-style: normal
            }

@media only screen and (max-width: 767px) {
    .photo-grid figure figcaption p {
        font-size: 14px;
        line-height: 20px
    }
}

@media only screen and (max-width: 767px) {
    .photo-grid figure figcaption p {
        position: static;
        -moz-transform: translate(0%, 0);
        -ms-transform: translate(0%, 0);
        -webkit-transform: translate(0%, 0);
        transform: translate(0%, 0);
        left: 0
    }
}

.photo-grid .left figure:nth-of-type(1) {
    padding-right: 5%;
    max-width: 85%
}

    .photo-grid .left figure:nth-of-type(1) figcaption p {
        max-width: 475px
    }

@media only screen and (max-width: 1440px) {
    .photo-grid .left figure:nth-of-type(1) figcaption p {
        max-width: 100%;
        width: 90%
    }
}

@media only screen and (max-width: 767px) {
    .photo-grid .left figure:nth-of-type(1) figcaption p {
        max-width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .photo-grid .left figure:nth-of-type(1) {
        max-width: 100%;
        padding-right: 0%;
        margin-bottom: 20vw
    }
}

.photo-grid .left figure:nth-of-type(2) {
    margin-bottom: 0
}

    .photo-grid .left figure:nth-of-type(2) figcaption p {
        max-width: 475px
    }

@media only screen and (max-width: 1440px) {
    .photo-grid .left figure:nth-of-type(2) figcaption p {
        max-width: 100%;
        width: 80%
    }
}

@media only screen and (max-width: 767px) {
    .photo-grid .left figure:nth-of-type(2) figcaption p {
        max-width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .photo-grid .left figure:nth-of-type(2) {
        margin-bottom: 20vw
    }
}

.photo-grid .left figure:nth-of-type(3) {
    margin-bottom: 0;
    -moz-transform: translate3d(100%, 0, 0);
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    padding-right: 30%
}

    .photo-grid .left figure:nth-of-type(3) figcaption p {
        max-width: 475px
    }

@media only screen and (max-width: 1440px) {
    .photo-grid .left figure:nth-of-type(3) figcaption p {
        max-width: 100%;
        width: 80%
    }
}

@media only screen and (max-width: 767px) {
    .photo-grid .left figure:nth-of-type(3) figcaption p {
        max-width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .photo-grid .left figure:nth-of-type(3) {
        -moz-transform: translate3d(0, 0, 0);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        padding-right: 0%;
        margin-bottom: 20vw
    }
}

.photo-grid .right figure:nth-of-type(1) {
    margin-bottom: 0
}

    .photo-grid .right figure:nth-of-type(1) figcaption p {
        max-width: 600px
    }

@media only screen and (max-width: 1440px) {
    .photo-grid .right figure:nth-of-type(1) figcaption p {
        max-width: 100%;
        width: 80%
    }
}

@media only screen and (max-width: 767px) {
    .photo-grid .right figure:nth-of-type(1) figcaption p {
        max-width: 80%
    }
}

@media only screen and (max-width: 767px) {
    .photo-grid .right figure:nth-of-type(1) {
        margin-bottom: 10vw
    }
}

.photo-grid .right figure:nth-of-type(2) {
    margin-bottom: 0
}

@media only screen and (max-width: 767px) {
    .photo-grid .right figure:nth-of-type(2) {
        margin-bottom: 20vw
    }
}

.big-page-heading {
    position: relative;
    display: block;
    z-index: 5;
    padding: 10vw 0 5vw 0
}

    .big-page-heading h2 {
        font-family: 'Haptik Regular', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 84px;
        line-height: 84px;
        color: #ff6100
    }

@media only screen and (max-width: 767px) {
    .big-page-heading h2 {
        font-size: 42px;
        line-height: 42px;
        letter-spacing: 0px
    }
}

.course {
    padding: 7.5vw 0 0 0
}

    .course:after {
        content: "";
        width: 100%;
        height: 1px;
        display: block;
        background: #ff6100;
        z-index: 100;
        position: relative;
        margin-top: 7.5vw
    }

@media only screen and (max-width: 767px) {
    .course {
        padding: 20vw 0 0 0
    }
}

.course.last:after {
    content: none
}

.course .course-intro {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

    .course .course-intro .left, .course .course-intro .right {
        width: 47%
    }

@media only screen and (max-width: 767px) {
    .course .course-intro .left, .course .course-intro .right {
        width: 100%
    }
}

.course .course-intro h2 {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 54px;
    line-height: 54px;
    color: #ff6100
}

@media only screen and (max-width: 767px) {
    .course .course-intro h2 {
        font-size: 36px;
        line-height: 36px
    }
}

@media only screen and (max-width: 767px) {
    .course .course-intro h2 {
        margin-bottom: 5vw
    }
}

.course .course-intro h3 {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    color: #ff6100;
    margin-top: 24px
}

@media only screen and (max-width: 767px) {
    .course .course-intro h3 {
        font-size: 18px;
        line-height: 24px
    }
}

.course .course-intro p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    max-width: 500px
}

@media only screen and (max-width: 767px) {
    .course .course-intro p {
        font-size: 18px;
        line-height: 24px
    }
}

@media only screen and (min-width: 2000px) {
    .course .course-intro p {
        max-width: 680px
    }
}

.course .course-intro p:first-of-type {
    margin-bottom: 24px
}

.course .course-intro dl {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    margin: 48px 0 0 0
}

@media only screen and (max-width: 767px) {
    .course .course-intro dl {
        font-size: 18px;
        line-height: 24px
    }
}

.course .course-intro dl:after {
    content: "";
    display: table;
    clear: both
}

.course .course-intro dl dd {
    float: left;
    margin: 0;
    width: 70%;
    max-width: 400px
}

.course .course-intro dl dt {
    float: left;
    width: 30%;
    padding: 0 0 0.25rem 0;
    clear: left
}

@media only screen and (max-width: 767px) {
    .course .course-intro dl {
        margin: 24px 0 0 0
    }
}

@media only screen and (max-width: 767px) {
    .course .course-intro {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-bottom: 10vw
    }
}

.course .course-images {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 5vw
}

    .course .course-images .left, .course .course-images .right {
        width: 47%
    }

@media only screen and (max-width: 767px) {
    .course .course-images .left, .course .course-images .right {
        width: 100%
    }
}

.course .course-images .video-module p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 14px;
    line-height: 16px;
    margin-top: 6px;
    text-indent: 0
}

@media only screen and (max-width: 767px) {
    .course .course-images .video-module p {
        font-size: 12px;
        line-height: 14px
    }
}

.course .course-images .video-module .video-inner {
    position: relative
}

.course .course-images figure, .course .course-images .video-module {
    margin-bottom: 5vw
}

    .course .course-images figure figcaption, .course .course-images .video-module figcaption {
        position: relative;
        display: block;
        width: 100%
    }

        .course .course-images figure figcaption p, .course .course-images .video-module figcaption p {
            font-family: 'Sohne Leicht', sans-serif;
            font-weight: normal;
            font-style: normal;
            font-size: 14px;
            line-height: 16px;
            margin-top: 6px;
            text-indent: 0
        }

@media only screen and (max-width: 767px) {
    .course .course-images figure figcaption p, .course .course-images .video-module figcaption p {
        font-size: 12px;
        line-height: 14px
    }
}

@media only screen and (max-width: 767px) {
    .course .course-images figure, .course .course-images .video-module {
        margin-bottom: 10vw
    }
}

.course .course-images .left figure figcaption p {
    text-align: right
}

@media only screen and (max-width: 767px) {
    .course .course-images .left figure figcaption p {
        text-align: left
    }
}

@media only screen and (max-width: 767px) {
    .course .course-images .left figure figure {
        margin-bottom: 5vw !important
    }
}

@media only screen and (max-width: 767px) {
    .course .course-images .left {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -moz-order: 2;
        -ms-flex-order: 2;
        -ms-flexbox-order: 2;
        order: 2
    }
}

@media only screen and (max-width: 767px) {
    .course .course-images .right {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -moz-order: 1;
        -ms-flex-order: 1;
        -ms-flexbox-order: 1;
        order: 1
    }
}

@media only screen and (max-width: 767px) {
    .course .course-images .right figure:nth-of-type(2) {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .course .course-images {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.course .course-alumni h3 {
    color: #ff6100;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    -webkit-font-smoothing: antialiased;
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal
}

    .course .course-alumni h3 strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .course .course-alumni h3 {
        font-size: 22px;
        line-height: 26px
    }
}

@media only screen and (max-width: 767px) {
    .course .course-alumni h3 {
        margin-bottom: 2.5vw
    }
}

.course .course-alumni .meta {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    margin-bottom: 24px;
    list-style-type: none
}

    .course .course-alumni .meta strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .course .course-alumni .meta {
        font-size: 14px;
        line-height: 20px
    }
}

@media only screen and (max-width: 767px) {
    .course .course-alumni .meta {
        margin-bottom: 12px
    }
}

.course .course-alumni p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    color: #1e1e1e;
    max-width: 525px
}

    .course .course-alumni p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .course .course-alumni p {
        font-size: 14px;
        line-height: 20px
    }
}

.course .course-alumni p.link {
    text-indent: 0;
    margin-top: 24px
}

@media only screen and (max-width: 767px) {
    .course .course-alumni p.link {
        margin-top: 12px
    }
}

.course .course-alumni p:nth-of-type(1) {
    text-indent: 0
}

.course .course-alumni ol li, .course .course-alumni ul li {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px
}

    .course .course-alumni ol li strong, .course .course-alumni ul li strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .course .course-alumni ol li, .course .course-alumni ul li {
        font-size: 14px;
        line-height: 20px
    }
}

.course .course-alumni dl {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    color: #1e1e1e;
    max-width: 525px
}

    .course .course-alumni dl strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .course .course-alumni dl {
        font-size: 14px;
        line-height: 20px
    }
}

.course .course-alumni a {
    color: #ff6100
}

.course .course-staff {
    margin-top: 5vw
}

    .course .course-staff .course-staff-inner {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        -webkit-justify-content: flex-start;
        -moz-justify-content: flex-start;
        justify-content: flex-start;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding-left: 53%
    }

    .course .course-staff img {
        max-width: 120px
    }

    .course .course-staff figure {
        margin-right: 24px
    }

    .course .course-staff h4 {
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 30px;
        color: #ff6100;
        margin-bottom: 6px
    }

@media only screen and (max-width: 767px) {
    .course .course-staff h4 {
        font-size: 18px;
        line-height: 24px
    }
}

.course .course-staff p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    max-width: 300px
}

    .course .course-staff p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .course .course-staff p {
        font-size: 14px;
        line-height: 20px
    }
}

@media only screen and (max-width: 767px) {
    .course .course-staff {
        display: none
    }
}

.course .course-apply {
    margin-top: 5vw
}

    .course .course-apply .apply-inner {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        -webkit-justify-content: flex-start;
        -moz-justify-content: flex-start;
        justify-content: flex-start;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding-left: 53%
    }

@media only screen and (max-width: 767px) {
    .course .course-apply .apply-inner {
        padding-left: 0
    }
}

@media only screen and (max-width: 767px) {
    .course .course-apply {
        margin-bottom: 7.5vw
    }
}

.course .course-apply p {
    width: 100%;
    color: #ff6100;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    -webkit-font-smoothing: antialiased;
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal
}

    .course .course-apply p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .course .course-apply p {
        font-size: 22px;
        line-height: 26px
    }
}

.course .course-apply p a {
    text-decoration: underline;
    text-decoration-skip: ink;
    color: #ff6100
}

    .course .course-apply p a:hover {
        text-decoration: none
    }

.degree-slider {
    position: relative;
    display: block;
    z-index: 8;
    margin: 0 0 10vw 0;
    border-top: 1px solid #333;
    padding-top: 7.5vw
}

@media only screen and (max-width: 767px) {
    .degree-slider {
        border: none;
        padding-top: 10vw
    }
}

.degree-slider .slide-content {
    overflow: visible;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    height: 100%
}

@media only screen and (max-width: 767px) {
    .degree-slider .slide-content {
        height: auto
    }
}

.degree-slider .glide {
    background-color: #e5e5dc
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide {
        padding: 10vw 0
    }
}

.degree-slider .glide img {
    object-fit: cover;
    width: 100%;
    height: 100%
}

.degree-slider .glide__track {
    overflow: visible
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__track {
        overflow: hidden;
        display: block
    }
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slides {
        overflow: hidden;
        display: block
    }
}

.degree-slider .glide__slide {
    height: auto
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide {
        float: left
    }
}

.degree-slider .glide__slide .left {
    width: 47%;
    display: block;
    padding: 5vw 3vw 5vw 3vw
}

    .degree-slider .glide__slide .left h3, .degree-slider .glide__slide .left p, .degree-slider .glide__slide .left h4 {
        max-width: 525px
    }

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide .left {
        width: 100%
    }
}

.degree-slider .glide__slide .left .button-small {
    margin: 36px 0 0 0;
    max-width: 225px
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide .left .button-small {
        max-width: 100%
    }
}

.degree-slider .glide__slide .right {
    width: 47%;
    height: 100%;
    background: red
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide .right {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide .right {
        height: auto
    }
}

.degree-slider .glide__slide h3 {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    -webkit-font-smoothing: antialiased;
    color: #1e1e1e
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide h3 {
        font-size: 24px;
        line-height: 30px
    }
}

.degree-slider .glide__slide h4 {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    color: #1e1e1e;
    margin-bottom: 24px
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide h4 {
        font-size: 18px;
        line-height: 24px
    }
}

.degree-slider .glide__slide h5 {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    color: #1e1e1e;
    margin-bottom: 12px;
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide h5 {
        font-size: 18px;
        line-height: 24px
    }
}

.degree-slider .glide__slide p, .degree-slider .glide__slide ul {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    margin: 0 0 24px 0
}

    .degree-slider .glide__slide p strong, .degree-slider .glide__slide ul strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide p, .degree-slider .glide__slide ul {
        font-size: 14px;
        line-height: 20px
    }
}

.degree-slider .glide__slide ul {
    list-style-type: disc;
    padding: 0 0 0 24px
}

    .degree-slider .glide__slide ul li {
        max-width: 470px
    }

.degree-slider .glide__slide dl {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    margin: auto 0 0 0;
    max-width: 470px
}

    .degree-slider .glide__slide dl strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide dl {
        font-size: 14px;
        line-height: 20px
    }
}

.degree-slider .glide__slide dl:after {
    content: "";
    display: table;
    clear: both
}

.degree-slider .glide__slide dl dd {
    float: left;
    margin: 0;
    width: 70%
}

.degree-slider .glide__slide dl dt {
    float: left;
    width: 30%;
    padding: 0 0 0.25rem 0;
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    clear: left
}

@media only screen and (max-width: 767px) {
    .degree-slider .glide__slide dl {
        margin-top: 5vw
    }
}

.degree-slider .glide__arrows {
    position: absolute;
    left: 69%;
    top: -7.5vw;
    width: 100%;
    max-width: 225px;
    height: 7.5vw
}

    .degree-slider .glide__arrows .glide__arrow {
        position: absolute;
        top: 50%;
        font-family: 'Haptik Light', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 72px;
        line-height: 60px;
        border: none;
        background: transparent;
        color: #ff6100;
        outline: none;
        cursor: pointer;
        padding: 0;
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%)
    }

    .degree-slider .glide__arrows .glide__arrow--left {
        left: 0
    }

    .degree-slider .glide__arrows .glide__arrow--right {
        right: 0
    }

@media only screen and (max-width: 767px) {
    .degree-slider .glide__arrows {
        display: none
    }
}

.course-leader {
    position: relative;
    display: block;
    z-index: 8;
    margin: 10vw 0 10vw 0
}

@media only screen and (max-width: 767px) {
    .course-leader {
        margin: 20vw 0 20vw 0
    }
}

.course-leader h2 {
    font-family: 'Haptik Regular', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 84px;
    line-height: 84px;
    color: #ff6100;
    padding: 0 0 5vw 0
}

@media only screen and (max-width: 767px) {
    .course-leader h2 {
        font-size: 42px;
        line-height: 42px;
        letter-spacing: 0px
    }
}

.course-leader .columns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

    .course-leader .columns .left {
        width: 47%
    }

        .course-leader .columns .left figcaption p {
            font-family: 'Sohne Leicht', sans-serif;
            font-weight: normal;
            font-style: normal;
            font-size: 14px;
            line-height: 16px;
            margin-top: 6px
        }

@media only screen and (max-width: 767px) {
    .course-leader .columns .left figcaption p {
        font-size: 12px;
        line-height: 14px
    }
}

@media only screen and (max-width: 767px) {
    .course-leader .columns .left {
        width: 100%;
        margin-bottom: 10vw
    }
}

.course-leader .columns .right {
    width: 47%
}

    .course-leader .columns .right h3 {
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        line-height: 42px;
        -webkit-font-smoothing: antialiased;
        max-width: 550px
    }

        .course-leader .columns .right h3 strong {
            font-family: 'Sohne Mager', sans-serif;
            font-weight: normal;
            font-style: normal
        }

@media only screen and (max-width: 767px) {
    .course-leader .columns .right h3 {
        font-size: 22px;
        line-height: 26px
    }
}

.course-leader .columns .right p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    max-width: 550px
}

    .course-leader .columns .right p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .course-leader .columns .right p {
        font-size: 14px;
        line-height: 20px
    }
}

@media only screen and (max-width: 767px) {
    .course-leader .columns .right {
        width: 100%
    }
}

.page-hero {
    position: relative;
    display: block;
    z-index: 5;
    padding: 15vw 0 2.5vw 0
}

    .page-hero .wrap {
        display: block
    }

        .page-hero .wrap .heading-outer {
            z-index: 100;
            width: 100%;
            display: block
        }

@media only screen and (max-width: 1440px) {
    .page-hero .wrap .heading-outer {
        left: 3%
    }
}

.page-hero .wrap h1 {
    font-family: 'Haptik Regular', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 114px;
    line-height: 114px;
    letter-spacing: -2px;
    -webkit-font-smoothing: antialiased;
    color: #ff6100
}

@media only screen and (min-width: 2000px) {
    .page-hero .wrap h1 {
        font-size: 132px;
        line-height: 132px;
        letter-spacing: -2px
    }
}

@media only screen and (max-width: 767px) {
    .page-hero .wrap h1 {
        font-size: 48px;
        line-height: 48px;
        letter-spacing: 0px
    }
}

@media only screen and (max-width: 767px) {
    .page-hero .wrap h1 br {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .page-hero {
        padding: 30vw 0 10vw 0
    }
}

.teaser-tile {
    max-width: 67%
}

    .teaser-tile a {
        background: #ED2024;
        display: inline-block;
        color: #fff;
        padding: 24px
    }

        .teaser-tile a:hover {
            background: #1e1e1e
        }

            .teaser-tile a:hover h3, .teaser-tile a:hover p {
                color: #fff
            }

    .teaser-tile h3 {
        font-family: 'Sohne Leicht', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 30px;
        color: #fff;
        margin: 0 0 60px 0
    }

@media only screen and (max-width: 767px) {
    .teaser-tile h3 {
        font-size: 18px;
        line-height: 24px
    }
}

.teaser-tile p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    margin: 0;
    text-indent: 0
}

@media only screen and (max-width: 767px) {
    .teaser-tile p {
        font-size: 18px;
        line-height: 24px
    }
}

@media only screen and (min-width: 2000px) {
    .teaser-tile {
        max-width: 50%
    }
}

.application {
    margin: 10vw 0 0 0
}

    .application .application-content {
        max-width: 550px
    }

        .application .application-content h4 {
            font-family: 'Sohne Mager', sans-serif;
            font-weight: normal;
            font-style: normal;
            font-size: 24px;
            line-height: 30px;
            margin-bottom: 6px
        }

@media only screen and (max-width: 767px) {
    .application .application-content h4 {
        font-size: 15px;
        line-height: 21px
    }
}

.application .application-content p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    text-indent: 2em
}

    .application .application-content p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .application .application-content p {
        font-size: 14px;
        line-height: 20px
    }
}

.application .application-content p:first-of-type {
    text-indent: 0
}

.application .application-content ul {
    margin: 24px 0;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px
}

    .application .application-content ul strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .application .application-content ul {
        font-size: 14px;
        line-height: 20px
    }
}

.application .step {
    margin-bottom: 24px
}

.application h3 {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    -webkit-font-smoothing: antialiased;
    color: #ff6100
}

@media only screen and (max-width: 767px) {
    .application h3 {
        font-size: 24px;
        line-height: 30px
    }
}

.application .columns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

    .application .columns .left, .application .columns .right {
        width: 50%
    }

.application .wrap {
    margin-bottom: 5vw
}

    .application .wrap.table {
        width: 100%;
        margin: 0 0 5vw 0
    }

.application .wide {
    width: 100%
}

    .application .wide .application-content {
        max-width: 100%
    }

.apply-form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

    .apply-form .left {
        width: 47%
    }

    .apply-form .right {
        width: 47%
    }

    .apply-form .table {
        width: 100%;
        margin: 0 0 10vw 0
    }

.hscroll {
    overflow-x: auto
}

.apply-my-study {
    position: relative;
    display: block;
    z-index: 5;
    padding: 5vw 0;
    background: #f0eee6
}

    .apply-my-study h3 {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        line-height: 42px;
        -webkit-font-smoothing: antialiased;
        color: #ff6100;
        margin-bottom: 48px
    }

@media only screen and (max-width: 767px) {
    .apply-my-study h3 {
        font-size: 24px;
        line-height: 30px
    }
}

.apply-my-study .columns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

    .apply-my-study .columns .left, .apply-my-study .columns .right {
        width: 50%
    }

        .apply-my-study .columns .right .sentance {
            margin-bottom: 6px;
            width: 100%
        }

            .apply-my-study .columns .right .sentance p {
                font-family: 'Sohne Leicht', sans-serif;
                font-weight: normal;
                font-style: normal;
                font-size: 24px;
                line-height: 30px;
                display: inline-block;
                color: #666
            }

@media only screen and (max-width: 767px) {
    .apply-my-study .columns .right .sentance p {
        font-size: 18px;
        line-height: 24px
    }
}

.apply-my-study .columns .right .sentance .fancy-select {
    vertical-align: center;
    position: relative;
    display: inline-block;
    margin-left: 3px;
    width: auto
}

    .apply-my-study .columns .right .sentance .fancy-select select {
        border: none;
        text-shadow: none;
        outline: none;
        padding: 0;
        color: #1e1e1e;
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 30px;
        width: 100%;
        color: #1e1e1e;
        background: transparent;
        border-radius: 0;
        width: 100%;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
    }

@media only screen and (max-width: 767px) {
    .apply-my-study .columns .right .sentance .fancy-select select {
        font-size: 15px;
        line-height: 21px
    }
}

.apply-my-study .columns .right .sentance .fancy-select select:focus {
    outline: none
}

.apply-my-study .columns .right .sentance .fancy-select select option {
    text-shadow: none
}

.apply-my-study .columns .right .sentance .fancy-select select.error {
    border-color: #ed2024
}

.apply-my-study .columns .right .sentance .fancy-select select:focus {
    border-color: #1e1e1e
}

.apply-my-study .columns .right .sentance .fancy-select select::-ms-expand {
    display: none
}

.map-wrapper {
    width: 100%;
    height: 100vh;
    position: relative;
    z-index: 10
}

    .map-wrapper #map-render {
        width: 100%;
        height: 100%;
        position: relative
    }

@media only screen and (max-width: 767px) {
    .map-wrapper #map-render {
        height: 80vh
    }
}

@media only screen and (max-width: 767px) {
    .map-wrapper {
        height: 80vh
    }
}

.map-hero {
    margin-bottom: 10vw
}

.gmnoprint:not(.gm-bundled-control) {
    display: none !important
}

.gm-bundled-control .gmnoprint {
    display: block
}

.gm-style > div:nth-child(10) {
    display: none !important
}

a[href^="http://maps.google.com/maps"] {
    display: none !important
}

a[href^="https://maps.google.com/maps"] {
    display: none !important
}

.contact-template .main-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

    .contact-template .main-header a, .contact-template .main-header .middle {
        color: #fff
    }

        .contact-template .main-header a:hover {
            text-decoration: underline;
            text-decoration-skip: ink;
            text-decoration-color: rgba(255,255,255,0.5)
        }

.contact-template .contact-hero {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    height: 120vh;
    z-index: 5
}

    .contact-template .contact-hero:after {
        width: 100%;
        height: 100%;
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        background-color: rgba(0,0,0,0.2)
    }

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero:after {
        display: none
    }
}

.contact-template .contact-hero .wrap {
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    display: block
}

    .contact-template .contact-hero .wrap .heading-outer {
        position: absolute;
        top: 50%;
        left: 0;
        -moz-transform: translate(0%, -50%);
        -ms-transform: translate(0%, -50%);
        -webkit-transform: translate(0%, -50%);
        transform: translate(0%, -50%);
        z-index: 100;
        width: 100vw;
        display: block
    }

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .wrap .heading-outer {
        position: static;
        -moz-transform: translate(0%, 0%);
        -ms-transform: translate(0%, 0%);
        -webkit-transform: translate(0%, 0%);
        transform: translate(0%, 0%)
    }
}

.contact-template .contact-hero .wrap h1 {
    font-family: 'Haptik Regular', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 114px;
    line-height: 114px;
    letter-spacing: -2px;
    -webkit-font-smoothing: antialiased;
    color: #ff6100;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    max-width: 2000px;
    margin-bottom: 36px;
    pointer-events: none
}

@media only screen and (min-width: 2000px) {
    .contact-template .contact-hero .wrap h1 {
        font-size: 132px;
        line-height: 132px;
        letter-spacing: -2px
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .wrap h1 {
        font-size: 48px;
        line-height: 48px;
        letter-spacing: 0px
    }
}

@media only screen and (max-width: 1440px) {
    .contact-template .contact-hero .wrap h1 {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .wrap h1 {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .wrap h1 {
        margin-bottom: 24px
    }
}

.contact-template .contact-hero .wrap p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    -webkit-font-smoothing: antialiased;
    color: #fff;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    max-width: 2000px
}

    .contact-template .contact-hero .wrap p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .wrap p {
        font-size: 22px;
        line-height: 26px
    }
}

@media only screen and (max-width: 1440px) {
    .contact-template .contact-hero .wrap p {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .wrap p {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .wrap p {
        color: #1e1e1e
    }
}

.contact-template .contact-hero .wrap a {
    color: #fff
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .wrap a {
        color: #1e1e1e
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .wrap {
        position: static;
        height: auto
    }
}

.contact-template .contact-hero img, .contact-template .contact-hero video {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.contact-template .contact-hero .caption {
    width: 100%;
    text-align: right;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    display: block;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 14px;
    line-height: 16px;
    margin-top: 6px
}

@media only screen and (max-width: 1440px) {
    .contact-template .contact-hero .caption {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .caption {
        width: 94%
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero .caption {
        font-size: 12px;
        line-height: 14px
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .contact-hero {
        position: static;
        height: auto
    }
}

@media only screen and (max-width: 767px) {
    .contact-template #map-render {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .map-wrapper {
        height: auto;
        position: static
    }
}

@media only screen and (max-width: 767px) {
    .contact-template .map-hero {
        padding: 30vw 0 15vw 0;
        margin-bottom: 0
    }
}

.content-columns {
    position: relative;
    z-index: 10
}

@media only screen and (max-width: 767px) {
    .content-columns {
        margin-top: 10vw
    }
}

.content-columns .columns-intro {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

    .content-columns .columns-intro .left, .content-columns .columns-intro .right {
        width: 48%
    }

@media only screen and (max-width: 767px) {
    .content-columns .columns-intro .left, .content-columns .columns-intro .right {
        display: block;
        width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .content-columns .columns-intro .right {
        margin-bottom: 20vw
    }
}

@media only screen and (max-width: 767px) {
    .content-columns .columns-intro {
        -webkit-box-direction: normal;
        -webkit-box-orient: horizontal;
        -webkit-flex-direction: columns;
        -moz-flex-direction: columns;
        -ms-flex-direction: columns;
        flex-direction: columns
    }
}

.content-columns .columns-intro h2 {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 54px;
    line-height: 54px;
    color: #ff6100
}

@media only screen and (max-width: 767px) {
    .content-columns .columns-intro h2 {
        font-size: 36px;
        line-height: 36px
    }
}

@media only screen and (max-width: 767px) {
    .content-columns .columns-intro h2 br {
        display: none
    }
}

.content-columns .columns-intro p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    max-width: 500px
}

@media only screen and (max-width: 767px) {
    .content-columns .columns-intro p {
        font-size: 18px;
        line-height: 24px
    }
}

@media only screen and (min-width: 2000px) {
    .content-columns .columns-intro p {
        max-width: 650px
    }
}

.content-columns .columns-intro dl {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    margin: 48px 0 0 0
}

@media only screen and (max-width: 767px) {
    .content-columns .columns-intro dl {
        font-size: 18px;
        line-height: 24px
    }
}

.content-columns .columns-intro dl dd {
    float: left;
    margin: 0;
    width: 70%;
    max-width: 400px
}

.content-columns .columns-intro dl dt {
    float: left;
    width: 30%;
    padding: 0 0 0.25rem 0;
    clear: left
}

.content-columns .columns-intro a {
    color: #ff6100
}

.landing-page-template .page-hero {
    margin-bottom: 5vw
}

.landing-page-template .story-columns {
    margin-bottom: 10vw
}

.landing-page-template .video-module {
    margin-bottom: 10vw
}

.landing-page-template .gallery-outer {
    margin-bottom: 10vw
}

.featured-stories {
    position: relative;
    display: block;
    z-index: 5;
    padding: 0 0 15vw 0
}

    .featured-stories .left, .featured-stories .right {
        width: 48%
    }

        .featured-stories .left figure figcaption, .featured-stories .right figure figcaption {
            font-family: 'Sohne Leicht', sans-serif;
            font-weight: normal;
            font-style: normal;
            font-size: 14px;
            line-height: 16px;
            margin-top: 6px
        }

@media only screen and (max-width: 767px) {
    .featured-stories .left figure figcaption, .featured-stories .right figure figcaption {
        font-size: 12px;
        line-height: 14px
    }
}

@media only screen and (max-width: 767px) {
    .featured-stories .left, .featured-stories .right {
        width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .featured-stories .left {
        margin-bottom: 20vw
    }
}

.featured-stories .columns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    -webkit-align-items: flex-end;
    -moz-align-items: flex-end;
    align-items: flex-end
}

@media only screen and (max-width: 767px) {
    .featured-stories .columns {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.featured-stories h2 {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 36px;
    line-height: 42px;
    -webkit-font-smoothing: antialiased;
    color: #1e1e1e;
    max-width: 550px;
    margin-bottom: 5vw
}

    .featured-stories h2 strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .featured-stories h2 {
        font-size: 22px;
        line-height: 26px
    }
}

@media only screen and (min-width: 2000px) {
    .featured-stories h2 {
        max-width: 825px
    }
}

.featured-stories .story-excerpt {
    margin-top: 5vw
}

    .featured-stories .story-excerpt .category {
        text-indent: none;
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 14px;
        line-height: 14px;
        color: #1e1e1e;
        text-transform: uppercase;
        letter-spacing: 1px;
        margin-bottom: 18px
    }

@media only screen and (max-width: 767px) {
    .featured-stories .story-excerpt .category {
        font-size: 12px;
        line-height: 12px
    }
}

@media only screen and (max-width: 767px) {
    .featured-stories .story-excerpt .category {
        margin-bottom: 6px
    }
}

.featured-stories .story-excerpt h3 {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 30px;
    line-height: 36px;
    color: #ff6100;
    margin-bottom: 18px
}

@media only screen and (max-width: 767px) {
    .featured-stories .story-excerpt h3 {
        font-size: 28px;
        line-height: 34px
    }
}

@media only screen and (max-width: 767px) {
    .featured-stories .story-excerpt h3 {
        margin-bottom: 6px
    }
}

.featured-stories .story-excerpt p {
    color: #1e1e1e;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 30px;
    text-indent: 0;
    max-width: 550px
}

@media only screen and (max-width: 767px) {
    .featured-stories .story-excerpt p {
        font-size: 18px;
        line-height: 24px
    }
}

@media only screen and (max-width: 767px) {
    .featured-stories {
        padding: 0 0 20vw 0
    }
}

.community-grid {
    position: relative;
    z-index: 10;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    margin-top: 10vw
}

    .community-grid .col1, .community-grid .col2, .community-grid .col3 {
        width: 31%
    }

@media only screen and (max-width: 767px) {
    .community-grid .col1, .community-grid .col2, .community-grid .col3 {
        width: 100%
    }
}

.community-grid .subject {
    color: #1e1e1e;
    margin-bottom: 10vw;
    display: block
}

    .community-grid .subject p {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 30px;
        width: 100%;
        text-align: left;
        margin-top: 12px;
        color: #1e1e1e
    }

@media only screen and (max-width: 767px) {
    .community-grid .subject p {
        font-size: 15px;
        line-height: 21px
    }
}

@media only screen and (max-width: 767px) {
    .community-grid .subject p {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .community-grid .subject {
        margin-bottom: 20vw
    }
}

.community-grid .story-excerpt {
    margin-top: 2.5vw;
    text-align: left
}

    .community-grid .story-excerpt .category {
        text-indent: none;
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 14px;
        line-height: 14px;
        color: #1e1e1e;
        text-transform: uppercase;
        letter-spacing: 1px;
        margin-bottom: 18px
    }

@media only screen and (max-width: 767px) {
    .community-grid .story-excerpt .category {
        font-size: 12px;
        line-height: 12px
    }
}

@media only screen and (max-width: 767px) {
    .community-grid .story-excerpt .category {
        margin-bottom: 6px;
        display: block
    }
}

.community-grid .story-excerpt h3 {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 30px;
    line-height: 36px;
    color: #ff6100;
    margin-bottom: 18px
}

@media only screen and (max-width: 767px) {
    .community-grid .story-excerpt h3 {
        font-size: 28px;
        line-height: 34px
    }
}

@media only screen and (max-width: 767px) {
    .community-grid .story-excerpt h3 {
        margin-bottom: 6px;
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        line-height: 42px;
        -webkit-font-smoothing: antialiased
    }
}

@media only screen and (max-width: 767px) and (max-width: 767px) {
    .community-grid .story-excerpt h3 {
        font-size: 24px;
        line-height: 30px
    }
}

.community-grid .story-excerpt p {
    color: #1e1e1e;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    text-indent: 0;
    max-width: 450px
}

    .community-grid .story-excerpt p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .community-grid .story-excerpt p {
        font-size: 14px;
        line-height: 20px
    }
}

@media only screen and (max-width: 767px) {
    .community-grid {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 0;
        background: #feebe6;
        width: 100%;
        padding: 3%
    }
}

@media only screen and (max-width: 767px) {
    .community-template .story-columns {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 0
    }
}

@media only screen and (max-width: 767px) {
    .community-template .story-columns .left {
        margin-bottom: 20vw
    }
}

@media only screen and (max-width: 767px) {
    .community-template .story-columns .right {
        margin-bottom: 10vw
    }
}

@media only screen and (max-width: 767px) {
    .community-template-single .story-columns {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 0
    }
}

@media only screen and (max-width: 767px) {
    .community-template-single .story-columns .left {
        margin-bottom: 10vw
    }
}

@media only screen and (max-width: 767px) {
    .community-template-single .story-columns .right {
        margin-bottom: 10vw
    }
}

.more-stories-grid {
    position: relative;
    z-index: 10;
    margin-top: 0;
    background: #feebe6;
    padding: 5vw 0
}

    .more-stories-grid .wrap {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        justify-content: space-between
    }

@media only screen and (max-width: 767px) {
    .more-stories-grid .wrap {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0
    }
}

.more-stories-grid a {
    width: 31%
}

@media only screen and (max-width: 767px) {
    .more-stories-grid a {
        width: 100%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        justify-content: space-between;
        margin-bottom: 10vw
    }
}

@media only screen and (max-width: 767px) {
    .more-stories-grid a img {
        width: 31%;
        -webkit-align-self: flex-start;
        -moz-align-self: flex-start;
        -ms-flex-item-align: start;
        align-self: flex-start
    }
}

.more-stories-grid a:last-of-type {
    margin-bottom: 0
}

.more-stories-grid .story-excerpt {
    margin-top: 2.5vw;
    text-align: left
}

    .more-stories-grid .story-excerpt .category {
        text-indent: none;
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 14px;
        line-height: 14px;
        color: #1e1e1e;
        text-transform: uppercase;
        letter-spacing: 1px;
        margin-bottom: 18px
    }

@media only screen and (max-width: 767px) {
    .more-stories-grid .story-excerpt .category {
        font-size: 12px;
        line-height: 12px
    }
}

@media only screen and (max-width: 767px) {
    .more-stories-grid .story-excerpt .category {
        margin-bottom: 6px
    }
}

.more-stories-grid .story-excerpt h3 {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 30px;
    line-height: 36px;
    color: #ff6100;
    margin-bottom: 18px
}

@media only screen and (max-width: 767px) {
    .more-stories-grid .story-excerpt h3 {
        font-size: 28px;
        line-height: 34px
    }
}

@media only screen and (max-width: 767px) {
    .more-stories-grid .story-excerpt h3 {
        margin-bottom: 6px;
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        line-height: 42px;
        -webkit-font-smoothing: antialiased
    }
}

@media only screen and (max-width: 767px) and (max-width: 767px) {
    .more-stories-grid .story-excerpt h3 {
        font-size: 24px;
        line-height: 30px
    }
}

.more-stories-grid .story-excerpt p {
    color: #1e1e1e;
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    text-indent: 0;
    max-width: 450px
}

    .more-stories-grid .story-excerpt p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .more-stories-grid .story-excerpt p {
        font-size: 14px;
        line-height: 20px
    }
}

@media only screen and (max-width: 767px) {
    .more-stories-grid .story-excerpt {
        width: 66%;
        margin-top: 0
    }
}

@media only screen and (max-width: 767px) {
    .more-stories-grid {
        padding: 4% 0 5vw 0
    }
}

.medium-page-heading {
    position: relative;
    display: block;
    z-index: 5;
    padding: 10vw 0 24px 0;
    text-align: center
}

    .medium-page-heading h2 {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 54px;
        line-height: 54px;
        color: #ff6100
    }

@media only screen and (max-width: 767px) {
    .medium-page-heading h2 {
        font-size: 36px;
        line-height: 36px
    }
}

@media only screen and (max-width: 767px) {
    .medium-page-heading h2 {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        line-height: 42px;
        -webkit-font-smoothing: antialiased
    }
}

@media only screen and (max-width: 767px) and (max-width: 767px) {
    .medium-page-heading h2 {
        font-size: 24px;
        line-height: 30px
    }
}

.about-landing-template .video-module {
    margin-top: 5vw
}

@media only screen and (max-width: 767px) {
    .about-landing-template .video-module {
        margin-top: 0
    }
}

.about-landing-template .story-columns {
    margin: 15vw auto
}

@media only screen and (max-width: 767px) {
    .about-landing-template .story-columns .left {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .about-landing-template .story-columns .right {
        width: 100%
    }
}

.about-campus-template .gallery-outer {
    margin-top: 5vw
}

.about-campus-template .story-columns {
    margin: 10vw auto
}

@media only screen and (max-width: 767px) {
    .about-campus-template .story-columns .left {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .about-campus-template .story-columns .right {
        width: 100%
    }
}

.about-tour-template form {
    margin-top: 10vw
}

@media only screen and (max-width: 767px) {
    .about-tour-template form {
        margin: 20vw 0
    }
}

@media only screen and (max-width: 767px) {
    .about-tour-template .story-columns {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 0
    }
}

@media only screen and (max-width: 767px) {
    .about-tour-template .story-columns .left {
        width: 100%;
        margin-bottom: 10vw
    }
}

@media only screen and (max-width: 767px) {
    .about-tour-template .story-columns .right {
        width: 100%
    }
}

.hall-of-fame-template .story-columns {
    margin: 5vw auto 10vw auto
}

@media only screen and (max-width: 767px) {
    .hall-of-fame-template .story-columns {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 0
    }
}

@media only screen and (max-width: 767px) {
    .hall-of-fame-template .story-columns .left {
        margin-bottom: 20vw;
        width: 100%;
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .hall-of-fame-template .story-columns .right {
        margin-bottom: 10vw;
        width: 100%
    }
}

.student-life-template .video-module {
    margin-top: 5vw
}

@media only screen and (max-width: 767px) {
    .student-life-template .video-module {
        margin-top: 0vw
    }
}

.student-life-template .photo-grid {
    margin-top: 10vw
}

.values {
    position: relative;
    z-index: 10;
    padding: 10vw 0 5vw 0;
    background: #feebe6
}

    .values h2 {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal;
        font-size: 54px;
        line-height: 54px;
        color: #ff6100;
        margin-bottom: 2.5vw
    }

@media only screen and (max-width: 767px) {
    .values h2 {
        font-size: 36px;
        line-height: 36px
    }
}

.values p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    color: #1e1e1e;
    text-indent: 2em;
    max-width: 325px
}

    .values p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    .values p {
        font-size: 14px;
        line-height: 20px
    }
}

.values .values-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    -moz-justify-content: flex-start;
    justify-content: flex-start
}

@media only screen and (max-width: 767px) {
    .values .values-wrap {
        margin-top: 7.5vw
    }
}

.values .values-wrap .value {
    width: 33.3333%;
    margin-bottom: 5vw
}

@media only screen and (max-width: 767px) {
    .values .values-wrap .value {
        width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .values .values-wrap .value h3 {
        margin-bottom: 12px
    }

        .values .values-wrap .value h3 br {
            display: none
        }
}

#map-render .gm-style .gm-style-iw-c {
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    max-width: 600px
}

#map-render .gm-ui-hover-effect {
    display: none !important
}

#map-render .gm-style .gm-style-iw-t::after {
    content: none
}

#map-render h2 {
    font-family: 'Sohne Mager', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px
}

#map-render p {
    font-family: 'Sohne Leicht', sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    line-height: 24px
}

    #map-render p strong {
        font-family: 'Sohne Mager', sans-serif;
        font-weight: normal;
        font-style: normal
    }

@media only screen and (max-width: 767px) {
    #map-render p {
        font-size: 14px;
        line-height: 20px
    }
}

#map-render .map-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between
}

    #map-render .map-wrap .left {
        width: 35%
    }

    #map-render .map-wrap .right {
        width: 65%;
        padding: 18px 0 0 18px
    }

#map-render .gm-style-iw {
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 133px !important;
    max-width: 400px !important;
    display: block !important
}
