/* Calendar CSS */
 .views-exposed-form {
    text-align: center;
    margin: 30px 0 40px;
}
 .views-exposed-form .views-exposed-widget label {
    color: #828282;
    font-size: 13px;
    font-weight: 600;
}
 .views-exposed-form .bef-checkboxes {
    margin: 10px 0 0;
}
 .views-exposed-form .views-exposed-widget .form-item {
    border-left: 0;
    border-radius: 3px;
    color: #fff;
    display: inline-table;
    margin: 0 0 5px;
    padding: 8px 10px 10px;
}
 .views-exposed-form .views-exposed-widget .form-item label {
    color: #fff;
    font-size: 12px;
    font-weight: 400;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-2,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-2:hover {
    background: #ffa500;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-45,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-45:hover {
    background: #808080;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-21,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-21:hover {
    background: #808000;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-18,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-18:hover {
    background: #00008b;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-19,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-19:hover {
    background: #ff0000;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-15,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-15:hover {
    background: #800080;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-24,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-24:hover {
    background: #008000;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-9,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-9:hover {
    background: #a52a2a;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-1,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-1:hover {
    background: #ff00ff;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-16,
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-16:hover {
    background: #00ff00;
}
 .views-exposed-form .views-exposed-widget .form-item-edit-field-event-category-tid-i18n-16 label {
    color: #555;
}

.calendar-choose-type {
    display: inline-block;
    font-size: 13px;
    width: 49.5%;
}
.calendar-choose-type span {
    color: #73818E;
    margin-right: 10px;
}
.calendar-choose-type a {
    color: #8ca5bd;
    margin: 0 10px;
    text-decoration: none;
    transition: all .4s ease;
}
.calendar-choose-type a.active {
    color: #323A41 !important;
}
.calendar-choose-type a:hover {
    color: #555;
    transition: all .4s ease;
}


.calendar-info {
    display: inline-block;
    text-align: right;
    width: 49.5%;
}
.calendar-info p {
    color: #9b9fa2;
    font-size: 12px;
    font-style: italic;
    font-weight: 400;
}
.calendar-info p i {
    color: #909090;
    margin: 0 6px 0 0;
}


.calendar-title {
  background: #f1f1f1;
  border-radius: 3px;
  color: #73818E;
  margin: 0 0 30px;
  padding: 15px;
  text-align: center;
  font-size: 1.5em;
}
.calendar-title a {
  color: #555;
  text-decoration: none;
  transition: all .4s ease;
}

.calendar-title .calendar-prev {
    float: left;
}
.calendar-title .calendar-next {
    float: right;
}
.calendar-title .calendar-next img {
    display: none;
}
.calendar-title .calendar-prev:after {
    content: '\f100';
    font-weight: bold;
    font-family: "Font Awesome 5 Free";
}
.calendar-title .calendar-next:after {
    content: '\f101';
    font-weight: bold;
    font-family: "Font Awesome 5 Free";
}
.calendar-title a:hover {
    color: #6ea8d9;
    transition: all .4s ease;
}


.calendar-events {
    display:-ms-grid; /* Compatibility for IE */
    display: grid;
    -ms-grid-columns: 1fr 0 1fr 0 1fr 0 1fr; /* Compatibility for IE */
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-column-gap: 0;
}
.calendar-column {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    margin-bottom: 80px;
    padding: 0 10px;
    vertical-align: top;
    width: 100%;
}
.calendar-column:nth-child(2n) {
    border-left: 1.5px dashed #dcdcdc;
    border-right: 1.5px dashed #dcdcdc;
}
.calendar-column:nth-child(4n) {
    border-left: 1.5px dashed #dcdcdc;
    border-right: 0;
}
.calendar-column:last-child {
    border-right: 0;
}
.calendar-column h3 {
    color: #73818E;
    font-size: 13px;
    font-weight: 400;
    margin: 0 0 15px;
}
.calendar-column .event-box {
    box-shadow: 0 0 8px #969696;
    margin: 0 0 15px;
    padding: 0 10px 10px;
}
.calendar-column .event-box:last-child {
    margin: 0;
}
.calendar-column .color-humanity {
    border-top: 8px solid #ffa500
}
.calendar-column .color-generic {
    border-top: 8px solid #808080;
}
.calendar-column .color-law {
    border-top: 8px solid #808000;
}
.calendar-column .color-science {
    border-top: 8px solid #00008b;
}
.calendar-column .color-history {
    border-top: 8px solid #ff0000;
}
.calendar-column .color-economics {
    border-top: 8px solid #800080;
}
.calendar-column .color-environment {
    border-top: 8px solid #008000;
}
.calendar-column .color-politics {
    border-top: 8px solid #a52a2a;
}
.calendar-column .color-arts {
    border-top: 8px solid #ff00ff;
}
.calendar-column .color-technology {
    border-top: 8px solid #00ff00;
}
.calendar-column .event-box .provider {
    font-size: 12px;
    margin: 8px 0 10px;
    line-height: 20px;
    height: 40px;
    overflow: hidden;
    display: block;
}
.calendar-column .event-box .provider a {
    color: #585858;
    display: block;
    text-decoration: none;
    transition: all .4s ease;
    height: 40px;
    overflow: hidden;
}
.calendar-column .event-box .provider a:hover {
    color: #6ea8d9;
    transition: all .4s ease;
}
.calendar-column .event-box img {
    height: 120px;
    object-fit: cover;
    width: 100%;
}
.calendar-column .event-box .calendar-has-vod {
    position: relative;
}
.calendar-column .event-box .calendar-has-vod:after {
    background: rgba(24, 24, 24, 0.5);
    border-radius: 50%;
    box-sizing: border-box;
    color: rgba(255, 255, 255, 0.88);
    content: '\f144';
    font-size: 46px;
    font-weight: bold;
    font-family: "Font Awesome 5 Free";
    height: 50px;
    left: 0;
    margin: 32px auto;
    padding: 0px 0px 0px 0px;
    position: absolute;
    right: 0;
    text-align: center;
    width: 50px;
    z-index: auto;
}
.calendar-column .event-box .event-title {
    font-size: 13px;
    font-weight: 400;
    line-height: 20px;
    margin: 5px 0 15px;
    height: 100px;
    display: block;
    overflow: hidden;
}

.calendar-column .event-box .event-title a {
    color: #73818E;
    display: block;
    text-decoration: none;
    transition: all .4s ease;
    height: 100px;
    overflow: hidden;
}
.calendar-column .event-box .event-title a:hover {
    color: #6ea8d9;
    transition: all .4s ease;
}
.calendar-column .event-box .event-time {
    color: #7C7F81;
    font-size: 11.5px;
    margin: 0;
}
.calendar-column .event-box .event-time:before {
    content: '\f017';
    font-weight: 400;
    font-family: "Font Awesome 5 Free";
    margin-right: 8px;
}

/* Day View */
.calendar-choose-type-D {
    grid-template-columns: 1fr;
}
.calendar-choose-type-D .calendar-column h3 {
    display: none;
}
.calendar-choose-type-D .calendar-column .event-box {
    display: inline-block;
    margin: 0 5px 15px;
    vertical-align: top;
    width: 21.4%;
}
@media (min-width: 768px) {
  .views-exposed-form .views-exposed-widget .form-item {
    width: 95%;
  }
  .views-exposed-form .views-exposed-widget .bef-checkboxes .form-item {
    width: 14%;
  }
}

/* General CSS code for Responsive Design */
@media (max-width: 767px) {
    .container {
        width: 100%;
    }
}


/* Responsive Design - Mobile */
@media (max-width: 530px) {
    .calendar-column .event-box:last-child {
      width: 90%;
      box-shadow: 0 0 8px #969696;
      margin: 0 5% 15px 5%;
      padding: 0 0px 10px;
    }

    .calendar-column .event-box .provider {
      margin: 8px 5% 10px 5%;
    }

    .calendar-column .event-box .event-title {
      margin: 5px 5% 15px 5%;
    }

    .calendar-column .event-box .event-time {
      margin: 0 5% 0 5%;
    }

    .calendar-column h3 {
      margin: 0 5% 15px 5%;
    }

    .calendar-events {
        grid-template-columns: 1fr;
    }
    .calendar-column {
        border-bottom: 16px solid #536078;
        margin: 0 0 30px;
        padding: 0 0 30px;
    }
    .calendar-column:nth-child(2n) {
        border-left: 0;
        border-right: 0;
    }
    .calendar-column:nth-child(4n) {
        border-left: 0;
        border-right: 0;
    }
    .calendar-choose-type,
    .calendar-info {
        display: block;
        margin: 0 0 25px;
        text-align: center;
        width: 100%;
    }
    .calendar-choose-type span {
        display: block;
        margin: 0 0 12px;
    }
    .calendar-choose-type a {
        font-size: 15px;
    }
    .calendar-title {
        font-size: 13px;
    }
     .views-exposed-form .views-exposed-widget .form-item {
        width: 90%;
    }
    .views-exposed-form .views-exposed-widget .bef-checkboxes .form-item {
        width: 40%;
        height: 40px;
   }
}

/* Responsive Design - Mobile */
@media (min-width: 531px) and (max-width: 767px) {
    .calendar-events {
        grid-template-columns: 1fr 1fr;
    }
    .calendar-column:nth-child(2n) {
        border-right: 0;
    }
    .calendar-choose-type,
    .calendar-info {
        display: block;
        margin: 0 0 25px;
        text-align: center;
        width: 100%;
    }
    .calendar-choose-type span {
        display: block;
        margin: 0 0 12px;
    }
    .calendar-choose-type a {
        font-size: 15px;
    }
    .calendar-title {
        font-size: 13px;
    }
    .views-exposed-form .views-exposed-widget .form-item {
        width: 90%;
    }
    .views-exposed-form .views-exposed-widget .bef-checkboxes .form-item {
        width: 40%;
        height: 40px;
    }
}

/* Responsive Design - Tablet */
@media (min-width: 768px) and (max-width: 991px) {
    .calendar-events {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .calendar-choose-type,
    .calendar-info {
        display: block;
        margin: 0 0 25px;
        text-align: center;
        width: 100%;
    }
    .calendar-choose-type span {
        display: block;
        margin: 0 0 12px;
    }
    .calendar-choose-type a {
        font-size: 15px;
    }
    .calendar-title {
        font-size: 13px;
    }
     .views-exposed-form .views-exposed-widget .form-item {
        width: 90%;
    }
    .views-exposed-form .views-exposed-widget .bef-checkboxes .form-item {
      width: 20%;
    }
     .views-exposed-form .views-exposed-widget .form-item label {
        font-size: 13px;
    }
}
