/*
Theme Name: Penshurst C.E. Primary School
Description: Penshurst C.E. Primary School Theme
Version: 1.0
Author: James Elliott
*/

*, *::before, *::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html,
button,
input,
select,
textarea {
    color: rgb(28, 36, 95);
}

a, a:hover, a:active, a:focus, input:focus, select:focus, textarea:focus, button:focus {
    outline: 0;
}

::-moz-selection {
    background: rgb(45,73,155);
    color: rgb(255, 255, 255);
    text-shadow: none;
}

::selection {
    background: rgb(45,73,155);
    color: rgb(255, 255, 255);
    text-shadow: none;
}

hr {
    width: 100%;
    display: block;
    height: 1px;
    border: 0;
    margin: 1em 0;
    padding: 0;
    float: left;
}

img {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.oldbrowser {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgb(255, 255, 255);
    margin: 0;
    text-align: center;
}

.oldbrowser p {
    width: 600px;
    margin: 0 auto;
    font: normal 20px/28px Arial;
    color: rgb(0, 0, 0);
    text-align: center;
    padding: 200px 0;
}

a {
    color: #fed966;
    transition: all 0.25s linear 0s;
    -webkit-transition: all 0.25s linear 0s;
    -o-transition: all 0.25s linear 0s;
    -ms-transition: all 0.25s linear 0s;
    -moz-transition: all 0.25s linear 0s;
    text-decoration: none;
    cursor: pointer;
}

h1, h2, h3, h4, h5, h6 {
    float: left;
    clear: both;
}

/* ==========================================================================
   HTML & Body
   ========================================================================== */
html {
    width: 100%;
    margin: 0;
    background: rgb(255, 255, 255);
}

body {
    width: 100%;
    margin: 0;
    padding: 0;
    float: left;
    background: rgb(255,255,255);
    font: 400 1.6em/1.4em Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(0, 0, 0);
    position: relative;
}

.wrapper {
    width: 100%;
    float: left;
    background: rgb(3, 42, 155);
    overflow: hidden;
}

.wrapper.blog {
    padding-top: 120px;
}

.contactwrapper {
    border-top: none;
    padding: 0 0 45px;
}

#googleMap {
    width: 100%;
    height: 520px;
    max-height: 520px;
    float: left;
    border-bottom: 34px solid rgb(247, 179, 47);
    margin: 0 0 45px;
}

.mapcontent h1 {
    font: 600 24px/32px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(247, 179, 47);
    margin: 0 0 15px;
    padding: 0;
}

.mapcontent p {
    width: 100%;
    font: 400 17px/24px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(43, 86, 152);
    float: left;
    text-align: left;
    margin: 0;
}

body.desktop #mobilenav {
    display: none;
}

body.desktop .navigation_wrapper {
    display: block;
}

/* ==========================================================================
   Header
   ========================================================================== */
header, .headersection {
    width: 100%;
    float: left;
    position: relative;
    z-index: 10;
}

.headersection {
    background: rgb(6,53,187);
}

.inner {
    margin: 0 auto;
}

.inner a.logo {
    display: block;
    color: rgb(255, 255, 255);
}

/* ==========================================================================
   Navigation
   ========================================================================== */
header .navigation_wrapper {
    width: 100%;
    height: 50px;
    content: "";
    display: table;
    clear: both;
    position: relative;
    z-index: 99999999;
    background: rgb(3, 42, 155);
    border-top: 1px solid rgb(19, 27, 76);
    border-bottom: 1px solid rgb(19, 27, 76);
}

header .navigation_wrapper .inner {
    height: 50px;
}

[role="navigation"] {
    float: left;
    position: relative;
    z-index: 3;
}

[role="navigation"] ul {
    width: 100%;
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
}

[role="navigation"] ul ul {
    border-bottom: 0 none;
}

[role="navigation"] ul li {
    font: 400 16px/48px Montserrat, Arial, Helvetica, sans-serif;
    float: left;
}

[role="navigation"] ul li a {
    display: block;
    padding: 0 20px;
}

[role="navigation"] ul li:hover a,
body.desktop [role="navigation"] ul li.current-menu-item > a, [role="navigation"] ul li.child.current-menu-item > a, [role="navigation"] ul li.current-menu-parent > a, [role="navigation"] ul li.current-page-item > a,
[role="navigation"] ul li.current_page_parent > a, [role="navigation"] ul li.current-page-ancestor > a, [role="navigation"] ul li.current-menu-ancestor > a {
    color: rgb(0,0,0);
    background-color: #fed966;
}

ul.menu li a {
    color: rgb(255,255,255);
    text-decoration: none;
    transition: all 0.25s linear 0s;
    -webkit-transition: all 0.25s linear 0s;
    -o-transition: all 0.25s linear 0s;
    -ms-transition: all 0.25s linear 0s;
    -moz-transition: all 0.25s linear 0s;
    position: relative;
}

#menu-secondary-menu.menu li a {
    color: rgb(0, 0, 0);
}

[role="navigation"] ul li .sub-menu {
    position: absolute;
    z-index: 10;
    display: none;
}

[role="navigation"] ul > li > .sub-menu {
    left: auto;
    margin: 0;
}

[role="navigation"] ul li .sub-menu li {
    border: 0 none;
    display: block;
    font: 400 16px/28px Montserrat, Arial, Helvetica, sans-serif;
}

[role="navigation"] ul li .sub-menu li a {
    height: auto;
    color: rgb(0,0,0);
    margin: 0;
}

nav a#pull {
    display: none;
}

body.desktop [role="navigation"] {
    width: 100%;
}

body.desktop [role="navigation"] ul > li > .sub-menu {
    width: 350px;
    margin: 0;
    padding: 0;
    top: 48px;
    background: rgb(254, 217, 102);
    -webkit-box-shadow: 5px 4px 19px -19px #000000;
    box-shadow: 5px 4px 19px -19px #000000;
    border-radius: 0 0 20px 20px;
}

body.desktop [role="navigation"] ul > li#menu-item-535 > .sub-menu {
    width: 410px;
}

body.desktop [role="navigation"] ul li .sub-menu li {
    width: 100%;
    height: auto;
    background-color: transparent;
}

body.desktop [role="navigation"] ul li .sub-menu li a {
    padding: 5px 20px;
    border: none;
    background-color: transparent;
}

body.desktop [role="navigation"] ul .sub-menu li.current-menu-item > a,
body.desktop [role="navigation"] ul li .sub-menu li a:hover {
    background-color: rgb(3, 42, 155) !important;
    color: rgb(255 255 255);
}

body.desktop [role="navigation"] ul li .sub-menu li:last-of-type a:hover {
    border-radius: 0 0 18px 18px;
}

body.desktop [role="navigation"] ul > li li > .sub-menu {
    left: 100%;
    top: auto;
    margin-top: -40px;
}

.contact {
    width: 100%;
    height: 39px;
    float: left;
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.contactdetails {
    background: rgb(247, 179, 47);
}

.contact i {
    color: rgb(43, 86, 152);
}

.contact i.fa-envelope-o {
    margin-left: 15px;
}

.contact .inner {
    font: bold 15px/39px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(255, 255, 255);
}

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

.slider-background {
    min-height: 80vh;
    font-size: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.slider-background a {
    width: 100%;
    display: block;
}

.owl-prev, .owl-next {
    width: 44px;
    height: 44px;
    position: absolute;
    top: 47%;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.owl-prev {
    background: transparent url('images/prev.svg') no-repeat 0 0;
    left: 33px;
}

.owl-next {
    background: transparent url('images/next.svg') no-repeat 0 0;
    right: 33px;
}

.owl-dots {
    display: inline-block;
    zoom: 1;
    cursor: pointer;
    width: 100%;
    height: 60px;
    text-align: center;
    position: absolute;
    bottom: 0;
}

.teacher_side_bar .owl-dots {
    bottom: -37px;
    right: -143px;
}

.owl-dots .owl-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: 0 10px 0 0;
    background: transparent;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    background: none;
    border: 2px solid rgb(255, 255, 255);
}

.owl-dot.active, .owl-dot:hover {
    background: #DCDCDC;
}

.caption {
    background: rgba(255,255,255,0.7);
}

.caption h2 {
    width: 100%;
    color: rgb(6,53,187);
    margin: 0;
    float: left;
    font-style: italic !important;
}

body.home #fullwidthslider .caption {
    bottom: unset;
    width: 100%;
    transform: unset;
    background-color: transparent;
}

body.home #fullwidthslider .caption h2 {
    font-style: unset !important;
    transform: unset;
    color: #fff;
    margin-bottom: 15px;
}

