/******************************MIXINS******************************/
/* Variables */
@font-face {
  font-family: 'Circe Rounded';
  src: url("../fonts/CirceRounded-ExtraBold.eot");
  src: url("../fonts/CirceRounded-ExtraBold.eot?#iefix") format("embedded-opentype"), url("../fonts/CirceRounded-ExtraBold.woff2") format("woff2"), url("../fonts/CirceRounded-ExtraBold.woff") format("woff"), url("../fonts/CirceRounded-ExtraBold.ttf") format("truetype"), url("../fonts/CirceRounded-ExtraBold.svg#CirceRounded-ExtraBold") format("svg");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

/* General */
* {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-tap-highlight-color: transparent;
}

@media only screen and (max-width: 1360px) {
  * {
    text-rendering: auto;
  }
}

*, *::after, *::before {
  box-sizing: inherit;
}

html {
  font-size: 62.5%;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
}

body {
  background: #FBCE2B;
  min-height: 100vh;
  font-family: "Outfit", sans-serif;
  font-weight: 400;
  color: #0E2E32;
  font-size: 18px;
  line-height: 26px;
  -webkit-font-smoothing: antialiased;
  margin: 0;
  position: relative;
  overflow-x: hidden;
}

@media only screen and (max-width: 1199px) {
  body {
    font-size: 16px;
    line-height: 24px;
  }
}

@media only screen and (max-width: 600px) {
  body {
    font-size: 15px;
    line-height: 22px;
  }
}

body.background-amarillo {
  background-image: url("../img/background-amarillo.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

body.background-marron {
  background-image: url("../img/background-marron.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-color: #F9804B;
}

body.background-azul {
  background-image: url("../img/background-azul.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-color: #ddeef2;
}

body.background-azul .shadow {
  background: #90d1d6;
}

body.background-azul-oscuro {
  background-image: url("../img/background-azul-oscuro.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-color: #5672c2;
}

div {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0 0 20px 0;
  padding: 0;
  font-family: "Circe Rounded";
  letter-spacing: -1px;
  font-weight: 800;
}

h1 {
  font-size: 44px;
  line-height: 54px;
}

@media only screen and (max-width: 1360px) {
  h1 {
    font-size: 40px;
    line-height: 50px;
  }
}

@media only screen and (max-width: 991px) {
  h1 {
    font-size: 35px;
    line-height: 45px;
  }
}

@media only screen and (max-width: 600px) {
  h1 {
    font-size: 30px;
    line-height: 40px;
  }
}

@media only screen and (max-width: 480px) {
  h1 {
    font-size: 26px;
    line-height: 36px;
  }
}

h2 {
  font-size: 32px;
  line-height: 42px;
}

@media only screen and (max-width: 1360px) {
  h2 {
    font-size: 28px;
    line-height: 38px;
  }
}

@media only screen and (max-width: 991px) {
  h2 {
    font-size: 26px;
    line-height: 36px;
  }
}

@media only screen and (max-width: 600px) {
  h2 {
    font-size: 24px;
    line-height: 34px;
  }
}

@media only screen and (max-width: 480px) {
  h2 {
    font-size: 22px;
    line-height: 32px;
  }
}

h3 {
  font-size: 30px;
  line-height: 40px;
}

@media only screen and (max-width: 1360px) {
  h3 {
    font-size: 26px;
    line-height: 36px;
  }
}

@media only screen and (max-width: 991px) {
  h3 {
    font-size: 24px;
    line-height: 34px;
  }
}

@media only screen and (max-width: 600px) {
  h3 {
    font-size: 22px;
    line-height: 32px;
  }
}

@media only screen and (max-width: 480px) {
  h3 {
    font-size: 20px;
    line-height: 30px;
  }
}

h4, h5 {
  font-size: 26px;
  line-height: 36px;
}

@media only screen and (max-width: 1360px) {
  h4, h5 {
    font-size: 23px;
    line-height: 33px;
  }
}

@media only screen and (max-width: 991px) {
  h4, h5 {
    font-size: 21px;
    line-height: 31px;
  }
}

@media only screen and (max-width: 600px) {
  h4, h5 {
    font-size: 19px;
    line-height: 29px;
  }
}

@media only screen and (max-width: 480px) {
  h4, h5 {
    font-size: 18px;
    line-height: 28px;
  }
}

ul {
  margin: 0;
  padding: 0;
}

ul li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

p {
  margin: 0 0 10px 0;
  padding: 0;
  font-weight: 400;
  color: #0E2E32;
  font-size: 18px;
  line-height: 26px;
}

@media only screen and (max-width: 1199px) {
  p {
    font-size: 16px;
    line-height: 24px;
  }
}

@media only screen and (max-width: 600px) {
  p {
    font-size: 15px;
    line-height: 22px;
  }
}

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

a {
  -webkit-transition: all 0.3s ease-in;
  -moz-transition: all 0.3s ease-in;
  -ms-transform: all 0.3s ease-in;
  -o-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
  outline: none;
  text-decoration: none;
  position: relative;
}

:active, :focus {
  border: 0;
  outline: none;
}

select, textarea, input {
  -webkit-appearance: none;
  border-radius: 0;
}

input[type="checkbox"] {
  -webkit-appearance: checkbox;
}

button {
  -webkit-appearance: checkbox;
}

/* Grid */
section, footer {
  position: relative;
  width: 100%;
  margin: 0 auto;
  overflow: auto;
  padding: 30px 0;
}

@media only screen and (max-width: 767px) {
  section, footer {
    padding: 20px 0;
  }
}

section .container, footer .container {
  max-width: 1300px;
  width: 100%;
  margin: 0 auto;
  padding: 0 30px;
}

@media only screen and (max-width: 767px) {
  section .container, footer .container {
    padding: 0 20px;
  }
}

section .container .row, footer .container .row {
  margin-left: -30px;
  margin-right: -30px;
  max-width: none;
  display: flex;
  flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
  section .container .row, footer .container .row {
    margin-left: -20px;
    margin-right: -20px;
  }
}

section .container .row .col, footer .container .row .col {
  position: relative;
  padding: 0 30px;
}

@media only screen and (max-width: 767px) {
  section .container .row .col, footer .container .row .col {
    padding: 0 20px;
  }
}

section .container .row .col.col20, footer .container .row .col.col20 {
  width: 20%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col20, footer .container .row .col.col20 {
    width: 50%;
  }
}

@media only screen and (max-width: 600px) {
  section .container .row .col.col20, footer .container .row .col.col20 {
    width: 100%;
  }
}

section .container .row .col.col25, footer .container .row .col.col25 {
  width: 25%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col25, footer .container .row .col.col25 {
    width: 50%;
  }
}

@media only screen and (max-width: 600px) {
  section .container .row .col.col25, footer .container .row .col.col25 {
    width: 100%;
  }
}

section .container .row .col.col33, footer .container .row .col.col33 {
  width: 33.3333%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col33, footer .container .row .col.col33 {
    width: 100%;
  }
}

section .container .row .col.col40, footer .container .row .col.col40 {
  width: 40%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col40, footer .container .row .col.col40 {
    width: 100%;
  }
}

section .container .row .col.col45, footer .container .row .col.col45 {
  width: 45%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col45, footer .container .row .col.col45 {
    width: 100%;
  }
}

section .container .row .col.col50, footer .container .row .col.col50 {
  width: 50%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col50, footer .container .row .col.col50 {
    width: 100%;
  }
}

section .container .row .col.col55, footer .container .row .col.col55 {
  width: 55%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col55, footer .container .row .col.col55 {
    width: 100%;
  }
}

section .container .row .col.col60, footer .container .row .col.col60 {
  width: 60%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col60, footer .container .row .col.col60 {
    width: 100%;
  }
}

section .container .row .col.col66, footer .container .row .col.col66 {
  width: 66.6666%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col66, footer .container .row .col.col66 {
    width: 100%;
  }
}

section .container .row .col.col75, footer .container .row .col.col75 {
  width: 66.6666%;
}

@media only screen and (max-width: 767px) {
  section .container .row .col.col75, footer .container .row .col.col75 {
    width: 100%;
  }
}

section .container.container-big, footer .container.container-big {
  max-width: 1300px;
}

section .container.container-mini, footer .container.container-mini {
  max-width: 1020px;
}

/* Comun */
.logos-partners {
  background-image: url("../img/background-logos.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 200px;
  z-index: -1;
  padding: 0;
}

@media only screen and (max-width: 991px) {
  .logos-partners {
    height: auto;
  }
}

.logos-partners img {
  max-width: 700px;
  margin: 80px auto 0 auto;
}

@media only screen and (max-width: 991px) {
  .logos-partners img {
    margin: 0 auto;
    padding: 50px 20px 30px 20px;
    width: 100%;
  }
}

@media only screen and (max-width: 600px) {
  .logos-partners img {
    padding: 30px 15px 20px 15px;
  }
}

.boton-box {
  height: 54px;
}

.boton {
  padding: 0 28px;
  color: white;
  border-radius: 10px;
  color: #0E2E32;
  border: 4px solid #0E2E32;
  font-family: "Outfit", sans-serif;
  text-transform: uppercase;
  position: relative;
  height: 54px;
  cursor: pointer;
  font-size: 22px;
  font-weight: 800;
  line-height: 38px;
  display: table;
  z-index: 2;
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transform: none;
  -o-transition: none;
  transition: none;
}

@media only screen and (max-width: 1199px) {
  .boton {
    font-size: 20px;
    line-height: 36px;
    height: 52px;
  }
}

@media only screen and (max-width: 600px) {
  .boton {
    font-size: 18px;
    line-height: 34px;
    height: 50px;
  }
}

.boton img {
  width: 20px;
  height: 20px;
  display: block;
  position: relative;
  top: 8px;
}

.boton:after, .boton:before {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  left: 0;
  z-index: -1;
  border-radius: 5px;
}

.boton:after {
  background: #65c950;
  top: 0;
  height: 38px;
}

@media only screen and (max-width: 1199px) {
  .boton:after {
    height: 36px;
  }
}

@media only screen and (max-width: 600px) {
  .boton:after {
    height: 34px;
  }
}

.boton:before {
  background: #409627;
  bottom: 0;
  height: 20px;
}

.boton:hover {
  top: 10px;
  height: 44px;
  line-height: 36px;
}

.boton:hover:after {
  height: 36px;
}

.boton:hover:before {
  height: 5px;
}

.boton.boton-back {
  padding: 0 15px;
}

@media only screen and (max-width: 480px) {
  .boton.boton-back {
    padding: 0 10px;
  }
}

.password-box {
  display: flex;
}

@media only screen and (max-width: 600px) {
  .password-box {
    flex-wrap: wrap;
    height: auto;
  }
}

.password-box input {
  border: none;
  border-radius: 10px;
  background: #ddeef2;
  width: 200px;
  font-weight: 500;
  margin: 0 10px 0 0;
  font-size: 20px;
  color: #0E2E32;
  font-family: "Outfit", sans-serif;
  padding: 10px;
}

@media only screen and (max-width: 1199px) {
  .password-box input {
    height: 52px;
    width: 150px;
    font-size: 18px;
  }
}

@media only screen and (max-width: 600px) {
  .password-box input {
    height: 50px;
    font-size: 16px;
    width: 100%;
    margin: 0 0 10px 0;
  }
}

::placeholder {
  color: #6eacbb;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #6eacbb;
}

::-ms-input-placeholder {
  color: #6eacbb;
}

.texto-boton {
  font-size: 30px;
  line-height: 30px;
  font-family: "Circe Rounded";
  letter-spacing: -1px;
  font-weight: 800;
  color: #0E2E32;
}

@media only screen and (max-width: 1199px) {
  .texto-boton {
    font-size: 25px;
    line-height: 25px;
  }
}

@media only screen and (max-width: 991px) {
  .texto-boton {
    display: none;
  }
}

#openInfo {
  width: 50px;
  height: 50px;
  background-image: url("../img/icono-info.svg");
  background-repeat: no-repeat;
  background-size: 30px 30px;
  background-position: center center;
  border: none;
  border-radius: 40px;
  background-color: #0E2E32;
  cursor: pointer;
  position: absolute;
  top: 20px;
  right: -40px;
  z-index: 2;
  -webkit-animation: pulse 1.5s infinite ease-in-out;
  -moz-animation: pulse 1.5s infinite ease-in-out;
  -ms-animation: pulse 1.5s infinite ease-in-out;
  -o-animation: pulse 1.5s infinite ease-in-out;
  animation: pulse 1.5s infinite ease-in-out;
}

@media only screen and (max-width: 991px) {
  #openInfo {
    right: calc(50% - 140px);
  }
}

@media only screen and (max-width: 600px) {
  #openInfo {
    right: calc(50% - 120px);
  }
}

#overlayInfo {
  position: absolute;
  top: 0;
  right: 0;
  inset: 0;
  display: none;
  justify-content: center;
  align-items: center;
}

#popupInfo {
  width: 180px;
  height: 180px;
  background: #0E2E32;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  cursor: pointer;
  position: absolute;
  z-index: 3;
  top: -60px;
  right: -140px;
}

@media only screen and (max-width: 991px) {
  #popupInfo {
    right: calc(50% - 200px);
  }
}

@media only screen and (max-width: 600px) {
  #popupInfo {
    right: calc(50% - 180px);
  }
}

