/* NEXUS STUDIO - COMPILADO CSS 2026 */

/* START SECTION: CSS-CORE-GLOBAL */
:root {
            --a7-brand: #F24E1E;
            --a7-brand-hover: #FF6B40;
            --a7-brand-active: #CC3D15;
            --a7-brand-alpha-10: rgba(242, 78, 30, 0.1); 
            --a7-brand-alpha-20: rgba(242, 78, 30, 0.2);
            --a7-bg-app: #000000;
            --a7-bg-panel: #141414;
            --a7-bg-hover: #1F1F1F;         
            --a7-bg-input: #1F1F1F;
            --a7-text-primary: #FFFFFF;     
            --a7-text-secondary: #9CA3AF; 
            --a7-text-tertiary: #52525B;  
            --a7-success: #10B981;
            --a7-grid-dot: #1A1A1A;

            --font-sans: 'Inter', system-ui, sans-serif;
            --radius-lg: 16px;
            --radius-md: 12px;
            --radius-sm: 8px;
            --container-width: 1300px;
            --nav-height: 80px;
        }

        * { margin: 0; padding: 0; box-sizing: border-box; }
        html { scroll-behavior: smooth; }
        body {
            background-color: var(--a7-bg-app);
            color: var(--a7-text-primary);
            font-family: var(--font-sans);
            line-height: 1.6;
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased;
            background-image: radial-gradient(var(--a7-grid-dot) 1px, transparent 1px);
            background-size: 32px 32px;
        }

        .material-symbols-rounded {
            font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
            display: inline-flex; align-items: center; justify-content: center;
        }
        .icon-filled { font-variation-settings: 'FILL' 1, 'wght' 300, 'GRAD' 0, 'opsz' 24; }

        .container {
            width: 100%; max-width: var(--container-width);
            margin: 0 auto; padding: 0 24px;
        }

        /* =========================================
           SMART TRACK BUTTON (EXCLUSIVO DO HERO)
           ========================================= */
        .smart-track-btn {
            position: relative; display: flex; align-items: center; width: 220px; height: 56px;
            background: #0f0f0f; border-radius: 20px; border: 1px solid rgba(255,255,255,0.1);
            text-decoration: none; padding: 5px; box-sizing: border-box; cursor: pointer;
            box-shadow: 0 10px 30px rgba(0,0,0,0.3); overflow: hidden;
        }
        .track-icons { position: absolute; inset: 0; display: flex; justify-content: space-between; align-items: center; padding: 0 20px; z-index: 1; pointer-events: none; }
        .track-icon { color: #FFFFFF !important; font-size: 20px; opacity: 0.6; transition: opacity 0.3s; }
        .slider-layer { 
            position: relative; z-index: 2; width: 165px; height: 100%; 
            background: var(--a7-brand); border-radius: 13px; 
            display: flex; align-items: center; justify-content: center; 
            color: #FFFFFF !important; font-weight: 700; font-size: 14px; letter-spacing: 0.5px; 
            box-shadow: 0 2px 10px rgba(242, 78, 30, 0.4); 
            transform: translateX(0); transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); 
        }
        .smart-track-btn:hover { border-color: var(--a7-brand); }
        .smart-track-btn:hover .slider-layer { transform: translateX(42px); }
        .smart-track-btn:hover .track-icon.left { opacity: 1; }
        .smart-track-btn:hover .track-icon.right { opacity: 0; }

        /* =========================================
           BOTÕES SECUNDÁRIOS E NAVBAR
           ========================================= */
        .btn-secondary-hero {
            height: 56px; padding: 0 32px; display: inline-flex; align-items: center; justify-content: center;
            border: 1px solid rgba(255,255,255,0.1); border-radius: 20px; background: rgba(0,0,0,0.5);
            color: #FFFFFF; font-size: 14px; font-weight: 600; letter-spacing: 0.5px; text-transform: uppercase;
            text-decoration: none; transition: 0.3s ease; box-sizing: border-box;
        }
        .btn-secondary-hero:hover {
            border-color: rgba(255,255,255,0.3); background: rgba(255,255,255,0.05); transform: translateY(-2px);
        }

        .btn-nav-ghost {
            height: 44px; padding: 0 24px; display: inline-flex; align-items: center; justify-content: center;
            border: 1px solid rgba(255,255,255,0.1); border-radius: 12px; background: rgba(255,255,255,0.02);
            color: #fff; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px;
            text-decoration: none; transition: 0.3s;
        }
        .btn-nav-ghost:hover {
            border-color: var(--a7-brand); background: var(--a7-brand-alpha-10); color: var(--a7-brand);
        }

        .nav-link {
            color: var(--a7-text-secondary); text-decoration: none; 
            font-size: 14px; font-weight: 600; display: inline-flex; align-items: center; gap: 8px;
            transition: color 0.3s ease;
        }
        .nav-link:hover { color: var(--a7-text-primary); }

        .status-badge {
            display: inline-flex; align-items: center; gap: 8px;
            padding: 8px 16px; background: var(--a7-brand-alpha-10); color: var(--a7-brand);
            border-radius: 100px; font-size: 12px; font-weight: 700; letter-spacing: 1px;
            text-transform: uppercase; margin-bottom: 24px;
            border: 1px solid var(--a7-brand-alpha-20);
        }

        .reveal { opacity: 0; transform: translateY(40px); transition: all 0.8s cubic-bezier(0.25, 0.8, 0.25, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }
        .d-1 { transition-delay: 0.1s; } 
        .d-2 { transition-delay: 0.2s; } 
        .d-3 { transition-delay: 0.3s; }
/* END SECTION: CSS-CORE-GLOBAL */

/* START SECTION: HERO */
#sessao-hero {
        position: relative; overflow: hidden; min-height: 100vh;
        display: flex; flex-direction: column;
    }

    #sessao-hero .navbar {
        position: fixed; top: 0; left: 0; width: 100%; height: var(--nav-height);
        background: rgba(0, 0, 0, 0.5); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
        z-index: 1000; display: flex; align-items: center;
        border-bottom: 1px solid rgba(255,255,255,0.02);
    }
    #sessao-hero .nav-inner { display: flex; justify-content: space-between; align-items: center; width: 100%; max-width: var(--container-width); margin: 0 auto; padding: 0 24px; }
    #sessao-hero .logo { font-size: 20px; font-weight: 800; letter-spacing: -0.5px; display: flex; align-items: center; gap: 10px; color: var(--a7-text-primary); text-decoration: none; }
    #sessao-hero .logo-icon { color: var(--a7-brand); font-size: 32px; }

    #sessao-hero .hero {
        padding-top: calc(var(--nav-height) + 80px); padding-bottom: 210px;
        display: flex; flex-direction: column; align-items: center; text-align: center; position: relative;
        z-index: 10;
    }
    #sessao-hero .hero-glow {
        position: absolute; top: 10%; left: 50%; transform: translateX(-50%);
        width: 800px; height: 500px; background: radial-gradient(circle, rgba(242, 78, 30, 0.1) 0%, transparent 60%);
        z-index: -1; pointer-events: none;
    }
    
    /* Títulos refinados */
    #sessao-hero h1 {
        font-size: clamp(2.5rem, 5vw, 4.5rem); font-weight: 800; letter-spacing: -2px;
        line-height: 1.1; margin-bottom: 24px; color: var(--a7-text-primary); max-width: 900px; text-transform: uppercase;
    }
    #sessao-hero h1 span { color: var(--a7-brand); }
    #sessao-hero p {
         color: var(--a7-text-secondary);
        margin-bottom: 40px; font-weight: 400; line-height: 1.6;
    }

    /* ------------------------------------------------------------------
       CARROSSEL 3D 
       ------------------------------------------------------------------ */
    #sessao-hero .app-mockup-wrapper { 
        margin-top: 60px; width: 100%; max-width: 1050px; 
        perspective: 1500px; transform-style: preserve-3d;
        z-index: 20; position: relative;
    }
    
    #sessao-hero .hero-carousel {
        position: relative; width: 100%; height: 600px;
        display: flex; align-items: center; justify-content: center;
        transform-style: preserve-3d;
    }

    #sessao-hero .hc-slide {
        position: absolute; width: 100%; max-width: 950px; height: 100%;
        background: #0A0A0A; border-radius: 16px; border: 1px solid #1F1F1F; box-shadow: 0 30px 60px rgba(0,0,0,0.8);
        overflow: hidden; display: flex; flex-direction: column; transition: all 0.8s cubic-bezier(0.25, 1, 0.5, 1);
        will-change: transform, opacity, filter;
    }
    #sessao-hero .hc-topbar { height: 36px; background: #111; border-bottom: 1px solid #1A1A1A; display: flex; align-items: center; padding: 0 16px; gap: 8px; }
    #sessao-hero .hc-topbar .dot { width: 10px; height: 10px; border-radius: 50%; }
    #sessao-hero .hc-topbar .dot.red { background: #FF5F56; }
    #sessao-hero .hc-topbar .dot.yellow { background: #FFBD2E; }
    #sessao-hero .hc-topbar .dot.green { background: #27C93F; }
    #sessao-hero .hc-img { width: 100%; height: calc(100% - 36px); object-fit: cover; object-position: top center; opacity: 0.9; transition: opacity 0.5s; }

    #sessao-hero .hc-pos-1 { transform: translateZ(40px) translateY(0px) scale(1); z-index: 3; opacity: 1; border-color: var(--a7-brand-alpha-20); box-shadow: 0 40px 100px rgba(242, 78, 30, 0.15), 0 0 0 1px var(--a7-brand-alpha-20); }
    #sessao-hero .hc-pos-1 .hc-img { opacity: 1; }
    #sessao-hero .hc-pos-2 { transform: translateZ(-60px) translateY(-30px) scale(0.92); z-index: 2; opacity: 0.5; filter: blur(2px); }
    #sessao-hero .hc-pos-3 { transform: translateZ(-120px) translateY(-60px) scale(0.84); z-index: 1; opacity: 0.2; filter: blur(5px); }

    #sessao-hero .app-mockup-wrapper:hover .hc-pos-1 { transform: translateZ(80px) translate(30px, 60px) scale(1.02); border-color: var(--a7-brand); }
    #sessao-hero .app-mockup-wrapper:hover .hc-pos-2 { transform: translateZ(-30px) translate(30px, -20px) scale(0.95); opacity: 0.9; filter: blur(0px); }
    #sessao-hero .app-mockup-wrapper:hover .hc-pos-3 { transform: translateZ(-80px) translate(20px, -80px) scale(0.88); opacity: 0.7; filter: blur(1px); }

    /* ------------------------------------------------------------------
       CARDS FLUTUANTES (DISCRETOS, LINEARES E ELEGANTES)
       ------------------------------------------------------------------ */
    #sessao-hero .fc-node {
        position: absolute; z-index: 100; transition: transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
        transform: translate3d(0, 0, var(--base-z)); pointer-events: none; 
    }
    
    #sessao-hero .fc-inner {
        background: rgba(15, 15, 15, 0.5); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.03); /* Borda ultra sutil */
        border-radius: 100px; /* Formato pílula deixa mais delicado */
        padding: 8px 16px; /* Menor volume */
        display: flex; align-items: center; gap: 8px; 
        color: var(--a7-text-secondary); /* Cinza claro em vez de branco agressivo */
        font-size: 11px; font-weight: 500; letter-spacing: 0.5px; 
        box-shadow: 0 10px 30px rgba(0,0,0,0.3); /* Sombra mais difusa */
        animation: floatY var(--float-dur) ease-in-out infinite alternate;
    }
    
    /* Forçando o ícone a ficar linear (wght 200) e menor */
    #sessao-hero .fc-inner .material-symbols-rounded { 
        color: var(--a7-brand); 
        font-size: 16px; 
        font-variation-settings: 'FILL' 0, 'wght' 200, 'GRAD' 0, 'opsz' 24 !important; 
    }

    @keyframes floatY { from { transform: translateY(-8px); } to { transform: translateY(8px); } }

    /* Empurrei os cards mais para baixo para não poluir o topo */
    #sessao-hero .fc-1 { top: 22%; left: -6%;  --base-z: 130px; --float-dur: 4s; }
    #sessao-hero .fc-2 { top: 55%; left: -10%; --base-z: 160px; --float-dur: 5.5s; }
    #sessao-hero .fc-3 { top: 82%; left: -2%;  --base-z: 100px; --float-dur: 4.5s; }
    #sessao-hero .fc-4 { top: 28%; right: -5%; --base-z: 110px; --float-dur: 6s; }
    #sessao-hero .fc-5 { top: 60%; right: -12%;--base-z: 150px; --float-dur: 5s; }
    #sessao-hero .fc-6 { top: 88%; right: -3%; --base-z: 120px; --float-dur: 6.5s; }

    @media (max-width: 1024px) {
        #sessao-hero .app-mockup-wrapper { display: none; }
        #sessao-hero h1 { font-size: 2.5rem; }
    }