body.home #fullwidthslider .caption h1 {
    color: #fed966;
}

body.home #fullwidthslider .caption p, body.home #fullwidthslider .caption ul li {
    width: 100%;
    color: #fff;
}

body.home #fullwidthslider .slider-background a {
    width: auto;
    clear: unset;
    display: inline-block;
}

.tour_dates {
    width: 100%;
    border: 2px solid #fed966;
    padding: 10px 20px 0;
}

body.home .tour_dates, body.home #fullwidthslider .caption p, body.home #fullwidthslider .caption ul li, body.home #fullwidthslider .caption ul {
    clear: both;
    float: left;
}

body.home #fullwidthslider .caption .tour_dates p, body.home #fullwidthslider .caption ul li {
    max-width: 100%;
}

@media screen and (min-width:2000px) and (max-width:3000px) {

    .tour_dates, body.home #fullwidthslider .caption p {
        max-width: 26%;
    }

    body.home #fullwidthslider .caption {
        top: 30px;
    }

}

@media screen and (min-width:1700px) and (max-width:1999px) {

    .tour_dates, body.home #fullwidthslider .caption p {
        max-width: 40%;
    }

    body.home #fullwidthslider .caption {
        top: 20px;
    }

}

@media screen and (min-width: 1700px) {

    body.home #fullwidthslider .caption h2 {
        font: 700 16px / 28px Montserrat, Arial, Helvetica, sans-serif;
    }

    body.home #fullwidthslider .caption h1 {
        font: 300 42px / 53px "Roboto", sans-serif;
    }

    body.home #fullwidthslider .caption p, body.home #fullwidthslider .caption ul li {
        font: 400 16px / 28px Montserrat, Arial, Helvetica, sans-serif;
    }

}

@media screen and (max-width: 1699px) {

    body.home #fullwidthslider .caption p, body.home #fullwidthslider .caption ul li, body.home #fullwidthslider .caption h2 {
        font: 400 13px / 24px Montserrat, Arial, Helvetica, sans-serif;
    }

    body.home #fullwidthslider .caption h1 {
        font: 300 32px / 42px "Roboto", sans-serif;
    }

}

@media screen and (min-width:1400px) and (max-width:1699px) {

    .tour_dates, body.home #fullwidthslider .caption p {
        max-width: 50%;
    }

    body.home #fullwidthslider .caption h1 {
        margin: 0;
    }

    body.home #fullwidthslider .caption {
        padding-left: 0;
        top: 0;
    }

}

@media screen and (min-width:1024px) and (max-width:1399px) {


    .tour_dates, body.home #fullwidthslider .caption p {
        max-width: 60%;
    }

    body.home #fullwidthslider .caption {
        padding-left: 0;
        top: 0;
    }

}


/* ==========================================================================
   Typography
   ========================================================================== */
[role="main"] .main_content h1, [role="main"] .main_content h2, [role="main"] .main_content h3, [role="main"] ul, [role="main"] ol {
    width: 100%;
    float: left;
    clear: none;
}

[role="main"] h1 {
    width: 100%;
    font: 300 22px/38px "Roboto", sans-serif;
    color: #fed966;
    margin: 0 0 35px;
}

[role="main"] h2, #wrapper.staffwrapper [role="main"] h2 {
    font: 300 22px / 38px "Roboto", sans-serif;
    color: #fed966;
    margin: 0 0 12px;
}

#wrapper.staffwrapper [role="main"] h2.download_title {
    width: fit-content;
    min-width: 360px;
    height: 50px;
    background: rgb(254, 217, 102);
    font: 400 16px / 50px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(0, 0, 0);
    margin: 10px 0 15px;
    padding: 0 30px;
    float: left;
    border-radius: 0 20px 20px 0;
}


.secondcolumn h3 {
    width: 100%;
    font: 400 15px/24px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(0,0,0);
    margin: 0 0 30px;
}

.secondcolumn h3:first-of-type {
    font-weight: 500;
}

[role="main"] p {
    width: 100%;
    font: 300 16px/28px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(255, 255, 255);
    float: left;
    text-align: left;
    margin: 0 0 20px;
}

body.home [role="main"] h1 {
    font: 300 28px / 38px "Roboto", sans-serif;
    letter-spacing: 1px;
}

[role="main"] p + h2 {
    margin: 10px 0 12px;
}

[role="main"] ul li, [role="main"] ol li {
    width: 100%;
    font: 300 16px/25px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(255, 255, 255);
    margin: 0 0 5px;
}

ul.alltestimonials li, [role="main"] ul li li {
    float: left;
    margin: 0 0 30px;
    padding: 0 0 0 18px;
    background: rgba(0, 0, 0, 0) url('https://penshurstschool.org.uk/wp-content/uploads/bullet.svg') no-repeat left 9px;
    background-size: 6px 6px;
    list-style: none;
}

[role="main"] ul.alltestimonials li p:last-of-type {
    margin: 0 0 5px;
}

[role="main"] ul li li {
    margin: 0 0 5px;
}

[role="main"] h2.listheader + ul {
    margin: 0 0 30px;
}

[role="main"] .side_bar h1 {
    margin: 0 0 10px;
}

/* ==========================================================================
   Calendar
   ========================================================================== */
.mec-wrap {
    max-width: 900px;
}

body.home .mec-wrap.mec-sm959 .mec-calendar:not(.mec-event-calendar-classic):not(.mec-calendar-weekly) .mec-calendar-side, [role="main"] .mec-calendar .mec-calendar-header h2 {
    width: 100%;
}

body.home .mec-calendar .mec-calendar-side, body.home .mec-calendar .mec-calendar-events-side {
    width: 100%;
    float: left;
    display: block;
}

[role="main"] .mec-calendar .mec-calendar-row dt.mec-has-event:hover,
[role="main"] .mec-calendar .mec-selected-day, [role="main"] .mec-calendar .mec-selected-day:hover {
    background: rgb(6,53,187);
    color: rgb(255, 255, 255);
}

.mec-calendar .mec-event-article {
    width: 100%;
    float: left;
}

[role="main"] .mec-calendar .mec-has-event:after {
    background: rgb(6,53,187);
}

[role="main"] .mec-color, [role="main"] .mec-color-before :before, [role="main"] .mec-color-hover:hover, [role="main"] .mec-wrap .mec-color, [role="main"] .mec-wrap .mec-color-before :before, [role="main"] .mec-wrap .mec-color-hover:hover {
    color: rgb(6,53,187);
}

[role="main"] .mec-calendar .mec-calendar-events-side .mec-table-side-day {
    width: 46px;
    height: auto;
    margin: 2.33em 0;
    font: 300 11px/1.3 Montserrat, Arial, Helvetica, sans-serif;
    border: none;
    text-transform: uppercase;
    color: rgb(23, 28, 36);
    letter-spacing: 3px;
}

[role="main"] .entry-content .mec-wrap h1, [role="main"] .entry-content .mec-wrap h2, [role="main"] .entry-content .mec-wrap h3,
[role="main"] .entry-content .mec-wrap h4, [role="main"] .entry-content .mec-wrap h5, [role="main"] .entry-content .mec-wrap h6,
[role="main"] .mec-wrap h1, [role="main"] .mec-wrap h2, [role="main"] .mec-wrap h3, [role="main"] .mec-wrap h4, [role="main"] .mec-wrap h5, [role="main"] .mec-wrap h6 {
    font-family: Montserrat, Arial, Helvetica, sans-serif;
}

[role="main"] .event-color {
    display: none;
}

[role="main"] a.mec-color-hover {
    pointer-events: none;
}

[role="main"] .mec-dropdown-wrap, [role="main"] .mec-search-form .mec-date-search, [role="main"] .mec-search-form .mec-text-input-search {
    width: 50%;
    display: inline-block;
}

[role="main"] .mec-search-form .mec-dropdown-wrap .mec-dropdown-search {
    width: 100%;
    display: inline-block;
}

[role="main"] .mec-wrap .mec-totalcal-box input[type=search] {
    width: calc(100% - 48px);
}

