/* Innova IT Systems — identidad y adaptación */
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { font-family: Inter, "Segoe UI", Arial, sans-serif; }
.sitePage { scroll-margin-top: 0px; }
.sitePage h2 { font-weight: 700 !important; }
.sitePage h3 { font-weight: 650 !important; }
#ss-header { border-bottom: 1px solid #294157; }
#ss-header .header-row-content { max-width: 1240px; }
#ss-header #ss-logo > div, #ss-search, #ss-user-access, #ss-contact a[href="tel:"] { display: none !important; }
#ss-logo .logo-header { object-fit: contain; width: 166px; height: 52px !important; }
#ss-menu .ss-menu-item { font-size: 14px; font-weight: 600; }
#ss-menu .ss-menu-item:hover { opacity: .75; }
#ss-contact a { padding: 8px; }
#ss-footer .ss-footer-content { max-width: 1240px; }
#ss-footer-row-1 { grid-template-columns: 1fr 1fr !important; gap: 32px; padding: 40px 24px !important; }
#ss-footer-row-1 > #ss-footer-column-1, #ss-footer-row-2 { display: none !important; }
#ss-menu-footer .menu-container #menu-footer { flex-direction: row !important; gap: 14px 22px; font-size: 13px; }
#ss-contact-footer { font-size: 14px; }
#ss-contact-footer .contact-container { gap: 12px; }
#ss-footnote-footer { border-top: 1px solid #294157; color: #a5bbce; }
#contact .form-control { border: 1px solid #cbd7e3; border-radius: 8px; padding: 13px 14px; font-size: 16px; color: #001240; }
#contact .form-control:focus { border-color: #001240; box-shadow: 0 0 0 3px #00124020; }
#contact .ssc-form-checkbox-container { align-items: flex-start; }
a:focus-visible, button:focus-visible { outline: 3px solid #001240; outline-offset: 4px; }
@media (max-width: 767px) {
 .sitePage section { padding: 56px 22px !important; }
 .sitePage h1 { font-size: 40px !important; letter-spacing: -1.6px !important; }
 #ss-footer-row-1 { grid-template-columns: 1fr !important; gap: 28px; }
 #ss-logo .logo-header { width: 146px; height: 46px !important; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

@media (max-width: 991px) {
 #ss-header .ss-mobile { flex-wrap: nowrap !important; padding: 16px 22px !important; }
 #ss-header .ss-mobile .search-break-early { flex: 0 0 auto !important; width: auto !important; min-width: 0 !important; }
 #whatsapp-float { width: 48px !important; height: 48px !important; right: 18px !important; bottom: 18px !important; font-size: 28px !important; line-height: 48px !important; }
}

body { background-color: #001240; }
#ss-header .navbar-toggler i { display: none !important; }
#ss-header .navbar-toggler::before { content: "☰"; display: block; font-family: Arial, sans-serif; font-size: 26px; line-height: 1; color: #ffffff; }
#whatsapp-float { align-items: center !important; justify-content: center !important; }
#whatsapp-float i { margin: 0 !important; line-height: 1 !important; font-size: 28px !important; }
/* Paleta oficial entregada por el diseñador */
:root { --bs-header-bg: #001240 !important; --bs-header-text: #ffffff !important; --bs-footer-bg: #001240 !important; --bs-footer-text: #ffffff !important; --bs-primary: #001240 !important; --bs-secondary: #333333 !important; }
#ss-header, #ss-header .header-row, #ss-header .ss-mobile, #navbarSupportedContent, #ss-footer, #ss-footer .footer-row { background-color: #001240 !important; color: #ffffff !important; }
#ss-header, #ss-footnote-footer { border-color: #333333 !important; }
#ss-logo .logo-header { width: 200px !important; height: 68px !important; object-fit: contain; }
@media(max-width: 767px) { #ss-logo .logo-header { width: 174px !important; height: 59px !important; } }