@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/archivo-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/archivo-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/archivo-latin-800-normal.woff2') format('woff2');}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/public-sans-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/public-sans-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/public-sans-latin-700-normal.woff2') format('woff2');}

/* ==========================================================================
   Ronaldo Fonseca — Senado · Distrito Federal
   Sistema visual "O Eixo"
   ========================================================================== */

:root{
  /* cor — extraída do material oficial em 00_material-oficial/artes */
  --azul:#002725;
  --azul-2:#0D474A;
  --azul-3:#1E403E;
  --ouro:#97C624;
  --ouro-esc:#526C11;
  --terra:#C05621;
  --papel:#F1F2EF;
  --papel-2:#E6E8E2;
  --tinta:#0B1F1B;
  --cinza:#5E6E68;
  --cinza-cl:#8FA39A;
  --ok:#17845F;
  --alerta:#C0392B;

  /* tipo */
  --display:"Archivo","Arial Narrow",Helvetica,sans-serif;
  --texto:"Public Sans",-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;

  /* medida */
  --maxw:1180px;
  --gut:24px;
  --r:4px;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}
  *{animation-duration:.01ms!important;transition-duration:.01ms!important;}}

body{
  margin:0;background:var(--papel);color:var(--tinta);
  font-family:var(--texto);font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;}
button{font:inherit;}
:focus-visible{outline:3px solid var(--ouro);outline-offset:3px;}

.container{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut);}
.pular{position:absolute;left:-9999px;}
.pular:focus{left:8px;top:8px;z-index:200;background:var(--ouro);color:var(--azul);padding:10px 16px;font-weight:700;}

/* ---------- tipografia ---------- */
h1,h2,h3,h4{font-family:var(--display);font-weight:800;letter-spacing:-.02em;margin:0;text-wrap:balance;line-height:1.06;}
h1{font-size:clamp(34px,5.4vw,62px);}
h2{font-size:clamp(28px,4vw,44px);}
h3{font-size:clamp(19px,2.1vw,23px);letter-spacing:-.01em;line-height:1.22;}
p{margin:0 0 1em;}
.lead{font-size:clamp(18px,2vw,21px);line-height:1.55;color:var(--cinza);max-width:62ch;}
.num{font-variant-numeric:tabular-nums;}

.etiqueta{
  font-family:var(--display);font-weight:700;font-size:12px;
  letter-spacing:.18em;text-transform:uppercase;color:var(--ouro-esc);
  display:flex;align-items:center;gap:10px;margin-bottom:14px;
}
.etiqueta::before{content:"";width:26px;height:2px;background:currentColor;}
.escuro .etiqueta{color:var(--ouro);}

