.select2-container--default {
  width: 100%;
}
.select2-container--default .select2-selection--single {
  background: #ffffff;
  border: 1px solid #4d4d4f;
  border-radius: 2px;
  box-shadow: none;
  color: #4d4d4f;
  font-size: 16px;
  line-height: 36px;
  min-height: 36px;
  padding: 0 15px;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #4d4d4f;
}
.select2-container--default .select2-selection--single .select2-selection__clear {
  color: #00aeef;
  float: none;
  font-size: 20px;
  position: absolute;
  right: 36px;
  top: 3px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  right: 10px;
  width: 14px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
  background: none !important;
  border: none;
  color: #00aeef;
  font-family: 'SB-Icons';
  font-size: 12px;
  left: 0;
  margin-left: 0;
  margin-top: 0;
  position: static;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b:before {
  content: '\e946';
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  height: 100%;
  line-height: 33px;
  padding: 0;
}
.select2-container--default .select2-search--inline .select2-search__field {
  margin-top: 8px;
}
.select2-container--default .select2-search--inline .select2-search__field::-webkit-input-placeholder {
  color: #4d4d4f;
}
.select2-container--default .select2-search--inline .select2-search__field::-moz-placeholder {
  color: #4d4d4f;
}
.select2-container--default .select2-search--inline .select2-search__field:-ms-input-placeholder {
  color: #4d4d4f;
}
.select2-container--default .select2-search--inline .select2-search__field::placeholder {
  color: #4d4d4f;
}
.select2-container--default .select2-results__option {
  color: #4d4d4f;
  font: normal 16px/24px 'Lato';
  margin-bottom: 0;
  padding: 8px 15px;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: rgba(0, 174, 239, 0.3);
  color: #4d4d4f;
}
.select2-container--default .select2-results__option--highlighted[aria-selected=true], .select2-container--default .select2-results__option[aria-selected=true] {
  background-color: rgba(0, 174, 239, 0.3);
}
.select2-container--default .select2-selection--multiple {
  border: 1px solid #4d4d4f;
  border-radius: 2px;
  max-width: 250px;
  min-height: 36px;
}
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
  background: #ffffff;
  border-radius: 2px;
  box-shadow: none;
  font-size: 16px;
  line-height: 33px;
  overflow: visible;
  padding: 0 0 0 15px;
  text-overflow: initial;
  white-space: normal;
}
.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
  margin-bottom: 0;
}
.select2-container--default .select2-selection--multiple .select2-selection__rendered .select2-selection__choice {
  background: #00aeef;
  border: 0;
  color: #ffffff;
  min-height: 22px;
  padding-right: 15px;
  position: relative;
}
.select2-container--default .select2-selection--multiple .select2-selection__rendered .select2-selection__choice .select2-selection__choice__remove {
  color: #ffffff;
  font-size: 16px;
  position: absolute;
  right: 1px;
  top: -5px;
}
.select2-container--default.select2-container--disabled .select2-selection--single, .select2-container--default.select2-container--disabled .select2-selection--multiple, .select2-container--default.select2-container--disabled .select2-selection__rendered {
  background: #f6f6f6;
}

.truncate-overflow {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-height: calc(1.5rem * 2);
  overflow: hidden;
  padding-right: 1rem;
  position: relative;
}
.truncate-overflow::before {
  content: '';
  bottom: 0;
  right: 0;
  position: absolute;
}
.truncate-overflow::after {
  background: #ffffff;
  content: '';
  height: 1rem;
  right: 0;
  position: absolute;
  width: 1rem;
}
@supports (-webkit-line-clamp: 2) {
  .truncate-overflow::before, .truncate-overflow::after {
    content: none;
  }
}

