:root{
  --verde-escuro:#0A2A1E;
  --verde-escuro-2:#0E3527;
  --verde-musgo:#54633E;
  --verde-vivo:#1E8A4C;
  --verde-vivo-2:#2FAE5E;
  --verde-claro:#8FD19E;
  --dourado:#C6A15B;
  --dourado-vivo:#D9A63E;
  --dourado-claro:#E7D9B4;
  --dourado-suave: rgba(198,161,91,0.35);
  --creme:#F6F4EE;
  --branco:#FFFFFF;
  --texto:#152219;
  --texto-suave:#5B675D;
  --radius:2px;

  /* imagens de fundo — preenchidas via JS a partir do CONFIG */
  --img-hero: url('https://images.unsplash.com/photo-1441974231531-c6227db76b6e?auto=format&fit=crop&w=1800&q=80');
  --img-indicadores: url('https://images.unsplash.com/photo-1500534623283-312aade485b7?auto=format&fit=crop&w=1800&q=80');
  --img-regulamento: url('https://images.unsplash.com/photo-1440342359743-84fcb8c21f21?auto=format&fit=crop&w=1000&q=80');
  --img-cta-final: url('https://images.unsplash.com/photo-1500382017468-9049fed747ef?auto=format&fit=crop&w=1800&q=80');
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Inter', sans-serif;
  color:var(--texto);
  background:var(--branco);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-family:'Manrope', sans-serif; font-weight:700; letter-spacing:-0.01em;}
a{text-decoration:none; color:inherit;}
img{display:block; max-width:100%;}
.container{max-width:1240px; margin:0 auto; padding:0 48px;}
.eyebrow{
  display:flex; align-items:center; gap:12px;
  font-size:12.5px; letter-spacing:0.22em; text-transform:uppercase;
  color:var(--dourado); font-weight:600; margin-bottom:22px;
}
.eyebrow .ring{width:20px; height:20px; flex-shrink:0;}
.eyebrow .line{flex:0 0 40px; height:1px; background:var(--dourado);}

/* ---------- Selo / anel dourado (elemento assinatura) ---------- */
.selo{width:100%; height:100%;}
.selo circle{fill:none; stroke:var(--dourado); stroke-width:1.1;}
.logo img.logo-img{height:68px; width:auto; object-fit:contain;}

/* ---------- HEADER ---------- */
header{
  position:fixed; top:0; left:0; width:100%; z-index:100;
  padding:22px 0 0; transition:all .35s ease;
}
header.scrolled{
  background:rgba(10,42,30,0.94);
  backdrop-filter:blur(8px);
  padding:14px 0 0;
  box-shadow:0 1px 0 rgba(198,161,91,0.25);
}
.header-top{display:flex; align-items:center; justify-content:space-between; padding-bottom:20px;}
header.scrolled .header-top{padding-bottom:14px;}
.header-nav-row{
  display:flex; justify-content:center;
  border-top:1px solid rgba(231,217,180,0.18);
  padding:14px 0; transition:padding .35s ease;
}
header.scrolled .header-nav-row{padding:10px 0;}
.logo{display:flex; align-items:center; gap:14px;}
.logo .selo{width:48px; height:48px;}
.logo-text{color:var(--branco); line-height:1.05;}
.logo-text .top{font-family:'Manrope'; font-weight:800; font-size:18px; letter-spacing:0.03em;}
.logo-text .bottom{font-family:'Inter'; font-weight:400; font-size:11px; letter-spacing:0.28em; text-transform:uppercase; color:var(--dourado-claro); margin-top:4px;}
nav ul{list-style:none; display:flex; gap:34px;}
nav a{
  color:var(--branco); font-size:13.5px; font-weight:500; letter-spacing:0.02em;
  position:relative; padding-bottom:4px;
}
nav a::after{
  content:""; position:absolute; left:0; bottom:0; width:0; height:1px;
  background:var(--dourado); transition:width .3s ease;
}
nav a:hover::after{width:100%;}
.header-right{display:flex; align-items:center; gap:34px;}
.btn{
  display:inline-flex; align-items:center; gap:10px;
  padding:14px 30px; font-size:12.5px; font-weight:600;
  letter-spacing:0.14em; text-transform:uppercase; border-radius:var(--radius);
  transition:all .3s ease; white-space:nowrap; border:1px solid transparent; cursor:pointer;
}
.btn-gold{background:var(--dourado); color:var(--verde-escuro);}
.btn-gold:hover{background:var(--dourado-claro);}
.btn-outline{border-color:rgba(255,255,255,0.5); color:var(--branco);}
.btn-outline:hover{border-color:var(--dourado); color:var(--dourado);}
.btn-outline-dark{border-color:var(--verde-escuro); color:var(--verde-escuro);}
.btn-outline-dark:hover{background:var(--verde-escuro); color:var(--branco);}
.btn-outline-gold{border-color:rgba(198,161,91,0.6); color:var(--dourado-claro);}
.btn-outline-gold:hover{border-color:var(--dourado); color:var(--dourado);}
.menu-toggle{display:none;}

