/* =========================================
           NOVA SESSÃO CNR (GRID, CARDS E TABELA)
           ========================================= */
        .cnr-features-grid {
            display: grid;
            grid-template-columns: 320px 1fr;
            gap: 30px;
            margin-bottom: 50px;
            margin-top: -10px; /* Para ajustar o espaçamento pós-hero */
        }
        @media (max-width: 1000px) {
            .cnr-features-grid { grid-template-columns: 1fr; }
        }

        /* Estilos dos Cards da Esquerda */
        .cnr-list-item { display: flex; align-items: center; gap: 15px; margin-bottom: 20px; color: var(--text-muted); font-weight: 600; font-size: 0.95rem; }
        .cnr-list-icon { width: 40px; height: 40px; background: var(--bg-body); border-radius: 8px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--border-color); }
        
        .cnr-dark-card { background: var(--azul-04); color: white; border-radius: 24px; padding: 40px; border: 1px solid rgba(255,255,255,0.05); }
        .cnr-dark-tag { display: inline-block; padding: 6px 12px; background: rgba(255,255,255,0.1); border-radius: 6px; font-size: 0.7rem; font-weight: 700; letter-spacing: 1px; margin-right: 10px; margin-top: 20px; color: #CDCDCD; }

        /* Estilos da Tabela da Direita */
        .cnr-table-container { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 40px; }
        .cnr-table { width: 100%; border-collapse: collapse; margin-top: 40px; }
        .cnr-table th { text-align: center; padding: 15px; font-size: 0.75rem; color: var(--text-muted); font-weight: 800; letter-spacing: 1px; border-bottom: 1px solid var(--border-color); text-transform: uppercase; vertical-align: bottom;}
        .cnr-table th:first-child { text-align: left; }
        .cnr-table td { padding: 20px 15px; text-align: center; border-bottom: 1px solid var(--border-color); font-size: 0.95rem; font-weight: 600; color: var(--text-muted); }
        .cnr-table td:first-child { text-align: left; color: var(--text-main); font-weight: 700; }
        .cnr-table tr:last-child td { border-bottom: none; }
        
        /* Destaque da Coluna Especial */
        .cnr-table .highlight-col { background: rgba(0, 134, 255, 0.03); border-left: 1px solid rgba(0, 134, 255, 0.1); border-right: 1px solid rgba(0, 134, 255, 0.1); }
        .cnr-table th.highlight-col { border-top: 3px solid var(--azul-01); background: rgba(0, 134, 255, 0.05); color: var(--azul-01); border-top-left-radius: 8px; border-top-right-radius: 8px; padding-top: 20px;}
        .cnr-table td.highlight-col { color: var(--azul-01); font-weight: 800; }
        .cnr-table .material-symbols-outlined { font-size: 20px; font-weight: 600; }

        /* Caixa de Aviso */
        .cnr-warning-box { display: flex; gap: 20px; background: rgba(255, 179, 0, 0.05); border: 1px solid rgba(255, 179, 0, 0.2); padding: 25px; border-radius: 12px; margin-top: 30px; align-items: flex-start;}
        .cnr-warning-box .material-symbols-outlined { color: #FFB300; font-size: 30px; background: rgba(255, 179, 0, 0.1); padding: 5px; border-radius: 8px;}

        /* =========================================
           DESIGN SYSTEM & VARIÁVEIS
           ========================================= */
        :root {
            --azul-01: #0086FF; --azul-02: #0143A5; --azul-03: #001138;
            --azul-04: #000320; --azul-05: #050935; --azul-08: #002868;
            --bg-body: #F5F7FA; --bg-card: #FFFFFF; --bg-sidebar: var(--azul-04);
            --bg-topbar: #FFFFFF; --text-main: #0F0F0F; --text-muted: #67686A;
            --border-color: #CDCDCD; --input-bg: #EBEBEB; --border-radius: 16px;
        }

        [data-theme="dark"] {
            --bg-body: #000214; --bg-card: var(--azul-04); --bg-sidebar: #00010a;
            --bg-topbar: var(--azul-05); --text-main: #F5F7FA; --text-muted: #9B9B9B;
            --border-color: var(--azul-05); --input-bg: var(--azul-03);
        }

        * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Manrope', sans-serif; }
        body { background-color: var(--bg-body); color: var(--text-main); display: flex; height: 100vh; overflow: hidden; transition: background-color 0.3s, color 0.3s; }

        /* =========================================
           CUSTOM SCROLLBAR
           ========================================= */
        .sidebar-nav::-webkit-scrollbar { width: 6px; }
        .sidebar-nav::-webkit-scrollbar-track { background: var(--bg-sidebar); }
        .sidebar-nav::-webkit-scrollbar-thumb { background: var(--azul-02); border-radius: 10px; }
        .sidebar-nav::-webkit-scrollbar-thumb:hover { background: var(--azul-01); }

        .main-content::-webkit-scrollbar { width: 8px; }
        .main-content::-webkit-scrollbar-track { background: var(--bg-body); }
        .main-content::-webkit-scrollbar-thumb { background: var(--border-color); border-radius: 10px; }
        .main-content::-webkit-scrollbar-thumb:hover { background: var(--azul-06); }

        /* =========================================
           SIDEBAR & COLLAPSE
           ========================================= */
        .sidebar { width: 80px; flex-shrink: 0; background-color: var(--bg-sidebar); display: flex; flex-direction: column; border-right: 1px solid var(--border-color); z-index: 20; transition: background-color 0.3s; }
        .sidebar-header { padding: 24px; border-bottom: 1px solid rgba(255,255,255,0.05); display: flex; align-items: center; justify-content: center; height: 80px; }
        .sidebar-header img { width: 140px; filter: brightness(0) invert(1); cursor: pointer; transition: 0.3s; }
        .sidebar-header .logo-simbolo { width: 40px; filter: brightness(0) invert(1); }

        .sidebar-nav { flex-grow: 1; padding: 24px 16px; overflow-y: scroll; overflow-x: hidden; scrollbar-gutter: stable; }
        .nav-group { margin-bottom: 24px; }
        .nav-title { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 1px; color: #67686A; margin-bottom: 12px; padding-left: 12px; font-weight: 700; white-space: nowrap; }
        .sidebar-nav ul { list-style: none; }
        .sidebar-nav a { display: flex; align-items: center; gap: 12px; padding: 10px 12px; color: #CDCDCD; text-decoration: none; border-radius: 8px; font-size: 0.95rem; font-weight: 500; transition: transform 0.2s, border-color 0.2s, background-color 0.2s, color 0.2s, opacity 0.2s, box-shadow 0.2s; cursor: pointer; white-space: nowrap; }
        .sidebar-nav a:hover, .sidebar-nav a.active { background-color: var(--azul-08); color: #FFFFFF; }
        .sidebar-nav .ferramentas-header.active { background-color: var(--azul-08) !important; color: #FFFFFF !important; }
        .sidebar-nav a .menu-text { line-height: 1.15; }
        .sidebar-footer { padding: 20px; }
        .btn-account { display: block; width: 100%; background-color: var(--azul-01); color: white; padding: 12px; border-radius: 8px; font-weight: 700; border: none; cursor: pointer; transition: 0.3s; text-align: center; white-space: nowrap; overflow: hidden; }
        .btn-account:hover { background-color: var(--azul-02); transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0,134,255,0.3); }

        /* Sidebar sempre retraída, expande no hover (desktop) ou via .collapsed toggle (mobile) */
        .sidebar-header img:not(.logo-simbolo) { display: none; }
        .sidebar-header .logo-simbolo { display: block; }
        .nav-title span.text, .nav-title .material-symbols-outlined { display: none; }
        .sidebar-nav a span.menu-text { display: none; }
        .sidebar .btn-account span { display: none; }
        .sidebar .btn-account::before { content: "account_circle"; font-family: "Material Symbols Outlined"; font-size: 20px; }
        #categorias-list, #ferramentas-list { display: none; }
        .ferramentas-header .menu-text { display: none; }
        #cat-icon { display: none; }
        #ferr-icon { display: none; }
        .nav-children { display: none; }

        @media (hover: hover) {
            .sidebar:hover { width: 280px; }
            .sidebar:hover .sidebar-header img:not(.logo-simbolo) { display: block; }
            .sidebar:hover .sidebar-header .logo-simbolo { display: none; }
            .sidebar:hover .nav-title span.text, .sidebar:hover .nav-title .material-symbols-outlined { display: inline; }
            .sidebar:hover .sidebar-nav a span.menu-text { display: inline; }
            .sidebar:hover .btn-account span { display: inline; }
            .sidebar:hover .btn-account::before { content: none; }
            .sidebar:hover #cat-icon { display: inline; }
            .sidebar:hover #ferr-icon { display: block; }
            .sidebar:hover .ferramentas-header .menu-text { display: inline; }
            .sidebar:hover .nav-children { display: block; }
        }

        @media (hover: none) {
            .sidebar:not(.collapsed) { width: 280px; }
            .sidebar:not(.collapsed) .sidebar-header img:not(.logo-simbolo) { display: block; }
            .sidebar:not(.collapsed) .sidebar-header .logo-simbolo { display: none; }
            .sidebar:not(.collapsed) .nav-title span.text, .sidebar:not(.collapsed) .nav-title .material-symbols-outlined { display: inline; }
            .sidebar:not(.collapsed) .sidebar-nav a span.menu-text { display: inline; }
            .sidebar:not(.collapsed) .btn-account span { display: inline; }
            .sidebar:not(.collapsed) .btn-account::before { content: none; }
            .sidebar:not(.collapsed) #cat-icon { display: inline; }
            .sidebar:not(.collapsed) #ferr-icon { display: block; }
            .sidebar:not(.collapsed) .ferramentas-header .menu-text { display: inline; }
            .sidebar:not(.collapsed) .nav-children { display: block; }
        }

        .sidebar.collapsed .nav-title .material-symbols-outlined { display: inline; }
        .sidebar.collapsed #categorias-list { margin: 0; padding: 0; border: none; }
        .sidebar.collapsed .categoria-header { margin-bottom: 0; background: transparent; }
        .sidebar.collapsed #ferramentas-list { display: none !important; }

        /* Categorias Accordion */
        .categoria-header { display: flex; justify-content: space-between; align-items: center; cursor: pointer; padding: 10px 12px; background: rgba(255,255,255,0.05); border-radius: 8px; margin-bottom: 5px; color: white;}
        .categoria-header:hover { background: rgba(255,255,255,0.1); }
        #categorias-list { display: none; padding-left: 10px; border-left: 1px solid var(--azul-05); margin-left: 20px; margin-top: 5px;}

        /* =========================================
           TOPBAR & MAIN CONTENT
           ========================================= */
        .main-content { flex-grow: 1; overflow-y: auto; perspective: 1000px; scroll-behavior: smooth; display: flex; flex-direction: column; }
        .topbar { display: flex; justify-content: space-between; align-items: center; padding: 20px 40px; background-color: var(--bg-topbar); border-bottom: 1px solid var(--border-color); position: sticky; top: 0; z-index: 10; transition: background-color 0.3s; flex-shrink: 0; }
        .topbar-search input { padding: 10px 16px; border-radius: 20px; border: 1px solid var(--border-color); width: 300px; background-color: var(--input-bg); color: var(--text-main); outline: none; transition: 0.3s; }
        .action-icon { color: var(--text-muted); cursor: pointer; transition: color 0.2s, background-color 0.2s; user-select: none; }
        button.action-icon { padding: 0; border: 0; background: transparent; font: inherit; }
        .action-icon:hover { color: var(--azul-01); }
        .theme-toggle { width: 36px; height: 36px; display: inline-grid; place-items: center; border-radius: 50%; }
        .theme-toggle:hover { background: color-mix(in srgb, var(--azul-01) 10%, transparent); }
        .theme-icon { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
        .theme-icon-sun { display: none; }
        [data-theme="dark"] .theme-icon-moon { display: none; }
        [data-theme="dark"] .theme-icon-sun { display: block; }
        .globe-fallback { display: grid; min-height: 350px; place-items: center; color: #AFC4E3; text-align: center; }
        #sidebar-toggle { display: none; }

        .page-container { padding: 40px; max-width: 1400px; margin: 0 auto; flex-grow: 1; width: 100%; }
        /* Remove padding for consorcio to allow full screen wrapper */
        #consorcio.page-section { padding: 0; max-width: 100%; }
        
        .page-section { display: none; animation: fadeIn 0.5s ease forwards; opacity: 0; transform: translateY(20px); }
        .page-section.active-section { display: block; }
        @keyframes fadeIn { to { opacity: 1; transform: translateY(0); } }

        /* =========================================
           WHATSAPP FLUTUANTE
           ========================================= */
        .whatsapp-btn {
            position: fixed; bottom: 30px; right: 30px; width: 60px; height: 60px;
            background-color: #25D366; color: white; border-radius: 50%;
            display: flex; align-items: center; justify-content: center;
            box-shadow: 2px 4px 15px rgba(0,0,0,0.2); z-index: 1000;
            text-decoration: none; transition: transform 0.3s; cursor: pointer;
        }
        .whatsapp-btn:hover { transform: scale(1.1); }
        .whatsapp-btn svg { width: 35px; height: 35px; fill: currentColor; }

        /* =========================================
           HERO & ANIMAÇÃO ORBITAL 3D
           ========================================= */
        .hero-banner {
            background: #0a0e17; border-radius: 24px;
            padding: 60px 48px 38px; color: white; display: flex; justify-content: flex-start; align-items: flex-start; margin: 0;
            position: relative; overflow: hidden; min-height: 420px; width: 100%; flex-shrink: 0;
        }
        #home-hero { display: none; }
        body:not(.in-home) #home-hero { display: none; }
        body.in-home #home-hero { display: flex; }
        #home-ticker-wrapper { display: none !important; }
        body.in-home #home-ticker-wrapper { display: block !important; }
        .hero-video-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; pointer-events: none; }
        .hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,14,23,0.85) 0%, rgba(10,14,23,0.4) 50%, rgba(10,14,23,0.15) 100%); z-index: 1; }
        .hero-content { position: relative; z-index: 2; max-width: 50%; }
        .hero-content h1 { font-size: 2.8rem; font-weight: 800; margin-bottom: 10px; line-height: 1.1; }
        .hero-content p { color: #CDCDCD; font-size: 1.1rem; margin-bottom: 20px; }

        .orbit-system { position: absolute; right: 10%; top: 50%; transform: translateY(-50%); width: 240px; height: 240px; }
        .orbit-center { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 60px; height: 60px; background: white; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 40px rgba(0, 134, 255, 0.5), 0 0 80px rgba(0, 134, 255, 0.2); z-index: 10; animation: centerPulse 3s ease-in-out infinite; }
        .orbit-center img { width: 36px; }
        @keyframes centerPulse { 0%, 100% { box-shadow: 0 0 40px rgba(0,134,255,0.5), 0 0 80px rgba(0,134,255,0.2); transform: translate(-50%, -50%) scale(1); } 50% { box-shadow: 0 0 70px rgba(0,134,255,0.8), 0 0 120px rgba(0,134,255,0.3); transform: translate(-50%, -50%) scale(1.06); } }
        .orbit-ring { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px dashed rgba(0, 134, 255, 0.25); border-radius: 50%; animation: spin 14s linear infinite; }
        .orbit-ring:nth-child(2) { width: 160px; height: 160px; top: 40px; left: 40px; animation: spin-reverse 10s linear infinite; border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: 0 0 30px rgba(0,134,255,0.05); }
        .orbit-item { position: absolute; width: 36px; height: 36px; background: rgba(255,255,255,0.13); border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 15px rgba(0,0,0,0.3); animation: spin-reverse 14s linear infinite; border: 1.5px solid rgba(255,255,255,0.2); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
        .orbit-item .material-symbols-outlined { font-size: 18px; color: white; }
        .orbit-item.i1 { top: -18px; left: 102px; }
        .orbit-item.i2 { bottom: -18px; left: 102px; }
        .orbit-item.i3 { top: 102px; left: -18px; }
        .orbit-item.i4 { top: 102px; right: -18px; }
        @keyframes spin { 100% { transform: rotateZ(360deg); } }
        @keyframes spin-reverse { 100% { transform: rotateZ(-360deg); } }

        /* Hero aprimoramentos */
        .hero-banner::before {
            content: ''; position: absolute; inset: 0;
            background: radial-gradient(ellipse at 20% 50%, rgba(0,134,255,0.12) 0%, transparent 60%),
                        radial-gradient(ellipse at 80% 20%, rgba(0,134,255,0.06) 0%, transparent 50%);
            z-index: 1; pointer-events: none;
        }
        .hero-banner::after {
            content: ''; position: absolute; inset: 0;
            background-image:
                radial-gradient(1px 1px at 10% 20%, rgba(255,255,255,0.3) 0%, transparent 100%),
                radial-gradient(1px 1px at 30% 60%, rgba(255,255,255,0.2) 0%, transparent 100%),
                radial-gradient(1.5px 1.5px at 50% 10%, rgba(255,255,255,0.25) 0%, transparent 100%),
                radial-gradient(1px 1px at 70% 80%, rgba(255,255,255,0.15) 0%, transparent 100%),
                radial-gradient(1.2px 1.2px at 85% 30%, rgba(255,255,255,0.2) 0%, transparent 100%),
                radial-gradient(1px 1px at 15% 85%, rgba(255,255,255,0.15) 0%, transparent 100%),
                radial-gradient(1.5px 1.5px at 90% 70%, rgba(255,255,255,0.2) 0%, transparent 100%),
                radial-gradient(1px 1px at 45% 45%, rgba(255,255,255,0.1) 0%, transparent 100%);
            background-size: 200% 200%;
            animation: driftParticles 20s ease-in-out infinite alternate;
            z-index: 1; pointer-events: none; opacity: 0.6;
        }
        @keyframes driftParticles {
            0% { background-position: 0% 0%; }
            100% { background-position: 100% 100%; }
        }
        .hero-content {
        }
        .hero-content h1 { font-size: 2.6rem; font-weight: 800; margin-bottom: 8px; line-height: 1.15; }
        .hero-content p { color: #FFFFFF; font-size: 1.1rem; margin-bottom: 16px; line-height: 1.5; }
        .hero-banner .live-dot { width: 8px; height: 8px; }
        .hero-badge-pill {
            display: inline-flex; align-items: center; gap: 6px;
            padding: 5px 14px; border-radius: 20px; margin-bottom: 12px;
            background: linear-gradient(135deg, rgba(0,134,255,0.2), rgba(0,134,255,0.08));
            color: var(--azul-01); font-weight: 800; font-size: 0.7rem;
            text-transform: uppercase; letter-spacing: 1px; margin-bottom: 18px;
            border: 1px solid rgba(0,134,255,0.25);
            backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
            animation: pulseGlow 3s ease-in-out infinite;
        }
        @keyframes pulseGlow {
            0%, 100% { box-shadow: 0 0 0 0 rgba(0,134,255,0.2); }
            50% { box-shadow: 0 0 20px 4px rgba(0,134,255,0.08); }
        }

        /* =========================================
           RENDA FIXA HERO
           ========================================= */
#rendafixa .fixed-income-hero {
    width: 100%;
    min-height: 0;
    height: auto;
    padding-bottom: 0;
    background:
        radial-gradient(circle at 18% 18%, rgba(37, 99, 235, 0.16), transparent 34%),
        radial-gradient(circle at 88% 72%, rgba(14, 165, 233, 0.08), transparent 30%),
        linear-gradient(120deg, #06132d 0%, #071b3f 55%, #082859 100%);
    color: white;
    position: relative;
    overflow: hidden;
}
#rendafixa .fixed-income-hero::before {
    content: '';
    position: absolute; inset: 0;
    background-image:
        radial-gradient(1px 1px at 8% 15%, rgba(255,255,255,0.18) 0%, transparent 100%),
        radial-gradient(1px 1px at 25% 55%, rgba(255,255,255,0.12) 0%, transparent 100%),
        radial-gradient(1.2px 1.2px at 42% 8%, rgba(255,255,255,0.15) 0%, transparent 100%),
        radial-gradient(1px 1px at 60% 75%, rgba(255,255,255,0.1) 0%, transparent 100%),
        radial-gradient(1.2px 1.2px at 78% 25%, rgba(255,255,255,0.13) 0%, transparent 100%),
        radial-gradient(1px 1px at 12% 80%, rgba(255,255,255,0.1) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 88% 65%, rgba(255,255,255,0.12) 0%, transparent 100%),
        radial-gradient(1px 1px at 50% 40%, rgba(255,255,255,0.08) 0%, transparent 100%);
    background-size: 200% 200%;
    animation: driftParticles 25s ease-in-out infinite alternate;
    pointer-events: none; opacity: 0.5;
}
#rendafixa .fixed-income-hero-container {
    width: 100%;
    max-width: 1540px;
    margin: 0 auto;
    padding: 36px 56px 64px;
    display: grid;
    grid-template-columns: minmax(0, 42fr) minmax(0, 58fr);
    gap: 54px;
    align-items: center;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}
#rendafixa .fixed-income-hero-container > * {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}
#rendafixa .fixed-income-copy,
#rendafixa .fixed-income-panel-wrapper,
#rendafixa .fixed-income-panel {
    min-width: 0;
    max-width: 100%;
}
#rendafixa .fixed-income-eyebrow {
    display: inline-block;
    font-size: 13px;
    letter-spacing: 0.14em;
    color: #60A5FA;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 16px;
}
#rendafixa .fixed-income-title {
    font-size: clamp(58px, 4.35vw, 74px);
    line-height: 0.98;
    letter-spacing: -0.045em;
    font-weight: 700;
    margin-top: 20px;
}
#rendafixa .fixed-income-title span {
    display: block;
}
@media (min-width: 1100px) {
    #rendafixa .fixed-income-title span {
        white-space: nowrap;
    }
}
#rendafixa .fixed-income-title-highlight {
    padding-bottom: 8px;
    color: #4f8cff;
}
#rendafixa .fixed-income-desc {
    font-size: 19px;
    line-height: 1.55;
    max-width: 590px;
    margin-top: 28px;
    color: rgba(226, 232, 240, 0.78);
}
#rendafixa .fixed-income-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}
@media (max-width: 600px) {
    #rendafixa .fixed-income-actions {
        flex-direction: column;
    }
    #rendafixa .fixed-income-actions .primary-button,
    #rendafixa .fixed-income-actions .secondary-button {
        width: 100%;
    }
}
#rendafixa .primary-button {
    width: auto;
    min-width: 244px;
    height: 54px;
    padding: 0 28px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, #2563EB, #3B82F6);
    color: white;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: transform 0.25s ease, border-color 0.25s ease, background-color 0.25s ease, color 0.25s ease, opacity 0.25s ease, box-shadow 0.25s ease;
    white-space: nowrap;
    justify-content: center;
}
#rendafixa .primary-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(37, 99, 235, 0.35);
}
#rendafixa .secondary-button {
    width: auto;
    min-width: 246px;
    height: 54px;
    padding: 0 28px;
    border: 1px solid rgba(255,255,255,0.25);
    border-radius: 12px;
    background: transparent;
    color: white;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: transform 0.25s ease, border-color 0.25s ease, background-color 0.25s ease, color 0.25s ease, opacity 0.25s ease, box-shadow 0.25s ease;
    white-space: nowrap;
    justify-content: center;
}
#rendafixa .secondary-button:hover {
    background: rgba(255,255,255,0.08);
    border-color: rgba(255,255,255,0.4);
}
#rendafixa .fixed-income-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    margin-top: 30px;
    padding-top: 4px;
}
#rendafixa .fixed-income-benefit {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 9px;
    align-items: start;
    color: rgba(226, 232, 240, 0.85);
}
#rendafixa .fixed-income-benefit .material-symbols-outlined {
    font-size: 18px;
    color: #60A5FA;
}
#rendafixa .fixed-income-benefit-title {
    font-size: 14px;
    line-height: 1.35;
    font-weight: 600;
}
#rendafixa .fixed-income-chips {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 28px;
}
#rendafixa .fi-chip {
    height: 34px;
    padding: 0 17px;
    border-radius: 999px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.12);
    color: rgba(226, 232, 240, 0.8);
    font-size: 13px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}
#rendafixa .fixed-income-panel {
    width: 100%;
    min-height: 520px;
    padding: 26px;
    border-radius: 20px;
    background: rgba(6, 18, 42, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.16);
    box-shadow: 0 28px 70px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}
#rendafixa .fi-panel-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
    flex-shrink: 0;
}
#rendafixa .fi-panel-header h3 {
    font-size: 1.15rem;
    font-weight: 700;
    margin: 0;
}
#rendafixa .fi-panel-header p {
    font-size: 0.82rem;
    color: rgba(226, 232, 240, 0.6);
    margin: 4px 0 0;
}
#rendafixa .fi-panel-update {
    font-size: 0.72rem;
    color: rgba(226, 232, 240, 0.5);
    white-space: nowrap;
}
#rendafixa .fixed-income-products-list {
    flex: 1;
}
#rendafixa .fixed-income-products-list {
    overflow: hidden;
}
#rendafixa .fixed-income-product {
    display: grid;
    grid-template-columns: 50px minmax(0, 1.2fr) minmax(0, 0.8fr) minmax(0, 0.75fr) minmax(0, 0.7fr) 72px 96px;
    column-gap: 10px;
    align-items: center;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    min-height: 88px;
    padding: 14px;
    border-radius: 12px;
    border: 1px solid transparent;
    transition: background-color 180ms ease, border-color 180ms ease, transform 180ms ease;
    cursor: default;
}
#rendafixa .fixed-income-product > * {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}
#rendafixa .fixed-income-product:hover {
    background: rgba(59, 130, 246, 0.055);
    border-color: rgba(96, 165, 250, 0.16);
    transform: translateY(-1px);
}
#rendafixa .fixed-income-product + .fixed-income-product {
    border-top: 1px solid rgba(148, 163, 184, 0.10);
}
#rendafixa .fixed-income-product:first-child {
    margin-top: 0;
}
#rendafixa .fixed-income-icon-wrapper {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: rgba(37, 99, 235, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
#rendafixa .fixed-income-icon-wrapper .material-symbols-outlined {
    font-size: 20px;
    color: #60A5FA;
}
#rendafixa .fixed-income-logo {
    width: 22px;
    height: 22px;
    object-fit: contain;
    display: block;
}
#rendafixa .fixed-income-product-name {
    font-size: 0.85rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#rendafixa .fixed-income-product-issuer {
    font-size: 0.72rem;
    color: rgba(226, 232, 240, 0.5);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#rendafixa .fixed-income-yield-value {
    font-size: 16px;
    font-weight: 700;
    color: #60a5fa;
    font-variant-numeric: tabular-nums;
}
#rendafixa .fixed-income-product-label {
    font-size: 11px;
    color: rgba(226, 232, 240, 0.4);
    margin-top: 3px;
    display: block;
}
#rendafixa .fixed-income-fgc {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
    min-width: 0;
    width: auto;
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(34, 197, 94, 0.08);
    border: 1px solid rgba(34, 197, 94, 0.18);
    color: #4ade80;
    font-size: 11px;
    font-weight: 600;
    box-sizing: border-box;
}
#rendafixa .fixed-income-fgc .material-symbols-outlined {
    font-size: 12px;
}
#rendafixa .fixed-income-details-button {
    width: 96px;
    padding: 8px 6px;
    font-size: 12px;
    white-space: nowrap;
    color: #60A5FA;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    text-decoration: none;
    border-radius: 8px;
    transition: background 180ms ease;
    justify-content: center;
    background: rgba(96, 165, 250, 0.08);
    border: none;
    box-sizing: border-box;
}
#rendafixa .fixed-income-details-button:hover {
    background: rgba(96, 165, 250, 0.16);
}
#rendafixa .fixed-income-details-button .material-symbols-outlined {
    font-size: 14px;
}
#rendafixa .fixed-income-products-loading {
    display: flex;
    flex-direction: column;
    gap: 0;
}
#rendafixa .fixed-income-product-skeleton {
    height: 82px;
    padding: 14px;
    display: grid;
    grid-template-columns: 50px minmax(0, 1.2fr) minmax(0, 0.8fr) minmax(0, 0.75fr) minmax(0, 0.7fr) 72px 96px;
    column-gap: 10px;
    align-items: center;
    border-bottom: 1px solid rgba(148, 163, 184, 0.08);
}
#rendafixa .fixed-income-product-skeleton:last-child {
    border-bottom: none;
}
#rendafixa .fixed-income-product-skeleton .sk-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: rgba(255,255,255,0.06);
    animation: skeletonPulse 1.5s ease-in-out infinite;
}
#rendafixa .fixed-income-product-skeleton .sk-line {
    height: 12px;
    border-radius: 6px;
    background: rgba(255,255,255,0.06);
    animation: skeletonPulse 1.5s ease-in-out infinite;
}
#rendafixa .fixed-income-product-skeleton .sk-line-sm {
    height: 10px;
    width: 60%;
    border-radius: 6px;
    background: rgba(255,255,255,0.06);
    animation: skeletonPulse 1.5s ease-in-out infinite;
    margin-top: 6px;
}
#rendafixa .fixed-income-product-skeleton .sk-block {
    height: 14px;
    width: 75%;
    border-radius: 6px;
    background: rgba(255,255,255,0.06);
    animation: skeletonPulse 1.5s ease-in-out infinite;
}
#rendafixa .fixed-income-product-skeleton .sk-btn {
    height: 32px;
    width: 90px;
    border-radius: 8px;
    background: rgba(255,255,255,0.05);
    animation: skeletonPulse 1.5s ease-in-out infinite;
}
@keyframes skeletonPulse {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 0.8; }
}
#rendafixa .fi-empty-state {
    text-align: center;
    padding: 40px 20px;
    color: rgba(226, 232, 240, 0.6);
}
#rendafixa .fi-empty-state .material-symbols-outlined {
    font-size: 48px;
    color: rgba(226, 232, 240, 0.15);
    margin-bottom: 12px;
}
#rendafixa .fi-empty-state h4 {
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 6px;
    color: rgba(226, 232, 240, 0.7);
}
#rendafixa .fi-empty-state p {
    font-size: 0.82rem;
    margin: 0 0 16px;
}
#rendafixa .fi-empty-state .fi-empty-btns {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}
#rendafixa .fi-error-state {
    text-align: center;
    padding: 40px 20px;
    color: rgba(226, 232, 240, 0.6);
}
#rendafixa .fi-error-state .material-symbols-outlined {
    font-size: 48px;
    color: rgba(239, 68, 68, 0.3);
    margin-bottom: 12px;
}
#rendafixa .fi-error-state h4 {
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 6px;
    color: rgba(226, 232, 240, 0.7);
}
#rendafixa .fi-error-state p {
    font-size: 0.82rem;
    margin: 0 0 16px;
}
#rendafixa .fi-simulation {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid rgba(148, 163, 184, 0.14);
    flex-shrink: 0;
}
#rendafixa .fi-simulation h4 {
    font-size: 0.85rem;
    font-weight: 600;
    margin: 0 0 12px;
    color: rgba(226, 232, 240, 0.7);
}
#rendafixa .fi-simulation-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: 14px;
    align-items: center;
}
@media (max-width: 600px) {
    #rendafixa .fi-simulation-row {
        grid-template-columns: 1fr;
    }
}
#rendafixa .fi-sim-input {
    width: 100%;
    padding: 10px 14px;
    border-radius: 8px;
    border: 1px solid rgba(148, 163, 184, 0.2);
    background: rgba(255,255,255,0.06);
    color: white;
    font-size: 0.95rem;
    outline: none;
    box-sizing: border-box;
    font-variant-numeric: tabular-nums;
}
#rendafixa .fi-sim-input:focus {
    border-color: #60A5FA;
}
#rendafixa .fi-sim-info {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 8px;
    font-size: 0.75rem;
    color: rgba(226, 232, 240, 0.4);
}
#rendafixa .fi-sim-info span {
    display: flex;
    align-items: center;
    gap: 4px;
}
#rendafixa .fixed-income-timeline {
    margin-top: 22px;
    width: 100%;
    max-width: 600px;
    height: 96px;
    position: relative;
}
#rendafixa .fixed-income-timeline svg {
    width: 100%;
    height: 70px;
    display: block;
}
#rendafixa .timeline-line {
    stroke: #3b82f6;
    stroke-width: 2;
    opacity: 0.7;
    fill: none;
}
#rendafixa .timeline-area {
    fill: url(#timelineGradient);
    opacity: 0.14;
}
#rendafixa .timeline-dot {
    fill: #60A5FA;
    opacity: 0.9;
}
#rendafixa .timeline-labels {
    display: flex;
    justify-content: space-between;
    padding: 2px 0 0;
    margin-top: -4px;
}
#rendafixa .timeline-labels span {
    font-size: 0.7rem;
    color: rgba(226, 232, 240, 0.65);
    letter-spacing: 0.02em;
}

        /* ===== Responsivo — Renda Fixa ===== */
@media (max-width: 1320px) {
    #rendafixa .fixed-income-product {
        grid-template-columns: 42px minmax(0, 1.2fr) minmax(0, 0.8fr) minmax(0, 0.75fr) minmax(0, 0.7fr) 56px 52px;
        column-gap: 8px;
    }
    #rendafixa .fixed-income-product-skeleton {
        grid-template-columns: 42px minmax(0, 1.2fr) minmax(0, 0.8fr) minmax(0, 0.75fr) minmax(0, 0.7fr) 56px 52px;
        column-gap: 8px;
    }
    #rendafixa .fixed-income-product .fixed-income-product-label {
        font-size: 10px;
    }
    #rendafixa .fixed-income-fgc {
        padding: 3px 6px;
        font-size: 10px;
        gap: 2px;
    }
    #rendafixa .fixed-income-fgc .material-symbols-outlined {
        display: none;
    }
    #rendafixa .fixed-income-details-button {
        width: 44px;
        padding: 6px 0;
        font-size: 0;
        justify-content: center;
    }
    #rendafixa .fixed-income-details-button .material-symbols-outlined {
        font-size: 16px;
        margin: 0;
    }
    #rendafixa .fixed-income-details-button span:not(.material-symbols-outlined) {
        display: none;
    }
}
@media (max-width: 1050px) {
    #rendafixa .fixed-income-hero-container {
        grid-template-columns: 1fr;
        padding: 32px 28px 40px;
        gap: 32px;
    }
    #rendafixa .fixed-income-panel {
        min-height: auto;
    }
}
#rendafixa .fixed-income-next-section {
    background: #ffffff;
    padding: 64px 48px 80px;
}
#rendafixa .fixed-income-next-container {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
}

        /* =========================================
            AÇÕES HERO — FUNDO AZUL FULL-WIDTH
           ========================================= */

        /* Hero section — full-width azul antes do page-container */
        .acoes-hero {
            display: none;
            width: 100%;
            margin: 0;
            padding: 0;
            background: #030817;
        }

        /* Hero container — centers the content */
        .acoes-hero-container {
            width: 100%;
            max-width: 1500px;
            margin: 0 auto;
            padding: 72px 48px 64px;
            box-sizing: border-box;
        }

        /* Two-column grid */
        .acoes-hero-grid {
            display: grid;
            grid-template-columns: minmax(0, 44fr) minmax(0, 56fr);
            gap: 40px;
            align-items: start;
            width: 100%;
        }
        .acoes-hero-grid > * {
            min-width: 0;
            max-width: 100%;
            box-sizing: border-box;
        }

        /* ========== LEFT COLUMN ========== */
        .acoes-copy {
            padding: 0 16px;
            display: flex;
            flex-direction: column;
            min-width: 0;
            max-width: 100%;
        }
        .acoes-badge-row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 28px; }
        .acoes-badge-live {
            display: inline-flex; align-items: center; gap: 8px;
            padding: 6px 16px 6px 14px; border-radius: 20px;
            background: rgba(59,130,246,0.12); border: 1px solid rgba(59,130,246,0.25);
            font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px;
            color: #8ab4f8;
        }
        .acoes-badge-live .live-dot { width: 6px; height: 6px; background: #22C55E; border-radius: 50%; display: inline-block; }
        .acoes-update-ts { font-size: 0.7rem; font-weight: 500; color: #64748B; letter-spacing: 0.3px; }

        .acoes-hero-title { font-size: 82px; font-weight: 700; color: #F8FAFC; line-height: 0.98; margin: 0; letter-spacing: -0.03em; max-width: 100%; }
        .acoes-hero-title .grad { color: #5AAEFF; }
        .acoes-hero-title + .acoes-hero-desc { margin-top: 36px; }

        .acoes-hero-desc { color: #94A3B8; font-size: 20px; line-height: 1.6; max-width: 510px; margin: 0; }

        /* Benefits — 3 columns */
        .acoes-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 32px; }
        .acoes-benefit { display: flex; align-items: flex-start; gap: 12px; min-width: 0; }
        .acoes-benefit-icon {
            width: 36px; height: 36px; border-radius: 10px;
            background: rgba(12,23,45,0.6); border: 1px solid rgba(148,163,184,0.1);
            display: flex; align-items: center; justify-content: center; flex-shrink: 0;
        }
        .acoes-benefit-icon .material-symbols-outlined { font-size: 18px; }
        .acoes-benefit-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; overflow-wrap: break-word; }
        .acoes-benefit-title { font-size: 0.82rem; font-weight: 600; color: #F8FAFC; }
        .acoes-benefit-desc { font-size: 0.7rem; color: #64748B; line-height: 1.4; overflow-wrap: break-word; }

        /* Buttons */
        .acoes-buttons { display: flex; gap: 16px; flex-wrap: wrap; margin-top: 36px; }
        .acoes-btn-primary {
            display: inline-flex; align-items: center; gap: 8px; height: 52px; padding: 0 32px; border-radius: 100px;
            background: linear-gradient(135deg, #3B82F6, #9333EA); border: none;
            color: #F8FAFC; font-size: 0.9rem; font-weight: 600; cursor: pointer;
            transition: opacity 0.25s, transform 0.2s; text-decoration: none; white-space: nowrap;
        }
        .acoes-btn-primary:hover { opacity: 0.9; transform: translateY(-1px); }
        .acoes-btn-secondary {
            display: inline-flex; align-items: center; gap: 8px; height: 52px; padding: 0 24px; border-radius: 100px;
            background: transparent; border: 1px solid rgba(148,163,184,0.2);
            color: #94A3B8; font-size: 0.9rem; font-weight: 500; cursor: pointer;
            transition: border-color 0.25s, color 0.25s; text-decoration: none; white-space: nowrap;
        }
        .acoes-btn-secondary:hover { border-color: rgba(148,163,184,0.4); color: #F8FAFC; }

        /* Decorative chart line */
        .acoes-decorative-chart { width: 100%; height: 60px; margin-top: auto; position: relative; opacity: 0.5; }
        .acoes-decorative-chart svg { width: 100%; height: 100%; display: block; }

        /* ========== RIGHT COLUMN — DASHBOARD ========== */
        .acoes-dashboard {
            width: 100%;
            min-width: 0;
            display: grid;
            grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
            grid-template-areas:
                "ibov altas"
                "baixas volume"
                "footer footer";
            grid-template-rows: 316px 292px 76px;
            gap: 16px;
            box-sizing: border-box;
        }

        /* Shared card styles */
        .dash-card {
            background: rgba(12,23,45,0.8); border: 1px solid rgba(148,163,184,0.14);
            border-radius: 16px; padding: 22px; width: 100%; max-width: 100%; min-width: 0;
            box-sizing: border-box; overflow: hidden;
            transition: transform 0.2s, border-color 0.2s;
        }
        .dash-card:hover { transform: translateY(-2px); border-color: rgba(148,163,184,0.25); }
        .dash-card-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
        .dash-card-title { font-size: 0.68rem; font-weight: 700; color: #64748B; text-transform: uppercase; letter-spacing: 0.5px; }

        /* IBOV card */
        .ibov-card {
            grid-area: ibov;
            position: relative;
            padding: 24px;
            display: flex;
            flex-direction: column;
        }
        .ibov-card .ibov-badge {
            position: absolute;
            top: 20px; right: 20px;
            font-size: 0.6rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px;
            padding: 4px 14px; border-radius: 20px;
            background: rgba(239,68,68,0.15); color: #EF4444;
            white-space: nowrap;
        }
        .ibov-card .ibov-price-row { margin-bottom: 12px; }
        .ibov-card .ibov-label { font-size: 0.7rem; font-weight: 700; color: #64748B; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 2px; }
        .ibov-card .ibov-price { font-size: 2rem; font-weight: 800; color: #F8FAFC; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
        .ibov-card .ibov-change { font-size: 0.95rem; font-weight: 600; margin-left: 8px; }
        .ibov-card .ibov-change.neg { color: #EF4444; }
        .ibov-card .ibov-change.pos { color: #22C55E; }
        .ibov-card .ibov-arrow { font-size: 14px; margin-left: 2px; vertical-align: middle; }
        .ibov-card .ibov-arrow.neg { color: #EF4444; }
        .ibov-card .ibov-arrow.pos { color: #22C55E; }

        /* Chart area */
        .ibov-card .ibov-chart-wrap { width: 100%; height: 145px; position: relative; flex-shrink: 0; margin-bottom: 10px; }
        .ibov-card .ibov-chart-wrap svg { width: 100%; height: 100%; display: block; }
        .ibov-card .ibov-chart-y {
            position: absolute; left: 0; top: 0; height: 100%;
            display: flex; flex-direction: column; justify-content: space-between;
            padding: 3px 0; pointer-events: none;
        }
        .ibov-card .ibov-chart-y span { font-size: 0.5rem; font-weight: 600; color: #64748B; font-variant-numeric: tabular-nums; }
        .ibov-card .ibov-chart-x { display: flex; justify-content: space-between; margin-top: -4px; padding: 0 1px; }
        .ibov-card .ibov-chart-x span { font-size: 0.5rem; font-weight: 500; color: #64748B; }

        /* Stats row */
        .ibov-card .ibov-stats { display: flex; border-top: 1px solid rgba(148,163,184,0.1); padding-top: 12px; margin-top: auto; }
        .ibov-card .ibov-stat { flex: 1; text-align: center; min-width: 0; }
        .ibov-card .ibov-stat-label { font-size: 0.58rem; font-weight: 600; color: #64748B; text-transform: uppercase; letter-spacing: 0.3px; }
        .ibov-card .ibov-stat-value { font-size: 0.82rem; font-weight: 700; color: #F8FAFC; font-variant-numeric: tabular-nums; margin-top: 3px; }
        .ibov-card .ibov-stat-value.high { color: #22C55E; }
        .ibov-card .ibov-stat-value.low { color: #EF4444; }

        /* Mover cards (altas / baixas) */
        .mover-card-altas { grid-area: altas; padding: 22px; }
        .mover-card-baixas { grid-area: baixas; padding: 22px; }
        .mover-list { display: flex; flex-direction: column; gap: 4px; }
        .acoes-row {
            display: grid;
            grid-template-columns: 24px minmax(0, 1fr) 72px 68px;
            gap: 10px;
            align-items: center;
            padding: 5px 4px 5px 0;
            border-radius: 6px;
            transition: background 0.15s;
        }
        .acoes-row:hover { background: rgba(148,163,184,0.06); }
        .acoes-rank { font-size: 0.58rem; font-weight: 700; color: #64748B; text-align: center; }
        .acoes-info { min-width: 0; display: flex; flex-direction: column; }
        .acoes-ticker { font-size: 0.75rem; font-weight: 700; color: #F8FAFC; }
        .acoes-nome { font-size: 0.6rem; color: #64748B; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
        .acoes-spark { width: 72px; height: 22px; flex-shrink: 0; }
        .acoes-spark svg { width: 100%; height: 100%; display: block; }
        .acoes-var { font-size: 0.72rem; font-weight: 700; text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
        .acoes-var.pos { color: #22C55E; }
        .acoes-var.neg { color: #EF4444; }

        /* Volume card */
        .volume-card { grid-area: volume; padding: 22px; }
        .volume-card .vol-list { display: flex; flex-direction: column; gap: 4px; }
        .vol-row {
            display: grid;
            grid-template-columns: 24px minmax(0, 1fr) 60px 50px;
            gap: 8px;
            align-items: center;
            padding: 5px 4px 5px 0;
            border-radius: 6px;
            transition: background 0.15s;
        }
        .vol-row:hover { background: rgba(148,163,184,0.06); }
        .vol-rank { font-size: 0.58rem; font-weight: 700; color: #64748B; text-align: center; }
        .vol-ticker { font-size: 0.75rem; font-weight: 700; color: #F8FAFC; }
        .vol-bars { display: flex; align-items: flex-end; gap: 2px; height: 18px; }
        .vol-bar { width: 6px; border-radius: 2px 2px 0 0; background: #3B82F6; min-height: 2px; }
        .vol-val { font-size: 0.68rem; font-weight: 600; color: #94A3B8; text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }

        /* Bottom bar */
        .acoes-footer-bar {
            grid-area: footer;
            display: flex; align-items: center; gap: 16px;
            padding: 0 22px;
            background: rgba(12,23,45,0.5); border: 1px solid rgba(148,163,184,0.1);
            border-radius: 16px; width: 100%; min-width: 0; box-sizing: border-box;
        }
        .acoes-footer-bar .bar-icon { color: #3B82F6; font-size: 22px; flex-shrink: 0; }
        .acoes-footer-bar .bar-text { flex: 1; min-width: 0; }
        .acoes-footer-bar .bar-text strong { display: block; font-size: 0.82rem; font-weight: 600; color: #F8FAFC; }
        .acoes-footer-bar .bar-text span { font-size: 0.7rem; color: #64748B; }
        .acoes-footer-bar .bar-btn {
            padding: 8px 20px; border-radius: 100px; border: 1px solid rgba(148,163,184,0.2);
            background: transparent; color: #94A3B8; font-size: 0.78rem; font-weight: 500;
            cursor: pointer; transition: border-color 0.25s, color 0.25s; white-space: nowrap; flex-shrink: 0; text-decoration: none;
        }
        .acoes-footer-bar .bar-btn:hover { border-color: rgba(148,163,184,0.4); color: #F8FAFC; }

        @media (prefers-reduced-motion: reduce) {
            .dash-card, .acoes-row, .vol-row, .acoes-btn-primary, .acoes-btn-secondary,
            .bar-btn, .vol-bar { transition: none !important; }
            .acoes-badge-live .live-dot { animation: none !important; }
        }

        /* =========================================
            CARDS E TILT 3D
           ========================================= */
        .section-title { font-size: 1.5rem; color: var(--text-main); margin-bottom: 20px; font-weight: 700; border-bottom: 2px solid var(--border-color); padding-bottom: 10px;}
        .grid-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 24px; margin-bottom: 40px; perspective: 1000px;}
        
        .card { 
            background: var(--bg-card); border: 1px solid var(--border-color); border-radius: var(--border-radius); 
            overflow: hidden; cursor: pointer; transform-style: preserve-3d; transition: border-color 0.3s, background-color 0.3s;
            box-shadow: 0 10px 30px -10px rgba(0,0,0,0.1); display: flex; flex-direction: column;
        }
        
        .card-img { width: 100%; height: 180px; object-fit: cover; border-bottom: 1px solid var(--border-color); transition: transform 0.5s; }
        .card:hover .card-img { transform: scale(1.05); }

        .card-body { padding: 24px; transform: translateZ(30px); flex-grow: 1; display: flex; flex-direction: column; }
        .card h3 { font-size: 1.2rem; color: var(--text-main); margin-bottom: 12px; }
        .card p { font-size: 0.9rem; color: var(--text-muted); margin-bottom: 20px; flex-grow: 1; }
        .tag { display: inline-block; padding: 4px 10px; border-radius: 4px; font-size: 0.75rem; font-weight: 700; margin-bottom: 12px; background: rgba(0, 134, 255, 0.1); color: var(--azul-01); align-self: flex-start; }
        .price { color: var(--azul-01); font-size: 1.2rem; font-weight: 800; margin-top: auto; }

        /* =========================================
           STOCK CARDS (Diversa Identity)
           ========================================= */
        .stock-loading { grid-column: 1 / -1; display: flex; align-items: center; justify-content: center; gap: 12px; padding: 60px 20px; color: var(--text-muted); font-size: 0.9rem; }
        .stock-card {
            background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 20px;
            cursor: pointer; transition: transform 0.3s, border-color 0.3s, background-color 0.3s, color 0.3s, opacity 0.3s, box-shadow 0.3s; position: relative; overflow: hidden;
            display: flex; flex-direction: column; gap: 6px;
        }
        .stock-card:hover { border-color: var(--azul-01); box-shadow: 0 8px 30px rgba(0,134,255,0.12); transform: translateY(-2px); }
        .stock-card::before {
            content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
            background: var(--azul-01); opacity: 0; transition: opacity 0.3s;
        }
        .stock-card:hover::before { opacity: 1; }
        .stock-card-top { display: flex; align-items: center; justify-content: space-between; }
        .stock-card-logo { width: 36px; height: 36px; border-radius: 8px; background: rgba(0,134,255,0.06); display: flex; align-items: center; justify-content: center; overflow: hidden; flex-shrink: 0; }
        .stock-card-logo img { width: 100%; height: 100%; object-fit: contain; }
        .stock-card-logo .material-symbols-outlined { font-size: 18px; color: var(--azul-01); }
        .stock-card-badge {
            font-size: 0.65rem; font-weight: 800; letter-spacing: 0.5px; padding: 3px 10px; border-radius: 20px;
            background: rgba(0,134,255,0.08); color: var(--azul-01); border: 1px solid rgba(0,134,255,0.15);
        }
        .stock-card-ticker { font-size: 1.25rem; font-weight: 800; color: var(--text-main); }
        .stock-card-name { font-size: 0.78rem; color: var(--text-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
        .stock-card-mid { display: flex; align-items: baseline; justify-content: space-between; margin-top: 4px; }
        .stock-card-price { font-size: 1.5rem; font-weight: 800; color: var(--text-main); }
        .stock-card-price .currency { font-size: 0.85rem; font-weight: 600; color: var(--text-muted); margin-right: 2px; }
        .stock-card-change { display: flex; align-items: center; gap: 6px; font-size: 0.82rem; font-weight: 700; padding: 4px 10px; border-radius: 8px; }
        .stock-card-change.pos { color: #16A34A; background: rgba(22,163,74,0.08); }
        .stock-card-change.neg { color: #DC2626; background: rgba(220,38,38,0.08); }
        .stock-card-spark { margin-top: 6px; height: 28px; display: flex; align-items: flex-end; gap: 2px; }
        .stock-card-spark .bar { width: 4px; border-radius: 2px; background: var(--azul-01); opacity: 0.6; transition: opacity 0.3s; }
        .stock-card:hover .stock-card-spark .bar { opacity: 1; }
        .stock-card-spark .bar.pos { background: #16A34A; }
        .stock-card-spark .bar.neg { background: #DC2626; }

        /* =========================================
           STOCK SEARCH / ADD DROPDOWN
           ========================================= */
        .stock-search-wrap { position: relative; width: 300px; }
        .stock-search-dropdown {
            display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 100;
            background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px;
            max-height: 320px; overflow-y: auto; box-shadow: 0 10px 40px rgba(0,0,0,0.12);
        }
        .stock-search-dropdown.open { display: block; }
        .stock-search-item {
            display: flex; align-items: center; gap: 10px; padding: 10px 14px; cursor: pointer;
            transition: background 0.15s; border-bottom: 1px solid var(--border-color);
        }
        .stock-search-item:last-child { border-bottom: none; }
        .stock-search-item:hover { background: rgba(0,134,255,0.06); }
        .stock-search-item .s-ticker { font-weight: 700; font-size: 0.85rem; color: var(--text-main); }
        .stock-search-item .s-name { font-size: 0.75rem; color: var(--text-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
        .stock-search-item .s-add {
            margin-left: auto; font-size: 0.75rem; font-weight: 700; color: var(--azul-01);
            background: rgba(0,134,255,0.08); padding: 4px 10px; border-radius: 6px; flex-shrink: 0;
        }
        .stock-search-item:hover .s-add { background: rgba(0,134,255,0.15); }
        .stock-search-empty {
            padding: 20px; text-align: center; color: var(--text-muted); font-size: 0.8rem;
        }
        .stock-search-remove {
            display: inline-flex; align-items: center; gap: 4px; font-size: 0.75rem; font-weight: 600;
            color: var(--text-muted); cursor: pointer; padding: 4px 10px; border-radius: 6px;
            background: rgba(220,38,38,0.06); color: #DC2626; margin-left: auto; flex-shrink: 0;
        }
        .stock-search-remove:hover { background: rgba(220,38,38,0.12); }

        /* =========================================
           DIVIDENDOS (Agenda de Proventos)
           ========================================= */
        .div-filter-bar { display: flex; align-items: center; gap: 16px; justify-content: center; flex-wrap: wrap; margin-bottom: 20px; width: 100%; }
        .div-legenda { display: flex; gap: 8px; align-items: center; }
        .div-badge { font-size: 0.65rem; font-weight: 800; padding: 4px 12px; border-radius: 20px; letter-spacing: 0.3px; }
        .div-badge-jcp { background: rgba(255,179,0,0.12); color: #FFB300; border: 1px solid rgba(255,179,0,0.2); }
        .div-badge-div { background: rgba(76,175,80,0.12); color: #4CAF50; border: 1px solid rgba(76,175,80,0.2); }
        .div-grid { width: 100%; display: flex; flex-direction: column; gap: 24px; }
        .div-loading { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 50px 20px; color: var(--text-muted); font-size: 0.9rem; }
        .div-month { text-align: left; }
        .div-month-title {
            font-size: 0.85rem; font-weight: 800; color: var(--text-muted); text-transform: uppercase;
            letter-spacing: 1px; margin-bottom: 10px; padding-bottom: 6px;
            border-bottom: 1px solid var(--border-color); display: flex; align-items: center; gap: 8px;
        }
        .div-month-title .material-symbols-outlined { font-size: 18px; color: var(--azul-01); }
        .div-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; }
        .div-card {
            background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 14px;
            padding: 16px; text-align: left; transition: border-color 0.25s;
            display: flex; flex-direction: column; gap: 6px;
        }
        .div-card:hover { border-color: rgba(0,134,255,0.2); }
        .div-card-top { display: flex; align-items: center; justify-content: space-between; }
        .div-card-ticker { font-weight: 800; font-size: 0.95rem; color: var(--azul-01); }
        .div-card-type { font-size: 0.6rem; font-weight: 800; padding: 2px 8px; border-radius: 12px; letter-spacing: 0.3px; }
        .div-card-type.jcp { background: rgba(255,179,0,0.12); color: #FFB300; }
        .div-card-type.div { background: rgba(76,175,80,0.12); color: #4CAF50; }
        .div-card-company { font-size: 0.72rem; color: var(--text-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
        .div-card-row { display: flex; justify-content: space-between; align-items: center; padding: 2px 0; }
        .div-card-label { font-size: 0.65rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.3px; font-weight: 600; }
        .div-card-value { font-size: 0.85rem; font-weight: 700; color: var(--text-main); }
        .div-card-value.highlight { color: var(--azul-01); font-size: 1rem; }
        .div-card-value.yield-high { color: #4CAF50; }
        .div-card-value.yield-low { color: var(--text-muted); }
        .div-empty { grid-column: 1 / -1; padding: 40px; text-align: center; color: var(--text-muted); font-size: 0.85rem; }

        @media(max-width: 600px) {
            .div-cards { grid-template-columns: 1fr; }
            .div-filter-bar { flex-direction: column; align-items: stretch; }
            .div-filter-bar > div { width: 100% !important; }
        }

        /* =========================================
           TAXAS DE ALUGUEL DE AÇÕES
           ========================================= */
        .alu-filter-bar { display: flex; align-items: center; gap: 16px; justify-content: center; flex-wrap: wrap; margin-bottom: 20px; width: 100%; }
        .alu-legenda { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
        .alu-badge { font-size: 0.65rem; font-weight: 800; padding: 4px 12px; border-radius: 20px; letter-spacing: 0.3px; }
        .alu-grid { width: 100%; display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 12px; }
        .alu-loading { grid-column: 1 / -1; display: flex; align-items: center; justify-content: center; gap: 12px; padding: 50px 20px; color: var(--text-muted); font-size: 0.9rem; }
        .alu-card {
            background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 14px;
            padding: 16px; text-align: left; transition: transform 0.25s, border-color 0.25s, background-color 0.25s, color 0.25s, opacity 0.25s, box-shadow 0.25s;
            display: flex; flex-direction: column; gap: 8px; position: relative; overflow: hidden;
        }
        .alu-card:hover { border-color: var(--azul-01); box-shadow: 0 6px 24px rgba(0,134,255,0.1); transform: translateY(-1px); }
        .alu-card::before {
            content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
            background: var(--azul-01); opacity: 0; transition: opacity 0.3s;
        }
        .alu-card:hover::before { opacity: 1; }
        .alu-card-top { display: flex; align-items: center; justify-content: space-between; }
        .alu-card-ticker { font-weight: 800; font-size: 1rem; color: var(--text-main); }
        .alu-card-status {
            font-size: 0.6rem; font-weight: 800; padding: 2px 8px; border-radius: 12px; letter-spacing: 0.3px;
        }
        .alu-card-status.baixa { background: rgba(22,163,74,0.08); color: #16A34A; }
        .alu-card-status.media { background: rgba(255,179,0,0.1); color: #FFB300; }
        .alu-card-status.alta { background: rgba(220,38,38,0.08); color: #DC2626; }
        .alu-card-rate {
            font-size: 1.8rem; font-weight: 800; text-align: center; padding: 12px 0 8px; line-height: 1;
        }
        .alu-card-rate .pct { font-size: 1rem; font-weight: 600; }
        .alu-card-rate.baixa { color: #16A34A; }
        .alu-card-rate.media { color: #FFB300; }
        .alu-card-rate.alta { color: #DC2626; }
        .alu-card-label { font-size: 0.7rem; color: var(--text-muted); text-align: center; margin-bottom: 4px; }
        .alu-card-price-row { display: flex; align-items: center; justify-content: center; gap: 10px; font-size: 0.82rem; }
        .alu-card-price-row .price { font-weight: 700; color: var(--text-main); }
        .alu-card-price-row .change { font-weight: 700; padding: 2px 8px; border-radius: 6px; }
        .alu-card-price-row .change.pos { color: #16A34A; background: rgba(22,163,74,0.06); }
        .alu-card-price-row .change.neg { color: #DC2626; background: rgba(220,38,38,0.06); }
        .alu-card-amount { display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 0.75rem; color: var(--text-muted); }
        .alu-card-amount strong { color: var(--text-main); }

        /* =========================================
           STOCK DETAIL PAGE
           ========================================= */
        .stock-detail { max-width: 800px; margin: 0 auto; padding: 20px 0; }
        .sd-back {
            display: inline-flex; align-items: center; gap: 4px; font-size: 0.85rem; font-weight: 600;
            color: var(--text-muted); cursor: pointer; transition: color 0.2s; margin-bottom: 24px;
        }
        .sd-back:hover { color: var(--azul-01); }
        .sd-header {
            background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 20px;
            padding: 30px; margin-bottom: 24px; position: relative; overflow: hidden;
        }
        .sd-header::before {
            content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
            background: var(--azul-01);
        }
        .sd-header-top { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
        .sd-header-logo { width: 52px; height: 52px; border-radius: 12px; background: rgba(0,134,255,0.06); display: flex; align-items: center; justify-content: center; overflow: hidden; flex-shrink: 0; }
        .sd-header-logo img { width: 100%; height: 100%; object-fit: contain; }
        .sd-header-logo .material-symbols-outlined { font-size: 26px; color: var(--azul-01); }
        .sd-header-info { flex-grow: 1; }
        .sd-ticker { font-size: 1.1rem; font-weight: 700; color: var(--text-muted); letter-spacing: 0.5px; }
        .sd-company { font-size: 1.6rem; font-weight: 800; color: var(--text-main); line-height: 1.2; }
        .sd-price-row { display: flex; align-items: center; gap: 16px; margin-top: 8px; }
        .sd-price { font-size: 2.8rem; font-weight: 800; color: var(--text-main); }
        .sd-price .currency { font-size: 1.2rem; font-weight: 600; color: var(--text-muted); margin-right: 4px; }
        .sd-change { display: inline-flex; align-items: center; gap: 6px; font-size: 1rem; font-weight: 700; padding: 6px 14px; border-radius: 10px; }
        .sd-change.pos { color: #16A34A; background: rgba(22,163,74,0.08); }
        .sd-change.neg { color: #DC2626; background: rgba(220,38,38,0.08); }
        .sd-meta { display: flex; gap: 24px; margin-top: 10px; font-size: 0.75rem; color: var(--text-muted); }
        .sd-stats-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 24px; }
        .sd-stat-card {
            background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 14px; padding: 16px 18px;
            transition: border-color 0.3s;
        }
        .sd-stat-card:hover { border-color: rgba(0,134,255,0.2); }
        .sd-stat-label { font-size: 0.7rem; color: var(--text-muted); font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }
        .sd-stat-value { font-size: 1.1rem; font-weight: 800; color: var(--text-main); }
        .sd-stat-value.pos { color: #16A34A; }
        .sd-stat-value.neg { color: #DC2626; }
        .sd-section-title {
            font-size: 1.1rem; font-weight: 700; color: var(--text-main); margin-bottom: 16px; margin-top: 8px;
            display: flex; align-items: center; gap: 8px;
        }
        .sd-fund-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 24px; }
        .sd-fund-item {
            background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 14px;
            padding: 16px; text-align: center; transition: border-color 0.3s;
        }
        .sd-fund-item:hover { border-color: rgba(0,134,255,0.2); }
        .sd-fund-label { font-size: 0.65rem; color: var(--text-muted); font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }
        .sd-fund-value { font-size: 1rem; font-weight: 800; color: var(--text-main); }
        .sd-fund-value.pos { color: #16A34A; }
        .sd-fund-value.neg { color: #DC2626; }
        .sd-loading { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 80px 20px; color: var(--text-muted); font-size: 0.9rem; }

        @media(max-width: 768px) {
            .sd-header { padding: 20px; }
            .sd-price { font-size: 2rem; }
            .sd-company { font-size: 1.2rem; }
            .sd-stats-grid { grid-template-columns: repeat(2, 1fr); }
            .sd-fund-grid { grid-template-columns: repeat(2, 1fr); }
            .sd-price-row { flex-wrap: wrap; }
        }

        /* =========================================
           VÍDEOS (FLUTUANTES — removidos)
           ========================================= */

        /* =========================================
           CALCULADORAS E ELEMENTOS ESPECIAIS
           ========================================= */
        .calc-container { background: var(--bg-card); padding: 30px; border-radius: var(--border-radius); border: 1px solid var(--border-color); display: grid; grid-template-columns: 1fr 1fr; gap: 40px; transition: background-color 0.3s; margin-bottom: 40px; }
        .form-group { margin-bottom: 16px; }
        .form-group label { display: block; font-size: 0.9rem; font-weight: 600; margin-bottom: 8px; color: var(--text-muted); }
        .form-group input, .form-group select { width: 100%; padding: 12px; border-radius: 8px; border: 1px solid var(--border-color); background: var(--input-bg); color: var(--text-main); font-size: 1rem; outline: none; transition: 0.3s; }
        .form-group select { cursor: pointer; appearance: auto; }
        .result-box { background: rgba(0, 134, 255, 0.05); border: 1px solid var(--azul-01); border-radius: 8px; padding: 30px; text-align: center; display: flex; flex-direction: column; justify-content: center; }
        .result-box h4 { color: var(--text-muted); font-size: 1rem; margin-bottom: 10px; }
        .result-box .valor { font-size: 2.5rem; color: var(--azul-01); font-weight: 800; }
        @media (max-width: 900px) { .calc-container { grid-template-columns: 1fr; } }
        .cmp-container { background: var(--bg-card); padding: 30px; border-radius: var(--border-radius); border: 1px solid var(--border-color); margin-bottom: 40px; }
        .cmp-inputs { display: flex; gap: 16px; align-items: flex-end; flex-wrap: wrap; margin-bottom: 24px; }
        .cmp-input-group { flex: 1; min-width: 180px; }
        .cmp-input-group label { display: block; font-size: 0.8rem; color: var(--text-muted); margin-bottom: 4px; }
        .cmp-input-group input { width: 100%; padding: 10px 14px; border-radius: 8px; border: 1px solid var(--border-color); background: var(--input-bg); color: var(--text-main); font-size: 0.95rem; outline: none; }
        .cmp-resultado { display: none; }
        .cmp-resultado.open { display: block; }
        .cmp-placeholder { text-align: center; padding: 40px 20px; color: var(--text-muted); }
        .cmp-header { display: flex; gap: 20px; margin-bottom: 24px; flex-wrap: wrap; }
        .cmp-header-card { flex: 1; min-width: 280px; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 20px; display: flex; align-items: center; gap: 16px; }
        .cmp-header-logo { width: 48px; height: 48px; border-radius: 8px; overflow: hidden; flex-shrink: 0; background: var(--azul-04); display: flex; align-items: center; justify-content: center; }
        .cmp-header-logo img { width: 100%; height: 100%; object-fit: contain; }
        .cmp-header-info { flex: 1; }
        .cmp-header-ticker { font-size: 1.1rem; font-weight: 700; color: var(--text-main); }
        .cmp-header-name { font-size: 0.8rem; color: var(--text-muted); }
        .cmp-header-price { font-size: 1.3rem; font-weight: 700; color: var(--text-main); margin-top: 4px; }
        .cmp-header-change { font-size: 0.85rem; }
        .cmp-header-change.pos { color: #16A34A; }
        .cmp-header-change.neg { color: #DC2626; }
        .cmp-table-wrap { overflow-x: auto; margin-bottom: 24px; }
        .cmp-table { width: 100%; border-collapse: collapse; font-size: 0.85rem; }
        .cmp-table th, .cmp-table td { padding: 10px 14px; text-align: left; border-bottom: 1px solid var(--border-color); }
        .cmp-table th { background: var(--azul-04); color: white; font-weight: 600; }
        .cmp-table th:first-child { border-radius: 8px 0 0 0; }
        .cmp-table th:last-child { border-radius: 0 8px 0 0; }
        .cmp-table td:first-child { font-weight: 600; color: var(--text-muted); }
        .cmp-table .winner { color: #16A34A; font-weight: 600; }
        .cmp-table .loser { color: #DC2626; }
        .cmp-analysis { background: rgba(0,134,255,0.05); border: 1px solid var(--azul-01); border-radius: 12px; padding: 20px; margin-bottom: 24px; }
        .cmp-analysis h4 { color: var(--azul-01); margin-bottom: 8px; font-size: 0.95rem; }
        .cmp-analysis p { color: var(--text-muted); font-size: 0.85rem; line-height: 1.6; margin: 0; }
        .cmp-charts { display: flex; gap: 16px; flex-wrap: wrap; }
        .cmp-chart-box { flex: 1; min-width: 300px; height: 400px; border: 1px solid var(--border-color); border-radius: 12px; overflow: hidden; background: var(--bg-card); }
        .academy-wrap { max-width: 700px; margin: 0 auto; }
        .cdi-tabela { width:100%; border-collapse:collapse; margin-top:16px; font-size:0.85rem; }
        .cdi-tabela th { padding:10px 12px; border-bottom:2px solid var(--border-color); text-align:left; font-size:0.7rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:0.5px; }
        .cdi-tabela td { padding:10px 12px; border-bottom:1px solid var(--border-color); color:var(--text-main); }
        .cdi-tabela .winner { color:#4CAF50; font-weight:700; }
        .cdi-tabela .loser { color:var(--text-muted); }
        .cdi-tabela tr:last-child td { border-bottom:none; }
        .cdi-resultado { margin-top:20px; padding:16px; border-radius:8px; text-align:center; font-size:0.9rem; }
        .jc-tabela { width:100%; border-collapse:collapse; font-size:0.85rem; }
        .jc-tabela th { padding:10px 12px; border-bottom:2px solid var(--border-color); text-align:right; font-size:0.7rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:0.5px; font-weight:700; }
        .jc-tabela th:first-child { text-align:center; }
        .jc-tabela td { padding:8px 12px; border-bottom:1px solid var(--border-color); text-align:right; color:var(--text-main); }
        .jc-tabela td:first-child { text-align:center; color:var(--text-muted); }
        .jc-tabela tr:hover td { background:rgba(0,134,255,0.03); }
        .jc-tabela tr:last-child td { border-bottom:none; font-weight:700; }
        .jc-chart-wrap { background:var(--bg-card); border:1px solid var(--border-color); border-radius:var(--border-radius); padding:16px; margin-top:20px; }
        .jc-chart-legend { display:flex; gap:20px; flex-wrap:wrap; margin-bottom:10px; font-size:0.8rem; align-items:center; }
        .jc-chart-legend span { display:inline-flex; align-items:center; gap:6px; color:var(--text-muted); }
        .jc-chart-legend .dot { display:inline-block; width:12px; height:12px; border-radius:3px; flex-shrink:0; }
        .jc-result-breakdown { margin-top:12px; font-size:0.85rem; color:var(--text-muted); display:flex; gap:24px; justify-content:center; flex-wrap:wrap; }
        .jc-result-breakdown span { display:inline-flex; align-items:center; gap:6px; }
        .jc-result-breakdown strong { font-size:1rem; }
        .jc-toggle-btn { background:none; border:none; color:var(--azul-01); cursor:pointer; font-weight:600; font-size:0.85rem; display:inline-flex; align-items:center; gap:6px; padding:8px 0; }
        .jc-toggle-btn:hover { opacity:0.8; }
        .cdi-resultado .cdi-rec { font-size:1.1rem; font-weight:700; color:var(--azul-01); margin-bottom:4px; }

        /* Comparador de Renda Fixa - two panels side by side */
        .comp-container { background: var(--bg-card); border-radius: var(--border-radius); border: 1px solid var(--border-color); overflow: hidden; margin-bottom: 30px; }
        .comp-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
        .comp-panel { padding: 30px; border-right: 1px solid var(--border-color); }
        .comp-panel:last-child { border-right: none; }
        .comp-panel h3 { font-size: 1.1rem; font-weight: 700; margin: 0 0 20px; display: flex; align-items: center; gap: 10px; }
        .comp-panel h3 .badge { font-size: 0.65rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; padding: 3px 10px; border-radius: 20px; }
        .comp-panel h3 .badge.inv-a { background: rgba(0,134,255,0.1); color: var(--azul-01); }
        .comp-panel h3 .badge.inv-b { background: rgba(76,175,80,0.1); color: #4CAF50; }
        .comp-yield-group { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 8px; }
        .comp-yield-btn { flex:1; padding: 8px 6px; border: 1px solid var(--border-color); border-radius: 8px; background: var(--input-bg); color: var(--text-muted); font-size: 0.75rem; font-weight: 600; cursor: pointer; transition: 0.2s; text-align: center; min-width: 0; }
        .comp-yield-btn:hover { border-color: var(--azul-01); color: var(--text-main); }
        .comp-yield-btn.active { background: var(--azul-01); border-color: var(--azul-01); color: #fff; }
        .comp-rate-info { font-size: 0.75rem; color: var(--text-muted); margin-bottom: 16px; min-height: 20px; }
        .comp-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 30px; border-top: 1px solid var(--border-color); background: var(--input-bg); flex-wrap: wrap; }
        .comp-ref-rates { font-size: 0.8rem; color: var(--text-muted); }
        .comp-ref-rates strong { color: var(--text-main); }
        .comp-btn { background: var(--azul-01); color: #fff; border: none; padding: 14px 40px; border-radius: 12px; font-size: 1rem; font-weight: 700; cursor: pointer; transition: 0.2s; }
        .comp-btn:hover { opacity: 0.9; transform: translateY(-1px); }
        .comp-btn:disabled { opacity: 0.4; cursor: default; transform: none; }
        .comp-result-wrap { display: none; padding: 0 30px 30px; }
        .comp-result-wrap.show { display: block; }
        .comp-result-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 20px; }
        .comp-result-card { padding: 24px; border-radius: 12px; border: 1px solid var(--border-color); background: var(--bg-body); }
        .comp-result-card.winner { border-color: #4CAF50; background: rgba(76,175,80,0.04); }
        .comp-result-card h4 { font-size: 0.85rem; font-weight: 700; margin: 0 0 8px; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.5px; }
        .comp-result-card .big-val { font-size: 1.8rem; font-weight: 800; color: var(--azul-01); }
        .comp-result-card.winner .big-val { color: #4CAF50; }
        .comp-result-card .detail { font-size: 0.85rem; color: var(--text-muted); margin-top: 4px; }
        .comp-result-card .detail strong { color: var(--text-main); }
        .comp-verdict { text-align: center; padding: 20px; border-radius: 12px; margin-top: 20px; font-size: 1.1rem; }
        .comp-verdict.win-a { background: rgba(0,134,255,0.06); border: 1px solid rgba(0,134,255,0.2); color: var(--azul-01); }
        .comp-verdict.win-b { background: rgba(76,175,80,0.06); border: 1px solid rgba(76,175,80,0.2); color: #4CAF50; }
        .comp-verdict.draw { background: rgba(255,179,0,0.06); border: 1px solid rgba(255,179,0,0.2); color: #FFB300; }
        .comp-verdict strong { font-size: 1.3rem; }
        .comp-err-msg { color: #F44336; font-size: 0.85rem; margin-top: 4px; display: none; }
        @media (max-width: 800px) { .comp-grid { grid-template-columns: 1fr; } .comp-panel { border-right: none; border-bottom: 1px solid var(--border-color); } .comp-result-cards { grid-template-columns: 1fr; } .comp-footer { flex-direction: column; align-items: stretch; } .comp-btn { width: 100%; } }

        /* Conta PJ */
        .pj-hero { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; margin-bottom: 50px; padding: 50px; background: linear-gradient(135deg, var(--azul-04) 0%, #001138 100%); border-radius: 24px; color: white; position: relative; overflow: hidden; }
        .pj-hero::before { content: ''; position: absolute; top: -50%; right: -20%; width: 500px; height: 500px; background: radial-gradient(circle, rgba(0,134,255,0.08) 0%, transparent 70%); border-radius: 50%; }
        .pj-hero-left { position: relative; z-index: 1; }
        .pj-hero-left .pj-tag { display: inline-block; padding: 6px 14px; border-radius: 20px; background: rgba(0,134,255,0.15); color: var(--azul-01); font-weight: 800; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 16px; border: 1px solid rgba(0,134,255,0.3); }
        .pj-hero-left h1 { font-size: 2.5rem; font-weight: 800; line-height: 1.2; margin-bottom: 16px; }
        .pj-hero-left h1 em { color: var(--azul-01); font-style: normal; }
        .pj-hero-left p { font-size: 1rem; color: #CDCDCD; line-height: 1.6; margin-bottom: 24px; max-width: 480px; }
        .pj-hero-left .pj-hero-badge { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: 12px; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); font-size: 0.85rem; color: #CDCDCD; margin-bottom: 20px; }
        .pj-hero-left .pj-hero-badge strong { color: white; }
        .pj-hero-right { position: relative; z-index: 1; display: flex; justify-content: center; }
        .pj-hero-right .pj-card-preview { width: 320px; height: 200px; border-radius: 16px; background: linear-gradient(135deg, #1a2a6c, #0c1a4a, #0d1b3e); border: 1px solid rgba(255,255,255,0.1); padding: 24px; display: flex; flex-direction: column; justify-content: flex-end; position: relative; overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,0.4); }
        .pj-hero-right .pj-card-preview::after { content: ''; position: absolute; top: -30px; right: -30px; width: 120px; height: 120px; background: radial-gradient(circle, rgba(0,134,255,0.2), transparent); }
        .pj-hero-right .pj-card-preview .card-chip { width: 40px; height: 30px; background: linear-gradient(135deg, #f0c040, #d4a830); border-radius: 4px; margin-bottom: auto; }
        .pj-hero-right .pj-card-preview .card-number { font-size: 1.1rem; letter-spacing: 3px; color: rgba(255,255,255,0.7); font-family: monospace; margin-bottom: 8px; }
        .pj-hero-right .pj-card-preview .card-holder { display: flex; justify-content: space-between; font-size: 0.7rem; color: rgba(255,255,255,0.4); text-transform: uppercase; letter-spacing: 1px; }
        .pj-benefits { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-bottom: 50px; }
        .pj-benefit-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 28px; text-align: center; transition: 0.25s; }
        .pj-benefit-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,134,255,0.08); border-color: var(--azul-01); }
        .pj-benefit-card .pj-b-icon { width: 56px; height: 56px; border-radius: 14px; background: rgba(0,134,255,0.08); display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; }
        .pj-benefit-card .pj-b-icon .material-symbols-outlined { font-size: 28px; color: var(--azul-01); }
        .pj-benefit-card h4 { font-size: 1rem; font-weight: 700; margin-bottom: 8px; }
        .pj-benefit-card p { font-size: 0.82rem; color: var(--text-muted); line-height: 1.5; }
        .pj-products { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 50px; }
        .pj-product-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 28px; transition: 0.25s; }
        .pj-product-card:hover { border-color: var(--azul-01); box-shadow: 0 8px 24px rgba(0,134,255,0.06); }
        .pj-product-card .pj-p-icon { width: 44px; height: 44px; border-radius: 12px; background: rgba(0,134,255,0.08); display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }
        .pj-product-card .pj-p-icon .material-symbols-outlined { font-size: 22px; color: var(--azul-01); }
        .pj-product-card h4 { font-size: 0.95rem; font-weight: 700; margin-bottom: 6px; }
        .pj-product-card p { font-size: 0.8rem; color: var(--text-muted); line-height: 1.5; margin-bottom: 12px; }
        .pj-product-card .pj-p-tag { display: inline-block; padding: 3px 10px; border-radius: 20px; background: rgba(76,175,80,0.1); color: #4CAF50; font-size: 0.7rem; font-weight: 700; }
        .pj-cta { background: linear-gradient(135deg, var(--azul-01), #005BBB); border-radius: 20px; padding: 50px; text-align: center; color: white; margin-bottom: 40px; }
        .pj-cta h2 { font-size: 1.8rem; font-weight: 800; margin-bottom: 10px; }
        .pj-cta p { opacity: 0.85; font-size: 1rem; margin-bottom: 24px; }
        .pj-cta .pj-cta-btn { display: inline-flex; align-items: center; gap: 10px; padding: 16px 40px; border-radius: 14px; background: white; color: var(--azul-01); font-weight: 800; font-size: 1rem; border: none; cursor: pointer; transition: 0.2s; text-decoration: none; }
        .pj-cta .pj-cta-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.2); }
        .pj-faq { margin-top: 10px; }
        @media (max-width: 900px) { .pj-hero { grid-template-columns: 1fr; padding: 30px; } .pj-benefits { grid-template-columns: repeat(2, 1fr); } .pj-products { grid-template-columns: 1fr; } }
        @media (max-width: 600px) { .pj-benefits { grid-template-columns: 1fr; } .pj-hero-left h1 { font-size: 1.8rem; } }

        .stats-banner { display: flex; gap: 20px; margin-top: 20px; }
        .stat-item { background: rgba(255,255,255,0.1); padding: 15px 20px; border-radius: 8px; border: 1px solid rgba(255,255,255,0.2); }
        .stat-item h4 { font-size: 1.5rem; color: white; margin-bottom: 5px; }
        .stat-item span { font-size: 0.8rem; color: #CDCDCD; text-transform: uppercase; }
        
        /* FAQ Interativo */
        .faq-item { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 8px; padding: 20px; margin-bottom: 15px; cursor: pointer; transition: 0.3s; }
        .faq-item:hover { border-color: var(--azul-01); }
        .faq-item h4 { color: var(--text-main); font-size: 1.1rem; display: flex; justify-content: space-between; align-items: center; margin: 0; }
        .faq-content { margin-top: 15px; color: var(--text-muted); font-size: 0.95rem; line-height: 1.5; border-top: 1px solid var(--border-color); padding-top: 15px; }

        /* =========================================
           GLASSMORPHISM E OUTROS
           ========================================= */
        .glass-panel { background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.2); border-radius: 24px; color: white; transition: transform 0.3s ease, background 0.5s ease; }
        .glass-panel:hover { transform: translateY(-5px); }
        .live-market-badge { display: inline-flex; align-items: center; gap: 6px; background: rgba(255, 255, 255, 0.15); padding: 6px 12px; border-radius: 20px; font-size: 0.75rem; font-weight: 800; text-transform: uppercase; letter-spacing: 1px; color: white; border: 1px solid rgba(255, 255, 255, 0.2); }
        .live-dot { width: 8px; height: 8px; background-color: #4CAF50; border-radius: 50%; box-shadow: 0 0 8px #4CAF50; animation: pulse 1.5s infinite; }
        @keyframes pulse { 0% { opacity: 1; } 50% { opacity: 0.4; } 100% { opacity: 1; } }

        /* =========================================
           ESTILOS HERO BANKING (Cartão 3D)
           ========================================= */
        .hero-banking { background: linear-gradient(135deg, var(--azul-04), #000108); position: relative; border-radius: var(--border-radius); padding: 60px; display: flex; justify-content: space-between; align-items: center; overflow: hidden; color: white; min-height: 400px; border: 1px solid rgba(255,255,255,0.1); margin-bottom: 40px; }
        .hero-banking-content { max-width: 48%; position: relative; z-index: 2; }
        .hero-banking-content h1 { font-size: 3.2rem; font-weight: 800; margin-bottom: 15px; line-height: 1.1; color: #FFFFFF; }
        .metrics-banking { display: flex; gap: 40px; margin-top: 40px; }
        .metric-box h3 { font-size: 2.2rem; color: var(--azul-01); margin-bottom: 5px; font-weight: 800;}
        .metric-box p { font-size: 0.9rem; color: #CDCDCD; text-transform: uppercase; letter-spacing: 1px; font-weight: 600;}
        .floating-card-wrapper { perspective: 1500px; width: 380px; height: 239px; z-index: 2; animation: floatBanking 6s ease-in-out infinite; cursor: crosshair; }
        .premium-card-inner { width: 100%; height: 100%; background-size: contain; background-repeat: no-repeat; background-position: center; border-radius: 16px; transform-style: preserve-3d; box-shadow: 0 30px 60px rgba(0, 0, 0, 0.5), 0 0 50px rgba(0, 134, 255, 0.4); transition: transform 0.1s ease; position: relative; overflow: hidden; }
        .premium-card-glare { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient(circle at 50% 50%, rgba(255,255,255,0.8) 0%, transparent 60%); opacity: 0; transition: opacity 0.3s ease; pointer-events: none; mix-blend-mode: overlay; }
        @keyframes floatBanking { 0% { transform: translateY(0px) rotateZ(0deg); } 50% { transform: translateY(-15px) rotateZ(1deg); } 100% { transform: translateY(0px) rotateZ(0deg); } }

        /* =========================================
           BANKING: CARD SELECTOR + FEATURES
           ========================================= */
        .banking-card-section { display: flex; flex-direction: column; align-items: center; gap: 20px; z-index: 2; }
        .banking-card-selector { display: flex; gap: 10px; background: rgba(255,255,255,0.06); padding: 6px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.08); }
        .card-select-btn { padding: 10px 24px; border-radius: 10px; border: none; background: transparent; color: rgba(255,255,255,0.6); font-weight: 700; font-size: 0.85rem; cursor: pointer; transition: 0.3s; font-family: inherit; }
        .card-select-btn:hover { color: white; background: rgba(255,255,255,0.08); }
        .card-select-btn.active { background: rgba(0, 134, 255, 0.25); color: white; box-shadow: 0 0 20px rgba(0, 134, 255, 0.2); }
        .banking-card-display { display: flex; align-items: center; gap: 40px; }
        .banking-features { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.06); border-radius: 16px; padding: 24px 28px; min-width: 240px; backdrop-filter: blur(10px); }
        .banking-features h4 { color: var(--azul-01); font-size: 0.8rem; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 16px; font-weight: 700; }
        .banking-features ul { list-style: none; padding: 0; margin: 0; }
        .banking-features li { display: flex; align-items: center; gap: 10px; padding: 8px 0; color: #E0E0E0; font-size: 0.9rem; border-bottom: 1px solid rgba(255,255,255,0.04); }
        .banking-features li:last-child { border-bottom: none; }
        .banking-features li .feat-icon { color: #4CAF50; font-size: 18px; }

        /* =========================================
           BANKING: CARD ELIGIBILITY
           ========================================= */
        .banking-eligibility { background: linear-gradient(135deg, var(--azul-04), #000108); border-radius: 24px; padding: 50px; margin-top: 50px; margin-bottom: 60px; color: white; border: 1px solid rgba(255,255,255,0.05); }
        .banking-eligibility .section-title { color: white; margin-top: 0; }
        .eligibility-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 30px; }
        .eligibility-card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 20px; padding: 32px; transition: 0.3s; }
        .eligibility-card:hover { background: rgba(255,255,255,0.07); border-color: rgba(0,134,255,0.2); }
        .eligibility-card h3 { font-size: 1.3rem; font-weight: 700; margin-bottom: 6px; }
        .eligibility-card .card-tag { display: inline-block; padding: 3px 12px; border-radius: 20px; font-size: 0.7rem; text-transform: uppercase; letter-spacing: 1px; font-weight: 800; margin-bottom: 20px; }
        .eligibility-card .card-tag.ultra { background: rgba(0,134,255,0.2); color: var(--azul-01); }
        .eligibility-card .card-tag.black { background: rgba(0,200,83,0.15); color: #4CAF50; }
        .eligibility-card ul { list-style: none; padding: 0; margin: 0; }
        .eligibility-card li { display: flex; align-items: center; gap: 10px; padding: 10px 0; color: #D0D0D0; font-size: 0.9rem; border-bottom: 1px solid rgba(255,255,255,0.04); }
        .eligibility-card li:last-child { border-bottom: none; }
        .eligibility-card li .mat-icon { color: var(--azul-01); font-size: 20px; }

        /* =========================================
           ESTILOS OPEN FINANCE INTELLIGENCE & RADAR
           ========================================= */
        .open-finance-section { display: flex; align-items: center; justify-content: space-between; background: linear-gradient(135deg, var(--azul-04), #000108); border-radius: 24px; padding: 60px; margin-top: 60px; margin-bottom: 40px; color: white; border: 1px solid rgba(255,255,255,0.05); gap: 40px; overflow: hidden; }
        .of-left { flex: 1; max-width: 50%; }
        .of-badge { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; border-radius: 20px; border: 1px solid rgba(0, 134, 255, 0.3); background: rgba(0, 134, 255, 0.1); color: var(--azul-01); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 24px; font-weight: 800; }
        .of-title { font-size: 3rem; font-weight: 800; line-height: 1.1; margin-bottom: 20px; letter-spacing: -1px; }
        .of-title em { font-style: italic; font-weight: 400; color: var(--azul-01); }
        .of-desc { color: #CDCDCD; font-size: 1.1rem; line-height: 1.6; margin-bottom: 40px; }
        .of-feature { display: flex; gap: 20px; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.05); padding: 24px; border-radius: 16px; margin-bottom: 20px; align-items: flex-start; transition: background 0.3s; }
        .of-feature:hover { background: rgba(255,255,255,0.06); border-color: rgba(0, 134, 255, 0.2); }
        .of-feature-icon { background: rgba(0, 134, 255, 0.1); width: 48px; height: 48px; border-radius: 12px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--azul-01); }
        .of-feature h4 { font-size: 1.2rem; margin-bottom: 8px; color: white; font-weight: 700; }
        .of-feature p { font-size: 0.95rem; color: #CDCDCD; line-height: 1.5; margin: 0; }
        .of-right { flex: 1; display: flex; justify-content: center; align-items: center; position: relative; height: 400px; }
        .radar-container { position: relative; width: 400px; height: 400px; display: flex; justify-content: center; align-items: center; }
        .radar-ring { position: absolute; border-radius: 50%; border: 1px dashed rgba(0, 134, 255, 0.2); } 
        .radar-ring:nth-child(1) { width: 120px; height: 120px; border-style: solid; border-color: rgba(255,255,255,0.05); }
        .radar-ring:nth-child(2) { width: 240px; height: 240px; }
        .radar-ring:nth-child(3) { width: 380px; height: 380px; }
        .radar-sweep { position: absolute; width: 380px; height: 380px; border-radius: 50%; background: conic-gradient(from 0deg, transparent 70%, rgba(0, 134, 255, 0.2) 100%); animation: spinRadar 4s linear infinite; }
        .radar-center { position: absolute; width: 80px; height: 80px; background: var(--azul-03); border: 1px solid rgba(0, 134, 255, 0.3); border-radius: 50%; display: flex; align-items: center; justify-content: center; z-index: 5; box-shadow: 0 0 30px rgba(0, 134, 255, 0.3); }
        .radar-center .material-symbols-outlined { color: white; font-size: 32px; }
        .radar-dot { position: absolute; font-size: 0.75rem; font-weight: 600; display: flex; align-items: center; gap: 6px; z-index: 10; color: white;}
        .radar-dot::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 10px currentColor; }
        .dot-bank-a { top: 25%; left: 15%; color: #E53935; } 
        .dot-broker-c { top: 38%; right: 18%; color: #4CAF50; } 
        .dot-bank-b { bottom: 25%; right: 25%; color: #0086FF; } 
        @keyframes spinRadar { 100% { transform: rotate(360deg); } }

        /* =========================================
           NOVO ESTILO - CONSÓRCIO HERO & CARDS
           ========================================= */
        .card-consorcio-img {
            position: relative;
            min-height: 380px;
            border-radius: var(--border-radius);
            overflow: hidden;
            border: 1px solid var(--border-color);
            transition: transform 0.4s ease, box-shadow 0.4s ease;
            cursor: pointer;
            box-shadow: 0 10px 30px -10px rgba(0,0,0,0.1);
            background: var(--bg-card);
        }

        .card-consorcio-img:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px -10px rgba(0,134,255,0.3);
            border-color: var(--azul-01);
        }

        .card-consorcio-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            position: absolute;
            top: 0; left: 0;
            transition: transform 0.6s ease;
        }

        .card-consorcio-img:hover img {
            transform: scale(1.08);
        }

        .card-consorcio-overlay {
            position: absolute;
            bottom: 0; left: 0; width: 100%;
            background: linear-gradient(to top, rgba(0, 3, 32, 0.95) 0%, rgba(0, 3, 32, 0.6) 50%, transparent 100%);
            padding: 40px 30px 30px 30px;
            z-index: 2;
            color: white;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            height: 100%;
        }

        .card-consorcio-overlay h3 { font-size: 1.8rem; font-weight: 800; margin-bottom: 10px; display: flex; align-items: center; gap: 10px; }
        .card-consorcio-overlay p { font-size: 0.95rem; color: #CDCDCD; line-height: 1.5; margin: 0; opacity: 0.9; }

        /* NOVOS ESTILOS CONSÓRCIO */
        #consorcio-scroll-wrapper { position: relative; width: 100%; background: var(--bg-body);}
        .consorcio-sticky-hero { position: relative; height: 100vh; width: 100%; overflow: hidden; display: flex; align-items: center; justify-content: center;}
        
        .hero-consorcio-content { max-width: 55%; position: relative; z-index: 10; padding: 0 60px; width: 100%; margin: 0 auto; max-width: 1400px;}
        .hero-consorcio-content h1 { font-size: 4.5rem; font-weight: 800; line-height: 1.1; margin-bottom: 20px; letter-spacing: -1px; color: white; text-shadow: 0 4px 20px rgba(0,0,0,0.5);}
        .hero-consorcio-content p { font-size: 1.25rem; color: #EBEBEB; line-height: 1.6; margin-bottom: 35px; max-width: 90%; text-shadow: 0 2px 10px rgba(0,0,0,0.5);}
        
        .modal-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); backdrop-filter: blur(5px); z-index: 99999; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; }
        .modal-overlay.active { display: flex; opacity: 1; }
        .modal-box { background: var(--bg-card); width: 600px; max-width: 90%; border-radius: 20px; padding: 30px; position: relative; transform: translateY(20px); transition: transform 0.3s ease; box-shadow: 0 20px 50px rgba(0,0,0,0.3); border: 1px solid var(--border-color);}
        .modal-overlay.active .modal-box { transform: translateY(0); }
        .modal-close { position: absolute; top: 20px; right: 20px; cursor: pointer; color: var(--text-muted); background: var(--input-bg); border-radius: 50%; padding: 5px; display: flex; transition: 0.2s;}
        .modal-close:hover { background: var(--border-color); color: var(--text-main); }

        input[type=range] { -webkit-appearance: none; width: 100%; background: transparent; }
        input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; height: 24px; width: 24px; border-radius: 50%; background: var(--bg-card); border: 3px solid var(--azul-01); cursor: pointer; margin-top: -10px; box-shadow: 0 2px 5px rgba(0,0,0,0.2);}
        input[type=range]::-webkit-slider-runnable-track { width: 100%; height: 6px; cursor: pointer; background: var(--border-color); border-radius: 3px; }

        @media (max-width: 900px) {
            .hero-consorcio-content { max-width: 100%; padding: 0 30px; text-align: center;}
            .hero-consorcio-content h1 { font-size: 3rem; }
            .calc-tool-container { grid-template-columns: 1fr !important; }
        }
        @media (max-width: 768px) {
            .orbit-system { display: none; }
            .hero-content { max-width: 100%; }
        }

        /* =========================================
           NOVOS ESTILOS - SEÇÃO AGRO
           ========================================= */
        .agro-grid-top { display: grid; grid-template-columns: 2fr 1fr; gap: 20px; margin-bottom: 20px; }
        @media (max-width: 900px) { .agro-grid-top { grid-template-columns: 1fr; } }
        
        .agro-card-premium { position: relative; border-radius: 24px; overflow: hidden; padding: 40px; display: flex; flex-direction: column; justify-content: flex-end; min-height: 350px; color: white; border: 1px solid rgba(255,255,255,0.1); }
        .agro-card-premium img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; }
        .agro-card-premium .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to right, rgba(0, 3, 32, 0.9) 0%, rgba(0, 3, 32, 0.4) 100%); z-index: 2; }
        .agro-card-premium .content { position: relative; z-index: 3; max-width: 80%; }
        
        .agro-card-fiagro { background: var(--bg-card); border-radius: 24px; padding: 40px; border: 1px solid var(--border-color); display: flex; flex-direction: column; justify-content: center; }
        .agro-card-commodities { background: linear-gradient(135deg, var(--azul-04), #000108); border-radius: 24px; padding: 40px; display: flex; justify-content: space-between; align-items: center; color: white; margin-bottom: 60px; border: 1px solid rgba(255,255,255,0.05); flex-wrap: wrap; gap: 20px;}
        
        .agro-calc-container { display: grid; grid-template-columns: 1fr 1.5fr; gap: 30px; background: var(--azul-04); padding: 40px; border-radius: 24px; border: 1px solid var(--azul-03); margin-bottom: 60px;}
        .agro-calc-input-box { background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.05); padding: 30px; border-radius: 16px; color: white; }
        .agro-calc-result-box { display: flex; gap: 20px; height: 100%; }
        .agro-calc-result-item { flex: 1; border-radius: 16px; padding: 30px; display: flex; flex-direction: column; position: relative; overflow: hidden; }
        .agro-calc-result-cdb { background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1); }
        .agro-calc-result-lca { background: rgba(0, 134, 255, 0.1); border: 1px solid rgba(0, 134, 255, 0.3); }
        
        .agro-mini-ticker { background: rgba(255,255,255,0.1); padding: 10px 15px; border-radius: 8px; font-size: 0.85rem; font-weight: 700; display: flex; flex-direction: column; align-items: flex-start; border: 1px solid rgba(255,255,255,0.1); }
        .agro-mini-ticker span { font-size: 0.7rem; color: #CDCDCD; font-weight: 600; text-transform: uppercase; margin-bottom: 4px; }
        
        @media (max-width: 900px) {
            .agro-calc-container { grid-template-columns: 1fr; }
            .agro-calc-result-box { flex-direction: column; }
        }

        /* Estilos adicionais para as novas seções */
        .benefits-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; margin-bottom: 40px; }
        .benefit-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 25px; display: flex; gap: 20px; align-items: center; transition: 0.3s; cursor: pointer; }
        .benefit-card:hover { border-color: var(--azul-01); transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.05); }
        .benefit-icon { width: 60px; height: 60px; background: rgba(0, 134, 255, 0.1); border-radius: 10px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
        .benefit-icon .material-symbols-outlined { color: var(--azul-01); font-size: 32px; }
        .benefit-card h4 { font-size: 1.1rem; color: var(--text-main); margin-bottom: 5px; font-weight: 700; }
        .benefit-card p { font-size: 0.9rem; color: var(--text-muted); line-height: 1.5; }

        .article-card { display: flex; flex-direction: column; border-radius: 12px; overflow: hidden; border: 1px solid var(--border-color); background: var(--bg-card); }
        .article-img { width: 100%; height: 180px; object-fit: cover; }
        .article-body { padding: 20px; display: flex; flex-direction: column; flex-grow: 1; }
        .article-card h4 { font-size: 1.1rem; color: var(--text-main); margin-bottom: 10px; font-weight: 700; }
        .article-card p { font-size: 0.9rem; color: var(--text-muted); line-height: 1.5; margin-bottom: 20px; flex-grow: 1; }


        .section-kicker { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 20px; background: rgba(0, 134, 255, 0.1); color: var(--azul-01); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 1px; font-weight: 800; margin-bottom: 16px; }
        .fin-hero-metric { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.12); border-radius: 14px; padding: 18px; min-width: 145px; backdrop-filter: blur(12px); }
        .fin-hero-metric h4 { color: white; font-size: 1.45rem; margin-bottom: 4px; }
        .fin-hero-metric span { color: #CDCDCD; font-size: 0.72rem; text-transform: uppercase; letter-spacing: 1px; font-weight: 800; }
        .fin-result-card { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; padding: 28px; min-height: 145px; }
        .fin-result-card strong { display: block; font-size: 0.75rem; color: #9B9B9B; font-weight: 800; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 8px; }
        .fin-result-card div { font-size: 2rem; color: white; font-weight: 800; }
        .fin-path { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-bottom: 45px; }
        .fin-doc-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin-bottom: 45px; }
        .fin-doc-item { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 24px; display: flex; gap: 18px; align-items: center; }
        .fin-doc-num { color: rgba(0,134,255,0.22); font-size: 2rem; font-weight: 800; }
        @media (max-width: 1100px) { .fin-path, .fin-doc-grid { grid-template-columns: 1fr 1fr !important; } }
        @media (max-width: 760px) { .fin-path, .fin-doc-grid { grid-template-columns: 1fr !important; } }

        .fin-solutions-section { margin: 70px 0 55px; font-family: 'Manrope', sans-serif; }
        .fin-solutions-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 30px; margin-bottom: 38px; }
        .fin-solutions-title { font-size: clamp(2.4rem, 5vw, 4rem); line-height: 0.98; font-weight: 800; color: var(--text-main); letter-spacing: 0; }
        .fin-solutions-title span { color: var(--azul-01); }
        .fin-solutions-link { display: inline-flex; align-items: center; gap: 8px; color: var(--azul-01); font-weight: 800; font-size: 0.95rem; text-decoration: none; margin-top: 18px; white-space: nowrap; }
        .fin-solutions-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 22px; }
        .fin-solution-card { position: relative; min-height: 560px; border-radius: 28px; overflow: hidden; border: 1px solid rgba(255,255,255,0.08); cursor: pointer; background: linear-gradient(135deg, var(--azul-04), var(--azul-03)); box-shadow: 0 18px 38px rgba(0,0,0,0.16); transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; }
        .fin-solution-card:hover { transform: translateY(-8px); box-shadow: 0 28px 55px rgba(0, 20, 40, 0.28); border-color: rgba(0,134,255,0.55); }
        .fin-solution-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
        .fin-solution-card:hover img { transform: scale(1.06); }
        .fin-solution-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(0, 17, 56, 0.62), rgba(0, 3, 32, 0.82)), linear-gradient(to top, rgba(0, 134, 255, 0.22) 0%, transparent 58%); z-index: 1; }
        .fin-solution-content { position: relative; z-index: 2; height: 100%; min-height: 560px; padding: 40px; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; color: white; }
        .fin-solution-icon { width: 58px; height: 58px; border-radius: 50%; background: rgba(0,0,0,0.42); border: 1px solid rgba(255,255,255,0.28); display: flex; align-items: center; justify-content: center; margin-bottom: 34px; box-shadow: 0 12px 28px rgba(0,0,0,0.25); }
        .fin-solution-icon .material-symbols-outlined { color: var(--azul-01); font-size: 28px; }
        .fin-solution-card h3 { color: white; font-size: clamp(1.45rem, 2vw, 2rem); line-height: 1.22; font-weight: 800; margin: 0; }
        .fin-solution-modal { display: none; position: fixed; inset: 0; z-index: 100000; background: rgba(0,0,0,0.52); backdrop-filter: blur(5px); align-items: center; justify-content: center; padding: 28px; opacity: 0; transition: opacity 0.25s ease; }
        .fin-solution-modal.active { display: flex; opacity: 1; }
        body.fin-modal-open .main-content { overflow: hidden; }
        .fin-solution-box { width: min(640px, 94vw); max-height: 90vh; overflow-y: auto; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 32px; box-shadow: 0 30px 80px rgba(0,0,0,0.34); position: relative; }
        .fin-solution-box::-webkit-scrollbar { width: 6px; }
        .fin-solution-box::-webkit-scrollbar-thumb { background: var(--text-muted); border-radius: 10px; }
        .fin-modal-close { position: absolute; top: 20px; right: 20px; border: none; background: transparent; color: var(--text-muted); cursor: pointer; display: flex; align-items: center; justify-content: center; }
        .fin-modal-head { display: flex; gap: 20px; align-items: center; margin-bottom: 28px; padding-right: 28px; }
        .fin-modal-icon { width: 70px; height: 70px; border-radius: 18px; background: linear-gradient(135deg, var(--azul-04), #102c2b); display: flex; align-items: center; justify-content: center; border: 1px solid rgba(0,134,255,0.24); box-shadow: 0 14px 28px rgba(0,0,0,0.22); flex-shrink: 0; }
        .fin-modal-icon .material-symbols-outlined { color: var(--azul-01); font-size: 36px; }
        .fin-modal-head h3 { color: var(--text-main); font-size: 2.15rem; line-height: 1.08; font-weight: 800; margin: 0 0 8px; }
        .fin-modal-head p { color: var(--text-muted); font-size: 1rem; margin: 0; }
        .fin-modal-img { width: 100%; height: 240px; object-fit: cover; border-radius: 16px; margin-bottom: 20px; filter: saturate(0.95); }
        .fin-modal-info { background: rgba(0,134,255,0.035); border: 1px solid var(--border-color); border-radius: 16px; padding: 24px; margin-bottom: 22px; }
        .fin-modal-label { display: flex; align-items: center; gap: 8px; color: var(--azul-01); font-size: 0.76rem; font-weight: 800; letter-spacing: 1.6px; text-transform: uppercase; margin-bottom: 12px; }
        .fin-modal-info p { color: var(--text-main); font-size: 1rem; line-height: 1.7; margin: 0; }
        .fin-modal-benefits-title { display: flex; align-items: center; gap: 8px; color: var(--text-main); font-size: 0.82rem; font-weight: 800; letter-spacing: 1.6px; text-transform: uppercase; margin-bottom: 14px; }
        .fin-modal-benefits { display: grid; gap: 10px; margin-bottom: 24px; }
        .fin-modal-benefit { border: 1px solid var(--border-color); border-radius: 12px; padding: 16px 18px; color: var(--text-main); display: flex; gap: 12px; align-items: center; background: var(--bg-card); }
        .fin-modal-benefit::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--azul-01); flex-shrink: 0; }
        .fin-modal-cta { width: 100%; border: none; border-radius: 16px; background: var(--azul-01); color: white; font-weight: 800; letter-spacing: 1.8px; text-transform: uppercase; padding: 18px 24px; cursor: pointer; box-shadow: 0 12px 26px rgba(0,0,0,0.16); display: flex; align-items: center; justify-content: center; gap: 12px; }
        @media (max-width: 1180px) { .fin-solutions-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .fin-solution-card, .fin-solution-content { min-height: 420px; } }
        @media (max-width: 720px) { .fin-solutions-head { flex-direction: column; } .fin-solutions-grid { grid-template-columns: 1fr; } .fin-solution-card, .fin-solution-content { min-height: 360px; } .fin-solution-content { padding: 30px; } .fin-solution-box { padding: 24px; } .fin-modal-head h3 { font-size: 1.7rem; } }

        /* =========================================
           INTERNACIONAL SECTION
           ========================================= */
        .intl-market-board { display: grid; grid-template-columns: repeat(auto-fill, minmax(155px, 1fr)); gap: 16px; margin-bottom: 50px; }
        .intl-exchange-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 20px 14px; text-align: center; transition: 0.3s; }
        .intl-exchange-card:hover { border-color: var(--azul-01); box-shadow: 0 8px 24px rgba(0,134,255,0.1); transform: translateY(-2px); }
        .intl-exchange-flag { font-size: 2rem; margin-bottom: 6px; }
        .intl-exchange-name { font-weight: 700; font-size: 0.85rem; color: var(--text-main); }
        .intl-exchange-city { font-size: 0.7rem; color: var(--text-muted); margin-bottom: 10px; }
        .intl-status-row { display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 0.75rem; font-weight: 700; }
        .intl-status-dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; flex-shrink: 0; }
        .intl-status-dot.open { background: #4CAF50; box-shadow: 0 0 8px rgba(76,175,80,0.6); animation: intl-pulse 2s infinite; }
        .intl-status-dot.closed { background: #F44336; }
        @keyframes intl-pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } }
        .intl-exchange-time { font-size: 0.65rem; color: var(--text-muted); margin-top: 6px; font-variant-numeric: tabular-nums; }

        .intl-segment-card { padding: 30px; position: relative; overflow: hidden; }
        .intl-segment-card .material-symbols-outlined { font-size: 40px; color: var(--azul-01); margin-bottom: 15px; display: block; }
        .intl-segment-card h3 { font-size: 1.1rem; margin-bottom: 8px; }
        .intl-segment-card p { font-size: 0.85rem; color: var(--text-muted); margin-bottom: 0; line-height: 1.5; }
        .intl-segment-badge { position: absolute; top: 16px; right: 16px; background: var(--azul-01); color: white; font-size: 0.6rem; font-weight: 800; padding: 4px 12px; border-radius: 20px; letter-spacing: 0.5px; }

        .intl-currency-panel { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 24px 30px; margin-bottom: 50px; }
        .intl-currency-row { display: flex; align-items: center; justify-content: space-between; padding: 14px 0; border-bottom: 1px solid var(--border-color); }
        .intl-currency-row:last-child { border-bottom: none; }
        .intl-currency-pair { display: flex; align-items: center; gap: 10px; font-weight: 700; font-size: 0.9rem; color: var(--text-main); }
        .intl-currency-pair .flag { font-size: 1.3rem; }
        .intl-currency-rate { font-weight: 700; font-size: 1rem; color: var(--text-main); font-variant-numeric: tabular-nums; }
        .intl-currency-change { font-size: 0.85rem; font-weight: 700; min-width: 75px; text-align: right; }
        .intl-currency-change.pos { color: #4CAF50; }
        .intl-currency-change.neg { color: #F44336; }

        .intl-cta { text-align: center; background: linear-gradient(135deg, var(--azul-02), var(--azul-08)); border-radius: 24px; padding: 60px 40px; margin-top: 20px; }
        .intl-cta h2 { color: white; font-size: 2rem; margin-bottom: 16px; }
        .intl-cta p { color: rgba(255,255,255,0.7); max-width: 600px; margin: 0 auto 30px; font-size: 1rem; }
        .intl-cta .btn-account { background: white; color: var(--azul-02); }
        .intl-cta .btn-account:hover { background: rgba(255,255,255,0.9); }

        .intl-hero-ticker { margin: 20px auto 40px; max-width: calc(100% - 40px); position: relative; z-index: 5; border-radius: 12px; overflow: hidden; box-shadow: 0 8px 32px rgba(0,0,0,0.15); }

        @media (max-width: 768px) {
            .intl-market-board { grid-template-columns: repeat(2, 1fr); }
            .intl-cta { padding: 40px 24px; }
            .intl-cta h2 { font-size: 1.5rem; }
            .intl-hero-ticker { max-width: calc(100% - 20px); }
        }
        @media (max-width: 480px) { .intl-market-board { grid-template-columns: 1fr; } }

        /* =========================================
           CRIPTO SECTION — TECH EFFECTS
           ========================================= */
        .crypto-grid-bg { background-image: linear-gradient(rgba(0,134,255,0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(0,134,255,0.03) 1px, transparent 1px); background-size: 40px 40px; }
        .crypto-neon { color: var(--azul-01); text-shadow: 0 0 20px rgba(0,134,255,0.3), 0 0 40px rgba(0,134,255,0.1); }
        .crypto-glow-border { border: 1px solid rgba(0,134,255,0.2); box-shadow: 0 0 15px rgba(0,134,255,0.05), inset 0 0 15px rgba(0,134,255,0.02); }

        .crypto-hero-stats { display: flex; gap: 20px; margin-top: 24px; flex-wrap: wrap; justify-content: center; }
        .crypto-hero-stat { text-align: center; padding: 16px 24px; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); border-radius: 16px; min-width: 120px; backdrop-filter: blur(8px); }
        .crypto-hero-stat .num { font-size: 1.4rem; font-weight: 800; color: white; display: block; font-variant-numeric: tabular-nums; }
        .crypto-hero-stat .lbl { font-size: 0.6rem; color: rgba(255,255,255,0.6); text-transform: uppercase; letter-spacing: 1px; font-weight: 700; margin-top: 2px; }

        .crypto-section-label { display: inline-flex; align-items: center; gap: 6px; background: rgba(0,134,255,0.1); border: 1px solid rgba(0,134,255,0.2); padding: 6px 14px; border-radius: 20px; font-size: 0.7rem; font-weight: 800; color: var(--azul-01); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 16px; }

        .crypto-stats-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 16px; margin-bottom: 50px; }
        .crypto-stat-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 20px; padding: 24px; text-align: center; transition: 0.3s; }
        .crypto-stat-card:hover { border-color: var(--azul-01); transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,134,255,0.1); }
        .crypto-stat-card .val { font-size: 1.6rem; font-weight: 800; color: var(--text-main); line-height: 1.1; }
        .crypto-stat-card .val .highlight { color: var(--azul-01); }
        .crypto-stat-card .lbl { font-size: 0.7rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.5px; font-weight: 600; margin-top: 6px; }

        .crypto-deep-dive { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-bottom: 50px; }
        @media (max-width: 800px) { .crypto-deep-dive { grid-template-columns: 1fr; } }
        .crypto-deep-content { display: flex; flex-direction: column; justify-content: center; }
        .crypto-deep-content .btc-big { font-size: 3rem; font-weight: 800; color: var(--azul-01); letter-spacing: -2px; line-height: 1; }
        .crypto-deep-content .btc-sub { font-size: 0.8rem; color: var(--text-muted); margin-bottom: 20px; }
        .crypto-deep-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
        .crypto-deep-item { background: rgba(0,134,255,0.03); border: 1px solid rgba(0,134,255,0.08); border-radius: 14px; padding: 16px; transition: 0.3s; }
        .crypto-deep-item:hover { background: rgba(0,134,255,0.06); border-color: rgba(0,134,255,0.2); }
        .crypto-deep-item .icon { color: var(--azul-01); font-size: 24px; margin-bottom: 6px; }
        .crypto-deep-item h4 { font-size: 0.85rem; margin-bottom: 4px; }
        .crypto-deep-item p { font-size: 0.75rem; color: var(--text-muted); margin: 0; line-height: 1.4; }

        .crypto-halving { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; margin-bottom: 50px; }
        .crypto-halving-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; margin-top: 20px; }
        .crypto-halving-card { border: 1px solid var(--border-color); border-radius: 16px; padding: 20px; transition: 0.3s; position: relative; }
        .crypto-halving-card:hover { border-color: var(--azul-01); }
        .crypto-halving-card .year { font-size: 0.7rem; font-weight: 700; color: var(--azul-01); text-transform: uppercase; letter-spacing: 1px; }
        .crypto-halving-card .reward { font-size: 1.2rem; font-weight: 800; color: var(--text-main); margin: 4px 0; }
        .crypto-halving-card .detail { font-size: 0.75rem; color: var(--text-muted); }
        .crypto-halving-card .change { font-size: 0.8rem; font-weight: 700; margin-top: 6px; }
        .crypto-halving-card .change.pos { color: #4CAF50; }
        .crypto-halving-card .current { position: absolute; top: -8px; right: 16px; background: var(--azul-01); color: white; font-size: 0.55rem; font-weight: 800; padding: 2px 10px; border-radius: 10px; }

        .crypto-custody { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-bottom: 50px; }
        @media (max-width: 700px) { .crypto-custody { grid-template-columns: 1fr; } }
        .crypto-custody-card { border-radius: 20px; padding: 28px; transition: 0.3s; }
        .crypto-custody-card.hot { background: rgba(255,152,0,0.05); border: 1px solid rgba(255,152,0,0.2); }
        .crypto-custody-card.cold { background: rgba(0,134,255,0.05); border: 1px solid rgba(0,134,255,0.2); }
        .crypto-custody-card:hover { transform: translateY(-3px); }
        .crypto-custody-card h4 { display: flex; align-items: center; gap: 8px; font-size: 1rem; margin-bottom: 6px; }
        .crypto-custody-card .sub { font-size: 0.78rem; color: var(--text-muted); margin-bottom: 14px; }
        .crypto-custody-card ul { list-style: none; padding: 0; }
        .crypto-custody-card li { padding: 6px 0; font-size: 0.82rem; color: var(--text-muted); display: flex; align-items: center; gap: 8px; }
        .crypto-custody-card li .material-symbols-outlined { font-size: 18px; }
        .crypto-custody-card li .check { color: #4CAF50; }
        .crypto-custody-card li .warn { color: #F44336; }

        .crypto-etf-table { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; margin-bottom: 50px; overflow-x: auto; }
        .crypto-etf-table table { width: 100%; border-collapse: collapse; }
        .crypto-etf-table th { text-align: left; padding: 14px 12px; font-size: 0.7rem; color: var(--text-muted); font-weight: 800; letter-spacing: 1px; text-transform: uppercase; border-bottom: 1px solid var(--border-color); }
        .crypto-etf-table td { padding: 14px 12px; border-bottom: 1px solid var(--border-color); font-size: 0.85rem; color: var(--text-main); font-weight: 600; }
        .crypto-etf-table tr:last-child td { border-bottom: none; }
        .crypto-etf-table .ticker-tag { background: rgba(0,134,255,0.1); color: var(--azul-01); font-size: 0.7rem; font-weight: 800; padding: 2px 8px; border-radius: 6px; letter-spacing: 0.5px; }
        .crypto-etf-table .flag-icon { font-size: 1.2rem; margin-right: 6px; }

        .crypto-timeline { position: relative; margin-bottom: 50px; padding: 20px 0; }
        .crypto-timeline::before { content: ''; position: absolute; left: 50%; top: 0; bottom: 0; width: 2px; background: linear-gradient(to bottom, var(--azul-01), transparent); transform: translateX(-50%); }
        @media (max-width: 600px) { .crypto-timeline::before { left: 20px; } }
        .crypto-tl-item { display: flex; align-items: center; margin-bottom: 24px; position: relative; }
        .crypto-tl-item .year-badge { position: absolute; left: 50%; transform: translateX(-50%); background: var(--azul-01); color: white; font-size: 0.65rem; font-weight: 800; padding: 4px 12px; border-radius: 12px; z-index: 2; white-space: nowrap; }
        @media (max-width: 600px) { .crypto-tl-item .year-badge { left: 20px; transform: translateX(-50%); } }
        .crypto-tl-content { width: 45%; margin-left: auto; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 16px 20px; transition: 0.3s; }
        .crypto-tl-content:hover { border-color: var(--azul-01); }
        .crypto-tl-content h4 { font-size: 0.9rem; margin-bottom: 4px; }
        .crypto-tl-content p { font-size: 0.75rem; color: var(--text-muted); margin: 0; }
        .crypto-tl-item:nth-child(odd) .crypto-tl-content { margin-left: 0; margin-right: auto; }
        @media (max-width: 600px) { .crypto-tl-content, .crypto-tl-item:nth-child(odd) .crypto-tl-content { width: calc(100% - 50px); margin-left: 50px; margin-right: 0; } }

        .crypto-glossario { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; margin-bottom: 50px; }
        .crypto-gloss-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 20px; transition: 0.3s; cursor: default; }
        .crypto-gloss-card:hover { border-color: var(--azul-01); transform: translateY(-2px); box-shadow: 0 4px 16px rgba(0,134,255,0.06); }
        .crypto-gloss-card .term { font-size: 0.85rem; font-weight: 800; color: var(--azul-01); margin-bottom: 6px; display: flex; align-items: center; gap: 6px; }
        .crypto-gloss-card .def { font-size: 0.78rem; color: var(--text-muted); line-height: 1.5; margin: 0; }

        .crypto-faq { margin-bottom: 50px; }
        .crypto-faq-item { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 20px 24px; margin-bottom: 10px; cursor: pointer; transition: 0.3s; }
        .crypto-faq-item:hover { border-color: var(--azul-01); }
        .crypto-faq-q { display: flex; justify-content: space-between; align-items: center; font-weight: 700; font-size: 0.9rem; color: var(--text-main); }
        .crypto-faq-q .material-symbols-outlined { transition: 0.3s; color: var(--text-muted); }
        .crypto-faq-item.open .crypto-faq-q .material-symbols-outlined { transform: rotate(180deg); color: var(--azul-01); }
        .crypto-faq-a { display: none; margin-top: 12px; font-size: 0.82rem; color: var(--text-muted); line-height: 1.6; padding-right: 20px; }
        .crypto-faq-item.open .crypto-faq-a { display: block; }
        .crypto-faq-item.open { border-color: var(--azul-01); }

        .crypto-pulse { animation: cryptoPulse 2s ease-in-out infinite; }
        @keyframes cryptoPulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }

        /* =========================================
           SEGUROS SECTION — PRODUCTS & SIMULATOR
           ========================================= */
        .seg-hero-rotator { display: inline-block; min-width: 200px; text-align: left; }
        .seg-hero-rotator .rotating-text { color: #60B0FF; font-weight: 800; transition: opacity 0.5s; }

        .seg-orbit { position: absolute; right: 8%; top: 50%; transform: translateY(-50%); width: 340px; height: 340px; }
        @media (max-width: 900px) { .seg-orbit { transform: translateY(-50%) scale(0.65); right: 0; } }
        @media (max-width: 700px) { .seg-orbit { display: none; } }
        .seg-orbit-ring { position: absolute; top: 10px; left: 10px; width: 320px; height: 320px; border: 1px solid rgba(0,134,255,0.2); border-radius: 50%; }
        .seg-orbit-ring:nth-child(2) { top: 60px; left: 60px; width: 220px; height: 220px; border-style: dashed; border-color: rgba(0,134,255,0.15); }

        .seg-orbit-item { position: absolute; display: flex; flex-direction: column; align-items: center; width: 60px; text-align: center; }
        .seg-orbit-item .icon-circle { width: 44px; height: 44px; background: var(--azul-04); border: 1px solid rgba(0,134,255,0.3); border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 16px rgba(0,134,255,0.1); animation: segIconSpin 6s linear infinite; }
        .seg-orbit-item .icon-circle .material-symbols-outlined { font-size: 20px; color: var(--azul-01); }
        .seg-orbit-item .seg-orbit-label { font-size: 0.55rem; font-weight: 700; color: white; margin-top: 4px; white-space: nowrap; text-shadow: 0 1px 6px rgba(0,0,0,0.8); letter-spacing: 0.3px; }
        @keyframes segIconSpin { to { transform: rotate(360deg); } }

        .seg-orbit-item.i1 { top: 0; left: 50%; margin-left: -30px; }
        .seg-orbit-item.i2 { bottom: 0; left: 50%; margin-left: -30px; }
        .seg-orbit-item.i3 { top: 50%; left: 0; margin-top: -30px; }
        .seg-orbit-item.i4 { top: 50%; right: 0; margin-top: -30px; }

        .seg-orbit-item.i5 { top: 50px; left: 50px; }
        .seg-orbit-item.i6 { bottom: 50px; left: 50px; }
        .seg-orbit-item.i7 { top: 50px; right: 50px; }
        .seg-orbit-item.i8 { bottom: 50px; right: 50px; }

        .seg-orbit-item.i5 .icon-circle, .seg-orbit-item.i6 .icon-circle,
        .seg-orbit-item.i7 .icon-circle, .seg-orbit-item.i8 .icon-circle { width: 36px; height: 36px; animation-duration: 4s; }
        .seg-orbit-item.i5 .icon-circle .material-symbols-outlined,
        .seg-orbit-item.i6 .icon-circle .material-symbols-outlined,
        .seg-orbit-item.i7 .icon-circle .material-symbols-outlined,
        .seg-orbit-item.i8 .icon-circle .material-symbols-outlined { font-size: 16px; }

        .seg-orbit-center { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 80px; height: 80px; background: linear-gradient(135deg, var(--azul-02), var(--azul-08)); border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 40px rgba(0,134,255,0.3), 0 0 80px rgba(0,134,255,0.1); z-index: 5; border: 2px solid rgba(0,134,255,0.3); }
        .seg-orbit-center .material-symbols-outlined { font-size: 40px; color: white; }

        .seg-products-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; margin-bottom: 50px; }
        .seg-product-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 20px; padding: 24px; transition: 0.3s; cursor: default; position: relative; overflow: hidden; }
        .seg-product-card:hover { border-color: var(--azul-01); transform: translateY(-4px); box-shadow: 0 12px 28px rgba(0,134,255,0.08); }
        .seg-product-card .icon-wrap { width: 48px; height: 48px; border-radius: 14px; background: rgba(0,134,255,0.08); display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }
        .seg-product-card .icon-wrap .material-symbols-outlined { font-size: 26px; color: var(--azul-01); }
        .seg-product-card h4 { font-size: 0.95rem; margin-bottom: 6px; }
        .seg-product-card p { font-size: 0.78rem; color: var(--text-muted); margin: 0; line-height: 1.5; }
        .seg-product-card .tag { position: absolute; top: 14px; right: 14px; background: rgba(0,134,255,0.08); color: var(--azul-01); font-size: 0.55rem; font-weight: 800; padding: 2px 10px; border-radius: 10px; text-transform: uppercase; letter-spacing: 0.5px; }

        /* ===== EDUCACIONAL ===== */
        .edu-hero { border-radius: 24px; min-height: 360px; display: flex; align-items: center; gap: 48px; padding: 0 56px; position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,0.06); }
        .edu-hero .bg-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
        .edu-hero .bg-overlay { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(5,10,30,0.92) 0%, rgba(5,10,30,0.7) 50%, rgba(0,40,80,0.55) 100%); }
        .edu-hero .left { flex: 1; position: relative; z-index: 2; }
        .edu-hero .left .tagline { color: var(--azul-02); font-weight: 700; text-transform: uppercase; letter-spacing: 2px; font-size: 0.8rem; margin-bottom: 10px; }
        .edu-hero .left h1 { font-size: 2.8rem; color: white; margin-bottom: 14px; line-height: 1.15; }
        .edu-hero .left p { color: rgba(255,255,255,0.65); max-width: 520px; font-size: 1rem; line-height: 1.6; margin-bottom: 20px; }
        .edu-hero .left .btn-account { display: inline-flex; padding: 12px 32px; font-size: 0.9rem; }
        .edu-hero .right { position: relative; z-index: 2; flex-shrink: 0; display: flex; flex-direction: column; gap: 12px; }
        .edu-hero .stat-card { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; padding: 16px 24px; min-width: 160px; backdrop-filter: blur(10px); display: flex; align-items: center; gap: 14px; }
        .edu-hero .stat-card .stat-icon { font-size: 28px; color: var(--azul-02); }
        .edu-hero .stat-card .stat-text { display: flex; flex-direction: column; }
        .edu-hero .stat-card .num { font-size: 1.6rem; font-weight: 800; color: white; line-height: 1.1; }
        .edu-hero .stat-card .label { font-size: 0.7rem; color: rgba(255,255,255,0.45); text-transform: uppercase; letter-spacing: 0.5px; }
        @media (max-width: 700px) { .edu-hero { flex-direction: column; text-align: center; padding: 40px 24px; gap: 24px; } .edu-hero .left p { max-width: 100%; } .edu-hero .right { flex-direction: row; flex-wrap: wrap; justify-content: center; } .edu-hero .stat-card { min-width: 130px; } }

        .edu-section-title { font-size: 1.4rem; font-weight: 800; color: var(--text-primary); margin: 48px 0 20px; display: flex; align-items: center; gap: 10px; }
        .edu-section-title .material-symbols-outlined { color: var(--azul-01); }

        /* Premium course cards — thinner, darker, hover-reveal */
        .curso-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 16px; margin: 24px 0 40px; }
        .curso-card { position: relative; border-radius: 14px; overflow: hidden; cursor: pointer; background: #0d0d0d; border: 1px solid rgba(255,255,255,0.06); transition: transform 0.4s ease, border-color 0.4s ease, background-color 0.4s ease, color 0.4s ease, opacity 0.4s ease, box-shadow 0.4s ease; display: flex; flex-direction: column; }
        .curso-card:hover { border-color: var(--azul-01); box-shadow: 0 16px 32px rgba(0,134,255,0.12); }
        .curso-card .thumb-wrap { position: relative; height: 140px; overflow: hidden; }
        .curso-card .thumb-wrap img { width: 100%; height: 100%; object-fit: cover; }
        .curso-card .thumb-wrap .badge { position: absolute; top: 10px; left: 10px; background: rgba(0,0,0,0.7); color: white; font-size: 0.65rem; font-weight: 700; padding: 4px 12px; border-radius: 20px; text-transform: uppercase; letter-spacing: 0.5px; backdrop-filter: blur(4px); border: 1px solid rgba(255,255,255,0.1); }
        .curso-card .body { padding: 14px 16px 8px; display: flex; flex-direction: column; }
        .curso-card .body h3 { font-size: 0.95rem; font-weight: 700; margin-bottom: 4px; color: #eee; line-height: 1.3; }
        .curso-card .body p { font-size: 0.78rem; color: rgba(255,255,255,0.5); line-height: 1.45; margin: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
        .curso-card .footer { display: flex; align-items: center; gap: 10px; padding: 6px 16px 14px; }
        .curso-card .footer .hours { font-size: 0.7rem; color: rgba(255,255,255,0.35); display: flex; align-items: center; gap: 3px; }
        .curso-card .footer .cert-badge { font-size: 0.55rem; color: var(--azul-02); background: rgba(0,134,255,0.1); padding: 2px 8px; border-radius: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.3px; border: 1px solid rgba(255,255,255,0.15); }

        /* Search + Filter bar */
        .edu-toolbar { display: flex; align-items: center; gap: 16px; margin: 20px 0 24px; flex-wrap: wrap; }
        .edu-toolbar .edu-search { flex: 1; min-width: 200px; display: flex; align-items: center; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 0 14px; transition: 0.2s; }
        .edu-toolbar .edu-search:focus-within { border-color: var(--azul-01); }
        .edu-toolbar .edu-search .material-symbols-outlined { font-size: 20px; color: var(--text-muted); }
        .edu-toolbar .edu-search input { background: none; border: none; outline: none; color: var(--text-primary); padding: 10px 10px; font-size: 0.85rem; width: 100%; font-family: inherit; }
        .edu-toolbar .edu-search input::placeholder { color: var(--text-muted); }
        .edu-toolbar .filter-pills { display: flex; gap: 6px; flex-wrap: wrap; }
        .edu-toolbar .filter-pill { padding: 6px 16px; border-radius: 20px; border: 1px solid var(--border-color); background: transparent; color: var(--text-muted); font-size: 0.78rem; font-weight: 600; cursor: pointer; transition: 0.2s; font-family: inherit; }
        .edu-toolbar .filter-pill:hover { border-color: var(--azul-01); color: var(--azul-01); }
        .edu-toolbar .filter-pill.active { background: var(--azul-01); border-color: var(--azul-01); color: white; }

        /* ===== VÍDEOS ===== */
        .videos-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; margin: 20px 0 40px; }
        .video-card { border-radius: 12px; overflow: hidden; cursor: pointer; background: #0d0d0d; border: 1px solid rgba(255,255,255,0.06); transition: transform 0.3s, border-color 0.3s, background-color 0.3s, color 0.3s, opacity 0.3s, box-shadow 0.3s; }
        .video-card:hover { border-color: var(--azul-01); box-shadow: 0 8px 20px rgba(0,134,255,0.1); }
        .video-card .thumb-wrap { position: relative; aspect-ratio: 16/9; overflow: hidden; background: #0d0d0d; }
        .video-card .thumb-wrap img { width: 100%; height: 100%; object-fit: cover; }
        .video-card .thumb-wrap .duration { position: absolute; bottom: 6px; right: 6px; background: rgba(0,0,0,0.85); color: white; font-size: 0.65rem; padding: 1px 7px; border-radius: 5px; z-index: 2; }
        .video-card .thumb-wrap .play-overlay { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,0.15); opacity: 0; transition: 0.25s; z-index: 2; }
        .video-card:hover .thumb-wrap .play-overlay { opacity: 1; }
        .video-card .thumb-wrap .play-overlay .material-symbols-outlined { font-size: 40px; color: white; text-shadow: 0 2px 10px rgba(0,0,0,0.5); }
        .video-card .info { padding: 8px 12px 12px; }
        .video-card .info .cat { font-size: 0.55rem; font-weight: 700; color: var(--azul-01); text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 2px; }
        .video-card .info h3 { font-size: 0.75rem; font-weight: 700; color: #eee; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

        /* Bottom persistent player bar */
        .edu-player-bar { position: fixed; bottom: 0; left: var(--sidebar-w,280px); right: 0; z-index: 10000; background: rgba(10,14,23,0.97); backdrop-filter: blur(16px); border-top: 1px solid rgba(255,255,255,0.06); display: none; align-items: center; padding: 8px 20px; gap: 14px; transition: 0.3s; }
        .edu-player-bar.active { display: flex; }
        .edu-player-bar .p-thumb { width: 56px; height: 32px; border-radius: 6px; overflow: hidden; flex-shrink: 0; cursor: pointer; }
        .edu-player-bar .p-thumb img { width: 100%; height: 100%; object-fit: cover; }
        .edu-player-bar .p-info { flex: 1; min-width: 0; cursor: pointer; }
        .edu-player-bar .p-info .p-title { font-size: 0.8rem; font-weight: 600; color: white; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
        .edu-player-bar .p-info .p-cat { font-size: 0.6rem; color: var(--azul-01); text-transform: uppercase; letter-spacing: 0.5px; }
        .edu-player-bar .p-controls { display: flex; align-items: center; gap: 4px; flex-shrink: 0; }
        .edu-player-bar .p-controls button { background: none; border: none; color: rgba(255,255,255,0.7); cursor: pointer; padding: 6px; border-radius: 6px; display: flex; align-items: center; justify-content: center; transition: 0.15s; }
        .edu-player-bar .p-controls button:hover { background: rgba(255,255,255,0.08); color: white; }
        .edu-player-bar .p-controls button .material-symbols-outlined { font-size: 22px; }
        .edu-player-bar .p-controls .p-play { width: 36px; height: 36px; border-radius: 50%; background: var(--azul-01); color: white; }
        .edu-player-bar .p-controls .p-play:hover { background: var(--azul-02); }
        .edu-player-bar .p-progress { position: absolute; top: -4px; left: 0; right: 0; height: 4px; background: rgba(255,255,255,0.1); cursor: pointer; z-index: 1; }
        .edu-player-bar .p-progress:hover { height: 6px; top: -6px; }
        .edu-player-bar .p-progress .p-progress-fill { height: 100%; background: var(--azul-01); width: 0%; border-radius: 0 2px 2px 0; position: relative; }
        .edu-player-bar .p-progress .p-progress-fill::after { content: ''; position: absolute; right: -5px; top: 50%; transform: translateY(-50%); width: 10px; height: 10px; border-radius: 50%; background: var(--azul-01); opacity: 0; transition: opacity 0.2s; }
        .edu-player-bar .p-progress:hover .p-progress-fill::after { opacity: 1; }
        .edu-player-bar .p-volume { display: flex; align-items: center; gap: 4px; flex-shrink: 0; }
        .edu-player-bar .p-volume input[type=range] { width: 60px; height: 3px; -webkit-appearance: none; appearance: none; background: rgba(255,255,255,0.15); border-radius: 3px; outline: none; }
        .edu-player-bar .p-volume input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 10px; height: 10px; border-radius: 50%; background: white; cursor: pointer; margin-top: -3.5px; }
        .edu-player-bar .p-volume input[type=range]::-moz-range-thumb { width: 10px; height: 10px; border-radius: 50%; background: white; cursor: pointer; border: none; }
        .edu-player-bar .p-volume input[type=range]::-moz-range-track { height: 3px; background: rgba(255,255,255,0.15); border-radius: 3px; border: none; }
        .edu-player-bar .p-time { font-size: 0.65rem; color: rgba(255,255,255,0.4); flex-shrink: 0; white-space: nowrap; }
        .edu-player-bar .p-actions { display: flex; align-items: center; gap: 2px; flex-shrink: 0; }
        .edu-player-bar .p-actions button { background: none; border: none; color: rgba(255,255,255,0.5); cursor: pointer; padding: 6px; border-radius: 6px; display: flex; align-items: center; justify-content: center; transition: 0.15s; }
        .edu-player-bar .p-actions button:hover { background: rgba(255,255,255,0.08); color: white; }
        .edu-player-bar .p-actions button .material-symbols-outlined { font-size: 20px; }

        /* Mini player (floating) */
        .edu-player-mini { position: fixed; bottom: 72px; right: 20px; z-index: 9999; width: 200px; background: rgba(10,14,23,0.95); backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; overflow: hidden; display: none; cursor: pointer; box-shadow: 0 8px 32px rgba(0,0,0,0.5); }
        .edu-player-mini.active { display: block; }
        .edu-player-mini .mini-thumb { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; }
        .edu-player-mini .mini-bar { display: flex; align-items: center; gap: 8px; padding: 8px 10px; }
        .edu-player-mini .mini-bar .mini-title { font-size: 0.7rem; color: white; flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-weight: 600; }
        .edu-player-mini .mini-bar button { background: none; border: none; color: rgba(255,255,255,0.6); cursor: pointer; padding: 4px; display: flex; }
        .edu-player-mini .mini-bar button:hover { color: white; }
        .edu-player-mini .mini-bar button .material-symbols-outlined { font-size: 18px; }

        /* Video detail page */
        .edu-video-detail { max-width: 960px; margin: 0 auto; }
        .edu-video-detail .back-link { display: inline-flex; align-items: center; gap: 6px; color: var(--azul-01); cursor: pointer; font-size: 0.85rem; font-weight: 600; margin-bottom: 16px; transition: 0.2s; }
        .edu-video-detail .back-link:hover { opacity: 0.7; }
        .edu-video-detail .video-frame { border-radius: 16px; overflow: hidden; margin-bottom: 24px; background: #000; aspect-ratio: 16/9; position: relative; min-height: 240px; }
        .edu-video-detail .video-frame iframe { width: 100%; height: 100%; border: none; }
        .edu-video-detail .video-frame #video-detail-player { width: 100%; height: 100%; background: #000; }
        .edu-video-detail .video-frame #video-detail-player iframe,
        .edu-video-detail .video-frame #video-detail-player .yt-player-host { display: block; width: 100%; height: 100%; border: 0; background: #000; }
        .video-loading-state { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 10px; color: white; background: #000; z-index: 1; }
        .video-loading-state .n-spinner { margin: 0; }
        .edu-video-detail .detail-info h2 { font-size: 1.3rem; margin-bottom: 6px; }
        .edu-video-detail .detail-info .meta { display: flex; gap: 16px; font-size: 0.8rem; color: var(--text-muted); margin-bottom: 16px; }
        .edu-video-detail .detail-info .meta span { display: flex; align-items: center; gap: 4px; }
        .edu-video-detail .detail-info p { font-size: 0.9rem; color: var(--text-muted); line-height: 1.6; }

        /* Toolbar re-use from cursos */
        .edu-videos-toolbar { display: flex; align-items: center; gap: 16px; margin: 20px 0 24px; flex-wrap: wrap; }
        .edu-videos-toolbar .edu-search { flex: 1; min-width: 200px; display: flex; align-items: center; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 0 14px; transition: 0.2s; }
        .edu-videos-toolbar .edu-search:focus-within { border-color: var(--azul-01); }
        .edu-videos-toolbar .edu-search .material-symbols-outlined { font-size: 20px; color: var(--text-muted); }
        .edu-videos-toolbar .edu-search input { background: none; border: none; outline: none; color: var(--text-primary); padding: 10px 10px; font-size: 0.85rem; width: 100%; font-family: inherit; }
        .edu-videos-toolbar .edu-search input::placeholder { color: var(--text-muted); }
        .edu-videos-toolbar .filter-pills { display: flex; gap: 6px; flex-wrap: wrap; }
        .edu-videos-toolbar .filter-pill { padding: 6px 16px; border-radius: 20px; border: 1px solid var(--border-color); background: transparent; color: var(--text-muted); font-size: 0.78rem; font-weight: 600; cursor: pointer; transition: 0.2s; font-family: inherit; }
        .edu-videos-toolbar .filter-pill:hover { border-color: var(--azul-01); color: var(--azul-01); }
        .edu-videos-toolbar .filter-pill.active { background: var(--azul-01); border-color: var(--azul-01); color: white; }

        /* Player bar hidden when sidebar is collapsed — but that's complex, just add min-height to main */
        body.has-video .main-content { padding-bottom: 64px; }
        
        /* Hover reveal overlay */
        .curso-card .hover-reveal { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(5,8,20,0.92); backdrop-filter: blur(6px); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 20px; opacity: 0; transition: opacity 0.3s ease; text-align: center; z-index: 5; }
        .curso-card:hover .hover-reveal { opacity: 1; }
        .curso-card .hover-reveal .price { font-size: 1.3rem; font-weight: 800; color: var(--azul-02); margin-bottom: 2px; }
        .curso-card .hover-reveal .price-small { font-size: 0.7rem; color: rgba(255,255,255,0.5); margin-bottom: 8px; }
        .curso-card .hover-reveal .instructor { font-size: 0.8rem; color: rgba(255,255,255,0.8); margin-bottom: 2px; }
        .curso-card .hover-reveal .instructor-label { font-size: 0.6rem; color: rgba(255,255,255,0.35); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 12px; }
        .curso-card .hover-reveal .btn-account { font-size: 0.75rem; padding: 7px 18px; }

        .edu-course-detail { max-width: 900px; margin: 0 auto; }
        .edu-course-detail .back-link { display: inline-flex; align-items: center; gap: 6px; color: var(--azul-01); cursor: pointer; font-size: 0.85rem; font-weight: 600; margin-bottom: 20px; transition: 0.2s; }
        .edu-course-detail .back-link:hover { opacity: 0.7; }
        .edu-course-detail .detail-hero { border-radius: 20px; overflow: hidden; margin-bottom: 28px; position: relative; min-height: 260px; display: flex; align-items: flex-end; padding: 32px; }
        .edu-course-detail .detail-hero .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to top, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.25) 100%); }
        .edu-course-detail .detail-hero .content { position: relative; z-index: 2; color: white; }
        .edu-course-detail .detail-hero .content h2 { font-size: 1.6rem; margin-bottom: 4px; }
        .edu-course-detail .detail-hero .content .meta { display: flex; gap: 14px; font-size: 0.75rem; color: rgba(255,255,255,0.6); }
        .edu-course-detail .detail-hero .content .meta span { display: flex; align-items: center; gap: 4px; }
        .edu-course-detail .detail-body { display: grid; grid-template-columns: 1fr 260px; gap: 28px; }
        @media (max-width: 700px) { .edu-course-detail .detail-body { grid-template-columns: 1fr; } }
        .edu-course-detail .detail-body .main-col h3 { font-size: 1.05rem; margin-bottom: 10px; margin-top: 20px; }
        .edu-course-detail .detail-body .main-col h3:first-child { margin-top: 0; }
        .edu-course-detail .detail-body .main-col p, .edu-course-detail .detail-body .main-col li { font-size: 0.85rem; color: var(--text-muted); line-height: 1.6; }
        .edu-course-detail .detail-body .main-col ul { padding-left: 18px; }
        .edu-course-detail .detail-body .main-col ul li { margin-bottom: 4px; }
        .edu-course-detail .sidebar-col .purchase-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 24px; position: sticky; top: 90px; text-align: center; }
        .edu-course-detail .sidebar-col .purchase-card .big-price { font-size: 1.6rem; font-weight: 800; color: var(--azul-02); }
        .edu-course-detail .sidebar-col .purchase-card .small-price { font-size: 0.75rem; color: var(--text-muted); margin-bottom: 14px; }
        .edu-course-detail .sidebar-col .purchase-card .benefits { text-align: left; margin: 14px 0; }
        .edu-course-detail .sidebar-col .purchase-card .benefits li { font-size: 0.78rem; color: var(--text-muted); padding: 3px 0; display: flex; align-items: center; gap: 6px; list-style: none; }
        .edu-course-detail .sidebar-col .purchase-card .benefits li .material-symbols-outlined { font-size: 14px; color: var(--azul-01); }
        .edu-course-detail .sidebar-col .purchase-card .btn-account { width: 100%; text-align: center; font-size: 0.85rem; padding: 12px 0; }

        /* ===== ARTIGOS SECTION ===== */
        .artigos-hero { border-radius: 24px; min-height: 360px; display: flex; align-items: center; gap: 48px; padding: 0 56px; position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,0.06); margin-bottom: 32px; }
        .artigos-hero .bg-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
        .artigos-hero .bg-overlay { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(5,10,30,0.92) 0%, rgba(5,10,30,0.7) 50%, rgba(0,17,56,0.5) 100%); }
        .artigos-hero .left { flex: 1; position: relative; z-index: 2; }
        .artigos-hero .left .tagline { color: var(--azul-01); font-weight: 700; text-transform: uppercase; letter-spacing: 2px; font-size: 0.8rem; margin-bottom: 10px; }
        .artigos-hero .left h1 { font-size: 2.8rem; color: white; margin-bottom: 14px; line-height: 1.15; }
        .artigos-hero .left p { color: rgba(255,255,255,0.65); max-width: 520px; font-size: 1rem; line-height: 1.6; margin-bottom: 20px; }
        .artigos-hero .right { position: relative; z-index: 2; flex-shrink: 0; display: flex; flex-direction: column; gap: 12px; }
        .artigos-hero .stat-card { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; padding: 16px 24px; min-width: 160px; backdrop-filter: blur(10px); display: flex; align-items: center; gap: 14px; }
        .artigos-hero .stat-card .stat-icon { font-size: 28px; color: var(--azul-01); }
        .artigos-hero .stat-card .stat-text { display: flex; flex-direction: column; }
        .artigos-hero .stat-card .num { font-size: 1.6rem; font-weight: 800; color: white; line-height: 1.1; }
        .artigos-hero .stat-card .label { font-size: 0.7rem; color: rgba(255,255,255,0.45); text-transform: uppercase; letter-spacing: 0.5px; }
        @media (max-width: 700px) { .artigos-hero { flex-direction: column; text-align: center; padding: 40px 24px; gap: 24px; } .artigos-hero .left p { max-width: 100%; } .artigos-hero .right { flex-direction: row; flex-wrap: wrap; justify-content: center; } }

        .artigos-toolbar { display: flex; align-items: center; gap: 16px; margin: 20px 0 24px; flex-wrap: wrap; }
        .artigos-toolbar .edu-search { flex: 1; min-width: 200px; display: flex; align-items: center; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 0 14px; transition: 0.2s; }
        .artigos-toolbar .edu-search:focus-within { border-color: var(--azul-01); }
        .artigos-toolbar .edu-search .material-symbols-outlined { font-size: 20px; color: var(--text-muted); }
        .artigos-toolbar .edu-search input { background: none; border: none; outline: none; color: var(--text-primary); padding: 10px 10px; font-size: 0.85rem; width: 100%; font-family: inherit; }
        .artigos-toolbar .edu-search input::placeholder { color: var(--text-muted); }
        .artigos-toolbar .filter-pills { display: flex; gap: 6px; flex-wrap: wrap; }
        .artigos-toolbar .filter-pill { padding: 6px 16px; border-radius: 20px; border: 1px solid var(--border-color); background: transparent; color: var(--text-muted); font-size: 0.78rem; font-weight: 600; cursor: pointer; transition: 0.2s; font-family: inherit; }
        .artigos-toolbar .filter-pill:hover { border-color: var(--azul-01); color: var(--azul-01); }
        .artigos-toolbar .filter-pill.active { background: var(--azul-01); border-color: var(--azul-01); color: white; }

        .artigos-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; margin: 24px 0 40px; }
        .artigo-card { border-radius: 16px; overflow: hidden; cursor: pointer; background: var(--bg-card); border: 1px solid var(--border-color); transition: transform 0.3s ease, border-color 0.3s ease, background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease, box-shadow 0.3s ease; display: flex; flex-direction: column; }
        .artigo-card:hover { border-color: var(--azul-01); box-shadow: 0 8px 24px rgba(0,134,255,0.08); transform: translateY(-2px); }
        .artigo-card .thumb-wrap { width: 100%; aspect-ratio: 16/9; overflow: hidden; position: relative; }
        .artigo-card .thumb-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
        .artigo-card:hover .thumb-wrap img { transform: scale(1.05); }
        .artigo-card .thumb-wrap .cat-badge { position: absolute; top: 12px; left: 12px; background: var(--azul-01); color: white; font-size: 0.6rem; font-weight: 700; padding: 4px 10px; border-radius: 8px; text-transform: uppercase; letter-spacing: 0.5px; }
        .artigo-card .body { padding: 16px 18px 14px; flex: 1; display: flex; flex-direction: column; }
        .artigo-card .body .artigo-cat { font-size: 0.6rem; font-weight: 700; color: var(--azul-01); text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }
        .artigo-card .body h3 { font-size: 0.95rem; font-weight: 700; margin-bottom: 6px; line-height: 1.3; color: var(--text-main); }
        .artigo-card .body p { font-size: 0.78rem; color: var(--text-muted); line-height: 1.5; margin-bottom: 10px; flex: 1; }
        .artigo-card .body .artigo-meta { display: flex; align-items: center; gap: 10px; font-size: 0.65rem; color: var(--text-muted); border-top: 1px solid var(--border-color); padding-top: 10px; margin-top: auto; }
        .artigo-card .body .artigo-meta .material-symbols-outlined { font-size: 14px; }

        /* Article detail page */
        .artigo-detail { max-width: 800px; margin: 0 auto; }
        .artigo-detail .back-link { display: inline-flex; align-items: center; gap: 6px; color: var(--azul-01); cursor: pointer; font-size: 0.85rem; font-weight: 600; margin-bottom: 20px; transition: 0.2s; }
        .artigo-detail .back-link:hover { opacity: 0.7; }
        .artigo-detail .cover-img { width: 100%; aspect-ratio: 16/9; object-fit: cover; border-radius: 20px; margin-bottom: 24px; }
        .artigo-detail .detail-header { margin-bottom: 24px; }
        .artigo-detail .detail-header .artigo-cat-badge { display: inline-block; background: rgba(0,134,255,0.08); color: var(--azul-01); font-size: 0.65rem; font-weight: 700; padding: 4px 12px; border-radius: 8px; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 10px; }
        .artigo-detail .detail-header h1 { font-size: 1.8rem; line-height: 1.2; margin-bottom: 10px; }
        .artigo-detail .detail-header .meta { display: flex; gap: 16px; font-size: 0.8rem; color: var(--text-muted); flex-wrap: wrap; }
        .artigo-detail .detail-header .meta span { display: flex; align-items: center; gap: 4px; }
        .artigo-detail .detail-body { font-size: 0.95rem; color: var(--text-main); line-height: 1.8; }
        .artigo-detail .detail-body p { margin-bottom: 16px; }
        .artigo-detail .detail-body h2 { font-size: 1.3rem; margin: 28px 0 12px; }
        .artigo-detail .detail-body h3 { font-size: 1.1rem; margin: 24px 0 10px; }
        .artigo-detail .detail-body ul, .artigo-detail .detail-body ol { padding-left: 20px; margin-bottom: 16px; }
        .artigo-detail .detail-body li { margin-bottom: 6px; color: var(--text-muted); }
        .artigo-detail .detail-body blockquote { border: 1px solid var(--border-color); padding: 12px 20px; margin: 16px 0; background: rgba(0,134,255,0.03); border-radius: 8px; font-style: italic; color: var(--text-muted); }
        .artigo-detail .detail-body .highlight-box { background: rgba(0,134,255,0.05); border: 1px solid rgba(0,134,255,0.1); border-radius: 12px; padding: 20px; margin: 16px 0; }
        .artigo-detail .detail-body .highlight-box h4 { color: var(--azul-01); margin-bottom: 6px; }

        /* ===== SHORTS GRID ===== */
        .shorts-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 14px; margin: 24px 0 40px; }
        .short-card { border-radius: 16px; overflow: hidden; cursor: pointer; background: var(--bg-card); border: 1px solid var(--border-color); transition: transform 0.3s ease, border-color 0.3s ease, background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease, box-shadow 0.3s ease; position: relative; aspect-ratio: 9/16; }
        .short-card:hover { border-color: var(--azul-01); transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,134,255,0.08); }
        .short-card img { width: 100%; height: 100%; object-fit: cover; }
        .short-card .short-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, transparent 50%); display: flex; flex-direction: column; justify-content: flex-end; padding: 14px; }
        .short-card .short-overlay .short-title { font-size: 0.78rem; font-weight: 700; color: white; margin-bottom: 4px; line-height: 1.2; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
        .short-card .short-overlay .short-views { font-size: 0.6rem; color: rgba(255,255,255,0.6); display: flex; align-items: center; gap: 4px; }
        .short-card .short-play-icon { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); color: white; font-size: 40px; opacity: 0; transition: 0.3s; text-shadow: 0 2px 10px rgba(0,0,0,0.5); }
        .short-card:hover .short-play-icon { opacity: 1; }
        .short-card .short-dur-badge { position: absolute; top: 8px; right: 8px; background: rgba(0,0,0,0.7); color: white; font-size: 0.6rem; padding: 2px 6px; border-radius: 4px; }

        /* ===== SHORTS PLAYER (Instagram-style) ===== */
        .shorts-player { position: fixed; inset: 0; z-index: 99999; background: #000; display: none; flex-direction: column; align-items: center; justify-content: center; }
        .shorts-player.active { display: flex; }
        .shorts-player .sp-close { position: absolute; top: 16px; left: 16px; z-index: 10; color: white; cursor: pointer; width: 36px; height: 36px; border-radius: 50%; background: rgba(255,255,255,0.15); backdrop-filter: blur(8px); display: flex; align-items: center; justify-content: center; border: none; }
        .shorts-player .sp-close .material-symbols-outlined { font-size: 22px; }
        .shorts-player .sp-progress { position: absolute; top: 0; left: 0; right: 0; display: flex; gap: 3px; padding: 10px 12px 0; z-index: 10; }
        .shorts-player .sp-progress .sp-prog-seg { flex: 1; height: 2px; background: rgba(255,255,255,0.25); border-radius: 2px; overflow: hidden; }
        .shorts-player .sp-progress .sp-prog-seg .sp-prog-fill { height: 100%; background: white; width: 0%; border-radius: 2px; transition: width 0.3s linear; }
        .shorts-player .sp-progress .sp-prog-seg.active .sp-prog-fill { background: var(--azul-01); }
        .shorts-player .sp-progress .sp-prog-seg.watched .sp-prog-fill { width: 100%; background: rgba(255,255,255,0.5); }

        .shorts-player .sp-viewport { position: relative; width: 100%; max-width: 420px; aspect-ratio: 9/16; max-height: 95vh; border-radius: 12px; overflow: hidden; }
        .shorts-player .sp-viewport .sp-video-wrap { width: 100%; height: 100%; position: relative; }
        .shorts-player .sp-viewport .sp-video-wrap iframe { width: 100%; height: 100%; border: none; }
        .shorts-player .sp-viewport .sp-touch-area { position: absolute; inset: 0; z-index: 5; display: flex; }
        .shorts-player .sp-viewport .sp-touch-area .sp-side { flex: 1; cursor: pointer; }
        .shorts-player .sp-viewport .sp-touch-area .sp-center { flex: 3; cursor: pointer; }

        .shorts-player .sp-actions { position: absolute; right: 12px; bottom: 120px; z-index: 10; display: flex; flex-direction: column; gap: 12px; }
        .shorts-player .sp-actions button { width: 44px; height: 44px; border-radius: 50%; background: rgba(255,255,255,0.1); border: none; color: white; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: 0.2s; backdrop-filter: blur(4px); }
        .shorts-player .sp-actions button:hover { background: rgba(255,255,255,0.2); }
        .shorts-player .sp-actions button .material-symbols-outlined { font-size: 22px; }
        .shorts-player .sp-actions .sp-action-label { text-align: center; font-size: 0.55rem; color: rgba(255,255,255,0.6); margin-top: -8px; }

        .shorts-player .sp-info { position: absolute; bottom: 16px; left: 16px; right: 70px; z-index: 10; }
        .shorts-player .sp-info .sp-title { font-size: 0.85rem; font-weight: 700; color: white; margin-bottom: 4px; }
        .shorts-player .sp-info .sp-desc { font-size: 0.72rem; color: rgba(255,255,255,0.6); line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

        .shorts-player .sp-nav-btn { position: absolute; left: 50%; transform: translateX(-50%); z-index: 10; width: 40px; height: 40px; border-radius: 50%; background: rgba(255,255,255,0.08); border: none; color: white; cursor: pointer; display: flex; align-items: center; justify-content: center; backdrop-filter: blur(4px); transition: 0.2s; }
        .shorts-player .sp-nav-btn:hover { background: rgba(255,255,255,0.2); }
        .shorts-player .sp-nav-btn .material-symbols-outlined { font-size: 24px; }
        .shorts-player .sp-nav-prev { top: 56px; }
        .shorts-player .sp-nav-next { bottom: 70px; }

        .edu-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 80px 40px; border-radius: 24px; background: var(--bg-card); border: 1px dashed var(--border-color); }
        .edu-placeholder .material-symbols-outlined { font-size: 64px; color: var(--azul-01); opacity: 0.3; margin-bottom: 16px; }
        .edu-placeholder h3 { font-size: 1.4rem; margin-bottom: 8px; }
        .edu-placeholder p { color: var(--text-muted); max-width: 400px; }

        /* Sidebar parent button */
        .nav-link-parent { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-radius: 12px; border: 1px solid rgba(255,255,255,0.08); background: rgba(255,255,255,0.03); margin-bottom: 6px; font-weight: 700; font-size: 0.9rem; transition: transform 0.2s, border-color 0.2s, background-color 0.2s, color 0.2s, opacity 0.2s, box-shadow 0.2s; color: var(--text-primary); text-decoration: none; cursor: pointer; }
        .nav-link-parent:hover { border-color: var(--azul-01); background: rgba(0,134,255,0.06); }
        .nav-link-parent.active { border-color: var(--azul-01); background: rgba(0,134,255,0.1); color: var(--azul-01); }
        .nav-link-parent.active .material-symbols-outlined { color: var(--azul-01); }
        .nav-link-parent .material-symbols-outlined { font-size: 20px; }
        .nav-children { list-style: none; padding: 0; margin: 0 0 4px 0; }
        .nav-children li { padding: 0; }
        .nav-children .nav-link { padding: 8px 14px 8px 40px; font-size: 0.9rem; }
        .nav-children .nav-link .material-symbols-outlined { font-size: 18px; }

        .seg-simulator { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-bottom: 50px; }
        @media (max-width: 800px) { .seg-simulator { grid-template-columns: 1fr; } }
        .seg-sim-form { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; }
        .seg-sim-form h3 { display: flex; align-items: center; gap: 10px; margin-bottom: 24px; font-size: 1.05rem; }
        .seg-sim-form .form-group { margin-bottom: 18px; }
        .seg-sim-form label { display: block; font-size: 0.72rem; font-weight: 700; color: var(--text-muted); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 6px; }
        .seg-sim-form select, .seg-sim-form input { width: 100%; padding: 11px 14px; border: 1px solid var(--border-color); border-radius: 12px; background: var(--input-bg); color: var(--text-main); font-size: 0.9rem; font-weight: 600; font-family: 'Manrope', sans-serif; outline: none; transition: 0.2s; }
        .seg-sim-form select:focus, .seg-sim-form input:focus { border-color: var(--azul-01); }
        .seg-sim-form input[type="range"] { width: 100%; accent-color: var(--azul-01); padding: 0; border: none; background: none; }

        .seg-sim-result { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }
        .seg-sim-result .big-number { font-size: 3rem; font-weight: 800; color: var(--azul-01); line-height: 1; }
        .seg-sim-result .sub-label { font-size: 0.8rem; color: var(--text-muted); margin-top: 6px; }
        .seg-sim-result .sim-detail { font-size: 0.78rem; color: var(--text-muted); margin-top: 16px; max-width: 360px; line-height: 1.5; }

        .seg-process { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 20px; margin-bottom: 50px; }
        .seg-process-step { text-align: center; padding: 24px 16px; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 20px; transition: 0.3s; position: relative; }
        .seg-process-step:hover { border-color: var(--azul-01); }
        .seg-process-step .step-num { width: 36px; height: 36px; border-radius: 50%; background: var(--azul-01); color: white; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 0.85rem; margin: 0 auto 12px; }
        .seg-process-step h4 { font-size: 0.9rem; margin-bottom: 6px; }
        .seg-process-step p { font-size: 0.75rem; color: var(--text-muted); margin: 0; line-height: 1.4; }

        .seg-partners { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; margin-bottom: 50px; }
        .seg-partner-badge { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 16px 24px; display: flex; align-items: center; gap: 12px; font-weight: 700; font-size: 0.85rem; }
        .seg-partner-badge .material-symbols-outlined { color: var(--azul-01); font-size: 28px; }

        /* =========================================
           PREVIDENCIA SECTION — CLOCK & SIMULATOR
           ========================================= */
        .prev-hero-clock { text-align: center; padding: 20px 0; }
        .prev-year-display { font-size: 6rem; font-weight: 800; color: var(--azul-01); line-height: 1; letter-spacing: -4px; font-variant-numeric: tabular-nums; }
        .prev-clock-row { display: flex; justify-content: center; gap: 24px; margin-top: 16px; flex-wrap: wrap; }
        .prev-clock-unit { text-align: center; min-width: 70px; }
        .prev-clock-unit .num { font-size: 2.2rem; font-weight: 800; color: white; line-height: 1; font-variant-numeric: tabular-nums; }
        .prev-clock-unit .lbl { font-size: 0.65rem; text-transform: uppercase; letter-spacing: 1px; color: rgba(255,255,255,0.6); font-weight: 700; margin-top: 4px; }
        .prev-clock-dot { font-size: 2.2rem; font-weight: 800; color: rgba(255,255,255,0.4); line-height: 1; padding-top: 0; }
        .prev-tagline { font-size: 1rem; color: rgba(255,255,255,0.6); margin-top: 12px; }
        .prev-hero-cta { margin-top: 24px; display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

        .prev-sim-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-bottom: 50px; }
        @media (max-width: 800px) { .prev-sim-grid { grid-template-columns: 1fr; } }
        .prev-sim-form { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; }
        .prev-sim-form h3 { display: flex; align-items: center; gap: 10px; margin-bottom: 24px; font-size: 1.1rem; }
        .prev-sim-form .form-group { margin-bottom: 18px; }
        .prev-sim-form label { display: block; font-size: 0.75rem; font-weight: 700; color: var(--text-muted); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 6px; }
        .prev-sim-form input[type="number"] { width: 100%; padding: 12px 16px; border: 1px solid var(--border-color); border-radius: 12px; background: var(--input-bg); color: var(--text-main); font-size: 1rem; font-weight: 600; font-family: 'Manrope', sans-serif; outline: none; transition: 0.2s; }
        .prev-sim-form input:focus { border-color: var(--azul-01); }
        .prev-sim-form input[type="range"] { width: 100%; accent-color: var(--azul-01); margin-top: 6px; }

        .prev-sim-result { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; display: flex; flex-direction: column; justify-content: center; }
        .prev-sim-result .big-number { font-size: 2.8rem; font-weight: 800; color: var(--azul-01); text-align: center; font-variant-numeric: tabular-nums; }
        .prev-sim-result .sub-label { text-align: center; font-size: 0.8rem; color: var(--text-muted); margin-top: 4px; }
        .prev-sim-breakdown { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 24px; }
        .prev-sim-stat { background: rgba(0,134,255,0.05); border: 1px solid rgba(0,134,255,0.1); border-radius: 12px; padding: 16px; text-align: center; }
        .prev-sim-stat .val { font-weight: 800; font-size: 1.1rem; color: var(--text-main); }
        .prev-sim-stat .lbl { font-size: 0.7rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.5px; margin-top: 2px; }
        .prev-sim-note { font-size: 0.7rem; color: var(--text-muted); text-align: center; margin-top: 16px; font-style: italic; }
        .prev-clock-live { font-size: 1.8rem; font-weight: 800; color: var(--azul-01); text-align: center; font-variant-numeric: tabular-nums; margin-top: 16px; }

        .prev-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-bottom: 50px; }
        @media (max-width: 700px) { .prev-compare { grid-template-columns: 1fr; } }
        .prev-plan-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; position: relative; overflow: hidden; transition: 0.3s; }
        .prev-plan-card:hover { border-color: var(--azul-01); box-shadow: 0 8px 24px rgba(0,134,255,0.08); }
        .prev-plan-card.featured { border-color: var(--azul-01); border-width: 2px; }
        .prev-plan-badge { position: absolute; top: 16px; right: 16px; background: var(--azul-01); color: white; font-size: 0.6rem; font-weight: 800; padding: 4px 12px; border-radius: 20px; letter-spacing: 0.5px; }
        .prev-plan-icon { font-size: 40px; color: var(--azul-01); margin-bottom: 12px; }
        .prev-plan-card h3 { font-size: 1.3rem; margin-bottom: 4px; }
        .prev-plan-card .plan-sub { font-size: 0.8rem; color: var(--text-muted); margin-bottom: 16px; }
        .prev-plan-card ul { list-style: none; padding: 0; }
        .prev-plan-card li { padding: 8px 0; border-bottom: 1px solid var(--border-color); font-size: 0.85rem; color: var(--text-muted); display: flex; align-items: center; gap: 8px; }
        .prev-plan-card li:last-child { border-bottom: none; }
        .prev-plan-card li .material-symbols-outlined { font-size: 18px; color: var(--azul-01); }

        .prev-tax-table { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; margin-bottom: 50px; }
        .prev-tax-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
        @media (max-width: 700px) { .prev-tax-grid { grid-template-columns: 1fr; } }
        .prev-tax-col h4 { display: flex; align-items: center; gap: 8px; font-size: 0.95rem; margin-bottom: 16px; }
        .prev-tax-col h4 .material-symbols-outlined { color: var(--azul-01); }
        .prev-tax-col p { font-size: 0.8rem; color: var(--text-muted); margin-bottom: 12px; }
        .prev-tax-row { display: flex; justify-content: space-between; padding: 10px 14px; border-radius: 8px; font-size: 0.85rem; margin-bottom: 4px; font-weight: 600; }
        .prev-tax-row:nth-child(odd) { background: rgba(0,134,255,0.03); }
        .prev-tax-row .period { color: var(--text-main); }
        .prev-tax-row .rate { color: var(--azul-01); }
        .prev-tax-highlight { background: var(--azul-01); color: white; border-radius: 8px; padding: 12px 16px; font-size: 0.85rem; font-weight: 700; margin-top: 12px; }

        .prev-articles { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; margin-bottom: 50px; }
        .prev-article-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 20px; overflow: hidden; transition: 0.3s; cursor: pointer; }
        .prev-article-card:hover { border-color: var(--azul-01); transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,134,255,0.1); }
        .prev-article-card img { width: 100%; height: 160px; object-fit: cover; }
        .prev-article-body { padding: 20px; }
        .prev-article-body h4 { font-size: 1rem; margin-bottom: 6px; }
        .prev-article-body p { font-size: 0.82rem; color: var(--text-muted); margin: 0; line-height: 1.5; }

        /* =========================================
           DEVALUATION SIMULATOR
           ========================================= */
        .intl-simulator-wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-bottom: 50px; }
        @media (max-width: 900px) { .intl-simulator-wrap { grid-template-columns: 1fr; } }
        .intl-sim-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; }
        .intl-sim-card h3 { display: flex; align-items: center; gap: 10px; margin-bottom: 20px; font-size: 1.1rem; }
        .intl-sim-card h3 .material-symbols-outlined { color: var(--azul-01); }
        .intl-sim-slider-wrap { margin: 20px 0; }
        .intl-sim-slider-wrap label { display: flex; justify-content: space-between; font-size: 0.85rem; color: var(--text-muted); margin-bottom: 8px; }
        .intl-sim-slider-wrap label strong { color: var(--text-main); }
        .intl-sim-slider-wrap input[type="range"] { width: 100%; accent-color: var(--azul-01); }
        .intl-sim-result { background: rgba(0,134,255,0.05); border: 1px solid rgba(0,134,255,0.1); border-radius: 16px; padding: 20px; text-align: center; margin-top: 20px; }
        .intl-sim-result .big-number { font-size: 2.2rem; font-weight: 800; color: var(--azul-01); }
        .intl-sim-result .label { font-size: 0.8rem; color: var(--text-muted); margin-top: 4px; }
        .intl-sim-bars { margin-top: 20px; }
        .intl-sim-bar-row { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; font-size: 0.75rem; }
        .intl-sim-bar-row .year-label { min-width: 40px; font-weight: 700; color: var(--text-main); }
        .intl-sim-bar-row .bar-track { flex: 1; height: 20px; background: var(--input-bg); border-radius: 4px; overflow: hidden; position: relative; }
        .intl-sim-bar-row .bar-fill { height: 100%; border-radius: 4px; background: linear-gradient(90deg, var(--azul-01), #ff4444); transition: width 0.5s; }
        .intl-sim-bar-row .bar-value { min-width: 55px; text-align: right; font-weight: 600; color: var(--text-muted); }

        /* =========================================
           CURRENCY CONVERTER
           ========================================= */
        .intl-converter { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 24px; padding: 30px; margin-bottom: 50px; }
        .intl-converter-grid { display: grid; grid-template-columns: 1fr auto 1fr; gap: 16px; align-items: end; }
        @media (max-width: 600px) { .intl-converter-grid { grid-template-columns: 1fr; } }
        .intl-conv-group { display: flex; flex-direction: column; gap: 6px; }
        .intl-conv-group label { font-size: 0.75rem; font-weight: 700; color: var(--text-muted); text-transform: uppercase; letter-spacing: 1px; }
        .intl-conv-group input, .intl-conv-group select { padding: 12px 16px; border: 1px solid var(--border-color); border-radius: 12px; background: var(--input-bg); color: var(--text-main); font-size: 1rem; font-weight: 600; font-family: 'Manrope', sans-serif; outline: none; transition: 0.2s; }
        .intl-conv-group input:focus, .intl-conv-group select:focus { border-color: var(--azul-01); }
        .intl-conv-swap { display: flex; align-items: center; justify-content: center; padding-bottom: 4px; }
        .intl-conv-swap button { width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--border-color); background: var(--bg-card); color: var(--text-muted); cursor: pointer; display: flex; align-items: center; justify-content: center; transition: 0.2s; }
        .intl-conv-swap button:hover { border-color: var(--azul-01); color: var(--azul-01); }
        .intl-conv-result { margin-top: 20px; padding: 20px; background: rgba(0,134,255,0.05); border: 1px solid rgba(0,134,255,0.1); border-radius: 16px; text-align: center; }
        .intl-conv-result .conv-value { font-size: 2rem; font-weight: 800; color: var(--azul-01); }
        .intl-conv-result .conv-label { font-size: 0.85rem; color: var(--text-muted); margin-top: 4px; }

        /* =========================================
           HOME SECTION — LIVE MARKET STRIP
           ========================================= */
        .home-live-strip { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-bottom: 40px; }
        @media (max-width: 800px) { .home-live-strip { grid-template-columns: 1fr; } }
        .home-live-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 20px; padding: 22px 24px; transition: 0.3s; position: relative; overflow: hidden; }
        .home-live-card:hover { border-color: var(--azul-01); box-shadow: 0 8px 24px rgba(0,134,255,0.08); }
        .home-live-label { font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: var(--text-muted); display: flex; align-items: center; gap: 6px; margin-bottom: 10px; }
        .home-live-label .live-dot-sm { width: 6px; height: 6px; border-radius: 50%; background: #4CAF50; display: inline-block; animation: home-pulse 1.5s infinite; }
        @keyframes home-pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } }
        .home-live-price { font-size: 1.8rem; font-weight: 800; color: var(--text-main); font-variant-numeric: tabular-nums; letter-spacing: -0.5px; line-height: 1.1; }
        .home-live-change { font-size: 0.95rem; font-weight: 700; margin-top: 4px; }
        .home-live-change.pos { color: #4CAF50; }
        .home-live-change.neg { color: #F44336; }
        .home-live-sentiment { display: flex; align-items: center; gap: 8px; margin-top: 10px; font-size: 0.8rem; font-weight: 600; color: var(--text-muted); }
        .home-live-sentiment .material-symbols-outlined { font-size: 20px; }
        .home-live-sub { font-size: 0.72rem; color: var(--text-muted); margin-top: 8px; }
        .home-live-card .bg-icon { position: absolute; right: 16px; bottom: 16px; font-size: 56px; color: var(--border-color); opacity: 0.3; }

        /* =========================================
           HOME SECTION ENHANCEMENTS
           ========================================= */
        .home-quick-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 14px; margin-bottom: 40px; }
        .home-quick-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 20px; text-align: center; cursor: pointer; transition: 0.3s; }
        .home-quick-card:hover { border-color: var(--azul-01); transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,134,255,0.1); }
        .home-quick-card .material-symbols-outlined { font-size: 32px; color: var(--azul-01); margin-bottom: 10px; }
        .home-quick-card h4 { font-size: 0.85rem; margin-bottom: 4px; }
        .home-quick-card p { font-size: 0.7rem; color: var(--text-muted); margin: 0; }
        .quick-option-row { display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;border:1px solid var(--border-color);cursor:pointer;transition:0.15s;user-select:none; }
        .quick-option-row:hover { border-color:var(--azul-01);background:rgba(0,134,255,0.03); }
        .quick-option-row .material-symbols-outlined { font-size:18px;color:var(--azul-01); }
        .quick-option-row .q-info { flex:1; }
        .quick-option-row .q-info h4 { font-size:0.78rem;margin:0;color:var(--text-main); }
        .quick-option-row .q-info p { font-size:0.62rem;margin:0;color:var(--text-muted); }
        .quick-option-row .q-check { width:18px;height:18px;border-radius:4px;border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:0.2s; }
        .quick-option-row.selected .q-check { border-color:var(--azul-01);background:var(--azul-01); }
        .quick-option-row.selected .q-check .material-symbols-outlined { display:block;font-size:14px !important; }
        .quick-option-row .q-check .material-symbols-outlined { display:none; }
        .quick-modal-overlay { display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;background:rgba(0,0,0,0.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);align-items:center;justify-content:center;margin:0;padding:0; }
        .quick-modal-box { background:var(--bg-card);border-radius:16px;padding:22px;max-width:400px;width:92%;border:1px solid var(--border-color);box-shadow:0 20px 60px rgba(0,0,0,0.3);max-height:80vh;overflow-y:auto; }

        /* Search dropdown */
        .search-dropdown { position:absolute;top:100%;left:0;right:0;margin-top:8px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 16px 48px rgba(0,0,0,0.12);max-height:420px;overflow-y:auto;z-index:9999;display:none; }
        .search-dropdown.active { display:block; }
        .search-dropdown .sd-section { padding:8px 12px 4px;font-size:0.6rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted); }
        .search-dropdown .sd-item { display:flex;width:calc(100% - 12px);align-items:center;gap:12px;padding:10px 14px;cursor:pointer;transition:0.15s;border:0;border-radius:8px;margin:2px 6px;background:transparent;color:inherit;text-align:left;font:inherit; }
        .search-dropdown .sd-item:hover { background:rgba(0,134,255,0.06); }
        .search-dropdown .sd-item .sd-icon { font-size:18px;color:var(--azul-01);flex-shrink:0; }
        .search-dropdown .sd-item .sd-info { display:flex;min-width:0;flex-direction:column; }
        .search-dropdown .sd-item .sd-title { font-size:0.82rem;color:var(--text-main);font-weight:600; }
        .search-dropdown .sd-item .sd-description { font-size:0.7rem;color:var(--text-muted); }
        .search-dropdown .sd-empty { padding:24px;text-align:center;color:var(--text-muted);font-size:0.85rem; }
        .home-tools-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; margin-bottom: 40px; }
        .home-tool-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 20px; cursor: pointer; transition: 0.3s; display: flex; align-items: center; gap: 16px; }
        .home-tool-card:hover { border-color: var(--azul-01); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,134,255,0.1); }
        .home-tool-card .material-symbols-outlined { font-size: 36px; color: var(--azul-01); flex-shrink: 0; }
        .home-tool-card h4 { font-size: 0.95rem; margin-bottom: 2px; }
        .home-tool-card p { font-size: 0.78rem; color: var(--text-muted); margin: 0; line-height: 1.4; }

        /* =========================================
           HOME — NOVAS SEÇÕES (EDUCAÇÃO, VÍDEOS, NOTÍCIAS)
           ========================================= */
        .home-section-divider { margin: 48px 0 24px; border: none; border-top: 1px solid var(--border-color); opacity: 0.4; }
        .home-edu-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; margin-bottom: 10px; }
        .home-edu-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; overflow: hidden; cursor: pointer; transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), border-color 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), color 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94); position: relative; }
        .home-edu-card:hover { transform: translateY(-6px); box-shadow: 0 16px 40px rgba(0,134,255,0.12); border-color: var(--azul-01); }
        .home-edu-card .thumb { width: 100%; height: 150px; object-fit: cover; display: block; transition: transform 0.5s; }
        .home-edu-card:hover .thumb { transform: scale(1.06); }
        .home-edu-card .body { padding: 16px 18px 18px; }
        .home-edu-card .badge { display: inline-block; padding: 3px 10px; border-radius: 4px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 8px; background: rgba(0,134,255,0.1); color: var(--azul-01); }
        .home-edu-card h4 { font-size: 0.95rem; margin-bottom: 4px; color: var(--text-main); }
        .home-edu-card p { font-size: 0.78rem; color: var(--text-muted); margin: 0; line-height: 1.4; }
        .home-edu-card .meta { display: flex; align-items: center; gap: 12px; margin-top: 10px; font-size: 0.72rem; color: var(--text-muted); }
        .home-edu-card .meta .material-symbols-outlined { font-size: 14px; }
        .home-edu-card .price-tag { position: absolute; top: 10px; right: 10px; background: var(--azul-01); color: white; padding: 4px 12px; border-radius: 20px; font-size: 0.7rem; font-weight: 700; }

        .home-video-strip { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 18px; margin-bottom: 10px; }
        .home-video-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; overflow: hidden; cursor: pointer; transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), border-color 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), color 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
        .home-video-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,134,255,0.1); border-color: var(--azul-01); }
        .home-video-card .thumb-wrap { position: relative; width: 100%; aspect-ratio: 16/9; overflow: hidden; background: var(--azul-03); }
        .home-video-card .thumb-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; }
        .home-video-card:hover .thumb-wrap img { transform: scale(1.06); }
        .home-video-card .play-overlay { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,0.2); transition: 0.3s; }
        .home-video-card:hover .play-overlay { background: rgba(0,0,0,0.35); }
        .home-video-card .play-overlay .material-symbols-outlined { font-size: 48px; color: white; filter: drop-shadow(0 4px 12px rgba(0,0,0,0.4)); }
        .home-video-card .body { padding: 14px 18px 16px; }
        .home-video-card .body h4 { font-size: 0.9rem; margin-bottom: 4px; color: var(--text-main); }
        .home-video-card .body p { font-size: 0.75rem; color: var(--text-muted); margin: 0; }
        .home-video-card .thumb-wrap .duration { position: absolute; bottom: 6px; right: 6px; background: rgba(0,0,0,0.85); color: white; font-size: 0.65rem; padding: 1px 7px; border-radius: 5px; z-index: 2; }

        .home-news-strip { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; margin-bottom: 10px; }
        .home-news-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 14px; padding: 18px; cursor: pointer; transition: transform 0.3s, border-color 0.3s, background-color 0.3s, color 0.3s, opacity 0.3s, box-shadow 0.3s; display: flex; flex-direction: column; gap: 8px; }
        .home-news-card:hover { border-color: var(--azul-01); transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,134,255,0.08); }
        .home-news-card .n-tag { font-size: 0.6rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; color: var(--azul-01); }
        .home-news-card h4 { font-size: 0.88rem; color: var(--text-main); margin: 0; line-height: 1.35; }
        .home-news-card p { font-size: 0.75rem; color: var(--text-muted); margin: 0; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
        .home-news-card .n-source { font-size: 0.65rem; color: var(--text-muted); margin-top: auto; }

        .home-section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
        .home-section-header .section-title { margin-bottom: 0; border-bottom: none; padding-bottom: 0; }
        .home-section-header .link-all { font-size: 0.8rem; color: var(--azul-01); font-weight: 600; cursor: pointer; text-decoration: none; display: flex; align-items: center; gap: 4px; transition: 0.2s; }
        .home-section-header .link-all:hover { gap: 8px; }
        .home-section-header .link-all .material-symbols-outlined { font-size: 16px; }

        .home-ferr-enhanced { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
        .home-ferr-card { background: linear-gradient(135deg, var(--bg-card), rgba(0,134,255,0.03)); border: 1px solid var(--border-color); border-radius: 14px; padding: 20px; cursor: pointer; transition: transform 0.3s, border-color 0.3s, background-color 0.3s, color 0.3s, opacity 0.3s, box-shadow 0.3s; display: flex; align-items: center; gap: 14px; }
        .home-ferr-card:hover { border-color: var(--azul-01); transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,134,255,0.1); }
        .home-ferr-card .icon-wrap { width: 44px; height: 44px; border-radius: 12px; background: rgba(0,134,255,0.1); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
        .home-ferr-card .icon-wrap .material-symbols-outlined { font-size: 24px; color: var(--azul-01); }
        .home-ferr-card h4 { font-size: 0.85rem; margin-bottom: 2px; }
        .home-ferr-card p { font-size: 0.7rem; color: var(--text-muted); margin: 0; }

        /* ===== NOTÍCIAS ===== */
        .noticias-hero { position: relative; border-radius: 24px; overflow: hidden; margin-bottom: 32px; min-height: 280px; display: flex; align-items: center; }
        .noticias-hero video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
        .noticias-hero .overlay { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(0,17,56,0.85), rgba(5,9,53,0.7)); }
        .noticias-hero .content { position: relative; z-index: 1; padding: 50px; color: white; }
        .noticias-hero .content h1 { font-size: 2.5rem; font-weight: 800; margin-bottom: 8px; }
        .noticias-hero .content p { color: #CDCDCD; font-size: 1rem; max-width: 500px; margin-bottom: 16px; }
        .noticias-hero .content .live-badge { display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px; border-radius: 20px; background: rgba(255,59,48,0.2); border: 1px solid rgba(255,59,48,0.4); color: #FF3B30; font-size: 0.75rem; font-weight: 700; }
        .noticias-hero .content .live-badge .dot { width: 8px; height: 8px; border-radius: 50%; background: #FF3B30; animation: pulse-dot 1.5s infinite; }
        @keyframes pulse-dot { 0%,100%{opacity:1} 50%{opacity:0.3} }

        .noticias-toolbar { display: flex; gap: 16px; align-items: center; margin-bottom: 24px; flex-wrap: wrap; }
        .noticias-toolbar .edu-search { flex: 1; min-width: 200px; display: flex; align-items: center; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 0 14px; transition: 0.2s; }
        .noticias-toolbar .edu-search:focus-within { border-color: var(--azul-01); }
        .noticias-toolbar .edu-search .material-symbols-outlined { font-size: 20px; color: var(--text-muted); }
        .noticias-toolbar .edu-search input { background: none; border: none; outline: none; color: var(--text-primary); padding: 10px 10px; font-size: 0.85rem; width: 100%; font-family: inherit; }
        .noticias-toolbar .edu-search input::placeholder { color: var(--text-muted); }
        .noticias-toolbar .n-filter-pills { display: flex; gap: 8px; flex-wrap: wrap; }
        .noticias-toolbar .n-filter-pill { padding: 6px 14px; border-radius: 20px; border: 1px solid var(--border-color); background: transparent; color: var(--text-muted); font-size: 0.78rem; font-weight: 600; cursor: pointer; transition: 0.2s; font-family: inherit; }
        .noticias-toolbar .n-filter-pill:hover { border-color: var(--azul-01); color: var(--azul-01); }
        .noticias-toolbar .n-filter-pill.active { background: var(--azul-01); color: white; border-color: var(--azul-01); }

        .noticias-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 20px; margin-bottom: 32px; }
        .noticia-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; overflow: hidden; cursor: pointer; transition: 0.3s; }
        .noticia-card:hover { transform: translateY(-3px); box-shadow: 0 12px 32px rgba(0,134,255,0.1); border-color: var(--azul-01); }
        .noticia-card .thumb { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; }
        .noticia-card .body { padding: 16px 20px 20px; }
        .noticia-card .body .n-cat { display: inline-block; padding: 3px 10px; border-radius: 12px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; background: rgba(0,134,255,0.1); color: var(--azul-01); margin-bottom: 8px; }
        .noticia-card .body h3 { font-size: 1rem; line-height: 1.4; margin-bottom: 6px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
        .noticia-card .body p { font-size: 0.8rem; color: var(--text-muted); margin-bottom: 10px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
        .noticia-card .body .n-meta { display: flex; align-items: center; gap: 12px; font-size: 0.7rem; color: var(--text-muted); }
        .noticia-card .body .n-meta .n-source { font-weight: 600; }
        .noticias-loading { grid-column: 1/-1; text-align: center; padding: 80px 20px; color: var(--text-muted); }
        .noticias-loading .material-symbols-outlined { font-size: 48px; display: block; margin-bottom: 12px; }
        .noticias-refresh { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
        .noticias-refresh .info { font-size: 0.75rem; color: var(--text-muted); }
        .noticias-refresh .info strong { color: var(--text-main); }
        .load-more-btn { display: block; margin: 24px auto; padding: 12px 32px; border-radius: 12px; border: 1px solid var(--border-color); background: transparent; color: var(--text-main); font-size: 0.9rem; font-weight: 700; cursor: pointer; transition: 0.2s; font-family: inherit; }
        .load-more-btn:hover { border-color: var(--azul-01); color: var(--azul-01); background: rgba(0,134,255,0.05); }

        /* Notícia detail */
        .noticia-detail { max-width: 800px; margin: 0 auto; }
        .noticia-detail .back-link { display: inline-flex; align-items: center; gap: 6px; color: var(--azul-01); cursor: pointer; font-weight: 600; font-size: 0.85rem; margin-bottom: 24px; }
        .noticia-detail .back-link:hover { text-decoration: underline; }
        .noticia-detail .cover-img { width: 100%; aspect-ratio: 16/9; object-fit: cover; border-radius: 16px; margin-bottom: 24px; }
        .noticia-detail .detail-header { margin-bottom: 24px; }
        .noticia-detail .detail-header .n-cat { display: inline-block; padding: 4px 12px; border-radius: 12px; font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; background: rgba(0,134,255,0.1); color: var(--azul-01); margin-bottom: 12px; }
        .noticia-detail .detail-header h1 { font-size: 2rem; font-weight: 800; line-height: 1.3; margin-bottom: 12px; }
        .noticia-detail .detail-header .meta { display: flex; flex-wrap: wrap; gap: 16px; font-size: 0.8rem; color: var(--text-muted); }
        .noticia-detail .detail-header .meta span { display: inline-flex; align-items: center; gap: 4px; }
        .noticia-detail .detail-body { font-size: 1rem; line-height: 1.8; color: var(--text-main); }
        .noticia-detail .detail-body p { margin-bottom: 16px; }
        .noticia-detail .detail-body h2 { font-size: 1.4rem; font-weight: 700; margin: 32px 0 12px; }
        .noticia-detail .detail-body h3 { font-size: 1.15rem; font-weight: 700; margin: 24px 0 10px; }
        .noticia-detail .detail-body img { max-width: 100%; height: auto; border-radius: 12px; margin: 16px 0; }
        .noticia-detail .detail-body blockquote { border: 1px solid var(--border-color); padding: 12px 20px; margin: 16px 0; background: rgba(0,134,255,0.04); border-radius: 12px; font-style: italic; color: var(--text-muted); }
        .noticia-detail .detail-body ul, .noticia-detail .detail-body ol { padding-left: 20px; margin-bottom: 16px; }
        .noticia-detail .detail-body li { margin-bottom: 6px; }
        .noticia-detail .detail-body iframe { max-width: 100%; border-radius: 12px; margin: 16px 0; }
        .noticia-detail .detail-body a { color: var(--azul-01); }
        .noticia-detail .detail-body ul, .noticia-detail .detail-body ol { margin: 0 0 16px 20px; }
        .noticia-detail .detail-body li { margin-bottom: 6px; }
        .noticia-detail .detail-body img { max-width: 100%; border-radius: 12px; margin: 16px 0; }
        .noticia-detail .detail-body blockquote { border: 1px solid var(--border-color); padding: 12px 20px; margin: 16px 0; background: var(--bg-card); border-radius: 12px; font-style: italic; color: var(--text-muted); }
        .noticia-detail .detail-body strong { font-weight: 700; }
        .noticia-detail .n-loading { text-align: center; padding: 60px 20px; color: var(--text-muted); }
        .noticia-detail .n-loading .material-symbols-outlined { font-size: 40px; display: block; margin-bottom: 12px; }
        .noticia-detail .n-fallback { margin-top: 24px; padding: 16px 20px; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; font-size: 0.85rem; color: var(--text-muted); }

        /* ===== VIDEO HERO ===== */
        .video-hero { position: relative; border-radius: 24px; overflow: hidden; min-height: 360px; display: flex; align-items: center; margin-bottom: 40px; }
        .video-hero video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
        .video-hero .v-overlay { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(0,17,56,0.8), rgba(5,9,53,0.6)); }
        .video-hero .v-content { position: relative; z-index: 1; padding: 60px 50px; color: white; }
        .video-hero .v-content h1 { font-size: 3rem; font-weight: 800; margin-bottom: 10px; }
        .video-hero .v-content p { font-size: 1.2rem; color: #CDCDCD; max-width: 500px; margin-bottom: 0; }
        .video-hero .v-badge { display: inline-block; padding: 6px 14px; border-radius: 20px; background: rgba(0,134,255,0.2); border: 1px solid rgba(0,134,255,0.3); color: var(--azul-01); font-size: 0.75rem; font-weight: 700; margin-bottom: 16px; }

        /* loading spinner for news */
        @keyframes spin { to { transform: rotate(360deg); } }
        .n-spinner { display: inline-block; width: 20px; height: 20px; border: 2px solid var(--border-color); border-top-color: var(--azul-01); border-radius: 50%; animation: spin 0.8s linear infinite; vertical-align: middle; margin-right: 8px; }

        /* ===== FERRAMENTAS ===== */
        .ferr-hero { background: linear-gradient(135deg, var(--azul-02), #001f5e, var(--azul-08)); border-radius: 24px; padding: 50px 50px 40px; margin-bottom: 32px; color: white; position: relative; overflow: hidden; min-height: 280px; display: flex; flex-direction: column; justify-content: center; animation: ferrGradShift 8s ease infinite; background-size: 200% 200%; }
        @keyframes ferrGradShift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
        .ferr-hero::before { content: ''; position: absolute; right: -80px; top: -80px; width: 350px; height: 350px; background: radial-gradient(circle, rgba(0,134,255,0.2) 0%, transparent 70%); border-radius: 50%; animation: ferrPulse 4s ease-in-out infinite; }
        .ferr-hero::after { content: ''; position: absolute; left: 55%; bottom: -100px; width: 300px; height: 300px; background: radial-gradient(circle, rgba(255,255,255,0.05) 0%, transparent 70%); border-radius: 50%; animation: ferrPulse 5s ease-in-out infinite reverse; }
        @keyframes ferrPulse { 0%, 100% { transform: scale(1); opacity: 0.6; } 50% { transform: scale(1.1); opacity: 1; } }
        .ferr-hero-content { position: relative; z-index: 2; max-width: 55%; }
        .ferr-hero h1 { font-size: 2.6rem; font-weight: 800; margin-bottom: 8px; letter-spacing: -0.5px; line-height: 1.1; }
        .ferr-hero p { font-size: 1rem; color: rgba(255,255,255,0.7); margin-bottom: 20px; max-width: 500px; line-height: 1.5; }
        .ferr-hero .ferr-badge { display: inline-flex; align-items: center; gap: 8px; padding: 6px 16px; border-radius: 20px; background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.15); font-size: 0.75rem; font-weight: 700; margin-bottom: 14px; width: fit-content; }
        .ferr-badge .material-symbols-outlined { font-size: 18px; }
        .ferr-hero-stats { display: flex; gap: 20px; flex-wrap: wrap; }
        .ferr-hero-stat { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; padding: 10px 16px; text-align: center; min-width: 80px; }
        .ferr-hero-stat .num { font-size: 1.3rem; font-weight: 800; display: block; font-variant-numeric: tabular-nums; }
        .ferr-hero-stat .lbl { font-size: 0.6rem; color: rgba(255,255,255,0.5); text-transform: uppercase; letter-spacing: 1px; font-weight: 700; margin-top: 2px; }
        .ferr-hero-cards { position: absolute; right: 30px; top: 50%; transform: translateY(-50%); z-index: 2; display: flex; flex-direction: column; gap: 10px; }
        .ferr-hero-card { display: flex; align-items: center; gap: 10px; background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.12); border-radius: 12px; padding: 10px 14px; backdrop-filter: blur(8px); animation: ferrFloat 3s ease-in-out infinite; opacity: 0; min-width: 170px; }
        .ferr-hero-card:nth-child(1) { animation-delay: 0s; }
        .ferr-hero-card:nth-child(2) { animation-delay: 0.5s; }
        .ferr-hero-card:nth-child(3) { animation-delay: 1s; }
        .ferr-hero-card:nth-child(4) { animation-delay: 1.5s; }
        @keyframes ferrFloat { 0%, 100% { opacity: 0; transform: translateY(10px); } 10%, 90% { opacity: 1; transform: translateY(0); } }
        .ferr-hero-card .hc-icon { width: 32px; height: 32px; border-radius: 8px; background: rgba(0,134,255,0.2); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
        .ferr-hero-card .hc-icon .material-symbols-outlined { font-size: 18px; color: var(--azul-01); }
        .ferr-hero-card .hc-info { display: flex; flex-direction: column; }
        .ferr-hero-card .hc-info strong { font-size: 0.78rem; font-weight: 700; line-height: 1.2; }
        .ferr-hero-card .hc-info span { font-size: 0.6rem; color: rgba(255,255,255,0.5); }
        .ferr-hero-actions { display: flex; gap: 8px; margin-top: 16px; flex-wrap: wrap; }
        .ferr-hero-actions .ha-btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.15); background: rgba(255,255,255,0.06); color: white; font-size: 0.78rem; font-weight: 600; cursor: pointer; transition: 0.2s; font-family: inherit; }
        .ferr-hero-actions .ha-btn:hover { background: rgba(255,255,255,0.15); transform: translateY(-2px); }
        .ferr-hero-actions .ha-btn .material-symbols-outlined { font-size: 16px; }
        @media (max-width: 900px) { .ferr-hero-cards { display: none; } .ferr-hero-content { max-width: 100%; } }

        .ferr-toolbar { display: flex; align-items: center; gap: 16px; margin: 0 0 24px; flex-wrap: wrap; }
        .ferr-toolbar .edu-search { flex: 1; min-width: 200px; display: flex; align-items: center; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 0 14px; transition: 0.2s; }
        .ferr-toolbar .edu-search:focus-within { border-color: var(--azul-01); }
        .ferr-toolbar .edu-search .material-symbols-outlined { font-size: 20px; color: var(--text-muted); }
        .ferr-toolbar .edu-search input { background: none; border: none; outline: none; color: var(--text-primary); padding: 10px 10px; font-size: 0.85rem; width: 100%; font-family: inherit; }
        .ferr-toolbar .edu-search input::placeholder { color: var(--text-muted); }
        .ferr-toolbar .ferr-pills { display: flex; gap: 6px; flex-wrap: wrap; }
        .ferr-toolbar .ferr-pill { padding: 6px 16px; border-radius: 20px; border: 1px solid var(--border-color); background: transparent; color: var(--text-muted); font-size: 0.78rem; font-weight: 600; cursor: pointer; transition: 0.2s; font-family: inherit; }
        .ferr-toolbar .ferr-pill:hover { border-color: var(--azul-01); color: var(--azul-01); }
        .ferr-toolbar .ferr-pill.active { background: var(--azul-01); border-color: var(--azul-01); color: white; }

        .ferr-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 16px; }
        .ferr-card { display: flex; align-items: center; gap: 16px; padding: 20px 20px; border-radius: 16px; border: 1px solid var(--border-color); background: var(--bg-card); cursor: pointer; transition: 0.25s; }
        .ferr-card:hover { border-color: var(--azul-01); transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,134,255,0.1); }
        .ferr-card .f-icon { width: 52px; height: 52px; border-radius: 14px; background: rgba(0,134,255,0.08); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
        .ferr-card .f-icon .material-symbols-outlined { font-size: 26px; color: var(--azul-01); }
        .ferr-card .f-info h4 { font-size: 0.95rem; font-weight: 700; margin: 0 0 4px; }
        .ferr-card .f-info p { font-size: 0.78rem; color: var(--text-muted); margin: 0; line-height: 1.4; }
        .ferr-card .f-badge { font-size: 0.65rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; padding: 4px 10px; border-radius: 8px; background: rgba(0,134,255,0.08); color: var(--azul-01); margin-left: auto; flex-shrink: 0; }
        .ferr-empty { grid-column: 1/-1; text-align: center; padding: 60px 20px; color: var(--text-muted); }
        .ferr-empty .material-symbols-outlined { font-size: 48px; display: block; margin-bottom: 12px; }

        /* External tool viewer */
        .ferr-external { max-width: 1000px; margin: 0 auto; }
        .ferr-external .back-link { display: inline-flex; align-items: center; gap: 6px; color: var(--azul-01); cursor: pointer; font-weight: 600; font-size: 0.85rem; margin-bottom: 16px; }
        .ferr-external .back-link:hover { text-decoration: underline; }
        .ferr-external .f-header { margin-bottom: 16px; }
        .ferr-external .f-header h1 { font-size: 1.5rem; font-weight: 800; margin-bottom: 4px; }
        .ferr-external .f-header p { font-size: 0.85rem; color: var(--text-muted); margin: 0; }
        .ferr-external .f-frame-wrap { width: 100%; border-radius: 16px; overflow: hidden; border: 1px solid var(--border-color); background: white; }
        .ferr-external .f-frame-wrap iframe { width: 100%; height: 700px; border: none; display: block; }
    /* ===== HOME SEÇÃO NOTÍCIAS ===== */
        .home-news-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 18px; margin-bottom: 30px; }
        .home-news-card { border-radius: 16px; overflow: hidden; background: var(--bg-card); border: 1px solid var(--border-color); cursor: pointer; transition: transform 0.3s ease, border-color 0.3s ease, background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease, box-shadow 0.3s ease; display: flex; flex-direction: column; }
        .home-news-card:hover { border-color: var(--azul-01); transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,134,255,0.1); }
        .home-news-card .thumb { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
        .home-news-card .body { padding: 14px 16px 16px; flex: 1; display: flex; flex-direction: column; }
        .home-news-card .body .n-cat { display: inline-block; padding: 3px 10px; border-radius: 12px; font-size: 0.6rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; background: rgba(0,134,255,0.1); color: var(--azul-01); margin-bottom: 6px; align-self: flex-start; }
        .home-news-card .body h3 { font-size: 0.85rem; line-height: 1.35; margin-bottom: 4px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: var(--text-main); }
        .home-news-card .body p { font-size: 0.72rem; color: var(--text-muted); margin-bottom: 8px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; flex: 1; }
        .home-news-card .body .n-meta { display: flex; align-items: center; gap: 10px; font-size: 0.62rem; color: var(--text-muted); }

        /* ===== HOME SEÇÃO CURSOS ===== */
        .home-cursos-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; margin-bottom: 30px; }
        .home-curso-card { position: relative; border-radius: 14px; overflow: hidden; cursor: pointer; background: #0d0d0d; border: 1px solid rgba(255,255,255,0.06); transition: transform 0.4s ease, border-color 0.4s ease, background-color 0.4s ease, color 0.4s ease, opacity 0.4s ease, box-shadow 0.4s ease; display: flex; flex-direction: column; }
        .home-curso-card:hover { border-color: var(--azul-01); box-shadow: 0 16px 32px rgba(0,134,255,0.12); }
        .home-curso-card .thumb-wrap { position: relative; height: 130px; overflow: hidden; }
        .home-curso-card .thumb-wrap img { width: 100%; height: 100%; object-fit: cover; }
        .home-curso-card .thumb-wrap .badge { position: absolute; top: 8px; left: 8px; background: rgba(0,0,0,0.7); color: white; font-size: 0.6rem; font-weight: 700; padding: 3px 10px; border-radius: 20px; text-transform: uppercase; letter-spacing: 0.5px; backdrop-filter: blur(4px); border: 1px solid rgba(255,255,255,0.1); }
        .home-curso-card .body { padding: 12px 14px 6px; }
        .home-curso-card .body h3 { font-size: 0.85rem; font-weight: 700; margin-bottom: 3px; color: #eee; line-height: 1.3; }
        .home-curso-card .body p { font-size: 0.7rem; color: rgba(255,255,255,0.5); line-height: 1.4; margin: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
        .home-curso-card .footer { display: flex; align-items: center; gap: 8px; padding: 4px 14px 10px; }
        .home-curso-card .footer .hours { font-size: 0.65rem; color: rgba(255,255,255,0.35); display: flex; align-items: center; gap: 3px; }
        .home-curso-card .footer .cert-badge { font-size: 0.5rem; color: var(--azul-01); background: rgba(0,134,255,0.1); padding: 2px 8px; border-radius: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.3px; border: 1px solid rgba(255,255,255,0.15); }
        .home-curso-card .hover-reveal { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(5,8,20,0.92); backdrop-filter: blur(6px); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 16px; opacity: 0; transition: opacity 0.3s ease; text-align: center; z-index: 5; }
        .home-curso-card:hover .hover-reveal { opacity: 1; }
        .home-curso-card .hover-reveal .price { font-size: 1.1rem; font-weight: 800; color: var(--azul-01); margin-bottom: 2px; }
        .home-curso-card .hover-reveal .price-small { font-size: 0.62rem; color: rgba(255,255,255,0.5); margin-bottom: 6px; }
        .home-curso-card .hover-reveal .instructor { font-size: 0.72rem; color: rgba(255,255,255,0.8); margin-bottom: 2px; }
        .home-curso-card .hover-reveal .instructor-label { font-size: 0.55rem; color: rgba(255,255,255,0.35); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px; }
        .home-curso-card .hover-reveal .btn-account { font-size: 0.7rem; padding: 6px 16px; }

        /* ===== HOME HERO ROTATING TEXT ===== */
        .hero-rotator { display: inline; }
        .hero-rotator .rotating-text { color: #60B0FF; font-weight: 800; transition: opacity 0.5s; }

        /* ===== HOME VER MAIS LINK ===== */
        .home-ver-mais { display: inline-flex; align-items: center; gap: 6px; color: var(--azul-01); font-weight: 700; font-size: 0.85rem; cursor: pointer; transition: 0.2s; text-decoration: none; margin-left: auto; }
        .home-ver-mais:hover { gap: 10px; opacity: 0.8; }
        .section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
        .section-header .section-title { margin-bottom: 0; border-bottom: none; padding-bottom: 0; }

        /* ===== FOOTER ===== */
        .site-footer { background: #060912; padding: 40px 0 0; margin: 0; color: rgba(255,255,255,0.5); font-size: 0.82rem; flex-shrink: 0; }
        .site-footer .f-inner { max-width: 1100px; margin: 0 auto; padding: 0 40px 24px; display: flex; flex-wrap: wrap; justify-content: center; gap: 40px 60px; }
        .site-footer .f-brand { display: flex; flex-direction: column; gap: 6px; align-items: center; text-align: center; min-width: 200px; }
        .site-footer .f-contact { display: flex; flex-direction: column; gap: 8px; align-items: center; text-align: center; min-width: 200px; }
        .site-footer .f-social { display: flex; flex-direction: column; gap: 8px; align-items: center; text-align: center; min-width: 140px; }
        .site-footer .f-brand .f-logo { display: flex; align-items: center; }
        .site-footer .f-brand .f-logo img { height: 38px; filter: brightness(0) invert(1); }
        .site-footer .f-brand .f-slogan { font-size: 0.75rem; color: rgba(255,255,255,0.4); font-style: italic; max-width: 280px; line-height: 1.4; }
        .site-footer .f-contact { display: flex; flex-direction: column; gap: 8px; text-align: left; }
        .site-footer .f-contact .f-label { font-weight: 700; color: rgba(255,255,255,0.7); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 2px; }
        .site-footer .f-contact a { color: rgba(255,255,255,0.5); text-decoration: none; transition: 0.2s; display: flex; align-items: flex-start; gap: 8px; line-height: 1.4; }
        .site-footer .f-contact a:hover { color: var(--azul-01); }
        .site-footer .f-contact .material-symbols-outlined { font-size: 16px; }
        .site-footer .f-social { display: flex; flex-direction: column; gap: 8px; }
        .site-footer .f-social .f-label { font-weight: 700; color: rgba(255,255,255,0.7); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 2px; }
        .site-footer .f-social .f-icons { display: flex; gap: 10px; flex-wrap: wrap; }
        .site-footer .f-social .f-icons a { display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 10px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); color: rgba(255,255,255,0.5); text-decoration: none; transition: 0.2s; }
        .site-footer .f-social .f-icons a:hover { background: var(--azul-01); color: white; border-color: var(--azul-01); transform: translateY(-2px); }
        .site-footer .f-site-link { margin-top: 4px; }
        .site-footer .f-site-link a { display: inline-flex; align-items: center; gap: 4px; color: var(--azul-01); font-weight: 600; text-decoration: none; font-size: 0.82rem; }
        .site-footer .f-site-link a:hover { text-decoration: underline; }
        .site-footer .f-bottom { border-top: 1px solid rgba(255,255,255,0.05); padding: 14px 40px; text-align: center; font-size: 0.7rem; color: rgba(255,255,255,0.35); }
        @media (max-width: 768px) { .site-footer .f-inner { grid-template-columns: 1fr; gap: 24px; } .site-footer { padding: 24px 0 0; } }

        /* =========================================
           AVISO DE COOKIES (LGPD) — flutuante esquerda
           ========================================= */
        .cookie-notice { position: fixed; bottom: 90px; left: 24px; z-index: 9999; background: #0e1320; border: 1px solid rgba(255,255,255,0.08); border-radius: 14px; padding: 16px 18px; display: none; flex-direction: column; gap: 12px; color: rgba(255,255,255,0.75); font-size: 0.78rem; line-height: 1.5; max-width: 280px; box-shadow: 0 8px 32px rgba(0,0,0,0.4); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
        .cookie-notice.show { display: flex; }
        .cookie-notice p { margin: 0; }
        .cookie-notice a { color: var(--azul-01); text-decoration: none; font-weight: 600; }
        .cookie-notice a:hover { text-decoration: underline; }
        .cookie-notice .cn-actions { display: flex; gap: 8px; }
        .cookie-notice .cn-btn { padding: 6px 14px; border-radius: 8px; font-size: 0.75rem; font-weight: 700; border: none; cursor: pointer; transition: 0.2s; }
        .cookie-notice .cn-btn.accept { background: var(--azul-01); color: white; flex: 1; }
        .cookie-notice .cn-btn.accept:hover { background: var(--azul-02); }
        .cookie-notice .cn-btn.dismiss { background: rgba(255,255,255,0.06); color: rgba(255,255,255,0.5); }
        .cookie-notice .cn-btn.dismiss:hover { background: rgba(255,255,255,0.1); }
        @media (max-width: 600px) { .cookie-notice { left: 12px; right: 12px; bottom: 80px; max-width: none; } }



        /* =========================================
           CARTEIRAS RECOMENDADAS
           ========================================= */
        .carteiras-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 24px; margin-top: 32px; margin-bottom: 40px; }
        .carteira-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 20px; overflow: hidden; cursor: pointer; transition: transform 0.3s, border-color 0.3s, background-color 0.3s, color 0.3s, opacity 0.3s, box-shadow 0.3s; }
        .carteira-card:hover { border-color: var(--azul-01); transform: translateY(-4px); box-shadow: 0 12px 40px rgba(0,134,255,0.15); }
        .carteira-card .cc-img { width: 100%; height: 120px; object-fit: cover; border-bottom: 1px solid var(--border-color); }
        .carteira-card .cc-body { padding: 18px 20px 20px; }
        .carteira-card .cc-badge { display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; border-radius: 20px; background: rgba(0,134,255,0.1); color: var(--azul-01); font-size: 0.7rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 10px; }
        .carteira-card .cc-name { font-size: 1.05rem; font-weight: 700; color: var(--text-main); margin-bottom: 6px; line-height: 1.25; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
        .carteira-card .cc-meta { font-size: 0.82rem; color: var(--text-muted); margin-bottom: 12px; }
        .carteira-card .cc-author { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; }
        .carteira-card .cc-author img { width: 26px; height: 26px; border-radius: 50%; object-fit: cover; }
        .carteira-card .cc-author span { font-size: 0.78rem; color: var(--text-muted); }
        .carteira-card .cc-stats { display: flex; gap: 12px; padding-top: 12px; border-top: 1px solid var(--border-color); }
        .carteira-card .cc-stat { flex: 1; text-align: center; }
        .carteira-card .cc-stat .val { font-size: 1.1rem; font-weight: 800; }
        .carteira-card .cc-stat .val.positive { color: #00C853; }
        .carteira-card .cc-stat .val.negative { color: #FF5252; }
        .carteira-card .cc-stat .lbl { font-size: 0.62rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.3px; font-weight: 600; margin-top: 2px; }
        .cc-tags { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 10px; }
        .cc-tag { font-size: 0.62rem; padding: 2px 8px; border-radius: 4px; background: rgba(0,134,255,0.06); color: var(--azul-01); border: 1px solid rgba(0,134,255,0.12); font-weight: 600; letter-spacing: 0.2px; }
        .carteiras-tagbar { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 32px; margin-bottom: 4px; }
        .ct-filter { font-size: 0.75rem; padding: 5px 12px; border-radius: 16px; background: var(--bg-card); border: 1px solid var(--border-color); color: var(--text-muted); cursor: pointer; transition: transform 0.2s, border-color 0.2s, background-color 0.2s, color 0.2s, opacity 0.2s, box-shadow 0.2s; font-weight: 600; user-select: none; }
        .ct-filter:hover { border-color: var(--azul-01); color: var(--azul-01); }
        .ct-filter-ativa { background: var(--azul-01); color: white; border-color: var(--azul-01); }
        .ct-filter small { font-weight: 400; opacity: 0.7; }

        .carteira-loading { text-align: center; padding: 60px 20px; color: var(--text-muted); }
        .carteira-loading .n-spinner { display: inline-block; width: 28px; height: 28px; border: 3px solid var(--border-color); border-top-color: var(--azul-01); border-radius: 50%; animation: spin 0.8s linear infinite; margin-bottom: 12px; }
        .carteira-error { text-align: center; padding: 60px 20px; }
        .carteira-error .material-symbols-outlined { font-size: 40px; color: var(--text-muted); margin-bottom: 12px; }
        .carteira-error h3 { color: var(--text-main); margin-bottom: 6px; }
        .carteira-error p { color: var(--text-muted); font-size: 0.9rem; }

        /* Detail */
        .carteira-detail { padding: 0; }
        .carteira-detail .cd-back { display: inline-flex; align-items: center; gap: 6px; color: var(--azul-01); font-weight: 600; font-size: 0.9rem; cursor: pointer; text-decoration: none; margin-bottom: 20px; }
        .carteira-detail .cd-back:hover { text-decoration: underline; }
        .carteira-detail .cd-header { position: relative; padding: 36px 40px; border-radius: 24px; overflow: hidden; margin-bottom: 28px; }
        .carteira-detail .cd-header-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(0.3); z-index: 1; }
        .carteira-detail .cd-header-overlay { position: absolute; inset: 0; background: linear-gradient(135deg, var(--azul-04), rgba(0,3,32,0.85), var(--azul-08)); z-index: 2; }
        .carteira-detail .cd-header-content { position: relative; z-index: 3; }
        .carteira-detail .cd-header h1 { color: white; font-size: 2.2rem; font-weight: 800; line-height: 1.1; margin-bottom: 10px; }
        .carteira-detail .cd-header .cd-subtitle { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 14px; color: #CDCDCD; font-size: 0.85rem; }
        .carteira-detail .cd-header .cd-subtitle span { display: flex; align-items: center; gap: 6px; }
        .carteira-detail .cd-header .cd-desc { color: #CDCDCD; font-size: 0.92rem; line-height: 1.6; margin-bottom: 18px; max-width: 700px; }
        .carteira-detail .cd-authors { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 18px; }
        .carteira-detail .cd-author { display: flex; align-items: center; gap: 10px; background: rgba(255,255,255,0.08); padding: 8px 14px; border-radius: 12px; border: 1px solid rgba(255,255,255,0.1); }
        .carteira-detail .cd-author img { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; }
        .carteira-detail .cd-author .cd-author-info { display: flex; flex-direction: column; }
        .carteira-detail .cd-author .cd-author-name { font-size: 0.82rem; font-weight: 700; color: white; }
        .carteira-detail .cd-author .cd-author-occ { font-size: 0.68rem; color: rgba(255,255,255,0.55); }
        .carteira-detail .cd-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; margin-bottom: 28px; }
        .carteira-detail .cd-stat-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 16px; padding: 18px; text-align: center; }
        .carteira-detail .cd-stat-card .val { font-size: 1.5rem; font-weight: 800; }
        .carteira-detail .cd-stat-card .val.positive { color: #00C853; }
        .carteira-detail .cd-stat-card .val.negative { color: #FF5252; }
        .carteira-detail .cd-stat-card .lbl { font-size: 0.68rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.5px; font-weight: 600; margin-top: 4px; }
        .carteira-detail .cd-section-title { font-size: 1.15rem; font-weight: 700; color: var(--text-main); margin-bottom: 14px; display: flex; align-items: center; gap: 8px; }
        .carteira-detail .cd-holdings-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; margin-bottom: 28px; }
        .carteira-detail .cd-holding { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 14px; padding: 14px; transition: 0.2s; }
        .carteira-detail .cd-holding:hover { border-color: var(--azul-01); }
        .carteira-detail .cd-holding-top { display: flex; align-items: center; gap: 12px; }
        .carteira-detail .cd-holding .cd-hold-img { width: 40px; height: 40px; border-radius: 8px; object-fit: contain; background: rgba(255,255,255,0.05); padding: 4px; flex-shrink: 0; }
        .carteira-detail .cd-holding .cd-hold-info { flex: 1; min-width: 0; }
        .carteira-detail .cd-holding .cd-hold-info .cd-hold-ticker { font-size: 0.72rem; font-weight: 800; color: var(--azul-01); text-transform: uppercase; letter-spacing: 0.5px; }
        .carteira-detail .cd-holding .cd-hold-info .cd-hold-company { font-size: 0.85rem; font-weight: 600; color: var(--text-main); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
        .carteira-detail .cd-holding .cd-hold-info .cd-hold-sector { font-size: 0.68rem; color: var(--text-muted); }
        .carteira-detail .cd-holding .cd-hold-weight-box { text-align: right; flex-shrink: 0; }
        .carteira-detail .cd-holding .cd-hold-weight-box .cd-hold-weight { font-size: 1rem; font-weight: 800; color: var(--azul-01); }
        .carteira-detail .cd-holding .cd-hold-weight-box .cd-hold-weight-lbl { font-size: 0.6rem; color: var(--text-muted); text-transform: uppercase; }
        .carteira-detail .cd-holding .cd-hold-fundamentals { margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--border-color); display: flex; gap: 12px; font-size: 0.7rem; color: var(--text-muted); flex-wrap: wrap; }
        .carteira-detail .cd-holding .cd-hold-fundamentals span { background: rgba(255,255,255,0.04); padding: 3px 8px; border-radius: 6px; }
        .carteira-detail .cd-holding .cd-hold-fundamentals span strong { color: var(--text-main); font-weight: 600; }
        .carteira-detail .cd-sector-bars { display: flex; flex-direction: column; gap: 8px; margin-bottom: 28px; }
        .carteira-detail .cd-sector-bar-row { display: flex; align-items: center; gap: 12px; }
        .carteira-detail .cd-sector-bar-row .sector-name { min-width: 150px; font-size: 0.8rem; color: var(--text-main); font-weight: 600; }
        .carteira-detail .cd-sector-bar-row .sector-bar-bg { flex: 1; height: 22px; background: rgba(255,255,255,0.05); border-radius: 11px; overflow: hidden; }
        .carteira-detail .cd-sector-bar-row .sector-bar { height: 100%; border-radius: 11px; background: linear-gradient(90deg, var(--azul-01), var(--azul-04)); transition: width 0.6s ease; }
        .carteira-detail .cd-sector-bar-row .sector-pct { min-width: 48px; text-align: right; font-size: 0.82rem; font-weight: 700; color: var(--azul-01); }
        .carteira-detail .cd-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 24px; }
        .carteira-detail .cd-actions a, .carteira-detail .cd-actions button { display: inline-flex; align-items: center; gap: 8px; }
        .carteira-detail .cd-empty { text-align: center; padding: 40px; color: var(--text-muted); }
        .carteira-detail .cd-empty .material-symbols-outlined { font-size: 36px; margin-bottom: 10px; }

        /* =========================================
           TABLET 768–1200px
           ========================================= */
        @media (max-width: 1279px) and (min-width: 1024px) {
            .acoes-hero-grid { grid-template-columns: minmax(0, 42fr) minmax(0, 58fr); gap: 32px; }
            .acoes-hero-container { padding: 56px 32px 48px; }
            .acoes-hero-title { font-size: 64px; }
            .acoes-hero-desc { font-size: 17px; }
            .acoes-benefits { gap: 16px; }
            .acoes-dashboard { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 14px; }
        }
        @media (max-width: 1023px) {
            .acoes-hero-grid { grid-template-columns: minmax(0,1fr); gap: 36px; }
            .acoes-hero-container { padding: 40px 24px 40px; }
            .acoes-hero-title { font-size: 48px; }
            .acoes-hero-desc { font-size: 16px; max-width: 100%; }
            .acoes-benefits { gap: 16px; grid-template-columns: repeat(2, minmax(0,1fr)); }
        }
        @media (max-width: 699px) {
            .acoes-hero-container { padding: 32px 16px 32px; }
            .acoes-hero-title { font-size: 36px; }
            .acoes-hero-desc { font-size: 15px; }
            .acoes-benefits { grid-template-columns: minmax(0,1fr); }
            .acoes-dashboard { grid-template-columns: minmax(0,1fr); grid-template-areas: "ibov" "altas" "baixas" "volume" "footer"; grid-template-rows: auto; }
            .acoes-buttons { flex-direction: column; }
            .acoes-btn-primary, .acoes-btn-secondary { width: 100%; justify-content: center; }
            .acoes-footer-bar { padding: 0 16px; gap: 10px; }
            .ibov-card .ibov-chart-wrap { height: 100px; }
            .ibov-card .ibov-chart-y { display: none; }
        }

        /* =========================================
           MOBILE < 768px
           ========================================= */
        @media (max-width: 767px) {
            .sidebar-overlay { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.55); z-index: 1049; }
            .sidebar-overlay.open { display: block; }

            .sidebar { position: fixed; top: 0; left: 0; bottom: 0; z-index: 1050; width: 280px; transform: translateX(-100%); transition: transform 0.3s ease, background-color 0.3s; border-right: 1px solid var(--border-color); }
            .sidebar.open { transform: translateX(0); }
            .sidebar.collapsed { width: 280px; }
            .sidebar.collapsed .sidebar-header img:not(.logo-simbolo) { display: block; }
            .sidebar.collapsed .sidebar-header .logo-simbolo { display: none; }
            .sidebar.collapsed .nav-title span.text, .sidebar.collapsed .nav-title .material-symbols-outlined { display: inline; }
            .sidebar.collapsed .sidebar-nav a span.menu-text { display: inline; }
            .sidebar.collapsed .btn-account span { display: inline; }
            .sidebar.collapsed .btn-account::before { content: none; }
            .sidebar.collapsed #cat-icon { display: inline; }
            .sidebar.collapsed #ferr-icon { display: block; }
            .sidebar.collapsed .ferramentas-header .menu-text { display: inline; }
            .sidebar.collapsed .nav-children { display: block; }
            .sidebar.collapsed #categorias-list { display: block; margin-left: 20px; padding-left: 10px; border-left: 1px solid var(--azul-05); }
            .sidebar.collapsed .categoria-header { margin-bottom: 5px; background: rgba(255,255,255,0.05); }

            .main-content { width: 100%; }
            .topbar { padding: 10px 16px; gap: 8px; }
            .topbar-search input { width: 120px; font-size: 0.82rem; }
            .topbar > div:last-child { gap: 10px; }

            .page-container { padding: 16px; }

            .ibov-card .ibov-price { font-size: 1.6rem; }
            .ibov-card .ibov-chart-wrap { height: 40px; }
            .ibov-card .ibov-stats { gap: 4px; }
            .ibov-card .ibov-chart-y { display: none; }

            .section-title { font-size: 1.3rem; }
            .section-desc { font-size: 0.88rem; }

            .calc-container, .comp-grid, .intl-simulator-wrap, .seg-simulator { grid-template-columns: 1fr; }
            .comp-panel { border-right: none; border-bottom: 1px solid var(--border-color); }

            .home-market-grid, .home-live-strip { grid-template-columns: 1fr; }
            .home-card-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
            .home-card { padding: 16px; }
            .home-card h3 { font-size: 0.85rem; }

            .cnr-features-grid, .agro-grid-top, .fin-path, .fin-doc-grid { grid-template-columns: 1fr; }
            .pj-hero { grid-template-columns: 1fr; padding: 24px; }
            .pj-benefits { grid-template-columns: 1fr; }
            .pj-products { grid-template-columns: 1fr; }
            .crypto-deep-dive, .crypto-custody { grid-template-columns: 1fr; }
            .intl-market-board { grid-template-columns: 1fr; }
            .intl-converter-grid { grid-template-columns: 1fr; }
            .prev-sim-grid, .prev-compare, .prev-tax-grid { grid-template-columns: 1fr; }
            .ferr-hero-cards { display: none; }
            .ferr-hero-content { max-width: 100%; }
            .edu-hero { flex-direction: column; text-align: center; padding: 24px 16px; }
            .artigos-hero { flex-direction: column; text-align: center; padding: 24px 16px; }
            .seg-orbit { display: none; }

            #sidebar-toggle { display: flex; align-items: center; justify-content: center; }
            body { overflow-x: hidden; }
            .edu-player-bar { left: 0 !important; }

            /* mobile: larger pill filters */
            .edu-toolbar .filter-pill,
            .edu-videos-toolbar .filter-pill,
            .artigos-toolbar .filter-pill,
            .noticias-toolbar .n-filter-pill,
            .ferr-toolbar .ferr-pill { font-size: 0.9rem; padding: 8px 18px; }
            .edu-toolbar .filter-pills,
            .edu-videos-toolbar .filter-pills,
            .artigos-toolbar .filter-pills,
            .noticias-toolbar .n-filter-pills,
            .ferr-toolbar .ferr-pills { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
            .edu-toolbar .filter-pills::-webkit-scrollbar,
            .edu-videos-toolbar .filter-pills::-webkit-scrollbar,
            .artigos-toolbar .filter-pills::-webkit-scrollbar,
            .noticias-toolbar .n-filter-pills::-webkit-scrollbar,
            .ferr-toolbar .ferr-pills::-webkit-scrollbar { display: none; }
            .edu-toolbar,
            .edu-videos-toolbar,
            .artigos-toolbar,
            .noticias-toolbar,
            .ferr-toolbar { flex-direction: column; align-items: stretch; gap: 10px; }

            /* mobile: banking hero */
            .hero-banking { flex-direction: column; padding: 24px 16px; min-height: auto; gap: 30px; }
            .hero-banking-content { max-width: 100%; }
            .hero-banking-content h1 { font-size: 1.8rem; }
            .metrics-banking { gap: 24px; margin-top: 24px; }
            .metric-box h3 { font-size: 1.6rem; }
            .banking-card-section { width: 100%; }
            .banking-card-display { flex-direction: column; gap: 20px; }
            .floating-card-wrapper { width: 280px; height: 176px; }
            .banking-features { min-width: auto; width: 100%; padding: 16px 20px; }
            .banking-eligibility { padding: 24px 16px; }
            .eligibility-grid { grid-template-columns: 1fr; }
            .eligibility-card { padding: 24px; }
        }

        /* =========================================
           RELEASE POLISH — DIVERSA
           ========================================= */
        :root {
            --surface-subtle: #EEF3F8;
            --focus-ring: #0086FF;
            --success: #168A45;
            --warning: #A85B00;
            --danger: #C62828;
        }
        [data-theme="dark"] {
            --surface-subtle: #07142F;
            --success: #58D68D;
            --warning: #FFCA72;
            --danger: #FF7B7B;
        }
        ::selection { background: rgba(0, 134, 255, 0.24); color: var(--text-main); }
        input, textarea { caret-color: var(--azul-01); }
        :where(button, a, input, select, textarea, [role="button"]):focus-visible {
            outline: 3px solid color-mix(in srgb, var(--focus-ring) 70%, white);
            outline-offset: 3px;
        }
        button:disabled { cursor: wait; opacity: 0.65; transform: none !important; }
        .sidebar-nav a { min-height: 44px; }
        .action-icon, #lang-toggle, #sidebar-toggle { min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
        .action-icon { display: inline-flex; }
        .section-desc { color: var(--text-muted); margin: -18px 0 24px; max-width: 72ch; line-height: 1.65; }

        .home-reports-heading { margin-top: 44px; }
        .home-reports-heading .material-symbols-outlined { color: var(--azul-01); vertical-align: middle; margin-right: 6px; }
        .home-reports-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
        .home-report-feature { display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: center; padding: 24px; border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color); cursor: pointer; transition: border-color .2s ease, background-color .2s ease; }
        .home-report-feature:hover { border-color: var(--azul-01); background: color-mix(in srgb, var(--azul-01) 5%, transparent); }
        .home-report-icon { width: 46px; height: 46px; display: grid; place-items: center; color: var(--azul-01); background: color-mix(in srgb, var(--azul-01) 10%, transparent); border-radius: 12px; }
        .home-report-meta { color: var(--azul-02); font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
        .home-report-feature h3 { margin: 4px 0; font-size: 1rem; }
        .home-report-feature p { color: var(--text-muted); font-size: .82rem; line-height: 1.55; margin: 0; }
        .home-report-arrow { color: var(--azul-01); }

        .home-newsletter { margin-top: 52px; padding: 34px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .85fr); gap: 38px; align-items: center; color: white; background: linear-gradient(120deg, var(--azul-04), var(--azul-03)); border-radius: 20px; }
        .home-newsletter-copy { display: flex; gap: 18px; align-items: flex-start; }
        .home-newsletter-copy > .material-symbols-outlined { font-size: 34px; color: var(--azul-01); }
        .home-newsletter h2 { font-size: clamp(1.45rem, 2vw, 2rem); line-height: 1.16; margin: 0 0 8px; }
        .home-newsletter p { color: #C7D4E8; line-height: 1.55; margin: 0; }
        .home-newsletter-form label { display: block; margin-bottom: 8px; font-size: .8rem; font-weight: 700; color: #D9E5F4; }
        .home-newsletter-row { display: flex; gap: 10px; }
        .home-newsletter-row input { flex: 1; min-width: 0; min-height: 48px; border-radius: 10px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.09); color: white; padding: 0 15px; }
        .home-newsletter-row input::placeholder { color: #9FB0C7; }
        .home-newsletter-row .btn-account { width: auto; min-height: 48px; padding-inline: 22px; }
        .newsletter-status { margin-top: 9px !important; font-size: .74rem; color: #AFC1D9 !important; }
        .newsletter-status.is-error { color: #FF9E9E !important; }
        .newsletter-status.is-warning { color: #FFD38A !important; }
        .newsletter-status.is-success { color: #7DE5A8 !important; }

        .rf-intro-grid { max-width: 1320px; margin: 38px auto 0; padding: 0 40px; display: grid; grid-template-columns: 1.2fr .8fr; gap: 24px; }
        .rf-intro-copy { display: flex; gap: 18px; align-items: flex-start; padding: 30px 0; border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color); }
        .rf-intro-copy > .material-symbols-outlined { color: var(--azul-01); font-size: 34px; }
        .rf-intro-copy h2, .rf-intro-action h3 { margin: 0 0 10px; }
        .rf-intro-copy p, .rf-intro-action p { color: var(--text-muted); line-height: 1.65; margin: 0; }
        .rf-intro-action { padding: 28px; background: var(--surface-subtle); border-radius: 16px; }
        .rf-intro-action .primary-button { margin-top: 20px; min-width: 0; }

        .agro-hero-copy { position: relative; z-index: 2; max-width: 720px; }
        .agro-contract-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: -14px 24px 54px; background: var(--border-color); border: 1px solid var(--border-color); border-radius: 14px; overflow: hidden; position: relative; z-index: 3; }
        .agro-contract-strip > div { background: var(--bg-card); padding: 16px 18px; display: flex; justify-content: space-between; align-items: center; gap: 8px; }
        .agro-contract-strip strong { color: var(--azul-02); font-size: .82rem; }
        .agro-contract-strip span { color: var(--text-muted); font-size: .76rem; }
        .agro-contract-strip p { grid-column: 1 / -1; padding: 9px 16px; background: var(--surface-subtle); color: var(--text-muted); font-size: .72rem; margin: 0; }
        .agro-hedge-tool { display: grid; grid-template-columns: 1.15fr .85fr; gap: 24px; margin-bottom: 52px; padding: 30px; background: var(--azul-04); color: white; border-radius: 20px; }
        .agro-hedge-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; }
        .agro-hedge-form .form-group { margin: 0; }
        .agro-hedge-form label { color: #C7D4E8; }
        .agro-hedge-form input { min-height: 46px; background: rgba(255,255,255,.08); color: white; border-color: rgba(255,255,255,.18); }
        .agro-hedge-form input[type="range"] { min-height: 32px; }
        #agro-cobertura-label { color: var(--azul-01); font-weight: 800; }
        .agro-hedge-result { display: flex; gap: 16px; align-items: center; padding: 28px; border: 1px solid rgba(0,134,255,.35); background: rgba(0,134,255,.1); border-radius: 16px; }
        .agro-hedge-result > .material-symbols-outlined { font-size: 42px; color: var(--azul-01); }
        .agro-hedge-result small { display: block; color: #9FB0C7; text-transform: uppercase; letter-spacing: .08em; }
        .agro-hedge-result strong { display: block; font-size: 1.8rem; margin: 6px 0; }
        .agro-hedge-result p { color: #C7D4E8; line-height: 1.55; margin: 0; }
        .agro-intelligence-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: var(--border-color); border-block: 1px solid var(--border-color); margin-bottom: 54px; }
        .agro-intelligence-grid article { display: flex; gap: 15px; padding: 26px; background: var(--bg-body); cursor: pointer; }
        .agro-intelligence-grid article:hover { background: var(--surface-subtle); }
        .agro-intelligence-grid .material-symbols-outlined { color: var(--azul-01); font-size: 28px; }
        .agro-intelligence-grid small { color: var(--azul-02); font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
        .agro-intelligence-grid h3 { margin: 5px 0; font-size: 1rem; }
        .agro-intelligence-grid p { color: var(--text-muted); font-size: .82rem; line-height: 1.5; margin: 0; }

        .banking-accounts-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .banking-calculators { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 40px; }

        .intl-hero-copy { max-width: 760px; }
        .intl-compare-tool { display: grid; grid-template-columns: 1.1fr .9fr; gap: 24px; margin-bottom: 44px; padding: 30px; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 18px; }
        .intl-compare-inputs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; }
        .intl-compare-inputs .form-group { margin: 0; }
        .intl-compare-result { display: flex; flex-direction: column; gap: 12px; justify-content: center; padding: 24px; background: var(--surface-subtle); border-radius: 14px; }
        .intl-compare-result > div { display: flex; justify-content: space-between; gap: 18px; padding-bottom: 10px; border-bottom: 1px solid var(--border-color); }
        .intl-compare-result span { color: var(--text-muted); }
        .intl-compare-result strong { font-variant-numeric: tabular-nums; }
        .intl-compare-result p { color: var(--text-main); font-weight: 700; line-height: 1.5; margin: 4px 0 0; }
        .intl-compare-result small { color: var(--text-muted); line-height: 1.5; }

        @media (max-width: 900px) {
            .home-newsletter, .rf-intro-grid, .agro-hedge-tool, .intl-compare-tool { grid-template-columns: 1fr; }
            .home-reports-grid { grid-template-columns: 1fr; }
            .banking-accounts-grid, .banking-calculators { grid-template-columns: 1fr; }
            .agro-intelligence-grid { grid-template-columns: 1fr; }
        }

        @media (max-width: 767px) {
            .topbar { min-height: 60px; }
            .topbar > div:last-child { gap: 2px; }
            .action-icon, #lang-toggle, #sidebar-toggle { min-width: 40px !important; width: 40px !important; min-height: 40px !important; height: 40px !important; }
            .home-newsletter { padding: 26px 20px; gap: 24px; }
            .home-newsletter-copy { flex-direction: column; gap: 10px; }
            .home-newsletter-row { flex-direction: column; }
            .home-newsletter-row .btn-account { width: 100%; }
            .home-report-feature { grid-template-columns: auto 1fr; padding: 20px 4px; }
            .home-report-arrow { display: none; }
            .rf-intro-grid { padding: 0 16px; margin-top: 24px; }
            #rendafixa .fixed-income-title { font-size: clamp(2.7rem, 13vw, 3.35rem); line-height: 1.02; letter-spacing: -0.035em; overflow-wrap: anywhere; }
            #rendafixa .fixed-income-title span { white-space: normal; }
            #rendafixa .fixed-income-title .fixed-income-title-highlight { font-size: .94em; white-space: nowrap; }
            #rendafixa .fixed-income-hero-container { padding: 30px 24px 44px; }
            .agro-hero-copy, .intl-hero-copy { max-width: 100%; }
            #agro > .hero-banner, #internacional > .hero-banner { padding: 34px 28px; min-height: 0; }
            #agro > .hero-banner h1 { font-size: clamp(2.5rem, 14vw, 3.4rem) !important; }
            #agro > .hero-banner p, #internacional > .hero-banner p { font-size: 1rem !important; max-width: 30ch; }
            #internacional > .hero-banner h1 { font-size: clamp(2rem, 10vw, 2.8rem); overflow-wrap: anywhere; }
            .agro-contract-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: -8px 8px 40px; }
            .agro-hedge-tool { padding: 22px 18px; }
            .agro-hedge-form, .intl-compare-inputs { grid-template-columns: 1fr; }
            .agro-hedge-result { padding: 22px 18px; align-items: flex-start; }
            .agro-card-commodities { padding: 26px 20px; }
            .agro-card-commodities > div { min-width: 0 !important; width: 100%; }
            .agro-card-commodities > div:last-child { flex-direction: column; width: 100%; }
            .agro-mini-ticker { width: 100%; }
            .agro-calc-container { padding: 22px 16px; gap: 20px; overflow: hidden; }
            .agro-calc-container > div { min-width: 0; }
            .agro-calc-input-box, .agro-calc-result-item { padding: 22px 18px; min-width: 0; }
            .agro-calc-container > div:first-child > div:last-child { flex-direction: column; }
            .agro-calc-container > div:last-child > div:last-child { flex-direction: column; align-items: stretch !important; padding: 20px !important; }
            .agro-calc-container > div:last-child > div:last-child > div:last-child { text-align: left !important; width: 100%; }
            #agro-diff { max-width: 100%; overflow-wrap: anywhere; }
            .banking-calculators { margin-bottom: 28px; }
            #banking .calc-container > div { padding: 22px 18px !important; min-width: 0; }
            #banking .calc-container strong { overflow-wrap: anywhere; }
            .intl-compare-tool { padding: 22px 18px; }
        }

        /* =========================================
           DIVERSA 2026 — CONSTELAÇÃO DE DECISÕES
           Referências adaptadas: Aether Flow + Golden Spiral (21st.dev)
           ========================================= */
        :root {
            --azul-01: #078BFF;
            --azul-02: #0757D3;
            --azul-03: #08265D;
            --azul-04: #020718;
            --azul-05: #09132C;
            --azul-08: #0B3478;
            --bg-body: #F2F5F9;
            --bg-card: #FFFFFF;
            --bg-sidebar: #020718;
            --bg-topbar: rgba(255,255,255,.96);
            --text-main: #09142B;
            --text-muted: #58657A;
            --border-color: #D9E1EB;
            --input-bg: #F0F4F8;
            --border-radius: 14px;
            --display-font: 'Archivo', sans-serif;
            --body-font: 'Manrope', sans-serif;
            --diversa-ease: cubic-bezier(.16, 1, .3, 1);
        }
        [data-theme="dark"] {
            --bg-body: #040817;
            --bg-card: #091126;
            --bg-sidebar: #01040E;
            --bg-topbar: rgba(5,10,25,.96);
            --text-main: #F4F7FC;
            --text-muted: #A5B1C4;
            --border-color: #1D2A43;
            --input-bg: #0D1932;
        }
        * { font-family: var(--body-font); }
        h1, h2, h3, h4, h5, h6, .section-title { font-family: var(--display-font); }
        body { letter-spacing: -.008em; }
        button, input, select, textarea { font: inherit; }
        a { text-underline-offset: .22em; }
        ::selection { background: #0A70D8; color: #FFFFFF; }

        /* Shared shell */
        .sidebar {
            width: 256px;
            background: var(--bg-sidebar);
            border-right: 1px solid rgba(130,167,220,.14);
            box-shadow: 12px 0 36px rgba(0,5,20,.12);
        }
        .sidebar-header { height: 88px; padding: 24px 26px; justify-content: flex-start; }
        .sidebar-header img:not(.logo-simbolo) { display: block; width: 132px; }
        .sidebar-header .logo-simbolo { display: none; }
        .sidebar-nav { padding: 20px 14px 28px; }
        .sidebar-nav a,
        .ferramentas-header { min-height: 42px; padding: 9px 12px !important; border-radius: 9px !important; }
        .sidebar-nav a span.menu-text,
        .sidebar .btn-account span,
        .ferramentas-header .menu-text,
        .sidebar .nav-title span.text,
        .sidebar .nav-title .material-symbols-outlined { display: inline; }
        .sidebar .btn-account::before { content: none; }
        #cat-icon, #ferr-icon { display: inline; }
        .sidebar .nav-children { display: block; }
        .sidebar-nav a:hover { background: rgba(7,139,255,.1); }
        .sidebar-nav a.active {
            background: #078BFF;
            color: #FFFFFF;
            box-shadow: 0 8px 22px rgba(7,139,255,.23);
        }
        .sidebar-nav .nav-link.active > .material-symbols-outlined { color: inherit; }
        /* Isolated game document: keep its CSS and scripts out of the portal shell. */
        .page-container:has(#jogos.active-section) { max-width:none; padding:0; }
        #jogos .diversa-games-frame { display:block; width:100%; height:calc(100vh - var(--games-header-height,88px)); height:calc(100dvh - var(--games-header-height,88px)); min-height:420px; border:0; background:#080d1a; }
        .categoria-header { background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.045); }
        .sidebar-footer { padding: 16px 14px 20px; }
        .sidebar-footer .btn-account { min-height: 44px; border-radius: 9px; }

        .topbar {
            min-height: 72px;
            padding: 14px 34px;
            background: var(--bg-topbar);
            border-color: var(--border-color);
            box-shadow: 0 8px 28px rgba(5,18,44,.04);
        }
        .topbar-search { width: min(560px, 52vw); }
        .topbar-search input {
            width: 100%; min-height: 44px; padding: 0 18px 0 44px;
            border-radius: 10px; border-color: transparent; background: var(--input-bg);
        }
        .topbar-search::before {
            content: 'search'; font-family: 'Material Symbols Outlined';
            position: absolute; left: 15px; top: 50%; transform: translateY(-50%);
            color: var(--text-muted); font-size: 20px; pointer-events: none;
        }
        .topbar-search input:focus { border-color: var(--azul-01); background: var(--bg-card); }
        .page-container { max-width: 1440px; padding: 48px; }
        .section-title {
            font-size: clamp(1.45rem, 2vw, 2rem); line-height: 1.1; letter-spacing: -.03em;
            border: 0; padding: 0; margin: 0 0 24px; font-weight: 700;
        }
        .section-title::after { content: ''; display: block; width: 42px; height: 2px; background: var(--azul-01); margin-top: 12px; }
        .home-section-header .section-title::after,
        .home-reports-heading .section-title::after { display: none; }

        /* First viewport */
        body.in-home #home-hero.diversa-hero { display: grid; }
        .hero-banner.diversa-hero {
            --copy-x: 0px;
            --copy-y: 0px;
            --map-x: 0px;
            --map-y: 0px;
            display: grid;
            grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr);
            align-items: center;
            gap: clamp(24px, 5vw, 88px);
            min-height: min(720px, calc(100vh - 72px));
            padding: clamp(54px, 5vw, 76px) clamp(32px, 4.5vw, 72px) 74px;
            border-radius: 0;
            background: #020718;
            isolation: isolate;
        }
        .diversa-hero::before {
            background:
                radial-gradient(ellipse 66% 70% at 74% 44%, rgba(7,139,255,.16), transparent 66%),
                linear-gradient(100deg, rgba(2,7,24,.96) 6%, rgba(2,7,24,.72) 54%, rgba(2,7,24,.2));
            opacity: 1;
        }
        .diversa-hero::after {
            background: linear-gradient(90deg, transparent, rgba(110,177,255,.08), transparent);
            background-size: 36% 100%;
            animation: diversaSweep 9s var(--diversa-ease) infinite;
            opacity: .8;
        }
        @keyframes diversaSweep {
            0%, 18% { background-position: -60% 0; }
            58%, 100% { background-position: 190% 0; }
        }
        .diversa-aether { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; }
        .diversa-hero-noise {
            position: absolute; inset: 0; z-index: 1; pointer-events: none; opacity: .035;
            background-image: radial-gradient(circle, #FFFFFF .55px, transparent .7px);
            background-size: 5px 5px;
        }
        .diversa-hero-copy { z-index: 4; max-width: 660px; transform: translate3d(var(--copy-x), var(--copy-y), 0); transition: transform .7s var(--diversa-ease); }
        .diversa-hero-copy h1 {
            max-width: 9.5ch; margin: 0 0 24px;
            color: #F8FAFF; font-size: clamp(3.9rem, 6.7vw, 6rem); line-height: .92;
            letter-spacing: -.04em; font-weight: 720; font-stretch: 90%; text-wrap: balance;
        }
        .diversa-hero-copy h1 span { color: #5AAEFF; font-family: inherit; }
        .diversa-hero-copy > p:not(.diversa-hero-proof) {
            max-width: 58ch; margin: 0 0 34px; color: #C4D1E4; font-size: clamp(1rem, 1.25vw, 1.18rem); line-height: 1.7;
        }
        .diversa-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
        .diversa-primary-action,
        .diversa-secondary-action {
            min-height: 52px; padding: 0 20px; border-radius: 9px; cursor: pointer;
            display: inline-flex; align-items: center; justify-content: center; gap: 10px;
            font-weight: 750; border: 1px solid transparent; transition: transform .25s var(--diversa-ease), background .25s, border-color .25s, box-shadow .25s;
        }
        .diversa-primary-action { background: #078BFF; color: #FFFFFF; box-shadow: 0 12px 28px rgba(7,139,255,.22); }
        .diversa-primary-action:hover { background: #299BFF; transform: translateY(-2px); box-shadow: 0 16px 34px rgba(7,139,255,.3); }
        .diversa-secondary-action { background: rgba(255,255,255,.04); color: #EAF2FF; border-color: rgba(203,222,248,.22); }
        .diversa-secondary-action:hover { background: rgba(255,255,255,.09); border-color: rgba(203,222,248,.42); transform: translateY(-2px); }
        .diversa-hero-actions .material-symbols-outlined { font-size: 18px; }
        .diversa-hero-proof { display: flex; align-items: center; gap: 10px; margin: 24px 0 0 !important; color: #8FA3C0 !important; font-size: .78rem !important; }
        .diversa-hero-proof span { width: 25px; height: 1px; background: #078BFF; }

        .diversa-decision-map {
            position: relative; z-index: 3; width: min(100%, 650px); aspect-ratio: 1.12;
            justify-self: end; transform: translate3d(var(--map-x), var(--map-y), 0);
            transition: transform .8s var(--diversa-ease);
        }
        .diversa-orbit-ring { position: absolute; border: 1px solid rgba(98,165,255,.17); border-radius: 50%; pointer-events: none; }
        .diversa-orbit-ring::before { content: ''; position: absolute; width: 7px; height: 7px; border-radius: 50%; background: #55AEFF; box-shadow: 0 3px 12px rgba(7,139,255,.5); }
        .ring-one { inset: 11% 14%; transform: rotate(-11deg); }
        .ring-one::before { left: 14%; bottom: 10%; }
        .ring-two { inset: 24% 26%; border-style: dashed; transform: rotate(18deg); }
        .ring-two::before { right: -3px; top: 46%; }
        .diversa-core {
            position: absolute; left: 50%; top: 50%; width: 176px; height: 176px; transform: translate(-50%,-50%);
            display: flex; flex-direction: column; align-items: center; justify-content: center;
            color: white; border-radius: 50%; background: #F7FAFF;
            box-shadow: 0 24px 70px rgba(0,0,0,.4), 0 10px 28px rgba(7,139,255,.16);
        }
        .diversa-core::before { content: ''; position: absolute; inset: -12px; border: 1px solid rgba(92,173,255,.38); border-radius: 50%; }
        .diversa-core img { width: 52px; height: 52px; object-fit: contain; margin-bottom: 10px; position: relative; z-index: 2; }
        .diversa-core strong { color: #06132D; font-family: var(--display-font); font-size: .72rem; letter-spacing: .18em; position: relative; z-index: 2; }
        .diversa-core small { color: #53647B; font-size: .58rem; margin-top: 3px; position: relative; z-index: 2; }
        .diversa-core-pulse { position: absolute; inset: -34px; border: 1px solid rgba(7,139,255,.2); border-radius: 50%; animation: diversaCorePulse 3.6s var(--diversa-ease) infinite; }
        @keyframes diversaCorePulse { 0% { transform: scale(.82); opacity: 0; } 18% { opacity: .9; } 100% { transform: scale(1.22); opacity: 0; } }

        .diversa-orbit-node {
            position: absolute; z-index: 5; min-width: 176px; min-height: 70px; padding: 12px 15px;
            display: flex; align-items: center; gap: 11px; text-align: left; cursor: pointer;
            color: #F4F8FF; background: rgba(5,16,40,.88); border: 1px solid rgba(131,181,244,.2); border-radius: 11px;
            box-shadow: 0 14px 30px rgba(0,0,0,.24); transition: transform .3s var(--diversa-ease), border-color .25s, background .25s, box-shadow .25s;
        }
        .diversa-orbit-node:hover, .diversa-orbit-node:focus-visible { border-color: rgba(90,174,255,.72); background: #09204A; transform: translateY(-4px); box-shadow: 0 18px 36px rgba(0,0,0,.3); }
        .diversa-orbit-node > .material-symbols-outlined { color: #5AAEFF; font-size: 24px; }
        .diversa-orbit-node > span:last-child { display: flex; flex-direction: column; }
        .diversa-orbit-node strong { font-family: var(--display-font); font-size: .82rem; letter-spacing: -.01em; }
        .diversa-orbit-node small { color: #91A5C0; font-size: .64rem; margin-top: 2px; }
        .node-acoes { left: 1%; top: 10%; }
        .node-renda { right: 0; top: 19%; }
        .node-global { left: 2%; bottom: 13%; }
        .node-educa { right: 2%; bottom: 7%; }
        .diversa-hero-rail {
            position: absolute; z-index: 4; left: clamp(32px, 4.5vw, 72px); right: clamp(32px, 4.5vw, 72px); bottom: 24px;
            display: flex; align-items: center; gap: 14px; color: #768AA7; font-size: .62rem; font-weight: 700; text-transform: uppercase; letter-spacing: .14em;
        }
        .diversa-hero-rail i { flex: 1; height: 1px; background: rgba(129,165,214,.17); }

        #home-ticker-wrapper {
            min-height: 48px; background: #061127; border-color: rgba(115,159,219,.16) !important;
            position: relative; z-index: 4;
        }
        .home-ticker-fallback {
            min-height: 48px; padding: 0 clamp(16px, 3vw, 40px); display: flex; align-items: center; gap: 14px;
            color: #F4F7FC; font-variant-numeric: tabular-nums; background: #061127;
        }
        .home-ticker-fallback[hidden] { display: none; }
        .home-ticker-fallback-label { color: #8FA5C3; font-size: .7rem; font-weight: 700; letter-spacing: .08em; }
        .home-ticker-fallback strong { font-family: var(--display-font); font-size: .92rem; }
        .home-ticker-fallback-change { font-size: .78rem; font-weight: 700; }
        .home-ticker-fallback-change.pos { color: #58D68D; }
        .home-ticker-fallback-change.neg { color: #FF7B7B; }
        .home-ticker-fallback small { margin-left: auto; color: #8FA5C3; font-size: .68rem; }

        /* Home rhythm — information bands instead of a wall of identical cards */
        #home { --home-gap: 58px; }
        #home > .section-title:not(:first-child) { margin-top: var(--home-gap); }
        .home-live-strip {
            grid-template-columns: repeat(3, minmax(0,1fr)); gap: 0; margin-bottom: 0;
            border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color);
        }
        .home-live-card {
            min-height: 190px; padding: 26px 28px; border: 0; border-right: 1px solid var(--border-color); border-radius: 0; background: transparent;
        }
        .home-live-card:last-child { border-right: 0; }
        .home-live-card:hover { background: color-mix(in srgb, var(--azul-01) 5%, transparent); box-shadow: none; }
        .home-live-price { font-family: var(--display-font); font-size: clamp(1.8rem, 2.7vw, 2.65rem); letter-spacing: -.035em; }
        .home-live-card .bg-icon { color: var(--azul-01); opacity: .09; font-size: 72px; }

        .home-quick-grid { grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; }
        .home-quick-card { min-height: 142px; padding: 22px; text-align: left; border-radius: 12px; }
        .home-quick-card:hover { transform: translateY(-4px); box-shadow: 0 14px 32px rgba(8,35,73,.1); }
        .home-quick-card .material-symbols-outlined { font-size: 28px; }
        .home-tools-grid { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1px; background: var(--border-color); border-block: 1px solid var(--border-color); }
        .home-tool-card { min-height: 132px; border: 0; border-radius: 0; background: var(--bg-body); padding: 24px; }
        .home-tool-card:hover { transform: none; background: var(--bg-card); box-shadow: none; }
        .home-tool-card .material-symbols-outlined { font-size: 30px; }
        .grid-cards { grid-template-columns: 1.35fr 1fr 1fr; gap: 16px; }
        .card, .home-edu-card, .home-video-card, .home-news-card { border-radius: 12px; }
        .card { box-shadow: none; }
        .card:hover, .home-edu-card:hover, .home-video-card:hover, .home-news-card:hover { transform: translateY(-4px); box-shadow: 0 16px 36px rgba(5,30,68,.11); }
        .grid-cards .card:first-child { grid-row: span 1; }
        .home-reports-grid { gap: 0; border-top: 1px solid var(--border-color); }
        .home-report-feature { border-top: 0; padding: 28px 20px; }
        .home-section-divider { margin: 64px 0 28px; opacity: 1; }
        .home-newsletter { border-radius: 14px; background: #061127; box-shadow: 0 20px 52px rgba(2,14,36,.18); }
        .home-newsletter-row input { border-radius: 8px; }

        /* Shared component refinement across all routes */
        :where(.calc-container, .comp-card, .intl-converter, .intl-compare-tool, .rf-intro-action, .agro-hedge-tool, .eligibility-card) { border-radius: 14px; }
        :where(.card, .home-quick-card, .home-live-card, .home-tool-card, .home-edu-card, .home-video-card, .home-news-card, .home-report-feature, .agro-intelligence-grid article)[role="button"] { outline-offset: 4px; }
        .btn-account { border-radius: 8px; }
        .site-footer { background: #020718; border-top: 1px solid rgba(110,151,210,.14); }
        .site-footer .f-inner { max-width: 1180px; justify-content: space-between; align-items: flex-start; }
        .site-footer .f-brand, .site-footer .f-contact, .site-footer .f-social { align-items: flex-start; text-align: left; }


        @media (max-width: 1180px) {
            .sidebar { width: 82px; }
            .sidebar-header { justify-content: center; padding-inline: 16px; }
            .sidebar-header img:not(.logo-simbolo) { display: none; }
            .sidebar-header .logo-simbolo { display: block; }
            .sidebar-nav a span.menu-text,
            .sidebar .btn-account span,
            .ferramentas-header .menu-text,
            .sidebar .nav-title span.text,
            .sidebar .nav-title .material-symbols-outlined,
            #cat-icon, #ferr-icon { display: none; }
            .sidebar .btn-account::before { content: 'account_circle'; }
            .sidebar .nav-children { display: none; }
            .hero-banner.diversa-hero { grid-template-columns: minmax(330px,.82fr) minmax(420px,1.18fr); padding-inline: 46px; }
            .diversa-hero-copy h1 { font-size: clamp(3.5rem, 7vw, 5.4rem); }
            .diversa-orbit-node { min-width: 156px; }
            .page-container { padding: 42px 34px; }
        }

        @media (max-width: 900px) {
            .hero-banner.diversa-hero { grid-template-columns: 1fr; min-height: 0; padding: 72px 34px 82px; gap: 34px; }
            .diversa-hero-copy { max-width: 690px; }
            .diversa-hero-copy h1 { max-width: 10ch; }
            .diversa-decision-map { justify-self: center; width: min(100%,620px); }
            .home-quick-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
            .home-tools-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
            .grid-cards { grid-template-columns: 1fr 1fr; }
            .grid-cards .card:first-child { grid-column: 1 / -1; }
        }

        @media (max-width: 767px) {
            .sidebar { width: 280px; }
            .sidebar-header { justify-content: flex-start; }
            .sidebar-header img:not(.logo-simbolo) { display: block; }
            .sidebar-header .logo-simbolo { display: none; }
            .sidebar-nav a span.menu-text,
            .sidebar .btn-account span,
            .ferramentas-header .menu-text,
            .sidebar .nav-title span.text,
            .sidebar .nav-title .material-symbols-outlined,
            #cat-icon, #ferr-icon { display: inline; }
            .sidebar .btn-account::before { content: none; }
            .topbar { padding: 10px 12px; }
            .topbar-search { width: auto; flex: 1; min-width: 0; }
            .topbar-search input { width: 100%; padding-left: 38px; }
            .topbar-search::before { left: 12px; }
            .page-container { padding: 34px 16px; }
            .hero-banner.diversa-hero { padding: 48px 20px 72px; gap: 20px; }
            .diversa-hero-copy h1 { font-size: clamp(3.15rem, 16vw, 4.4rem); }
            .diversa-hero-copy h1 { margin-bottom: 18px; }
            .diversa-hero-copy > p:not(.diversa-hero-proof) { font-size: .98rem; line-height: 1.56; margin-bottom: 24px; }
            .diversa-hero-actions { flex-direction: column; align-items: stretch; }
            .diversa-primary-action, .diversa-secondary-action { width: 100%; }
            .diversa-hero-proof { margin-top: 16px !important; }
            .diversa-decision-map { aspect-ratio: .92; width: 100%; margin-top: -4px; }
            .diversa-core { width: 136px; height: 136px; }
            .diversa-core img { width: 42px; height: 42px; }
            .diversa-orbit-node { min-width: 0; width: 145px; min-height: 62px; padding: 10px; }
            .diversa-orbit-node small { display: none; }
            .diversa-orbit-node > .material-symbols-outlined { font-size: 21px; }
            .node-acoes { left: 0; top: 4%; }
            .node-renda { right: 0; top: 18%; }
            .node-global { left: 0; bottom: 13%; }
            .node-educa { right: 0; bottom: 1%; }
            .diversa-hero-rail { left: 20px; right: 20px; bottom: 22px; gap: 8px; }
            .diversa-hero-rail span:nth-of-type(2), .diversa-hero-rail span:nth-of-type(3) { display: none; }
            .home-live-strip { grid-template-columns: 1fr; }
            .home-live-card { min-height: 154px; border-right: 0; border-bottom: 1px solid var(--border-color); }
            .home-live-card:last-child { border-bottom: 0; }
            .home-quick-grid, .home-tools-grid, .grid-cards { grid-template-columns: 1fr; }
            .grid-cards .card:first-child { grid-column: auto; }
            .home-tool-card { min-height: 112px; }
            .home-section-header { align-items: flex-end; gap: 16px; }
            .site-footer .f-inner { align-items: center; }
            .site-footer .f-brand, .site-footer .f-contact, .site-footer .f-social { align-items: center; text-align: center; }
        }

        @media (max-width: 420px) {
            .diversa-hero-copy h1 { font-size: clamp(2.8rem, 15vw, 3.7rem); }
            .diversa-orbit-node { width: 132px; }
            .diversa-core { width: 118px; height: 118px; }
            .diversa-core img { width: 36px; height: 36px; margin-bottom: 6px; }
            .diversa-decision-map { min-height: 380px; }
        }

        @media (prefers-reduced-motion: reduce) {
            html { scroll-behavior: auto !important; }
            .diversa-hero::after, .diversa-core-pulse, .live-dot { animation: none !important; }
            .diversa-hero-copy, .diversa-decision-map, .diversa-orbit-node, .tilt-card, .floating-card-wrapper { transform: none !important; transition: none !important; }
        }

        /* Restauração aprovada: shell lateral compacto e expansível da versão anterior. */
        #home-hero {
            border-radius: 0;
            width: 100%;
        }
        #home-hero .hero-video-bg {
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 0;
        }
        #home-hero .hero-overlay { border-radius: 0; }

        @media (min-width: 768px) {
            .sidebar { width: 80px; transition: width .28s ease, background-color .3s; }
            .sidebar-header { height: 80px; padding: 24px; justify-content: center; }
            .sidebar-header img:not(.logo-simbolo) { display: none; }
            .sidebar-header .logo-simbolo { display: block; width: 40px; }
            .sidebar-nav { padding: 24px 16px; }
            .sidebar-nav a span.menu-text,
            .sidebar .btn-account span,
            .ferramentas-header .menu-text,
            .sidebar .nav-title span.text,
            #cat-icon, #ferr-icon,
            .sidebar .nav-children { display: none; }
            .sidebar .btn-account::before { content: 'account_circle'; font-family: 'Material Symbols Outlined'; font-size: 20px; }

            .sidebar:hover { width: 280px; }
            .sidebar:hover .sidebar-header { justify-content: center; }
            .sidebar:hover .sidebar-header img:not(.logo-simbolo) { display: block; }
            .sidebar:hover .sidebar-header .logo-simbolo { display: none; }
            .sidebar:hover .sidebar-nav a span.menu-text,
            .sidebar:hover .btn-account span,
            .sidebar:hover .ferramentas-header .menu-text,
            .sidebar:hover .nav-title span.text,
            .sidebar:hover .nav-title .material-symbols-outlined,
            .sidebar:hover #cat-icon,
            .sidebar:hover #ferr-icon,
            .sidebar:hover .nav-children { display: inline; }
            .sidebar:hover .nav-children { display: block; }
            .sidebar:hover .btn-account::before { content: none; }
        }

        /* Ações — painel personalizável, agenda e aluguel */
        .acoes-panel-heading { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: 30px 0 5px; }
        .acoes-data-status { color: var(--text-muted); font-size: .75rem; font-weight: 600; font-variant-numeric: tabular-nums; }
        #div-update-status { margin: 0 0 20px; }
        .alu-update-status { margin: -8px 0 16px; text-align: center; }
        .acoes-source-note { max-width: 75ch; margin: 16px auto 0; color: var(--text-muted); font-size: .72rem; line-height: 1.55; text-align: center; }

        .stock-card-remove {
            width: 32px; height: 32px; display: inline-grid; place-items: center; border: 1px solid var(--border-color);
            border-radius: 50%; background: transparent; color: var(--text-muted); cursor: pointer;
            transition: color .2s, border-color .2s, background-color .2s;
        }
        .stock-card-remove:hover, .stock-card-remove:focus-visible { color: #DC2626; border-color: rgba(220,38,38,.35); background: rgba(220,38,38,.08); }
        .stock-card-remove .material-symbols-outlined { font-size: 17px; }

        .div-card-top { justify-content: flex-start; gap: 7px; flex-wrap: wrap; }
        .div-card-status { margin-left: auto; font-size: .58rem; font-weight: 800; padding: 2px 7px; border-radius: 12px; letter-spacing: .2px; }
        .div-card-status.upcoming { color: var(--azul-01); background: rgba(0,134,255,.1); }
        .div-card-status.recent { color: var(--text-muted); background: color-mix(in srgb, var(--text-muted) 10%, transparent); }
        .div-load-more, .div-retry {
            align-self: center; display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 42px;
            padding: 9px 18px; border-radius: 10px; border: 1px solid var(--border-color); background: var(--bg-card);
            color: var(--text-main); font: inherit; font-size: .8rem; font-weight: 700; cursor: pointer;
        }
        .div-load-more:hover, .div-load-more:focus-visible, .div-retry:hover, .div-retry:focus-visible { border-color: var(--azul-01); color: var(--azul-01); }
        .div-load-more .material-symbols-outlined { font-size: 18px; }

        .alu-card-reference { text-align: center; color: var(--text-muted); font-size: .66rem; }
        .alu-error { align-items: flex-start; text-align: left; }
        .alu-error p { margin: 3px 0 10px; }
        .alu-error button { border: 0; border-radius: 8px; padding: 8px 12px; background: var(--azul-01); color: #fff; font-weight: 700; cursor: pointer; }

        @media (max-width: 600px) {
            .acoes-panel-heading { align-items: flex-start; flex-direction: column; gap: 5px; }
            .stock-search-wrap, #acoes .topbar-search > div { width: 100% !important; }
            .div-card-status { margin-left: auto; }
        }

        /* Banking & Wealth — hero premium, isolada da navegação e demais páginas */
        .wealth-hero {
            width: calc(100% + 96px); min-height: calc(100vh - 92px);
            margin-inline-start: -48px; margin-bottom: 40px;
            position: relative; overflow: hidden; isolation: isolate; color: #fff;
            background: radial-gradient(circle at 64% 45%,rgba(7,139,255,.18),transparent 32%),
                        radial-gradient(circle at 25% 78%,rgba(7,87,211,.09),transparent 28%),#020718;
        }
        .wealth-hero::before {
            content: ''; position: absolute; inset: 0; z-index: -2; pointer-events: none; opacity: .32;
            background-image: radial-gradient(rgba(106,181,255,.32) .65px,transparent .65px); background-size: 24px 24px;
            mask-image: linear-gradient(90deg,transparent,#000 45%,#000);
        }
        .wealth-hero::after {
            content: ''; position: absolute; width: 620px; height: 620px; right: -220px; top: -250px; z-index: -1;
            pointer-events: none; border: 1px solid rgba(83,154,255,.12); border-radius: 50%;
            box-shadow: 0 0 0 78px rgba(30,102,218,.025),0 0 0 158px rgba(30,102,218,.018);
        }
        .sidebar:hover ~ .main-content .wealth-hero { width: calc(100% + 96px); margin-inline-start: -48px; }
        @media (max-width:1199px) {
            .wealth-hero,
            .sidebar:hover ~ .main-content .wealth-hero { width:calc(100% + 68px); margin-inline-start:-34px; }
        }
        .wealth-hero-inner {
            width: 100%; max-width: 1540px; min-height: calc(100vh - 92px); margin: 0 auto; padding: 64px 56px 42px;
            display: grid; grid-template-columns: minmax(0,36fr) minmax(0,40fr) minmax(0,24fr);
            grid-template-areas: 'copy product benefits' 'footer footer footer'; column-gap: 34px; row-gap: 28px; align-items: center;
        }
        .wealth-hero-inner > * { min-width: 0; max-width: 100%; }
        .wealth-copy { grid-area: copy; position: relative; z-index: 2; }
        .wealth-eyebrow {
            display: inline-flex; align-items: center; gap: 8px; margin-bottom: 24px; padding: 7px 12px;
            border: 1px solid rgba(7,139,255,.34); border-radius: 999px; color: #77c0ff; background: rgba(7,87,211,.1);
            font-size: 13px; font-weight: 700; letter-spacing: .08em; line-height: 1; text-transform: uppercase;
        }
        .wealth-eyebrow::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #078bff; box-shadow: 0 0 12px rgba(7,139,255,.7); }
        .wealth-title {
            max-width: 10.5ch; margin: 0 0 24px; color: #fff; font-family: 'Archivo',sans-serif;
            font-size: clamp(3.25rem,3.5vw,4.45rem); font-weight: 700; line-height: 1.02; letter-spacing: -.04em; text-wrap: balance;
        }
        .wealth-description { max-width: 520px; margin: 0; color: rgba(234,242,255,.76); font-size: 18px; line-height: 1.55; }
        .wealth-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
        .wealth-action {
            min-height: 52px; padding: 0 24px; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
            border: 1px solid transparent; border-radius: 9px; font: inherit; font-size: .86rem; font-weight: 700; cursor: pointer;
            transition: transform 180ms ease,background 180ms ease,border-color 180ms ease,box-shadow 180ms ease;
        }
        .wealth-action-primary { color: #fff; background: #078bff; box-shadow: 0 12px 28px rgba(7,139,255,.22); }
        .wealth-action-primary:hover { transform: translateY(-2px); background: #299bff; box-shadow: 0 16px 34px rgba(7,139,255,.32); }
        .wealth-action-primary:active { transform: translateY(0) scale(.99); }
        .wealth-action-secondary { color: #eaf2ff; background: rgba(255,255,255,.02); border-color: rgba(255,255,255,.18); }
        .wealth-action-secondary:hover { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.36); }
        .wealth-action:focus-visible,.wealth-card-toggle-btn:focus-visible { outline: 3px solid rgba(119,192,255,.92); outline-offset: 3px; }
        .wealth-metrics { display: flex; gap: 38px; margin-top: 34px; }
        .wealth-metric-value { color: #299bff; font-size: clamp(2.55rem,3vw,3rem); font-weight: 700; line-height: .95; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
        .wealth-metric-label { margin-top: 9px; color: rgba(234,242,255,.6); font-size: 12px; font-weight: 700; letter-spacing: .07em; line-height: 1.25; text-transform: uppercase; }
        .wealth-product { grid-area: product; position: relative; z-index: 2; }
        .wealth-card-toggle {
            width: min(280px,100%); min-height: 52px; margin: 0 auto 8px; padding: 5px; display: grid;
            grid-template-columns: repeat(2,minmax(0,1fr)); border: 1px solid rgba(148,163,184,.18); border-radius: 14px; background: rgba(9,19,44,.72);
        }
        .wealth-card-toggle-btn {
            min-width: 0; border: 1px solid transparent; border-radius: 10px; background: transparent; color: rgba(234,242,255,.58);
            font: inherit; font-size: .84rem; font-weight: 700; cursor: pointer;
            transition: color 180ms ease,border-color 180ms ease,background 180ms ease,box-shadow 180ms ease;
        }
        .wealth-card-toggle-btn:hover { color: #fff; }
        .wealth-card-toggle-btn.active { color: #fff; border-color: rgba(7,139,255,.58); background: rgba(7,87,211,.34); box-shadow: 0 8px 22px rgba(7,87,211,.18); }
        .wealth-card-stage { min-height: 430px; position: relative; display: flex; align-items: center; justify-content: center; perspective: 1000px; }
        .wealth-card-stage::before {
            content: ''; position: absolute; width: 78%; height: 70%; z-index: -1; pointer-events: none; opacity: .65;
            background: radial-gradient(circle,rgba(7,139,255,.28),rgba(7,87,211,.08) 45%,transparent 72%); filter: blur(32px);
            transition: opacity 400ms ease,transform 400ms ease; animation: wealthGlow 7s ease-in-out infinite;
        }
        .wealth-card-stage::after {
            content: ''; position: absolute; width: 64%; height: 34px; bottom: 60px; z-index: -1; border-radius: 50%;
            background: rgba(0,0,0,.52); filter: blur(18px); transform: perspective(400px) rotateX(64deg);
        }
        .wealth-card-stage:hover::before { opacity: .95; transform: scale(1.05); animation-play-state: paused; }
        .wealth-card-visual {
            --shine-x: 50%; --shine-y: 50%; width: min(84%,490px); position: relative; border-radius: 22px;
            transform: rotateZ(-2.2deg) rotateX(0deg) rotateY(0deg) translateY(0); transform-style: preserve-3d;
            will-change: transform,opacity; transition: transform 180ms ease,filter 180ms ease,opacity 160ms ease;
            filter: drop-shadow(0 22px 30px rgba(0,0,0,.26));
        }
        .wealth-card-stage:hover .wealth-card-visual { filter: drop-shadow(0 22px 32px rgba(0,0,0,.32)) drop-shadow(0 0 22px rgba(7,139,255,.18)); }
        .wealth-card-visual.is-leaving { opacity: 0; transform: rotateZ(-2.2deg) translateX(-12px) scale(.98); }
        .wealth-card-visual.is-entering { opacity: 0; transform: rotateZ(-2.2deg) translateX(12px) scale(.98); transition: none; }
        .wealth-card-image { display: block; width: 100%; max-width: 100%; height: auto; border-radius: inherit; }
        .wealth-card-shine {
            position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0;
            background: radial-gradient(circle at var(--shine-x) var(--shine-y),rgba(255,255,255,.16),transparent 30%);
            mix-blend-mode: soft-light; transition: opacity 180ms ease;
        }
        .wealth-card-stage:hover .wealth-card-shine { opacity: 1; }
        .wealth-benefits { grid-area: benefits; position: relative; z-index: 2; }
        .wealth-benefits-title { margin: 0 0 10px; color: rgba(234,242,255,.62); font-size: 12px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
        .wealth-benefit-list { list-style: none; margin: 0; padding: 0; }
        .wealth-benefit {
            display: grid; grid-template-columns: 22px minmax(0,1fr); gap: 12px; align-items: center; padding: 15px 0;
            border-bottom: 1px solid rgba(255,255,255,.08); color: rgba(244,247,252,.82); font-size: 14px; line-height: 1.35;
            transition: transform 180ms ease,color 180ms ease;
        }
        .wealth-benefit:last-child { border-bottom: 0; }
        .wealth-benefit:hover { color: #fff; transform: translateX(3px); }
        .wealth-benefit .material-symbols-outlined { color: #46a7ff; font-size: 18px; transition: color 180ms ease,filter 180ms ease; }
        .wealth-benefit:hover .material-symbols-outlined { color: #77c0ff; filter: drop-shadow(0 0 8px rgba(7,139,255,.35)); }
        .wealth-highlights {
            grid-area: footer; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); overflow: hidden;
            border: 1px solid rgba(148,163,184,.18); border-radius: 14px; background: rgba(9,19,44,.56);
        }
        .wealth-highlight {
            min-width: 0; padding: 18px 22px; display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 12px; align-items: center;
            border-inline-end: 1px solid rgba(148,163,184,.14); transition: background 180ms ease;
        }
        .wealth-highlight:last-child { border-inline-end: 0; }
        .wealth-highlight:hover { background: rgba(7,139,255,.06); }
        .wealth-highlight .material-symbols-outlined { color: #46a7ff; font-size: 22px; }
        .wealth-highlight strong { display: block; overflow-wrap: anywhere; color: #fff; font-size: .9rem; line-height: 1.25; }
        .wealth-highlight span:not(.material-symbols-outlined) { display: block; margin-top: 4px; overflow-wrap: anywhere; color: rgba(234,242,255,.56); font-size: .72rem; line-height: 1.35; }
        .banking-eligibility { scroll-margin-top: 92px; }
        #banking.active-section .wealth-copy { animation: wealthEnterCopy 560ms cubic-bezier(.2,.8,.2,1) both; }
        #banking.active-section .wealth-product { animation: wealthEnterProduct 600ms 80ms cubic-bezier(.2,.8,.2,1) both; }
        #banking.active-section .wealth-benefits { animation: wealthEnterBenefits 560ms 140ms cubic-bezier(.2,.8,.2,1) both; }
        #banking.active-section .wealth-highlights { animation: wealthEnterFooter 520ms 180ms cubic-bezier(.2,.8,.2,1) both; }
        @keyframes wealthGlow { 0%,100% { opacity:.65; transform:scale(1); } 50% { opacity:.78; transform:scale(1.035); } }
        @keyframes wealthEnterCopy { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }
        @keyframes wealthEnterProduct { from { opacity:0; transform:translateY(22px) scale(.97); } to { opacity:1; transform:translateY(0) scale(1); } }
        @keyframes wealthEnterBenefits { from { opacity:0; transform:translateX(12px); } to { opacity:1; transform:translateX(0); } }
        @keyframes wealthEnterFooter { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
        @media (max-width:1200px) {
            .wealth-hero-inner { grid-template-columns:minmax(0,42fr) minmax(0,58fr); grid-template-areas:'copy product' 'benefits benefits' 'footer footer'; align-items:start; }
            .wealth-benefit-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:28px; }
        }
        @media (max-width:900px) {
            .wealth-hero-inner { padding:52px 32px 36px; grid-template-columns:minmax(0,1fr); grid-template-areas:'copy' 'product' 'benefits' 'footer'; }
            .wealth-title { max-width:13ch; }
            .wealth-card-stage { min-height:390px; }
        }
        @media (max-width:767px) {
            .wealth-hero,.sidebar:hover ~ .main-content .wealth-hero { width:calc(100% + 32px); margin-inline-start:-16px; }
        }
        @media (max-width:600px) {
            .wealth-hero-inner { min-height:auto; padding:36px 20px 28px; row-gap:18px; grid-template-areas:none; }
            .wealth-copy { display:contents; }
            .wealth-title,.wealth-description,.wealth-actions,.wealth-metrics,.wealth-product,.wealth-benefits,.wealth-highlights { grid-area:auto; }
            .wealth-title { max-width:11ch; margin:0; order:1; font-size:clamp(2.75rem,12vw,3.1rem); }
            .wealth-description { margin:0; order:2; }
            .wealth-product { order:3; }
            .wealth-actions { order:4; margin-top:4px; }
            .wealth-metrics { order:5; margin-top:10px; }
            .wealth-benefits { order:6; }
            .wealth-highlights { order:7; }
            .wealth-description { font-size:16px; }
            .wealth-actions { display:grid; grid-template-columns:1fr; }
            .wealth-action { width:100%; }
            .wealth-metrics { gap:26px; }
            .wealth-card-stage { min-height:290px; }
            .wealth-card-visual { width:min(92%,340px); }
            .wealth-benefit-list { grid-template-columns:minmax(0,1fr); }
            .wealth-highlights { grid-template-columns:repeat(2,minmax(0,1fr)); }
            .wealth-highlight:nth-child(2) { border-inline-end:0; }
            .wealth-highlight:nth-child(-n+2) { border-bottom:1px solid rgba(148,163,184,.14); }
            body:has(#banking.active-section) .whatsapp-btn { display:none; }
        }
        @media (prefers-reduced-motion:reduce) {
            .wealth-hero *,.wealth-hero *::before,.wealth-hero *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
        }

        /* =========================================
           CONSÓRCIO — ALAVANCAGEM PATRIMONIAL
           ========================================= */
        #consorcio.leverage-page {
            --leverage-night: #020718;
            --leverage-night-soft: #07132b;
            --leverage-blue: #078bff;
            --leverage-blue-deep: #0757d3;
            --leverage-paper: #ffffff;
            --leverage-canvas: #f3f6fa;
            --leverage-ink: #07122b;
            --leverage-muted: #657087;
            --leverage-line: #dce3ed;
            background: var(--leverage-canvas);
            color: var(--leverage-ink);
            overflow: clip;
        }

        #consorcio button,
        #consorcio a { -webkit-tap-highlight-color: transparent; }

        #consorcio button:focus-visible,
        #consorcio a:focus-visible {
            outline: 3px solid #7cc4ff;
            outline-offset: 3px;
        }

        .leverage-hero {
            position: relative;
            width: calc(100vw - 80px);
            min-height: calc(100vh - 81px);
            margin-inline-start: calc((100% - (100vw - 80px)) / 2);
            overflow: hidden;
            color: #fff;
            background:
                radial-gradient(circle at 78% 32%, rgba(7, 139, 255, .22), transparent 30%),
                radial-gradient(circle at 12% 84%, rgba(7, 87, 211, .16), transparent 27%),
                var(--leverage-night);
        }

        .sidebar:hover ~ .main-content .leverage-hero {
            width: calc(100vw - 280px);
            margin-inline-start: calc((100% - (100vw - 280px)) / 2);
        }

        .leverage-hero-grid {
            position: absolute;
            inset: 0;
            opacity: .28;
            background-image: radial-gradient(circle, rgba(156, 206, 255, .15) 1px, transparent 1.2px);
            background-size: 30px 30px;
            mask-image: linear-gradient(to bottom, #000 0%, transparent 82%);
        }

        .leverage-hero-orbit {
            position: absolute;
            border: 1px solid rgba(108, 190, 255, .15);
            border-radius: 50%;
            pointer-events: none;
        }
        .leverage-hero-orbit-one { width: 560px; height: 560px; top: -340px; right: -50px; }
        .leverage-hero-orbit-two { width: 360px; height: 360px; bottom: -260px; left: 36%; }

        .leverage-hero-inner {
            position: relative;
            z-index: 1;
            display: grid;
            grid-template-columns: minmax(0, 45fr) minmax(540px, 55fr);
            gap: clamp(36px, 4vw, 78px);
            align-items: center;
            width: min(1540px, 100%);
            min-height: calc(100vh - 81px);
            margin: 0 auto;
            padding: clamp(52px, 6vh, 86px) clamp(36px, 4.5vw, 72px) 40px;
        }

        .leverage-hero-copy { max-width: 680px; }
        .leverage-eyebrow {
            display: inline-flex;
            align-items: center;
            min-height: 30px;
            margin: 0 0 22px;
            padding: 7px 12px;
            border: 1px solid rgba(124, 196, 255, .34);
            border-radius: 8px;
            color: #a8d9ff;
            background: rgba(7, 139, 255, .1);
            font-size: .72rem;
            font-weight: 800;
            letter-spacing: .14em;
            line-height: 1;
            text-transform: uppercase;
        }

        .leverage-title {
            display: flex;
            flex-direction: column;
            max-width: 9ch;
            margin: 0;
            color: #fff;
            font-family: 'Archivo', 'Manrope', sans-serif;
            font-size: clamp(4.1rem, 6vw, 6rem);
            font-weight: 720;
            letter-spacing: -.04em;
            line-height: .88;
        }
        .leverage-title span { font-family: inherit; }
        .leverage-title-accent { color: var(--leverage-blue); }
        .leverage-hero-description {
            max-width: 62ch;
            margin: 28px 0 0;
            color: #b9c4d8;
            font-size: clamp(1rem, 1.2vw, 1.12rem);
            line-height: 1.72;
        }

        .leverage-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
        .leverage-button {
            display: inline-flex;
            min-height: 48px;
            align-items: center;
            justify-content: center;
            gap: 10px;
            padding: 13px 20px;
            border: 1px solid transparent;
            border-radius: 10px;
            font-size: .92rem;
            font-weight: 800;
            line-height: 1.2;
            text-decoration: none;
            cursor: pointer;
            transition: transform .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
        }
        .leverage-button .material-symbols-outlined { font-size: 20px; }
        .leverage-button:hover { transform: translateY(-2px); }
        .leverage-button:active { transform: scale(.99); }
        .leverage-button-primary {
            color: #fff;
            background: var(--leverage-blue-deep);
            box-shadow: 2px 5px 18px rgba(7, 87, 211, .28);
        }
        .leverage-button-primary:hover { background: var(--leverage-blue); box-shadow: 3px 7px 22px rgba(7, 139, 255, .32); }
        .leverage-button-ghost { color: #e9f3ff; border-color: rgba(255,255,255,.23); background: rgba(255,255,255,.04); }
        .leverage-button-ghost:hover { border-color: rgba(124,196,255,.6); background: rgba(7,139,255,.1); }

        .leverage-benefit-rail {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 16px 20px;
            margin: 34px 0 0;
            padding: 22px 0 0;
            border-top: 1px solid rgba(255,255,255,.12);
            list-style: none;
        }
        .leverage-benefit-rail li { display: flex; align-items: flex-start; gap: 10px; color: #aebacf; font-size: .78rem; line-height: 1.45; }
        .leverage-benefit-rail .material-symbols-outlined { color: #69bcff; font-size: 19px; }
        .leverage-benefit-rail strong { display: block; color: #f4f8ff; font-size: .82rem; }

        .leverage-showcase {
            position: relative;
            display: grid;
            grid-template-columns: .82fr 1.16fr .82fr;
            gap: 12px;
            align-items: end;
            min-width: 0;
            padding: 58px 0 34px;
        }
        .leverage-category-card {
            position: relative;
            height: 330px;
            padding: 0;
            overflow: hidden;
            border: 1px solid rgba(255,255,255,.13);
            border-radius: 14px;
            background: #0d1b34;
            box-shadow: 5px 12px 34px rgba(0,0,0,.3);
            color: #fff;
            text-align: left;
            cursor: pointer;
            transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
        }
        .leverage-category-main { height: 392px; }
        .leverage-category-card:hover { transform: translateY(-5px); border-color: rgba(105,188,255,.62); box-shadow: 7px 16px 40px rgba(0,0,0,.38); }
        .leverage-category-card img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.82) contrast(1.04); transition: transform .55s cubic-bezier(.2,.7,.2,1); }
        .leverage-category-card:hover img { transform: scale(1.015); }
        .leverage-category-shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(2,7,24,.94) 0%, rgba(2,7,24,.08) 64%); }
        .leverage-category-copy { position: absolute; inset: auto 18px 18px; display: flex; flex-direction: column; gap: 3px; }
        .leverage-category-copy small { color: #9dd4ff; font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
        .leverage-category-copy strong { font-family: 'Archivo', 'Manrope', sans-serif; font-size: clamp(1.15rem, 1.8vw, 1.55rem); }
        .leverage-floating-note {
            position: absolute;
            z-index: 2;
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 9px 12px;
            border: 1px solid rgba(255,255,255,.16);
            border-radius: 8px;
            background: rgba(7,19,43,.88);
            color: #dcecff;
            box-shadow: 2px 7px 18px rgba(0,0,0,.25);
            backdrop-filter: blur(12px);
            font-size: .7rem;
            font-weight: 750;
        }
        .leverage-floating-note .material-symbols-outlined { color: #69bcff; font-size: 17px; }
        .leverage-floating-note-top { top: 21px; left: 20%; }
        .leverage-floating-note-bottom { right: 10%; bottom: 6px; }

        .consortium-page-content { background: var(--leverage-canvas); }
        .consortium-section {
            width: min(1440px, calc(100% - 80px));
            margin: 0 auto;
            padding: clamp(76px, 8vw, 118px) 0;
        }
        #consortium-audience,
        #consortium-strategy { scroll-margin-top: 92px; }
        .consortium-section-heading { max-width: 850px; margin-bottom: 40px; }
        .consortium-section-index {
            margin: 0 0 14px;
            color: var(--leverage-blue-deep);
            font-size: .74rem;
            font-weight: 850;
            letter-spacing: .12em;
            text-transform: uppercase;
        }
        .consortium-section-heading h2,
        .consortium-strategy-intro h2,
        .consortium-comparison-panel h2,
        .consortium-bid-panel h2,
        .consortium-final-copy h2 {
            margin: 0;
            color: var(--leverage-ink);
            font-family: 'Archivo', 'Manrope', sans-serif;
            font-size: clamp(2.1rem, 3.7vw, 3.65rem);
            font-weight: 680;
            letter-spacing: -.045em;
            line-height: 1.04;
        }
        .consortium-title-accent { color: var(--leverage-blue-deep); font-family: inherit; }
        .consortium-section-heading > p:last-child,
        .consortium-strategy-intro > p:last-child,
        .consortium-comparison-lead,
        .consortium-final-copy > p:last-child {
            max-width: 68ch;
            margin: 20px 0 0;
            color: var(--leverage-muted);
            font-size: 1rem;
            line-height: 1.7;
        }

        .consortium-audience-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
        .consortium-audience-card {
            min-height: 238px;
            padding: 25px 22px;
            border: 1px solid var(--leverage-line);
            border-radius: 12px;
            background: var(--leverage-paper);
            box-shadow: 2px 5px 15px rgba(7,18,43,.04);
            transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
        }
        .consortium-audience-card:hover { transform: translateY(-3px); border-color: #9dcfff; box-shadow: 3px 8px 20px rgba(7,87,211,.08); }
        .consortium-audience-card > .material-symbols-outlined { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 9px; background: #e7f4ff; color: var(--leverage-blue-deep); font-size: 23px; }
        .consortium-audience-card h3 { margin: 34px 0 10px; color: var(--leverage-ink); font-family: 'Archivo', sans-serif; font-size: 1.08rem; line-height: 1.25; }
        .consortium-audience-card p { margin: 0; color: var(--leverage-muted); font-size: .86rem; line-height: 1.58; }

        .consortium-strategy {
            width: 100%;
            max-width: none;
            padding-inline: max(40px, calc((100% - 1440px) / 2));
            color: #fff;
            background:
                radial-gradient(circle at 86% 16%, rgba(7,139,255,.16), transparent 26%),
                var(--leverage-night-soft);
        }
        .consortium-strategy-intro { max-width: 850px; }
        .consortium-strategy .consortium-section-index { color: #80c6ff; }
        .consortium-strategy-intro h2 { color: #fff; }
        .consortium-strategy-intro > p:last-child { color: #aebbd1; }
        .consortium-strategy-layout { display: grid; grid-template-columns: minmax(0, 1.48fr) minmax(350px, .72fr); gap: clamp(26px, 4vw, 62px); align-items: start; margin-top: 52px; }
        .consortium-choice-panel { display: grid; gap: 34px; }
        .consortium-choice-group { min-width: 0; padding: 0; border: 0; }
        .consortium-choice-group legend { display: flex; align-items: center; gap: 12px; margin-bottom: 15px; color: #eaf2ff; font-family: 'Archivo', sans-serif; font-size: .96rem; font-weight: 720; }
        .consortium-choice-group legend span { display: grid; width: 28px; height: 28px; flex: 0 0 28px; place-items: center; border: 1px solid rgba(128,198,255,.34); border-radius: 50%; color: #80c6ff; font-size: .7rem; }
        .consortium-choice-options { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
        .consortium-choice-group[data-consortium-group="objective"] .consortium-choice-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .consortium-choice {
            display: flex;
            min-height: 58px;
            align-items: center;
            justify-content: center;
            gap: 8px;
            padding: 12px 13px;
            border: 1px solid rgba(255,255,255,.13);
            border-radius: 9px;
            background: rgba(255,255,255,.035);
            color: #b5c0d4;
            font-size: .8rem;
            font-weight: 720;
            cursor: pointer;
            transition: transform .18s ease, color .18s ease, border-color .18s ease, background-color .18s ease;
        }
        .consortium-choice:hover { transform: translateY(-2px); border-color: rgba(128,198,255,.5); color: #fff; }
        .consortium-choice.is-selected { border-color: #249fff; background: #0757d3; color: #fff; box-shadow: 2px 5px 14px rgba(7,87,211,.22); }
        .consortium-choice .material-symbols-outlined { font-size: 20px; color: #80c6ff; }
        .consortium-choice.is-selected .material-symbols-outlined { color: #fff; filter: drop-shadow(0 0 6px rgba(128,198,255,.45)); }

        .consortium-scenario {
            position: sticky;
            top: 98px;
            padding: 30px;
            border: 1px solid rgba(255,255,255,.14);
            border-radius: 14px;
            background: rgba(255,255,255,.065);
            box-shadow: 4px 11px 30px rgba(0,0,0,.2);
            backdrop-filter: blur(14px);
        }
        .consortium-scenario.is-updating { animation: consortiumScenarioPulse .24s ease; }
        @keyframes consortiumScenarioPulse { 50% { transform: translateY(-2px); border-color: rgba(128,198,255,.5); } }
        .consortium-scenario-status { display: flex; align-items: center; gap: 9px; color: #8dcbff; font-size: .69rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
        .consortium-scenario-status span { width: 7px; height: 7px; border-radius: 50%; background: #39be88; box-shadow: 0 0 0 5px rgba(57,190,136,.12); }
        .consortium-scenario h3 { margin: 22px 0 25px; color: #fff; font-family: 'Archivo', sans-serif; font-size: 1.55rem; line-height: 1.15; }
        .consortium-scenario h4 { margin: 22px 0 0; color: #8dcbff; font-size: .69rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
        .consortium-scenario dl { display: grid; gap: 0; margin: 0; }
        .consortium-scenario dl > div { display: grid; grid-template-columns: 1fr 1.25fr; gap: 14px; padding: 13px 0; border-top: 1px solid rgba(255,255,255,.1); }
        .consortium-scenario dt { color: #8796ae; font-size: .74rem; }
        .consortium-scenario dd { margin: 0; color: #eef5ff; font-size: .79rem; font-weight: 750; text-align: right; }
        .consortium-scenario > p { margin: 22px 0; color: #aab7ca; font-size: .82rem; line-height: 1.65; }
        .consortium-scenario .leverage-button { width: 100%; }
        .consortium-scenario > small { display: block; margin-top: 14px; color: #7f8da4; font-size: .66rem; line-height: 1.5; }

        .consortium-journey { padding-bottom: 130px; }
        .consortium-timeline { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; margin: 58px 0 0; padding: 0; list-style: none; }
        .consortium-timeline::before,
        .consortium-timeline::after { content: ''; position: absolute; top: 22px; left: 5%; right: 5%; height: 2px; }
        .consortium-timeline::before { background: var(--leverage-line); }
        .consortium-timeline::after { right: auto; width: 90%; background: var(--leverage-blue); transform: scaleX(0); transform-origin: left center; transition: transform 1.1s cubic-bezier(.2,.7,.2,1); }
        .consortium-timeline.is-visible::after { transform: scaleX(1); }
        .consortium-timeline li { position: relative; z-index: 1; padding: 0 22px; text-align: center; }
        .consortium-timeline li > span { display: grid; width: 44px; height: 44px; place-items: center; margin: 0 auto 22px; border: 2px solid var(--leverage-line); border-radius: 50%; background: var(--leverage-paper); color: var(--leverage-blue-deep); font-size: .7rem; font-weight: 850; transition: border-color .3s ease, background-color .3s ease, color .3s ease; }
        .consortium-timeline.is-visible li > span { border-color: var(--leverage-blue); background: var(--leverage-blue-deep); color: #fff; }
        .consortium-timeline h3 { margin: 0 0 9px; color: var(--leverage-ink); font-family: 'Archivo', sans-serif; font-size: 1rem; }
        .consortium-timeline p { margin: 0; color: var(--leverage-muted); font-size: .78rem; line-height: 1.56; }

        .consortium-comparison { width: 100%; max-width: none; padding-inline: max(40px, calc((100% - 1440px) / 2)); background: #eaf0f7; }
        .consortium-comparison-layout { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(350px, .75fr); gap: 18px; align-items: stretch; }
        .consortium-comparison-panel { padding: clamp(30px, 4vw, 56px); border-radius: 14px; background: var(--leverage-night); color: #fff; box-shadow: 4px 10px 28px rgba(7,18,43,.14); }
        .consortium-comparison-panel .consortium-section-index { color: #80c6ff; }
        .consortium-comparison-panel h2 { color: #fff; }
        .consortium-comparison-lead { color: #aebbd1; }
        .consortium-table-wrap { margin-top: 34px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 10px; }
        .consortium-comparison-table { width: 100%; border-collapse: collapse; }
        .consortium-comparison-table th,
        .consortium-comparison-table td { padding: 16px 17px; border-bottom: 1px solid rgba(255,255,255,.09); text-align: left; vertical-align: top; }
        .consortium-comparison-table thead th { color: #8dcfff; background: rgba(255,255,255,.045); font-size: .69rem; letter-spacing: .09em; text-transform: uppercase; }
        .consortium-comparison-table tbody th { width: 25%; color: #eef5ff; font-size: .76rem; }
        .consortium-comparison-table tbody td { color: #aebbd1; font-size: .76rem; line-height: 1.45; }
        .consortium-comparison-table tr:last-child th,
        .consortium-comparison-table tr:last-child td { border-bottom: 0; }
        .consortium-comparison-note { display: flex; align-items: flex-start; gap: 10px; margin: 20px 0 0; color: #8797b1; font-size: .72rem; line-height: 1.55; }
        .consortium-comparison-note .material-symbols-outlined { color: #69bcff; font-size: 18px; }
        .consortium-bid-panel { padding: clamp(30px, 3vw, 46px); border: 1px solid #d7e0eb; border-radius: 14px; background: #fff; box-shadow: 3px 8px 23px rgba(7,18,43,.07); }
        .consortium-bid-icon { display: grid; width: 50px; height: 50px; place-items: center; margin-bottom: 30px; border-radius: 10px; background: #e6f4ff; color: var(--leverage-blue-deep); }
        .consortium-bid-panel h2 { font-size: clamp(1.85rem, 2.6vw, 2.65rem); }
        .consortium-bid-panel > p:not(.consortium-section-index) { margin: 18px 0 0; color: var(--leverage-muted); font-size: .9rem; line-height: 1.65; }
        .consortium-bid-panel ul { display: grid; gap: 12px; margin: 26px 0 0; padding: 0; list-style: none; }
        .consortium-bid-panel li { padding: 13px 0 0; border-top: 1px solid var(--leverage-line); color: var(--leverage-muted); font-size: .8rem; line-height: 1.5; }
        .consortium-bid-panel li strong { color: var(--leverage-ink); }
        .consortium-bid-alert { display: flex; gap: 11px; margin-top: 26px; padding: 15px; border: 1px solid #b7daf8; border-radius: 9px; background: #f2f9ff; color: #315174; }
        .consortium-bid-alert .material-symbols-outlined { color: var(--leverage-blue-deep); font-size: 21px; }
        .consortium-bid-alert p { margin: 0; font-size: .72rem; line-height: 1.5; }

        .consortium-faq { max-width: 1080px; }
        .consortium-faq-list { border-top: 1px solid var(--leverage-line); }
        .consortium-faq-item { border-bottom: 1px solid var(--leverage-line); }
        .consortium-faq-item h3 { margin: 0; }
        .consortium-faq-item button { display: flex; width: 100%; min-height: 74px; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 4px; border: 0; background: transparent; color: var(--leverage-ink); font-family: 'Archivo', sans-serif; font-size: .98rem; font-weight: 680; text-align: left; cursor: pointer; }
        .consortium-faq-item button:hover { color: var(--leverage-blue-deep); }
        .consortium-faq-item button .material-symbols-outlined { display: grid; width: 30px; height: 30px; flex: 0 0 30px; place-items: center; border: 1px solid var(--leverage-line); border-radius: 50%; color: var(--leverage-blue-deep); font-size: 18px; }
        .consortium-faq-answer { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .28s ease; }
        .consortium-faq-answer > div { min-height: 0; overflow: hidden; }
        .consortium-faq-answer p { max-width: 78ch; margin: 0; padding: 0 50px 0 4px; color: var(--leverage-muted); font-size: .88rem; line-height: 1.7; }
        .consortium-faq-answer.is-open { grid-template-rows: 1fr; }
        .consortium-faq-answer.is-open p { padding-bottom: 24px; }

        .consortium-stories { width: 100%; padding: clamp(76px, 8vw, 116px) max(40px, calc((100% - 1440px) / 2)); background: var(--leverage-night); color: #fff; }
        .consortium-stories-inner { width: min(1440px, 100%); margin: 0 auto; }
        .consortium-section-heading-light h2 { color: #fff; }
        .consortium-section-heading-light > p:last-child { color: #aebbd1; }
        .consortium-section-heading-light .consortium-section-index { color: #80c6ff; }
        .consortium-stories-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
        .consortium-story { overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 12px; background: rgba(255,255,255,.045); }
        .consortium-story-media { position: relative; height: 230px; overflow: hidden; }
        .consortium-story-media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(2,7,24,.56), transparent 55%); }
        .consortium-story-media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.75); transition: transform .55s ease; }
        .consortium-story:hover .consortium-story-media img { transform: scale(1.015); }
        .consortium-story-media span { position: absolute; z-index: 1; left: 16px; bottom: 15px; padding: 6px 9px; border: 1px solid rgba(255,255,255,.2); border-radius: 6px; background: rgba(2,7,24,.74); color: #d8ebff; font-size: .62rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
        .consortium-story-copy { padding: 24px; }
        .consortium-story-copy small { color: #80c6ff; font-size: .66rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
        .consortium-story-copy h3 { margin: 12px 0 10px; color: #fff; font-family: 'Archivo', sans-serif; font-size: 1.22rem; line-height: 1.28; }
        .consortium-story-copy p { margin: 0; color: #aebbd1; font-size: .8rem; line-height: 1.6; }

        .consortium-final-cta { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(340px, .75fr); gap: 60px; align-items: center; width: min(1440px, calc(100% - 80px)); margin: 0 auto; padding: clamp(70px, 7vw, 104px) 0; }
        .consortium-final-copy h2 { max-width: 14ch; }
        .consortium-final-action { justify-self: stretch; padding: 26px; border: 1px solid #c9e5ff; border-radius: 12px; background: #eaf6ff; }
        .consortium-final-action .leverage-button { width: 100%; }
        .consortium-final-action ul { display: grid; gap: 10px; margin: 20px 0 0; padding: 0; list-style: none; }
        .consortium-final-action li { display: flex; align-items: center; gap: 9px; color: #49627e; font-size: .77rem; font-weight: 690; }
        .consortium-final-action li .material-symbols-outlined { color: var(--leverage-blue-deep); font-size: 18px; }

        .leverage-motion-ready [data-leverage-reveal] { opacity: 0; transform: translateY(12px); transition: opacity .5s ease var(--leverage-delay, 0ms), transform .5s ease var(--leverage-delay, 0ms); }
        .leverage-motion-ready [data-leverage-reveal].is-visible { opacity: 1; transform: translateY(0); }

        [data-theme="dark"] #consorcio.leverage-page,
        [data-theme="dark"] .consortium-page-content { --leverage-paper: #07132b; --leverage-canvas: #03091a; --leverage-ink: #f4f7fc; --leverage-muted: #a1adc0; --leverage-line: #182642; }
        [data-theme="dark"] .consortium-comparison { background: #050d20; }
        [data-theme="dark"] .consortium-bid-panel { background: #0a1730; border-color: #1a3152; }
        [data-theme="dark"] .consortium-bid-alert { background: #0d2441; border-color: #1f4f7b; color: #a9c7e4; }
        [data-theme="dark"] .consortium-final-action { background: #081b34; border-color: #173b61; }
        [data-theme="dark"] .consortium-final-action li { color: #afc2d9; }
        [data-theme="dark"] .consortium-audience-card > .material-symbols-outlined { background: #0b2948; }

        @media (max-width: 1299px) {
            .leverage-hero-inner { grid-template-columns: minmax(0, 43fr) minmax(470px, 57fr); gap: 32px; }
            .leverage-title { font-size: clamp(3.65rem, 5.6vw, 5rem); }
            .leverage-category-card { height: 288px; }
            .leverage-category-main { height: 344px; }
            .consortium-audience-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
            .consortium-audience-card { min-height: 218px; }
        }

        @media (max-width: 1023px) {
            .leverage-hero-inner { grid-template-columns: 1fr; min-height: auto; padding-top: 64px; }
            .leverage-hero-copy { max-width: 760px; }
            .leverage-title { max-width: none; }
            .leverage-title span { display: inline; }
            .leverage-title span::after { content: ' '; }
            .leverage-showcase { max-width: 800px; padding-top: 20px; }
            .leverage-category-card { height: 250px; }
            .leverage-category-main { height: 300px; }
            .consortium-section { width: min(100% - 48px, 1440px); }
            .consortium-strategy,
            .consortium-comparison { width: 100%; padding-inline: 24px; }
            .consortium-strategy-layout,
            .consortium-comparison-layout { grid-template-columns: 1fr; }
            .consortium-scenario { position: relative; top: 0; }
            .consortium-timeline { grid-template-columns: 1fr; gap: 26px; }
            .consortium-timeline::before,
            .consortium-timeline::after { top: 10px; bottom: 10px; left: 21px; right: auto; width: 2px; height: auto; }
            .consortium-timeline::after { height: calc(100% - 20px); transform: scaleY(0); transform-origin: center top; }
            .consortium-timeline.is-visible::after { transform: scaleY(1); }
            .consortium-timeline li { min-height: 88px; padding: 0 0 0 72px; text-align: left; }
            .consortium-timeline li > span { position: absolute; top: 0; left: 0; margin: 0; }
            .consortium-stories-grid { grid-template-columns: 1fr 1fr; }
            .consortium-story:last-child { grid-column: 1 / -1; }
            .consortium-final-cta { grid-template-columns: 1fr; width: calc(100% - 48px); gap: 34px; }
        }

        @media (max-width: 767px) {
            .leverage-hero,
            .sidebar:hover ~ .main-content .leverage-hero { width: 100vw; margin-inline-start: calc((100% - 100vw) / 2); }
            .leverage-hero-inner { padding: 46px 20px 30px; }
            .leverage-title { display: block; max-width: 8ch; font-size: clamp(3.1rem, 14vw, 4.25rem); line-height: .92; }
            .leverage-title span { display: block; }
            .leverage-benefit-rail { grid-template-columns: 1fr; }
            .leverage-showcase { grid-template-columns: repeat(2, 1fr); padding-bottom: 18px; }
            .leverage-category-card,
            .leverage-category-main { height: 230px; }
            .leverage-category-main { grid-column: 1 / -1; grid-row: 1; }
            .leverage-floating-note { display: none; }
            .consortium-section { width: calc(100% - 40px); padding: 74px 0; }
            .consortium-strategy,
            .consortium-comparison { width: 100%; padding-inline: 20px; }
            .consortium-audience-grid { grid-template-columns: 1fr 1fr; }
            .consortium-audience-card { min-height: 210px; }
            .consortium-choice-options { grid-template-columns: 1fr 1fr; }
            .consortium-choice-group[data-consortium-group="objective"] .consortium-choice-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
            .consortium-stories { padding-inline: 20px; }
            .consortium-stories-grid { grid-template-columns: 1fr; }
            .consortium-story:last-child { grid-column: auto; }
            .consortium-final-cta { width: calc(100% - 40px); }
        }

        @media (max-width: 600px) {
            .leverage-hero-actions { display: grid; grid-template-columns: 1fr; }
            .leverage-button { width: 100%; }
            .leverage-showcase { gap: 9px; }
            .leverage-category-card,
            .leverage-category-main { height: 190px; }
            .leverage-category-copy { inset: auto 13px 13px; }
            .consortium-section-heading h2,
            .consortium-strategy-intro h2,
            .consortium-comparison-panel h2,
            .consortium-final-copy h2 { font-size: clamp(2rem, 10vw, 2.65rem); }
            .consortium-audience-grid { grid-template-columns: 1fr; }
            .consortium-audience-card { min-height: auto; }
            .consortium-audience-card h3 { margin-top: 24px; }
            .consortium-choice-options { grid-template-columns: 1fr; }
            .consortium-choice-group[data-consortium-group="objective"] .consortium-choice-options { grid-template-columns: 1fr; }
            .consortium-scenario { padding: 24px 20px; }
            .consortium-scenario dl > div { grid-template-columns: 1fr; gap: 5px; }
            .consortium-scenario dd { text-align: left; }
            .consortium-comparison-panel,
            .consortium-bid-panel { padding: 25px 18px; }
            .consortium-table-wrap { border: 0; overflow: visible; }
            .consortium-comparison-table,
            .consortium-comparison-table tbody,
            .consortium-comparison-table tr,
            .consortium-comparison-table th,
            .consortium-comparison-table td { display: block; width: 100%; }
            .consortium-comparison-table thead { display: none; }
            .consortium-comparison-table tr { margin-bottom: 12px; overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 8px; }
            .consortium-comparison-table tbody th { padding: 13px; background: rgba(255,255,255,.06); border: 0; }
            .consortium-comparison-table tbody td { display: grid; grid-template-columns: 94px 1fr; gap: 10px; padding: 11px 13px; border: 0; border-top: 1px solid rgba(255,255,255,.08); }
            .consortium-comparison-table tbody td::before { content: attr(data-label); color: #80c6ff; font-size: .65rem; font-weight: 800; text-transform: uppercase; }
            .consortium-faq-item button { font-size: .9rem; }
            .consortium-faq-answer p { padding-right: 4px; }
            .consortium-story-media { height: 205px; }
            .consortium-final-action { padding: 22px 18px; }
        }

        @media (prefers-reduced-motion: reduce) {
            #consorcio *,
            #consorcio *::before,
            #consorcio *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
            .leverage-motion-ready [data-leverage-reveal] { opacity: 1; transform: none; }
            .consortium-timeline::after { transition: none; }
        }

        /* =========================================
           BANKING & WEALTH — CONTEÚDO APÓS A HERO
           A Hero usa exclusivamente o namespace .wealth-* acima.
           ========================================= */
        #banking .banking-rest {
            --bank-rest-night: #020718;
            --bank-rest-navy: #061328;
            --bank-rest-navy-soft: #0a1b36;
            --bank-rest-blue: #078bff;
            --bank-rest-blue-deep: #0757d3;
            --bank-rest-paper: #ffffff;
            --bank-rest-canvas: #f4f7fb;
            --bank-rest-ink: #07122b;
            --bank-rest-muted: #647087;
            --bank-rest-line: #dce4ee;
            width: 100%;
            color: var(--bank-rest-ink);
            background: var(--bank-rest-canvas);
            overflow: clip;
        }

        #banking .banking-rest button,
        #banking .banking-rest a { -webkit-tap-highlight-color: transparent; }

        #banking .banking-rest button:focus-visible,
        #banking .banking-rest a:focus-visible {
            outline: 3px solid #77c0ff;
            outline-offset: 3px;
        }

        #banking .banking-rest ::selection { color: #fff; background: var(--bank-rest-blue-deep); }

        #banking .banking-rest-benefit-strip {
            width: 100%;
            margin: -40px 0 0;
            overflow: hidden;
            color: #fff;
            background: var(--bank-rest-navy);
            border: 1px solid rgba(255,255,255,.08);
            border-radius: 16px;
            box-shadow: 0 16px 36px rgba(2,7,24,.14);
        }

        .sidebar:hover ~ .main-content #banking .banking-rest-benefit-strip {
            width: 100%;
            margin-inline-start: 0;
        }

        #banking .banking-rest-benefit-strip-inner {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            width: min(1500px, 100%);
            margin: 0 auto;
            padding: 0 48px;
        }

        #banking .banking-rest-benefit-strip article {
            display: grid;
            grid-template-columns: 32px minmax(0, 1fr);
            gap: 14px;
            min-height: 140px;
            align-items: center;
            padding: 26px 28px;
            border-inline-end: 1px solid rgba(255,255,255,.08);
        }

        #banking .banking-rest-benefit-strip article:first-child { border-inline-start: 1px solid rgba(255,255,255,.08); }
        #banking .banking-rest-benefit-strip .material-symbols-outlined { color: #62b6ff; font-size: 26px; }
        #banking .banking-rest-benefit-strip h2 { margin: 0 0 5px; color: #fff; font-family: 'Archivo',sans-serif; font-size: .91rem; line-height: 1.25; }
        #banking .banking-rest-benefit-strip p { margin: 0; color: #9eacc1; font-size: .74rem; line-height: 1.52; }

        #banking .banking-rest-section {
            width: min(1500px, 100%);
            margin: 0 auto;
            padding: 84px 48px;
        }

        #banking .banking-rest-heading { max-width: 850px; margin-bottom: 44px; }
        #banking .banking-rest-heading h2,
        #banking .banking-rest-rewards-copy h2,
        #banking .banking-rest-iof h2,
        #banking .banking-rest-security-copy h2,
        #banking .banking-rest-final-cta h2 {
            margin: 0;
            color: var(--bank-rest-ink);
            font-family: 'Archivo',sans-serif;
            font-size: clamp(2.4rem, 4vw, 4rem);
            font-weight: 690;
            letter-spacing: -.04em;
            line-height: 1.04;
            text-wrap: balance;
        }

        #banking .banking-rest-heading > p,
        #banking .banking-rest-rewards-copy > p,
        #banking .banking-rest-security-copy > p,
        #banking .banking-rest-final-cta > div > p {
            max-width: 70ch;
            margin: 18px 0 0;
            color: var(--bank-rest-muted);
            font-size: 1rem;
            line-height: 1.7;
        }

        #banking .banking-rest-card-compare-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
        #banking .banking-rest-product-card {
            position: relative;
            display: grid;
            grid-template-columns: minmax(0, 1.06fr) minmax(230px, .94fr);
            min-height: 620px;
            overflow: hidden;
            border: 1px solid rgba(120,171,226,.18);
            border-radius: 18px;
            color: #fff;
            background: var(--bank-rest-night);
            box-shadow: 4px 12px 34px rgba(7,18,43,.15);
            transition: transform 200ms ease, border-color 200ms ease, box-shadow 200ms ease;
        }

        #banking .banking-rest-product-ultra { background: radial-gradient(circle at 83% 42%,rgba(7,139,255,.19),transparent 28%),#06142c; }
        #banking .banking-rest-product-black { background: radial-gradient(circle at 83% 44%,rgba(63,97,143,.14),transparent 30%),#02040a; }
        #banking .banking-rest-product-card:hover { transform: translateY(-4px); border-color: rgba(101,183,255,.45); box-shadow: 6px 16px 42px rgba(7,18,43,.22); }
        #banking .banking-rest-product-copy { position: relative; z-index: 2; display: flex; flex-direction: column; padding: 38px 0 34px 36px; }
        #banking .banking-rest-product-label { margin: 0 0 14px; color: #78c1ff; font-size: .75rem; font-weight: 820; letter-spacing: .13em; text-transform: uppercase; }
        #banking .banking-rest-product-copy h3 { max-width: 16ch; margin: 0; color: #fff; font-family: 'Archivo',sans-serif; font-size: clamp(2rem, 2.6vw, 2.75rem); letter-spacing: -.035em; line-height: 1.05; }
        #banking .banking-rest-product-copy > p:not(.banking-rest-product-label) { margin: 18px 0 0; color: #aab7ca; font-size: .87rem; line-height: 1.65; }
        #banking .banking-rest-product-copy ul { display: grid; gap: 11px; margin: 28px 0 0; padding: 0; list-style: none; }
        #banking .banking-rest-product-copy li { display: grid; grid-template-columns: 20px 1fr; gap: 9px; align-items: start; color: #d4deec; font-size: .8rem; line-height: 1.45; }
        #banking .banking-rest-product-copy li .material-symbols-outlined { color: #62b6ff; font-size: 18px; }
        #banking .banking-rest-product-eligibility { margin-top: auto; padding: 18px 0 0; border-top: 1px solid rgba(255,255,255,.11); }
        #banking .banking-rest-product-eligibility strong { display: block; margin-bottom: 5px; color: #80c7ff; font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; }
        #banking .banking-rest-product-eligibility span { display: block; color: #aab7ca; font-size: .78rem; line-height: 1.5; }
        #banking .banking-rest-product-copy .banking-rest-link { align-self: flex-start; margin-top: 18px; }
        #banking .banking-rest-product-copy > small { margin-top: 10px; color: #9aa8bb; font-size: .75rem; }
        #banking .banking-rest-product-media { position: relative; display: grid; place-items: center; min-width: 0; overflow: hidden; }
        #banking .banking-rest-product-media span { position: absolute; width: 280px; height: 280px; border-radius: 50%; background: rgba(7,139,255,.14); filter: blur(45px); }
        #banking .banking-rest-product-media img { position: relative; z-index: 1; width: min(92%, 350px); max-width: 100%; transform: rotate(-3deg); filter: drop-shadow(2px 20px 24px rgba(0,0,0,.42)); transition: transform 200ms ease; }
        #banking .banking-rest-product-card:hover .banking-rest-product-media img { transform: translateY(-3px) rotate(-1deg); }

        #banking .banking-rest-link {
            display: inline-flex;
            min-height: 48px;
            align-items: center;
            justify-content: center;
            gap: 9px;
            padding: 12px 19px;
            border: 1px solid #9acdfa;
            border-radius: 9px;
            color: var(--bank-rest-blue-deep);
            background: #eef8ff;
            font-size: .8rem;
            font-weight: 800;
            line-height: 1.2;
            text-decoration: none;
            transition: transform 200ms ease, background-color 200ms ease, border-color 200ms ease, box-shadow 200ms ease;
        }
        #banking .banking-rest-link:hover { transform: translateY(-2px); border-color: var(--bank-rest-blue); background: #fff; box-shadow: 3px 8px 20px rgba(7,87,211,.13); }
        #banking .banking-rest-link:active { transform: scale(.99); }
        #banking .banking-rest-link .material-symbols-outlined { font-size: 19px; }
        #banking .banking-rest-link-light { border-color: rgba(119,192,255,.36); color: #fff; background: var(--bank-rest-blue-deep); box-shadow: 2px 6px 17px rgba(7,87,211,.22); }
        #banking .banking-rest-link-light:hover { border-color: #77c0ff; background: var(--bank-rest-blue); box-shadow: 3px 9px 24px rgba(7,139,255,.28); }

        #banking .banking-rest-rewards { width: 100%; max-width: none; padding-inline: max(48px, calc((100% - 1500px) / 2 + 48px)); background: #eaf1f8; }
        #banking .banking-rest-rewards-shell { display: grid; grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr); gap: clamp(36px,5vw,80px); align-items: center; width: min(1404px,100%); margin: 0 auto; }
        #banking .banking-rest-rewards-copy { max-width: 520px; }
        #banking .banking-rest-reward-toggle { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: min(390px,100%); margin-top: 30px; padding: 5px; border: 1px solid #c7d4e3; border-radius: 12px; background: #dde7f1; }
        #banking .banking-rest-reward-toggle button { min-height: 48px; border: 1px solid transparent; border-radius: 8px; color: #5d6a80; background: transparent; font: inherit; font-size: .78rem; font-weight: 820; letter-spacing: .07em; text-transform: uppercase; cursor: pointer; transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease, box-shadow 220ms ease; }
        #banking .banking-rest-reward-toggle button.is-active { border-color: #198ce9; color: #fff; background: var(--bank-rest-blue-deep); box-shadow: 2px 5px 15px rgba(7,87,211,.2); }
        #banking .banking-rest-reward-content { min-width: 0; padding: 38px; border: 1px solid #d2dce8; border-radius: 18px; background: #fff; box-shadow: 4px 11px 30px rgba(7,18,43,.07); transition: opacity 150ms ease, transform 150ms ease; }
        #banking .banking-rest-reward-content.is-switching { opacity: .38; transform: translateY(4px); }
        #banking .banking-rest-reward-title-row { display: grid; grid-template-columns: 52px minmax(0,1fr); gap: 17px; align-items: start; }
        #banking .banking-rest-reward-title-row > .material-symbols-outlined { display: grid; width: 52px; height: 52px; place-items: center; border-radius: 10px; color: var(--bank-rest-blue-deep); background: #e7f4ff; }
        #banking .banking-rest-reward-title-row h3 { margin: 0; color: var(--bank-rest-ink); font-family: 'Archivo',sans-serif; font-size: 1.6rem; line-height: 1.15; }
        #banking .banking-rest-reward-title-row p { margin: 8px 0 0; color: var(--bank-rest-muted); font-size: .84rem; line-height: 1.58; }
        #banking .banking-rest-reward-flow { position: relative; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin: 36px 0 0; padding: 0; list-style: none; }
        #banking .banking-rest-reward-flow::before { content:''; position:absolute; top:21px; left:10%; right:10%; height:1px; background:#b9cce1; }
        #banking .banking-rest-reward-flow li { position:relative; z-index:1; display:grid; justify-items:center; gap:10px; color:#53627a; text-align:center; font-size:.78rem; line-height:1.35; }
        #banking .banking-rest-reward-flow li:not(:last-child)::after { content:'arrow_forward'; position:absolute; top:13px; right:-12px; color:#8ab2d9; font-family:'Material Symbols Outlined'; font-size:16px; }
        #banking .banking-rest-reward-flow .material-symbols-outlined { display:grid; width:43px; height:43px; place-items:center; border:1px solid #b9d7f0; border-radius:50%; color:var(--bank-rest-blue-deep); background:#f8fbff; font-size:20px; }
        #banking .banking-rest-reward-content > small { display:block; margin-top:30px; color:#6d7a8e; font-size:.75rem; line-height:1.5; }

        #banking .banking-rest-experience-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
        #banking .banking-rest-experience-grid article { position:relative; min-height:430px; overflow:hidden; border-radius:16px; background:var(--bank-rest-night); box-shadow:3px 9px 24px rgba(7,18,43,.1); }
        #banking .banking-rest-experience-grid img { width:100%; height:100%; object-fit:cover; filter:saturate(.82) contrast(1.03); transition:transform 300ms ease; }
        #banking .banking-rest-experience-grid article > span { position:absolute; inset:0; background:linear-gradient(to top,rgba(2,7,24,.96),rgba(2,7,24,.08) 70%); transition:background-color 300ms ease; }
        #banking .banking-rest-experience-grid article > div { position:absolute; inset:auto 22px 22px; color:#fff; transition:transform 300ms ease; }
        #banking .banking-rest-experience-grid h3 { margin:0; color:#fff; font-family:'Archivo',sans-serif; font-size:1.35rem; }
        #banking .banking-rest-experience-grid p { margin:9px 0 0; color:#c7d1df; font-size:.8rem; line-height:1.55; }
        #banking .banking-rest-experience-grid article:hover img { transform:scale(1.035); }
        #banking .banking-rest-experience-grid article:hover > span { background-color:rgba(7,87,211,.08); }
        #banking .banking-rest-experience-grid article:hover > div { transform:translateY(-3px); }

        #banking .banking-rest-iof { width:100%; max-width:none; padding-inline:max(48px,calc((100% - 1500px)/2 + 48px)); background:#fff; }
        #banking .banking-rest-iof-inner { position:relative; display:grid; grid-template-columns:120px minmax(0,1fr) auto; gap:36px; align-items:center; width:min(1404px,100%); margin:0 auto; overflow:hidden; padding:45px 48px; border:1px solid rgba(86,166,238,.24); border-radius:18px; color:#fff; background:radial-gradient(circle at 18% 50%,rgba(7,139,255,.28),transparent 24%),linear-gradient(118deg,#061328,#092b5b); box-shadow:4px 12px 34px rgba(7,18,43,.14); }
        #banking .banking-rest-iof-icon { position:relative; display:grid; width:104px; height:104px; place-items:center; border:1px solid rgba(119,192,255,.25); border-radius:50%; background:rgba(255,255,255,.05); }
        #banking .banking-rest-iof-icon .material-symbols-outlined:first-child { color:#fff; font-size:39px; }
        #banking .banking-rest-iof-icon .material-symbols-outlined:last-child { position:absolute; right:11px; bottom:11px; display:grid; width:33px; height:33px; place-items:center; border-radius:50%; color:#fff; background:var(--bank-rest-blue-deep); font-size:17px; }
        #banking .banking-rest-iof-inner > div:nth-child(2) > p:first-child { margin:0 0 11px; color:#80c7ff; font-size:.75rem; font-weight:820; letter-spacing:.13em; text-transform:uppercase; }
        #banking .banking-rest-iof h2 { color:#fff; font-size:clamp(2.1rem,3.5vw,3.35rem); }
        #banking .banking-rest-iof-inner > div:nth-child(2) > p:not(:first-child) { max-width:70ch; margin:15px 0 0; color:#c0ccdc; font-size:.84rem; line-height:1.6; }
        #banking .banking-rest-iof-inner strong { display:block; max-width:86ch; margin-top:16px; color:#b3bfd0; font-size:.75rem; font-weight:600; line-height:1.5; }
        #banking .banking-rest-iof .banking-rest-link { min-width:210px; }

        #banking .banking-rest-ecosystem-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
        #banking .banking-rest-ecosystem-grid article { padding:30px; border:1px solid var(--bank-rest-line); border-radius:16px; background:#fff; box-shadow:2px 6px 18px rgba(7,18,43,.045); transition:transform 200ms ease,border-color 200ms ease,box-shadow 200ms ease; }
        #banking .banking-rest-ecosystem-grid article:hover { transform:translateY(-3px); border-color:rgba(7,139,255,.28); box-shadow:3px 9px 24px rgba(7,87,211,.08); }
        #banking .banking-rest-ecosystem-grid article > .material-symbols-outlined { display:grid; width:48px; height:48px; place-items:center; border-radius:10px; color:var(--bank-rest-blue-deep); background:#e7f4ff; }
        #banking .banking-rest-ecosystem-grid h3 { margin:28px 0 10px; color:var(--bank-rest-ink); font-family:'Archivo',sans-serif; font-size:1.35rem; }
        #banking .banking-rest-ecosystem-grid p { margin:0; color:var(--bank-rest-muted); font-size:.84rem; line-height:1.6; }
        #banking .banking-rest-ecosystem-grid ul { display:flex; flex-wrap:wrap; gap:7px; margin:24px 0 0; padding:0; list-style:none; }
        #banking .banking-rest-ecosystem-grid li { padding:7px 9px; border:1px solid #d9e2ec; border-radius:7px; color:#53627a; background:#f7f9fc; font-size:.75rem; font-weight:700; }
        #banking .banking-rest-ecosystem-grid small { display:block; margin-top:17px; color:#6f7c90; font-size:.75rem; line-height:1.45; }

        #banking .banking-rest-security { width:100%; margin-inline-start:0; padding:88px 48px; color:#fff; background:radial-gradient(circle at 71% 32%,rgba(7,139,255,.17),transparent 25%),var(--bank-rest-navy); }
        .sidebar:hover ~ .main-content #banking .banking-rest-security { width:100%; margin-inline-start:0; }
        #banking .banking-rest-security-inner { display:grid; grid-template-columns:minmax(0,.9fr) 220px minmax(0,1.1fr); grid-template-areas:'copy visual cards'; gap:40px; align-items:center; width:min(1404px,100%); margin:0 auto; }
        #banking .banking-rest-security-copy { grid-area:copy; }
        #banking .banking-rest-security-copy h2 { color:#fff; }
        #banking .banking-rest-security-copy > p { color:#aab7ca; }
        #banking .banking-rest-security-visual { grid-area:visual; position:relative; display:grid; width:190px; height:190px; place-items:center; justify-self:center; }
        #banking .banking-rest-security-visual > .material-symbols-outlined { position:relative; z-index:2; display:grid; width:94px; height:118px; place-items:center; border:1px solid rgba(119,192,255,.48); border-radius:48px 48px 28px 28px; color:#86ccff; background:rgba(7,87,211,.18); font-size:42px; box-shadow:2px 10px 30px rgba(0,0,0,.22); }
        #banking .banking-rest-security-visual i { position:absolute; inset:24px; border:1px solid rgba(7,139,255,.25); border-radius:50%; animation:bankRestPulse 6s ease-out infinite; }
        #banking .banking-rest-security-visual i:last-child { inset:4px; animation-delay:3s; }
        @keyframes bankRestPulse { 0%,100%{opacity:.24;transform:scale(.92)} 50%{opacity:.7;transform:scale(1.04)} }
        #banking .banking-rest-security-grid { grid-area:cards; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
        #banking .banking-rest-security-grid article { padding:21px; border:1px solid rgba(255,255,255,.1); border-radius:12px; background:rgba(255,255,255,.035); transition:transform 200ms ease,border-color 200ms ease,background-color 200ms ease; }
        #banking .banking-rest-security-grid article:hover { transform:translateY(-2px); border-color:rgba(119,192,255,.3); background:rgba(7,139,255,.055); }
        #banking .banking-rest-security-grid .material-symbols-outlined { color:#62b6ff; font-size:23px; }
        #banking .banking-rest-security-grid h3 { margin:17px 0 7px; color:#fff; font-family:'Archivo',sans-serif; font-size:.91rem; }
        #banking .banking-rest-security-grid p { margin:0; color:#b3c0d1; font-size:.78rem; line-height:1.5; }

        #banking .banking-rest-eligibility {
            scroll-margin-top:92px;
            margin-top:0;
            margin-bottom:0;
            border:0;
            border-radius:0;
            color:var(--bank-rest-ink);
            background:transparent;
        }
        #banking .banking-rest-eligibility-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
        #banking .banking-rest-eligibility-grid article { padding:36px; border:1px solid var(--bank-rest-line); border-radius:16px; background:#fff; box-shadow:3px 8px 23px rgba(7,18,43,.055); }
        #banking .banking-rest-eligibility-grid h3 { max-width:22ch; margin:0; color:var(--bank-rest-ink); font-family:'Archivo',sans-serif; font-size:clamp(1.75rem,2.6vw,2.5rem); letter-spacing:-.035em; line-height:1.08; }
        #banking .banking-rest-eligibility-grid dl { display:grid; gap:0; margin:30px 0 0; }
        #banking .banking-rest-eligibility-grid dl > div { display:grid; grid-template-columns:130px minmax(0,1fr); gap:18px; padding:16px 0; border-top:1px solid var(--bank-rest-line); }
        #banking .banking-rest-eligibility-grid dt { color:var(--bank-rest-blue-deep); font-size:.75rem; font-weight:800; }
        #banking .banking-rest-eligibility-grid dd { margin:0; color:var(--bank-rest-muted); font-size:.8rem; line-height:1.5; }
        #banking .banking-rest-eligibility-grid .banking-rest-link { margin-top:23px; }

        #banking .banking-rest-faq { max-width:1280px; }
        #banking .banking-rest-faq-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:34px; align-items:start; }
        #banking .banking-rest-faq-item { border-top:1px solid var(--bank-rest-line); }
        #banking .banking-rest-faq-item:nth-last-child(-n+2) { border-bottom:1px solid var(--bank-rest-line); }
        #banking .banking-rest-faq-item h3 { margin:0; }
        #banking .banking-rest-faq-item button { display:flex; width:100%; min-height:72px; align-items:center; justify-content:space-between; gap:18px; padding:17px 3px; border:0; color:var(--bank-rest-ink); background:transparent; font:inherit; font-size:.87rem; font-weight:730; text-align:left; cursor:pointer; }
        #banking .banking-rest-faq-item button:hover { color:var(--bank-rest-blue-deep); }
        #banking .banking-rest-faq-item button .material-symbols-outlined { color:var(--bank-rest-blue-deep); font-size:21px; transition:transform 250ms ease; }
        #banking .banking-rest-faq-item button[aria-expanded="true"] .material-symbols-outlined { transform:rotate(180deg); }
        #banking .banking-rest-faq-answer { display:grid; grid-template-rows:0fr; transition:grid-template-rows 250ms ease; }
        #banking .banking-rest-faq-answer > div { min-height:0; overflow:hidden; }
        #banking .banking-rest-faq-answer p { margin:0; padding:0 42px 0 3px; color:var(--bank-rest-muted); font-size:.78rem; line-height:1.65; }
        #banking .banking-rest-faq-answer.is-open { grid-template-rows:1fr; }
        #banking .banking-rest-faq-answer.is-open p { padding-bottom:22px; }

        #banking .banking-rest-final-cta { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:36px; align-items:center; width:100%; margin-inline-start:0; padding:80px 48px 44px; color:#fff; background:var(--bank-rest-night); }
        .sidebar:hover ~ .main-content #banking .banking-rest-final-cta { width:100%; margin-inline-start:0; }
        #banking .banking-rest-final-cta h2 { max-width:17ch; color:#fff; }
        #banking .banking-rest-final-cta > div > p { color:#aab7ca; }
        #banking .banking-rest-final-actions { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; }
        #banking .banking-rest-final-actions button { min-height:48px; padding:12px 19px; border:1px solid rgba(255,255,255,.22); border-radius:9px; color:#eaf2ff; background:rgba(255,255,255,.04); font:inherit; font-size:.8rem; font-weight:800; cursor:pointer; transition:transform 200ms ease,border-color 200ms ease,background-color 200ms ease; }
        #banking .banking-rest-final-actions button:hover { transform:translateY(-2px); border-color:rgba(119,192,255,.55); background:rgba(7,139,255,.1); }
        #banking .banking-rest-final-actions button:active { transform:scale(.99); }
        #banking .banking-rest-final-cta > small { grid-column:1/-1; padding-top:30px; border-top:1px solid rgba(255,255,255,.1); color:#9cabc0; font-size:.75rem; line-height:1.5; }

        #banking .banking-rest-motion-ready [data-banking-reveal] { opacity:0; transform:translateY(14px); transition:opacity 450ms cubic-bezier(.2,.8,.2,1) var(--bank-rest-delay,0ms),transform 450ms cubic-bezier(.2,.8,.2,1) var(--bank-rest-delay,0ms); }
        #banking .banking-rest-motion-ready [data-banking-reveal].is-visible { opacity:1; transform:translateY(0); }

        [data-theme="dark"] #banking .banking-rest { --bank-rest-paper:#07132b; --bank-rest-canvas:#03091a; --bank-rest-ink:#f5f8fd; --bank-rest-muted:#a5b1c3; --bank-rest-line:#182743; }
        [data-theme="dark"] #banking .banking-rest-rewards,
        [data-theme="dark"] #banking .banking-rest-iof { background:#050d20; }
        [data-theme="dark"] #banking .banking-rest-reward-content,
        [data-theme="dark"] #banking .banking-rest-ecosystem-grid article,
        [data-theme="dark"] #banking .banking-rest-eligibility-grid article { background:#08162e; border-color:#1b3150; }
        [data-theme="dark"] #banking .banking-rest-reward-toggle { background:#0b1e39; border-color:#203755; }
        [data-theme="dark"] #banking .banking-rest-reward-toggle button { color:#c2ccda; }
        [data-theme="dark"] #banking .banking-rest-reward-flow li { color:#c1ccdc; }
        [data-theme="dark"] #banking .banking-rest-reward-content > small { color:#aeb9ca; }
        [data-theme="dark"] #banking .banking-rest-ecosystem-grid li { color:#afbed1; background:#0c1d36; border-color:#203653; }
        [data-theme="dark"] #banking .banking-rest-reward-flow .material-symbols-outlined { background:#0b203d; }

        @media (max-width:1299px) {
            #banking .banking-rest-section { padding-block:76px; }
            #banking .banking-rest-benefit-strip-inner { padding-inline:32px; }
            #banking .banking-rest-benefit-strip article { padding-inline:18px; }
            #banking .banking-rest-product-card { grid-template-columns:minmax(0,1fr) minmax(220px,1fr); min-height:650px; }
            #banking .banking-rest-product-copy { padding-left:28px; }
            #banking .banking-rest-product-media img { width:min(90%,330px); }
            #banking .banking-rest-experience-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #banking .banking-rest-experience-grid article { min-height:360px; }
            #banking .banking-rest-security-inner { grid-template-columns:minmax(0,.8fr) 180px minmax(0,1.2fr); gap:26px; }
        }

        @media (max-width:1199px) {
            #banking .banking-rest-benefit-strip-inner { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #banking .banking-rest-benefit-strip article:nth-child(2) { border-inline-end:0; }
            #banking .banking-rest-benefit-strip article:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.08); }
            #banking .banking-rest-section { padding-inline:32px; }
            #banking .banking-rest-card-compare-grid,
            #banking .banking-rest-rewards-shell,
            #banking .banking-rest-eligibility-grid { grid-template-columns:1fr; }
            #banking .banking-rest-product-card { min-height:560px; }
            #banking .banking-rest-product-media img { width:min(90%,330px); }
            #banking .banking-rest-rewards,
            #banking .banking-rest-iof { padding-inline:32px; }
            #banking .banking-rest-iof-inner { grid-template-columns:90px minmax(0,1fr); }
            #banking .banking-rest-iof .banking-rest-link { grid-column:2; justify-self:start; }
            #banking .banking-rest-ecosystem-grid { grid-template-columns:1fr; }
            #banking .banking-rest-security { padding-inline:32px; }
            #banking .banking-rest-security-inner { grid-template-columns:minmax(0,1fr) 170px; grid-template-areas:'copy visual' 'cards cards'; }
            #banking .banking-rest-faq-grid { grid-template-columns:1fr; }
            #banking .banking-rest-faq-item:nth-last-child(-n+2) { border-bottom:0; }
            #banking .banking-rest-faq-item:last-child { border-bottom:1px solid var(--bank-rest-line); }
            #banking .banking-rest-final-cta { grid-template-columns:1fr; padding-inline:32px; }
            #banking .banking-rest-final-actions { justify-content:flex-start; }
        }

        @media (max-width:767px) {
            #banking .banking-rest-benefit-strip,
            .sidebar:hover ~ .main-content #banking .banking-rest-benefit-strip,
            #banking .banking-rest-security,
            .sidebar:hover ~ .main-content #banking .banking-rest-security,
            #banking .banking-rest-final-cta,
            .sidebar:hover ~ .main-content #banking .banking-rest-final-cta { width:100%; margin-inline-start:0; }
        }

        @media (max-width:599px) {
            #banking .banking-rest-benefit-strip-inner { grid-template-columns:1fr; padding-inline:20px; }
            #banking .banking-rest-benefit-strip article { min-height:auto; padding:22px 0; border-inline:0; border-bottom:1px solid rgba(255,255,255,.08); }
            #banking .banking-rest-benefit-strip article:first-child { border-inline-start:0; }
            #banking .banking-rest-section { padding:68px 20px; }
            #banking .banking-rest-heading h2,
            #banking .banking-rest-rewards-copy h2,
            #banking .banking-rest-security-copy h2,
            #banking .banking-rest-final-cta h2 { font-size:clamp(2.25rem,10vw,2.6rem); }
            #banking .banking-rest-product-card { grid-template-columns:1fr; min-height:0; }
            #banking .banking-rest-product-copy { padding:28px 22px 0; }
            #banking .banking-rest-product-copy h3 { font-size:2rem; }
            #banking .banking-rest-product-eligibility { margin-top:28px; }
            #banking .banking-rest-product-media { min-height:240px; }
            #banking .banking-rest-product-media img { width:min(95%,340px); transform:rotate(-3deg); }
            #banking .banking-rest-product-card:hover .banking-rest-product-media img { transform:translateY(-3px) rotate(-1deg); }
            #banking .banking-rest-rewards,
            #banking .banking-rest-iof { padding-inline:20px; }
            #banking .banking-rest-reward-content { padding:25px 18px; }
            #banking .banking-rest-reward-flow { grid-template-columns:1fr; gap:15px; }
            #banking .banking-rest-reward-flow::before { top:6%; bottom:6%; left:21px; right:auto; width:1px; height:auto; }
            #banking .banking-rest-reward-flow li { grid-template-columns:43px 1fr; justify-items:start; align-items:center; text-align:left; }
            #banking .banking-rest-reward-flow li:not(:last-child)::after { content:'arrow_downward'; top:auto; right:auto; bottom:-17px; left:13px; }
            #banking .banking-rest-experience-grid { grid-template-columns:1fr; }
            #banking .banking-rest-experience-grid article { min-height:350px; }
            #banking .banking-rest-iof-inner { grid-template-columns:1fr; gap:24px; padding:30px 22px; }
            #banking .banking-rest-iof-icon { width:78px; height:78px; }
            #banking .banking-rest-iof .banking-rest-link { grid-column:auto; width:100%; }
            #banking .banking-rest-security { padding:70px 20px; }
            #banking .banking-rest-security-inner { grid-template-columns:1fr; grid-template-areas:'copy' 'visual' 'cards'; }
            #banking .banking-rest-security-grid { grid-template-columns:1fr; }
            #banking .banking-rest-eligibility-grid article { padding:27px 21px; }
            #banking .banking-rest-eligibility-grid dl > div { grid-template-columns:1fr; gap:5px; }
            #banking .banking-rest-final-cta { padding:68px 20px 34px; }
            #banking .banking-rest-final-actions { display:grid; grid-template-columns:1fr; }
            #banking .banking-rest-final-actions .banking-rest-link,
            #banking .banking-rest-final-actions button { width:100%; }
        }

        @media (prefers-reduced-motion:reduce) {
            #banking .banking-rest *,
            #banking .banking-rest *::before,
            #banking .banking-rest *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
            #banking .banking-rest-motion-ready [data-banking-reveal] { opacity:1; transform:none; }
        }

        /* FIIs — ferramenta de análise isolada */
        #fiis { min-width:0; overflow-x:clip; color:var(--text-main); }
        #fiis *, #fiis *::before, #fiis *::after { box-sizing:border-box; }
        #fiis ::selection { background:rgba(7,139,255,.28); color:inherit; }
        #fiis button, #fiis input, #fiis select { font:inherit; }
        #fiis button, #fiis a { -webkit-tap-highlight-color:transparent; }
        #fiis button:focus-visible, #fiis a:focus-visible, #fiis input:focus-visible, #fiis select:focus-visible, #fiis [tabindex]:focus-visible { outline:3px solid rgba(7,139,255,.42); outline-offset:3px; }
        #fiis .fii-page-shell { width:100%; min-width:0; }
        #fiis .fii-content { display:grid; gap:64px; padding-top:58px; }
        #fiis .fii-section { min-width:0; scroll-margin-top:92px; }
        #fiis .fii-section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:24px; }
        #fiis .fii-section-heading h2, #fiis .fii-analysis-head h2, #fiis .fii-income h2, #fiis .fii-final-cta h2 { margin:0 0 8px; font-family:'Archivo',sans-serif; font-size:clamp(1.65rem,2.2vw,2.15rem); line-height:1.08; letter-spacing:-.035em; color:var(--text-main); }
        #fiis .fii-section-heading p, #fiis .fii-analysis-head p, #fiis .fii-panel-heading p { margin:0; color:var(--text-muted); line-height:1.55; }

        #fiis .fii-hero { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr); gap:clamp(34px,5vw,72px); min-height:570px; padding:clamp(42px,6vw,78px); overflow:hidden; border-radius:16px 16px 0 0; background:#020718; color:#fff; }
        #fiis .fii-hero-image, #fiis .fii-hero-shade { position:absolute; inset:0; width:100%; height:100%; }
        #fiis .fii-hero-image { z-index:-3; object-fit:cover; object-position:center; filter:saturate(.65) contrast(1.08); }
        #fiis .fii-hero-shade { z-index:-2; background:linear-gradient(90deg,rgba(2,7,24,.97) 0%,rgba(2,7,24,.89) 43%,rgba(2,7,24,.63) 73%,rgba(2,7,24,.78) 100%); }
        #fiis .fii-hero-copy { align-self:center; max-width:720px; }
        #fiis .fii-hero h1 { max-width:700px; margin:0 0 20px; color:#fff; font-family:'Archivo',sans-serif; font-size:clamp(2.65rem,5vw,4.85rem); line-height:.98; letter-spacing:-.048em; text-wrap:balance; }
        #fiis .fii-hero-copy > p:not(.fii-data-status) { max-width:64ch; margin:0 0 30px; color:#C4D1E6; font-size:1.04rem; line-height:1.68; }
        #fiis .fii-search { position:relative; z-index:8; min-width:0; }
        #fiis .fii-search > label { display:block; margin-bottom:9px; color:#EAF2FF; font-size:.78rem; font-weight:700; }
        #fiis .fii-search-control { display:grid; grid-template-columns:24px minmax(0,1fr) auto; align-items:center; gap:11px; min-height:60px; padding:0 15px 0 18px; border:1px solid rgba(255,255,255,.2); border-radius:10px; background:rgba(255,255,255,.97); box-shadow:0 18px 42px rgba(0,0,0,.24); color:#07142D; transition:border-color .2s,box-shadow .2s; }
        #fiis .fii-search-control:focus-within { border-color:#078BFF; box-shadow:0 0 0 4px rgba(7,139,255,.18),0 18px 42px rgba(0,0,0,.24); }
        #fiis .fii-search-control .material-symbols-outlined { color:#0757D3; }
        #fiis .fii-search-control input { width:100%; min-width:0; height:58px; padding:0; border:0; outline:0; background:transparent; color:#07142D; font-size:1rem; }
        #fiis .fii-search-control input::placeholder { color:#64738B; }
        #fiis .fii-search-control kbd { border:1px solid #D7DFEA; border-radius:5px; padding:4px 7px; background:#EFF3F8; color:#5D6B80; font-size:.68rem; }
        #fiis .fii-autocomplete { position:absolute; top:calc(100% + 8px); left:0; right:0; z-index:40; max-height:340px; overflow:auto; border:1px solid #D9E1EB; border-radius:12px; background:#fff; box-shadow:0 24px 54px rgba(0,11,38,.24); color:#09142B; animation:fiiFade .18s ease-out; }
        #fiis .fii-autocomplete button { width:100%; display:grid; grid-template-columns:minmax(105px,.7fr) minmax(140px,1.45fr) minmax(95px,.8fr) auto; gap:14px; align-items:center; min-height:68px; padding:12px 16px; border:0; border-bottom:1px solid #E4E9F0; background:#fff; color:#09142B; text-align:left; cursor:pointer; }
        #fiis .fii-autocomplete button:last-child { border-bottom:0; }
        #fiis .fii-autocomplete button:hover, #fiis .fii-autocomplete button[aria-selected="true"] { background:#EEF6FF; }
        #fiis .fii-autocomplete strong { font-family:'Archivo',sans-serif; }
        #fiis .fii-autocomplete span, #fiis .fii-autocomplete small { color:#617087; }
        #fiis .fii-autocomplete .fii-result-market { text-align:right; font-variant-numeric:tabular-nums; }
        #fiis .fii-autocomplete .fii-result-market b { display:block; color:#09142B; }
        #fiis .fii-autocomplete-empty { padding:22px; text-align:center; color:#58657A; }
        #fiis .fii-data-status { min-height:20px; margin:12px 0 0; color:#91A3BF; font-size:.74rem; }

        #fiis .fii-hero-summary { align-self:center; min-width:0; padding:30px; border:1px solid rgba(255,255,255,.14); border-radius:14px; background:rgba(5,14,38,.9); box-shadow:0 28px 60px rgba(0,0,0,.25); }
        #fiis .fii-summary-head { display:flex; justify-content:space-between; gap:18px; padding-bottom:22px; border-bottom:1px solid rgba(255,255,255,.12); }
        #fiis .fii-summary-head strong { display:block; color:#fff; font-family:'Archivo',sans-serif; font-size:1.65rem; letter-spacing:-.025em; }
        #fiis .fii-summary-head span:not(.fii-chip) { display:block; margin-top:3px; color:#A9B8CE; font-size:.85rem; }
        #fiis .fii-chip, #fiis .fii-source-badge { align-self:flex-start; padding:5px 9px; border-radius:4px; background:rgba(7,139,255,.15); color:#66B7FF; font-size:.67rem; font-style:normal; font-weight:800; letter-spacing:.04em; }
        #fiis .fii-summary-price { display:grid; grid-template-columns:1fr auto; gap:4px 14px; padding:25px 0; }
        #fiis .fii-summary-price > span:first-child { grid-column:1/-1; color:#90A2BD; font-size:.72rem; }
        #fiis .fii-summary-price strong { color:#fff; font-family:'Archivo',sans-serif; font-size:2.35rem; font-variant-numeric:tabular-nums; }
        #fiis .fii-change { align-self:end; justify-self:end; margin-bottom:6px; font-size:.86rem; font-weight:800; }
        #fiis .fii-change.is-positive { color:#70E49D; }
        #fiis .fii-change.is-negative { color:#FF9999; }
        #fiis .fii-summary-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:0; background:rgba(255,255,255,.1); }
        #fiis .fii-summary-metrics > div { padding:15px; background:#08142F; }
        #fiis .fii-summary-metrics > div:last-child:nth-child(odd) { grid-column:1/-1; }
        #fiis .fii-summary-metrics dt { color:#8799B5; font-size:.67rem; }
        #fiis .fii-summary-metrics dd { margin:5px 0 0; color:#F6F9FF; font-weight:800; font-variant-numeric:tabular-nums; }
        #fiis .fii-skeleton { position:relative; overflow:hidden; color:transparent !important; border-radius:4px; background:rgba(255,255,255,.1); }
        #fiis .fii-skeleton::after, #fiis .fii-table-skeleton::after { content:''; position:absolute; inset:0; transform:translateX(-100%); background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent); animation:fiiSkeleton 1.25s infinite; }
        #fiis .fii-skeleton-text { min-width:120px; }

        #fiis .fii-market-band { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) minmax(230px,1.3fr); border:1px solid var(--border-color); border-top:0; border-radius:0 0 16px 16px; background:var(--bg-card); }
        #fiis .fii-market-band > div { min-width:0; padding:20px 24px; border-right:1px solid var(--border-color); }
        #fiis .fii-market-band > div:last-child { border-right:0; }
        #fiis .fii-market-band span, #fiis .fii-market-band small { display:block; color:var(--text-muted); font-size:.69rem; }
        #fiis .fii-market-band strong { display:block; margin:5px 0 3px; color:var(--text-main); font-family:'Archivo',sans-serif; font-size:1.18rem; font-variant-numeric:tabular-nums; }
        #fiis .fii-market-band .fii-market-segments { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.88rem; }

        #fiis .fii-text-button { padding:5px 0; border:0; border-bottom:1px solid currentColor; background:transparent; color:#0757D3; font-size:.78rem; font-weight:800; cursor:pointer; }
        #fiis .fii-segment-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--border-color); border-radius:14px; overflow:hidden; background:var(--bg-card); }
        #fiis .fii-segment-card { position:relative; display:grid; grid-template-columns:32px 1fr 18px; grid-template-areas:'icon title count' 'icon copy count' 'icon meta count'; gap:4px 12px; min-height:142px; padding:23px 20px; border:0; border-right:1px solid var(--border-color); border-bottom:1px solid var(--border-color); background:var(--bg-card); color:var(--text-main); text-align:left; cursor:pointer; transition:transform .2s,border-color .2s,background-color .2s,box-shadow .2s; }
        #fiis .fii-segment-card:nth-child(4n) { border-right:0; }
        #fiis .fii-segment-card:nth-child(n+5) { border-bottom:0; }
        #fiis .fii-segment-card::after { content:'arrow_forward'; grid-area:count; align-self:start; justify-self:end; color:#078BFF; font-family:'Material Symbols Outlined'; font-size:18px; }
        #fiis .fii-segment-card > .material-symbols-outlined { grid-area:icon; color:#078BFF; font-size:28px; }
        #fiis .fii-segment-card strong { grid-area:title; font-family:'Archivo',sans-serif; }
        #fiis .fii-segment-card small { grid-area:copy; color:var(--text-muted); line-height:1.45; }
        #fiis .fii-segment-card em { grid-area:meta; margin-top:7px; color:#0757D3; font-size:.69rem; font-style:normal; font-weight:800; }
        #fiis .fii-segment-card:hover, #fiis .fii-segment-card.is-active { z-index:1; transform:translateY(-3px); border-color:rgba(7,139,255,.45); background:color-mix(in srgb,var(--bg-card) 92%,#078BFF 8%); box-shadow:0 14px 30px rgba(5,30,68,.1); }

        #fiis .fii-screener-layout { display:grid; grid-template-columns:minmax(250px,30%) minmax(0,70%); border:1px solid var(--border-color); border-radius:14px; overflow:hidden; background:var(--bg-card); }
        #fiis .fii-filter-panel { display:grid; align-content:start; gap:17px; padding:24px; border-right:1px solid var(--border-color); background:color-mix(in srgb,var(--bg-card) 94%,#078BFF 6%); }
        #fiis .fii-filter-title { display:flex; justify-content:space-between; align-items:center; }
        #fiis .fii-filter-title strong { font-family:'Archivo',sans-serif; font-size:1.05rem; }
        #fiis .fii-filter-title button { padding:0; border:0; background:transparent; color:#0757D3; font-size:.72rem; font-weight:800; cursor:pointer; }
        #fiis .fii-filter-panel > label, #fiis .fii-filter-panel fieldset { display:grid; gap:7px; margin:0; padding:0; border:0; color:var(--text-muted); font-size:.72rem; font-weight:700; }
        #fiis .fii-filter-panel legend { margin-bottom:7px; }
        #fiis .fii-filter-panel select, #fiis .fii-filter-panel input:not([type="checkbox"]) { width:100%; min-height:43px; padding:0 11px; border:1px solid var(--border-color); border-radius:8px; background:var(--bg-card); color:var(--text-main); }
        #fiis .fii-filter-unavailable { opacity:.58; }
        #fiis .fii-filter-unavailable small { color:var(--text-muted); font-size:.65rem; font-weight:600; line-height:1.4; }
        #fiis .fii-filter-unavailable :disabled { cursor:not-allowed; }
        #fiis .fii-pair { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
        #fiis .fii-pair label { display:grid; gap:5px; }
        #fiis .fii-pair label span { font-size:.63rem; }
        #fiis .fii-check { display:flex !important; grid-template-columns:18px 1fr; align-items:center; gap:9px !important; min-height:32px; color:var(--text-main) !important; cursor:pointer; }
        #fiis .fii-check input { width:18px; height:18px; accent-color:#078BFF; }
        #fiis .fii-primary-button, #fiis .fii-secondary-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:0 18px; border:1px solid #078BFF; border-radius:9px; background:#078BFF; color:#fff; font-size:.76rem; font-weight:800; text-decoration:none; cursor:pointer; transition:transform .2s,background-color .2s,box-shadow .2s; }
        #fiis .fii-primary-button:hover { transform:translateY(-2px); background:#299BFF; box-shadow:0 12px 28px rgba(7,139,255,.22); }
        #fiis .fii-secondary-button { border-color:var(--border-color); background:var(--bg-card); color:var(--text-main); }
        #fiis .fii-table-panel { min-width:0; background:var(--bg-card); }
        #fiis .fii-table-scroll { width:100%; max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; }
        #fiis table { width:100%; min-width:850px; border-collapse:collapse; color:var(--text-main); font-size:.76rem; }
        #fiis th { height:49px; padding:0 13px; border-bottom:1px solid var(--border-color); color:var(--text-muted); font-size:.65rem; font-weight:800; text-align:right; white-space:nowrap; }
        #fiis th:nth-child(1), #fiis th:nth-child(2), #fiis th:nth-child(3) { text-align:left; }
        #fiis td { height:59px; padding:0 13px; border-bottom:1px solid var(--border-color); text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
        #fiis td:nth-child(1), #fiis td:nth-child(2), #fiis td:nth-child(3) { text-align:left; }
        #fiis tbody tr { cursor:pointer; transition:background-color .16s; }
        #fiis tbody tr:hover, #fiis tbody tr:focus-within { background:rgba(7,139,255,.07); }
        #fiis .fii-ticker-cell strong { display:block; font-family:'Archivo',sans-serif; }
        #fiis .fii-ticker-cell small { color:var(--text-muted); }
        #fiis .fii-favorite { display:grid; place-items:center; width:34px; height:34px; padding:0; border:0; border-radius:7px; background:transparent; color:var(--text-muted); cursor:pointer; }
        #fiis .fii-favorite[aria-pressed="true"] { color:#0757D3; background:rgba(7,139,255,.1); }
        #fiis .fii-favorite .material-symbols-outlined { font-variation-settings:'FILL' 0; }
        #fiis .fii-favorite[aria-pressed="true"] .material-symbols-outlined, #fiis .fii-favorite-main[aria-pressed="true"] .material-symbols-outlined { font-variation-settings:'FILL' 1; }
        #fiis .fii-table-skeleton { position:relative; height:240px; overflow:hidden; background:repeating-linear-gradient(180deg,rgba(127,144,169,.08) 0 44px,transparent 44px 59px); }
        #fiis .fii-empty { padding:54px 24px; text-align:center; }
        #fiis .fii-empty strong { font-family:'Archivo',sans-serif; font-size:1.15rem; }
        #fiis .fii-empty p { margin:8px auto 18px; color:var(--text-muted); }
        #fiis .fii-empty button { border:0; background:transparent; color:#0757D3; font-weight:800; cursor:pointer; }

        #fiis .fii-analysis { overflow:hidden; border-radius:14px; background:#06112A; color:#F4F7FC; }
        #fiis .fii-analysis-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; padding:30px 32px 22px; }
        #fiis .fii-analysis-head h2, #fiis .fii-analysis-head p { color:#F4F7FC; }
        #fiis .fii-analysis-head p { margin-top:8px; color:#A8B7CD; }
        #fiis .fii-favorite-main { display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:0 13px; border:1px solid rgba(255,255,255,.16); border-radius:8px; background:rgba(255,255,255,.04); color:#D9E6FA; cursor:pointer; }
        #fiis .fii-favorite-main[aria-pressed="true"] { border-color:rgba(102,183,255,.45); color:#66B7FF; }
        #fiis .fii-rx-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; border-top:1px solid rgba(255,255,255,.1); border-bottom:1px solid rgba(255,255,255,.1); }
        #fiis .fii-rx-metrics > div { padding:19px 22px; border-right:1px solid rgba(255,255,255,.1); border-bottom:1px solid rgba(255,255,255,.1); }
        #fiis .fii-rx-metrics > div:nth-child(4n) { border-right:0; }
        #fiis .fii-rx-metrics > div:nth-child(n+5) { border-bottom:0; }
        #fiis .fii-rx-metrics dt { color:#8294B0; font-size:.66rem; }
        #fiis .fii-rx-metrics dd { margin:6px 0 0; color:#F7FAFF; font-family:'Archivo',sans-serif; font-size:1.18rem; font-variant-numeric:tabular-nums; }
        #fiis .fii-tabs { display:flex; gap:3px; padding:16px 24px 0; overflow-x:auto; border-bottom:1px solid rgba(255,255,255,.1); scrollbar-width:none; }
        #fiis .fii-tabs button { flex:0 0 auto; min-height:44px; padding:0 15px; border:0; border-bottom:2px solid transparent; background:transparent; color:#91A3BF; font-size:.76rem; font-weight:800; cursor:pointer; transition:color .2s,border-color .2s; }
        #fiis .fii-tabs button[aria-selected="true"] { border-bottom-color:#078BFF; color:#fff; }
        #fiis .fii-tab-panel { min-height:330px; padding:30px 32px 34px; }
        #fiis .fii-overview-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:24px; }
        #fiis .fii-price-vp, #fiis .fii-context-card { padding:25px; border:1px solid rgba(255,255,255,.11); border-radius:12px; background:#0A1835; }
        #fiis .fii-price-vp h3, #fiis .fii-context-card h3, #fiis .fii-panel-heading h3 { margin:0 0 20px; color:#fff; font-family:'Archivo',sans-serif; font-size:1.12rem; }
        #fiis .fii-price-vp dl { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin:0 0 28px; background:rgba(255,255,255,.1); }
        #fiis .fii-price-vp dl div { padding:14px; background:#0A1835; }
        #fiis .fii-price-vp dt { color:#8294B0; font-size:.65rem; }
        #fiis .fii-price-vp dd { margin:5px 0 0; color:#fff; font-weight:800; }
        #fiis .fii-price-vp > p, #fiis .fii-context-card p, #fiis .fii-context-card li { color:#A8B7CD; font-size:.78rem; line-height:1.6; }
        #fiis .fii-context-card ul { display:grid; gap:10px; padding-left:18px; }
        #fiis .fii-ruler { position:relative; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:10px; margin:10px 0 22px; color:#8FA1BD; font-size:.61rem; font-weight:800; }
        #fiis .fii-ruler i { position:relative; height:6px; border-radius:3px; background:linear-gradient(90deg,#078BFF 0 50%,#7E8DA7 50% 100%); }
        #fiis .fii-ruler b { position:absolute; top:50%; left:50%; width:14px; height:14px; border:3px solid #fff; border-radius:50%; background:#078BFF; transform:translate(-50%,-50%); transition:left .2s; }
        #fiis .fii-ruler em { position:absolute; top:15px; left:50%; color:#C7D4E7; font-size:.6rem; font-style:normal; transform:translateX(-50%); }
        #fiis .fii-panel-heading { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; margin-bottom:24px; }
        #fiis .fii-panel-stats { display:flex; gap:1px; background:rgba(255,255,255,.1); }
        #fiis .fii-panel-stats span { min-width:112px; padding:10px 13px; background:#0A1835; color:#8294B0; font-size:.64rem; }
        #fiis .fii-panel-stats strong { display:block; margin-top:4px; color:#fff; font-size:.85rem; }
        #fiis .fii-chart { min-height:240px; overflow:hidden; border:1px solid rgba(255,255,255,.1); border-radius:10px; background:#07142D; }
        #fiis .fii-chart svg { display:block; width:100%; height:260px; }
        #fiis .fii-chart-empty, #fiis .fii-portfolio-empty { display:grid; place-items:center; min-height:240px; padding:30px; color:#90A2BD; text-align:center; }
        #fiis .fii-portfolio-layout { display:grid; grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr); gap:24px; }
        #fiis .fii-portfolio-metrics { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; align-content:start; background:rgba(255,255,255,.1); }
        #fiis .fii-portfolio-metrics div { padding:20px; background:#0A1835; }
        #fiis .fii-portfolio-metrics span { color:#8294B0; font-size:.67rem; }
        #fiis .fii-portfolio-metrics strong { display:block; margin-top:6px; color:#fff; }
        #fiis .fii-portfolio-note { padding:24px; border:1px solid rgba(255,255,255,.1); border-radius:10px; color:#A8B7CD; line-height:1.65; }

        #fiis .fii-compare-toolbar { display:grid; grid-template-columns:minmax(260px,370px) 1fr; align-items:end; gap:20px; margin-bottom:22px; }
        #fiis .fii-compare-search > label { color:var(--text-muted); }
        #fiis .fii-compare-search .fii-search-control { min-height:50px; border-color:var(--border-color); background:var(--bg-card); box-shadow:none; color:var(--text-main); }
        #fiis .fii-compare-search .fii-search-control input { height:48px; color:var(--text-main); }
        #fiis .fii-compare-chips { display:flex; flex-wrap:wrap; gap:8px; min-height:42px; align-items:center; }
        #fiis .fii-compare-chips button { display:inline-flex; align-items:center; gap:7px; min-height:36px; padding:0 10px; border:1px solid var(--border-color); border-radius:8px; background:var(--bg-card); color:var(--text-main); font-weight:800; cursor:pointer; }
        #fiis .fii-compare-chips .material-symbols-outlined { font-size:17px; color:var(--text-muted); }
        #fiis .fii-compare-table { width:100%; overflow-x:auto; border:1px solid var(--border-color); border-radius:12px; background:var(--bg-card); }
        #fiis .fii-compare-table table { min-width:620px; }
        #fiis .fii-compare-table th:first-child, #fiis .fii-compare-table td:first-child { position:sticky; left:0; z-index:1; background:var(--bg-card); text-align:left; }
        #fiis .fii-compare-empty { padding:44px 24px; color:var(--text-muted); text-align:center; }

        #fiis .fii-income { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:40px; padding:38px; border-radius:14px; background:#08265D; color:#fff; }
        #fiis .fii-income h2 { color:#fff; }
        #fiis .fii-income-copy > p { max-width:64ch; color:#BDD0E9; line-height:1.65; }
        #fiis .fii-income-form { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:26px; }
        #fiis .fii-income-form label { display:grid; gap:7px; color:#B8CBE4; font-size:.7rem; font-weight:800; }
        #fiis .fii-income-form select, #fiis .fii-income-form input { width:100%; min-height:48px; padding:0 12px; border:1px solid rgba(255,255,255,.2); border-radius:8px; background:#0B3478; color:#fff; }
        #fiis .fii-income-form input[aria-invalid="true"] { border-color:#FF8E8E; box-shadow:0 0 0 3px rgba(255,142,142,.16); }
        #fiis .fii-income-message { min-height:1.1em; color:#FFD0D0; font-size:.66rem; font-weight:700; }
        #fiis .fii-income-message.is-valid { color:#9FE5C1; }
        #fiis .fii-income-results { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin:0; background:rgba(255,255,255,.15); }
        #fiis .fii-income-results > div { padding:24px; background:#0A2D69; }
        #fiis .fii-income-results dt { color:#AFC3DE; font-size:.67rem; }
        #fiis .fii-income-results dd { margin:7px 0 0; color:#fff; font-family:'Archivo',sans-serif; font-size:1.32rem; }
        #fiis .fii-income-results > p { grid-column:1/-1; margin:0; padding:15px 18px; background:#061F4D; color:#AFC3DE; font-size:.69rem; }

        #fiis .fii-learning-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--border-color); border-radius:14px; overflow:hidden; background:var(--bg-card); }
        #fiis .fii-learning-item { min-width:0; border-right:1px solid var(--border-color); border-bottom:1px solid var(--border-color); background:var(--bg-card); }
        #fiis .fii-learning-item:nth-child(3n) { border-right:0; }
        #fiis .fii-learning-item:nth-child(n+4) { border-bottom:0; }
        #fiis .fii-learning-trigger { display:grid; grid-template-columns:38px minmax(0,1fr) 24px; grid-template-areas:'icon title chevron' 'icon copy chevron'; gap:3px 12px; width:100%; min-height:118px; padding:22px; border:0; background:transparent; color:var(--text-main); text-align:left; cursor:pointer; transition:background-color .2s; }
        #fiis .fii-learning-trigger:hover, #fiis .fii-learning-trigger:focus-visible { background:color-mix(in srgb,var(--bg-card) 94%,#078BFF 6%); }
        #fiis .fii-learning-trigger > .material-symbols-outlined:first-child { grid-area:icon; color:#078BFF; font-size:29px; }
        #fiis .fii-learning-trigger strong { grid-area:title; font-family:'Archivo',sans-serif; }
        #fiis .fii-learning-trigger small { grid-area:copy; color:var(--text-muted); line-height:1.45; }
        #fiis .fii-learning-chevron { grid-area:chevron; align-self:center; color:var(--text-muted); transition:transform .2s; }
        #fiis .fii-learning-trigger[aria-expanded="true"] .fii-learning-chevron { transform:rotate(180deg); }
        #fiis .fii-learning-panel { padding:0 22px 22px; color:var(--text-muted); font-size:.76rem; line-height:1.55; animation:fiiFade .18s ease-out; }
        #fiis .fii-learning-panel p { margin:0 0 10px; color:var(--text-main); font-weight:700; }
        #fiis .fii-learning-panel ul { display:grid; gap:7px; margin:0; padding-left:18px; }

        #fiis .fii-document-list { overflow:hidden; border:1px solid var(--border-color); border-radius:12px; background:var(--bg-card); }
        #fiis .fii-document-row { display:grid; grid-template-columns:150px minmax(0,1fr) 120px auto; gap:18px; align-items:center; min-height:68px; padding:12px 18px; border-bottom:1px solid var(--border-color); }
        #fiis .fii-document-row:last-child { border-bottom:0; }
        #fiis .fii-document-row span { color:#0757D3; font-size:.69rem; font-weight:800; }
        #fiis .fii-document-row strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
        #fiis .fii-document-row time { color:var(--text-muted); font-size:.75rem; }
        #fiis .fii-document-row a, #fiis .fii-documents .fii-section-heading a { display:inline-flex; align-items:center; gap:5px; color:#0757D3; font-size:.75rem; font-weight:800; text-decoration:none; }
        #fiis .fii-document-row .material-symbols-outlined, #fiis .fii-documents .material-symbols-outlined { font-size:17px; }
        #fiis .fii-final-cta { display:flex; justify-content:space-between; align-items:center; gap:38px; padding:42px; border-radius:14px; background:#020718; color:#fff; }
        #fiis .fii-final-cta h2 { color:#fff; }
        #fiis .fii-final-cta p { max-width:68ch; margin:0; color:#B2C2DA; line-height:1.6; }
        #fiis .fii-final-cta .fii-primary-button { flex:0 0 auto; }

        body:has(#fiis.active-section) .whatsapp-btn { display:none; }

        @keyframes fiiFade { from{opacity:0;transform:translateY(-4px)} to{opacity:1;transform:none} }
        @keyframes fiiSkeleton { to{transform:translateX(100%)} }

        @media (max-width:1299px) {
            #fiis .fii-hero { grid-template-columns:minmax(0,1fr) minmax(330px,.72fr); padding:52px 44px; }
            #fiis .fii-segment-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #fiis .fii-segment-card:nth-child(2n) { border-right:0; }
            #fiis .fii-segment-card:nth-child(n+5) { border-bottom:1px solid var(--border-color); }
            #fiis .fii-segment-card:nth-child(n+7) { border-bottom:0; }
        }
        @media (max-width:899px) {
          #agro .agro-contract-map { grid-template-columns:repeat(2,minmax(0,1fr)); }
          #agro .agro-contract-map article:nth-child(2) { border-right:0; }
          #agro .agro-contract-map article:nth-child(-n+2) { border-bottom:1px solid var(--agro-line); }
            #fiis .fii-content { gap:52px; }
            #fiis .fii-hero { grid-template-columns:1fr; min-height:0; padding:46px 32px; }
            #fiis .fii-hero h1 { max-width:620px; }
            #fiis .fii-hero-summary { width:100%; }
            #fiis .fii-market-band { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #fiis .fii-market-band > div:nth-child(2) { border-right:0; }
            #fiis .fii-market-band > div:nth-child(-n+2) { border-bottom:1px solid var(--border-color); }
            #fiis .fii-screener-layout { grid-template-columns:1fr; }
            #fiis .fii-filter-panel { grid-template-columns:repeat(2,minmax(0,1fr)); border-right:0; border-bottom:1px solid var(--border-color); }
            #fiis .fii-filter-title, #fiis .fii-filter-panel .fii-primary-button { grid-column:1/-1; }
            #fiis .fii-rx-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #fiis .fii-rx-metrics > div:nth-child(2n) { border-right:0; }
            #fiis .fii-rx-metrics > div:nth-child(n+5) { border-bottom:1px solid rgba(255,255,255,.1); }
            #fiis .fii-rx-metrics > div:nth-child(n+7) { border-bottom:0; }
            #fiis .fii-overview-grid, #fiis .fii-portfolio-layout, #fiis .fii-income { grid-template-columns:1fr; }
            #fiis .fii-compare-toolbar { grid-template-columns:1fr; }
            #fiis .fii-learning-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #fiis .fii-learning-item:nth-child(3n) { border-right:1px solid var(--border-color); }
            #fiis .fii-learning-item:nth-child(2n) { border-right:0; }
            #fiis .fii-learning-item:nth-child(n+4) { border-bottom:1px solid var(--border-color); }
            #fiis .fii-learning-item:nth-child(n+5) { border-bottom:0; }
            #fiis .fii-final-cta { align-items:flex-start; flex-direction:column; }
        }
        @media (max-width:599px) {
            #fiis .fii-content { gap:44px; padding-top:44px; }
            #fiis .fii-hero { padding:38px 20px; border-radius:12px 12px 0 0; }
            #fiis .fii-hero h1 { font-size:2.55rem; }
            #fiis .fii-search-control kbd { display:none; }
            #fiis .fii-search-control { grid-template-columns:22px minmax(0,1fr); min-height:56px; padding-left:14px; }
            #fiis .fii-autocomplete button { grid-template-columns:90px minmax(0,1fr); gap:5px 10px; }
            #fiis .fii-autocomplete button > span { grid-column:2; }
            #fiis .fii-autocomplete .fii-result-market { grid-column:1/-1; display:flex; justify-content:space-between; text-align:left; }
            #fiis .fii-hero-summary { padding:22px 18px; }
            #fiis .fii-summary-price strong { font-size:2rem; }
            #fiis .fii-summary-metrics > div { padding:13px 10px; }
            #fiis .fii-market-band { grid-template-columns:1fr; }
            #fiis .fii-market-band > div, #fiis .fii-market-band > div:nth-child(2) { border-right:0; border-bottom:1px solid var(--border-color); }
            #fiis .fii-market-band > div:last-child { border-bottom:0; }
            #fiis .fii-section-heading { align-items:flex-start; flex-direction:column; gap:12px; }
            #fiis .fii-segment-grid { grid-template-columns:1fr; }
            #fiis .fii-segment-card, #fiis .fii-segment-card:nth-child(n) { min-height:126px; border-right:0; border-bottom:1px solid var(--border-color); }
            #fiis .fii-segment-card:last-child { border-bottom:0; }
            #fiis .fii-filter-panel { grid-template-columns:1fr; padding:20px; }
            #fiis .fii-filter-title, #fiis .fii-filter-panel .fii-primary-button { grid-column:auto; }
            #fiis .fii-analysis-head { padding:25px 20px 18px; }
            #fiis .fii-favorite-main span:last-child { display:none; }
            #fiis .fii-rx-metrics > div { padding:16px 14px; }
            #fiis .fii-rx-metrics dd { font-size:1rem; }
            #fiis .fii-tab-panel { padding:24px 18px 28px; }
            #fiis .fii-price-vp, #fiis .fii-context-card { padding:20px 17px; }
            #fiis .fii-price-vp dl { grid-template-columns:1fr; }
            #fiis .fii-panel-heading { flex-direction:column; }
            #fiis .fii-panel-stats { width:100%; overflow-x:auto; }
            #fiis .fii-income { gap:28px; padding:30px 20px; }
            #fiis .fii-income-form, #fiis .fii-income-results { grid-template-columns:1fr; }
            #fiis .fii-income-results > p { grid-column:auto; }
            #fiis .fii-learning-grid { grid-template-columns:1fr; }
            #fiis .fii-learning-item, #fiis .fii-learning-item:nth-child(n) { border-right:0; border-bottom:1px solid var(--border-color); }
            #fiis .fii-learning-item:last-child { border-bottom:0; }
            #fiis .fii-document-row { grid-template-columns:1fr auto; gap:6px 12px; padding:15px 16px; }
            #fiis .fii-document-row strong { grid-column:1/-1; grid-row:1; }
            #fiis .fii-document-row span { grid-column:1; grid-row:2; }
            #fiis .fii-document-row time { grid-column:1; grid-row:3; }
            #fiis .fii-document-row a { grid-column:2; grid-row:2/4; }
            #fiis .fii-final-cta { padding:34px 22px; }
            #fiis .fii-final-cta .fii-primary-button { width:100%; }
        }
        @media (prefers-reduced-motion:reduce) {
            #fiis *, #fiis *::before, #fiis *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
        }

        /* =========================================================
           AGRO & HEDGE — mesa digital, isolada da interface global
           ========================================================= */
        .page-container:has(#agro.active-section) { width:100%; max-width:none; margin:0; padding:0; }
        #agro { --agro-green:#66c62f; --agro-green-dark:#387c1b; --agro-night:#020714; --agro-forest:#06120b; --agro-paper:#f5f7fa; --agro-ink:#07152b; --agro-muted:#526177; --agro-line:#dbe2e9; --agro-blue:#0086ff; width:100%; margin:0; padding:0; max-width:none; overflow-x:clip; background:var(--agro-paper); color:var(--agro-ink); }
        #agro ::selection { background:var(--agro-green); color:#06120b; }
        #agro * { scrollbar-color:#7b8ca2 #e9eef3; }
        #agro *::-webkit-scrollbar { height:8px; width:8px; }
        #agro *::-webkit-scrollbar-track { background:#e9eef3; }
        #agro *::-webkit-scrollbar-thumb { background:#7b8ca2; border-radius:10px; }
        #agro :where(a,button,input,select):focus-visible { outline:3px solid color-mix(in srgb,var(--agro-blue) 70%,white); outline-offset:3px; }
        #agro a { text-underline-offset:4px; }
        #agro button, #agro input, #agro select { font:inherit; }
        #agro button { cursor:pointer; }
        #agro .agro-shell { width:100%; min-width:0; }
        #agro .agro-content { width:min(1240px,calc(100% - 64px)); margin-inline:auto; }
        #agro .agro-hero { position:relative; min-height:max(690px,calc(100vh - 72px)); overflow:hidden; isolation:isolate; display:flex; align-items:center; background:var(--agro-night); color:#fff; }
        #agro .agro-hero-video, #agro .agro-hero-overlay { position:absolute; inset:0; width:100%; height:100%; }
        #agro .agro-hero-video { z-index:-3; object-fit:cover; object-position:center 54%; }
        #agro .agro-hero-overlay { z-index:-2; background:linear-gradient(90deg,rgba(2,7,20,.98) 0%,rgba(2,7,20,.88) 40%,rgba(6,18,11,.64) 72%,rgba(2,7,20,.48) 100%),linear-gradient(0deg,rgba(2,7,20,.68),transparent 55%); }
        #agro .agro-hero-content { width:min(1240px,calc(100% - 64px)); margin:auto; padding:96px 0 80px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(360px,.72fr); align-items:end; gap:clamp(44px,7vw,110px); }
        #agro .agro-hero-copy { max-width:740px; }
        #agro .agro-eyebrow { margin:0 0 20px; color:#b7e89b; font-size:.78rem; font-weight:800; letter-spacing:.18em; }
        #agro .agro-hero h1 { margin:0; max-width:830px; color:#fff; font-family:'Archivo',sans-serif; font-size:clamp(3.6rem,6.1vw,6rem); line-height:.94; letter-spacing:-.04em; font-variation-settings:'wdth' 92; text-wrap:balance; }
        #agro .agro-hero h1 strong { color:var(--agro-green); font-weight:750; }
        #agro .agro-hero-copy>p:not(.agro-eyebrow) { max-width:64ch; margin:26px 0 0; color:#d7e0e8; font-size:1.08rem; line-height:1.72; }
        #agro .agro-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
        #agro .agro-button { min-height:50px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:13px 20px; border:1px solid transparent; border-radius:8px; font-weight:800; font-size:.9rem; line-height:1.2; text-decoration:none; transition:transform .28s cubic-bezier(.16,1,.3,1),background .28s,box-shadow .28s,border-color .28s; }
        #agro .agro-button:hover { transform:translateY(-3px); }
        #agro .agro-button-primary { background:var(--agro-green); color:#07120a; box-shadow:0 10px 24px rgba(19,68,5,.26); }
        #agro .agro-button-primary:hover { background:#78d745; box-shadow:0 16px 34px rgba(19,68,5,.32); }
        #agro .agro-button-secondary { border:1px solid #b8c5d1; background:#fff; color:var(--agro-ink); box-shadow:none; }
        #agro .agro-button-secondary:hover { border-color:var(--agro-ink); background:#f8fafc; }
        #agro .agro-button:disabled { cursor:not-allowed; opacity:.5; box-shadow:none; transform:none; }
        #agro .agro-button-ghost { color:#fff; background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.34); }
        #agro .agro-button-ghost:hover { background:rgba(255,255,255,.12); }
        #agro .agro-button .material-symbols-outlined { font-size:19px; }
        #agro .agro-hero-market { background:rgba(2,7,20,.9); border:1px solid rgba(214,235,205,.24); border-radius:16px; box-shadow:0 22px 56px rgba(0,0,0,.34); backdrop-filter:blur(8px); overflow:hidden; }
        #agro .agro-market-head { display:flex; justify-content:space-between; align-items:center; padding:21px 22px; border-bottom:1px solid rgba(255,255,255,.13); }
        #agro .agro-market-head div { display:flex; flex-direction:column; gap:3px; }
        #agro .agro-market-head span { color:#9fb0c6; font-size:.7rem; font-weight:800; letter-spacing:.12em; }
        #agro .agro-market-head strong { color:#fff; font-size:.9rem; }
        #agro .agro-icon-button { width:40px; height:40px; border:0; border-radius:50%; display:grid; place-items:center; color:#cce7bd; background:rgba(102,198,47,.12); }
        #agro .agro-contract-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px; padding:18px 22px; border-bottom:1px solid rgba(255,255,255,.1); }
        #agro .agro-contract-row span { display:block; color:#9fb0c6; font-size:.72rem; }
        #agro .agro-contract-row b { color:#fff; font-size:.96rem; }
        #agro .agro-contract-price { text-align:right; font-variant-numeric:tabular-nums; }
        #agro .agro-contract-price strong { display:block; color:#fff; font-size:1.08rem; }
        #agro .agro-contract-price small, #agro .agro-change { color:#c2cfdd; }
        #agro .agro-contract-note { color:#b7e89b !important; font-weight:700; }
        #agro .agro-change.is-positive { color:#9ee57a; } #agro .agro-change.is-negative { color:#ff9c9c; }
        #agro .agro-market-foot { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:15px 22px; color:#9fb0c6; font-size:.72rem; }
        #agro .agro-market-foot button { border:0; padding:5px 0; color:#b7e89b; background:none; font-weight:800; }
        #agro .agro-market-skeleton, #agro .agro-ticker-skeleton, #agro .agro-news-skeleton, #agro .agro-report-skeleton, #agro .agro-chart-skeleton { position:relative; overflow:hidden; background:#e2e8ed; }
        #agro .agro-market-skeleton { height:72px; border-bottom:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.08); }
        #agro :is(.agro-market-skeleton,.agro-ticker-skeleton,.agro-news-skeleton,.agro-report-skeleton,.agro-chart-skeleton)::after { content:""; position:absolute; inset:0; transform:translateX(-100%); background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent); animation:agroSkeleton 1.25s infinite; }
        @keyframes agroSkeleton { to { transform:translateX(100%); } }
        #agro .agro-value-band { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); background:var(--agro-night); color:#fff; border-top:1px solid rgba(255,255,255,.1); }
        #agro .agro-value-band article { min-width:0; display:grid; grid-template-columns:34px minmax(0,1fr); gap:14px; padding:28px clamp(20px,3vw,46px); border-right:1px solid rgba(255,255,255,.11); }
        #agro .agro-value-band article:last-child { border-right:0; }
        #agro .agro-value-band .material-symbols-outlined { color:var(--agro-green); font-size:26px; }
        #agro .agro-value-band h2 { margin:0 0 5px; font-size:.82rem; text-transform:uppercase; letter-spacing:.06em; }
        #agro .agro-value-band p { margin:0; color:#aebccd; font-size:.77rem; line-height:1.55; }
        #agro .agro-flow { display:flex; align-items:center; justify-content:center; gap:15px; padding:16px 32px; overflow-x:auto; background:#e9eef2; border-bottom:1px solid var(--agro-line); white-space:nowrap; }
        #agro .agro-flow a { color:#364961; text-decoration:none; font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
        #agro .agro-flow span { color:#8a9aae; }
        #agro .agro-section { margin-block:88px; scroll-margin-top:90px; }
        #agro .agro-section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:30px; margin-bottom:30px; }
        #agro .agro-section-heading h2, #agro .agro-basis h2 { margin:0 0 10px; color:var(--agro-ink); font-family:'Archivo',sans-serif; font-size:clamp(2rem,3.4vw,3.2rem); line-height:1.02; letter-spacing:-.035em; text-wrap:balance; }
        #agro .agro-section-heading p, #agro .agro-basis-copy p { max-width:70ch; margin:0; color:var(--agro-muted); line-height:1.7; }
        #agro .agro-tooltip { position:relative; flex:none; }
        #agro .agro-tooltip button { width:42px; height:42px; border:1px solid var(--agro-line); border-radius:50%; display:grid; place-items:center; color:var(--agro-muted); background:#fff; }
        #agro .agro-tooltip [role=tooltip] { position:absolute; z-index:5; right:0; bottom:calc(100% + 10px); width:260px; padding:12px; border-radius:8px; background:var(--agro-night); color:#fff; font-size:.75rem; line-height:1.5; opacity:0; pointer-events:none; transform:translateY(5px); transition:.2s; }
        #agro .agro-tooltip:is(:hover,:focus-within) [role=tooltip] { opacity:1; transform:none; }
        #agro .agro-ticker-wrap { border-block:1px solid var(--agro-line); overflow-x:auto; background:#fff; }
        #agro .agro-ticker { min-width:850px; display:grid; grid-template-columns:repeat(5,minmax(160px,1fr)); }
        #agro .agro-ticker-item { min-width:0; padding:21px 23px; border-right:1px solid var(--agro-line); }
        #agro .agro-ticker-item:last-child { border-right:0; }
        #agro .agro-ticker-item>span { display:block; color:var(--agro-muted); font-size:.66rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
        #agro .agro-ticker-item strong { display:block; margin:6px 0 2px; color:var(--agro-ink); font-size:1.08rem; font-variant-numeric:tabular-nums; }
        #agro .agro-ticker-item small { color:var(--agro-muted); font-size:.7rem; }
        #agro .agro-ticker-item em { display:block; margin-top:8px; font-style:normal; font-size:.76rem; font-weight:800; }
        #agro .agro-ticker-skeleton { height:112px; border-right:1px solid var(--agro-line); }
        #agro .agro-intelligence { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:64px; }
        #agro .agro-news-list, #agro .agro-report-list { border-top:1px solid var(--agro-line); }
        #agro .agro-news-item { display:grid; grid-template-columns:140px minmax(0,1fr) auto; gap:18px; align-items:center; padding:17px 0; border-bottom:1px solid var(--agro-line); color:inherit; text-decoration:none; transition:padding .25s,background .25s; }
        #agro .agro-news-item:hover { padding-inline:10px; background:#fff; }
        #agro .agro-news-item img { width:140px; height:92px; object-fit:cover; border-radius:8px; }
        #agro .agro-news-item .agro-news-mark { width:140px; height:92px; display:grid; place-items:center; border-radius:8px; background:#e7ede2; color:var(--agro-green-dark); font-size:32px; }
        #agro .agro-news-item small, #agro .agro-report-item small { color:var(--agro-green-dark); font-size:.67rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
        #agro .agro-news-item h3, #agro .agro-report-item h3 { margin:5px 0; color:var(--agro-ink); font-size:.94rem; line-height:1.35; }
        #agro .agro-news-item p, #agro .agro-report-item p { margin:0; color:var(--agro-muted); font-size:.75rem; line-height:1.5; }
        #agro .agro-news-item .material-symbols-outlined { color:var(--agro-muted); }
        #agro .agro-news-skeleton { height:126px; border-bottom:1px solid var(--agro-line); }
        #agro .agro-tabs { display:flex; gap:4px; margin-bottom:12px; border-bottom:1px solid var(--agro-line); }
        #agro .agro-tabs button { min-height:43px; padding:10px 17px; border:0; border-bottom:2px solid transparent; background:transparent; color:var(--agro-muted); font-weight:800; }
        #agro .agro-tabs button[aria-selected=true] { border-bottom-color:var(--agro-green-dark); color:var(--agro-ink); }
        #agro .agro-tabs button:focus-visible, #agro .agro-view-toggle button:focus-visible { outline:3px solid rgba(0,134,255,.35); outline-offset:3px; }
        #agro .agro-report-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px 18px; padding:18px 2px; border-bottom:1px solid var(--agro-line); }
        #agro .agro-report-item a { grid-column:2; grid-row:1/3; align-self:center; color:var(--agro-green-dark); font-weight:800; font-size:.76rem; }
        #agro .agro-source-links { border-top:1px solid var(--agro-line); }
        #agro .agro-source-links .agro-report-item { color:inherit; text-decoration:none; }
        #agro .agro-source-links .agro-report-item>span { grid-column:2; grid-row:1/3; align-self:center; color:var(--agro-green-dark); font-weight:800; font-size:.76rem; }
        #agro .agro-report-skeleton { height:112px; border-bottom:1px solid var(--agro-line); }
        #agro .agro-empty { padding:30px 20px; border:1px dashed #aeb9c5; color:var(--agro-muted); text-align:center; line-height:1.6; }
        #agro .hedge-stage { display:grid; grid-template-columns:minmax(0,1fr) minmax(440px,.88fr); gap:70px; align-items:center; padding:90px max(32px,calc((100% - 1240px)/2)); background:var(--agro-forest); color:#fff; scroll-margin-top:90px; }
        #agro .hedge-stage h2 { max-width:700px; margin:0; font-family:'Archivo',sans-serif; font-size:clamp(2.7rem,4.6vw,4.7rem); line-height:.98; letter-spacing:-.04em; text-wrap:balance; }
        #agro .hedge-stage-copy>p { max-width:65ch; margin:24px 0 34px; color:#c5d2ca; line-height:1.7; }
        #agro .hedge-benefits { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.15); }
        #agro .hedge-benefits article { display:grid; grid-template-columns:28px 1fr; gap:13px; padding:22px 22px 22px 0; border-bottom:1px solid rgba(255,255,255,.15); }
        #agro .hedge-benefits article:nth-child(odd) { border-right:1px solid rgba(255,255,255,.15); margin-right:22px; }
        #agro .hedge-benefits span { color:var(--agro-green); font-size:.68rem; font-weight:800; }
        #agro .hedge-benefits h3 { margin:0 0 5px; font-size:.82rem; text-transform:uppercase; letter-spacing:.04em; }
        #agro .hedge-benefits p { margin:0; color:#a9bbb0; font-size:.74rem; line-height:1.55; }
        #agro .hedge-visual { min-width:0; margin:0; padding:28px; background:#081c12; border:1px solid rgba(174,218,151,.22); border-radius:14px; box-shadow:0 24px 55px rgba(0,0,0,.3); }
        #agro .hedge-visual figcaption { display:flex; justify-content:space-between; gap:16px; color:#fff; }
        #agro .hedge-visual figcaption span { color:#9eb1a4; font-size:.72rem; }
        #agro .hedge-visual svg { width:100%; height:auto; overflow:visible; }
        #agro .hedge-grid path { fill:none; stroke:rgba(255,255,255,.09); stroke-width:1; }
        #agro .hedge-line { fill:none; stroke-width:5; stroke-linecap:round; stroke-dasharray:900; stroke-dashoffset:0; }
        #agro .hedge-line-spot { stroke:#ff9b7f; } #agro .hedge-line-protected { stroke:var(--agro-green); }
        #agro .hedge-visual:not(.is-visible) .hedge-line { stroke-dashoffset:900; }
        #agro .hedge-visual.is-visible .hedge-line { transition:stroke-dashoffset 1.4s cubic-bezier(.16,1,.3,1); }
        #agro .hedge-labels text { fill:#b8c7be; font:700 13px 'Manrope',sans-serif; }
        #agro .hedge-legend, #agro .agro-chart-legend { display:flex; flex-wrap:wrap; gap:18px; color:#b8c7be; font-size:.75rem; }
        #agro .hedge-legend i { display:inline-block; width:18px; height:3px; vertical-align:middle; margin-right:5px; }
        #agro .hedge-legend i.spot { background:#ff9b7f; } #agro .hedge-legend i.protected { background:var(--agro-green); }
        #agro .agro-text-button { display:inline-flex; gap:7px; margin-top:18px; padding:5px 0; border:0; background:none; color:var(--agro-green-dark); font-weight:800; text-decoration:underline; text-underline-offset:4px; }
        #agro .hedge-visual .agro-text-button { color:#b7e89b; }
        #agro .agro-tool { padding:44px; background:#fff; border:1px solid var(--agro-line); border-radius:16px; box-shadow:0 18px 45px rgba(7,21,43,.08); }
        #agro .hedge-calculator { display:grid; grid-template-columns:minmax(0,.85fr) minmax(440px,1.15fr); gap:50px; align-items:start; }
        #agro .agro-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
        #agro .agro-form label { min-width:0; display:flex; flex-direction:column; gap:8px; color:#2f4057; font-size:.74rem; font-weight:800; }
        #agro .agro-form input, #agro .agro-form select { min-width:0; width:100%; min-height:48px; padding:11px 13px; border:1px solid #b8c2ce; border-radius:7px; background:#fff; color:var(--agro-ink); outline:none; }
        #agro .agro-form input:focus, #agro .agro-form select:focus { border-color:var(--agro-blue); box-shadow:0 0 0 3px rgba(0,134,255,.12); }
        #agro .agro-form input[type=range] { min-height:28px; padding:0; accent-color:var(--agro-green-dark); border:0; box-shadow:none; }
        #agro .agro-form output { margin-left:auto; color:var(--agro-green-dark); font-size:.9rem; }
        #agro .hedge-results { padding:28px; background:var(--agro-night); color:#fff; border-radius:12px; }
        #agro .hedge-results dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0 0 24px; border:1px solid rgba(255,255,255,.14); }
        #agro .hedge-results dl>div { padding:16px; border-right:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); }
        #agro .hedge-results dl>div:nth-child(2n) { border-right:0; }
        #agro .hedge-results dt { color:#9fb0c6; font-size:.66rem; text-transform:uppercase; letter-spacing:.06em; }
        #agro .hedge-results dd { margin:7px 0 0; font-size:1.15rem; font-weight:800; font-variant-numeric:tabular-nums; }
        #agro .hedge-results .hedge-result-primary { background:rgba(102,198,47,.12); }
        #agro .hedge-results .hedge-result-primary dd { color:#a9ed83; }
        #agro .agro-disclaimer { margin:22px 0 0; padding-top:17px; border-top:1px solid var(--agro-line); color:var(--agro-muted); font-size:.72rem; line-height:1.6; }
        #agro .agro-status-label { flex:none; padding:8px 11px; border-radius:99px; background:#e8efe4; color:#356b1d; font-size:.7rem; font-weight:800; text-transform:uppercase; }
        #agro .agro-scenario-layout { display:grid; grid-template-columns:minmax(280px,.58fr) minmax(0,1.42fr); gap:38px; align-items:center; }
        #agro .agro-form-compact { grid-template-columns:1fr; }
        #agro .agro-scenario-chart-wrap { min-width:0; padding:22px; background:#fff; border:1px solid var(--agro-line); border-radius:12px; }
        #agro .agro-scenario-chart-wrap svg { width:100%; height:auto; }
        #agro .agro-chart-legend { color:var(--agro-muted); justify-content:center; }
        #agro .agro-chart-legend i { width:10px; height:10px; display:inline-block; border-radius:50%; margin-right:5px; }
        #agro .agro-table-scroll { overflow-x:auto; margin-top:24px; border:1px solid var(--agro-line); }
        #agro .agro-table { width:100%; min-width:650px; border-collapse:collapse; background:#fff; font-variant-numeric:tabular-nums; }
        #agro .agro-table th, #agro .agro-table td { padding:14px 16px; border-bottom:1px solid var(--agro-line); text-align:right; font-size:.78rem; }
        #agro .agro-table th { background:#eef2f5; color:#43546a; font-size:.68rem; text-transform:uppercase; letter-spacing:.05em; }
        #agro .agro-table th:first-child, #agro .agro-table td:first-child { text-align:left; }
        #agro .agro-tabs-large { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:14px; border:0; }
        #agro .agro-tabs-large button { position:relative; min-width:0; min-height:82px; display:grid; grid-template-columns:30px minmax(0,1fr) 22px; align-items:center; gap:12px; padding:14px 16px; border:1px solid var(--agro-line); border-radius:12px; background:#fff; color:var(--agro-ink); text-align:left; transition:transform .22s cubic-bezier(.16,1,.3,1),border-color .22s,background .22s,color .22s,box-shadow .22s; }
        #agro .agro-tabs-large button:hover { transform:translateY(-2px); border-color:#8ea0b4; box-shadow:0 10px 24px rgba(7,21,43,.08); }
        #agro .agro-tabs-large button>span:first-child { color:var(--agro-green-dark); font-size:25px; }
        #agro .agro-tabs-large button>span:nth-child(2) { min-width:0; display:flex; flex-direction:column; gap:4px; }
        #agro .agro-tabs-large button strong { font-size:.9rem; }
        #agro .agro-tabs-large button small { color:var(--agro-muted); font-size:.69rem; font-weight:600; line-height:1.3; }
        #agro .agro-tabs-large .agro-tab-check { opacity:0; color:var(--agro-green); font-size:21px; transform:scale(.7); transition:opacity .2s,transform .2s; }
        #agro .agro-tabs-large button[aria-selected=true] { border-color:var(--agro-night); background:var(--agro-night); color:#fff; box-shadow:0 14px 30px rgba(2,7,20,.18); }
        #agro .agro-tabs-large button[aria-selected=true]>span:first-child, #agro .agro-tabs-large button[aria-selected=true] small { color:#b7e89b; }
        #agro .agro-tabs-large button[aria-selected=true] .agro-tab-check { opacity:1; transform:scale(1); }
        #agro #agro-protection-panel { min-height:330px; padding:34px; background:var(--agro-night); color:#fff; border-radius:14px; }
        #agro .agro-protection-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr); gap:46px; }
        #agro .agro-protection-copy h3 { margin:0 0 12px; font-family:'Archivo',sans-serif; font-size:2rem; letter-spacing:-.03em; }
        #agro .agro-protection-copy p { color:#b6c4d3; line-height:1.65; }
        #agro .agro-protection-copy button { color:#b7e89b; }
        #agro #agro-protection-panel .agro-form label { color:#c5d1de; }
        #agro #agro-protection-panel .agro-form input, #agro #agro-protection-panel .agro-form select { color:#fff; background:#0a1730; border-color:#34435a; }
        #agro .agro-option-state { grid-column:1/-1; display:flex; align-items:flex-start; gap:10px; padding:15px; border:1px solid #3b4b61; border-radius:9px; color:#c3cfdb; font-size:.75rem; line-height:1.55; }
        #agro .agro-option-state>.material-symbols-outlined { color:#b7e89b; font-size:20px; }
        #agro .agro-option-state .agro-text-button { color:#b7e89b; }
        #agro .agro-opportunity-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border:1px solid var(--agro-line); background:#fff; }
        #agro .agro-opportunity { min-width:0; padding:25px 21px; border-right:1px solid var(--agro-line); display:flex; flex-direction:column; }
        #agro .agro-opportunity:last-child { border-right:0; }
        #agro .agro-opportunity:first-child { background:var(--agro-forest); color:#fff; }
        #agro .agro-opportunity>span { color:var(--agro-green-dark); font-size:.66rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
        #agro .agro-opportunity:first-child>span { color:#a9ed83; }
        #agro .agro-opportunity h3 { margin:8px 0; font-size:1rem; }
        #agro .agro-opportunity p { min-height:80px; margin:0; color:var(--agro-muted); font-size:.74rem; line-height:1.55; }
        #agro .agro-opportunity:first-child p { color:#b8c7be; }
        #agro .agro-opportunity dl { margin:18px 0; padding-top:14px; border-top:1px solid var(--agro-line); }
        #agro .agro-opportunity:first-child dl { border-color:rgba(255,255,255,.15); }
        #agro .agro-opportunity dt { color:var(--agro-muted); font-size:.65rem; }
        #agro .agro-opportunity:first-child dt { color:#9eb1a4; }
        #agro .agro-opportunity dd { margin:4px 0; font-weight:800; font-size:.84rem; font-variant-numeric:tabular-nums; }
        #agro .agro-opportunity button { margin-top:auto; align-self:flex-start; }
        #agro .agro-view-toggle { display:flex; border:1px solid #b8c2ce; border-radius:7px; overflow:hidden; }
        #agro .agro-view-toggle button { min-height:40px; display:inline-flex; align-items:center; gap:7px; padding:8px 13px; border:0; background:#fff; color:var(--agro-muted); font-weight:800; }
        #agro .agro-view-toggle .material-symbols-outlined { font-size:18px; }
        #agro .agro-view-toggle button[aria-pressed=true] { background:var(--agro-night); color:#fff; }
        #agro .agro-curve-layout { display:grid; grid-template-columns:minmax(230px,.34fr) minmax(0,1fr); gap:18px; align-items:start; }
        #agro .agro-curve-market-card { aspect-ratio:1; min-width:0; display:flex; flex-direction:column; justify-content:space-between; padding:24px; border-radius:14px; background:var(--agro-night); color:#fff; box-shadow:0 18px 38px rgba(7,21,43,.14); }
        #agro .agro-curve-card-label { display:flex; align-items:center; gap:8px; color:#b7e89b; font-size:.68rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
        #agro .agro-curve-card-label .material-symbols-outlined { font-size:20px; }
        #agro .agro-curve-market-card h3 { margin:22px 0 8px; font-family:'Archivo',sans-serif; font-size:1.8rem; line-height:1; letter-spacing:-.03em; }
        #agro .agro-curve-market-card>strong { display:block; font-family:'Archivo',sans-serif; font-size:2rem; line-height:1.05; font-variant-numeric:tabular-nums; }
        #agro .agro-curve-market-card>strong small { display:block; margin-top:7px; color:#b7e89b; font-family:'Manrope',sans-serif; font-size:.68rem; letter-spacing:.04em; }
        #agro .agro-curve-market-card dl { display:grid; gap:8px; margin:22px 0 12px; }
        #agro .agro-curve-market-card dl>div { display:flex; justify-content:space-between; gap:12px; padding-top:8px; border-top:1px solid rgba(255,255,255,.12); }
        #agro .agro-curve-market-card dt { color:#9fb0c6; font-size:.66rem; }
        #agro .agro-curve-market-card dd { margin:0; font-size:.67rem; font-weight:800; text-align:right; }
        #agro .agro-curve-market-card p { margin:0; color:#9fb0c6; font-size:.65rem; line-height:1.45; }
        #agro .agro-curve-state { min-height:370px; padding:28px; background:#fff; border:1px solid var(--agro-line); border-radius:10px; }
        #agro .agro-chart-skeleton { min-height:310px; }
        #agro .agro-contract-map { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--agro-line); background:#fff; }
        #agro .agro-contract-map article { padding:24px; border-right:1px solid var(--agro-line); }
        #agro .agro-contract-map article:last-child { border-right:0; }
        #agro .agro-contract-map span { color:var(--agro-green-dark); font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
        #agro .agro-contract-map strong { display:block; margin:7px 0; font-size:1.05rem; }
        #agro .agro-contract-map small { color:var(--agro-muted); }
        #agro .agro-data-note { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:18px 20px; background:#e7ede2; color:#2f4c29; font-size:.76rem; line-height:1.55; }
        #agro .agro-data-note .agro-text-button { flex:none; margin-top:0; }
        #agro .agro-curve-state svg { width:100%; height:auto; max-height:360px; }
        #agro .agro-curve-point { cursor:pointer; }
        #agro .agro-curve-summary { margin-top:12px; color:var(--agro-muted); font-size:.74rem; text-align:center; }
        #agro .agro-basis { display:grid; grid-template-columns:minmax(0,.9fr) minmax(380px,1fr) minmax(220px,.55fr); gap:42px; align-items:center; padding:45px; background:#e7ede2; border-radius:14px; }
        #agro .agro-basis .agro-form { grid-template-columns:repeat(2,minmax(0,1fr)); }
        #agro .agro-basis-result { display:flex; flex-direction:column; gap:7px; padding:26px; background:var(--agro-forest); color:#fff; border-radius:10px; }
        #agro .agro-basis-result span { color:#b6c8bb; font-size:.7rem; text-transform:uppercase; font-weight:800; }
        #agro .agro-basis-result strong { color:var(--agro-green); font-size:1.65rem; font-variant-numeric:tabular-nums; }
        #agro .agro-basis-result small { color:#9fb1a4; }
        #agro .agro-basis>.agro-disclaimer { grid-column:1/-1; margin:0; border-color:#c8d2c3; }
        #agro .hedge-timeline { position:relative; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; margin:0; padding:0; list-style:none; }
        #agro .hedge-timeline::before, #agro .hedge-timeline::after { content:""; position:absolute; left:0; right:0; top:19px; height:2px; background:var(--agro-line); }
        #agro .hedge-timeline::after { background:var(--agro-green-dark); transform:scaleX(0); transform-origin:left; transition:transform 1.2s cubic-bezier(.16,1,.3,1); }
        #agro .hedge-timeline.is-visible::after { transform:scaleX(1); }
        #agro .hedge-timeline li { position:relative; z-index:1; padding-right:28px; }
        #agro .hedge-timeline li>span { width:40px; height:40px; display:grid; place-items:center; border-radius:50%; background:var(--agro-night); color:#fff; font-size:.68rem; font-weight:800; }
        #agro .hedge-timeline h3 { margin:18px 0 7px; font-size:.88rem; }
        #agro .hedge-timeline p { margin:0; color:var(--agro-muted); font-size:.74rem; line-height:1.55; }
        #agro .agro-financial { padding-block:55px; border-block:1px solid var(--agro-line); }
        #agro .agro-financial-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); }
        #agro .agro-financial-grid button { min-height:190px; display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:24px; border:0; border-right:1px solid var(--agro-line); background:#fff; color:var(--agro-ink); text-align:left; transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s; }
        #agro .agro-financial-grid button:last-child { border-right:0; }
        #agro .agro-financial-grid button:hover { z-index:1; transform:translateY(-3px); box-shadow:0 14px 30px rgba(7,21,43,.12); }
        #agro .agro-financial-grid .material-symbols-outlined { color:var(--agro-green-dark); font-size:27px; }
        #agro .agro-financial-grid strong { margin-top:auto; }
        #agro .agro-financial-grid small { color:var(--agro-muted); line-height:1.5; }
        #agro .agro-followup { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px; align-items:start; }
        #agro .agro-push-state { display:grid; grid-template-columns:42px minmax(0,1fr) auto; gap:14px; align-items:center; margin-bottom:20px; padding:16px; border:1px solid var(--agro-line); border-radius:12px; background:#fff; }
        #agro .agro-push-state>.material-symbols-outlined { width:42px; height:42px; display:grid; place-items:center; border-radius:10px; background:#e7ede2; color:var(--agro-green-dark); }
        #agro .agro-push-state strong, #agro .agro-push-state small { display:block; }
        #agro .agro-push-state strong { margin-bottom:3px; font-size:.86rem; }
        #agro .agro-push-state small { max-width:44ch; color:var(--agro-muted); font-size:.7rem; line-height:1.45; }
        #agro .agro-push-state .agro-button { min-height:42px; padding:10px 14px; font-size:.72rem; }
        #agro .agro-push-state[data-state="active"] { border-color:#a9c89b; background:#f4f8f1; }
        #agro .agro-push-state[data-state="active"]>.material-symbols-outlined { background:var(--agro-forest); color:var(--agro-green); }
        #agro .agro-push-state[data-state="blocked"], #agro .agro-push-state[data-state="error"] { border-color:#e2c3bd; background:#fff7f5; }
        #agro .agro-push-state[data-state="blocked"]>.material-symbols-outlined, #agro .agro-push-state[data-state="error"]>.material-symbols-outlined { background:#f4ded9; color:#8d2f20; }
        #agro .agro-form-compact label[hidden] { display:none; }
        #agro #agro-alert-value-wrap { position:relative; }
        #agro #agro-alert-value-wrap input { padding-right:72px; }
        #agro #agro-alert-unit { position:absolute; right:13px; bottom:14px; color:var(--agro-muted); font-size:.67rem; font-weight:800; pointer-events:none; }
        #agro #agro-alert-submit { align-self:end; min-height:49px; }
        #agro .agro-alert-rule-note { display:flex; align-items:center; gap:7px; margin:12px 0 0; color:var(--agro-muted); font-size:.7rem; line-height:1.5; }
        #agro .agro-alert-rule-note .material-symbols-outlined { color:var(--agro-green-dark); font-size:17px; }
        #agro .agro-inline-feedback { min-height:20px; margin:12px 0; color:var(--agro-muted); font-size:.72rem; line-height:1.5; }
        #agro .agro-inline-feedback[data-state="success"] { color:#2f6a20; }
        #agro .agro-inline-feedback[data-state="error"] { color:#8d2f20; }
        #agro .agro-alert-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:22px 0 10px; }
        #agro .agro-alert-toolbar h3 { margin:0; font-size:.92rem; }
        #agro .agro-alert-toolbar .agro-text-button { margin:0; }
        #agro .agro-alert-toolbar .agro-text-button:disabled { cursor:not-allowed; opacity:.45; }
        #agro .agro-saved-alerts { display:grid; gap:8px; }
        #agro .agro-saved-alert { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center; padding:13px 14px; background:#fff; border:1px solid var(--agro-line); border-radius:9px; }
        #agro .agro-saved-alert-main { min-width:0; }
        #agro .agro-saved-alert-main>span { display:flex; align-items:center; gap:7px; margin-bottom:4px; }
        #agro .agro-saved-alert-main strong { font-size:.78rem; }
        #agro .agro-saved-alert-main small { display:block; overflow-wrap:anywhere; color:var(--agro-muted); font-size:.68rem; line-height:1.45; }
        #agro .agro-alert-status { padding:3px 7px; border-radius:999px; background:#e7ede2; color:#2f6a20; font-size:.6rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
        #agro .agro-alert-status[data-status="paused"] { background:#edf0f3; color:#5f6c7d; }
        #agro .agro-saved-alert-actions { display:flex; align-items:center; gap:2px; }
        #agro .agro-saved-alert-actions button { width:36px; height:36px; display:grid; place-items:center; border:0; border-radius:8px; background:transparent; color:var(--agro-muted); }
        #agro .agro-saved-alert-actions button:hover { background:#eef2f5; color:var(--agro-ink); }
        #agro .agro-saved-alert-actions button[data-agro-delete-alert]:hover { background:#fff0ed; color:#8d2f20; }
        #agro .agro-saved-alert-actions .material-symbols-outlined { font-size:19px; }
        #agro .agro-alert-empty { display:flex; align-items:center; gap:10px; padding:20px 0; border-block:1px solid var(--agro-line); color:var(--agro-muted); }
        #agro .agro-alert-empty p { margin:0; font-size:.74rem; }
        #agro .agro-alert-empty .material-symbols-outlined { font-size:22px; }
        #agro .agro-calendar .agro-section-heading small { display:block; margin-top:6px; color:var(--agro-muted); font-size:.68rem; }
        #agro .agro-calendar-list { border-top:1px solid var(--agro-line); }
        #agro .agro-calendar-item { display:grid; grid-template-columns:54px minmax(0,1fr) 22px; gap:16px; align-items:center; padding:17px 0; border-bottom:1px solid var(--agro-line); color:inherit; text-decoration:none; }
        #agro .agro-calendar-item:hover>div>strong { color:var(--agro-green-dark); }
        #agro .agro-calendar-item time { display:flex; flex-direction:column; align-items:center; gap:3px; padding:8px 5px; border-radius:8px; background:#e7ede2; color:var(--agro-green-dark); font-weight:800; font-size:.67rem; line-height:1; text-transform:uppercase; }
        #agro .agro-calendar-item time strong { font-size:1.05rem; }
        #agro .agro-calendar-item strong { display:block; font-size:.86rem; }
        #agro .agro-calendar-item small { color:var(--agro-muted); }
        #agro .agro-calendar-item>.material-symbols-outlined { color:var(--agro-muted); font-size:19px; }
        #agro .agro-calendar-empty { margin:0; padding:14px 0; border-bottom:1px solid var(--agro-line); color:var(--agro-muted); font-size:.75rem; line-height:1.5; }
        #agro .agro-final-cta { position:relative; isolation:isolate; overflow:hidden; min-height:330px; display:flex; justify-content:space-between; align-items:end; gap:40px; padding:58px; border-radius:16px; background:var(--agro-night) url('https://images.unsplash.com/photo-1500595046743-cd271d694d30?auto=format&fit=crop&w=1800&q=80') center/cover; color:#fff; }
        #agro .agro-final-cta::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(2,7,20,.97),rgba(6,18,11,.8)); }
        #agro .agro-final-cta h2 { margin:0 0 10px; font-family:'Archivo',sans-serif; font-size:clamp(2.4rem,4vw,4rem); letter-spacing:-.04em; }
        #agro .agro-final-cta p { max-width:60ch; margin:0 0 18px; color:#d1dbe4; line-height:1.65; }
        #agro .agro-final-cta small { color:#aebccd; }
        #agro .agro-final-cta .agro-button { flex:none; }
        #agro .agro-compliance { max-width:90ch; margin:25px auto 60px; color:var(--agro-muted); text-align:center; font-size:.72rem; line-height:1.6; }
        #agro .agro-dialog { width:min(620px,calc(100% - 40px)); max-height:min(82vh,760px); margin:auto; padding:0; border:0; border-radius:14px; background:#fff; color:var(--agro-ink); box-shadow:0 32px 90px rgba(0,0,0,.38); }
        #agro .agro-dialog::backdrop { background:rgba(2,7,20,.76); backdrop-filter:blur(4px); }
        #agro .agro-dialog-head { display:flex; justify-content:space-between; align-items:center; padding:16px 20px; background:var(--agro-night); color:var(--agro-green); }
        #agro .agro-dialog-head button { width:40px; height:40px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.2); border-radius:50%; background:transparent; color:#fff; }
        #agro #agro-dialog-content { padding:28px; }
        #agro #agro-dialog-content h2 { margin:0 0 14px; font-family:'Archivo',sans-serif; font-size:2rem; letter-spacing:-.03em; }
        #agro #agro-dialog-content p, #agro #agro-dialog-content li { color:var(--agro-muted); line-height:1.65; }
        #agro #agro-dialog-content ul { padding-left:20px; }
        #agro #agro-dialog-content a { color:var(--agro-green-dark); font-weight:800; }

        @media (max-width:1299px) {
          #agro .agro-hero-content { grid-template-columns:minmax(0,1fr) minmax(340px,.72fr); gap:42px; }
          #agro .agro-value-band { grid-template-columns:repeat(2,minmax(0,1fr)); }
          #agro .agro-value-band article:nth-child(2) { border-right:0; }
          #agro .agro-value-band article:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.11); }
          #agro .agro-opportunity-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
          #agro .agro-opportunity { border-bottom:1px solid var(--agro-line); }
          #agro .agro-opportunity:nth-child(3) { border-right:0; }
          #agro .agro-opportunity:nth-child(n+4) { border-bottom:0; }
          #agro .agro-basis { grid-template-columns:1fr 1.2fr; }
          #agro .agro-basis-result { grid-column:1/-1; }
        }
        @media (max-width:899px) {
          #agro .agro-content, #agro .agro-hero-content { width:min(100% - 48px,760px); }
          #agro .agro-hero { min-height:0; }
          #agro .agro-hero-content { grid-template-columns:1fr; align-items:start; padding:78px 0 56px; }
          #agro .agro-hero-market { width:100%; backdrop-filter:none; }
          #agro .agro-intelligence, #agro .hedge-stage, #agro .hedge-calculator, #agro .agro-protection-layout, #agro .agro-followup { grid-template-columns:1fr; }
          #agro .hedge-stage { padding:72px 24px; }
          #agro .hedge-visual { max-width:700px; }
          #agro .agro-scenario-layout { grid-template-columns:1fr; }
          #agro .agro-curve-layout { grid-template-columns:1fr; }
          #agro .agro-curve-market-card { aspect-ratio:auto; min-height:260px; }
          #agro .agro-form-compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
          #agro .agro-opportunity-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
          #agro .agro-opportunity:nth-child(3) { border-right:1px solid var(--agro-line); }
          #agro .agro-opportunity:nth-child(2n) { border-right:0; }
          #agro .agro-opportunity:nth-child(4) { border-bottom:1px solid var(--agro-line); }
          #agro .hedge-timeline { grid-template-columns:1fr; gap:0; }
          #agro .hedge-timeline::before, #agro .hedge-timeline::after { top:0; bottom:0; left:19px; width:2px; height:auto; right:auto; }
          #agro .hedge-timeline::after { transform:scaleY(0); transform-origin:top; }
          #agro .hedge-timeline.is-visible::after { transform:scaleY(1); }
          #agro .hedge-timeline li { display:grid; grid-template-columns:40px 1fr; gap:18px; padding:0 0 28px; }
          #agro .hedge-timeline h3 { margin:4px 0 7px; }
          #agro .agro-financial-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
          #agro .agro-financial-grid button { border-bottom:1px solid var(--agro-line); }
          #agro .agro-financial-grid button:nth-child(2n) { border-right:0; }
          #agro .agro-financial-grid button:last-child { border-bottom:0; }
          #agro .agro-final-cta { align-items:flex-start; flex-direction:column; }
        }
        @media (max-width:599px) {
          #agro .agro-content, #agro .agro-hero-content { width:calc(100% - 40px); }
          #agro .agro-hero-content { padding:58px 0 40px; }
          #agro .agro-hero-video { display:none; }
          #agro .agro-hero { background:linear-gradient(90deg,rgba(2,7,20,.94),rgba(6,18,11,.72)),url('https://images.unsplash.com/photo-1500595046743-cd271d694d30?auto=format&fit=crop&w=900&q=80') center/cover; }
          #agro .agro-hero h1 { font-size:clamp(2.75rem,13vw,3.15rem); }
          #agro .agro-hero-copy>p:not(.agro-eyebrow) { font-size:.96rem; }
          #agro .agro-actions { flex-direction:column; }
          #agro .agro-button { width:100%; }
          #agro .agro-market-foot { align-items:flex-start; flex-direction:column; }
          #agro .agro-value-band { grid-template-columns:1fr; }
          #agro .agro-value-band article, #agro .agro-value-band article:nth-child(n) { border-right:0; border-bottom:1px solid rgba(255,255,255,.11); }
          #agro .agro-value-band article:last-child { border-bottom:0; }
          #agro .agro-flow { justify-content:flex-start; padding-inline:20px; }
          #agro .agro-section { margin-block:62px; }
          #agro .agro-section-heading { align-items:flex-start; flex-direction:column; gap:14px; margin-bottom:22px; }
          #agro .agro-section-heading h2, #agro .agro-basis h2 { font-size:2.2rem; }
          #agro .agro-news-item { grid-template-columns:90px minmax(0,1fr); gap:12px; }
          #agro .agro-news-item img { width:90px; height:82px; }
          #agro .agro-news-item .agro-news-mark { width:90px; height:82px; }
          #agro .agro-news-item>.material-symbols-outlined:last-child { display:none; }
          #agro .hedge-stage { padding:60px 20px; gap:40px; }
          #agro .hedge-stage h2 { font-size:2.65rem; }
          #agro .hedge-benefits { grid-template-columns:1fr; }
          #agro .hedge-benefits article:nth-child(odd) { border-right:0; margin-right:0; }
          #agro .hedge-visual { padding:17px; }
          #agro .hedge-visual figcaption { flex-direction:column; }
          #agro .agro-tool { padding:28px 20px; margin-inline:-1px; }
          #agro .agro-form, #agro .agro-form-compact, #agro .agro-basis .agro-form { grid-template-columns:1fr; }
          #agro .agro-push-state { grid-template-columns:42px minmax(0,1fr); }
          #agro .agro-push-state .agro-button { grid-column:1/-1; width:100%; }
          #agro .agro-saved-alert { grid-template-columns:1fr; }
          #agro .agro-saved-alert-actions { justify-content:flex-end; border-top:1px solid var(--agro-line); padding-top:8px; }
          #agro .hedge-calculator { gap:28px; }
          #agro .hedge-results { padding:18px; }
          #agro .hedge-results dl { grid-template-columns:1fr; }
          #agro .hedge-results dl>div, #agro .hedge-results dl>div:nth-child(n) { border-right:0; }
          #agro #agro-protection-panel { padding:25px 18px; }
          #agro .agro-tabs-large { grid-template-columns:1fr; }
          #agro .agro-opportunity-grid { grid-template-columns:1fr; }
          #agro .agro-opportunity, #agro .agro-opportunity:nth-child(n) { border-right:0; border-bottom:1px solid var(--agro-line); }
          #agro .agro-opportunity:last-child { border-bottom:0; }
          #agro .agro-basis { grid-template-columns:1fr; gap:28px; padding:30px 20px; }
          #agro .agro-financial-grid { grid-template-columns:1fr; }
          #agro .agro-financial-grid button, #agro .agro-financial-grid button:nth-child(n) { min-height:150px; border-right:0; border-bottom:1px solid var(--agro-line); }
          #agro .agro-final-cta { padding:38px 22px; border-radius:12px; }
          #agro .agro-dialog { width:calc(100% - 24px); }
          #agro .agro-contract-map { grid-template-columns:1fr; }
          #agro .agro-contract-map article, #agro .agro-contract-map article:nth-child(n) { border-right:0; border-bottom:1px solid var(--agro-line); }
          #agro .agro-contract-map article:last-child { border-bottom:0; }
          #agro .agro-data-note { align-items:flex-start; flex-direction:column; }
        }
        @media (prefers-reduced-motion:reduce) {
          #agro *, #agro *::before, #agro *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
          #agro .agro-hero-video { display:none; }
          #agro .hedge-line { stroke-dashoffset:0 !important; }
        }

/* =========================================
   CNR — CONTA DE NÃO RESIDENTE
   ========================================= */
#cnr {
  --cnr-blue:#078bff;
  --cnr-blue-strong:#0757d3;
  --cnr-ink:#061126;
  --cnr-navy:#020718;
  --cnr-navy-soft:#09152c;
  --cnr-paper:#f3f6fa;
  --cnr-white:#fff;
  --cnr-muted:#5c687b;
  --cnr-line:#dbe3ed;
  width:100%; min-width:0; overflow:hidden; background:var(--cnr-paper); color:var(--cnr-ink);
}
#cnr.active-section { animation:none; opacity:1; transform:none; }
#cnr *, #cnr *::before, #cnr *::after { box-sizing:border-box; }
#cnr h1, #cnr h2, #cnr h3, #cnr strong { font-family:'Archivo','Manrope',sans-serif; }
#cnr button, #cnr input, #cnr select { font:inherit; }
#cnr button, #cnr a { -webkit-tap-highlight-color:transparent; }
#cnr img { display:block; width:100%; }
#cnr .cnr-shell { width:min(1280px, calc(100% - 96px)); margin-inline:auto; }
#cnr .cnr-section { padding:112px 0; }
#cnr .cnr-overline, #cnr .cnr-kicker { display:inline-flex; align-items:center; gap:9px; margin-bottom:18px; color:var(--cnr-blue-strong); font-size:.73rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
#cnr .cnr-kicker { color:#a9d6ff; }
#cnr .cnr-kicker-dot { width:7px; height:7px; border-radius:50%; background:#44aaff; box-shadow:0 0 0 6px rgba(68,170,255,.12); }
#cnr h2 { margin:0; font-size:clamp(2.35rem,4vw,4.5rem); line-height:.99; letter-spacing:-.055em; color:var(--cnr-ink); }
#cnr .cnr-section-copy>p, #cnr .cnr-section-heading>p { margin:24px 0 0; color:var(--cnr-muted); font-size:1.04rem; line-height:1.78; }
#cnr .cnr-btn { min-height:50px; padding:0 21px; border:1px solid transparent; border-radius:8px; display:inline-flex; align-items:center; justify-content:center; gap:10px; text-decoration:none; cursor:pointer; font-weight:800; font-size:.88rem; transition:transform .2s ease, background .2s ease, border-color .2s ease; }
#cnr .cnr-btn .material-symbols-outlined { font-size:19px; }
#cnr .cnr-btn:hover { transform:translateY(-2px); }
#cnr .cnr-btn:focus-visible, #cnr button:focus-visible, #cnr a:focus-visible, #cnr summary:focus-visible, #cnr input:focus-visible, #cnr select:focus-visible { outline:3px solid rgba(7,139,255,.38); outline-offset:3px; }
#cnr .cnr-btn-primary { background:var(--cnr-blue); color:#fff; box-shadow:0 13px 34px rgba(7,87,211,.28); }
#cnr .cnr-btn-primary:hover { background:#1196ff; }
#cnr .cnr-btn-ghost { color:#fff; background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.28); backdrop-filter:blur(12px); }
#cnr .cnr-btn-light { color:var(--cnr-ink); background:#fff; }
#cnr .cnr-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:31px; }
#cnr .cnr-section-heading { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.65fr); align-items:end; gap:70px; margin-bottom:52px; }
#cnr .cnr-section-heading-light h2, #cnr .cnr-section-heading-light>p { color:#fff; }
#cnr .cnr-section-heading-light>p { color:#a9b5c9; }

#cnr .cnr-hero { min-height:680px; position:relative; display:grid; align-items:center; isolation:isolate; background:#020718; color:#fff; }
#cnr .cnr-hero-media, #cnr .cnr-hero-shade { position:absolute; inset:0; width:100%; height:100%; }
#cnr .cnr-hero-media { object-fit:cover; object-position:center; z-index:-3; }
#cnr .cnr-hero-shade { z-index:-2; background:linear-gradient(90deg,rgba(1,7,23,.97) 0%,rgba(1,7,23,.9) 42%,rgba(1,7,23,.46) 67%,rgba(1,7,23,.18) 100%),linear-gradient(0deg,rgba(1,7,23,.8),transparent 48%); }
#cnr .cnr-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(410px,.72fr); align-items:center; gap:70px; padding-block:82px; }
#cnr .cnr-hero-copy h1 { max-width:760px; margin:0; color:#fff; font-size:clamp(3.3rem,5.2vw,6.2rem); line-height:.92; letter-spacing:-.072em; text-wrap:balance; }
#cnr .cnr-hero-copy h1 em { display:block; color:#56adff; font-style:normal; }
#cnr .cnr-hero-copy>p { max-width:670px; margin:25px 0 0; color:#c7d2e4; font-size:1.08rem; line-height:1.72; }
#cnr .cnr-hero-trust { display:flex; flex-wrap:wrap; gap:22px; margin-top:30px; color:#bdc9da; font-size:.77rem; }
#cnr .cnr-hero-trust>span { display:flex; align-items:center; gap:7px; }
#cnr .cnr-hero-trust .material-symbols-outlined { font-size:17px; color:#69b6ff; }
#cnr .cnr-market-panel { align-self:end; overflow:hidden; border:1px solid rgba(255,255,255,.16); border-radius:14px; background:rgba(3,10,27,.86); box-shadow:0 30px 80px rgba(0,0,0,.36); backdrop-filter:blur(20px); }
#cnr .cnr-market-head { display:flex; justify-content:space-between; gap:18px; align-items:center; padding:23px 25px 17px; }
#cnr .cnr-market-head>div { display:grid; gap:5px; }
#cnr .cnr-market-head>div>span { color:#7f91ab; font-size:.65rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
#cnr .cnr-market-head strong { font-size:1.04rem; }
#cnr .cnr-live-status { display:flex; align-items:center; gap:7px; color:#90a0b7; font-size:.65rem; }
#cnr .cnr-live-status i { width:7px; height:7px; border-radius:50%; background:#3ccc87; box-shadow:0 0 0 5px rgba(60,204,135,.12); }
#cnr .cnr-market-tabs { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid rgba(255,255,255,.1); }
#cnr .cnr-market-tabs button { position:relative; padding:14px 10px; color:#8190a8; border:0; border-right:1px solid rgba(255,255,255,.1); background:transparent; cursor:pointer; font-size:.73rem; font-weight:800; }
#cnr .cnr-market-tabs button:last-child { border-right:0; }
#cnr .cnr-market-tabs button[aria-selected="true"] { color:#fff; background:rgba(7,139,255,.11); }
#cnr .cnr-market-tabs button[aria-selected="true"]::after { content:""; position:absolute; inset:auto 0 -1px; height:2px; background:var(--cnr-blue); }
#cnr .cnr-market-content { min-height:235px; padding:25px; }
#cnr .cnr-market-skeleton { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
#cnr .cnr-market-skeleton span, #cnr .cnr-fx-skeleton { min-height:72px; border-radius:8px; background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(255,255,255,.11),rgba(255,255,255,.04)); background-size:220% 100%; animation:cnr-shimmer 1.4s linear infinite; }
@keyframes cnr-shimmer { to { background-position:-220% 0; } }
#cnr .cnr-market-value { display:grid; gap:6px; }
#cnr .cnr-market-value>span { color:#8796ad; font-size:.67rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
#cnr .cnr-market-value strong { color:#fff; font-size:2.25rem; letter-spacing:-.04em; }
#cnr .cnr-market-change { color:#5ee29c; font-size:.8rem; font-weight:800; }
#cnr .cnr-market-change.is-down { color:#ff8b8b; }
#cnr .cnr-market-chart { width:100%; height:87px; margin-top:15px; overflow:visible; }
#cnr .cnr-market-chart path { fill:none; stroke:#47a9ff; stroke-width:2.5; vector-effect:non-scaling-stroke; }
#cnr .cnr-market-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:18px; background:rgba(255,255,255,.1); }
#cnr .cnr-market-grid div { display:grid; gap:4px; padding:12px; background:#081126; }
#cnr .cnr-market-grid span { color:#7f8da5; font-size:.62rem; text-transform:uppercase; }
#cnr .cnr-market-grid strong { color:#fff; font-size:.8rem; }
#cnr .cnr-market-error { min-height:180px; display:grid; place-content:center; gap:10px; text-align:center; color:#91a0b5; }
#cnr .cnr-market-error .material-symbols-outlined { color:#5e718d; font-size:34px; }
#cnr .cnr-market-error strong { color:#fff; }
#cnr .cnr-market-foot { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:14px 25px; border-top:1px solid rgba(255,255,255,.1); color:#77869d; font-size:.62rem; }
#cnr .cnr-market-foot button { padding:0; border:0; background:transparent; color:#78bdff; font-weight:800; cursor:pointer; }

#cnr .cnr-advice-grid { display:grid; grid-template-columns:minmax(0,.82fr) minmax(420px,1fr); align-items:center; gap:95px; }
#cnr .cnr-text-link { display:inline-flex; align-items:center; gap:8px; padding:0 0 6px; border:0; border-bottom:1px solid #9bacc0; color:var(--cnr-ink); background:transparent; cursor:pointer; font-weight:800; }
#cnr .cnr-text-link .material-symbols-outlined { font-size:18px; }
#cnr .cnr-editorial-image { position:relative; min-width:0; margin:0; }
#cnr .cnr-editorial-image img { height:540px; object-fit:cover; border-radius:3px; }
#cnr .cnr-editorial-image::before { content:""; position:absolute; width:70px; height:2px; inset:-18px auto auto 0; background:var(--cnr-blue); pointer-events:none; }
#cnr .cnr-editorial-image figcaption { position:absolute; right:0; bottom:0; max-width:290px; padding:18px 22px; background:var(--cnr-navy); color:#fff; font-size:.78rem; }

#cnr .cnr-types { padding-bottom:48px; background:#fff; color:var(--cnr-ink); }
#cnr .cnr-exchange .cnr-overline, #cnr .cnr-faq .cnr-overline { color:#67b7ff; }
#cnr .cnr-types-heading { max-width:740px; margin-bottom:32px; }
#cnr .cnr-types-heading h2 { margin:0; color:var(--cnr-ink); font-size:clamp(2rem,3.4vw,3.45rem); letter-spacing:-.045em; line-height:1.02; }
#cnr .cnr-types-heading p { margin:13px 0 0; color:var(--cnr-muted); font-size:.9rem; line-height:1.6; }
#cnr .cnr-type-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
#cnr .cnr-type-card { min-height:410px; display:flex; flex-direction:column; padding:27px; border:1px solid rgba(87,177,255,.16); border-radius:14px; background:#06152f; box-shadow:0 18px 45px rgba(5,23,51,.1); }
#cnr .cnr-type-icon { width:48px; height:48px; display:grid; place-items:center; margin-bottom:20px; border:1px solid rgba(80,176,255,.2); border-radius:11px; background:rgba(31,143,255,.12); color:#4bacff; font-size:27px; }
#cnr .cnr-type-card h3 { margin:0 0 6px; color:#fff; font-size:1.3rem; letter-spacing:-.02em; line-height:1.15; }
#cnr .cnr-type-subtitle { color:#3fa8ff; font-size:.76rem; }
#cnr .cnr-type-description { min-height:54px; margin:15px 0 20px; color:#aebbd0; font-size:.78rem; line-height:1.55; }
#cnr .cnr-type-card ul { display:grid; gap:12px; margin:0 0 25px; padding:0; list-style:none; }
#cnr .cnr-type-card li { display:flex; align-items:flex-start; gap:9px; color:#ced7e5; font-size:.75rem; line-height:1.45; }
#cnr .cnr-type-card li .material-symbols-outlined { margin-top:1px; color:#2196f3; font-size:17px; font-variation-settings:'FILL' 1; }
#cnr .cnr-card-link { display:flex; align-items:center; justify-content:center; gap:9px; width:100%; margin-top:auto; padding:13px 16px; border:1px solid #168bf0; border-radius:8px; color:#fff; background:transparent; cursor:pointer; font-weight:800; text-align:center; transition:background .2s ease,border-color .2s ease; }
#cnr .cnr-card-link .material-symbols-outlined { color:#55b3ff; font-size:19px; transition:transform .2s ease; }
#cnr .cnr-card-link:hover { border-color:#5ebcff; background:rgba(27,143,245,.12); }
#cnr .cnr-card-link:hover .material-symbols-outlined { transform:translateX(3px); }
#cnr .cnr-legal-note { margin:20px 0 0; color:#7888a2; font-size:.66rem; line-height:1.6; }

#cnr .cnr-advice { padding-top:48px; background:#fff; }
#cnr .cnr-advice-grid { grid-template-columns:minmax(420px,1fr) minmax(0,.86fr); }
#cnr .cnr-advice .cnr-editorial-image img { height:660px; }
#cnr .cnr-advice .cnr-advice-image img { object-position:center; }
#cnr .cnr-benefit-list { margin-top:36px; border-top:1px solid var(--cnr-line); }
#cnr .cnr-benefit-list>div { display:grid; grid-template-columns:34px 1fr; gap:15px; padding:19px 0; border-bottom:1px solid var(--cnr-line); }
#cnr .cnr-benefit-list .material-symbols-outlined { color:var(--cnr-blue); font-size:23px; }
#cnr .cnr-benefit-list p { margin:0; color:var(--cnr-muted); font-size:.78rem; line-height:1.55; }
#cnr .cnr-benefit-list strong { display:block; margin-bottom:4px; color:var(--cnr-ink); font-size:.88rem; }

#cnr .cnr-global-banner { min-height:520px; position:relative; display:grid; align-items:center; isolation:isolate; overflow:hidden; background:#020718; }
#cnr .cnr-global-banner>img { position:absolute; inset:0; height:100%; object-fit:cover; object-position:center; z-index:-2; }
#cnr .cnr-global-banner::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(2,7,24,.98) 0%,rgba(2,7,24,.8) 52%,rgba(2,7,24,.14) 100%); }
#cnr .cnr-global-content { color:#fff; }
#cnr .cnr-global-content h2 { max-width:800px; color:#fff; }
#cnr .cnr-global-content p { max-width:580px; margin:25px 0 30px; color:#aebbd0; font-size:1rem; line-height:1.7; }

#cnr .cnr-products { background:var(--cnr-paper); }
#cnr .cnr-product-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--cnr-line); border-left:1px solid var(--cnr-line); }
#cnr .cnr-product-card { position:relative; min-height:210px; display:flex; flex-direction:column; align-items:flex-start; padding:30px; border:0; border-right:1px solid var(--cnr-line); border-bottom:1px solid var(--cnr-line); background:#fff; color:var(--cnr-ink); text-align:left; cursor:pointer; transition:background .2s ease; }
#cnr .cnr-product-card:hover { background:#f8fbff; }
#cnr .cnr-product-card>span { color:var(--cnr-blue); font-size:30px; }
#cnr .cnr-product-card strong { margin:28px 0 8px; font-size:1.1rem; }
#cnr .cnr-product-card small { max-width:230px; color:var(--cnr-muted); font-size:.75rem; line-height:1.5; }
#cnr .cnr-product-card>i { position:absolute; top:27px; right:27px; color:#8ba0b8; font-size:20px; font-style:normal; transition:transform .2s ease; }
#cnr .cnr-product-card:hover>i { transform:translate(3px,-3px); color:var(--cnr-blue); }

#cnr .cnr-exchange { background:#050b1b; color:#fff; }
#cnr .cnr-fx-layout { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(370px,.72fr); gap:24px; }
#cnr .cnr-fx-quotes { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid rgba(255,255,255,.14); }
#cnr .cnr-fx-card { min-height:326px; padding:29px; border-right:1px solid rgba(255,255,255,.14); background:#081126; }
#cnr .cnr-fx-card:last-child { border-right:0; }
#cnr .cnr-fx-card header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#cnr .cnr-fx-card header span { color:#8fa1ba; font-size:.68rem; font-weight:800; letter-spacing:.1em; }
#cnr .cnr-fx-card header i { width:8px; height:8px; border-radius:50%; background:#3ddd89; }
#cnr .cnr-fx-card strong { display:block; margin-top:44px; color:#fff; font-size:1.75rem; letter-spacing:-.04em; }
#cnr .cnr-fx-card>span { display:block; margin-top:8px; color:#66d99a; font-size:.74rem; font-weight:800; }
#cnr .cnr-fx-card>span.is-down { color:#ff8b8b; }
#cnr .cnr-fx-card svg { height:80px; margin-top:34px; }
#cnr .cnr-fx-card path { fill:none; stroke:#45a8ff; stroke-width:2; vector-effect:non-scaling-stroke; }
#cnr .cnr-fx-card small { display:block; margin-top:18px; color:#71829b; font-size:.62rem; }
#cnr .cnr-fx-skeleton { min-height:326px; border-radius:0; border-right:1px solid rgba(255,255,255,.14); }
#cnr .cnr-simulator { padding:33px; border:1px solid rgba(255,255,255,.16); background:#0c1730; }
#cnr .cnr-simulator-head { display:flex; gap:12px; align-items:center; margin-bottom:32px; }
#cnr .cnr-simulator-head>.material-symbols-outlined { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.16); color:#61b6ff; }
#cnr .cnr-simulator-head div { display:grid; gap:4px; }
#cnr .cnr-simulator-head strong { color:#fff; }
#cnr .cnr-simulator-head small { color:#7f90a8; }
#cnr .cnr-simulator label { display:block; margin-bottom:8px; color:#aab6c8; font-size:.71rem; font-weight:800; }
#cnr .cnr-input-row { display:grid; grid-template-columns:1fr 100px; }
#cnr .cnr-input-row input, #cnr .cnr-input-row select { min-width:0; height:52px; padding:0 15px; border:1px solid #2e3b53; background:#071025; color:#fff; }
#cnr .cnr-input-row select { border-left:0; }
#cnr .cnr-simulator-result { display:grid; gap:6px; margin:22px 0; padding:20px 0; border-block:1px solid rgba(255,255,255,.12); }
#cnr .cnr-simulator-result span, #cnr .cnr-simulator-result small { color:#8493aa; font-size:.68rem; }
#cnr .cnr-simulator-result strong { color:#fff; font-size:1.7rem; }
#cnr .cnr-simulator .cnr-btn { width:100%; }
#cnr .cnr-simulator>p { margin:13px 0 0; color:#728198; font-size:.61rem; line-height:1.5; }

#cnr .cnr-process { background:var(--cnr-paper); color:var(--cnr-ink); }
#cnr .cnr-process-grid { display:grid; grid-template-columns:minmax(0,.88fr) minmax(420px,1fr); gap:82px; align-items:center; }
#cnr .cnr-process h2 { max-width:650px; color:var(--cnr-ink); }
#cnr .cnr-process-lead { max-width:620px; margin:20px 0 0; color:var(--cnr-muted); font-size:.9rem; line-height:1.65; }
#cnr .cnr-timeline { display:grid; gap:0; margin:31px 0 28px; padding:0; border-top:1px solid var(--cnr-line); list-style:none; }
#cnr .cnr-timeline li { display:grid; grid-template-columns:38px 1fr; gap:15px; padding:15px 0; border-bottom:1px solid var(--cnr-line); }
#cnr .cnr-timeline li>span { width:34px; height:34px; display:grid; place-items:center; border:1px solid #9bcfff; border-radius:50%; background:#eaf5ff; color:#0877db; font:800 .7rem 'Archivo',sans-serif; }
#cnr .cnr-timeline strong { color:var(--cnr-ink); font-size:.86rem; }
#cnr .cnr-timeline p { margin:4px 0 0; color:var(--cnr-muted); font-size:.73rem; line-height:1.45; }
#cnr .cnr-process-image { position:relative; margin:0; }
#cnr .cnr-process-image img { height:560px; object-fit:cover; object-position:center; border-radius:3px; }
#cnr .cnr-process-image figcaption { position:absolute; left:20px; bottom:20px; display:flex; align-items:center; gap:10px; padding:15px 18px; border-radius:3px; background:var(--cnr-navy); color:#fff; font-size:.74rem; font-weight:800; box-shadow:0 18px 45px rgba(0,0,0,.2); }
#cnr .cnr-process-image figcaption span { color:#67b7ff; }

#cnr .cnr-regulation { background:#fff; }
#cnr .cnr-reg-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--cnr-line); }
#cnr .cnr-reg-card { min-height:280px; padding:31px; border-right:1px solid var(--cnr-line); }
#cnr .cnr-reg-card:last-child { border-right:0; }
#cnr .cnr-reg-card>span { color:var(--cnr-blue); font-size:29px; }
#cnr .cnr-reg-card h3 { margin:29px 0 10px; color:var(--cnr-ink); font-size:1.06rem; }
#cnr .cnr-reg-card p { min-height:66px; margin:0 0 27px; color:var(--cnr-muted); font-size:.76rem; line-height:1.6; }
#cnr .cnr-reg-card button { padding:0; border:0; border-bottom:1px solid #9eafc1; background:transparent; color:var(--cnr-ink); font-size:.75rem; font-weight:800; cursor:pointer; }
#cnr .cnr-reg-alert { display:grid; grid-template-columns:28px 1fr; gap:15px; margin-top:22px; padding:21px 24px; border:1px solid #cfe3f7; background:#f4f9ff; }
#cnr .cnr-reg-alert span { color:var(--cnr-blue-strong); }
#cnr .cnr-reg-alert p { margin:0; color:#526279; font-size:.71rem; line-height:1.6; }

#cnr .cnr-faq { background:#030919; color:#fff; }
#cnr .cnr-faq-grid { display:grid; grid-template-columns:minmax(360px,.7fr) minmax(0,1fr); gap:90px; align-items:start; }
#cnr .cnr-faq h2 { color:#fff; }
#cnr .cnr-faq-intro>p { margin:23px 0 32px; color:#99a7bc; line-height:1.7; }
#cnr .cnr-specialist-card { position:relative; height:355px; margin:0; overflow:hidden; }
#cnr .cnr-specialist-card img { height:100%; object-fit:cover; }
#cnr .cnr-specialist-card::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(3,9,25,.96),transparent 72%); }
#cnr .cnr-specialist-card figcaption { position:absolute; z-index:1; inset:auto 24px 23px; display:grid; gap:5px; }
#cnr .cnr-specialist-card strong { font-size:1rem; }
#cnr .cnr-specialist-card span { color:#adb9ca; font-size:.72rem; }
#cnr .cnr-specialist-card a { width:max-content; margin-top:8px; color:#66b7ff; font-size:.73rem; font-weight:800; }
#cnr .cnr-accordion { border-top:1px solid rgba(255,255,255,.16); }
#cnr .cnr-accordion details { border-bottom:1px solid rgba(255,255,255,.16); }
#cnr .cnr-accordion summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:22px 0; color:#fff; cursor:pointer; list-style:none; font:700 .9rem 'Archivo',sans-serif; }
#cnr .cnr-accordion summary::-webkit-details-marker { display:none; }
#cnr .cnr-accordion summary span { color:#60b5ff; font-size:20px; transition:transform .2s ease; }
#cnr .cnr-accordion details[open] summary span { transform:rotate(45deg); }
#cnr .cnr-accordion details p { margin:-4px 44px 23px 0; color:#91a1b8; font-size:.76rem; line-height:1.7; }

#cnr .cnr-final-cta { min-height:540px; position:relative; display:grid; align-items:center; isolation:isolate; overflow:hidden; background:#020718; }
#cnr .cnr-final-cta>img, #cnr .cnr-final-shade { position:absolute; inset:0; width:100%; height:100%; }
#cnr .cnr-final-cta>img { z-index:-2; object-fit:cover; object-position:center; }
#cnr .cnr-final-shade { z-index:-1; background:linear-gradient(90deg,rgba(2,7,24,.98),rgba(2,7,24,.83) 54%,rgba(2,7,24,.24)); }
#cnr .cnr-final-content { color:#fff; }
#cnr .cnr-final-content h2 { max-width:900px; color:#fff; }
#cnr .cnr-final-content p { max-width:590px; margin:24px 0 31px; color:#acb9cc; line-height:1.7; }

.cnr-modal { position:fixed; inset:0; z-index:4000; display:none; place-items:center; padding:24px; }
.cnr-modal.is-open { display:grid; }
.cnr-modal-backdrop { position:absolute; inset:0; background:rgba(1,5,17,.78); backdrop-filter:blur(8px); }
.cnr-modal-dialog { position:relative; width:min(600px,100%); max-height:min(760px,calc(100vh - 48px)); overflow:auto; padding:42px; border:1px solid #dbe4ef; border-radius:4px; background:#fff; color:#07152e; box-shadow:0 40px 100px rgba(0,0,0,.38); }
.cnr-modal-dialog h2 { margin-bottom:22px; color:#07152e; font-size:2.25rem; }
.cnr-modal .cnr-overline { color:#087ee5; }
.cnr-modal-close { position:absolute; top:17px; right:17px; width:39px; height:39px; display:grid; place-items:center; border:1px solid #dbe4ef; background:#fff; color:#07152e; cursor:pointer; }
.cnr-modal-close span { font-size:21px; }
.cnr-modal-body { margin-bottom:27px; color:#53627a; font-size:.84rem; line-height:1.7; }
.cnr-modal-body p { margin:0 0 14px; }
.cnr-modal-body ul { display:grid; gap:10px; margin:0 0 20px; padding-left:19px; }
.cnr-modal-body strong { color:#07152e; }
body.cnr-modal-open { overflow:hidden; }

#cnr .cnr-reveal { opacity:0; transform:translateY(20px); transition:opacity .65s ease,transform .65s ease; }
#cnr .cnr-reveal.is-visible { opacity:1; transform:none; }

[data-theme="dark"] #cnr .cnr-advice, [data-theme="dark"] #cnr .cnr-types, [data-theme="dark"] #cnr .cnr-process, [data-theme="dark"] #cnr .cnr-regulation, [data-theme="dark"] #cnr .cnr-products { background:#060b19; }
[data-theme="dark"] #cnr h2, [data-theme="dark"] #cnr .cnr-benefit-list strong, [data-theme="dark"] #cnr .cnr-text-link, [data-theme="dark"] #cnr .cnr-reg-card h3, [data-theme="dark"] #cnr .cnr-reg-card button { color:#f5f8fc; }
[data-theme="dark"] #cnr .cnr-types-heading h2, [data-theme="dark"] #cnr .cnr-process h2, [data-theme="dark"] #cnr .cnr-timeline strong { color:#f5f8fc; }
[data-theme="dark"] #cnr .cnr-types-heading p, [data-theme="dark"] #cnr .cnr-process-lead, [data-theme="dark"] #cnr .cnr-timeline p { color:#9ba9bd; }
[data-theme="dark"] #cnr .cnr-timeline { border-color:#243149; }
[data-theme="dark"] #cnr .cnr-timeline li { border-color:#243149; }
[data-theme="dark"] #cnr .cnr-section-copy>p, [data-theme="dark"] #cnr .cnr-section-heading>p, [data-theme="dark"] #cnr .cnr-benefit-list p, [data-theme="dark"] #cnr .cnr-reg-card p { color:#9ba9bd; }
[data-theme="dark"] #cnr .cnr-stat-row, [data-theme="dark"] #cnr .cnr-benefit-list, [data-theme="dark"] #cnr .cnr-benefit-list>div, [data-theme="dark"] #cnr .cnr-reg-grid { border-color:#243149; background:#243149; }
[data-theme="dark"] #cnr .cnr-stat-row>div, [data-theme="dark"] #cnr .cnr-product-card, [data-theme="dark"] #cnr .cnr-reg-card { background:#0b1428; color:#f5f8fc; }
[data-theme="dark"] #cnr .cnr-product-grid, [data-theme="dark"] #cnr .cnr-product-card { border-color:#243149; }
[data-theme="dark"] #cnr .cnr-product-card strong, [data-theme="dark"] .cnr-modal-dialog h2 { color:#f5f8fc; }
[data-theme="dark"] #cnr .cnr-product-card:hover { background:#0f1b33; }
[data-theme="dark"] #cnr .cnr-reg-alert { border-color:#203b59; background:#0c1c35; }
[data-theme="dark"] #cnr .cnr-reg-alert p { color:#a9b7ca; }
[data-theme="dark"] .cnr-modal-dialog, [data-theme="dark"] .cnr-modal-close { border-color:#273750; background:#0b1428; color:#f5f8fc; }
[data-theme="dark"] .cnr-modal-body { color:#a4b2c6; }
[data-theme="dark"] .cnr-modal-body strong { color:#fff; }

@media (max-width:1300px) {
  #cnr .cnr-shell { width:min(1120px,calc(100% - 64px)); }
  #cnr .cnr-hero-grid { grid-template-columns:minmax(0,1fr) minmax(360px,.68fr); gap:42px; }
  #cnr .cnr-advice-grid, #cnr .cnr-process-grid { gap:60px; }
  #cnr .cnr-type-card { padding:28px; }
}
@media (max-width:900px) {
  #cnr .cnr-shell { width:calc(100% - 48px); }
  #cnr .cnr-section { padding:82px 0; }
  #cnr .cnr-types { padding-bottom:34px; }
  #cnr .cnr-advice { padding-top:48px; }
  #cnr .cnr-section-heading { grid-template-columns:1fr; gap:18px; }
  #cnr .cnr-hero { min-height:auto; }
  #cnr .cnr-hero-grid { grid-template-columns:1fr; gap:45px; padding-block:70px; }
  #cnr .cnr-hero-copy { max-width:700px; }
  #cnr .cnr-market-panel { width:min(580px,100%); align-self:auto; }
  #cnr .cnr-advice-grid, #cnr .cnr-process-grid, #cnr .cnr-faq-grid { grid-template-columns:1fr; gap:55px; }
  #cnr .cnr-advice .cnr-editorial-image { order:2; }
  #cnr .cnr-editorial-image img, #cnr .cnr-advice .cnr-editorial-image img { height:480px; }
  #cnr .cnr-type-grid { grid-template-columns:1fr; }
  #cnr .cnr-type-card { min-height:auto; border-right:0; border-bottom:1px solid rgba(255,255,255,.14); }
  #cnr .cnr-type-card:last-child { border-bottom:0; }
  #cnr .cnr-product-grid { grid-template-columns:repeat(2,1fr); }
  #cnr .cnr-fx-layout { grid-template-columns:1fr; }
  #cnr .cnr-process-image img { height:520px; }
  #cnr .cnr-reg-grid { grid-template-columns:1fr; }
  #cnr .cnr-reg-card { min-height:auto; border-right:0; border-bottom:1px solid var(--cnr-line); }
  #cnr .cnr-reg-card:last-child { border-bottom:0; }
  #cnr .cnr-reg-card p { min-height:0; }
}
@media (max-width:600px) {
  #cnr .cnr-shell { width:calc(100% - 32px); }
  #cnr .cnr-section { padding:64px 0; }
  #cnr .cnr-types { padding-bottom:28px; }
  #cnr .cnr-advice { padding-top:36px; }
  #cnr h2 { font-size:2.35rem; }
  #cnr .cnr-hero-grid { padding-block:52px; }
  #cnr .cnr-hero-shade { background:linear-gradient(180deg,rgba(1,7,23,.84) 0%,rgba(1,7,23,.9) 72%,rgba(1,7,23,.98) 100%),linear-gradient(90deg,rgba(1,7,23,.95),rgba(1,7,23,.52)); }
  #cnr .cnr-hero-copy h1 { font-size:clamp(2.65rem,13vw,4rem); }
  #cnr .cnr-hero-copy>p { font-size:.94rem; }
  #cnr .cnr-actions { display:grid; }
  #cnr .cnr-btn { width:100%; }
  #cnr .cnr-hero-trust { display:grid; gap:10px; }
  #cnr .cnr-market-head { align-items:flex-start; }
  #cnr .cnr-live-status { max-width:90px; text-align:right; }
  #cnr .cnr-market-content { padding:20px; }
  #cnr .cnr-market-grid { grid-template-columns:1fr; }
  #cnr .cnr-stat-row { grid-template-columns:1fr; }
  #cnr .cnr-editorial-image img, #cnr .cnr-advice .cnr-editorial-image img { height:360px; }
  #cnr .cnr-editorial-image::before { display:none; }
  #cnr .cnr-type-card { padding:26px 22px; }
  #cnr .cnr-global-banner { min-height:550px; }
  #cnr .cnr-global-banner>img { object-position:65% center; opacity:.7; }
  #cnr .cnr-product-grid { grid-template-columns:1fr; }
  #cnr .cnr-product-card { min-height:175px; }
  #cnr .cnr-fx-quotes { grid-template-columns:1fr; }
  #cnr .cnr-fx-card, #cnr .cnr-fx-skeleton { min-height:230px; border-right:0; border-bottom:1px solid rgba(255,255,255,.14); }
  #cnr .cnr-fx-card strong { margin-top:28px; }
  #cnr .cnr-fx-card svg { margin-top:20px; }
  #cnr .cnr-simulator { padding:25px 20px; }
  #cnr .cnr-process-image img { height:420px; }
  #cnr .cnr-process-image figcaption { left:12px; right:12px; bottom:12px; }
  #cnr .cnr-faq-grid { gap:42px; }
  #cnr .cnr-specialist-card { height:320px; }
  #cnr .cnr-final-cta { min-height:590px; }
  #cnr .cnr-final-cta>img { object-position:65% center; }
  .cnr-modal { padding:12px; }
  .cnr-modal-dialog { max-height:calc(100vh - 24px); padding:34px 23px 25px; }
  .cnr-modal-dialog h2 { padding-right:35px; font-size:1.9rem; }
}
@media (prefers-reduced-motion:reduce) {
  #cnr *, #cnr *::before, #cnr *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  #cnr .cnr-reveal { opacity:1; transform:none; }
}