/* generic search form based on the style guide */
.search-form {
  -ms-flex-align: end;
      align-items: flex-end;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  margin-bottom: 30px;
  position: relative;
}
.search-form .search-location {
  position: absolute;
  font-size: 20px;
  height: 100%;
  line-height: 36px;
  width: 22px;
}
.search-form .search-location:hover {
  text-decoration: none;
}
.search-form .search-input-container {
  padding-right: 54px;
  -ms-flex-order: 1;
      order: 1;
  position: relative;
  width: 100%;
}
.search-form .search-input-container .search-input {
  border: 0;
  border-bottom: 1px solid #00aeef;
  border-radius: 0;
  color: #4d4d4f;
  font-size: 26px;
  font-weight: 300;
  height: 36px;
  margin-bottom: 0;
}
.search-form .search-input-container .search-input:focus {
  outline: 0;
}
.search-form .search-input-container .search-input::-webkit-input-placeholder {
  color: #bcbec0;
}
.search-form .search-input-container .search-input::-moz-placeholder {
  color: #bcbec0;
}
.search-form .search-input-container .search-input:-ms-input-placeholder {
  color: #bcbec0;
}
.search-form .search-input-container .search-input::placeholder {
  color: #bcbec0;
}
.search-form .search-input-container.with-location .search-input {
  padding: 0 0 0 38px;
}
.search-form .search-input-container .search-cancel {
  position: absolute;
  right: 54px;
  top: 8px;
}
.search-form .search-input-container .search-cancel:hover {
  text-decoration: none;
}
.search-form .search-btn-container {
  right: 0;
  top: -10px;
  position: absolute;
  z-index: 100;
}
.search-form .search-btn-container .btn-search {
  -webkit-appearance: none;
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-align: center;
      align-items: center;
  background: #00aeef;
  border: 0;
  border-radius: 8px;
  color: #ffffff;
  cursor: pointer;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  height: 46px;
  width: 46px;
}
.search-form .search-btn-container .btn-search:hover {
  background: #0093c6;
}
.search-form .search-btn-container .btn-search.disabled {
  background: #bcbec0;
  cursor: default;
}
.search-form .search-btn-container .btn-search.disabled:hover {
  background: #bcbec0;
}
.search-form .search-btn-container .btn-search .icon-search {
  font-size: 21px;
}

#MediaSearchForm .search-form .search-input-container .search-cancel, #SearchMain .search-form .search-input-container .search-cancel {
  right: 60px;
}

h1 .media-search-header {
  display: none;
}

#SearchMain.media-list-page #mediaFiltersContainer {
  display: none !important;
}
#SearchMain.media-list-page .media-list-page-title {
  margin-bottom: 32px;
  font-size: 38px;
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: 0.66px;
  text-transform: capitalize;
}
#SearchMain.media-list-page .search-controls {
  margin: 0 0 32px;
}
#SearchMain.media-list-page .tabs .ui-tabs-nav {
  display: none;
}
#SearchMain.media-list-page .tabs .tabsContent {
  border: none;
  padding: 0 0 15px;
}
#SearchMain.media-list-page .tabs .tabsContent .ministry-tab h3 {
  display: none;
}
#SearchMain.media-list-page .fourColumnMediaThumbs .thumbContainer {
  width: 50%;
}
#SearchMain.media-list-page .hide-more-btn {
  display: none;
}

@media screen and (min-width: 768px) {
  .search-form {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .search-form .search-input-container {
    margin-bottom: 0;
    -ms-flex-order: 2;
        order: 2;
    padding: 0 7.5px 0 0;
  }
  .search-form .search-input-container .search-location {
    line-height: 60px;
  }
  .search-form .search-input-container .search-input {
    font-size: 32px;
    height: 60px;
  }
  .search-form .search-input-container .search-cancel {
    right: 9px;
    top: 25px;
  }
  .search-form .search-btn-container {
    -ms-flex-order: 3;
        order: 3;
    padding: 0 0 0 7.5px;
    position: static;
  }
  .search-form .search-btn-container .btn-search {
    height: 60px;
    width: 60px;
  }
  .search-form .search-filters {
    -ms-flex-order: 4;
        order: 4;
  }

  #MediaSearchForm .search-form .search-input-container .search-cancel, #SearchMain .search-form .search-input-container .search-cancel {
    right: 15px;
  }

  #SearchMain.media-list-page .media-list-page-title {
    margin-bottom: 60px;
    font-size: 72px;
    line-height: 1.06;
    letter-spacing: 1px;
  }
  #SearchMain.media-list-page .search-controls {
    margin: 0 0 60px;
  }
  #SearchMain.media-list-page .fourColumnMediaThumbs .thumbContainer {
    width: 33.33333333333%;
  }
}
@media screen and (min-width: 1024px) {
  #SearchMain.media-list-page .fourColumnMediaThumbs .thumbContainer {
    width: 25%;
  }
}
.datepicker {
  color: #4d4d4f;
  font: normal 16px/24px 'Lato', 'Arial';
  width: 280px;
}

.datepicker--pointer {
  display: none;
}

.datepicker--nav {
  background: #00aeef;
}

.datepicker--nav-title {
  color: #ffffff;
  font-weight: 900;
}
.datepicker--nav-title i {
  color: #ffffff;
}
.datepicker--nav-title:hover {
  background: #0093c6;
}

