        /* Tu CSS modificado aquí */
        /* Reset básico */

        @font-face {
            font-family: 'Sequel 100 Wide 95';
            src: url('fonts/Sequel100Wide-95.woff2') format('woff2'),
                url('fonts/Sequel100Wide-95.woff') format('woff'),
                url('fonts/Sequel100Wide-95.ttf') format('truetype');
            font-weight: 900;
            /* O el peso correspondiente a la variante 95 */
            font-style: normal;
        }

        @font-face {
            font-family: 'Nexa Bold';
            src: url('fonts/NexaBold.woff2') format('woff2'),
                url('fonts/NexaBold.woff') format('woff'),
                url('fonts/NexaBold.ttf') format('truetype');

            font-style: normal;
        }

        .nexa-font {
            font-family: 'Nexa Bold', sans-serif;
        }


        body {
            margin: 0;
            background: #000;
            color: white;
            font-family: 'Sequel 100 Wide 95', sans-serif;
        }



        .projects {
            padding-bottom: 3rem;
        }

        .featured-project {
            position: relative;
            width: 100%;
            height: 77vh;
            overflow: hidden;
            display: flex;
            align-items: flex-end;
            justify-content: flex-start;
        }

        .featured-image {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            filter: brightness(0.5);
            transition: all 0.5s ease-in-out;
        }

        .featured-info {
            position: relative;
            padding: 2rem;
            width: 75%;
            z-index: 2;
            margin-bottom: 1rem;
        }

        .featured-info h2 {
            font-size: 4rem;
            text-transform: uppercase;
            margin-bottom: 1rem;
            font-family: 'Sequel 100 Wide 95', sans-serif !important;
            font-weight: 400;
            line-height: 1.2;
        }

        .featured-info p {
            font-size: 1.4rem;
            margin-bottom: 1.5rem;
            line-height: 1.2;
            font-weight: 900 !important;

        }

        .buttons {
            display: flex;
            gap: 1rem;
        }

        .btn {
            background: #0FA66E;
            color: white;
            padding: 0.6rem 1.2rem;
            border: none;
            border-radius: 4px;
            cursor: pointer;

            transition: opacity 0.3s ease;
            font-family: 'Sequel 100 Wide 95', sans-serif !important;

        }

        .btn-outline {
            background: transparent;
            border: 1px solid white;
            padding: 0.6rem 1.2rem;
            padding-top: 0.4rem;
            cursor: pointer !important;
        }

        /* ======================================== */
        /* ===== HOVER DEL BOTÓN MÁS INFO POR DEPARTAMENTO ===== */
        /* ======================================== */

        /* Meta: verde */
        .btn-outline.meta:hover {
            background: #0FA66E !important;
            color: white !important;
            border-color: #0FA66E !important;
            opacity: 1 !important;
        }

        /* Morpho: azul */
        .btn-outline.morpho:hover {
            background: #4679A6 !important;
            color: white !important;
            border-color: #4679A6 !important;
            opacity: 1 !important;
        }

        /* Sis: amarillo anaranjado */
        .btn-outline.sis:hover {
            background: #F2CB57 !important;
            color: white !important;
            border-color: #F2CB57 !important;
            opacity: 1 !important;
        }

        /* Suavizar la transición en el botón outline */
        .btn-outline {
            transition: all 0.25s ease !important;
        }

        .btn:hover {
            opacity: 0.8;
        }

        /* Botones de departamento */
        .department-buttons {
            display: flex;
            gap: 1rem;
            margin-bottom: 0rem;
            margin-top: 4.5rem;
            margin-left: 2rem;
            justify-content: start;
        }

        .dept-btn {
            background: transparent;
            border: 2px solid rgba(255, 255, 255, 0.3);
            color: rgba(255, 255, 255, 0.7);
            padding: 0.8rem 1.5rem;
            padding-top: 0.5rem;
            font-size: 1.2rem;
            border-radius: 40px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        /* Colores de hover y active por departamento */
        .dept-btn[data-dept="meta"]:hover {
            border-color: #0FA66E;
            color: white;
        }

        .dept-btn[data-dept="meta"].active {
            background: #0FA66E;
            border-color: #0FA66E;
            color: white;
            box-shadow: 0 0 15px #0FA66E;
        }

        .dept-btn[data-dept="morpho"]:hover {
            border-color: #4679A6;
            color: white;
        }

        .dept-btn[data-dept="morpho"].active {
            background: #4679A6;
            border-color: #4679A6;
            color: white;
            box-shadow: 0 0 15px #4679A6;
        }

        .dept-btn[data-dept="sis"]:hover {
            border-color: #F2CB57;
            color: white;
        }

        .dept-btn[data-dept="sis"].active {
            background: #F2CB57;
            border-color: #F2CB57;
            color: white;
            box-shadow: 0 0 15px #F2CB57;
        }

        /* Carrousel */
        .carousel {
            margin-top: 0.2rem;
            padding: 1rem 2rem;
            position: relative;
        }

        .carousel-wrapper {
            display: flex;
            gap: 1rem;
            overflow-x: auto;
            scroll-behavior: smooth;
            padding-bottom: 1rem;
        }

        .carousel-item {
            flex: 0 0 auto;
            padding: 13px 0;
            width: 200px;
            cursor: pointer;
            transition: transform 0.2s ease;
            scroll-snap-align: start;
        }

        .carousel-item img {
            width: 200px;
            height: 230px;
            object-fit: cover;
            border-radius: 12px;
        }

        .carousel-item:hover {
            transform: scale(1.1);
        }

        .carousel-wrapper::-webkit-scrollbar {
            display: none;
        }

        .carousel-wrapper {
            -ms-overflow-style: none;
            scrollbar-width: none;
            padding-right: 10px 30px;
        }

        .carousel-btn {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 40px;
            height: 60px;
            background: rgba(0, 0, 0, 0.5);
            border: none;
            color: white;
            font-size: 2rem;
            cursor: pointer;
            z-index: 5;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: background 0.3s;
        }

        .carousel-btn:hover {
            background: rgba(0, 0, 0, 0.8);
        }

        .carousel-btn.left {
            left: 0;
        }

        .carousel-btn.right {
            right: 0;
        }

        .navbar {
            position: relative;
            top: 0;
            left: 0;
            width: -webkit-fill-available;
            z-index: 1000;
            backdrop-filter: blur(0px);
            background: transparent;
            padding: 0.4rem 1rem;
            display: flex;
            justify-content: center;
            transition: all 0.35s ease;
        }

        .navbar img {
            margin-top: 10px;
            margin-left: 5px;
        }

        .nav-links {
            margin-top: 0;
        }



        .navbar .hamburger {
            margin-right: 25px !important;

        }

        /* Botones de acción con color dinámico según departamento */
        .btn-ver-proyecto {
            transition: all 0.3s ease;
        }

        /* Aumentamos especificidad para que gane a .btn */
        .btn.btn-ver-proyecto.meta {
            background: #0FA66E !important;
            box-shadow: 0 0 15px rgba(80, 193, 0, 0.5);
        }

        .btn.btn-ver-proyecto.morpho {
            background: #4679A6 !important;
            box-shadow: 0 0 15px rgba(0, 102, 204, 0.5);
        }

        .btn.btn-ver-proyecto.sis {
            background: #F2CB57 !important;
            box-shadow: 0 0 15px rgba(255, 153, 0, 0.5);
        }

        /* Botón Más Info con borde del color del departamento activo */
        .btn-outline.meta {
            border-color: #0FA66E !important;
            color: #0FA66E !important;
        }

        .btn-outline.morpho {
            border-color: #4679A6 !important;
            color: #4679A6 !important;
        }

        .btn-outline.sis {
            border-color: #F2CB57 !important;
            color: #F2CB57 !important;
        }



        /* ===== MENÚ HAMBURGUESA ===== */
        .hamburger {
            display: none;
            flex-direction: column;
            cursor: pointer;
            padding: 10px;
            z-index: 1001;
        }

        .hamburger span {
            width: 30px;
            height: 3px;
            background: white;
            margin: 3px 0;
            transition: 0.3s;
            border-radius: 2px;
        }

        /* Animación del icono cuando está activo */
        .hamburger.active span:nth-child(1) {
            transform: rotate(45deg) translate(6px, 6px);
        }

        .hamburger.active span:nth-child(2) {
            opacity: 0;
        }

        .hamburger.active span:nth-child(3) {
            transform: rotate(-45deg) translate(7px, -7px);
        }

        /* Menú de navegación en móvil */
        @media (max-width: 768px) {
            .hamburger {
                display: flex;
            }

            .nav-links {
                position: fixed;
                top: 0;
                right: -100%;
                width: 70%;
                max-width: 300px;
                height: 100vh;
                background: rgba(0, 0, 0, 0.95);
                backdrop-filter: blur(10px);
                flex-direction: column;
                justify-content: center;
                align-items: center;
                gap: 2rem;
                transition: right 0.4s ease;
                margin: 0;
                padding: 0;
                z-index: 1000;
            }

            .nav-links.active {
                right: 0;
            }

            .nav-links li {
                margin: 1rem 0;
            }

            .nav-links a {
                font-size: 1.5rem;
                color: white;
            }

            .navbar img {
                height: 48px;
            }

            .department-buttons {
                display: flex;
                gap: 0.5rem;
                margin-bottom: 0rem;
                margin-top: 4.5rem;
                margin-left: 0.6rem;
                justify-content: start;
            }

            .department-buttons .dept-btn {

                padding: 0.4rem 1.1rem;
                padding-top: 0.2rem;
            }

        }

        /* Ajuste para pantallas muy pequeñas (tu media query existente) */
        @media(max-width:495px) {
            .projects {
                padding-bottom: 1rem;
            }

            .carousel {
                padding-bottom: 0px;
            }

            .department-buttons {
                margin-top: 3.5rem;
            }

            .featured-info h2 {
                font-size: 2.2rem;
            }

            .navbar .hamburger {
                margin-right: 25px !important;
            }
        }

        /* ======================================== */
        /* ===== CORRECCIÓN DESCRIPCIÓN COMPLETA ===== */
        /* ======================================== */

        /* 1. Permitir que el contenedor principal no oculte el texto */
        .featured-project {
            overflow: visible !important;
            /* Muestra todo el contenido sin recortes */
            height: auto !important;
            /* Altura automática según el contenido */
            min-height: 77vh;
            /* Mantiene la altura mínima deseada */
        }

        /* 2. Ajustar el área de información para que crezca libremente */
        .featured-info {
            position: relative;
            width: 90%;
            /* Más ancho en móviles/escritorio */
            max-width: 900px;
            /* Límite para lecturas muy largas */
            margin-bottom: 2rem;
            overflow: visible;
        }


        /* ======================================== */
        /* ============ MODALES ============ */
        /* ======================================== */

        /* Capa oscura de fondo */
        .modal-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.95);
            backdrop-filter: blur(8px);
            display: none;
            justify-content: center;
            align-items: center;
            z-index: 9999;
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .modal-overlay.active {
            display: flex;
            opacity: 1;
        }

        /* Contenedor del modal (centrado) */
        .modal-container {
            position: relative;
            width: 90%;
            max-width: 900px;
            background: #0a0a0a;
            border-radius: 16px;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.7);
            border: 1px solid rgba(255, 255, 255, 0.1);
            overflow: hidden;
            animation: modalFadeIn 0.3s ease;
        }

        @keyframes modalFadeIn {
            from {
                opacity: 0;
                transform: scale(0.95);
            }

            to {
                opacity: 1;
                transform: scale(1);
            }
        }

        /* Botón cerrar modal */
        .modal-close {
            position: absolute;
            top: 16px;
            right: 20px;
            font-size: 32px;
            color: rgba(255, 255, 255, 0.6);
            cursor: pointer;
            z-index: 10;
            transition: color 0.2s;
            line-height: 1;
        }

        .modal-close:hover {
            color: white;
        }

        /* Modal de video (iframe) */
        .video-modal .modal-container {
            background: black;
            padding: 0;
        }

        .video-wrapper-modal {
            position: relative;
            width: 100%;
            padding-bottom: 56.25%;
            /* 16:9 */
            height: 0;
        }

        .video-wrapper-modal iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border: none;
        }

        /* Modal de información */
        .info-modal .modal-container {
            padding: 30px;
            color: white;
            max-height: 80vh;
            overflow-y: auto;
        }

        .info-modal h1,
        .info-modal h2,
        .info-modal h3,
        .info-modal h4,
        .info-modal p {
            font-weight: 400;
        }

        .info-modal h3 {
            font-family: 'Sequel 100 Wide 95', sans-serif;
            font-size: 2rem;
            margin-bottom: 20px;
            color: #fff;
        }

        .info-modal p {
            font-family: Arial, Helvetica, sans-serif;
            font-size: 1.2rem;
            line-height: 1.6;
            color: #ddd;
        }

        /* Responsive */
        @media (max-width: 768px) {
            .modal-container {
                width: 95%;
            }

            .info-modal .modal-container {
                padding: 20px;
            }

            .info-modal h3 {
                font-size: 1.6rem;
            }

            .info-modal p {
                font-size: 1rem;
            }
        }

        /* ===== TRUNCAR DESCRIPCIÓN DESTACADA A 3 LÍNEAS ===== */
        #featuredDesc {
            display: -webkit-box;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
            overflow: hidden;
            text-overflow: ellipsis;
            line-height: 1.4;
            /* Ajusta según tu diseño */
            max-height: calc(1.4em * 3);
            /* Consistente con line-height */
            word-break: break-word;
            /* Evita desbordes con palabras largas */
        }

        /* ===== LOGO CAMALEÓN EN MINIATURAS DEL CARRUSEL ===== */
        .carousel-item {
            position: relative;
            /* Para posicionar el pseudo-elemento */
        }
        .carousel-item img{
            filter: brightness(0.9);
        }

        .carousel-item::after {
            content: "";
            position: absolute;
            bottom: 30px;
            /* Distancia desde el borde inferior */
            right: 8px;
            /* Distancia desde el borde derecho */
            width: 50px;
            /* Ajusta el tamaño del logo */
            height: 50px;
            background-image: url('icons/cursor-2.png');
            /* Ruta de tu logo/cursor */
            background-size: contain;
            background-repeat: no-repeat;
            background-position: center;
            pointer-events: none;
            /* Para que no interfiera con clics */
            z-index: 2;
            opacity: 0.8;
            /* Un poco transparente, opcional */
            transition: opacity 0.2s ease;
        }

        .carousel-item:hover::after {
            opacity: 1;
            /* Al pasar el mouse se ve más nítido */
        }