@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap");


/* ===== VARIABLES CSS ===== */
:root{
  --header-height: 6rem;
  --font-semi: 600;
  --font--min: 300;
}


/* ===== COLORS ===== */
:root{
  --first-color: #72af86;
  --second-color: #363636;
  --third-color: rgb(0, 0, 0);
  --fourth-color: #ffffff;
  --five-color: #000;
  --body-color: rgb(228, 228, 228);
  --nav-color: #efefef;
  --card-color:#FFF;
  --card2-color:#363636;
  --wave-color: #ffffff;
  --wave1-color: #ffffff;
  --wave2-color: #FFF;
  --wave3-color: rgb(228, 228, 228);
  --wave4-color: #efefef;
  --cursor-color:#72af75 ;
}


/* ===== VARIABLES DARK MODE =====*/
body.dark-theme{
  --first-color: #72af7c;
  --second-color: #ffffff;
  --third-color: rgb(255, 255, 255);
  --fourth-color: #ffffff;
  --five-color: rgb(255, 255, 255);
  --body-color: rgb(37, 37, 37);
  --nav-color: rgb(48, 48, 48);
  --card-color:#363636;
  --card2-color:#FFF;
  --wave-color: rgb(58, 58, 58);
  --wave2-color: #363636;
  --wave1-color: rgb(58, 58, 58);
  --wave3-color: rgb(37, 37, 37);
  --wave4-color: rgb(48, 48, 48);
  --cursor-color:#72af75 ;
  transition-duration: 0.1s;
  transition-timing-function: ease-in-out;
}


/* ===== SIGUERATONES ===== */
.abs-center {
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.custom-cursor {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  position: absolute;
  z-index: 1000;
  top: -40px;
  left: -40px;
  pointer-events: none;
  transition-duration: 220ms;
  transition-timing-function: ease-out;
}

@media screen and (max-width: 768px){
  .custom-cursor{
    display: none;
  }
}

.cursor__small {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: solid 2.1px var(--cursor-color);
  z-index: 5;
  margin: -9px 0 0 -9px;
  transform: scale(1);
}

.cursor__big {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: var(--cursor-color) 2.1px solid;
  z-index: 1;
  opacity: 1;
  margin: -40px 0 0 -40px;
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
  -moz-transition: all 320ms cubic-bezier(0.26, 0.01, 0.17, 1);
  -o-transition: all 320ms cubic-bezier(0.26, 0.01, 0.17, 1);
  -webkit-transition: all 320ms cubic-bezier(0.26, 0.01, 0.17, 1);
  transition: all 320ms cubic-bezier(0.26, 0.01, 0.17, 1);
}

.cursor__big2 {
  width: 200%;
  height: 200%;
  border-radius: 50%;
  border: var(--cursor-color) 2.1px solid;
  z-index: 1;
  opacity: 1;
  margin: -80px 0 0 -80px;
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
  -moz-transition: all 320ms cubic-bezier(0.26, 0.01, 0.17, 1);
  -o-transition: all 320ms cubic-bezier(0.26, 0.01, 0.17, 1);
  -webkit-transition: all 320ms cubic-bezier(0.26, 0.01, 0.17, 1);
  transition: all 320ms cubic-bezier(0.26, 0.01, 0.17, 1);
}


/*========== Button Dark/Light ==========*/

.nav__item .change-theme{
  display: flex;
  margin: auto;
  text-align: center;
  color: var(--title-color);
  font-size: 1.7rem;
  cursor: pointer;
  transition: all 0.3s;
}
.nav__item .change-theme:hover{
  color: var(--first-color);
}


/* ===== FONTS AND TEXT ===== */
:root{
  --body-font: 'Poppins', sans-serif;
  --big-font-size: 2rem;
  --h2-font-size: 1.25rem;
  --h3-font-size: 1.155rem;
  --normal-font-size: .938rem;
  --small-font-size: .853rem;
  --smaller-font-size: .8rem;
}

@media screen and (min-width: 768px){
  :root{
    --big-font-size: 3.5rem;
    --h2-font-size: 2rem;
    --normal-font-size: 1rem;
  }
}


/* ===== MARGINS ===== */
:root{
  --mb-1: 0.5rem;
  --mb-2: 1rem;
  --mb-3: 1.5rem;
  --mb-4: 2rem;
  --mb-5: 2.5rem;
  --mb-6: 3rem;
}


/* ===== Z-INDEX ===== */
:root{
  --z-back: -10;
  --z-normal: 1;
  --z-tooltip: 10;
  --z-fixed: 100;
}


/* ===== BASE ===== */
*,::before,::after{
  box-sizing: border-box;
}

html{
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body{
  margin: var(--header-height) 0 0 0;
  font-family: var(--body-font);
  font-size: var(--normal-font-size);
  color: var(--second-color);
  background-color: var(--body-color);
  overflow-x: hidden;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
}

body ::selection {
  color: white;
  background-color: var(--first-color);
}

h1,h2,p{
  margin: 0;
}

ul{
  margin: 0;
  padding: 0;
  list-style: none;
}

a{
  text-decoration: none;
}

img{
  max-width: 100%;
  height: auto;
  display: block;
}


/* ===== CLASS CSS ===== */
.section-title{
  position: relative;
  font-size: var(--h2-font-size);
  color: var(--first-color);
  margin-top: var(--mb-2);
  margin-bottom: var(--mb-4);
  text-align: center;
}
.section-title2{
  position: relative;
  font-size: var(--h2-font-size);
  color: var(--first-color);
  text-align: center;
}

.section-title::after{
  position: absolute;
  content: "";
  width: 64px;
  height: 0.18rem;
  left: 0;
  right: 0;
  margin: auto;
  top: 2rem;
  background-color: var(--first-color);
}

.section{
  padding-top: 3rem;
  padding-bottom: 2rem;
  padding-left: 4%;
  padding-right: 4%;
}

.section1{
  padding-top: 0rem;
  padding-bottom: 0rem;
  padding-left: 0%;
  padding-right: 0%;
  position: relative;
}





/* ===== LAYOUT ===== */
.bd-grid{
  max-width: 1024px;
  display: grid;
  grid-template-columns: 100%;
  grid-column-gap: 2rem;
  width: calc(100% - 2rem);
  margin-left: var(--mb-2);
  margin-right: var(--mb-2);
}

.l-header{
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--z-fixed);
  background-color: var(--nav-color);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.205);
}