/* ---------- HERO ---------- */
.hero{
  position:relative; min-height:100vh; display:flex; align-items:flex-end;
  background:linear-gradient(180deg, rgba(6,24,16,0.55) 0%, rgba(6,20,14,0.72) 55%, rgba(6,20,14,0.94) 100%),
    var(--img-hero) center/cover;
  padding:210px 0 90px;
}
.hero-grid{display:grid; grid-template-columns:1.15fr 0.85fr; gap:60px; align-items:end;}
.hero-copy .eyebrow{color:var(--dourado-claro);}
.hero-copy .eyebrow .line{background:var(--dourado-claro);}
.hero h1{
  color:var(--branco); font-size:56px; line-height:1.14; max-width:640px; margin-bottom:26px;
  font-weight:800;
}
.hero h1 em{font-style:normal; color:var(--dourado-claro);}
.hero p.sub{
  color:rgba(255,255,255,0.82); font-size:16.5px; max-width:520px; font-weight:300; margin-bottom:40px;
}
.hero-buttons{display:flex; gap:18px; margin-bottom:0;}

.hero-card{
  background:rgba(15,40,28,0.72); backdrop-filter:blur(10px);
  border:1px solid var(--dourado-suave); border-radius:var(--radius);
  padding:38px; color:var(--branco);
  opacity:0; transform:translateY(30px);
  animation:heroCardFade 1s ease .5s forwards;
}
@keyframes heroCardFade{
  to{opacity:1; transform:translateY(0);}
}
.hero-card h4{font-size:11.5px; letter-spacing:0.2em; text-transform:uppercase; color:var(--dourado); font-weight:600; margin-bottom:24px;}
.hero-card .item{display:flex; gap:16px; padding:16px 0; border-top:1px solid rgba(231,217,180,0.16);}
.hero-card .item:first-of-type{border-top:none;}
.hero-card .item .ico{width:20px; height:20px; flex-shrink:0; margin-top:2px;}
.hero-card .item .label{font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--dourado-claro); opacity:0.8; margin-bottom:4px;}
.hero-card .item .val{font-size:15px; font-weight:500;}
.hero-card .item-destaque .val{font-size:22px; font-weight:800; color:var(--dourado-claro); letter-spacing:-0.01em;}