/* ---------- topo ---------- */
.topo{
  position:sticky;top:0;z-index:100;background:rgba(0,39,37,.94);
  backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid rgba(151,198,36,.22);
}
.topo .container{display:flex;align-items:center;gap:18px;height:66px;}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;margin-right:auto;}
.marca .nome{font-family:var(--display);font-weight:800;font-size:17px;letter-spacing:-.01em;line-height:1;}
.marca .cargo{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--cinza-cl);margin-top:4px;}
.urna{
  font-family:var(--display);font-weight:800;font-size:19px;line-height:1;
  background:var(--ouro);color:var(--azul);padding:8px 10px;border-radius:var(--r);
  font-variant-numeric:tabular-nums;
}
.menu{display:flex;gap:26px;align-items:center;}
.menu a{color:#DCEAE0;text-decoration:none;font-size:14.5px;font-weight:600;}
.menu a:hover,.menu a[aria-current]{color:var(--ouro);}
.btn-menu{display:none;background:none;border:1px solid rgba(255,255,255,.3);color:#fff;
  padding:8px 12px;border-radius:var(--r);font-weight:700;font-size:14px;cursor:pointer;}
@media (max-width:960px){
  .menu{position:fixed;inset:66px 0 auto 0;background:var(--azul);flex-direction:column;
    align-items:stretch;gap:0;padding:8px 0 18px;border-bottom:1px solid rgba(151,198,36,.22);display:none;}
  .menu.aberto{display:flex;}
  .menu a{padding:13px var(--gut);border-top:1px solid rgba(255,255,255,.07);font-size:16px;}
  .btn-menu{display:block;}
}

/* ---------- botões ---------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;justify-content:center;
  font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.01em;
  padding:14px 22px;border-radius:var(--r);text-decoration:none;border:2px solid transparent;
  cursor:pointer;transition:transform .12s ease,background .15s ease,color .15s ease;
}
.btn:hover{transform:translateY(-1px);}
.btn-ouro{background:var(--ouro);color:var(--azul);position:relative;overflow:hidden;}
.btn-ouro:hover{background:#A7DC3E;}
.btn-ouro::before{content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.55) 48%,transparent 66%);
  transform:translateX(-120%);transition:transform .7s cubic-bezier(.22,1,.36,1);}
.btn-ouro:hover::before{transform:translateX(120%);}
@media (prefers-reduced-motion:reduce){.btn-ouro::before{display:none;}}
.btn-linha{border-color:currentColor;color:#fff;background:transparent;}
.escuro .btn-linha:hover{background:rgba(255,255,255,.08);}
.claro .btn-linha{color:var(--azul);}
.claro .btn-linha:hover{background:rgba(0,39,37,.06);}
.btn-bloco{width:100%;}

/* ---------- faixas ---------- */
.faixa{padding:clamp(56px,7vw,96px) 0;position:relative;}
.escuro{background:var(--azul);color:#E7F0EA;}
.escuro h1,.escuro h2,.escuro h3{color:#fff;}
.escuro .lead{color:#A8C2B8;}
.claro{background:var(--papel);}
.claro-2{background:var(--papel-2);}

/* textura de grão cinematográfico: quebra o "gradiente digital perfeito"
   sem custo de imagem — um SVG de ruído embutido, opacidade quase nula. */
.grao{position:relative;isolation:isolate;}
.grao::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  opacity:.045;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* gradiente "aurora" animado — profundidade nas faixas escuras sem foto de fundo */
.aurora{
  background:
    radial-gradient(60% 50% at 15% 10%,rgba(151,198,36,.16) 0%,transparent 60%),
    radial-gradient(50% 60% at 90% 25%,rgba(47,122,92,.35) 0%,transparent 65%),
    radial-gradient(70% 60% at 50% 100%,rgba(13,71,74,.5) 0%,transparent 70%),
    var(--azul);
  background-size:160% 160%;
  animation:aurora-shift 24s ease-in-out infinite alternate;
}
@keyframes aurora-shift{
  0%{background-position:0% 0%,100% 0%,50% 100%,0 0;}
  100%{background-position:10% 10%,90% 15%,45% 90%,0 0;}
}
@media (prefers-reduced-motion:reduce){.aurora{animation:none;}}

/* eixo lateral com numeração */
.eixo{position:relative;}
.eixo::before{
  content:attr(data-eixo);position:absolute;left:-58px;top:6px;
  font-family:var(--display);font-weight:800;font-size:13px;color:var(--ouro-esc);
  letter-spacing:.1em;font-variant-numeric:tabular-nums;
}
.eixo::after{content:"";position:absolute;left:-40px;top:26px;bottom:0;width:2px;background:linear-gradient(var(--ouro),transparent);}
.escuro .eixo::before{color:var(--ouro);}
@media (max-width:1320px){.eixo::before,.eixo::after{display:none;}}

/* ---------- hero ---------- */
.hero{
  background:var(--azul);color:#fff;position:relative;overflow:hidden;
  padding:clamp(40px,6vw,72px) 0 0;
}
.hero .bg{
  position:absolute;inset:0;background-size:cover;background-position:center 30%;
  opacity:.20;filter:saturate(.5);
}
.hero .veu{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,39,37,.86) 0%,rgba(0,39,37,.72) 45%,rgba(0,39,37,.98) 100%);}
.hero .container{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;
  gap:40px;align-items:end;}
.hero-txt{padding-bottom:clamp(36px,5vw,64px);}
.hero-kicker{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:22px;}
.hero-kicker .tag{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--ouro);}
.hero h1{margin-bottom:20px;}
.hero h1 .quebra{display:block;}
.hero h1 em{font-style:normal;color:var(--ouro);}
.hero .lead{color:#BFDCC9;margin-bottom:28px;}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;}
.hero-fig{position:relative;align-self:end;min-height:1px;}
.hero-fig img{
  width:100%;max-width:460px;margin:0 0 0 auto;display:block;
  filter:drop-shadow(0 28px 60px rgba(0,0,0,.55));
}
@media (max-width:900px){
  .hero{padding-top:18px;}
  .hero .container{grid-template-columns:1fr;gap:4px;}
  .hero-fig{order:-1;align-self:center;margin-bottom:6px;}
  .hero-fig img{max-width:min(440px,88vw);margin:0 auto;}
  .hero-kicker{margin-bottom:16px;}
  .hero-txt{padding-bottom:44px;}
}

/* barra da chapa */
/* barra da chapa — letreiro em movimento contínuo, sem fim visível */
.chapa{background:var(--azul-2);border-top:1px solid rgba(255,255,255,.08);
  position:relative;z-index:2;overflow:hidden;}
.chapa-trilho{display:flex;width:max-content;animation:chapa-rola 28s linear infinite;}
.chapa-trilho:hover,.chapa-trilho:focus-within{animation-play-state:paused;}
.chapa-grupo{display:flex;flex:none;}
.chapa .item{display:flex;align-items:center;gap:16px;padding:18px 36px;flex:none;}
.chapa img{width:72px;height:72px;object-fit:cover;object-position:top center;
  border-radius:50%;background:var(--azul-3);border:2px solid rgba(151,198,36,.35);flex:none;}
.chapa .n{font-family:var(--display);font-weight:800;font-size:17px;color:#fff;
  line-height:1.2;white-space:nowrap;}
.chapa .c{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ouro);white-space:nowrap;}
@keyframes chapa-rola{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion:reduce){.chapa-trilho{animation:none;}}
@media (max-width:640px){
  .chapa img{width:84px;height:84px;}
  .chapa .n{font-size:19px;}
  .chapa .c{font-size:12.5px;}
  .chapa .item{padding:16px 26px;gap:14px;}
}

/* ---------- números ---------- */
.numeros{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;background:rgba(255,255,255,.14);}
.numeros div{background:var(--azul);padding:26px 22px;}
.numeros b{display:block;font-family:var(--display);font-weight:800;font-size:44px;line-height:1;
  color:var(--ouro);font-variant-numeric:tabular-nums;margin-bottom:8px;}
.numeros span{font-size:14.5px;color:#A8C2B8;line-height:1.35;display:block;}

/* ---------- grades ---------- */
.grade-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(24px,4vw,56px);align-items:start;}
.grade-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;}