.datepicker--nav-action:hover {
  background: #0093c6;
}
.datepicker--nav-action svg path {
  stroke: #ffffff;
}

.datepicker--day-name {
  color: #4d4d4f;
  font-weight: 900;
  text-transform: none;
}

.datepicker--cell {
  border-radius: 50%;
  height: 38px;
}

.datepicker--cell.-focus-, .datepicker--cell.-selected- {
  background: #00aeef;
  color: #ffffff;
}

.datepicker--cell.-selected- {
  background: #00aeef;
}

.datepicker--cell.-range-from- {
  border-radius: 50% 0 0 50%;
}

.datepicker--cell.-range-to- {
  border-radius: 0 50% 50% 0;
}

.datepicker--cell.-in-range- {
  background: #6DCFF6;
  color: #4d4d4f;
}

/* loading icon */
.sk-folding-cube {
  background: #6DCFF6;
  margin: 22px auto;
  width: 40px;
  height: 40px;
  position: relative;
  -webkit-transform: rotateZ(45deg);
  transform: rotateZ(45deg);
}

.sk-folding-cube .sk-cube {
  float: left;
  width: 50%;
  height: 50%;
  position: relative;
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.sk-folding-cube .sk-cube:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #00aeef;
  -webkit-animation: sk-foldCubeAngle 2.4s infinite linear both;
  animation: sk-foldCubeAngle 2.4s infinite linear both;
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.sk-folding-cube .sk-cube2 {
  -webkit-transform: scale(1.1) rotateZ(90deg);
  transform: scale(1.1) rotateZ(90deg);
}

.sk-folding-cube .sk-cube3 {
  -webkit-transform: scale(1.1) rotateZ(180deg);
  transform: scale(1.1) rotateZ(180deg);
}

.sk-folding-cube .sk-cube4 {
  -webkit-transform: scale(1.1) rotateZ(270deg);
  transform: scale(1.1) rotateZ(270deg);
}

.sk-folding-cube .sk-cube2:before {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.sk-folding-cube .sk-cube3:before {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

.sk-folding-cube .sk-cube4:before {
  -webkit-animation-delay: 0.9s;
  animation-delay: 0.9s;
}

@-webkit-keyframes sk-foldCubeAngle {
  0%, 10% {
    -webkit-transform: perspective(140px) rotateX(-180deg);
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0;
  }
  25%, 75% {
    -webkit-transform: perspective(140px) rotateX(0deg);
    transform: perspective(140px) rotateX(0deg);
    opacity: 1;
  }
  90%, 100% {
    -webkit-transform: perspective(140px) rotateY(180deg);
    transform: perspective(140px) rotateY(180deg);
    opacity: 0;
  }
}
@keyframes sk-foldCubeAngle {
  0%, 10% {
    -webkit-transform: perspective(140px) rotateX(-180deg);
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0;
  }
  25%, 75% {
    -webkit-transform: perspective(140px) rotateX(0deg);
    transform: perspective(140px) rotateX(0deg);
    opacity: 1;
  }
  90%, 100% {
    -webkit-transform: perspective(140px) rotateY(180deg);
    transform: perspective(140px) rotateY(180deg);
    opacity: 0;
  }
}
/* end loading icon */
#FeaturedEvent {
  margin-bottom: 60px;
}

#EventList {
  min-height: 630px;
  z-index: 0;
}

.toggle-btn-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  margin-bottom: 30px;
}

.btn.filter-toggle, .btn.tag-toggle {
  border-radius: 4px;
  font: 900 14px 'Lato';
  height: 27px;
  letter-spacing: 1px;
  width: 68px;
}

.btn.filter-toggle {
  margin-right: 30px;
}