[role="main"] .mec-search-form .mec-date-search, [role="main"] .mec-search-form .mec-dropdown-search,
[role="main"] .mec-search-form .mec-text-input-search, [role="main"] .mec-search-form .mec-dropdown-wrap {
    min-height: 0;
}

/* ==========================================================================
   Quotes
   ========================================================================== */
[role="main"] blockquote {
    width: 100%;
    float: left;
    margin: 1em 0;
    padding: 45px;
    background: rgb(173,188,232);
}

[role="main"] blockquote p {
    width: 70%;
    font: 400 19px/28px Montserrat, Arial, Helvetica, sans-serif;
    text-align: center;
    font-style: italic;
    float: none;
    margin: 0 auto 15px;
}

[role="main"] blockquote cite {
    width: 100%;
    font: 700 19px/28px Montserrat, Arial, Helvetica, sans-serif;
    text-align: center;
    float: left;
    margin: 0 auto;
}

[role="main"] blockquote.white p,
[role="main"] blockquote.white cite {
    color: #fff;
}

[role="main"] blockquote.yellow p,
[role="main"] blockquote.yellow cite {
    color: #f4d146;
}

[role="main"] blockquote.lightgrey p,
[role="main"] blockquote.lightgrey cite {
    color: #cecece;
}

[role="main"] blockquote.lightblue p,
[role="main"] blockquote.lightblue cite {
    color: #7184ac;
}

.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}

.embed-container iframe, .embed-container object, .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ==========================================================================
   Class Pages
   ========================================================================== */
.teacher_image_name {
    position: relative;
}

body.parent-pageid-63 .wrapper, body.parent-pageid-63 [role="main"] {
    overflow: visible;
}

body.page-id-4431 .modal {
    z-index: 9;
}

.teacher_image_name img {
    max-width: 100%;
}

a.contact_teacher {
    margin-top: 15px;
    float: left;
    color: #000;
}

ul.onecolumn li.side_bar.teacher_side_bar {
    background-color: #fed966;
    padding: 10px;
    margin-top: -170px;
    position: relative;
    z-index: 3;
    box-shadow: 0px 6px 11px #00185c;
}

ul.onecolumn li.side_bar .teacher_image_name h2 {
    width: 100%;
    height: 50px;
    background-color: rgba(6,53,187,0.7);
    position: absolute;
    bottom: 0;
    font: 600 18px/50px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(255, 255, 255);
    margin: 0;
    text-align: center;
}

ul.onecolumn li.side_bar .teacher_image_name p {
    margin-top: 30px;
}

.slider-wrapper {
    float: left;
    border-top: 8px solid rgb(6,53,187);
}

.nivoSlider {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
}

.slider-wrapper {
    width: 100%;
    margin-top: 20px;
}

.nivo-controlNav {
    width: 100%;
    margin: 0;
    padding: 12px 17px;
    text-align: left;
    background: rgb(6,53,187);
}

.nivo-controlNav a {
    display: inline-block;
}

.nivo-controlNav a.nivo-control img {
    max-height: 41px;
    margin: 0 7px 5px 0;
    border: 2px solid rgb(255, 255, 255);
}

.nivo-controlNav a.active img {
    border: 2px solid rgb(255,215,0);
}

[role="main"] .nivo-caption {
    font: 400 16px/36px "Gotham Medium", Arial, Helvetica, sans-serif;
    color: rgb(236, 236, 237);
}


/* ==========================================================================
   Expanding Grid
   ========================================================================== */
.team_section ul {
    position: relative;
    font-size: 0;
}

.team_section ul li {
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    margin: 0;
}

.team_section ul li .team_member_photo {
    width: 100%;
    height: 100%;
    position: absolute;
}

.governors .team_section ul li .team_member_photo,
.teaching_assistants .team_section ul li .team_member_photo {
    display: none;
}

.team_section ul li .team_member_photo .plus, .team_section ul li .team_member_photo .minus {
    background: #fff;
    width: 50px;
    height: 50px;
    position: absolute;
    bottom: 10px;
    right: 10px;
    text-align: center;
    color: rgb(148, 148, 148);
    font: 100 28px/50px "Roboto Condensed", Arial, Helvetica, sans-serif;
    cursor: pointer;
    z-index: 1;
}

.team_section ul li .team_member_photo .plus, .team_section ul li .team_member_photo .minus {
    display: none;
}

.fade-in {
    opacity: 0.8;
    animation-name: fadeInOpacity;
    animation-iteration-count: 1;
    animation-timing-function: ease-in;
    animation-duration: 0.5s;
}

@keyframes fadeInOpacity {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 0.8;
    }
}

.team_section ul li:hover .team_member_photo .plus {
    display: block;
}

.team_section ul li.active .team_member_photo .minus {
    font: 100 40px/50px "Roboto Condensed", Arial, Helvetica, sans-serif;
    display: block;
    opacity: 0.8;
}

.not_active {
    opacity: 0.8 !important;
}

.not_active.active {
    opacity: 1 !important;
}

.team_section ul li.team_member_details {
    width: 100%;
    display: none;
    float: left;
    background: rgb(254, 217, 102);
    overflow: hidden;
    padding: 20px 30px;
    margin-bottom: 0;
    margin-top: -19px;
}

.team_section ul li.team_member_details h3, .team_section ul li.team_member_details p {
    color: rgb(0,0,0);
}

.team_section ul li.team_member_details h3 {
    font-size: 17px;
}

.team_section ul li .hover_text {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(6, 53, 187,0.5);
    display: none;
}

.governors .team_section ul li .hover_text,
.teaching_assistants .team_section ul li .hover_text {
    display: block;
    position: unset;
}

.team_section ul li.active .hover_text, .team_section ul li:hover .hover_text {
    display: block;
    cursor: pointer;
}

[role="main"] .team_section ul li.team_member_details h1 {
    margin-bottom: 5px;
}

#wrapper.staffwrapper [role="main"] .team_section ul li .hover_text h2 {
    font: 600 18px/26px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(255, 255, 255);
    padding: 15px 0 0 15px;
}

#wrapper.staffwrapper [role="main"] .governors .team_section ul li .hover_text h2,
#wrapper.staffwrapper [role="main"] .teaching_assistants .team_section ul li .hover_text h2 {
    color: rgb(255, 255, 255);
    padding-left: 0;
}

.team_section ul li .hover_text h2 span.position {
    font: 400 16px/24px Montserrat, Arial, Helvetica, sans-serif;
}

.sue_signature {
    width: 100%;
    float: left;
}

.sue_image {
    width: 50px !important;
    height: 50px;
    float: left;
}

.sue_name_position {
    width: calc(100% - 70px);
    float: right;
}

/* ==========================================================================
   Content
   ========================================================================== */
[role="main"] {
    float: none;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    z-index: 2;
}

[role="main"] ul {
    width: 100%;
    float: left;
    margin: 10px 0 30px;
    padding: 0;
    list-style: none;
}

[role="main"]:after {
    content: "";
    display: table;
    clear: both;
}

ul.onecolumn li, ul.twocolumns li, ul.threecolumns li {
    float: left;
    list-style: none;
    margin: 0;
}

ul.onecolumn.curriculum_section {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

ul.onecolumn.curriculum_section li img {
    width: 100%;
    height: auto;
}

ul.onecolumn.curriculum_section li .curriculum_text h2 {
    width: 100%;
    font: 500 17px/20px Montserrat, Arial, Helvetica, sans-serif;
    margin: 12px 0;
}

ul.onecolumn.curriculum_section li .curriculum_text p {
    font: 300 14px/21px Montserrat, Arial, Helvetica, sans-serif;
    margin: 0 0 10px;
}

ul.twocolumns li img, ul.threecolumns li img {
    width: 100%;
    max-width: 100%;
    height: auto;
}

ul.onecolumn li > .sub-menu {
    margin: 5px 0 0;
}

ul.onecolumn li > .sub-menu li:last-of-type {
    margin: 0;
}

#fullwidthslider {
    overflow: hidden;
    box-shadow: 0px 6px 11px #00185c;
}

body.our-vision-and-values [role="main"] ul li ul.newsletters li img {
    border: none;
}

@media screen and (min-width: 768px) {
    body.our-vision-and-values ul.twocolumns li.firstcolumn {
        padding-right: 4%;
    }
}

