/* === PORTAL HABILITAÇÃO — Design System === */
:root {
  --primary: #2563eb;
  --primary-d: #1d4ed8;
  --primary-l: #bfdbfe;
  --bg: #eff6ff;
  --bg-alt: #dbeafe;
  --text: #0f172a;
  --text-light: #64748b;
  --white: #ffffff;
  --danger: #dc2626;
  --danger-bg: #fef2f2;
  --success: #16a34a;
  --success-bg: #f0fdf4;
  --border: #e2e8f0;
  --shadow: 0 2px 8px rgba(0,0,0,.08);
  --radius: 10px;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--text);line-height:1.7;background:var(--white)}
a{color:var(--primary-d);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%}

/* Disclaimer Bar */
.disclaimer-bar{background:#0f172a;color:#f1f5f9;text-align:center;padding:10px 16px;font-size:.82rem;line-height:1.5}
.disclaimer-bar span{font-weight:700}
.disclaimer-bar .cnpj-tag{display:inline-block;background:var(--primary-d);color:#fff;padding:2px 10px;border-radius:20px;font-size:.75rem;margin-left:8px;font-weight:600}

/* Header */
header{background:var(--white);border-bottom:3px solid var(--primary);padding:0 20px;position:sticky;top:0;z-index:100;box-shadow:var(--shadow)}
.header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 0;flex-wrap:wrap;gap:8px}
.logo{font-size:1.35rem;font-weight:800;color:var(--primary-d);display:flex;flex-direction:column;line-height:1.2}
.logo span{font-size:.65rem;font-weight:500;color:var(--text-light);letter-spacing:.5px}
.cnpj-header{font-size:.65rem;color:var(--text-light);font-weight:400}
nav{display:flex;gap:4px;flex-wrap:wrap}
nav a{padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:500;color:var(--text);transition:background .2s}
nav a:hover,nav a.active{background:var(--bg-alt);color:var(--primary-d);text-decoration:none}

/* Breadcrumb */
.breadcrumb{background:var(--bg);padding:10px 20px;font-size:.82rem}
.breadcrumb .container{max-width:1200px;margin:0 auto}
.breadcrumb ol{list-style:none;display:flex;gap:6px;flex-wrap:wrap}
.breadcrumb ol li+li::before{content:"›";margin-right:6px;color:var(--text-light)}
.breadcrumb a{color:var(--primary-d)}
.breadcrumb [aria-current]{color:var(--text-light);font-weight:500}

/* Ad Notice */
.ad-notice{max-width:1200px;margin:16px auto;padding:12px 20px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius);font-size:.82rem;color:#1e3a8a;text-align:center}
.ad-notice a{color:var(--primary-d);font-weight:600}

/* Hero */
.hero{background:linear-gradient(135deg,#1e3a8a 0%,var(--primary-d) 50%,#2563eb 100%);color:var(--white);padding:56px 20px;text-align:center}
.hero-inner{max-width:900px;margin:0 auto}
.hero h1{font-size:2rem;font-weight:800;margin-bottom:12px;line-height:1.2}
.hero p{font-size:1.05rem;opacity:.92;margin-bottom:20px}
.hero-disclaimer{background:rgba(0,0,0,.25);padding:12px 20px;border-radius:var(--radius);font-size:.85rem;margin-top:16px;line-height:1.5}
.badge{display:inline-block;background:rgba(255,255,255,.18);padding:6px 16px;border-radius:20px;font-size:.82rem;margin-bottom:14px;font-weight:600}
.btn{display:inline-block;padding:12px 28px;border-radius:var(--radius);font-weight:700;font-size:.95rem;transition:transform .2s,box-shadow .2s;text-decoration:none !important}
.btn-light{background:var(--white);color:var(--primary-d)}
.btn-outline{border:2px solid rgba(255,255,255,.5);color:var(--white);margin-left:10px}
.btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.2)}
.hero-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:8px}

/* Sections */
.section{max-width:1200px;margin:0 auto;padding:48px 20px}
.section-title{font-size:1.5rem;font-weight:800;color:var(--text);margin-bottom:8px;text-align:center}
.section-sub{text-align:center;color:var(--text-light);margin-bottom:32px;font-size:.95rem}

/* Cards */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);transition:transform .2s}
.card:hover{transform:translateY(-3px)}
.card-icon{font-size:2rem;margin-bottom:10px}
.card h3{font-size:1.05rem;font-weight:700;margin-bottom:8px;color:var(--primary-d)}
.card p{font-size:.9rem;color:var(--text-light)}