/* ===== NAV ===== */
.nav{
  height: var(--header-height);
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: var(--font-semi);
}

@media screen and (max-width: 880px){
  .nav__menu{
    position: fixed;
    top: var(--header-height);
    right: -100%;
    width: 80%;
    height: 100%;
    padding: 2rem;
    background-color: var(--nav-color);
    color: var(--second-color);
  }
}

  .home__img{
    width: 195px;
    bottom: -10;
  }

  .nav__link{
    color: var(--second-color);
  }

  .change-theme i{
    position: initial;
  }


.nav__item{
  margin-bottom: var(--mb-4);
}

.nav__link{
  position: relative;
  transition: all 0.3s ease;
}

.nav__link:hover{
  position: relative;
  color: var(--first-color);
}

.nav__link:hover::after{
  position: absolute;
  content: "";
  width: 100%;
  height: 0.18rem;
  left: 0;
  top: 2rem;
}

.nav__logo{
  color: var(--second-color);
  display: flex;
  padding-top: 0;
  transition: all 0.3s ease;
}

.nav__logo:hover{
  color: var(--first-color);
}

.nav__img{
  margin-right: 15px;
  object-position: center;
}

@media screen and (min-width: 975px){
  .nav__img{
    display: none;
  }
}

@media screen and (max-width: 975px){
.nav__logo p{
  display: none;
}
}

.nav__toggle{
  color: var(--second-color);
  font-size: 1.5rem;
  cursor: pointer;
}


/* ===== ACTIVE MENU ===== */
.nav__link.active::after{
  position: absolute;
  content: "";
  width: 100%;
  height: 0.18rem;
  left: 0;
  top: 2rem;
  background-color: var(--first-color);
}


/* ===== SHOW MENU ===== */
.show{
  right: 0;
}


