@font-face {
    font-family: 'Caligor Clean';
    src: url('../fonts/CaligorClean.eot');
    src: url('../fonts/CaligorClean.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CaligorClean.woff2') format('woff2'),
        url('../fonts/CaligorClean.woff') format('woff'),
        url('../fonts/CaligorClean.ttf') format('truetype'),
        url('../fonts/CaligorClean.svg#CaligorClean') format('svg');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nohemi';
    src: url('../fonts/Nohemi-Thin.eot');
    src: url('../fonts/Nohemi-Thin.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Nohemi-Thin.woff2') format('woff2'),
        url('../fonts/Nohemi-Thin.woff') format('woff'),
        url('../fonts/Nohemi-Thin.ttf') format('truetype'),
        url('../fonts/Nohemi-Thin.svg#Nohemi-Thin') format('svg');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nohemi';
    src: url('../fonts/Nohemi-ExtraLight.eot');
    src: url('../fonts/Nohemi-ExtraLight.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Nohemi-ExtraLight.woff2') format('woff2'),
        url('../fonts/Nohemi-ExtraLight.woff') format('woff'),
        url('../fonts/Nohemi-ExtraLight.ttf') format('truetype'),
        url('../fonts/Nohemi-ExtraLight.svg#Nohemi-ExtraLight') format('svg');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nohemi';
    src: url('../fonts/Nohemi-Light.eot');
    src: url('../fonts/Nohemi-Light.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Nohemi-Light.woff2') format('woff2'),
        url('../fonts/Nohemi-Light.woff') format('woff'),
        url('../fonts/Nohemi-Light.ttf') format('truetype'),
        url('../fonts/Nohemi-Light.svg#Nohemi-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nohemi';
    src: url('../fonts/Nohemi-Regular.eot');
    src: url('../fonts/Nohemi-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Nohemi-Regular.woff2') format('woff2'),
        url('../fonts/Nohemi-Regular.woff') format('woff'),
        url('../fonts/Nohemi-Regular.ttf') format('truetype'),
        url('../fonts/Nohemi-Regular.svg#Nohemi-Regular') format('svg');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}


@font-face {
    font-family: 'Nohemi';
    src: url('../fonts/Nohemi-Medium.eot');
    src: url('../fonts/Nohemi-Medium.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Nohemi-Medium.woff2') format('woff2'),
        url('../fonts/Nohemi-Medium.woff') format('woff'),
        url('../fonts/Nohemi-Medium.ttf') format('truetype'),
        url('../fonts/Nohemi-Medium.svg#Nohemi-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nohemi';
    src: url('../fonts/Nohemi-SemiBold.eot');
    src: url('../fonts/Nohemi-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Nohemi-SemiBold.woff2') format('woff2'),
        url('../fonts/Nohemi-SemiBold.woff') format('woff'),
        url('../fonts/Nohemi-SemiBold.ttf') format('truetype'),
        url('../fonts/Nohemi-SemiBold.svg#Nohemi-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nohemi';
    src: url('../fonts/Nohemi-Bold.eot');
    src: url('../fonts/Nohemi-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Nohemi-Bold.woff2') format('woff2'),
        url('../fonts/Nohemi-Bold.woff') format('woff'),
        url('../fonts/Nohemi-Bold.ttf') format('truetype'),
        url('../fonts/Nohemi-Bold.svg#Nohemi-Bold') format('svg');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nohemi';
    src: url('../fonts/Nohemi-ExtraBold.eot');
    src: url('../fonts/Nohemi-ExtraBold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Nohemi-ExtraBold.woff2') format('woff2'),
        url('../fonts/Nohemi-ExtraBold.woff') format('woff'),
        url('../fonts/Nohemi-ExtraBold.ttf') format('truetype'),
        url('../fonts/Nohemi-ExtraBold.svg#Nohemi-ExtraBold') format('svg');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nohemi';
    src: url('../fonts/Nohemi-Black.eot');
    src: url('../fonts/Nohemi-Black.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Nohemi-Black.woff2') format('woff2'),
        url('../fonts/Nohemi-Black.woff') format('woff'),
        url('../fonts/Nohemi-Black.ttf') format('truetype'),
        url('../fonts/Nohemi-Black.svg#Nohemi-Black') format('svg');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

*,
*::before,
*::after {
     outline: none !important;
     -webkit-box-sizing: border-box;
     box-sizing: border-box;
}

::-moz-selection{background-color:#361450;color:#fff;}
::selection{background-color:#361450;color:#fff;}


.animate__fadeInLeft2 {
  -webkit-animation-name: fadeInLeft2;
  animation-name: fadeInLeft2;
}

@-webkit-keyframes fadeInLeft2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -50%, 0);
    transform: translate3d(-100%, -50%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0,-50%, 0);
    transform: translate3d(0,-50%, 0);
  }
}

@keyframes fadeInLeft2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -50%, 0);
    transform: translate3d(-100%, -50%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0,-50%, 0);
    transform: translate3d(0,-50%, 0);
  }
}