/* END SECTION: HERO */

/* START SECTION: BENTO */
#sessao-bento { 
        padding: 100px 0 140px;
        background: #000; 
        color: #fff;
        position: relative;
        overflow: hidden;
        /* Borda sutil e elegante, sem exageros */
        border-top: 1px solid rgba(255, 255, 255, 0.05);
        border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    }

    /* ------------------------------------------------------------------
       AMBIENT GLOW (LUZES SUAVES DE FUNDO)
       ------------------------------------------------------------------ */
    #sessao-bento .ambient-glow {
        position: absolute;
        border-radius: 50%;
        filter: blur(120px);
        opacity: 0.3;
        pointer-events: none;
        z-index: 0;
        animation: floatGlow 15s infinite alternate ease-in-out;
    }
    
    #sessao-bento .glow-1 {
        width: 600px; height: 600px;
        background: radial-gradient(circle, var(--a7-brand-alpha-40) 0%, transparent 70%);
        top: 0%; left: -10%;
    }
    
    #sessao-bento .glow-2 {
        width: 600px; height: 600px;
        background: radial-gradient(circle, rgba(16, 185, 129, 0.15) 0%, transparent 70%);
        bottom: -10%; right: -10%;
        animation-delay: -5s;
    }

    @keyframes floatGlow {
        0% { transform: translate(0, 0); }
        100% { transform: translate(3%, 5%); }
    }

    #sessao-bento .container { position: relative; z-index: 2; }

    #sessao-bento .section-title { 
        text-align: left; 
        margin-bottom: 50px; 
        max-width: 900px;
    }

    #sessao-bento .status-badge {
        display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; 
        background: var(--a7-brand-alpha-10); color: var(--a7-brand); border: 1px solid var(--a7-brand-alpha-20);
        border-radius: 100px; font-size: 11px; font-weight: 700; letter-spacing: 0.5px;
        text-transform: uppercase; margin-bottom: 24px; width: fit-content;
    }

    #sessao-bento h2 { 
        font-size: clamp(2.2rem, 4vw, 3.5rem); 
        font-weight: 800; line-height: 1.1; letter-spacing: -1.5px; 
        text-transform: uppercase; margin-bottom: 24px; color: #fff;
    }
    
    #sessao-bento .section-title p { 
        color: var(--a7-text-secondary); font-size: clamp(1.1rem, 2vw, 1.25rem); 
        line-height: 1.6; max-width: 700px;
    }

    #sessao-bento .bento-grid { 
        display: grid; grid-template-columns: repeat(12, 1fr);  gap: 20px; 
    }

    /* ------------------------------------------------------------------
       O VIDRO LIMPO E EQUILIBRADO
       ------------------------------------------------------------------ */
    #sessao-bento .bento-card {
        background: rgba(15, 15, 15, 0.4); 
        backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
        border: 1px solid rgba(255, 255, 255, 0.05); 
        padding: 50px 40px 80px; border-radius: 20px; 
        display: flex; flex-direction: column; justify-content: space-between; 
        position: relative; overflow: hidden;
        transition: transform 0.4s ease, border-color 0.4s ease;
    }

    #sessao-bento .bento-card-content {
        position: relative; z-index: 1; display: flex; flex-direction: column; height: 100%; justify-content: space-between;
    }

    #sessao-bento .bento-card:hover { 
        border-color: rgba(242, 78, 30, 0.3); 
        transform: translateY(-5px);
    }

    #sessao-bento .bento-card h3 { 
        font-size: 1.6rem; font-weight: 800; letter-spacing: -1px; line-height: 1.2; margin-bottom: 14px; color: #fff;
    }
    
    /* Textos padronizados para evitar quebras irregulares */
    #sessao-bento .bento-card p { 
        color: var(--a7-text-secondary); font-size: 1.05rem; line-height: 1.6; margin: 0;
    }

    #sessao-bento .bento-index {
        font-family: monospace; font-size: 12px; color: var(--a7-brand); margin-bottom: 24px; display: block; font-weight: 600;
    }

    #sessao-bento .bento-1 { grid-column: span 6; }
    #sessao-bento .bento-2 { grid-column: span 6; }
    #sessao-bento .bento-3 { grid-column: span 6; }
    #sessao-bento .bento-4 { grid-column: span 6; }

    @media (max-width: 1024px) {
        #sessao-bento { padding: 100px 0; }
        #sessao-bento .bento-grid { grid-template-columns: 1fr; grid-auto-rows: auto; gap: 16px;}
        #sessao-bento .bento-1, #sessao-bento .bento-2, #sessao-bento .bento-3, #sessao-bento .bento-4 { grid-column: span 1; }
        #sessao-bento .bento-card { padding: 36px; }
    }