/* ---------- INDICADORES ---------- */
.indicadores{
  position:relative; padding:80px 0;
  background:linear-gradient(135deg, rgba(10,42,30,0.93), rgba(14,53,39,0.93)),
    var(--img-indicadores) center/cover fixed;
}
.ind-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:0; position:relative;}
.ind-item{text-align:center; padding:0 30px; border-left:1px solid rgba(231,217,180,0.18);}
.ind-item:first-child{border-left:none;}
.ind-item .num{
  font-family:'Manrope'; font-size:52px; font-weight:800;
  background:linear-gradient(120deg, var(--dourado-vivo), var(--verde-claro));
  -webkit-background-clip:text; background-clip:text; color:transparent;
  display:block; margin-bottom:10px; letter-spacing:-0.02em;
}
.ind-item .lbl{color:rgba(255,255,255,0.78); font-size:13px; letter-spacing:0.06em; text-transform:uppercase; font-weight:400;}
.ind-item .ind-sub{display:block; color:rgba(255,255,255,0.45); font-size:11px; margin-top:6px; font-weight:300; letter-spacing:0.01em;}
/* ---------- SOBRE O PRÊMIO ---------- */
.sobre-premio{padding:130px 0 100px; background:var(--branco); overflow:hidden;}
.sobre-grid{display:flex; align-items:center; justify-content:space-between; gap:60px;}
.sobre-left{flex:0 0 45%; max-width:45%;}
.sobre-left h2{font-size:42px; color:var(--verde-vivo); line-height:1.2; font-weight:700;}
.sobre-right{flex:1; position:relative;}
.sobre-img-wrapper{position:relative; width:100%; max-width:600px; margin:0 auto; padding:40px 0;}
.sobre-blob{
  position:absolute; top:20px; right:-40px; width:110%; height:80%; 
  background:var(--verde-claro); opacity:0.3; border-radius:120px 40px 100px 30px; 
  z-index:0; transform:rotate(-4deg);
}
.sobre-img-wrapper img{position:relative; z-index:1; width:100%; border-radius:var(--radius); box-shadow:0 12px 30px rgba(0,0,0,0.1);}
.sobre-divider{width:100%; height:1px; background:rgba(0,0,0,0.08); margin:60px 0;}
.sobre-text-row{column-count:1; /* the text is short, better as a single wide paragraph or maybe 2 cols if needed. Let's make it an elegant max-width paragraph */}
.sobre-text-row p{
  font-size:16px; line-height:1.75; color:var(--texto-suave); font-weight:300;
  max-width:800px; margin:0 auto; text-align:center;
}

/* ---------- SECTION GENERIC ---------- */
section{padding:130px 0;}
.section-head{max-width:640px; margin-bottom:70px;}
.section-head h2{font-size:38px; color:var(--verde-escuro); line-height:1.2;}
.section-head h2 strong{font-weight:800; font-size:1.1em; color:var(--dourado-vivo);}
.section-head p{color:var(--texto-suave); font-size:15.5px; margin-top:18px; font-weight:300;}
.center{margin-left:auto; margin-right:auto; text-align:center;}

/* ---------- CATEGORIAS ---------- */
.categorias{background:var(--creme);}
.cat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(84,99,62,0.18); border:1px solid rgba(84,99,62,0.18);}
.cat-card{
  background:var(--branco); padding:44px 32px; transition:all .35s ease; position:relative; overflow:hidden;
}
.cat-card::before{
  content:""; position:absolute; top:0; left:0; width:0; height:2px; background:linear-gradient(90deg,var(--dourado),var(--verde-vivo-2)); transition:width .4s ease;
}
.cat-card:hover{background:linear-gradient(150deg, var(--verde-escuro) 0%, var(--verde-vivo) 130%);}
.cat-card:hover::before{width:100%;}
.cat-card:hover h3, .cat-card:hover .num-cat{color:var(--branco);}
.cat-card:hover p{color:rgba(255,255,255,0.72);}
.cat-card:hover svg{stroke:var(--dourado-claro);}
.cat-card .num-cat{font-family:'Manrope'; font-size:12px; color:var(--verde-vivo); letter-spacing:0.1em; font-weight:700;}
.cat-card svg{width:34px; height:34px; stroke:var(--verde-vivo); stroke-width:1.3; fill:none; margin:22px 0 20px; transition:stroke .35s ease;}
.cat-card h3{font-size:16.5px; color:var(--verde-escuro); margin-bottom:10px; transition:color .35s ease;}
.cat-card p{font-size:13px; color:var(--texto-suave); font-weight:300; transition:color .35s ease;}