#popupInfo p {
  color: white;
  font-size: 15px;
  line-height: 20px;
  margin: 0;
  padding: 20px;
  border-radius: 50%;
}

.titulo, .minititulo {
  font-family: "Circe Rounded";
  font-weight: 800;
}

.titulo {
  font-size: 46px;
  line-height: 46px;
}

@media only screen and (max-width: 1199px) {
  .titulo {
    font-size: 38px;
    line-height: 38px;
  }
}

@media only screen and (max-width: 600px) {
  .titulo {
    font-size: 30px;
    line-height: 30px;
  }
}

.minititulo {
  font-size: 28px;
  line-height: 32px;
  letter-spacing: -0.5px;
  margin: 0 0 5px 0;
}

@media only screen and (max-width: 1199px) {
  .minititulo {
    font-size: 26px;
    line-height: 28px;
  }
}

@media only screen and (max-width: 600px) {
  .minititulo {
    font-size: 24px;
    line-height: 26px;
  }
}

.white-box {
  background: white;
  border-radius: 20px;
  padding: 60px;
}

@media only screen and (max-width: 1199px) {
  .white-box {
    padding: 50px;
  }
}

@media only screen and (max-width: 991px) {
  .white-box {
    padding: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .white-box {
    padding: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .white-box {
    padding: 20px;
  }
}

.white-box.lateral {
  padding: 40px;
}

@media only screen and (max-width: 1199px) {
  .white-box.lateral {
    padding: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .white-box.lateral {
    padding: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .white-box.lateral {
    padding: 20px;
  }
}

.notificacion {
  font-size: 16px;
  line-height: 16px;
  color: #999999;
  display: flex;
  flex-wrap: wrap;
  min-height: 32px;
  align-items: center;
  margin: 0 0 20px 0;
}

@media only screen and (max-width: 1199px) {
  .notificacion {
    font-size: 15px;
    line-height: 15px;
  }
}

@media only screen and (max-width: 600px) {
  .notificacion {
    font-size: 14px;
    line-height: 14px;
  }
}

.notificacion:before {
  content: "";
  background-image: url("../img/notificacion-insabot.svg");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  display: block;
  width: 36px;
  height: 32px;
  margin: 0 10px 0 0;
}

@media only screen and (max-width: 1199px) {
  .notificacion:before {
    width: 33px;
    height: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .notificacion:before {
    font-size: 30px;
    line-height: 28px;
  }
}

.notificacion.notificacion-doctor:before {
  background-image: url("../img/notificacion-doctor.svg");
}

/* Header */
.body {
  display: flex;
  flex-wrap: wrap;
}

.header {
  padding: 0px 20px;
  height: 140px;
  width: 100%;
  align-content: center;
}

@media only screen and (max-width: 1199px) {
  .header {
    height: 120px;
  }
}

@media only screen and (max-width: 600px) {
  .header {
    height: 100px;
  }
}

.header .logo-link {
  display: table;
  margin: 0 auto;
}

.header .logo {
  width: 240px;
  height: auto;
  margin: 0 auto;
}

@media only screen and (max-width: 1199px) {
  .header .logo {
    width: 210px;
  }
}

@media only screen and (max-width: 600px) {
  .header .logo {
    width: 180px;
  }
}

.header.header-back .boton-box {
  position: absolute;
  left: 50px;
  top: 50px;
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 1199px) {
  .header.header-back .boton-box {
    left: 30px;
    top: 35px;
  }
}

@media only screen and (max-width: 767px) {
  .header.header-back .boton-box {
    left: 20px;
  }
}

@media only screen and (max-width: 600px) {
  .header.header-back .boton-box {
    left: 20px;
    top: 25px;
  }
}

.header.header-back .boton-box .texto-boton {
  margin: 0 0 0 10px;
}

.header.header-forward .boton-box {
  position: absolute;
  right: 50px;
  top: 50px;
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 1199px) {
  .header.header-forward .boton-box {
    right: 30px;
    top: 35px;
  }
}

@media only screen and (max-width: 767px) {
  .header.header-forward .boton-box {
    right: 20px;
  }
}

@media only screen and (max-width: 600px) {
  .header.header-forward .boton-box {
    right: 20px;
    top: 25px;
  }
}

.header.header-forward .boton-box .texto-boton {
  margin: 0 10px 0 0;
}

/*footer {
  height: 50px;
  width: 100%;
  padding: 0;
}*/
main {
  width: 100%;
  min-height: calc(100vh - 140px);
}

@media only screen and (max-width: 1199px) {
  main {
    min-height: calc(100vh - 120px);
  }
}

@media only screen and (max-width: 600px) {
  main {
    min-height: calc(100vh - 100px);
  }
}

/* Robot */
.robot-flotante img {
  -webkit-animation: float 3s ease-in-out infinite;
  -moz-animation: float 3s ease-in-out infinite;
  -ms-animation: float 3s ease-in-out infinite;
  -o-animation: float 3s ease-in-out infinite;
  animation: float 3s ease-in-out infinite;
  width: 186px;
  margin: 0 auto;
}

@media only screen and (max-width: 991px) {
  .robot-flotante img {
    width: 150px;
  }
}

@media only screen and (max-width: 600px) {
  .robot-flotante img {
    width: 120px;
  }
}

.robot-flotante img.insabot-280 {
  width: 280px !important;
}

@media only screen and (max-width: 991px) {
  .robot-flotante img.insabot-280 {
    width: 250px !important;
  }
}

@media only screen and (max-width: 600px) {
  .robot-flotante img.insabot-280 {
    width: 220px !important;
  }
}

.robot-flotante .shadow {
  width: 120px;
  height: 25px;
  background: #FBCE2B;
  mix-blend-mode: multiply;
  border-radius: 50%;
  margin-top: 20px;
  -webkit-animation: shadow-scale 3s ease-in-out infinite;
  -moz-animation: shadow-scale 3s ease-in-out infinite;
  -ms-animation: shadow-scale 3s ease-in-out infinite;
  -o-animation: shadow-scale 3s ease-in-out infinite;
  animation: shadow-scale 3s ease-in-out infinite;
  margin: 0 auto;
}

@media only screen and (max-width: 991px) {
  .robot-flotante .shadow {
    width: 100px;
  }
}

@media only screen and (max-width: 600px) {
  .robot-flotante .shadow {
    width: 80px;
  }
}

/* Inicio */
.pantalla-inicial .main-center {
  align-content: center;
  position: relative;
}

.plato-logo {
  padding: 0 0 60px 0;
  overflow: visible;
}

@media only screen and (max-width: 991px) {
  .plato-logo {
    padding: 0 0 160px 0;
  }
}

@media only screen and (max-width: 600px) {
  .plato-logo {
    padding: 0 0 100px;
  }
}

.plato-logo .container {
  position: relative;
}

.plato-logo .container .plato-inicial {
  margin: 0 auto;
}

@media only screen and (max-width: 991px) {
  .plato-logo .container .plato-inicial {
    width: 800px;
    max-width: initial;
    margin-left: calc(50% - 400px);
  }
}

@media only screen and (max-width: 600px) {
  .plato-logo .container .plato-inicial {
    width: 600px;
    margin-left: calc(50% - 300px);
  }
}

.plato-logo .container .boton-container {
  position: absolute;
  bottom: 25%;
  width: calc(100% - 60px);
  text-align: center;
}

@media only screen and (max-width: 991px) {
  .plato-logo .container .boton-container {
    width: calc(100% - 40px);
    display: initial;
    bottom: initial;
  }
}

.plato-logo .container .boton-container .boton {
  margin: 0 auto 0 43.5%;
}

@media only screen and (max-width: 991px) {
  .plato-logo .container .boton-container .boton {
    margin: -150px auto 0 auto;
  }
}

@media only screen and (max-width: 600px) {
  .plato-logo .container .boton-container .boton {
    margin: -100px auto 0 auto;
  }
}

.plato-logo .container .robot-flotante {
  position: absolute;
  top: 60px;
  left: 60px;
}

@media only screen and (max-width: 991px) {
  .plato-logo .container .robot-flotante {
    position: relative;
    top: initial;
    left: initial;
  }
}

/* Mensaje recibido */
.mensaje-recibido {
  max-width: 600px;
}

.mensaje-recibido .container .titulo {
  text-align: center;
}

.mensaje-recibido .container img {
  margin: 0 auto;
  max-width: 400px;
}

@media only screen and (max-width: 991px) {
  .mensaje-recibido .container img {
    max-width: 350px;
  }
}

@media only screen and (max-width: 600px) {
  .mensaje-recibido .container img {
    max-width: 280px;
  }
}

.mensaje-recibido .container .boton-box .boton {
  margin: 30px auto 0 auto;
}

.mensaje {
  -webkit-animation: bounce 2s infinite;
  -moz-animation: bounce 2s infinite;
  -ms-animation: bounce 2s infinite;
  -o-animation: bounce 2s infinite;
  animation: bounce 2s infinite;
}

.sobre-abierto .container img {
  margin: 0 auto;
}

@media only screen and (max-width: 991px) {
  .sobre-abierto .container img {
    max-width: 70px;
  }
}

@media only screen and (max-width: 600px) {
  .sobre-abierto .container img {
    max-width: 60px;
  }
}

/* Contenido Mensaje */
.contenido-mensaje .container .white-box .row .col .boton-box {
  margin: 30px auto 0 auto;
}

@media only screen and (max-width: 767px) {
  .contenido-mensaje .container .white-box .row .col .robot-flotante {
    margin: 0 0 30px 0;
  }
}

.contenido-mensaje .container .white-box .row .col .robot-flotante .bateria {
  -webkit-animation: bateria 2s infinite;
  -moz-animation: bateria 2s infinite;
  -ms-animation: bateria 2s infinite;
  -o-animation: bateria 2s infinite;
  animation: bateria 2s infinite;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  height: 30px;
  width: 45px;
  margin: 0 auto;
}

@media only screen and (max-width: 991px) {
  .contenido-mensaje .container .white-box .row .col .robot-flotante .bateria {
    height: 25px;
    width: 38px;
  }
}

@media only screen and (max-width: 600px) {
  .contenido-mensaje .container .white-box .row .col .robot-flotante .bateria {
    height: 22px;
    width: 32px;
  }
}

.contenido-mensaje .container .white-box .row .col .robot-flotante .shadow {
  background: #ddeef2;
}

.contenido-mensaje .container .white-box .row .col .doctor-azucar img {
  margin: 0 auto;
  max-width: 220px;
}

@media only screen and (max-width: 991px) {
  .contenido-mensaje .container .white-box .row .col .doctor-azucar img {
    max-width: 190px;
  }
}

@media only screen and (max-width: 767px) {
  .contenido-mensaje .container .white-box .row .col .doctor-azucar img {
    margin-bottom: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .contenido-mensaje .container .white-box .row .col .doctor-azucar img {
    max-width: 150px;
  }
}

/* Mensaje video */
.contenido-video .container .frame-video {
  text-align: center;
  position: relative;
}

.contenido-video .container .frame-video video {
  height: 518px;
  width: 920px;
  border-radius: 20px;
}

@media only screen and (max-width: 991px) {
  .contenido-video .container .frame-video video {
    width: 100%;
    height: auto;
  }
}

.contenido-video .container .frame-video .controles-video {
  width: 100%;
  height: 518px;
  position: absolute;
  left: 0;
  top: 0;
}

@media only screen and (max-width: 991px) {
  .contenido-video .container .frame-video .controles-video {
    width: 100%;
    height: auto;
  }
}

.contenido-video .container .frame-video .botones-video {
  width: 80px;
  height: 80px;
  position: absolute;
  bottom: 70px;
  right: 335px;
}

@media only screen and (max-width: 991px) {
  .contenido-video .container .frame-video .botones-video {
    width: 10%;
    height: 10%;
    bottom: 20%;
    right: 33%;
  }
}

@media only screen and (max-width: 600px) {
  .contenido-video .container .frame-video .botones-video {
    bottom: 21%;
  }
}

.contenido-video .container .frame-video .botones-video .controles-video {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  -webkit-animation: pulse 1s infinite ease-in-out;
  -moz-animation: pulse 1s infinite ease-in-out;
  -ms-animation: pulse 1s infinite ease-in-out;
  -o-animation: pulse 1s infinite ease-in-out;
  animation: pulse 1s infinite ease-in-out;
}

.contenido-video .container .frame-video .botones-video #nextLink {
  display: none;
}

/* Entrada a despensa */
.intro-puerta .container .row .col .robot-flotante {
  position: relative;
  width: 280px;
  margin: 0 auto;
}

@media only screen and (max-width: 991px) {
  .intro-puerta .container .row .col .robot-flotante {
    width: 250px !important;
  }
}

@media only screen and (max-width: 600px) {
  .intro-puerta .container .row .col .robot-flotante {
    width: 220px !important;
  }
}

.intro-puerta .container .row .col .robot-flotante img {
  width: 100%;
}

.intro-puerta .container .row .col.col-plato-puerta {
  align-self: center;
}

.intro-puerta .container .row .col.col-plato-puerta img {
  margin: 0 auto;
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transform: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.intro-puerta .container .row .col.col-plato-puerta img:hover {
  -moz-transform: scale(1.05);
  -o-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.backDoor {
  background: url("../img/despensa.png") center center;
  background-size: 100%;
  cursor: pointer;
  position: relative;
  width: 484px;
  height: 590px;
  margin: 0 auto;
}

@media only screen and (max-width: 767px) {
  .backDoor {
    -moz-transform: scale(0.8);
    -o-transform: scale(0.8);
    -ms-transform: scale(0.8);
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
    transform-origin: center;
    overflow: visible;
  }
}

@media only screen and (max-width: 600px) {
  .backDoor {
    -moz-transform: scale(0.6);
    -o-transform: scale(0.6);
    -ms-transform: scale(0.6);
    -webkit-transform: scale(0.6);
    transform: scale(0.6);
    transform-origin: left;
  }
}

.backDoor .door {
  background: url("../img/despensa-puerta.png") center center;
  position: absolute;
  z-index: 2;
  top: 75px;
  left: 87px;
  width: 204px;
  height: 462px;
  transform-origin: left;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transform: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.backDoor a {
  display: block;
  width: 200px;
  height: 460px;
  position: absolute;
  z-index: 1;
  top: 76px;
  left: 88px;
}

.backDoor.backDoorLab {
  background: url("../img/laboratorio.png") center center;
  background-size: 100%;
}

.backDoor.backDoorLab .door {
  background: url("../img/laboratorio-puerta.png") center center;
  background-size: 100%;
}

.doorOpen {
  -moz-transform: perspective(1200px) translateZ(0px) translateX(0px) translateY(0px) rotateY(-135deg);
  -o-transform: perspective(1200px) translateZ(0px) translateX(0px) translateY(0px) rotateY(-135deg);
  -ms-transform: perspective(1200px) translateZ(0px) translateX(0px) translateY(0px) rotateY(-135deg);
  -webkit-transform: perspective(1200px) translateZ(0px) translateX(0px) translateY(0px) rotateY(-135deg);
  transform: perspective(1200px) translateZ(0px) translateX(0px) translateY(0px) rotateY(-135deg);
}

/* Despensa */
body.background-cocina {
  background-image: url("../img/repte-1/fondo.svg");
  background-size: 1440px 960px;
  background-position: top center;
  background-color: #f4eddc;
}

#items {
  display: flex;
  flex-wrap: wrap;
  margin: 20px auto 0 auto;
}

.draggable {
  width: 80px;
  height: 80px;
  margin: 5px;
  cursor: grab;
  font-weight: bold;
  user-select: none;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
}

.draggable#manzana {
  background-image: url("../img/repte-1/manzana.svg");
}

.draggable#tomate {
  background-image: url("../img/repte-1/tomate.svg");
}

.draggable#naranja {
  background-image: url("../img/repte-1/naranja.svg");
}

.draggable#platano {
  background-image: url("../img/repte-1/platano.svg");
}

.draggable#fresa {
  background-image: url("../img/repte-1/fresa.svg");
}

.draggable#lechuga {
  background-image: url("../img/repte-1/lechuga.svg");
}

.draggable#zanahoria {
  background-image: url("../img/repte-1/zanahoria.svg");
}

