/*
 * Augment Lighthouse CSS
 * @Author Students' Union UCL
 *
 * A little historical background for the unfortunate soul reading this file. This theme (Lighthouse) was
 * created by an external design agency in a rush and with little to no respect for the Drupal theming
 * standards. It suffers from all sorts of issues ranging from violating the coding style conventions to
 * incomplete templates and excessive calculations in template.php. At some point, all of this will need
 * to be reviewed and refactored. For now, we created this CSS sheet (augment_lh.css) to fix things
 * that are visually broken by overridding the default Lighthouse CSS, sometimes using !important.
 *
 * At some point, this file will need to be merged into the main CSS sheet, taking care of any contradictions
 * between the two.
 */

.cleaner {
    clear: both;
}

/* Landing page specific CSS */
.section.node-specific-landing_page {
    margin-top: 10rem;
    background-color: rgba(254, 195, 64, 0.08);
}

/* Change links */
a.impact-link {
    background-color: transparent;
    border: none;
}

a.impact-link:hover {
    border: none;
}

/* Correct form images */
.article form img {
    height: 60px;
    width: 60px;
    float: left;
    clear: both;
}

.article form table img {
    height: auto;
    width: auto;
    float: none;
}

/* Correct social images */
a.suucl_social_icons,
a.suucl_social_icons img {
    text-decoration: none;
    height: 30px;
    width: 30px;
    border-bottom: none !important;
    background: none !important;
    margin-top: 10px;
}

/* Fix image overlay split in two */
.banner .banner-profile__side {
    left: 0;
    display: inline-block;
    width: calc(((100vw - 1250px) / 2) + 1px);
    height: 100%;
    background-color: #2aaa9e;
    mix-blend-mode: multiply;
    float: left;
}

.banner .banner-profile__shape {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding-top: 0;
    float: left;
}

/* Hide drop down arrows on top menu elements without children */
.nav__level-1-no-dropdown:after {
    border-top: none !important;
}

/* Fix content CSS */
.user-post-data {
    margin: 0 0 20px 0;
    height: 110px;
}

.user-post-picture {
    float: left;
}

.user-post-picture .user-picture img {
    height: auto;
    width: 95px;
}

.user-submission-data {
    float: right;
}

li.uclu-auth-option::before {
    content: none !important;
}

/* Fix flag links */

.flag-link-normal {
    border: 2px solid #52317d !important;
    color: #ffffff;
    padding: 0.7rem 1.6rem;
    font-size: 0.9rem;
    font-weight: 600;
    display: inline-block;
    background-color: #52317d !important;
}

.flag-wrapper {
    text-align: center;
    display: block;
    margin: 10px;
}

/* One-off opportunity registration confirmation */
div.uclu-vsu-onscreen-message {
    border: solid 5px #fec340;
    padding: 20px;
    font-weight: bold;
}

/* Fix mollom refresh captcha image blocking verification code*/
.mollom-refresh-captcha.mollom-refresh-image img {
    width: 25px;
    height: 25px;
    margin-top: 10px;
}

/* Style the "Students are only allowed to use Restricted HTML" warning message */
.uclu-html-format-warning {
    background: 5px center no-repeat;
    padding: 10px 5px 10px 40px;
    margin: 10px;
    border: solid 3px #aaaaaa !important;
}

/* Shopping cart (button in the header) 
.shopping-cart {
    margin-right: 0px;
    background: url(../img/cart.png) right 0px no-repeat;
    height: 27px;
}*/

.shopping-cart-counter {
    display: inline-block;
    position: absolute;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    border-radius: 10px;
    background: #082244;
    text-align: center;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
}

/* Landing page without events or news blocks */
.landing_news_events_stripped {
    /* margin: 0 0 0 0;*/
}

/* Home page with re-aligned blocks */
.panel-pane.pane-views.pane-news {
    padding-top: 200px;
}

.panel-pane.pane-views.pane-officers {
    margin-top: -200px;
}

.panel-pane.pane-views.pane-upcoming-events {
    margin-top: 260px;
}

.panel-panel #block-uclu-lighthouse-uclu-lighthouse-impact-front {
    max-width: 1250px;
    margin: -160px auto 0 auto;
}

#block-uclu-lighthouse-uclu-lighthouse-impact-front .impact-block__container {
    margin: 10px auto;
    overflow: hidden;
}

.impact-front-green {
    background-color: #2aaa9e !important;
}

.impact-front-green::before {
    content: url(../svg/single/impact-u-green.svg) !important;
}

.impact-front-purple {
    background-color: #6c3f99 !important;
}

.impact-front-purple::before {
    content: url(../svg/single/impact-u-purple.svg) !important;
}

.impact-front-orange {
    background-color: #f26640 !important;
}

.impact-front-orange::before {
    content: url(../svg/single/impact-u-orange.svg) !important;
}

.impact-front-yellow {
    background-color: #FBB61E !important;
}

.impact-front-yellow::before {
    content: url(../svg/single/impact-u-yellow.svg) !important;
}

.impact-front-yellow .article-heading {
    background-color: #082244 !important;
    color: #fff !important;
}

.impact-front-yellow .impact-block__text {
    color: #fff !important;
}

.impact-front-yellow .more-button:hover,
.more-button:focus {
    border: 2px solid #082244;
    color: #082244;
}

.impact-front-yellow .more-button:hover:after,
.more-button:focus:after {
    width: 0;
    height: 0;
    border-bottom: 6px solid #082244;
    border-left: 6px solid transparent;
}

.impact-front a {
    background: transparent;
}

.impact-front a:hover,
.impact-front a:focus {
    background: transparent;
}

/* Alter burger menu to left side of screen*/
.mobile-menu svg.icon--svg {
    width: 1.5rem;
    height: 1.5rem;
}

