html body:not(.submitted)  #dr_header {
    display: none !important;
}

html,
html body,
html body:not(.submitted) #v_content {
    margin-top: 0 !important;
    overflow: auto;
}

/*
html .parent {
    padding-top: 160px;
    padding-bottom: 130px;
}

html .margin-bottom {
    margin-bottom: 30px;
}
*/

html .no-overflow {
    overflow: hidden;
}

/*
Animations
-------------------------------------------------- */

/* Slide Anim ( Titles ) */

.slide-anim {
    position: relative;
    display: inline-block;
    line-height: 1;
}

.slide-anim:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 0%;
    height: 100%;
    background: currentColor;
    z-index: 2;
}

.slide-anim span {
    opacity: 0;
    -webkit-transition: all .8s ease;
    transition: all .8s ease;
}

.slide-anim.in-vp:before,
.in-vp .slide-anim:before {
    animation: mainBlock 1s cubic-bezier(0.74, 0.06, 0.4, 0.92) forwards;
}

.slide-anim.in-vp span,
.in-vp .slide-anim span {
    opacity: 1;
    transition-delay: .8s;
}


/* Slide Up ( Content ) */

.anim-up {
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
    opacity: 0;
    -webkit-transition: all .8s ease;
    transition: all .8s ease;
}

.in-vp .anim-up,
.anim-up.in-vp {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    transition-delay: .4s;
}

/*
BANNER
--------------------------------------------------------------------------------------------- */

/*
Backgrounds & Transitions
-------------------------------------------------- */

#banner {
    opacity: 1;
    overflow: visible;
    height: 700px;
    z-index: 2;
}

#banner .background {
    height: 100vh;
}

#banner .background-overlay {
    background: #6f2c91;
    left: 0;
    width: 55%;
    margin-left: -200px;
    height: 700px;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
}

#banner .background-overlay:after {
    content: '';
    position: absolute;
    top: 0;
    left: 100%;
    border-top: solid 700px #6f2c91;
    border-right: solid 200px transparent;
}

/* Sixth Form */

#banner.sixth-form .background-overlay {
    background: #ad208e;
}

#banner.sixth-form .background-overlay:after {
    border-top-color: #ad208e;
}

/*
Content
-------------------------------------------------- */

#banner .content {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 7.5%;
    width: 37.5%;
}

#banner .content h1 {
    position: relative;
    overflow: hidden;
    display: inline-block;
    line-height: 1;
}

#banner .content span {
    opacity: 0;
    -webkit-transition: all .8s ease;
    transition: all .8s ease;
}

#banner .content h1:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 0%;
    height: 100%;
    background: #fff;
    z-index: 2;
}

#banner .content p {
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    opacity: 0;
    -webkit-transition: all .8s ease;
    transition: all .8s ease;
}

@keyframes mainBlock {
  0% {
    width: 0%;
    left: 0;

  }
  50% {
    width: 100%;
    left: 0;

  }
  100% {
    width: 0;
    left: 100%;
  }
}

/*

.icon-scroll,
.icon-scroll:before {
    position: absolute;
    left: 50%
}

.icon-scroll {
    width: 20px;
    height: 33px;
    border: 1px solid #fff;
    border-radius: 25px;
    position: absolute;
    top: 0;
    left: 0;
}
@media ( max-width: 767px ) {
    .icon-scroll {
        position: relative
    }
}
.icon-scroll:before {
    content: '';
    width: 6px;
    height: 6px;
    background: #fff;
    margin-left: -3px;
    top: 6px;
    border-radius: 4px;
    animation-duration: 1.5s;
    animation-iteration-count: infinite;
    animation-name: scroll
}
@keyframes scroll {
    0% {
        opacity: 1
    }
    100% {
        opacity: 0;
        transform: translateY(12px)
    }
}

/*
Animation
-------------------------------------------------- */

#banner.begin .banner-wrap {
    height: 700px !important;
}

#banner.begin .background-overlay {
    margin-left: 0;
    -webkit-transform: translateX(-0%);
    transform: translateX(-0%);
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
}

#banner.begin .background {
    -webkit-transform: translateX(16%);
    transform: translateX(16%);
    -webkit-transition: all 1.s ease-in-out;
    transition: all 1s ease-in-out;
}

