/* ========================= GENERAL Y TOP BAR ========================= */
.solinco-header {width:100%;  position:sticky; top:0; z-index:1050; transition:all .5s ease;}
.top-header { border-bottom:1px solid #145ca8; }
.top-content { height:65px; padding:0 40px; display:flex; justify-content:space-between; align-items:center; }
.country-info { display:flex; align-items:center; gap:25px; }
.country-item { display:flex; gap:8px; font-size:13px; line-height:18px; }
.separator { width:1px; height:35px; background:#555; }
.header-icons { font-size:25px; display:flex; gap:25px; }

/* ========================= HEADER PRINCIPAL ========================= */
.main-header { height:90px; }
.header-container { height:100%; padding:0 40px; display:flex; align-items:center; justify-content:space-between; }
.solinco-logo img { width:230px; }

/* ========================= MENU DESKTOP ========================= */
.main-menu { display:flex; gap:38px; list-style:none; margin:0; padding:0; }
.main-menu > li { position:relative; }
.main-menu > li > a { color:white; text-decoration:none; font-size:16px; padding:35px 0; display:block; }
.main-menu > li:hover > a { color:#1c73c8; }
.menu-item-has-children > a::after { content:"▾"; margin-left:2px; }

.sub-menu { position:absolute; top:75px; left:0; background:black; min-width:220px; padding:10px 0; list-style:none; opacity:0; visibility:hidden; transform:translateY(15px); transition:.25s; z-index:999; }
.main-menu li:hover > .sub-menu { opacity:1; visibility:visible; transform:translateY(0); }
.sub-menu a { display:block; padding:12px 20px; color:#ffffff; text-decoration:none; }
.sub-menu a:hover { background:#19549C; }

/* ========================= MENU MOBILE ========================= */
.mobile-toggle { background:none; border:0; color:white; font-size:32px; cursor:pointer; }
.mobile-panel { position:fixed; top:0; right:-350px; width:320px; height:100vh; background:#000; z-index:9999; transition:.3s ease; overflow-y:auto; }
.mobile-panel.show { right:0; }
.mobile-header { display:flex; justify-content:space-between; align-items:center; padding:20px; border-bottom:1px solid #333; }
.mobile-header button { background:none; border:0; color:white; font-size:28px; cursor:pointer; }
.mobile-logo { width:170px; }
.mobile-nav { list-style:none; padding:20px; margin:0; }
.mobile-nav .sub-menu li { border-bottom:1px solid #333; }
.mobile-nav a { color:white; text-decoration:none; display:block; padding:15px 0; font-size:17px; padding-bottom: 0; }

/* REGLAS PARA MOSTRAR HIJOS SIEMPRE EN MOBILE */
.mobile-nav .sub-menu { 
    display: block !important; 
    visibility: visible !important; 
    opacity: 1 !important; 
    position: static !important; 
    padding-left: 30px !important; 
    padding-top: 0;
    background: #000; 
}
.mobile-nav .sub-menu a { color: #ccc !important; font-size: 15px !important; padding: 10px 0 !important; }
.mobile-nav .menu-item-has-children > a::after { display: none !important; }

.idioma-link {
  cursor: pointer;
  padding: 0 5px;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.5);
  transition: all 0.3s ease;
  font-weight: bold;
}

.idioma-link.active {
  color: #ffffff !important;
}

/* ========================= HEADER SCROLL EFFECT ========================= */

.solinco-header.is-scrolled {
    background:rgba(0,0,0,.85);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    box-shadow:
    0 4px 30px rgba(0,0,0,.5);
}

.solinco-header.is-scrolled .top-header {
    max-height:0;
    opacity:0;
    overflow:hidden;
    border:0;
    padding-top:0;
    padding-bottom:0;

}
.solinco-header.is-scrolled .main-header {
    height:75px;
}


.solinco-header.is-scrolled .solinco-logo img {
    width:190px;
}