/* ==========================================================================
   Gallery
   ========================================================================== */
.masonry-item {
    float: left;
}

.masonry-item, .masonry-sizer {
    width: 33.333%;
}

.masonry-item img {
    display: block;
    max-width: 100%;
}

.modal {
    display: none;
    position: fixed;
    z-index: 1;
    padding-top: 100px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: black;
    background-color: rgba(0, 0, 0, 0.9);
}

.modal-content {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 700px;
}

#caption {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 700px;
    text-align: center;
    color: #ccc;
    padding: 10px 0;
    height: 150px;
}

.masonry-item .desc {
    display: none;
}

.modal-content, #caption {
    -webkit-animation-name: zoom;
    -webkit-animation-duration: 0.6s;
    animation-name: zoom;
    animation-duration: 0.6s;
}

@-webkit-keyframes zoom {
    from {
        transform: scale(0);
    }
    to {
        transform: scale(1);
    }
}
@keyframes zoom {
    from {
        transform: scale(0.1);
    }
    to {
        transform: scale(1);
    }
}

.close {
    position: absolute;
    top: 15px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    transition: 0.3s;
}

.close:hover, .close:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}

#caption h2, #caption p {
    width: 100%;
    text-align: center;
    color: rgb(255,255,255);
}

/* ==========================================================================
   School Tours
   ========================================================================== */
.school_tours {
    width: 100%;
    float: left;
    font: 500 18px/46px Montserrat, Arial, Helvetica, sans-serif;
    background: rgb(6, 53, 187);
    color: rgb(255, 255, 255);
    margin: 0;
    padding-left: 20px;
}

.school_tours_details {
    width: 100%;
    float: left;
    background: rgb(243, 246, 253);
    padding: 20px;
}

/* ==========================================================================
   Sidebar
   ========================================================================== */
ul.onecolumn li.side_bar ul.sections {
    margin: 0;
}

ul.onecolumn li.side_bar {
    min-height: 500px;
    background: rgb(255,215,0);
    padding: 20px;
}

ul.onecolumn li.side_bar ul.sections li {
    background: none;
    padding: 0;
}

ul.onecolumn li.side_bar ul.sections li.events, li.side_bar ul.sections li.news {
    border-bottom: 4px solid rgb(255,255,255);
}

ul.onecolumn li.side_bar h2 {
    font: 600 32px/40px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(6, 53, 187);
    margin: 0 0 20px;
}

ul.onecolumn li.side_bar .sections li.news {
    margin: 12px 0 0;
}

ul.onecolumn li.side_bar .sections li.news ul {
    margin: 0 0 20px;
}

/* ==========================================================================
   Home Calendar Section
   ========================================================================== */
body.home .mec-wrap, body.home .mec-skin-list-events-container, body.home .mec-event-list-minimal {
    float: left;
}

body.home .mec-event-list-minimal .mec-event-article {
    border-bottom: 1px dotted rgb(6,53,187);
    padding: 16px 0 8px;
}

body.home .mec-event-list-minimal .mec-event-article:first-of-type {
    padding: 0 0 8px;
}

body.home .mec-event-list-minimal .mec-event-article:last-of-type {
    border-bottom: none;
    padding: 16px 0 0;
}

body.home .mec-wrap .col-md-9 {
    width: 100%;
    padding: 0;
}

body.home .mec-event-list-minimal .mec-event-title {
    font: 400 15px/23px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(43, 86, 152);
    text-transform: capitalize;
    width: calc(100% - 130px);
    padding: 0;
}

body.home .mec-event-list-minimal .mec-event-date:after {
    background: #fff;
    box-shadow: none;
    z-index: 1;
    left: 0px;
    top: 0px;
}

body.home .mec-event-list-minimal .mec-event-date span {
    color: #212932;
    z-index: 2;
    position: relative;
    font: 400 24px/27px Arial, Helvetica, sans-serif;
}

body.home .mec-bg-color {
    background: rgb(44,93,169);
    background: linear-gradient(0deg, rgba(44,93,169,1) 0%, rgba(9,9,121,1) 15%, rgba(59,73,170,1) 29%, rgba(149,201,231,1) 58%, rgba(149,201,231,1) 86%);
    font: 500 16px/20px Arial, Helvetica, sans-serif;
}

body.home .mec-event-detail {
    display: none;
}

body.home .mec-event-list-minimal .mec-event-date {
    margin-right: 20px;
}

body.home h1.extra_headers {
    font: 300 22px / 38px "Roboto", sans-serif;
    margin-bottom: 5px;
    margin-left: -30px;
    background-color: rgb(3, 42, 155);
    width: 90%;
    padding: 10px 30px;
    border-radius: 0 30px 30px 0;
}

a.view_all {
    font: 300 16px/25px Montserrat, Arial, Helvetica, sans-serif;
}
/* ==========================================================================
   Download Section
   ========================================================================== */
h2.download_title {
    width: fit-content;
    min-width: 360px;
    height: 50px;
    background: rgb(254, 217, 102);
    font: 400 16px/50px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(0,0,0);
    margin: 10px 0 15px;
    padding: 0 30px;
    float: left;
    border-radius: 0 20px 20px 0;
}

.downloadrow {
    width: 100%;
    border-bottom: 1px solid rgb(151, 170, 224);
    float: left;
    padding: 0 30px;
}

.downloadrow .left_side {
    width: 80px;
    height: 72px;
    float: left;
}

.downloadrow .left_side .linkicon {
    width: 100%;
    height: 100%;
}

.downloadrow .right_side {
    width: calc(100% - 110px);
    float: right;
}

.downloadrow a {
    float: left;
}

.downloadrow a.pdficon {
    width: 80px;
    height: 72px;
    background: url('images/pdf-icon.png') 0 0 no-repeat;
    background-size: 80px 72px;
}

.downloadrow h3 {
    font: 400 16px/39px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(255, 255, 255);
}

/* ==========================================================================
   Download area styles
   ========================================================================== */
[role="main"] ul.downloaditems {
    float: none;
    content: "";
    display: table;
}

span.downloadsquare .fa {
    line-height: 76px;
    color: rgb(255,255,255);
}

span.downloadsquare {
    width: 40px;
    display: table;
    background: rgb(0, 22, 137);
}

span.downloadsquare:hover {
    background: rgb(0, 21, 97);
}

.latest span.downloadsquare {
    background: rgb(247, 179, 47);
}

.latest span.downloadsquare:hover {
    background: rgb(219, 158, 43);
}

[role="main"] li.downloaditem {
    display: inline-table;
    float: left;
    background: rgb(243,243,243);
    margin: 0 0 10px;
}

li.downloaditem a {
    width: 100%;
    font: normal 15px/20px Montserrat, Arial, Helvetica, sans-serif;
    display: table-cell;
    vertical-align: middle;
    border-left: 15px solid rgb(243,243,243);
}

span.downloadsquare a {
    text-align: center;
    border-left: none !important;
}

.table-wrapper td {
    border: 1px solid #fff;
}

/* ==========================================================================
   Blog
   ========================================================================== */
.blog_post {
    width: 100%;
    float: left;
    padding: 30px 20px 0;
    margin-top: 30px;
    border-top: 1px solid rgb(0,117,201);
}

.blog_post:first-of-type {
    margin-top: 0;
}

[role="main"] p.post_meta {
    margin-bottom: 20px !important;
}

.blog_post img, body.single-post p.post_meta + img {
    max-width: 300px;
    float: left;
}

body.single-post p.post_meta + img {
    margin-bottom: 30px;
}

.blog_post_excerpt p a.button {
    font: 700 16px/35px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(119,189,67);
}

[role="main"] .blog_post h1, body.single-post [role="main"] .main_content h1 {
    margin-bottom: 0;
}

[role="main"] .blog_post h1 a {
    color: rgb(0, 117, 201);
}

.mec-event-list-classic .mec-event-article {
    width: 100%;
    float: left;
    padding: 0;
}

[role="main"] article h1 {
    margin: 0 0 10px;
}

[role="main"] article h1 a {
    color: rgb(247, 179, 47);
}

/* ==========================================================================
   Footer
   ========================================================================== */
[role="information"] {
    width: 100%;
    background: rgb(254, 217, 102);
    position: relative;
    content: "";
    display: table;
    clear: both;
}

