/* SESELINE 2026: cambios incrementales sobre el diseño original */
.ssl-en{display:none!important}body.ssl-english .ssl-es{display:none!important}body.ssl-english .ssl-en{display:block!important}
.ssl-language-switch{position:fixed;top:112px;right:16px;z-index:9999;display:flex;align-items:center;gap:7px;background:#fff;color:#0e3258;box-shadow:0 3px 16px #0003;border:1px solid #dde6f1;border-radius:24px;padding:6px 11px;font:700 13px/1.5 Arial,sans-serif}
.ssl-language-switch button{border:0;background:transparent;color:#17598f;cursor:pointer;padding:3px 7px;min-width:33px;border-radius:12px}
.ssl-language-switch button[aria-pressed=true]{background:#0967a8;color:#fff}
.ssl-language-switch button:focus-visible{outline:2px solid #115ea8;outline-offset:2px}
.ssl-quick-links{position:fixed;right:12px;bottom:18px;display:flex;gap:7px;z-index:9990;font:600 13px Arial,sans-serif}
.ssl-quick-links a{background:#0c6ba6;color:#fff!important;padding:11px 13px;border-radius:24px;box-shadow:0 4px 14px #0004;text-decoration:none}
.ssl-quick-links a:first-child{background:#1c8c59}.ssl-quick-links a:hover{filter:brightness(.93)}
.ssl-bilingual p{line-height:1.7}.ssl-content p{line-height:1.75;margin-bottom:18px;text-align:justify}
.ssl-offices{border-top:1px solid #d7e0e9;margin-top:20px;padding-top:18px}.ssl-offices h3{font-size:20px;color:#125588;margin:15px 0 8px}.ssl-offices p{margin-bottom:18px!important}
.ssl-contact-notice{background:#edf6fc;border-left:4px solid #116aa5;padding:15px;margin-top:20px;color:#163b55}.ssl-contact-notice p{margin-bottom:6px}.ssl-contact-notice a{color:#125588;text-decoration:underline}
.ssl-track-cta a{display:inline-block;background:#166b9f;border-radius:5px;color:white!important;padding:10px 18px;margin-top:14px}
@media(max-width:800px){.ssl-language-switch{top:70px;right:9px}.ssl-quick-links{right:5px;bottom:10px;font-size:11px}.ssl-quick-links a{padding:9px 11px}.ssl-offices h3{font-size:18px}}

/* Correcciones visuales solicitadas: identidad visible y ES/EN legible. */
.main-footer .footer-widget.logo-widget .logo a {
    display: inline-flex; align-items:center; justify-content:center;
    background:#fff; padding:12px; border:1px solid #e4eaf0;
    border-radius:10px; box-shadow:0 6px 22px rgba(0,0,0,.2);
}
.main-footer .footer-widget.logo-widget .logo img {display:block;max-height:104px;object-fit:contain;}
/* La marca en los contenidos bilingües debe mantener contraste, no quedarse gris/traslúcida. */
body.ssl-english .ssl-en {display:revert!important; opacity:1!important;visibility:visible!important;}
body.ssl-english .ssl-es {display:none!important;}
body.ssl-english .ssl-bilingual p,
body.ssl-english .welcome-section .text,
body.ssl-english .welcome-section .text p,
body.ssl-english .mision-section p,
body.ssl-english .mision-section li,
body.ssl-english .obj-ul li,
body.ssl-english .ssl-content p,
body.ssl-english .service-single .lower-content .text,
body.ssl-english .service-single .lower-content p,
body.ssl-english .sec-title .title,
body.ssl-english .contact-page-section .content-boxed,
body.ssl-english .contact-page-section li {color:#202c3c!important;opacity:1!important;}
body.ssl-english .obj-ul.ssl-en li {font-weight:600;line-height:1.8;margin-bottom:10px;}
body.ssl-english .sec-title h2,
body.ssl-english .mision-section h2,
body.ssl-english .service-single h2 {color:#122e72!important;opacity:1!important;}
/* Uniform visual weight regardless of language on headlines. */
.ssl-english .ssl-bilingual,.ssl-english .ssl-bilingual p {font-weight:500;}
.ssl-language-switch {border-color:#b9cee1;box-shadow:0 5px 22px rgba(13,37,73,.18)}
.ssl-language-switch button{font-weight:700}
.ssl-language-switch button:hover:not([aria-pressed=true]){background:#e8f3ff;color:#0a3e66}
/* New company-controlled Facebook access: never show the outdated ALG embed. */
.ssl-facebook-box{width:100%;max-width:420px;background:#fff;color:#263449;
    border:1px solid #d5e2f0;border-radius:16px;overflow:hidden;
    box-shadow:0 7px 22px rgba(0,0,0,.19);font-family:Arial,sans-serif;}
.ssl-facebook-head{display:flex;gap:10px;align-items:center;padding:15px 18px;
    background:#0866ff;color:white;font-size:16px;font-weight:700;}
.ssl-facebook-head .fa{font-size:22px;}
.ssl-facebook-body{padding:20px 18px 22px;text-align:left;color:#28364a;}
.ssl-facebook-body img{width:156px;height:auto;display:block;padding:6px;background:#fff;border:1px solid #edf0f4;border-radius:7px;margin-bottom:12px;}
.ssl-facebook-body h3{font-size:21px;font-weight:800;color:#13315b;margin:0 0 8px;}
.ssl-facebook-body p{font-size:14px;color:#334155!important;line-height:1.65;margin:0 0 15px;}
.ssl-facebook-button{display:inline-flex;gap:9px;align-items:center;justify-content:center;
    border-radius:8px;background:#0866ff;color:#fff!important;font-size:15px;font-weight:700;
    text-align:center;text-decoration:none;padding:12px 20px;min-height:44px;}
.ssl-facebook-button:hover,.ssl-facebook-button:focus{background:#004ecc;color:#fff!important;}
.main-footer .footer-widget.logo-widget .list-style-one li{overflow-wrap:anywhere;}
.main-header .upper-right .info-box a{overflow-wrap:anywhere;}
.main-header .upper-right .theme-btn{font-size:15px!important;white-space:nowrap;}
@media(max-width:767px){.ssl-facebook-box{max-width:100%}.ssl-facebook-body{padding:16px}.ssl-facebook-head{padding:13px}}

/* Revisión V3 — contraste de cabecera, selector con banderas y Facebook incrustado. */
.ssl-language-switch{display:flex;align-items:center;gap:6px;padding:7px;top:112px;right:15px;z-index:10000;border-radius:999px;background:#fff;border:1px solid #cbd5e1}
.ssl-language-switch button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:62px;min-height:38px;padding:5px 7px;border-radius:22px;color:#0f4473;font-size:12px;transition:background-color .16s}
.ssl-language-switch button img{width:27px;height:18px;object-fit:cover;display:block;border:1px solid #e1e7ed;box-shadow:0 1px 3px rgba(0,0,0,.12);border-radius:2px}
.ssl-language-switch button[aria-pressed="true"]{background:#075d9c;color:#fff}
.ssl-language-switch button:hover:not([aria-pressed="true"]){background:#e6f1fd}
.ssl-facebook-embed{width:100%;max-width:400px;margin-inline:auto;background:#fff;color:#263449;font:500 13px/1.5 Arial,sans-serif;border:1px solid #d7dee8;border-radius:12px;overflow:hidden;box-shadow:0 7px 22px rgba(0,0,0,.2)}
/* The current Facebook destination is a public profile, not a Page. Meta only
   returns its compact header (no timeline), so avoid showing 350px of blank iframe. */
.ssl-facebook-embed iframe{display:block;border:0;width:100%;max-width:400px;height:132px;background:#fff}
.ssl-facebook-fallback{margin:0;padding:13px 15px 15px;color:#334155!important;font-size:12px;text-align:center;border-top:1px solid #e4e8ee;background:#f8fafc}
.ssl-facebook-fallback a{display:inline-block;margin-left:5px;padding:7px 12px;border-radius:6px;background:#0866ff;color:#fff!important;font-weight:700;text-decoration:none}
.ssl-hero-title.theme-btn.btn-style-three,
.main-slider .content .ssl-hero-title.theme-btn.btn-style-three{background:#1016b0!important;color:#fff!important;opacity:1!important;text-shadow:0 2px 4px rgba(0,0,0,.25)!important;letter-spacing:.02em}
.main-slider .content .ssl-hero-title.theme-btn.btn-style-three a{color:#fff!important}
/* El encabezado original es oscuro: mostrar el logo sobre un panel claro, no azul sobre negro. */
.main-header .header-upper .logo-box .logo a{display:inline-flex;align-items:center;justify-content:center;background:#fff;padding:5px 12px;border-radius:8px;max-width:100%}
.main-header .header-upper .logo-box .logo img{object-fit:contain;max-height:90px;width:auto;max-width:210px}
/* widget externo en esquinas: reservar pie sin tapar contenido importante */
@media(max-width:767px){.ssl-language-switch{top:80px;right:8px}.ssl-language-switch button{min-width:52px}.ssl-language-switch button img{width:23px;height:16px}.ssl-facebook-embed iframe{max-width:100%}}

/* GetButton's desktop speech labels collide on narrow phones; keep the two
   recognizable action circles and reveal their labels again on wider screens. */
@media(max-width:600px){[id^="gb-widget-"]>div>:first-child{display:none!important}}

/* Botones de respaldo si el script remoto de GetButton está bloqueado. */
.ssl-floating-backup[hidden]{display:none!important}
.ssl-floating-backup .ssl-float-social{position:fixed;left:18px;bottom:25px;z-index:9995;list-style:none}
.ssl-floating-backup .ssl-float-social summary{display:grid;place-items:center;cursor:pointer;border-radius:50%;width:49px;height:49px;background:#e74339;color:#fff;font-size:24px;box-shadow:0 4px 13px #0004;list-style:none}
.ssl-floating-backup .ssl-float-social summary::-webkit-details-marker{display:none}
.ssl-floating-backup .ssl-float-social-links{position:absolute;bottom:62px;left:0;min-width:167px;background:#fff;border:1px solid #dae1eb;padding:9px;border-radius:10px;box-shadow:0 4px 14px #0004}
.ssl-floating-backup .ssl-float-social-links a{display:block;padding:8px 10px;color:#174b86;font:600 14px Arial,sans-serif;text-decoration:none}
.ssl-floating-backup .ssl-float-social-links a:hover{background:#eaf4ff}
.ssl-floating-backup .ssl-float-whatsapp{display:grid;place-items:center;position:fixed;bottom:25px;right:18px;width:49px;height:49px;border-radius:50%;background:#25d366;color:#fff!important;z-index:9995;font-size:29px;box-shadow:0 4px 13px #0004}

/* Formulario anti-spam: estado de carga/configuración de Google reCAPTCHA */
.ssl-captcha-panel { min-height: 90px; }
.ssl-captcha-status { margin: 12px 0; padding: 12px 16px; border-left: 4px solid #1876b4; background: #eef6fc; color: #173d5c; font-size: 14px; line-height: 1.5; }
.ssl-captcha-status[hidden] { display: none !important; }
.contact-form button[type=submit]:disabled { opacity: .55 !important; cursor: not-allowed !important; }
