:root {
  --blue3: #012e81;
  --orange: #f60;
  --light-grey: #868c8e;
  --white: white;
  --blue1: #2970ca;
  --dim-grey: #474747;
  --color: white;
  --868c8e: black;
  --amarillo: #ffc800;
  --blue2: #1259b3;
  --blue4: #02194d;
  --dorado: #b38b11;
}

body {
  color: #333;
  align-items: flex-start;
  font-family: Open Sans, sans-serif;
  font-size: 1vw;
  line-height: 1em;
  top: 0;
}

h1 {
  text-transform: uppercase;
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 3.4vw;
  font-weight: 800;
  line-height: 1.2em;
}

h2 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 32px;
  font-weight: bold;
  line-height: 36px;
}

p {
  margin-top: 2vw;
  margin-bottom: 10px;
  font-family: Open Sans, sans-serif;
  font-size: 1vw;
  line-height: 1.5em;
}

.main {
  width: 85vw;
  height: 100%;
  max-width: 100vw;
  margin-left: 15vw;
  margin-right: auto;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}

.section {
  width: 100%;
  height: auto;
  min-height: auto;
  min-width: auto;
  object-fit: fill;
  flex-flow: wrap;
  align-content: space-around;
  justify-content: flex-start;
  align-items: stretch;
  margin-bottom: 0;
  margin-left: auto;
  display: flex;
  position: static;
  overflow: visible;
}

.section.gris {
  background-color: #afafaf;
}

.section.ngo {
  background-color: #000;
}

.section.text_gris {
  color: #554a4a;
}

.section.azul {
  background-color: var(--blue3);
}

.boton_link {
  min-width: auto;
  color: var(--orange);
  text-align: center;
  background-color: rgba(0, 0, 0, 0);
  margin-top: 0;
  margin-bottom: .8vw;
  padding: 10px 0;
  font-size: .8vw;
  font-weight: 800;
  display: block;
}

.boton_link:hover {
  background-color: var(--light-grey);
  color: var(--white);
}

.boton_link.w--current {
  background-color: var(--orange);
  color: var(--white);
}

.boton_link.azul {
  width: 100%;
  min-width: auto;
  background-color: var(--blue1);
  color: var(--white);
  align-self: auto;
  margin: 3vw auto 0 0;
  padding-left: 2vw;
  padding-right: 2vw;
  font-size: 1.5vw;
  line-height: 1.1em;
  position: static;
  bottom: 10vw;
}

.boton_link.azul:hover {
  background-color: var(--dim-grey);
}

.boton_link.azul.inv {
  background-color: var(--white);
  color: var(--blue1);
}

.boton_link.movil {
  width: 100%;
  aspect-ratio: auto;
  color: var(--blue1);
  text-align: left;
  -webkit-text-stroke-color: var(--blue1);
  text-transform: uppercase;
  object-fit: fill;
  flex: 0 auto;
  margin-bottom: .5vw;
  padding-top: .6vw;
  padding-bottom: .6vw;
  padding-left: 2vw;
  font-size: 1vw;
  font-weight: 700;
  line-height: 1.1em;
}

.boton_link.movil:hover {
  color: var(--white);
}

.boton_link.movil.w--current {
  background-color: var(--blue1);
  color: var(--white);
  -webkit-text-stroke-color: #2970ca;
  font-size: 1vw;
  font-weight: 700;
}

.redes-sociales {
  width: 55%;
  height: auto;
  grid-column-gap: .2vw;
  grid-row-gap: 1vw;
  flex-flow: row;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-content: center;
  justify-content: center;
  align-items: center;
  margin: auto auto 2vh 2vw;
  display: flex;
  position: static;
  bottom: 1vw;
}

.redes-sociales.footer {
  background-color: var(--868c8e);
  align-items: flex-end;
  margin-left: 0;
  padding-bottom: 2vh;
}

.red__social {
  opacity: 1;
  flex-flow: row;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
  margin-left: 10px;
  margin-right: 10px;
  padding-left: 0;
  padding-right: 0;
  display: block;
}

.img_red_social {
  width: 1.8vw;
  height: auto;
  max-width: none;
  padding: 0;
}

.img_red_social:hover {
  filter: none;
}

.bg_color {
  z-index: 1;
  width: 50%;
  height: 100%;
  min-height: auto;
  mix-blend-mode: normal;
  background-color: rgba(236, 236, 236, 0);
  justify-content: center;
  align-items: flex-end;
  margin: auto;
  padding-bottom: 20vh;
  display: flex;
  position: static;
  top: 0%;
  bottom: auto;
  left: auto;
  right: 0%;
}

