@charset "UTF-8";
@import url("../../webfonts/IvyMode_Italic/stylesheet.css");

/* RESET */
body, a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
*, *::before, *::after {
  box-sizing: border-box;
}
ul[role='list'], ol[role='list'] {
  list-style: none;
}
html:focus-within {
  scroll-behavior: smooth;
}
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}
a:not([class]) {
  text-decoration-skip-ink: auto;
}
img, picture, svg {
  max-width: 100%;
  display: block;
}
input, button, textarea, select {
  font: inherit;
}
/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* END RESET STYLE*/

/* VARIABLES*/

:root {
  --color1: #1A1A1A;
  --color2: #FF8089;
  --color3: #62BEB7;
  --color4: white;

  --font1: "HelveticaNowDisplay Regular";
  --font2: "HelveticaNowDisplay Regular";
  --font3: "HelveticaNowDisplay Regular";
  --font4: "HelveticaNowDisplay Regular";
}

/* VARIABLES*/

body {
  background-color: #F4F4F4;
  font-family: "HelveticaNowDisplay Regular";
  width: 100%;
  margin: 0px !important;
}
a {
    line-height: 1.1;
    text-decoration: none;
    color: var(--color1);
    
}
a:hover {
  color: #18AAF1;
}
p {
  font-family:'HelveticaNowDisplay Regular';
  font-size: .9em;
  color: var(--color1);
}
h1 {
    font-family: "HelveticaNowDisplay Bold";
    font-size: clamp(3.2rem, 4vw, 5rem);
    line-height: 1.2;
    color: var(--color4);
    text-shadow: 0 2px 32px rgba(0, 0, 0, 0.25),
    0 8px 55px rgba(0, 0, 0, 0.18);
}
h2 {
  font-family: "HelveticaNowDisplay Bold";
  font-size: 1.4em;
  
}
h3 {
  font-family: var(--font3);
  font-size: 1.7em;
  color: var(--color1);
}
h4 {
  font-family: var(--font3);
  font-size: clamp(2.2rem, 3vw, 3rem);
  color: var(--color4);
	line-height: 1.2;
}
h5 {
  font-family:"IvyMode Italic";
  font-size: 1.3em;
  color: var(--color1);
}
.maincontainer {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  
}

/* HEADER SECTION*/

header {
  background-image:url("../images/home.webp");
  background-repeat: no-repeat;
  background-size: cover;
	background-position: center;
  width: 100%;
  height: 100vh;
 overflow-x: clip;
  grid-column: 1/3;
  display: grid;
  grid-template-columns: 1fr 1fr;
	
	position: sticky;
  top: 0;
  
  z-index: 1;
}
.portada {
  grid-column: 2/3;
  height: 100%;
  overflow: hidden;
}
.infoPortada {
  grid-column: 1/3;
  padding: 100px;
  padding-top: 0px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
	justify-content: flex-start;
  
}
.slogan {
 margin-top: 35%;
}
.subslogan {
  padding-top: 25px;
}
.botonPrincipal {
  margin-top: 30px;
  grid-column: 1/3;
  text-align: center;
  height: 65px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin-bottom: 40px;
}


.btn {
  font-size: 1em;
  line-height: 1em;
  letter-spacing: 0.04em;
  display: inline-block;
}
.btn--svg {
  position: relative;
  height: 42px;
  width: 190px;
  overflow: hidden;
  border-radius: 21px;
}
.btn--svg:hover .btn--svg__circle circle {
  transform: scale(0);
}
.btn--svg:hover .btn--svg__label {
  color:white;
}