.draggable#brocoli {
  background-image: url("../img/repte-1/brocoli.svg");
}

.draggable#patata {
  background-image: url("../img/repte-1/patata.svg");
}

.draggable#carne {
  background-image: url("../img/repte-1/carne.svg");
}

.draggable#pollo {
  background-image: url("../img/repte-1/pollo.svg");
}

.draggable#salmon {
  background-image: url("../img/repte-1/salmon.svg");
}

.draggable#lubina {
  background-image: url("../img/repte-1/lubina.svg");
}

.draggable#sardina {
  background-image: url("../img/repte-1/sardina.svg");
}

.draggable#garbanzos {
  background-image: url("../img/repte-1/garbanzos.svg");
}

.draggable#pan {
  background-image: url("../img/repte-1/pan.svg");
}

.draggable#arroz {
  background-image: url("../img/repte-1/arroz.svg");
}

.draggable#avena {
  background-image: url("../img/repte-1/avena.svg");
}

.draggable#pasta {
  background-image: url("../img/repte-1/pasta.svg");
}

.draggable#queso {
  background-image: url("../img/repte-1/queso.svg");
}

.draggable#yogur {
  background-image: url("../img/repte-1/yogur.svg");
}

.draggable#leche {
  background-image: url("../img/repte-1/leche.svg");
}

.draggable#galleta {
  background-image: url("../img/repte-1/galleta.svg");
}

.draggable#pastel {
  background-image: url("../img/repte-1/pastel.svg");
}

.draggable#nuggets {
  background-image: url("../img/repte-1/nuggets.svg");
}

.draggable#hamburguesa {
  background-image: url("../img/repte-1/hamburguesa.svg");
}

.draggable#pizza {
  background-image: url("../img/repte-1/pizza.svg");
}

.draggable#chips {
  background-image: url("../img/repte-1/chips.svg");
}

.draggable#refresco {
  background-image: url("../img/repte-1/refresco.svg");
}

.draggable#batido {
  background-image: url("../img/repte-1/batido.svg");
}

.dropzone {
  width: 100%;
  min-height: 200px;
  background-image: url("../img/repte-1/estanteria.svg");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-content: end;
  padding-bottom: 50px;
}

@media only screen and (max-width: 767px) {
  .dropzone {
    padding-top: 30px;
  }
}

.dropzone .nombre-estanteria {
  position: absolute;
  bottom: -30px;
  left: 0;
  width: 100%;
}

.dropzone .nombre-estanteria h3 {
  margin: 0;
  background: white;
  border-radius: 10px;
  font-size: 30px;
  line-height: 30px;
  padding: 10px 20px 10px 50px;
  display: table;
  position: relative;
  margin: 0 auto;
}

@media only screen and (max-width: 1199px) {
  .dropzone .nombre-estanteria h3 {
    font-size: 28px;
  }
}

@media only screen and (max-width: 600px) {
  .dropzone .nombre-estanteria h3 {
    font-size: 26px;
  }
}

.dropzone .nombre-estanteria h3 span {
  background-image: url("../img/repte-1/ok.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  height: 30px;
  width: 30px;
  display: block;
  position: absolute;
  top: 9px;
  left: 15px;
}

@media only screen and (max-width: 600px) {
  .dropzone .nombre-estanteria h3 span {
    top: 10px;
  }
}

#saludable {
  margin: 0 0 40px 0;
}

#saludable h3 span {
  background-image: url("../img/repte-1/ok.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  height: 30px;
  width: 30px;
  display: block;
  position: absolute;
  top: 9px;
  left: 15px;
}

#basura {
  margin-bottom: 60px;
}

#basura h3 span {
  background-image: url("../img/repte-1/no.svg");
}

.despensa {
  padding-bottom: 200px;
}

.despensa .container .row .col .despensa-ordenada {
  display: none;
}

.despensa .container .row .col .despensa-desordenada {
  display: block;
}

.confeti .despensa .container .row .col .despensa-ordenada {
  display: block;
}

.confeti .despensa .container .row .col .despensa-ordenada .boton-box {
  margin-top: 20px;
}

.confeti .despensa .container .row .col .despensa-desordenada {
  display: none;
}

.encimera {
  height: 240px;
  width: 100%;
  background-image: url("../img/repte-1/encimera.svg");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: 1600px 240px;
  position: absolute;
  bottom: 0;
}

@media only screen and (max-width: 1360px) {
  .encimera {
    background-size: 1360px 204px;
  }
}

@media only screen and (max-width: 991px) {
  .encimera {
    background-size: 900px 135px;
  }
}

@media only screen and (max-width: 767px) {
  .encimera {
    background-size: 1360px 204px;
    background-position: bottom right;
  }
}

#popupOverlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: rgba(245, 237, 220, 0.9);
  display: none;
  justify-content: center;
  align-items: center;
}

@media only screen and (max-width: 600px) {
  #popupOverlay {
    padding: 20px;
  }
}

#popupOverlay #popupBox {
  background: white;
  padding: 50px 50px 50px 170px;
  width: 560px;
  border-radius: 10px;
  text-align: left;
  position: relative;
}

@media only screen and (max-width: 1199px) {
  #popupOverlay #popupBox {
    padding: 45px 45px 45px 170px;
  }
}

@media only screen and (max-width: 991px) {
  #popupOverlay #popupBox {
    padding: 40px 40px 40px 170px;
  }
}

@media only screen and (max-width: 767px) {
  #popupOverlay #popupBox {
    padding: 30px 30px 30px 170px;
  }
}

@media only screen and (max-width: 600px) {
  #popupOverlay #popupBox {
    padding: 20px 20px 20px 120px;
  }
}

#popupOverlay #popupBox .titulo {
  margin: 0 0 10px 0;
}

#popupOverlay #popupBox img {
  width: 110px;
  height: 110px;
  position: absolute;
  top: 40px;
  left: 30px;
}

@media only screen and (max-width: 600px) {
  #popupOverlay #popupBox img {
    width: 80px;
    height: 80px;
    position: absolute;
    left: 20px;
  }
}

#popupOverlay #popupBox h3 {
  display: none;
}

#popupOverlay #popupBox .codigo {
  padding: 8px 12px;
  background: #ddeef2;
  border-radius: 5px;
  margin: 20px 0 30px 0;
  display: table;
  font-weight: 700;
}

canvas.confetti-canvas {
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 9999;
}

