:root{--text-light:rgba(255,255,255,0.6);--text-lighter:rgba(255,255,255,0.9);--spacing-s:8px;--spacing-m:16px;--spacing-l:24px;--spacing-xl:32px;--spacing-xxl:64px;--width-container:2100px}
.hero-section{align-items:flex-start;display:flex;min-height:100%;justify-content:center;padding:var(--spacing-xxl) var(--spacing-l)}
.card-grid{display:grid;grid-template-columns:repeat(1,1fr);grid-column-gap:var(--spacing-l);grid-row-gap:var(--spacing-l);max-width:var(--width-container);width:100%}
@media (min-width: 540px) {
.card-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width: 960px) {
.card-grid{grid-template-columns:repeat(4,1fr)}
}
.card{list-style:none;position:relative}
.card:before{content:"";display:block;padding-bottom:150%;width:100%}
.card__background{background-size:cover;background-position:center;border-radius:var(--spacing-l);bottom:0;/*filter:brightness(0.75) saturate(1.2) contrast(0.85);left:0;*/position:absolute;right:0;top:0;transform-origin:center;trsnsform:scale(1) translateZ(0);transition:filter 200ms linear,transform 200ms linear}
.card:hover .card__background{transform:scale(1.05) translateZ(0)}
.card__content{left:0;padding:var(--spacing-l);position:absolute;top:0}
.card__category{color:var(--text-light);font-size:.9rem;margin-bottom:var(--spacing-s);text-transform:uppercase}
.card__heading{color:var(--text-lighter);font-size:1.9rem;text-shadow:2px 2px 20px rgba(0,0,0,0.2);line-height:1.4;word-spacing:100vw}





















.icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
}



.center-image, .card__background img {
  width: 100%;
  min-height: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -o-object-fit: cover;
     object-fit: cover;
}

.slick-slide {
  padding: 2em 0.5em;
}



.card {
  background: #fff;
  display: flex;
  padding: 2em;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  z-index: 1;
  height: 350px;
  box-shadow: 0 30px 50px -25px rgba(0, 0, 0, 0.25);
}
.card > * {
  transition: opacity 350ms;
}
.card--opened > * {
  opacity: 0;
}

.card__background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  /*overflow: hidden;*/
  background: #2fd4dc;
  z-index: -1;
  text-align: left;
}
.card__background::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  /*background: linear-gradient(to top, #fff 0, rgba(255, 255, 255, 0) 70%);*/
}

.card__category {
  text-transform: uppercase;
  color: #fff;
  background: #2fd4dc;
  font-size: 0.85em;
  font-weight: 600;
  padding: 0.2em 0.5em 0.25em;
}

.card__title {
  text-transform: uppercase;
  margin: 0.5em 0;
  color: #2e5f80;
}

.card__duration {
  color: #6f7070;
}

.modal-wrapper, .overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.modal-wrapper {
  display: flex;
}

.overlay {
 /* background: rgba(0, 0, 0, 0.5);*/
  transition: opacity 150ms ease;
}

.modal {
  overflow: hidden;
  position: relative;
  margin: auto;
  width: 90vw;
  height: 90vh;
  max-width: 500px;
  background: #fff;
  border-radius: 20px;
}

.modal__scroll-area {
  height: inherit;
  overflow: auto;
  border-radius: inherit;
  position: relative;
  z-index: 1;
}

.modal__close-button {
  background: transparent;
  border: none;
  margin-bottom: auto;
  color: #2e5f80;
  position: absolute;
  top: 0;
  display: none;
  right: 0;
  padding: 2em;
  z-index: 2;
}

.modal__header {
  text-align: center;
  position: relative;
  display: flex;
  padding: 0.5em;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  min-height: 300px;
  z-index: 1;
}

.modal__content {
  padding: 2em;
  color: #666;
  line-height: 1.5;
}

[data-modal-state=closed] .modal-wrapper {
  pointer-events: none;
}
[data-modal-state=closed] .overlay {
  pointer-events: none;
}
[data-modal-state=closed] .modal {
  opacity: 0;
}
[data-modal-state=closed] .overlay {
  opacity: 0;
}



[data-modal-state=opening] .overlay {
  transition: opacity 500ms ease;
}

[data-modal-state=closing] .overlay {
  opacity: 0;
  transition: opacity 500ms ease;
}

[data-modal-state=open] .modal__header, [data-modal-state=open] .modal__content {
  transition: opacity 450ms;
}