:root{
  --azul: #1B2A6B;
  --azul-claro: #3450C2;
  --teal: #00B8A9;
  --laranja: #FF8C42;
  --amarelo: #FFC93C;
  --cinza: #F4F6FB;
  --texto: #1F2433;
  --branco: #FFFFFF;
}
*{margin:0;padding:0;box-sizing:border-box;font-family:'Segoe UI',Roboto,Arial,sans-serif;}
html{margin:0 !important; padding:0 !important; width:100% !important;}
body{color:var(--texto); background:var(--branco); line-height:1.6; margin:0 !important; padding:0 !important; width:100% !important;}
a{text-decoration:none; color:inherit;}
img{max-width:100%; display:block;}

/* HEADER */
header{
  position:sticky; top:0; z-index:100;
  background:var(--branco);
  box-shadow:0 2px 12px rgba(27,42,107,0.08);
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
.topbar{
  background:var(--azul);
  color:var(--branco);
  font-size:0.7rem;
  text-align:center;
  padding:3px 12px !important;
  letter-spacing:.5px;
  line-height:1;
  margin:0 !important;
}
.nav{
  max-width:100%; margin:0 auto !important;
  display:flex !important; align-items:center !important; justify-content:space-between !important;
  padding:6px 40px !important;
  gap:20px !important;
  flex-wrap:nowrap !important;
}
.logo{
  display:flex !important; align-items:center !important; gap:6px !important;
  font-weight:800; font-size:1rem; color:var(--azul);
  white-space:nowrap !important;
  margin:0 !important; padding:0 !important;
}
.logo span.balao{
  width:24px; height:24px; border-radius:50%;
  background:linear-gradient(135deg,var(--teal),var(--azul-claro));
  display:inline-block !important;
  flex-shrink:0 !important;
}
nav ul{
  list-style:none !important; display:flex !important; gap:18px !important; align-items:center !important;
  margin:0 !important; padding:0 !important; flex-wrap:nowrap !important;
}
nav ul li{position:relative;}
nav ul li a{
  font-weight:600; font-size:.85rem; color:var(--texto);
  transition:color .2s;
  white-space:nowrap;
}
nav ul li a:hover{color:var(--teal);}

/* DROPDOWN (menu "Sobre" e "FECCIF26") */
.dropdown-menu{
  list-style:none; position:absolute; top:calc(100% + 10px); left:0;
  background:var(--branco); min-width:220px; border-radius:12px;
  box-shadow:0 12px 30px rgba(27,42,107,0.14);
  padding:10px; display:none; flex-direction:column; gap:2px; z-index:200;
}
.dropdown:hover .dropdown-menu, .dropdown.open .dropdown-menu{display:flex;}
.dropdown-menu li a{display:block; padding:9px 12px; border-radius:8px; font-size:.9rem; font-weight:500;}
.dropdown-menu li a:hover{background:var(--cinza); color:var(--azul);}
.btn{
  display:inline-block; padding:8px 16px; border-radius:25px;
  font-weight:700; font-size:.8rem; transition:all .2s; border:2px solid transparent;
  white-space:nowrap;
}
.btn-primary{background:var(--laranja); color:var(--branco);}
.btn-primary:hover{background:#e87a2c; transform:translateY(-2px);}
.btn-outline{border-color:var(--branco); color:var(--branco);}
.btn-outline:hover{background:var(--branco); color:var(--azul);}
.btn-ghost{border-color:var(--azul); color:var(--azul);}
.btn-ghost:hover{background:var(--azul); color:var(--branco);}
.menu-toggle{display:none; font-size:1.6rem; background:none; border:none; cursor:pointer; color:var(--azul);}

/* HERO */
.hero{
  background:radial-gradient(ellipse at top right, var(--azul-claro), var(--azul) 70%);
  color:var(--branco);
  padding:30px 40px 70px;
  position:relative; overflow:hidden;
}
.hero::before, .hero::after{
  content:''; position:absolute; border-radius:50%; opacity:.15;
}
.hero::before{width:300px;height:300px; background:var(--amarelo); top:-100px; right:-60px;}
.hero::after{width:220px;height:220px; background:var(--teal); bottom:-80px; left:10%;}
.hero-inner{
  max-width:100%; margin:0 auto; padding:0 40px;
  display:grid; grid-template-columns:1.3fr 1fr; gap:40px; align-items:center;
  position:relative; z-index:2;
}
.hero h1{font-size:2.6rem; font-weight:800; line-height:1.2; margin-bottom:16px; color:var(--branco);}
.hero h1 em{color:var(--amarelo); font-style:normal;}
.hero p{font-size:1.1rem; opacity:.92; margin-bottom:28px; max-width:540px; color:var(--branco);}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap;}

/* COUNTDOWN CARD */
.countdown-card{
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.25);
  border-radius:20px; padding:28px;
  backdrop-filter:blur(6px);
}
.countdown-card h3{font-size:1rem; font-weight:700; margin-bottom:6px; color:var(--amarelo); text-transform:uppercase; letter-spacing:1px;}
.countdown-card .data{font-size:1.4rem; font-weight:800; margin-bottom:18px;}
.countdown{display:flex; gap:10px; margin-bottom:18px;}
.countdown div{
  flex:1; background:rgba(255,255,255,0.12); border-radius:12px; text-align:center; padding:12px 4px;
}
.countdown div .num{font-size:1.6rem; font-weight:800; display:block;}
.countdown div .lbl{font-size:.7rem; text-transform:uppercase; opacity:.8;}
.countdown-card hr{border:none; border-top:1px solid rgba(255,255,255,0.2); margin:16px 0;}
.countdown-card .prazo{font-size:.9rem;}
.countdown-card .prazo b{color:var(--amarelo);}