/* END SECTION: BENTO */

/* START SECTION: PERSONAS */
/* FUNDO TRANSPARENTE: Preserva o grid pontilhado */
    #sessao-personas {
        padding: 120px 0; 
        background: transparent; 
        position: relative;
    }
    
    #sessao-personas .personas-grid { 
        display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center;
    }
    
    /* ------------------------------------------------------------------
       TEXTOS (LADO ESQUERDO) - POLIDOS E HUMANIZADOS
       ------------------------------------------------------------------ */
    #sessao-personas .personas-text {
        display: flex; flex-direction: column; justify-content: center; align-items: flex-start;
    }
    
    #sessao-personas .status-badge {
        display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; 
        background: var(--a7-brand-alpha-10); color: var(--a7-brand); border: 1px solid var(--a7-brand-alpha-20);
        border-radius: 100px; font-size: 11px; font-weight: 700; letter-spacing: 0.5px;
        text-transform: uppercase; margin-bottom: 24px; width: fit-content;
    }
    
    #sessao-personas .personas-text h2 { 
        font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 800; letter-spacing: -2px; margin-bottom: 24px; line-height: 1.05; color: var(--a7-text-primary); text-transform: uppercase;
    }
    
    #sessao-personas .personas-text p { 
        color: var(--a7-text-secondary); font-size: clamp(1.05rem, 2vw, 1.15rem); margin-bottom: 20px; line-height: 1.6; max-width: 540px;
    }
    
    #sessao-personas .personas-features { 
        display: flex; flex-direction: column; gap: 14px; margin-top: 24px; width: 100%;
    }
    
    #sessao-personas .p-feat { 
        display: flex; align-items: center; gap: 12px; color: var(--a7-text-primary); font-weight: 500; font-size: 14px;
    }
    
    #sessao-personas .p-feat .material-symbols-rounded { 
        color: var(--a7-brand); background: var(--a7-brand-alpha-10); padding: 6px; border-radius: 50%; font-size: 18px;
    }

    /* ------------------------------------------------------------------
       VISUAL: DIAGONAL CASCADING STACK (SEU CÓDIGO VALIDADO)
       ------------------------------------------------------------------ */
    #sessao-personas .persona-visual { 
        position: relative; width: 100%; height: 600px;
        display: flex; align-items: center; justify-content: center;
        perspective: 1500px; 
    }

    #sessao-personas .deck-wrapper {
        position: relative; width: 100%; height: 100%;
        display: flex; align-items: center; justify-content: center;
        transform-style: preserve-3d; transition: transform 0.1s linear; 
    }

    #sessao-personas .sm-mockup-card {
        background: #0A0A0A; border-top: 1px solid #222; border-left: 1px solid #222;
        border-right: 2px solid #000; border-bottom: 8px solid #000; border-radius: 16px; 
        padding: 24px; width: 340px; position: absolute; box-shadow: 0 30px 60px rgba(0,0,0,0.6);
        display: flex; flex-direction: column; gap: 16px;
        transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s, filter 0.5s, border-color 0.4s;
        will-change: transform, opacity;
    }

    #sessao-personas .pos-1 { z-index: 10; opacity: 1; filter: blur(0px); border-color: var(--a7-brand-alpha-20); transform: translate(-30px, 40px) scale(1); }
    #sessao-personas .pos-2 { z-index: 9; opacity: 0.9; filter: blur(0.5px); transform: translate(15px, 0px) scale(0.96); }
    #sessao-personas .pos-3 { z-index: 8; opacity: 0.6; filter: blur(1.5px); transform: translate(60px, -40px) scale(0.92); }
    #sessao-personas .pos-4 { z-index: 1; opacity: 0.3; filter: blur(3px); pointer-events: none; transform: translate(105px, -80px) scale(0.88); }

    #sessao-personas .deck-wrapper:hover .pos-1 { transform: translate(-70px, 60px) scale(1.02); border-color: var(--a7-brand); box-shadow: 0 40px 80px rgba(242, 78, 30, 0.2); }
    #sessao-personas .deck-wrapper:hover .pos-2 { transform: translate(30px, -10px) scale(0.98); opacity: 1; filter: blur(0px); }
    #sessao-personas .deck-wrapper:hover .pos-3 { transform: translate(130px, -80px) scale(0.94); opacity: 0.9; filter: blur(0px); }
    #sessao-personas .deck-wrapper:hover .pos-4 { transform: translate(230px, -150px) scale(0.90); opacity: 0.7; filter: blur(0px); }

    #sessao-personas .sm-header { display: flex; align-items: center; justify-content: space-between; }
    #sessao-personas .sm-user-info { display: flex; align-items: center; gap: 12px; }
    #sessao-personas .sm-avatar { width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 18px; background: #111; color: var(--a7-text-secondary); border: 1px solid #222; }
    #sessao-personas .sm-name-group { display: flex; flex-direction: column; }
    #sessao-personas .sm-name { font-weight: 700; font-size: 13px; color: var(--a7-text-primary); text-transform: uppercase; letter-spacing: 0.5px;}
    #sessao-personas .sm-handle { font-size: 11px; color: var(--a7-brand); font-weight: 600; }
    #sessao-personas .sm-options { color: var(--a7-text-tertiary); font-size: 18px; }

    #sessao-personas .sm-image-box { width: 100%; height: 180px; background: #111; border-radius: 6px; border: 1px solid #1A1A1A; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #333; }
    #sessao-personas .sm-body { font-size: 13px; color: var(--a7-text-secondary); line-height: 1.5; flex: 1; }
    #sessao-personas .sm-footer { display: flex; justify-content: space-between; align-items: center; border-top: 1px solid #1A1A1A; padding-top: 14px; }
    #sessao-personas .sm-actions { display: flex; gap: 14px; color: var(--a7-text-tertiary); }
    #sessao-personas .sm-actions span { font-size: 22px; font-variation-settings: 'FILL' 0; transition: 0.2s; }
    #sessao-personas .sm-actions span:hover { color: var(--a7-text-primary); font-variation-settings: 'FILL' 1;}

    @media (max-width: 1024px) { 
        #sessao-personas .personas-grid { grid-template-columns: 1fr; gap: 40px; } 
        #sessao-personas .persona-visual { height: 450px; }
        #sessao-personas .deck-wrapper { transform: scale(0.9); }
        #sessao-personas .personas-text p { max-width: 100%; }
    }
