body {
    margin: 0;
    font-family: 'Futura';
}


header {
    background-color: #FFD600;
    width: 100%;
    height: 708px;
    position: relative;
    overflow: hidden;
    
}


@font-face {
    font-family: "Futura Light";
    src: url('fonts/FUTURAL.woff') format("WOFF");
    font-weight: 300;
  }

  .intro p {
    font-family: "Futura Light";
    margin-top: 16px;
  }

  .bubble-container {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
    overflow: hidden;
    z-index:0;
}



@keyframes bubbles {
    0% { transform: translateY(0) translateX(0) scale(1); opacity: 0.1; }
    50% { transform: translateY(-500px) translateX(50px); opacity: 0.7; }
    100% { transform: translateY(-1000px) translateX(-50px) scale(1.2); opacity: 0; }
}

.bubble {
    position: absolute;
    bottom: -100px;
    background: rgba(255, 255, 255, 0.7);
    border-radius: 50%;
    animation: bubbles 20s linear infinite;
}

.bubble:nth-child(1) {
    left: 20%;
    width: 40px;
    height: 40px;x`
    animation-duration: 7s;
    animation-delay: 0s;
}

.bubble:nth-child(2) {
    left: 40%;
    width: 60px;
    height: 60px;
    animation-duration: 10s;
    animation-delay: 3s;
}

.bubble:nth-child(3) {
    left: 60%;
    width: 80px;
    height: 80px;
    animation-duration: 15s;
    animation-delay: 5s;
}

.bubble:nth-child(4) {
    left: 80%;
    width: 50px;
    height: 50px;
    animation-duration: 5s;
    animation-delay: 2s;
}

.bubble:nth-child(5) {
    left: 50%;
    width: 70px;
    height: 70px;
    animation-duration: 10s;
    animation-delay: 1s;
}

.bubble:nth-child(6) {
    left: 30%;
    width: 90px;
    height: 90px;
    animation-duration: 7s;
    animation-delay: 4s;
}

.bubble:nth-child(7) {
    left: 70%;
    width: 100px;
    height: 100px;
    animation-duration: 10s;
    animation-delay: 6s;
}

.bubble:nth-child(8) {
    left: 10%;
    width: 110px;
    height: 110px;
    animation-duration: 15s;
    animation-delay: 3s;
}

.bubble:nth-child(9) {
    left: 90%;
    width: 50px;
    height: 50px;
    animation-duration: 7s;
    animation-delay: 7s;
}

.bubble:nth-child(10) {
    left: 60%;
    width: 80px;
    height: 80px;
    animation-duration: 10s;
    animation-delay: 5s;
}

nav {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    align-items: center;
    padding: 24px 32px;
    background: transparent;
    z-index:1;
}

nav img {
    height: 65px;
    width: 65px;
    transition: transform 0.5s ease-in-out;
}

nav img:hover {
    transform: rotate(360deg);
}

nav img {
    transform: rotate(0deg);
    transition: transform 0.5s ease-in-out;
}

.header-content {
    display: flex;
    justify-content: center;
    align-items: center;
    /* height: 100%; */
    position:relative;
    z-index:2;
}

.avatar img {
    height: 349px;
    width: 349px;
}

.intro {
    margin-left: 54px;
    max-width: 500px;
}

h1 {
    font-family: 'Futura';
    font-weight: bold;
    font-size: 48px;
    letter-spacing: 20%;
    color: black;
    margin-bottom: 0;
}

h2 {
    font-family: 'Futura';
    font-weight: normal;
    font-size: 24px;
    letter-spacing: 0%;
    color: black;
    margin:8px auto;
}

h2 .bold {
    font-family: 'Futura';
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 20%;
}

p {
    font-family: 'Futura';
    font-size: 22px;
    color: black;
}

button {
    font-family: 'Futura';
    font-weight: bold;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 10%;
    color: black;
    background-color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 50px;
    cursor: pointer;
    transition: background-color 0.5s ease, color 0.5s ease;
    margin: auto;
}

button:hover {
    background-color: black;
    color: #FFD600;
}

.quote {
    background-color: white;
    height: 240px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.quote p {
    font-family: 'Futura';
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 6%;
    color: black;
    font-size: 16px;
}

.quote .highlight {
    background-color: #FFD600;
}

.quote .italic {
    font-family: 'Futura';
    font-style: italic;
}

.projects {
    width: 100%;
}

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

.project {
    position: relative;
    width: 100%;
    aspect-ratio: 1;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.project-logo img {
    height: 150px;
    transition: transform 0.5s ease;
}

.project-hover {
    position: absolute;
    top: 100%;
    left: 50%;
    width: 87%;
    height: 80%;
    background-color: transparent;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transition: top 0.5s ease;
    opacity: 0;
    transform: translateX(-50%);
    text-align: center;
}

.project:hover .project-logo img {
    transform: translateY(-90%) scale(0.66);
}

.project:hover .project-hover {
    top: 20%;
    opacity: 1;
}

.project-hover h3 {
    font-family: 'Futura';
    font-weight: normal;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0%;
    margin:0 auto;
}

h3 .bold {
    font-weight: bold;;
}

.project-hover .info-block {
    margin: 16px 0;
    text-align: center;
}

.project-hover h4 {
    font-family: 'Futura';
    font-weight: bold;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 10%;
    margin-bottom:2px;
}

.project-hover p {
    font-family: 'Futura';
    font-size: 12px;
    color: white;
}

.project-hover button {
    font-family: 'Futura';
    font-weight: bold;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 10%;
    color: #BF00A1;
    background-color: white;
    border: none;
    border-radius: 20px;
    padding: 5px 10px;
    cursor: pointer;
    display: flex;
    align-items: center;
    transition: background-color 0.5s ease;
}



.project-hover button:hover {
    background-color: #FFD600;
}

/* Styles for other projects */
.project:nth-child(2) .project-hover button {
    color: #702784;
}

.project:nth-child(2) .project-hover button::after {
    color: #702784;
}

.project:nth-child(3) .project-hover button {
    color: #003478;
}

.project:nth-child(3) .project-hover button::after {
    color: #003478;
}

.project:nth-child(4) .project-hover button {
    color: #49938D;
}

.project:nth-child(4) .project-hover button::after {
    color: #49938D;
}

.project:nth-child(5) .project-hover button {
    color: #002B4B;
}

.project:nth-child(5) .project-hover button::after {
    color: #002B4B;
}


footer {
    width: 100%;
}

.footer-main {
    background-color: #fff;
    height: 240px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.footer-content {
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-content p {
    font-family: 'Futura', sans-serif;
    font-weight: bold;
    font-size: 17px;
    text-transform: uppercase;
    color: #000;
    margin-right: 16px;
}

/* Estilos para las imágenes que actuarán como botones */
.footer-content a {
    margin-left: 8px;
}

.footer-content img {
    height: 56px;
    width: auto;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.footer-content img:hover {
    transform: scale(1.1); /* Efecto hover para agrandar las imágenes */
}

.footer-bottom {
    background-color: #FFD600;
    height: 40px;
}


/* Responsiveness */
@media only screen and (min-width:1401px) and (max-width: 1550px) {
    .project-grid {
        grid-template-columns: repeat(4, 1fr);
    }
    .project {
        aspect-ratio:0.8;
    }
}

@media only screen and (min-width:1301px) and (max-width: 1400px) {
    .project-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .project {
        aspect-ratio:1;
    }
    .project-logo img {
        height: 220px;
    }
    .project:hover .project-logo img {
        transform: translateY(-70%) scale(0.66);
    }
}

@media only screen and (min-width:1101px) and (max-width: 1300px) {
    .project-logo img {
        height: 180px;
    }
    .project {
        aspect-ratio:1.3;
    }
    .project:hover .project-logo img {
        transform: translateY(-80%) scale(0.66);
    }
    .project-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media only screen and (min-width:1041px) and (max-width: 1100px) {
    .project-logo img {
        height: 180px;
    }
    .project {
        aspect-ratio:1;
    }
    .project:hover .project-logo img {
        transform: translateY(-80%) scale(0.66);
    }
    .project-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}




@media only screen and (min-width:901px) and (max-width: 1040px) {
    .project {
        aspect-ratio:1;
    }
    .project-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    header {
        height: 100%;
       padding-bottom:96px;
   }
   nav img {
       height: 48px;
       width: 48px;
   }
   nav {
       width: 100%;
       display: flex;
       padding:0;
       margin:24px;
       background: transparent;
       z-index: 1;
       justify-content: left;
   }
   .intro {
       text-align: center;
       padding: 0 24px;
   }

   .quote {
       padding: 0 24px;
   } 
   .avatar img {
       height: 150px;
       width: 150px;
   }
   .header-content {
       flex-direction: column;
   }

   .intro {
       margin-left: 0;
       text-align: center;
   }

   nav img {
       margin: 0;
   }
}
@media only screen and (min-width:768px) and (max-width: 900px) {
    .project {
        aspect-ratio:0.9;
    }
    .project-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    header {
        height: 100%;
       padding-bottom:96px ;
   }
   nav img {
       height: 48px;
       width: 48px;
   }
   nav {
       width: 100%;
       display: flex;
       padding:0;
       margin:24px;
       background: transparent;
       z-index: 1;
       justify-content: left;
   }
   .intro {
       text-align: center;
       padding: 0 24px;
   }

   .quote {
       padding: 0 24px;
   } 
   .avatar img {
       height: 150px;
       width: 150px;
   }
   .header-content {
       flex-direction: column;
   }

   .intro {
       margin-left: 0;
       text-align: center;
   }

   nav img {
       margin: 0;
   }
}
@media only screen and (min-width:601px) and (max-width: 767px) {
    .project {
        aspect-ratio:0.6;
    }
    .project-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .project-logo img {
        height: 180px;
    }
    .project:hover .project-logo img {
        transform: translateY(-70%) scale(0.66);
    }
    header {
        height: 100%;
       padding-bottom:96px ;
   }
   nav img {
       height: 48px;
       width: 48px;
   }
   nav {
       width: 100%;
       display: flex;
       padding:0;
       margin:24px;
       background: transparent;
       z-index: 1;
       justify-content: left;
   }
   .intro {
       text-align: center;
       padding: 0 24px;
   }

   .quote {
       padding: 0 24px;
   } 
   .avatar img {
       height: 150px;
       width: 150px;
   }

   .header-content {
       flex-direction: column;
   }

   .intro {
       margin-left: 0;
       text-align: center;
   }

   nav img {
       margin: 0;
   }
}

@media only screen and (min-width:501px) and (max-width: 600px) {
    .project {
        aspect-ratio:0.5;
    }
    .project-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .project:hover .project-logo img {
        transform: translateY(-110%) scale(0.66);
    }
    header {
        height: 100%;
       padding-bottom:96px ;
   }
   nav img {
       height: 48px;
       width: 48px;
   }
   nav {
       width: 100%;
       display: flex;
       padding:0;
       margin:24px;
       background: transparent;
       z-index: 1;
       justify-content: left;
   }
   .intro {
       text-align: center;
       padding: 0 24px;
   }

   .quote {
       padding: 0 24px;
   } 
   .avatar img {
       height: 150px;
       width: 150px;
   }

   .header-content {
       flex-direction: column;
   }

   .intro {
       margin-left: 0;
       text-align: center;
   }

   nav img {
       margin: 0;
   }
}

@media only screen and (min-width:431px) and (max-width: 500px) {
    .project {
        aspect-ratio:1;
    }
    .project-grid {
        grid-template-columns: repeat(1, 1fr);
    }
    header {
        height: 100%;
       padding-bottom:96px ;
   }
   nav img {
       height: 48px;
       width: 48px;
   }
   nav {
       width: 100%;
       display: flex;
       padding:0;
       margin:24px;
       background: transparent;
       z-index: 1;
       justify-content: left;
   }
   .intro {
       text-align: center;
       padding: 0 24px;
   }

   .quote {
       padding: 0 24px;
   } 
   .avatar img {
       height: 150px;
       width: 150px;
   }
   
   .header-content {
       flex-direction: column;
   }

   .intro {
       margin-left: 0;
       text-align: center;
   }

   nav img {
       margin: 0;
   }
}


@media only screen and (max-width: 430px) {
    
    header {
         height: 100%;
        padding-bottom:96px ;
    }
    nav img {
        height: 48px;
        width: 48px;
    }
    nav {
        width: 100%;
        display: flex;
        padding:0;
        margin:24px;
        background: transparent;
        z-index: 1;
        justify-content: left;
    }
    .intro {
        text-align: center;
        padding: 0 24px;
    }

    .quote {
        padding: 0 24px;
    } 
    .avatar img {
        height: 150px;
        width: 150px;
    }
    .project-grid {
        grid-template-columns: repeat(1, 1fr);
    }
    .header-content {
        flex-direction: column;
    }

    .intro {
        margin-left: 0;
        text-align: center;
    }

    nav img {
        margin: 0;
    }
    .project:hover .project-hover {
        top:16%;
    }
    .project-hover {
        
    }
    .project {
        aspect-ratio:0.85;
    }
    .project:hover .project-logo img {
        transform: translateY(-100%) scale(0.66);
    }
}

@media only screen and  (min-width:375px) and (max-width: 429px) { 
    .project {
        aspect-ratio:0.7;
    }
    .project-logo img {
        height: 180px;
    }
    .project:hover .project-logo img {
        transform: translateY(-100%) scale(0.66);
    }
}

@media only screen and  (min-width:320px) and (max-width: 374px) { 
    .project {
        aspect-ratio:0.65;
    }
    .project-logo img {
        height: 155px;
    }
    .project:hover .project-logo img {
        transform: translateY(-90%) scale(0.66);
    }
}


@media only screen and  (min-width:240px) and (max-width: 319px) { 
    .project {
        aspect-ratio:0.6;
    }
    .project-logo img {
        height: 130px;
    }
    .project:hover .project-logo img {
        transform: translateY(-120%) scale(0.66);
    }
}