.animate__fadeInRight2 {
  -webkit-animation-name: fadeInRight2;
  animation-name: fadeInRight2;
}

@-webkit-keyframes fadeInRight2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, -50%, 0);
    transform: translate3d(100%, -50%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0,-50%, 0);
    transform: translate3d(0,-50%, 0);
  }
}

@keyframes fadeInRight2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, -50%, 0);
    transform: translate3d(100%, -50%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0,-50%, 0);
    transform: translate3d(0,-50%, 0);
  }
}

::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: #361450;
  border-radius: 10px;
}
::-webkit-scrollbar-thumb {
  background: #A31781;
  border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
  background: #fff;
}


html {
  font-size: 0.975vw;
}

b,
strong {
  font-weight: 800;
}

section
{
  position: relative;
  z-index: 1;
}

a {
  display: inline-block;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

h1,h2,h3,h4,h5,h6,p
{
    margin: 0;
}

h1,h2,h3,h4,h5,h6
{
    font-family: 'Caligor Clean'; 
    font-weight: 400;  
}

body
{
    font-family: 'Nohemi', sans-serif; 
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    background-color: #fff;
    color: #2A295B;
}

body.abierto{overflow: hidden;}

article ul{
    margin: 0;
    margin-top: 2rem;
    list-style: none;
    padding: 0;
}

article ul li
{
    padding-left: 2.1rem;
    position: relative;
}

article ul li:not(:last-of-type)
{
    margin-bottom: 0.5rem;
}

article ul li::before
{
    content: '';
    position: absolute;
    top: 0.2rem;
    left: 0;
    width: 1.2rem;
    height: 1.2rem;
    background-image: url(../img/bullet.svg);
    background-size: contain;
    background-repeat: no-repeat;
}

main
{
    position: relative;
}

header
{
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    padding: 1.7rem 0;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease; 
    z-index: 999;
}

header:before
{
    background: transparent;
    mix-blend-mode: Lighten;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    angle: 0 deg;
    width: 100%;
    height: 100%;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease; 
}

header.fondo:before
{
    opacity: 0.7;
    background: #FFFFFF;
    -webkit-backdrop-filter: blur(89px);
            backdrop-filter: blur(89px);

}

header .container
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

header .logo-img
{
    display: block;
    width: 4.5rem;
    height: auto;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease; 
}

header.fondo .logo-img
{
    width: 3rem;
}

header nav a
{
    color: #361450;
    font-size: 1.3rem;
    margin: 0 1.7rem;
    line-height: 1;
}

header nav a:last-child
{
    margin-right: 0;
}


footer
{
    padding: 2rem;
    -webkit-box-shadow: 0px -10px 155.3px 0px #D2CFE9;
            box-shadow: 0px -10px 155.3px 0px #D2CFE9;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #fff;
    position: relative;
    z-index: 3;
}

footer .logo-img
{
    width: 5.8rem;
    display: block;
    height: auto
}

.solo-mobile
{
    display: none !important;
}

.solo-desktop
{
    display: block !important;
}

.trama-2
{
    background-color: #2A295B;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    z-index: 999;
}

.logo-load
{
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
            transform: translate(-50%,-50%);
    z-index: 999;
}

.logo-load img
{
    width: 7rem;
    height: 7rem;
    display: inline-block;
    -webkit-animation-name: palpitar;
            animation-name: palpitar;
    -webkit-animation-duration: 2s;
            animation-duration: 2s;
    -webkit-animation-timing-function: ease;
            animation-timing-function: ease;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
}

@-webkit-keyframes palpitar
{
    0%{-webkit-transform: scale(1);transform: scale(1);opacity: 1;}
    50%{-webkit-transform: scale(1.5);transform: scale(1.5);;opacity: 0.5;}
    100%{-webkit-transform: scale(1);transform: scale(1);;opacity: 1;}
}
@keyframes palpitar
{
    0%{-webkit-transform: scale(1);transform: scale(1);opacity: 1;}
    50%{-webkit-transform: scale(1.5);transform: scale(1.5);;opacity: 0.5;}
    100%{-webkit-transform: scale(1);transform: scale(1);;opacity: 1;}
}

.encabezado .hamb {
    color: #361450;
    font-size: 3.1rem;
    display: none;
}

.encabezado .link-logo
{
    position: relative;
    z-index: 2; 
}

.btn-descarga
{
    background: #A31781;
    opacity: 1;
    border-radius: 7rem;
    padding-top: 0.8rem;
    padding-right:2.15rem;
    padding-bottom: 0.8rem;
    padding-left: 2.15rem;
    color: #fff;
    margin-left: 0;
}

.container {
    width: 79.167%;
    /*max-width: 1140px;*/
    padding-right: 0.57rem;
    padding-left: 0.57rem;
    position: relative;
    margin: 0 auto;
}

.container-fluid {
    width: 100%;
    padding-right: 0.57rem;
    padding-left: 0.57rem;
    position: relative;
}

.row {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -0.57rem;
  margin-left: -0.57rem;
}

.row-centrado-horizontal
{
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.columna {
  padding-left: 0.57rem;
  padding-right: 0.57rem;
  position: relative;
}

.columna-14
{
    width: 14.28%;
}

.columna-16 
{
  width: 16.666%;
}

.columna-72{
    width: 72%;
}

.columna-18 
{
    width: 18%;
}

.columna-22
{
    width: 22%;
}

.columna-25 {
  width: 25%;
}

.columna-33 {
  width: 33.333%;
}

.columna-42 {
  width: 41.666%;
}

.columna-50 {
  width: 50%;
}

.columna-58 {
  width: 58.333%;
}

.columna-66 {
  width: 66.666%;
}

.columna-75 {
  width: 75%;
}

.columna-77 {
  width: 77%;
}

.columna-78
{
  width: 78%;
}

.columna-80
{
  width: 80%;
}

.columna-83 {
  width: 83.33%;
}

.columna-91 {
  width: 91.66%;
}

.columna-100 {
  width: 100%;
}

.empujar-50
{
    margin-left: 50%;
}

.img-full
{
    display: block;
    width: 100%;
    height: auto;
}

.mb-medio
{
    margin-bottom: 0.5rem;
}

.mb-2
{
    margin-bottom: 2rem;
}

.mt-2
{
    margin-top: 2rem;
}

.mt-6
{
    margin-top: 6rem; 
}

.h-full
{
    height: 100%;
}

.no-pt
{
    padding-top: 0 !important;
}

.no-pb
{
    padding-bottom: 0;
}

.seccion {
    padding-top: 7rem;
    padding-bottom: 7rem;
}

.titulo-boton
{
    margin: 0 auto;
    margin-bottom: 7rem;
    background-color: #A31781;
    border: 1px solid #D9D9D9;
    border-radius: 10rem;
    font-family: 'Caligor Clean';
    font-weight: 400;
    font-size: 3.6rem;
    line-height: 1;
    color: #FFFFFF;
    position: relative;
    overflow: hidden;
    max-width: 40rem;
    text-align: center;
    padding: 2rem 0;
}

.titulo-boton .icono-titulo
{
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    display: block;
    width: 8.9rem;
    height: auto
}

.color-azul
{
    font-weight: 700;
    color: #4075B6;
    font-size: 1.2rem;
}

.color-celeste
{
    color: #1AACE4;
}

.bloque-sombra
{
    padding: 1.43rem;
    -webkit-box-shadow: 0px 4px 24px 0px #00000012;
            box-shadow: 0px 4px 24px 0px #00000012;
    border-radius: 1.43rem;
    background-color: #fff;
}

.bloque-sin-sombra
{
    padding: 1.43rem;
}

.acordeon
{
    padding: 1.43rem;
    -webkit-box-shadow: 0px 4px 24px 0px #00000012;
            box-shadow: 0px 4px 24px 0px #00000012;
    border-radius: 1.43rem;
    background-color: #fff;
    margin-bottom: 1rem;
}

.acordeon:last-of-type{
    margin-bottom: 0rem;
}

.titulo-acordeon
{
    font-family: 'Caligor Clean';
    font-weight: 400;
    font-size: 2.1rem;
    width: 100%;
    position: relative;
    color: #A31781;
    line-height: 1.1;
}

.titulo-acordeon .flechaabajo
{
    position: absolute;
    right: 0;
    top: 0.5rem;
    display: block;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    width: 1.8rem;
    height: auto;
}

.titulo-acordeon .flechaabajo.arriba
{
    -webkit-transform: rotateX(180deg);
            transform: rotateX(180deg);
}

.cuerpo-acordeon
{
    display: none;
    margin-top: 1.43rem;
}

.cuerpo-acordeon p
{
    margin-bottom: 2rem;
}

.cuerpo-acordeon p:last-child
{
    margin-bottom: 0;
}


#inicio {
    background-color: #F4F4FE;
    position: relative;
}

#inicio .container
{
    position: absolute;
    left: 0;
    right: 0;
    top: 43%;
    -webkit-transform: translatey(-50%);
        -ms-transform: translatey(-50%);
            transform: translatey(-50%);
}

#inicio h1
{
    font-family: 'Caligor Clean';
    font-weight: 400;
    font-size: 5.7rem;
    line-height: 1;
    color: #361450;
}

#inicio h2
{
    font-family: 'Caligor Clean';
    font-weight: 400;
    font-size: 4.3rem;
    line-height: 1;
    color: #A31781;
}

#nosotros
{
    background-color: #F4F4FE;
    position: relative;
}

#nosotros h2
{
    font-family: 'Caligor Clean';
    font-weight: 400;
    font-size: 5rem;
    line-height: 1;
    text-align: center;
    color: #A31781
}

#nosotros h4
{
    font-family: 'Caligor Clean';
    font-weight: 400;
    font-size: 2.5rem;
    line-height: 1;
    color: #523777;
    text-align: center;
}

#nosotros .icono-titulo-nosotros
{
    margin: 2rem auto 7rem;
    width: 2.8rem;
    height: auto;
    display: block;
}

#nosotros article
{
    position: relative;
    height: 17.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

#nosotros article .container
{
    height: 100%;
}

.bloque-numero
{
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}



.bloque-numero .bloque-numero-cuerpo
{
    margin: 0 auto;
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center;
    width: 16.453rem;
    height: 16.453rem;
    position: absolute;
    background-color: #fff;
    border-radius: 100%;
    top: 50%;
    left: 50%;
    padding: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
            transform: translate(-50%,-50%);
    -webkit-box-shadow: 0 4px 4px -4px rgba(12, 12, 13, 0.05);
            box-shadow: 0 4px 4px -4px rgba(12, 12, 13, 0.05);
    -webkit-box-shadow: 0 16px 32px -4px rgba(12, 12, 13, 0.1);
            box-shadow: 0 16px 32px -4px rgba(12, 12, 13, 0.1);
}

.bloque-numero:hover .bloque-numero-cuerpo
{
    padding: 1rem 19.453rem 1rem 3rem;
    width: calc(50% + 8.227rem);
    left: 0;
    -webkit-transform: translate(0%, -50%);
        -ms-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
    border-top-left-radius: 3.8rem;
    border-top-right-radius: 9rem;
    border-bottom-right-radius: 9rem;
    border-bottom-left-radius: 3.8rem;
}

#nosotros article:nth-child(odd) .bloque-numero:hover .bloque-numero-cuerpo
{
    padding: 1rem 3rem 1rem 19.453rem ;
    width: calc(50% + 8.227rem);
    left: auto;
    right: 0;
    -webkit-transform: translate(0%, -50%);
        -ms-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
    border-top-left-radius: 9rem;
    border-top-right-radius: 3.8rem;
    border-bottom-right-radius: 3.8rem;
    border-bottom-left-radius: 9rem;
}

.bloque-numero .bloque-numero-cuerpo p,
.bloque-numero .fondo-circulo-mobile p
{
    font-family: Nohemi;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5;
    display: none;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

.bloque-numero .bloque-numero-cuerpo p.pequeno
{
    font-size: 0.785rem;
}

.bloque-numero .bloque-numero-cuerpo p.muypequeno
{
    font-size: 0.715rem;
}

.bloque-numero:hover .bloque-numero-cuerpo p
{
    display: block;
}

.bloque-numero .fondo-circulo-mobile
{
    display: none;
}

.bloque-numero .bloque-numero-cuerpo .color-rosado,
.bloque-numero .fondo-circulo-mobile .color-rosado
{
    font-family: Nohemi;
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.5;
    color: #D44283;
}

.bloque-numero .circulo-numero
{
    background-color: #E5D6E2;
    color: #fff;
    font-family: 'Caligor Clean';
    font-weight: 400;
    font-size: 4.5rem;
    line-height: 1;
    text-align: center;
    width: 11.4rem;
    height: 11.4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: 100%;
    position: relative;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    margin: 0 auto;
}

.bloque-numero.bloque-ultimo:hover .bloque-numero-cuerpo
{
    background-color: #745F9F;
}

.bloque-numero.bloque-ultimo:hover .bloque-numero-cuerpo p
{
    color: #fff;
}

.bloque-numero .nuvo-circulo-numero
{
    display: none;
}

.cuerpo-fondo svg path
{
    fill: #EDEBF4;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

.cuerpo-fondo.seleccionado svg path
{
    fill: #C6C6ED;
}

.cuerpo-fondo .semi-izquierda
{
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-0.5%, -50%);
        -ms-transform: translate(-0.5%, -50%);
            transform: translate(-0.5%, -50%);
    width: 12.5rem;
    height: auto;
}

.cuerpo-fondo .semi-derecha
{
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-99.84%, -50%);
        -ms-transform: translate(-99.84%, -50%);
            transform: translate(-99.84%, -50%);
    width: 12.5rem;
    height: auto;
}

.lista-numeros
{
    position: relative;
}

.lista-fondos
{
    position: absolute;
    width: 100%;
    height: 100%;
}

.lista-fondos .cuerpo-fondo
{
    position: relative;
    height: 17.5rem;
    width: 100%;
}

.nosotros-icono-1
{
    width: 49rem;
    position: absolute;
    top: 4rem;
    right: 0;
}

.nosotros-icono-2
{
    position: absolute;
    left: 0;
    width: 37.2rem;
    top: 50%;
}

#gestion
{
    overflow: hidden;
}

#gestion p
{
    text-align: justify;
}

#gestion p:not(:last-of-type)
{
    margin-bottom: 2rem;
}


#gestion .titulo-articulo
{
    font-family: 'Caligor Clean';
    font-weight: 400;
    color: #A31781;
    font-size: 4.9rem;
    line-height: 1;
}

#gestion .titulo-articulo .numero-titulo
{
    color: #1AACE4;
    font-size: 5.7rem;
    line-height: 1;
    display: block;
}

#gestion .subtitulo-articulo
{
    font-family: 'Caligor Clean';
    font-weight: 400;
    color: #A31781;
    position: relative;
    font-size: 2.2rem;
    line-height: 1;
    padding-left: 2.2rem;
}

#gestion .subtitulo-articulo img
{
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    display: block;
    width: 1.65rem;
    height: auto;
}

#gestion article
{
    padding: 6.4rem 0;
    position: relative;
}

#gestion article:first-of-type
{
    padding-top: 0;
}

#gestion article:last-of-type
{
    padding-bottom: 0;
}

#gestion .gestion-icono-1
{
    position: absolute;
    right: 0;
    width: 100%;
    display: block;
    top: 21rem;
}

#gestion .gestion-icono-2
{
    position: absolute;
    left: 0;
    width: 100%;
    display: block;
    bottom: 7rem;
}

#gestion .gestion-icono-3
{
    position: absolute;
    right: 0;
    width: 100%;
    display: block;
    top: -3.5rem;
}

#gestion .gestion-icono-4
{
    position: absolute;
    left: 0;
    width: 100%;
    display: block;
    bottom: 3.5rem;
}

#gestion .gestion-icono-5
{
    position: absolute;
    right: 0;
    width: 100%;
    display: block;
    bottom: -7rem;
    z-index: -11;
}

#experiencia
{
    position: relative;
    background-color: #F4F4FE;
    overflow: hidden;
    margin-bottom: 11.5rem;
}

#experiencia .fondo-celeste
{
    position: relative;
}

#experiencia .fondo-blanco
{
    position: relative;
    background-color: #fff;
    margin-top: 7rem;
}

.icono-mapa
{
    position: absolute;
    width: 54.5rem;
    right: 0;
    top: 25rem;
}

.caso
{
    position: relative;
    margin-bottom: 7rem;
}

.caso:last-child
{
    margin-bottom: 0;
}

.bloque-exp
{
    padding: 2.5rem;
    border-radius: 2rem;
    background: #FFF;
    -webkit-box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.07);
            box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.07);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.bloque-exp h2
{
    color: #A31781;
    text-align: right;
    font-family: 'Caligor Clean';
    font-size: 4.9rem;
    font-weight: 400;
    line-height: 1;
}

.bloque-exp .letra-gigante
{
    color: #1AACE4;
    text-align: right;
    font-family: 'Caligor Clean';
    font-size: 11rem;
    font-weight: 400;
    line-height: 9rem;
}

.bloque-exp .columna-izquierda
{
    width: 71%;
    padding-right: 1rem;
}

.bloque-exp .columna-derecha
{
    width: 29%; 
}

.experiencia-1,
.experiencia-3,
.experiencia-5
{
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    display: block;
    width: 42.1rem;
    height: auto;
}

.experiencia-2
{
    display: block;
    width: 42.1rem;
    height: auto;
}

.experiencia-4
{
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    display: block;
    width: 42.1rem;
    height: auto;
}

.experencia-icono-1
{
    position: absolute;
    left: 0;
    bottom: 2rem;
    width: 22.5rem;
    height: auto;
}

.experencia-icono-3
{
    position: absolute;
    left: 0;
    top: 23rem;
    height: auto;
    width: 32.7rem;
}

.experencia-icono-4
{
    position: absolute;
    right: 0;
    top: 33%;
    height: auto;
    width: 51rem;
}

.experencia-icono-5
{
    position: absolute;
    right: 0;
    bottom: -22rem;
    width: 100%;
    height: auto;
    z-index: 2;
}

.bloque-exp-2,
.bloque-exp-3,
.bloque-clasico
{
    padding: 2.5rem;
    border-radius: 2rem;
    background: #FFF;
    -webkit-box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.07);
            box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.07);
}