/* END SECTION: PERSONAS */

/* START SECTION: GALERIA */
#sessao-galeria {
        padding: 120px 0;
        background: transparent;
        position: relative;
        overflow: hidden; 
        display: flex;
        flex-direction: column;
        gap: 70px;
    }

    /* CABEÇALHO LIMPO */
    #sessao-galeria .section-header {
        text-align: left;
        padding: 0 24px;
        position: relative;
        z-index: 10;
        width: 100%;
        max-width: 1300px; 
        margin: 0 auto;
    }
    
    #sessao-galeria .status-badge {
        display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; 
        background: var(--a7-brand-alpha-10); color: var(--a7-brand); border: 1px solid var(--a7-brand-alpha-20);
        border-radius: 100px; font-size: 11px; font-weight: 700; letter-spacing: 0.5px;
        text-transform: uppercase; margin-bottom: 24px; width: fit-content;
    }

    #sessao-galeria h2 {
        font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 800; letter-spacing: -2px; line-height: 1.05; color: var(--a7-text-primary); margin-bottom: 24px; text-transform: uppercase;
    }
    
    #sessao-galeria p {
        color: var(--a7-text-secondary); font-size: clamp(1.1rem, 2vw, 1.25rem); line-height: 1.6; max-width: 700px;
    }

    /* ESTEIRAS */
    #sessao-galeria .marquee-wrapper {
        position: relative; width: 100vw; max-width: 100%; display: flex; flex-direction: column; gap: 40px; padding-top: 12px;
        -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
        mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
    }
    #sessao-galeria .marquee-track { display: flex; gap: 30px; width: max-content; will-change: transform; }
    #sessao-galeria .marquee-track:hover { animation-play-state: paused !important; }

    .scroll-left { animation: scrollMarqueeLeft 35s linear infinite; }
    .scroll-right { animation: scrollMarqueeRight 40s linear infinite; }
    @keyframes scrollMarqueeLeft { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
    @keyframes scrollMarqueeRight { 0% { transform: translateX(-50%); } 100% { transform: translateX(0); } }

    /* MOCKUPS (HOVER LISO) */
    #sessao-galeria .gallery-item {
        position: relative; background: #050505; border: 1px solid #1A1A1A; border-radius: 12px;
        flex-shrink: 0; display: flex; flex-direction: column;
        transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s;
    }

    #sessao-galeria .gallery-item:hover {
        transform: scale(1.02) translateY(-5px);
        box-shadow: 0 30px 60px rgba(0,0,0,0.8);
        z-index: 10;
    }

    #sessao-galeria .mockup-img-wrapper { width: 100%; overflow: hidden; position: relative; border-radius: inherit;}
    #sessao-galeria .gallery-item img { display: block; width: 100%; height: 100%; object-fit: cover; }

    /* INSTAGRAM MOCKUP (Esteira) */
    #sessao-galeria .mockup-insta { width: 320px; cursor: pointer; }
    #sessao-galeria .mockup-insta .mockup-img-wrapper { aspect-ratio: 4 / 5; border-top: 1px solid #111; border-bottom: 1px solid #111;}
    #sessao-galeria .inst-header { padding: 12px 16px; display: flex; align-items: center; gap: 10px; }
    #sessao-galeria .inst-avatar { width: 24px; height: 24px; border-radius: 50%; background: #1F1F1F; border: 1px solid #222; }
    #sessao-galeria .inst-name-line { width: 80px; height: 6px; border-radius: 4px; background: #1A1A1A; }
    #sessao-galeria .inst-footer { padding: 12px 16px; display: flex; gap: 14px; color: #444; }
    #sessao-galeria .inst-footer .material-symbols-rounded { font-size: 20px; font-variation-settings: 'FILL' 0; }

    /* BROWSER MOCKUP */
    #sessao-galeria .mockup-browser { width: 500px; cursor: default; }
    #sessao-galeria .mockup-browser .mockup-img-wrapper { aspect-ratio: 16 / 12; border-top: 1px solid #111; }
    #sessao-galeria .browser-header { padding: 10px 14px; display: flex; align-items: center; gap: 6px; background: #080808; }
    #sessao-galeria .browser-dot { width: 10px; height: 10px; border-radius: 50%; background: #1F1F1F; border: 1px solid #222; }

    @media (max-width: 768px) {
        #sessao-galeria .mockup-insta { width: 260px; }
        #sessao-galeria .mockup-browser { width: 340px; }
    }

    /* ------------------------------------------------------------------
       MODAL MOCOCA LINEAR (NOVA ESTRUTURA INTELIGENTE)
       ------------------------------------------------------------------ */
    #nexus-gallery-modal {
        position: fixed; inset: 0; background: rgba(0,0,0,0.85); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
        z-index: 99999; display: flex; align-items: center; justify-content: center;
        opacity: 0; visibility: hidden; transition: 0.3s; padding: 20px; overscroll-behavior: contain;
    }
    #nexus-gallery-modal.active { opacity: 1; visibility: visible; }

    #nexus-gallery-modal .modal-content {
        background: #0A0A0A; border: 1px solid #222; border-radius: 20px;
        width: 100%; max-width: 1000px; max-height: 90vh; overflow: auto;
        box-shadow: 0 50px 100px rgba(0,0,0,1); position: relative;
        transform: scale(0.95) translateY(20px); transition: 0.4s cubic-bezier(0.2, 1, 0.2, 1);
    }
    #nexus-gallery-modal.active .modal-content { transform: scale(1) translateY(0); }

    #nexus-gallery-modal .modal-body-wrapper { display: grid; grid-template-columns: 1fr 1.2fr; gap: 48px; padding: 48px; }

    /* Lado Esquerdo: Capa com Header de Persona */
    #nexus-gallery-modal .modal-capa-col { display: flex; flex-direction: column; align-items: center;}
    #nexus-gallery-modal .modal-insta-card {
        width: 100%; max-width: 380px; background: #050505; border: 1px solid #1A1A1A; border-radius: 12px; overflow: hidden;
    }
    
    /* O NOVO HEADER DO MODAL (Substitui os ícones genéricos pela Persona) */
    #nexus-gallery-modal .modal-persona-header {
        padding: 14px 16px; display: flex; align-items: center; gap: 12px; background: #080808;
    }
    #nexus-gallery-modal .m-persona-icon {
        width: 34px; height: 34px; border-radius: 50%; display: flex; align-items: center; justify-content: center; 
        border: 1px solid #222; background: #111; color: var(--a7-brand); font-size: 18px;
    }
    #nexus-gallery-modal .m-persona-data { display: flex; flex-direction: column; }
    #nexus-gallery-modal .m-persona-data h4 { font-size: 13px; font-weight: 700; color: #fff; margin: 0; letter-spacing: -0.2px;}
    #nexus-gallery-modal .m-persona-data p { font-size: 11px; color: var(--a7-text-secondary); margin: 0; font-family: monospace;}

    #nexus-gallery-modal .modal-image-wrapper { width: 100%; aspect-ratio: 4/5; overflow: hidden; background: #000; border-top: 1px solid #111; border-bottom: 1px solid #111;}
    #nexus-gallery-modal #modal-capa-src { width: 100%; height: 100%; object-fit: contain;}

    /* Lado Direito: Apenas Legenda */
    #nexus-gallery-modal .modal-info-col { display: flex; flex-direction: column; }
    
    #nexus-gallery-modal .modal-title { font-size: 11px; font-weight: 700; color: #555; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 12px;}

    #nexus-gallery-modal .caption-sim-area {
        background: #080808; border: 1px solid #1A1A1A; border-radius: 12px; display: flex; flex-direction: column; flex-grow: 1;
    }
    #nexus-gallery-modal .caption-sim-header {
        padding: 12px 20px; border-bottom: 1px solid #1A1A1A; background: #0A0A0A;
        display: flex; align-items: center; justify-content: space-between;
    }
    
    #nexus-gallery-modal .caption-status { font-family: monospace; font-size: 10px; color: #555; text-transform: uppercase; letter-spacing: 1px;}
    #nexus-gallery-modal .caption-copy-btn { color: #444; font-size: 18px; cursor: pointer; transition: 0.2s;}
    #nexus-gallery-modal .caption-copy-btn:hover { color: #fff; }

    #nexus-gallery-modal .caption-sim-body {
        padding: 24px; font-size: 14px; line-height: 1.6; color: #aaa; white-space: pre-wrap; flex-grow: 1; overflow-y: auto;
    }

    #nexus-gallery-modal .modal-close {
        position: absolute; top: 20px; right: 20px; cursor: pointer; color: #444; font-size: 24px; transition: 0.2s; z-index: 100;
    }
    #nexus-gallery-modal .modal-close:hover { color: #fff; transform: scale(1.1); }

    @media (max-width: 1024px) {
        #nexus-gallery-modal .modal-body-wrapper { grid-template-columns: 1fr; gap: 30px; padding: 30px;}
        #nexus-gallery-modal .modal-insta-card { max-width: 320px; margin: 0 auto;}
    }
