/* TecnoMur · Menú Náutico v1.2.3
   Contraste estable + animaciones sin desplazamiento horizontal */

html,
body.tmn-menu-enabled {
    overflow-x: clip !important;
}
@supports not (overflow: clip) {
    html,
    body.tmn-menu-enabled { overflow-x: hidden !important; }
}

body.tmn-menu-enabled {
    --tmn-header-shadow: 0 16px 42px rgba(2,24,43,.22);
    --tmn-surface: rgba(255,255,255,.10);
    --tmn-surface-strong: rgba(255,255,255,.16);
    --tmn-border-soft: rgba(255,255,255,.17);
}

/* Cabecera exterior */
html body.tmn-menu-enabled .tmn-nav-header {
    position: relative;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: var(--tmn-header-height) !important;
    margin: 0 !important;
    padding: 0 !important;
    background:
        radial-gradient(circle at var(--tmn-pointer-x,72%) var(--tmn-pointer-y,50%), rgba(255,255,255,.09), transparent 24%),
        linear-gradient(110deg,var(--tmn-primary) 0%,var(--tmn-secondary) 100%) !important;
    border: 0 !important;
    border-top: 3px solid var(--tmn-accent) !important;
    border-bottom: 2px solid rgba(242,197,54,.85) !important;
    box-shadow: var(--tmn-header-shadow) !important;
    isolation: isolate;
    z-index: 9998 !important;
    transition: min-height .26s ease, box-shadow .26s ease !important;
}
html body.tmn-menu-enabled .tmn-nav-header::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
    opacity:.34;
    background:
        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:46px 46px;
}
/* Brillo contenido: nunca sale fuera ni altera el ancho */
html body.tmn-menu-enabled.tmn-menu-animations .tmn-nav-header::after {
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    opacity:.3;
    background:linear-gradient(110deg,transparent 0%,transparent 38%,rgba(255,255,255,.13) 50%,transparent 62%,transparent 100%);
    background-size:240% 100%;
    animation:tmnSafeHeaderGlow 8s ease-in-out infinite;
}
html body.tmn-menu-enabled .tmn-nav-header.tmn-nav-sticky { position:sticky !important; top:0; }
html body.admin-bar.tmn-menu-enabled .tmn-nav-header.tmn-nav-sticky { top:32px; }
html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled {
    min-height:var(--tmn-header-height-scroll) !important;
    box-shadow:0 12px 32px rgba(2,24,43,.28) !important;
}

/* Contenedor interior */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-inner,
html body.tmn-menu-enabled .tmn-nav-header .header_wrapper_inside,
html body.tmn-menu-enabled .tmn-nav-header > .header_wrapper,
html body.tmn-menu-enabled .tmn-nav-header > .elementor-container,
html body.tmn-menu-enabled .tmn-nav-header > .e-con-inner {
    position:relative !important;
    z-index:3 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:clamp(18px,2.8vw,42px) !important;
    width:min(calc(100% - 36px),var(--tmn-max-width)) !important;
    max-width:var(--tmn-max-width) !important;
    min-height:var(--tmn-header-height) !important;
    margin:0 auto !important;
    padding:0 8px !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    transition:min-height .26s ease !important;
}
html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .tmn-nav-inner,
html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .header_wrapper_inside {
    min-height:var(--tmn-header-height-scroll) !important;
}

/* Logo */
html body.tmn-menu-enabled .tmn-nav-header .logo,
html body.tmn-menu-enabled .tmn-nav-header .logo a {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 auto !important;
    width:auto !important;
    height:auto !important;
    margin:0 !important;
}
html body.tmn-menu-enabled .tmn-nav-header .logo a {
    min-height:58px !important;
    padding:7px 13px !important;
    border-radius:17px !important;
    background:rgba(255,255,255,.97) !important;
    border:1px solid rgba(255,255,255,.42) !important;
    box-shadow:0 12px 28px rgba(0,24,46,.18),inset 0 1px 0 rgba(255,255,255,.9) !important;
    transition:box-shadow .25s ease !important;
}
html body.tmn-menu-enabled .tmn-nav-header .logo a:hover {
    box-shadow:0 16px 34px rgba(0,24,46,.24),0 0 0 4px rgba(242,197,54,.09) !important;
}
html body.tmn-menu-enabled .tmn-nav-header .logo img,
html body.tmn-menu-enabled .tmn-nav-header .custom-logo,
html body.tmn-menu-enabled .tmn-menu-logo {
    display:block !important;
    width:auto !important;
    max-width:var(--tmn-logo-width) !important;
    max-height:50px !important;
    object-fit:contain !important;
    opacity:1 !important;
    filter:none !important;
}

