/*****************************************************************************************
******************************************************************************************
                                    ¡¡¡General Services descriptions!!!
******************************************************************************************
******************************************************************************************/
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap'); /* Fuente del texto: ROBOTO */


/* Responsive */
@media (max-width: 767px) {
  .services-portada{
    height: auto;
    text-align: center;
    padding-top: 100px;
  }
  .service-description {
    padding: 30px 20% 15px;
    text-align: center;
}
}

@media (min-width: 768px) and (max-width: 1024px) {
  .services-portada{
    height: 80vh;
    text-align: center;
    padding-top: 150px;
  }
  .service-description{
    padding: 10px 20%;
    text-align: center;
  }
}

@media (min-width: 1025px) and (max-height: 1080px){
  .services-portada{
    height: 100vh;
    text-align: center;
    padding-top: 150px;
  }
  .service-description{
    padding: 10px 20%;
    text-align: center;
  }
}


.feature{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.icon-feature{

  width: 40%;
}
/* **************************** */
/* Responsive */
@media (max-width: 767px) {
  .How-we-work {
    padding: 10px 0px 5px 5px;
    height: 42vh;
}
.icon-container h4{
    font-size: 10px;
}
.icon-step{
  max-width: 60%;
  height: 10vh;
}
}

@media (min-width: 768px) and (max-width: 1024px) {
  .How-we-work {
    padding: 10px 0px 5px 5px;
    height: 750px;
}
.icon-step{
  width: 70%;
  height: 18vh;
}
.steps-containers{
  display: flex;
}
}

@media (min-width: 1025px){
  .How-we-work {
    padding: 10px 0px 10px 50px;
    height: 750px;
    background-attachment: fixed;
}
.icon-step{
  width: 70%;
  height: 18vh;
}
.steps-containers{
  display: flex;
}
}

.How-we-work{
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; /* Alinea el texto horizontalmente */
  background-position: center;
  background-size: cover;
  /* background-image: url('../img/HowWeWork/HowWeWork.jpeg '); */
  background-color: #d9d4cc;
  position: relative;
  width: 100vw;
  height: auto;
}

.icon-container {
  position: relative;
}


/* Esto es lo nuevo de how we work */
.icon-container p{
  display: none;
}
.text_description_step{
  display: flex;
  justify-content: center;
  height: 30vh !important;
  border: 2px solid #011126;
  border-radius: 10px;
}
.text_description_step {
  height: 100px;
  overflow: hidden;
  transition: height 0.3s ease;
}

/* **************************** */
/* Responsive */
@media (max-width: 767px) {
  .Packages {
      padding: 10px 5px;
  }
  .Package-description{
      height: 170vh;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .Packages {
      padding: 10px 20px;
      height: auto;
  }
  .Package-description{
      height: 30vh;
  }
}
@media (min-width: 1025px) and (max-height: 1080px) {
  .Packages {
      padding: 10px 50px;
      background-attachment: fixed;
      height: auto;
  }
  .Package-description{
      height: 50vh;
  }
}

.Packages{
  text-align: center;
}
.package{
  display: flex;
  flex-direction: column;
  align-items: center;
}

.Package-description{
  height: auto;
  text-align: center;

}

.parrafo {
  display: grid;
  padding: 10px;
  border: 1px solid #ccc;
  justify-content: center;
  display: none; /* Inicialmente, oculta todos los párrafos */
}

/*****************************************************************************************
******************************************************************************************
                                    puzzle
******************************************************************************************
******************************************************************************************/
@media (max-width: 767px) {
  .puzzle {
    height: 90px;
    width: 90px;
}
  .feature{
  height: 90px;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .puzzle {
    height: 225px;
    width: 225px;
  }
  .feature{
    height: 5vh;
  }
}

@media (min-width: 1025px){
  .puzzle {
    height: 225px;
    width: 225px;
  }
  .feature{
    height: 5vh;
  }
}

.feature-responsive ul{
  padding: 0 !important;
}
.feature{
  text-align: center;
  border-bottom: 2px solid #d9d4cc;
  padding: 0;
}
.Packages a{
  text-align: center;
  justify-content: center;
  display: flex;
  align-items: center;
}

.custom-package{
  text-align: center;
  color: #737048;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #262401;
  justify-content: center;
  align-self: center;
  /* borde color verde claro #262401 */
}
.col-lg-3 ul{
  padding: 0%;
}
.Packages a button{
  border-radius: 5px;
}
.puzzle * {
    position: absolute;
  }
  
  .puzzle {
    margin: auto;
    transform: translateY(0%);
    top: 50%;
    left: 50%;
  }
  
  .puzzle-left {
    height: 25%;
    width: 25%;
    border: 2px solid;
    border-radius: 10%;
    top: 15%;
    left: 15%;
    background-color: #011126;
    animation-name: move-left;
    animation-duration: 5s;
    animation-fill-mode: forwards ;
    animation-iteration-count: infinite;
    z-index: 1;
  }
  
    @keyframes move-left {
      0% { top: 15%; transform: translateY(0%); }
      50% { top: 37%; left: 37%; transform: translate(-50%, -50%); }
      100% { top: 15%; transform: translateY(0%); }
    }
  
  .puzzle-right {
    height: 25%;
    width: 25%;
    border: 2px solid;
    border-radius: 10%;
    top: 15%;
    right: 15%;
    background-color: #011126;
    animation-name: move-right;
    animation-duration: 5s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
  }
  
    @keyframes move-right {
      0% { top: 15%; transform: translateY(0%); }
      50% { top: 37%; right: 37%; transform: translate(50%, -50%); }
      100% { top: 15%; transform: translateY(0%); }
    }
  
  .puzzle-left-lower {
    height: 25%;
    width: 25%;
    border: 2px solid;
    border-radius: 10%;
    bottom: 15%;
    left: 15%;
    background-color: #011126;
    animation-name: move-left-up;
    animation-duration: 5s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
  }
  
    @keyframes move-left-up {
      0% { bottom: 15%; transform: translateY(0%); }
      50% { bottom: 37%; left: 37%; transform: translate(-50%, 50%); }
      100% { bottom: 15%; transform: translateY(0%); }
    }
  
  .puzzle-right-lower {
    height: 25%;
    width: 25%;
    border: 2px solid;
    border-radius: 10%;
    bottom: 15%;
    right: 15%;
    background-color: #011126;
    animation-name: move-right-up;
    animation-duration: 5s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    z-index: -1;
  }
  
    @keyframes move-right-up {
      0% { bottom: 15%; transform: translateY(0%); }
      50% { bottom: 37%; right: 37%; transform: translate(50%, 50%); }
      100% { bottom: 15%; transform: translateY(0%); }
    }
  
  .puzzle-left-right {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: 50%;
    right: -29%;
    transform: translateY(-50%);
    border-left-color: transparent;
    background-color: #011126;
  }
  
  .puzzle-left-bottom {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    left: 50%;
    bottom: -29%;
    transform: translateX(-50%);
    border-top-color: transparent;
    background-color: #011126;
  }
  
  .puzzle-right-right {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: 50%;
    right: -7%;
    transform: translateY(-50%);
    border-right-color: transparent;
    background-color: #f2ede4;
  }
  
  .puzzle-right-right::before {
    height: 100%;
    width: 100%;
    border-radius: 50%;
    background-color: #011126;
    position: absolute;
    bottom: 0%;
    right: -10%;
    border-right: 2px solid #011126;
  }
  
  .puzzle-right-right::after {
    height: 100%;
    width: 100%;
    border-radius: 50%;
    background-color: #f2ede4;
    position: absolute;
    bottom: -50%;
    right: -100%;
    border-right: 2px solid #f2ede4;
  }
  
  .puzzle-right-left {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: 50%;
    left: -8%;
    transform: translateY(-50%);
    border-left-color: transparent;
    background-color: #f2ede4;
  }
  
  .puzzle-right-bottom {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    left: 50%;
    bottom: -29%;
    transform: translateX(-50%);
    border-top-color: transparent;
    background-color: #011126;  
  }
  
  .puzzle-right-top {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: -29%;
    left: 50%;
    transform: translateX(-50%);
    border-bottom-color: transparent;
    background-color: #011126;
  }
  
  .puzzle-left-lower-right {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: 50%;
    right: -29%;
    transform: translateY(-50%);
    border-left-color: transparent;
    background-color: #011126;
  }
  
  .puzzle-left-lower-left {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: 50%;
    left: -8%;
    transform: translateY(-50%);
    border-left-color: transparent;
    background-color: #f2ede4;
  }
  
  .puzzle-left-lower-bottom {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    left: 50%;
    bottom: -8%;
    transform: translateX(-50%);
    border-bottom-color: transparent;
    background-color: #f2ede4;
  }
  
  .puzzle-left-lower-bottom::before {
    height: 100%;
    width: 100%;
    border-radius: 50%;
    background-color: #011126;
    position: absolute;
    bottom: -10%;
    left: 0%;
    border-bottom: 2px solid #011126;
  }
  
  .puzzle-left-lower-bottom::after {
    height: 100%;
    width: 100%;
    border-radius: 50%;
    background-color: #f2ede4;
    position: absolute;
    bottom: -90%;
    left: 50%;
  }
  
  .puzzle-left-lower-top {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: -8%;
    left: 50%;
    transform: translateX(-50%);
    border-top-color: transparent;
    background-color: #f2ede4;
  }
  
  .puzzle-right-lower-right {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: 50%;
    right: -29%;
    transform: translateY(-50%);
    border-left-color: transparent;
    background-color: #011126;
  }
  
  .puzzle-right-lower-left {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: 50%;
    left: -8%;
    transform: translateY(-50%);
    border-left-color: transparent;
    background-color: #f2ede4;
  }
  
  .puzzle-right-lower-top {
    height: 30%;
    width: 30%;
    border: 2px solid;
    border-radius: 50%;
    top: -8%;
    left: 50%;
    transform: translateX(-50%);
    border-top-color: transparent;
    background-color: #f2ede4;
  }