/* END SECTION: GALERIA */

/* START SECTION: SEGURANCA */
#sessao-seguranca {
        padding: 120px 0;
        background: transparent;
        position: relative;
    }

    #sessao-seguranca .sec-grid {
        display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: stretch;
    }

    /* ------------------------------------------------------------------
       TEXTOS (CURTOS, HUMANIZADOS E DIRETOS)
       ------------------------------------------------------------------ */
    #sessao-seguranca .sec-text {
        display: flex; flex-direction: column; justify-content: center; align-items: flex-start;
    }

    #sessao-seguranca .status-badge {
        display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px;
        background: rgba(16, 185, 129, 0.1); color: var(--a7-success); border: 1px solid rgba(16, 185, 129, 0.2);
        border-radius: 100px; font-size: 11px; font-weight: 700; letter-spacing: 0.5px;
        text-transform: uppercase; margin-bottom: 24px; width: fit-content;
    }

    #sessao-seguranca .sec-text h2 {
        font-size: clamp(2rem, 4vw, 3rem); font-weight: 800; letter-spacing: -1.5px; margin-bottom: 24px; line-height: 1.1; color: var(--a7-text-primary);
    }

    #sessao-seguranca .sec-text p {
        color: var(--a7-text-secondary); font-size: 1.1rem; margin-bottom: 24px; line-height: 1.6; max-width: 500px;
    }

    #sessao-seguranca .sec-features {
        display: flex; flex-direction: column; gap: 24px; margin-top: 16px; width: 100%;
    }
    
    #sessao-seguranca .s-feat {
        display: flex; align-items: flex-start; gap: 16px; color: var(--a7-text-primary);
    }
    
    #sessao-seguranca .s-feat .feat-icon {
        color: var(--a7-brand); background: linear-gradient(135deg, var(--a7-brand-alpha-10), rgba(255,255,255,0.02)); 
        padding: 12px; border-radius: 14px; font-size: 24px;
        border: 1px solid var(--a7-brand-alpha-20); display: flex; align-items: center; justify-content: center;
        flex-shrink: 0; box-shadow: inset 0 2px 10px rgba(255,255,255,0.02);
    }
    
    #sessao-seguranca .s-feat .feat-text h4 { font-size: 15px; font-weight: 700; margin-bottom: 6px; letter-spacing: -0.3px;}
    #sessao-seguranca .s-feat .feat-text p { font-size: 13.5px; color: var(--a7-text-secondary); margin: 0; line-height: 1.5; }

    /* ------------------------------------------------------------------
       VISUAL POLIDO (DIAGRAMA)
       ------------------------------------------------------------------ */
    #sessao-seguranca .sec-visual {
        position: relative; width: 100%; min-height: 480px;
        display: flex; justify-content: center; align-items: center;
    }

    #sessao-seguranca .connection-diagram {
        background: linear-gradient(145deg, #0a0a0a 0%, #050505 100%);
        border: 1px solid #1F1F1F; border-radius: 24px;
        width: 100%; height: 100%; max-width: 480px; padding: 40px;
        display: flex; flex-direction: column; align-items: center; justify-content: center;
        box-shadow: 0 40px 80px rgba(0,0,0,0.8), inset 0 1px 1px rgba(255,255,255,0.05);
        position: relative; overflow: hidden;
    }

    #sessao-seguranca .diagram-bg {
        position: absolute; inset: 0;
        background-image: linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
        background-size: 24px 24px; opacity: 0.6; pointer-events: none;
    }

    #sessao-seguranca .nodes-wrapper {
        display: flex; justify-content: space-between; align-items: center; width: 100%; position: relative; z-index: 2;
    }

    #sessao-seguranca .node {
        display: flex; flex-direction: column; align-items: center; gap: 12px; width: 100px;
    }

    #sessao-seguranca .node-icon {
        width: 68px; height: 68px; border-radius: 18px;
        display: flex; align-items: center; justify-content: center;
        font-size: 30px; position: relative;
    }

    /* Node 1: Desktop */
    #sessao-seguranca .node-local .node-icon {
        background: linear-gradient(135deg, #1a1a1a 0%, #0d0d0d 100%); color: var(--a7-text-primary); 
        border: 1px solid #333; box-shadow: 0 10px 20px rgba(0,0,0,0.5);
    }
    
    /* Node 2: IA */
    #sessao-seguranca .node-api .node-icon {
        background: linear-gradient(135deg, var(--a7-brand-alpha-20) 0%, var(--a7-brand-alpha-10) 100%); 
        color: var(--a7-brand); border: 1px solid var(--a7-brand-alpha-20);
        box-shadow: 0 10px 30px rgba(242, 78, 30, 0.15);
    }
    #sessao-seguranca .node-api .node-icon::after {
        content: ''; position: absolute; inset: -4px; border-radius: inherit;
        border: 1px solid var(--a7-brand); opacity: 0;
        animation: pulse-api 3s ease-out infinite;
    }
    @keyframes pulse-api {
        0% { transform: scale(1); opacity: 0.6; }
        100% { transform: scale(1.3); opacity: 0; }
    }

    #sessao-seguranca .node-label { font-size: 11px; font-weight: 700; color: var(--a7-text-secondary); text-transform: uppercase; letter-spacing: 0.5px; text-align: center;}
    #sessao-seguranca .node-sub { font-size: 10px; color: var(--a7-text-tertiary); text-align: center;}

    /* Linha de Conexão Premium */
    #sessao-seguranca .connection-line-wrapper {
        flex: 1; height: 3px; position: relative; margin: 0 15px; top: -20px;
    }
    #sessao-seguranca .connection-line-bg {
        width: 100%; height: 100%; background: #222; border-radius: 3px; overflow: hidden;
    }
    
    #sessao-seguranca .data-pulse {
        position: absolute; top: -2px; left: 0; width: 30px; height: 7px; border-radius: 10px;
        background: linear-gradient(90deg, transparent, var(--a7-brand)); 
        filter: drop-shadow(0 0 8px var(--a7-brand));
        animation: flowData 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
    }
    #sessao-seguranca .data-pulse:nth-child(2) { animation-delay: 1s; }

    @keyframes flowData {
        0% { left: 0; opacity: 0; transform: scaleX(0.5); }
        10% { opacity: 1; transform: scaleX(1); }
        90% { opacity: 1; transform: scaleX(1); }
        100% { left: 100%; opacity: 0; transform: scaleX(0.5); }
    }

    /* Selo Flutuante Glassmorphism */
    #sessao-seguranca .shield-float {
        position: absolute; bottom: 20px;
        background: rgba(10, 10, 10, 0.85); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
        border: 1px solid rgba(16, 185, 129, 0.2); border-top: 1px solid rgba(16, 185, 129, 0.4);
        border-radius: 100px; padding: 10px 20px; display: flex; align-items: center; gap: 10px;
        box-shadow: 0 15px 35px rgba(0,0,0,0.6);
        animation: floatShield 4s ease-in-out infinite alternate;
    }
    @keyframes floatShield {
        from { transform: translateY(0px); }
        to { transform: translateY(-10px); }
    }
    #sessao-seguranca .shield-float .a7-icon { color: var(--a7-success); font-size: 20px; }
    #sessao-seguranca .shield-float span { font-size: 11px; font-weight: 700; color: #FFF; letter-spacing: 0.5px;}

    @media (max-width: 1024px) {
        #sessao-seguranca .sec-grid { grid-template-columns: 1fr; gap: 50px; }
        #sessao-seguranca .sec-text { align-items: center; text-align: center; }
        #sessao-seguranca .sec-text p { text-align: center; margin-inline: auto; }
        #sessao-seguranca .s-feat { flex-direction: column; align-items: center; text-align: center; }
        #sessao-seguranca .sec-visual { min-height: 350px; }
    }
