/*       OVERALL       */

.iframe-wrapper {
  position: relative;
  padding-bottom: 56.25%; /* proportion value to aspect ratio 16:9 (9 / 16 = 0.5625 or 56.25%) */
  height: 0;
  overflow: hidden;
  margin-bottom: 50px;
  margin: 0 auto;
  pointer-events: none;
  max-width: 1200px;
}

.iframe-wrapper.smallest {
  padding-bottom: 10%;
}
.iframe-wrapper.smaller {
  padding-bottom: 13%;
}
@media (max-width: 3450px) {
  .smaller {
    padding-bottom: 15% !important;
  }
  .smallest {
    padding-bottom: 8% !important;
  }
}
@media (max-width: 3000px) {
  .smaller {
    padding-bottom: 16% !important;
  }
  .smallest {
    padding-bottom: 9% !important;
  }
}
@media (max-width: 2750px) {
  .smaller {
    padding-bottom: 17% !important;
  }
}
@media (max-width: 2500px) {
  .smaller {
    padding-bottom: 20% !important;
  }
}
@media (max-width: 2100px) {
  .smaller {
    padding-bottom: 23% !important;
  }
  .smallest {
    padding-bottom: 13% !important;
  }
}
@media (max-width: 1850px) {
  .smaller {
    padding-bottom: 23% !important;
  }
  .smallest {
    padding-bottom: 14% !important;
  }
}
@media (max-width: 1800px) {
  .smaller {
    padding-bottom: 24% !important;
  }
  .smallest {
    padding-bottom: 17% !important;
  }
}
@media (max-width: 1700px) {
  .smaller {
    padding-bottom: 25% !important;
  }
  .smallest {
    padding-bottom: 20% !important;
  }
}
@media (max-width: 1600px) {
  .smaller {
    padding-bottom: 27% !important;
  }
  .smallest {
    padding-bottom: 20% !important;
  }
}
@media (max-width: 1500px) {
  .smaller {
    padding-bottom: 34% !important;
  }
  .smallest {
    padding-bottom: 20% !important;
  }
}
@media (max-width: 1200px) {
  .smaller {
    padding-bottom: 37% !important;
  }
  .smallest {
    padding-bottom: 20% !important;
  }
}
@media (max-width: 1100px) {
  .smaller {
    padding-bottom: 38% !important;
  }
  .smallest {
    padding-bottom: 22% !important;
  }
}

@media (max-width: 1079px) {
  .smaller {
    padding-bottom: 45% !important;
  }
  .smallest {
    padding-bottom: 25% !important;
  }
}
@media (max-width: 1050px) {
  .small {
    padding-bottom: 75%;
  }
}
@media (max-width: 1000px) {
  .smaller {
    padding-bottom: 67% !important;
  }
}
@media (max-width: 900px) {
  .smaller {
    padding-bottom: 75% !important;
  }
  .smallest {
    padding-bottom: 35% !important;
  }
}

@media (max-width: 750px) {
  .small {
    padding-bottom: 80%;
  }
  .smaller {
    padding-bottom: 80% !important;
  }
}
@media (max-width: 700px) {
  .small {
    padding-bottom: 90%;
  }
  .smaller {
    padding-bottom: 85% !important;
  }
  .smallest {
    padding-bottom: 40% !important;
  }
}
@media (max-width: 600px) {
  .iframe-wrapper {
    padding-bottom: 177.78%; /* proportion value to aspect ratio 9:16 (16 / 9 = 1,7778 or 177.78%) */
  }
  .small {
    padding-bottom: 125%;
  }
  .smaller {
    padding-bottom: 100% !important;
  }
  .smallest {
    padding-bottom: 50% !important;
  }
}

@media (max-width: 500px) {
  .smaller {
    padding-bottom: 120% !important;
  }
  .smallest {
    padding-bottom: 85% !important;
  }
}

@media (max-width: 400px) {
  .iframe-wrapper {
    padding-bottom: 210%;
  }
  .small {
    padding-bottom: 155%;
  }

  .smaller {
    padding-bottom: 120% !important;
  }
  .smallest {
    padding-bottom: 85% !important;
  }
  .combobox:after {
    position: absolute !important;
    top: 20px !important;
  }
  #selector {
    padding: 8px 16px 8px 16px !important;
    width: 210px !important;
  }
}
#selector:hover {
  cursor: pointer;
  background-color: #486e25;
}
body {
  text-align: center;
  /*margin: 5px 0 0 0;*/
  font-size: 28px;
  font-weight: 400;
  font-family: "Saira Condensed", sans-serif;
}

.iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
}

/*       DETAILS       */
.wrapper {
  position: relative;
  background: rgb(255, 255, 255);

  padding: 10px;
}
.gradient {
  height: 100px;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0; /*
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 1) 50%,
    rgba(238, 238, 238, 1) 100%
  );
*/

  background: white
    radial-gradient(ellipse 50% 5vh at 50% 100%, rgba(238, 238, 238, 1), white)
    0 0 / 100% 100% no-repeat;

  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
}
.returnHome {
  position: absolute;
  top: 5px;
  left: 0;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.returnHome p {
  margin-left: 15px;
  font-size: 18px;
  text-transform: uppercase;
}
@media (max-width: 600px) {
  .returnHome p {
    display: none;
  }
  .combobox {
    font-size: 14px;
  }
}
.returnHome svg {
  width: 39px;
  height: 39px;
  min-width: 0;
  margin-left: 5px;
}
@media (max-width: 400px) {
  .returnHome svg {
    width: 35px;
    height: 35px;
  }
}

select {
  -webkit-appearance: none;
  background-color: transparent;
  border: none;
  color: white;
  font-size: 16px;
}
#selector {
  position: relative;
  border-radius: 30px;
  background-color: #619233;
  width: 240px;
  padding: 11px 16px 11px 16px;
  border: 1px solid #e3e3e3;
  /*font-size: 0.8571em;*/
  font-size: 16px;
  margin-bottom: 15px;
  margin: 5px auto;
}
.combobox {
  position: relative;
  width: 240px;
  /*height: 35px;*/
  margin: 0 auto;
}
.combobox:after {
  content: "";
  position: absolute;
  pointer-events: none;
  top: 22px;
  right: 25px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: white transparent transparent transparent;
}

select:focus {
  outline: none;
}

option {
  color: black;
  text-align: center;
}

/*       INDEX       */
h1 {
  font-size: 1.4em;
  color: #619233;
  text-align: center;
  font-weight: 500;
}
@media (max-width: 600px) {
  h1 {
    font-size: 1.2em !important;
  }
}
.buttonMonth {
  cursor: pointer;

  width: 500px;
  /*width: 570px;*/
  margin: 50px auto;
  display: flex;
  justify-content: center;
}

@media (max-width: 600px) {
  .buttonMonth {
    width: 70%;
  }
  .current,
  .prev {
    width: 45% !important;
    font-size: 16px !important;
    padding: 5px 10px !important;
  }
}
@media (max-width: 450px) {
  .buttonMonth {
    width: 85%;
  }
}
.current,
.prev {
  text-transform: uppercase;
  background-color: #ededed;
  padding: 8px 40px;
  width: 200px;
  font-size: 18px;
}
.current,
.prev {
  color: #619233;
}
.current {
  border-radius: 45px 0 0 45px;
}
.prev {
  border-radius: 0 45px 45px 0;
}
.current.active,
.prev.active {
  background-color: #619233;
  color: white;
}
.current:hover,
.prev:hover {
  background-color: #619233;
  color: white;
  transition: background-color 0.5s ease;
}
.hidden {
  display: none;
}
.map {
  display: flex;
  justify-content: space-around;
  align-items: center;
  text-align: left;
  max-width: 1080px;
  margin: auto;
  margin-top: 15px;
}
@media (max-width: 650px) {
  .map {
    margin-top: 25px;
    align-items: flex-start;
  }
  .map > svg {
    display: none;
  }
}
.cities {
  display: flex;
  flex-direction: column;
  margin-bottom: 25px;
}
.cities a {
  color: #619233;
  font-size: 0.64em;
  text-decoration: none;
  margin-bottom: 3px;
}
.map svg {
  width: 375px;
  height: 375px;
  margin: 30px 20px;
}

@media (max-width: 800px) {
  .map svg {
    width: 300px;
    height: 300px;
  }
}

.map svg polygon {
  fill: #fff;
  cursor: pointer;
}
.map svg polygon.disabled {
  opacity: 50%;
  pointer-events: none;
}
.cities a:hover {
  text-decoration: underline;
}
.map svg polygon:hover,
.map svg polygon.active {
  fill: #afd21b;
  transition: fill 0.5s ease;
}

/*       CSS Animation: Fade in       */
.fadeIn {
  opacity: 1;
  animation-name: fadeInOpacity;
  animation-iteration-count: 1;
  animation-timing-function: ease-in;
  animation-duration: 0.5s;
}

@keyframes fadeInOpacity {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