button.mobile-menu {
    float: left;
}

/* Fix krumo-footnote images */
.krumo-footnote img {
    height: 20px !important;
    width: 20px !important;
}

.nav__user__button>p {
    display: none;
}

/* User log in / log out button in the header */
@media screen and (min-width: 960px) {
    .nav__user__button {
        border: solid 2px transparent;
        border-radius: 2px;
        padding: 5px 10px 5px 10px !important;
        width: auto;

    }

    .nav__user__button:hover {
        border: solid 2px #f26640;
    }

    .nav__user__button>p {
        font-size: 0.7rem;
        font-weight: 600;
        color: #ce4321;
        float: right;
        line-height: 1.8;
        display: block !important;
        margin-bottom: -7px;
        padding-left: 10px;
        text-transform: uppercase;

    }
}

/* Events calendar: invert colors when at least one option is enabled */
.whats-on-inverted>div:not(.highlight) {
    background-color: #b8bec5 !important;
    background-position: right -162px;
}

/* Fix collapsible fieldsets from overflowing onto each other */
html.js fieldset.collapsed {
    height: 50px !important;
}

/* Style Apache Solr Span */
span.search_direction {
    font-size: 0.5rem;
    float: right;
    padding: 0 25px 0 0;
    font-weight: 500;
    text-transform: capitalize;
}

/* Style VSU teasers */
.blog_posted_by {
    float: right;
    font-size: 0.8rem;
}

.grid_padding {
    margin: 10px 0 0 0 !important;
}

.teaser_content_article .content {
    padding: 0rem 0 2rem 0 !important;
    min-height: 195px;
}

/* Automatically scale images on nodes */
.article img {
    max-width: 95%;
    /* !important removed due to other overrides, hopefully this still defaults;*/
}

/* Fix tags */
a.autocomplete-deluxe-item-delete:empty {
    visibility: visible;
    background-repeat: no-repeat;
}

/* Highlight hyperlinks on individual basis */
.node-type-list a {
    color: #2aaa9e;
}

.content p a {
    color: #f26640;
}

.view-header a,
dt a {
    color: #F26640;
}

.view-header a:hover,
dt a:hover {
    text-decoration: underline;
}

dd {
    /* font-size: 0.7rem !important;*/
    margin-bottom: 10px !important;
}

.aside-block a:not([class]) {
    color: #f26620;
}

div[id^=election] a,
.messages a {
    color: #F26640;
}

div[id^=election] a:hover,
.messages a:hover {
    text-decoration: underline;
}

.form-actions a {
    color: #f26640;
    display: inline-block;
    margin: 20px;
}

/* Breadcrumbs */
.lighthouse-breadcrumbs {
    text-align: center;
    height: 25px;
    margin: 30px 0px 10px 0px;
}

.lighthouse-breadcrumbs>a {
    display: inline-block;
    height: 25px;
    padding: 1px 30px 0px 50px;
    color: #f26640;
    background: url(../svg/breadcrumb-triangle.svg) no-repeat;
}

.lighthouse-breadcrumbs>a:first-child {
    background-image: url(../svg/breadcrumb-circle.svg);
}

.lighthouse-breadcrumbs>a:hover {
    text-decoration: underline;
}

/* Fix secondary tabs */

ul.secondary li {
    display: inline-block;
    margin-bottom: 20px;
}

/* Wrap content in tables to prevent screen overflow */
tr.odd .form-item,
tr.even .form-item {
    white-space: normal !important;
}

/* Gray out readonly elements */
input[readonly] {
    background: #cccccc;
}

/* Jobshop block */
.jobshop-block-field_job_type,
.jobshop-block-field_deadline {
    font-size: 80%;
    float: left;
    width: 50%;
    margin: 5px 0px 5px 0px;
}

/* Products in the shop with access codes */
.events .form-item-shop-secret-key input {
    width: 90%;
}

.events .form-item-shop-secret-key label {
    font-size: 80%;
    text-align: left;
    margin-left: 10px;
}

.events .form-item-shop-secret-key {
    text-align: center;
}

.events .form-item-shop-secret-key-lock {
    width: 60px;
    height: 60px;
    position: absolute;
    left: 100%;
    top: 0px;
    margin-left: -110px;
    background-image: url(/sites/all/themes/lighthouse/svg/padlock.svg);
    background-size: 60px 60px;
}

.node .form-item-shop-secret-key {
    border: solid #f26640;
    border-width: 3px 80px 3px 3px;
    color: #f26640;
    padding: 10px;
    background: right no-repeat;
    background-size: 60px 60px;
    background-clip: border-box;
    position: relative;
}

.node .form-item-shop-secret-key label {
    position: absolute;
    width: calc(100% + 60px);
    height: 100%;
    z-index: 1;
    background: url(/sites/all/themes/lighthouse/svg/padlock.svg) no-repeat right 5px;
    background-size: 60px 60px;
}

.node .form-item-shop-secret-key input {
    margin-top: 35px;
    position: relative;
    z-index: 2;
}

/* Fix Shop header disappearing behind shop items with negative margins */
.search-index__results-container div.clubs.events {
    margin-top: 3rem;
    margin-bottom: 0rem;
}

.search-index__results-container {
    margin-bottom: 3rem;
}

/* Auxiliary fields on shop items (such as membership type for gym memberships or event date for tickets) */
.shop-auxiliary-fields {
    position: absolute;
    top: 0px;
    left: 0px;
}

.shop-auxiliary-fields div {
    background: #2aaa9e;
    color: #ffffff;
    margin: 3px;
    padding: 1px;
}

/* Images for the volunteering organisations directory */
.volunteering-organisations-logo>img {
    float: right;
    width: 150px;
    height: 150px;
    margin: 5px;
}

/* Quizzes */
#quiz-view-table td {
    padding: 1rem;
    margin: 0;
}