/* END SECTION: SEGURANCA */

/* START SECTION: PRICING */
#sessao-pricing {
        padding: 140px 0;
        background: transparent;
        position: relative;
    }

    /* CABEÇALHO PADRONIZADO (Alinhado à esquerda) */
    #sessao-pricing .section-header {
        text-align: left;
        max-width: 900px;
        margin-bottom: 60px;
        padding: 0 24px;
    }
    
    #sessao-pricing .status-badge {
        display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; 
        background: var(--a7-brand-alpha-10); color: var(--a7-brand); border: 1px solid var(--a7-brand-alpha-20);
        border-radius: 100px; font-size: 11px; font-weight: 700; letter-spacing: 0.5px;
        text-transform: uppercase; margin-bottom: 24px; width: fit-content;
    }
    
    #sessao-pricing h2 {
        font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 800; letter-spacing: -2px; line-height: 1.05; color: var(--a7-text-primary); margin-bottom: 24px; text-transform: uppercase;
    }
    
    #sessao-pricing p {
        color: var(--a7-text-secondary); font-size: clamp(1.1rem, 2vw, 1.25rem); line-height: 1.6; max-width: 700px;
    }

    /* PAINEL DIVIDIDO */
    #sessao-pricing .pricing-vault {
        background: #0A0A0A;
        border: 1px solid #1A1A1A;
        border-top: 1px solid #222;
        border-bottom: 8px solid #000;
        border-radius: 24px;
        overflow: hidden;
        display: grid;
        grid-template-columns: 1.6fr 1fr;
        box-shadow: 0 30px 60px rgba(0,0,0,0.8);
        margin: 0 24px;
    }

    /* COLUNA ESQUERDA: O ARSENAL (Linguagem Humanizada) */
    #sessao-pricing .modules-col {
        padding: 60px 50px;
        background: #0A0A0A;
        border-right: 1px solid #1A1A1A;
        display: flex; flex-direction: column; gap: 32px;
    }

    #sessao-pricing .modules-title {
        font-size: 12px; font-weight: 800; color: var(--a7-text-secondary); text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 8px;
        border-bottom: 1px solid #1A1A1A; padding-bottom: 16px;
    }

    #sessao-pricing .modules-grid {
        display: grid; grid-template-columns: 1fr 1fr; gap: 40px 30px;
    }

    #sessao-pricing .mod-item { display: flex; flex-direction: column; gap: 12px; }
    
    #sessao-pricing .mod-icon-wrapper {
        width: 44px; height: 44px; border-radius: 10px; background: #111; border: 1px solid #222;
        display: flex; align-items: center; justify-content: center; color: var(--a7-text-primary); font-size: 22px;
        transition: 0.3s;
    }
    #sessao-pricing .mod-item:hover .mod-icon-wrapper {
        border-color: var(--a7-brand-alpha-20); color: var(--a7-brand); background: var(--a7-brand-alpha-10);
    }

    #sessao-pricing .mod-item h4 { font-size: 16px; font-weight: 700; color: var(--a7-text-primary); }
    #sessao-pricing .mod-item p { font-size: 13px; color: var(--a7-text-secondary); line-height: 1.6; margin: 0; }

    /* COLUNA DIREITA: PREÇO ANUAL E GARANTIA */
    #sessao-pricing .price-col {
        padding: 60px 40px;
        background: linear-gradient(180deg, #111 0%, #050505 100%);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
    }
    
    #sessao-pricing .license-type {
        font-size: 13px; color: var(--a7-text-primary); font-weight: 700; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 16px;
        display: flex; align-items: center; gap: 8px; justify-content: center;
        background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1);
        padding: 6px 16px; border-radius: 100px;
    }
    #sessao-pricing .license-type .material-symbols-rounded { font-size: 16px; }
    
    /* Etiqueta de custo mensal */
    #sessao-pricing .price-monthly {
        color: var(--a7-brand); font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.5px;
        margin-bottom: 8px;
    }

    #sessao-pricing .price-value {
        font-size: 5.5rem;
        font-weight: 900; color: var(--a7-text-primary); letter-spacing: -3px; line-height: 1; margin-bottom: 8px;
        display: flex; align-items: baseline; justify-content: center; gap: 6px;
    }
    #sessao-pricing .price-value span { 
        font-size: 2rem; font-weight: 700; color: var(--a7-brand);
        letter-spacing: -1px;
    }
    #sessao-pricing .price-value .period {
        font-size: 1.2rem; color: var(--a7-text-secondary); font-weight: 600; letter-spacing: 0; margin-left: -5px;
    }
    
    #sessao-pricing .price-sub {
        font-size: 13px; color: var(--a7-text-secondary); margin-bottom: 32px;
    }

    /* Box de Garantia */
    #sessao-pricing .guarantee-box {
        margin-top: 24px; display: flex; align-items: flex-start; gap: 12px;
        background: rgba(16, 185, 129, 0.05); border: 1px solid rgba(16, 185, 129, 0.2);
        padding: 14px 16px; border-radius: 12px; text-align: left; width: 100%; max-width: 320px;
    }
    #sessao-pricing .guarantee-icon { color: var(--a7-success); font-size: 28px; }
    #sessao-pricing .guarantee-text h4 { font-size: 13px; font-weight: 700; color: #fff; margin-bottom: 4px; }
    #sessao-pricing .guarantee-text p { font-size: 11px; color: var(--a7-text-secondary); margin: 0; line-height: 1.5; }

    @media (max-width: 1024px) {
        #sessao-pricing .pricing-vault { grid-template-columns: 1fr; }
        #sessao-pricing .modules-col { border-right: none; border-bottom: 1px solid #1A1A1A; padding: 40px 24px; }
        #sessao-pricing .price-col { padding: 40px 24px; }
    }
    @media (max-width: 600px) {
        #sessao-pricing .modules-grid { grid-template-columns: 1fr; gap: 30px; }
        #sessao-pricing .price-value { font-size: 4rem; }
    }
