/* =========================================================
   ABPO — Pantanal Sustentável
   Ajustes de marca sobre o template base
   Paleta:
   petróleo #00687D | verde #00A651 | azul #02AEEF
   amarelo #FEED00  | laranja #F99E1A
   ========================================================= */

:root{
  --abpo-petroleo:#00687D;
  --abpo-petroleo-esc:#004F5F;
  --abpo-verde:#00A651;
  --abpo-azul:#02AEEF;
  --abpo-amarelo:#FEED00;
  --abpo-laranja:#F99E1A;
  --abpo-cinza:#5B6770;
}

/* ---------- Logo ---------- */
.navbar-brand > img.default-logo{ max-height:52px; width:auto; }
.site-footer .footer-logo img{ max-height:64px; width:auto; }
.hidden-sidebar .sidebar-content > a > img{ max-height:56px; width:auto; }

/* ---------- Slider ---------- */
.slider-home-one .carousel-caption .content h3{
  font-size:54px; line-height:1.15; text-shadow:0 2px 18px rgba(0,0,0,.35);
}
.slider-home-one .carousel-caption .content h3 span{ color:var(--abpo-amarelo); }
.slider-home-one .carousel-caption .content p{
  font-size:19px; text-shadow:0 1px 10px rgba(0,0,0,.35);
}
.slider-home-one .item::before{
  content:''; position:absolute; top:0; left:0; right:0; bottom:0;
  background:linear-gradient(90deg, rgba(0,104,125,.78) 0%, rgba(0,104,125,.35) 60%, rgba(0,0,0,.15) 100%);
}
.banner-btn{ background:var(--abpo-verde); border-color:var(--abpo-verde); }
.banner-btn.style-two{ background:transparent; border:2px solid #fff; }
.banner-btn.style-two:hover{ background:#fff; color:var(--abpo-petroleo); }

/* ---------- Faixa de onda (identidade ABPO) ---------- */
.abpo-wave{ display:block; width:100%; height:auto; margin-bottom:-6px; }

/* ---------- Títulos de seção ---------- */
.sec-title span, .tag-line, .blog-title span{
  color:var(--abpo-verde) !important; letter-spacing:.06em; text-transform:uppercase;
}
.sec-title h3, .about-content .title-text, .blog-title h3{ color:var(--abpo-petroleo); }

/* ---------- Cards Missão / Visão / Valores ---------- */
.abpo-mvv .single-feature-style-three{
  background:#fff; border-radius:10px; padding:42px 30px;
  box-shadow:0 10px 34px rgba(0,80,96,.10);
  height:100%; transition:transform .3s ease, box-shadow .3s ease;
}
.abpo-mvv .single-feature-style-three:hover{
  transform:translateY(-6px); box-shadow:0 16px 42px rgba(0,80,96,.16);
}
.abpo-mvv .icon-box i{ font-size:46px; }
.abpo-mvv .m i{ color:var(--abpo-verde); }
.abpo-mvv .v i{ color:var(--abpo-azul); }
.abpo-mvv .a i{ color:var(--abpo-laranja); }
.abpo-mvv h3{ color:var(--abpo-petroleo); margin:22px 0 14px; font-size:22px; }
.abpo-mvv p{ color:var(--abpo-cinza); }
.abpo-valores{ list-style:none; padding:0; margin:14px 0 0; text-align:left; }
.abpo-valores li{
  position:relative; padding-left:26px; margin-bottom:9px;
  color:var(--abpo-cinza); font-size:15px;
}
.abpo-valores li::before{
  content:'\f00c'; font-family:'Font Awesome 5 Free'; font-weight:900; position:absolute; left:0; top:1px;
  color:var(--abpo-verde); font-size:13px;
}

/* ---------- Protocolo ---------- */
.abpo-protocolo{ background:var(--abpo-petroleo); color:#fff; }
.abpo-protocolo .sec-title span{ color:var(--abpo-amarelo) !important; }
.abpo-protocolo .sec-title h3,
.abpo-protocolo .abpo-pilar h4{ color:#fff; }
.abpo-protocolo .sec-title p,
.abpo-protocolo .abpo-pilar p{ color:rgba(255,255,255,.82); }
.abpo-pilar{ padding:26px 18px; }
.abpo-pilar .num{
  display:inline-block; width:56px; height:56px; line-height:56px; border-radius:50%;
  background:rgba(255,255,255,.12); color:var(--abpo-amarelo);
  font-size:20px; font-weight:700; margin-bottom:20px;
}
.abpo-pilar h4{ font-size:20px; margin-bottom:12px; }
.abpo-btn{
  display:inline-block; background:var(--abpo-verde); color:#fff;
  padding:14px 38px; border-radius:30px; font-weight:600; letter-spacing:.02em;
  transition:background .3s ease, transform .3s ease;
}
.abpo-btn:hover{ background:var(--abpo-amarelo); color:var(--abpo-petroleo); transform:translateY(-2px); }
.abpo-btn.outline{ background:transparent; border:2px solid var(--abpo-petroleo); color:var(--abpo-petroleo); }
.abpo-btn.outline:hover{ background:var(--abpo-petroleo); color:#fff; }

/* ---------- Números ---------- */
.funfact-style-one{ position:relative; }
.funfact-style-one::before{ background:rgba(0,104,125,.88); }
.abpo-numeros .single-fun-fact .icon-box i{ color:var(--abpo-amarelo); }
.abpo-numeros .single-fun-fact h3{ color:#fff; font-size:44px; }
.abpo-numeros .single-fun-fact p{ color:rgba(255,255,255,.85); }
.abpo-nota{
  margin-top:34px; font-size:13px; color:rgba(255,255,255,.65);
  max-width:760px; margin-left:auto; margin-right:auto;
}

/* ---------- Notícias ---------- */
.single-blog-style-one .categroy{ background:var(--abpo-verde); }
.single-blog-style-one h3{ color:var(--abpo-petroleo); }
.single-blog-style-one .read-more{ color:var(--abpo-azul); }

/* ---------- Parceiros ---------- */
.abpo-parceiros{ background:#F4F7F8; padding:64px 0; }
.abpo-parceiros .item{
  text-align:center; color:var(--abpo-petroleo);
  font-size:17px; font-weight:600; letter-spacing:.02em; opacity:.75;
}
.abpo-parceiros .item:hover{ opacity:1; }

/* ---------- Contato ---------- */
.contact-style-one{ background:#fff; }
.contact-content h3{ color:var(--abpo-petroleo); line-height:1.35; }
.contact-info p span{ color:var(--abpo-verde); font-weight:600; }
.contact-form button{ background:var(--abpo-verde); }
.contact-form button:hover{ background:var(--abpo-petroleo); }
.abpo-zap{ color:var(--abpo-verde); font-weight:600; }

/* ---------- Rodapé ---------- */
.site-footer{ background:var(--abpo-petroleo); }
.site-footer .social a{ color:#fff; }
.site-footer .social a:hover{ color:var(--abpo-amarelo); }
.site-footer .copy-text{ color:rgba(255,255,255,.7); }

/* ---------- Responsivo ---------- */
@media (max-width:991px){
  .slider-home-one .carousel-caption .content h3{ font-size:36px; }
  .slider-home-one .carousel-caption .content p{ font-size:16px; }
}
@media (max-width:767px){
  .slider-home-one .carousel-caption .content h3{ font-size:27px; }
  .abpo-mvv .single-feature-style-three{ margin-bottom:26px; }
  .abpo-numeros .single-fun-fact{ display:block; margin-bottom:34px; }
}

/* =========================================================
   Correções de especificidade e tipografia
   ========================================================= */

/* Tipografia: Heebo quando disponível, sans-serif como fallback */
body, p, a, li, span, div, input, textarea, button,
h1, h2, h3, h4, h5, h6,
.sec-title h3, .about-content .title-text, .blog-title h3,
.slider-home-one .content h3, .funfact-style-one h3{
  font-family:'Heebo','Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
}

/* Botões do slider */
.slider-home-one .content a.banner-btn{
  background:var(--abpo-verde); border:2px solid var(--abpo-verde); color:#fff;
}
.slider-home-one .content a.banner-btn:hover{
  background:var(--abpo-amarelo); border-color:var(--abpo-amarelo); color:var(--abpo-petroleo);
}
.slider-home-one .content a.banner-btn.style-two{
  background:transparent; border:2px solid #fff; color:#fff;
}
.slider-home-one .content a.banner-btn.style-two:hover{
  background:#fff; border-color:#fff; color:var(--abpo-petroleo);
}

/* Quem somos */
.about-style-one .about-content p{ margin-bottom:18px; line-height:1.8; }
.about-style-one .about-content .title-text{ margin-bottom:24px; font-size:40px; line-height:1.2; }
.about-style-one .about-img img{ width:100%; height:auto; border-radius:10px; }

/* Missão / Visão / Valores — cards de altura igual */
.abpo-mvv .row{ display:flex; flex-wrap:wrap; }
.abpo-mvv .row > [class*='col-']{ display:flex; margin-bottom:26px; }
.abpo-mvv .single-feature-style-three{ width:100%; }
.abpo-mvv .sec-title h3{ font-size:38px; }
.abpo-mvv .single-feature-style-three h3{ font-size:24px; font-weight:600; }
.abpo-mvv .single-feature-style-three p{ line-height:1.75; }
/* remove o tracejado decorativo entre ícones do template */
.abpo-mvv .single-feature-style-three .icon-box::before,
.abpo-mvv .single-feature-style-three .icon-box::after{ display:none !important; }

/* Protocolo */
.abpo-protocolo .sec-title h3{ font-size:40px; margin-bottom:18px; }
.abpo-protocolo .sec-title p{ max-width:860px; margin:0 auto; line-height:1.8; }

/* Números */
.abpo-numeros h3{ color:#fff; }
.abpo-numeros .tag-line{ color:var(--abpo-amarelo) !important; }

/* (logo único em negativo — regras de troca removidas) */

/* =========================================================
   Ajustes finais
   ========================================================= */

/* Missão / Visão / Valores — cores dos títulos e ícones */
.abpo-mvv .single-feature-style-three h3{ color:var(--abpo-petroleo) !important; }
.abpo-mvv .single-feature-style-three .icon-box i{ color:var(--abpo-azul); }
.abpo-mvv .m .icon-box i{ color:var(--abpo-verde) !important; }
.abpo-mvv .v .icon-box i{ color:var(--abpo-azul) !important; }
.abpo-mvv .a .icon-box i{ color:var(--abpo-laranja) !important; }

/* Quem somos — imagem ocupando a coluna */
.about-style-one .about-img{ height:100%; }
.about-style-one .about-img img{ object-fit:cover; min-height:480px; }

/* ---------- Números ---------- */
.abpo-numeros{
  position:relative; background-size:cover; background-position:center center;
  padding:100px 0 90px; color:#fff;
}
.abpo-numeros::before{
  content:''; position:absolute; inset:0; background:rgba(0,88,106,.86);
}
.abpo-numeros .container{ position:relative; z-index:2; }
.abpo-numeros-head{ margin-bottom:56px; }
.abpo-numeros-head .tag-line{
  display:block; color:var(--abpo-amarelo) !important;
  letter-spacing:.08em; text-transform:uppercase; margin-bottom:14px; font-size:14px;
}
.abpo-numeros-head h3{ color:#fff; font-size:38px; line-height:1.3; font-weight:400; margin:0; }
.abpo-num{ text-align:center; padding:0 14px; }
.abpo-num i{ font-size:44px; color:var(--abpo-amarelo); display:block; margin-bottom:18px; }
.abpo-num h4{
  color:#fff; font-size:50px; font-weight:700; margin:0 0 10px; line-height:1;
}
.abpo-num p{ color:rgba(255,255,255,.85); font-size:16px; line-height:1.6; margin:0; }
.abpo-numeros .abpo-nota{
  margin:52px auto 0; text-align:center; font-size:13px;
  color:rgba(255,255,255,.6); max-width:780px;
}

/* ---------- Notícias ---------- */
.blog-style-one .blog-title h3{ font-size:38px; line-height:1.2; margin-bottom:26px; }
.single-blog-style-one h3{ font-size:21px; line-height:1.4; }
.single-blog-style-one .date{ color:var(--abpo-cinza); font-size:13px; }

/* ---------- Contato ---------- */
.contact-style-one .contact-content h3{ color:var(--abpo-petroleo) !important; font-size:32px; }
.contact-style-one .contact-form button{
  background:var(--abpo-verde) !important; border-color:var(--abpo-verde) !important;
}
.contact-style-one .contact-form button:hover{
  background:var(--abpo-petroleo) !important; border-color:var(--abpo-petroleo) !important;
}

/* ---------- Rodapé ---------- */
.site-footer .social a{
  background:rgba(255,255,255,.14) !important; color:#fff !important;
}
.site-footer .social a:hover{
  background:var(--abpo-amarelo) !important; color:var(--abpo-petroleo) !important;
}

@media (max-width:767px){
  .abpo-num{ margin-bottom:44px; }
  .abpo-numeros-head h3{ font-size:26px; }
  .about-style-one .about-img img{ min-height:260px; }
}

/* =========================================================
   Ajustes de alinhamento — revisão 2
   ========================================================= */

/* Quem Somos: texto e imagem alinhados na mesma linha */
.abpo-sobre-row{ display:flex; flex-wrap:wrap; align-items:center; }
.abpo-sobre-row > [class*='col-']{ display:flex; }
.abpo-sobre-row .about-content{ width:100%; }
.abpo-sobre-row .about-img{ width:100%; display:flex; align-items:center; }
.about-style-one .about-content .tag-line{ margin-top:0; }
.about-style-one .about-img img{ min-height:0; height:auto; }

/* Números: bloco inteiro centralizado */
.abpo-numeros-head{ text-align:center; }
.abpo-numeros-head h3{ margin-left:auto; margin-right:auto; }

@media (max-width:991px){
  .abpo-sobre-row{ display:block; }
  .abpo-sobre-row > [class*='col-']{ display:block; }
  .abpo-sobre-row .about-img{ margin-top:34px; }
}

/* =========================================================
   Cabeçalho — revisão 3
   Logo em negativo no topo e no menu fixo, tamanho controlado
   ========================================================= */

.header-navigation .container .navbar-brand{
  padding-top:18px; padding-bottom:18px; height:auto;
}
.header-navigation .container .navbar-brand img{
  height:50px; width:auto; max-width:100%; display:block;
}

/* Menu fixo na rolagem: faixa petróleo, logo menor */
.header-navigation.stricky-fixed{
  background:var(--abpo-petroleo) !important;
  box-shadow:0 2px 14px rgba(0,0,0,.18) !important;
}
.header-navigation.stricky-fixed .container .navbar-brand{
  padding-top:12px; padding-bottom:12px;
}
.header-navigation.stricky-fixed .container .navbar-brand img{ height:40px; }
.header-navigation.stricky-fixed ul.navigation-box > li{
  padding-top:22px; padding-bottom:22px;
}

/* Botão do menu lateral */
.right-side-box .sidemenu-btn{ color:#fff; }

/* ---------- Menu no mobile ---------- */
.navbar-toggle{
  border:1px solid rgba(255,255,255,.5); border-radius:4px;
  margin-top:24px; margin-right:0; padding:8px 10px;
}
.navbar-toggle .icon-bar{ background:#fff; }
.stricky-fixed .navbar-toggle{ margin-top:16px; }

@media (max-width:991px){
  .header-navigation .container .navbar-brand img{ height:42px; }
  .header-navigation.stricky-fixed .container .navbar-brand img{ height:36px; }
  .main-navigation.navbar-collapse{
    background:var(--abpo-petroleo); border-radius:6px;
    padding:10px 0; margin-top:6px; max-height:75vh; overflow-y:auto;
  }
  .main-navigation ul.navigation-box{ float:none; width:100%; border:none; }
  .main-navigation ul.navigation-box > li{
    display:block; float:none; padding:0 !important; text-align:left;
  }
  .main-navigation ul.navigation-box > li > a{
    display:block; padding:13px 22px !important; color:#fff;
    border-bottom:1px solid rgba(255,255,255,.12);
  }
  .main-navigation ul.navigation-box > li:last-child > a{ border-bottom:none; }
  .main-navigation ul.navigation-box > li > a:hover{ color:var(--abpo-amarelo); }
  .right-side-box{ display:none; }
}

@media (max-width:575px){
  .header-navigation .container .navbar-brand img{ height:36px; }
  .slider-home-one .carousel-caption .content h3{ font-size:24px; }
  .slider-home-one .content a.banner-btn{ display:block; margin:0 auto 12px; max-width:250px; }
  .abpo-num h4{ font-size:40px; }
  .contact-style-one .contact-content h3{ font-size:24px; }
}

/* Nada estoura a largura da tela */
html, body{ overflow-x:hidden; }
img{ max-width:100%; }

/* Item ativo do menu: sem bloco colorido, apenas destaque no texto */
.main-navigation ul.navigation-box > li.current > a,
.main-navigation ul.navigation-box > li.active > a{
  background:transparent !important; color:var(--abpo-azul);
}
.header-navigation.stricky-fixed ul.navigation-box > li.current > a,
.header-navigation.stricky-fixed ul.navigation-box > li.active > a{
  color:var(--abpo-amarelo);
}
@media (max-width:991px){
  .main-navigation ul.navigation-box > li.current > a,
  .main-navigation ul.navigation-box > li.active > a{
    background:rgba(255,255,255,.10) !important; color:var(--abpo-amarelo) !important;
  }
}

/* =========================================================
   Layout — revisão 4
   ========================================================= */

/* Quem Somos: imagem à esquerda, texto à direita */
.abpo-sobre-row{ flex-direction:row-reverse; }

/* Contato: endereço e formulário alinhados pelo topo */
.abpo-contato-row{ display:flex; flex-wrap:wrap; align-items:flex-start; }
.contact-style-one .contact-content{ padding-top:0; margin-top:0; }
.contact-style-one .contact-content h3{ margin-top:0; }
.contact-style-one .contact-form{ margin-top:0; }

@media (max-width:991px){
  .abpo-sobre-row{ flex-direction:column; }
  .abpo-contato-row{ display:block; }
  .contact-style-one .contact-form{ margin-top:34px; }
}

/* Botão do menu no mobile: sempre à direita, alinhado ao logo */
@media (max-width:991px){
}

/* Ordem no mobile: logo à esquerda, botão à direita */
@media (max-width:991px){
  .navbar-toggle .icon-bar{ background-color:#fff !important; }
  .navbar-toggle:hover .icon-bar,
  .navbar-toggle:focus .icon-bar{ background-color:var(--abpo-amarelo) !important; }
  .navbar-toggle:hover, .navbar-toggle:focus{ background:rgba(255,255,255,.08); }
}

/* Neutraliza a centralização do logo herdada do responsive.css do template */
@media (max-width:991px){
  .header-navigation .container .navbar-header .navbar-brand{
    text-align:left; flex:0 0 auto; display:block;
  }
  .header-navigation .container .navbar-header .navbar-brand > img{
    margin-left:0; margin-right:0;
  }
  .header-navigation .container .navbar-header{ padding-left:0; padding-right:0; }
}

/* O template posiciona o botão do menu em absolute; devolve ele ao fluxo */
@media (max-width:991px){
  .header-navigation .container .navbar-header .navbar-toggle{
    position:static; left:auto; right:auto; top:auto;
  }
}

/* ---------- Cabeçalho no mobile: logo à esquerda, botão à direita ---------- */
@media (max-width:991px){
  .header-navigation .container .navbar-header{
    display:block; position:relative; float:none;
    width:100%; padding-left:0; padding-right:0;
  }
  .header-navigation .container .navbar-header .navbar-brand{
    float:left; display:block; text-align:left; margin:0;
  }
  .header-navigation .container .navbar-header .navbar-brand > img{
    margin-left:0; margin-right:0;
  }
  .header-navigation .container .navbar-header .navbar-toggle{
    position:absolute; right:0; left:auto; top:50%;
    transform:translateY(-50%); float:none; margin:0;
  }
}

/* =========================================================
   PÁGINAS INTERNAS
   ========================================================= */

/* ---------- Topo com imagem de fundo ---------- */
.abpo-hero{
  position:relative; background-size:cover; background-position:center center;
  padding:190px 0 110px; text-align:center; color:#fff;
}
.abpo-hero::before{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(0,60,74,.72) 0%, rgba(0,88,108,.62) 100%);
}
.abpo-hero .container{ position:relative; z-index:2; }
.abpo-hero h1{
  color:#fff; font-size:46px; line-height:1.2; font-weight:700; margin:0 0 16px;
}
.abpo-hero p.sub{
  color:rgba(255,255,255,.88); font-size:18px; max-width:760px; margin:0 auto 22px;
}
.abpo-breadcrumb{ list-style:none; padding:0; margin:0; font-size:14px; }
.abpo-breadcrumb li{ display:inline-block; color:rgba(255,255,255,.75); }
.abpo-breadcrumb li + li::before{ content:'/'; margin:0 10px; color:rgba(255,255,255,.45); }
.abpo-breadcrumb a{ color:#fff; }
.abpo-breadcrumb a:hover{ color:var(--abpo-amarelo); }

/* ---------- Blocos de texto ---------- */
.abpo-conteudo{ padding:90px 0; }
.abpo-conteudo p{ line-height:1.85; margin-bottom:20px; color:var(--abpo-cinza); }
.abpo-conteudo h2{
  color:var(--abpo-petroleo); font-size:32px; line-height:1.3;
  margin:0 0 22px; font-weight:600;
}
.abpo-conteudo h3{
  color:var(--abpo-petroleo); font-size:22px; margin:34px 0 14px; font-weight:600;
}
.abpo-conteudo img{ border-radius:10px; }
.abpo-lead{ font-size:19px; color:var(--abpo-petroleo); line-height:1.75; }

.abpo-lista{ list-style:none; padding:0; margin:0 0 24px; }
.abpo-lista li{
  position:relative; padding-left:30px; margin-bottom:14px;
  color:var(--abpo-cinza); line-height:1.7;
}
.abpo-lista li::before{
  content:'\f058'; font-family:'Font Awesome 5 Free'; font-weight:900; position:absolute; left:0; top:2px;
  color:var(--abpo-verde); font-size:16px;
}

/* ---------- Etapas numeradas ---------- */
.abpo-etapa{
  background:#fff; border-radius:10px; padding:34px 28px; height:100%;
  box-shadow:0 10px 30px rgba(0,80,96,.09); margin-bottom:26px;
}
.abpo-etapa .num{
  display:inline-block; width:46px; height:46px; line-height:46px; text-align:center;
  border-radius:50%; background:var(--abpo-verde); color:#fff; font-weight:700; margin-bottom:18px;
}
.abpo-etapa h4{ color:var(--abpo-petroleo); font-size:19px; margin:0 0 12px; font-weight:600; }
.abpo-etapa p{ color:var(--abpo-cinza); line-height:1.7; margin:0; font-size:15px; }

/* ---------- Chamada final ---------- */
.abpo-cta{ background:var(--abpo-petroleo); padding:74px 0; text-align:center; color:#fff; }
.abpo-cta h3{ color:#fff; font-size:32px; margin:0 0 14px; font-weight:600; }
.abpo-cta p{ color:rgba(255,255,255,.85); max-width:660px; margin:0 auto 30px; line-height:1.75; }

/* ---------- Notícias: listagem ---------- */
.abpo-noticia-card{
  background:#fff; border-radius:10px; overflow:hidden; margin-bottom:30px;
  box-shadow:0 10px 30px rgba(0,80,96,.09);
  transition:transform .3s ease, box-shadow .3s ease; height:100%;
}
.abpo-noticia-card:hover{ transform:translateY(-6px); box-shadow:0 16px 40px rgba(0,80,96,.15); }
.abpo-noticia-card .capa{ display:block; height:200px; background-size:cover; background-position:center; }
.abpo-noticia-card .texto{ padding:26px 24px 30px; }
.abpo-noticia-card .tag{
  display:inline-block; background:var(--abpo-verde); color:#fff;
  font-size:12px; padding:5px 13px; border-radius:20px; margin-bottom:14px;
  text-transform:uppercase; letter-spacing:.04em;
}
.abpo-noticia-card h3{ font-size:19px; line-height:1.4; margin:0 0 10px; }
.abpo-noticia-card h3 a{ color:var(--abpo-petroleo); }
.abpo-noticia-card h3 a:hover{ color:var(--abpo-verde); }
.abpo-noticia-card .data{ display:block; font-size:13px; color:#8A959C; margin-bottom:12px; }
.abpo-noticia-card p{ color:var(--abpo-cinza); font-size:15px; line-height:1.7; margin:0 0 16px; }
.abpo-noticia-card .ler{ color:var(--abpo-azul); font-weight:600; font-size:14px; }
.abpo-noticia-card .ler:hover{ color:var(--abpo-petroleo); }

.abpo-paginacao{ text-align:center; margin-top:16px; }
.abpo-paginacao a, .abpo-paginacao span{
  display:inline-block; min-width:42px; height:42px; line-height:42px; margin:0 4px;
  border-radius:6px; background:#fff; color:var(--abpo-petroleo); font-weight:600;
  box-shadow:0 4px 14px rgba(0,80,96,.10); padding:0 12px;
}
.abpo-paginacao .atual, .abpo-paginacao a:hover{ background:var(--abpo-petroleo); color:#fff; }

/* ---------- Notícia interna ---------- */
.abpo-artigo .meta{
  font-size:14px; color:#8A959C; margin-bottom:26px;
  padding-bottom:20px; border-bottom:1px solid #E6EBED;
}
.abpo-artigo .meta span + span::before{ content:'•'; margin:0 10px; color:#C6D0D4; }
.abpo-artigo figure{ margin:0 0 30px; }
.abpo-artigo figure img{ width:100%; border-radius:10px; }
.abpo-artigo figcaption{ font-size:13px; color:#8A959C; margin-top:10px; }
.abpo-artigo blockquote{
  border:none; border-left:4px solid var(--abpo-verde);
  background:#F4F8F9; padding:22px 26px; margin:30px 0; border-radius:0 8px 8px 0;
}
.abpo-artigo blockquote p{ margin:0; font-size:17px; color:var(--abpo-petroleo); font-style:italic; }
.abpo-compartilhar{ margin-top:38px; padding-top:26px; border-top:1px solid #E6EBED; }
.abpo-compartilhar span{ color:var(--abpo-petroleo); font-weight:600; margin-right:12px; }
.abpo-compartilhar a{
  display:inline-block; width:38px; height:38px; line-height:38px; text-align:center;
  border-radius:50%; background:#EDF2F4; color:var(--abpo-petroleo); margin-right:6px;
}
.abpo-compartilhar a:hover{ background:var(--abpo-verde); color:#fff; }

/* Barra lateral */
.abpo-sidebar{ background:#F4F8F9; border-radius:10px; padding:28px 26px; margin-bottom:26px; }
.abpo-sidebar h4{
  color:var(--abpo-petroleo); font-size:18px; margin:0 0 18px; font-weight:600;
  padding-bottom:12px; border-bottom:2px solid var(--abpo-verde); display:inline-block;
}
.abpo-sidebar ul{ list-style:none; padding:0; margin:0; }
.abpo-sidebar li{ padding:10px 0; border-bottom:1px solid #E1E9EB; }
.abpo-sidebar li:last-child{ border-bottom:none; }
.abpo-sidebar a{ color:var(--abpo-cinza); font-size:15px; line-height:1.55; }
.abpo-sidebar a:hover{ color:var(--abpo-verde); }

/* ---------- Downloads ---------- */
.abpo-filtros{
  background:#fff; border-radius:10px; padding:24px;
  box-shadow:0 10px 30px rgba(0,80,96,.09); margin-bottom:34px;
}
.abpo-busca{ position:relative; margin-bottom:18px; }
.abpo-busca input{
  width:100%; height:52px; border:1px solid #DCE5E8; border-radius:8px;
  padding:0 50px 0 18px; font-size:15px; color:var(--abpo-cinza); background:#FAFCFC;
}
.abpo-busca input:focus{ outline:none; border-color:var(--abpo-verde); background:#fff; }
.abpo-busca i{ position:absolute; right:18px; top:18px; color:#9FAFB5; }
.abpo-categorias{ list-style:none; padding:0; margin:0; }
.abpo-categorias li{ display:inline-block; margin:0 8px 8px 0; }
.abpo-categorias button{
  border:1px solid #DCE5E8; background:#fff; color:var(--abpo-cinza);
  padding:8px 18px; border-radius:20px; font-size:14px; cursor:pointer;
  transition:all .25s ease;
}
.abpo-categorias button:hover{ border-color:var(--abpo-verde); color:var(--abpo-verde); }
.abpo-categorias button.ativo{
  background:var(--abpo-petroleo); border-color:var(--abpo-petroleo); color:#fff;
}

.abpo-arquivo{
  display:flex; align-items:center; gap:22px; background:#fff; border-radius:10px;
  padding:22px 26px; margin-bottom:16px; box-shadow:0 6px 22px rgba(0,80,96,.07);
  transition:transform .25s ease, box-shadow .25s ease;
}
.abpo-arquivo:hover{ transform:translateY(-3px); box-shadow:0 12px 32px rgba(0,80,96,.13); }
.abpo-arquivo .icone{
  flex:0 0 56px; width:56px; height:56px; border-radius:10px;
  background:#FDEEEE; color:#D0342C; display:flex; align-items:center; justify-content:center;
  font-size:24px;
}
.abpo-arquivo .info{ flex:1 1 auto; min-width:0; }
.abpo-arquivo h4{ color:var(--abpo-petroleo); font-size:17px; margin:0 0 6px; font-weight:600; }
.abpo-arquivo p{ color:var(--abpo-cinza); font-size:14px; margin:0 0 8px; line-height:1.6; }
.abpo-arquivo .detalhes{ font-size:13px; color:#8A959C; }
.abpo-arquivo .detalhes span + span::before{ content:'•'; margin:0 8px; color:#C6D0D4; }
.abpo-arquivo .baixar{
  flex:0 0 auto; background:var(--abpo-verde); color:#fff; padding:11px 24px;
  border-radius:24px; font-size:14px; font-weight:600; white-space:nowrap;
}
.abpo-arquivo .baixar:hover{ background:var(--abpo-petroleo); color:#fff; }
.abpo-vazio{
  display:none; text-align:center; padding:50px 20px; color:#8A959C;
  background:#fff; border-radius:10px;
}

/* ---------- Contato ---------- */
.abpo-contato-card{
  background:#fff; border-radius:10px; padding:32px 26px; text-align:center;
  box-shadow:0 10px 30px rgba(0,80,96,.09); margin-bottom:26px; height:100%;
}
.abpo-contato-card i{ font-size:32px; color:var(--abpo-verde); margin-bottom:16px; display:block; }
.abpo-contato-card h4{ color:var(--abpo-petroleo); font-size:17px; margin:0 0 10px; font-weight:600; }
.abpo-contato-card p, .abpo-contato-card a{ color:var(--abpo-cinza); font-size:15px; line-height:1.7; margin:0; }
.abpo-contato-card a:hover{ color:var(--abpo-verde); }
.abpo-mapa{ line-height:0; }
.abpo-mapa iframe{ width:100%; height:420px; border:0; display:block; }

/* ---------- Responsivo das internas ---------- */
@media (max-width:991px){
  .abpo-hero{ padding:150px 0 80px; }
  .abpo-hero h1{ font-size:34px; }
  .abpo-conteudo{ padding:60px 0; }
  .abpo-conteudo h2{ font-size:26px; }
}
@media (max-width:575px){
  .abpo-hero{ padding:130px 0 60px; }
  .abpo-hero h1{ font-size:26px; }
  .abpo-hero p.sub{ font-size:16px; }
  .abpo-arquivo{ flex-wrap:wrap; gap:16px; }
  .abpo-arquivo .baixar{ width:100%; text-align:center; }
  .abpo-mapa iframe{ height:300px; }
}

/* Colunas de cards com a mesma altura nas páginas internas */
.abpo-conteudo > .container > .row{ display:flex; flex-wrap:wrap; }
.abpo-conteudo > .container > .row > [class*='col-']{ display:flex; flex-direction:column; }
.abpo-conteudo > .container > .row > [class*='col-'] > *{ width:100%; }
.abpo-conteudo > .container > .row > [class*='col-'] > .abpo-etapa,
.abpo-conteudo > .container > .row > [class*='col-'] > .abpo-contato-card,
.abpo-conteudo > .container > .row > [class*='col-'] > .abpo-noticia-card{ height:auto; }

@media (max-width:767px){
  .abpo-conteudo > .container > .row{ display:block; }
  .abpo-conteudo > .container > .row > [class*='col-']{ display:block; }
}

/* Grade de números com duas linhas: respiro entre elas */
.abpo-numeros .row{ display:flex; flex-wrap:wrap; }
.abpo-numeros .row > [class*='col-']{ display:flex; }
.abpo-num{ width:100%; margin-bottom:46px; }
.abpo-numeros .row > [class*='col-']:nth-last-child(-n+3) .abpo-num{ margin-bottom:0; }
@media (max-width:767px){
  .abpo-numeros .row{ display:block; }
  .abpo-numeros .row > [class*='col-']{ display:block; }
  .abpo-num{ margin-bottom:40px; }
}

/* Cards preenchem a altura da coluna, deixando a linha pareja */
.abpo-conteudo > .container > .row > [class*='col-'] > .abpo-etapa,
.abpo-conteudo > .container > .row > [class*='col-'] > .abpo-contato-card,
.abpo-conteudo > .container > .row > [class*='col-'] > .abpo-noticia-card{ flex:1 1 auto; }

/* =========================================================
   Seção do Protocolo na home: fundo branco, número grande
   ========================================================= */
.abpo-protocolo-claro{ background:#fff; }
.abpo-protocolo-claro .sec-title span{ color:var(--abpo-verde) !important; }
.abpo-protocolo-claro .sec-title h3{ color:var(--abpo-petroleo); font-size:40px; margin-bottom:18px; }
.abpo-protocolo-claro .sec-title p{
  color:var(--abpo-cinza); max-width:860px; margin:0 auto; line-height:1.8;
}

.abpo-destaque{ text-align:center; padding:26px 18px 0; }
.abpo-destaque .valor{
  display:block; font-size:78px; line-height:1; font-weight:700;
  color:var(--abpo-verde); margin-bottom:16px; letter-spacing:-.02em;
}
.abpo-destaque h4{
  color:var(--abpo-petroleo); font-size:21px; font-weight:600; margin:0 0 12px;
}
.abpo-destaque p{ color:var(--abpo-cinza); line-height:1.75; margin:0; font-size:15px; }

/* Duas colunas: o texto fica centralizado dentro de cada metade */
.abpo-destaques-dois .abpo-destaque{ max-width:420px; margin:0 auto; }

/* Números maiores nas duas seções */
.abpo-num h4{ font-size:64px; letter-spacing:-.02em; }

@media (max-width:991px){
  .abpo-destaque .valor{ font-size:62px; }
  .abpo-num h4{ font-size:52px; }
}
@media (max-width:575px){
  .abpo-destaque{ padding-top:14px; margin-bottom:30px; }
  .abpo-destaque .valor{ font-size:54px; }
  .abpo-num h4{ font-size:46px; }
}

/* =========================================================
   Faixa de parceiros: logos deslizando sem parar
   ========================================================= */
.abpo-parceiros{ overflow:hidden; }

.abpo-esteira{
  display:flex; width:max-content;
  animation:abpo-desliza 34s linear infinite;
}
.abpo-esteira:hover{ animation-play-state:paused; }

@keyframes abpo-desliza{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}

.abpo-logos{
  display:flex; flex-wrap:nowrap; align-items:center;
  gap:0 72px; margin:0; padding:0 36px; list-style:none;
}
.abpo-logos li{
  display:flex; align-items:center; justify-content:center;
  height:78px; flex:0 0 auto;
}
.abpo-logos img{
  max-height:64px; max-width:210px; width:auto; height:auto; display:block;
  opacity:.92;
}

/* Quem prefere menos movimento vê a faixa parada */
@media (prefers-reduced-motion: reduce){
  .abpo-esteira{ animation:none; }
}

@media (max-width:767px){
  .abpo-logos{ gap:0 44px; padding:0 22px; }
  .abpo-logos li{ height:58px; }
  .abpo-logos img{ max-height:50px; max-width:150px; }
  .abpo-esteira{ animation-duration:26s; }
}
}