#banner.begin .content > *:before {
    animation: mainBlock 2s cubic-bezier(0.74, 0.06, 0.4, 0.92) forwards;
}

#banner.begin .content span {
    opacity: 1;
}

#banner.begin .content h1:before {
    animation-delay: .2s;
}

#banner.begin .content h1 span {
    transition-delay: 1.8s;
}

#banner.begin .content p {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    transition-delay: 1.8s;
}

/*
LAPTOP STUFF
--------------------------------------------------------------------------------------------- */

.w50 {
    width: 50%;
}

/*
Content
-------------------------------------------------- */

.laptop-half .content {
    position: relative;
    top: 60px;
    opacity: 0;
    width: 860px;
    margin: 0 auto;
    max-width: 100%;
    padding: 60px;
    background: #fff;
}

.laptop-half .laptop-behind {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

.laptop-half .laptop-behind.initial-vp.in-vp,
.laptop-half .content.initial-vp.in-vp {
    transition-delay: 2.5s;
}

.laptop-half .laptop-behind.in-vp {
    opacity: .5;
}

.laptop-half .content.in-vp {
    top: 0;
    opacity: 1
}

/*
Laptop
-------------------------------------------------- */

.laptop-half .laptop {
    opacity: 0;
    -webkit-transform: translateX(22%);
    transform: translateX(22%);
    -webkit-transition: all 1.2s ease-out;
    transition: all 1.2s ease-out;
}

.laptop-half .laptop.initial-vp.in-vp {
    transition-delay: 2.5s;
}

.laptop-half .laptop.in-vp {
    opacity: 1;
    -webkit-transform: translateX(9%);
    transform: translateX(9%);
}

/* Content Bigger */

/*.laptop-half.laptop-absolute .laptop {
    position: absolute;
    height: 80%;
    top: 10%;
}*/

@media ( max-width: 1550px ) {
    .laptop-half .laptop {
        position: absolute;
        height: calc(100% - 30px);
        top: 0;
    }
    
    .laptop-half .content {
        margin-left: 60px;
    }
}

/*
COVID-19
-------------------------------------------------- */

.covid-19 {
    top: 60px;
    opacity: 0;
    padding: 50px 40px;
}

.covid-19:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0,0,0,.3);
}

.covid-19 .content {
    width: 60%;
}

.covid-19.in-vp {
    opacity: 1;
    top: 0;
}

/*
TWO WEEKS FREE
--------------------------------------------------------------------------------------------- */

.two-week-cta {
    padding: 70px 0;
}

.two-week-cta:before {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    border-top: solid 70px #efefef;
    border-right: solid 100vw transparent;
    z-index: 10;
    pointer-events: none;
}

.two-week-cta:after {
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    border-bottom: solid 70px #fff;
    border-left: solid 100vw transparent;
    z-index: 10;
    pointer-events: none;
}

