 :root{
            --verde-palma: #1b4b2a; /* Verde Corporativo Oscuro */
            --verde-claro: #2d6a4f;
            --dorado: #b88317;
            --salmon-suave: #fff5f2; /* Fondo cálido */
            --bg-light: #f8fbf8;
            --text-dark: #2c3e50;
            --card-shadow: 0 15px 35px rgba(0,0,0,0.08);
        }

         html, body {
             max-width: 100%;
             overflow-x: hidden;
      }

        body { 
            font-family: 'Poppins', sans-serif; 
            background: var(--bg-light); 
            color: var(--text-dark); 
            overflow-x: hidden;
        }

        /* --- HERO BANNER (VIDEO FONDO) --- */
        .hero-banner {
            position: relative;
            height: 85vh; 
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            color: #fff;
            background: #000; 
        }

        .hero-banner iframe {
            position: absolute;
            top: 50%;
            left: 50%;
            width: 100vw;
            height: 56.25vw; 
            min-height: 100vh;
            min-width: 177.77vh;
            transform: translate(-50%, -50%);
            border: none;
            opacity: 0.6; 
            pointer-events: none;
        }

        .hero-banner .overlay {
            position: absolute;
            inset: 0;
            background: 
          
        }

        .hero-banner .content {
            position: relative;
            z-index: 2;
            max-width: 850px;
            padding: 2rem;
        }

        .hero-banner h1 {
            font-family: 'Playfair Display', serif;
            font-weight: 700;
            font-size: clamp(3rem, 5vw, 5rem);
            text-shadow: 0 4px 15px rgba(0,0,0,0.4);
            margin-bottom: 1.5rem;
        }

        .hero-banner p {
            font-size: 1.25rem;
            font-weight: 300;
            color: #f1f1f1;
            line-height: 1.6;
            text-shadow: 0 2px 4px rgba(0,0,0,0.5);
        }

        /* Botones Hero */
        .btn-hero {
            background-color: var(--dorado);
            color: white;
            border: none;
            padding: 12px 35px;
            border-radius: 50px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 1px;
            transition: all 0.3s ease;
            box-shadow: 0 5px 15px rgba(184, 131, 23, 0.4);
            text-decoration: none;
        }
        .btn-hero:hover {
            background-color: #a07412;
            transform: translateY(-3px);
            box-shadow: 0 8px 20px rgba(184, 131, 23, 0.6);
            color: white;
        }

        /* --- SECCIONES GENERALES --- */
        section { padding: 6rem 0; }
        
        h2.section-title {
            font-family: 'Playfair Display', serif;
            font-weight: 700;
            color: var(--verde-palma);
            margin-bottom: 1.5rem;
            position: relative;
            display: inline-block;
        }
        
        h2.section-title::after {
            content: '';
            display: block;
            width: 60px;
            height: 4px;
            background: var(--dorado);
            margin-top: 10px;
            border-radius: 2px;
        }

        /* --- TARJETAS (CARDS) --- */
        .hover-card {
            background: #fff;
            border: none;
            border-radius: 16px;
            padding: 2rem;
            box-shadow: 0 10px 30px rgba(0,0,0,0.05);
            transition: all 0.3s ease;
            height: 100%;
            border-bottom: 4px solid transparent;
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
        }
        .hover-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(0,0,0,0.12);
            border-bottom: 4px solid var(--dorado);
        }

        /* Icon Wrapper para centrar y estilizar iconos */
        .icon-wrapper {
            width: 80px;
            height: 80px;
            border-radius: 50%;
            background-color: rgba(27, 75, 42, 0.05); /* Verde muy suave */
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 1.5rem;
            transition: all 0.3s ease;
        }
        .hover-card:hover .icon-wrapper {
            background-color: var(--dorado);
            transform: scale(1.1);
        }

        .hover-card i {
            font-size: 2.5rem;
            color: var(--verde-palma);
            transition: color 0.3s ease;
        }
        .hover-card:hover i {
            color: #fff; /* Icono blanco al hacer hover */
        }

        .hover-card h5 { font-weight: 700; color: #333; margin-bottom: 1rem; }
        .hover-card p { color: #666; font-size: 0.95rem; margin: 0; }

        /* --- SECCIÓN TÉCNICA (Colapsable) --- */
        .tech-section {
            background-color: var(--salmon-suave); 
            border-radius: 20px;
            padding: 3rem;
            margin-top: 3rem;
            border: 1px solid #ffe0d6;
        }

        .table-custom th {
            background-color: var(--verde-palma);
            color: white;
            font-weight: 600;
            border: none;
            text-transform: uppercase;
            font-size: 0.9rem;
        }
        .table-custom td {
            background-color: white;
            border-bottom: 1px solid #eee;
            color: #555;
            vertical-align: middle;
        }
        .table-custom tr:last-child td { border-bottom: none; }
        
        .btn-tech-toggle {
            background-color: transparent;
            border: 2px solid var(--verde-palma);
            color: var(--verde-palma);
            border-radius: 50px;
            padding: 10px 25px;
            font-weight: 600;
            transition: all 0.3s;
        }
        .btn-tech-toggle:hover, .btn-tech-toggle[aria-expanded="true"] {
            background-color: var(--verde-palma);
            color: white;
        }
        .btn-tech-toggle i { transition: transform 0.3s; }
        .btn-tech-toggle[aria-expanded="true"] i { transform: rotate(180deg); }

        /* Imagen Producto Principal */
        .product-img-main {
            border-radius: 20px;
            box-shadow: 0 20px 50px rgba(0,0,0,0.15);
            transition: transform 0.3s;
            max-height: 600px; 
            object-fit: contain;
        }
        .product-img-main:hover { transform: scale(1.02); }

        /* Responsive */
        @media (max-width: 768px) {
            .hero-banner h1 { font-size: 2.5rem; }
            section { padding: 4rem 0; }
        }