
        /* Variables de diseño y tema global */
        :root {
            --color-primary: #2c3e50;
            --color-primary-hover: #34495e;
            --color-accent: #4fc3f7;
            --color-accent-dark: #1565c0;
            --color-bg-body: #f4f4f9;
            --color-card-bg: #ffffff;
            --color-text-main: #333333;
            --color-text-muted: #555555;
            --color-text-light: #ffffff;
            --hero-bg-start: #e3f2fd;
            --hero-bg-end: #bbdefb;
            --badge-bg: #e1f5fe;
            --badge-text: #0277bd;
            --shadow-subtle: 0 4px 12px rgba(0, 0, 0, 0.08);
            --shadow-hover: 0 8px 20px rgba(0, 0, 0, 0.14);
            --shadow-nav: 0 2px 5px rgba(0, 0, 0, 0.15);
            --radius-sm: 8px;
            --radius-md: 15px;
            --transition-smooth: all 0.25s ease;
        }

        * {
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            background-color: var(--color-bg-body);
            color: var(--color-text-main);
            margin: 0;
            padding: 20px;
            display: flex;
            justify-content: center;
        }

        /* Contenedor principal Bento */
        .bento-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;
            max-width: 1200px;
            width: 100%;
        }

        .bento-item {
            min-width: 0;
            background-color: var(--color-card-bg);
            border-radius: var(--radius-md);
            padding: 24px;
            box-shadow: var(--shadow-subtle);
            transition: var(--transition-smooth);
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }

        .bento-item:hover {
            transform: translateY(-3px);
            box-shadow: var(--shadow-hover);
        }

        /* Header y Navegación */
        .header {
            grid-column: span 3;
            padding: 0;
            background-color: transparent;
            box-shadow: none;
        }

        .header img {
            width: 100%;
            height: auto;
            border-radius: var(--radius-md);
            display: block;
        }

        .navbar {
            grid-column: span 3;
            background-color: var(--color-primary);
            border-radius: var(--radius-sm);
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 35px;
            padding: 14px 20px;
            box-shadow: var(--shadow-nav);
            position: relative;
            z-index: 100;
        }

        .navbar a {
            color: var(--color-text-light);
            text-decoration: none;
            font-weight: 500;
            font-size: 0.95em;
            transition: var(--transition-smooth);
        }

        .navbar a.active, .navbar a:hover {
            color: var(--color-accent);
        }

        /* Menú Desplegable de Servicios */
        .dropdown {
            position: relative;
            display: inline-block;
        }

        .dropdown-content {
            display: none;
            position: absolute;
            background-color: var(--color-primary);
            min-width: 280px;
            box-shadow: 0px 8px 18px rgba(0,0,0,0.3);
            border-radius: var(--radius-sm);
            top: 100%;
            left: 50%;
            transform: translateX(-50%);
            margin-top: 10px;
            padding: 8px 0;
            z-index: 150;
        }

        .dropdown-content::before {
            content: '';
            position: absolute;
            top: -10px;
            left: 0;
            width: 100%;
            height: 10px;
        }

        .dropdown-content a {
            display: block;
            padding: 10px 20px;
            text-align: left;
            font-size: 0.9em;
            border-bottom: 1px solid rgba(255,255,255,0.06);
        }

        .dropdown-content a:last-child {
            border-bottom: none;
        }

        .dropdown-content a:hover {
            background-color: var(--color-primary-hover);
            color: var(--color-accent);
            padding-left: 24px;
        }


        .dropdown-content .menu-pendiente{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 20px;color:#c5d0d8;font-size:.9em;border-bottom:1px solid rgba(255,255,255,.06);cursor:default}
        .dropdown-content .menu-pendiente small{font-size:.66rem;color:#91a4b3;text-transform:uppercase;letter-spacing:.04em}

        .dropdown:hover .dropdown-content {
            display: block;
        }

        /* Tipografía y Textos */
        h1, h2, h3, h4 {
            margin-top: 0;
            color: var(--color-accent-dark);
            margin-bottom: 8px;
        }

        p {
            margin: 0;
            color: var(--color-text-muted);
            line-height: 1.5;
            font-size: 0.9em;
            margin-bottom: 10px;
        }

        p:last-child {
            margin-bottom: 0;
        }

        /* Bloque Hero Institucional */
        .hero-quienes {
            grid-column: span 3;
            background: linear-gradient(135deg, var(--hero-bg-start), var(--hero-bg-end));
            border-radius: var(--radius-md);
            padding: 26px 30px;
        }

        .hero-quienes h1 {
            font-size: 1.6em;
            margin-bottom: 8px;
        }

        .hero-quienes p {
            color: var(--color-text-main);
            font-size: 0.96em;
        }

        /* Misión y Visión */
        .card-mision {
            grid-column: span 1;
            border-left: 5px solid var(--color-accent-dark);
        }

        .card-vision {
            grid-column: span 2;
            border-left: 5px solid var(--color-accent);
        }

        .card-mision, .card-vision {
            justify-content: flex-start;
            gap: 8px;
        }

        /* Perfil de Liderazgo */
        .card-director {
            grid-column: span 3;
            border-top: 4px solid var(--color-accent-dark);
            background: #ffffff;
        }

        .director-header {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            flex-wrap: wrap;
            gap: 12px;
            margin-bottom: 12px;
        }

        .cargos-destacados {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin-top: 4px;
        }

        .badge-cargo {
            background-color: var(--badge-bg);
            color: var(--badge-text);
            padding: 5px 12px;
            border-radius: var(--radius-sm);
            font-size: 0.82em;
            font-weight: 600;
        }

        /* Hub de Competencias Técnicas */
        .hub-title {
            grid-column: span 3;
            margin: 10px 0 0 0;
            font-size: 1.3em;
            text-align: center;
            color: var(--color-primary);
        }

        .card-hub {
            border-top: 3px solid var(--color-accent);
        }

        .card-automation {
            grid-column: 1 / -1;
        }

        .card-hub h3 {
            font-size: 1.1em;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .tech-tags {
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
            margin-top: 12px;
        }

        .tag-pill {
            background-color: #f0f4f8;
            color: var(--color-primary);
            border: 1px solid #d9e2ec;
            font-size: 0.78em;
            padding: 3px 8px;
            border-radius: 4px;
            font-weight: 500;
        }

        .lista-detalles {
            margin: 8px 0 0 0;
            padding-left: 18px;
            color: var(--color-text-muted);
            font-size: 0.86em;
            line-height: 1.45;
        }

        /* Contacto */
        .contacto {
            grid-column: span 3;
            background-color: var(--color-primary);
            color: var(--color-text-light);
            text-align: center;
            align-items: center;
            padding: 30px 20px;
        }

        .contacto h3 {
            color: var(--color-accent);
            margin-bottom: 12px;
        }

        .contacto a {
            color: var(--color-accent);
            text-decoration: none;
            font-weight: bold;
            transition: var(--transition-smooth);
        }

        .contacto a:hover {
            text-decoration: underline;
        }

        /* Responsividad */
        @media (max-width: 992px) {
            .bento-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
            .header, .navbar, .hero-quienes, .card-mision, .card-vision, .card-director, .hub-title, .contacto {
                grid-column: span 2;
            }
        }

        @media (max-width: 680px) {
            body {
                padding: 12px;
            }
            .bento-grid {
                grid-template-columns: 1fr;
                gap: 15px;
            }
            .header, .navbar, .hero-quienes, .card-mision, .card-vision, .card-director, .hub-title, .card-hub, .contacto {
                grid-column: span 1;
            }
            .navbar {
                flex-direction: column;
                gap: 15px;
                padding: 15px;
            }
            .dropdown {
                width: 100%;
                text-align: center;
            }
            .dropdown-content {
                position: static;
                transform: none;
                width: 100%;
                margin-top: 8px;
                box-shadow: none;
                background-color: var(--color-primary-hover);
            }
        }
    
        /* Cuatro áreas equilibradas, sin una tarjeta aislada a la izquierda. */
        .bento-grid { margin-inline:auto; }
        .hero-quienes.mq-intro { background:radial-gradient(ellipse at 8% 100%,#7dd3fc99,transparent 60%),radial-gradient(ellipse at 95% 5%,#22d3ee66,transparent 55%),linear-gradient(120deg,#e8f5ff,#79c9ed); }
        .card-director { text-align:center; }
        .director-header { justify-content:center; }
        .cargos-destacados { justify-content:center; }
        .card-director > p { max-width:900px; margin-inline:auto; }
        .competency-grid { grid-column:1/-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; width:100%; min-width:0; }
        .competency-grid > .card-hub { grid-column:auto; min-width:0; }
        .competency-grid > .card-hub:nth-child(2) { border-top-color:#0d9488; }
        .competency-grid > .card-hub:nth-child(3) { border-top-color:#7c3aed; }
        .competency-grid > .card-hub:nth-child(4) { border-top-color:#d97706; }
        @media(max-width:680px) { .competency-grid { grid-template-columns:minmax(0,1fr); gap:15px; } }
        @media(min-width:993px) {
            .bento-grid { grid-template-columns:repeat(6,minmax(0,1fr)); }
            .hero-quienes,.card-director,.hub-title,.contacto { grid-column:1/-1; }
            .card-mision,.card-vision { grid-column:span 3; }
        }
