body,
html,
header,
main,
section,
footer {
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;  
  overflow-x: hidden;
}

main {
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: #333333;
  background: url("../img/fiesta-min.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

#main-left {
  color: #FFFFFF;
  text-align: left;
}

#main-left h1 {
  font-size: 24pt;
  font-weight: 600;
  line-height: 1.5;
  margin: 10px auto 20px auto;
  padding-top: 0;
  padding-bottom: 0;
  text-transform: uppercase;
  text-shadow: 1px 1px 4px #333333;
}

#main-left p {
  font-size: 14pt;
  font-weight: 300;
  line-height: 1.5;
  margin: 10px auto;
  padding-top: 0;
  padding-bottom: 0;
  text-shadow: 1px 1px 4px #333333;
}

#main-left .highlight {
  color: #e70fb0;
}

#main-right {
  padding-top: 15px;
  padding-bottom: 15px;
  border-radius: 5px;
  background-color: #FFFFFF;
}

#main-right h1 {
  font-size: 20pt;
  font-weight: 300;
  line-height: 1.5;
  margin: 5px auto 20px auto;
  padding-top: 0;
  padding-bottom: 0;
}

#main-right form .row {
  margin-top: 15px;
  margin-bottom: 15px;
}

#main-right form p {
  font-size: 12pt;
  font-weight: 300;
  color: #555555;
  margin: 5px auto;
  padding-left: .25rem;
}

.bold {
  font-weight: 600 !important;
}

#main-right form input::placeholder {
  text-align: center;
}

#main-right form select {
  text-align-last: center;
}

#main-right form .btn-success {
  background-color: #048389;
  border: 0;
}

section {
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #920970;
  color: #FFFFFF;
}

section h2 {
  font-size: 18pt;
  font-weight: 600;
  line-height: 1.5;
  margin: 5px auto 10px auto;
  padding-top: 0;
  padding-bottom: 0;  
}

section p {
  font-size: 14pt;
  font-weight: 300;
  line-height: 1.5;
  margin: 5px auto 10px auto;
  padding-top: 0;
  padding-bottom: 0;
}

footer {
  padding-top: 15px;
  padding-bottom: 15px;
  background-color: #333333;
  color: #FFFFFF;
}

footer p {
  font-size: 10pt;
  font-weight: 300;
  line-height: 1.5;
  margin: 7px auto;
  padding-top: 0;
  padding-bottom: 0;
}

footer a {
  color: #FFFFFF;
  text-decoration: none;
}

footer a:focus,
footer a:hover {
  color: #FFFFFF;
  text-decoration: underline;
}

.error {
  border: 2px solid lightcoral;
}

.hidden {
  display: none;
}

#opt-in-error p {
  color: #A90000 !important;
}

#avoid-anchor,
#modal-toggle {
  text-decoration: underline;
}

#opt_in_copy {
  font-size: 10pt;
}

.btn-fiesta {
  background: #b80b8d;
  color: #ffffff;
  font-weight: 600;
}

.btn-fiesta:focus,
.btn-fiesta:hover,
#main-left a:focus,
#main-left a:hover {
  background: #a00a7b;
  color: #ffffff;
  text-decoration: none;
}

.results-number {
  background: #a00a7b;
  color: #ffffff;
  font-size: 48px;
  font-weight: 400;
  padding-top: 3px;
}

.results-details {

}

.results-details h1 {
  font-size: 26px;
  font-weight: 500;
  margin-top: 10px;        
}

.results-details p {
  margin-top: 5px;
  margin-bottom: 5px;
}

.results-click {
  padding-top: 22px;
  font-size: 24px;
  font-weight: 400;        
}

.results-row {
  background: #ffffff;
  margin-top: 5px;
  margin-bottom: 5px;
}

#boost-modal { display: none; }

@media only screen and (max-width: 767px) {
  #main-left {
    text-align: center;
    padding-bottom: 20px;
  }

  #main-right {
    border-radius: 0;
  }

  section p {
    margin-bottom: 20px;
  }

  .results-number, .results-click {
    display: none;
  }

  .results-row {
    margin-top: 15px;
    margin-bottom: 15px;
  }
}