/* SECTION GENERAL */
section{padding:80px 40px; width:100% !important; margin:0 !important;}
.section-inner{max-width:100%; margin:0 auto; padding:0;}
.eyebrow{
  color:var(--teal); font-weight:800; text-transform:uppercase; letter-spacing:2px; font-size:.8rem; margin-bottom:8px;
}
h2.section-title{font-size:2rem; font-weight:800; color:var(--azul); margin-bottom:14px;}
.section-desc{max-width:640px; color:#555; margin-bottom:40px;}

/* QUICK ACCESS CARDS */
.quick-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:24px;
}
.quick-card{
  background:var(--cinza); border-radius:18px; padding:28px;
  border-top:5px solid var(--teal);
  transition:transform .2s, box-shadow .2s;
  text-align:center;
}
.quick-card:nth-child(2){border-top-color:var(--laranja);}
.quick-card:nth-child(3){border-top-color:var(--amarelo);}
.quick-card:nth-child(4){border-top-color:var(--azul-claro);}
.quick-card:hover{transform:translateY(-6px); box-shadow:0 12px 30px rgba(27,42,107,0.12);}
.quick-card .icon{font-size:2.5rem; margin-bottom:14px;}
.quick-card h3{font-size:1.3rem; color:var(--azul); margin-bottom:12px; font-weight:700;}
.quick-card p{font-size:1rem; color:#666; margin-bottom:16px;}
.quick-card a{font-weight:700; color:var(--teal); font-size:1rem;}

/* ABOUT / STATS */
.about{background:var(--cinza);}
.about-grid{display:grid; grid-template-columns:1fr; gap:50px; align-items:center;}
.about-grid img{display:none;}
.stats{display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-top:30px;}
.stat{background:var(--branco); border-radius:16px; padding:22px; text-align:center; box-shadow:0 6px 18px rgba(27,42,107,.06);}
.stat .num{font-size:2rem; font-weight:800; color:var(--azul-claro);}
.stat .lbl{font-size:.85rem; color:#666;}

/* CATEGORIES */
.categorias-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:18px;
}
.cat-card{
  background:linear-gradient(160deg,var(--azul),var(--azul-claro));
  color:var(--branco); border-radius:16px; padding:24px;
  display:flex; flex-direction:column; gap:10px; min-height:130px; justify-content:flex-end;
  align-items:center; text-align:center;
  transition:transform .2s;
}
.cat-card:hover{transform:scale(1.03);}
.cat-card .emoji{font-size:2rem;}
.cat-card h4{font-size:1.1rem; font-weight:700; color:var(--branco); text-shadow:0 1px 3px rgba(0,0,0,0.2);}

/* INSPIRE */
.inspire{
  background:var(--azul); color:var(--branco);
}
.inspire .section-title{color:var(--branco); font-size:2.2rem;}
.inspire .eyebrow{color:var(--amarelo); font-size:0.9rem;}
.inspire .section-desc{color:rgba(255,255,255,.8); font-size:1.05rem;}
.video-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.video-card{
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.15); border-radius:16px; overflow:hidden;
}
.video-thumb{
  aspect-ratio:16/9; background:linear-gradient(135deg,var(--teal),var(--azul-claro));
  display:flex; align-items:center; justify-content:center; font-size:3rem;
}
.video-card .info{padding:20px;}
.video-card .info h4{font-size:1.05rem; margin-bottom:6px; font-weight:700;}
.video-card .info p{font-size:0.9rem; color:rgba(255,255,255,.7);}