.titulo_seccion {
  color: var(--white);
  text-transform: uppercase;
  margin: auto auto 2vh 0;
  font-size: 4vw;
  font-weight: 800;
  line-height: 4.5vw;
  position: static;
  top: auto;
  bottom: 25vw;
  left: 0%;
  right: auto;
}

.titulo_seccion.negativo {
  color: var(--dim-grey);
}

.resalte {
  background-color: var(--amarillo);
  color: var(--white);
  padding-left: 15px;
  padding-right: 15px;
}

.footer {
  width: auto;
  height: 10vw;
  background-color: var(--orange);
  padding-top: 0;
  padding-bottom: 0;
}

.image-5 {
  width: 100%;
  height: auto;
  margin-bottom: 0;
  padding-left: 4vw;
  padding-right: 4vw;
}

.video {
  width: 100%;
  height: auto;
  margin-top: 3vw;
  margin-bottom: 3vw;
}

.image-8 {
  width: 70%;
  align-self: flex-end;
  margin: 2vw auto 2vw 0;
  display: block;
}

.col_50_hero {
  z-index: 2;
  width: 50%;
  background-color: rgba(71, 71, 71, 0);
  flex-direction: column;
  flex: 1;
  justify-content: space-between;
  align-self: stretch;
  align-items: flex-start;
  margin-left: 0;
  margin-right: auto;
  padding: 5vw 2vw;
  display: flex;
  position: static;
  bottom: auto;
}

.col_50_hero.espacio {
  justify-content: space-around;
  padding-top: 5vw;
  padding-bottom: 5vw;
}

.col_50_hero.naranja {
  background-color: rgba(41, 112, 202, .43);
  background-image: linear-gradient(rgba(41, 112, 202, .92), rgba(41, 112, 202, .92)), url('../images/quema-grasa.webp');
  background-position: 0 0, 0 0;
  background-size: auto, cover;
}

.col_50_hero.azul2 {
  background-color: var(--blue2);
}

.col_50_hero.negro {
  background-color: var(--868c8e);
}

.col_50_hero.principal {
  justify-content: flex-end;
}

.col_50_hero.bco {
  background-color: var(--blue2);
}

.cont_logo_opti {
  align-self: flex-start;
  margin-top: 2vw;
}

.logotipo_opti {
  width: 100%;
  padding-left: 2vw;
  padding-right: 2vw;
}

.video-2 {
  width: 90%;
}

.paragraph {
  padding-right: 4vw;
}

.p_blanco {
  color: #fff;
}

.p_blanco.negativo {
  color: var(--dim-grey);
}