/* ===== HOME ===== */
.home{
  height: calc(100vh - 3rem);
  row-gap: 1rem;
}

.home__data{
  align-self: center;
}

.home__title{
  font-size: var(--big-font-size);
  margin-bottom: var(--mb-5);
  align-items: center;
}

.home__title-color{
  color: var(--first-color);
}

.home__social{
  display: flex;
  flex-direction: column;
}

.home__social-icon{
  width: max-content;
  margin-bottom: var(--mb-2);
  font-size: 1.5rem;
  color: var(--second-color);
}

.home__social-icon:hover{
  color: var(--first-color);
}

.home__img{
  position: absolute;
  right: 0;
  bottom: 0;
  width: 295px;
  border-radius: 100%;
  filter:invert(0.2);
}

.nav__img{
  filter:invert(0.2);
}

.dark-img{
  filter:invert(1);
}

.home__img {
    animation: float 6s ease-in-out infinite;
}



@keyframes float {
	0% {
		transform: translatey(0px);
	}
	50% {
		transform: translatey(-50px);
	}
	100% {
		transform: translatey(0px);
	}
}


/* ===== TEXT CHANGE ===== */
.home__title,.spin:after{
  content:'Emprendo';
  animation: text 9s linear infinite;
}

@keyframes text {

  30% {
    content: "Desarrollo";
  }
  60% {
    content: "Creo soluciones";
  }
}


/* ===== BUTTONS ===== */
.button{
  display: inline-block;
  background-color: var(--first-color);
  color: #FFF;
  padding: .75rem 2.5rem;
  font-weight: var(--font-semi);
  border-radius: 1rem;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  border: solid var(--first-color) 2px;
  text-align: center;
}

.button:hover{
  box-shadow: 0 10px 36px rgba(0, 0, 0, 0.15);
  color: var(--first-color);
  background-color: var(--nav-color);
}

.buttoncv{
  display: inline-block;
  background-color: var(--first-color);
  color: #FFF;
  padding: .75rem 2.5rem;
  font-weight: var(--font-semi);
  border-radius: 1rem;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  border: solid var(--first-color) 2px;
  width: 100%;
  text-align: center;
}

.buttoncv:hover{
  box-shadow: 0 10px 36px rgba(0, 0, 0, 0.15);
  color: var(--first-color);
  background-color: var(--nav-color);
}

.buttonct{
  display: inline-block;
  background-color: var(--nav-color);
  color: var(--second-color);
  padding: .75rem 2.5rem;
  font-weight: var(--font-semi);
  border-radius: 1rem;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  border: solid var(--second-color) 1.5px;
  text-align: center;
  transition-duration: 0.1s;
  transition-timing-function: ease-in-out;
}

.buttonct:hover{
  box-shadow: 0 10px 36px rgba(0, 0, 0, 0.15);
  color: var(--first-color);
  background-color: var(--nav-color);
  border: solid var(--first-color) 1.5px;
}

.buttonct1{
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  transition-duration: 0.1s;
  transition-timing-function: ease-in-out;
  margin-bottom: 0.9rem;
}

.buttonct1:active{
  transform: scale(0.98);
}


/* ===== ABOUT ===== */
.about__container{
  row-gap: 2rem;
  text-align: center;
}

.about__subtitle{
  margin-bottom: var(--mb-2);
}

.about__img{
  justify-self: center;
}

.about__img img{
  width: 200px;
  border-radius: .5rem;
}

.ab__container{
  row-gap: 2rem;
  text-align: center;
}


/*========== SEND GIFT ==========*/
.send{
  background-color: var(--nav-color);
  z-index: var(--z-normal);
  position: relative;
}

