/* ==========================================================================
   SBF 2016 — tema reformulado
   Cores extraídas do logotipo: verde #13661f / amarelo #fbba00
   ========================================================================== */
:root {
  --sbf-verde: #13661f;
  --sbf-verde-escuro: #0c4a15;
  --sbf-verde-profundo: #08330e;
  --sbf-verde-claro: #e8f3ea;
  --sbf-amarelo: #fbba00;
  --sbf-amarelo-escuro: #d99f00;
  --sbf-amarelo-claro: #fff6d9;
  --sbf-texto: #1f2a22;
  --sbf-texto-suave: #5b6b5f;
  --sbf-borda: #e3e9e4;
  --sbf-fundo: #f6f8f6;
  --sbf-branco: #ffffff;
  --sbf-raio: 14px;
  --sbf-raio-sm: 8px;
  --sbf-sombra: 0 1px 2px rgba(8, 51, 14, .06), 0 8px 24px rgba(8, 51, 14, .08);
  --sbf-sombra-hover: 0 2px 4px rgba(8, 51, 14, .08), 0 16px 40px rgba(8, 51, 14, .14);
  --sbf-fonte: 'Open Sans', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  --sbf-fonte-titulo: 'Montserrat', 'Open Sans', system-ui, sans-serif;
  --sbf-transicao: .2s ease;
}

/* Base ------------------------------------------------------------------ */
html { scroll-behavior: smooth; }
body {
  font-family: var(--sbf-fonte);
  font-size: 15px;
  line-height: 1.65;
  color: var(--sbf-texto);
  background: var(--sbf-branco);
  -webkit-font-smoothing: antialiased;
}
ul { list-style: none; padding: 0; margin: 0; }
a { color: var(--sbf-verde); text-decoration: none; transition: color var(--sbf-transicao); }
a:hover, a:focus { color: var(--sbf-verde-escuro); text-decoration: none; }
a:focus-visible, button:focus-visible { outline: 3px solid var(--sbf-amarelo); outline-offset: 2px; }
h1, h2, h3, h4, h5, h6 { margin: 0; font-family: var(--sbf-fonte-titulo); font-weight: 700; color: var(--sbf-texto); line-height: 1.25; }
p { line-height: 1.7; }
img { max-width: 100%; height: auto; }
::selection { background: var(--sbf-amarelo); color: var(--sbf-verde-profundo); }

/* ==========================================================================
   Legado (congresso, feira, palestrantes, vídeos, comentários, WP core)
   ========================================================================== */
a.x-15{
  font-size: 15px
}
a.x-18{
  font-size: 18px
}
a.x-20{
  font-size: 20px
}
a.x-25{
  font-size: 25px
}
.clear {clear:both; line-height:0 !important; height:0 !important;}
.linha{border-bottom: 1px solid #ccc; height: 1px; display: block;}
ul#menu-topo li {
    display: inline;
}
.item-header-peritos {
    background: #3C3C3C;
    color: #EAEAE9;
}
.capa-congresso {width: 100%; position: relative; height: 237px;}
.capa-feira {width: 100%; position: relative; height: 494px;}
body.post-type-archive-feira > header#topo>.barratop{
    background-color: #6CB9B3 !important;
}
.single-restrito a.open-stande {
    float: left;
}
.content-cota {
    position: relative;
}

a.action-content-conta {
    background: var(--sbf-verde);
    text-align: center;
    width: 100px;
    margin: 0 auto;
    display: block;
    color: #fff;
    padding: 5px;
}
a.action-content-conta:hover, a.action-content-conta:focus, a.action-content-conta:active{
  text-decoration:none
}
.modal-lg { text-align: center; }