/* ---------- REGULAMENTO ---------- */
.regulamento{background:var(--branco);}
.reg-grid{display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center;}
.reg-list{list-style:none;}
.reg-list li{
  display:flex; gap:18px; padding:22px 0; border-bottom:1px solid rgba(84,99,62,0.16);
}
.reg-list li:first-child{padding-top:0;}
.reg-check{width:22px; height:22px; border:1px solid var(--dourado); border-radius:50%; flex-shrink:0; display:flex; align-items:center; justify-content:center; margin-top:2px;}
.reg-check svg{width:11px; height:11px; stroke:var(--dourado); stroke-width:2.4; fill:none;}
.reg-list h4{font-size:15.5px; color:var(--verde-escuro); margin-bottom:5px; font-weight:600;}
.reg-list p{font-size:13.5px; color:var(--texto-suave); font-weight:300;}
.reg-visual{
  background:linear-gradient(180deg, rgba(8,32,22,0.55) 0%, rgba(7,26,18,0.92) 100%),
    var(--img-regulamento) center/cover;
  border-radius:var(--radius); padding:56px;
  position:relative; min-height:460px; display:flex; flex-direction:column; justify-content:space-between;
}
.reg-visual .tag{color:var(--dourado); font-size:11.5px; letter-spacing:0.2em; text-transform:uppercase; font-weight:600;}
.reg-visual h3{color:var(--branco); font-size:28px; margin:26px 0 16px; max-width:340px;}
.reg-visual p{color:rgba(255,255,255,0.68); font-size:14px; font-weight:300; max-width:320px; margin-bottom:40px;}

.regulamento .cta-subtitulo{color:var(--texto-suave); margin:0 0 30px;}
.regulamento .cta-form{max-width:none; margin:0;}
.regulamento .cta-form-row,
.regulamento .cta-form-row:last-of-type{grid-template-columns:1fr;}
.regulamento .cta-form input,
.regulamento .cta-form select{
  background:var(--creme); border:1px solid rgba(21,34,25,0.14); color:var(--texto);
}
.regulamento .cta-form input::placeholder{color:var(--texto-suave);}
.regulamento .cta-form select{color:var(--texto-suave);}
.regulamento .cta-form select option{background:var(--branco); color:var(--texto);}
.regulamento .cta-form input:focus,
.regulamento .cta-form select:focus{outline:none; border-color:var(--dourado); background:var(--branco);}