.send1{
  z-index: var(--z-normal);
  position: relative;
  background: linear-gradient(-45deg, #ffffff, #335f39, #8cd696, #000000);
    background-size: 400% 400%;
    animation: gradient 15s ease infinite;
  }

  @keyframes gradient {
    0% {
      background-position: 0% 50%;
    }
    50% {
      background-position: 100% 50%;
    }
    100% {
      background-position: 0% 50%;
    }
  }

  @media screen and (max-width: 880px){
  .send1{
      background: var(--nav-color) !important;
  }
  }

.send__container{
  max-width: 1024px;
  margin-top: 2rem;
}

.send__container1{
  max-width: 1024px;
  margin-top: 2rem;
  margin-bottom: 2rem;
  padding-bottom: var(--mb-4);
}

.send__container2{
  padding-bottom: 2.5rem;
  background-color: var(--nav-color);
}

.send__container3{
  padding-bottom: 2rem;
  background-color: var(--wave-color);
}

.send__title{
  margin-bottom: 1rem;
}

.send__title{
  color: var(--card2-color);
  text-align: left;
}

.send__title1{
  color: var(--second-color);
  text-align: center;
}


.send__description{
  text-align: left;
  color: var(--card2-color);
  margin-bottom: var(--mb-3);
}

.infome{
  margin-bottom: 1rem;
}

.send__img{
  width: 100%;
  justify-self: center;
  vertical-align: middle;
  padding-top: 2.4rem;
}

td .fas{
  font-size: 1.1rem;
  margin: 1rem;
}

.me .fas{
  font-size: 1.3rem;
  vertical-align: center;
}

.me p{
  margin-left: .5rem;
}


/*========== QUALIFICATION ==========*/
.qualification__tabs{
  display: flex;
  justify-content: space-evenly;
  margin-bottom: var(--mb-4);
}

.qualification__button{
  font-size: var(--h3-font-size);
  font-weight: var(--font-semi);
  cursor: pointer;
}

.qualification__button:hover{
  color: var(--first-color);
}

.qualification__button.qualification__active{
  color: var(--first-color);
}

.qualification__content{
  display: none;
  margin-bottom: var(--mb-4);
}

.qualification__icon{
  font-size: 1.2rem;
  margin-right: var(--mb-0-25);
}

.qualification__data{
  display: grid;
  grid-template-columns: 1fr max-content 1fr;
  column-gap: 1.5rem;
}

.qualification__title{
  font-size: var(--normal-font-size);
  font-weight: var(--font-semi);
}

.qualification__subtitle{
  display: inline-block;
  font-size: var(--small-font-size);
  margin-bottom: var(--mb-1);
}

.qualification__calendar{
  font-size: var(--smaller-font-size) ;
  color: var(--text-color-light);
}

.qualification__rounder{
  display: inline-block;
  width: 13px;
  height: 13px;
  background-color: var(--first-color);
  border-radius: 50%;
}

.qualification__line{
  display: block;
  width: 1px;
  height: 100%;
  background-color: var(--first-color);
  transform: translate(6px,-7px);

}

.qualification__active[data-content]{
  display: block;
}

.section-subtitle{
  text-align: center;
}

.right{
  text-align: left;
  margin-left: auto;
}

.left{
  text-align: left;
}

.span1{
  margin:auto;
  text-align: center;
  margin-bottom: var(--mb-3);
}

.span2{
  margin:auto;
  text-align: center;
  margin-bottom: var(--mb-5);
}


/* ===== SKILLS ===== */
.skills__container{
  row-gap: 2rem;
  text-align: center;
}

.skills__subtitle{
  margin-bottom: var(--mb-2);
}

.skills__text{
  margin-bottom: var(--mb-4);
}

.skills__data{
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  font-weight: var(--font-semi);
  padding: .5rem 1rem;
  margin-bottom: var(--mb-4);
  border-radius: .5rem;
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.15);
  background-color: rgb(48, 48, 48);
}

.skills__icon{
  font-size: 2rem;
  margin-right: var(--mb-2);
  color: var(--first-color);
}

.skills__names{
  display: flex;
  align-items: center;
}

.skills__bar{
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: var(--first-color);
  height: .25rem;
  border-radius: .5rem;
  z-index: var(--z-back);
}

.skills__html{
  width: 85%;
}

.skills__css{
  width: 65%;
}

.skills__js{
  width: 55%;
}

.skills__ux{
  width: 95%;
}

.skills__img{
  border-radius: .5rem;
}


/* ===== PROJECTS ===== */
.work__container{
  row-gap: 2rem;
}

.work__img{
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.575);
  border-radius: .5rem;
  overflow: hidden;
  cursor: pointer;
}