.quiz-score-icon img {
    width: auto !important;
}

.quiz_score_possible,
.quiz_score_percent {
    font-size: 1.3em;
    margin-bottom: 0.5em;
}

.quiz-start-link {
    display: inline-block;
    /* other styles shared with buttons elsewhere / below */
}

/* --- Election vote buttons --- */
.election-vote-button {
    position: static;
    float: right;
    display: none;
}

.quiz-start-link,
.election-vote-button a {
    color: #52317d !important;
    border: 2px solid #52317d !important;
    padding: 0.5em 0.8em;
    background-color: #ffffff !important;
    font-size: 0.9rem;
    font-weight: 600;
}

.quiz-start-link:hover,
.election-vote-button a:hover {
    background-color: #52317d !important;
    color: #ffffff !important;
}

.election-vote-button-footer {
    margin-top: 20px !important;
    margin-bottom: 100px !important;
}

/* Election candidates */

.election-candidate .news-block {
    border-bottom: 2px solid rgb(99, 76, 166);
}

.election-candidate .news-block::after {
    border-bottom: 7px solid rgb(99, 76, 166);
}

.election-candidate .news-block .highlight {
    background: #ffffff;
    box-shadow: 10px 0 0 #ffffff, -10px 0 0 #ffffff;
}

.election-candidate a {
    font-weight: 700;
}

.election-candidate h3 {
    margin-left: 15px;
}

/* Voting ballot */
#election-vote-form #edit-buttons input {
    display: block;
    float: left;
    margin: 5px;
}

#election-vote-form #edit-buttons input.vote_button {
    float: right;
    background-color: #52317d;
    color: #ffffff;
    cursor: pointer;
}

#election-vote-form>div {
    max-width: 850px;
}

#block-views-candidates-on-ballots-block {
    clear: both;
}

.election-ballot-paper {
    border: 0 !important;
}

.election-ballot-paper legend span {
    font-size: 2rem !important;
    background-color: rgb(55, 178, 160) !important;
    color: #ffffff;
    padding: 15px !important;
    margin: 30px 0;
}

/* No underlines and backgrounds for title links */
h2>a {
    background-color: transparent !important;
    padding-bottom: 15px;
}

.post-header-nav {
    background: #082244;
}

/* Post-header menu */
.region-header-second {
    background: #e9e9e9;
    border-bottom: solid 2px #d2d2d2;
}

ul.post-header-nav {
    background: transparent;
    padding: 0px 0px 1rem 0px;
    display: flex;
    justify-content: left;
    margin: 0px auto 0px auto;
    max-width: 1250px;
    flex-wrap: wrap;
}

ul.post-header-nav li {
    flex-basis: calc(33.33% - 20px);
    margin: 1rem 10px 0 10px;
    padding: 0.4rem;
    position: relative;
    background-color: #ffffff;
    border-bottom: 2px solid #f26640;
    text-align: left;
    transition: 0.3s ease;
    webkit-clip-path: polygon(10px 0,
            100% 0,
            100% 0,
            100% 100%,
            100% 100%,
            0 100%,
            0 100%,
            0 10px);
    clip-path: polygon(10px 0,
            100% 0,
            100% 0,
            100% 100%,
            100% 100%,
            0 100%,
            0 100%,
            0 10px);
    font-weight: 600;
    font-size: 0.9rem;
}

@media screen and (max-width: 755px) {
    ul.post-header-nav li {
        flex-basis: calc(50% - 20px);
    }
}

ul.post-header-nav li a {
    display: block;
    color: #082244;
}

ul.post-header-nav li:hover a {
    color: #ffffff;
}

ul.post-header-nav li:hover {
    background: #f26640;
}

/* Ads */
.block-delta-advertising-block .aside-block__container {
    padding: 0 0 75% 0;
    width: 100%;
    height: 0;
    border-bottom: 0;
}

.block-delta-advertising-block .aside-block__container img {
    display: block;
    height: 100%;
    width: 100%;
}

/* Additional spacing between inline fields on nodes */
.content .field-label-inline {
    margin: 5px 0px 5px 0px;
}

.content .field-label-above {
    margin: 10px 0px 30px 0px;
}

.content .field-label-inline.field-name-field-event-series {
    margin-bottom: 30px;
}

/* Fix <a><img /></a> */
a.article_linked_image {
    padding: 0 !important;
    border: none !important;
    background: none !important;
}

/* Student-led projects */
#block-uclu-vsu-slp-uclu-slp-manager-info,
#block-uclu-vsu-slp-uclu-slp-manager-info a {
    font-size: 0.7rem;
}

#block-uclu-vsu-slp-uclu-slp-manager-info {
    margin: 30px 10px 10px 10px;
    background: #fffbd9;
    border: solid 1px #ffebc5;
    padding: 10px;
}

#block-uclu-vsu-slp-uclu-slp-manager-info h2 {
    background: none;
    margin: 5px 0px 5px 0px;
}

#block-uclu-vsu-slp-uclu-slp-manager-info h2>a {
    border-bottom: none;
}

/* Prevent node teasers from overflowing their containers */
.node {
    overflow: hidden;
}

/* Twitter */
.tweets-pulled-listing li {
    margin-top: 30px;
}

/* Colored stock */
.colored-stock {
    background: 5px center no-repeat;
    padding: 10px 5px 10px 5px;
    text-align: center;
    font-weight: 600;
}

.colored-stock-orange {
    background-color: rgb(254, 195, 64);
}

.colored-stock-red {
    background-color: rgb(210, 82, 82);
    color: #ffffff;
}

.colored-stock-green {
    background-color: rgb(136, 179, 75);
    color: #ffffff;
}

/* Fix election  */
.election-post h2 a {
    background: none;
    border-bottom: none;
    color: #ffffff;
}