/* Ticket */
.popup-validar {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 30px;
  align-content: center;
  text-align: center;
  font-size: 60px;
  line-height: 60px;
  color: white;
  font-family: "Circe Rounded";
  letter-spacing: -1px;
  font-weight: 800;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  z-index: 23;
}

@media only screen and (max-width: 991px) {
  .popup-validar {
    font-size: 50px;
    line-height: 50px;
  }
}

@media only screen and (max-width: 600px) {
  .popup-validar {
    font-size: 40px;
    line-height: 40px;
  }
}

.popup-validar.correcto {
  background-color: #65c950;
  background-image: url("../img/background-verde.svg");
}

.popup-validar.incorrecto {
  background-color: #e04149;
  background-image: url("../img/background-rojo.svg");
}

/* Restaurante */
body.background-restaurante {
  background-image: url("../img/repte-1/fondo.svg");
  background-repeat: repeat-x;
  background-size: 1440px 960px;
  background-position: top center;
  background-color: #f4eddc;
}

body.background-salon {
  background-image: url("../img/repte-3/fondo.svg");
  background-color: #ddeef2;
}

@media only screen and (max-width: 600px) {
  .no-mobile {
    display: none;
  }
}

.sala-restaurante {
  z-index: 2;
}

.sala-restaurante .container .row .col {
  min-height: 80vh;
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
}

.sala-restaurante .container .row .col .white-box .boton-box {
  margin: 20px 0 0 0;
}

.sala-restaurante .container .row .col .robot-flotante {
  margin: 100px 0 0 0;
  position: relative;
  /*img {
            width: 280px;
            height: auto;
          }*/
}

.sala-restaurante .container .row .col .robot-flotante .shadow {
  background: #e06338;
}

.sala-restaurante .container .row .col .robot-flotante .bandeja {
  background-image: url("../img/bandeja.svg");
  background-repeat: no-repeat;
  background-size: 110px 80px;
  background-position: top center;
  width: 110px;
  height: 80px;
  position: absolute;
  top: 60px;
  right: calc(50% - 190px);
  -webkit-animation: float 3.2s ease-in-out infinite;
  -moz-animation: float 3.2s ease-in-out infinite;
  -ms-animation: float 3.2s ease-in-out infinite;
  -o-animation: float 3.2s ease-in-out infinite;
  animation: float 3.2s ease-in-out infinite;
}

@media only screen and (max-width: 991px) {
  .sala-restaurante .container .row .col .robot-flotante .bandeja {
    width: 100px;
    height: 72px;
    background-size: 100%;
    right: calc(50% - 170px);
  }
}

@media only screen and (max-width: 600px) {
  .sala-restaurante .container .row .col .robot-flotante .bandeja {
    width: 90px;
    height: 65px;
    right: calc(50% - 150px);
  }
}

.mesa-restaurante {
  height: 810px;
  width: 100%;
  background-image: url("../img/repte-2/mesa-restaurante.svg");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: 1600px 810px;
  position: absolute;
  bottom: 0;
}

@media only screen and (max-width: 1360px) {
  .mesa-restaurante {
    background-size: 1360px 688px;
  }
}

@media only screen and (max-width: 991px) {
  .mesa-restaurante {
    background-position: bottom right;
  }
}

@media only screen and (max-width: 767px) {
  .mesa-restaurante {
    background-size: 1000px 506px;
  }
}

.lamparas {
  height: 240px;
  width: 100%;
  background-image: url("../img/repte-2/lamparas.svg");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: 1600px 240px;
  position: absolute;
  top: -140px;
  z-index: 1;
}

@media only screen and (max-width: 1360px) {
  .lamparas {
    background-size: 1360px 204px;
    height: 204px;
  }
}

@media only screen and (max-width: 767px) {
  .lamparas {
    background-size: 1000px 150px;
    height: 150px;
  }
}

.main-restaurante {
  position: relative;
}

.main-restaurante:after {
  content: "";
  height: 220px;
  width: 100%;
  display: block;
  position: absolute;
  background: #F9804B;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.main-restaurante #openInfo {
  position: absolute;
  right: calc(50% - 400px);
  bottom: 340px;
  top: inherit;
  left: inherit;
}

@media only screen and (max-width: 1360px) {
  .main-restaurante #openInfo {
    right: 22%;
    bottom: 290px;
  }
}

@media only screen and (max-width: 991px) {
  .main-restaurante #openInfo {
    right: 40%;
  }
}

@media only screen and (max-width: 767px) {
  .main-restaurante #openInfo {
    right: 230px;
    bottom: 200px;
  }
}

/* Carta */
.cartamenu {
  overflow: hidden;
}

.cartamenu h2 {
  margin: 0;
  position: relative;
  z-index: 1;
}

.cartamenu h2 img {
  width: 130px;
  height: 130px;
}

@media only screen and (max-width: 1199px) {
  .cartamenu h2 img {
    width: 110px;
    height: 110px;
  }
}

@media only screen and (max-width: 480px) {
  .cartamenu h2 img {
    width: 90px;
    height: 90px;
  }
}

.cartamenu .brazo-iz {
  position: absolute;
  bottom: 0;
  z-index: 1;
  left: calc(50% - 1032px);
}

@media only screen and (max-width: 1360px) {
  .cartamenu .brazo-iz {
    display: none;
  }
}

.cartamenu .brazo-de {
  position: absolute;
  bottom: 0;
  z-index: 1;
  right: calc(50% - 1031px);
}

@media only screen and (max-width: 1360px) {
  .cartamenu .brazo-de {
    display: none;
  }
}

.cartamenu .container .row .col.col-left {
  padding-right: 0;
}