.btn--svg:hover .btn--svg__label2 {
  color: white;
}
.btn--svg:hover .btn--svg__border--left path,
.btn--svg:hover .btn--svg__border--right path {
  stroke-dasharray: 61.8204345703 61.8204345703;
  stroke-dashoffset: 0;
  -webkit-transition-delay: 0.25s;
  -webkit-transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-in-out;
  -webkit-transition-property: stroke-dashoffset;
  -moz-transition-delay: 0.25s;
  -moz-transition-duration: 0.5s;
  -moz-transition-timing-function: ease-in-out;
  -moz-transition-property: stroke-dashoffset;
  -ms-transition-delay: 0.25s;
  -ms-transition-duration: 0.5s;
  -ms-transition-timing-function: ease-in-out;
  -ms-transition-property: stroke-dashoffset;
  transition-delay: 0.25s;
  transition-duration: 0.5s;
  transition-timing-function: ease-in-out;
  transition-property: stroke-dashoffset;
}
.btn--svg__label {
  -webkit-font-smoothing: antialiased;
  font-family: sans-serif;
  font-weight: bold;
  text-align: center;
  color: white;
  z-index: 3;
  width: 100%;
  transition: color 0.5s ease-in-out;
}


.btn--svg__label2 {
  -webkit-font-smoothing: antialiased;
  font-family: sans-serif;
  font-weight: bold;
  text-align: center;
  color: black;
  z-index: 3;
  width: 100%;
  transition: color 0.5s ease-in-out;
}
.btn--svg__circle circle {
  -webkit-transition: transform 0.5s ease-in-out;
  -webkit-transform: scale(1.1);
  -webkit-transform-origin: 50% 50%;
  -moz-transition: transform 0.5s ease-in-out;
  -moz-transform: scale(1.1);
  -moz-transform-origin: 50% 50%;
  -ms-transition: transform 0.5s ease-in-out;
  -ms-transform: scale(1.1);
  -ms-transform-origin: 50% 50%;
  transition: transform 0.5s ease-in-out;
  transform: scale(1.1);
  transform-origin: 50% 50%;
}
.btn--svg__border--left path, .btn--svg__border--right path {
  stroke-dasharray: 61.8204345703 61.8204345703;
  -webkit-transition-duration: 0s;
  -webkit-transition-timing-function: ease-in-out;
  -webkit-transition-property: stroke-dashoffset;
  -webkit-transition-delay: 0.5s;
  -moz-transition-duration: 0s;
  -moz-transition-timing-function: ease-in-out;
  -moz-transition-property: stroke-dashoffset;
  -moz-transition-delay: 0.5s;
  -ms-transition-duration: 0s;
  -ms-transition-timing-function: ease-in-out;
  -ms-transition-property: stroke-dashoffset;
  -ms-transition-delay: 0.5s;
  transition-duration: 0s;
  transition-timing-function: ease-in-out;
  transition-property: stroke-dashoffset;
  transition-delay: 0.5s;
}
.btn--svg__border--left path {
  stroke-dashoffset: -61.8204345703;
}
.btn--svg__border--right path {
  stroke-dashoffset: 61.8204345703;
}
.btn--svg svg, .btn--svg__label {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -webkit-transform-origin: 50% 50%;
  -moz-transform: translate(-50%, -50%);
  -moz-transform-origin: 50% 50%;
  -ms-transform: translate(-50%, -50%);
  -ms-transform-origin: 50% 50%;
  transform: translate(-50%, -50%);
  transform-origin: 50% 50%;
}

.btn--svg svg, .btn--svg__label2 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -webkit-transform-origin: 50% 50%;
  -moz-transform: translate(-50%, -50%);
  -moz-transform-origin: 50% 50%;
  -ms-transform: translate(-50%, -50%);
  -ms-transform-origin: 50% 50%;
  transform: translate(-50%, -50%);
  transform-origin: 50% 50%;
}

.label {
  grid-column: 1/2;
  text-align: center;
  height: 65px;
  background-color: #292976;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
	margin-bottom: 50px;
	min-height: 900px;
	flex-wrap: nowrap;
}

.hamburger {
  position: fixed;
  top:30px;
  right: 50px;
  z-index: 101;
  cursor: pointer;
	
	}

.line {
  width: 30px;
  height: 2px;
  background: #292976;
  margin-bottom: 6px;
}

.line:hover {
 
  background: #292976;
}