.election-post h2 a:hover,
.election-post h2 a:focus {
    background: none;
    border-bottom: none;
}

.election-post h2 {
    margin-bottom: 0.5rem !important;
    background-color: #2aaa9e !important;
    padding: 5px;
    display: inline-block;
}

.election-vote-button a:link,
.election-vote-button a:visited {
    color: #52317D !important;
    background-color: #FFFFFF !important;
    border-bottom: 2px solid #52317D !important;
}

.election-vote-button a:hover,
.election-vote-button a:focus {
    color: #FFFFFF !important;
    background-color: #52317D !important;
    border-bottom: 2px solid #52317D !important;
}

.election-posts a {
    background-color: #ffffff;
    text-decoration: none;
    border-bottom: none !important;
}

.election-candidate h3 a {
    background-color: #ffffff !important;
    border-bottom: none;
}

.election-candidate h3 a:hover,
.election-candidate h3 a:focus {
    background-color: #FFFFFF !important;
    border-bottom: none !important;
}

.election-posts>h2 {
    padding: 0.4rem 0.8rem;
    margin-bottom: 2rem;
    margin-top: 3rem;
    display: inline-block;
    background-color: #fec340;
    font-size: 1.3rem;
}

.election-nominate-link {
    float: right;
    margin: 5px 10px 2rem 5px;
}

.view-id-club_or_society_elections .election-nominate-link:hover {
    background: #52317d;
}

.election-nominate-link a {
    padding: 0.7rem 1.6rem;
    font-size: 0.9rem;
    font-weight: 600;
    display: inline-block;
    color: #52317d !important;
    border: 2px solid #52317d !important;
    background-color: #ffffff;
    text-decoration: none !important;
}

.election-nominate-link a:hover {
    background-color: #52317d;
    color: #ffffff !important;
}

#edit-election-rules a {
    color: #f26640;
}

/* Carousel slide links */
.slide a {
    color: #6c3f99;
}

/* Right sidebar menu */
.region-sidebar-first .menu-block-wrapper>.menu .hitarea {
    float: right;
    height: 15px;
    width: 15px;
    background: url(../img/expand.png) 0px 0px;
    cursor: pointer;
    margin: 2px 10px 0px 0px;
}

.region-sidebar-first .menu-block-wrapper>.menu .collapsable>.hitarea {
    background-position: 0px 15px;
}

.region-sidebar-first .menu-block-wrapper>.menu .aside-block__accordion-button:hover>a {
    color: #FFFFFF;
}

.region-sidebar-first .menu-block-wrapper>.menu .aside-block__accordion-button>a {
    color: rgb(8, 34, 68);
}

.region-sidebar-first .menu-block-wrapper>.menu .aside-block__accordion-button {
    margin-left: 0px;
    padding-right: 0px;
}

.region-sidebar-first .menu-block-wrapper>.menu .aside-block__accordion-button.collapsable {
    background: linear-gradient(to bottom,
            rgb(242, 102, 64) 0px,
            rgb(242, 102, 64) 34px,
            rgb(255, 255, 255) 34px);
}

.region-sidebar-first .menu-block-wrapper>.menu .aside-block__accordion-button.collapsable>a {
    color: #ffffff !important;
}

.region-sidebar-first .menu-block-wrapper>.menu .aside-block__accordion-button .link-button {
    border-bottom: none !important;
}

.region-sidebar-first .menu-block-wrapper>.menu .link-button:after {
    content: none;
}

/* Scaling mode for HTML5 videos */
video {
    object-fit: cover;
}

/* Fieldsets */
fieldset {
    border: solid 1px #082244 !important;
    border-bottom-width: 2px !important;
    padding: 10px !important;
}

fieldset.horizontal-tabs-pane {
    border: none !important;
    border-radius: 0px;
}

/* Right sidebar "Add to cart" form */
.block-delta-uclu_lighthouse_add_to_cart h2 {
    display: none;
}

.block-delta-uclu_lighthouse_add_to_cart .aside-block__container {
    /*background: #ffffff;
    border: none;
    padding: 3px;*/
}

.block-delta-uclu_lighthouse_add_to_cart .field-name-commerce-price .field-item {
    font-size: 2.5rem;
    font-weight: 600;
}

.block-delta-uclu_lighthouse_add_to_cart select {
    width: 100%;
}

/* Right sidebar "Event information" block */

.block-delta-uclu_lighthouse_event_info h2 {
    display: none;
}

.block-delta-uclu_lighthouse_event_info h3 {
    background: #f26640;
    color: #ffffff;
}

.block-delta-uclu_lighthouse_event_info .aside-block__container {
    border-top-color: #f26640;
}

/* Reduce headers on clubs and societies */
.backround-image-club_or_society .banner__title {
    margin-top: 0px;
    margin-bottom: 0px;
}

.backround-image-club_or_society .banner__sub-title {
    margin-bottom: 0px;
}

/* Events (content type) */

.node-event:not(.node-teaser) .field-name-field-event-dates .u_date {
    display: block;
    font-weight: 600;
    font-size: 1.3rem;
}

.node-event:not(.node-teaser) .field-name-field-event-dates .u_time {
    display: block;
    font-size: 1.3rem;
}

.content .node-event:not(.node-teaser) .field-name-field-venue a {
    border: none !important;
    background: transparent;
    margin: 10px 0px 20px 0px;
    display: block;
    padding: 0;
    font-size: 2rem;
    line-height: 2rem;
}

.field-name-field-event-dates {
    margin: 0 0 20px 0;
}

.node-event:not(.node-teaser):not(.node-teaser) .field-name-field-event-series,
.node-event:not(.node-teaser) .field-name-field-club-society,
.node-event:not(.node-teaser) .field-name-field-whats-on-category {
    display: inline-block;
    font-weight: 600;
    color: #ffffff;
    margin: 3px 10px 30px 3px;
    padding: 4px;
}