.filter-container {
  background: #4d4d4f;
  display: none;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  padding: 20px 15px;
  position: absolute;
  top: 100px;
  width: 100%;
  z-index: 100;
}
.filter-container .filter-header {
  border-bottom: 1px solid #bcbec0;
  color: #ffffff;
  display: block;
  font: 900 14px 'Lato';
  margin-bottom: 15px;
  padding-bottom: 10px;
  width: 100%;
}
.filter-container .dropdown-container {
  width: 100%;
}
.filter-container .dropdown-container select {
  width: 100%;
}
.filter-container .dropdown-container.timezone {
  margin-bottom: 16px;
}
.filter-container .dropdown-container.categories {
  display: none;
}
.filter-container .dropdown-container.reset {
  text-align: left;
}
.filter-container .start-date, .filter-container .end-date {
  position: relative;
}
.filter-container .start-date a, .filter-container .end-date a {
  font-size: 12px;
  position: absolute;
  right: 12px;
  top: 34px;
}
.filter-container .campuses, .filter-container .categories {
  margin-bottom: 15px;
}
.filter-container label {
  color: #ffffff;
  font-size: 12px;
  letter-spacing: 0.5px;
  line-height: 15px;
}
.filter-container input[type=text] {
  background: #ffffff;
  border-radius: 2px;
  border: 1px solid #4d4d4f;
  box-shadow: none;
  color: #4d4d4f;
  display: block;
  font-size: 14px;
  height: 36px;
  letter-spacing: 0.7px;
  padding: 5px;
  width: 100%;
}
.filter-container input[type=radio] + label {
  color: #bcbec0;
  font: normal 14px 'Lato';
  letter-spacing: 1px;
  margin-bottom: 15px;
  vertical-align: top;
}
.filter-container .select2-selection--multiple {
  max-width: none;
}

.btn.reset {
  background: #878787;
  border: 0;
  border-radius: 2px;
  display: none;
  font: 900 12px 'Lato';
  height: 25px;
  letter-spacing: 0.76px;
  width: 55px;
}
.btn.reset:hover {
  background: #878787;
}

.reset-link {
  color: #00aeef;
  font: normal 14px 'Lato';
  letter-spacing: 1px;
}
.reset-link:hover {
  color: #0093c6;
}

.tag-container {
  background: #4d4d4f;
  display: none;
  padding: 20px 15px;
  position: absolute;
  top: 100px;
  width: 100%;
}

.tag-header {
  color: #ffffff;
  border-bottom: 1px solid #bcbec0;
  display: block;
  font: 900 14px 'Lato';
  margin: 0 0 15px 0;
  padding: 0 0 7px 0;
  width: 100%;
}

.tag-list {
  margin: 0 0 15px 0;
}
.tag-list li {
  margin-bottom: 5px;
}
.tag-list .tag-link {
  border-radius: 8px;
  color: #ffffff;
  display: block;
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 0.7px;
  line-height: 1.43;
  padding: 5px 0 5px 10px;
}
.tag-list .tag-link.active {
  background: #67c18c;
  color: #ffffff;
}

.search-results-sort-container {
  border-bottom: 1px solid #bcbec0;
  display: none;
  text-align: right;
}
.search-results-sort-container .search-sort-link {
  color: #4d4d4f;
  display: inline-block;
  font: normal 13px/1.85 'Lato';
  height: 25px;
  margin-bottom: -1px;
  text-decoration: none;
}
.search-results-sort-container .search-sort-link:first-child {
  margin-right: 30px;
}
.search-results-sort-container .search-sort-link.active {
  border-bottom: 2px solid #00aeef;
  color: #00aeef;
}

.search-results {
  border-bottom: 1px solid #bcbec0;
}

.search-results-header {
  display: block;
  font-size: 20px;
  letter-spacing: 4px;
  margin-bottom: 30px;
  text-transform: uppercase;
}
.search-results-header .search-results-count, .search-results-header .search-results-query {
  font-weight: 900;
}

.event-main-container {
  position: relative;
  z-index: 0;
}

.event-list-container.date .search-results-sort-container {
  border-bottom: 0;
  position: relative;
  top: 44px;
}
.event-list-container.relevance .search-results-sort-container {
  margin-bottom: 15px;
}

.event-list-header {
  height: 60px;
}
.event-list-header:first-of-type .event-list-date {
  border-bottom: 1px solid #bcbec0;
}
.event-list-header:first-of-type .event-list-date .next-btn, .event-list-header:first-of-type .event-list-date .prev-btn {
  display: inline-block;
}
.event-list-header .next-btn.disabled, .event-list-header .prev-btn.disabled {
  color: #bcbec0;
  cursor: default;
}
.event-list-header .next-btn.disabled:hover, .event-list-header .prev-btn.disabled:hover {
  color: #bcbec0;
}

.event-list-date {
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-align: center;
      align-items: center;
  color: #f99e49;
  display: -ms-flexbox;
  display: flex;
  font-family: Lato;
  font-size: 26px;
  font-weight: 900;
  -ms-flex-pack: justify;
      justify-content: space-between;
  line-height: 1.15;
  letter-spacing: 1.3px;
  margin-bottom: 30px;
  padding-bottom: 15px;
}
.event-list-date.fixed {
  background: #ffffff;
  border-bottom: 1px solid #bcbec0;
  left: 0;
  padding: 15px 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
}
.event-list-date.fixed .next-btn, .event-list-date.fixed .prev-btn {
  display: inline-block;
}
.event-list-date .next-btn, .event-list-date .prev-btn {
  display: none;
  font-size: 16px;
  padding: 0 15px;
}
.event-list-date .next-btn:hover, .event-list-date .prev-btn:hover {
  text-decoration: none;
}
.event-list-date span {
  -ms-flex-order: 2;
      order: 2;
}
.event-list-date .next-btn {
  -ms-flex-order: 3;
      order: 3;
}
.event-list-date .prev-btn {
  -ms-flex-order: 1;
      order: 1;
}