.menu {
  width: 320px;
  height: 100%;
  background:#292976;
  position: fixed;
  top: 0;
  right:-320px;
  transition: right .1s;
	z-index: 100;
	padding-left: 20px;
}

.menu-item:first-child {
  margin-top: 180px;
}

.menu--open {
  right: 0;
}

.menu-item a{
  color: #fff;
  width: 100%;
  padding: 1rem  ;
  box-sizing: border-box;
  line-height: 1.6;
  text-align: right;
  font-family: var(--font3);
  font-size: 1.3em;
}

.menu-item:hover {
	
	border-bottom: 1px solid #FFFFFF;
  cursor: pointer;
}



/* HEADER SECTION*/

main {
  grid-column: 1/3;
  display: grid;
  grid-template-columns: 1fr;
  margin-bottom: 50px;
	text-align: center;
	 position: relative;
  z-index: 5000;
	background: white;
	
}

/* SLIDER*/

.swiper {
  width: 100%;
  margin: 0px;
  grid-column: 1/3;
}
.swiper-slide {
  margin: 0px;
  text-align: left;
 
  margin-right: 0px !important;
  padding: 30px;
  cursor: grab;
  background-color: #EDEDED;
  filter: drop-shadow(2px 3px 4px #BDBDBD);
}
.swiper-slide img {
  display: block;
  width: 100%;
  object-fit: cover;
  margin: 0px;
}
.swiper-pagination {
  
}

/* PORTAFOLIO SECTION*/

.portafolio {
  grid-column: 1/2;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  padding: 50px 100px 50px 100px;
}
.imagen1 {
  grid-column: 1/2;
}
.imagen2 {
  grid-column: 2/3;
}
.imagen3 {
  grid-column: 3/4;
}
.imagen4 {
  grid-column: 4/5;
}

/* ITEMS SECTION*/

.itemsContainer {
  grid-column: 1/2;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 50px 100px 0px 100px;
  text-align: center;
}

.itemsBeneficiosContainer {
	
	grid-column: 1/2;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 50px 100px 0px 100px;
  text-align: center;
	
}

.item1 {
  grid-column: 1/2;
  padding: 30px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-wrap: nowrap;
}
.itemIcon {
  text-align: center;
}
.itemTexto {
  margin-top: 20px;
text-align: left;
}
.item2 {
    grid-column: 2/3;
    padding: 30px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: nowrap;
    font-family: "Nunito Bold";
}
.item3 {
  grid-column: 3/4;
  padding: 30px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-wrap: nowrap;
}
.item4 {
  grid-column: 4/5;
  padding: 30px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-wrap: nowrap;
}

/* BENEFICIOS SECTION*/

.beneficios {
  grid-column: 1/3;
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 50px 200px 50px 200px;
 
}
.beneficiosBtn {
  display: flex;
  flex-direction: column;
  align-items: left;
  justify-content: center;
}
.fotoBeneficios {
  grid-column: 1/2;
  width: 100%;
  background-image: url("../images/leonfoto.png")	;
  background-size: cover;
  background-position: top center;
	
}
.fotoBeneficios2 {
  grid-column: 1/2;
  width: 100%;
  background-image: url("../images/leonfoto.png")	;
  background-size: cover;
  background-position: top center;
	
}

.fotoBeneficios3 {
  grid-column: 1/2;
  width: 100%;
  background-image: url("../images/leonfoto.png")	;
  background-size: cover;
  background-position: top center;
	
}
.textBeneficios {
  grid-column: 2/3;
  padding: 30px;
  text-align: left;
  padding-top: 50px;
  padding-bottom: 50px;
}

/* NOSOTROS SECTION*/

.nosotrosContainer {
  grid-column: 1/3;
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding-top: 50px;
  padding-bottom: 50px;
}
.nosotrosInfo {
  grid-column: 1/2;
  width: 100%;
  background-color: #000000;
  text-align: center;
  padding: 20%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.nosotrosfoto {
  grid-column: 2/3;
  width: 100%;
  text-align: center;
  background-image: url("../images/leonfoto.png")	;
  background-size: cover;
  background-position: top center;
 
}
.nosotrosfoto2 {
  grid-column: 2/3;
  width: 100%;
  text-align: center;
  background-image: url("../images/leonfoto.png")	;
  background-size: cover;
  background-position: top center;
 
}

.nosotrosfoto3 {
  grid-column: 2/3;
  width: 100%;
  text-align: center;
  background-image: url("../images/leonfoto.png")	;
  background-size: cover;
  background-position: top center;

}

.nosotrosInfo p {
 color: var(--color4);
}

/* FOOTER SECTION*/

footer {
  background-color: #3a4f7a;
  grid-column: 1/3;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
footer p {
  color: var(--color4);
  font-size: .9em;
}
footer h1 {
  color: var(--color4);
  font-size: 2em;
}
.infoFooter {
  grid-column: 1/2;
  padding-left: 50px;
  padding-bottom: 30px;
  padding-top: 30px;
}
.redesFooter {
  grid-column: 2/3;
  text-align: right;
  padding-right: 50px;
  padding-top: 30px;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-end;
}
.mailFooter {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start;
  margin-bottom: 10px;
}

.telefonoFooter {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: left;
  margin-bottom: 10px;
}
.landsFooter {
  grid-column: 1/3;
  height: 60px;
  background-color: black;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}


#changing-word {
  display: inline;
  white-space: normal;
  transition: opacity 0.15s;
}

#changing-word.hide {
  opacity: 0;
}


.logo {
	position: fixed;
	top: 30px;
	left: 30px;
}

.servicio {
  box-sizing: border-box;
  width: calc(100% - 22%);
  min-height: 320px;
  margin: 0 auto 45px;
  padding: 60px 45px;

  display: grid;
  grid-template-columns: 80px minmax(140px, 1.2fr) minmax(200px, 1fr) 60px;
  align-items: center;
  gap: clamp(20px, 4vw, 30px);

  font-family: Helvetica, Arial, sans-serif;
}

.servicio-morado {
  background: #292976;
  color: white;
}

.servicio-claro {
  background: #f3f2f0;
  color: #292976;
}

.servicio > img {
  display: block;
  width: 70px;
  height: auto;
}

.servicio h2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;

  margin: 0;
  font-size: clamp(2rem, 3.3vw, 3.8rem);
  line-height: 0.95;
}