.node-event:not(.node-teaser) .field-name-field-event-series {
    background: #2aaa9e;
}

.node-event:not(.node-teaser) .field-name-field-club-society {
    background: #f26640;
}

.node-event:not(.node-teaser) .field-name-field-whats-on-category {
    background: #082244;
}

.node-event:not(.node-teaser) .field-name-field-event-series a,
.node-event:not(.node-teaser) .field-name-field-club-society a,
.node-event:not(.node-teaser) .field-name-field-whats-on-category a {
    border-bottom: none !important;
}

.node-event:not(.node-teaser) .date-display-single span {
    display: inline-block !important;
}

.node-event:not(.node-teaser) .date-display-single>span.u_date {
    display: block !important;
}

/* Hide UL markers on interest registration buttons */
li.flag-one_off_interests:before {
    content: none !important;
}

/* User picture on blogs */
.profile .user-picture {
    float: none;
}

.node .user-picture {
    width: 100px;
    float: left;
    margin: 5px;
}

#block-uclu-lighthouse-uclu-lighthouse-officer-projects .aside-block__container {
    background-color: transparent;
}

/* Agenda meetings */
.view-meeting-agenda h2 {
    margin: 0px !important;
    width: 100%;
}

.view-meeting-agenda td {
    padding: 0px;
}

.view-meeting-agenda td div:not(.views-field-field-agenda-category) {
    margin: 10px;
}

.file-icon {
    margin: 0px !important;
}

.view-meeting-agenda table tr:not(:first-child) h2 {
    display: none !important;
}

.view-meeting-agenda .views-field-counter {
    float: left;
    font-size: 1.3rem;
    font-weight: 600;
}

.view-meeting-agenda .view-content>h3 {
    display: none;
}

/* Inline searchbar */
.searchbar {
    display: none;
    width: calc(100% - 65px);
    height: calc(27px + 0.8rem);
    margin: auto;
    padding: 0px 115px 0px 15px;
    border: none;
    border-bottom: solid 4px #f26640;
    position: absolute;
    color: #f26640;
    font-size: 30px;
    left: 32px;
    top: 0px;
}

.search-return {
    position: absolute;
    font-weight: 600;
    font-size: 0.8rem;
    text-align: center;
    clip-path: polygon(0rem 0,
            calc(100% - 0.7rem) 0,
            100% 0.7rem,
            100% calc(100% - 0rem),
            calc(100% - 0rem) 100%,
            0.7rem 100%,
            0 calc(100% - 0.7rem),
            0 0rem);
    color: #ffffff;
    background: #f26640;
    width: 100px;
    height: 42px;
    border: 0px;
    padding: 0px;
    margin: -17px 0 0px -132px;
    left: 100%;
    top: 50%;
    cursor: pointer;
    display: none;
}

#search_button {
    cursor: pointer;
}

/* Make searchbar full length */
.search-form>div .form-wrapper .form-item {
    display: inline-block;
    width: unset !important;
    margin: 0;
}

/* Remove checkbox */
.form-item.form-type-checkbox.form-item-retain-filters .form-checkbox {
    display: none !important;
    margin: 0;
    vertical-align: unset;
}

/* Bulleted lists */
.field-type-text-with-summary ul>li {
    padding-bottom: 0px;
    margin-left: 20px;
}

.field-type-text-with-summary ul>li>p {
    padding-bottom: 0.6rem;
}

/* Blog teasers */
.node-teaser .user-picture {
    display: none;
}

.node-teaser .blog_posted_by {
    float: none;
}

/* Self-definition warning for elections */
#election-vote-form .uclu-html-format-warning {
    line-height: 2rem;
    font-weight: 600;
    padding-left: 70px;
}

/* Highlight available appointments in green for the appointments booking system */
.uclu-appointment-slot-links a {
    color: #f26640;
}

table .available-appointment td {
    background: #2aaa9e;
    color: #ffffff;
    border-color: #ffffff;
    padding: 20px 7px 7px 7px;
}

table .available-appointment li {
    float: right;
}

table .available-appointment td:hover {
    background: #6c3f99;
}

table .available-appointment a {
    display: block;
    border: solid 1px #ffffff !important;
    padding: 7px;
    color: #ffffff !important;
}

table .available-appointment .last a {
    border-right: none !important;
}

table .available-appointment a:hover {
    text-decoration: overline;
}

/* Calendar pager */
.view.view-uclu-appointments .date-nav ul li {
    background: none;
}

.view.view-uclu-appointments .date-nav ul li a {
    font-size: 1.5rem;
}

.view.view-uclu-appointments .date-nav,
.view.view-uclu-appointments .search-index__filter,
.view.view-upcoming-events .search-index__top {
    margin: 0px;
    padding: 0px;
}

.view.view-uclu-appointments .date-nav ul li:first-child {
    left: 0px;
    right: auto;
}

.view.view-uclu-appointments .search-index__results {
    width: 100%;
}

/* Blog labels on news teasers */
.news-blog-label {
    width: 75px;
    height: 75px;
    text-align: center;
    position: absolute;
    margin-left: -37.5px;
    margin-top: -37.5px;
    top: 100%;
    left: 100%;
    background: rgba(242, 102, 64, 0.8);
    font-weight: 600;
    color: #ffffff;
    transform: rotate(-45deg);
    font-size: 0.6rem;
}

.news-blog-label-container {
    width: 106.066017px;
    /* = 150 / sqrt(2)*/
    height: 106.066017px;
    position: absolute;
    left: 100%;
    top: 100%;
    margin: -106.066017px 0px 0px -106.066017px;
    overflow: hidden;
}