.work__img img{
  transition: 1s;
}

.work__img img:hover{
  transform: scale(1.2);
  filter: grayscale(1);
}

.hab__img{
  overflow: hidden;
  cursor: default;
  z-index: 0;
}

#seemore {
  width: 100%;
  text-align: center;
  margin-top: 3%;
  margin-left: auto;
  margin-right: auto;
}


/* ===== CONTACT ===== */
#contacto{
  margin-bottom: 1rem;
  padding-top: 1rem;
}
.contact__input{
  width: 100%;
  font-size: var(--normal-font-size);
  font-weight: var(--font-semi);
  padding: 1rem;
  border-radius: 15px;
  border: 1.7px solid var(--second-color);
  outline: none;
  margin-bottom: var(--mb-4);
  background-color: var(--nav-color);
  color: var(--second-color);
  resize: none;
}

.contact__input:focus{
  border: 1.7px solid var(--first-color);
}

.contact__button{
  display: block;
  outline: none;
  font-size: var(--normal-font-size);
  margin-left: auto;
  margin-bottom: var(--mb-4);
}

.contact__input::placeholder{
  color: var(--second-color);
}


/* ===== FOOTER ===== */
.footer{
  background-color: #72af7c;
  color: var(--second-color);
  text-align: center;
  display: block;
  z-index: var(--z-normal);
  position:relative;
  padding-top: var(--mb-4);
  padding-bottom: var(--mb-5);
}

.footer__title{
  font-size: 2rem;
  margin-bottom: var(--mb-4);
  font-weight: var(--font-semi);
}

.footer__social{
  margin-bottom: var(--mb-4);
}

.footer__icon{
  font-size: 1.5rem;
  color: var(--second-color);
  margin: 0 var(--mb-2)
}

.footer__icon:hover{
  color: var(--first-color);
}

.footer__copy{
  font-size: var(--small-font-size);
  text-align: center;
  color: var(--white-color);
  margin-top: 3rem;
  padding-bottom: 2rem;
}

/* Footer simplificado */
.footer__content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}

.footer__social {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin: 0;
}

.footer__icon {
  font-size: 1.3rem;
  color: var(--second-color);
  transition: color 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer__icon:hover {
  color: var(--first-color);
}

/* ===== MEDIA QUERIES =====*/

@media screen and (max-width: 359px){
  .send__img{
    width: 100%;
    padding-top: 0rem;
  }
}

@media screen and (max-width: 576px){
  .send__img{
    padding-top: 0rem;
  }
}

@media screen and (min-width: 576px){
  .send__container{
    align-items: center;
    max-width: 1024px;
  }

  .send__container1{
    align-items: center;
    max-width: 1024px;
  }

  .bd-container{
    grid-template-columns: 1.8fr 1fr;
  }

  .send__description{
    text-align: justify;
  }


  .send__img{
    width: 100%;
  }
}

@media screen and (min-width: 880px){
  body{
    margin: 0;
  }

  .section{
    padding-top: 4rem;
    padding-bottom: 3rem;
  }

  .section-title{
    margin-bottom: var(--mb-6);
  }

  .section-title::after{
    width: 80px;
    top: 3rem;
  }

  .nav{
    height: calc(var(--header-height) + 1rem);
  }

  .nav__list{
    display: flex;
    padding-top: 0;
  }

  .nav__item{
    margin-left: var(--mb-6);
    margin-bottom: 0;
  }

  .nav__toggle{
    display: none;
  }

  .nav__link{
    color: var(--second-color);
  }

  .home{
    height: 100vh;
  }

  .home__data{
    align-self: flex-end;
  }

  .home__social{
    padding-top: 0;
    padding-bottom: 2.5rem;
    flex-direction: row;
    align-self: flex-end;
  }

  .home__social-icon{
    margin-bottom: 0;
    margin-right: var(--mb-4);
  }

  .home__img{
    width: 397px;
    bottom: 0%;
  }

  .about__container, .skills__container{
    align-items: center;
    text-align: initial;
  }

  .about__img img{
    width: 300px;
  }

  .work__container{
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2,1fr);
    column-gap: 2rem;
  }

  .contact__form{
    width: 100%;
  }

  .contact__container{
    justify-items: center;
  }

  .send{
    background: none;
  }



  .send__container{
    background-color: var(--nav-color);
    padding: 2rem;
    border-radius: 1.5rem;
  }

  .send__container1{
    background-color: var(--nav-color);
    padding: 2rem;
    border-radius: 1.5rem;
  }
}