/* Info Boxes */
.info-box{padding:20px 24px;border-radius:var(--radius);margin:24px 0;font-size:.92rem;line-height:1.6}
.info-box h4{margin-bottom:8px;font-size:1rem}
.info-box.danger{background:var(--danger-bg);border-left:4px solid var(--danger);color:#991b1b}
.info-box.success{background:var(--success-bg);border-left:4px solid var(--success);color:#166534}
.info-box.warning{background:#eff6ff;border-left:4px solid var(--primary);color:#1e3a8a}
.info-box ul{margin:8px 0 0 20px}
.info-box li{margin-bottom:4px}

/* Tables */
.table-wrapper{overflow-x:auto;margin:20px 0}
table{width:100%;border-collapse:collapse;font-size:.88rem}
th{background:var(--primary-d);color:var(--white);padding:12px 14px;text-align:left;font-weight:600}
td{padding:10px 14px;border-bottom:1px solid var(--border)}
tr:nth-child(even){background:var(--bg)}
tr:hover{background:var(--bg-alt)}

/* FAQ */
.faq{max-width:900px;margin:0 auto}
.faq-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;padding:18px 22px;background:var(--white)}
.faq-q{font-weight:700;color:var(--primary-d);margin-bottom:6px;font-size:.95rem}
.faq-a{font-size:.9rem;color:var(--text-light);line-height:1.6}

/* Steps */
.steps{counter-reset:step}
.step{display:flex;gap:16px;margin-bottom:20px;align-items:flex-start}
.step-num{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--primary);color:var(--white);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.95rem}
.step-content h3{font-size:1rem;font-weight:700;margin-bottom:4px}
.step-content p{font-size:.88rem;color:var(--text-light)}

/* Legal */
.legal-content{max-width:900px;margin:0 auto;padding:40px 20px}
.legal-content h1{font-size:1.6rem;font-weight:800;margin-bottom:6px;color:var(--primary-d)}
.legal-content h2{font-size:1.15rem;font-weight:700;margin:28px 0 10px;color:var(--text);padding-bottom:6px;border-bottom:2px solid var(--bg-alt)}
.legal-content h3{font-size:1rem;font-weight:600;margin:16px 0 8px;color:var(--text)}
.legal-content p{margin-bottom:12px;font-size:.9rem}
.legal-content ul,.legal-content ol{margin:8px 0 16px 24px;font-size:.9rem}
.legal-content li{margin-bottom:6px}
.last-updated{font-size:.82rem;color:var(--text-light);margin-bottom:24px}

/* Links Oficiais */
.official-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:20px 0}
.official-link{display:block;padding:12px 16px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-size:.88rem;font-weight:600;color:var(--primary-d);transition:background .2s}
.official-link:hover{background:var(--bg-alt);text-decoration:none}

/* Footer */
footer{background:#0f172a;color:#cbd5e1;padding:48px 20px 0}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px}
.footer-col h4{color:var(--primary-l);font-size:.95rem;margin-bottom:14px}
.footer-col p,.footer-col a{font-size:.85rem;color:#94a3b8;line-height:1.8;display:block}
.footer-col a:hover{color:var(--primary-l);text-decoration:none}
.footer-bottom{max-width:1200px;margin:32px auto 0;padding:20px 0;border-top:1px solid #1e293b;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.78rem;color:#94a3b8}

/* Cookie Banner */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:#0f172a;color:#f1f5f9;padding:18px 20px;z-index:9999;box-shadow:0 -4px 20px rgba(0,0,0,.15);transform:translateY(100%);opacity:0;transition:transform .3s,opacity .3s}
.cookie-banner.show{transform:translateY(0);opacity:1}
.cookie-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.cookie-inner p{font-size:.85rem;flex:1;min-width:280px}
.cookie-inner a{color:var(--primary-l)}
.cookie-buttons{display:flex;gap:8px;flex-wrap:wrap}
.cookie-buttons button{padding:8px 18px;border:none;border-radius:6px;font-weight:600;font-size:.82rem;cursor:pointer;transition:transform .2s}
.cookie-buttons button:hover{transform:scale(1.05)}
#cookie-reject{background:#334155;color:#cbd5e1}
#cookie-essential{background:#64748b;color:#f1f5f9}
#cookie-accept{background:var(--primary);color:#fff}

/* Responsive */
@media(max-width:768px){
  .hero{padding:36px 16px}
  .hero h1{font-size:1.5rem}
  .section-title{font-size:1.25rem}
  .header-inner{flex-direction:column;padding:10px 0}
  nav{justify-content:center}
  .footer-bottom{flex-direction:column;text-align:center}
  .cookie-inner{flex-direction:column;text-align:center}
}
