/**
 * Foundation for Sites by ZURB
 * Version 6.2.4
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
.header {
  padding: 2.5rem 0;
  position: absolute;
  width: 100%;
  z-index: 10; }
  @media screen and (max-width: 39.9375em) {
    .header img.logotipo {
      width: 12.5rem; } }
  .header ul.selector-idiomas {
    position: fixed;
    right: 1.875rem;
    top: 0;
    margin-bottom: 0;
    background: #547bb8;
    padding: 0.125rem 0.625rem;
    border-radius: 0.1875rem; }
    @media print, screen and (min-width: 40em) {
      .header ul.selector-idiomas {
        top: 1.875rem; } }
    .header ul.selector-idiomas li {
      display: inline-block; }
      .header ul.selector-idiomas li a {
        font-size: 1.25rem;
        color: #ffffff; }
        .header ul.selector-idiomas li a:focus, .header ul.selector-idiomas li a:active, .header ul.selector-idiomas li a:hover {
          color: #ea1a83; }
  .header ul.selector-idiomas li:first-child::after {
    font-weight: 700;
    content: "/";
    color: #ffffff;
    margin: 0 0.625rem; }

.mensaje {
  margin: 0;
  background: url(../img/bg-mensaje.png) no-repeat;
  position: fixed;
  z-index: 20;
  bottom: 5%;
  right: 5%;
  width: 18.75rem;
  height: 17rem;
  padding-top: 6.25rem; }
  .mensaje img {
    margin-bottom: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .mensaje {
      width: 37.1875rem; } }
  .mensaje h3 {
    font-size: 1.75rem;
    line-height: 2.5rem; }
    @media screen and (max-width: 39.9375em) {
      .mensaje h3 {
        font-size: 1.125rem;
        line-height: 1.125rem; } }
  .mensaje h3, .mensaje p {
    color: #ffffff; }
  .mensaje .fa-times {
    font-size: 1.25rem;
    color: #ffffff; }
  .mensaje .fa-check-circle {
    margin-left: 1.25rem; }

h1, h2, h3, h4, h5 {
  font-family: 'Poppins', sans-serif; }

h1, h2 {
  font-size: 0.8125rem;
  line-height: 1.1875rem;
  font-weight: 700;
  color: #ffffff; }
  @media print, screen and (min-width: 40em) {
    h1, h2 {
      font-size: 1.1875rem;
      line-height: 1.375rem; } }
  @media print, screen and (min-width: 64em) {
    h1, h2 {
      font-size: 1.375rem;
      line-height: 1.5625rem; } }

h3 {
  font-size: 0.875rem;
  line-height: 1.5rem; }
  @media print, screen and (min-width: 64em) {
    h3 {
      font-size: 1rem;
      line-height: 1.625rem; } }

p, span, li, strong, blockquote, label {
  font-family: 'Poppins', sans-serif; }

p, li {
  color: #6d6e71;
  font-size: 0.75rem;
  line-height: 1.25rem; }
  @media print, screen and (min-width: 64em) {
    p, li {
      font-size: 1rem;
      line-height: 1.625rem; } }

p a, li a {
  font-family: inherit;
  color: inherit; }

form span.form-error {
  display: none; }
form .has-error label {
  color: #af0101; }
form .has-error input[type="text"], form .has-error input[type="password"], form .has-error input[type="date"], form .has-error input[type="datetime"], form .has-error input[type="datetime-local"], form .has-error input[type="month"], form .has-error input[type="week"], form .has-error input[type="email"], form .has-error input[type="number"], form .has-error input[type="search"], form .has-error input[type="tel"], form .has-error input[type="time"], form .has-error input[type="url"], form .has-error input[type="color"], form .has-error select, form .has-error textarea {
  border-color: #af0101;
  margin-bottom: 0.625rem; }
form .has-error span.form-error {
  font-family: 'Open Sans', sans-serif;
  font-size: 0.75rem;
  font-weight: bold;
  display: block;
  margin-bottom: 0.3125rem; }
form label {
  font-family: 'Roboto', sans-serif;
  font-size: 0.875rem;
  color: #6d6e71; }
form input[type="text"], form input[type="password"], form input[type="date"], form input[type="datetime"], form input[type="datetime-local"], form input[type="month"], form input[type="week"], form input[type="email"], form input[type="number"], form input[type="search"], form input[type="tel"], form input[type="time"], form input[type="url"], form input[type="color"], form select, form textarea {
  color: #6d6e71;
  font-family: 'Lato', sans-serif;
  font-size: 0.875rem;
  border: none;
  box-shadow: none;
  background-color: #f1f1f1;
  margin-top: 0.625rem; }
  form input[type="text"]:focus, form input[type="password"]:focus, form input[type="date"]:focus, form input[type="datetime"]:focus, form input[type="datetime-local"]:focus, form input[type="month"]:focus, form input[type="week"]:focus, form input[type="email"]:focus, form input[type="number"]:focus, form input[type="search"]:focus, form input[type="tel"]:focus, form input[type="time"]:focus, form input[type="url"]:focus, form input[type="color"]:focus, form select:focus, form textarea:focus {
    background-color: #f1f1f1;
    border: none;
    box-shadow: none; }

.button {
  font-family: 'Poppins', sans-serif; }
  .button.boton-azul {
    transition: 0.3s;
    background: #3c3474;
    font-size: 0.875rem;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    padding: 0.75rem 2.5rem;
    border-radius: 0.5rem; }
    .button.boton-azul:hover, .button.boton-azul:focus, .button.boton-azul:active {
      transition: 0.3s;
      background: #547bb8; }

.separador-20 {
  padding: 0.625rem 0; }

.separador-30 {
  padding: 0.9375rem 0; }

.separador-50 {
  padding: 1.5625rem 0; }

.site-index {
  overflow: hidden; }
  .site-index .principal {
    background: url(../img/bg-principal.jpg);
    background-size: cover;
    background-position: 50%;
    padding-top: 7.5rem;
    height: 33.75rem; }
    @media print, screen and (min-width: 40em) {
      .site-index .principal {
        padding-top: 12.5rem; } }
    @media screen and (min-width: 75em) {
      .site-index .principal {
        background: url(../img/bg-principal-xl.jpg);
        background-position: 50%;
        height: 65.625rem; } }
    .site-index .principal h1, .site-index .principal p {
      color: #ffffff; }
  .site-index .frase {
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    font-weight: 900;
    margin-bottom: 1.875rem;
    color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .site-index .frase {
        font-size: 1.875rem; } }
    .site-index .frase span {
      font-size: 1.9375rem;
      font-weight: 200; }
      @media print, screen and (min-width: 40em) {
        .site-index .frase span {
          font-size: 2.8125rem; } }
    .site-index .frase:before, .site-index .frase:after {
      opacity: 0.3;
      display: inline-block;
      transform: scale(0.8); }
      @media screen and (max-width: 63.9375em) {
        .site-index .frase:before, .site-index .frase:after {
          transform: scale(0.5); } }
    .site-index .frase:before {
      content: url(../img/comillas-op.png);
      vertical-align: super; }
      @media print, screen and (min-width: 64em) {
        .site-index .frase:before {
          margin-right: 1.25rem; } }
    .site-index .frase:after {
      content: url(../img/comillas-cl.png);
      vertical-align: bottom; }
      @media print, screen and (min-width: 64em) {
        .site-index .frase:after {
          margin-left: 1.25rem; } }
  .site-index .contenido {
    position: relative; }
    @media print, screen and (min-width: 64em) {
      .site-index .contenido {
        margin-top: -8.75rem; } }
    @media screen and (min-width: 75em) {
      .site-index .contenido {
        margin-top: -29.375rem; } }
    .site-index .contenido .cont-item {
      position: relative;
      margin-top: 4.375rem; }
      .site-index .contenido .cont-item img {
        margin-bottom: 1.875rem;
        position: relative; }
      @media screen and (min-width: 75em) {
        .site-index .contenido .cont-item:before {
          content: '';
          background: #ffffff;
          position: absolute;
          display: block;
          width: 100%;
          -webkit-box-shadow: -4px -1px 42px 5px rgba(0, 0, 0, 0.22);
          -moz-box-shadow: -4px -1px 42px 5px rgba(0, 0, 0, 0.22);
          box-shadow: -4px -1px 42px 5px rgba(0, 0, 0, 0.22); } }
      @media screen and (min-width: 75em) {
        .site-index .contenido .cont-item.tecnologia:before {
          height: 9.5rem;
          left: -100%;
          top: 20.4375rem; } }
      @media screen and (min-width: 75em) {
        .site-index .contenido .cont-item.aplicacion:before {
          height: 9.5rem;
          right: -90%;
          top: 22.8125rem; } }
      @media screen and (min-width: 75em) {
        .site-index .contenido .cont-item.bienestar:before {
          height: 9.5rem;
          left: -90%;
          top: 22rem; } }
      @media print, screen and (min-width: 40em) {
        .site-index .contenido .cont-item .textos {
          background: url(../img/linea-logotipo.png) no-repeat;
          background-size: contain;
          padding-left: 2.5rem; } }
    .site-index .contenido .cont-carrusel {
      position: relative;
      padding: 3.125rem 0; }
      @media print, screen and (min-width: 40em) {
        .site-index .contenido .cont-carrusel {
          padding: 6.25rem 0; } }
      @media screen and (max-width: 39.9375em) {
        .site-index .contenido .cont-carrusel .slick-slide img {
          margin-bottom: 3.125rem; } }
      .site-index .contenido .cont-carrusel .slick-prev, .site-index .contenido .cont-carrusel .slick-next {
        height: 9.5rem;
        width: 5.9375rem;
        -webkit-box-shadow: -4px -1px 42px 5px rgba(0, 0, 0, 0.22);
        -moz-box-shadow: -4px -1px 42px 5px rgba(0, 0, 0, 0.22);
        box-shadow: -4px -1px 42px 5px rgba(0, 0, 0, 0.22); }
        .site-index .contenido .cont-carrusel .slick-prev:before, .site-index .contenido .cont-carrusel .slick-next:before {
          font-family: 'fontAwesome';
          color: #547bb8;
          font-size: 5.625rem; }
      .site-index .contenido .cont-carrusel .slick-prev {
        left: -5.9375rem;
        border-radius: 1.25rem 0 0 1.25rem; }
        .site-index .contenido .cont-carrusel .slick-prev:before {
          content: '\f104'; }
      .site-index .contenido .cont-carrusel .slick-next {
        right: -5.9375rem;
        border-radius: 0 1.25rem 1.25rem 0; }
        .site-index .contenido .cont-carrusel .slick-next:before {
          content: '\f105'; }
      .site-index .contenido .cont-carrusel .slick-dots {
        bottom: -1.25rem; }
        @media screen and (max-width: 63.9375em) {
          .site-index .contenido .cont-carrusel .slick-dots {
            bottom: -2.5rem;
            background: #ffffff;
            padding: 0.9375rem 2.5rem;
            width: 11.25rem;
            border-radius: 0.625rem;
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            -webkit-box-shadow: 3px 1px 15px 4px rgba(0, 0, 0, 0.17);
            -moz-box-shadow: 3px 1px 15px 4px rgba(0, 0, 0, 0.17);
            box-shadow: 3px 1px 15px 4px rgba(0, 0, 0, 0.17); } }
        .site-index .contenido .cont-carrusel .slick-dots li.slick-active button::before {
          opacity: 1;
          color: #547bb8; }
        .site-index .contenido .cont-carrusel .slick-dots li button::before {
          opacity: 1;
          color: #9b9b9b;
          font-size: 0.9375rem; }
        @media screen and (max-width: 63.9375em) {
          .site-index .contenido .cont-carrusel .slick-dots:before, .site-index .contenido .cont-carrusel .slick-dots:after {
            font-family: 'fontAwesome';
            font-size: 1.875rem;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            color: #547bb8; }
          .site-index .contenido .cont-carrusel .slick-dots:before {
            content: '\f104';
            left: 0.625rem; }
          .site-index .contenido .cont-carrusel .slick-dots:after {
            content: '\f105';
            right: 0.625rem; } }
      .site-index .contenido .cont-carrusel .slick-dotted.slick-slider {
        margin-bottom: 0; }
    .site-index .contenido img.elemento-01, .site-index .contenido img.elemento-02 {
      position: absolute;
      display: none; }
      @media screen and (min-width: 90em) {
        .site-index .contenido img.elemento-01, .site-index .contenido img.elemento-02 {
          display: block; } }
    .site-index .contenido img.elemento-01 {
      left: -4.375rem;
      bottom: 60%; }
    .site-index .contenido img.elemento-02 {
      right: 0;
      bottom: 45%; }
  .site-index .pleca {
    background: #ea1a83;
    height: 12.5rem;
    border-radius: 1.25rem 1.25rem 0 0;
    padding-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .site-index .pleca {
        height: 10rem; } }
    .site-index .pleca h3, .site-index .pleca p {
      font-weight: 700;
      margin-bottom: 0;
      color: #ffffff; }
  .site-index .formulario {
    background: #ffffff;
    padding: 2.5rem 1.25rem 0.625rem 1.25rem;
    border-radius: 1.25rem;
    position: relative;
    -webkit-box-shadow: 3px 1px 15px 4px rgba(0, 0, 0, 0.17);
    -moz-box-shadow: 3px 1px 15px 4px rgba(0, 0, 0, 0.17);
    box-shadow: 3px 1px 15px 4px rgba(0, 0, 0, 0.17); }
    @media print, screen and (min-width: 40em) {
      .site-index .formulario {
        padding: 2.5rem 2.5rem 0.625rem 2.5rem; } }
    .site-index .formulario:before {
      content: url(../img/indicador-form.png);
      position: absolute;
      top: -3.75rem;
      position: absolute;
      left: 50%;
      transform: translateX(-50%); }
  .site-index .button {
    margin-top: 1.25rem; }
  .site-index .aviso {
    color: #9b9b9b;
    font-size: 0.75rem;
    margin-top: 0.625rem; }
  .site-index .flotante {
    position: relative;
    z-index: -1;
    margin-top: -6.25rem; }
    @media print, screen and (min-width: 64em) {
      .site-index .flotante {
        display: inline-block;
        margin-top: -31.25rem; } }
    .site-index .flotante .bg-formulario {
      background: url(../img/bg-bottom.jpg) no-repeat;
      background-size: cover;
      background-position: 50%;
      height: 31.25rem;
      padding-top: 8.75rem; }
      @media print, screen and (min-width: 64em) {
        .site-index .flotante .bg-formulario {
          height: 48.75rem;
          padding-top: 23.125rem; } }
      .site-index .flotante .bg-formulario h2, .site-index .flotante .bg-formulario h3, .site-index .flotante .bg-formulario p {
        color: #ffffff; }
      @media print, screen and (min-width: 40em) {
        .site-index .flotante .bg-formulario .frase {
          margin-left: -11.875rem; }
          .site-index .flotante .bg-formulario .frase span {
            padding-left: 15.625rem; } }

.site-error {
  background: url(../img/bg-error.jpg) no-repeat;
  background-size: cover;
  background-position: 50%;
  padding: 9.375rem 0 3.75rem 0; }
  @media print, screen and (min-width: 40em) {
    .site-error {
      padding: 13.75rem 0 3.75rem 0; } }
  .site-error h1, .site-error h2, .site-error p {
    color: #ffffff; }
  .site-error h2 {
    margin-bottom: 1.25rem; }
    .site-error h2 span {
      font-weight: 200;
      font-size: 2.5rem; }
  .site-error img.logo {
    margin: 1.875rem 0; }

.site-aviso-privacidad h1, .site-aviso-de-privacidad-modal h1 {
  color: #3c3474; }
.site-aviso-privacidad p a, .site-aviso-de-privacidad-modal p a {
  color: #4f266e; }
  .site-aviso-privacidad p a:hover, .site-aviso-privacidad p a:focus, .site-aviso-privacidad p a:active, .site-aviso-de-privacidad-modal p a:hover, .site-aviso-de-privacidad-modal p a:focus, .site-aviso-de-privacidad-modal p a:active {
    color: #547bb8; }

.site-aviso-de-privacidad-modal .contenido {
  height: 37.5rem;
  overflow-y: scroll; }

.barra-top {
  background: #3c3474;
  height: 8.125rem;
  margin-bottom: 1.875rem; }

.site-brochure {
  padding-bottom: 5rem; }
  .site-brochure h1 {
    color: #4f266e;
    margin-bottom: 1.875rem; }
  .site-brochure embed {
    height: 100vh; }

.footer {
  background: #4f266e;
  padding: 1.875rem 0 1.25rem 0; }
  .footer p, .footer h4 {
    color: #ffffff; }
    .footer p a, .footer h4 a {
      transition: 0.3s;
      color: #ffffff; }
      .footer p a:hover, .footer p a:focus, .footer p a:active, .footer h4 a:hover, .footer h4 a:focus, .footer h4 a:active {
        transition: 0.3s;
        color: #547bb8; }
  .footer h4 {
    margin-bottom: 1.25rem;
    font-size: 1rem; }
  .footer p {
    margin: 0;
    font-size: 0.75rem;
    line-height: 1.25rem; }
  .footer .row-contactos {
    padding-top: 1.25rem; }
    .footer .row-contactos .col-borde {
      border-right: 0.0625rem solid #ffffff; }
    .footer .row-contactos p {
      color: #ffffff;
      font-weight: 700;
      padding: 0.5rem 0.625rem;
      font-size: 1rem; }
      .footer .row-contactos p i {
        margin-right: 0.625rem; }
        @media screen and (max-width: 63.9375em) {
          .footer .row-contactos p i {
            font-size: 2.5rem; } }
  .footer .legales p {
    font-size: 0.625rem; }

/*# sourceMappingURL=app.css.map */