@media screen and (max-width: 710px){
  .hab__container{
    display: none;
  }
}

@media screen and (max-with: 768px){
  #back-to-top-btn{
    display:none !important;
    visibility: hidden !important;
  }
}

@media screen and (min-width: 968px){
  .send__img{
    width: 100%;
  }

  .send__container{
    column-gap: 5rem;
    max-width: 1024px;
  }

  .send__container1{
    column-gap: 5rem;
    max-width: 1024px;
  }
}



.hab__container{
  grid-template-columns: repeat(5, 1fr);
  grid-template-rows: repeat(2,1fr);
  column-gap: 6rem;
  row-gap: 6rem;
}

@media screen and (min-width: 1025px){
  .bd-grid{
    margin-left: auto;
    margin-right: auto;
  }

  .send__container{
    margin-left: auto;
    margin-right: auto;
    max-width: 1024px;
  }

  .send__container1{
    margin-left: auto;
    margin-right: auto;
    max-width: 1024px;
}

  .home__img{
    right: 10%;
    width: 457px;
    bottom: 15%;
  }
}


/* ===== BACK TO TOP BUTTON =====*/
#back-to-top-btn {
  z-index: 1000;
  display: none;
  position: fixed;
  bottom: 20px;
  right: 20px;
  font-size: 26px;
  width: 50px;
  height: 50px;
  background-color: var(--first-color);
  color: #fff;
  cursor: pointer;
  outline: none;
  border: 2px solid var(--first-color);
  border-radius: 50%;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  transition-property: background-color, color;
}

#back-to-top-btn:hover,
#back-to-top-btn:focus {
  background-color: var(--nav-color);
  color: var(--first-color);
}

/* = Animations = */
.btnEntrance {
  animation-duration: 0.5s;
  animation-fill-mode: both;
  animation-name: btnEntrance;
}

/* = fadeInUp = */
@keyframes btnEntrance {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.btnExit {
  animation-duration: 0.25s;
  animation-fill-mode: both;
  animation-name: btnExit;
}

/* = fadeOutDown = */
@keyframes btnExit {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
}



.hide {
  background: black;
  overflow: hidden;
  padding-left: 2%;
  padding-right: 2%;
  box-sizing: border-box;
  z-index: var(--z-fixed);
  font-size: 9rem;
}

.hide span {
  transform: translateY(100%);
  display: inline-block;
  padding-left: 2%;
  padding-right: 2%;
  box-sizing: border-box;
  z-index: var(--z-fixed);
}


/* ===== CUSTOM SCROLL BAR =====*/
body::-webkit-scrollbar{
  width: 10px;
  background-color:  var(--nav-color);
}

body::-webkit-scrollbar-thumb{
  background-color: var(--first-color);
  border-radius: 10px;
}

body::-webkit-scrollbar-thumb:hover{
  background-color: var(--first-color);
}

body::-webkit-scrollbar-thumb:active{
  background-color: var(--first-color);
}


/* ===== POPUP WORK=====*/

.overlay {
	background: rgba(0,0,0,.5);
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	align-items: center;
	justify-content: center;
	display: flex;
  visibility: hidden;
  z-index: 999;
}

.overlay.active {
  visibility: visible;
  overflow-y: hidden;
}

.popup {
	background: var(--nav-color);
	box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.3);
	border-radius: 28px 28px 25px 25px;
	padding: 20px;
	text-align: center;
  width: 700px;
  height: 710px;

	transition: .3s ease all;
	transform: scale(0.7);
  opacity: 0;
  visibility: hidden;
}

@media screen and (max-width: 451px){
  .popup{
    height: 750px;
  }
}

@media screen and (max-width: 375px){
  .popup{
    height: 770px;
  }
}