[role="information"] .footerrow {
    width: 100%;
    float: left;
    margin: 25px 0 0;
    padding: 0;
}

[role="information"] .menu, [role="information"] .companydetails, [role="information"] .socialmedia {
    width: 70%;
    list-style: none;
    float: left;
    margin: 0;
    padding: 0;
}

[role="information"] ul li.menu-item {
    float: left;
    margin: 0 30px 0 0;
}

[role="information"] a, [role="information"] #back-to-top, [role="information"] .companydetails li {
    width: 100%;
    font: 400 14px/20px Montserrat, Arial, Helvetica, sans-serif;
    color: rgb(0, 0, 0);
    margin: 0;
    float: left;
    text-align: left;
}

[role="information"] #back-to-top {
    margin-top: 20px;
}

[role="information"] #back-to-top, [role="information"] .socialmedia {
    width: 30%;
    text-decoration: none;
    text-align: right;
    float: right;
}

[role="information"] .socialmedia li {
    float: right;
    margin-left: 15px;
}

[role="information"] .socialmedia li, [role="information"] .socialmedia li a, [role="information"] .socialmedia li i {
    width: 32px;
    height: 32px;
    border-radius: 32px;
}

[role="information"] .socialmedia li a {
    font: normal 20px/32px "azo-sans-web", Arial, Helvetica, sans-serif;
    color: rgb(17, 81, 144);
    display: block;
    text-decoration: none;
    text-align: center;
    background: rgb(255, 255, 255);
}

[role="information"] .socialmedia li i {
    display: block;
    line-height: 32px;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
}

[role="information"] .socialmedia span {
    display: none;
}

[role="information"] .socialmedia li:hover i {
    color: rgb(255,255,255);
}

[role="information"] .socialmedia .linkedin:hover i {
    background-color: rgb(0,119,181);
}

[role="information"] .socialmedia .twitter:hover i {
    background-color: rgb(40,169,224);
}

table {
    background-color: transparent;
    border-collapse: collapse
}

th {
    text-align: left
}

.equality_objectives table td {
    border: 1px solid #fff;
    padding: 12px;
}

.equality_objectives table tr:first-of-type td {
    background-color: rgb(254, 217, 102);
}

.equality_objectives table td p + ul {
    margin-top: 6px;
}

.equality_objectives table tr:first-of-type td p {
    color: rgb(0, 0, 0);
}

.dcf-table {
    margin-bottom: 60px;
}

.dcf-table tbody, .dcf-table thead {
    font-size: 11px;
    line-height: 15px;
}

.dcf-table tfoot {
    font-size: 15px;
    line-height: 20px;
}

.dcf-table tbody {
    border-bottom: 1px solid #e3e3e2;
    border-top: 1px solid #e3e3e2
}

.dcf-table td, .dcf-table th {
    padding-right: 1.78em
}

.dcf-table-bordered, .dcf-table-bordered td, .dcf-table-bordered th {
    border: 1px solid #e3e3e2;
    background-color: rgb(255,255,255);
}

.dcf-table-striped td.not_governor {
    background-color: #c3c3c3;
}

.dcf-table-bordered td, .dcf-table-bordered th, .dcf-table-striped td, .dcf-table-striped th {
    padding-left: 1em;
    padding-right: 1em
}

.dcf-table-bordered tr:not(:last-child), .dcf-table-striped tr:not(:last-child) {
    border-bottom: 1px solid #e3e3e2
}

.dcf-table-striped tbody tr:nth-of-type(2n) {
    background-color: #f6f6f5 !important;
}

.dcf-table thead td, .dcf-table thead th {
    padding-bottom: .75em;
    vertical-align: bottom
}

.dcf-table tbody td, .dcf-table tbody th, .dcf-table tfoot td, .dcf-table tfoot th {
    padding-top: .75em;
    vertical-align: top
}

.dcf-table tbody td, .dcf-table tbody th {
    padding-bottom: .75em
}

.dcf-table-bordered thead th {
    padding-top: 1.33em
}

.dcf-wrapper-table-scroll {
    left: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 1em;
    position: relative;
    right: 50%;
    width: 100vw
}

@media only screen and (max-width: 42.09em) {
    .dcf-table-responsive thead {
        clip: rect(0 0 0 0);
        -webkit-clip-path: inset(50%);
        clip-path: inset(50%);
        height: 1px;
        overflow: hidden;
        position: absolute;
        width: 1px;
        white-space: nowrap
    }

    .dcf-table-responsive tr {
        display: block
    }

    .dcf-table-responsive td {
        -webkit-column-gap: 3.16vw;
        -moz-column-gap: 3.16vw;
        column-gap: 3.16vw;
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 2fr;
        grid-template-columns: 1fr 2fr;
        text-align: left !important
    }

    .dcf-table-responsive.dcf-table-bordered, .dcf-table-responsive.dcf-table-bordered thead th {
        border-width: 0
    }

    .dcf-table-responsive.dcf-table-bordered tbody td {
        border-top-width: 0
    }

    .dcf-table-responsive:not(.dcf-table-bordered) tbody tr {
        padding-bottom: .75em
    }

    .dcf-table-responsive:not(.dcf-table-bordered) tbody td {
        padding-bottom: 0
    }

    .dcf-table-responsive:not(.dcf-table-bordered):not(.dcf-table-striped) tbody td {
        padding-right: 0
    }

    .dcf-table-responsive.dcf-table-bordered tbody tr:last-child td:last-child {
        border-bottom-width: 0
    }

    .dcf-table-responsive tbody td:before {
        content: attr(data-label);
        float: left;
        font-weight: 700;
        padding-right: 1.78em
    }
}

/* ==========================================================================
   Media Queries
   ========================================================================== */
@media screen and (min-width:320px) and (max-width:499px) {

    ul.onecolumn.curriculum_section li {
        flex: 0 0 100%;
        margin-bottom: 30px;
    }

    .team_section ul li {
        width: 100%;
    }

    .team_section ul li.team_member {
        min-height: 340px;
    }

    .governors .team_section ul li.team_member,
    .teaching_assistants .team_section ul li.team_member {
        min-height: 100px;
    }

}

@media screen and (min-width:500px) and (max-width:767px) {

    ul.onecolumn.curriculum_section li {
        flex: 0 0 48%;
        margin-bottom: 30px;
    }

    [role="main"] .team_section ul li.team_member {
        width: 48%;
        min-height: 340px;
        margin: 0 4% 4% 0;
    }

    .governors .team_section ul li.team_member,
    .teaching_assistants .team_section ul li.team_member {
        min-height: 100px;
    }

    [role="main"] .team_section ul li.team_member:nth-of-type(2n) {
        margin: 0 0 4%;
    }

}

@media screen and (max-width:767px) {

    [role="main"] ul li li {
        background: none;
    }

    body.home ul.twocolumns li {
        width: 100% !important;
    }

    body.desktop .inner a.logo {
        font: 400 35px/1em "adobe-garamond-pro", Arial, Helvetica, sans-serif !important;
        margin: 28px 0 0;
    }

    body.desktop [role="navigation"] ul li {
        width: 100%;
        font: 500 15px/30px Montserrat, Arial, Helvetica, sans-serif;
    }

    body.desktop [role="navigation"] ul li a {
        width: 100%;
        padding: 0;
    }

    .blog_post_excerpt {
        width: 100%;
        float: left;
        margin-top: 25px;
    }

    .wrapper {
        padding: 25px 0;
    }

    .wrapper.blog {
        padding: 45px 0;
    }

    .headersection {
        background: rgb(6,53,187) url('images/arrow.svg') no-repeat right -7px;
        background-size: auto 120%;
        left: auto;
        right: 0;
    }

    [role="main"] ul li, [role="main"] ol li {
        width: 100%;
    }

    [role="main"] {
        padding: 0 5%;
    }

    .firstcolumn, .secondcolumn {
        width: 100% !important;
    }

    [role="main"] h1 {
        font: 600 21px/28px Montserrat, Arial, Helvetica, sans-serif;
    }

    [role="information"] {
        padding: 0 5% 20px;
    }

    h1.homeheader {
        font: 400 32px/42px Montserrat, Arial, Helvetica, sans-serif;
        top: 20%;
    }

    .inner a.logo {
        font: 400 43px/1em "adobe-garamond-pro", Arial, Helvetica, sans-serif;
    }

    .blocks {
        width: 100%;
        margin: 0 0 18px;
    }

    #breadcrumbs a {
        padding-bottom: 10px;
        display: inline-block;
    }

    .servicesblock {
        margin-bottom: 20px;
    }

    .curve, .arrow {
        display: none;
    }

}

