/* HOMOLOGA.PRO - TEMA UNIFICADO */
html, body, main { background: #001a18 !important; color: #FFC400 !important; }

section, article, .ns-section, .about-section, .page-content,
.prof-content, .country-content {
    background: #005954 !important;
    border: 3px solid #FFC400 !important;
    border-radius: 16px !important;
    padding: 40px 35px !important;
    margin: 30px auto !important;
    max-width: 1200px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.5);
}

.prof-package-card, .hp-card, .country-faq-item,
.faq-med-item, .team-card, .eeat-box,
.pricing-card, .price-card, .stat-box, .country-peculiarity {
    background: #00807a !important;
    border: 3px solid #FFC400 !important;
    border-radius: 14px !important;
    padding: 28px !important;
    margin: 14px !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.4);
    transition: all 0.25s ease;
}

.prof-package-card:hover, .hp-card:hover, .country-faq-item:hover, .team-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 32px rgba(255,196,0,0.4);
}

h1, h2, h3, h4, h5, h6 { color: #FFC400 !important; font-weight: 800; text-shadow: 0 2px 6px rgba(0,0,0,0.3); }

button, .btn, .btn--base, .hp-btn, .hp-btn-main, .hp-final-btn,
.prof-cta-primary, .prof-package-btn-main,
[class*="btn-"]:not(.btn-linkedin),
input[type="submit"], input[type="button"], a.btn {
    background: #FFC400 !important;
    color: #002624 !important;
    border: none !important;
    padding: 14px 32px !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    display: inline-block !important;
    box-shadow: 0 6px 18px rgba(255,196,0,0.35);
}

button *, .btn *, .btn--base * { color: #002624 !important; }

a[href*="/homologacion-titulo-"], a[href*="/checkout/"],
a[href*="/colombia"], a[href*="/venezuela"], a[href*="/mexico"],
a[href*="/argentina"], a[href*="/peru"], a[href*="/ecuador"],
a[href*="/cuba"], a[href*="/republica-dominicana"],
a[href*="/homologacion-desde-"] {
    background: #FFC400 !important;
    color: #002624 !important;
    border: 3px solid #002624 !important;
    border-radius: 16px !important;
    padding: 18px 22px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.35);
    transition: all 0.25s ease;
    margin: 10px 6px !important;
    text-decoration: none !important;
    font-weight: 800 !important;
    display: block !important;
}

a[href*="/homologacion-titulo-"] *, a[href*="/checkout/"] *,
a[href*="/colombia"] *, a[href*="/venezuela"] *, a[href*="/mexico"] *,
a[href*="/argentina"] *, a[href*="/peru"] *, a[href*="/ecuador"] *,
a[href*="/cuba"] *, a[href*="/republica-dominicana"] *,
a[href*="/homologacion-desde-"] * {
    color: #002624 !important;
    background: transparent !important;
    text-shadow: none !important;
}

a[href*="/homologacion-titulo-"]:hover, a[href*="/colombia"]:hover,
a[href*="/venezuela"]:hover, a[href*="/homologacion-desde-"]:hover {
    background: #E8AC00 !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 14px 32px rgba(255,196,0,0.55);
}

header, .hp-header, .header-area, .top-header, .menu-area {
    background: #000d0c !important;
    border-bottom: 5px solid #FFC400 !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.6);
}

header a, .hp-header a, nav a, .menu a, .dropdown-menu a, .submenu a {
    color: #FFC400 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

header a:hover { color: #ffffff !important; }

.hp-logo, .site-logo {
    background: #ffffff !important;
    padding: 6px 12px !important;
    border-radius: 10px !important;
}

footer, .footer-area {
    background: #000d0c !important;
    border-top: 5px solid #FFC400 !important;
    color: #ffffff !important;
}

footer a, .footer-area a, footer h3, footer h4 { color: #FFC400 !important; }

.breadcrumb-area, .page-banner, .breadcrumb-section {
    background: linear-gradient(135deg, #001a18, #006860) !important;
    border-bottom: 4px solid #FFC400 !important;
    padding: 60px 30px !important;
}

.breadcrumb-area h1, .page-banner h1 {
    color: #FFC400 !important;
    font-size: 2.5rem !important;
    text-shadow: 0 4px 12px rgba(0,0,0,0.5);
}

input:not([type="submit"]):not([type="button"]), textarea, select {
    background: #ffffff !important;
    color: #002624 !important;
    border: 2px solid #FFC400 !important;
    padding: 12px 16px !important;
    border-radius: 8px !important;
}

.stat-num, .stat-value, .stat-number, .country-stat-number,
.prof-stat-number, .prof-package-price, .hp-price {
    color: #FFC400 !important;
    font-weight: 900;
    font-size: 2.8rem !important;
    text-shadow: 0 2px 8px rgba(0,0,0,0.4);
}

table, table td, table th, table tr {
    background: transparent !important;
    color: #ffffff !important;
    border-color: rgba(255,196,0,0.3) !important;
}
table th { color: #FFC400 !important; }

img { background: transparent !important; }

@media (max-width: 768px) {
    h1 { font-size: 1.6rem !important; }
    h2 { font-size: 1.4rem !important; }
    h3 { font-size: 1.2rem !important; }
    section { padding: 25px 18px !important; margin: 18px 10px !important; }
    .prof-package-card, .hp-card, .team-card { padding: 20px !important; margin: 10px !important; }
    a[href*="/homologacion-titulo-"], a[href*="/homologacion-desde-"] {
        padding: 14px 18px !important; margin: 6px 3px !important;
    }
    .stat-num, .prof-package-price { font-size: 2rem !important; }
    .breadcrumb-area h1 { font-size: 1.8rem !important; }
    .mobile-menu { background: #000d0c !important; }
    .mobile-menu a { color: #FFC400 !important; padding: 14px 18px !important; }
    header img[src*="ministerio"] { display: inline-block !important; height: 22px !important; }
}

/* === FIX FONDOS BLANCOS/AMARILLOS HARDCODED EN INLINE === */

/* Cualquier div/section con bg #fff inline → forzar teal y texto blanco */
div[style*="background:#fff"]:not(.hp-logo):not(.site-logo),
div[style*="background: #fff"]:not(.hp-logo):not(.site-logo),
div[style*="background-color:#fff"]:not(.hp-logo):not(.site-logo),
div[style*="background:white"]:not(.hp-logo):not(.site-logo),
section[style*="background:#fff"]:not(img),
section[style*="background-color:#fff"]:not(img) {
    background: #00807a !important;
    background-color: #00807a !important;
    border: 2px solid #FFC400 !important;
    border-radius: 14px !important;
}

div[style*="background:#fff"]:not(.hp-logo) *,
div[style*="background: #fff"]:not(.hp-logo) *,
div[style*="background-color:#fff"]:not(.hp-logo) *,
section[style*="background:#fff"] * {
    color: #ffffff !important;
}

div[style*="background:#fff"] h1, div[style*="background:#fff"] h2,
div[style*="background:#fff"] h3, div[style*="background:#fff"] h4,
div[style*="background-color:#fff"] h1, div[style*="background-color:#fff"] h2,
div[style*="background-color:#fff"] h3 {
    color: #FFC400 !important;
}

/* === ACCORDION FAQ con fondo amarillo → texto OSCURO === */
.accordion-button, .accordion-header,
button[class*="accordion"], button[aria-expanded] {
    color: #002624 !important;
    font-weight: 800 !important;
}

.accordion-button *, .accordion-header * {
    color: #002624 !important;
}

.accordion-button[aria-expanded="true"] {
    background: #FFC400 !important;
    color: #002624 !important;
}

.accordion-body, .accordion-collapse {
    background: #00807a !important;
    color: #ffffff !important;
    padding: 20px !important;
}

.accordion-body *, .accordion-collapse * {
    color: #ffffff !important;
}

/* === CARDS CON BACKGROUND HARDCODED YELLOW O CREAM (garantías) === */
[class*="garantia"], [class*="benefit"], [class*="feature-card"],
[class*="warranty"], [style*="background:#FFC400"]:not(button):not(.btn) {
    background: #00807a !important;
    color: #ffffff !important;
    border: 3px solid #FFC400 !important;
    border-radius: 14px !important;
}

[class*="garantia"] *, [class*="benefit"] *, [class*="feature-card"] * {
    color: #ffffff !important;
}

[class*="garantia"] h2, [class*="garantia"] h3,
[class*="benefit"] h2, [class*="benefit"] h3,
[class*="feature-card"] h2, [class*="feature-card"] h3 {
    color: #FFC400 !important;
}

/* === DROPDOWN MENU PAÍSES Y PROFESIONES === */
.dropdown-menu, .submenu, .hp-mega,
.dropdown-content, [class*="mega-menu"] {
    background: #001a18 !important;
    border: 2px solid #FFC400 !important;
}

.dropdown-menu a, .submenu a, .hp-mega a,
.dropdown-content a, [class*="mega-menu"] a {
    color: #FFC400 !important;
    background: transparent !important;
    padding: 10px 16px !important;
    display: block !important;
}

.dropdown-menu a:hover, .submenu a:hover, .hp-mega a:hover {
    background: rgba(255,196,0,0.15) !important;
    color: #ffffff !important;
}

/* === MOBILE FIX para cards de /empezar === */
@media (max-width: 768px) {
    /* Grid 2 columnas con gap consistente */
    .empezar-card-pro {
        min-height: 110px !important;
        padding: 16px 10px !important;
        margin-bottom: 12px !important;
        border-radius: 14px !important;
        border-width: 2px !important;
    }
    .empezar-card-title {
        font-size: 0.92rem !important;
        line-height: 1.15 !important;
        margin-bottom: 10px !important;
    }
    .empezar-card-price {
        font-size: 0.9rem !important;
        padding: 5px 14px !important;
        border-width: 2px !important;
    }
    /* Forzar las columnas a tener gap */
    .col-6, [class*="col-6"] {
        padding: 6px !important;
    }
    /* Container con menos padding para aprovechar pantalla */
    .container {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}

@media (max-width: 480px) {
    .empezar-card-pro {
        min-height: 95px !important;
        padding: 14px 8px !important;
    }
    .empezar-card-title {
        font-size: 0.85rem !important;
    }
    .empezar-card-price {
        font-size: 0.85rem !important;
        padding: 4px 12px !important;
    }
}

/* === MOBILE: cards de /empezar SIMPLIFICADAS === */
@media (max-width: 768px) {
    .empezar-card-pro {
        background: #FFC400 !important;
        background-image: none !important;
        min-height: auto !important;
        padding: 14px 10px !important;
        margin: 0 0 10px 0 !important;
        border: 2px solid #002624 !important;
        border-radius: 12px !important;
        box-shadow: 0 3px 8px rgba(0,0,0,0.2) !important;
        flex-direction: column !important;
        gap: 8px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .empezar-card-pro::before { display: none !important; }
    .empezar-card-pro:hover {
        transform: none !important;
        background: #E8AC00 !important;
        background-image: none !important;
    }
    .empezar-card-title {
        font-size: 0.95rem !important;
        font-weight: 800 !important;
        color: #002624 !important;
        line-height: 1.2 !important;
        margin: 0 !important;
        text-shadow: none !important;
    }
    .empezar-card-price {
        font-size: 0.85rem !important;
        background: #002624 !important;
        color: #FFC400 !important;
        padding: 4px 12px !important;
        border: none !important;
        margin: 0 !important;
    }
    .col-6 { padding: 5px !important; }
    .row { margin: 0 !important; }
}

/* === FIX wrappers Diagnóstico y Completo en /empezar === */
/* Wrappers con bg #005954 y padding inline */
div[style*="background:#005954;border-radius:20px"],
div[style*="background:#005954; border-radius:20px"],
#completo {
    padding: 30px 20px !important;
    box-shadow: 0 8px 28px rgba(0,0,0,0.3) !important;
    border: 3px solid #FFC400 !important;
    margin-bottom: 28px !important;
}

/* Texto descripción gris (color:#666) → blanco */
div[style*="background:#005954"] p[style*="color:#666"],
#completo p[style*="color:#666"] {
    color: #ffffff !important;
    opacity: 0.95;
}

/* Mobile: padding aún menor en los wrappers */
@media (max-width: 768px) {
    div[style*="background:#005954;border-radius:20px"],
    #completo {
        padding: 22px 14px !important;
        margin: 0 6px 20px !important;
        border-radius: 16px !important;
    }
    
    /* Header del wrapper más compacto */
    div[style*="background:#005954"] h2 {
        font-size: 1.2rem !important;
    }
    div[style*="background:#005954"] p {
        font-size: 0.85rem !important;
    }
    
    /* Row con gap más pequeño */
    .row.g-3 {
        --bs-gutter-x: 0.5rem !important;
        --bs-gutter-y: 0.5rem !important;
    }
}

@media (max-width: 480px) {
    div[style*="background:#005954;border-radius:20px"],
    #completo {
        padding: 18px 10px !important;
        margin: 0 4px 16px !important;
    }
}

/* === FIX texto cortado a media palabra en mobile === */
.empezar-card-pro,
.empezar-card-title,
.empezar-card-pro * {
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    word-wrap: normal !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
}

@media (max-width: 768px) {
    .empezar-card-pro {
        min-height: 80px !important;
        padding: 12px 8px !important;
        gap: 6px !important;
    }
    .empezar-card-title {
        font-size: 0.85rem !important;
        line-height: 1.15 !important;
        white-space: normal !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
        min-height: 0 !important;
    }
    .empezar-card-price {
        font-size: 0.8rem !important;
        padding: 3px 10px !important;
    }
}

@media (max-width: 480px) {
    .empezar-card-pro {
        min-height: 70px !important;
        padding: 10px 6px !important;
    }
    .empezar-card-title {
        font-size: 0.78rem !important;
    }
}

/* === HAMBURGUESA SOLO EN MOBILE === */
@media (min-width: 992px) {
    .menu-toggle, .mobile-menu-toggle, .hamburger,
    .menu-bar, .navbar-toggler, .nav-toggle,
    button[class*="menu"], [class*="hamburger"],
    .menu-icon, .toggle-menu, .mobile-toggle {
        display: none !important;
        visibility: hidden !important;
    }
}

/* En mobile, hamburguesa visible y menú desktop oculto */
@media (max-width: 991px) {
    .menu-toggle, .mobile-menu-toggle, .hamburger,
    .navbar-toggler, .nav-toggle {
        display: inline-flex !important;
        visibility: visible !important;
    }
}

/* Hamburguesa hp-toggle solo en mobile */
@media (min-width: 992px) {
    .hp-toggle {
        display: none !important;
        visibility: hidden !important;
    }
}

/* === FIX desktop /empezar cards Diagnóstico — sin recortes === */
@media (min-width: 769px) {
    .empezar-card-pro {
        display: block !important;
        min-height: auto !important;
        height: auto !important;
        padding: 22px 16px !important;
        text-align: center !important;
        background: #FFC400 !important;
        background-image: none !important;
        border: 3px solid #002624 !important;
        border-radius: 14px !important;
        box-shadow: 0 6px 18px rgba(0,0,0,0.25) !important;
    }
    .empezar-card-pro::before { display: none !important; }
    .empezar-card-pro:hover {
        transform: translateY(-3px) !important;
        background: #E8AC00 !important;
        background-image: none !important;
        box-shadow: 0 12px 28px rgba(255,196,0,0.4) !important;
    }
    .empezar-card-title {
        display: block !important;
        min-height: auto !important;
        font-size: 1rem !important;
        font-weight: 800 !important;
        color: #002624 !important;
        margin: 0 0 12px 0 !important;
        line-height: 1.25 !important;
        text-shadow: none !important;
        white-space: normal !important;
    }
    .empezar-card-price {
        display: inline-block !important;
        background: #002624 !important;
        color: #FFC400 !important;
        padding: 6px 18px !important;
        border-radius: 999px !important;
        font-size: 0.95rem !important;
        font-weight: 800 !important;
        border: 2px solid #002624 !important;
    }
}

/* === BOTÓN WHATSAPP FLOTANTE === */
.hp-whatsapp {
    position: fixed !important;
    bottom: 24px !important;
    right: 24px !important;
    width: 60px !important;
    height: 60px !important;
    background: #25D366 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 6px 20px rgba(37,211,102,0.5) !important;
    z-index: 9999 !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    border: none !important;
    padding: 0 !important;
    animation: hpWhatsappPulse 2s infinite !important;
}

.hp-whatsapp:hover {
    transform: scale(1.1) !important;
    box-shadow: 0 10px 28px rgba(37,211,102,0.7) !important;
    background: #128C7E !important;
}

.hp-whatsapp svg {
    width: 32px !important;
    height: 32px !important;
    fill: #ffffff !important;
}

@keyframes hpWhatsappPulse {
    0% { box-shadow: 0 6px 20px rgba(37,211,102,0.5), 0 0 0 0 rgba(37,211,102,0.5); }
    70% { box-shadow: 0 6px 20px rgba(37,211,102,0.5), 0 0 0 16px rgba(37,211,102,0); }
    100% { box-shadow: 0 6px 20px rgba(37,211,102,0.5), 0 0 0 0 rgba(37,211,102,0); }
}

@media (max-width: 768px) {
    .hp-whatsapp {
        bottom: 18px !important;
        right: 18px !important;
        width: 54px !important;
        height: 54px !important;
    }
    .hp-whatsapp svg {
        width: 28px !important;
        height: 28px !important;
    }
}

/* === FOOTER: enlaces de profesión PEQUEÑOS (no botones amarillos) === */
footer a[href*="/homologacion-titulo-"],
.footer-area a[href*="/homologacion-titulo-"],
footer a[href*="/homologacion-desde-"],
.footer-area a[href*="/homologacion-desde-"] {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: inline !important;
    color: #ffffff !important;
    font-weight: 400 !important;
    font-size: 0.86rem !important;
    text-decoration: none !important;
}

footer a[href*="/homologacion-titulo-"]:hover,
.footer-area a[href*="/homologacion-titulo-"]:hover {
    background: transparent !important;
    color: #FFC400 !important;
    transform: none !important;
    box-shadow: none !important;
}

/* === FOOTER: estilos limpios generales === */
footer ul {
    list-style: none !important;
    padding: 0 !important;
}

footer ul li {
    color: #bbf7d0 !important;
    padding: 4px 0 !important;
}

footer h3, .footer-area h3 {
    color: #FFC400 !important;
    font-size: 0.95rem !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 16px !important;
}

footer p, .footer-area p {
    color: #bbf7d0 !important;
}

/* === SECCIÓN SOCIAL (las cards de redes) === */
footer a[href*="linkedin.com"],
footer a[href*="facebook.com"],
footer a[href*="wikiversity.org"] {
    background: #0d2b10 !important;
    color: #FFC400 !important;
    border: 2px solid #FFC400 !important;
    border-radius: 14px !important;
    padding: 14px 22px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: all 0.25s ease !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 200px !important;
    justify-content: center !important;
}

footer a[href*="linkedin.com"]:hover,
footer a[href*="facebook.com"]:hover,
footer a[href*="wikiversity.org"]:hover {
    background: #FFC400 !important;
    color: #0a1f0d !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 20px rgba(255,196,0,0.4) !important;
}

@media (max-width: 768px) {
    footer a[href*="linkedin.com"],
    footer a[href*="facebook.com"],
    footer a[href*="wikiversity.org"] {
        min-width: 180px !important;
        padding: 12px 16px !important;
        font-size: 0.85rem !important;
    }
}

/* === FAQ ACCORDION LEGIBILIDAD v47 === */
.accordion-body,
.accordion-collapse,
.accordion-collapse .accordion-body {
    background: #ffffff !important;
    color: #1a2329 !important;
    padding: 22px 26px !important;
    border-radius: 0 0 12px 12px !important;
}
.accordion-body *,
.accordion-collapse *,
.accordion-body p, .accordion-body li, .accordion-body span,
.accordion-collapse p, .accordion-collapse li, .accordion-collapse span {
    color: #1a2329 !important;
    background: transparent !important;
}
.accordion-body a,
.accordion-collapse a {
    color: #005954 !important;
    text-decoration: underline;
}
.accordion-button {
    background: #FFC400 !important;
    color: #002624 !important;
    font-weight: 700 !important;
}
.accordion-button * { color: #002624 !important; }
.accordion-button[aria-expanded="true"] {
    background: #FFC400 !important;
    color: #002624 !important;
}
.accordion-item {
    border: 2px solid #FFC400 !important;
    border-radius: 12px !important;
    margin-bottom: 12px !important;
    overflow: hidden;
}
.faq-content__title,
.faq-section h2 { color: #FFC400 !important; }

/* === FIX HOME GARANTIAS + MOBILE PRECIOS v48 === */
.feature-area .feature-card,
.choose-area .feature-card,
.guarantees-area .feature-card,
section .feature-card { background:#ffffff !important; }

.feature-area .feature-card .title,
.feature-area .feature-card h2, .feature-area .feature-card h3,
.feature-area .feature-card h4, .feature-area .feature-card h5,
.choose-area .feature-card .title,
.choose-area .feature-card h2, .choose-area .feature-card h3,
.choose-area .feature-card h4, .choose-area .feature-card h5,
.guarantees-area .feature-card .title,
.guarantees-area .feature-card h2, .guarantees-area .feature-card h3,
.guarantees-area .feature-card h4 {
    color:#002624 !important;
    text-shadow:none !important;
    -webkit-text-stroke:0 !important;
}
.feature-area .feature-card p, .feature-area .feature-card li,
.choose-area .feature-card p, .choose-area .feature-card li,
.guarantees-area .feature-card p, .guarantees-area .feature-card li {
    color:#1a2329 !important;
}

.bg-white .title, .bg-white h2, .bg-white h3, .bg-white h4,
.card.bg-white h2, .card.bg-white h3, .card.bg-white h4 {
    color:#002624 !important;
}

@media (max-width: 767.98px) {
    .empezar-card-pro, .price-card, .pricing-card {
        width:100% !important; max-width:100% !important;
        margin:0 0 20px 0 !important; padding:24px 20px !important;
        box-sizing:border-box !important;
        word-wrap:break-word !important; overflow-wrap:break-word !important;
        hyphens:none !important;
    }
    .empezar-card-pro .precio, .empezar-card-pro .price,
    .price-card .precio, .price-card .price, .pricing-card .price {
        font-size:2.4rem !important; line-height:1.1 !important;
        word-break:keep-all !important;
    }
    .empezar-card-pro h3, .empezar-card-pro h4,
    .price-card h3, .price-card h4 {
        font-size:1.35rem !important; line-height:1.25 !important;
        word-break:keep-all !important; hyphens:none !important;
    }
    .empezar-card-pro ul li, .price-card ul li, .pricing-card ul li {
        font-size:0.95rem !important; line-height:1.45 !important;
        padding:6px 0 !important; word-break:normal !important;
    }
    .empezar-card-pro .btn, .empezar-card-pro a.btn,
    .price-card .btn, .price-card a.btn,
    .pricing-card .btn {
        display:block !important; width:100% !important;
        padding:14px 16px !important; font-size:1rem !important;
        white-space:normal !important; line-height:1.3 !important;
    }
    body, html {
        overflow-x:hidden !important;
        -webkit-text-size-adjust:100% !important;
    }
}

@supports (-webkit-touch-callout: none) {
    .empezar-card-pro input, .price-card input { font-size:16px !important; }
}

/* === NUCLEAR LEGIBILIDAD v51 - fix definitivo === */

/* HOME garantias profesionales */
.hp-guarantees { background: #005954 !important; }
.hp-guarantees-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
    gap: 20px !important; margin-top: 24px !important;
}
.hp-guarantee-card, .hp-guarantees-grid .hp-guarantee-card {
    background: #ffffff !important; color: #1a2329 !important;
    border-radius: 16px !important; padding: 28px 22px !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.10) !important;
    text-align: center !important;
}
.hp-guarantee-card h4, .hp-guarantees-grid .hp-guarantee-card h4 {
    color: #002624 !important; text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    font-weight: 700 !important; font-size: 1.1rem !important;
    margin: 14px 0 10px !important; line-height: 1.3 !important;
}
.hp-guarantee-card p, .hp-guarantees-grid .hp-guarantee-card p {
    color: #1a2329 !important; margin: 0 !important;
    line-height: 1.55 !important; font-size: 0.95rem !important;
}
.hp-guarantee-icon { font-size: 2.4rem !important; line-height: 1 !important; display: block !important; }
.hp-guarantees .hp-section-head h2 { color: #FFC400 !important; }
.hp-guarantees .hp-section-head p, .hp-guarantees .hp-section-head span { color: #ffffff !important; }

/* EMPEZAR cards 59 EUR */
.empezar-card-pro {
    background: #ffffff !important; border: 2px solid #FFC400 !important;
    border-radius: 12px !important; padding: 16px 10px !important;
    text-align: center !important; text-decoration: none !important;
    box-sizing: border-box !important; min-height: 92px !important;
    display: flex !important; flex-direction: column !important;
    justify-content: center !important; align-items: center !important;
    gap: 8px !important;
    transition: transform .2s ease, box-shadow .2s ease !important;
}
.empezar-card-pro:hover { transform: translateY(-3px) !important; box-shadow: 0 8px 22px rgba(0,89,84,0.18) !important; }
.empezar-card-pro .empezar-card-title {
    color: #002624 !important; font-weight: 700 !important;
    font-size: 0.95rem !important; line-height: 1.2 !important;
    word-break: keep-all !important; hyphens: none !important;
}
.empezar-card-pro .empezar-card-price {
    display: inline-block !important; background: #FFC400 !important;
    color: #002624 !important; border-radius: 20px !important;
    padding: 3px 12px !important; font-size: 0.8rem !important; font-weight: 800 !important;
}

/* UNIVERSAL: cualquier fondo blanco -> texto oscuro */
[style*="background:#fff"], [style*="background: #fff"],
[style*="background:#ffffff"], [style*="background: #ffffff"],
[style*="background:white"], [style*="background: white"],
[style*="background-color:#fff"], [style*="background-color: #fff"],
[style*="background-color:#ffffff"], [style*="background-color: #ffffff"],
[style*="background-color:white"], [style*="background-color: white"],
[style*="background:#f8f9fa"], [style*="background-color:#f8f9fa"],
.bg-white, .bg-light { color: #1a2329 !important; }

[style*="background:#fff"] *, [style*="background: #fff"] *,
[style*="background:#ffffff"] *, [style*="background: #ffffff"] *,
[style*="background:white"] *, [style*="background: white"] *,
[style*="background-color:#fff"] *, [style*="background-color: #fff"] *,
[style*="background-color:#ffffff"] *, [style*="background-color: #ffffff"] *,
[style*="background-color:white"] *, [style*="background-color: white"] *,
[style*="background:#f8f9fa"] *, [style*="background-color:#f8f9fa"] *,
.bg-white p, .bg-white li, .bg-white span, .bg-white td, .bg-white div,
.bg-light p, .bg-light li, .bg-light span, .bg-light td, .bg-light div { color: #1a2329 !important; }

[style*="background:#fff"] h1, [style*="background:#fff"] h2, [style*="background:#fff"] h3, [style*="background:#fff"] h4, [style*="background:#fff"] h5, [style*="background:#fff"] h6, [style*="background:#fff"] .title,
[style*="background: #fff"] h1, [style*="background: #fff"] h2, [style*="background: #fff"] h3, [style*="background: #fff"] h4, [style*="background: #fff"] h5, [style*="background: #fff"] h6, [style*="background: #fff"] .title,
[style*="background:#ffffff"] h1, [style*="background:#ffffff"] h2, [style*="background:#ffffff"] h3, [style*="background:#ffffff"] h
[style*="background: #ffffff"] h1, [style*="background
[
[style*="background-color:#ffffff"] h1, [style*="background-
.bg-white h1, .bg-white h2, .bg-white h3, .bg-white h4, .bg-wh
.bg-light h1, .bg-light h2, .bg-light h3, .bg-light h4, .bg-light 
    color: #002624 !important; text-shadow: none !impor
}

/* Anular .text-white y color:w
.
[style*="background:#fff"] .text-white, [style*="background:#fffff
[style*="background-color:#fff"] .text-white, [style*="backg
.bg-white [style*="color:#fff"], .bg-w
.bg-white [style*="color:#ffffff"], .bg-white [style*="color: 
.bg-white [style*="color:white"], .bg-white [style*="color: whit
[
[style*="background:#ffffff"] [style*="color:#fff"],
[style*="ba
[style*="background-color:#ffffff"] [style*="color:#

/* Cards comunes Viserlab/HiveTheme defensivo */
.choose-card, 
.
.info-card, .service-card, .about-card, .about-item, .single-feature, .single-item {
    background: #ffff
}
.choose-card h2, .choose-card h3, .choose-card h4, .choose-card
.feature-card h2, .feature-card h3, .feature-card h4, .feature-card .title, .feature-card p, .feature-

.feature-item h2, .feature
.feature__item h2, 
.choose__card h2, .choose__card h3, .choose__card h4, .choose__card .titl
.compromiso-card h2, .compromiso-card h3, .compromiso-card h4, .co
.guarantee-card h2, .guarantee-card h3, .guarantee-card h4, .guarant
.commitment-card h2, .commitment-card h3, .commitment-card h4, .com
.info-card h2, .info-card h3, .info-card h4, .info-card .title, 
.service-card h2, .service-card h3, .service-card h4, .service-card .ti
.about-card h2, .about-c
.about-item h2, .about-item h3, .about-item h4, .about-item .title,
.
.single-item h2, .single-item h3, .single-item h4, .single-item .title, .single-item p, .single-item li {
    color: #002
}

/* MOBILE responsive */
@media (max-
    .empezar-card-pro { min-height: 84px !important; paddin
    .empezar-card-pro .empezar-card-title { font-size: 0.82rem 
    .empezar-card-pro .empezar-card-price { font-size: 0.72rem
 
    .hp-guarantee-card { padding: 22px 
    body, html { overflow-x: hidden !important; -webkit-text-size-adj
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .h
}
@supports (-webkit-touch-callout: none) {
    .empezar-card-pro input { font-size: 16px !i
}

sed -i "s|'?v=49'|'?v=51'|g; s|'?v=50'|'?v=51'|g" ~/hom
cd ~/homologa.pro/core && php artisan view:clear && php 

echo ""
echo "=== VERIFICACION ==="
grep "homologa-theme" ~/h
echo "Llaves abren $(grep -o '{' ~/homologa.pro/assets/tem
echo "Reglas hp-guarantee $(grep -c "hp-guarantee" ~/homologa.pro/as
echo "Reglas empezar-card $(grep -c "empezar-card" ~/homologa.pro/assets/t
echo "Reglas bg-white $(grep -c "bg-white" ~/homologa.pro/assets/templ
TS=$(date +%s)
echo "=== 1. LARAVEL: nuclear cache clear ==="
cd ~/homologa.pro/core
php artisan view:clear
php artisan cache:clear
php artisan config:clear
php artisan route:clear
php artisan optimize:clear
echo ""

echo "=== 2. BORRADO MANUAL caches en disco ==="
rm -rf ~/homologa.pro/core/storage/framework/views/*.php 2>/dev/null
rm -rf ~/homologa.pro/core/storage/framework/cache/data/* 2>/dev/null
rm -rf ~/homologa.pro/core/bootstrap/cache/*.php 2>/dev/null
echo "Borrados:"
ls -la ~/homologa.pro/core/storage/framework/views/ | wc -l
ls -la ~/homologa.pro/core/storage/framework/cache/data/ 2>/dev/null | wc -l
echo ""

echo "=== 3. CACHE-BUSTER agresivo: bump version a timestamp ==="
sed -i "s|'?v=[^']*'|'?v=${TS}'|g" ~/homologa.pro/core/resources/views/templates/basic/layouts/app.blade.php
grep "homologa-theme" ~/homologa.pro/core/resources/views/templates/basic/layouts/app.blade.php
echo ""

echo "=== 4. Headers HTTP no-cache para CSS via .htaccess ==="
HTACCESS=~/homologa.pro/.htaccess
if ! grep -q "homologa-theme.css" $HTACCESS; then
cat >> $HTACCESS <<'HTEOF'

# Force fresh CSS for homologa-theme
<FilesMatch "homologa-theme\.css$">
    <IfModule mod_headers.c>
        Header set Cache-Control "no-cache, no-store, must-revalidate, max-age=0"
        Header set Pragma "no-cache"
        Header set Expires "0"
    </IfModule>
</FilesMatch>
HTEOF
echo "Header no-cache anyadido al .htaccess"
else
echo "Ya existia regla en .htaccess"
fi
echo ""

echo "=== 5. Touch timestamps para invalidar mtime ==="
touch ~/homologa.pro/assets/templates/basic/css/homologa-theme.css
touch ~/homologa.pro/core/resources/views/templates/basic/layouts/app.blade.php
echo "Timestamps actualizados"
echo ""

echo "=== 6. VERIFICACION servidor ==="
echo "Version actual en HTML:"
curl -s -A "Mozilla/5.0" "https://homologa.pro/?nocache=$(date +%s)" | grep "homologa-theme" | head -2
echo ""
echo "Headers respuesta CSS:"
curl -sI "https://homologa.pro/assets/templates/basic/css/homologa-theme.css?v=${TS}" | grep -iE "cache-control|expires|pragma|last-modified|etag"

/* ============================================
   FIX v52 - 100% certificado contra el codigo real
   ============================================ */

/* 1) PAGE-COMPARADOR: tabla scroll horizontal en mobile */
.cmp-table { min-width: 720px !important; width: 100% !important; }
.cmp-table th { white-space: nowrap !important; background: #0a1f0d !important; color: #ffffff !important; }
.cmp-table td { white-space: nowrap !important; }
@media (max-width: 768px) {
    .cmp-table { min-width: 720px !important; font-size: 0.78rem !important; }
    .cmp-table th, .cmp-table td { padding: 8px 10px !important; white-space: nowrap !important; }
    .cmp-table th { font-size: 0.7rem !important; line-height: 1.2 !important; }
    .cmp-section [style*="overflow-x:auto"], .cmp-section [style*="overflow-x: auto"] {
        position: relative !important; -webkit-overflow-scrolling: touch !important;
    }
    .cmp-section [style*="overflow-x:auto"]::after {
        content: "→ desliza para ver toda la tabla" !important;
        display: block !important; text-align: center !important;
        font-size: 0.72rem !important; color: #FFC400 !important;
        padding: 6px 0 !important; font-weight: 600 !important;
    }
}

/* 2) EMPEZAR cards mobile: no romper palabras letra a letra */
@media (max-width: 575.98px) {
    .empezar-card-pro {
        min-height: auto !important; padding: 10px 4px !important;
        margin-bottom: 10px !important; border-width: 2px !important;
        border-radius: 10px !important; gap: 4px !important;
    }
    .empezar-card-title {
        font-size: 0.75rem !important; min-height: auto !important;
        margin-bottom: 6px !important; line-height: 1.15 !important;
        word-break: keep-all !important; overflow-wrap: normal !important;
        word-wrap: normal !important; hyphens: none !important;
        -webkit-hyphens: none !important; white-space: normal !important;
        display: block !important;
    }
    .empezar-card-price { font-size: 0.68rem !important; padding: 2px 8px !important; }
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .empezar-card-pro { min-height: auto !important; padding: 14px 8px !important; }
    .empezar-card-title { font-size: 0.88rem !important; min-height: auto !important; }
}

/* 3) COUNTRY: cards Homologacion vs Convalidacion vs Equivalencia */
.country-difference .comparison-card {
    background: #ffffff !important; color: #1a2329 !important;
    border-radius: 16px !important; padding: 24px 22px !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.10) !important;
}
.country-difference .comparison-card h3 {
    color: #002624 !important; font-weight: 800 !important;
    margin-bottom: 8px !important; font-size: 1.25rem !important;
    text-shadow: none !important; -webkit-text-stroke: 0 !important;
}
.country-difference .comparison-card .comparison-label {
    color: #1a2329 !important; font-weight: 600 !important;
    margin-bottom: 14px !important; font-size: 0.95rem !important;
}
.country-difference .comparison-card ul {
    list-style: none !important; padding: 0 !important; margin: 0 0 16px 0 !important;
}
.country-difference .comparison-card ul li {
    color: #1a2329 !important; padding: 8px 0 !important;
    line-height: 1.5 !important; border-bottom: 1px solid #f0f0f0 !important;
    font-size: 0.93rem !important;
}
.country-difference .comparison-card ul li:last-child { border-bottom: none !important; }
.country-difference .comparison-card ul li strong {
    color: #002624 !important; font-weight: 700 !important; margin-right: 4px !important;
}
.country-difference .comparison-card .btn
    display: inline-block !important; background: #FFC400 !important;
    color: #002624 !important; padding: 10px 18px !important;
    border-radius: 8px !important
    font-weight: 700 !important; margin-top: 10px !important;
}
.country-difference .comparison-grid {
    display: grid !important;
    grid-template-columns: re
    gap: 20px !important;
}

/* 4) PROFESSIO
.req-ca

.paquete-card ul li { color: #e8f5f1 !important; }
.error-card { background

.error-card p  { color: #1a2329 !important; }
.
.paquete-card.featured h3, .paquete-card.featured h
.paquete-card.featured p { color: #1a2329 !importa

.paquete-card.featured .price { color: #002624 !important; 

/* 5) HOME garantias */
.hp-guarantee-card { background: #ffffff !
.hp-guarantee-card h4 { color: #002624 !important; }
.hp-guarantee-card p  { color: #1a2329 !important; }
.h
.hp-guarantees .hp-section-head p, .hp-guarantees

/* 6) UNIVERSAL DEFENSIVO 
[style*="background:#fff"] [style*="color:#FFC400"],
[style*="background:#ffff
[style*="background-color:#fff"] [style*="color:#FFC400"],
[style*="background-color:#ffffff"] [st
.bg-white [style*="color:#FFC400"], .bg-light [style*="color:#FFC400"] { color: 
[style*="background:#fff"] strong, [style*="background:#ffffff"] strong,
[style*="backg
.bg-white strong, .bg-light strong { color: #002624 !important; }

/* 7) Mobile glob
@medi
    body, html { overflow-x: hidden !important; -web
    .cmp-section [style*="overflow-x"] { overflow-x: auto !import
    .country-difference .comparison-grid { grid-template-columns:
    .country-difference .comparison-card { padding: 20px 16px !im
}
@media(max-width:575.98px){.empezar-card-pro{min-height:auto!important;padding:8px 4px!important;margin-bottom:8px!important;border-radius:8px!important;gap:3px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}.empezar-card-title{font-size:.72rem!important;min-height:auto!important;margin-bottom:4px!important;line-height:1.1!important;word-break:keep-all!important;hyphens:none!important;-webkit-hyphens:none!important;white-space:normal!important;display:block!important;padding:0!important}.empezar-card-price{font-size:.65rem!important;padding:2px 7px!important}}