.popup .btn-cerrar-popup {
	font-size: 25px;
	line-height: 16px;
	display: block;
	text-align: right;
	transition: .3s ease all;
  color: #ffffff;
  position: absolute;
  right: 1.3rem;
  top: 1rem;
  z-index: 1;
}

.popup .btn-cerrar-popup:hover {
	color: var(--first-color);
}

.popup-img{
  max-width: 100%;
  display: block;
  margin: auto;
  width: 100%;
  height: 355px;
  border-radius: 25px 25px 0px 0px;
  object-fit: cover;
  object-position: top;
  position: absolute;
  top: 0px;
  left: 0px;
}

.popup h3 {
	font-size: 36px;
	font-weight: 600;
  margin-bottom: 10px;
  margin-top: 350px;
  opacity: 0;
  color: var(--second-color);
  border-bottom: 3px solid var(--second-color);
  text-align: left;
  padding-bottom: 15px;
}

.popup p {
  font-size: 15px;
  opacity: 0;
  color: var(--second-color);
  text-align: left;
}

.verpro{
  opacity: 0;
  display: none;
}

.popupbtn{
  margin-top: 10px;
}

/* ------------------------- */
/* ANIMACIONES */
/* ------------------------- */
.popup.active {	visibility: visible; transform: scale(1); opacity: 1; }
.popup.active h3 { opacity: 1; }
.popup.active p { opacity: 1; }
.popup.active .contenedor-inputs { opacity: 1; }
.popup.active .verpro { display:inline-block ;opacity: 1; }



/* ========== SKILLS SLIDER ==========*/

.sliderlogo{
  max-width: 1024px;
  text-align: center;
  margin: auto;
  padding-bottom: 1rem;
  padding-top: 5rem;
}

.sliderlogo2{
  max-width: 1024px;
  text-align: center;
  margin: auto;
  padding-bottom: 1rem;
}


/* Slider */
.slick-slide {
  margin: 0px 20px;
}

.slick-slide img {
  width: 100%;
}

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;

  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;

  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}



.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;

  display: block;
}

.slick-track:before,
.slick-track:after {
  display: table;

  content: '';
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;

  height: 100%;
  min-height: 1px;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}



.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;

  height: auto;

  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}


/* ========== FOOTER WAVES ==========*/

.flex { /*Flexbox for containers*/
  justify-content: center;
  align-items: center;
}

.waves {
  position:relative;
  width: 100%;
  height:15vh;
  margin-bottom:-7px; /*Fix for safari gap*/
  min-height:100px;
  max-height:150px;
}

.content {
  position:relative;
  text-align:center;
}

/* Animation */

.parallax > use {
  animation: move-forever 25s cubic-bezier(.55,.5,.45,.5)     infinite;
}
.parallax > use:nth-child(1) {
  animation-delay: -2s;
  animation-duration: 7s;
}
.parallax > use:nth-child(2) {
  animation-delay: -3s;
  animation-duration: 10s;
}
.parallax > use:nth-child(3) {
  animation-delay: -4s;
  animation-duration: 13s;
}
.parallax > use:nth-child(4) {
  animation-delay: -5s;
  animation-duration: 20s;
}
@keyframes move-forever {
  0% {
   transform: translate3d(-90px,0,0);
  }
  100% { 
    transform: translate3d(85px,0,0);
  }
}
/*Shrinking for mobile*/
@media (max-width: 768px) {
  .waves {
    height:90px;
    min-height:90px;
  }
  .content {
    height:30vh;
  }
  h1 {
    font-size:24px;
  }
}

@media (max-width: 880px){
  :root{
    --wave1-color: #a1d6ac;
    --wave2-color: #8ac59e;
    --wave3-color: #81c592;
    --wave4-color: #72af84;
  }

  body.dark-theme{
    --wave1-color: #a1d6bd;
    --wave2-color: #8ac5a1;
    --wave3-color: #81c58c;
    --wave4-color: #72af7c;
  }

  .footer{
    color: var(--second-color);
  }
  .footer__icon{
    color: var(--second-color);
  }
  .footer__icon:hover{
    color: var(--first-color);
  }
  
  .footer__content {
    padding: 0 1rem;
  }
  
  .footer {
    padding: 1rem 0;
    min-height: 70px;
  }
  
  .footer__content {
    gap: 0.6rem;
  }
  
  .footer__social {
    gap: 0.8rem;
  }
  
  .footer__icon {
    font-size: 1.2rem;
  }
  
  .footer__copy {
    font-size: 0.75rem;
  }
}




