
:root{
  --verde:#00FF7F; --vinho:#6C1A2D; --azul:#0B3A67; --azul-brilho:#00BFFF;
  --bg-claro:#FFFFFF; --bg-escuro:#0A0A0A; --texto-claro:#0A0A0A; --texto-escuro:#FFFFFF;
  --shadow:0 12px 40px rgba(0,0,0,.25);
}
body{font-family:Inter,system-ui; margin:0; line-height:1.6; scroll-behavior:smooth}
body[data-theme=auto]{background:var(--bg-claro); color:var(--texto-claro)}
@media (prefers-color-scheme: dark){ body[data-theme=auto]{background:var(--bg-escuro); color:var(--texto-escuro)} }
body[data-theme=light]{background:var(--bg-claro); color:var(--texto-claro)}
body[data-theme=dark]{background:var(--bg-escuro); color:var(--texto-escuro)}
.header{position:sticky; top:0; z-index:1000; backdrop-filter:saturate(120%) blur(8px); background:rgba(0,0,0,.82); color:#fff}
.wrap{max-width:1200px; margin:0 auto; padding:12px 24px; display:flex; gap:18px; align-items:center; justify-content:space-between}
.brand{display:flex; gap:10px; align-items:center; text-decoration:none; color:#fff; font-weight:800}
.brand-badge{width:28px; height:28px; border-radius:8px; background:radial-gradient(circle at 30% 30%, #3aff9f, #0d5f3b 60%); box-shadow:inset 0 0 12px rgba(0,0,0,.35)}
.nav{display:flex; gap:18px; align-items:center}
.nav a{color:#fff; text-decoration:none; font-weight:600; opacity:.9; transition:color .25s}
.nav a:hover{opacity:1; color:var(--verde)}
.dropdown{position:relative}
.dropdown>a::after{content:"▾"; margin-left:6px; font-size:.8rem}
.dropdown-menu{position:absolute; top:calc(100% + 10px); left:0; background:#111; border:1px solid #2b2b2b; border-radius:12px; padding:8px; display:none; box-shadow:var(--shadow); min-width:240px; z-index:2000}
.dropdown-menu a{display:block; padding:10px 12px; border-radius:8px; color:#fff; text-decoration:none}
.dropdown-menu a:hover{background:#1e1e1e; color:var(--verde)}
.theme-switch{display:inline-flex; gap:6px; align-items:center; background:#1a1a1a; border:1px solid #333; color:#fff; border-radius:999px; padding:6px 8px; font-size:12px}
.theme-switch button{appearance:none; border:none; border-radius:999px; padding:6px 10px; cursor:pointer; background:transparent; color:#fff}
.theme-switch button.active{background:#2a2a2a; color:var(--verde); font-weight:800}
.hero{position:relative; overflow:hidden; text-align:center; color:#fff; padding:120px 24px 100px;
  background:
   radial-gradient(70% 90% at 20% 10%, rgba(108,26,45,.55), transparent 60%),
   radial-gradient(60% 80% at 80% 10%, rgba(0,63,122,.55), transparent 60%),
   radial-gradient(90% 120% at 50% 80%, rgba(0,255,127,.35), transparent 70%),
   linear-gradient(160deg, #0a0a0a 0%, #0d0d0d 40%, #0a0a0a 100%)}
.hero h1{font-size:clamp(32px,4vw,48px); margin:0 0 8px}
.hero p{font-size:clamp(14px,2vw,18px); opacity:.95; margin:0 0 22px}
.btn{display:inline-block; text-decoration:none; background:var(--verde); color:#000; font-weight:800; padding:12px 22px; border-radius:999px; transition:transform .25s, filter .25s}
.btn:hover{transform:translateY(-1px) scale(1.02); filter:brightness(1.05)}
.section{max-width:1100px; margin:0 auto; padding:64px 24px}
.section h2{text-align:center; font-size:clamp(22px,3vw,32px); margin:0 0 22px}
.text-center{text-align:center}
.grid{display:grid; gap:20px; grid-template-columns:repeat(auto-fit, minmax(260px,1fr))}
.card{border-radius:14px; padding:24px; color:#fff; box-shadow:var(--shadow); cursor:pointer; transition:transform .25s, box-shadow .25s, filter .25s; text-decoration:none; display:block}
.card:hover{transform:scale(1.03); filter:brightness(1.1); box-shadow:0 0 20px rgba(0,0,0,.35)}
.card-lei{background:linear-gradient(135deg,#8B1A3C,#B03060)}
.card-eco{background:linear-gradient(135deg,#007A3D,#00FF7F); color:#000}
.card-tec{background:linear-gradient(135deg,#003366,#00BFFF)}
.card-outros{background:linear-gradient(135deg,#2a2a2a,#3a3a3a)}
.header-sol{color:#fff; text-align:center; padding:100px 24px 56px}
.sol-lei{background:linear-gradient(140deg, #3c0d19 0%, #6C1A2D 45%, #B03060 100%)}
.sol-eco{background:linear-gradient(140deg, #013d22 0%, #007A3D 45%, #00FF7F 100%); color:#001}
.sol-tec{background:linear-gradient(140deg, #031d36 0%, #003366 45%, #00BFFF 100%)}
.cta{background:#101010; color:#fff; text-align:center; padding:56px 24px}
.cta h3{margin:0 0 12px}
.footer{background:#000; color:#fff; text-align:center; padding:26px 24px; font-size:14px}
.footer a{color:var(--verde); text-decoration:none}
.modal-backdrop{position:fixed; inset:0; background:rgba(0,0,0,.5); display:none; align-items:center; justify-content:center; z-index:3000}
.modal{background:#151515; color:#fff; border:1px solid #333; border-radius:16px; padding:24px; width:min(92vw,480px); box-shadow:0 12px 40px rgba(0,0,0,.35)}
.modal h3{margin:0 0 8px}
.modal p{margin:0 0 16px; opacity:.9}
.modal .buttons{display:flex; gap:10px; justify-content:flex-end}
.modal .buttons a, .modal .buttons button{padding:10px 14px; border-radius:10px; border:1px solid #333; background:#202020; color:#fff; text-decoration:none; cursor:pointer}
.modal .buttons a.primary{background:var(--verde); color:#000; border:none; font-weight:800}
.modal .buttons button{background:transparent}
