@charset "utf-8";
/* CSS Document */

:root {
      --primary: #ff6f61;
      --secondary: #333;
      --beige: #F5F5DC;
      --olive: #8F9779;
    }

    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    body {
      font-family: 'Poppins', Arial, sans-serif;
      color: var(--secondary);
      background-color: var(--beige);
      min-height: 100vh;
      display: flex;
      flex-direction: column;
      align-items: center;
    }

    /* NAVBAR FLEXBOX */
    nav {
      display: flex;
      align-items: center;
      justify-content: space-between;
      background-color: var(--olive);
      box-shadow: 0 4px 10px rgba(0,0,0,0.1);
      transition: background 0.4s, box-shadow 0.4s;
      padding: 0 30px;
      min-height: 70px;
      width: 100%;
      position: sticky;
      top: 0;
      z-index: 100;
    }

    nav:hover {
      background-color: #000 !important;
      box-shadow: 0 8px 24px rgba(0,0,0,0.4);
    }

    .nav-title {
      color: #fff;
      font-size: 2rem;
      font-weight: bold;
      font-family: inherit;
      letter-spacing: 1px;
      user-select: none;
    }

    .nav-links {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .nav-links a {
      text-decoration: none;
      color: #fff;
      padding: 15px 20px;
      font-weight: bold;
      transition: color 0.3s, background 0.3s, box-shadow 0.4s;
      box-shadow: 0 2px 8px rgba(0,0,0,0.08);
      border-radius: 8px;
      display: flex;
      align-items: center;
      gap: 8px;
      margin: 6px 6px;
    }

    .nav-links a:hover {
      color: var(--olive);
      background: #fff;
      box-shadow: 0 4px 16px rgba(255,111,97,0.3);
    }

    /* Estilos para la portada */
    .portada-container {
      background: #fff;
      border-radius: 20px;
      box-shadow: 0 8px 32px rgba(0,0,0,0.18);
      max-width: 480px;
      width: 95%;
      margin: 40px auto 60px;
      padding: 48px 36px 36px 36px;
      text-align: center;
      font-family: 'Montserrat', Arial, sans-serif;
      color: var(--secondary);
      animation: fadeIn 1s ease forwards;
    }

    .portada-logo {
      font-size: 4rem;
      color: var(--olive);
      margin-bottom: 12px;
    }

    .portada-title {
      font-size: 2.4rem;
      font-weight: 700;
      color: var(--olive);
      margin: 0 0 6px 0;
      letter-spacing: 2px;
    }

    .generacion {
      font-size: 1.1rem;
      font-weight: 500;
      color: var(--olive);
      margin-bottom: 28px;
      letter-spacing: 1px;
    }

    .datos-portada {
      text-align: left;
      font-size: 1.15rem;
      line-height: 2.2;
      color: var(--secondary);
      padding: 0 8px;
    }

    .datos-portada span {
      font-weight: 700;
      color: var(--olive);
      display: inline-block;
      width: 130px;
    }

    .web-link {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-top: 6px;
      margin-bottom: 6px;
      color: var(--olive);
      font-size: 1.1rem;
      word-break: break-word;
      text-decoration: none;
    }

    .web-link i {
      color: var(--olive);
      font-size: 1.2rem;
    }

    .footer-portada {
      margin-top: 36px;
      font-size: 1rem;
      color: #666;
      letter-spacing: 1px;
    }

    @keyframes fadeIn {
      from {
        opacity: 0;
        transform: translateY(30px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

    /* Responsive */
    @media (max-width: 600px) {
      .portada-container {
        padding: 28px 16px 28px 16px;
      }
      .portada-title {
        font-size: 1.8rem;
      }
      .datos-portada {
        font-size: 1rem;
      }
    
	  footer {
      background: #111;
      color: #fff;
      text-align: center;
      padding: 24px 10px 20px 10px;
      margin-top: 50px;
      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
      font-size: 1.08rem;
      box-shadow: 0 -4px 20px rgba(0,0,0,0.25);
      border-radius: 0 0 16px 16px;
      letter-spacing: 1px;
      font-weight: bold;
      text-shadow: 1px 1px 4px rgba(0,0,0,0.25);
      border-top: 3px solid var(--olive);
      position: relative;
    }