/*-------- head --------*/

.head{
  margin-bottom: 0 !important;
}

.head img{
  width: 100%;
  height: auto;
  margin-bottom: -6px;
}

/*-------- Barra --------*/

.barra{
  background-color: #00AFEF;
  margin-bottom: 0 !important;
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 1000;
}

.barra img{
  width: 100%;
  height: auto;
  margin-bottom: -6px;
}

/*-------- Joystick --------*/

.joystick{
  display: block;
  position: fixed;
  top: calc(50vh - 50px);
  right: 20px;
  z-index: 1000;
  width: 50px;
}

.joystick svg{
  color: #fff;
  width: 50px !important;
  height: 50px;
  cursor: pointer;
  -webkit-filter: drop-shadow( 0px 0px 4px rgba(0,0,0,0.5) ); 
  filter: drop-shadow( 0px 0px 4px rgba(0,0,0,0.5) );
}

@media(max-width: 600px){
  .joystick{
    width: 100%;
    left: 0;
    right: auto;
    bottom: 0;
    top: auto;
  }
  .joystick .fa-arrow-alt-circle-down{
    position: absolute;
    bottom: 0;
    right: 0px;
  }
}

.fa-arrow-alt-circle-up{
  display: none;
}

/*-------- Steps 1 --------*/

.step-1{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  min-height: 100vh;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.step-1 h1{
  font-size: 3em;
  color: white;
  font-family: 'bahnschrift';
  width: 100%;
  margin-bottom: 1em;
  margin-top: -2em;
}

.step-1 h2{
  font-size: 3em;
  color: white;
  font-family: 'bahnschrift';
  margin: 0;
  width: 100%;
}

/*-------- Steps 2 --------*/

.step-2{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 0 5%;
  min-height: 100vh;
  display: flex;
  align-items: center;
}

.step-2 h2{
  font-size: 3em;
  color: white;
  font-family: 'bahnschrift';
  margin: 0;
}

/*-------- Steps 3 --------*/

.step-3{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 0 5%;
  min-height: 100vh;
}

.step-3 h2{
  font-size: 3em;
  color: white;
  font-family: 'bahnschrift';
  margin: 0;
  padding: .5em;
}

.step-3 img{
  width: 100%;
  height: 55vh;
  object-fit: contain;
  background-color: #eee;
}

.step-3 p{
  font-size: 1.25em;
  color: white;
  line-height: 1.25em;
  font-family: 'caviardreams';
  margin: 0;
  padding: .5em;
}

/*-------- Steps 4 --------*/

.step-4{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: .5em 5%;
  min-height: 100vh;
}

.step-4 h2{
  font-size: 3em;
  color: white;
  font-family: 'bahnschrift';
  margin: 0;
  font-weight: bold;
}

.step-4 h3{
  font-size: 2.5em;
  color: white;
  font-family: 'caviardreams';
  margin: 0;
}

.step-4 img{
  width: 100%;
  height: 60vh;
  object-fit: contain;
  background-color: #eee;
}

.step-4 p{
  font-size: 1.25em;
  color: white;
  line-height: 1.25em;
  font-family: 'caviardreams';
  margin: 0;
}

/*-------- Steps 5 --------*/

.step-5{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 0 5%;
  min-height: 100vh;
  display: flex;
  align-items: center;
}

.step-5 h2{
  font-size: 2.5em;
  color: white;
  font-family: 'caviardreams';
  margin: 0;
}

/*-------- Steps 6 --------*/

.step-6{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 0 5%;
  min-height: 100vh;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding-bottom: 100px;
}

.step-6 h2{
  font-size: 2.5em;
  color: white;
  font-family: 'bahnschrift';
  margin: 0;
}

.step-6 p{
  font-size: 1.25em;
  line-height: 1.25em;
  color: white;
}

.step-6 .col div{
  background-color: #00CD90FF;
  padding: 20px;
}

/*-------- Modal --------*/

.modal{
  padding: 3% !important;
  width: 80% !important;
  z-index: 9999 !important;
}

.modal h2{
  font-size: 2.5em;
  font-family: 'bahnschrift';
  color: white;
  margin: 0;
}

.modal .col{
  background-color: #eee;
  padding: 2em !important;
}

.modal p{
  font-size: 1.25em;
  line-height: 1em;
  margin: .5em 0;
  font-family: 'bahnschrift';
  color: black !important;
  text-align: left !important;
}

.modal svg{
  position: absolute;
  top: 5px;
  right: 5px;
  width: 50px !important;
  height: 50px;
  cursor: pointer;
}

#planoBronze{
  background-color: #9A2E00FF;
}