@media screen and (min-width:768px) {

    [role="main"] blockquote {
        width: 100%;
        background-image: url('images/before_quotes.svg'), url('images/after_quotes.svg');
        background-position: 30px 30px, right 30px bottom 30px;
        background-repeat: no-repeat;
        background-size: 100px auto;
        float: left;
    }

    [role="main"] blockquote.white {
        background-image: url('images/before_quotes_white.svg'), url('images/after_quotes_white.svg');
    }

    [role="main"] blockquote.yellow {
        background-image: url('images/before_quotes_yellow.svg'), url('images/after_quotes_yellow.svg');
    }

    [role="main"] blockquote.lightgrey {
        background-image: url('images/before_quotes_light_grey.svg'), url('images/after_quotes_light_grey.svg');
    }

    [role="main"] blockquote.lightblue {
        background-image: url('images/before_quotes_light_blue.svg'), url('images/after_quotes_light_blue.svg');
    }

    .team_section ul li.team_member {
        min-height: 470px;
    }

    .governors .team_section ul li.team_member, .teaching_assistants .team_section ul li.team_member {
        min-height: 100px;
    }

    .blog_post_excerpt {
        width: calc(100% - 300px);
        float: left;
    }

    img + noscript + .blog_post_excerpt {
        padding-left: 20px;
    }

    .wrapper {
        padding: 45px 0 25px;
    }

    ul.onecolumn, ul.twocolumns, ul.threecolumns, ul.onecolumn li {
        width: 100%;
        float: left;
        padding: 0;
        margin: 0;
        list-style: none;
    }

    ul.onecolumn, ul.twocolumns, ul.threecolumns {
        margin: 0 0 45px;
    }

    ul.twocolumns li {
        width: 50%;
    }

    ul.twocolumns li li {
        width: 100%;
    }

    ul.threecolumns li {
        width: 33.3%;
    }

    ul.threecolumns li.firstcolumn {
        padding-right: 3%;
    }

    ul.twocolumns li.firstcolumn {
        padding-right: 8.5%;
    }

    ul.twocolumns li.secondcolumn {
        padding-left: 2.5%;
    }

    ul.threecolumns li.secondcolumn {
        padding-left: 1%;
        padding-right: 1%;
    }

    ul.threecolumns li.thirdcolumn {
        padding-left: 3%;
    }

    [role="main"] .onethird, [role="main"] .reverseonethird {
        width: 32%;
        float: right;
    }

    [role="main"] .twothirds, [role="main"] .reversetwothirds {
        width: 65%;
    }

}

@media screen and (min-width:768px) and (max-width:1023px) {

    ul.onecolumn.curriculum_section li {
        flex: 0 0 48%;
        margin-bottom: 30px;
    }

    [role="main"] {
        padding: 0 2%;
    }

    .blocks {
        width: 49%;
        margin: 0 2% 18px 0;
    }

    .team_section ul li {
        width: 33.33%;
    }

    .blocks:nth-of-type(2n+1) {
        margin: 0 0 18px;
    }

    [role="information"] {
        padding: 0 2% 20px;
    }

}

@media only screen and (orientation: portrait) {

    #mobilenav {
        width: 100%;
        display: block;
    }

    body.home ul.twocolumns li {
        width: 100% !important;
    }

    #cssmenu, #cssmenu ul, #cssmenu ul li, #cssmenu ul li a {
        width: 100%;
        margin: 0;
        padding: 0;
        border: 0;
        list-style: none;
        line-height: 1;
        display: block;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    #cssmenu {
        width: 100%;
        color: rgb(255,255,255);
        float: left;
    }

    #cssmenu ul {
        float: left;
    }

    #cssmenu ul ul {
        display: none;
    }

    .align-right {
        float: right;
    }

    #cssmenu > ul > li > a {
        padding: 8px 20px;
        border-top: 1px solid rgb(234,236,223);
        cursor: pointer;
        z-index: 2;
        font: 300 14px/22px Montserrat, Arial, Helvetica, sans-serif;
        text-decoration: none;
        text-transform: uppercase;
        color: rgb(255,255,255);
        background: rgb(6,53,187);
    }

    #cssmenu > ul > li > a:hover, #cssmenu > ul > li.active > a, #cssmenu > ul > li.open > a {
        color: rgb(255,255,255);
        background: rgb(6,53,187);
    }

    #cssmenu > ul > li.open > a {
        border-bottom: 1px solid rgb(234,236,223);
    }

    .holder {
        width: 0;
        height: 0;
        position: absolute;
        top: 0;
        right: 0;
    }

    .holder::after, .holder::before {
        display: block;
        position: absolute;
        content: "";
        width: 6px;
        height: 6px;
        right: 20px;
        z-index: 10;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    .holder::after {
        top: 14px;
        border-top: 2px solid rgb(255,255,255);
        border-left: 2px solid rgb(255,255,255);
    }

    .holder::before {
        top: 15px;
        border-top: 2px solid;
        border-left: 2px solid;
        border-top-color: inherit;
        border-left-color: inherit;
    }

    #cssmenu ul ul li a {
        cursor: pointer;
        border-bottom: 1px solid rgb(4, 140, 253);
        padding: 12px 20px;
        z-index: 1;
        text-decoration: none;
        font-size: 15px;
        text-transform: uppercase;
        font-weight: 400;
        color: rgb(255,255,255);
        background: rgb(2, 119, 216);
    }

    #cssmenu ul ul ul li a {
        padding-left: 30px;
    }

    #cssmenu > ul > li > ul > li:last-child > a, #cssmenu > ul > li > ul > li.last > a {
        border-bottom: 0;
    }

    #cssmenu > ul > li > ul > li.open:last-child > a, #cssmenu > ul > li > ul > li.last.open > a {
        border-bottom: 1px solid #32373e;
    }

    #cssmenu > ul > li > ul > li.open:last-child > ul > li:last-child > a {
        border-bottom: 0;
    }

    #cssmenu ul ul li.has-sub > a::after {
        display: block;
        position: absolute;
        content: "";
        width: 5px;
        height: 5px;
        right: 20px;
        z-index: 10;
        top: 11.5px;
        border-top: 2px solid #eeeeee;
        border-left: 2px solid #eeeeee;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    #cssmenu ul ul li.active > a::after, #cssmenu ul ul li.open > a::after, #cssmenu ul ul li > a:hover::after {
        border-color: rgb(255,255,255);
    }

    .navigation_wrapper {
        display: none !important;
    }

}

