#ebs-selector {
  padding: 1rem;
  border-radius: .2rem;
  background: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, .1);
}

#ebs-selector .ebs-school-swiper .inner,
#ebs-selector .ebs-school-swiper .inner > .swiper {
  height: 100%;
}

#ebs-selector h2{
  font-size: 1.5rem;
  margin: 0 0 1rem;
}

#ebs-selector h4{
  margin-top: 2rem;
  font-size: 1.25rem;
}

#ebs-selector .featured,
#ebs-selector .schools {
  display: grid;
  gap: 0.5rem;
  row-gap: 0.5rem;
  grid-template-columns: 1fr 1fr 1fr;
}

#ebs-selector .featured {
  margin-bottom: 1rem;
}

#ebs-selector button {
  cursor: pointer;
  pointer-events: all;
  opacity: 1;
  font-size: 90%;
  line-height: 1.2;
  transition: .3s ease-out;
  border-radius: 0px !important;
  -webkit-border-radius: 0px !important;
}

#ebs-selector div.languages .language {
  box-shadow: 0 .2rem .6rem 0 rgba(0, 0, 0, .17);
  font-weight: 300;
  padding: .5rem 1rem;
  margin: .2rem;  
  color: #373636;
  background: #d0d0d0;
  border: none;
}

#ebs-selector  div.languages .language.selected,
#ebs-selector  div.languages .language:hover {
  color: #fff;
  background: #e24444;
}

#ebs-selector select.languages option:checked {
  background: #d0d0d0;
}

#ebs-selector .school{
  color: #373636;
  font-weight: 600;
  background: none;
  border: 1px solid #fff;
  padding: .5rem 0;
  text-align: left;
  line-height: 1;
}

#ebs-selector .featured .school {
  border: 1px solid #d0d0d0;
  text-align: center;
  background: none;
  font-weight: 400;
}

#ebs-selector .featured .school:hover,
#ebs-selector .school:hover:not([disabled]) {
  text-align: center;
  color: #fff;
  border: 1px solid #55565a;
  background: #55565a;
  box-shadow: 0 .2rem .6rem 0 rgba(0,0,0,.17);
}

#ebs-selector .school[disabled] {
  color: #aaa;
  cursor: not-allowed;
}

#ebs-selector .ebs-school-swiper{
  display: none;
}

#ebs-selector-modal {
  position: fixed;
  top: 47px;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 10%;
  background: white; 
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0.3s linear, opacity 0.3s linear;
}

#ebs-selector-modal.modal-open {
  visibility: visible;
  opacity: 1;
}

#ebs-selector-modal .ebs-school-swiper .inner {
  width: 100%;
  position: relative;
  z-index: 1000;
}

#ebs-selector-modal .modal-close {
  position: absolute;
  width: 20px;
  height: 20px;
  top: 0.8rem;
  right: 0.8rem;
  font-size: 2rem;
  cursor: pointer;
  z-index: 10;
}

#ebs-selector-modal .ebs-school-swiper .modal-close:after{
  display: inline-block;
  content: "\00d7";
}

.ebs-school-swiper .swiper {
  padding: 0.5rem;
}

.ebs-school-swiper .swiper-slide {
  box-shadow: 0 0 10px rgba(0, 0, 0, .1);
  background-color: #fff;
  height: unset;
  overflow: hidden;
}

.swiper:not(.swiper-initialized) .swiper-slide {
  margin-right: 20px;
}

.ebs-school-swiper .swiper-button {
  color: #373636;
}

.ebs-school-swiper .swiper-button::after {
  font-size: 1.5rem;
}

.ebs-school-swiper .swiper-button-prev {
  left: -2rem;
}

.ebs-school-swiper .swiper-button-next {
  right: -2rem;
}

.ebs-school-swiper .thumbnail {
  position: relative;
  height: 15rem;
}

.ebs-school-swiper .thumbnail img {
  height: 100%;
  display: block;
  max-width: unset;
}

.ebs-school-swiper .content {
  padding: 2rem;
  text-align: center;
  background: #fff;
}

.ebs-school-swiper .content h2,
.ebs-school-swiper .content p {
  text-align: left;
  line-height: 1;
}

.ebs-school-swiper .content a.post-link{
  color: #e24444;
  font-weight: 700;
  margin-bottom: 1.5rem;
  display: block;
}

.ebs-school-swiper .content a.book-link{
  color: #373636;
  background: #ffd733;
  border-radius: .5rem;
  box-shadow: 0 2px 4px rgba(0,0,0,.2);
  display: block;
  padding: 1rem;
  font-weight: 700;
  font-size: 100%;
  text-decoration: none;
}

@media only screen and (min-width: 691px) {
  #ebs-selector .featured,
  #ebs-selector .schools {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 1rem;
  }
}

@media only screen and (min-width: 880px) {
  #ebs-selector {
    padding: 2rem;
    margin: 0 auto;
    max-width: 1110px;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  #ebs-selector .featured,
  #ebs-selector .schools {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2rem;
  }

  #ebs-selector-modal {
    display: none;
  }

  #ebs-selector .ebs-school-swiper {
    min-width: 0;
    display: block;
    position: relative;
    margin: -4rem 0;
    margin-right: 2rem;
  }

  .ebs-school-swiper .swiper-button::after {
    font-size: 2rem;
  }
  
  .ebs-school-swiper .swiper-button-prev {
    left: -2rem;
  }
  
  .ebs-school-swiper .swiper-button-next {
    right: -2rem;
  }
}

@media only screen and (min-width: 1000px) {
  #ebs-selector {
    grid-template-columns: 6fr 5fr;

  }
  #ebs-selector .school.selected:not([disabled]){
    text-align: center;
    color: #fff;
    border: 1px solid #55565a;
    background: #55565a;
    box-shadow: 0 .2rem .6rem 0 rgba(0,0,0,.17);
  }
}

@media only screen and (min-width: 1200px) {
  #ebs-selector {
    grid-template-columns: 8fr 5fr;
    gap: 2.5rem;
  }

  #ebs-selector .featured,
  #ebs-selector .schools {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 2rem;
  }
}