.modal-lg img{
    max-width:100%;
    height:auto;
}
h3.title-restrict {
    margin-bottom: 15px;
    background: #E6E6E6;
    padding: 5px;
}
.congresso-bar-nav {
    background-color: #E7E7E7;
    border-top:6px solid #529197;
    margin-top:-6px;
    position: relative;
}
.logo-congresso {
  margin-top: 41px;
}
.float-right-top-congresso{
  margin-top:100px;
}
.bnt-green-insc a{
  background: var(--sbf-verde);
  padding: 15px 10px;
  border-bottom: 3px solid #446442;
  color:#fff;
  font-size: 18px;
  text-decoration: none;
  -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    transition: all 0.3s linear;
  margin: 0 auto;
}
.bnt-green-insc a:hover{
  background: #FF3D3D;
  border-bottom: 3px solid #812A2A;
}
.btn-inscreva-se-bar-congresso{
  margin-right:-15px;
}
.btn-inscreva-se-bar-congresso a{
  padding: 15px;
  display: block;
  background-color: #FF3D3D;
  color: #fff;
  -webkit-transition: all 0.5s linear;
  -moz-transition: all 0.5s linear;
  -o-transition: all 0.5s linear;
  transition: all 0.5s linear;
}
.btn-inscreva-se-bar-congresso a:hover{
  background-color: #DD6969;
}
.home-congresso{
  margin-top: 50px;
}
.box-congress img{
  float: left;
  margin-right: 15px;
}
.box-congress h3{
    margin-bottom: 10px;
   font-weight: 600;
}
.box-congress span.load-more{
  display: block;
}
span.load-more a{
  color:#508D97;
  font-weight: 600;
}
span.load-more i {
  font-size: 11px;
}
a.link-programas{
  margin: 8px 0;
    display: block;
    color: #508D97;
}
.margin-top{
  margin-top: 90px;
}
.margin-top-15{
  margin-top: 15px;
}
.link-temas-home{
  display: block;
  margin-bottom: 10px;
}
.link-temas-home a{
  color:#508D97;
  font-weight: 600;
  margin-right: 20px;
}
a.link-btn{
  color:#fff !important;
}
h3.localizacao, h3.video{
  margin-bottom: 20px;
}
.margin-bottom{
  margin-bottom: 40px
}
.menuprincipal a{color: var(--sbf-verde)}
.navbar{margin-bottom: 0}
.menuprincipal .dropdown-menu{box-shadow: none;  border: 1px solid #E6E6E6;}
.infvitrine{position: relative; }
.infovitrine{/*position: absolute;*/   /*top: -79px;*/ background: #e8e8e8; border-top:4px solid #faba00}
.infovitrine .col-md-5{padding: 15px 0px 15px 40px; border-right: 1px solid #cccccc;}
.infovitrine h3{font-size:21px !important }
.infovitrine .col-md-5 span{font-size: 16px; color: #777777}
.infovitrine .col-md-1{text-align: center; padding: 15px 0px 15px 0px; border-left:1px solid #ccc; border-right: 1px solid #ccc }
.infovitrine .bi-chevron-right{font-size: 40px; color: #d7d4d4; }
.infovitrine a.link-congress:hover > i.bi-chevron-right  {
    color: #FABA00 !important;
}
.box-feira-presidente {
    padding-top: 15px;
    /* border-bottom: 1px solid #ddd; */
    /* margin-top: 20px; */
    margin-bottom: 20px;
}
.box-feira-presidente article{
   margin-top:15px;
}
header.container.video-single {
    padding: 15px 0;
}
section.video-detalhes {
    background: #666;
    padding-bottom: 0;
}
.container.content-video {
    text-align: center;
    padding:0;
}
.container.content-video iframe {
    margin-bottom:-4px;
}
.social-shared {
    padding-top: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #ddd;
}
.lista-videos iframe {
    width: 100%;
    height: auto;
}
.lista-videos h2.title {
    font-size: 15px;
}

/*
====RELATED
*/
.related h2 {
    border: 1px solid #ddd;
    padding: 5px 8px 6px;
}
.related ul {
    border-style: solid;
    border-color: #ddd;
    border-width: 0 1px 1px;
}
.related ul {
    border-style: solid;
    border-color: #ddd;
    border-width: 0 1px 1px;
}

.related ul li {
    padding: 10px;
}
.related ul li+li{
    border-top:1px solid #ddd
}
.related ul li a{
    font-size:18px;
    font-weight: 500;
}
.infovitrine .lkprogra{padding: 23px 0px 23px 0px; text-align: center; border-right: 1px solid #ccc}
.infovitrine .lkprogra a{font-size: 20px}
.infovitrine .col-md-4{text-align: center;padding: 15px 0px 0px 0px;}
.lkprogra a:hover{color: #697355;}

.sobre-home{padding: 20px; border: 1px solid #e8e8e8; border-top: 0}
.sobre-home h2{font-size: 21px; color: #444444; margin-bottom: 15px; margin-top: 10px}
.sobre-home p{line-height: 25px; font-size: 15px; color: #777777}
img.imagem-100-porcento{width: 100%; height: auto}
.captcha-newlatter img {
    margin-top: 15px;
}
.prev{display: none;position: absolute;left: 20px;top: 48%;font-size: 35px;font-weight: 300;color: rgba(255, 255, 255, 0.80);cursor: pointer; text-shadow: 0 0px 7px #000; }
.prev:hover{color: #fff;text-shadow: 0 0px 7px #000;}
.next:hover{color: #fff;text-shadow: 0 0px 7px #000;}
.next{display: none;position: absolute;right: 20px;top: 48%;font-size: 35px;font-weight: 300;color: rgba(255, 255, 255, 0.80);cursor: pointer;text-shadow: 0 0px 7px #000;}

.inscricoes p {
  margin-bottom: 15px;
  line-height: 22px;
}
.post-blogs{
  margin-bottom: 30px;
}
article.post-blogs a{
  display: inline-block;
}
aside.text-blog>span{
  display: block;
}
header.col-md-12.header-blog h2 {
    margin-bottom: 28px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 15px;
}
a.header-list {
    background-color: var(--sbf-verde);
    color: #fff;
    font-size: 18px;
}
a.header-list:hover {
  background-color: var(--sbf-verde-escuro);
  color: #fff;
}
header.text-blog {
    margin-bottom: 15px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
}

header.text-blog > span {
    margin-top: 12px;
    display: block;
}
.box-palestrante {
    width: 300px;
    margin-bottom: 15px;
}
article.palestrante{
  margin-bottom: 20px;
}
article.palestrante img{
  width:100% !important;
  height:auto;
}
.linkwrap { position:relative; display:inline-block; }
.blocker { position:absolute; height:100%; width:100%; z-index:1;}
.linkwrap iframe { z-index: 2; }
.lightbox-conferencista{background: rgba(255, 255, 255, 0.94); z-index: 999; top: 50%; margin-top: 0;  max-width: 90%;/* margin-left: -500px; */left: 0;right: 0;padding: 0;/* overflow: auto; */}
.lightbox-conferencista .infoinsta{/* color: #fff; */ /* padding: 0px 30px 30px 15px */}
.lightbox-conferencista .infoinsta span{display: block; color: rgb(0, 0, 0); margin-top: 10px}
/* btn-close desenha o X com background-image: só a cor de fundo muda; filter deixa o X branco. */
.lightbox-conferencista .btn-close{ padding: 14px; background-color: var(--sbf-verde); filter: invert(1) grayscale(1) brightness(2); border-radius: 0; position: absolute; right: 0; opacity: 1; z-index: 1;}
.lightbox-conferencias{/* height: 288px; */ overflow: auto;margin-top: 15px;/* font-size: 24px !important; */}
.lightbox-conferencias h4{margin-bottom: 10px; color: #7B6652}
.lightbox-conferencias div small{font-size: 15px; font-weight: 400;color: #5F5F5F;}
.lightbox-conferencias div{margin-bottom: 10px; padding-bottom: 10px; border-bottom: 1px solid rgba(134, 134, 134, 0.39); font-weight: 300}
#mask{width: 100%;height:100%; /* top: 50%; */left:0;bottom:0;right:0;background: rgba(0 , 0, 0, 0.8);z-index: 90;}
.info-palestrante {
    width: 100%;
    overflow: hidden;
    padding: 15px;
}
.col-md-9.about-conferencias {
    background-color: #fff;
    padding-top: 15px;
}
.img-palestrante {
    background: #404040;
    /* padding: 1px; */
}
.info-palestrante img {
    max-width: 100%;
}
.description-palestrante {
    border-top: 1px solid #ccc;
    padding-top: 20px;
}
#conferencias, #profile{
  padding-top: 12px;
}
span.name-palestrante {
    text-transform: uppercase;
    margin-top: -5px;
    display: block;
    font-size: 14px;
    text-align: center;
    font-weight: 600;
    background-color: var(--sbf-verde);
    color: #fff;
    padding: 10px 0;
}
@media (min-width: 760px){
  .menu-row{padding-right: 0;}
  #mask{position: fixed;}
  .box-palestrante.palestrante-right {
    float: right;
  }
  span.link-temas-home a {
      display: initial;
  }
  .lightbox-conferencista{position: fixed; }
  nav.collapse.main-manu-sbf {
    padding-right: 0;
  }
  ul#menu-topo li>a {
      margin-left: 0;
  }

  ul#menu-topo li+li>a {
      margin-left: 20px;
  }
  .content-feira {
      margin-top: 30px;
  }
  .feira-info { margin-bottom: 50px;padding-top: 25px;border-top: 1px solid #ddd;}
}
a.open-stande {
    position: relative;
}

/*a.open-stande:before {
    content: "\e003";
    position: absolute;
    top:50%;
    left:50%;
    width:20px;
    height:20px;
    margin-left:-10px;
    background: rgba(0, 0, 0, 0.49);
    text-align:center;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    color: #fff;
    border-radius: 2px;
}*/
li.menu-restrito {
    background: #ECECEC;
}
/* =WordPress Core
-------------------------------------------------------------- */
.alignnone{ margin:5px 20px 20px 0}
.aligncenter, div.aligncenter{ display:block;  margin:5px auto 5px auto}
.alignright{ float:right;  margin:5px 0 20px 20px}
.alignleft{ float:left;  margin:5px 20px 20px 0}
.aligncenter{ display:block;  margin:5px auto 5px auto}
a img.alignright,a img.alignnone,a img.alignleft, a img.aligncenter{max-width: 98.5%;height: auto;}
a img.alignright{ float:right;  margin:5px 0 20px 20px; border:1px solid #ccc; padding:4px;}
a img.alignnone{ margin:5px 20px 20px 0; border:1px solid #ccc; padding:4px;}
a img.alignleft{ float:left;  margin:5px 20px 20px 0; border:1px solid #ccc; padding:4px;}
a img.aligncenter{ display:block;  margin-left:auto;  margin-right:auto; /* border:1px solid #ccc; */ padding:4px;}
/*.wp-caption{ background:#fff;  border:1px solid #f0f0f0;  max-width:640px; padding:5px 3px 10px;  text-align:left}*/
.wp-caption{ background: #fff; border: 1px solid #f0f0f0; max-width: 96%; /* Image does not overflow the content area */  padding: 5px 3px 10px;   text-align: center;}
.wp-caption.alignnone{ margin:5px 20px 20px 0}
.wp-caption.alignleft{ margin:5px 20px 20px 0}
.wp-caption.alignright{ margin:5px 0 20px 20px}
.wp-caption img{ border:0 none;  height:auto;  margin:0;  max-width: 98.5%;  padding:0;  width:auto}
.wp-caption p.wp-caption-text{ font-size:11px;  line-height:17px;  margin:0;  padding:0 4px 5px}

/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

article.post-blogs h1 {
    margin-bottom: 20px;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar. */
}

.chamada-congresso>.list-group-item {
    border: 0;
    border-bottom: 1px solid #DDD;
}
.pagination>li>a,.pagination>li>span {position: relative;float: left;padding: 6px 12px;line-height: 1.42857143;text-decoration: none; color: var(--sbf-verde); background-color: #fff; border: 1px solid #ddd; margin-left: -1px}
ul.pagination li span.current {z-index: 2; color:#fff; background-color: var(--sbf-verde); border-color: var(--sbf-verde); cursor: default; height: 34px;}
.pagination>li>a:hover{color:#666;}

#commentform{margin-bottom:30px}
#commentform label.error{color:#666; font-size: 12px; background: #EB7569 !important;font-weight: normal;}
#commentform input.error, textarea.error{border: 1px solid rgb(236, 95, 80) !important}
#commentform input[type="text"],#commentform textarea{width:100%;height:50px;padding:10px 15px;border:1px solid #ddd;border-radius:3px;margin-bottom:15px;transition:.2s border ease}
#commentform textarea{height:120px;line-height:1.5em}
#subscribe input[type="email"]:focus,#commentform input[type="text"]:focus,#commentform textarea:focus{outline:none}
input[type="submit"]{display:inline-block;height:50px;padding:10px 15px;border-radius:3px;transition:.2s all ease;background: var(--sbf-verde);border:none;color:#fff}
input[type="submit"]:hover{color:#efefef; background: var(--sbf-verde-escuro);}
input[type="submit"]:focus{outline:none}
.danger {
    border: 1px solid #FBBFBF !important;
}
textarea#mensagem {
    min-height: 100px;
}
.alert-sucesso {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6;
}
.reader-comments{margin-top:30px}
.comment-container{min-height:80px;margin-bottom:30px}
.comment-container.level-two{margin-left:105px}
.comment-container img{width:80px;float:left;border-radius:50%}
.comment-container.level-two img.avatar{ width:60px!important}
.comment-content{padding:15px 20px; border-radius: 0px 3px 3px 3px;background:#eaeaea;line-height:1.6em;position:relative;margin-left:105px;color:#666}
.level-two .comment-content{margin-left:85px!important}
.comment-content:before{content: "";position: absolute;left: 0;top: 28px;border-top: 15px solid transparent;border-bottom: 15px solid transparent;border-right: 15px solid #eaeaea;transform: translateX(-100%);}
.interaction{font-size:25px;margin-top:10px;border-top: 1px solid #ccc;}
.reader-name{margin-bottom:15px; font-size: 20px}
h2.title-single{font-size: 25px}
.comment-interaction{margin-top:15px}
.comment-interaction > span:first-child{margin-right:5px;color:#999!important}
#comments a{color: var(--sbf-verde); word-wrap: break-word;}
a#cancel-comment-reply-link{color: var(--sbf-verde);}

@media (max-width: 990px){
  .marcamenu .col-md-6{text-align: center;}
  .navbar{float: none !important;}
  .navbar-nav{float: none; /* width: 460px; */ margin: 0 auto}

  .blog-home, .afilie-acoes { padding-right:0px;}
  .blog-home .col-md-6, .afilie-acoes  .col-md-6{margin-bottom: 30px !important}
  #rodape .box-esq {  padding-right: 15px;}


}

@media (max-width:768px){
  .lightbox-conferencista{position: absolute; }
  #mask{position: absolute;}

}

div#nav>ul>li {
    display: block;
}
div#nav>ul>li>a{
    display:block;
    padding:5px;
    text-transform:uppercase;
}

table.table.table-programa tr:nth-child(1) {
    color: #fff;
}
.nav-programacao-btn > li > a {
    text-transform: capitalize;
}
span#data-title {
    font-size: 20px;
    text-transform: capitalize;
    font-weight: 500;
}
a#close {
    background: var(--sbf-verde);
    padding: 6px 6px 8px;
    color: #fff;
    margin-top: -4px;
    display: block;
}
.box-evento {
  position: relative;
  margin-left: -10px;
  margin-right: -10px;
  background: #fff;
  border-radius: 5px;
  box-shadow: 0 5px 6px -5px rgba(0,0,0,.8);
  overflow: hidden;
}
.box-congress .box-evento{
  margin-top: 10px;
  border: 1px solid #d0d0d0;
}

.evento-description{
  text-align: left;
  padding: 8px;
}
.evento-description a{
  color:#2e2e2e;
  font-size: 18px;
  display: block;
}
.evento-description h6{
  margin-top: 5px;
  margin-bottom: 0;
  color:#2e2e2e;
}
.evento-description h6.riscado{
  text-decoration: line-through;
}
.box-evento-riscado{
  opacity: 0.4;
  pointer-events: none;
}
@media (max-width: 768px) {
  .content-page>p>iframe {
      width: 100% !important;
      height:auto;
  }
  .btn-sbf{
    margin-bottom: 10px;
  }
  .logo-congresso.col-md-6 img {
      width: 260px;
      height: auto;
  }
  .capa-congresso{
    background-position: 100%;
  }
  .float-right-top-congresso {
    margin-top: 20px;
  }
  .btn-inscreva-se-bar-congresso{
    display: none;
  }
  .linkfooter>.row {
    margin-left: 0;
    margin-right: 0;
  }
  .comment-container.level-two {
    margin-left: 0;
  }
  .comment-container img {
    width: 65px;
    height: auto;
  }
  .comment-container.level-two img.avatar {
    width: 45px!important;
  }
  .comment-content {
    margin-left: 88px;
  }
  .box-evento {
    margin-bottom: 20px;
    background: #fff;
    padding: 10px;
    border-radius: 4px;
  }
  .box-evento .imagem img{
    width:100%;
    height: auto;
  }
  .btn-group-m{
    margin-bottom:30px
  }
  .btn-responsive {
    font-size: 3.5vw;
  }
}

.infovitrine .col-md-3 {
    text-align: center;
    padding: 15px 0px 0px 0px;
}


.d2 {
    border-left: 1px solid #e8e8e8;
}

.countdown {
    float: left;
    box-shadow: 1px 1px 1px rgba(99, 79, 79, 0.35);
    background-image: linear-gradient(bottom, #1f928b 50%, #298e88 50%);
    background-image: -o-linear-gradient(bottom, #1f928b 50%, #298e88 50%);
    background-image: -moz-linear-gradient(bottom, #1f928b 50%, #298e88 50%);
    background-image: -webkit-linear-gradient(bottom, #1f928b 50%, #298e88 50%);
    background-image: -ms-linear-gradient(bottom, #1f928b 50%, #298e88 50%);
    background-image: -webkit-gradient(   linear,   left bottom,   left top,   color-stop(0.5, #1f928b),   color-stop(0.5, #298e88)  );
    text-align: center;
    padding: 5px 7.5px;
    font-size: 25px;
    font-size: 45px;
    color: #fff;
    width: 50%;
}

span.ftm {
    display: block;
    text-align: right;
    width: 40%;
    float: left;
    padding: 5px 7px 5px 0;
    line-height: 30px;
}

.c-countdown {
    width: 60%;
    float: left;
}

span.ftm>span {
    display: block;
}

li.destaque-congresso a  {
    color: #fff;
    text-decoration: none;
    background-color: #5a88c3;
    outline: 0;
}
li.destaque-congresso>a:focus, li.destaque-congresso>a:hover {
    text-decoration: none;
    background-color: #5a88c3;
}
/* ==========================================================================
   Componentes novos
   ========================================================================== */

/* Botões ----------------------------------------------------------------- */
.btn { border-radius: 999px; font-weight: 600; padding: 9px 22px; transition: all var(--sbf-transicao); --bs-btn-border-width: 2px; --bs-btn-font-size: 15px; --bs-btn-focus-box-shadow: 0 0 0 3px rgba(19, 102, 31, .25); }
.btn-primary, .btn-sbf {
  --bs-btn-color: #fff; --bs-btn-bg: var(--sbf-verde); --bs-btn-border-color: var(--sbf-verde);
  --bs-btn-hover-color: #fff; --bs-btn-hover-bg: var(--sbf-verde-escuro); --bs-btn-hover-border-color: var(--sbf-verde-escuro);
  --bs-btn-active-color: #fff; --bs-btn-active-bg: var(--sbf-verde-profundo); --bs-btn-active-border-color: var(--sbf-verde-profundo);
}
.btn-info, .btn-warning {
  --bs-btn-color: var(--sbf-verde-profundo); --bs-btn-bg: var(--sbf-amarelo); --bs-btn-border-color: var(--sbf-amarelo);
  --bs-btn-hover-color: var(--sbf-verde-profundo); --bs-btn-hover-bg: var(--sbf-amarelo-escuro); --bs-btn-hover-border-color: var(--sbf-amarelo-escuro);
  --bs-btn-active-color: var(--sbf-verde-profundo); --bs-btn-active-bg: var(--sbf-amarelo-escuro); --bs-btn-active-border-color: var(--sbf-amarelo-escuro);
}
.btn-lg { padding: 13px 30px; font-size: 16px; }
.btn-primary, .btn-sbf, a.btn-sbf, input[type="submit"] {
  background: var(--sbf-verde); border-color: var(--sbf-verde); color: #fff !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-sbf:hover, .btn-sbf:focus, a.btn-sbf:hover, a.btn-sbf:focus, input[type="submit"]:hover {
  background: var(--sbf-verde-escuro); border-color: var(--sbf-verde-escuro); color: #fff !important;
  transform: translateY(-1px); box-shadow: 0 6px 16px rgba(19, 102, 31, .25);
}
.btn-info, .btn-warning {
  background: var(--sbf-amarelo); border-color: var(--sbf-amarelo); color: var(--sbf-verde-profundo);
}
.btn-info:hover, .btn-info:focus, .btn-warning:hover, .btn-warning:focus {
  background: var(--sbf-amarelo-escuro); border-color: var(--sbf-amarelo-escuro); color: var(--sbf-verde-profundo);
}
.btn-sbf.btn-outline, a.btn-sbf.btn-outline { background: transparent; color: var(--sbf-verde) !important; }
.btn-sbf.btn-outline:hover, a.btn-sbf.btn-outline:hover { background: var(--sbf-verde); color: #fff !important; }
.btn .bi { font-size: .85em; margin-left: 4px; }
input[type="submit"] { border-radius: 999px; padding: 10px 26px; height: auto; font-weight: 600; }

.saibamais, .facainscri {
  display: inline-flex; align-items: center; gap: 6px;
  background: none; border: 0; padding: 0;
  color: var(--sbf-verde); font-weight: 700; font-size: 15px;
}
.saibamais .bi { font-size: 12px; transition: transform var(--sbf-transicao); }
.saibamais:hover { color: var(--sbf-verde-escuro); }
.saibamais:hover .bi { transform: translateX(4px); }

/* Formulários ------------------------------------------------------------ */
.form-control, .form-select { border-radius: var(--sbf-raio-sm); border-color: var(--sbf-borda); box-shadow: none; height: 42px; }
textarea.form-control { height: auto; }
.form-control:focus, .form-select:focus { border-color: var(--sbf-verde); box-shadow: 0 0 0 3px rgba(19, 102, 31, .15); }

/* Header ----------------------------------------------------------------- */
.site-header { position: sticky; top: 0; z-index: 1000; background: #fff; box-shadow: 0 1px 0 var(--sbf-borda), 0 6px 20px rgba(8, 51, 14, .05); }
.barratop { background: var(--sbf-verde-profundo); color: #fff; font-size: 13px; }
.barratop__inner { display: flex; align-items: center; justify-content: space-between; min-height: 38px; }
.barratop__inner:before, .barratop__inner:after { display: none; }
.barratop__menu { padding: 0; }
@media (min-width: 768px) {
  /* Sem .navbar-expand: o collapse do BS5 fica oculto até receber .show; no desktop o menu do topo é sempre visível. */
  .barratop__menu.collapse:not(.show) { display: block; }
}
.navbar-top { display: flex; flex-wrap: wrap; gap: 4px 22px; }
.navbar-top > li > a { color: rgba(255, 255, 255, .85); padding: 9px 0; display: inline-block; }
.navbar-top > li > a:hover, .navbar-top > li.active > a { color: var(--sbf-amarelo); background: none; }
.navbar-top .dropdown-menu { border-radius: var(--sbf-raio-sm); border: 0; box-shadow: var(--sbf-sombra); }
.social-net { display: flex; gap: 14px; align-items: center; }
.social-net a { color: rgba(255, 255, 255, .85); margin: 0; }
.social-net a:hover { color: var(--sbf-amarelo); }
.topbar-toggle { display: none; color: #fff; margin: 0; padding: 6px 4px; border: 0; background: none; font-size: 18px; line-height: 1; }

.marcamenu { background: #fff; }
.marcamenu__inner { display: flex; align-items: center; gap: 24px; min-height: 84px; }
.marcamenu__inner:before, .marcamenu__inner:after { display: none; }
.site-logo { display: flex; align-items: center; gap: 12px; flex-shrink: 0; color: var(--sbf-verde); }
.site-logo img { width: 64px; height: auto; }
.site-logo__texto { font-family: var(--sbf-fonte-titulo); font-size: 12px; line-height: 1.25; letter-spacing: .04em; text-transform: uppercase; color: var(--sbf-verde); font-weight: 600; }
.site-logo__texto strong { font-size: 15px; font-weight: 800; }
.site-logo:hover { color: var(--sbf-verde); }

.marcamenu .menuprincipal { flex: 1; padding: 0; justify-content: flex-end; }
.marcamenu .menuprincipal.collapse { display: flex !important; }
.menuprincipal .navbar-nav { float: none; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 2px; margin: 0; }
.menuprincipal .navbar-nav > li { float: none; }
.menuprincipal .navbar-nav > li > a {
  color: var(--sbf-texto); font-weight: 600; font-size: 14px;
  padding: 9px 12px; border-radius: 999px; transition: all var(--sbf-transicao);
}
.menuprincipal .navbar-nav > li > a:hover,
.menuprincipal .navbar-nav > li > a:focus,
.menuprincipal .navbar-nav > li > a.show,
.menuprincipal .navbar-nav > li > a.show:hover,
.menuprincipal .navbar-nav > li > a.show:focus { background: var(--sbf-verde-claro); color: var(--sbf-verde); }
.menuprincipal .navbar-nav > li.active > a,
.menuprincipal .navbar-nav > li.current-menu-item > a,
.menuprincipal .navbar-nav > li.current-menu-parent > a,
.menuprincipal .navbar-nav > li.current-page-ancestor > a { background: var(--sbf-verde); color: #fff; }
.menuprincipal .dropdown-toggle::after { margin-left: 5px; vertical-align: .2em; border-top-width: .3em; border-right-width: .3em; border-left-width: .3em; }
.dropdown-menu { --bs-dropdown-link-active-bg: var(--sbf-verde); --bs-dropdown-link-active-color: #fff; --bs-dropdown-link-hover-bg: var(--sbf-verde-claro); --bs-dropdown-link-hover-color: var(--sbf-verde); }
.menuprincipal .dropdown-menu {
  border: 0; border-radius: var(--sbf-raio); box-shadow: var(--sbf-sombra-hover);
  padding: 8px; margin-top: 8px; min-width: 240px;
}
@media (min-width: 992px) {
  /* .navbar-nav .dropdown-menu é static no BS5; no desktop o submenu flutua abaixo do item. */
  .menuprincipal .navbar-nav .dropdown-menu { position: absolute; top: 100%; left: 0; }
  .menuprincipal .navbar-nav > li.menu-evento-destaque .dropdown-menu { left: auto; right: 0; }
}
.menuprincipal .dropdown-menu > li > a { display: block; padding: 9px 14px; border-radius: var(--sbf-raio-sm); color: var(--sbf-texto); white-space: normal; }
.menuprincipal .dropdown-menu > li > a:hover,
.menuprincipal .dropdown-menu > .active > a { background: var(--sbf-verde-claro); color: var(--sbf-verde); }

/* Item legado "destaque-congresso" com as cores da marca */
.menuprincipal .navbar-nav > li.destaque-congresso > a,
.menuprincipal .navbar-nav > li.destaque-congresso > a:focus { background: var(--sbf-verde); color: #fff; }
.menuprincipal .navbar-nav > li.destaque-congresso > a:hover { background: var(--sbf-verde-escuro); color: #fff; }
@media (min-width: 992px) and (max-width: 1439px) {
  .site-logo__texto { display: none; }
  .menuprincipal .navbar-nav > li > a { padding: 9px 11px; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .menuprincipal .navbar-nav > li > a { font-size: 13px; padding: 8px 8px; }
}

/* Evento destacado no menu */
.menuprincipal .navbar-nav > li.menu-evento-destaque > a,
.menuprincipal .navbar-nav > li.menu-evento-destaque > a:focus {
  background: var(--sbf-amarelo); color: var(--sbf-verde-profundo); font-weight: 700;
  box-shadow: 0 4px 14px rgba(251, 186, 0, .35);
}
.menuprincipal .navbar-nav > li.menu-evento-destaque > a:hover,
.menuprincipal .navbar-nav > li.menu-evento-destaque > a.show { background: var(--sbf-amarelo-escuro); color: var(--sbf-verde-profundo); }
.menuprincipal .navbar-nav > li.menu-evento-destaque .bi-star-fill { font-size: 12px; margin: 0 2px 0 0; }
.dropdown-eventos-destaque > li > a strong { display: block; font-weight: 700; }
.dropdown-eventos-destaque > li > a small { display: block; color: var(--sbf-texto-suave); font-size: 12px; }
.dropdown-eventos-destaque > li + li { border-top: 1px solid var(--sbf-borda); }

.menu-toggle { display: none; margin: 0 0 0 auto; border: 0; padding: 10px; border-radius: var(--sbf-raio-sm); background: transparent; }
.menu-toggle .icon-bar { display: block; background: var(--sbf-verde); width: 24px; height: 3px; border-radius: 2px; }
.menu-toggle .icon-bar + .icon-bar { margin-top: 4px; }
.menu-toggle:hover, .menu-toggle:focus { background: var(--sbf-verde-claro); }

/* Vitrine ---------------------------------------------------------------- */
.vitrine { background: var(--sbf-verde-profundo); }
.vitrine .carousel-inner { background: var(--sbf-verde-profundo); }
/* Não alterar position/float de .carousel-item: o Bootstrap depende deles na transição. */
.vitrine .carousel-item { background: var(--sbf-verde-profundo); }
.vitrine__link { display: block; position: relative; color: #fff; }
.vitrine__link:hover, .vitrine__link:focus { color: #fff; }
/* Altura fixa para todos os slides terem o mesmo tamanho. */
.vitrine__imagem { display: block; width: 100%; height: clamp(200px, 38vw, 520px); object-fit: contain; margin: 0 auto; }
.vitrine__legenda {
  display: block; padding: 0;
  background: var(--sbf-verde-profundo);
  border-top: 4px solid var(--sbf-amarelo);
}
/* Altura fixa para a legenda não variar com o texto; conteúdo centralizado verticalmente. */
.vitrine__legenda > .container { display: flex; flex-wrap: wrap; align-items: center; align-content: center; gap: 8px 14px; height: 170px; }
.vitrine__tipo {
  background: var(--sbf-amarelo); color: var(--sbf-verde-profundo);
  font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase;
  padding: 4px 10px; border-radius: 999px;
}
.vitrine__tipo--noticia { background: #fff; color: var(--sbf-verde); }
.vitrine__data { font-size: 13px; opacity: .9; }
.vitrine__titulo {
  flex-basis: 100%; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-family: var(--sbf-fonte-titulo); font-size: clamp(20px, 3vw, 34px);
  font-weight: 800; line-height: 1.2;
  /* Ocupa a linha inteira (força a quebra) e limita o texto a ~820px pelo padding. */
  max-width: none; padding-right: max(0px, calc(100% - 820px));
}
.vitrine__cta { font-weight: 700; color: var(--sbf-amarelo); padding-left: 15px; }
.vitrine__cta .bi { font-size: 12px; transition: transform var(--sbf-transicao); }
.vitrine__link:hover .vitrine__cta .bi { transform: translateX(4px); }
/* Setas centralizadas na área da imagem (acima da legenda de 170px + borda de 4px). */
.vitrine .carousel-control-prev, .vitrine .carousel-control-next { width: 64px; bottom: 174px; opacity: .8; }
.vitrine .carousel-control-prev:hover, .vitrine .carousel-control-next:hover { opacity: 1; }
.vitrine .carousel-control-prev .bi, .vitrine .carousel-control-next .bi {
  width: 44px; height: 44px; font-size: 16px; line-height: 44px; text-align: center; color: #fff;
  border-radius: 50%; background: rgba(255, 255, 255, .18); backdrop-filter: blur(4px); transition: all var(--sbf-transicao);
}
.vitrine .carousel-control-prev:hover .bi, .vitrine .carousel-control-next:hover .bi { background: var(--sbf-amarelo); color: var(--sbf-verde-profundo); }
.vitrine .carousel-indicators { bottom: 6px; margin-bottom: 0; }
.vitrine .carousel-indicators [data-bs-target] { width: 22px; height: 4px; border: 0; border-radius: 2px; margin: 0 3px; background: rgba(255, 255, 255, .45); opacity: 1; transition: all var(--sbf-transicao); }
.vitrine .carousel-indicators .active { width: 34px; background: var(--sbf-amarelo); }

/* Acesso rápido ---------------------------------------------------------- */
.acesso-rapido { position: relative; z-index: 2; margin-top: 28px; }
.acesso-rapido__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; }
.acesso-rapido__item {
  display: flex; align-items: center; gap: 16px; padding: 20px 22px;
  background: #fff; border-radius: var(--sbf-raio); box-shadow: var(--sbf-sombra);
  border-left: 5px solid var(--sbf-verde); color: var(--sbf-texto);
  transition: transform var(--sbf-transicao), box-shadow var(--sbf-transicao);
}
.acesso-rapido__item--amarelo { border-left-color: var(--sbf-amarelo); }
.acesso-rapido__item:hover { transform: translateY(-3px); box-shadow: var(--sbf-sombra-hover); color: var(--sbf-texto); }
.acesso-rapido__item strong { display: block; font-family: var(--sbf-fonte-titulo); font-size: 17px; }
.acesso-rapido__item small { color: var(--sbf-texto-suave); font-size: 13px; }
.acesso-rapido__icone {
  flex-shrink: 0; width: 50px; height: 50px; border-radius: 12px;
  display: grid; place-items: center; font-size: 20px;
  background: var(--sbf-verde-claro); color: var(--sbf-verde);
}
.acesso-rapido__item--amarelo .acesso-rapido__icone { background: var(--sbf-amarelo-claro); color: var(--sbf-amarelo-escuro); }

/* Seções ----------------------------------------------------------------- */
.secao { padding: 64px 0; }
.secao--clara { background: var(--sbf-fundo); }
.secao__cabecalho { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 32px; }
.secao__sobretitulo { display: block; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--sbf-amarelo-escuro); margin-bottom: 4px; }
.secao__titulo { font-size: clamp(26px, 3vw, 36px); font-weight: 800; position: relative; padding-bottom: 12px; }
.secao__titulo:after { content: ""; position: absolute; left: 0; bottom: 0; width: 48px; height: 4px; border-radius: 2px; background: var(--sbf-amarelo); }
.vazio { color: var(--sbf-texto-suave); padding: 24px; background: var(--sbf-fundo); border-radius: var(--sbf-raio); text-align: center; }

/* Cards de evento -------------------------------------------------------- */
.grid-eventos { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 24px; }
.grid-eventos--2 { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
.card-evento {
  display: flex; flex-direction: column; background: #fff; border-radius: var(--sbf-raio);
  overflow: hidden; box-shadow: var(--sbf-sombra); border: 1px solid var(--sbf-borda);
  transition: transform var(--sbf-transicao), box-shadow var(--sbf-transicao);
}
.card-evento:hover { transform: translateY(-4px); box-shadow: var(--sbf-sombra-hover); }
.card-evento__imagem { position: relative; display: block; aspect-ratio: 9 / 5; overflow: hidden; background: var(--sbf-verde-claro); }
.card-evento__imagem img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.card-evento:hover .card-evento__imagem img { transform: scale(1.04); }
.card-evento__selo {
  position: absolute; top: 12px; left: 12px; padding: 4px 10px; border-radius: 999px;
  font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase;
  background: rgba(31, 42, 34, .8); color: #fff;
}
.card-evento__selo--destaque { background: var(--sbf-amarelo); color: var(--sbf-verde-profundo); }
.card-evento__corpo { padding: 18px 20px 22px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.card-evento__data { margin: 0; font-size: 13px; font-weight: 600; color: var(--sbf-verde); }
.card-evento__data .bi { margin-right: 4px; }
.card-evento__titulo { font-size: 17px; line-height: 1.35; }
.card-evento__titulo a { color: var(--sbf-texto); }
.card-evento__titulo a:hover { color: var(--sbf-verde); }
.card-evento.is-encerrado { opacity: .55; filter: grayscale(.6); }
.card-evento.is-encerrado .card-evento__data { text-decoration: line-through; color: var(--sbf-texto-suave); }

/* Cards informativos (home) --------------------------------------------- */
.linkfooter { margin: 0; }
.linkfooter .row { display: flex; flex-wrap: wrap; row-gap: 24px; }
.linkfooter .row:before, .linkfooter .row:after { display: none; }
.card-info { height: 100%; background: #fff; border-radius: var(--sbf-raio); padding: 28px; box-shadow: var(--sbf-sombra); }
.card-info h2 { font-size: 21px; margin: 16px 0 10px; }
.card-info p { color: var(--sbf-texto-suave); }
.card-info__icone { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 12px; background: var(--sbf-verde-claro); color: var(--sbf-verde); font-size: 18px; }
.card-info--destaque { background: var(--sbf-verde); color: #fff; }
.card-info--destaque h2 { color: #fff; }
.card-info--destaque p { color: rgba(255, 255, 255, .85); }
.card-info--destaque .card-info__icone { background: var(--sbf-amarelo); color: var(--sbf-verde-profundo); }

/* Newsletter (box da home) */
.sbf-nl-form { display: flex; flex-direction: column; gap: 10px; margin-top: 16px; }
.sbf-nl-form .form-control { border: 0; }
.sbf-nl-form__linha { display: flex; gap: 8px; }
.sbf-nl-form__linha .form-control { flex: 1; min-width: 0; }
.sbf-nl-form__linha .btn { flex-shrink: 0; padding: 9px 18px; }
.sbf-nl-form__consent { font-size: 13px; line-height: 1.45; margin: 0; }
.sbf-nl-form__consent .form-check-input { margin-top: .15em; }
.sbf-nl-form__consent .form-check-input:checked { background-color: var(--sbf-amarelo); border-color: var(--sbf-amarelo); }
.card-info--destaque .sbf-nl-form__consent { color: rgba(255, 255, 255, .85); }
.sbf-nl-form__msg { margin: 0; font-size: 14px; font-weight: 600; min-height: 1em; }
.sbf-nl-form__msg:empty { display: none; }
.card-info--destaque .sbf-nl-form__msg.is-success { color: var(--sbf-amarelo); }
.card-info--destaque .sbf-nl-form__msg.is-error { color: #ffd2cc; }
.sbf-nl-form.is-done .form-control, .sbf-nl-form.is-done .sbf-nl-form__linha, .sbf-nl-form.is-done .sbf-nl-form__consent { display: none; }
/* Honeypot: fora da tela (não usar display:none, alguns robôs o detectam). */
.sbf-nl-form__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.sbf-nl-pagina { max-width: 720px; padding: 8px 0 24px; }
.sbf-nl-pagina h1 { font-size: 28px; margin-bottom: 12px; }

/* Páginas internas ------------------------------------------------------- */
.page-hero {
  background: linear-gradient(120deg, var(--sbf-verde-profundo) 0%, var(--sbf-verde) 100%);
  color: #fff; padding: 28px 0 32px; position: relative; overflow: hidden;
}
.page-hero:after {
  content: ""; position: absolute; right: -80px; top: -80px; width: 260px; height: 260px;
  border-radius: 50%; border: 40px solid rgba(251, 186, 0, .18);
}
.page-hero__titulo { color: #fff; font-size: clamp(24px, 3.4vw, 38px); font-weight: 800; margin-top: 6px; max-width: 900px; }
.page-hero .breadcrumb { background: none; padding: 0; margin: 0; font-size: 13px; }
.page-hero .breadcrumb > li, .page-hero .breadcrumb > li a { color: rgba(255, 255, 255, .8); }
.page-hero .breadcrumb > li a:hover { color: var(--sbf-amarelo); }
.page-hero .breadcrumb > .active { color: #fff; }
.breadcrumb > li + li:before { content: "\203A"; padding: 0 8px; color: var(--sbf-amarelo); font-weight: 700; }

.conteudo-interno { padding-top: 40px; padding-bottom: 64px; }
.entry__cabecalho { margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--sbf-borda); }
.entry__titulo { font-size: clamp(24px, 3vw, 34px); font-weight: 800; margin-top: 6px; }
.entry__banner { margin-bottom: 28px; border-radius: var(--sbf-raio); overflow: hidden; box-shadow: var(--sbf-sombra); }
.entry__banner img { width: 100%; height: auto; display: block; }
.entry-content { font-size: 16px; }
.entry-content h2, .entry-content h3, .entry-content h4 { margin: 1.6em 0 .6em; }
.entry-content p { margin-bottom: 1.1em; }
.entry-content a, .content .entry-content a { display: inline; font-weight: 600; text-decoration: underline; text-decoration-color: var(--sbf-amarelo); text-underline-offset: 3px; }
.entry-content ul { list-style: disc; padding-left: 1.4em; margin-bottom: 1.1em; }
.entry-content ol { padding-left: 1.4em; margin-bottom: 1.1em; }
.entry-content blockquote { border-left: 4px solid var(--sbf-amarelo); background: var(--sbf-fundo); padding: 14px 20px; border-radius: 0 var(--sbf-raio-sm) var(--sbf-raio-sm) 0; font-size: 16px; }
.entry-content img { border-radius: var(--sbf-raio-sm); }
.entry-content table { width: 100%; margin-bottom: 1.2em; border-collapse: collapse; }
.entry-content table td, .entry-content table th { border: 1px solid var(--sbf-borda); padding: 8px 10px; }

/* Listagem de posts */
.lista-posts { display: flex; flex-direction: column; gap: 20px; }
.card-post {
  display: flex; gap: 20px; background: #fff; border: 1px solid var(--sbf-borda);
  border-radius: var(--sbf-raio); overflow: hidden; transition: box-shadow var(--sbf-transicao), transform var(--sbf-transicao);
}
.card-post:hover { box-shadow: var(--sbf-sombra-hover); transform: translateY(-2px); }
.card-post__imagem { flex: 0 0 240px; display: block; }
.card-post__imagem img { width: 100%; height: 100%; object-fit: cover; }
.card-post__corpo { padding: 20px 22px 20px 0; display: flex; flex-direction: column; gap: 8px; justify-content: center; }
.card-post:not(:has(.card-post__imagem)) .card-post__corpo { padding-left: 22px; }
.card-post__data { font-size: 13px; font-weight: 600; color: var(--sbf-amarelo-escuro); text-transform: uppercase; letter-spacing: .04em; }
.card-post__titulo { font-size: 19px; }
.card-post__titulo a { color: var(--sbf-texto); }
.card-post__titulo a:hover { color: var(--sbf-verde); }
.content .card-post a, .content .card-evento a { display: inline; font-weight: inherit; }
.content .card-post__imagem, .content .card-evento__imagem { display: block !important; }
/* Vídeos: o embed ocupa o lugar da imagem; o .blocker faz o clique abrir o post. */
.card-post .card-video__player { position: relative; aspect-ratio: 16 / 9; align-self: center; background: #000; }
.card-video__player iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.card-video__player .blocker { z-index: 2; }

/* Sidebar */
.sidebar { display: flex; flex-direction: column; gap: 24px; }
.sidebar .card, .sidebar .list-group { border: 0; border-radius: var(--sbf-raio); box-shadow: var(--sbf-sombra); overflow: hidden; margin: 0; }
.sidebar .card-header { background: var(--sbf-verde); color: #fff; border: 0; padding: 16px 20px; }
.sidebar .card-header h4 { color: #fff; font-size: 17px; }
.sidebar .list-group-item { border-color: var(--sbf-borda); padding: 12px 20px; }
.sidebar .card-footer { background: var(--sbf-fundo); border-top: 1px solid var(--sbf-borda); padding: 12px 20px; }
.sidebar .link-congress { font-weight: 700; }
.sidebar a.list-group-item:hover { background: var(--sbf-verde-claro); color: var(--sbf-verde); }
a.header-list, a.header-list:hover, a.header-list:focus { background: var(--sbf-verde) !important; color: #fff !important; font-family: var(--sbf-fonte-titulo); font-weight: 700; font-size: 17px; border-color: var(--sbf-verde) !important; }

/* Paginação */
.pagination { display: flex; flex-wrap: wrap; gap: 6px; margin: 32px 0 0; }
.pagination > li > a, .pagination > li > span {
  float: none; display: inline-grid; place-items: center; min-width: 40px; height: 40px; padding: 0 12px;
  border-radius: 999px !important; border: 1px solid var(--sbf-borda); margin: 0; color: var(--sbf-verde); background: #fff;
}
/* Neutraliza as regras genéricas .next/.prev do slider antigo nos links "»" e "«". */
.pagination > li > a.next, .pagination > li > a.prev {
  position: static; font-size: inherit; font-weight: inherit; color: var(--sbf-verde); text-shadow: none;
}
.pagination > li > a:hover { background: var(--sbf-verde-claro); color: var(--sbf-verde); border-color: var(--sbf-verde-claro); }
.pagination > li > span.current, ul.pagination li span.current { background: var(--sbf-verde); color: #fff; border-color: var(--sbf-verde); height: 40px; }

/* 404 */
.pagina-404 { text-align: center; padding: 40px 20px; }
.pagina-404__codigo { display: block; font-family: var(--sbf-fonte-titulo); font-size: 96px; font-weight: 800; line-height: 1; color: var(--sbf-verde); }
.pagina-404__codigo:first-letter { color: var(--sbf-amarelo); }
.pagina-404 p { font-size: 17px; color: var(--sbf-texto-suave); margin: 16px 0 24px; }

/* Rodapé ----------------------------------------------------------------- */
#rodape { background: var(--sbf-verde-profundo); color: rgba(255, 255, 255, .8); padding: 56px 0 40px; border-top: 5px solid var(--sbf-amarelo); }
#rodape h3 { color: #fff; font-size: 15px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 18px; }
.rodape-marca p { margin: 14px 0; font-weight: 600; color: #fff; }
.rodape-logo { display: inline-block; background: #fff; border-radius: var(--sbf-raio); padding: 10px 14px; }
.rodape-logo img { width: 72px; height: auto; display: block; }
#rodape .link-rodape a { display: block; color: rgba(255, 255, 255, .8); padding: 5px 0; }
#rodape .link-rodape a:hover { color: var(--sbf-amarelo); transform: translateX(3px); }
#rodape .box-dir .data-importante { padding: 12px 0; border-bottom: 1px solid rgba(255, 255, 255, .1); line-height: 1.5; }
#rodape .box-dir .data-importante:last-child { border-bottom: 0; }
#rodape .box-dir b { color: var(--sbf-amarelo); }
#rodape .box-dir small { color: rgba(255, 255, 255, .6); }
#rodape > .container > .row > div { margin-bottom: 24px; }
.base { background: #052209; color: rgba(255, 255, 255, .6); padding: 16px 0; font-size: 13px; }
.base a { color: #fff; }
.galeria-video iframe{
  max-width: 100%;
}
/* Responsivo ------------------------------------------------------------- */
@media (max-width: 991px) {
  .marcamenu__inner { flex-wrap: wrap; min-height: 72px; gap: 0; }
  .site-logo img { width: 52px; }
  .menu-toggle { display: block; }
  .marcamenu .menuprincipal { flex-basis: 100%; padding: 0 0 12px; border: 0; box-shadow: none; max-height: none; }
  .marcamenu .menuprincipal.collapse { display: none !important; }
  .marcamenu .menuprincipal.collapse.show,
  .marcamenu .menuprincipal.collapsing { display: block !important; }
  .menuprincipal .navbar-nav { flex-direction: column; align-items: stretch; }
  .menuprincipal .navbar-nav > li > a { border-radius: var(--sbf-raio-sm); }
  .menuprincipal .navbar-nav .dropdown-menu.show { box-shadow: none; background: var(--sbf-fundo); margin: 4px 0; }
  .card-post { flex-direction: column; gap: 0; }
  .card-post__imagem { flex-basis: auto; aspect-ratio: 3 / 2; }
  .card-post .card-video__player { align-self: stretch; aspect-ratio: 16 / 9; }
  .card-post__corpo { padding: 18px 20px; }
  .sidebar { margin-top: 40px; }
}
@media (max-width: 767px) {
  .site-header { position: relative; }
  .topbar-toggle { display: block; }
  .barratop__inner { flex-wrap: wrap; }
  .barratop__menu { order: 3; flex-basis: 100%; border: 0; box-shadow: none; }
  .navbar-top { flex-direction: column; padding-bottom: 10px; }
  .vitrine .carousel-control-prev, .vitrine .carousel-control-next { display: none; }
  .secao { padding: 44px 0; }
  .secao__cabecalho .btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  *, *:before, *:after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