/* ===== FACUNDO APARICIO ===== */
/* ===== FACUNDO APARICIO ===== */
/* ===== FACUNDO APARICIO ===== */

/* ================================================================================= */
/* COMIENZO DE ESTILOS PARA LA NUEVA SECCIÓN DE PROYECTOS
/* ================================================================================= */

/* ----- Estilos para las tarjetas de proyecto en index.html ----- */

.work__container {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.project-card {
    background-color: var(--container-color);
    border-radius: .5rem;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    overflow: hidden;
    transition: transform .3s, box-shadow .3s;
    display: flex;
    flex-direction: column;
}

.project-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0,0,0,0.15);
}

.project-card__link {
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.project-card__image-container {
    width: 100%;
    height: 200px;
    overflow: hidden;
}

.project-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s;
}

.project-card:hover .project-card__image {
    transform: scale(1.05);
}

.project-card__content {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1; /* Hace que el contenido ocupe el espacio disponible */
}

.project-card__title {
    font-size: var(--h2-font-size);
    margin-bottom: var(--mb-2);
    color: var(--title-color);
}

.project-card__description {
    font-size: var(--normal-font-size);
    margin-bottom: var(--mb-4);
    flex-grow: 1; /* Empuja el botón hacia abajo */
}

.project-card__button {
    display: inline-block;
    align-self: flex-start; /* Alinea el botón a la izquierda */
    margin-top: auto; /* Pega el botón al final de la tarjeta */
}


/* ----- Estilos para la página de detalle (proyecto.html) ----- */

.project-detail-section {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

.project-detail__container {
    max-width: 900px;
    margin-left: var(--mb-2);
    margin-right: var(--mb-2);
}

.project-detail__title {
    font-size: var(--big-font-size);
    color: var(--title-color);
    text-align: center;
    margin-bottom: var(--mb-4);
}

.project-detail__main-img {
    width: 100%;
    border-radius: .5rem;
    margin-bottom: var(--mb-4);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.project-detail__info {
    background-color: var(--container-color);
    padding: 2rem;
    border-radius: .5rem;
    box-shadow: 0 4px 8px rgba(0,0,0,0.05);
}

.project-detail__info h2 {
    font-size: var(--h1-font-size);
    color: var(--title-color);
    margin-top: var(--mb-4);
    margin-bottom: var(--mb-2);
    border-bottom: 2px solid var(--first-color);
    padding-bottom: .5rem;
}

.project-detail__description p {
    font-size: var(--normal-font-size);
    line-height: 1.7;
    margin-bottom: 1rem;
}

.project-detail__tags {
    margin-top: 1rem;
    margin-bottom: 2rem;
}

.project-detail__tag {
    display: inline-block;
    background-color: var(--first-color-lighten);
    color: var(--first-color);
    padding: .25rem .75rem;
    border-radius: 1rem;
    font-size: var(--small-font-size);
    margin-right: .5rem;
    margin-bottom: .5rem;
    font-weight: var(--font-semi-bold);
}

.project-detail__buttons {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: var(--mb-4);
}

.project-detail__gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.project-detail__gallery-img {
    width: 100%;
    border-radius: .5rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.project-detail__back-link {
    text-align: center;
    margin-top: var(--mb-6);
}

@media screen and (min-width: 768px){
    .project-detail__container {
        margin-left: auto;
        margin-right: auto;
    }
}

/* ================================================================================= */
/* FIN DE ESTILOS PARA LA NUEVA SECCIÓN DE PROYECTOS
/* ================================================================================= */

.agendar-hora-btn:disabled {
    background: #ccc !important;
    color: #888 !important;
    border: 2px solid #ccc !important;
    cursor: not-allowed !important;
    opacity: 0.7;
}