/* END SECTION: PRICING */

/* START SECTION: FAQ */
#sessao-faq { padding:50px 0 120px; background: transparent; position: relative; }
    
    #sessao-faq .section-header { 
        text-align: left; 
        max-width: 1300px; 
        margin: 0 auto 60px auto; 
        padding: 0 24px; 
    }
    
    #sessao-faq .status-badge {
        display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; 
        background: var(--a7-brand-alpha-10); color: var(--a7-brand); border: 1px solid var(--a7-brand-alpha-20);
        border-radius: 100px; font-size: 11px; font-weight: 700; letter-spacing: 0.5px;
        text-transform: uppercase; margin-bottom: 24px; width: fit-content;
    }

    #sessao-faq h2 {
        font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 800; letter-spacing: -2px; line-height: 1.05; color: var(--a7-text-primary); margin-bottom: 24px; text-transform: uppercase;
    }
    
    #sessao-faq p.header-desc {
        color: var(--a7-text-secondary); font-size: clamp(1.1rem, 2vw, 1.25rem); line-height: 1.6; max-width: 700px;
    }

    #sessao-faq .faq-vault {
        display: grid; grid-template-columns: 1fr 1.2fr; gap: 40px;
        background: #0A0A0A; border: 1px solid #1A1A1A; border-radius: 24px; padding: 40px;
        box-shadow: 0 40px 80px rgba(0,0,0,0.6); align-items: stretch;
        margin: 0 24px;
    }

    #sessao-faq .faq-list { display: flex; flex-direction: column; gap: 12px; }
    #sessao-faq .faq-btn {
        background: #111; border: 1px solid #222; border-radius: 12px; padding: 18px 24px;
        text-align: left; cursor: pointer; display: flex; align-items: center; justify-content: space-between;
        transition: 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); color: var(--a7-text-secondary);
    }
    #sessao-faq .faq-btn h4 { font-size: 14px; font-weight: 600; margin: 0; pointer-events: none; }
    #sessao-faq .faq-btn:hover { border-color: #444; color: #fff; transform: translateX(4px); }
    #sessao-faq .faq-btn.active { background: var(--a7-brand-alpha-10); border-color: var(--a7-brand); color: var(--a7-brand); }

    #sessao-faq .faq-display {
        background: linear-gradient(135deg, #0a0a0a 0%, #050505 100%); 
        border: 1px solid rgba(255,255,255,0.05); 
        border-radius: 16px; 
        display: flex; flex-direction: column; overflow: hidden;
        min-height: 420px; position: relative;
        box-shadow: inset 0 0 60px rgba(0,0,0,0.8);
    }
    
    #sessao-faq .terminal-bar {
        background: rgba(20,20,20,0.9); backdrop-filter: blur(10px);
        padding: 14px 20px; border-bottom: 1px solid rgba(255,255,255,0.03);
        display: flex; align-items: center; justify-content: space-between;
    }
    #sessao-faq .terminal-dots { display: flex; gap: 8px; }
    #sessao-faq .t-dot { width: 12px; height: 12px; border-radius: 50%; opacity: 0.8; box-shadow: inset 0 2px 4px rgba(0,0,0,0.5); }
    #sessao-faq .terminal-title { font-family: monospace; font-size: 10px; color: #666; letter-spacing: 1px; font-weight: 700; }

    #sessao-faq .terminal-body { 
        padding: 48px; flex-grow: 1; display: flex; align-items: center; justify-content: center;
    }
    
    #sessao-faq .answer-content { 
        display: none; flex-direction: column; align-items: center; text-align: center; gap: 20px; 
        animation: terminalPulse 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); width: 100%;
    }
    #sessao-faq .answer-content.active { display: flex; }

    #sessao-faq .ans-icon { font-size: 56px; color: var(--a7-brand); margin-bottom: 8px; filter: drop-shadow(0 10px 20px rgba(242, 78, 30, 0.2)); }
    #sessao-faq .answer-content h3 { font-size: 22px; font-weight: 800; color: #FFF; letter-spacing: -0.5px; margin: 0; }
    #sessao-faq .answer-content p { font-size: 15px; color: var(--a7-text-secondary); line-height: 1.8; max-width: 480px; margin: 0; }

    @keyframes terminalPulse {
        from { opacity: 0; transform: translateY(15px) scale(0.97); }
        to { opacity: 1; transform: translateY(0) scale(1); }
    }

    @media (max-width: 1024px) {
        #sessao-faq .faq-vault { grid-template-columns: 1fr; padding: 24px; }
        #sessao-faq .faq-display { min-height: 380px; }
    }
/* END SECTION: FAQ */

