

    *,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
    :root{
      --paper:#faf7f2;--paper2:#f3efe8;--paper3:#ede8df;
      --ink:#1c1917;--ink2:#44403c;--ink3:#78716c;--ink4:#a8a29e;
      --rule:rgba(28,25,23,.10);--rule2:rgba(28,25,23,.06);
      --accent:#c84b31;--accent2:#2563a8;--accent3:#1a7a50;
      --rose:#be185d;--rose-light:#fce7f3;
      --shadow:0 2px 12px rgba(28,25,23,.08);--shadow-lg:0 8px 32px rgba(28,25,23,.13);
      --radius:10px;
      --font-body:'Nunito',sans-serif;--font-serif:'Lora',serif;--font-mono:'JetBrains Mono',monospace;
    }
    html{scroll-behavior:smooth;}
    body{font-family:var(--font-body);background:var(--paper);color:var(--ink);min-height:100vh;}

    /* NAV */
    .nav{position:sticky;top:0;z-index:100;background:rgba(250,247,242,.92);backdrop-filter:blur(8px);border-bottom:1.5px solid var(--rule);padding:0 2rem;display:flex;align-items:center;height:56px;gap:10px;overflow:visible;}
    .nav-brand{font-family:var(--font-serif);font-size:16px;font-weight:600;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:8px;white-space:nowrap;}
    .nav-links{display:flex;align-items:center;gap:4px;flex:1;overflow:visible;}
    .nav-link{font-size:13px;font-weight:600;color:var(--ink3);text-decoration:none;padding:6px 12px;border-radius:6px;transition:background .15s,color .15s;white-space:nowrap;}
    .nav-link:hover{background:var(--paper3);color:var(--ink);}.nav-link.active{background:var(--ink);color:var(--paper);}
    .nav-sep{width:1px;height:18px;background:var(--rule);margin:0 4px;flex-shrink:0;}
    .lang-toggle{display:flex;align-items:center;gap:2px;background:var(--paper2);border:1.5px solid var(--rule);border-radius:8px;padding:3px;flex-shrink:0;}
    .lang-btn{font-size:12px;font-weight:700;padding:4px 10px;border-radius:5px;border:none;cursor:pointer;background:transparent;color:var(--ink4);transition:background .15s,color .15s;font-family:var(--font-body);display:flex;align-items:center;gap:5px;}
    .lang-btn.active{background:#fff;color:var(--ink);box-shadow:0 1px 4px rgba(28,25,23,.10);}
    .lang-btn:hover:not(.active){color:var(--ink);}
    /* DROPDOWN */
    .nav-dropdown{position:relative;}
    .nav-dropdown-btn{background:none;border:none;cursor:pointer;font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--ink3);padding:6px 12px;border-radius:6px;transition:background .15s,color .15s;white-space:nowrap;}
    .nav-dropdown-btn:hover{background:var(--paper3);color:var(--ink);}
    .nav-dropdown-btn.open{background:var(--ink);color:var(--paper);}
    .nav-dropdown-panel{display:none;position:absolute;top:calc(100% + 8px);left:0;background:#fff;border:1.5px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:260px;z-index:999;overflow:hidden;}
    .nav-dropdown-panel.open{display:block;}
    .nav-dropdown-item{display:flex;align-items:center;gap:12px;padding:11px 16px;font-size:13px;font-weight:600;color:var(--ink2);text-decoration:none;border-bottom:1px solid var(--rule2);transition:background .15s,color .15s;}
    .nav-dropdown-item:last-child{border-bottom:none;}
    .nav-dropdown-item:hover{background:var(--paper2);color:var(--accent2);}
    .ndi-icon{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;}
    .ndi-text{display:flex;flex-direction:column;gap:1px;}
    .ndi-name{font-size:13px;font-weight:700;color:var(--ink);}
    .ndi-desc{font-size:11px;color:var(--ink4);font-weight:400;}

    /* PAGE */
    .page{max-width:820px;margin:0 auto;padding:0 1.5rem 5rem;}
    .article-hero{padding:2rem 0 2.5rem;}
    .article-eyebrow{font-family:var(--font-mono);font-size:11px;color:var(--ink4);letter-spacing:.06em;margin-bottom:10px;}
    .article-title{font-family:var(--font-serif);font-size:clamp(26px,5vw,42px);font-weight:600;line-height:1.2;color:var(--ink);margin-bottom:12px;}
    .article-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
    .dot{width:3px;height:3px;border-radius:50%;background:var(--ink4);}
    .tag{display:inline-block;font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;}
    .tag-blue{background:#dbeafe;color:#1e40af;}.tag-gray{background:var(--paper3);color:var(--ink3);}
    hr{border:none;border-top:1.5px solid var(--rule2);margin:2rem 0;}
    .sec-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink4);margin-bottom:16px;display:flex;align-items:center;gap:8px;}
    .sec-title::after{content:'';flex:1;height:1px;background:var(--rule2);}

    /* INFO BOX */
    .info{background:var(--paper2);border:1.5px solid var(--rule);border-radius:var(--radius);padding:16px 20px;margin-bottom:1rem;}
    .info h3{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:6px;}
    .info p{font-size:13px;color:var(--ink2);line-height:1.75;}
    .info p+p{margin-top:8px;}
    .info code{font-family:var(--font-mono);font-size:12px;background:#fff;padding:1px 5px;border-radius:3px;color:var(--accent2);}
    .info ul{list-style:none;margin-top:8px;display:flex;flex-direction:column;gap:5px;}
    .info li{font-size:13px;color:var(--ink2);display:flex;gap:8px;line-height:1.6;}
    .info li::before{content:'→';color:var(--accent2);font-weight:700;flex-shrink:0;}

    /* AREA CARDS */
    .areas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:2rem;}
    .area-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;}
    .area-card .ac-top{padding:20px 20px 16px;border-bottom:1.5px solid rgba(255,255,255,.2);}
    .area-card .ac-icon{font-size:32px;margin-bottom:10px;}
    .area-card .ac-name{font-family:var(--font-serif);font-size:18px;font-weight:600;margin-bottom:6px;}
    .area-card .ac-tag{display:inline-block;font-size:10px;font-weight:700;padding:2px 9px;border-radius:20px;margin-bottom:10px;}
    .area-card .ac-desc{font-size:12.5px;line-height:1.7;opacity:.9;}
    .area-card .ac-body{padding:16px 20px;flex:1;background:#fff;border:1.5px solid var(--rule);border-top:none;border-radius:0 0 var(--radius) var(--radius);}
    .area-card .ac-body h4{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink4);margin-bottom:8px;}
    .area-card .ac-body ul{list-style:none;display:flex;flex-direction:column;gap:4px;}
    .area-card .ac-body li{font-size:12.5px;color:var(--ink2);display:flex;gap:7px;line-height:1.5;}
    .area-card .ac-body li::before{font-weight:700;flex-shrink:0;}
    .ac-front .ac-top{background:linear-gradient(135deg,#1e40af,#2563a8);}
    .ac-front .ac-name,.ac-front .ac-desc{color:#fff;}
    .ac-front .ac-tag{background:rgba(255,255,255,.2);color:#fff;}
    .ac-front .ac-body li::before{content:'›';color:#2563a8;}
    .ac-back .ac-top{background:linear-gradient(135deg,#065f46,#1a7a50);}
    .ac-back .ac-name,.ac-back .ac-desc{color:#fff;}
    .ac-back .ac-tag{background:rgba(255,255,255,.2);color:#fff;}
    .ac-back .ac-body li::before{content:'›';color:#1a7a50;}
    .ac-full .ac-top{background:linear-gradient(135deg,#5b21b6,#7c3aed);}
    .ac-full .ac-name,.ac-full .ac-desc{color:#fff;}
    .ac-full .ac-tag{background:rgba(255,255,255,.2);color:#fff;}
    .ac-full .ac-body li::before{content:'›';color:#7c3aed;}

        /* ── BACK TO TOP ── */
    .back-to-top {
      position: fixed; bottom: 2rem; right: 2rem;
      width: 42px; height: 42px; border-radius: 50%;
      background: var(--ink); color: #fff; border: none; cursor: pointer;
      font-size: 18px; display: flex; align-items: center; justify-content: center;
      box-shadow: var(--shadow-lg); opacity: 0; pointer-events: none;
      transition: opacity .25s, transform .25s; z-index: 90; transform: translateY(8px);
    }
    .back-to-top.visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
    .back-to-top:hover { background: var(--ink2); }

    /* RELATION DIAGRAM */
    .relation-diagram{background:#fff;border:1.5px solid var(--rule);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);margin-bottom:1.5rem;}
    .rd-layers{display:flex;flex-direction:column;gap:8px;}
    .rd-layer{border-radius:8px;padding:14px 18px;display:flex;align-items:center;gap:14px;}
    .rd-layer-front{background:#dbeafe;border:1.5px solid #93c5fd;}
    .rd-layer-back{background:#dcfce7;border:1.5px solid #86efac;}
    .rd-layer-db{background:#f3f4f6;border:1.5px solid #d1d5db;}
    .rd-arrow{text-align:center;font-size:18px;color:var(--ink4);}
    .rd-icon{font-size:22px;flex-shrink:0;}
    .rd-label{font-size:13px;font-weight:700;color:var(--ink);}
    .rd-sub{font-size:11.5px;color:var(--ink3);margin-top:2px;}
    .rd-tech{margin-left:auto;display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end;}
    .tech-pill{font-family:var(--font-mono);font-size:10px;font-weight:500;padding:2px 8px;border-radius:4px;background:rgba(0,0,0,.06);color:var(--ink3);}

    /* COMPARE TABLE */
    .compare-table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);margin-bottom:1.5rem;}
    .compare-table th{background:var(--ink);color:var(--paper);font-size:11px;font-weight:700;padding:10px 14px;text-align:left;letter-spacing:.04em;}
    .compare-table td{font-size:12.5px;padding:10px 14px;border-bottom:1px solid var(--rule2);color:var(--ink2);vertical-align:top;line-height:1.6;}
    .compare-table tr:last-child td{border-bottom:none;}
    .compare-table tr:nth-child(even) td{background:var(--paper2);}
    .compare-table td:first-child{font-weight:700;color:var(--ink);white-space:nowrap;}
    .badge-front{display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;background:#dbeafe;color:#1e40af;}
    .badge-back{display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;background:#dcfce7;color:#166534;}
    .badge-full{display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;background:#ede9fe;color:#5b21b6;}

    /* CAREER CARDS */
    .career-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:1.5rem;}
    .career-card{background:#fff;border:1.5px solid var(--rule);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow);}
    .career-card .cc-icon{font-size:24px;margin-bottom:10px;}
    .career-card h3{font-family:var(--font-serif);font-size:16px;font-weight:600;color:var(--ink);margin-bottom:8px;}
    .career-card p{font-size:12.5px;color:var(--ink3);line-height:1.7;}
    .career-card .cc-tip{margin-top:10px;padding:10px 12px;background:var(--paper2);border-radius:6px;font-size:12px;color:var(--ink2);line-height:1.6;}

    /* QUOTE */
    .quote{border-left:4px solid var(--accent2);padding:14px 20px;background:var(--paper2);border-radius:0 var(--radius) var(--radius) 0;margin:1.5rem 0;}
    .quote p{font-family:var(--font-serif);font-style:italic;font-size:14px;color:var(--ink2);line-height:1.75;}

    /* SUMMARY */
    .summary{background:var(--paper2);border:1.5px solid var(--rule);border-radius:var(--radius);padding:20px 22px;margin-top:2rem;}
    .summary h3{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:12px;}
    .summary ul{list-style:none;display:flex;flex-direction:column;gap:8px;}
    .summary li{font-size:13px;color:var(--ink2);line-height:1.6;display:flex;align-items:flex-start;gap:10px;}
    .summary li::before{content:'→';color:var(--accent2);font-weight:700;flex-shrink:0;margin-top:1px;}

    /* ── RECOMENDAÇÕES ── */
    .rec-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:1.5rem;}
    .rec-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;position:relative;}
    /* Alura */
    .rec-alura .rec-top{background:linear-gradient(135deg,#1b1b2f,#2d2b55);padding:22px 22px 18px;}
    .rec-alura .rec-logo{font-family:var(--font-serif);font-size:26px;font-weight:600;color:#fff;margin-bottom:6px;letter-spacing:-.5px;}
    .rec-alura .rec-logo span{color:#00c7f2;}
    .rec-alura .rec-tag{display:inline-block;font-size:10px;font-weight:700;padding:2px 10px;border-radius:20px;background:rgba(0,199,242,.2);color:#00c7f2;margin-bottom:10px;}
    .rec-alura .rec-desc{font-size:12.5px;color:rgba(255,255,255,.8);line-height:1.7;}
    /* FIAP */
    .rec-fiap .rec-top{background:linear-gradient(135deg,#8B0000,#c41e1e);padding:22px 22px 18px;}
    .rec-fiap .rec-logo{font-family:var(--font-serif);font-size:26px;font-weight:600;color:#fff;margin-bottom:6px;letter-spacing:-.5px;}
    .rec-fiap .rec-logo span{color:#ffcc00;}
    .rec-fiap .rec-tag{display:inline-block;font-size:10px;font-weight:700;padding:2px 10px;border-radius:20px;background:rgba(255,204,0,.2);color:#ffcc00;margin-bottom:10px;}
    .rec-fiap .rec-desc{font-size:12.5px;color:rgba(255,255,255,.8);line-height:1.7;}
    /* card body */
    .rec-body{background:#fff;border:1.5px solid var(--rule);border-top:none;border-radius:0 0 var(--radius) var(--radius);padding:16px 20px;flex:1;display:flex;flex-direction:column;gap:12px;}
    .rec-pros{list-style:none;display:flex;flex-direction:column;gap:5px;}
    .rec-pros li{font-size:12.5px;color:var(--ink2);display:flex;gap:8px;line-height:1.6;}
    .rec-pros li::before{content:'✓';font-weight:700;flex-shrink:0;}
    .rec-alura .rec-pros li::before{color:#00c7f2;}
    .rec-fiap .rec-pros li::before{color:#c41e1e;}
    .rec-note{font-size:11.5px;color:var(--ink3);line-height:1.6;padding:10px 12px;border-radius:6px;}
    .rec-alura .rec-note{background:#f0fffe;border-left:3px solid #00c7f2;}
    .rec-fiap .rec-note{background:#fff5f5;border-left:3px solid #c41e1e;}
    .rec-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:13px;font-weight:700;text-decoration:none;padding:10px 18px;border-radius:8px;transition:opacity .15s;margin-top:auto;}
    .rec-btn:hover{opacity:.88;}
    .rec-alura .rec-btn{background:linear-gradient(135deg,#1b1b2f,#2d2b55);color:#fff;}
    .rec-fiap .rec-btn{background:linear-gradient(135deg,#8B0000,#c41e1e);color:#fff;}
    .rec-badge-discount{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;background:#dcfce7;color:#166534;margin-bottom:6px;}
    .rec-badge-premium{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;background:#fff5f5;color:#c41e1e;margin-bottom:6px;}
    .rec-disclaimer{font-size:10.5px;color:var(--ink4);text-align:center;margin-top:.5rem;font-style:italic;}

    /* TIP */
    .tip{background:#dbeafe;border:1.5px solid #93c5fd;border-radius:var(--radius);padding:14px 18px;margin-bottom:1.5rem;}
    .tip p{font-size:13px;color:#1e3a5f;line-height:1.7;}

    /* NAV PAGES */
    .nav-pages{display:flex;gap:12px;margin-top:2.5rem;flex-wrap:wrap;}
    .nav-page{flex:1;min-width:200px;background:#fff;border:1.5px solid var(--rule);border-radius:var(--radius);padding:14px 18px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:4px;transition:transform .15s,box-shadow .15s;box-shadow:var(--shadow);}
    .nav-page:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);}
    .np-label{font-size:11px;color:var(--ink4);font-weight:700;}.np-title{font-size:14px;font-weight:700;color:var(--accent2);}

    [data-i18n]{transition:opacity .18s ease;}.lang-switching [data-i18n]{opacity:0;}
    @keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
    .fade{animation:fadeUp .45s ease both;}
    @media(max-width:640px){
      .nav{padding:0 1rem;gap:6px;}.page{padding:0 1rem 4rem;}
      .areas-grid{grid-template-columns:1fr;}
      .career-grid{grid-template-columns:1fr;}
      .rec-grid{grid-template-columns:1fr;}
      .compare-table{font-size:11px;}
    }