.event-list-item {
  margin-bottom: 30px;
}
.event-list-item .event-category {
  color: #f99e49;
  display: block;
  font: normal 13px/1.85 'Lato';
  margin-bottom: 5px;
}
.event-list-item .event-title {
  color: #00aeef;
  display: block;
  font: normal 20px/1.4 'Lato';
  letter-spacing: 1px;
  margin-bottom: 5px;
}
.event-list-item .event-title:hover {
  color: #0093c6;
  text-decoration: none;
}
.event-list-item .event-description {
  color: #4d4d4f;
  font: normal 16px/1.5 'Lato';
  font-style: normal !important;
  font-weight: normal !important;
  letter-spacing: 0.7px;
  margin-bottom: 0;
}
.event-list-item .event-description p {
  margin-bottom: 0;
}
.event-list-item:last-child {
  margin-bottom: 30px;
}

.event-info span {
  color: #878787;
  display: inline-block;
  font: normal 16px/26px 'Lato';
  margin-bottom: 5px;
}
.event-info .spacer {
  margin: 0 5px;
}

.btn-container {
  margin: 0 auto;
}

#EventListEmbed .link-container {
  display: none;
  text-align: right;
}
#EventListEmbed .link-container a:hover {
  text-decoration: none;
}
#EventListEmbed .link-container .icon-arrow-right {
  margin-left: 5px;
  vertical-align: middle;
}

@media screen and (min-width: 768px) {
  #EventList {
    min-height: 0;
  }

  .toggle-btn-container {
    display: none;
  }

  .filter-container {
    background: #ffffff;
    display: -ms-flexbox !important;
    display: flex !important;
    margin-bottom: 30px;
    padding: 0;
    position: static;
  }
  .filter-container .filter-header {
    display: none;
  }
  .filter-container label {
    color: #878787;
  }
  .filter-container .days, .filter-container .start-date, .filter-container .end-date, .filter-container .start-time, .filter-container .end-time {
    display: block;
  }
  .filter-container .start-date a, .filter-container .end-date a {
    right: 17px;
  }
  .filter-container .dropdown-container {
    padding: 0 7.5px;
    width: auto;
  }
  .filter-container .dropdown-container:first-child {
    padding-left: 0;
  }
  .filter-container .dropdown-container:last-child {
    padding: 29px 0 0 7.5px;
  }
  .filter-container .sort-container {
    display: none;
  }

  .btn.reset {
    display: -ms-inline-flexbox;
    display: inline-flex;
  }

  .reset-link {
    display: none;
  }

  .search-results-sort-container {
    display: block;
  }

  .event-main-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
  }
  .event-main-container .tag-container {
    background: #ffffff;
    display: block !important;
    padding: 20px 25px 0 0;
    position: static;
    width: 25%;
  }
  .event-main-container .tag-container.search {
    padding: 0 25px 0 0;
  }
  .event-main-container .tag-container .tag-header {
    color: #4d4d4f;
  }
  .event-main-container .tag-container .tag-list .tag-link {
    color: #4d4d4f;
  }
  .event-main-container .tag-container .tag-list .tag-link.active {
    background: #67c18c;
    color: #ffffff;
  }
  .event-main-container.search .event-list-container.date {
    margin-top: -44px;
  }
  .event-main-container .event-list-container {
    width: 100%;
  }

  .event-categories {
    margin-bottom: 0;
  }

  .event-list-date {
    -ms-flex-pack: initial;
        justify-content: initial;
  }
  .event-list-date.fixed {
    left: auto;
  }
  .event-list-date span {
    -ms-flex-order: 1;
        order: 1;
  }
  .event-list-date .next-btn {
    -ms-flex-order: 3;
        order: 3;
  }
  .event-list-date .prev-btn {
    -ms-flex-order: 2;
        order: 2;
  }

  #EventListEmbed .link-container {
    display: block;
    text-align: right;
    white-space: nowrap;
    width: 30%;
  }
}