@media only screen and (orientation: landscape) {

    body.handheld .navigation_wrapper {
        display: none;
    }

    #mobilenav {
        width: 100%;
        display: block;
    }

    body.phone #fullwidthslider,
    body.tablet #fullwidthslider {
        padding-top: 230px;
    }

    #cssmenu, #cssmenu ul, #cssmenu ul li, #cssmenu ul li a {
        width: 100%;
        margin: 0;
        padding: 0;
        border: 0;
        list-style: none;
        line-height: 1;
        display: block;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    #cssmenu {
        width: 100%;
        color: rgb(255,255,255);
        float: left;
    }

    #cssmenu ul {
        float: left;
    }

    #cssmenu ul ul {
        display: none;
    }

    .align-right {
        float: right;
    }

    #cssmenu > ul > li > a {
        padding: 8px 20px;
        border-top: 1px solid rgb(234,236,223);
        cursor: pointer;
        z-index: 2;
        font: 300 14px/22px Montserrat, Arial, Helvetica, sans-serif;
        text-decoration: none;
        text-transform: uppercase;
        color: rgb(255,255,255);
        background: rgb(6,53,187);
    }

    #cssmenu > ul > li > a:hover, #cssmenu > ul > li.active > a, #cssmenu > ul > li.open > a {
        color: rgb(255,255,255);
        background: rgb(6,53,187);
    }

    #cssmenu > ul > li.open > a {
        border-bottom: 1px solid rgb(234,236,223);
    }

    .holder {
        width: 0;
        height: 0;
        position: absolute;
        top: 0;
        right: 0;
    }

    .holder::after, .holder::before {
        display: block;
        position: absolute;
        content: "";
        width: 6px;
        height: 6px;
        right: 20px;
        z-index: 10;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    .holder::after {
        top: 14px;
        border-top: 2px solid rgb(255,255,255);
        border-left: 2px solid rgb(255,255,255);
    }

    .holder::before {
        top: 15px;
        border-top: 2px solid;
        border-left: 2px solid;
        border-top-color: inherit;
        border-left-color: inherit;
    }

    #cssmenu ul ul li a {
        cursor: pointer;
        border-bottom: 1px solid rgb(4, 140, 253);
        padding: 12px 20px;
        z-index: 1;
        text-decoration: none;
        font-size: 15px;
        text-transform: uppercase;
        font-weight: 400;
        color: rgb(255,255,255);
        background: rgb(2, 119, 216);
    }

    #cssmenu ul ul ul li a {
        padding-left: 30px;
    }

    #cssmenu > ul > li > ul > li:last-child > a, #cssmenu > ul > li > ul > li.last > a {
        border-bottom: 0;
    }

    #cssmenu > ul > li > ul > li.open:last-child > a, #cssmenu > ul > li > ul > li.last.open > a {
        border-bottom: 1px solid #32373e;
    }

    #cssmenu > ul > li > ul > li.open:last-child > ul > li:last-child > a {
        border-bottom: 0;
    }

    #cssmenu ul ul li.has-sub > a::after {
        display: block;
        position: absolute;
        content: "";
        width: 5px;
        height: 5px;
        right: 20px;
        z-index: 10;
        top: 11.5px;
        border-top: 2px solid #eeeeee;
        border-left: 2px solid #eeeeee;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    #cssmenu ul ul li.active > a::after, #cssmenu ul ul li.open > a::after, #cssmenu ul ul li > a:hover::after {
        border-color: rgb(255,255,255);
    }

    .navigation_wrapper {
        display: none;
    }

}

@media screen and (max-width:1023px) {

    [role="main"] ul li ul.newsletters {
        width: 100%;
        float: left;
        display: flex;
        justify-content: flex-start;
        flex-direction: row;
        flex-wrap: wrap;
        list-style: none;
    }

    [role="main"] ul li ul.newsletters li {
        flex: 0 0 40%;
        list-style: none;
        background: transparent;
        margin-right: 5%;
        margin-bottom: 20px;
        padding: 0;
    }

    [role="main"] ul li ul.newsletters li img {
        width: 100%;
        height: auto;
        margin-bottom: 10px;
        border: 2px solid rgb(6, 53, 187);
    }

    .downloadrow .left_side, .downloadrow .right_side {
        height: auto !important
    }

    #mobilenav {
        width: 100%;
        display: block;
    }

    .navigation_wrapper {
        display: none;
    }

    #cssmenu, #cssmenu ul, #cssmenu ul li, #cssmenu ul li a {
        width: 100%;
        margin: 0;
        padding: 0;
        border: 0;
        list-style: none;
        line-height: 1;
        display: block;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    #cssmenu {
        width: 100%;
        color: rgb(255,255,255);
        float: left;
    }

    #cssmenu ul {
        float: left;
    }

    #cssmenu ul ul {
        display: none;
    }

    .align-right {
        float: right;
    }

    #cssmenu > ul > li > a {
        padding: 8px 20px;
        border-top: 1px solid rgb(234,236,223);
        cursor: pointer;
        z-index: 2;
        font: 300 14px/22px Montserrat, Arial, Helvetica, sans-serif;
        text-decoration: none;
        text-transform: uppercase;
        color: rgb(255,255,255);
        background: rgb(6,53,187);
    }

    #cssmenu > ul > li > a:hover, #cssmenu > ul > li.active > a, #cssmenu > ul > li.open > a {
        color: rgb(255,255,255);
        background: rgb(6,53,187);
    }

    #cssmenu > ul > li.open > a {
        border-bottom: 1px solid rgb(234,236,223);
    }

    .slider-background {
        min-height: 30vh !important;
    }

    .downloadrow .left_side .linkicon {
        height: 160px !important;
    }

    .holder {
        width: 0;
        height: 0;
        position: absolute;
        top: 0;
        right: 0;
    }

    .holder::after, .holder::before {
        display: block;
        position: absolute;
        content: "";
        width: 6px;
        height: 6px;
        right: 20px;
        z-index: 10;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    .holder::after {
        top: 14px;
        border-top: 2px solid rgb(255,255,255);
        border-left: 2px solid rgb(255,255,255);
    }

    .holder::before {
        top: 15px;
        border-top: 2px solid;
        border-left: 2px solid;
        border-top-color: inherit;
        border-left-color: inherit;
    }

    #cssmenu ul ul li a {
        cursor: pointer;
        border-bottom: 1px solid rgb(4, 140, 253);
        padding: 12px 20px;
        z-index: 1;
        text-decoration: none;
        font-size: 15px;
        text-transform: uppercase;
        font-weight: 400;
        color: rgb(255,255,255);
        background: rgb(2, 119, 216);
    }

    #cssmenu ul ul ul li a {
        padding-left: 30px;
    }

    #cssmenu > ul > li > ul > li:last-child > a, #cssmenu > ul > li > ul > li.last > a {
        border-bottom: 0;
    }

    #cssmenu > ul > li > ul > li.open:last-child > a, #cssmenu > ul > li > ul > li.last.open > a {
        border-bottom: 1px solid #32373e;
    }

    #cssmenu > ul > li > ul > li.open:last-child > ul > li:last-child > a {
        border-bottom: 0;
    }

    #cssmenu ul ul li.has-sub > a::after {
        display: block;
        position: absolute;
        content: "";
        width: 5px;
        height: 5px;
        right: 20px;
        z-index: 10;
        top: 11.5px;
        border-top: 2px solid #eeeeee;
        border-left: 2px solid #eeeeee;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    #cssmenu ul ul li.active > a::after, #cssmenu ul ul li.open > a::after, #cssmenu ul ul li > a:hover::after {
        border-color: rgb(255,255,255);
    }

    .inner a.logo {
        margin: 30px auto;
    }

    .caption {
        width: 100%;
        position: absolute;
        bottom: 0;
        left: 0;
        margin: 0;
        padding: 20px;
    }

    .caption h2 {
        font: 500 25px/33px Montserrat, Arial, Helvetica, sans-serif;
    }

    .caption h2 br {
        display: none;
    }

    [role="main"] ul.fadingtestimonials li {
        list-style: none;
    }

    [role="main"] ul.fadingtestimonials li p {
        margin: 20px 0;
    }

    [role="main"] ul.fadingtestimonials li h5 {
        margin: 0;
    }

    #fullwidthslider img, [role="main"] h1.onethird, .threecolumns div, .twocolumns div, .onecolumn li {
        width: 100%;
    }

    [role="main"] .threecolumns div h1 {
        margin-bottom: 20px;
    }

    [role="main"] .threecolumns div h1,
    [role="main"] .threecolumns div p {
        width: 100%;
        padding: 0;
    }

    [role="main"] .onethird, [role="main"] .twothirds, [role="main"] .reverseonethird, [role="main"] .reversetwothirds {
        width: 100%;
        float: left;
    }

    li.reversetwothirds h2 {
        margin: 20px 0 10px;
    }

    [role="main"] .threecolumns div ul {
        width: 90%;
        padding: 0 5% 30px 0;
    }

    [role="main"] .threecolumns div ul li, article img {
        width: 100%;
    }

    .blogcontent, .blognavigation {
        width: 100%;
        float: left;
    }

    .mapcontent {
        width: 250px;
    }

    [role="main"] .otherservices {
        margin-bottom: 30px;
    }

}

@media screen and (max-width:1279px) {

    .inner .contact {
        width: 100%;
        height: 80px;
        float: right;
        font: 400 15px/28px Montserrat, Arial, Helvetica, sans-serif;
        color: rgb(255,255,255);
        padding-top: 12px;
    }

    .inner .contact a {
        color: #fed966;
    }

    .inner .contact > li {
        width: 70%;
        height: 80px;
        display: inline-block;
        float: left;
        list-style-type: none;
    }

    .inner .contact > li:first-of-type {
        width: 30%;
    }

    .inner .contact > li ul {
        height: 80px;
        margin: 0;
        padding: 0;
        list-style-type: none;
    }

    .ceop-link img {
        width: 90px;
        margin-top: 12px;
    }

    .owl-carousel .owl-item .owl-lazy {
        height: 400px !important;
    }

}

