body {
background: linear-gradient(45deg, #8fbeff 0, #dfc5fc 100%);
  font-family: 'Montserrat', 'sans-serif';
  margin: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center; /* center .container-fluid */
}

.container-fluid {
  display: flex;
  flex-direction: column;
  align-items: center; /* Center children horizontally */
}

.clock-container,
#viewer {
  width: 90%; /* both take full width of container */
  border-radius: 0px;
}

.button_container{
  background-color: #000000;
  width: 90%;
}
.clock-container {
  background-color: #000000;
  display: flex;
  justify-content: center;
  flex-shrink: 0;
  margin: 0;
}

#viewer {
  height: 70vh;
  background-color: #222; /* for visibility */
  margin-bottom: 60px;
}

.clock-day:before {
  content: var(--timer-day);
}

.clock-hours:before {
  content: var(--timer-hours);
}

.clock-minutes:before {
  content: var(--timer-minutes);
}

.clock-seconds:before {
  content: var(--timer-seconds);
}

.clock-container {
  margin-top: 40px;
  background-color: #000000;
  box-shadow: 1px 1px 5px rgba(255, 255, 255, .15), 0 15px 90px 30px rgba(0, 0, 0, .25);
  display: flex;
}

.clock-col {
  text-align: center;
  margin-right: 40px;
  margin-left: 40px;
  min-width: 90px;
  position: relative;
}

.clock-col:not(:last-child):before,
.clock-col:not(:last-child):after {
  content: "";
  background-color: rgba(255, 255, 255, .3);
  height: 5px;
  width: 5px;
  border-radius: 50%;
  display: block;
  position: absolute;
  right: -42px;
}

.clock-col:not(:last-child):before {
  top: 35%;
}

.clock-col:not(:last-child):after {
  top: 50%;
}

.clock-timer:before {
  color: #fff;
  font-size: 4.2rem;
  text-transform: uppercase;
}

.clock-label {
  color: rgba(255, 255, 255, .35);
  text-transform: uppercase;
  font-size: .7rem;
  margin-top: 10px;
}

@media (max-width: 825px) {
  .clock-container {
    margin-top:10px;
    flex-direction: column;
    padding-top: 0px;
    padding-bottom: 40px;
    width: 98%;
  }

  .button_container{
    width: 98%;
  }

  #viewer {
    width: 98%; /* both take full width of container */
    margin-bottom: 10px;

  }

  .clock-col + .clock-col {
    margin-top: 20px;
  }

  .clock-col:before,
  .clock-col:after {
    display: none !important;
  }
}


.schematic-container{
 background-color: white;
}

/* Move prev/next controls slightly outside */
#schematicCarousel .carousel-control-prev,
#schematicCarousel .carousel-control-next {
  width: auto; /* shrink clickable area */
}

#schematicCarousel .carousel-control-prev {
  left: -40px; /* push it just outside left */
}

#schematicCarousel .carousel-control-next {
  right: -40px; /* push it just outside right */
}

/* Move indicators just below the carousel */
#schematicCarousel .carousel-indicators {
  bottom: -30px; /* move outside below */
}

.problem_image {
  max-width: 200px;
}

.solution_image {
  max-width: 200px;
}

@media (min-width: 825px) {
  .problem_image {
    width: 80%;
  }

  .solution_image {
    width: 80%;
  }

}

/* Default (desktop/tablet) stays the same */

/* For phones */
/* Phones */
@media (max-width: 600px) {
  /* Hide the day column */
  .clock-day,
  .clock-day + .clock-label {
    display: none;
  }

  /* Flex row layout */
  .clock-container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row; /* force horizontal */
  }

  /* Make each clock-col inline in flex */
  .clock-col {
    margin: 0 10px;
    min-width: auto;
    flex: 0 1 auto; /* don’t stretch, keep compact */
  }

  /* Remove the dots between */
  .clock-col:not(:last-child):before,
  .clock-col:not(:last-child):after {
    display: none;
  }

  /* Adjust font sizes */
  .clock-timer:before {
    font-size: 4rem;
  }

  .clock-label {
    font-size: 1rem;
  }
}

.form-container {
    background: linear-gradient(45deg, #8fbeff 0, #dfc5fc 100%);
}