/* =============================================
   TST HEADER v3.0
   ============================================= */

.tst-header,
.tst-header * { box-sizing: border-box; margin: 0; padding: 0; }

.tst-header {
    font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
    background: #1a2540;
    width: 100%;
    display: block;
    position: sticky;
    top: 0;
    z-index: 99999;
}

/* Neutralizar Elementor completamente */
.elementor-widget-shortcode .elementor-widget-container { padding: 0 !important; }

/* Inner container — centra el contenido */
.tst-inner {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 32px;
    display: flex;
    align-items: center;
    height: 100%;
}

/* TICKER */
.tst-ticker {
    background: #0d1628;
    height: 30px;
    overflow: hidden;
    border-bottom: 1px solid rgba(255,255,255,.07);
}
.tst-ticker-live {
    display: flex;
    align-items: center;
    gap: 7px;
    padding-right: 20px;
    border-right: 1px solid rgba(255,255,255,.09);
    flex-shrink: 0;
    height: 100%;
}
.tst-live-dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: #E63946;
    flex-shrink: 0;
    animation: tst-blink 1.2s ease-in-out infinite;
}
@keyframes tst-blink { 0%,100%{opacity:1} 50%{opacity:.2} }
.tst-live-label {
    font-size: 9px; font-weight: 700; letter-spacing: .1em;
    color: #E63946; text-transform: uppercase; white-space: nowrap;
}
.tst-ticker-track { flex: 1; overflow: hidden; padding-left: 20px; }
.tst-ticker-inner {
    display: flex; white-space: nowrap;
    animation: tst-scroll 34s linear infinite;
}
@keyframes tst-scroll { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.tst-ticker-seg { font-size: 11px; color: rgba(200,215,240,.52); flex-shrink: 0; }
.tst-ticker-sep { font-size: 11px; color: rgba(255,255,255,.2); flex-shrink: 0; padding: 0 16px; }

/* MAIN NAV */
.tst-nav {
    height: 60px;
    background: #1a2540;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.tst-hamburger { display: none; }

.tst-logo-zone {
    display: flex; align-items: center; text-decoration: none;
    flex-shrink: 0; padding-right: 28px;
    border-right: 1px solid rgba(255,255,255,.08);
    height: 100%;
}
.tst-logo-img {
    display: block; height: auto; max-height: 38px;
    width: auto; object-fit: contain;
}

/* NAV LINKS */
.tst-nav-links {
    display: flex; align-items: stretch;
    flex: 1; height: 100%; padding-left: 4px;
    overflow-x: auto; scrollbar-width: none;
}
.tst-nav-links::-webkit-scrollbar { display: none; }
.tst-nl {
    display: flex; align-items: center;
    padding: 0 16px;
    font-size: 11px; font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase;
    color: rgba(200,220,255,.55);
    text-decoration: none;
    border-bottom: 2px solid transparent;
    white-space: nowrap; height: 100%; flex-shrink: 0;
    transition: color .15s, border-color .15s;
}
.tst-nl:hover   { color: #e8eef8; }
.tst-nl--active { color: #fff !important; border-bottom-color: #E63946; }

/* NAV RIGHT */
.tst-nav-right {
    display: flex; align-items: center; gap: 8px;
    flex-shrink: 0; padding-left: 20px;
    border-left: 1px solid rgba(255,255,255,.08);
    height: 100%;
}
.tst-search-pill {
    display: flex; align-items: center; gap: 7px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 20px; padding: 6px 14px;
    cursor: pointer; color: rgba(200,218,248,.5);
    font-family: inherit; transition: background .2s;
}
.tst-search-pill:hover { background: rgba(255,255,255,.1); }
.tst-search-pill span { font-size: 11px; color: rgba(180,200,240,.45); font-family: inherit; }
.tst-soc {
    width: 32px; height: 32px; border-radius: 6px;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.1);
    display: flex; align-items: center; justify-content: center;
    text-decoration: none; color: rgba(220,232,255,.75);
    flex-shrink: 0; transition: background .15s;
}
.tst-soc:hover { background: rgba(255,255,255,.15); }

/* SUBNAV */
.tst-subnav {
    background: #131e35;
    border-bottom: 1px solid rgba(255,255,255,.06);
    height: 36px;
}
.tst-sn {
    font-size: 11.5px; font-weight: 600;
    color: rgba(200,220,255,.68);
    padding: 0 14px; height: 36px;
    display: flex; align-items: center;
    text-decoration: none; white-space: nowrap;
    letter-spacing: .01em;
    border-bottom: 2px solid transparent;
    flex-shrink: 0;
    transition: color .15s, border-color .15s;
}
.tst-sn:hover { color: #fff; border-bottom-color: rgba(255,255,255,.3); }
.tst-sn--hot { color: #E1FA59 !important; font-weight: 700; }
.tst-sn--hot:hover { color: #f0ff7a !important; border-bottom-color: #E1FA59; }
.tst-sn--hot::before {
    content: ''; width: 5px; height: 5px;
    border-radius: 50%; background: currentColor;
    margin-right: 6px; display: inline-block;
    flex-shrink: 0; vertical-align: middle;
}

/* MOBILE DRAWER */
.tst-mobile-drawer {
    display: none; flex-direction: column;
    background: #111d30; max-height: 0;
    overflow: hidden; transition: max-height .28s ease;
}
.tst-mobile-drawer.open { max-height: 600px; }
.tst-mobile-link {
    display: block; padding: 14px 22px;
    font-size: 13px; font-weight: 600;
    letter-spacing: .05em; text-transform: uppercase;
    color: rgba(200,220,255,.72); text-decoration: none;
    border-bottom: 1px solid rgba(255,255,255,.05);
    transition: color .15s, background .15s;
}
.tst-mobile-link:hover { color: #fff; background: rgba(255,255,255,.04); }
.tst-mobile-link--sub {
    font-size: 11px; font-weight: 500;
    color: rgba(180,200,240,.5);
    padding: 11px 22px 11px 34px;
    text-transform: none; letter-spacing: .02em;
}

/* TABLET ≤ 1024px */
@media (max-width: 1024px) {
    .tst-inner { padding: 0 20px; }
    .tst-nl { padding: 0 12px; font-size: 10.5px; }
    .tst-logo-zone { padding-right: 20px; }
    .tst-nav-right { padding-left: 14px; }
    .tst-search-pill span { display: none; }
    .tst-search-pill { padding: 6px 10px; }
}

/* MOBILE ≤ 680px */
@media (max-width: 680px) {
    .tst-nav { height: 56px; }
    .tst-nav .tst-inner {
        display: grid;
        grid-template-columns: 44px 1fr 44px;
        grid-template-rows: 56px;
        padding: 0 14px;
        gap: 0;
        align-items: center;
    }
    .tst-hamburger {
        display: flex; flex-direction: column;
        justify-content: center; align-items: center;
        gap: 5px; width: 38px; height: 38px;
        background: rgba(255,255,255,.07);
        border: 1px solid rgba(255,255,255,.1);
        border-radius: 7px; cursor: pointer;
        grid-column: 1; justify-self: start;
    }
    .tst-hamburger span {
        display: block; width: 18px; height: 1.5px;
        background: rgba(220,232,255,.85); border-radius: 2px;
        transition: transform .2s, opacity .2s;
        transform-origin: center;
    }
    .tst-hamburger.open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
    .tst-hamburger.open span:nth-child(2) { opacity: 0; }
    .tst-hamburger.open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }
    .tst-logo-zone {
        grid-column: 2; justify-content: center;
        border-right: none; padding-right: 0; height: auto;
    }
    .tst-logo-img { max-height: 30px; max-width: 130px; }
    .tst-nav-links { display: none; }
    .tst-nav-right { display: none; }
    .tst-mobile-drawer { display: flex; }
    .tst-ticker { height: 26px; }
    .tst-ticker-seg { font-size: 10px; }
    .tst-ticker-live { padding-right: 12px; }
    .tst-ticker-track { padding-left: 12px; }
    .tst-ticker .tst-inner { padding: 0 14px; }
    .tst-subnav { display: none; }
}

@media (max-width: 380px) {
    .tst-nav .tst-inner { padding: 0 10px; }
    .tst-logo-img { max-height: 26px; max-width: 110px; }
}