/* cartões de compromisso */
.compromissos{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1px;
  background:var(--papel-2);border:1px solid var(--papel-2);margin-top:40px;}
.compromisso{background:var(--papel);padding:30px 28px;display:flex;flex-direction:column;gap:12px;
  transition:background .15s ease;}
.compromisso:hover{background:#fff;}
.compromisso .n{font-family:var(--display);font-weight:800;font-size:12px;letter-spacing:.14em;color:var(--ouro-esc);}
.compromisso p{margin:0;font-size:16px;color:var(--cinza);}

/* trajetória */
.linha{border-left:2px solid var(--papel-2);margin-top:36px;}
.linha article{padding:0 0 30px 26px;position:relative;}
.linha article::before{content:"";position:absolute;left:-7px;top:7px;width:12px;height:12px;
  border-radius:50%;background:var(--ouro);border:2px solid var(--papel);}
.linha .ano{font-family:var(--display);font-weight:800;font-size:13px;letter-spacing:.12em;
  color:var(--ouro-esc);display:block;margin-bottom:4px;font-variant-numeric:tabular-nums;}
.linha p{margin:6px 0 0;color:var(--cinza);font-size:16px;}

/* galeria */
.galeria{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:36px;}
.galeria figure{margin:0;position:relative;overflow:hidden;background:var(--azul-2);}
.galeria img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .4s ease;}
.galeria figure:hover img{transform:scale(1.04);}
.galeria figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 10px;color:#fff;font-size:12.5px;
  background:linear-gradient(transparent,rgba(0,39,37,.92));}
