/* SESELINE — revisión final de legibilidad y navegación (21/10/2026).
   Se añade al final para respetar la estructura y lógica ya probadas. */
:root { --ssl-readable:#19384a; --ssl-secondary:#4d6574; --ssl-ocean:#126f82; --ssl-ink-navy:#103649; --ssl-tint:#eff8f9; }

/* Una barra elegante y espaciosa. Se mantiene UNA sola navegación en desktop y móvil. */
@media (min-width:1101px) {
  .main-header .header-upper > .auto-container {width:calc(100% - 44px)!important; max-width:1540px!important; padding:0 14px!important;}
  .main-header .header-upper > .auto-container > .clearfix {min-height:86px!important; gap:clamp(14px,1.5vw,27px)!important;}
  .main-header .header-upper .logo-box {flex:0 0 auto!important;}
  .main-header .header-upper .logo-box .logo img {height:62px!important;max-height:62px!important;max-width:174px!important;}
  .main-header .header-upper .upper-right {flex:1 1 0!important;min-width:0!important;}
  .main-header .nav-outer {justify-content:flex-end!important;width:100%!important;}
  .main-header .main-menu .navigation {display:flex!important;align-items:center!important;justify-content:flex-end!important;column-gap:clamp(9px,1.18vw,21px)!important;}
  .main-header .main-menu .navigation > li {float:none!important;margin:0!important;flex:0 0 auto!important;}
  .main-header .main-menu .navigation > li > a {
    display:inline-flex!important;align-items:center!important;
    padding:27px 3px!important;line-height:28px!important;
    font-size:clamp(11px,.75vw,13px)!important;
    font-weight:750!important;letter-spacing:.015em!important;
    color:#17384c!important;white-space:nowrap!important;
    transition:color .2s ease!important;
  }
  .main-header .main-menu .navigation > li > a:hover,
  .main-header .main-menu .navigation > li.current > a {color:#087c89!important;}
  .main-header .ssl-language-switch {margin-left:clamp(6px,1vw,16px)!important;flex:0 0 auto!important;}
}
@media (min-width:1101px) and (max-width:1249px){
  .main-header .header-upper > .auto-container {width:calc(100% - 24px)!important;padding:0 6px!important;}
  .main-header .header-upper > .auto-container > .clearfix{gap:8px!important;}
  .main-header .header-upper .logo-box .logo img{max-width:136px!important;height:54px!important;max-height:54px!important;}
  .main-header .main-menu .navigation{column-gap:8px!important;}
  .main-header .main-menu .navigation > li > a{font-size:10.5px!important;letter-spacing:0!important;}
  .main-header .ssl-language-switch{margin-left:6px!important;}
}

/* En móvil/tablet respetamos el desplegable y sus submenús. */
@media (max-width:1100px) {
  .main-header .header-upper>.auto-container>.clearfix{gap:10px!important;}
  .main-header .main-menu .navbar-collapse.show{max-height:min(75vh,650px)!important;overflow-y:auto!important;overscroll-behavior:contain;}
  .main-header .main-menu .navigation > li > a{letter-spacing:.01em!important;font-size:13px!important;font-weight:750!important;}
  .main-header .main-menu .navigation > li > ul li > a{font-size:13px!important;line-height:1.45!important;}
  .main-header .ssl-language-switch{border-color:#c6e0e0!important;}
}

/* Fuente estable, sin brillo/máscara que haga desaparecer caracteres. */
.sidebar-page-container .sidebar-title .title,
.sidebar-page-container .sidebar-title h2,
.contact-page-section .sec-title .title,
.contact-page-section .sec-title h2,
.sidebar-page-container .sidebar-title .title-inner,
.sec-title .title,
.sec-title .title-inner .title {
  -webkit-mask-image:none!important;mask-image:none!important;
  animation:none!important;opacity:1!important;visibility:visible!important;
  text-shadow:none!important;
}
.sidebar-page-container .sidebar-title .title {color:#496777!important;font-weight:700!important;font-size:17px!important;line-height:1.55!important;}
.sidebar-page-container .sidebar-title h2 {color:#103649!important;font-weight:800!important;font-size:clamp(24px,2vw,30px)!important;line-height:1.32!important;}
.sidebar-page-container .sidebar-title .title-inner:before,
.contact-page-section .sec-title .title-inner:before{background:#159a9c!important;}
.sidebar-page-container .sidebar-title {margin-bottom:26px!important;}
.sidebar-page-container .sidebar-title .title-inner {padding-left:20px!important;}

/* Panel lateral de servicios: alto contraste, sin negro sobre azul. */
.sidebar-page-container .sidebar-blog-category .blog-cat li a{
 color:#17394b!important;background:#f5fafb!important;border:1px solid #dce9ec!important;
 border-radius:10px 25px 25px 10px!important;padding:17px 42px 17px 23px!important;
 font-size:15px!important;font-weight:700!important;line-height:1.45!important;
}
.sidebar-page-container .sidebar-blog-category .blog-cat li.active a,
.sidebar-page-container .sidebar-blog-category .blog-cat li:hover a{
 color:#fff!important;background:linear-gradient(110deg,#103649,#15798c)!important;
 border-color:#146b7e!important;box-shadow:0 7px 18px rgba(16,54,73,.14)!important;
}
.sidebar-page-container .sidebar-blog-category .blog-cat li.active a:before,
.sidebar-page-container .sidebar-blog-category .blog-cat li:hover a:before {color:#fff!important;}
.sidebar-page-container .sidebar-blog-category .blog-cat li.active:before {background:#22c1b6!important;}
.sidebar-page-container .brochure-widget .brouchers a{color:#17394b!important;font-weight:650!important;}
.sidebar-page-container .brochure-widget .brouchers a:hover{color:#0e7888!important;background:#f3fbfb;}
.sidebar-page-container .brochure-widget .brouchers .icon{color:#146b7e!important;}

/* Encabezados, descripciones y links de secciones claras. */
.contact-page-section .sec-title .title,
.sec-title .title, .sec-title .title-inner .title {color:#4c6877!important;font-weight:700!important;}
.contact-page-section .sec-title h2,
.welcome-section .sec-title h2,
.service-single .lower-content h2,
.service-single .lower-content h3,
.ssl-offices h3,
.sidebar-page-container .content-side h2{color:#123d53!important;opacity:1!important;}
.sidebar-page-container .service-single .lower-content .text,
.sidebar-page-container .service-single .lower-content p,
.contact-page-section .info-column .content-boxed li,
.contact-page-section .info-column .content-boxed .text,
.welcome-section .text {color:#344c5b!important;}
.sidebar-page-container .service-single .lower-content a:not(.theme-btn){color:#087383!important;text-decoration:underline;text-underline-offset:2px;}
.sidebar-page-container .service-single .lower-content a:hover{color:#075362!important;}

/* No forzar texto oscuro dentro de botones con fondo azul/petróleo. */
.theme-btn.btn-style-three,.ssl-track-cta a,.ssl-facebook-button,
.main-footer .ssl-facebook-button{color:#fff!important;}
.main-footer .ssl-facebook-box .ssl-facebook-head{color:#fff!important;}
.main-footer .ssl-facebook-box .ssl-facebook-body{color:#263f50!important;}
.main-footer .ssl-facebook-box .ssl-facebook-body p{color:#425b6a!important;}

/* Formularios y navegación por teclado visibles */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #129795!important;outline-offset:3px!important;}
@media (prefers-reduced-motion:reduce){.main-header .main-menu .navigation>li>a{transition:none!important;}}

/* Llamadas a la acción y envío: blanco sobre azul, incluso dentro de Servicios. */
.sidebar-page-container .ssl-track-cta a,
.sidebar-page-container .service-single .lower-content .ssl-track-cta a,
.contact-page-section .contact-form button[type="submit"],
.contact-form .theme-btn.btn-style-four{
  background:#126f82!important;border:2px solid #126f82!important;color:#fff!important;
  border-radius:26px!important;box-shadow:0 5px 16px rgba(18,111,130,.17)!important;
  font-weight:750!important;transition:background .2s ease,box-shadow .2s ease!important;
}
.sidebar-page-container .service-single .lower-content .ssl-track-cta a:hover,
.contact-page-section .contact-form button[type="submit"]:hover,
.contact-form .theme-btn.btn-style-four:hover{
  background:#0e5569!important;border-color:#0e5569!important;color:#fff!important;
  box-shadow:0 9px 22px rgba(18,111,130,.24)!important;
}
.contact-page-section .contact-form button[type="submit"]:disabled {background:#6c818a!important;border-color:#6c818a!important;color:#fff!important;opacity:.66!important;}