a.news-block:hover .news-blog-label {
    background: rgba(242, 102, 64, 1);
}

/* Voices of our Union */
.uclu-voices-map {
    position: fixed;
    left: 0;
    top: 150px;
    width: 100%;
    height: calc(100% - 150px);
    z-index: 1;
}

.uclu-voices-map .openlayers.gmap-map>div>div>div>div>div:not(.ol-overlaycontainer-stopevent)>div:not(.content)>div {
    filter: grayscale(100%) brightness(31%) sepia(100%) hue-rotate(-226deg) saturate(571%) contrast(3.8);
}

.uclu-voices-map .ol-popup {
    border-radius: 0px;
    border-bottom: solid 2px #000000;
    width: 200px;
}

.ol-popup-closer {
    display: none;
}

.ol-popup-closer:after {
    content: "X" !important;
}

.uclu-voices-map #block-delta-blocks-messages .content {
    position: absolute;
    left: 0;
    top: 100px;
    width: 100%;
    z-index: 5;
}

.uclu-voices-header {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 2;
    width: 100%;
    overflow: hidden;
}

.uclu-voices-h1 {
    background: #082244;
    position: fixed;
    z-index: 4;
    font-size: 2.2rem;
    left: 90px;
    color: #ffffff;
    padding: 0.4rem;
    top: 130px;
    font-family: "freight-sans-pro";
    line-height: 2.2rem;
}

.uclu-voices-h2 {
    line-height: 0.9rem;
    position: fixed;
    z-index: 4;
    font-size: 0.9rem;
    left: 100px;
    top: 98px;
    margin-top: 100px;
    padding: 0.4rem;
    font-style: italic;
    color: #ffffff;
    font-family: "freight-macro-pro";
}

.uclu-voices-second-h2 {
    top: 125px;
}

.uclu-voices-play {
    float: left;
    width: 32px;
    height: 32px;
    background: url(../../../modules/uclu/features/uclu_map/icons/play.png) 0px 0px;
    cursor: pointer;
}

.uclu-voices-gif {
    width: 65px;
    margin: 0 0px 0px 5px;
    float: left;
    height: 32px;
    display: none;
}

.uclu-voices-map .ol-popup-content a {
    display: none;
}

.uclu-voices-map .ol-popup-content {
    font-family: freight-sans-pro;
    border-radius: 56px 56px 8px 8px;
}

.uclu-voices-map .ol-popup {
    width: 223px;
    height: 223px;
    border-radius: 111.5px;
    background: transparent url(../../../modules/uclu/features/uclu_map/icons/popup-bg.png);
    top: -258px;
    left: -111.5px;
    border: none;
}

.uclu-voices-map .ol-popup:before,
.uclu-voices-map .ol-popup:after {
    content: none !important;
}

.uclu-voices-map .ol-popup .ol-popup-trace {
    position: absolute;
    left: 110.5px;
    top: 211px;
    width: 0px;
    height: 38px;
    background-position: -110px -223px;
    border: #ffffff 1px dashed;
}

.uclu-voices-map .ol-popup .ol-popup-marker {
    position: relative;
    width: 20.8px;
    height: 20.8px;
    border-radius: 12px;
    left: 86.4px;
    top: 89px;
    background-image: url(/sites/all/modules/uclu/features/uclu_map/icons/4.png);
    background-size: 20.8px 20.8px;
}

.uclu-voices-buttons {
    white-space: nowrap;
    position: fixed;
    z-index: 4;
    left: 100px;
    top: 265px;
    height: 0px;
    width: 0px;
}

.uclu-voices-buttons a {
    display: inline-block;
    height: 50px;
    font-weight: 600;
    color: #ffffff;
    border: 2px #ffffff solid;
    border-image: initial;
    padding: 0px 13px;
    margin: 5px;
    font-size: 21px;
    font-family: "freight-sans-pro";
    line-height: 40px;
}

.uclu-voices-buttons a:hover {
    background: #ffffff;
    color: #2aaa9e;
}

.uclu-voices-ribbon {
    transform: rotate(-45deg);
    width: 423px;
    height: 83px;
    position: fixed;
    z-index: 4;
    left: 100%;
    top: 100%;
    margin-top: -123px;
    background-image: url(/sites/all/modules/uclu/features/uclu_map/icons/ribbon.png);
    margin-left: -294px;
}

.uclu-voices-facebook a {
    white-space: nowrap;
    position: fixed;
    z-index: 4;
    left: 326px;
    top: 270px;
    height: 50px;
    width: 44px;
    background: url(/sites/all/themes/lighthouse/img/voices_social.png) 50px 0;
}

.uclu-voices-facebook a:hover {
    background-position: 50px 50px;
    transition: unset;
}

.uclu-voices-twitter a {
    white-space: nowrap;
    position: fixed;
    z-index: 4;
    left: 382px;
    top: 270px;
    height: 50px;
    width: 44px;
    background: url(/sites/all/themes/lighthouse/img/voices_social.png) 0 0;
}

.uclu-voices-twitter a:hover {
    background-position: 100px 50px;
    transition: unset;
}

.uclu-voices-name {
    height: 34px;
    position: relative;
    font-family: freight-macro-pro;
    font-size: 20px;
    color: #ffffff;
    font-style: italic;
    font-weight: 700;
    text-align: center;
    margin-top: 3px;
    top: 6px;
}

.uclu-voices-degree {
    height: 15px;
    color: #ffffff;
    position: relative;
    font-style: italic;
    font-size: 10px;
    font-family: freight-macro-pro;
    text-align: center;
    margin-top: -3px;
    font-weight: 600;
    width: 150px;
    margin-left: auto;
    margin-right: auto;
    line-height: 10px;
}

.uclu-voices-quote {
    display: table-cell;
    vertical-align: middle;
    height: 79px;
    text-align: center;
    font-weight: 600;
    font-size: 10px;
    width: 173px;
    padding: 1rem 0 0 1rem;
}

