
        /* --- HERO SECTION --- */
        .hero-section {
            position: relative;
            width: 100%;
            height: 100vh;
            background-size: cover;
            background-position: center;
            display: flex;
            align-items: center;
            padding: 60px 0;
        }

        /* Página 1 */
        .hero-gestion {
            background-image: url('https://magistermineria.usach.cl/wp-content/uploads/2026/01/departamento-de-ingenieria-en-minas-1.webp');
        }

        /* Página 2 */
        .hero-tecnologico {
            background-image: url('https://magistermineria.usach.cl/wp-content/uploads/2026/01/magister-tecnologico-en-mineria-sostenible.webp');
            /* background-repeat: no-repeat;
            background-attachment: fixed;
            overflow: hidden; */
        }

        .overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.6);
            z-index: 1;
        }

        .hero-container {
            position: relative;
            z-index: 2;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            align-items: center;
            gap: 40px;
        }

        .hero-info {
            flex: 1;
            min-width: 300px;
            color: white;
        }

        .badge {
            background-color: #26b4af;
            padding: 8px 12px;
            font-size: 16px;
            border-radius: 6px;
            display: inline-block;
            margin-bottom: 20px;
        }

        .hero-info h1 {
            font-size: 3rem;
            font-weight: 800;
            margin-bottom: 15px;
            line-height: 1.1;
        }

        .subtitle {
            font-size: 1.4rem;
            margin-bottom: 30px;
            font-weight: 500;
        }

        .info-list {
            list-style: none;
        }

        .info-list li {
            margin-bottom: 10px;
            position: relative;
            padding-left: 20px;
            font-size: 1.1rem;
        }

        .info-list li::before {
            content: "•";
            color: #e67e22;
            position: absolute;
            left: 0;
            font-weight: bold;
        }

        /* FORMULARIO */
        .form-card {
            background: rgba(255, 255, 255, 0.15);
            backdrop-filter: blur(10px);
            padding: 40px;
            width: 100%;
            max-width: 450px;
            border-radius: 8px;
            color: white;
            border: 1px solid rgba(255, 255, 255, 0.2);
        }

        .form-card h2 {
            font-size: 1.6rem;
            margin-bottom: 5px;
        }

        .form-card p {
            font-size: 0.9rem;
            margin-bottom: 25px;
            opacity: 0.8;
        }

        form input {
            width: 100%;
            padding: 12px;
            margin-bottom: 15px;
            border: none;
            border-radius: 4px;
        }

        form button {
            width: 100%;
            padding: 15px;
            background-color: #e67e22;
            color: white;
            border: none;
            font-weight: bold;
            cursor: pointer;
            transition: 0.3s;
            border-radius: 4px;
        }

        form button:hover {
            background-color: #d35400;
            transform: translateY(-2px);
        }

        /* --- SECCIÓN RAZONES (GRID) --- */
        .section-title {
            text-align: center;
            color: #26b4af;
            font-size: 2.5rem;
            font-weight: 700;
        }

        .grid-container {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            width: 100%;
        }

        .grid-item {
            min-height: 350px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            padding: 30px;
            color: white;
        }

        .text-box h3 {
            font-size: 1.5rem;
            margin-bottom: 4px;
            font-weight: 700;
        }

        .text-box p{
            font-size: 0.85rem;
            line-height: 1.4;
            font-weight: 300;
        }

        .orange {
            background-color: #e67e22;
        }

        .dark {
            background-color: #3d4348;
        }

        .teal {
            background-color: #26b4af;
        }

        .image-box {
            background-size: cover;
            background-position: center;
        }

        .bg-1 {
            background-image: url('https://magistermineria.usach.cl/wp-content/uploads/2026/01/oportunidad-laboral.webp');
        }

        .bg-2 {
            background-image: url('https://magistermineria.usach.cl/wp-content/uploads/2026/01/liderazgo-y-futuro.webp');
        }

        .bg-3 {
            background-image: url('https://magistermineria.usach.cl/wp-content/uploads/2026/01/lider-mundial.webp');
        }

        .bg-4 {
            background-image: url('https://magistermineria.usach.cl/wp-content/uploads/2026/01/impacto-economico.webp');
        }

        /* --- DESCRIPCIÓN Y DETALLES --- */
        .description-section {
            padding: 80px 0;
        }

        .flex-container {
            display: flex;
            align-items: center;
            gap: 40px;
            flex-wrap: wrap;
        }

        .image-wrapper,
        .text-content {
            flex: 1;
            min-width: 300px;
        }

        .rounded-img {
            width: 100%;
            border-top-left-radius: 60px;
            border-bottom-right-radius: 60px;
        }

        .title-orange {
            color: #e67e22;
            font-size: 2.2rem;
            margin-bottom: 10px;
            font-weight: 700;
        }

        .title-teal{
            color: #26b4af;
            font-size: 2.4rem;
            margin-bottom: 10px;
            font-weight: 700;
        }

        .text-teal {
            color: #26b4af;
        }

        .details-section {
            padding: 60px 0;
            background-color: #F8F9FA;
        }

        .dept-title {
            color: #26b4af;
            font-size: 1.3rem;
            margin-bottom: 30px;
            font-weight: bold;
        }

        .details-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 50px;
        }

        .info-item {
            display: flex;
            gap: 15px;
            margin-bottom: 20px;
        }

        .info-item strong {
            color: #26b4af;
            display: block;
            margin-bottom: 5px;
        }

        /* BANNER POSTULA */
        .cta-banner {
            display: flex;
            align-items: center;
            gap: 30px;
            margin-top: 40px;
        }

        .postula-btn {
            border: 2px solid white;
            color: white;
            text-decoration: none;
            padding: 15px 30px;
            font-weight: bold;
            border-radius: 30px;
            transition: 0.3s;
            white-space: nowrap;
        }

        .postula-btn:hover {
            background-color: white;
            color: #e67e22;
        }

        /* --- LÍNEAS DE INVESTIGACIÓN --- */
        .research-section {
            background: #fff;
        }

        .section-title-teal {
            text-align: center;
            color: #26b4af;
            font-size: 2.4rem;
            font-weight: 900;
        }

        .research-container {
            display: flex;
            justify-content: center;
            gap: 30px;
            flex-wrap: wrap;
        }

        .research-card {
            flex: 1;
            max-width: 500px;
            min-width: 300px;
            padding: 20px;
            border-radius: 20px;
            color: white;
        }

        .dark-card {
            background-color: #3d4348;
        }

        .teal-card {
            background-color: #26b4af;
        }

        .orange-card {
            background-color: #e67e22;
        }

        .card-header {
            display: flex;
            align-items: center;
            gap: 20px;
            margin-bottom: 10px;
        }

        .card-header h3 {
            font-size: 1.5rem;
            font-weight: 700;
        }

        .icon-img-main {
            width: 60px;
            height: auto;
            filter: brightness(0) invert(1);
        }

        /* --- CAPACIDADES (CHECKS CSS) --- */
        .skills-section {
            padding-bottom: 80px;
        }

        .section-title-orange {
            text-align: center;
            color: #e67e22;
            font-size: 2.4rem;
            font-weight: 700;
        }

        .skills-grid{
            display: grid;
        }

        .skills-grid-5 {
            grid-template-columns: repeat(5, 1fr);
            gap: 15px;
        }

        .skills-grid-4 {
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
        }

        .skill-item {
            background: white;
            border: 1px solid #eee;
            border-radius: 15px;
            padding: 30px 25px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
        }

        .skill-icon-container {
            height: 80px;
            display: flex;
            justify-content: center;
            align-items: center;
            margin-bottom: 15px;
        }

        .skill-icon-img {
            max-width: 70px;
        }

        .skill-item p{
            text-align: center;
            margin-bottom: 10px;
            font-size: 0.85rem;
            color: #555;
            line-height: 1.3;
        }

        /* Lógica Global de Checks Naranjas CSS */
        .skill-item ul,
        .electivos-list {
            list-style: none;
            padding: 0;
        }

        .skill-item li,
        .electivos-list li {
            position: relative;
            padding-left: 30px;
            margin-bottom: 10px;
            font-size: 0.85rem;
            color: #555;
            line-height: 1.3;
        }

        .skill-item li::before,
        .electivos-list li::before {
            content: "";
            position: absolute;
            left: 2px;
            top: 2px;
            width: 15px;
            height: 15px;
            background-color: #e67e22;
            border-radius: 50%;
        }

        .skill-item li::after,
        .electivos-list li::after {
            content: "";
            position: absolute;
            left: 7px;
            top: 4px;
            width: 5px;
            height: 9px;
            border: solid white;
            border-width: 0 2px 2px 0;
            transform: rotate(45deg);
        }

        /* --- MALLA CURRICULAR --- */
        .curriculum-section {
            padding: 80px 0;
            background-color: #F8F9FA;
            text-align: center;
        }

        .curriculum-subtitle {
            color: #666;
            font-size: 1.2rem;
        }

        /* Botón descarga (Oculto en escritorio) */
        .download-button-container {
            display: none;
            margin-bottom: 40px;
        }

        .download-btn {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            background-color: #e67e22;
            color: white;
            text-decoration: none;
            padding: 15px 30px;
            border-radius: 5px;
            font-weight: bold;
        }

        .year-row {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 20px;
            margin-bottom: 15px;
        }

        .year-header {
            background-color: #4db6ac;
            color: white;
            padding: 12px;
            border-radius: 8px;
            font-weight: bold;
        }

        .semester-row {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 15px;
            margin-bottom: 20px;
        }

        .semester-header {
            background-color: #3d4348;
            color: white;
            padding: 10px;
            border-radius: 8px;
            font-size: 0.9rem;
            font-weight: 700;
        }

        .subjects-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 15px;
        }

        .semester-column {
            display: grid;
            grid-template-rows: auto;
            /* Crea filas automáticas */
            gap: 15px;
            /* Aquí es donde verás el espacio vertical */
            transition: transform 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            cursor: pointer;
        }

        .subjects-grid .semester-column:hover,
        .subjects-grid .semester-column.active {
            transform: scale(1.02); /* Sutil crecimiento orgánico */
        }

        .semester-column p {
            margin: 0;
            font-size: 0.85rem;
        }

        .subject-card {
            background: #fdfdfd;
            border: 1px solid #e0e0e0;
            border-radius: 10px;
            padding: 20px 10px;
            min-height: 110px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            font-size: 0.85rem;
            color: #555;
        }

        .subject-card strong {
            color: #333;
            margin-top: 8px;
            display: block;
        }

        .border-teal {
            border: 1px solid #4db6ac;
        }

        .border-orange {
            border: 1px solid #e67e22;
            border-radius: 10px;
        }

        /* Lado a Lado (Convalida + Electivos) */
        .side-by-side {
            display: flex;
            gap: 40px;
            margin-top: 50px;
            align-items: flex-start;
        }

        .convalida-box {
            flex: 0 0 280px;
            background-color: #4db6ac;
            color: white;
            padding: 25px;
            border-radius: 12px;
            text-align: center;
            font-size: 0.95rem;
        }

        .electivos-content {
            flex: 1;
            text-align: left;
        }

        .electivos-content h3 {
            color: #e67e22;
            margin-bottom: 20px;
            font-size: 1.3rem;
            font-weight: 700;
        }

        /* --- RESPONSIVIDAD FINAL --- */
        @media (max-width: 992px) {

            .side-by-side {
        flex-direction: column;
        gap: 0;              /* elimina espacio entre columnas */
        margin-top: 0;       /* elimina espacio superior */
    }

    .electivos-content {
        margin: 0;
        padding: 0;
    }

    .electivos-content h3 {
        margin-top: 0;
    }

    .electivos-list {
        margin: 0;
    }

    .electivos-list li {
        margin-bottom: 8px; /* pequeño espacio solo entre items */
    }

            /* Malla interactiva */
            .malla-wrapper {
                display: none;
            }

            .download-button-container {
                display: block;
            }

            .grid-container {
                grid-template-columns: repeat(2, 1fr);
            }

            .skills-grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .side-by-side {
                flex-direction: column;
            }

            .convalida-box {
                flex: none;
                width: 100%;
            }
        }

        @media (max-width: 768px) {
            .hero-info h1 {
                font-size: 2.2rem;
            }

            .hero-container {
                flex-direction: column;
                text-align: center;
            }

            .info-list li {
                text-align: left;
            }

            .form-card {
                max-width: 100%;
            }

            .details-grid {
                grid-template-columns: 1fr;
            }

            .cta-banner {
                flex-direction: column;
                text-align: center;
            }

            .grid-container {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 480px) {
            .skills-grid {
                grid-template-columns: 1fr;
            }
        }



        /* --- SECCIÓN VIDEOS --- */
        .videos-section {
            padding: 40px 0 0 0;
            background-color: #F8F9FA;
        }

        .videos-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            /* 4 columnas en escritorio */
            gap: 20px;
            text-align: center;
        }

        /* Truco para que el video sea responsivo y mantenga formato vertical */
        .video-wrapper {
            position: relative;
            padding-bottom: 177%;
            /* Proporción para video vertical (9:16) */
            height: 0;
            overflow: hidden;
            border-radius: 12px;
            margin-bottom: 15px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
        }

        .video-wrapper iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

        .video-item h3 {
            color: #26b4af;
            font-size: 1.1rem;
            margin-bottom: 5px;
            font-weight: 700;
        }

        .video-item p {
            color: #666;
            font-size: 0.80rem;
            line-height: 1.3;
        }

        /* Ajuste para móviles en tu sección @media */
        @media (max-width: 992px) {
            .videos-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (max-width: 480px) {
            .videos-grid {
                grid-template-columns: 1fr;
            }
        }


        /* --- SECCIÓN COMITÉ ASESOR --- */

        .committee-grid {
            display: grid;
            gap: 40px 20px;
            margin-top: 40px;
        }

        .committee-grid-3 {
            grid-template-columns: repeat(3, 1fr);
        }

        .committee-grid-4 {
            grid-template-columns: repeat(4, 1fr);
        }

        .avatar-wrapper {
            width: 200px;
            height: 200px;
            margin: 0 auto 20px;
            border-radius: 50%;
            overflow: hidden;
            border: 4px solid #fff;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
        }

        .avatar-wrapper img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            /* Asegura que la cara no se deforme */
        }

        .committee-item h4 {
            color: #26b4af;
            font-size: 1.15rem;
            margin-bottom: 8px;
            font-weight: 700;
        }

        .committee-item p {
            color: #666;
            font-size: 0.85rem;
            line-height: 1.4;
        }

        /* Responsividad para Comité */
        @media (max-width: 992px) {
            .committee-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (max-width: 600px) {
            .committee-grid {
                grid-template-columns: 1fr;
            }

            .avatar-wrapper {
                width: 180px;
                height: 180px;
            }
        }

        /* --- SECCIÓN CUERPO ACADÉMICO --- */
        .faculty-section {
            padding: 80px 0;
            background-color: #F8F9FA;
            text-align: center;
        }

        .faculty-subtitle {
            color: #888;
            font-size: 1.1rem;
            margin-bottom: 40px;
        }

        .faculty-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 50px 30px;
        }

        /* Reutilizamos parte del estilo del comité pero con toques naranjas */
        .faculty-item h4 {
            color: #e67e22;
            /* Naranja para el nombre */
            font-size: 1.2rem;
            margin-bottom: 12px;
            font-weight: 700;
        }

        .faculty-item p {
            color: #555;
            font-size: 0.85rem;
            line-height: 1.4;
            text-align: justify;
            /* Mejor lectura para textos largos */
        }

        .border-orange-avatar {
            border: 4px solid #fef5ed;
            /* Un borde muy suave naranja */
            transition: transform 0.3s ease;
        }

        .faculty-item:hover .avatar-wrapper {
            border-color: #e67e22;
        }

        /* Responsividad */
        @media (max-width: 992px) {
            .faculty-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (max-width: 768px) {
            .faculty-grid {
                grid-template-columns: 1fr;
            }

            .faculty-item p {
                text-align: center;
            }
        }

        /* --- SECCIÓN NÚCLEO ACADÉMICO --- */
        .core-faculty-section {
            padding: 80px 0;
            background-color: #fff;
            /* Fondo blanco para contrastar con el gris anterior */
            text-align: center;
        }

        /* Reutilizamos .committee-grid y .committee-item del paso anterior */

        .core-faculty-section .committee-item p {
            text-align: center;
            /* En esta sección, las bios son más cortas, el centrado queda mejor */
            max-width: 320px;
            margin: 0 auto;
        }

        /* Efecto opcional para resaltar el núcleo */
        .core-faculty-section .avatar-wrapper {
            transition: all 0.3s ease;
            border: 4px solid transparent;
        }

        .core-faculty-section .committee-item:hover .avatar-wrapper {
            border-color: #26b4af;
            box-shadow: 0 10px 25px rgba(38, 180, 175, 0.2);
        }

        /* --- SECCIÓN CONVENIOS --- */
        .agreements-section {
            padding: 60px 0;
            background-color: #fff;
        }

        .orange-banner {
            background-color: #e67e22;
        }

        .teal-banner {
            background-color: #26b4af;
        }

        .banner {
            /* El naranja de tu imagen */
            color: white;
            padding: 20px 30px;
            border-radius: 8px;
            /* Bordes redondeados como en la captura */
            text-align: center;
            box-shadow: 0 2px 10px rgba(230, 126, 34, 0.2);
        }

        .banner p {
            font-size: 1rem;
            line-height: 1.6;
            font-weight: 400;
        }

        .banner strong {
            font-weight: 700;
        }

        /* Responsividad para el banner */
        @media (max-width: 768px) {
            .banner {
                padding: 10px 20px;
            }

            .banner p {
                font-size: 1rem;
            }
        }

        .separador-responsive {
            display: none;
            /* Oculto en escritorio */
        }

        @media (max-width: 768px) {
            .separador-responsive {
                display: block;
                border: none;
                height: 1px;
                background-color: white;
                margin: 5px 0;
            }
        }

        @media (max-width: 1000px) {
            .hero-section {
                height: auto;
                min-height: auto;
            }
        }

        .details-left p {
            text-align: justify;
        }




 .php-email-form .error-message {
  display: none;
  color: var(--color-default);
  background: rgba(240, 37, 10, 0.1);
  text-align: left;
  padding: 10px;
  font-weight: 600;
  border-radius: 10px;
}

 .php-email-form .error-message br+br {
  margin-top: 25px;
}

 .php-email-form .sent-message {
  display: none;
  color: var(--color-default);
  background: rgba(24, 210, 110, 0.1);
  text-align: center;
  padding: 10px;
  font-weight: 600;
  border-radius: 10px;
}

 .php-email-form .loading {
  display: none;
  background: rgba(255, 255, 255, 0);
  text-align: center;
  padding: 15px;
}

 .php-email-form .loading:before {
  content: "";
  display: inline-block;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  margin: 0 10px -6px 0;
  border: 3px solid #18d26e;
  border-top-color: #eee;
  animation: animate-loading 1s linear infinite;
}


/* --- Micro-interacción: Rotación y Color en Iconos --- */
.icon-animate {
    transition: transform 0.5s ease;
}

.research-card:hover .icon-animate {
    transform: rotate(10deg) scale(1.1);
    filter: brightness(1.2); /* Da un efecto de "encendido" */
}

/* --- Micro-interacción: Pop en Skills --- */
.icon-pop {
    transition: all 0.3s ease;
}

.skill-item:hover .icon-pop {
    transform: scale(1.2);
}


/* Contenedor principal de la tarjeta */
.committee-item, .faculty-item {
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), 
                box-shadow 0.3s ease;
    border-radius: 12px;
    padding: 20px;
    
    text-align: center;
}

/* Efecto Lift (Elevación) al hacer Hover */
.committee-item:hover, .faculty-item:hover {
    transform: translateY(-10px); /* Sube la tarjeta */
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1); /* Sombra profunda */
    background: #fff;
}


/* Overlay para el botón */
.bio-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 128, 128, 0.4); /* Color teal traslúcido */
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.committee-item:hover .bio-overlay {
    opacity: 1;
}

/* Botón con animación de rebote (Bounce) */
.btn-bio {
    background-color: #008080; /* Teal oficial */
    color: white;
    padding: 8px 16px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: bold;
    font-size: 0.9rem;
    transform: scale(0); /* Empieza invisible */
}

.committee-item:hover .btn-bio {
    animation: bounceIn 0.5s forwards;
    animation-delay: 0.1s;
}

/* Keyframes para el rebote */
@keyframes bounceIn {
    0% { transform: scale(0.3); opacity: 0; }
    50% { transform: scale(1.1); }
    70% { transform: scale(0.9); }
    100% { transform: scale(1); opacity: 1; }
}