.bloque-exp-2 h2
{
    color: #A31781;
    text-align: center;
    font-family: 'Caligor Clean';
    font-size: 4.9rem;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 1rem;
}

.bloque-exp-2 p
{
    font-size: 2.2rem;
    text-align: center;
    line-height: 1.12;
}

.bloque-exp-3
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.bloque-exp-3 h2,
.bloque-clasico h2
{
    color: #A31781;
    font-family: 'Caligor Clean';
    font-size: 4.9rem;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 1rem;
}

.bloque-exp-3 p,
.bloque-exp-3 p .color-azul,
.bloque-clasico p,
.bloque-clasico p .color-azul
{
    font-size: 2.2rem;
    line-height: 1.12;
}


.bloque-clasico.bloque-derecha h2,
.bloque-clasico.bloque-derecha p
{
    text-align: right;
}

.bloque-exp-3 .columna-izquierda
{
    width: 16.66%;
}

.bloque-exp-3 .columna-izquierda img
{
    display: block;
    width: 9.6rem;
    height: auto;
}

.bloque-exp-3 .columna-derecha
{
    width: 83.33%;
    padding-left: 1.5rem;
}

.experiencia-fondo
{
    position: absolute;
    top: -7rem;
    width: 100%;
    left: ;
}

.bloque-iconos
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: center;
        align-content: center;
    margin-bottom: 2rem;
    position: relative;
}