@media screen and (min-width:768px) and (max-width:1279px) {

    body.desktop.home ul.twocolumns li.firstcolumn {
        width: calc(100% - 460px) !important;
    }

    body.desktop.home ul.twocolumns li.secondcolumn {
        width: 460px !important;
    }


    h1.homeheader {
        font: 400 36px/46px Montserrat, Arial, Helvetica, sans-serif;
        top: 20%;
    }

    .inner a.logo {
        font: 400 55px/1.4em "adobe-garamond-pro", Arial, Helvetica, sans-serif;
    }

}

@media screen and (min-width:1024px) {

    ul.onecolumn.curriculum_section li {
        flex: 0 0 23%;
        margin-bottom: 30px;
    }

    svg#logo {
        width: 100%;
        margin: -30px 0 0 -10px;
    }

    .contact {
        text-align: right;
    }

    .contactdetails {
        float: right;
        padding: 0 15px;
        border-bottom-right-radius: 8px;
        border-bottom-left-radius: 8px;
    }

    .curve, .arrow {
        width: 101%;
        height: 100%;
        position: absolute;
        bottom: -2px;
        left: 0;
        z-index: 8;
    }

    .arrow {
        height: 140%;
        background: transparent url('images/arrow.svg') no-repeat bottom right;
        background-size: auto 100%;
        left: auto;
        right: 0;
    }

    ul.onecolumn .main_content {
        width: 65.5%;
        margin-right: 3%;
    }

    ul.onecolumn .side_bar {
        width: 31.5%;
    }

    .textsection {
        padding: 0 0 20px;
        float: left;
    }

    .team_section ul li {
        width: 20%;
    }

    .sliderandtestimonial #smallslider {
        width: 564px;
        height: 292px;
        float: left;
    }

    .caption {
        position: absolute;
        top: auto;
        bottom: 100px;
        left: 23%;
        margin: 0 auto;
        padding: 25px 55px;
        z-index: 9;
        -webkit-box-shadow: 5px 4px 19px -19px #000000;
        box-shadow: 5px 4px 19px -19px #000000;
    }

    .caption h2 {
        font: 500 26px/36px Montserrat, Arial, Helvetica, sans-serif;
    }

    .wrapper.no_slider {
        padding: 45px 0 25px;
        background: rgb(3, 42, 155) url('images/bg_arrow.svg') no-repeat center center;
        background-size: auto 240%;
        overflow: hidden;
    }

    body.parent-information .wrapper, body.parent-pageid-73 .wrapper {
        background-color: rgb(3, 42, 155);
    }

    [role="main"] ul li ul.newsletters {
        width: 100%;
        float: left;
        display: flex;
        justify-content: flex-start;
        flex-direction: row;
        flex-wrap: wrap;
        list-style: none;
    }

    [role="main"] ul li ul.newsletters li {
        flex: 0 0 20%;
        list-style: none;
        background: transparent;
        margin-right: 5%;
        margin-bottom: 20px;
        padding: 0;
    }

    body.home [role="main"] ul li ul.newsletters li {
        flex: 0 0 47%;
        margin-right: 0;
    }

    body.parent-pageid-63 [role="main"] ul li ul.newsletters li {
        flex: 0 0 22%;
        margin-right: 4%;
    }

    body.parent-pageid-63 [role="main"] ul li ul.newsletters li:nth-of-type(4n),
    [role="main"] ul li ul.newsletters li:nth-of-type(4n) {
        margin-right: 0;
    }

    [role="main"] ul li ul.newsletters li p {
        text-align: center;
    }

    [role="main"] ul li ul.newsletters li img {
        width: 100%;
        height: auto;
        margin-bottom: 10px;
        border: 2px solid rgb(6,53,187);
    }

    body.parent-pageid-63 [role="main"] ul li ul.newsletters li a {
        font-size: 13px;
    }

    ul.fadingtestimonials {
        width: 270px;
        height: 292px;
        float: right;
        margin: 0;
        padding: 0;
        position: relative;
        overflow: hidden;
        background: rgb(187,12,79);
    }

    ul.fadingtestimonials li {
        width: 100%;
        list-style-type: none;
        margin: 0;
        padding: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }

    ul.fadingtestimonials li p, ul.fadingtestimonials li h5 {
        width: 100%;
        font: 400 14px/22px Montserrat, Arial, Helvetica, sans-serif;
        font-style: italic;
        color: rgb(255,255,255);
        float: left;
        text-align: left;
        margin: 0;
        padding: 0 20px;
    }

    ul.fadingtestimonials li h5 {
        padding: 8px 20px 0;
    }

    .blocks {
        width: 32%;
        margin: 0 2% 18px 0;
    }

    .blocks:nth-of-type(3n+1) {
        margin: 0 0 18px;
    }

    .mapcontent {
        width: 270px;
    }

    [role="information"] {
        padding: 0 0 20px;
    }

}

@media screen and (max-width:1280px) {

    body.desktop .headersection .inner {
        height: 140px;
    }

    body.mobile header, body.mobile .headersection {
        height: auto;
    }

    [role="navigation"] ul li {
        font: 500 16px/50px Montserrat, Arial, Helvetica, sans-serif;
        float: left;
    }

    body.desktop .inner a.logo {
        font: 400 45px/1em "adobe-garamond-pro", Arial, Helvetica, sans-serif;
        margin: 0;
        padding-top: 25px;
    }

    .navigation_wrapper {
        display: none !important;
    }

    #mobilenav {
        display: block !important;
    }

}

@media screen and (min-width:1280px) {

    .wrapper {
        min-height: calc(100vh - 782px);
    }

    .wrapper.no_slider {
        min-height: calc(100vh - 282px);
    }

    .team_section ul li.team_member {
        min-height: 330px;
    }

    .governors .team_section ul li.team_member,
    .teaching_assistants .team_section ul li.team_member {
        min-height: 100px;
    }

    .inner a.logo {
        width: 45%;
        float: left;
        font: 400 38px/80px "adobe-garamond-pro", Arial, Helvetica, sans-serif;
    }

    .inner .contact {
        width: 55%;
        height: 80px;
        float: right;
        font: 500 17px/28px Montserrat, Arial, Helvetica, sans-serif;
    }

    .inner .contact a {
        color: #fed966;
    }

    .inner .contact > li {
        width: 50%;
        height: 80px;
        display: inline-block;
        float: left;
        list-style-type: none;
    }

    .inner .contact > li ul {
        height: 80px;
        margin: 0;
        padding: 12px 0 0;
        list-style-type: none;
    }

    .ceop-link img {
        width: 100px;
        margin-top: 23px;
    }

    .caption {
        transform: skew(-30deg,180deg);
    }

    .caption h2 {
        transform: skew(38deg,180deg)
    }

}

@media screen and (max-width:1439px) {

    .inner, [role="main"] {
        width: 100%;
        padding: 0 18px;
    }

}

@media screen and (min-width:1440px) {

    .inner {
        width: 1100px;
        display: flex;
    }

    [role="main"], footer .inner {
        width: 1100px;
        display: block;
    }

}

@media screen and (min-width:1920px) {

    .owl-carousel .owl-item .owl-lazy {
        height: 500px !important;
    }

    body.home .owl-carousel .owl-item .owl-lazy {
        height: 700px !important;
    }

    .caption {
        left: 28%;
    }

}

@media screen and (max-width: 500px) {

    .caption {
        top: 20px;
        bottom: unset;
    }

    body.home #fullwidthslider .caption h1 {
        font: 300 26px / 34px "Roboto", sans-serif;
    }

    body.home #fullwidthslider .caption h1, body.home #fullwidthslider .caption h2 {
        margin: 0 !important;
    }

    body.home #fullwidthslider, .owl-carousel .owl-item .owl-lazy  {
        height: 680px !important;
    }

    .slider-background {
        min-height: 100vh !important;
    }

    body.home #fullwidthslider .caption ul {
        padding: 15px 0 0 15px !important;
    }

}