.servicio h2 span {
  display: block;
  width: fit-content;
  padding: 0.08em 0.15em;
}

.servicio-morado h2 span {
  background: #ff4381;
  color: white;
}

.servicio-claro h2 span {
  background: #292976;
  color: white;
}

.servicio p {
  margin: 0;
  font-size: clamp(1.15rem, 1rem, 1.5rem);
  line-height: 1.15;
	
}

.servicio > a {
  width: 44px;
  height: 44px;

  display: grid;
  place-items: center;

  border: 2px solid currentColor;
  border-radius: 50%;

  color: inherit;
  font-size: 35px;
  line-height: 1;
  text-decoration: none;
}



.servicio h2.titulo-reveal span {
  clip-path: inset(100% 0 0 0);
  transform: translateY(40px);

  transition:
    clip-path 1.4s ease,
    transform 1.4s ease;
}

.servicio h2.titulo-reveal span:nth-child(2) {
  transition-delay: 0.12s;
}

.servicio h2.titulo-reveal.visible span {
  clip-path: inset(0);
  transform: translateY(0);
}

.parallax-lento {
  translate: 0 var(--parallax-y, 0px);
  will-change: translate;
}

.clientes {
  padding: 100px 0 80px;
  overflow: hidden;
  color: #292976;
  font-family: Helvetica, Arial, sans-serif;
}

.clientes h2 {
  width: min(1100px, 85%);
  margin: 0 auto;
  text-align: center;
  font-size: clamp(1.4rem, 2vw, 2.3rem);
  line-height: 1.1;
  font-family: "HelveticaNowDisplay Regular";
}

