.elementor-103 .elementor-element.elementor-element-f476de8{--display:flex;}/* Start custom CSS for html, class: .elementor-element-94ff7fc *//* ================================================================
   KNG "POR QUÉ ELEGIRNOS" - PRO V2 (MOBILE FIRST)
================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

#kng-whyus-prov2 {
    --k-emerald: #2fae7a;
    --k-emerald-dark: #22825b;
    --k-emerald-light: #e8f6f0;
    --k-dark: #0f172a;
    --k-gray-dark: #475569;
    --k-gray-light: #94a3b8;
    --k-bg: #ffffff;
    --k-surface: #f8fafc;
    --k-border: #e2e8f0;
    
    --shadow-soft: 0 15px 35px -5px rgba(0,0,0,0.05);
    --shadow-glow: 0 20px 40px -10px rgba(47, 174, 122, 0.2);
    --shadow-glass: 0 8px 32px 0 rgba(31, 38, 135, 0.07);
    --easing: cubic-bezier(0.16, 1, 0.3, 1);

    font-family: 'Inter', sans-serif !important;
    background-color: var(--k-bg) !important;
    width: 100% !important;
    color: var(--k-dark) !important;
    overflow-x: hidden !important;
}

#kng-whyus-prov2 * { box-sizing: border-box !important; margin: 0; padding: 0; line-height: 1.6; }

/* ANIMACIONES */
.animate-fade {
    opacity: 0; transform: translateY(30px);
    animation: fadeUpPro 0.8s var(--easing) forwards;
    animation-delay: var(--delay, 0s);
}
@keyframes fadeUpPro { to { opacity: 1; transform: translateY(0); } }

/* HERO SPLIT */
.kng-hero-split {
    padding: 60px 20px !important; max-width: 1200px !important; margin: 0 auto !important;
    display: flex !important; flex-direction: column !important; gap: 40px !important;
}

.kng-badge-top {
    display: inline-flex !important; align-items: center !important; gap: 8px !important;
    background: var(--k-surface) !important; border: 1px solid var(--k-border) !important;
    color: var(--k-emerald) !important; padding: 6px 16px !important; border-radius: 100px !important;
    font-size: 0.75rem !important; font-weight: 700 !important; text-transform: uppercase !important; margin-bottom: 24px !important;
}
.kng-dot-pulse { width: 6px; height: 6px; background: var(--k-emerald); border-radius: 50%; }

.kng-title-huge { font-size: clamp(2.5rem, 6vw, 4rem) !important; font-weight: 900 !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin-bottom: 20px !important; }
.kng-text-emerald { color: var(--k-emerald) !important; }
.kng-lead { font-size: 1.1rem !important; color: var(--k-gray-dark) !important; max-width: 500px !important; }

.kng-hero-image-wrap { position: relative !important; width: 100% !important; border-radius: 24px !important; overflow: hidden !important; box-shadow: var(--shadow-soft) !important; }
.kng-hero-img { width: 100% !important; height: auto !important; display: block !important; object-fit: cover !important; }

.kng-floating-badge {
    position: absolute !important; bottom: -20px !important; left: 20px !important;
    background: rgba(255,255,255,0.9) !important; backdrop-filter: blur(10px) !important;
    padding: 12px 20px !important; border-radius: 16px !important; display: flex !important; align-items: center !important; gap: 12px !important;
    box-shadow: var(--shadow-glass) !important; border: 1px solid rgba(255,255,255,0.5) !important; font-weight: 700 !important; font-size: 0.9rem !important;
}
.kng-floating-badge svg { width: 20px !important; height: 20px !important; color: var(--k-emerald) !important; }

/* SECCIONES GLOBALES */
.kng-section-header { text-align: center !important; max-width: 700px !important; margin: 0 auto 50px !important; }
.kng-meta-text { font-size: 0.75rem !important; font-weight: 800 !important; color: var(--k-emerald) !important; letter-spacing: 2px !important; display: block !important; margin-bottom: 16px !important; }
.kng-section-header h2 { font-size: clamp(1.8rem, 4vw, 2.5rem) !important; font-weight: 900 !important; margin-bottom: 16px !important; letter-spacing: -0.02em !important; line-height: 1.2 !important; }
.kng-section-header p { font-size: 1.05rem !important; color: var(--k-gray-dark) !important; }

/* PRINCIPIOS (MASONRY/GRID CON IMÁGENES) */
.kng-principles-section { padding: 80px 20px !important; background: var(--k-surface) !important; }
.kng-principles-grid { display: flex !important; flex-direction: column !important; gap: 24px !important; max-width: 1200px !important; margin: 0 auto !important; }

.kng-principle-card {
    background: #fff !important; border: 1px solid var(--k-border) !important; border-radius: 24px !important;
    overflow: hidden !important; display: flex !important; flex-direction: column !important;
    transition: transform 0.4s var(--easing), box-shadow 0.4s var(--easing) !important;
}
.kng-principle-card:hover { transform: translateY(-8px) !important; box-shadow: var(--shadow-soft) !important; }

.kng-card-image { position: relative !important; width: 100% !important; height: 200px !important; overflow: hidden !important; }
.kng-card-image img { width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform 0.5s var(--easing) !important; }
.kng-principle-card:hover .kng-card-image img { transform: scale(1.05) !important; }