.galeria figcaption b{display:block;font-family:var(--display);font-size:14px;}
.galeria figcaption span{color:var(--cinza-cl);font-size:11px;}

/* ---------- vídeo de apresentação ---------- */
.video-wrap{position:relative;padding-top:56.25%;background:var(--azul-2);
  border:1px solid rgba(255,255,255,.12);margin-top:32px;}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

/* ---------- depoimentos ---------- */
.depoimentos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:30px;}
.depoimento{background:#fff;border:1px solid var(--papel-2);padding:28px;display:flex;flex-direction:column;gap:16px;}
.depoimento .aspas{font-family:var(--display);font-weight:800;font-size:40px;line-height:1;color:var(--ouro-esc);}
.depoimento .fala{margin:0;font-size:16.5px;color:var(--tinta);flex:1;}
.depoimento .quem{display:flex;align-items:center;gap:12px;}
.depoimento .quem .ini{width:40px;height:40px;border-radius:50%;background:var(--ouro);color:var(--azul);
  display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:13px;flex:none;}
.depoimento .quem b{display:block;font-size:14px;}
.depoimento .quem span{display:block;font-size:12.5px;color:var(--cinza);}

/* ---------- mapa ---------- */
.mapa-wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:36px;align-items:start;margin-top:40px;}
@media (max-width:900px){.mapa-wrap{grid-template-columns:1fr;}}
.mapa-caixa{background:var(--azul-2);border:1px solid rgba(255,255,255,.1);padding:10px;position:relative;}
#mapa{width:100%;height:auto;display:block;touch-action:manipulation;}
#mapa path{fill:var(--azul-3);stroke:var(--azul);stroke-width:.6;cursor:pointer;transition:fill .12s ease;}
#mapa path:hover{fill:#2F7A5C;}
#mapa path.sel{fill:var(--ouro);stroke:#fff;stroke-width:1;}
.mapa-info{display:flex;flex-direction:column;gap:18px;}
.busca{position:relative;}
.busca input{width:100%;padding:14px 16px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);
  color:#fff;font:inherit;font-size:16px;border-radius:var(--r);}
.busca input::placeholder{color:#7E9A8A;}
.sugestoes{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--azul-2);
  border:1px solid rgba(255,255,255,.18);max-height:260px;overflow:auto;z-index:20;display:none;}
.sugestoes.on{display:block;}
.sugestoes button{display:block;width:100%;text-align:left;background:none;border:0;color:#DCEAE0;
  padding:11px 14px;cursor:pointer;font-size:15px;}