.logos-mascara {
  width: 100%;
  margin-top: 100px;
  overflow: hidden;
}

.logos-track {
  display: flex;
  width: max-content;
  animation: mover-logos 50s linear infinite;
}

@keyframes mover-logos {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

.logos-grupo {
  display: flex;
  align-items: center;
  gap: 80px;
  padding-right: 80px;
}

.logos-grupo img {
  flex: none;
  width: auto;
  height: 110px;
  max-width: 300px;
  object-fit: contain;
}

.clientes hr {
  width: 55%;
  margin: 100px auto 0;
  border: 0;
  border-top: 2px solid #292976;
}

.cifras {
  padding: 80px 5% 70px;
  background: #292976;
  color: white;
  font-family: Helvetica, Arial, sans-serif;
}

.cifras-titulo {
  display: block;
  width: clamp(280px, 27vw, 350px);
  max-width: 85%;
  height: auto;
  margin: 0 auto 100px;
}

.cifras-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.cifra {
  padding: 0 30px;
  text-align: center;
  border-right: 1px solid rgba(255, 255, 255, 0.7);
}

.cifra:last-child {
  border-right: 0;
}

.cifra strong {
  display: block;
  margin-bottom: 12px;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 1;
  font-weight: normal;
}

.cifra span {
  display: block;
  font-size: clamp(0.9rem, 1.4vw, 1.5rem);
  line-height: 1.1;
}

.team-video {
  position: sticky;
  top: 0;
  z-index: 1;
  align-self: start;

  display: block;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  object-fit: cover;
}

.clientes,
.cifras {
  position: relative;
  z-index: 2;
}

.clientes {
  background: white;
}

.equipo {
  position: relative;
  z-index: 2;
  padding: 90px 0;
  overflow: hidden;
  background: white;
  color: #292976;
  font-family: Helvetica, Arial, sans-serif;
}

.equipo-titulo {
  display: block;
  width: clamp(300px, 38vw, 600px);
  max-width: 85%;
  height: auto;
  margin: 0 auto 80px;
}

.equipo-slider {
  display: flex;
  gap: 45px;
  padding: 0 4%;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
	  padding-top: 45px;
  padding-bottom: 45px;
}

.equipo-slider::-webkit-scrollbar {
  display: none;
}

.persona {
  position: relative;
  flex: 0 0 clamp(300px, 30vw, 520px);
  aspect-ratio: 2 / 3;
  margin: 0;
  overflow: hidden;
  border-radius: 35px;
  scroll-snap-align: start;
	  transition: none;
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
}

.persona.movimiento-vertical {
  animation: movimiento-persona 1.3s ease-in-out;
}

@keyframes movimiento-persona {
  0% {
    transform: translate3d(0, 0, 0);
  }

  45% {
    transform: translate3d(0, -24px, 0);
  }

  100% {
    transform: translate3d(0, 0, 0);
  }
}

.persona > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
	
	
}


.persona figcaption {
  position: absolute;
  inset: auto 0 0;
  padding: 100px 25px 35px;
  color: white;
  text-align: center;
  background: linear-gradient(
    transparent,
    rgba(4, 12, 20, 0.95)
  );
}

.persona h3 {
  margin: 0 0 12px;
  font-size: clamp(1.4rem, 2vw, 2.3rem);
}

.persona p {
  margin: 0;
  font-size: clamp(0.8rem, 1.2vw, 1.2rem);
}

.equipo-flecha {
  position: absolute;
  top: 58%;
  z-index: 3;
  width: 55px;
  height: 55px;
  display: grid;
  place-items: center;
  color: white;
  line-height: 1;
  text-decoration: none;
}

.equipo-anterior {
  left: 25px;
}

.equipo-siguiente {
  right: 25px;
}
 
.equipo .persona figcaption h3,
.equipo .persona figcaption p {
  color: white;
}