.kng-number-badge {
    position: absolute !important; top: 16px !important; left: 16px !important;
    width: 40px !important; height: 40px !important; background: var(--k-emerald) !important; color: #fff !important;
    border-radius: 12px !important; display: flex !important; align-items: center !important; justify-content: center !important;
    font-size: 1.2rem !important; font-weight: 900 !important; box-shadow: 0 4px 10px rgba(0,0,0,0.2) !important;
}

.kng-card-text { padding: 30px !important; display: flex !important; flex-direction: column !important; flex-grow: 1 !important; justify-content: center !important; }
.kng-card-text h3 { font-size: 1.2rem !important; font-weight: 800 !important; margin-bottom: 12px !important; line-height: 1.3 !important; }
.kng-card-text p { font-size: 0.95rem !important; color: var(--k-gray-dark) !important; }
.kng-highlight { background: var(--k-emerald-light) !important; color: var(--k-emerald-dark) !important; padding: 2px 6px !important; border-radius: 4px !important; font-weight: 600 !important; }

/* Tarjetas solo texto */
.kng-text-only { justify-content: center !important; }
.kng-number-badge-inline { width: 40px !important; height: 40px !important; background: var(--k-emerald-light) !important; color: var(--k-emerald) !important; border-radius: 12px !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 1.2rem !important; font-weight: 900 !important; margin-bottom: 16px !important; }
.kng-bg-emerald { background: var(--k-emerald) !important; color: #fff !important; border: none !important; }
.kng-bg-emerald h3, .kng-bg-emerald p { color: #fff !important; }
.kng-bg-emerald .kng-number-badge-inline { background: rgba(255,255,255,0.2) !important; color: #fff !important; }

/* COMPARISON (GLASS EFFECT) */
.kng-comparison-section { padding: 100px 20px !important; background: #fff !important; }
.kng-comparison-container { display: flex !important; flex-direction: column !important; gap: 24px !important; max-width: 1000px !important; margin: 0 auto !important; }

.kng-comp-col { border-radius: 24px !important; padding: 40px 30px !important; border: 1px solid var(--k-border) !important; position: relative !important; overflow: hidden !important; }
.kng-col-negative { background: #f1f5f9 !important; border-style: dashed !important; }
.kng-col-positive { border: 1px solid rgba(47, 174, 122, 0.3) !important; box-shadow: var(--shadow-glow) !important; }
.kng-glass-bg { position: absolute !important; inset: 0 !important; background: linear-gradient(135deg, rgba(47,174,122,0.1) 0%, rgba(255,255,255,0) 100%) !important; z-index: 0 !important; }

.kng-comp-head { display: flex !important; align-items: center !important; gap: 16px !important; margin-bottom: 30px !important; position: relative !important; z-index: 1 !important; border-bottom: 1px solid rgba(0,0,0,0.05) !important; padding-bottom: 20px !important; }
.kng-icon-circle { width: 40px !important; height: 40px !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; }
.kng-icon-x { background: #e2e8f0 !important; color: #64748b !important; }
.kng-icon-check { background: var(--k-emerald) !important; color: #fff !important; box-shadow: 0 4px 10px rgba(47,174,122,0.3) !important; }
.kng-icon-circle svg { width: 20px !important; height: 20px !important; }
.kng-comp-head h3 { font-size: 1.3rem !important; font-weight: 800 !important; }

.kng-comp-list { list-style: none !important; display: flex !important; flex-direction: column !important; gap: 16px !important; position: relative !important; z-index: 1 !important; }
.kng-comp-list li { font-size: 1rem !important; color: var(--k-gray-dark) !important; padding-left: 24px !important; position: relative !important; }
.kng-col-negative .kng-comp-list li::before { content: '×'; position: absolute !important; left: 0 !important; color: #94a3b8 !important; font-weight: bold !important; }
.kng-col-positive .kng-comp-list li { color: var(--k-dark) !important; font-weight: 500 !important; }
.kng-col-positive .kng-comp-list li::before { content: '✓'; position: absolute !important; left: 0 !important; color: var(--k-emerald) !important; font-weight: bold !important; }

/* GRAN CITA */
.kng-quote-section { padding: 100px 20px !important; text-align: center !important; max-width: 900px !important; margin: 0 auto !important; background: var(--k-surface) !important; border-radius: 32px !important; margin-bottom: 80px !important; }
.kng-quote-section blockquote { font-size: clamp(1.5rem, 4vw, 2.5rem) !important; font-weight: 800 !important; color: var(--k-dark) !important; line-height: 1.3 !important; letter-spacing: -0.02em !important; margin-bottom: 24px !important; border: none !important; padding: 0 !important; }
.kng-quote-section cite { font-size: 0.85rem !important; font-weight: 700 !important; color: var(--k-gray-light) !important; letter-spacing: 2px !important; text-transform: uppercase !important; font-style: normal !important; }

/* DESKTOP MEDIA QUERIES */
@media (min-width: 768px) {
    .kng-hero-split { flex-direction: row !important; align-items: center !important; padding: 100px 40px !important; }
    .kng-hero-content { width: 50% !important; padding-right: 40px !important; }
    .kng-hero-image-wrap { width: 50% !important; }
    
    .kng-principles-grid { grid-template-columns: repeat(3, 1fr) !important; display: grid !important; }
    .kng-principle-card { flex-direction: column !important; }
    .kng-card-image { height: 180px !important; }
    
    .kng-comparison-container { flex-direction: row !important; }
    .kng-comp-col { width: 50% !important; }
}/* End custom CSS */