@media only screen and (max-width: 991px) {
  .cartamenu .container .row .col.col-left {
    width: 100% !important;
    padding-right: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .cartamenu .container .row .col.col-left {
    padding-right: 20px;
  }
}

.cartamenu .container .row .col.col-left .pagina-1 {
  height: 100%;
  background: #FBCE2B;
  padding: 20px;
  border-bottom-left-radius: 20px;
  border-top-left-radius: 20px;
  border-top: 5px solid #0E2E32;
  border-left: 5px solid #0E2E32;
  border-bottom: 5px solid #0E2E32;
  border-top-left-radius: 20px;
}

@media only screen and (max-width: 1199px) {
  .cartamenu .container .row .col.col-left .pagina-1 {
    border-width: 4px;
  }
}

@media only screen and (max-width: 991px) {
  .cartamenu .container .row .col.col-left .pagina-1 {
    border-top: 3px solid #0E2E32;
    border-left: 3px solid #0E2E32;
    border-right: 3px solid #0E2E32;
    border-bottom: 0;
    border-bottom-left-radius: 0;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
  }
}

@media only screen and (max-width: 600px) {
  .cartamenu .container .row .col.col-left .pagina-1 {
    padding: 10px;
  }
}

.cartamenu .container .row .col.col-left .pagina-1 .container-carta {
  background: white;
  height: 100%;
  border-radius: 10px;
}

.cartamenu .container .row .col.col-left .pagina-1 .container-carta .logo-carta {
  width: 100%;
}

.cartamenu .container .row .col.col-left .pagina-1 .container-carta .texto {
  margin: 30px;
  border-top: 2px dashed #FBCE2B;
  border-bottom: 2px dashed #FBCE2B;
  padding: 20px 0 10px 0;
}

@media only screen and (max-width: 600px) {
  .cartamenu .container .row .col.col-left .pagina-1 .container-carta .texto {
    margin: 20px;
  }
}

.cartamenu .container .row .col.col-left .pagina-1 .container-carta .texto .texto-explicacion {
  text-align: center;
}

.cartamenu .container .row .col.col-left .pagina-1 .container-carta .texto .texto-explicacion span {
  display: inline-block;
  padding: 0 7px;
  border-radius: 5px;
  color: white;
}

.cartamenu .container .row .col.col-left .pagina-1 .container-carta .texto .texto-seguir {
  display: none;
  margin: 0 0 10px 0;
}

.cartamenu .container .row .col.col-left .pagina-1 .container-carta .texto .texto-seguir h2 {
  margin: 0 0 10px 0;
}

.cartamenu .container .row .col.col-left .pagina-1 .container-carta .texto .texto-explicacion {
  display: block;
}

.cartamenu .container .row .col.col-left .pagina-1 .huecos {
  width: calc(100% - 60px);
  overflow: auto;
  border-radius: 20px;
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 30px auto;
}

@media only screen and (max-width: 600px) {
  .cartamenu .container .row .col.col-left .pagina-1 .huecos {
    width: calc(100% - 40px);
    margin: 20px auto;
  }
}

.cartamenu .container .row .col.col-left .pagina-1 .huecos .hueco {
  height: 170px;
  width: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  /*&.verde {
                  background-color: rgba(101, 201, 80, 0.65);
                }
                &.amarillo {
                  background-color: rgba(251, 206, 43, 0.65);
                }
                &.rojo {
                  background-color: rgba(224, 65, 73, 0.65);
                }*/
}

@media only screen and (max-width: 1199px) {
  .cartamenu .container .row .col.col-left .pagina-1 .huecos .hueco {
    height: 150px;
  }
}

@media only screen and (max-width: 480px) {
  .cartamenu .container .row .col.col-left .pagina-1 .huecos .hueco {
    height: 130px;
  }
}

.cartamenu .container .row .col.col-left .pagina-1 .huecos .hueco:before {
  content: "";
  width: 110px;
  height: 110px;
  border: 1px dashed white;
  border-radius: 50%;
  position: absolute;
  top: 30px;
  left: calc(50% - 55px);
}

@media only screen and (max-width: 1199px) {
  .cartamenu .container .row .col.col-left .pagina-1 .huecos .hueco:before {
    width: 90px;
    height: 90px;
    left: calc(50% - 45px);
  }
}

@media only screen and (max-width: 480px) {
  .cartamenu .container .row .col.col-left .pagina-1 .huecos .hueco:before {
    width: 70px;
    height: 70px;
    left: calc(50% - 35px);
  }
}

.cartamenu .container .row .col.col-left .pagina-1 .huecos .hueco.verde {
  width: 33.3333333%;
}

.cartamenu .container .row .col.col-left .pagina-1 .huecos .hueco.rojo {
  width: 100%;
}

.cartamenu .container .row .col.col-right {
  padding-left: 0;
}

@media only screen and (max-width: 991px) {
  .cartamenu .container .row .col.col-right {
    width: 100% !important;
    padding-left: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .cartamenu .container .row .col.col-right {
    padding-left: 20px;
  }
}

.cartamenu .container .row .col.col-right .pagina-2 {
  height: 100%;
  background: white;
  padding: 40px;
  border-bottom-right-radius: 20px;
  border-top-right-radius: 20px;
  border-top: 5px solid #0E2E32;
  border-right: 5px solid #0E2E32;
  border-bottom: 5px solid #0E2E32;
  border-top-right-radius: 20px;
}

@media only screen and (max-width: 1199px) {
  .cartamenu .container .row .col.col-right .pagina-2 {
    border-width: 4px;
  }
}

@media only screen and (max-width: 991px) {
  .cartamenu .container .row .col.col-right .pagina-2 {
    border-bottom: 3px solid #0E2E32;
    border-left: 3px solid #0E2E32;
    border-right: 3px solid #0E2E32;
    border-top: 0;
    border-bottom-left-radius: 20px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 20px;
  }
}

@media only screen and (max-width: 600px) {
  .cartamenu .container .row .col.col-right .pagina-2 {
    padding: 20px;
  }
}

.cartamenu .container .row .col.col-right .pagina-2 .menus .menu {
  position: relative;
  padding: 20px 0 20px 160px;
  min-height: 150px;
}

@media only screen and (max-width: 1199px) {
  .cartamenu .container .row .col.col-right .pagina-2 .menus .menu {
    padding: 20px 0 20px 140px;
  }
}

@media only screen and (max-width: 480px) {
  .cartamenu .container .row .col.col-right .pagina-2 .menus .menu {
    padding: 20px 0 20px 110px;
  }
}

.cartamenu .container .row .col.col-right .pagina-2 .menus .menu h2 {
  position: absolute;
  top: 20px;
  left: 0;
}

.cartamenu .container .row .col.col-right .pagina-2 .menus .menu .minititulo span {
  background: #0E2E32;
  color: white;
  width: 32px;
  height: 32px;
  font-size: 28px;
  line-height: 35px;
  border-radius: 30px;
  display: inline-block;
  text-align: center;
  position: relative;
  top: -2px;
}

.cartamenu .container .row .col.col-right .pagina-2 .menus .menu .valor {
  display: none;
  margin: 15px 0 0 0;
  padding: 10px 20px;
  background: #ddeef2;
  border-radius: 10px;
  font-size: 17px;
  line-height: 24px;
  font-weight: 500;
}

.cartamenu .container .row .col.col-right .pagina-2 .menus .menu .ingredientes {
  display: block;
}

.cartamenu .container .row .col.col-right .pagina-2 .menus .menu .ingredientes li {
  list-style: circle;
  margin: 0 0 0 20px;
  font-size: 17px;
  line-height: 24px;
}

@media only screen and (max-width: 1199px) {
  .cartamenu .container .row .col.col-right .pagina-2 .menus .menu .ingredientes li {
    font-size: 16px;
    line-height: 22px;
  }
}

@media only screen and (max-width: 600px) {
  .cartamenu .container .row .col.col-right .pagina-2 .menus .menu .ingredientes li {
    font-size: 15px;
    line-height: 20px;
  }
}

.confeti .cartamenu .container .row .col.col-left .pagina-1 .container-carta .texto .texto-seguir {
  display: block;
}

.confeti .cartamenu .container .row .col.col-left .pagina-1 .container-carta .texto .texto-explicacion {
  display: none;
}

.confeti .cartamenu .container .row .col.col-right .pagina-2 .menus .menu {
  padding: 20px;
  min-height: auto;
}

@media only screen and (max-width: 600px) {
  .confeti .cartamenu .container .row .col.col-right .pagina-2 .menus .menu {
    padding: 10px 0;
  }
}

.confeti .cartamenu .container .row .col.col-right .pagina-2 .menus .menu .valor {
  display: block;
}

.confeti .cartamenu .container .row .col.col-right .pagina-2 .menus .menu .ingredientes {
  display: none;
}

.verde {
  background-color: #65c950;
}

.amarillo {
  background-color: #FBCE2B;
}

.rojo {
  background-color: #e04149;
}

/* Salon */
.contenido-mensaje.mensaje-azucar .container .row .col {
  align-self: center;
}

.contenido-mensaje.mensaje-azucar .container .row .col .robot-flotante {
  margin-left: -60px;
}

.contenido-mensaje.mensaje-azucar .container .row .col .robot-flotante img {
  width: 280px;
  height: auto;
}

.contenido-mensaje.mensaje-azucar .container .row .col .robot-flotante .azucar {
  background-image: url("../img/azucar.svg");
  background-repeat: no-repeat;
  background-size: 80px 80px;
  background-position: top center;
  width: 80px;
  height: 80px;
  position: absolute;
  top: 60px;
  right: calc(50% - 140px);
  -webkit-animation: float 3.2s ease-in-out infinite;
  -moz-animation: float 3.2s ease-in-out infinite;
  -ms-animation: float 3.2s ease-in-out infinite;
  -o-animation: float 3.2s ease-in-out infinite;
  animation: float 3.2s ease-in-out infinite;
}

@media only screen and (max-width: 991px) {
  .contenido-mensaje.mensaje-azucar .container .row .col .robot-flotante .azucar {
    width: 70px;
    height: 70px;
    background-size: 100%;
    right: calc(50% - 130px);
  }
}

@media only screen and (max-width: 600px) {
  .contenido-mensaje.mensaje-azucar .container .row .col .robot-flotante .azucar {
    width: 60px;
    height: 60px;
    right: calc(50% - 120px);
  }
}

.main-salon:after {
  content: "";
  height: 220px;
  width: 100%;
  display: block;
  position: absolute;
  background: #2b6382;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.main-salon .lamparas {
  background-image: url("../img/repte-3/lamparas.svg");
}

.main-salon .mesa-restaurante {
  background-image: url("../img/repte-3/mesa-salon.svg");
}

@media only screen and (max-width: 991px) {
  .main-salon .mesa-restaurante {
    margin-bottom: 120px;
  }
}

@media only screen and (max-width: 767px) {
  .main-salon .mesa-restaurante {
    margin-bottom: 30px;
  }
}

.main-salon .tv {
  height: 320px;
  width: 560px;
  background-image: url("../img/repte-3/tv.svg");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  z-index: 2;
  bottom: 380px;
  right: calc(50% - 700px);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transform: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

@media only screen and (max-width: 1360px) {
  .main-salon .tv {
    width: 400px;
    height: 228px;
    right: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .main-salon .tv {
    bottom: 280px;
    z-index: 2;
  }
}

@media only screen and (max-width: 480px) {
  .main-salon .tv {
    width: 300px;
    height: 171px;
    bottom: 260px;
  }
}

.main-salon .tv .enciende {
  height: 320px;
  width: 560px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
}

@media only screen and (max-width: 1360px) {
  .main-salon .tv .enciende {
    width: 400px;
    height: 228px;
  }
}

@media only screen and (max-width: 480px) {
  .main-salon .tv .enciende {
    width: 300px;
    height: 171px;
  }
}

.main-salon .tv .enciende:after {
  content: "";
  height: 10px;
  width: 10px;
  border-radius: 20px;
  background: #e04149;
  display: block;
  position: absolute;
  bottom: 12px;
  right: 50px;
  -webkit-animation: pulse 1s infinite ease-in-out;
  -moz-animation: pulse 1s infinite ease-in-out;
  -ms-animation: pulse 1s infinite ease-in-out;
  -o-animation: pulse 1s infinite ease-in-out;
  animation: pulse 1s infinite ease-in-out;
}

@media only screen and (max-width: 1360px) {
  .main-salon .tv .enciende:after {
    bottom: 7px;
    right: 40px;
  }
}

@media only screen and (max-width: 480px) {
  .main-salon .tv .enciende:after {
    bottom: 4px;
    right: 30px;
  }
}

.main-salon .tv:hover {
  -moz-transform: scale(1.05);
  -o-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.main-salon .tv.no-hover {
  z-index: 1;
}

.main-salon .tv.no-hover:hover {
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

.main-salon .container .row .col .robot-flotante {
  margin: 100px 0 0 auto;
}

@media only screen and (max-width: 767px) {
  .main-salon .container .row .col .robot-flotante {
    margin: 340px auto 0 30px;
  }
}

@media only screen and (max-width: 480px) {
  .main-salon .container .row .col .robot-flotante {
    margin: 260px auto 0 30px;
  }
}

.main-salon .container .row .col .robot-flotante .shadow {
  background: #16465b;
}

.main-tv .tv-anuncio .container .tv-background {
  background: #1c272f;
  border-radius: 30px;
  border: 5px solid #1c272f;
  min-height: 650px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  padding: 30px 70px 30px 30px;
}

@media only screen and (max-width: 991px) {
  .main-tv .tv-anuncio .container .tv-background {
    padding: 20px 40px 20px 20px;
    min-height: 600px;
  }
}

@media only screen and (max-width: 480px) {
  .main-tv .tv-anuncio .container .tv-background {
    padding: 10px;
    min-height: 500px;
  }
}

.main-tv .tv-anuncio .container .tv-background:after {
  content: "";
  background: #2a3944;
  border-radius: 30px;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 40px);
  height: 100%;
}

@media only screen and (max-width: 991px) {
  .main-tv .tv-anuncio .container .tv-background:after {
    width: calc(100% - 20px);
  }
}

@media only screen and (max-width: 480px) {
  .main-tv .tv-anuncio .container .tv-background:after {
    width: 100%;
  }
}

.main-tv .tv-anuncio .container .tv-background .fondo-background {
  background-image: url("../img/repte-3/fondo-tv.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 100%;
  border-radius: 15px;
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
}

.main-tv .tv-anuncio .container .tv-background .fondo-background #openInfo {
  position: absolute;
  top: 60px;
  right: 60px;
}

.main-tv .tv-anuncio .container .tv-background .fondo-background #popupInfo {
  top: 10px;
  right: 10px;
}

.main-tv .tv-anuncio .container .tv-background .fondo-background img.bounce {
  -webkit-animation: pulse 2s infinite ease-in-out;
  -moz-animation: pulse 2s infinite ease-in-out;
  -ms-animation: pulse 2s infinite ease-in-out;
  -o-animation: pulse 2s infinite ease-in-out;
  animation: pulse 2s infinite ease-in-out;
}

.main-tv .tv-anuncio .container .tv-background .fondo-background.fondo-no {
  background-image: url("../img/repte-3/fondo-tv-no.svg");
}

.main-tv .tv-anuncio .container .tv-background .fondo-background.fondo-si {
  background-image: url("../img/repte-3/fondo-tv-si.svg");
}

.main-tv .tv-anuncio .container .tv-pregunta {
  background: white;
  max-width: 900px;
  margin: -80px auto 20px auto;
  position: relative;
  z-index: 2;
  padding: 40px 50px;
  border-radius: 20px;
}

@media only screen and (max-width: 1199px) {
  .main-tv .tv-anuncio .container .tv-pregunta {
    padding: 35px 40px;
  }
}

@media only screen and (max-width: 991px) {
  .main-tv .tv-anuncio .container .tv-pregunta {
    margin: 20px auto 0 auto;
  }
}

@media only screen and (max-width: 767px) {
  .main-tv .tv-anuncio .container .tv-pregunta {
    padding: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .main-tv .tv-anuncio .container .tv-pregunta {
    padding: 20px;
  }
}

.main-tv .tv-anuncio .container .tv-pregunta p {
  font-size: 28px;
  line-height: 36px;
  font-weight: 400;
  text-align: center;
}

@media only screen and (max-width: 1199px) {
  .main-tv .tv-anuncio .container .tv-pregunta p {
    font-size: 24px;
    line-height: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .main-tv .tv-anuncio .container .tv-pregunta p {
    font-size: 20px;
    line-height: 26px;
  }
}

@media only screen and (max-width: 480px) {
  .main-tv .tv-anuncio .container .tv-pregunta p {
    text-align: left;
  }
}

.main-tv .tv-anuncio .container .tv-pregunta .botones-vf {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

@media only screen and (max-width: 480px) {
  .main-tv .tv-anuncio .container .tv-pregunta .botones-vf {
    display: block;
  }
}

.main-tv .tv-anuncio .container .tv-pregunta .botones-vf button {
  font-family: "Outfit", sans-serif;
  font-size: 28px;
  line-height: 36px;
  font-weight: 400;
  color: #0E2E32;
  background: none;
  border: none;
  margin: 10px 30px 10px 0;
  display: flex;
  cursor: pointer;
}

@media only screen and (max-width: 1199px) {
  .main-tv .tv-anuncio .container .tv-pregunta .botones-vf button {
    font-size: 24px;
  }
}

@media only screen and (max-width: 767px) {
  .main-tv .tv-anuncio .container .tv-pregunta .botones-vf button {
    line-height: 32px;
  }
}

@media only screen and (max-width: 600px) {
  .main-tv .tv-anuncio .container .tv-pregunta .botones-vf button {
    font-size: 20px;
  }
}

.main-tv .tv-anuncio .container .tv-pregunta .botones-vf button span {
  height: 36px;
  width: 36px;
  border: 3px solid #0E2E32;
  margin: 0 10px 0 0;
  position: relative;
}

@media only screen and (max-width: 767px) {
  .main-tv .tv-anuncio .container .tv-pregunta .botones-vf button span {
    height: 32px;
    width: 32px;
  }
}

.main-tv .tv-anuncio .container .tv-pregunta .botones-vf button span:after {
  content: "";
  width: 30px;
  height: 30px;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transform: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background: url("../img/repte-3/x.svg") no-repeat center center;
  opacity: 0;
  filter: alpha(opacity=0);
}

@media only screen and (max-width: 767px) {
  .main-tv .tv-anuncio .container .tv-pregunta .botones-vf button span:after {
    height: 26px;
    width: 26px;
  }
}

.main-tv .tv-anuncio .container .tv-pregunta .botones-vf button:hover span:after {
  opacity: 1;
  filter: alpha(opacity=100);
}

.main-tv .tv-anuncio .container .tv-pregunta .respuesta {
  text-align: center;
}

.main-tv .tv-anuncio .container .tv-pregunta .boton-box {
  margin: 25px auto 0 auto;
}

.main-tv .tv-anuncio .container .tv-pregunta .boton-box .boton {
  margin: 0 auto;
}

/* Anuncios */
.xray-container {
  width: 500px;
  position: relative;
  margin: 0 auto;
}

.xray-container img {
  width: 500px;
  display: block;
}

.xray {
  position: absolute;
  top: 0;
  left: 0;
  clip-path: circle(0px at 0 0);
  pointer-events: none;
}

.lens {
  position: absolute;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  border: 5px solid #ffffff;
  pointer-events: none;
  transform: translate(-50%, -50%);
}

/* Lab */
.main-lab {
  display: flex;
}

.carpetalab {
  overflow: hidden;
  padding-bottom: 60px;
}

.carpetalab .brazo-iz {
  position: absolute;
  bottom: 0;
  z-index: 1;
  left: calc(50% - 1032px);
}

@media only screen and (max-width: 1360px) {
  .carpetalab .brazo-iz {
    display: none;
  }
}

.carpetalab .brazo-de {
  position: absolute;
  bottom: 0;
  z-index: 1;
  right: calc(50% - 1031px);
}

@media only screen and (max-width: 1360px) {
  .carpetalab .brazo-de {
    display: none;
  }
}

.carpetalab .container .carpeta-box {
  background: #FBCE2B;
  border-top-right-radius: 20px;
  border-bottom-left-radius: 20px;
  border: 5px solid #0E2E32;
  position: relative;
  padding: 30px;
}

@media only screen and (max-width: 600px) {
  .carpetalab .container .carpeta-box {
    padding: 20px;
  }
}

@media only screen and (max-width: 480px) {
  .carpetalab .container .carpeta-box {
    padding: 15px;
  }
}

.carpetalab .container .carpeta-box:after {
  content: "";
  width: 100px;
  background: #f9ba18;
  position: absolute;
  left: calc(50% - 50px);
  top: 0;
  display: block;
  height: 100%;
}

.carpetalab .container .carpeta-box .carpeta-iz {
  position: absolute;
  left: -42px;
  top: -5px;
}

.carpetalab .container .carpeta-box .carpeta-de {
  position: absolute;
  right: -42px;
  bottom: -5px;
}

.carpetalab .container .carpeta-box .row {
  position: relative;
  z-index: 2;
}

.carpetalab .container .carpeta-box .row:after, .carpetalab .container .carpeta-box .row:before {
  content: "";
  background-image: url("../img/anillas.svg");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  width: 140px;
  height: 30px;
  position: absolute;
  left: calc(50% - 70px);
  top: calc(33.333% - 15px);
  z-index: 2;
}

@media only screen and (max-width: 991px) {
  .carpetalab .container .carpeta-box .row:after, .carpetalab .container .carpeta-box .row:before {
    display: none;
  }
}

.carpetalab .container .carpeta-box .row:before {
  top: calc(66.666% - 15px);
}

@media only screen and (max-width: 991px) {
  .carpetalab .container .carpeta-box .row .col {
    width: 100%;
  }
}

.carpetalab .container .carpeta-box .row .col .pagina {
  background: white;
  border-radius: 20px;
  height: 100%;
  padding: 40px;
}

@media only screen and (max-width: 1199px) {
  .carpetalab .container .carpeta-box .row .col .pagina {
    padding: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .carpetalab .container .carpeta-box .row .col .pagina {
    padding: 20px;
  }
}

.carpetalab .container .carpeta-box .row .col .pagina .intro {
  font-size: 24px;
  line-height: 32px;
}

@media only screen and (max-width: 1199px) {
  .carpetalab .container .carpeta-box .row .col .pagina .intro {
    font-size: 20px;
    line-height: 28px;
  }
}

@media only screen and (max-width: 600px) {
  .carpetalab .container .carpeta-box .row .col .pagina .intro {
    font-size: 16px;
    line-height: 22px;
  }
}

.carpetalab .container .carpeta-box .row .col .pagina .equivalencia {
  padding: 20px;
  background: #ddeef2;
  border-radius: 15px;
  margin: 30px 0 0 0;
}

.carpetalab .container .carpeta-box .row .col .pagina .equivalencia img {
  margin: 0 auto;
}

.carpetalab .container .carpeta-box .row .col .pagina .equivalencia p {
  margin: 0;
}

.carpetalab .container .carpeta-box .row .col .pagina .lista-alimentos {
  display: flex;
  flex-wrap: wrap;
}

.carpetalab .container .carpeta-box .row .col .pagina .lista-alimentos .alimento {
  width: 50%;
  padding: 0 10px 30px 10px;
}

@media only screen and (max-width: 991px) {
  .carpetalab .container .carpeta-box .row .col .pagina .lista-alimentos .alimento {
    width: 33.333%;
  }
}

@media only screen and (max-width: 767px) {
  .carpetalab .container .carpeta-box .row .col .pagina .lista-alimentos .alimento {
    width: 50%;
  }
}

@media only screen and (max-width: 480px) {
  .carpetalab .container .carpeta-box .row .col .pagina .lista-alimentos .alimento {
    width: 100%;
    padding: 0 0 30px 0;
  }
}

.carpetalab .container .carpeta-box .row .col .pagina .lista-alimentos .alimento img {
  max-width: 130px;
  height: auto;
  margin: 0 auto;
}

.carpetalab .container .carpeta-box .row .col .pagina .lista-alimentos .alimento .intro {
  text-align: center;
  font-weight: 500;
}

.carpetalab .container .carpeta-box .row .col .pagina .lista-alimentos .alimento input {
  -webkit-appearance: none;
  font-size: 24px;
  line-height: 40px;
  background: #ddeef2;
  width: 50px;
  margin: 0 auto;
  padding: 0;
  margin: 0 auto;
  border: 0;
  display: block;
  text-align: center;
  font-family: "Outfit", sans-serif;
  font-weight: 400;
}

.carpetalab .container .carpeta-box .row .col .pagina .doctor-azucar {
  display: flex;
  margin: 30px 0;
}

@media only screen and (max-width: 1199px) {
  .carpetalab .container .carpeta-box .row .col .pagina .doctor-azucar {
    display: block;
  }
}

@media only screen and (max-width: 991px) {
  .carpetalab .container .carpeta-box .row .col .pagina .doctor-azucar {
    display: flex;
  }
}

@media only screen and (max-width: 480px) {
  .carpetalab .container .carpeta-box .row .col .pagina .doctor-azucar {
    display: block;
  }
}

.carpetalab .container .carpeta-box .row .col .pagina .doctor-azucar img {
  width: 180px;
  margin: 0 20px;
}

.carpetalab .container .carpeta-box .row .col .pagina .doctor-azucar .equivalencia {
  height: fit-content;
}

.carpetalab .container .carpeta-box .row .col .pagina .boton-box {
  margin: 0 auto;
}

.carpetalab .container .carpeta-box .row .col .pagina .boton-box .boton {
  margin: 0 auto;
}

.carpetalab .container .carpeta-box .row .col .pagina .tip {
  background: #ddeef2;
  border-radius: 15px;
  padding: 15px;
  font-size: 16px;
  line-height: 22px;
  font-weight: 500;
  text-align: center;
  height: calc(100% - 140px);
}

.carpetalab .container .carpeta-box .row .col.col-left .pagina {
  padding-right: 60px;
}

@media only screen and (max-width: 991px) {
  .carpetalab .container .carpeta-box .row .col.col-left .pagina {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding-right: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .carpetalab .container .carpeta-box .row .col.col-left .pagina {
    padding: 20px;
  }
}

.carpetalab .container .carpeta-box .row .col.col-right .pagina {
  padding-left: 40px;
}

@media only screen and (max-width: 991px) {
  .carpetalab .container .carpeta-box .row .col.col-right .pagina {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    padding-left: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .carpetalab .container .carpeta-box .row .col.col-right .pagina {
    padding: 20px;
  }
}

/* Cocina */
.background-restaurante {
  /*&.pruebas-cocina .header {
    position: relative;
    z-index: 5;
  }*/
}

.background-restaurante .notificacion-cocina {
  position: fixed;
  left: 50px;
  top: 40px;
  display: flex;
  align-items: center;
  margin: 0;
}

@media only screen and (max-width: 1199px) {
  .background-restaurante .notificacion-cocina {
    top: 35px;
    left: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .background-restaurante .notificacion-cocina {
    top: 30px;
  }
}

.background-restaurante .notificacion-cocina .texto-boton {
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 991px) {
  .background-restaurante .notificacion-cocina .texto-boton {
    font-size: 0;
  }
}

.background-restaurante .notificacion-cocina .texto-boton img {
  margin: 0 10px 0 0;
  position: relative;
  top: -8px;
  -webkit-animation: bounce 2s infinite;
  -moz-animation: bounce 2s infinite;
  -ms-animation: bounce 2s infinite;
  -o-animation: bounce 2s infinite;
  animation: bounce 2s infinite;
}

@media only screen and (max-width: 1199px) {
  .background-restaurante .notificacion-cocina .texto-boton img {
    width: 70px;
    top: -6px;
  }
}

@media only screen and (max-width: 600px) {
  .background-restaurante .notificacion-cocina .texto-boton img {
    width: 60px;
    top: -4px;
  }
}

.main-cocina {
  position: relative;
}

.main-cocina:before {
  content: "";
  position: fixed;
  top: -101vh;
  left: -101vw;
  width: 100%;
  height: 100%;
  background: #f4eddc;
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: 1;
  -webkit-transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  -ms-transform: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.main-cocina:after {
  content: "";
  height: 180px;
}

@media only screen and (max-width: 767px) {
  .main-cocina:after {
    height: 150px;
  }
}

@media only screen and (max-width: 600px) {
  .main-cocina:after {
    height: 120px;
  }
}

@media only screen and (max-width: 480px) {
  .main-cocina:after {
    height: 100px;
  }
}

.main-cocina .lamparas {
  background-image: url("../img/repte-5/lamparas.svg");
  height: 200px;
  background-size: 1600px 200px;
  z-index: -1;
}

@media only screen and (max-width: 1360px) {
  .main-cocina .lamparas {
    background-size: 1360px 204px;
    height: 204px;
  }
}

@media only screen and (max-width: 767px) {
  .main-cocina .lamparas {
    background-size: 1000px 150px;
    height: 150px;
  }
}

.main-cocina .sala-restaurante {
  min-height: 860px;
}

@media only screen and (max-width: 1360px) {
  .main-cocina .sala-restaurante {
    overflow: hidden;
    min-height: auto;
  }
}

.main-cocina .sala-restaurante .container .video-container {
  position: relative;
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
}

.main-cocina .sala-restaurante .container .video-container video {
  width: 100%;
  display: block;
  border-radius: 20px;
}

.main-cocina .sala-restaurante .container .video-container .play-button {
  position: absolute;
  cursor: pointer;
  height: 100px;
  width: 100px;
  top: calc(50% - 50px);
  left: calc(50% - 50px);
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transform: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

.main-cocina .sala-restaurante .container .video-container .play-button img {
  width: 100%;
}

.main-cocina .sala-restaurante .container .video-container .play-button:hover {
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

.main-cocina .sala-restaurante .container .video-container .boton-oculto {
  display: none;
  float: right;
  margin: 20px 0 0 0;
}

.main-cocina .sala-restaurante .container .video-container .boton-oculto .boton-box {
  display: flex;
  align-items: center;
}

.main-cocina .sala-restaurante .container .video-container .boton-oculto .boton-box .texto-boton {
  margin: 0 10px 0 0;
}

.main-cocina .sala-restaurante .container .row .col .robot-flotante {
  -moz-transform: scale(-1, 1);
  -o-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1);
  margin: 100px auto 0 auto;
}

.main-cocina .mesa-restaurante {
  background-image: url("../img/repte-5/mesa-cocina.svg");
  height: 860px;
  width: 1600px;
  background-size: 1600px 860px;
  left: calc(50% - 800px);
}

@media only screen and (max-width: 1360px) {
  .main-cocina .mesa-restaurante {
    background-size: 1360px 731px;
  }
}

@media only screen and (max-width: 1360px) {
  .main-cocina .mesa-restaurante {
    transform: scale(0.8);
    margin-bottom: -86px;
  }
}

@media only screen and (max-width: 991px) {
  .main-cocina .mesa-restaurante {
    background-position: bottom center;
    transform: scale(0.65);
    margin-bottom: -150px;
  }
}

@media only screen and (max-width: 767px) {
  .main-cocina .mesa-restaurante {
    transform: scale(0.5);
    margin-bottom: -215px;
  }
}

@media only screen and (max-width: 600px) {
  .main-cocina .mesa-restaurante {
    transform: scale(0.4);
    margin-bottom: -257px;
  }
}

@media only screen and (max-width: 480px) {
  .main-cocina .mesa-restaurante {
    transform: scale(0.3);
    margin-bottom: -300px;
  }
}

.main-cocina .mesa-restaurante .icon {
  position: absolute;
  z-index: 3;
  -webkit-animation: pulse 2s infinite ease-in-out;
  -moz-animation: pulse 2s infinite ease-in-out;
  -ms-animation: pulse 2s infinite ease-in-out;
  -o-animation: pulse 2s infinite ease-in-out;
  animation: pulse 2s infinite ease-in-out;
  cursor: pointer;
}

.main-cocina .mesa-restaurante .icon.icon-nevera {
  right: 9%;
  bottom: 62%;
}

@media only screen and (max-width: 1360px) {
  .main-cocina .mesa-restaurante .icon.icon-nevera {
    right: 15%;
  }
}

.main-cocina .mesa-restaurante .icon.icon-fregadero {
  left: 21%;
  bottom: 63%;
}

.main-cocina .mesa-restaurante .icon.icon-gato {
  right: 19%;
  bottom: 10%;
}

.main-cocina .mesa-restaurante .icon.icon-carne {
  right: 40%;
  bottom: 14%;
}

.main-cocina .mesa-restaurante .icon.icon-esponja {
  left: 39%;
  bottom: 50%;
}

.main-cocina .mesa-restaurante .icon.icon-fruta {
  left: 27%;
  bottom: 15%;
}

.main-cocina .mesa-restaurante .icon.icon-tabla {
  right: 38%;
  bottom: 22%;
}

.main-cocina .mesa-restaurante .icon.icon-spray {
  left: 50%;
  bottom: 20%;
}

.main-cocina .mesa-restaurante .icon.icon-delantal {
  left: 8%;
  bottom: 74%;
}

@media only screen and (max-width: 1360px) {
  .main-cocina .mesa-restaurante .icon.icon-delantal {
    left: 15%;
    bottom: 60%;
  }
}

.main-cocina .mesa-restaurante .icon.icon-huevos {
  left: 40%;
  bottom: 15%;
}

.main-cocina .mesa-restaurante .icon .pulsin {
  width: 40px;
  height: 40px;
  display: block;
  border-radius: 50%;
  background-color: white;
  box-shadow: 0 0 0 rgba(255, 255, 255, 0);
  -webkit-animation: pulseti 2s infinite;
  -moz-animation: pulseti 2s infinite;
  -ms-animation: pulseti 2s infinite;
  -o-animation: pulseti 2s infinite;
  animation: pulseti 2s infinite;
  background-image: url("../img/icono-check.svg");
  background-position: center center;
  background-size: 100%;
}

.main-cocina .mesa-restaurante .icon.ok {
  cursor: initial;
  pointer-events: none;
}

.main-cocina .mesa-restaurante .icon.ok .pulsin {
  background-color: #65c950;
  box-shadow: 0 0 0 rgba(101, 201, 80, 0);
  -webkit-animation: pulsetiok 2s infinite;
  -moz-animation: pulsetiok 2s infinite;
  -ms-animation: pulsetiok 2s infinite;
  -o-animation: pulsetiok 2s infinite;
  animation: pulsetiok 2s infinite;
}

.pruebas-cocina .main-cocina .sala-restaurante {
  z-index: initial;
}

.anima .notificacion-cocina {
  z-index: 2;
}

.anima .main-cocina:before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #f4eddc;
  opacity: 0.8;
  filter: alpha(opacity=80);
  z-index: 1;
}

.anima.anima-logo .header {
  position: relative;
  z-index: 2;
}

.popup-cocina {
  position: fixed;
  align-items: center;
  z-index: 4;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(244, 237, 220, 0.8);
  display: none;
  justify-content: center;
}

@media only screen and (max-width: 991px) {
  .popup-cocina {
    background: white;
  }
}

.popup-cocina .popup-box {
  background: white;
  padding: 50px;
  margin: 0 auto;
  width: 920px;
  border-radius: 10px;
  display: flex;
  flex-wrap: wrap;
}

@media only screen and (max-width: 991px) {
  .popup-cocina .popup-box {
    width: 100%;
    border-radius: 0;
    padding: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .popup-cocina .popup-box {
    padding: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .popup-cocina .popup-box {
    padding: 20px;
    display: block;
  }
}

.popup-cocina .popup-box .columna-imagen {
  width: 50%;
  align-self: center;
}

@media only screen and (max-width: 600px) {
  .popup-cocina .popup-box .columna-imagen {
    width: 100%;
  }
}

.popup-cocina .popup-box .columna-imagen img {
  max-width: 400px;
}

@media only screen and (max-width: 600px) {
  .popup-cocina .popup-box .columna-imagen img {
    margin: 20px auto 0 auto;
  }
}

.popup-cocina .popup-box .columna-contenido {
  width: 50%;
  padding-right: 20px;
}

@media only screen and (max-width: 600px) {
  .popup-cocina .popup-box .columna-contenido {
    width: 100%;
  }
}

.popup-cocina .popup-box .columna-contenido .pregunta {
  font-size: 22px;
  line-height: 28px;
  font-weight: 600;
}

@media only screen and (max-width: 1199px) {
  .popup-cocina .popup-box .columna-contenido .pregunta {
    font-size: 20px;
    line-height: 28px;
  }
}

@media only screen and (max-width: 600px) {
  .popup-cocina .popup-box .columna-contenido .pregunta {
    font-size: 16px;
    line-height: 22px;
  }
}

.popup-cocina .popup-box .columna-contenido .botones-vf {
  margin: 30px 0 0 10px;
}

.popup-cocina .popup-box .columna-contenido .botones-vf button {
  font-family: "Outfit", sans-serif;
  font-size: 22px;
  line-height: 30px;
  font-weight: 400;
  color: #0E2E32;
  background: none;
  border: none;
  margin: 20px 0 0 0;
  padding: 0;
  display: flex;
  cursor: pointer;
}

@media only screen and (max-width: 1199px) {
  .popup-cocina .popup-box .columna-contenido .botones-vf button {
    font-size: 20px;
  }
}

@media only screen and (max-width: 600px) {
  .popup-cocina .popup-box .columna-contenido .botones-vf button {
    font-size: 16px;
  }
}

.popup-cocina .popup-box .columna-contenido .botones-vf button span {
  height: 30px;
  width: 30px;
  border: 2px solid #0E2E32;
  margin: 0 10px 0 0;
  position: relative;
}

.popup-cocina .popup-box .columna-contenido .botones-vf button span:after {
  content: "";
  width: 26px;
  height: 26px;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transform: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background: url("../img/repte-3/x.svg") no-repeat center center;
  opacity: 0;
  filter: alpha(opacity=0);
}

.popup-cocina .popup-box .columna-contenido .botones-vf button:hover span:after {
  opacity: 1;
  filter: alpha(opacity=100);
}

.popup-cocina .popup-box .boton-box .boton {
  margin: 0 auto;
}

#incorrecto {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 30px;
  align-content: center;
  align-items: center;
  text-align: center;
  justify-content: center;
  font-size: 60px;
  line-height: 60px;
  color: white;
  font-family: "Circe Rounded";
  letter-spacing: -1px;
  font-weight: 800;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  z-index: 23;
  background-color: #e04149;
  background-image: url("../img/background-rojo.svg");
}

#correcto {
  display: none !important;
}

.popup-cocina.exito {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 30px;
  align-content: center;
  text-align: center;
  color: white;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  z-index: 23;
  background-color: #65c950;
  background-image: url("../img/background-verde.svg");
}

.popup-cocina.exito .popup-box {
  margin: 0 auto;
  padding: 0;
  background: none;
  width: 700px;
}

.popup-cocina.exito .popup-box .titulo-correcto {
  font-size: 60px;
  line-height: 60px;
  color: white;
  font-family: "Circe Rounded";
  letter-spacing: -1px;
  font-weight: 800;
  text-align: center;
  margin: 0 auto 15px auto;
}

@media only screen and (max-width: 991px) {
  .popup-cocina.exito .popup-box .titulo-correcto {
    font-size: 50px;
    line-height: 50px;
  }
}

@media only screen and (max-width: 600px) {
  .popup-cocina.exito .popup-box .titulo-correcto {
    font-size: 40px;
    line-height: 40px;
  }
}

.popup-cocina.exito .popup-box .pregunta {
  color: white;
  font-size: 22px;
  line-height: 28px;
  font-weight: 600;
  width: 100%;
}

@media only screen and (max-width: 1199px) {
  .popup-cocina.exito .popup-box .pregunta {
    font-size: 20px;
    line-height: 28px;
  }
}

@media only screen and (max-width: 600px) {
  .popup-cocina.exito .popup-box .pregunta {
    font-size: 16px;
    line-height: 22px;
  }
}

.popup-cocina.exito .popup-box .boton-box {
  margin: 20px auto 0 auto;
}

/* Plato */
.plato-harvard {
  padding: 100px 0;
}

@media only screen and (max-width: 1199px) {
  .plato-harvard {
    padding: 30px 0;
  }
}

.plato-harvard .container .game-container {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

@media only screen and (max-width: 1199px) {
  .plato-harvard .container .game-container {
    flex-wrap: wrap;
  }
}

.plato-harvard .container .game-container .foods {
  width: calc(50% - 350px);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media only screen and (max-width: 1199px) {
  .plato-harvard .container .game-container .foods {
    width: 100%;
    order: 1;
  }
}

.plato-harvard .container .game-container .foods .food {
  width: 100px;
  height: 100px;
  margin: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: grab;
  font-weight: bold;
  user-select: none;
}

@media only screen and (max-width: 991px) {
  .plato-harvard .container .game-container .foods .food {
    width: 80px;
    height: 80px;
  }
}

@media only screen and (max-width: 767px) {
  .plato-harvard .container .game-container .foods .food {
    width: 70px;
    height: 70px;
  }
}

.plato-harvard .container .game-container .plate {
  overflow: visible;
  width: 700px;
  height: 700px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  position: relative;
}

@media only screen and (max-width: 1199px) {
  .plato-harvard .container .game-container .plate {
    margin: 100px 0;
    order: 2;
  }
}

@media only screen and (max-width: 767px) {
  .plato-harvard .container .game-container .plate {
    width: 560px;
    height: 560px;
  }
}

@media only screen and (max-width: 600px) {
  .plato-harvard .container .game-container .plate {
    width: 420px;
    height: 420px;
  }
}

@media only screen and (max-width: 480px) {
  .plato-harvard .container .game-container .plate {
    width: 320px;
    height: 320px;
  }
}

.plato-harvard .container .game-container .plate .food {
  width: 100px;
  height: 100px;
}

@media only screen and (max-width: 991px) {
  .plato-harvard .container .game-container .plate .food {
    width: 80px;
    height: 80px;
  }
}

@media only screen and (max-width: 767px) {
  .plato-harvard .container .game-container .plate .food {
    width: 70px;
    height: 70px;
  }
}

@media only screen and (max-width: 600px) {
  .plato-harvard .container .game-container .plate .food {
    width: 40px;
    height: 40px;
  }
}

.zone {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  position: relative;
}

.zone.small-zone {
  position: absolute;
  width: 240px;
  height: 240px;
  border-radius: 50%;
  border: 10px solid white;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

@media only screen and (max-width: 600px) {
  .zone.small-zone {
    border-width: 6px;
    width: 200px;
    height: 200px;
  }
}

@media only screen and (max-width: 480px) {
  .zone.small-zone {
    border-width: 3px;
    width: 160px;
    height: 160px;
  }
}

.zone.frutas {
  border-top-left-radius: 500px;
  border-bottom-left-radius: 500px;
  border: 10px solid white;
  grid-row: span 2;
  background-image: url("../img/repte-6/fondo-vegetales.svg");
  background-size: 150px 300px;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #eaea8b;
}

@media only screen and (max-width: 600px) {
  .zone.frutas {
    background-size: 75px 150px;
    border-width: 6px;
  }
}

@media only screen and (max-width: 480px) {
  .zone.frutas {
    border-width: 3px;
  }
}

.zone.carbs {
  background-image: url("../img/repte-6/fondo-hidratos.svg");
  background-size: 150px 150px;
  background-position: 35% 65%;
  background-repeat: no-repeat;
  background-color: #f1d5b8;
  border-right: 10px solid white;
  border-top: 10px solid white;
  border-bottom: 5px solid white;
  border-top-right-radius: 500px;
  flex-flow: wrap-reverse;
}

@media only screen and (max-width: 600px) {
  .zone.carbs {
    background-size: 75px 75px;
    border-right: 6px solid white;
    border-top: 6px solid white;
    border-bottom: 3px solid white;
  }
}

@media only screen and (max-width: 480px) {
  .zone.carbs {
    border-right: 3px solid white;
    border-top: 3px solid white;
    border-bottom: 1px solid white;
  }
}

.zone.proteins {
  background-image: url("../img/repte-6/fondo-proteinas.svg");
  background-size: 150px 150px;
  background-position: 35% 35%;
  background-repeat: no-repeat;
  background-color: #ddeef2;
  border-right: 10px solid white;
  border-top: 5px solid white;
  border-bottom: 10px solid white;
  border-bottom-right-radius: 500px;
}

@media only screen and (max-width: 600px) {
  .zone.proteins {
    background-size: 75px 75px;
    border-right: 6px solid white;
    border-top: 3px solid white;
    border-bottom: 6px solid white;
  }
}

@media only screen and (max-width: 480px) {
  .zone.proteins {
    border-right: 3px solid white;
    border-top: 3px solid white;
    border-bottom: 1px solid white;
  }
}

.zone.frutos {
  background: #e8ddb5;
  top: -90px;
  left: -0px;
  background-image: url("../img/repte-6/fondo-grasas.svg");
  background-size: 140px 60px;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #edda6b;
}

@media only screen and (max-width: 600px) {
  .zone.frutos {
    background-size: 70px 30px;
  }
}

.zone.bebida {
  background: #e8ddb5;
  top: -100px;
  right: 0;
  background-image: url("../img/repte-6/fondo-bebida.svg");
  background-size: 90px 30px;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #e4eae9;
  width: 160px;
  height: 160px;
}

@media only screen and (max-width: 600px) {
  .zone.bebida {
    background-size: 45px 15px;
  }
}

.zone.azucar {
  background: #e8ddb5;
  bottom: -80px;
  left: calc(50% - 85px);
  background-image: url("../img/repte-6/fondo-azucar.svg");
  background-size: 100px 60px;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #ffd7df;
  width: 160px;
  height: 160px;
}

@media only screen and (max-width: 600px) {
  .zone.azucar {
    background-size: 50px 30px;
    width: 120px;
    height: 120px;
    left: calc(50% - 60px);
  }
}

@media only screen and (max-width: 480px) {
  .zone.azucar {
    border-width: 3px;
    width: 100px;
    height: 100px;
    left: calc(50% - 50px);
  }
}

/* Popup */
.popup-info {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(251, 206, 43, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  visibility: hidden;
}

@media only screen and (max-width: 767px) {
  .popup-info {
    background: white;
  }
}

.popup-info.show {
  visibility: visible;
}

.popup-box-plato {
  background: white;
  padding: 50px;
  border-radius: 20px;
  max-width: 600px;
  text-align: center;
}

.popup-box-plato .boton-box {
  margin: 25px 0 0 0;
}

.popup-box-plato .boton-box .boton {
  margin: 0 auto;
}

.final-diploma {
  padding-bottom: 200px;
}

.final-diploma .container .row .col .infografia-destacado {
  padding: 20px;
  border-radius: 15px;
  background: #ddeef2;
  margin: 20px 0 30px 0;
}

.final-diploma .container .row .col .infografia-destacado p {
  margin: 0;
  font-weight: 600;
}

.final-diploma .container .row .col .robot-flotante {
  margin: 100px auto 0 auto;
}

/* Infografia */
.abrir {
  width: 50px;
  height: 50px;
  background-image: url("../img/icono-info.svg");
  background-repeat: no-repeat;
  background-size: 30px 30px;
  background-position: center center;
  border: none;
  border-radius: 40px;
  background-color: #0E2E32;
  cursor: pointer;
  position: absolute;
  bottom: 88%;
  left: 32%;
  z-index: 2;
  -webkit-animation: pulse 1.5s infinite ease-in-out;
  -moz-animation: pulse 1.5s infinite ease-in-out;
  -ms-animation: pulse 1.5s infinite ease-in-out;
  -o-animation: pulse 1.5s infinite ease-in-out;
  animation: pulse 1.5s infinite ease-in-out;
}

@media only screen and (max-width: 1360px) {
  .abrir {
    bottom: 75%;
  }
}

.overlay-historia {
  position: fixed;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(244, 237, 220, 0.8);
  display: none;
  justify-content: center;
  align-items: center;
  padding: 30px;
}

@media only screen and (max-width: 1199px) {
  .overlay-historia {
    background: white;
    padding: 0;
  }
}

@media only screen and (max-width: 991px) {
  .overlay-historia {
    overflow: auto;
    align-items: baseline;
  }
}

/* POPUP */
.popup-historia {
  background: white;
  width: 1020px;
  height: auto;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  padding: 50px;
}

@media only screen and (max-width: 1199px) {
  .popup-historia {
    padding: 40px;
  }
}

@media only screen and (max-width: 991px) {
  .popup-historia {
    padding: 30px;
  }
}

@media only screen and (max-width: 600px) {
  .popup-historia {
    padding: 20px;
  }
}

.popup-historia .slide {
  display: none;
  width: 100%;
  height: 100%;
}

.popup-historia .slide.active {
  display: block;
}

.popup-historia .slide .box-slide {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.popup-historia .slide .box-slide .slide-texto {
  width: 60%;
  padding-right: 40px;
}

@media only screen and (max-width: 600px) {
  .popup-historia .slide .box-slide .slide-texto {
    width: 100%;
    padding-right: 0;
  }
}

.popup-historia .slide .box-slide .slide-texto ul {
  margin: 10px 0 25px 35px;
}

.popup-historia .slide .box-slide .slide-texto ul li {
  list-style: disc;
}

.popup-historia .slide .box-slide .slide-texto .boton-box {
  margin: 20px 0 0 0;
}

.popup-historia .slide .box-slide .slide-imagen {
  width: 40%;
  padding-left: 40px;
}

@media only screen and (max-width: 600px) {
  .popup-historia .slide .box-slide .slide-imagen {
    width: 100%;
    padding-left: 0;
  }
}

.popup-historia .slide .box-slide .slide-imagen .robot-flotante .shadow {
  background: #ddeef2;
}

.popup-historia .slide .box-slide .slide-destacado {
  width: 40%;
  padding-left: 40px;
  align-self: start;
  height: -webkit-fill-available;
}

@media only screen and (max-width: 600px) {
  .popup-historia .slide .box-slide .slide-destacado {
    width: 100%;
    padding-left: 0;
    margin: 30px 0 0 0;
  }
}

.popup-historia .slide .box-slide .slide-destacado p {
  padding: 20px;
  border-radius: 15px;
  background: #ddeef2;
  font-weight: 700;
  margin: 0;
}

.popup-historia .slide .box-slide .slide-bacteria {
  width: 50%;
}

@media only screen and (max-width: 600px) {
  .popup-historia .slide .box-slide .slide-bacteria {
    width: 100%;
  }
}

.popup-historia .slide .box-slide .slide-bacteria.col-i {
  padding-right: 30px;
}

@media only screen and (max-width: 600px) {
  .popup-historia .slide .box-slide .slide-bacteria.col-i {
    padding-right: 0;
  }
}

.popup-historia .slide .box-slide .slide-bacteria.col-d {
  padding-left: 30px;
}

@media only screen and (max-width: 600px) {
  .popup-historia .slide .box-slide .slide-bacteria.col-d {
    padding-left: 0;
  }
}

.popup-historia .slide .box-slide .slide-bacteria.col-full {
  width: 75%;
}

.popup-historia .slide .box-slide .slide-bacteria.col-boton {
  width: 25%;
  align-self: end;
}

.popup-historia .slide .box-slide .slide-bacteria img {
  margin: 0 auto;
  max-width: 450px;
}

@media only screen and (max-width: 991px) {
  .popup-historia .slide .box-slide .slide-bacteria img {
    max-width: 100%;
    width: 100%;
  }
}

.popup-historia .slide .box-slide .slide-bacteria .boton-box .boton {
  margin: 0 0 0 auto;
}

.popup-historia .slide .box-slide.bacteria-slide {
  align-items: initial;
}

.popup-historia .slide .titulo {
  width: 100%;
}

@keyframes pulseti {
  0% {
    box-shadow: 0 0 0 0 white;
  }
  70% {
    box-shadow: 0 0 0 40px rgba(255, 255, 255, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

@keyframes pulsetiok {
  0% {
    box-shadow: 0 0 0 0 #65c950;
  }
  70% {
    box-shadow: 0 0 0 40px rgba(101, 201, 80, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(101, 201, 80, 0);
  }
}

/* Animaciones */
@keyframes bateria {
  0% {
    background-image: url("../img/bateria-1.svg");
  }
  55% {
    background-image: url("../img/bateria-2.svg");
  }
  60% {
    background-image: url("../img/bateria-1.svg");
  }
  100% {
    background-image: url("../img/bateria-1.svg");
  }
}

@keyframes bounce {
  0%, 30%, 50%, 70%, 100% {
    -moz-transform: translateY(0px);
    -o-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  40% {
    -moz-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
  60% {
    -moz-transform: translateY(-8px);
    -o-transform: translateY(-8px);
    -ms-transform: translateY(-8px);
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}

@keyframes float {
  0% {
    -moz-transform: translateY(0px);
    -o-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  50% {
    -moz-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
  100% {
    -moz-transform: translateY(0px);
    -o-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes shadow-scale {
  0% {
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0.6;
    filter: alpha(opacity=60);
  }
  50% {
    -moz-transform: scale(0.8);
    -o-transform: scale(0.8);
    -ms-transform: scale(0.8);
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
    opacity: 0.4;
    filter: alpha(opacity=40);
  }
  100% {
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0.6;
    filter: alpha(opacity=60);
  }
}

@keyframes scaleIn {
  from {
    -moz-transform: scale(0.5);
    -o-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0;
    filter: alpha(opacity=0);
  }
  to {
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    filter: alpha(opacity=100);
  }
}

@keyframes pulse {
  0% {
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  70% {
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  100% {
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