.bloque-iconos:before
{
    content: "";
    width: 1px;
    height: 100%;
    opacity: 0.5;
    background: #A31781;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    top: 0;
}

.icono-izquierda
{
    padding: 0 3rem;
}

.icono-izquierda img
{
    display: block;
    width: 7.5rem;
    height: auto;
}

.icono-derecha
{
    padding: 0 3rem;
}

.icono-derecha img
{
    display: block;
    width: 7.5rem;
    height: auto;
}

.bloque-signatarios h2
{
    color: #A31781;
    text-align: center;
    font-family: 'Caligor Clean';
    font-size: 5rem;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 2rem;
}

.bloque-signatarios p
{
    color: #2A295B;
    text-align: center;
    font-family: Nohemi;
    font-size: 2.2rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.12;
}

@media(min-width: 768px)
{
    .bloque-numero:hover
    {
        width: 100%;
    }

    .bloque-numero:hover .circulo-numero
    {
        background-color: #745F9F;
    }

    .bloque-numero.bloque-ultimo:hover .circulo-numero {
        color: #745F9F;
        background-color: #fff;
    }
}

@media(min-width: 768px) and (max-width: 991px)
{
    html{
        font-size: 1.55vw;
    }

    .container
    {
        width: 98%;
    }

    #inicio h1
    {
        font-size: 4.7rem;
    }

    #inicio h2
    {
        font-size: 2rem; 
    }

    .experiencia-1,.experiencia-2, .experiencia-3,.experiencia-4, .experiencia-5
    {
        width: 28rem;
    }

    .bloque-exp h2,
    .bloque-exp-2 h2,
    .bloque-exp-3 h2, 
    .bloque-clasico h2,
    .bloque-signatarios h2
    {
        font-size: 3.5rem;
    }

    .bloque-signatarios p,
    .bloque-exp-2 p,
    .bloque-exp-3 p, 
    .bloque-exp-3 p .color-azul, 
    .bloque-clasico p, 
    .bloque-clasico p .color-azul
    {
        font-size: 1.5rem;
    }

    .bloque-exp .letra-gigante{
        font-size: 8rem;
    }

    .bloque-exp-3 .columna-izquierda img
    {
        width: 7rem;
    }

    #nosotros article:nth-child(odd) .bloque-numero:hover .bloque-numero-cuerpo
    {
        padding: 1rem 2rem 1rem 16rem;
    }

    .bloque-numero:hover .bloque-numero-cuerpo
    {
        padding: 1rem 16rem 1rem 2rem;
    }

    .bloque-numero .bloque-numero-cuerpo p,
    .bloque-numero .bloque-numero-cuerpo .color-rosado
    {
        font-size: 0.84rem;
        line-height: 1.3;
    }

    .bloque-numero .bloque-numero-cuerpo p.muypequeno
    {
       font-size: 0.74rem; 
    }
}