/* ---------- PALESTRANTES ---------- */
.palestrantes{background:var(--creme);}
.pal-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:2px;}
.pal-card{position:relative; overflow:hidden; aspect-ratio:3/4; background:#000;}
.pal-card img{
  width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(1.05);
  transition:transform .6s ease, filter .6s ease;
}
.pal-card:hover img{transform:scale(1.06); filter:grayscale(0) sepia(0.18) saturate(1.3) contrast(1.02);}
.pal-overlay{
  position:absolute; left:0; bottom:0; right:0; padding:22px 18px;
  background:linear-gradient(180deg, rgba(10,42,30,0) 0%, rgba(8,28,20,0.92) 100%);
}
.pal-overlay h4{color:var(--branco); font-size:14px; font-weight:600; margin-bottom:3px;}
.pal-overlay span{color:var(--dourado-claro); font-size:11px; letter-spacing:0.04em; font-weight:300;}
.pal-card::after{
  content:""; position:absolute; inset:0; border:0 solid var(--dourado); transition:border-width .35s ease; pointer-events:none;
}
.pal-card:hover::after{border-width:3px;}
.pal-yt{
  display:inline-flex; align-items:center; margin-top:8px;
  font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase;
  color:var(--dourado); border-bottom:1px solid rgba(198,161,91,0.4);
  transition:color .25s ease;
}
.pal-yt:hover{color:var(--dourado-claro);}

/* ---------- PATROCINADORES ---------- */
.patrocinadores{background:var(--verde-escuro);}
.patrocinadores .section-head h2, .patrocinadores .section-head p{color:var(--branco);}
.patrocinadores .section-head p{color:rgba(255,255,255,0.6);}
.patro-grid{display:grid; grid-template-columns:repeat(6,1fr); gap:1px; background:rgba(231,217,180,0.12);}
.patro-card{
  background:var(--branco); height:112px; display:flex; align-items:center; justify-content:center;
  transition:transform .3s ease, box-shadow .3s ease; padding:18px; position:relative;
}
.patro-card:hover{transform:scale(1.06); box-shadow:0 14px 30px rgba(0,0,0,0.28); z-index:2;}
.patro-card span{color:var(--verde-escuro); font-family:'Manrope'; font-weight:700; font-size:14px; letter-spacing:0.04em; opacity:0.85; text-align:center;}
/* Logos: grayscale by default, full color on hover per doc spec */
.patro-card img{
  max-height:100%; max-width:100%; width:auto; object-fit:contain;
  filter:grayscale(1) opacity(0.75);
  transition:filter .35s ease;
}
.patro-card:hover img{filter:grayscale(0) opacity(1);}

/* ---------- LINHA DO TEMPO ---------- */
.timeline-wrap{background:var(--branco); overflow-x:auto;}
.timeline{
  display:flex; align-items:flex-start; position:relative; padding-top:30px; min-width:960px;
}
.timeline::before{
  content:""; position:absolute; top:9px; left:0; right:0; height:2px;
  background:linear-gradient(90deg, rgba(84,99,62,0.22), rgba(198,161,91,0.55));
}
.tl-item{flex:1; text-align:center; position:relative; padding:0 18px;}
.tl-badge{
  display:none; font-family:'Manrope'; font-size:10px; letter-spacing:0.14em; text-transform:uppercase; font-weight:700;
  color:var(--verde-escuro); background:linear-gradient(120deg, var(--dourado-vivo), var(--dourado-claro));
  border-radius:100px; padding:5px 14px; margin:0 auto 16px; width:fit-content;
}
.tl-item.current .tl-badge{display:block;}
.tl-dot{width:12px; height:12px; border-radius:50%; background:var(--branco); border:2px solid var(--dourado); margin:0 auto 22px; position:relative; z-index:2;}
.tl-item.current .tl-dot{
  width:16px; height:16px; background:var(--verde-vivo); border:2px solid var(--dourado-vivo);
  box-shadow:0 0 0 6px rgba(217,166,62,0.22);
}
.tl-thumb{
  width:64px; height:64px; border-radius:50%; margin:0 auto 18px; overflow:hidden;
  border:2px solid var(--dourado-suave); box-shadow:0 8px 20px rgba(10,42,30,0.15);
}
.tl-item.current .tl-thumb{
  width:104px; height:104px; border:3px solid var(--dourado-vivo);
  box-shadow:0 18px 40px rgba(10,42,30,0.3), 0 0 0 8px rgba(217,166,62,0.16);
}
.tl-thumb img{width:100%; height:100%; object-fit:cover;}
.tl-year{font-family:'Manrope'; font-size:26px; font-weight:800; color:var(--verde-escuro); margin-bottom:10px;}
.tl-item.current .tl-year{
  font-size:36px;
  background:linear-gradient(120deg, var(--dourado-vivo), var(--verde-vivo));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.tl-item p{font-size:13px; color:var(--texto-suave); font-weight:300; max-width:190px; margin:0 auto 14px;}
.tl-link{
  display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:600;
  letter-spacing:0.06em; text-transform:uppercase; color:var(--verde-vivo); transition:color .25s ease;
}
.tl-link svg{width:11px; height:11px; transition:transform .25s ease;}
.tl-link:hover{color:var(--dourado);}
.tl-link:hover svg{transform:translateX(3px);}
.tl-item.current .tl-link{color:var(--dourado-vivo);}

/* ---------- REVISTA (layout editorial) ---------- */
.revista{background:var(--creme);}
.revista-meta{
  display:flex; align-items:center; gap:14px; font-size:12px; letter-spacing:0.08em;
  color:var(--texto-suave); font-weight:500; margin-bottom:28px; text-transform:uppercase;
}
.revista-meta .dot{width:4px; height:4px; border-radius:50%; background:var(--verde-vivo);}
.revista-grid{display:grid; grid-template-columns:1fr 0.92fr; gap:80px; align-items:start;}
.revista-copy h2{font-size:36px; color:var(--verde-escuro); line-height:1.22; margin-bottom:24px; max-width:480px;}
.revista-copy p{color:var(--texto-suave); font-size:15px; font-weight:300; max-width:460px; margin-bottom:38px;}
.revista-buttons{display:flex; gap:16px; margin-bottom:64px;}
.btn-pill{
  display:inline-flex; align-items:center; gap:10px; padding:15px 28px; border-radius:100px;
  font-size:12.5px; font-weight:600; letter-spacing:0.03em; transition:all .3s ease; cursor:pointer;
}
.btn-pill-fill{background:var(--verde-escuro); color:var(--branco);}
.btn-pill-fill:hover{background:var(--verde-vivo);}
.btn-pill-outline{border:1px solid rgba(21,34,25,0.25); color:var(--texto);}
.btn-pill-outline:hover{border-color:var(--verde-vivo); color:var(--verde-vivo);}
.btn-pill svg{width:13px; height:13px;}
.teaser-row{display:grid; grid-template-columns:repeat(3,1fr); gap:44px; padding-top:54px; border-top:1px solid rgba(84,99,62,0.18);}
.teaser-card .teaser-tag{font-size:11px; letter-spacing:0.06em; text-transform:uppercase; color:var(--verde-vivo); font-weight:600; margin-bottom:10px;}
.teaser-card h4{font-size:15.5px; color:var(--verde-escuro); margin-bottom:8px; line-height:1.35;}
.teaser-card p{font-size:13px; color:var(--texto-suave); font-weight:300;}

.revista-cover{
  position:relative; border-radius:6px; overflow:hidden; aspect-ratio:3/4;
  box-shadow:26px 34px 60px rgba(10,42,30,0.22);
}
.revista-cover img{width:100%; height:100%; object-fit:cover;}
.revista-cover::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(8,26,18,0.15) 0%, rgba(6,18,13,0.15) 45%, rgba(5,16,11,0.92) 100%);
}
.revista-cover-content{position:absolute; inset:0; padding:36px; display:flex; flex-direction:column; justify-content:space-between; color:var(--branco);}
.revista-masthead{display:flex; align-items:center; gap:10px;}
.revista-masthead .selo{width:26px; height:26px;}
.revista-masthead span{font-family:'Manrope'; font-weight:800; font-size:15px; letter-spacing:0.04em;}
.revista-cover-bottom .num{font-size:11px; letter-spacing:0.18em; color:var(--dourado-claro); text-transform:uppercase; margin-bottom:10px;}
.revista-cover-bottom h3{font-size:22px; line-height:1.28; margin-bottom:14px; max-width:280px;}
.revista-cover-bottom p{font-size:12px; color:rgba(255,255,255,0.72); font-weight:300; letter-spacing:0.02em;}
.revista-badge{
  position:absolute; left:-24px; bottom:34px; background:var(--branco); border-radius:var(--radius);
  display:flex; align-items:center; gap:14px; padding:14px 20px 14px 14px; box-shadow:0 14px 40px rgba(10,42,30,0.22);
  max-width:230px;
}
.revista-badge img{width:48px; height:48px; border-radius:50%; object-fit:cover; flex-shrink:0;}
.revista-badge .name{font-size:12.5px; font-weight:700; color:var(--verde-escuro); line-height:1.3;}
.revista-badge .role{font-size:10px; color:var(--texto-suave); letter-spacing:0.02em; margin-top:3px; display:block;}

