@font-face {
    font-family: 'cakefont';
    src: url('../font/cakedingbats-webfont.eot');
    src: url('../font/cakedingbats-webfont.eot?#iefix') format('embedded-opentype'),
    url('../font/cakedingbats-webfont.woff2') format('woff2'),
    url('../font/cakedingbats-webfont.woff') format('woff'),
    url('../font/cakedingbats-webfont.ttf') format('truetype'),
    url('../font/cakedingbats-webfont.svg#cake_dingbatsregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
h1{ font-size:36px; font-weight: 400;}
h2{ font-size:30px; font-weight: 400;}
h3{ font-size:24px; font-weight: 400;}
h4{ font-size:18px; font-weight: 400;}
h5{ font-size:16px; font-weight: 400;}
h6{ font-size:14px; font-weight: 400;}

.cor_vermelha{color: #C2292E;}
.cor_verde{color: #00A19A;}

html {background: #fff;}
.d-none{ display: none !important;}
.top-bar-section p{ color: #fff;}

body{ background: #fdfdfd;}

/* HEADER */
.header {
  position: relative;
  height: 250px;
  overflow: hidden;
}



/* Gradiente institucional */
.overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #3aa7a3, #6cc04a);
  z-index: 1;
  opacity: 0.9;
}

/* Canvas partículas */
#particles {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 2;
}

/* Conteúdo */
.content {
  position: relative;
  z-index: 3;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  padding: 10px 20px;
  transition: transform 0.2s linear;
}

h1 {
  font-size: 28px;
  margin: 5px 0;
  color: #000;
}

h2 {
  font-size: 16px;
  font-weight: normal;
}

.bg_preto{ background: #464749;}
.portal_fiocruz{ background: #d9d3d3; position: relative; padding: 12px; margin: -12px 0; border-radius: 7px;}
.portal_fiocruz a{ color: #19181d;}
.portal_fiocruz li {padding-left: 0;}
.idiomas a, .idiomas a:hover{ color: #fff;}
.idiomas li{ border-right: 1px solid #fff; padding-right: 3px;}
.idiomas li:last-child{ border-right: none;}
.texto_idioma{ border: none !important;}


.logo_fiocruz img{max-width: 200px;}
.logo_topo img{ max-height: 200px;}

.info_topo {
  margin-top: 10px;
  font-size: 14px;
}

/* Botão */
.btn {
  margin-top: 15px;
  display: inline-block;
  padding: 10px 22px;
  border-radius: 30px;
  background: rgba(255,255,255,0.2);
  border: 1px solid #fff;
  color: #000;
  text-decoration: none;
  transition: 0.3s;
}

.btn:hover {
  background: #fff;
  color: #134e4a;
  box-shadow: 0 0 15px rgba(255,255,255,0.6);
}

/* Responsivo */
@media (max-width: 768px) {
  h1 { font-size: 22px; }
}

.home {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    line-height: 27px;
    color: #404041;
    height: auto;
}

footer{align-self:flex-end; margin-top: 80px;}

a {
    color: #0071BC;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

a:hover, a:active {
    color: #d33d44;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

ul, ol, dl, p {
    font-size:16px;
}

p {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
}

header {
    height: auto;
    line-height: 1em;
    padding: 0;
    box-shadow: none;
}


.more {
    color: #ffffff;
    background-color: #d33d44;
    padding: 15px;
    margin-top: 10px;
}

/*.row {
  max-width: 1000px;
}*/

.alert {
    background-color: #f2dede;
    font-size: 12px;
    text-align: center;
    display: block;
    padding: 12px;
    border-bottom: 2px solid #a94442;
}

.alert {
    background-color: #f2dede;
    font-size: 12px;
    display: block;
    padding: 15px;
    border-bottom: 2px solid #a94442;
    margin-bottom: 30px;
    color: #404041;
}

.alert p {
    margin: 0;
    font-size: 12px;
    line-height: 1.4;
}

.alert ul {
    margin: 0;
    font-size: 12px;
}

.alert.url-rewriting {
    background-color: #F0F0F0;
    border-color: #cccccc;
    display: none;
}

.text-center {
    text-align: center;
}

ul {
    list-style-type: none;
    margin: 0 0 30px 0;
}

li {
    padding-left: 1.8em;
}

ul li ul, ul li ul li {
    margin: 0;
    padding: 0;
}

ol li h3{ color:#15848F; border-bottom: 2px solid #15848F;}
ol li h3 small{ float: right;}

.bullet:before {
    font-family: 'cakefont', sans-serif;
    font-size: 18px;
    display: inline-block;
    margin-left: -1.3em;
    width: 1.2em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    vertical-align: -1px;
}

.success:before {
    color: #88c671;
    content: "\0056";
}

.problem:before {
    color: #d33d44;
    content: "\0057";
}

.cutlery:before {
    color: #404041;
    content: "\0059";
}

.book:before {
    color: #404041;
    content: "\0042";
    width: 1.7em;
}

hr {
border-bottom: 1px solid #878787;
    border-top: 0;
    margin-bottom: 0px;
    margin-left: 0px;
    margin-right: 0px;
}


.icon {
    color: #404041;
    font-style: normal;
    font-family: 'cakefont', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon.support {
    font-size: 60px;
}
.icon.docs {
    font-size: 57px;
}
.icon.training {
    font-size: 39px;
}

@media (min-width: 768px) {
    .columns {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (min-width: 992px) {
    header.row {
        max-width: 940px;
    }
}
/*=================================================================*/

#topo_index{ position: relative;z-index: 999;}



.texto_banner img{
 margin-top: -40px;
}

.palestrantes-border{ border: 1px solid #00a19a; padding:7px;}

.navbar-toggler-icon {
    display: block;
    width: 1.5em;
    height: 2px;
    vertical-align: middle;
    content: "";
    background: #1f1d22;
    background-size: 100% 100%;
    margin: 5px 0;
}



.bt-inscricao{background:#1f8367; padding: 15px 10px; color: #fff; border-radius: 7px; }
.bt-inscricao a{color: #fff;}

h1, h2, h3, h4, h5, h6{ color: inherit; line-height: normal;}

.txt-chamada{color:#00a19a;}


.faixa{background:#ca2b18; height: 7px; width: 100%; margin-top: 7px;}

.onde_banner img{border-radius: 90px;}

@media (max-width: 768px) {

}

@media (max-width: 499px) {
    .logo{ background-size: auto 119px;} .palestrantes-border{ border: 1px solid #00a19a; padding: 15px; width: 50%;}

}

.nav_aling_index{width: 100%; padding: 0 20px; margin: 0 auto; text-align:left; background: #ffffff6b; border-radius: 7px; box-shadow: 1px 2px 7px }
.nav_aling{width: 100%; padding: 0 20px; margin: 0 auto; text-align:left; background: #ffffff6b;}
nav.navbar-nano { background:none; border-radius: 0; border: none; position: absolute; width: 100%;}
nav.navbar-nano a { color: #1f1d22; }

nav.navbar-nano ul.navbar-nav  { width: fit-content; float: none;}

nav.navbar-nano li  {
    float: none;
    display: inline-block;
    padding: 0 10px;
    font-size: 15px;
    border-left: 2px groove #f9f9f97a}

nav.navbar-nano li:first-child{border-left:none;} 
nav.navbar-nano li.divider { background: #1a1a1a; }
.navbar-fixed-bottom .navbar-collapse, .navbar-fixed-top .navbar-collapse{ max-height: none;}
nav.navbar-nano button.navbar-toggle { background: #1a1a1a; border-radius: 2px; }
nav.navbar-nano button.navbar-toggle:hover { background: #999; }
nav.navbar-nano button.navbar-toggle > span.icon-bar { background: #fff; }

.navbar-collapse.collapse.show{ background: #fff;}
.navbar-collapse.collapse.show ul.navbar-nav{ width: 100%;}
.navbar-collapse.collapse.show ul.navbar-nav li{ border-bottom: 1px solid #000;}
.navbar-collapse.collapse.show .idioma {background: #d3d3d3;padding: 12px 0;}

.idioma{ width: 100%; margin-top: -35px;}
.idioma .container{display: flex; margin-top: -15px; flex-direction: row-reverse;}
.idioma .container p{background: #fff;}

#topo_index .idioma{ width:auto; margin-top:0;}
#topo_index .idioma .container{display: flex; margin-top:0px; flex-direction: row-reverse;}
#topo_index .idioma .container p{background:none;}

.idioma img{ width: 24px; margin-left: 15px; margin-top: -3px}
.idioma hr{margin:12px 10px 0 0 ;width: 100%; height: 1px; background: #ccc;border: none;}

.espaco_menu{ margin-bottom: 80px;}

.menu_adm {background:#f9a936; border-radius:4px; padding: 20px; color: #1a1a1a; margin-bottom: 20px;}
.menu_adm h3 {background:#fff; color:#553a10; text-align: center; text-transform:uppercase; padding:30px 10px; border-radius:4px;}
.menu_adm ul {padding: 0px}
.menu_adm li {padding: 15px 0; border-bottom: 1px solid #fff; }
.menu_adm li a {font-size: 18px; color: #553a10;}

.carta{ background: url('../img/bg_carta.png') no-repeat left top;
    background-size: contain; 
    min-height: 396px;
    margin-top: 24px;}

.carta_en{ background: url('../img/bg_carta_en.png') no-repeat left top;
    background-size: contain; 
    min-height: 396px;
    margin-top: 24px;}

.box_carta  {padding-top:18%; padding-left:30%; padding-right: 24px;}

.titulos {margin: 50px 0 20px 0;}
.titulos_bg_linha {background: #ca2b18; width: 100%; height:2px; border-radius: 4px; display: block; margin-bottom: -30px;}
.texto h2{ background: #fdfdfd; display: initial; margin-left: 20px; padding:0 20px; font-size: 40px;}
.chamada_linha_horizontal{ border-bottom: #f9a936 1px solid; padding-left: 150px; padding-top: 20px; margin-left: -120px;}
.chamada_linha_vertical{ border-left:#f9a936 1px solid; padding: 0;}
.chamada_linha_vertical h3, .chamada_linha_vertical p{ margin-left: 30px;}

fieldset legend{ border-bottom: 2px solid #00a19a;}
legend {color: #00a19a; border-bottom: 2px solid #00a19a;}

.descricao fieldset{ border: 1px solid #ddd; margin: 1.125rem 0; padding: 1.25rem; border-radius: 4px;}
.descricao fieldset legend {font-family: 'Roboto', sans-serif; font-weight: 400; font-size: 27px; margin-left: -0.1875rem; margin: 0; padding: 0 20px; width: auto; border: none; color: #00a19a;}

.descricao p, .descricao ul { font-size: 16px;}

.descricao ul li:before {
    content: '';
    display: inline-block;
    -webkit-border-radius: 0.375rem;
    border-radius: 0.375rem;
    height: 0.75rem;
    width: 0.75rem;
    margin-right: 0.5rem;
    background-color: #f9a936;
}

.divicao_coluna{ border-left: 1px solid #ddd;}

.botao-reserva{ background:#15848F; border-radius:5px;margin-bottom: 20px; box-shadow: 0px 3px 4px #1a1a1a45; }
.botao-reserva h5 a{ color:#fff;}

.bg_verde{ background:#00a19a;}

.faixa_banner_rodape {background: #1a1a1a; height:24px; width: 100%; margin-top: 24px;}
.margin_footer{margin-bottom: 200px;}
footer {background: #1a1a1a; min-height: 200px; width: 100%;}
footer .caracol{position: absolute; right: 50px; margin-top: -89px; height: 100px;}
.logos-footer img{max-width: 200px;}
.logos-sus-footer img{max-width: 100px;}
.divicao_coluna_footer{border-left: 2px groove #35353582;}

/*==== CONTATO =======================*/
/* ///// inputs /////*/

.faleconoco{ 
    background: #ececec; 
    width:100%; 
    margin: 0 auto; 
    padding:60px 30px;
    border-radius: 4px; 
    margin-bottom: 20px;
    border: 1px solid #c4c4c4;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.05);
    box-shadow: inset 0 1px 1px rgba(0,0,0,0.05);
}

.faleconoco input:focus ~ label, .faleconoco textarea:focus ~ label, .faleconoco input:valid ~ label, .faleconoco textarea:valid ~ label {
    font-size: 0.75em;
    color: #999;
    top: -5px;
    -webkit-transition: all 0.225s ease;
    transition: all 0.225s ease;
}

.faleconoco .styled-input {
    float: left;
    width: 293px;
    margin: 1rem 0;
    position: relative;
    border-radius: 4px;
}

.faleconoco .styled-input label {
    color: #999;
    padding: 10px 30px 10px 30px;
    position: absolute;
    top: 20px;
    left: 0;
    -webkit-transition: all 0.25s ease;
    transition: all 0.25s ease;
    pointer-events: none;
}

.faleconoco .styled-input.wide { 
    width: 100%;
}

.faleconoco input,
.faleconoco textarea {
    padding: 20px 30px;
    border: 0;
    width: 100%;
    font-size: 18px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.faleconoco input:focus,
.faleconoco textarea:focus { outline: 0; }

.faleconoco input:focus ~ span,
.faleconoco textarea:focus ~ span {
    width: 100%;
    -webkit-transition: all 0.075s ease;
    transition: all 0.075s ease;
}

.faleconoco textarea {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    min-height: 15em;
}

.faleconoco .input-container {
    width: 650px;
    max-width: 100%;
    margin: 20px auto 25px auto;
}

.faleconoco .submit-btn {
    float: right;
    padding: 7px 35px;
    border-radius: 60px;
    display: inline-block;
    background-color: #4b8cfb;
    color: white;
    font-size: 18px;
    cursor: pointer;
    box-shadow: 0 2px 5px 0 rgba(0,0,0,0.06),
              0 2px 10px 0 rgba(0,0,0,0.07);
    -webkit-transition: all 300ms ease;
    transition: all 300ms ease;
}

.faleconoco .submit-btn:hover {
    transform: translateY(1px);
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.10),
              0 1px 1px 0 rgba(0,0,0,0.09);
}

@media (max-width: 768px) {
    .faleconoco .submit-btn {
        width:100%;
        float: none;
        text-align:center;
    }

   
}

.faleconoco input[type=checkbox] + label {
  color: #ccc;
  font-style: italic;
} 

.faleconoco input[type=checkbox]:checked + label {
  color: #f00;
  font-style: normal;
}

/*==== 
/*==== CURSO =======================*/

.card-curso {display: flex; justify-content: space-between; align-items: stretch; flex-wrap: wrap;}
.card-curso .panel{ width: 48%;}


.curso_radio label{
    margin: 20px 0;
    border-bottom: 1px solid #1a1a1a;
    padding-bottom: 20px;
}
.curso_radio label:last-child{ border: none;}

.curso_radio .form-control, .admin_check .form-control{
display: initial;
margin-right: 10px;
margin-top: -5px;
float: left;
width: 34px;
height: 34px;
padding: 6px 12px;}

.curso_radio .linha{ border-bottom: 1px solid #1a1a1a;}
/*==== FIM CURSO =======================*/


.admin_check input[type=checkbox]{ position: relative;}

textarea.resumo_texto{ width: 100%; max-width: 100%; min-width: 100%; min-height:500px;}
.com_contador{ margin-top: 20px;}
.com_contador small{ float: right;}

.programacao_dias .panel-body {display: flex; flex-wrap: wrap; align-content: stretch;}
.linha_vertical{ border-left: #1a1a1a 1px solid;}
.linha_horizontal{ border-bottom: #1a1a1a 1px solid;}
.programacao_dias li{ padding: 10px;}
.programacao_dias .well{ background: #ffe0df; color:#94110f; padding: 5px;  text-align: center; font-size: 16px;}

.patrocinadores { display: flex; flex-wrap: wrap; align-items: center;}
.patrocinadores img{ max-width: 200px; margin: 20px;}

.vagas_limitada{ color: #eb312e;}

.minha-borda{ border-right:1px solid #dee2e6; border-bottom: none;}

/* === Formularios Inicio ======================*/

.formularios label{display:block;margin-top:12px;font-weight:600}
.formularios input,textarea{width:100%;padding:10px;margin-top:6px;border:1px solid #ccc;border-radius:6px}
.formularios textarea{min-height:140px;resize:vertical}
.formularios button{margin-top:16px;padding:10px 16px;border:0;border-radius:6px;background:#0b5ed7;color:#fff;cursor:pointer}
.formularios button:hover{background:#0a53be}
.formularios .alert{margin-top:16px;padding:12px;border-radius:6px}
.formularios .ok{background:#d1e7dd;color:#0f5132}
.formularios .err{background:#f8d7da;color:#842029}
.formularios .hp{display:none!important}

/* === Formularios Fim   ====================*/

/* == PG PROGRAMAÇÃO ==*/
  .pg_programacao .day {
    margin-bottom: 40px;
  }

  .pg_programacao .day h2 {
    background: linear-gradient(90deg, #3aa7a3, #6cc04a);
    color: #fff;
    padding: 12px;
    font-size: 28px;
    font-weight: bold;
    border-radius: 6px;
  }

  .bg_sessao{ background: #fbf7f0; border-radius: 15px; padding: 12px 24px;}

  .pg_programacao .session {
    background: white;
    margin-top: 15px;
    padding: 15px;
    border-left: 5px solid #00a8cc;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3);
  }

  .pg_programacao .session h3 {
    margin: 0 0 10px;
    color: #00A19A;
    font-weight: bold;
  }

   .pg_programacao .session h3 {
    margin: 0 0 10px;
    color: #00A19A;
    font-weight: bold;
  }

   .pg_programacao .session h4 {
    font-weight: bold;
  }

  .pg_programacao .talk {
    display: flex;
    flex-wrap: wrap;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
  }

  .pg_programacao .time {
    flex: 0 0 100px;
    font-weight: bold;
    color: #e84118;
  }

  .pg_programacao .details {
    flex: 1;
  }

 .pg_programacao  footer {
    background: #00A19A;
    color: white;
    text-align: center;
    padding: 20px;
    margin-top: 30px;
  }

  /* Responsividade */
  @media(max-width: 600px) {
    .pg_programacao .talk {
      flex-direction: column;
    }

    .pg_programacao .time {
        flex: 0 0 30px;
      margin-bottom: 5px;
    }
  }
/* == PG PROGRAMAÇÃO FIM ==*/

/* == banner inscrição == */
.banner-inscricao{
    background: linear-gradient(90deg, #3aa7a3, #6cc04a);
    border-radius: 8px;
    padding: 35px 30px;
    text-align: center;
    margin: 40px auto;
    max-width: 900px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.12);
    position: relative;
    overflow: hidden;
}

.banner-inscricao::before{
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    background:rgba(255,255,255,0.08);
    border-radius:50%;
    top:-80px;
    right:-80px;
}

.banner-inscricao::after{
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    background:rgba(255,255,255,0.06);
    border-radius:50%;
    bottom:-70px;
    left:-70px;
}

.banner-inscricao h2{
    color:#fff;
    font-size:24px;
    margin-bottom:15px;
    position:relative;
    z-index:2;
}

.banner-inscricao p{
    color:#f5f5f5;
    font-size:17px;
    line-height:1.6;
    margin-bottom:25px;
    position:relative;
    z-index:2;
}

.btn-inscricao{
    display:inline-block;
    background:#fff;
    color:#0c6b63;
    padding:16px 34px;
    font-size:18px;
    font-weight:bold;
    text-decoration:none;
    border-radius:50px;
    transition:all 0.3s ease;
    position:relative;
    z-index:2;
    box-shadow:0 3px 10px rgba(0,0,0,0.15);
}

.btn-inscricao:hover{
    transform:translateY(-3px) scale(1.03);
    box-shadow:0 8px 18px rgba(0,0,0,0.18);
    background:#f8f8f8;
}

@media(max-width:768px){

    .banner-inscricao{
        padding:25px 20px;
    }

    .banner-inscricao h2{
        font-size:24px;
    }

    .banner-inscricao p{
        font-size:15px;
    }

    .btn-inscricao{
        width:100%;
        box-sizing:border-box;
    }
}

/* == banner inscrição fim == */

@media (max-width: 992px) {
.bg_index{ margin-top: -105px; }
.texto_banner img {margin-top: 0px;}
.logos-footer, .logos-sus-footer {width: 100%;}
.logos-footer img{ display: block;}
.logos-sus-footer img{max-width: 150px; display: block;}

 nav.navbar-nano li { border: none;}
}

@media (max-width: 767px) {
    .bg_index{ margin-top: -55px; }
    
    .minha-borda{ border-right:none; border-bottom:1px solid #dee2e6;}

    .linha_vertical{ border-left: none;}   
    .card-curso .panel{ width:100%;}

    .table tr th{ font-size: 12px;}
    .table tr td{ font-size: 12px;}
}

@media (max-width: 424px) {
.texto_banner img {margin-top: 10px;}
}

@media print {
    body * {
      visibility: hidden;
    }
    #printable, #printable * {
      visibility: visible;
    }
    #printable {
      position:absolute;
      left: 0;
      top: 0;
    }
  }

table tr th {border-bottom: none;}