.sugestoes button:hover,.sugestoes button:focus{background:var(--azul-3);color:#fff;}
.ra-card{background:var(--azul-2);border:1px solid rgba(151,198,36,.3);padding:26px;}
.ra-card .rot{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ouro);}
.ra-card h3{margin:6px 0 14px;font-size:30px;color:#fff;}
.ra-card .pop{font-family:var(--display);font-weight:800;font-size:34px;color:var(--ouro);
  font-variant-numeric:tabular-nums;line-height:1;}
.ra-card .pop small{display:block;font-family:var(--texto);font-weight:400;font-size:13px;
  color:#A8C2B8;letter-spacing:0;margin-top:6px;}
.ra-card .btn{margin-top:20px;}
.fonte{font-size:12.5px;color:var(--cinza-cl);margin-top:16px;}

/* ---------- gerador ---------- */
.gerador{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;margin-top:40px;}
@media (max-width:860px){.gerador{grid-template-columns:1fr;}}
.passos{display:flex;flex-direction:column;gap:22px;}
.passo{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:start;}
.passo .b{width:34px;height:34px;border-radius:50%;background:var(--ouro);color:var(--azul);
  display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:14px;}
.passo h4{font-size:16px;margin-bottom:4px;}
.passo small{color:var(--cinza);font-size:13.5px;}
.molduras{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap;}
.molduras button{width:64px;height:64px;border-radius:var(--r);border:3px solid transparent;cursor:pointer;}
.molduras button[aria-pressed="true"]{border-color:var(--ouro);}
.m-escura{background:linear-gradient(135deg,#002725,#1E403E);}
.m-lima{background:linear-gradient(135deg,#97C624,#526C11);}
.m-clara{background:linear-gradient(135deg,#FFFFFF,#E6E8E2);border-color:rgba(0,0,0,.12);}
.previa{background:var(--azul-2);border:1px solid rgba(255,255,255,.12);padding:16px;}
#canvas{width:100%;aspect-ratio:1;background:var(--azul);display:block;border-radius:2px;}
.privacidade-nota{font-size:12.5px;color:var(--cinza-cl);margin-top:12px;}

/* ---------- formulários ---------- */
.form{display:flex;flex-direction:column;gap:14px;max-width:520px;}
.campo{display:flex;flex-direction:column;gap:6px;}
.campo label{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--cinza);}
.escuro .campo label{color:#A8C2B8;}
.campo input,.campo select,.campo textarea{
  padding:13px 14px;border:1px solid var(--papel-2);background:#fff;color:var(--tinta);
  font:inherit;font-size:16px;border-radius:var(--r);width:100%;}
.escuro .campo input,.escuro .campo select,.escuro .campo textarea{
  background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.2);color:#fff;}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--cinza);}
.escuro .consent{color:#A8C2B8;}
.consent input{margin-top:4px;}
.hp{position:absolute!important;left:-9999px!important;}
.aviso{padding:14px 16px;border-radius:var(--r);font-size:14.5px;display:none;}
.aviso.on{display:block;}
.aviso.ok{background:rgba(23,132,95,.14);border:1px solid var(--ok);color:#0B5F44;}
.escuro .aviso.ok{color:#7FE3BE;}
.aviso.err{background:rgba(192,57,43,.12);border:1px solid var(--alerta);color:#9B2B20;}
.escuro .aviso.err{color:#FF9F96;}

/* ---------- listas / caixas ---------- */
.caixa{background:#fff;border:1px solid var(--papel-2);padding:28px;}
.escuro .caixa{background:var(--azul-2);border-color:rgba(255,255,255,.12);}
.pend{border-left:3px solid var(--terra);background:rgba(192,86,33,.07);padding:16px 18px;font-size:14.5px;
  color:#8A3C15;border-radius:0 var(--r) var(--r) 0;margin:14px 0;}
.escuro .pend{color:#F0A87C;background:rgba(192,86,33,.14);}
.pend b{font-family:var(--display);}

/* marca leve de exemplo/placeholder: * (preencher com dado real) */
.aviso-exemplo{color:var(--terra);font-size:13px;font-style:italic;margin:8px 0 0;}
.escuro .aviso-exemplo{color:#F0A87C;}
.aviso-exemplo em{font-style:italic;}

/* acordeão */
.acc{border-top:1px solid var(--papel-2);}
.acc details{border-bottom:1px solid var(--papel-2);}
.acc summary{cursor:pointer;padding:20px 0;font-family:var(--display);font-weight:700;font-size:18px;
  list-style:none;display:flex;gap:14px;align-items:flex-start;}
.acc summary::-webkit-details-marker{display:none;}
.acc summary::after{content:"+";margin-left:auto;color:var(--ouro-esc);font-size:22px;line-height:1;}
.acc details[open] summary::after{content:"–";}
.acc .r{padding:0 0 22px 0;color:var(--cinza);max-width:70ch;}

/* notícias */
.noticias{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:36px;}
.noticia{background:#fff;border:1px solid var(--papel-2);padding:24px;display:flex;flex-direction:column;gap:10px;}
.noticia .meta{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ouro-esc);}
.noticia h3{font-size:18px;}
.noticia p{margin:0;font-size:15px;color:var(--cinza);}
.noticia a{margin-top:auto;font-weight:700;font-size:14px;color:var(--azul-3);text-decoration:none;}
.noticia a:hover{text-decoration:underline;}

/* agenda */
.agenda-item{display:grid;grid-template-columns:88px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--papel-2);}
.agenda-item .data{font-family:var(--display);font-weight:800;text-align:center;background:var(--azul);
  color:#fff;padding:10px 6px;border-radius:var(--r);height:fit-content;}
.agenda-item .data b{display:block;font-size:26px;line-height:1;}
.agenda-item .data span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ouro);}
.agenda-item h3{font-size:19px;}
.agenda-item p{margin:4px 0 0;color:var(--cinza);font-size:15px;}

/* três caminhos */
.caminhos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:40px;}
.caminho{background:var(--azul-2);border:1px solid rgba(255,255,255,.12);padding:28px;
  display:flex;flex-direction:column;gap:12px;border-top:3px solid var(--ouro);}
.caminho h3{font-size:21px;}
.caminho p{color:#A8C2B8;font-size:15.5px;margin:0;}
.caminho .btn{margin-top:auto;}

/* ---------- rodapé ---------- */
.rodape{background:var(--tinta);color:#8FA39A;padding:56px 0 28px;font-size:14.5px;}
.rodape a{color:#C9DED0;text-decoration:none;}
.rodape a:hover{color:var(--ouro);text-decoration:underline;}
.rodape-grade{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px;padding-bottom:36px;
  border-bottom:1px solid rgba(255,255,255,.1);}
@media (max-width:820px){.rodape-grade{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.rodape-grade{grid-template-columns:1fr;}}
.rodape h4{color:#fff;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;}
.rodape ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;}
.redes{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;}
.redes a{width:38px;height:38px;border:1px solid rgba(255,255,255,.2);border-radius:var(--r);
  display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:13px;color:#C9DED0;}
.redes a:hover{border-color:var(--ouro);color:var(--ouro);text-decoration:none;}
.legal{padding-top:24px;font-size:12.5px;line-height:1.7;color:#63807A;}

/* revelar ao rolar */
.rev{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease;}
.rev.on{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.rev{opacity:1;transform:none;}}

/* revelação em coreografia: cada filho direto entra com um leve atraso —
   "motion como comunicação", não decoração solta. Combina com .rev no pai. */
.rev-grupo>*{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease;}
.rev-grupo.on>*{opacity:1;transform:none;}
.rev-grupo.on>*:nth-child(1){transition-delay:.04s;}
.rev-grupo.on>*:nth-child(2){transition-delay:.09s;}
.rev-grupo.on>*:nth-child(3){transition-delay:.14s;}
.rev-grupo.on>*:nth-child(4){transition-delay:.19s;}
.rev-grupo.on>*:nth-child(5){transition-delay:.24s;}
.rev-grupo.on>*:nth-child(6){transition-delay:.29s;}
@media (prefers-reduced-motion:reduce){.rev-grupo>*{opacity:1;transform:none;transition-delay:0s!important;}}

/* levantar sutil no hover — cartões ganham presença sem exagero */
.compromisso,.caixa,.depoimento,.noticia,.caminho{transition:transform .2s ease,box-shadow .2s ease,background .15s ease;}
.compromisso:hover,.caixa:hover,.depoimento:hover,.noticia:hover,.caminho:hover{
  transform:translateY(-3px);box-shadow:0 14px 32px -18px rgba(0,39,37,.35);
}
.escuro .caixa:hover,.escuro .caminho:hover{box-shadow:0 14px 32px -18px rgba(0,0,0,.5);}
@media (prefers-reduced-motion:reduce){
  .compromisso,.caixa,.depoimento,.noticia,.caminho{transition:none;}
  .compromisso:hover,.caixa:hover,.depoimento:hover,.noticia:hover,.caminho:hover{transform:none;}
}