.two-week-cta .parent:before {
    content: '';
    position: absolute;
    top: 0;
    right: 25%;
    bottom: 0;
    left: 0;
    background: #000000;
    background: -moz-linear-gradient(left, #000000 0%, rgba( 0, 0, 0, 0 ) 100%);
    background: -webkit-linear-gradient(left, #000000 0%, rgba( 0, 0, 0, 0 ) 100%);
    background: linear-gradient(to right, #000000 0%, rgba( 0, 0, 0, 0 ) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='transparent',GradientType=1 );
    z-index: 2;
}

/*
DATES
--------------------------------------------------------------------------------------------- */

.open-day-calendar-item {
    position: relative;
    width: 25%;
    padding: 60px;
    cursor: pointer;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
    margin-bottom: 30px;
}

.open-day-calendar-item:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    z-index: 2;
}

/*
Icon
-------------------------------------------------- */

.open-day-calendar-item svg {
    display: block;
    height: 60px;
    width: auto;
    margin: 0 auto 30px;
}

/*
Text
-------------------------------------------------- */

.open-day-calendar-item .date {
    margin-bottom: 10px;
}

.open-day-calendar-item .time {
    font-family: 'Montserrat', sans-serif
}

.open-day-calendar-item .continue {
    position: relative;
    padding-top: 30px;
    text-transform: uppercase;
    font-size: 14px;
}

.open-day-calendar-item .continue:before {
    content: '';
    position: absolute;
    left: 50%;
    width: 80px;
    margin-left: -40px;
    height: 2px;
    background: #fff;
    top: 15px;
}

/*
Triangles
-------------------------------------------------- */

.open-day-calendar-item .t {
    position: absolute;
    top: 0;
    border-left: solid 20px transparent;
    border-top: solid 339px;
    z-index: 10;
    pointer-events: none;
    border-top-color: #ad208e !important;
    border-bottom-color: #ad208e !important;
}

.open-day-calendar-item .t-left {
    right: 100%;
    border-bottom: none !important;
}

.open-day-calendar-item .t-right {
    left: 100%;
    border-bottom: solid 339px;
    border-top: none !important;
    border-left: none;
    border-right: solid 20px transparent;
}

/*
Colours
-------------------------------------------------- */

.open-day-calendar-item,
.open-day-calendar-item:nth-child(1) {
    background: #0081c9;
}

.open-day-calendar-item:nth-child(2) {
    background: #ad208e;
}

.open-day-calendar-item:nth-child(3) {
    background: #a6ce39;
}

.open-day-calendar-item:nth-child(3) .t-right {
    border-bottom-color: #a6ce39 !important;
}

.open-day-calendar-item:nth-child(4) {
    background: #6f2c91;
}

@media ( max-width: 991px ) {
    
    .open-day-calendar-item .t {
        display: none;
    }
    
}

/*
STUDENT TESTIMONIALS
--------------------------------------------------------------------------------------------- */

.student-testimonials {
    position: relative;
    background: #00ada5;
}

/*
Video Toggles
-------------------------------------------------- */

.video-toggles_OD {
    position: relative;
    width: 20%;
    overflow: hidden;
}

.video-toggles_OD .video-title {
    position: absolute;
    height: 33.333%;
    width: 100%;
    cursor: pointer;
    overflow: hidden;
}

.video-toggles_OD .video-title:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0,0,0,.3);
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.video-toggles_OD .video-title:nth-child(2) {
    position: absolute;
    top: 33.333%;
}

.video-toggles_OD .video-title:nth-child(3) {
    position: absolute;
    top: 66.666%;
}

/* Name */

.video-toggles_OD .name {
    position: absolute;
    bottom: 30px;
    left: 0;
    color: #fff;
    background: #00ada5;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    padding: 2px 12px;
}

.video-toggles_OD .active .name {
    -webkit-transform: translateX(-0%);
    transform: translateX(-0%);
}

/* Play Icon */

.video-toggles_OD .play-icon {
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.video-toggles_OD .play-icon svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 60px;
    height: 60px;
    margin: -30px 0 0 -30px;
    padding: 10px;
    color: #fff;
    border-radius: 50%;
    border: solid 1px #fff;
}

.video-toggles_OD .active:before,
.video-toggles_OD .active .play-icon {
    opacity: 0;
    visibility: hidden;
}

/*
Video Items
-------------------------------------------------- */

.video-items {
    width: 80%;
}

.video-items .toggle-play-video {
    cursor: pointer;
    z-index: 2
}

.video-items .play-video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 120px;
    height: 120px;
    margin: -60px 0 0 -60px;
    background: rgba(0, 173, 165, .8);
    color: #fff;
    border-radius: 50%;
    z-index: 2;
    cursor: pointer;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.video-items .play-video:before {
    content: '';
    position: absolute;
    top: -8px;
    right: -8px;
    bottom: -8px;
    left: -8px;
    border: solid 2px rgba(0, 173, 165, 1);
    border-radius: 50%;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.video-items .play-video svg {
    display: block;
    width: 120px;
    height: 120px;
    padding: 40px;
    margin: auto;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.video-items iframe {
    display: block;
    width: 100%;
    height: auto;
    outline: none !important;
}

.video-items .toggle-play-video:hover .play-video {
    width: 100px;
    height: 100px;
    margin: -50px 0 0 -50px;
}

.video-items .toggle-play-video:hover .play-video:before {
    top: -23px;
    right: -23px;
    bottom: -23px;
    left: -23px;
}

.video-items .toggle-play-video:hover .play-video svg {
    width: 100px;
    height: 100px;
    padding: 30px;
}

.video-items .toggle-play-video.playing .play-video {
    -webkit-transform: scale(0);
    transform: scale(0);
}

.video-items .toggle-play-video.playing {
    visibility: hidden;
    transition-delay: .6s;
}

/*
GALLERY
--------------------------------------------------------------------------------------------- */

.gallery .sticky-h2-wrap {
    width: 40%;
    text-align: center;
    float: left;
}

.gallery h2 {
    display: inline-block;
    position: -webkit-sticky;
    position: sticky;
    top: 60px;
}

.gallery .button {
    margin: 0 auto;
}

.gallery h2 span {
    position: relative;
}

.gallery h2 span:after {
    content: '';
    position: absolute;
    bottom: -6px;
    height: 6px;
    width: 0;
    left: 0;
    border-radius: 12px;
    background: #fff;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
    transition-delay: .4s;
}

.gallery h2.in-vp span:after {
    width: 100%;
}

/*
Gallery Items
-------------------------------------------------- */

.gallery-items {
    width: 60%;
    float: right;
    padding-right: 60px;
}

.g-item {
    clear: both;
}

.g-item:nth-child(2) {
    float: right;
    margin-top: 50px;
    margin-bottom: -50px;
}

.g-item:nth-child(3) {
    width: 55%;
}

.g-item:nth-child(4) {
    clear: none;
    width: 32%;
    float: right;
}

.g-item:nth-child(4) img {
    margin-top: -100%;
}

.g-item:nth-child(5) {
    float: right;
    margin-bottom: 50px;
}

.g-item:nth-child(6) {
    width: 40%
}

.g-item:nth-child(7) {
    width: 50%;
    float: right;
    clear: none;
}

.g-item:nth-child(7) img {
    margin-top: -50%;
}

/*
LEARN MORE ITEMS
--------------------------------------------------------------------------------------------- */

.learn-more a {
    display: block;
    height: 60vh;
}

.learn-more a:before {
    content: '';
    position: absolute;
    opacity: .3;
    background: #ad208e;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.learn-more a.second:before {
    background: #36bba5;
}

.learn-more a.third:before {
    background: #a6ce39;
}

.learn-more a:hover:before {
    opacity: .6;
}

.learn-more .content {
    position: absolute;
    top: 50%;
    left: 50%;
    white-space: nowrap;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.learn-more .content:after {
    content: '';
    position: absolute;
    top: -6px;
    right: -20px;
    bottom: -6px;
    left: -20px;
    border: solid 2px #fff;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
}

.learn-more a:hover .content:after {
    top: -12px;
    right: -30px;
    bottom: -12px;
    left: -30px;
}

/*
FINAL CONTACT
--------------------------------------------------------------------------------------------- */

.final-contact {
    background: #0081c9;
    background: -moz-linear-gradient(-45deg, #0081c9 0%, #00426b 100%);
    background: -webkit-linear-gradient(-45deg, #0081c9 0%,#00426b 100%);
    background: linear-gradient(135deg, #0081c9 0%,#00426b 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0081c9', endColorstr='#00426b',GradientType=1 );
}

.final-contact label {
    color: #fff !important;
}

.classes input {
    position: absolute;
    opacity: 0;
}

.classes label {
    display: block;
    cursor: pointer;
}

.classes .v-checked {
    visibility: hidden;
}

.classes input:checked ~ .v-checked {
    width: 100%;
    visibility: visible;
    background: rgba(255,255,255,.6);
    z-index: 10;
}

.classes input:checked ~ .v-checked svg {
    font-size: 30px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #0081c9;
    width: 60px;
    height: 60px;
    padding: 15px;
    color: #fff;
    text-align: center;
    border-radius: 50%;
}

.classes .margin-bottom {
    width: 20%;
    padding: 0 15px;
    float: left;
}

.classes span.class-name {
    display: block;
    text-align: center;
    font-size: 14px;
    background: #fff;
    color: #0081c9;
    padding: 6px 0;
}

/*
RESPONSIVE
--------------------------------------------------------------------------------------------- */

@media ( max-width: 1400px ) {
    #banner {
        height: auto;
        padding-top: 0;
    }
}

@media ( min-width: 1101px ) {
    .laptop-half {
        width: 100% !important;
    }
}

.classes.is-mobile {
    overflow: scroll;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

.classes.is-mobile::-webkit-scrollbar {
    display: none;
}

.classes.is-mobile .classes-inner {
    width: 150%;
}

.classes.is-mobile .classes-inner > div {
    width: 20%;
}

@media ( max-width: 1100px ) {
    
    /*
    Laptop Half */
    
    .laptop-half {
        display: block;
    }
    
    .laptop-half .laptop.initial-vp.in-vp {
        transition-delay: 1s;
    }
    
    .laptop-half > div {
        width: 100%;
        margin-bottom: 0;
    }
    
    .laptop-half .laptop {
        width: 800px;
        max-width: 100%;
        position: relative !important;
        height: auto !important;
        top: 0 !important;
        margin-bottom: 60px;
        -webkit-transform: translateY(60px);
        transform: translateY(60px);
    }
    
    .laptop-half .laptop.in-vp {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    
    .laptop-img-half {
        text-align: center;
    }
    
    .laptop-half .content {
        margin-left: 0;
        width: 100%;
    }
    
    /*
    Two Weeks CTA */
    
    .two-week-cta .col-md-6 {
        width: 75%;
    }
    
    /*
    Learn More */
    
    .learn-more a {
        height: 40vh;
    }
    
    #contactWrap .expando .col-md-6 {
        width: 100%;
    }
    
}

@media ( max-width: 991px ) {
    
    .open-day-calendar-item {
        width: 100% !important;
        margin-bottom: 0;
    }
    
    /*
    Testimonials */
    
    .video-toggles_OD {
        padding-top: 20%;
        width: 100%;
        margin-bottom: 20px;
    }
    
    .video-toggles_OD .video-title {
        width: 30%;
        height: 100%;
        top: 0;
    }
    
    .video-toggles_OD .video-title:nth-child(2) {
        left: 35%;
        top: 0;
    }
    
    .video-toggles_OD .video-title:nth-child(3) {
        left: 70%;
        top: 0;
    }
    
    .video-items {
        width: 100%;
    }
    
    /*
    Gallery */
    
    .gallery .sticky-h2-wrap {
        width: 100%;
    }
    
    .gallery .sticky-h2 {
        position: relative !important;
        top: 0 !important;
    }
    
    .gallery-items {
        width: 100%;
        margin-top: 80px;
        padding: 0 60px;
    }
    
    /*
    Learn More */
    
    .learn-more a {
        height: auto;
        padding-top: 40%;
    }
    
}

@media ( max-width: 767px ) {
    
    html.remove-extras .parent {
        padding-top: 100px;
        padding-bottom: 70px;
    }
    
    /*
    Banner */
    
    #banner {
        overflow: hidden;
    }
    
    #banner.begin .banner-wrap {
        height: auto !important;
    }
    
    #banner .background {
        position: relative;
        height: 300px !important;
        -webkit-transform: none !important;
        transform: none !important;
    }
    
    #banner .content {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        -webkit-transform: none;
        transform: none;
        padding: 60px 30px;
        background: #ad208e;
    }
    
    #banner .background-overlay {
        top: 300px;
        width: 100%;
    }
    
    /*
    Laptop */
    
    .laptop-half .content {
        padding: 0;
        background: none;
    }
    
    .covid-19 {
        padding: 30px;
    }
    
    .covid-19 .content {
        width: 100%;
    }
    
    /*
    Two Weeks */
    
    .two-week-cta .col-md-6 {
        width: 100%;
    }
    
    /*
    Open Days */
    
    .current-open-days .flex {
        display: block;
    }
    
    .open-day-calendar-item .t {
        display: none;
    }
    
    /*
    Open Days */
    
    .video-toggles_OD .name {
        display: none;
    }
    
    .video-toggles_OD .play-icon svg {
        width: 40px;
        height: 40px;
        margin: -20px 0 0 -20px;
        padding: 5px;
    }
    
    .video-items .play-video {
        width: 80px;
        height: 80px;
        margin: -40px 0 0 -40px;
    }
    
    .video-items .play-video svg {
        width: 80px;
        height: 80px;
        padding: 20px;
    }
    
    /*
    Gallery */
    
    .gallery-items {
        margin-top: 0;
        padding: 0 15px;
    }
    
    /*
    Classes */
    
    .classes.is-mobile .classes-inner {
        width: 300%;
    }
    
}