#planoPrata{
  background-color: #444444FF;
}

#planoOuro{
  background-color: #D17D00FF;
}

/*-------- Steps 8 --------*/

.step-8{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  height: 90vh;
  padding: 2vh 20vh;
  padding-top: 200;
  padding-bottom: 150px;
  position: relative;
  overflow: auto;
}

.step-8 p{
  text-align: right;
  color: white;
  font-size: 1.25em;
  line-height: 1.25em;
}

.step-8 p svg{
  color: #19065FFF !important;
  background-color: #FFF212;
  width: 20px !important;
  height: 20px;
  border-radius: 50%;
  padding: 5px;
}

.step-8 th{
  position: relative;
}

.step-8 .btn-floating{
  position: absolute;
  bottom: -20px;
  left: -20px;
  z-index: 1000;
  background-color: #FFF212 !important;
}

.step-8 .btn-floating svg{
  position: relative;
  top: 2px;
  color: #19065FFF;
}

.step-8 tbody tr td:nth-of-type(1){
  text-align: left !important;
  color: white;
  padding-left: 1em;
  font-size: 1em;
  line-height: 1em;
  font-family: 'bahnschrift';
  border: none !important;
}

.step-8 thead tr th:nth-of-type(1){
  background-color: transparent !important;
  border: none !important;
}

.step-8 tbody{
  background-color: #19065FFF;
}

.step-8 tbody tr td{
  border-radius: 0 !important;
  border-left: 1px solid #fff;
}

.step-8 thead tr th:nth-of-type(3){
  box-shadow: 0px -2px 2px 3px rgba(0,0,0,0.3);
  position: relative;
  z-index: 1;
}

.step-8 thead tr th{
  background-color: white !important;
  padding: 1em 2em !important;
  border-radius: 1em 1em 0 0 !important;
  font-size: 1.25em;
  line-height: 1em;
  text-transform: uppercase;
  font-weight: bold;
  color: #666;
}

.step-8 tfoot tr th:nth-of-type(1){
  background-color: transparent !important;
  border-top: 1px solid white;
}

.step-8 tfoot tr th{
  text-align: center;
  background-color: white !important;
  padding: 1em 0 !important;
  border-radius: 0 0 1em 1em !important;
  font-size: 1em;
  line-height: 1em;
  font-weight: bold;
  color: #666;
}

.step-8 tfoot tr th:nth-of-type(3){
  box-shadow: 0px 2px 2px 3px rgba(0,0,0,0.3);
  position: relative;
  z-index: 1;
}

.step-8 .svg-inline--fa{
  color: #FFF212;
  font-size: 1.25em;
}

@media(max-width: 992px){
  .step-8{
    padding: 0 !important;
    padding-bottom: 50px !important;
  }
  .step-8 thead tr th{
    padding: .5em 0 !important;
    margin: 0 !important;
    padding-bottom: 1.5em !important;
  }
  .step-8 tfoot tr th:nth-of-type(1){
    width: 0;
  }
  .step-8 tfoot tr th{
    display: table-cell;
    width: calc(100% / 3);
  }
}

/*-------- Steps 10 --------*/

