    body {
      margin: 0;
      font-family: Arial, sans-serif;
      background: #5c1eb8;
      color: white;
    }

    header {
      background: white;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 5px 50px;
      position: relative;
      overflow: hidden;
    }

    header img {
      height: 90px;
      z-index: 1;
    }

    nav a {
      margin-left: 30px;
      text-decoration: none;
      color: #9b30ff;
      font-weight: bold;
      z-index: 1;
      position: relative;
    }

    /* Puntitos en el header */
    header::after {
        content: "";
        position: absolute;
        top: 0; right: 0; bottom: 0; left: 0;
        background-image: radial-gradient(circle, rgba(0,0,0,0.5) 3px, transparent 1px);
        background-size: 15px 15px;
        
        -webkit-mask-image: linear-gradient(to right, rgba(0,0,0,1), transparent);
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-size: cover;
        mask-image: linear-gradient(to right, rgba(0,0,0,1), transparent);
        mask-repeat: no-repeat;
        mask-size: cover;
        
        opacity: 0.2;
        pointer-events: none;
    }

    main {
        text-align: center;
        padding: 100px 20px;
        min-height: 70vh;
        position: relative;
        overflow: hidden;
        background: url('../img/fondo.png') no-repeat center center;
        background-size: cover;
    }
    main::before {
        content: "";
        position: absolute;
        top:0; left:0; right:0; bottom:0;
        background: rgba(0,0,0,0.2);
        z-index: 0;
    }
    main h1, main img {
        position: relative;
        z-index: 1;
    }

    main h1 {
      font-size: 2em;
      margin-bottom: 30px;
      position: relative;
      z-index: 1;
    }
    main img {
      width: 250px;
      position: relative;
      z-index: 1;
    }

footer {
  background: #9b30ff;
  color: white;
  padding: 40px 20px;
  text-align: left;
}

.footer-container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}

.footer-left {
  flex: 1;
  min-width: 200px;
  display: flex;             
  flex-direction: column;   
  justify-content: center;    
  align-items: center;       
  gap: 10px;                 
  height: 100%;              
}

.footer-left .footer-logo {
  width: 150px;              
  display: block;
}

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

.footer-center {
  flex: 1;
  min-width: 250px;
  text-align: center;
}
.footer-center h3 {
  margin-bottom: 10px;
}
.footer-links a {
  color: white;
  text-decoration: none;
  margin: 0 5px;
}
.footer-links a:hover {
  text-decoration: underline;
}
.footer-social {
  margin-top: 10px;
  display: flex;
  justify-content: center;
  gap: 10px; 
}

.footer-social a img {
  width: 40px;   
  height: 40px;
  transition: transform 0.2s;
}

.footer-social a img:hover {
  transform: scale(1.2); 
}


.footer-right {
  flex: 1;
  min-width: 200px;
  text-align: right;
}
.footer-right a {
  color: white;
  text-decoration: none;
  display: block;
  margin-bottom: 5px;
}
.footer-right a:hover {
  text-decoration: underline;
}

.footer-copy {
  text-align: center;
  margin-top: 20px;
  font-size: 0.9em;
  color: #ccc;
}


    