/* Rayo Contacto Pro — Frontend v1.5.0 */

/* Contenedor general */
.rcp-contacto-pro { display:flex; flex-direction:column; gap:30px; margin:20px 0; }
.rcp-intro { margin-bottom: 10px; }
.rcp-footer-email { text-align:center; margin:20px 0; }
.rcp-footer-email i { font-size:16px; margin-right:6px; }

/* Sucursal card */
.rcp-sucursal { display:flex; flex-wrap:wrap; gap:30px; align-items:flex-start; background:#fff; padding:20px; border-radius:10px; box-shadow:0 2px 10px rgba(0,0,0,.05); }
.rcp-sucursal__datos { flex:1 1 40%; min-width:300px; }
.rcp-sucursal__mapa { flex:1 1 55%; min-width:320px; }
.rcp-sucursal__datos h3 { margin:0 0 6px; }
.rcp-sucursal__datos p { margin:6px 0; display:flex; align-items:center; gap:8px; font-size:15px; }
.rcp-sucursal__datos i { font-size:16px; color:#333; }

/* Map iframe */
.rcp-mapa-iframe-wrap { width:100%; position:relative; padding-bottom:56.25%; height:0; overflow:hidden; border-radius:8px; box-shadow:0 4px 18px rgba(0,0,0,.08); }
.rcp-mapa-iframe-wrap iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }

/* Floating WhatsApp */
.rcp-wa-float { position:fixed; right:20px; bottom:20px; background:#25D366; color:#fff; border-radius:50%; width:55px; height:55px; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 12px rgba(0,0,0,.2); z-index:999; text-decoration:none; }
.rcp-wa-float i { font-size:28px; line-height:1; }

/* Responsive */
@media (max-width: 768px) {
  .rcp-sucursal { flex-direction: column; }
  .rcp-sucursal__datos, .rcp-sucursal__mapa { min-width: 100%; }
}

/* --- INICIO DE LA MODIFICACIÓN --- */
/* Reglas de visibilidad para el botón de WA */

/* 1. Ocultar en desktop si la clase .rcp-wa-hide-desktop está presente */
.rcp-wa-float.rcp-wa-hide-desktop {
    display: none;
}

/* 2. Media Query para móviles (768px o menos) */
@media (max-width: 768px) {
    /* 2a. Ocultar en mobile si la clase .rcp-wa-hide-mobile está presente */
    .rcp-wa-float.rcp-wa-hide-mobile {
        display: none;
    }

    /* 2b. FORZAR que se muestre si estaba oculto en desktop pero SÍ debe verse en mobile */
    /* (Sobreescribe la regla .rcp-wa-hide-desktop de arriba) */
    .rcp-wa-float.rcp-wa-hide-desktop {
        display: flex;
    }
    .rcp-wa-float { position:fixed; right:20px; bottom:100px !important; background:#25D366; color:#fff; border-radius:50%; width:55px; height:55px; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 12px rgba(0,0,0,.2); z-index:999; text-decoration:none; }

}
/* --- FIN DE LA MODIFICACIÓN --- */

/* --- INICIO NUEVO (REEMPLAZO TOTAL DE ESTILOS SOCIALES) --- */

/* [cdtsocialicons] - Iconos en línea (Default color) */
.rcp-social-icons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* Margen de 10px entre elementos */
    align-items: center;
}
.rcp-social-icons a {
    font-size: 24px;
    color: var(--e-global-color-primary); /* Color del icono */
    text-decoration: none;
    transition: opacity 0.2s;
}
.rcp-social-icons a:hover {
    opacity: 0.7;
}

/* --- INICIO NUEVA MODIFICACIÓN --- */
/* [cdtsocialicons_claro] */
.rcp-social-icons--claro a {
    color: white;
}
.rcp-social-icons--claro a:hover {
    opacity: 0.8;
}

/* [cdtsocialicons_oscuro] */
.rcp-social-icons--oscuro a {
    color: black;
}
.rcp-social-icons--oscuro a:hover {
    opacity: 0.7;
}
/* --- FIN NUEVA MODIFICACIÓN --- */


/* [cdtsocialicons_lista] - Icono y Texto en línea */
.rcp-social-list-horizontal {
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* Margen de 10px entre elementos */
    align-items: center;
}
.rcp-social-list-item-horizontal {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 16px;
    color: black;
    text-decoration: none;
}
.rcp-social-list-item-horizontal i {
    font-size: 20px;
    color: var(--e-global-color-primary);
    transition: opacity 0.2s;
}
.rcp-social-list-item-horizontal:hover {
    text-decoration: none;
}
.rcp-social-list-item-horizontal:hover i {
    opacity: 0.7;
}

/* [cdtsocialicons_lista_vertical] - Icono y Texto en vertical */
.rcp-social-list-vertical {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
}
.rcp-social-list-item-vertical {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 16px;
    color: black;
    text-decoration: none;
}
.rcp-social-list-item-vertical i {
    font-size: 20px;
    min-width: 20px;
    text-align: center;
    color: var(--e-global-color-primary);
    transition: opacity 0.2s;
}
.rcp-social-list-item-vertical:hover {
    text-decoration: none;
}
.rcp-social-list-item-vertical:hover i {
    opacity: 0.7;
}

/* --- FIN NUEVO (REEMPLAZO) --- */


/* --- INICIO NUEVA MODIFICACIÓN (Shortcodes cdt-suc-N) --- */

/* Estilos base y versión oscura (default) */
.cdt-sucursal-widget {
    margin: 0;
    color: black; /* Color por defecto (negro) */
}
.cdt-sucursal-widget h3 {
    font-size: 16px !important; /* !important para forzar sobre temas */
    font-weight: 700;
    margin: 0 0 10px;
    color: black; /* Color negro (default) */
}
.cdt-sucursal-widget p {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 14px !important; /* !important para forzar sobre temas */
    line-height: 1.4;
    color: black; /* Color negro (default) */

    /* Márgenes solicitados */
    margin-block-start: 0;
    margin-block-end: 8px;
    margin-inline-start: 0;
    margin-inline-end: 0;
}
.cdt-sucursal-widget p:last-child {
    margin-block-end: 0; /* Sin margen en el último ítem */
}
.cdt-sucursal-widget p i {
    font-size: 16px; /* Ajustado para 14px de texto */
    color: black; /* Color negro (default) */
    margin-top: 2px;
    min-width: 18px;
    text-align: center;
}
.cdt-sucursal-widget p a {
    color: black; /* Color negro (default) */
    text-decoration: none;
}
.cdt-sucursal-widget p a:hover {
    text-decoration: none;
}

/* Modificador para la versión clara */
.cdt-sucursal-widget--claro {
    color: white; /* Color blanco */
}
.cdt-sucursal-widget--claro h3 {
    color: white;
}
.cdt-sucursal-widget--claro p {
    color: white;
}
.cdt-sucursal-widget--claro p i {
    color: white;
}
.cdt-sucursal-widget--claro p a {
    color: white;
}
/* --- FIN NUEVA MODIFICACIÓN --- */