.seccion_principal {
  width: 85vw;
  height: auto;
  background-image: url('../images/Imagen_Asset-1.png'), linear-gradient(to right, var(--white) 50%, #d1d1d1 50%);
  background-position: 100% 0, 0 0;
  background-repeat: no-repeat, repeat;
  background-size: 90%, auto;
  display: flex;
}

.seccion_principal.hero {
  height: 100vh;
  background-image: url('../images/Imagen-Hero-azul.webp');
  background-position: 100% 0;
  background-repeat: no-repeat;
  background-size: 80%;
  background-attachment: scroll;
  overflow: visible;
}

.barra_menu {
  z-index: 999;
  width: 15vw;
  height: 100vh;
  flex-flow: column wrap;
  justify-content: center;
  align-items: stretch;
  margin-left: 0;
  padding-left: 0;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
}

.div-block-4 {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  display: flex;
}

.heading {
  color: #fff;
  margin-top: 0;
  margin-bottom: 1vw;
  font-size: 2vw;
  line-height: 1em;
}

.heading.antes {
  color: rgba(255, 255, 255, .5);
  font-size: 1.5vw;
}

.heading.antes.azul {
  color: rgba(41, 112, 202, .6);
}

.heading.ngo {
  color: var(--blue1);
}

.subrayar {
  text-decoration: line-through;
}

.cont_precio {
  width: 100%;
  height: auto;
  margin-top: 3vw;
}

.imagen_movil {
  width: 100%;
  height: auto;
  margin-bottom: 0;
  padding-left: 4vw;
  padding-right: 4vw;
}

.imagen_movil.movil, .navbar {
  display: none;
}

.text-block {
  color: #fff;
  font-size: 1.1vw;
  font-style: italic;
  line-height: 1.1em;
}

.text-block.azul {
  color: var(--blue3);
}

@media screen and (max-width: 991px) {
  body {
    font-size: 2.6vw;
  }

  h1 {
    font-size: 6vw;
  }

  p {
    font-size: 2.5vw;
  }

  .main {
    width: 100vw;
    height: auto;
    margin: 0 auto auto;
  }

  .section.gris {
    flex-direction: column;
  }

  .section.ngo {
    flex-flow: column wrap;
  }

  .section.text_gris, .section.azul {
    flex-direction: column;
  }

  .boton_link {
    margin-left: 20px;
    margin-right: 20px;
    padding-left: 10px;
    padding-right: 10px;
  }

  .boton_link.azul {
    font-size: 3vw;
  }

  .boton_link.azul.inv {
    background-color: var(--blue1);
    color: var(--white);
  }

  .boton_link.azul.inv._2 {
    background-color: var(--color);
    color: var(--blue1);
  }

  .boton_link.movil {
    margin-bottom: .5vw;
    margin-left: 1vw;
    margin-right: 1vw;
    padding: .5vh 1vw 1vh;
  }

  .redes-sociales {
    width: 20%;
    height: 100%;
    grid-column-gap: 0vw;
    flex-flow: row;
    flex: 0 auto;
    align-content: center;
    justify-content: center;
    align-self: auto;
    align-items: center;
    margin-right: 0;
    display: none;
    position: relative;
  }

  .redes-sociales.footer {
    margin-left: auto;
    margin-right: auto;
    display: flex;
  }

  .img_red_social {
    width: 3.2vw;
  }

  .bg_color {
    width: 100%;
    padding-bottom: 3vh;
    padding-left: 0;
    padding-right: 0;
    position: static;
  }

  .titulo_seccion.movil, .titulo_seccion.negativo {
    font-size: 7vw;
    line-height: 1em;
  }

  .footer {
    background-color: var(--868c8e);
  }

  .image-5 {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }

  .image-5.movil {
    display: none;
  }

  .col_50_hero {
    width: 100%;
    padding: 5vw 3vw 15vw;
  }

  .col_50_hero.espacio {
    margin-left: auto;
    padding: 15vw 3vw;
  }

  .col_50_hero.naranja {
    background-image: linear-gradient(#2970ca, rgba(255, 255, 255, 0)), linear-gradient(rgba(41, 112, 202, .92), rgba(41, 112, 202, .92)), url('../images/quema-grasa.webp');
    background-position: 0 0, 0 0, 0 0;
    background-size: auto, auto, cover;
    padding-right: 3vw;
  }

  .col_50_hero.azul2 {
    background-color: var(--white);
    padding-top: 5vw;
  }

  .col_50_hero.plano {
    background-color: #2970ca;
  }

  .cont_logo_opti {
    width: 33%;
  }

  .video-2 {
    width: 100%;
  }

  .p_blanco.ngo {
    color: var(--868c8e);
  }

  .seccion_principal.hero {
    width: 100%;
    height: 100%;
    background-image: url('../images/Imagen-Hero-azul.webp');
    background-position: 100% 0;
    background-repeat: no-repeat;
    background-size: 100%;
    flex-wrap: wrap-reverse;
    justify-content: center;
    padding-top: 300px;
    padding-left: 3vw;
    padding-right: 3vw;
  }

  .barra_menu {
    display: none;
  }

  .heading {
    font-size: 4vw;
  }

  .heading.antes {
    font-size: 3vw;
  }

  .imagen_movil {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }

  .imagen_movil.movil {
    margin-left: 0;
    display: block;
  }

  .navbar {
    width: 100%;
    background-color: var(--white);
    justify-content: space-between;
    display: flex;
    position: fixed;
    top: 0;
  }

  .image-9 {
    height: 100px;
    margin-top: 15px;
    margin-bottom: 15px;
  }

  .container {
    width: 100%;
    flex-direction: row;
    flex: 0 auto;
    justify-content: space-between;
    align-self: auto;
    align-items: center;
    display: flex;
  }

  .menu-button {
    display: block;
  }

  .menu-button.w--open {
    background-color: #fff;
  }

  .div-block-5 {
    width: 95%;
    justify-content: space-between;
    align-items: center;
    display: flex;
  }

  .icon {
    color: #000;
    font-size: 5vw;
  }

  .nav-menu {
    height: 90vh;
    text-align: center;
    background-color: #fff;
    flex-wrap: wrap;
    padding-top: 41px;
    padding-bottom: 41px;
    display: flex;
  }

  .nav-link {
    color: var(--blue1);
    text-transform: uppercase;
    flex: 1;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    display: flex;
  }

  .nav-link-2 {
    text-align: left;
  }

  .text-block {
    font-size: 2.1vw;
    line-height: 1.3em;
  }
}

@media screen and (max-width: 767px) {
  p {
    font-size: 3vw;
  }

  .main {
    margin-top: 0;
  }

  .section.gris {
    flex-wrap: wrap;
  }

  .boton_link.azul.inv {
    font-size: 4vw;
  }

  .titulo_seccion.movil {
    font-size: 8vw;
  }

  .col_50_hero {
    width: 100%;
  }

  .seccion_principal.hero {
    background-position: 50% 0;
    background-size: 150%;
  }

  .heading {
    font-size: 5vw;
  }

  .heading.antes {
    font-size: 4vw;
  }

  .icon {
    font-size: 6vw;
  }

  .nav-link {
    font-size: 4vw;
  }

  .text-block {
    font-size: 2.8vw;
  }
}

@media screen and (max-width: 479px) {
  body {
    font-size: 5vw;
  }

  h1 {
    font-size: 12vw;
  }

  p {
    font-size: 5vw;
  }

  .main {
    height: auto;
    margin-top: -65px;
    margin-bottom: auto;
    overflow: hidden;
  }

  .section {
    width: 100%;
    margin-top: 50vw;
    margin-right: auto;
    display: block;
  }

  .section.gris {
    margin-top: 0;
    display: flex;
  }

  .section.ngo, .section.text_gris, .section.azul {
    margin-top: 0;
  }

  .boton_link {
    height: 100%;
    justify-content: center;
    align-items: center;
    margin-left: 5px;
    margin-right: 5px;
    font-size: 2vw;
    display: flex;
  }

  .boton_link:hover {
    padding-left: 5px;
    padding-right: 5px;
  }

  .boton_link.w--current {
    padding-left: 5px;
    padding-right: 5px;
    font-size: 2vw;
  }

  .boton_link.azul {
    width: 100%;
    height: auto;
    text-align: center;
    margin-right: 0;
    font-size: 5vw;
    line-height: 1em;
    text-decoration: none;
  }

  .boton_link.azul.inv {
    font-size: 5vw;
  }

  .boton_link.movil {
    margin-left: 1vw;
    padding-top: 1vh;
    line-height: 1em;
  }

  .redes-sociales {
    justify-content: center;
    display: none;
  }

  .redes-sociales.footer {
    width: 100vw;
    height: 20vw;
    background-color: rgba(0, 0, 0, 0);
    margin-top: 2vh;
    margin-right: auto;
    display: flex;
  }

  .red__social {
    width: 8vw;
    height: auto;
    margin-left: 4vw;
    margin-right: 4vw;
  }

  .img_red_social {
    width: auto;
    height: auto;
  }

  .bg_color {
    width: 100%;
    display: flex;
  }

  .titulo_seccion {
    text-align: left;
    margin-left: auto;
    font-size: 9vw;
    line-height: 9vw;
  }

  .titulo_seccion.movil {
    margin-left: 0;
    font-size: 12vw;
    line-height: 1.2em;
  }

  .titulo_seccion.negativo {
    margin-left: 0;
  }

  .resalte {
    padding-left: 0;
    padding-right: 0;
    font-size: 10.5vw;
  }

  .footer {
    height: 10vh;
    background-color: var(--868c8e);
    display: flex;
  }

  .image-8 {
    width: auto;
    margin-top: 4vw;
  }

  .col_50_hero {
    width: 100%;
    justify-content: flex-end;
    margin-bottom: 0;
    padding-bottom: 10vw;
    display: flex;
  }

  .col_50_hero.espacio {
    margin-bottom: 0;
  }

  .col_50_hero.naranja {
    flex-direction: column;
    margin-bottom: 0;
  }

  .col_50_hero.azul2, .col_50_hero.bco {
    margin-bottom: 0;
  }

  .cont_logo_opti {
    width: 50%;
  }

  .seccion_principal.hero {
    background-position: 50% 0;
    background-size: 250%;
  }

  .heading {
    font-size: 7vw;
  }

  .heading.antes {
    font-size: 6vw;
  }

  .imagen_movil.movil {
    width: 100%;
  }

  .image-9 {
    height: 60px;
  }

  .icon {
    font-size: 10vw;
  }

  .nav-menu {
    height: 90vh;
  }

  .nav-link {
    font-size: 6vw;
  }

  .text-block {
    font-size: 4vw;
  }
}