@media(max-width: 767px)
{

@-webkit-keyframes fadeInLeft2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0,0, 0);
    transform: translate3d(0,0, 0);
  }
}

@keyframes fadeInLeft2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0,0, 0);
    transform: translate3d(0,0, 0);
  }
}


@-webkit-keyframes fadeInRight2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0,0, 0);
    transform: translate3d(0,0, 0);
  }
}


@keyframes fadeInRight2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0,0, 0);
    transform: translate3d(0,0, 0);
  }
}

    html{
        font-size: 1.97vw;
    }

    body
    {
        font-size: 1.625rem;
    }

    header
    {
        padding: 1.4rem 0;
        background-color: #fff; 
    }

    header .logo-img,
    header.fondo .logo-img
    {
        width: 3.5rem;
    }

    .solo-mobile
    {
        display: block !important;
    }

    .solo-desktop
    {
        display: none !important;
    }

    .container {
        width: 91.5%;
    }

    .columna-mobile-33
    {
        width: 33.33%;
    }

    .columna-mobile-100
    {
        width: 100%;
    }

    .empujar-mobile-0
    {
        margin-left: 0;
    }

    .order-m-0
    {
        -webkit-box-ordinal-group: 1;
            -ms-flex-order: 0;
                order: 0;
    }

    .order-m-1
    {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
    }

    .no-mt-mobile
    {
        margin-top: 0;
    }

    .mb-2-mobile
    {
        margin-bottom: 2.86rem;
    }

    .flex-mobile
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }

    .flex-mobile-justife-end
    {
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
    }

    .encabezado .hamb {
        display: block;
        position: relative;
        z-index: 2;
    }

    .encabezado .menu {
        padding-right: 11rem;
        padding-left: 11rem;
        -webkit-transition: all .5s ease;
        -o-transition: all .5s ease;
        transition: all .5s ease;
        -webkit-transform: translateX(100%);
            -ms-transform: translateX(100%);
                transform: translateX(100%);
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #fff;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        z-index: 1;
    }

    .encabezado .menu.abierto {
        -webkit-transform: translateX(0);
            -ms-transform: translateX(0);
                transform: translateX(0);
    }

    .encabezado .menu a {
        font-family: Nohemi;
        font-weight: 400;
        margin: 0;
        font-size: 2.35rem;
        padding: 3rem 0;
        border-bottom: 1px solid #C1C1C1;
        width: 100%;
        text-align: center;
    }

    .encabezado .menu a:last-child
    {
        border-bottom: 0;
        margin-top: 4rem;
        padding-top: 1.84rem;
        padding-bottom: 1.84rem;
        width: 66.66%;
    } 

    .seccion
    {
        padding-top: 10rem;
        padding-bottom: 10rem;
    }

    .icono-mapa
    {
        width: 100%;
        top: 55rem;
    }

    .experiencia-1,.experiencia-3,.experiencia-4,.experiencia-5
    {
        position: relative;
        -webkit-transform: none;
            -ms-transform: none;
                transform: none;
        width: 37.3rem;
        margin-bottom:4rem;
    }

    .experiencia-2
    {
        margin-top: 39rem;
        margin-bottom: 0;
        height: 20.5rem;
        position: relative;
        left: -12%;
    }

    .bloque-exp .columna-izquierda
    {
        width: 66.66%;
    }

    .bloque-exp .columna-derecha
    {
        width: 33.33%;
        text-align: left;
    }

    .bloque-exp-3 .columna-izquierda
    {
        width: 100%;
        margin-bottom: 4rem;
    }

    .bloque-exp-3 .columna-izquierda img
    {
        margin: 0 auto;
    }

    .bloque-exp-3 .columna-derecha
    {
        width: 100%;
    }

    .bloque-exp-3 .columna-derecha h2,
    .bloque-exp-3 .columna-derecha p
    {
        text-align: center;
    }

    .bloque-exp-2 p,
    .bloque-exp-3 p, 
    .bloque-exp-3 p .color-azul, 
    .bloque-clasico p, 
    .bloque-clasico p .color-azul
    {
        font-size: 1.9rem;
    }

    .experencia-icono-1
    {
        position: absolute;
        left: 0;
        bottom: -4rem;
        width: 18.5rem;
        height: auto;
    }

    .experencia-icono-3
    {
        position: absolute;
        left: 0;
        top: 50rem;
        height: auto;
        width: 32.7rem;
    }

    .experencia-icono-4
    {
        position: absolute;
        right: 0;
        top: 51.5%;
        height: auto;
        width: 93%;
    }

    .bloque-exp-3 h2, .bloque-clasico h2,
    .bloque-clasico.bloque-derecha h2, .bloque-clasico.bloque-derecha p,
    .bloque-exp-3 p, .bloque-exp-3 p .color-azul, .bloque-clasico p, .bloque-clasico p .color-azul
    {
        text-align: center;
    }

    #experiencia
    {
        margin-bottom: 0;
    }

    .experencia-icono-5
    {
        bottom: -7rem;
    }

    .bloque-sombra,
    .bloque-sin-sombra
    {
        padding: 2.86rem;;
    }

    .bloque-sin-sombra
    {
        padding-left: 0;
        padding-right: 0;
    }

    #inicio h1
    {
        font-size: 5rem;
    }

    #inicio h2
    {
        font-size: 2.49rem;
    }

    #inicio .container
    {
        top: 50%;
    }

    #nosotros h2
    {
        font-size: 4.4rem;
    }

    #nosotros h4
    {
        font-size: 3.3rem;
    }

    #nosotros .icono-titulo-nosotros
    {
        width: 3.5rem;
    }

    .nosotros-icono-1
    {
        width: 23rem;
        top: 24rem;
    }

    .nosotros-icono-2
    {
        position: absolute;
        left: 0;
        width: 19rem;
        top: auto;
        bottom: 49rem;
    }


    #gestion .color-azul
    {
        font-size: 2.17rem;
        line-height: 1;
    }

    #gestion .subtitulo-articulo
    {
        font-size: 4.05rem;
        margin-bottom: 2rem;
        padding-left: 5rem;
    }

    #gestion .subtitulo-articulo img
    {
        width: 3.65rem;
    }

    #gestion article
    {
        padding: 3.5rem 0;
    }

    .acordeon
    {
        padding: 2.86rem;
    }

    .titulo-acordeon
    {
        font-size: 3rem;
        padding-right: 10rem;
    }

    .titulo-acordeon br
    {
        display: none;
    }

    .titulo-acordeon .flechaabajo
    {
        width: 2.8rem;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
    }

    article ul li
    {
        padding-left: 4rem;
    }

    article ul li::before
    {
        width: 2.4rem;
        height: 2.4rem;
        top: 0;
    }

    article ul li:not(:last-of-type)
    {
        margin-bottom: 2rem;
    }

    .bloque-numero .circulo-numero
    {
        width: 14.5rem;
        height:14.5rem;
        font-size: 6rem;
    }

    .bloque-numero .circulo-numero.seleccionado
    {
        background-color: #745F9F;
    }

    .bloque-numero.bloque-ultimo .circulo-numero.seleccionado
    {
        background-color: #fff;
        color: #745F9F;
    }

    .bloque-numero .bloque-numero-cuerpo
    {
        width: 20.85rem;
        height: 20.85rem;
    }

    #nosotros article,
    .lista-fondos .cuerpo-fondo
    {
        height: 22.5rem;
    }

    .cuerpo-fondo .semi-izquierda,
    .cuerpo-fondo .semi-derecha
    {
        width: 15.861rem;
    }

    .bloque-numero .bloque-numero-cuerpo
    {
        display: none;
    }

    .bloque-numero .nuvo-circulo-numero
    {
        position: absolute;
        width: 20.85rem;
        height: 20.85rem;
        margin: 0 auto;
        -webkit-transform-origin: center;
            -ms-transform-origin: center;
                transform-origin: center;
        position: absolute;
        background-color: #fff;
        border-radius: 100%;
        top: 50%;
        left: 50%;
        padding: 1rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }

    .bloque-numero.bloque-ultimo .nuvo-circulo-numero.seleccionado
    {
        background-color: #745F9F;
    }

    .bloque-numero .fondo-circulo-mobile
    {
        width: 35.34rem;
        background-color: #fff;
        padding: 2.86rem;
        border-radius: 3rem;
        position: absolute;
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
        bottom: 14rem;
        display: none;
    }

    .bloque-numero.bloque-ultimo .fondo-circulo-mobile
    {
        color: #fff;
        background-color: #745F9F;
    }

    .bloque-numero .fondo-circulo-mobile:before
    {
        content: "";
        background-image: url(../img/trama-circulo.png);
        position: absolute;
        bottom: -7.41rem;
        width: 40rem;
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
        height: 7.446rem;
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
    }

    .bloque-numero.bloque-ultimo .fondo-circulo-mobile:before
    {
        background-image: url(../img/trama-circulo-morado.png);
    }

    .cerrar-circulo
    {
        position: absolute;
        top: 2rem;
        right: 2rem;
        line-height: 1;
        font-size: 2rem;
        color: #D44283;
    }

    .bloque-numero .fondo-circulo-mobile p
    {
        display: block;
        font-size: 1.4rem;
    }

    .bloque-numero .fondo-circulo-mobile .color-rosado
    {
        font-size: 1.4rem;
    }

}