/* ---------- LIVRO ---------- */
.rv-grid, .lv-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:90px; align-items:center;}
.lv-grid{grid-template-columns:1.1fr 0.9fr;}
.mockup-3d{position:relative; display:flex; justify-content:center; perspective:1200px;}
.book{
  width:250px; height:370px; overflow:hidden;
  border-radius:2px 6px 6px 2px; box-shadow:26px 30px 60px rgba(10,42,30,0.3), inset -8px 0 0 rgba(0,0,0,0.18);
  transform:rotateY(14deg);
  border:1px solid var(--dourado-suave);
}
.book img{width:100%; height:100%; object-fit:cover;}
.text-block h2{font-size:34px; color:var(--verde-escuro); margin-bottom:22px; line-height:1.22;}
.text-block p{color:var(--texto-suave); font-size:15px; font-weight:300; margin-bottom:34px; max-width:460px;}

/* ---------- CTA FINAL ---------- */
.cta-final{
  background:linear-gradient(135deg, rgba(9,38,26,0.92), rgba(20,70,42,0.88)),
    var(--img-cta-final) center/cover fixed;
  text-align:center; padding:130px 0;
  position:relative; overflow:hidden;
}
.cta-final::before{
  content:""; position:absolute; width:640px; height:640px; border:1px solid rgba(198,161,91,0.18); border-radius:50%;
  top:50%; left:50%; transform:translate(-50%,-50%);
}
.cta-final::after{
  content:""; position:absolute; width:460px; height:460px; border:1px solid rgba(198,161,91,0.28); border-radius:50%;
  top:50%; left:50%; transform:translate(-50%,-50%);
}
.cta-final h2{color:var(--branco); font-size:42px; max-width:640px; margin:0 auto 20px; line-height:1.25; position:relative;}
.cta-subtitulo{color:rgba(255,255,255,0.72); font-size:15.5px; max-width:580px; margin:0 auto 42px; font-weight:300; position:relative;}
.cta-final .btn{position:relative;}
.cta-form{max-width:780px; margin:0 auto; position:relative;}
.cta-form-row{display:grid; grid-template-columns:1fr 1fr 1fr; gap:14px; margin-bottom:14px;}
.cta-form-row:last-of-type{grid-template-columns:1fr 1fr; margin-bottom:22px;}
.cta-form input,
.cta-form select{
  width:100%; padding:16px 18px; background:rgba(255,255,255,0.07);
  border:1px solid rgba(231,217,180,0.28); border-radius:var(--radius);
  color:var(--branco); font-family:'Inter', sans-serif; font-size:13.5px; font-weight:300;
  transition:border-color .3s ease, background .3s ease;
  -webkit-appearance:none; appearance:none;
}
.cta-form input::placeholder{color:rgba(255,255,255,0.5);}
.cta-form select{cursor:pointer;}
.cta-form select option{background:#0A2A1E; color:var(--branco);}
.cta-form input:focus,
.cta-form select:focus{outline:none; border-color:var(--dourado); background:rgba(255,255,255,0.11);}
.cta-form .btn{border:none;}

/* ---------- FOOTER ---------- */
footer{background:#07190F; color:rgba(255,255,255,0.72); padding:90px 0 30px;}
.foot-grid{display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:60px; padding-bottom:70px; border-bottom:1px solid rgba(231,217,180,0.12);}
.foot-brand .logo-text .top{color:var(--branco);}
.foot-brand p{font-size:13.5px; font-weight:300; margin-top:20px; max-width:280px; color:rgba(255,255,255,0.55);}
.foot-col h5{color:var(--dourado); font-size:11.5px; letter-spacing:0.16em; text-transform:uppercase; margin-bottom:22px; font-weight:600;}
.foot-col ul{list-style:none;}
.foot-col li{margin-bottom:13px; font-size:13.5px; font-weight:300;}
.foot-col a:hover{color:var(--dourado-claro);}
.foot-social{display:flex; gap:14px; margin-top:24px;}
.foot-social a{
  width:34px; height:34px; border:1px solid rgba(231,217,180,0.3); border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--dourado-claro);
}
.foot-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:30px; font-size:12px; font-weight:300; color:rgba(255,255,255,0.4);}