/* Contenedor de navegación */
html body.tmn-menu-enabled .tmn-nav-header #access,
html body.tmn-menu-enabled .tmn-nav-header .main_menu,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu {
    position:static !important;
    flex:1 1 auto !important;
    width:auto !important;
    min-width:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    width:max-content !important;
    max-width:100% !important;
    min-height:54px !important;
    margin:0 auto !important;
    padding:6px !important;
    list-style:none !important;
    border-radius:20px !important;
    background:rgba(2,38,68,.38) !important;
    border:1px solid rgba(255,255,255,.16) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 12px 30px rgba(0,24,46,.10) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li {
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    float:none !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
}

/* Contraste forzado, también contra text-fill del tema */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a,
html body.tmn-menu-enabled .tmn-nav-header #access .menu > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a,
html body.tmn-menu-enabled .tmn-nav-header .main_menu .menu > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a {
    position:relative !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    min-height:42px !important;
    padding:0 15px !important;
    border:0 !important;
    border-radius:14px !important;
    background:transparent !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    opacity:1 !important;
    filter:none !important;
    mix-blend-mode:normal !important;
    text-shadow:0 1px 3px rgba(0,16,32,.42) !important;
    box-shadow:none !important;
    font-family:Roboto,Arial,sans-serif !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:1 !important;
    letter-spacing:.045em !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    transition:color .22s ease,background .22s ease,box-shadow .22s ease !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a *,
html body.tmn-menu-enabled .tmn-nav-header #access .menu > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a *,
html body.tmn-menu-enabled .tmn-nav-header .main_menu .menu > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a * {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    opacity:1 !important;
    fill:currentColor !important;
    stroke:currentColor !important;
    text-shadow:inherit !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a::after {
    content:"";
    position:absolute;
    left:50%;
    bottom:5px;
    width:0;
    height:3px;
    border-radius:999px;
    background:var(--tmn-accent);
    transform:translateX(-50%);
    box-shadow:0 0 12px rgba(242,197,54,.48);
    transition:width .24s ease;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-cta):not(.tmn-menu-phone):hover > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item:not(.tmn-menu-cta):not(.tmn-menu-phone) > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor:not(.tmn-menu-cta):not(.tmn-menu-phone) > a {
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    background:rgba(255,255,255,.13) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 8px 18px rgba(0,20,40,.10) !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-cta):not(.tmn-menu-phone):hover > a::after,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item:not(.tmn-menu-cta):not(.tmn-menu-phone) > a::after,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor:not(.tmn-menu-cta):not(.tmn-menu-phone) > a::after { width:30px; }

/* CTA */
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-cta > a {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    min-height:42px !important;
    padding:0 17px !important;
    border-radius:14px !important;
    color:#042d4d !important;
    -webkit-text-fill-color:#042d4d !important;
    background:linear-gradient(120deg,var(--tmn-accent),#ffe88a,var(--tmn-accent)) !important;
    background-size:220% 100% !important;
    box-shadow:0 12px 26px rgba(242,197,54,.24) !important;
    font:800 13px/1 Roboto,Arial,sans-serif !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
    animation:tmnSafeCtaFlow 4s ease infinite;
    overflow:hidden !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-cta > a * {
    color:#042d4d !important;
    -webkit-text-fill-color:#042d4d !important;
}

/* Teléfono: vale tanto dentro del UL como fuera */
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-phone > a,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-header-phone-link {
    position:relative !important;
    isolation:isolate !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    min-height:46px !important;
    padding:0 18px !important;
    border-radius:15px !important;
    color:#052f50 !important;
    -webkit-text-fill-color:#052f50 !important;
    background:linear-gradient(120deg,#f2c536 0%,#ffe98d 48%,#f2c536 100%) !important;
    background-size:220% 100% !important;
    border:1px solid rgba(255,244,180,.72) !important;
    box-shadow:0 12px 26px rgba(242,197,54,.24),inset 0 1px 0 rgba(255,255,255,.68) !important;
    font:800 14px/1 Roboto,Arial,sans-serif !important;
    letter-spacing:.025em !important;
    text-decoration:none !important;
    text-shadow:none !important;
    overflow:hidden !important;
    contain:paint;
    transition:box-shadow .25s ease !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-phone > a *,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-header-phone-link * {
    position:relative !important;
    z-index:2 !important;
    color:#052f50 !important;
    -webkit-text-fill-color:#052f50 !important;
    fill:currentColor !important;
    stroke:currentColor !important;
    text-shadow:none !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-phone svg,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-header-phone-link svg {
    width:18px !important;
    height:18px !important;
    flex:0 0 auto !important;
}
html body.tmn-menu-enabled.tmn-menu-phone-animated .tmn-nav-header .tmn-menu-phone > a,
html body.tmn-menu-enabled.tmn-menu-phone-animated .tmn-nav-header a.tmn-header-phone-link {
    animation:tmnSafePhone 3.8s ease-in-out infinite !important;
}
html body.tmn-menu-enabled.tmn-menu-phone-animated .tmn-nav-header .tmn-menu-phone > a::before,
html body.tmn-menu-enabled.tmn-menu-phone-animated .tmn-nav-header a.tmn-header-phone-link::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.68) 48%,transparent 76%);
    transform:translateX(-145%) skewX(-16deg);
    animation:tmnSafePhoneSheen 3.8s ease-in-out infinite;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-phone > a:hover,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-header-phone-link:hover {
    box-shadow:0 17px 36px rgba(242,197,54,.38),0 0 0 4px rgba(242,197,54,.10),inset 0 1px 0 rgba(255,255,255,.74) !important;
}

/* Toggle y submenús */
html body.tmn-menu-enabled .tmn-nav-header .tmn-submenu-toggle {
    display:inline-grid !important;
    place-items:center !important;
    width:28px !important;
    height:28px !important;
    margin-left:-10px !important;
    margin-right:4px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:50% !important;
    background:transparent !important;
    color:#fff !important;
    cursor:pointer;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-submenu-toggle svg { width:15px;height:15px;stroke:currentColor !important; }
html body.tmn-menu-enabled .tmn-nav-header .tmn-submenu-open > .tmn-submenu-toggle svg { transform:rotate(180deg); }
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list li > ul:not(.tmn-nav-list) {
    position:absolute !important;
    top:calc(100% + 14px) !important;
    left:0 !important;
    z-index:10000 !important;
    display:block !important;
    min-width:240px !important;
    margin:0 !important;
    padding:10px !important;
    border:1px solid rgba(5,58,102,.11) !important;
    border-radius:18px !important;
    background:rgba(255,255,255,.985) !important;
    box-shadow:0 24px 58px rgba(2,31,55,.22) !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(10px) !important;
    transition:opacity .22s ease,visibility .22s ease,transform .22s ease !important;
    pointer-events:none !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list li:hover > ul.sub-menu,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list li:focus-within > ul.sub-menu,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list li.tmn-submenu-open > ul.sub-menu {
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    pointer-events:auto !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu a {
    display:flex !important;
    align-items:center !important;
    min-height:44px !important;
    padding:0 13px !important;
    border-radius:12px !important;
    color:#123d5d !important;
    -webkit-text-fill-color:#123d5d !important;
    background:transparent !important;
    font:650 14px/1.25 Roboto,Arial,sans-serif !important;
    text-transform:none !important;
    text-decoration:none !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu a:hover {
    color:var(--tmn-primary) !important;
    -webkit-text-fill-color:var(--tmn-primary) !important;
    background:rgba(5,58,102,.075) !important;
}

/* Progreso y utilidades */
html body.tmn-menu-enabled .tmn-scroll-progress {
    position:absolute;
    left:0;
    bottom:-1px;
    z-index:8;
    display:block;
    width:calc(var(--tmn-progress,0) * 100%);
    height:3px;
    background:linear-gradient(90deg,var(--tmn-accent),#fff3a7,var(--tmn-accent));
    box-shadow:0 0 12px rgba(242,197,54,.45);
}
html body.tmn-menu-enabled .tmn-menu-hidden { display:none !important; }
html body.tmn-menu-enabled .tmn-menu-ripple-dot {
    position:absolute;
    width:10px;
    height:10px;
    margin:-5px 0 0 -5px;
    border-radius:50%;
    background:rgba(255,255,255,.32);
    pointer-events:none;
    animation:tmnSafeRipple .62s ease-out forwards;
}
/* Entrada únicamente con opacidad; no mueve geometría */
html body.tmn-menu-enabled.tmn-menu-reveal:not(.tmn-menu-mounted) .tmn-nav-list > li { opacity:0; }
html body.tmn-menu-enabled.tmn-menu-reveal.tmn-menu-mounted .tmn-nav-list > li {
    opacity:1;
    transition:opacity .4s ease calc(var(--tmn-item-index,0) * .055s);
}

@keyframes tmnSafeHeaderGlow {
    0%,25% { background-position:180% 0; opacity:.08; }
    50% { opacity:.34; }
    75%,100% { background-position:-80% 0; opacity:.08; }
}
@keyframes tmnSafeCtaFlow { 0%,100%{background-position:0 50%}50%{background-position:100% 50%} }
@keyframes tmnSafePhone {
    0%,100% { background-position:0 50%; box-shadow:0 12px 26px rgba(242,197,54,.24),inset 0 1px 0 rgba(255,255,255,.68); }
    50% { background-position:100% 50%; box-shadow:0 17px 34px rgba(242,197,54,.38),0 0 0 4px rgba(242,197,54,.09),inset 0 1px 0 rgba(255,255,255,.74); }
}
@keyframes tmnSafePhoneSheen {
    0%,30% { transform:translateX(-145%) skewX(-16deg);opacity:0; }
    44% { opacity:.8; }
    66%,100% { transform:translateX(145%) skewX(-16deg);opacity:0; }
}
@keyframes tmnSafeRipple { to{transform:scale(12);opacity:0;} }

@media (max-width:1180px) {
    html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-inner,
    html body.tmn-menu-enabled .tmn-nav-header .header_wrapper_inside { width:min(calc(100% - 24px),var(--tmn-max-width)) !important;gap:18px !important; }
    html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a { padding-inline:11px !important;font-size:12px !important; }
    html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-phone > a span,
    html body.tmn-menu-enabled .tmn-nav-header a.tmn-header-phone-link span { display:none !important; }
    html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-phone > a,
    html body.tmn-menu-enabled .tmn-nav-header a.tmn-header-phone-link { width:46px !important;min-width:46px !important;padding:0 !important; }
}

@media (max-width:1024px) {
    html body.tmn-menu-enabled .tmn-nav-header,
    html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled { min-height:var(--tmn-mobile-height) !important; }
    html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-inner,
    html body.tmn-menu-enabled .tmn-nav-header .header_wrapper_inside { min-height:var(--tmn-mobile-height) !important;width:calc(100% - 20px) !important;padding:0 !important; }
    html body.tmn-menu-enabled .tmn-nav-header .logo a { min-height:50px !important;padding:6px 10px !important;border-radius:14px !important; }
    html body.tmn-menu-enabled .tmn-nav-header .logo img,
    html body.tmn-menu-enabled .tmn-nav-header .custom-logo { max-width:min(var(--tmn-logo-width),165px) !important;max-height:42px !important; }
    html body.tmn-menu-enabled .tmn-nav-list:not(.tmn-mobile-list) { display:none !important; }
    html body.tmn-menu-enabled .tmn-mobile-ui,
    html body.tmn-menu-enabled .elementor-menu-toggle {
        color:#fff !important;
        -webkit-text-fill-color:#fff !important;
        background:rgba(255,255,255,.12) !important;
        border:1px solid rgba(255,255,255,.16) !important;
        border-radius:14px !important;
    }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list {
        position:absolute !important;
        top:calc(var(--tmn-mobile-height) + 8px) !important;
        left:12px !important;
        right:12px !important;
        width:auto !important;
        max-height:calc(100vh - var(--tmn-mobile-height) - 28px) !important;
        overflow-y:auto !important;
        display:block !important;
        margin:0 !important;
        padding:12px !important;
        border-radius:22px !important;
        background:rgba(255,255,255,.985) !important;
        border:1px solid rgba(5,58,102,.10) !important;
        box-shadow:0 24px 60px rgba(2,31,55,.24) !important;
    }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list > li { display:block !important;width:100% !important; }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list > li > a,
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list > li > a * {
        width:100% !important;
        justify-content:flex-start !important;
        min-height:48px !important;
        color:#143b59 !important;
        -webkit-text-fill-color:#143b59 !important;
        text-shadow:none !important;
        background:transparent !important;
        border-radius:13px !important;
        padding:0 15px !important;
    }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list .tmn-menu-cta > a,
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list .tmn-menu-cta > a * { justify-content:center !important;color:#042d4d !important;-webkit-text-fill-color:#042d4d !important;background:linear-gradient(120deg,var(--tmn-accent),#ffe88a,var(--tmn-accent)) !important; }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list .tmn-menu-phone > a,
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list .tmn-menu-phone > a * { justify-content:flex-start !important;color:#052f50 !important;-webkit-text-fill-color:#052f50 !important;width:100% !important;padding-inline:15px !important; }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list .tmn-menu-phone > a span { display:inline !important; }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list ul.sub-menu { position:static !important;display:none !important;min-width:0 !important;margin-top:4px !important;opacity:1 !important;visibility:visible !important;transform:none !important;pointer-events:auto !important;box-shadow:none !important;border:0 !important;background:rgba(5,58,102,.04) !important; }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list li.tmn-submenu-open > ul.sub-menu { display:block !important; }
}
@media (max-width:782px) { html body.admin-bar.tmn-menu-enabled .tmn-nav-header.tmn-nav-sticky { top:46px; } }
@media (prefers-reduced-motion:reduce) {
    html body.tmn-menu-enabled .tmn-nav-header::after,
    html body.tmn-menu-enabled .tmn-menu-cta > a,
    html body.tmn-menu-enabled .tmn-menu-phone > a,
    html body.tmn-menu-enabled a.tmn-header-phone-link { animation:none !important; }
    html body.tmn-menu-enabled *,
    html body.tmn-menu-enabled *::before,
    html body.tmn-menu-enabled *::after { transition-duration:.01ms !important; }
}


/* ========================================================================
   v1.2.3 · Contraste definitivo, logo con borde y teléfono único
   ======================================================================== */

/* El logo deja de mostrarse en una caja blanca por defecto. */
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a {
    min-height: 58px !important;
    padding: 7px 13px !important;
    border-radius: 17px !important;
    background: rgba(2, 39, 69, .22) !important;
    border: 1px solid rgba(242, 197, 54, .72) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 12px 28px rgba(0,24,46,.15) !important;
    backdrop-filter: blur(9px);
    -webkit-backdrop-filter: blur(9px);
}
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a:hover {
    border-color: rgba(255, 226, 102, .96) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 16px 34px rgba(0,24,46,.22), 0 0 0 4px rgba(242,197,54,.08) !important;
}
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo img,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .custom-logo,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .tmn-menu-logo {
    filter: drop-shadow(0 5px 9px rgba(0,20,39,.18)) !important;
}
html body.tmn-menu-enabled.tmn-menu-logo-plain .tmn-nav-header .logo a {
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
html body.tmn-menu-enabled.tmn-menu-logo-light .tmn-nav-header .logo a {
    background: rgba(255,255,255,.97) !important;
    border: 1px solid rgba(255,255,255,.42) !important;
}

/* Contraste amplio para estructuras de menú diferentes a las detectadas. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.menu > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header #access > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header #access > div > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .main_menu > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header nav.main-navigation > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header nav.main-navigation > div > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .menu-main-menu-container > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a {
    color: var(--tmn-text-light, #f4f8fc) !important;
    -webkit-text-fill-color: var(--tmn-text-light, #f4f8fc) !important;
    opacity: 1 !important;
    text-shadow: 0 1px 4px rgba(0,15,30,.46) !important;
    font-weight: 800 !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header #access > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header #access > div > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header .main_menu > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header nav.main-navigation > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header nav.main-navigation > div > ul > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a * {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    opacity: 1 !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta):hover > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor:not(.tmn-menu-phone):not(.tmn-menu-cta) > a {
    color: #fff7cf !important;
    -webkit-text-fill-color: #fff7cf !important;
}

/* Nunca mostramos dos iconos de teléfono en el mismo bloque. */
html body.tmn-menu-enabled .tmn-phone-sibling-icon,
html body.tmn-menu-enabled .tmn-phone-duplicate,
html body.tmn-menu-enabled .tmn-menu-phone.tmn-phone-generated-hidden {
    display: none !important;
}
html body.tmn-menu-enabled .tmn-header-phone-wrap > i,
html body.tmn-menu-enabled .tmn-header-phone-wrap > .fa,
html body.tmn-menu-enabled .tmn-header-phone-wrap > .fas,
html body.tmn-menu-enabled .tmn-header-phone-wrap > .far,
html body.tmn-menu-enabled .tmn-header-phone-wrap > [class*="icon-phone"],
html body.tmn-menu-enabled .tmn-header-phone-wrap > [class*="phone-icon"] {
    display: none !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-phone-svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 auto !important;
}


/* ========================================================================
   v1.2.4 · Tipografía clara, contorno real del logo y desplegable premium
   ======================================================================== */

/* El contorno se aplica al contenido no transparente del logo, no a una caja exterior. */
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a {
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo img,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .custom-logo,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .tmn-menu-logo {
    filter:
        drop-shadow(1px 0 0 rgba(255,225,104,.78))
        drop-shadow(-1px 0 0 rgba(255,225,104,.78))
        drop-shadow(0 1px 0 rgba(255,225,104,.78))
        drop-shadow(0 -1px 0 rgba(255,225,104,.78))
        drop-shadow(0 7px 13px rgba(0,20,40,.25)) !important;
    transition: filter .28s ease, transform .28s ease !important;
}
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a:hover img,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a:hover .custom-logo,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a:hover .tmn-menu-logo {
    transform: translateY(-2px) !important;
    filter:
        drop-shadow(1px 0 0 rgba(255,236,147,.96))
        drop-shadow(-1px 0 0 rgba(255,236,147,.96))
        drop-shadow(0 1px 0 rgba(255,236,147,.96))
        drop-shadow(0 -1px 0 rgba(255,236,147,.96))
        drop-shadow(0 10px 17px rgba(0,20,40,.30))
        drop-shadow(0 0 9px rgba(242,197,54,.22)) !important;
}

/* Texto de primer nivel: blanco real, independientemente de ajustes antiguos o del tema. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.menu:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header #access > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header #access > div > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .main_menu > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header nav.main-navigation > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header nav.main-navigation > div > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .menu-main-menu-container > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a {
    color: #f7fbff !important;
    -webkit-text-fill-color: #f7fbff !important;
    caret-color: #f7fbff !important;
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    text-shadow: 0 2px 6px rgba(0,16,32,.55) !important;
    border: 1px solid transparent !important;
    outline: 0 !important;
    background-color: transparent !important;
    box-shadow: none !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header #access > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header #access > div > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header .main_menu > ul:not(.sub-menu) > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a * {
    color: #f7fbff !important;
    -webkit-text-fill-color: #f7fbff !important;
    fill: currentColor !important;
    stroke: currentColor !important;
    opacity: 1 !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta):hover > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.tmn-submenu-open:not(.tmn-menu-phone):not(.tmn-menu-cta) > a {
    color: #fff5bf !important;
    -webkit-text-fill-color: #fff5bf !important;
    border-color: rgba(242,197,54,.24) !important;
    background: rgba(255,255,255,.10) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.11), 0 8px 18px rgba(0,20,40,.11) !important;
}

/* Desplegable oscuro y coherente con el resto del diseño. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list li > ul:not(.tmn-nav-list),
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.sub-menu,
html body.tmn-menu-enabled .tmn-nav-header #access ul.sub-menu,
html body.tmn-menu-enabled .tmn-nav-header .main_menu ul.sub-menu {
    min-width: 286px !important;
    padding: 9px !important;
    border: 1px solid rgba(242,197,54,.32) !important;
    border-top: 3px solid var(--tmn-accent) !important;
    border-radius: 0 0 18px 18px !important;
    background:
        radial-gradient(circle at 86% 8%, rgba(242,197,54,.12), transparent 24%),
        linear-gradient(150deg, rgba(3,43,76,.99), rgba(7,72,118,.99)) !important;
    box-shadow: 0 26px 58px rgba(0,20,40,.34), inset 0 1px 0 rgba(255,255,255,.08) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    overflow: hidden !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu > li,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.sub-menu > li,
html body.tmn-menu-enabled .tmn-nav-header #access ul.sub-menu > li,
html body.tmn-menu-enabled .tmn-nav-header .main_menu ul.sub-menu > li {
    display: block !important;
    float: none !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu > li + li,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.sub-menu > li + li {
    margin-top: 4px !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.sub-menu a,
html body.tmn-menu-enabled .tmn-nav-header #access ul.sub-menu a,
html body.tmn-menu-enabled .tmn-nav-header .main_menu ul.sub-menu a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 14px 0 16px !important;
    border: 1px solid transparent !important;
    border-radius: 11px !important;
    background: transparent !important;
    color: #f2f7fb !important;
    -webkit-text-fill-color: #f2f7fb !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    letter-spacing: .015em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    text-shadow: 0 1px 3px rgba(0,15,30,.36) !important;
    box-shadow: none !important;
    transition: color .2s ease, background .2s ease, border-color .2s ease !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu a::before,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.sub-menu a::before {
    content: "";
    width: 6px;
    height: 6px;
    flex: 0 0 auto;
    margin-right: 10px;
    border-radius: 50%;
    background: rgba(242,197,54,.48);
    box-shadow: 0 0 0 4px rgba(242,197,54,.06);
    transition: background .2s ease, box-shadow .2s ease !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu a:hover,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu li.current-menu-item > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu li.current-menu-ancestor > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.sub-menu a:hover,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.sub-menu li.current-menu-item > a {
    color: #fff5bf !important;
    -webkit-text-fill-color: #fff5bf !important;
    border-color: rgba(242,197,54,.18) !important;
    background: linear-gradient(90deg, rgba(242,197,54,.14), rgba(255,255,255,.07)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.07) !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu a:hover::before,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu li.current-menu-item > a::before,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.sub-menu a:hover::before {
    background: var(--tmn-accent) !important;
    box-shadow: 0 0 0 5px rgba(242,197,54,.10), 0 0 10px rgba(242,197,54,.30) !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list ul.sub-menu a *,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-menu ul.sub-menu a * {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

@media (max-width: 1024px) {
    html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a {
        min-height: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list ul.sub-menu {
        border-radius: 14px !important;
        border: 1px solid rgba(5,58,102,.10) !important;
        border-top: 0 !important;
        background: rgba(5,58,102,.045) !important;
        box-shadow: none !important;
    }
    html body.tmn-menu-enabled .tmn-nav-list.tmn-mobile-list ul.sub-menu a {
        color: #143b59 !important;
        -webkit-text-fill-color: #143b59 !important;
        text-shadow: none !important;
        text-transform: none !important;
    }
}


/* ========================================================================
   v1.2.5 · Logo más proporcionado y contraste de menú reforzado
   ======================================================================== */

/* Logo más grande, sin caja exterior y con un borde visual muy sutil. */
html body.tmn-menu-enabled .tmn-nav-header .logo,
html body.tmn-menu-enabled .tmn-nav-header .logo a {
    overflow: visible !important;
}
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a,
html body.tmn-menu-enabled.tmn-menu-logo-plain .tmn-nav-header .logo a {
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
html body.tmn-menu-enabled .tmn-nav-header .logo img,
html body.tmn-menu-enabled .tmn-nav-header .custom-logo,
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-logo {
    width: clamp(190px, 11.4vw, 218px) !important;
    max-width: none !important;
    max-height: 60px !important;
    object-fit: contain !important;
}
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo img,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .custom-logo,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .tmn-menu-logo {
    filter:
        drop-shadow(0 0 .35px rgba(255,234,143,.48))
        drop-shadow(0 6px 11px rgba(0,19,38,.24)) !important;
}
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a:hover img,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a:hover .custom-logo,
html body.tmn-menu-enabled.tmn-menu-logo-outline .tmn-nav-header .logo a:hover .tmn-menu-logo {
    transform: translateY(-1px) !important;
    filter:
        drop-shadow(0 0 .45px rgba(255,239,166,.62))
        drop-shadow(0 8px 14px rgba(0,19,38,.28)) !important;
}

/* Contraste absoluto del primer nivel. Se aplica también a spans insertados por el tema. */
html body.tmn-menu-enabled .tmn-nav-header a.tmn-force-light,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-force-light:link,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-force-light:visited,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-force-light:hover,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-force-light:focus,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-force-light:active {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-shadow: 0 2px 7px rgba(0,15,31,.62) !important;
    mix-blend-mode: normal !important;
    filter: none !important;
    animation-name: none !important;
}
html body.tmn-menu-enabled .tmn-nav-header a.tmn-force-light *,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-force-light::before,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-force-light::after {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    fill: currentColor !important;
    stroke: currentColor !important;
    opacity: 1 !important;
}
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-label {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
    opacity: 1 !important;
}

/* Estados activos y hover: texto claro, detalle dorado y sin fondo azul agresivo. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta):hover > a.tmn-force-light,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item:not(.tmn-menu-phone):not(.tmn-menu-cta) > a.tmn-force-light,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor:not(.tmn-menu-phone):not(.tmn-menu-cta) > a.tmn-force-light,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.tmn-submenu-open:not(.tmn-menu-phone):not(.tmn-menu-cta) > a.tmn-force-light {
    color: #fff6c7 !important;
    -webkit-text-fill-color: #fff6c7 !important;
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(242,197,54,.36) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.09), 0 8px 18px rgba(0,20,40,.11) !important;
}

/* Desplegable: mejor lectura y coherencia con la cabecera. */
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu {
    background: linear-gradient(155deg, rgba(3,39,70,.99), rgba(6,73,121,.99)) !important;
    border: 1px solid rgba(242,197,54,.30) !important;
    border-top: 3px solid var(--tmn-accent) !important;
    border-radius: 0 0 16px 16px !important;
    padding: 10px !important;
    box-shadow: 0 26px 58px rgba(0,19,38,.34) !important;
}
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu > li > a,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu > li > a:link,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu > li > a:visited {
    color: #f7fbff !important;
    -webkit-text-fill-color: #f7fbff !important;
    background: transparent !important;
    border-radius: 10px !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    text-shadow: 0 1px 4px rgba(0,14,28,.45) !important;
}
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu > li > a *,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu > li > a::before,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu > li > a::after {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu > li:hover > a,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu > li.current-menu-item > a {
    color: #fff5bd !important;
    -webkit-text-fill-color: #fff5bd !important;
    background: rgba(255,255,255,.09) !important;
}

@media (max-width: 1180px) {
    html body.tmn-menu-enabled .tmn-nav-header .logo img,
    html body.tmn-menu-enabled .tmn-nav-header .custom-logo,
    html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-logo {
        width: clamp(170px, 15vw, 195px) !important;
        max-height: 54px !important;
    }
}
@media (max-width: 767px) {
    html body.tmn-menu-enabled .tmn-nav-header .logo img,
    html body.tmn-menu-enabled .tmn-nav-header .custom-logo,
    html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-logo {
        width: clamp(145px, 48vw, 180px) !important;
        max-height: 48px !important;
    }
}


/* ========================================================================
   v1.2.6 · Texto blanco garantizado + logo legible sin recuadro
   ======================================================================== */
html body.tmn-menu-enabled .tmn-nav-header .logo a,
html body.tmn-menu-enabled .tmn-nav-header .site-logo a {
    position: relative !important;
    min-height: 64px !important;
    padding: 4px 8px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

html body.tmn-menu-enabled .tmn-nav-header .logo a::before,
html body.tmn-menu-enabled .tmn-nav-header .site-logo a::before {
    content: "";
    position: absolute;
    left: 4%;
    right: 4%;
    top: 14%;
    bottom: 14%;
    border-radius: 50%;
    background: radial-gradient(ellipse at center, rgba(255,255,255,.16), rgba(255,255,255,.055) 52%, transparent 74%);
    filter: blur(7px);
    pointer-events: none;
    z-index: 0;
}

html body.tmn-menu-enabled .tmn-nav-header .logo img,
html body.tmn-menu-enabled .tmn-nav-header .custom-logo,
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-logo,
html body.tmn-menu-enabled .tmn-nav-header .site-logo img {
    position: relative !important;
    z-index: 1 !important;
    max-width: var(--tmn-logo-width) !important;
    max-height: 60px !important;
    filter:
        drop-shadow(0 0 1px rgba(255,255,255,.90))
        drop-shadow(0 0 3px rgba(255,255,255,.30))
        drop-shadow(0 8px 13px rgba(0,18,36,.20)) !important;
}

/* El texto visible se duplica mediante un pseudo-elemento blanco. De este
   modo, ni el color ni el text-fill del tema pueden oscurecerlo. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a.tmn-white-label-proxy,
html body.tmn-menu-enabled .tmn-nav-header #access .menu > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a.tmn-white-label-proxy,
html body.tmn-menu-enabled .tmn-nav-header .main_menu .menu > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a.tmn-white-label-proxy {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    text-shadow: none !important;
    isolation: isolate;
}

html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a.tmn-white-label-proxy::before,
html body.tmn-menu-enabled .tmn-nav-header #access .menu > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a.tmn-white-label-proxy::before,
html body.tmn-menu-enabled .tmn-nav-header .main_menu .menu > li:not(.tmn-menu-cta):not(.tmn-menu-phone) > a.tmn-white-label-proxy::before {
    content: attr(data-tmn-visible-label) !important;
    position: relative !important;
    inset: auto !important;
    display: inline-block !important;
    z-index: 3 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    font: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
    white-space: nowrap !important;
    text-shadow: 0 2px 7px rgba(0,14,30,.62) !important;
    pointer-events: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header a.tmn-white-label-proxy > .tmn-menu-label {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Flechas/indicadores del elemento padre también claros. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-has-submenu > .tmn-submenu-toggle,
html body.tmn-menu-enabled .tmn-nav-header .tmn-has-submenu > .tmn-submenu-toggle svg,
html body.tmn-menu-enabled .tmn-nav-header .tmn-has-submenu > .tmn-submenu-toggle path {
    color: #ffffff !important;
    stroke: #ffffff !important;
    opacity: 1 !important;
}

/* Desplegable: lectura estable y sin colores heredados del tema. */
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu,
html body.tmn-menu-enabled .tmn-nav-header .sub-menu {
    background: linear-gradient(155deg, #073c68 0%, #0a527f 100%) !important;
    border: 1px solid rgba(242,197,54,.28) !important;
    border-top: 3px solid var(--tmn-accent) !important;
}

html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu li,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu li:hover,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu li.current-menu-item {
    background: transparent !important;
}

html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu a,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu a *,
html body.tmn-menu-enabled .tmn-nav-header .sub-menu a,
html body.tmn-menu-enabled .tmn-nav-header .sub-menu a * {
    color: #f8fbff !important;
    -webkit-text-fill-color: #f8fbff !important;
    opacity: 1 !important;
    text-shadow: 0 1px 3px rgba(0,12,25,.28) !important;
}

html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu a:hover,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu li:hover > a,
html body.tmn-menu-enabled .tmn-nav-header ul.sub-menu li.current-menu-item > a {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: rgba(242,197,54,.16) !important;
    box-shadow: inset 4px 0 0 var(--tmn-accent) !important;
}

@media (max-width: 1024px) {
    html body.tmn-menu-enabled .tmn-nav-header .logo img,
    html body.tmn-menu-enabled .tmn-nav-header .custom-logo,
    html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-logo,
    html body.tmn-menu-enabled .tmn-nav-header .site-logo img {
        max-height: 52px !important;
    }
}


/* ========================================================================
   v1.2.7 · Logotipo específico para fondo oscuro + etiquetas blancas reales
   ======================================================================== */
html body.tmn-menu-enabled .tmn-nav-header .logo,
html body.tmn-menu-enabled .tmn-nav-header .site-logo,
html body.tmn-menu-enabled .tmn-nav-header .logo a,
html body.tmn-menu-enabled .tmn-nav-header .site-logo a {
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header .logo a::before,
html body.tmn-menu-enabled .tmn-nav-header .logo a::after,
html body.tmn-menu-enabled .tmn-nav-header .site-logo a::before,
html body.tmn-menu-enabled .tmn-nav-header .site-logo a::after {
    content: none !important;
    display: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header .logo img.tmn-menu-logo,
html body.tmn-menu-enabled .tmn-nav-header .custom-logo.tmn-menu-logo,
html body.tmn-menu-enabled .tmn-nav-header .site-logo img.tmn-menu-logo,
html body.tmn-menu-enabled .tmn-nav-header img.tmn-menu-logo[data-tmn-dark-logo="yes"] {
    display: block !important;
    width: clamp(238px, 17vw, 270px) !important;
    max-width: none !important;
    min-width: 238px !important;
    height: auto !important;
    max-height: 68px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 9px 16px rgba(0,18,36,.25)) !important;
    opacity: 1 !important;
}

/* Se desactiva el antiguo texto generado mediante pseudo-elemento. */
html body.tmn-menu-enabled .tmn-nav-header a.tmn-white-label-proxy::before {
    content: none !important;
    display: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header a.tmn-solid-white-anchor,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-solid-white-anchor:link,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-solid-white-anchor:visited,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-solid-white-anchor:hover,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-solid-white-anchor:focus,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-solid-white-anchor:active {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-shadow: none !important;
    mix-blend-mode: normal !important;
    filter: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header a.tmn-solid-white-anchor > .tmn-solid-white-label {
    position: relative !important;
    z-index: 15 !important;
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    clip: auto !important;
    overflow: visible !important;
    white-space: nowrap !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    font: inherit !important;
    font-weight: 700 !important;
    letter-spacing: .015em !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 7px rgba(0,15,31,.55) !important;
    mix-blend-mode: normal !important;
    filter: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header a.tmn-solid-white-anchor > .tmn-menu-label {
    display: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header .tmn-has-submenu > .tmn-submenu-toggle,
html body.tmn-menu-enabled .tmn-nav-header .tmn-has-submenu > .tmn-submenu-toggle svg,
html body.tmn-menu-enabled .tmn-nav-header .tmn-has-submenu > .tmn-submenu-toggle path {
    color: #ffffff !important;
    stroke: #ffffff !important;
    fill: none !important;
    opacity: 1 !important;
}

@media (max-width: 1024px) {
    html body.tmn-menu-enabled .tmn-nav-header .logo img.tmn-menu-logo,
    html body.tmn-menu-enabled .tmn-nav-header .custom-logo.tmn-menu-logo,
    html body.tmn-menu-enabled .tmn-nav-header .site-logo img.tmn-menu-logo {
        width: clamp(205px, 28vw, 238px) !important;
        min-width: 205px !important;
        max-height: 58px !important;
    }
}

@media (max-width: 767px) {
    html body.tmn-menu-enabled .tmn-nav-header .logo img.tmn-menu-logo,
    html body.tmn-menu-enabled .tmn-nav-header .custom-logo.tmn-menu-logo,
    html body.tmn-menu-enabled .tmn-nav-header .site-logo img.tmn-menu-logo {
        width: clamp(172px, 52vw, 210px) !important;
        min-width: 0 !important;
        max-height: 50px !important;
    }
}


/* ========================================================================
   v1.2.8 · Estado activo blanco + cabecera visualmente invariable al scroll
   ======================================================================== */

/* El scroll no debe modificar altura, fondo, borde, sombra ni opacidad. */
html body.tmn-menu-enabled .tmn-nav-header,
html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header,
html body.tmn-menu-enabled .tmn-nav-header[class*="sticky"],
html body.tmn-menu-enabled .tmn-nav-header[class*="fixed"] {
    min-height: var(--tmn-header-height) !important;
    background:
        radial-gradient(circle at var(--tmn-pointer-x,72%) var(--tmn-pointer-y,50%), rgba(255,255,255,.09), transparent 24%),
        linear-gradient(110deg,var(--tmn-primary) 0%,var(--tmn-secondary) 100%) !important;
    border-top: 3px solid var(--tmn-accent) !important;
    border-bottom: 2px solid rgba(242,197,54,.85) !important;
    box-shadow: var(--tmn-header-shadow) !important;
    opacity: 1 !important;
    filter: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .tmn-nav-inner,
html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .header_wrapper_inside,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-nav-inner,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .header_wrapper_inside {
    min-height: var(--tmn-header-height) !important;
}

/* El logo mantiene la misma imagen, tamaño y tratamiento antes y después del scroll. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-logo,
html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .tmn-menu-logo,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-menu-logo,
html body.tmn-menu-enabled .tmn-nav-header .logo img,
html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .logo img,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .logo img {
    width: clamp(238px, 17vw, 270px) !important;
    min-width: 238px !important;
    max-width: none !important;
    max-height: 68px !important;
    height: auto !important;
    opacity: 1 !important;
    filter: drop-shadow(0 9px 16px rgba(0,18,36,.25)) !important;
    transform: none !important;
}

/* Etiqueta única generada por el plugin. Se usa para impedir cualquier color del tema. */
html body.tmn-menu-enabled .tmn-nav-header a.tmn-fixed-white-anchor,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-fixed-white-anchor:link,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-fixed-white-anchor:visited,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-fixed-white-anchor:hover,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-fixed-white-anchor:focus,
html body.tmn-menu-enabled .tmn-nav-header a.tmn-fixed-white-anchor:active {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-shadow: none !important;
    mix-blend-mode: normal !important;
    filter: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header a.tmn-fixed-white-anchor > .tmn-fixed-white-label {
    position: relative !important;
    z-index: 20 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    font: inherit !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: .015em !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 7px rgba(0,15,31,.48) !important;
    mix-blend-mode: normal !important;
    filter: none !important;
    pointer-events: none !important;
}

/* Cualquier estado activo sigue siendo blanco; el detalle es dorado, no azul. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item > a.tmn-fixed-white-anchor,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-parent > a.tmn-fixed-white-anchor,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor > a.tmn-fixed-white-anchor,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_item > a.tmn-fixed-white-anchor,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_parent > a.tmn-fixed-white-anchor,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_ancestor > a.tmn-fixed-white-anchor,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.active > a.tmn-fixed-white-anchor {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: rgba(255,255,255,.11) !important;
    box-shadow: inset 0 0 0 1px rgba(242,197,54,.22), 0 7px 18px rgba(0,21,42,.12) !important;
}

html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item > a.tmn-fixed-white-anchor > .tmn-fixed-white-label,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-parent > a.tmn-fixed-white-anchor > .tmn-fixed-white-label,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor > a.tmn-fixed-white-anchor > .tmn-fixed-white-label,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_item > a.tmn-fixed-white-anchor > .tmn-fixed-white-label,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_parent > a.tmn-fixed-white-anchor > .tmn-fixed-white-label,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_ancestor > a.tmn-fixed-white-anchor > .tmn-fixed-white-label,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.active > a.tmn-fixed-white-anchor > .tmn-fixed-white-label {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item > a.tmn-fixed-white-anchor::after,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-parent > a.tmn-fixed-white-anchor::after,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor > a.tmn-fixed-white-anchor::after,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_item > a.tmn-fixed-white-anchor::after,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_parent > a.tmn-fixed-white-anchor::after,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_ancestor > a.tmn-fixed-white-anchor::after,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.active > a.tmn-fixed-white-anchor::after {
    width: 30px !important;
    background: var(--tmn-accent) !important;
    box-shadow: 0 0 13px rgba(242,197,54,.58) !important;
    animation: tmnActiveUnderline 2.8s ease-in-out infinite !important;
}

@keyframes tmnActiveUnderline {
    0%,100% { opacity: .72; transform: translateX(-50%) scaleX(.82); }
    50% { opacity: 1; transform: translateX(-50%) scaleX(1.08); }
}

@media (max-width: 1024px) {
    html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-logo,
    html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .tmn-menu-logo,
    html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-menu-logo {
        width: clamp(205px, 28vw, 238px) !important;
        min-width: 205px !important;
        max-height: 58px !important;
    }
}

@media (max-width: 767px) {
    html body.tmn-menu-enabled .tmn-nav-header .tmn-menu-logo,
    html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .tmn-menu-logo,
    html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-menu-logo {
        width: clamp(172px, 52vw, 210px) !important;
        min-width: 0 !important;
        max-height: 50px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li > a.tmn-fixed-white-anchor::after {
        animation: none !important;
    }
}


/* ========================================================================
   v1.2.9 · Blanco permanente también en cabecera sticky/clonada del tema
   ======================================================================== */
html body.tmn-menu-enabled,
html body.tmn-menu-enabled.tmn-menu-scrolled {
    --tmn-menu-force-white: #ffffff;
}

/* Fuerza blanco en la cabecera original, sticky, fija o clonada por el tema. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header[class*="sticky"] .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header[class*="fixed"] .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled .tmn-nav-header .menu > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .menu > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a {
    color: var(--tmn-menu-force-white) !important;
    -webkit-text-fill-color: var(--tmn-menu-force-white) !important;
    opacity: 1 !important;
    text-shadow: 0 2px 7px rgba(0,15,31,.48) !important;
    mix-blend-mode: normal !important;
    filter: none !important;
}

html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-nav-list > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled .tmn-nav-header .menu > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a *,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .menu > li:not(.tmn-menu-phone):not(.tmn-menu-cta) > a * {
    color: var(--tmn-menu-force-white) !important;
    -webkit-text-fill-color: var(--tmn-menu-force-white) !important;
    opacity: 1 !important;
    fill: currentColor !important;
    stroke: currentColor !important;
    mix-blend-mode: normal !important;
    filter: none !important;
}

/* La etiqueta generada por el plugin queda blanca en todos los estados. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-fixed-white-label,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-fixed-white-label,
html body.tmn-menu-enabled .tmn-nav-header.tmn-is-scrolled .tmn-fixed-white-label,
html body.tmn-menu-enabled .tmn-nav-header[class*="sticky"] .tmn-fixed-white-label,
html body.tmn-menu-enabled .tmn-nav-header[class*="fixed"] .tmn-fixed-white-label {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-shadow: 0 2px 7px rgba(0,15,31,.48) !important;
    mix-blend-mode: normal !important;
    filter: none !important;
}

/* Estado activo: blanco con detalle dorado, nunca negro o azul. */
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-parent > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_item > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_parent > a,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_ancestor > a,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-nav-list > li.current-menu-item > a,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-nav-list > li.current-menu-parent > a,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor > a,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-nav-list > li.current_page_item > a,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-nav-list > li.current_page_parent > a,
html body.tmn-menu-enabled.tmn-menu-scrolled .tmn-nav-header .tmn-nav-list > li.current_page_ancestor > a {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: rgba(255,255,255,.11) !important;
    box-shadow: inset 0 0 0 1px rgba(242,197,54,.22), 0 7px 18px rgba(0,21,42,.12) !important;
}

html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-item > a *,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-parent > a *,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current-menu-ancestor > a *,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_item > a *,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_parent > a *,
html body.tmn-menu-enabled .tmn-nav-header .tmn-nav-list > li.current_page_ancestor > a * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Neutraliza selectores habituales del tema que recolorean el menú al fijarse. */
html body.tmn-menu-enabled.tmn-menu-scrolled .master_header .menu > li > a,
html body.tmn-menu-enabled.tmn-menu-scrolled .header_wrapper .menu > li > a,
html body.tmn-menu-enabled.tmn-menu-scrolled #access .menu > li > a,
html body.tmn-menu-enabled .master_header_sticky .menu > li > a,
html body.tmn-menu-enabled .sticky_header .menu > li > a,
html body.tmn-menu-enabled .is-sticky .menu > li > a,
html body.tmn-menu-enabled .fixed-header .menu > li > a {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}