.uclu-voices-audio {
    margin-left: 39px;
    margin-top: 16px;
}

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

    .uclu-voices-h1,
    .uclu-voices-h2,
    .uclu-voices-buttons,
    .uclu-voices-facebook a,
    .uclu-voices-twitter a {
        left: 0;
        width: 100%;
        text-align: center;
        top: 70px;
    }

    .uclu-voices-h2 {
        top: 20px;
        left: 0;
        width: 100%;
        text-align: center;
    }

    .uclu-voices-second-h2 {
        top: 98px;
    }

    .uclu-voices-buttons {
        top: unset;
        left: unset;
        position: fixed;
        z-index: 1;
        bottom: 20px;
        height: 40px;
        right: 70px;
        line-height: 21px;
        font-size: 21px;
    }

    .uclu-voices-facebook a {
        top: unset;
        position: fixed;
        z-index: 4;
        bottom: 5px;
        height: 50px;
        width: 50px;
        left: 50%;
        margin: 0 45px;
    }

    .uclu-voices-twitter a {
        top: unset;
        position: fixed;
        z-index: 4;
        bottom: 5px;
        height: 50px;
        width: 50px;
        left: 50%;
        margin: 0 100px;
    }

    .uclu-voices-ribbon {
        width: 211.5px;
        height: 40.5px;
        margin-top: -61.5px;
        margin-left: -147px;
        background-size: 100%;
    }
}

/* Do not display the social media buttons for screen widths less than 505px*/
@media screen and (max-width: 505px) {
    .uclu-voices-facebook a {
        display: none;
    }

    .uclu-voices-twitter a {
        display: none;
    }
}

/* IE doesn't support CSS filters, so make it at least a bit darker */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
    .uclu-voices-map canvas.ol-unselectable {
        background: rgba(0, 0, 0, 0.5);
    }
}

/* Overlay to initialize the map */
.uclu-voices-overlay {
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 100;
    background: #082244;
}

.uclu-voices-map .ol-overlaycontainer-stopevent {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 5;
}

.uclu-voices-map .gm-style-cc,
.uclu-voices-map .gmnoprint,
.uclu-voices-map .gm-style a[href^="https://maps.google.com/maps"] {
    display: none !important;
}

/* &&&&&&&& What's on calendar &&&&&&&&&&&& */

/* 
.view-upcoming-events.view-display-id-full_calendar
    .views-exposed-widget
    input[type="text"] {
    position: absolute;
    width: calc((100% - 0.5rem) / 3);
    margin-top: -60px;
    border: solid 1px #9a9a9a;
    border-bottom: solid 3px #f26640;
    padding: 0px 5px 0px 5px;
    height: 40px;
    font-size: 1.2rem;
} */

/* .view-upcoming-events.view-display-id-full_calendar
    .views-exposed-form
    #autocomplete {
    top: -10px !important;
} */

/* .view-upcoming-events.view-display-id-full_calendar .section.search-index__top {
    width: 95%;
} */

/* .view-upcoming-events.view-display-id-full_calendar
    .views-exposed-widget
    input[name="title"] {
    left: calc((100% - 0.5rem) / 3 * 0.25);
} */

/* .view-upcoming-events.view-display-id-full_calendar
    .views-exposed-widget
    input[name="name"] {
    left: calc((100% - 0.5rem) / 3 * 1.25);
} */

/* .whats-on-view-modes ul {
    justify-content: flex-end;
} */
/* 
.view-upcoming-events.view-display-id-full_calendar .bef-checkboxes {
    margin-top: 60px;
} */
/* 
.view-upcoming-events.view-display-id-full_calendar .views-exposed-widgets {
    position: relative;
    margin-top: 60px;
} */

.fc-view-agendaDay>div>div {
    height: auto !important;
}

#block-views-upcoming-events-block-4 h2 {
    padding: 0.4rem 0.8rem;
    margin-bottom: 2rem;
    display: inline-block;
    background-color: #fec340;
    font-size: 1.3rem;
    margin-left: 0px;
}

#block-views-upcoming-events-block-4 {
    max-width: 1250px;
    margin: 0px auto 0px auto;
    position: relative;
    /* left: -2.5vw; */
}

/* What's on calendar on small screens */
@media screen and (max-width: 960px) {

    .view-upcoming-events .contextual-links-region,
    .page-whats-on-list .contextual-links-region {
        display: none;
    }

    /* .view-upcoming-events .fc-header-left .fc-button-today {
        display: none;
    } */
    /* 
    .view-upcoming-events .fc-header-right {
        display: none;
    } */
}

@media screen and (max-width: 1340px) {
    #block-views-upcoming-events-block-4 {
        left: 0;
    }
}

/* Jobshop */
.jobshop-vacancy {
    position: relative;
    display: block;
    background-color: #ffffff;
    color: #082244;
    cursor: pointer;
    height: 20rem;
    margin: 1rem 0.2rem 3rem;
    padding: 1rem;
}

.jobshop-container {
    border-bottom: 2px solid #f26640;
    height: 100%;
}

.jobshop-description {
    height: 50%;
}

.jobshop-header {
    background: #fec340;
    line-height: 1.5rem;
    height: 3rem;
    display: table-cell;
    vertical-align: middle;
    width: 20rem;
}

.jobshop-header h2 {
    padding: 0 0.6rem 0 0.6rem;
    width: 19rem;
    font-size: 1.1rem;
    text-overflow: ellipsis;
}

.jobshop-header-clearspace {
    margin: 1rem 0 0 0;
}

.jobshop-readmore {
    background-color: transparent;
    padding: 0.7rem 1.6rem;
    font-size: 0.9rem;
    font-weight: 600;
    display: inline-block;
    color: #52317d;
    border: 2px solid #52317d;
}