.step-9{
  background-image: url(../images/fundo.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: right;
  margin-bottom: 0 !important;
  min-height: 100vh;
  padding: 0 5%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-bottom: 100px;
}

.step-9 h2{
  font-size: 2.75em;
  font-family: 'caviardreams';
  text-transform: uppercase;
  color: #D79937;
  text-align: center;
  margin: 0;
}

.step-9 img{
  width: 100%;
  height: 60vh;
  object-fit: contain;
}

.step-9 .col div{
  display: flex;
  align-items: center;
}

.step-9 hr{
  width: 20px;
  background-color: #D79937;
  border: 2px solid #D79937;
}

.step-9 p{
  width: calc(100% - 20px);
  padding: 0 .5em;
  font-size: 1.25em;
  line-height: 1.25em;
  color: white;
  font-family: 'bahnschrift';
}

.step-9 h3{
  font-size: 2em;
  color: white;
}

/*-------- Steps 11 --------*/

.step-10{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 0 5%;
  min-height: 100vh;
  flex-wrap: wrap;
}

.step-10 h2{
  font-size: 2.5em;
  color: white;
  font-family: 'bahnschrift';
  margin: 0;
}

.step-10 .col div{
  background-color: red;
  text-align: center;
  padding: .5em 0;
  box-shadow: -10px 10px 10px 2px rgba(0,0,0,0.5);
}

.step-10 p{
  font-size: 1.25em;
  color: white;
  padding-top: 2em;
}

.step-10 h3{
  font-size: 3em;
  font-family: 'bahnschrift';
  color: white;
  margin: 0;
}

/*-------- Steps 11 --------*/

.step-11{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 0 5%;
  min-height: 100vh;
  display: flex !important;
  align-items: center !important;
  padding-bottom: 100px;
}

.step-11 p{
  border: 2px solid white;
  padding: 1em;
  font-size: 1.5em;
  color: white;
  line-height: 1.25em;
  font-family: 'bahnschrift';
  margin: 0;
}

/*-------- Steps 12 --------*/

.step-12{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 0 5%;
  min-height: 100vh;
  flex-wrap: wrap;
  display: flex !important;
  align-items: center !important;
  padding-bottom: 100px;
}

.step-12 h2{
  font-size: 1.5em;
  color: white;
  font-family: 'bahnschrift';
  margin: 0;
}

.step-12 h3 {
  font-size: 1.5em;
  color: white;
  margin: 0;
}

.step-12 a{
  color: white;
  text-decoration: underline !important;
}

.step-12 img{
  width: 120px !important;
  height: 120px;
  object-fit: cover;
  object-position: top;
  border-radius: 50%;
  margin: 0 auto !important;
}

.step-12 .item{
  display: flex !important;
  flex-wrap: wrap;
  align-items: center !important;
  background-color: rgba(0,0,0,0.5);
  padding: 5%;
  border-radius: 2em;
}

.step-12 .owl-stage{
  display: flex !important;
  align-items: center !important;
}

.step-12 .owl-dot span{
  width: 20px !important;
  height: 20px !important;
}

.step-12 h4{
  font-size: 2em;
  font-weight: bold;
  color: white;
}

.step-12 p{
  font-size: 1em;
  line-height: 1.25em;
  color: white;
  font-family: 'bahnschrift';
}

/*-------- Steps 13 --------*/

.step-13{
  background-color: #eee;
  margin-bottom: 0 !important;
  padding: 3vh 5%;
  min-height: 100vh;
}

.step-13 h2{
  font-size: 1.5em;
  color: #000;
  font-family: 'bahnschrift';
  margin-bottom: 0;
}

.step-13 img{
  width: 100%;
  height: 90px;
  object-fit: contain;
}

.step-13 .container{
  display: flex;
  width: 100% !important;
  align-items: center;
  flex-wrap: wrap;
  padding: 5vh 0;
  padding-top: 10vh;
}

.step-13 h3{
  font-size: 1.25em;
  font-family: 'caviardreams';
  color: #000;
}

.step-13 .container div{
  width: 100%;
}

@media(min-width: 601px){
  .step-13 .container div{
    width: calc(100% / 4);
  }
}

@media(min-width: 993px){
  .step-13 .container div{
    width: calc(100% / 8);
  }
}

.step-13 .col img{
  width: 50px;
  height: 50px;
  object-fit: contain;
  position: relative;
  top: 15px;
}

.step-13 h4{
  font-size: 1.5em;
  font-family: 'bahnschrift';
  color: #000;
  margin: 0;
}

/*-------- Steps 14 --------*/

.step-14{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 5%;
  min-height: 100vh;
}

.step-14 h2{
  font-size: 2.5em;
  color: white;
  font-family: 'bahnschrift';
  margin: 0;
}

.step-14 p{
  font-size: 1.25em;
  line-height: 1.25em;
  color: white;
  font-family: 'bahnschrift';
  margin: 0;
}

.step-14 div{
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}

.step-14 img{
  width: calc(100% / 4 - .2em * 4);
  height: 60vh;
  object-fit: cover;
  object-position: top;
  border: 10px solid white;
  margin: .2em;
}

@media(max-width: 600px){
  .step-14 img{
    width: 100%;
  }
}

/*-------- Steps 15 --------*/

.step-15{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 5%;
  min-height: 100vh;
}

.step-15 h2{
  font-size: 2em;
  color: white;
  margin: 0;
}

.step-15 div{
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}

.step-15 img{
  width: calc(100% / 4 - .2em * 4);
  height: 60vh;
  object-fit: cover;
  object-position: top;
  border-radius: 2em;
  margin: .2em;
}

@media(max-width: 600px){
  .step-15 img{
    width: 100%;
  }
}

/*-------- Steps 16 --------*/

.step-16{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 5%;
  min-height: 100vh;
}

.step-16 h2{
  font-size: 2em;
  color: white;
  margin: 0;
}

.step-16 div{
  display: flex;
  width: 100%;
  flex-wrap: nowrap;
  position: relative;
  overflow: hidden;
  justify-content: center;
}

.step-16 img{
  width: calc(100% / 4);
  height: 60vh;
  object-fit: cover;
  object-position: top;
  transition: all 1s;
}

.step-16 img:hover{
  width: 40%;
}

/*-------- Steps 17 --------*/

.step-17{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  min-height: 100vh;
}

.step-17 h2{
  font-size: 3em;
  color: white;
  margin: 0;
  padding: .6em 1em;
  font-family: 'bahnschrift';
}

.step-17 img{
  width: 100%;
  height: 30vh;
  object-fit: contain;
  margin-bottom: -7px !important;
  background-color: #fff;
}

.step-17 .col{
  padding: 0 !important;
}

/*-------- Steps 18 --------*/

.step-18{
  background-color: #007FFD;
  margin-bottom: 0 !important;
  padding: 5%;
  min-height: 100vh;
}

.step-18 h2{
  font-size: 3em;
  color: white;
  margin: 0;
  font-family: 'bahnschrift';
}

.step-18 .col{
  margin-top: 20vh;
}

.step-18 p{
  font-size: 1.25em;
  line-height: 1.25em;
  color: white;
}

.step-18 img{
  width: 100%;
  height: 150px;
  object-fit: contain;
}

/*-------- TIPOGRAFIA --------*/

@font-face{
  font-family: 'bahnschrift';
  src: url(../fonts/bahnschrift.ttf);
}

@font-face{
  font-family: 'caviardreams';
  src: url(../fonts/caviardreams.ttf);
}

@font-face{
  font-family: 'segoe-ui';
  src: url(../fonts/segoe-ui.ttf);
}

address{
  font-style: normal;
}

strong{
  font-weight: bold !important;
}

figcaption{
  display: none !important;
}

figure{
  margin: 0 !important;
}

fieldset {
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

input{
  width: calc(100% - 1em) !important;
  padding-left: 1em !important;
}

@media(min-width: 993px){
  html{
    overflow-y: hidden;
  }
}