/* START SECTION: FOOTER */
/* ---------------------------------------------------
           RODAPÉ (NEXUS FOOTER) - BLINDADO
           --------------------------------------------------- */
        .nx-footer {
            background-color: #050505;
            border-top: 1px solid rgba(255, 255, 255, 0.05);
            padding: 40px 0;
            position: relative;
            z-index: 50;
        }

        .nx-footer-container {
            max-width: var(--container-width, 1300px);
            margin: 0 auto;
            padding: 0 24px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 32px;
        }

        .nx-brand-col {
            display: flex;
            flex-direction: column;
            gap: 4px;
        }

        .nx-footer-logo {
            display: flex;
            align-items: center;
            gap: 8px;
            color: var(--a7-text-primary);
            font-size: 16px;
            font-weight: 800;
            letter-spacing: -0.5px;
        }

        .nx-footer-copy {
            color: var(--a7-text-tertiary);
            font-size: 12px;
            font-weight: 500;
        }

        .nx-footer-nav {
            display: flex;
            align-items: center;
            gap: 30px;
        }

        .nx-footer-nav a {
            color: var(--a7-text-secondary);
            font-size: 13px;
            text-decoration: none;
            transition: color 0.3s;
            cursor: pointer;
            font-weight: 500;
        }

        .nx-footer-nav a:hover {
            color: var(--a7-text-primary);
        }

        .nx-footer-divider {
            color: rgba(255, 255, 255, 0.1);
            font-size: 14px;
        }

        .nx-zero-track {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            color: var(--a7-success) !important;
            font-weight: 600 !important;
        }

        /* Botão Instagram Hover Mágico */
        .nx-insta-btn {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: rgba(255, 255, 255, 0.03);
            border: 1px solid rgba(255, 255, 255, 0.08);
            color: var(--a7-text-secondary);
            padding: 8px 16px;
            border-radius: 100px;
            font-size: 12px;
            font-weight: 600;
            text-decoration: none;
            transition: all 0.3s ease;
        }

        .nx-insta-btn svg { width: 16px; height: 16px; fill: currentColor; }

        .nx-insta-btn:hover {
            background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
            border-color: transparent;
            color: #fff;
            box-shadow: 0 5px 20px rgba(220, 39, 67, 0.4);
        }

        /* ---------------------------------------------------
           BOTÃO VOLTAR AO TOPO (FLUTUANTE)
           --------------------------------------------------- */
        #nx-back-to-top {
            position: fixed;
            bottom: 30px;
            right: 30px;
            width: 48px;
            height: 48px;
            background: rgba(15, 15, 15, 0.6);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--a7-text-secondary);
            cursor: pointer;
            z-index: 999;
            opacity: 0;
            visibility: hidden;
            transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
            box-shadow: 0 10px 20px rgba(0,0,0,0.5);
        }

        #nx-back-to-top.show {
            opacity: 1;
            visibility: visible;
        }

        #nx-back-to-top:hover {
            background: var(--a7-brand-alpha-10);
            border-color: var(--a7-brand);
            color: var(--a7-brand);
            transform: translateY(-5px);
        }

        /* ---------------------------------------------------
           SISTEMA DE MODAIS (NEXUS MODAL) - BLINDADO
           --------------------------------------------------- */
        .nx-modal-overlay {
            position: fixed; inset: 0; z-index: 99999;
            background: rgba(0, 0, 0, 0.7); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
            display: flex; align-items: center; justify-content: center; padding: 20px;
            opacity: 0; visibility: hidden; transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
        }

        .nx-modal-overlay.nx-active { opacity: 1; visibility: visible; }

        .nx-modal-box {
            width: 100%; max-width: 850px; max-height: 85vh;
            background: linear-gradient(145deg, #0f0f0f 0%, #050505 100%);
            border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px;
            box-shadow: 0 30px 80px rgba(0,0,0,0.9), inset 0 1px 0 rgba(255,255,255,0.05);
            display: flex; flex-direction: column;
            transform: scale(0.95) translateY(20px); transition: transform 0.4s cubic-bezier(0.2, 1, 0.2, 1);
        }

        .nx-modal-overlay.nx-active .nx-modal-box { transform: scale(1) translateY(0); }

        .nx-modal-header {
            display: flex; justify-content: space-between; align-items: center;
            padding: 24px 32px; border-bottom: 1px solid rgba(255, 255, 255, 0.05);
        }

        /* Ajuste do tamanho da fonte do Título Principal */
        .nx-modal-header h3 { margin: 0; font-size: 16px; font-weight: 700; color: var(--a7-text-primary); letter-spacing: -0.5px; }

        .nx-modal-close {
            background: transparent; border: none; color: var(--a7-text-tertiary); cursor: pointer;
            display: flex; align-items: center; justify-content: center; transition: 0.3s;
        }
        .nx-modal-close:hover { color: #fff; transform: rotate(90deg); }

        .nx-modal-body { padding: 32px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,0.1) transparent; }
        .nx-modal-body::-webkit-scrollbar { width: 6px; }
        .nx-modal-body::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 10px; }

        .nx-term-block { margin-bottom: 32px; }
        .nx-term-block:last-child { margin-bottom: 0; }
        
        .nx-term-title { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }

        .nx-term-icon {
            width: 36px; height: 36px; border-radius: 10px;
            background: var(--a7-brand-alpha-10); border: 1px solid var(--a7-brand-alpha-20);
            display: flex; align-items: center; justify-content: center; color: var(--a7-brand);
        }
        .nx-term-icon .material-symbols-rounded { font-size: 18px; }

        /* Ajuste dos Subtítulos */
        .nx-term-title h4 { margin: 0; font-size: 13.5px; font-weight: 700; color: var(--a7-text-primary); text-transform: uppercase; letter-spacing: 0.5px;}

        /* Ajuste dos Textos */
        .nx-term-content p {
            margin: 0 0 12px 0; font-size: 12.5px; line-height: 1.6;
            color: var(--a7-text-secondary); padding-left: 48px;
        }
        .nx-term-content strong { color: var(--a7-text-primary); font-weight: 600; }

        /* Rodapé do Modal com Alinhamento Correto */
        .nx-modal-footer {
            padding: 20px 32px; border-top: 1px solid rgba(255, 255, 255, 0.05);
            background: rgba(0, 0, 0, 0.3); border-radius: 0 0 24px 24px;
            display: flex; justify-content: space-between; align-items: center;
        }

        .nx-modal-tiny-text { font-size: 12px; color: var(--a7-text-tertiary); margin: 0!important; }

        /* Botão Refinado: Cor Laranja da Marca e tamanho menor */
        .nx-btn-accept {
            background: var(--a7-brand); color: #fff; border: none; padding: 10px 20px;
            border-radius: 10px; font-size: 12px; font-weight: 700; letter-spacing: 0.5px; cursor: pointer; transition: 0.3s;
        }
        .nx-btn-accept:hover { background: var(--a7-brand-hover, #FF6B40); transform: translateY(-2px); box-shadow: 0 4px 15px rgba(242, 78, 30, 0.3);}

        @media (max-width: 1024px) {
            .nx-footer-container { flex-direction: column; text-align: center; gap: 32px; }
            .nx-footer-nav { flex-direction: column; gap: 16px; }
            .nx-footer-divider { display: none; }
            .nx-term-content p { padding-left: 0; margin-top: 12px; }
            .nx-modal-footer { flex-direction: column; gap: 16px; text-align: center; }
            .nx-modal-footer p{margin-bottom: 0; }
            .nx-btn-accept { width: 100%; }
        }
/* END SECTION: FOOTER */

#sessao-pricing .system-requirements {
        max-width: 900px; margin: 24px auto 0; padding: 16px 24px;
        display: flex; align-items: center; justify-content: center; gap: 12px;
        background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.05);
        border-radius: 12px; color: var(--a7-text-secondary);
    }
    #sessao-pricing .system-requirements .material-symbols-rounded { font-size: 24px; color: var(--a7-text-tertiary); }
    #sessao-pricing .system-requirements p { margin: 0; font-size: 13px; line-height: 1.5; text-align: left; }
    #sessao-pricing .system-requirements strong { color: var(--a7-text-primary); }
    #sessao-hero .d-2 {max-width: 50%;}
