@charset "UTF-8";
@import url("https://use.typekit.net/pym1zdc.css");
.mobnobr br, .top-box__desc p br {
  display: none; }
  @media (min-width: 768px) {
    .mobnobr br, .top-box__desc p br {
      display: block; } }

html {
  font-size: 50%; }
  @media (min-width: 768px) {
    html {
      font-size: 45%; } }
  @media (min-width: 1024px) {
    html {
      font-size: 62.5%; } }

.uppercase {
  text-transform: uppercase; }

body {
  font-family: trade-gothic-next, sans-serif;
  font-weight: 300;
  font-size: 1.6rem;
  color: #000;
  background-color: #f2f2f2; }

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  max-width: 100%;
  display: block; }

strong {
  font-weight: 700; }

section {
  max-width: 1920px;
  margin: 0 auto; }

.mx-auto {
  margin-left: auto;
  margin-right: auto; }

.s-font {
  font-family: trade-gothic-next-condensed, sans-serif; }

.container {
  max-width: 100rem;
  padding: 0 1.5rem; }
  @media (min-width: 1280px) {
    .container {
      padding: 0; } }
  .container--wide {
    max-width: 1130px; }
  .container--widest {
    max-width: 1400px; }

.gradient {
  background: #cae6f9;
  background: linear-gradient(180deg, #cae6f9 0%, #afd5f1 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#cae6f9",endColorstr="#afd5f1",GradientType=1); }

.footer {
  padding: 3rem 1rem 3rem 1rem; }

.text--green {
  color: #155813; }

.text--coral {
  color: #ee5948; }

.text--raspberry {
  color: #e61f4b; }

.text--rose {
  color: #df628b; }

.text--orange {
  color: #f89e49; }

.text--red {
  color: #ac182d; }

.text--condensed {
  font-family: trade-gothic-next-condensed, sans-serif; }

.site-cta {
  font-weight: 700;
  color: #fff;
  background: #ac182d;
  line-height: 6rem;
  font-family: trade-gothic-next-condensed, sans-serif;
  font-size: 1.8rem;
  padding: 0 6rem;
  display: inline-block;
  border-radius: 0;
  transition: all 150ms ease-in-out;
  text-transform: uppercase; }

@media (min-width: 768px) {
  .top-section {
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    background-image: url("../img/site/top-bg.jpg");
    min-height: 41.5rem; } }

.top-section__mobile-pic {
  position: relative;
  bottom: -5rem;
  margin-top: -5rem; }
  .top-section__mobile-pic img {
    width: 100%; }
  @media (min-width: 768px) {
    .top-section__mobile-pic {
      display: none; } }

.top-box {
  padding: 0.5rem 0 0;
  text-align: center; }
  @media (min-width: 768px) {
    .top-box {
      width: 41rem;
      max-width: 100%;
      margin: 0 0 0 auto; } }
  .top-box__logo {
    width: 22.8rem;
    margin: 6.5rem auto 3.5rem; }
    .top-box__logo-label {
      font-size: 3.6rem;
      text-transform: uppercase;
      padding: 2rem 1rem 0;
      margin: 2rem auto 0;
      display: inline-block;
      border-top: 1px solid #555555; }
  .top-box__text {
    margin: 0 auto 2rem; }
  .top-box__desc h2 {
    font-size: 4.4rem;
    line-height: 4.4rem;
    font-weight: 700;
    text-transform: uppercase;
    margin: 2.5rem auto 0; }
  .top-box__desc p {
    font-size: 1.9rem;
    font-weight: 400;
    line-height: 2.4rem;
    text-transform: uppercase;
    margin: 0.5rem auto 1.5rem; }
  .top-box__action {
    margin: 3rem auto 2rem; }
    .top-box__action a {
      margin-bottom: 2rem; }
    .top-box__action p {
      font-size: 1.2rem; }
      .top-box__action p small {
        font-size: 1rem;
        display: block;
        margin-bottom: 1rem; }

.middle-section {
  text-align: center;
  padding: 3rem 0 0;
  background-position: bottom left, top right;
  background-repeat: no-repeat;
  background-size: 30.9rem auto, 28.5rem auto;
  background-image: url("../img/site/middle-l-bg.png"), url("../img/site/middle-r-bg.png");
  margin: 4rem auto; }

.product-top {
  max-width: 100rem;
  margin: 10rem auto; }
  @media (min-width: 768px) {
    .product-top {
      margin: 0 auto;
      display: grid;
      grid-template-columns: 47fr 53fr;
      grid-template-areas: 'text picture'; } }
  .product-top__redbox {
    color: #fff;
    grid-area: text;
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    padding: 1rem;
    margin: 2rem -15px;
    background-image: url("../img/site/middle-box-l.jpg"); }
    @media (min-width: 768px) {
      .product-top__redbox {
        margin: 2rem auto;
        width: 100%; } }
    .product-top__redbox h3 {
      font-size: 4.4rem;
      line-height: 4.4rem;
      font-weight: 700;
      text-transform: uppercase;
      margin: 2.5rem auto 0; }
    .product-top__redbox p {
      font-size: 1.9rem;
      font-weight: 400;
      line-height: 2.6rem;
      text-transform: uppercase;
      margin: 1rem auto 2rem; }
    .product-top__redbox a {
      font-weight: 700;
      color: #fff;
      background: transparent;
      line-height: 6rem;
      font-family: trade-gothic-next-condensed, sans-serif;
      font-size: 1.8rem;
      padding: 0 6rem;
      display: inline-block;
      border-radius: 0;
      border: 2px solid #fff;
      transition: all 150ms ease-in-out;
      text-transform: uppercase;
      margin: 4rem auto 2rem; }
    .product-top__redbox ul {
      font-size: 1.9rem;
      font-weight: 300;
      line-height: 2.6rem; }
  .product-top__picture {
    margin-left: -15px;
    width: 100vw;
    grid-area: picture; }
    .product-top__picture img {
      width: 100%; }
    @media (min-width: 768px) {
      .product-top__picture {
        width: auto;
        margin: 0 auto;
        position: relative;
        bottom: -15px; } }

.product-row {
  margin: 7rem auto;
  max-width: 100rem; }
  @media (min-width: 768px) {
    .product-row {
      display: grid;
      grid-template-columns: 7fr 5fr;
      gap: 6rem;
      justify-content: flex-start;
      align-items: flex-start;
      grid-template-areas: 'picture text'; }
      .product-row:first-of-type {
        margin-top: 0; } }
  @media (min-width: 768px) {
    .product-row--inversed {
      grid-template-columns: 5fr 7fr;
      grid-template-areas: 'text picture';
      justify-content: flex-end;
      align-items: center; }
      .product-row--inversed .product-row__desc {
        text-align: right; } }
  .product-row__pic {
    grid-area: picture; }
    .product-row__pic img {
      margin: 0 auto;
      width: auto; }
  .product-row__desc {
    grid-area: text; }

.product {
  margin: 0 auto;
  text-align: center; }
  @media (min-width: 768px) {
    .product {
      margin: 0 auto;
      text-align: left; } }
  .product h4 {
    font-family: trade-gothic-next-condensed, sans-serif;
    font-size: 4.4rem;
    line-height: 4.4rem;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0 auto 3rem; }
    .product h4 span {
      font-size: 1.9rem;
      font-weight: 400;
      line-height: 2.6rem;
      text-transform: uppercase;
      display: block; }
  .product ul {
    font-size: 1.9rem;
    font-weight: 300;
    line-height: 2.6rem;
    margin: 3rem auto; }

#content2 {
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  background-image: url("../img/site/footer-bg.jpg");
  padding-top: 6rem;
  max-width: 1920px;
  margin: 0 auto; }

.poll-container,
.poll {
  background: transparent;
  padding: 3rem 0;
  color: #fff;
  padding-bottom: 0; }

.poll-container h2,
.poll hgroup > h1 {
  font-family: trade-gothic-next-condensed, sans-serif;
  color: #fff;
  display: block;
  font-weight: 700;
  font-size: 4.4rem;
  line-height: 4.4rem;
  text-transform: uppercase; }
  .poll-container h2 strong,
  .poll hgroup > h1 strong {
    font-weight: inherit; }

#counter,
.poll #counter,
.poll #counter-current {
  margin-top: 3rem;
  font-weight: 300;
  font-family: trade-gothic-next, sans-serif;
  font-size: 4.4rem;
  color: #fff;
  margin-bottom: 1rem; }

.question-header,
.poll-question-header h3 {
  font-family: trade-gothic-next, sans-serif;
  font-size: 1.8rem;
  line-height: 2.4rem;
  font-weight: 300;
  color: #fff;
  margin: 0 auto;
  max-width: 750px; }

.poll .poll-question {
  max-width: 750px;
  margin-top: 2rem; }

.question-options {
  max-width: 750px;
  padding-bottom: 0; }

.question-options .option {
  display: block;
  position: relative;
  width: 100%;
  font-size: 1.8rem;
  font-style: normal;
  line-height: normal;
  margin: 10px 0;
  color: inherit;
  font-family: trade-gothic-next, sans-serif;
  font-weight: 300;
  text-transform: none; }

.poll-question input[type='radio'] + label,
.poll-question input[type='checkbox'] + label {
  font-family: trade-gothic-next, sans-serif;
  margin: 0;
  font-size: 1.8rem;
  line-height: 2.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem 1rem;
  font-weight: 300;
  background-color: #fff;
  border: 1px solid #fff;
  color: #555555;
  cursor: pointer;
  border-radius: 0;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  width: 100%;
  max-width: 750px; }

.poll-question input[type='radio'] + label:hover,
.poll-question input[type='radio']:checked + label,
.poll-question input[type='checkbox'] + label:hover,
.poll-question input[type='checkbox']:checked + label {
  background: #000;
  border: 1px solid #000;
  font-weight: 300;
  color: #fff; }

.poll-question.single-image {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 5rem;
  max-width: 100%;
  width: auto; }

.poll-question.single-image .option {
  width: 16rem; }

.poll-question.single-image input[type='radio'] + label,
.poll-question.single-image input[type='radio'] + label:hover,
.poll-question.single-image input[type='radio']:checked + label {
  padding: 0;
  display: inline-block;
  width: 16rem;
  background: transparent; }

.poll-question.single-image label > span {
  display: block;
  font-family: trade-gothic-next, sans-serif;
  font-size: 1.8rem;
  font-weight: 300;
  color: #fff;
  margin-top: 0;
  padding: 1rem 0; }

.poll-question.single-image input[type='radio'] + label:hover > span,
.poll-question.single-image input[type='radio']:checked + label > span {
  font-weight: 700;
  background: #000;
  color: #fff; }

.poll-question.single-image label .checked-style {
  display: none; }

.poll-question.single-image label > img {
  display: block;
  width: 100%;
  max-width: none; }

.poll-question {
  padding-bottom: 0;
  max-width: 750px; }

.form-navi {
  display: flex;
  width: 100%;
  margin: 3rem auto 4rem;
  text-align: center; }

.form-navi,
.form-submit {
  max-width: 400px;
  min-width: none;
  justify-content: center; }

.form-navi .btn.next,
.form-navi .btn.prev {
  font-family: trade-gothic-next, sans-serif;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 700;
  width: calc(50% - 1.5rem);
  cursor: pointer;
  height: 6.4rem;
  line-height: 6.4rem;
  border-radius: 0;
  border: 2px solid #fff;
  text-transform: uppercase;
  background-color: transparent; }
  .form-navi .btn.next:hover, .form-navi .btn.next:focus,
  .form-navi .btn.prev:hover,
  .form-navi .btn.prev:focus {
    background: #000;
    border: 2px solid #000;
    color: #fff;
    font-weight: 700; }

.form-navi .btn.next,
.form-navi .btn.next:hover {
  margin: 0;
  font-weight: 700;
  color: #fff;
  background: #000;
  border-color: #000; }

.form-navi .btn.prev::before {
  content: '« ';
  display: inline; }

.form-navi .btn.next::after {
  content: ' »';
  display: inline; }

.form-navi .btn.prev {
  margin-right: 3rem;
  font-weight: 700;
  font-family: trade-gothic-next, sans-serif; }

.form-navi .btn,
.form-navi .btn i {
  display: inline-block;
  font-style: normal; }

.form-navi .btn:before {
  display: none; }

.form-navi .btn.next i {
  padding-left: 2.5rem; }

.form-navi .btn.prev i {
  padding-right: 2.5rem; }

#poll-container .rules {
  font-family: trade-gothic-next, sans-serif;
  font-size: 1.4rem;
  color: #000; }
  #poll-container .rules a {
    color: #000;
    font-weight: 700; }