.jobshop-readmore:hover {
    border: 2px solid #52317d;
    color: #ffffff;
    background-color: #52317d;
}

.volunteering__type {
    margin-top: 0.1rem;
    margin-bottom: 0.3rem;
    padding-top: 0.4rem;
    padding-right: 0.4rem;
    padding-bottom: 0.4rem;
    padding-left: 0.4rem;
    display: inline-block;
    background-color: #f26640;
    font-size: 0.8rem;
    font-weight: 600;
    color: #FFFFFF;
    position: absolute;
    bottom: 0;
}

.volunteering__oneoff {
    margin-bottom: 3rem;
    padding-top: 1rem;
    padding-right: 1rem;
    padding-bottom: 1rem;
    padding-left: 1rem;
    position: relative;
    display: block;
    background-color: #FFFFFF;
    border-bottom: 2px solid #F26640;
    color: #082244;
    cursor: pointer;
}

.volunteering__oneoff:after {
    width: 0;
    height: 0;
    border-bottom: 7px solid #F26640;
    border-left: 7px solid transparent;
    position: absolute;
    right: 7px;
    bottom: 7px;
    content: " ";
}

.volunteering__oneoff__name {
    display: block;
    max-width: 90%;
    padding-left: 10px;
    line-height: 1.7;
    position: absolute;
    bottom: 58px;
}

.volunteering__details {
    height: 100%;
    width: 100%;
    position: relative;
}

.volunteering__oneoff__logo {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    display: inline-block;
    width: 41px;
    height: 47px;
    float: right;
}

.volunteering__highlight__oneoff {
    padding: 0.1rem 10px;
    line-height: 40px;
    display: inline;
    font-weight: 600;
    color: #FFFFFF;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.volunteering__oneoff_venus {
    background: #6c3f99;
    width: 100%;
    height: 40px;
    margin-top: 1rem;
    font-size: 16px;
}

.view-header {
    margin: 0 0 2em 0;
}

.openlayers-map-container {
    margin: 0 auto !important;
}

.article ol,
.article ul {
    padding-bottom: 1.2rem;
    /* So it doesn't run into following paragraph */
}

h3 {
    padding-bottom: 1.2rem;
    /* So it doesn't run into following paragraph */
}

.nav-level-2 a.h2.partial-fill::after {
    width: 0;
    height: 0;
    border-left: 0.5rem solid #F26640;
    border-top: 0.5rem solid transparent;
    border-bottom: 0.5rem solid transparent;
    display: inline-block;
    content: " ";
}

a.h2.partial-fill:hover {
    color: #F26640;
}

.elections-view-position {
    margin-bottom: 0.5rem !important;
    background-color: #fec340 !important;
    padding: 5px;
    display: inline-block;
}

.election-post-category-sabbatical-officer .election-post h2 {
    background-color: #6c3f99 !important;
}

.election-post-category-student-officer .election-post h2 {
    background-color: #f26640 !important;
}

.election-post-category-student-group .election-post h2 {
    background-color: #082244 !important;
}

/* CKEditor accordion */

.ckeditor-accordion-toggler {
    background: #fec340 !important;
    color: black !important;
    border-width: 0px !important;
    display: inline-block !important;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.ckeditor-accordion-container .article a:hover,
.ckeditor-accordion-container .article a:focus {
    border-width: 0px !important;
    text-decoration: none !important;
}

.ckeditor-accordion-toggle:after {
    background: black !important;
    top: -3px !important;
}

.ckeditor-accordion-toggle:before {
    background: black !important;
    top: -3px !important;
}

a.ckeditor-accordion-toggler,
a.ckeditor-accordion-toggler:hover,
a.ckeditor-accordion-toggler:focus {
    text-decoration: none !important;
}

.ckeditor-accordion-toggler dd {
    padding: 1em;
}

.ckeditor-accordion-container > dl {
    border: none;
}

.image-center img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.image-right img,
img.image-right {
    display: block;
    margin-left: 100%;
    margin-right: auto;
}

.image-right img.float,
img.image-right.float {
    float: right;
}

@media print {

    nav,
    .icon__social,
    .aside,
    footer,
    #back-top,
    #navbar-administration,
    .banner__back-link,
    #block-workbench-block,
    #block-delta-blocks-action-links,
    #block-diff-inline,
    #block-delta-blocks-messages,
    .contextual-links-region {
        display: none !important;
    }

    .ckeditor-accordion-container>dl dd {
        display: block;
    }
}

.filter-guidelines-item {
    display: none !important;
}

.filter-help,
.filter-help p {
    float: none !important;
    padding: 0 !important;
}

fieldset.filter-wrapper {
    border: none !important;
    padding: 0 !important;
}

fieldset.filter-wrapper .form-type-select {
    padding: 0;
    margin-top: 0.5em !important;
    font-size: 0.8em;
}

fieldset.filter-wrapper .form-type-select label {
    font-weight: normal;
    padding-bottom: 0px;
    margin-left: 0.8em;
}

.vertical-tabs-panes fieldset {
    border: none !important;
}

.block#block-diff-inline h2 {
    margin-bottom: 0 !important;
}

.block#block-diff-inline .form-item {
    margin-bottom: 0 !important;
    display: inline-block;
}

.block#block-diff-inline .content {
    display: inline-block;
}

.block#block-diff-inline input {
    display: inline-block;
    padding: 0.3em;
    margin-top: 0.3em;
}

@media screen and (max-width: 1300px) {
    .view-display-id-full_calendar {
        margin: 0 4%;
    }
}

.fc-header td:hover {
    background-color: none !important;
}

.fc-header tr:hover td {
    background: none;
}

.fc-border-separate tr:hover td {
    background: none;
}