@media only screen and (max-width: 900px) {
  h1 {
   
    line-height: 1;
   
  }
  .maincontainer {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    
  }
	
  /* HEADER SECTION*/
	
  header {
    background-color: #FF8089;
    width: 100%;
    height: 100vh;
    grid-column: 1/2;
    display: grid;
    grid-template-columns: 1fr;
   
  }
  .portada {
    background-image:url("../images/mobile.webp");
    background-repeat: no-repeat;
	  background-position: center;
    background-size: cover;
    grid-column: 1/2;
    overflow: hidden;
    grid-row-start: 1;
    grid-row-end: 2;
    z-index: 1;
  }
  .infoPortada {
    grid-column: 1/2;
    grid-row-start: 1;
    grid-row-end: 2;
    padding: 20px;
  

    z-index: 2;
  }
  .subslogan {
    margin-top: 0px;
    padding-top: 20px;
  }
  .botonPrincipal {
    margin-top: 30px;
    grid-column: 1/2;
    text-align: center;
    height: 65px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin-bottom: 50px;
  }
  .slogan {
   margin-top: 120px;
  }
	
	.hamburger {
  position: fixed;
  top:20px;
	right: 20px;
  z-index: 101;
  cursor: pointer;
}
	
	
  main {
    grid-column: 1/2;
    display: grid;
    grid-template-columns: 1fr;
    margin-bottom: 0px;
  }
	
  /* SLIDER SECTION*/
	
  .swiper {
    width: 100%;
    margin: 0px;
    grid-column: 1/2;
  }
  .swiper-slide {
    margin: 0px;
    width: 100%!important;
    text-align: center;
    margin-right: 0px !important;
    padding: 17px;
    cursor: grab;
  }
  .swiper-slide img {
    display: block;
    width: 100%;
    object-fit: cover;
    margin: 0px;
  }
  .swiper-slide .swiper-slide-active .swiper-slide-prev {
    margin-right: 0px !important;
  }
	
  /* PORTAFOLIO SECTION*/
	
  .portafolio {
    grid-column: 1/2;
    display: grid;
    grid-template-columns: 1fr;
    padding: 50px 0px 50px 0px;
  }
  .imagen1 {
    grid-column: 1/2;
  }
  .imagen2 {
    grid-column: 1/2;
  }
  .imagen3 {
    grid-column: 1/2;
  }
  .imagen4 {
    grid-column: 1/2;
  }
	
  /* ITEM SECTION*/
	
  .itemsContainer {
    grid-column: 1/2;
    display: grid;
    grid-template-columns: 1fr;
    padding: 50px 0px 0px 0px;
  }
	
	.itemsBeneficiosContainer {
	
	grid-column: 1/2;
    display: grid;
    grid-template-columns: 1fr;
    padding: 50px 0px 0px 0px;
	
}
  .item1 {
    grid-column: 1/2;
    padding: 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: nowrap;
  }
  .itemIcon {
    text-align: center;
  }
  .itemTexto {
    margin-top: 20px;
  }
  .item2 {
    grid-column: 1/2;
    padding: 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: nowrap;
  }
  .item3 {
    grid-column: 1/2;
    padding: 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: nowrap;
  }
  .item4 {
    grid-column: 1/2;
    padding: 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-wrap: nowrap;
  }
	
  /* BENEFICIOS SECTION*/
	
  .beneficios {
    grid-column: 1/2;
    display: grid;
    grid-template-columns: 1fr;
    padding: 50px 0px 50px 0px;
  }
  .beneficiosBtn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .fotoBeneficios {
    grid-column: 1/2;
    width: 100%;
	min-height: 500px;
  }
	.fotoBeneficios2 {
    grid-column: 1/2;
    width: 100%;
	min-height: 500px;
  }
	.fotoBeneficios3 {
    grid-column: 1/2;
    width: 100%;
	min-height: 500px;
  }
	
  .textBeneficios {
    grid-column: 1/2;
    padding: 10px;
    text-align: left;
    padding-top: 50px;
    padding-bottom: 50px;
  }
	
  /* NOSOTROS SECTION*/
	
  .nosotrosContainer {
    grid-column: 1/2;
    display: grid;
    grid-template-columns: 1fr;
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .nosotrosInfo {
    grid-column: 1/2;
    width: 100%;
    background-color: #000000;
    text-align: center;
    padding: 30px 10px 30px 10px ;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .nosotrosfoto {
    grid-column: 1/2;
    width: 100%;
    text-align: center;
	 min-height: 500px;
   
  }
	.nosotrosfoto2 {
    grid-column: 1/2;
    width: 100%;
    text-align: center;
	 min-height: 500px;
  }
	.nosotrosfoto3 {
    grid-column: 1/2;
    width: 100%;
    text-align: center;
	 min-height: 500px;
   
  }
	
  /* FOOTER SECTION*/
	
  footer {
    
    grid-column: 1/2;
    display: grid;
    grid-template-columns: 1fr;
  }
	
	.logoFooter {
	width: 100%;
	text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-wrap: nowrap;
		margin-bottom: 50px;
}
	
	
  .infoFooter {
    text-align: center;
    grid-column: 1/2;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 20px;
  }
  .redesFooter {
    grid-column: 1/2;
    text-align: center;
    padding-right: 10px;
    padding-left: 10px;
    padding-top: 0px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding-bottom: 35px;
  }
  .mailFooter {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
  }
  .telefonoFooter {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
  }
  .landsFooter {
    grid-column: 1/2;
    height: 60px;
    background-color: black;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
	
	
	.servicio {
    width: calc(100% - 24px);
    min-height: auto;
    margin-bottom: 18px;
    padding: 35px 24px;
	grid-template-columns: 45px minmax(0, 1fr);
    gap: 25px 20px;
  }

  .servicio > img {
    width: 65px;
  }

  

  .servicio p {
    grid-column: 1 / -1;
    font-size: 1.1rem;
    line-height: 1.3;
  }

  .servicio > a {
    grid-column: 2;
    justify-self: end;
    width: 48px;
    height: 48px;
    font-size: 32px;
  }
	
	.clientes {
    padding: 70px 0 50px;
  }

  .clientes h2 {
    width: 88%;
  
  }

  .logos-mascara {
    margin-top: 60px;
  }

  .logos-grupo {
    gap: 45px;
    padding-right: 45px;
  }

  .logos-grupo img {
       width: auto;
    height: 125px;
    max-width: 260px;
  }

  .clientes hr {
    width: 80%;
    margin-top: 70px;
  }
	
	.cifras {
    padding: 60px 18px 45px;
  }

  .cifras-titulo {
    width: 58%;
    max-width: 350px;
    margin-bottom: 55px;
  }

  .cifras-grid {
    grid-template-columns: 1fr 1fr;
  }

  .cifra {
    padding: 28px 8px;
    border-right: 0;
  }

  .cifra:nth-child(odd) {
    border-right: 1px solid rgba(255, 255, 255, 0.7);
  }

  .cifra:nth-child(-n + 2) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.7);
  }

  .cifra strong {
    font-size: clamp(2.3rem, 10vw, 3.3rem);
  }

  .cifra span {
    font-size: 0.78rem;
    line-height: 1.2;
  }
	
	.equipo {
    padding: 60px 0;
  }

  .equipo-titulo {
    width: 82%;
    margin-bottom: 50px;
  }

  .equipo-slider {
     gap: 16px;
  padding: 35px 18px 20px;
  }

  .persona {
    flex-basis: 82vw;
    border-radius: 25px;
  }

  .persona figcaption {
    padding: 80px 15px 25px;
  }

  .persona h3 {
    font-size: 1.4rem;
  }

  .persona p {
    font-size: 0.8rem;
  }

  .equipo-flecha {
    width: 45px;
    height: 45px;
    font-size: 36px;
  }

  .equipo-anterior {
    left: 10px;
  }

  .equipo-siguiente {
    right: 10px;
  }
}




