@import url("./general.css");
@import url("./header.css");
@import url("./footer.css");

#portafolio{
  max-width: 64rem;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 5rem;
  padding: 3rem 1rem 5rem;
  & h1{
    margin: auto;
    width: fit-content;
    padding: 0.5rem 2rem;
    font-size: clamp(1.5rem, 6vw, 2rem);
    border-radius: 0.5rem;
    border: none;
    box-shadow: 2px 2px 5px black, 1px 1px 2px var(--primary) inset;
  }
}
.proyecto{
  display: grid;
  grid-template-columns: 1fr 10rem 1fr;
  grid-template-rows: auto 1fr auto;
  gap: 0.5rem;
  & .titulo{
    grid-row: 1/2;
    grid-column: 1/2;
    font-size: 1rem;
  }  
  & .captura{
    grid-row: 1/4;
    grid-column: 2/4;
    overflow: hidden;
    border-radius: 0.5rem;
    & img{
      display: block;
      border-radius: 0.5rem;
      object-fit: fill;
      transition: transform 2s ease-in-out;      
      &:hover{
        transform: scale(1.2);
      } 
    }
  }
  & .descripcion{
    grid-row: 2/3;
    grid-column: 1/3;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: var(--bg);
    padding-inline: 1rem 3rem;
    border-radius: 0 6rem 6rem 0;
    box-shadow: 3px 3px 10px black;
    line-height: 1.5rem;
  }
  & .datos{
    grid-row: 3/4;
    grid-column: 1/2;    
    & > p{
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: flex-start;
      gap: 0.5rem;
      padding-inline: 0 1rem;
      & > span{
        font-size: 0.8rem;       
        padding: 0.2rem 0.5rem 0;
        border-radius: 1.5rem;
        border: 1px solid var(--primary);
        color: var(--gray);
      }
    } 
    
  }
}
.proyecto.even{  
  & .titulo{
    grid-row: 1/2;
    grid-column: 3/4;
    text-align: right;    
  }  
  & .captura{
    grid-row: 1/4;
    grid-column: 1/3;
  }
  & .descripcion{
    grid-row: 2/3;
    grid-column: 2/4;
    padding-inline: 3rem 1rem;
    border-radius: 6rem 0 0 6rem;
    box-shadow: -3px 3px 10px black;
    text-align: right; 
  }
  & .datos{
    grid-row: 3/4;
    grid-column: 3/4;    
    & > p{
      justify-content: flex-end;
      padding-inline: 1rem 0;
    } 
    
  }
}

.separador{
  position: relative;
  width: 1rem;
  height: 1rem;
  border-radius: 100%;
  border: 1px solid var(--gray);
  &::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    border-top: 1px solid var(--gray);
    width: 20rem;
  }
  &.right{
    margin-left: auto;
    &::after{
      top: 50%;
      left: -20rem;
    }
  }
}

@media screen and (width < 768px) {
  #portafolio{
    padding: 1rem;
    gap: 2rem;
  }
  .proyecto{
    display: flex;
    flex-direction: column;
    gap: 1rem;
    & .descripcion{
      border-radius: 0.5rem;
      padding: 0.5rem;     
    }
    &.even{
      & .descripcion{
        border-radius: 0.5rem;
        text-align: left;
        padding: 0.5rem; 
      }
      & .titulo{
        text-align: left;
      }
      & .datos > p{
        justify-content: flex-start;
        padding: 0;
      }
    }
  }
}