/* CTA FINAL */
.cta-final{
  background:linear-gradient(135deg,var(--laranja),var(--amarelo));
  text-align:center; color:var(--azul);
}
.cta-final h2{font-size:2rem; font-weight:800; margin-bottom:14px;}
.cta-final p{margin-bottom:28px; max-width:560px; margin-left:auto; margin-right:auto;}
.cta-final .btn-primary{background:var(--azul); color:var(--branco);}
.cta-final .btn-primary:hover{background:#11205a;}

/* FOOTER */
footer{background:#11183f; color:rgba(255,255,255,.8); padding:50px 40px 24px; width:100% !important; margin:0 !important;}
.footer-inner{max-width:100%; margin:0 auto; display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:30px;}
footer h4{color:var(--branco); margin-bottom:14px; font-size:1rem;}
footer ul{list-style:none;}
footer ul li{margin-bottom:8px; font-size:.9rem;}
footer ul li a:hover{color:var(--amarelo);}
.footer-bottom{
  max-width:100%; margin:30px 0 0; padding:20px 0 0; border-top:1px solid rgba(255,255,255,.1);
  font-size:.8rem; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;
}
.social{display:flex; gap:12px;}
.social a{
  width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.08);
  display:flex; align-items:center; justify-content:center;
}

/* RESPONSIVE */
@media (max-width: 980px){
  .hero-inner{grid-template-columns:1fr;}
  .hero h1{font-size:2.2rem;}
  .quick-grid{grid-template-columns:repeat(2,1fr);}
  .about-grid{grid-template-columns:1fr;}
  .categorias-grid{grid-template-columns:repeat(2,1fr);}
  .video-grid{grid-template-columns:repeat(2,1fr);}
  .footer-inner{grid-template-columns:repeat(2,1fr);}
  section{padding:60px 30px;}
  .nav{padding:8px 30px;}
}
@media (max-width: 720px){
  nav ul{
    position:absolute; top:100%; left:0; right:0; background:var(--branco);
    flex-direction:column; padding:16px 20px; gap:12px;
    box-shadow:0 8px 16px rgba(0,0,0,.08);
    display:none;
  }
  nav ul.open{display:flex;}
  .menu-toggle{display:block;}
  .dropdown-menu{position:static; box-shadow:none; padding-left:12px; display:none;}
  .dropdown.open .dropdown-menu{display:flex;}
  .dropdown:hover .dropdown-menu{display:none;}
  .dropdown.open:hover .dropdown-menu{display:flex;}
  .hero{padding:40px 24px 60px;}
  .hero-inner{gap:20px; padding:0 !important;}
  .hero h1{font-size:1.8rem;}
  .hero p{font-size:1rem;}
  .countdown-card{padding:20px;}
  .quick-grid{grid-template-columns:1fr; gap:16px;}
  .quick-card{padding:20px;}
  .categorias-grid{grid-template-columns:1fr;}
  .video-grid{grid-template-columns:1fr;}
  .footer-inner{grid-template-columns:1fr; gap:20px;}
  section{padding:50px 24px;}
  h2.section-title{font-size:1.5rem;}
  .nav{padding:8px 24px;}
  nav ul li a{font-size:.85rem;}
  .logo{font-size:1rem;}
}