/* ---- Countdown section ---- */
.countdown__time {
  font-size: var(--font-size);
}

.countdown__label {
  font-size: var(--font-size);
}

.countdown__time-label {
  font-size: var(--font-size-sm);
}

.countdown__time--wrapper {
  opacity: 0;
  transition: opacity 0.5s ease-in;
  position: relative;
}

.countdown__grid {
  display: flex;
  align-items: center;
  column-gap: 50px;
  padding: 20px;
  background: var(--background);
  color: var(--text-color);
}

.countdown__grid.l-stack {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  row-gap: 20px;
}

.countdown__grid.has--image {
  height: var(--section-desktop-height);
  position: relative;
  overflow: hidden;
}

.countdown__grid.has--image .box-ratio {
  padding-bottom: var(--section-desktop-height) !important;
}

.countdown__grid.has--image .box-ratio img {
  object-fit: cover;
  object-position: center;
  height: var(--section-desktop-height)
}

.countdown__image-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.countdown__image-container .onboard {
  height: 100%;
}

.countdown__image-container .overlay {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background: var(--overlay-color);
}

.countdown__grid.l-center {
  justify-content: center;
}

.countdown__grid.l-space-between {
  justify-content: space-between;
}

/* -- Timer block -- */

.countdown__time-container {
  display: flex;
  flex-direction: row;
  column-gap: 15px;
  align-items: center;
  justify-content: center;
  padding: 0 5px;
  position: relative;
  z-index: 1;
}

.countdown__colon-divider {
  position: absolute;
  top: 0;
  right: -10px;
}


.countdown__button-wrapper a.btn,
.countdown__button-wrapper a.btn:visited {
  background: var(--button-color);
  color: var(--button-text);
  margin: 0 auto;
  padding: 0 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  font-size: var(--font-size-reset);
}

/* -- Set button to  it's own row if stack layout -- */

.countdown__grid.l-stack .countdown__time-container {
  width: 100%;
  flex-wrap: wrap;
  row-gap: 20px;
}

.countdown__grid.l-stack .countdown__time-container .countdown__button-wrapper {
  flex-basis: 100%;
  margin-left: 0;
}

/* -- Text block -- */

.countdown__heading {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
}

.countdown__heading p {
  color: var(--text-color);
  margin-bottom: 0;
}

.countdown__heading p a {
  text-decoration: underline;
}

.countdown__ended--content p {
  margin-bottom: 0;
}

/* -- completed countdown --*/
.countdown__ended--content {
    position: relative;
}

/* -- Media queries -- */

@media screen and (max-width: 740px) {
  .countdown__grid.has--image {
    height: var(--section-mobile-height);
  }
  .countdown__grid.has--image .box-ratio {
    padding-bottom: var(--section-mobile-height) !important;
  }
  .countdown__grid.has--image .box-ratio img {
    height: var(--section-mobile-height)
  }
  .countdown__grid {
    text-align: center;
    flex-direction: row !important;
    flex-wrap: wrap;
    row-gap: 20px;
  }
  .countdown__grid.l-space-between {
    justify-content: center;
  }
  .countdown__time-container {
    width: 100%;
    flex-wrap: wrap;
    row-gap: 20px;
  }
  .countdown__time-container .countdown__button-wrapper {
    flex-basis: 100%;
    margin-left: 0;
  }
  .countdown__ended--content p {
    margin-bottom: -20px;
  }
}

@media screen and (min-width: 741px) {
  .countdown__grid.l-center .countdown__button-wrapper {
    margin-left: 30px;
  }
}

/* -- Product countdown block styles -- */

.product__section--countdown {
  margin: 20px 0 0;
}

.product__section--countdown .countdown__grid {
  padding: 10px;
  column-gap: 20px;
  text-align: left;
  flex-wrap:wrap;
}

.product__section--countdown .countdown__time--content,
.product__section--countdown .countdown__ended--content {
  flex-basis: 100%;
}

.product__section--countdown p {
  margin-bottom: 0;
}

.product__section--countdown .countdown__grid .countdown__time--wrapper {
  text-align: center;
}

@media screen and (max-width: 740px) {
  .product__section--countdown .countdown__grid {
    text-align: center;
    justify-content: center;
    row-gap: 0;
  }
}