html, body {
  margin: 0;
  padding: 0;
  font-family: 'Open Sans', sans-serif;
  background-color: #e6edf7;
}
.mid-content p {
  font-size: 18px;
  line-height: 24px;
}
.full-page {
  min-height: 100vh;
  padding: 13px;
}
#page-1, #page-2, #page-3, #page-4, #page-5 {
  position: relative;
}
.sorry {
  font-weight: bold;
  color: #222222;
  font-size: 22px;
}
.content-container {
  background-color: #ffffff;
  border-radius: 15px 15px 0px 0px;
  min-height: 80vh;
  box-shadow: 0px 0px 8px 0px #e0e0e0;
} /* gradient from top to bottom, #5BF676 to #03BF25 */
.green-header {
  background-position: 0%;
  color: #FFFFFF;
  display: flex;
  align-items: center;
  padding: 6px 10px;
  align-items: center;
  font-size: 14px;
  font-weight: bold;
  background-color: #2f9ee9;
}
.us-flag {
  /* Ensures the flag is aligned to the left */
  flex-shrink: 0; /* Prevent the flag from shrinking */
}
.center-text {
  flex-grow: 1;
  /* Allows the text container to take up available space */
  display: flex;
  justify-content: center;
  /* Centers the text horizontally */
  align-items: center; /* Centers the text vertically, if needed */
}
.persistent-headline {
  font-size: 29px;
  font-weight: bold;
  padding: 30px 20px 0px;
  text-align: center;
  color: #2f9ee9;
}
/** Button Styles */

.button-negative {
  border: 3px solid #2f9ee9;
  color: #2f9ee9;
  padding: 10px 10px;
  border-radius: 5px;
  text-align: center;
  margin: 10px;
  font-size: 30px;
  font-weight: bold;
  background-color: rgba(255, 255, 255, 0.4);
  cursor: pointer;
}
/** Form **/
.form-container {
  padding: 20px;
  font-size: 20px;
  text-align: center; /* background-color: red; */
}
.question {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 20px;
}
.page-number {
  font-size: 15px;
  margin-bottom: 10px;
}
/** Bottom Bar **/
.bottom-bar {
  background-color: #525252;
  padding: 5px;
  text-align: center;
  border-radius: 0px 0px 15px 15px;
  color: #fff;
}
@keyframes throb {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
.throbbing {
  display: inline-block;
  color: red;
  animation: throb 1.5s infinite;
}
.congrats {
  border-radius: 15px 15px 0 0;
  background: #2f9ee9;
  color: #fff;
  font-weight: bold;
  padding: 5px;
  border-top: 1px solid #2f9ee9;
  border-left: 1px solid #2f9ee9;
  border-right: 1px solid #2f9ee9;
}
.last-page-card {
  background-color: #fff;
  padding: 13px;
  border-radius: 0 0 15px 15px;
  border-bottom: 1px solid #2f9ee9;
  border-left: 1px solid #2f9ee9;
  border-right: 1px solid #2f9ee9;
}
.footer {
  background-color: #1c1c1c;
  color: #a4a4a4;
  padding: 10px;
  font-size: 13px;
}
.pb-5 {
  padding-bottom: 3rem !important;
}
.pt-5 {
  padding-top: 3rem !important;
}
.c-container {
  max-width: 1060px;
  margin: 0 auto;
}
.container, .container-lg, .container-md, .container-sm, .container-xl {
  max-width: 1140px;
}
.text-center {
  text-align: center !important;
}
.font-14 {
  font-size: 14px;
}
.footer-links a {
  color: #fff;
}
.mid-content {
  padding: 20px;
}
.headline {
  margin: 0px;
  padding: 0px;
  font-size: calc(18px + 1vw);
  font-weight: bold;
  color: #291b25;
}
.sub-headline {
  margin: 20px 0px;
  display: block;
  border-left: 3px solid #2f9ee9;
  padding-left: 10px;
}
.sub-headline strong, .red-heading {
  color: #cc0000;
}
.teaser {
  width: 100%;
}
.img-caption {
  text-align: center;
  font-size: 14px !important;
  margin-top: 10px;
  color: #6b6b6b;
  font-style: italic;
}
.mid-content strong a {
  color: #2f9ee9;
	font-weight: 600;
	
}
.age-selection {
	margin-top: 30px;
}
.age-selection h2 {
	text-align: center;
	font-size: calc(18px + 1vw);
}
.choices {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 20px auto;
    align-items: center;
    max-width: 600px;
}
.cta-big {
  background-color: #2f9ee9;
  color: white!important;
  padding: 30px 10px;
  border-radius: 5px;
  text-align: center;
  margin: 10px;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 20px;
  cursor: pointer;
	display: block;
	text-decoration: none;
	max-width: 600px;
	margin: 0 auto;
}
.cta-small {
    color: #fff!important;
    text-decoration: none;
    display: block;
    padding: 10px 15px;
    background: #2f9ee9;
    width: 100%;
    margin: 10px 5px;
    max-width: 130px;
    border-radius: 6px;
    text-align: center;
    font-weight: bold;
}
/** desktop breakpoint **/
@media (min-width: 768px) {
  .content-container {
    width: 50%;
    margin: 0 auto;
    border-radius: 15px;
  }
  .bottom-bar {
    display: none;
  }
  .hide-on-desktop {
    display: none;
  }
}