.reveal{opacity:0; transform:translateY(28px); transition:opacity .8s ease, transform .8s ease;}
.reveal.visible{opacity:1; transform:translateY(0);}

@media (max-width:1080px){
  .header-nav-row{display:none;}
  .hero-grid{grid-template-columns:1fr;}
  .ind-grid{grid-template-columns:repeat(2,1fr);}
  .ind-item{border-left:none; border-top:1px solid rgba(231,217,180,0.18); padding-top:26px;}
  .cat-grid{grid-template-columns:repeat(2,1fr);}
  .sobre-grid{flex-direction:column; gap:40px;}
  .sobre-left{flex:0 0 100%; max-width:100%; text-align:center;}
  .sobre-right{width:100%;}
  .reg-grid, .rv-grid, .lv-grid, .revista-grid{grid-template-columns:1fr; gap:50px;}
  .teaser-row{grid-template-columns:1fr; gap:30px;}
  .revista-badge{left:16px;}
  .pal-grid{grid-template-columns:repeat(3,1fr);}
  .patro-grid{grid-template-columns:repeat(3,1fr);}
  .foot-grid{grid-template-columns:1fr 1fr; gap:40px;}
  .hero h1{font-size:40px;}
  .cta-form-row{grid-template-columns:1fr;}
  .cta-form-row:last-of-type{grid-template-columns:1fr;}
}
