/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

body {
  line-height: 1; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

:root {
  --green: #009056;
  --yellow: #04aa96;
  --text: #686868;
  --grey: #CCCCCC;
  --red: #BF4659;
  --acyellow: #716122;
  --acgreen: #70B66B;
  --ligreen: #F0F6F3; }

/* variables*/
/************************************************************
                        RESPONSIVE
 *************************************************************/
/************************************************************
                      ESTILOS GLOBALES
 *************************************************************/
* {
  box-sizing: border-box; }

html {
  scroll-behavior: smooth !important; }
  @media screen and (min-width: 1024px) {
    html {
      font-size: 0.8rem; } }
  @media screen and (min-width: 1400px) {
    html {
      font-size: 1rem; } }

body {
  font-family: "Roboto", sans-serif; }

img {
  max-width: 100%; }

p,
a,
ul li {
  font-size: 1.1rem;
  line-height: 2rem;
  text-decoration: none; }

p strong {
  font-weight: 600; }

.font-r {
  font-weight: 400; }
.font-b, .btn {
  font-weight: 700; }

p {
  color: #686868; }

/************************************************************
                       UTILIDADES
 *************************************************************/
.flex {
  display: flex; }

.grid {
  display: grid; }

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

.wrap {
  padding: 0 8%; }

.btn {
  display: inline-block;
  border-radius: 2rem;
  text-decoration: none;
  padding: 1rem 2rem; }
  .btn-main {
    color: var(--yellow);
    background: var(--green);
    margin-top: 1rem;
    transition: 200ms background ease-in-out; }
    .btn-main:hover {
      background: #01542b; }
  .btn-secondary {
    color: #686868;
    background: #e0e0e0;
    margin-top: 1rem;
    transition: 200ms background ease-in-out; }
    @media screen and (min-width: 1024px) {
      .btn-secondary {
        margin-left: 1rem; } }
    .btn-secondary:hover {
      background: #5b5b5b;
      color: #fff; }

/************************************************************
                     ESTILOS SECCION
 *************************************************************/
main {
  position: relative; }
  main .contenedor {
    display: flex;
    flex-direction: row;
    width: 100%;
    min-height: 96vh; }
    main .contenedor .left .container.d-flex.flex-column {
      padding: 0 40px;
      min-height: 96vh;
      justify-content: space-between; }
    main .contenedor .left img.pasos-logo {
      width: 250px; }
    main .contenedor .left .titulo {
      color: #38023B;
      width: 70%; }
      main .contenedor .left .titulo h1 {
        font-size: 4rem;
        font-weight: 600;
        padding: 1rem 0; }
      main .contenedor .left .titulo h2 {
        font-size: 3.2rem;
        font-weight: 600; }
      main .contenedor .left .titulo h4 {
        font-size: 1.5rem;
        color: #686868;
        line-height: 1.9rem; }
    main .contenedor .left .personajes {
      position: relative;
      width: 70%;
      height: 440px;
      left: 20px;
      z-index: 1;
      background-image: url(../img/personajes.png);
      background-position: top center;
      background-size: cover;
      background-repeat: no-repeat;
      margin-right: 2rem; }
    main .contenedor .left .texto {
      display: flex;
      flex-direction: row;
      justify-content: flex-end;
      align-items: center;
      max-width: 96%; }
    main .contenedor .right {
      min-height: 96vh;
      display: flex;
      flex-direction: column;
      justify-content: center; }
      main .contenedor .right .ruleta .imagen-ruleta {
        position: relative; }
      main .contenedor .right .ruleta .center-ruleta {
        position: absolute;
        background-image: url(../img/centro-ruleta.svg);
        background-position: center;
        background-repeat: no-repeat;
        width: 120px;
        height: 120px;
        left: 0;
        right: 0;
        margin: 0 auto;
        z-index: 50;
        top: calc(45% - 30px);
        bottom: 0%;
        background-size: cover; }
      main .contenedor .right .ruleta img#ruleta {
        opacity: 0.9; }

.section-bg {
  background-image: url(../img/bg-right.png);
  background-position: left center;
  background-repeat: no-repeat;
  width: 58%;
  background-size: cover;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1; }

.bg-yellow {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -2;
  background-image: url(../img/bg-yellow.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 60%;
  height: 400px; }

img.logo-bolivar {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 30rem;
  max-width: 20%; }

.vigilado {
  position: absolute;
  left: 10px;
  bottom: 20px;
  width: 1.2rem; }

.legal-top {
  position: absolute;
  top: 20px;
  right: 10px;
  width: 1.2rem; }

.legal-m {
  display: none; }

.vara {
  height: 120px;
  width: 120px;
  margin: auto;
  position: relative;
  top: 70px;
  z-index: 1000;
  background-image: url(../img/arrow-ruleta.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  left: 0;
  right: 0; }

img {
  z-index: 100;
  transition: all 5s; }

#premio {
  padding: 20px; }

footer {
  background-color: #333333; }
  footer p {
    color: #fff;
    padding: 1rem 0; }

.modal .modal-content {
  border: none;
  border-radius: 0.5rem;
  box-shadow: -1px 0px 10px 5px #686868; }
.modal p {
  text-align: center;
  font-size: 1.2rem;
  font-weight: 600;
  color: #38023B; }
.modal button.btn.btn-secondary {
  margin: 30px auto 10px;
  background-color: #38023B;
  color: #fff; }
.modal .modal-footer {
  border-top: none; }
.modal .modal-header {
  border-bottom: none;
  background-image: url(../img/header-modal.jpg);
  height: 190px;
  background-position: center;
  background-size: cover;
  background-color: #05DDBE;
  background-repeat: no-repeat; }
  .modal .modal-header .btn-close {
    background-color: #04aa96;
    border-radius: 50%;
    position: absolute;
    top: 0px;
    right: 0px;
    background: transparent url(../img/close.svg) center/1em auto no-repeat;
    opacity: 1;
    background-size: contain;
    transition: all .3s ease-in-out; }
  .modal .modal-header .btn-close:hover {
    opacity: .8; }

.personajes-m {
  display: none; }

.btn-primary.btn-respuesta {
  background-color: #38023B;
  color: #fff;
  width: 200px;
  padding: 10px 20px;
  border-radius: 20px;
  text-align: center;
  margin: 0 auto;
  font-style: italic;
  cursor: pointer;
  transition: all ease-in-out .3s; }
  .btn-primary.btn-respuesta:hover {
    background-color: #04aa96;
    color: #38023B; }
  .btn-primary.btn-respuesta.active {
    background-color: #70B66B; }

div#respuesta {
  text-align: center;
  opacity: 0;
  height: 0;
  transition: all ease-in-out .3s; }

div#respuesta.show {
  opacity: 1;
  height: auto; }

p.respuestas {
  font-style: italic;
  color: #686868;
  font-size: 1rem;
  border-top: 1px solid #38023B;
  padding-top: 1rem;
  margin-top: 1rem;
  font-weight: 400;
  line-height: normal; }
  p.respuestas ul li {
    font-size: 1rem; }
  p.respuestas ul li::before {
    content: "";
    height: 5px;
    width: 5px;
    background-color: #04aa96;
    display: inline-block;
    border-radius: 5px;
    margin-right: 5px;
    position: relative;
    top: -3px; }
  p.respuestas ol {
    list-style: initial; }
    p.respuestas ol li {
      font-size: 1rem;
      color: #04aa96; }

p.respuestas.btn {
  background-color: #fade92;
  padding: 0 10px;
  width: 200px;
  border-radius: 30px;
  margin: 0 auto; }

@media (min-width: 1900px) {
  main .contenedor .left .container.d-flex.flex-column {
    min-height: 110vh; }

  main .contenedor .right .ruleta .center-ruleta {
    width: 160px;
    height: 160px; }

  .vara {
    height: 150px;
    width: 150px;
    top: 90px; } }
@media (min-width: 991px) {
  main .contenedor .left .titulo, main .contenedor .left img.pasos-logo {
    padding-left: 40px; }

  .textos {
    padding-top: 130px; } }
@media (max-width: 1300px) {
  main .contenedor .left .titulo {
    width: 100%; } }
@media (max-width: 990px) {
  main .contenedor {
    flex-direction: column;
    min-height: 96vh;
    height: auto; }

  .section-bg {
    background-image: url(../img/bg-right-m.png);
    background-position: left center;
    background-repeat: no-repeat;
    width: 48%;
    background-size: cover;
    height: 69%;
    position: absolute;
    top: inherit;
    right: 0px;
    z-index: -1;
    bottom: 150px;
    overflow: hidden; }

  .col-6 {
    width: 100%;
    text-align: center; }

  .right.col-5 {
    width: 100%; }
    .right.col-5 .ruleta {
      max-width: 70%;
      margin: 0px 11rem; }

  main .contenedor .right {
    min-height: 10vh; }

  .vara {
    height: 80px;
    width: 80px;
    top: 45px; }

  img.logo-bolivar {
    max-width: 40%; }

  main .contenedor .left .container.d-flex.flex-column {
    min-height: 10vh; }

  main .contenedor .left img.pasos-logo {
    margin: 0 auto; }

  main .contenedor .left .titulo h4 {
    font-size: 1.2rem; }
    main .contenedor .left .titulo h4 span {
      font-style: italic !important; }
  main .contenedor .left .titulo h2 {
    font-size: 2rem; }
  main .contenedor .left .titulo h1 {
    font-size: 3rem;
    padding: .5rem 0; }
  main .contenedor .left .personajes {
    display: none; }
  main .contenedor .left .texto {
    justify-content: center;
    max-width: 100%; }
  main .contenedor .left .textos {
    margin-top: 2.5rem;
    justify-content: center; }
    main .contenedor .left .textos p {
      font-size: 1rem; }

  .personajes-m {
    position: relative;
    width: 70%;
    height: 440px;
    left: 20px;
    z-index: 1;
    background-image: url(../img/personajes.png);
    background-position: top center;
    background-size: 80%;
    background-repeat: no-repeat;
    margin-right: 5rem;
    display: block; }

  .bg-yellow {
    background-size: cover;
    width: 100%;
    height: 310px; }

  .legal-m {
    display: block; }

  .legal-desktop {
    display: none; }

  .legal-top {
    right: 5px;
    width: .8rem; } }
@media (max-width: 768px) {
  .right.col-5 .ruleta {
    max-width: 100%;
    margin: 0px 2rem; }

  main .contenedor .left .titulo h4 {
    font-size: 1.1rem;
    line-height: 1.6rem; }
  main .contenedor .left .titulo h2 {
    font-size: 1.6rem; }
  main .contenedor .left .titulo h1 {
    font-size: 2.5rem;
    padding: .5rem 0; }
  main .contenedor .left .personajes {
    display: none; }
  main .contenedor .left .texto {
    justify-content: center; }
  main .contenedor .left .textos {
    margin-top: 2.5rem;
    justify-content: center; }
    main .contenedor .left .textos p {
      font-size: 1rem;
      line-height: 1.6rem; }

  main .contenedor .right .ruleta .center-ruleta {
    height: 80px;
    width: 80px;
    top: calc(45% - 25px); }

  .vara {
    height: 60px;
    width: 60px;
    top: 35px; }

  main .contenedor .left img.pasos-logo {
    width: 120px;
    padding-top: 20px !important;
    padding-bottom: 2rem !important; }

  img.logo-bolivar {
    max-width: 50%; }

  .personajes-m {
    height: 350px; } }
@media (max-width: 400px) {
  .section-bg {
    width: 60%;
    height: 58%;
    bottom: 120px; }

  .personajes-m {
    position: relative;
    width: 70%;
    height: 300px;
    left: 20px;
    z-index: 1;
    background-image: url(../img/personajes.png);
    background-position: top center;
    background-size: 80%;
    background-repeat: no-repeat;
    margin-right: 5rem;
    display: block; }

  main .contenedor .right .ruleta .center-ruleta {
    height: 50px;
    width: 50px;
    top: calc(45% - 15px); } }
.video {
  margin: 0 auto;
  text-align: center; }
  .video video {
    width: 100%;
    max-width: 100%; }

a.btn-primary {
  margin: 30px auto;
  text-align: center;
  display: block;
  width: 300px;
  padding: 10px 20px;
  border-radius: 40px;
  background-color: #04aa96;
  transition: all .3s ease-in-out; }
  a.btn-primary:hover {
    background-color: #38023B; }

body.home {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100vh; }
