.topbar-public {
    border-bottom: 1px solid #ededed;
    display: flex!important;
    height: 65px!important;
    padding-left: 30px!important;
    padding-right: 5px!important;
    padding-top: 15px!important;
    padding-bottom: 15px!important;
    width: 100%!important;
    align-items: center!important;
    justify-content: flex-start!important;
    top: 0!important;
    z-index: 999!important
}

.logo-container-public {
    width: 235px!important;
    flex: 0 0 235px
}

.topbar-public .logo {
    display: block!important;
    width: 235px!important;
    height: 46px!important;
    background-repeat: no-repeat!important;
    background-size: contain!important;
    background-position: left center!important;
    margin-top: 0!important
}

.page-header.navbar .menu-toggler.responsive-toggler {
    margin-left: auto!important;
    margin-bottom: auto!important;
    margin-top: auto!important;
    align-content: center!important;
    color: red!important;
    border: none!important;
    background-color: transparent!important
}

.page-header.navbar.tema-Default {
    box-shadow: 0 4px 6px -2px rgba(0,0,0,.2)!important
}

.topbar-public.page-header.navbar-auto-height.tema-Default.page-header-inner.modo-rede {
    box-shadow: 0 10px 20px rgba(255,0,0,.5)!important
}

.page-header.navbar .top-menu .navbar-nav>li.dropdown>.dropdown-toggle:last-child {
    padding-right: 13px!important
}

.page-wrapper .page-header.navbar .top-menu .navbar-nav>li.dropdown .dropdown-toggle:hover {
    padding-top: 19px!important
}

.page-wrapper .page-header.navbar .top-menu .navbar-nav>li.dropdown.open .dropdown-toggle {
    padding-top: 19px!important
}

.login-button-container {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center
}

.voltar {
    margin-right: 10px
}

.navbar {
    border-radius: 0!important
}

.btn-voltar-inicio {
    display: block;
    text-align: center;
    padding: 5px 10px;
    color: #fff!important;
    border-radius: 5px;
    text-decoration: none!important;
    font-size: 16px;
    border-color: #a9a9a9!important;
    font-weight: 700!important;
    border: 1px solid;
    justify-content: flex-end;
    margin-left: auto;
    margin-right: 5px!important
}

.btn-voltar-inicio:hover {
    background-color: #fff!important;
    color: #000!important;
    text-decoration: none!important
}

@media (max-width: 432px) {
    .btn-voltar-inicio {
        margin-left:10px!important
    }
}

@media (max-width: 360px) {
    .btn-voltar-inicio {
        font-size:12px!important
    }
}

.modo-rede .btn-group-top-bar .btns-topbar .container-buttons {
    display: flex!important
}

.topbar-index.modo-rede .logo {
    margin-left: -10px!important
}

.container-buttons {
    align-items: center;
    flex-grow: 1;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-right: 10px!important;
    text-align: right!important
}

@media (min-width: 790px) and (max-width:808px) {
    .container-buttons #btnDescredenciados,.container-buttons #btnRelatorio {
        height:62px
    }

    .container-buttons #btnRelatorio {
        font-size: 12px!important
    }
}

@media (min-width: 809px) and (max-width:811px) {
    .container-buttons #btnDescredenciados,.container-buttons #btnRelatorio {
        height:62px
    }

    .container-buttons #btnRelatorio {
        font-size: 11px!important
    }
}

.container-buttons a {
    align-items: center;
    border: 1px solid #af0f20;
    border-radius: 4px;
    color: #af0f20;
    display: inline-block!important;
    margin: 5px 0 5px 10px;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    transition: all .2s ease;
    word-break: break-word
}

.container-buttons a i {
    margin-left: 5px
}

.container-buttons a:hover {
    background: #90000f;
    color: #fff
}

.container-buttons button {
    align-items: center;
    border: 1px solid #af0f20!important;
    border-radius: 4px;
    color: #af0f20;
    display: inline-block!important;
    text-align: center;
    text-decoration: none;
    transition: all .1s ease;
    word-break: break-word;
    background-color: transparent;
    height: 35px
}

.container-buttons button i {
    margin-left: 5px;
    margin-right: 10px
}

.container-buttons button:hover {
    background: #90000f;
    color: #fff
}

.container-buttons .button-login {
    margin: 5px 0 5px 10px!important
}

.container-buttons-mobile {
    background: #fff;
    flex-direction: column;
    overflow: hidden;
    padding: 0 10px;
    transition: all .2s ease
}

.container-buttons-mobile.collapse {
    display: none;
    max-height: none
}

.container-buttons-mobile.collapse.in {
    display: flex!important;
    width: 100%!important;
    padding-right: 30px!important
}

.container-buttons-mobile.collapsing {
    display: flex!important;
    width: 100%!important;
    padding-right: 30px!important
}

.container-buttons-mobile a {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
    margin-left: 0;
    width: 100%
}

.container-buttons-mobile a:first-child {
    margin-top: 10px
}

.container-buttons-mobile button {
    align-items: center;
    border: 1px solid #af0f20!important;
    border-radius: 4px;
    color: #ec0923;
    display: inline-block!important;
    text-align: center;
    text-decoration: none;
    transition: all .1s ease;
    word-break: break-word;
    background-color: transparent;
    height: 35px
}

.container-buttons-mobile button i {
    margin-left: 5px;
    margin-right: 10px
}

.container-buttons-mobile button:hover {
    background: #90000f;
    color: #fff
}

@media (min-width: 992px) {
    .container-buttons-mobile {
        display:none!important
    }
}

@media (max-width: 991px) {
    .topbar-public .menu-toggler.responsive-toggler {
        display:block;
        align-items: flex-end!important
    }

    .topbar-public .container-buttons {
        display: none
    }

    .page-header.navbar .menu-toggler>span,.page-header.navbar .menu-toggler>span::after,.page-header.navbar .menu-toggler>span::before {
        background: #858585!important;
        height: 2.5px!important;
        border-radius: 10px!important
    }

    .page-header.navbar .menu-toggler>span::before {
        top: -8px!important
    }

    .page-header.navbar .menu-toggler>span::after {
        top: 8px!important
    }
}

.btn-top-bar {
    align-items: center;
    background-color: transparent!important;
    border-color: #a9a9a9;
    justify-content: flex-end!important
}

.btn-top-bar:hover {
    background-color: #fff!important
}

.btns-topbar {
    background-color: transparent;
    justify-content: flex-end!important;
    border-color: #a9a9a9;
    margin-left: auto!important;
    margin-right: 0!important
}

.btns-topbar button[data-tooltip] {
    position: relative;
    cursor: pointer
}

.btns-topbar button[data-tooltip]::after {
    content: attr(data-tooltip);
    position: absolute;
    top: 120%;
    left: 50%;
    transform: translateX(-50%);
    background: #333;
    color: #fff;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    z-index: 10;
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease-in-out;
    transition-delay: 0s
}

.btns-topbar button[data-tooltip]:focus-visible::after,.btns-topbar button[data-tooltip]:hover::after {
    opacity: 1;
    transition-delay: .5s
}

.btns-topbar button {
    padding: 6px 12px;
    line-height: 1;
    border: none;
    background: 0 0;
    cursor: pointer
}

.btn-group-top-bar {
    width: 100%!important;
    display: flex!important;
    flex-direction: row!important;
    justify-content: flex-end!important;
    align-items: center!important;
    height: 65px!important;
    gap: 20px!important;
    margin-right: 10px!important
}

.navbar-nav.pull-right {
    display: flex!important;
    flex-direction: row!important;
    flex-wrap: nowrap!important;
    align-items: center;
    justify-content: flex-end!important;
    list-style: none;
    padding: 0;
    overflow-x: auto!important;
    white-space: nowrap;
    flex-shrink: 0;
    margin-right: 0!important;
    line-height: 1
}

.navbar-nav.pull-right>li {
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    flex: 0 0 auto;
    margin: 0;
    padding: 0
}

.btnTopBarAcessibilidade #btnAltoContraste,.btnTopBarAcessibilidade #btnAumentarFonte,.btnTopBarAcessibilidade #btnDiminuirFonte {
    border: none!important
}

.btnTopBarAcessibilidade #botaoAltoContraste,.btnTopBarAcessibilidade #botaoAumentarFonte,.btnTopBarAcessibilidade #botaoDiminuirFonte {
    border: none!important
}

@media (max-width: 768px) {
    .btnTopBarAcessibilidade #btnAltoContraste .fa,.btnTopBarAcessibilidade #btnAumentarFonte .fa,.btnTopBarAcessibilidade #btnDiminuirFonte .fa {
        font-size:12px
    }
}

@media (max-width: 360px) {
    .btnTopBarAcessibilidade #btnAltoContraste .fa,.btnTopBarAcessibilidade #btnAumentarFonte .fa,.btnTopBarAcessibilidade #btnDiminuirFonte .fa {
        font-size:11px
    }
}

@media (max-width: 1036px) {
    .btnTopBarAcessibilidade #btnDescredenciados,.btnTopBarAcessibilidade #btnRelatorio {
        border:none!important;
        width: 130px!important
    }
}

@media (max-width: 636px) {
    .topbar-index {
        flex-direction:column!important;
        max-height: 90px!important
    }
}

@media (max-width: 636px) {
    .topbar-public:not(.modo-rede) {
        display:flex!important;
        flex-direction: row!important;
        align-items: center!important;
        justify-content: flex-start!important;
        flex-wrap: nowrap!important;
        padding: 10px 15px!important;
        height: auto!important
    }

    .topbar-public:not(.modo-rede) .btns-topbar,.topbar-public:not(.modo-rede) .navbar-nav.pull-right {
        display: flex!important;
        justify-content: center!important;
        align-items: center!important;
        flex: 0 0 auto;
        padding: 0!important;
        width: auto!important;
        white-space: nowrap;
        margin-left: 30px!important
    }

    .topbar-public:not(.modo-rede) .navbar-nav.pull-right {
        list-style: none;
        overflow-x: visible!important;
        gap: 10px
    }

    .topbar-public:not(.modo-rede) .navbar-nav.pull-right>li {
        flex: 0 0 auto;
        margin: 0 5px!important;
        white-space: nowrap;
        align-items: center!important;
        justify-content: center!important
    }

    .topbar-public:not(.modo-rede) .btn-group-top-bar {
        display: flex!important;
        flex-direction: row!important;
        align-items: center!important;
        justify-content: center!important;
        width: auto!important;
        gap: 0!important;
        margin-left: 75px!important
    }
}

@media (max-width: 790px) {
    .btns-topbar .container-buttons a,.navbar-nav.pull-right li a {
        padding:0 8px;
        font-size: 13px
    }
}

.page-header {
    margin: 0!important
}

@media (max-width: 635px) {
    .page-header-inner {
        display:flex!important;
        flex-direction: column!important;
        align-items: center!important
    }
}

@media (max-width: 636px) {
    .topbar-public.modo-rede {
        height:auto!important
    }

    .navbar-nav {
        margin: 0!important
    }
}

@media (max-width: 636px) {
    .topbar-public.modo-rede .navbar-nav.pull-right {
        margin-left:auto!important;
        margin-right: auto!important
    }

    .navbar-nav.pull-right li:not(:first-child) {
        display: none!important
    }

    .top-menu {
        margin-right: auto!important
    }
}

@media (max-width: 636px) {
    .navbar-nav.pull-right {
        justify-content:center!important;
        overflow-x: visible!important
    }

    .navbar-nav.pull-right li:has(#botaoAltoContraste),.navbar-nav.pull-right li:has(#btnAltoContraste) {
        display: flex!important;
        align-items: center
    }
}

@media (max-width: 636px) {
    .topbar-public:not(.modo-rede) .navbar-nav.pull-right {
        justify-content:center!important;
        overflow-x: visible!important
    }

    .navbar-nav.pull-right li:has(#botaoAltoContraste),.navbar-nav.pull-right li:has(#btnAltoContraste) {
        display: flex!important;
        align-items: center
    }
}

@media (max-width: 445px) {
    .btn-voltar-inicio {
        margin-left:5px
    }

    .container-buttons-desk a {
        margin-left: 5px
    }
}

@media (max-width: 991px) {
    .page-header.navbar.tema-Default {
        background-color:#1a1a27!important;
        background-color: #fff!important;
        right: 0!important
    }
}

@media (max-width: 991px) {
    .topbar-public .container-buttons-desk {
        display:block!important;
        text-align: right!important
    }

    .topbar-public .container-buttons-desk a {
        display: inline-block!important
    }

    .login .topbar-public .container-buttons-desk {
        display: none!important;
        text-align: initial!important
    }

    .login .topbar-public .container-buttons-desk a {
        display: none!important
    }

    .navbar-nav.pull-right li:has(#botaoAltoContraste),.navbar-nav.pull-right li:has(#btnAltoContraste) {
        display: flex!important;
        align-items: center
    }
}

@media (max-width: 636px) {
    .topbar-index>.btn-group-top-bar {
        margin-top:-190px!important
    }
}

@media (max-width: 768px) {
    .navbar-nav.pull-right li:not(:first-child) {
        display:none!important
    }

    .navbar-nav.pull-right li:has(#botaoAltoContraste),.navbar-nav.pull-right li:has(#btnAltoContraste) {
        display: flex!important;
        align-items: center
    }

    .navbar-nav.pull-right li:has(#btnRedeAtendimento) {
        display: flex!important;
        align-items: center
    }
}

@media (max-width: 900px) {
    #btnDescredenciados,#btnLivreto,#btnRelatorio {
        padding:5px 5px!important;
        font-size: 12px!important
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0
}

/* ==========================================================
   ACESSIBILIDADE STF-MED
   Harmonizado com Livreto e Descredenciados
   ========================================================== */

.btnTopBarAcessibilidade {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin-left: 12px !important;
    padding: 2px 6px !important;
    border: 1px solid rgba(255,255,255,.35) !important;
    border-radius: 4px !important;
    background: transparent !important;
}

/* Alto contraste / A- / A+ */

#btnAltoContraste,
#btnAumentarFonte,
#btnDiminuirFonte,
#botaoAltoContraste,
#botaoAumentarFonte,
#botaoDiminuirFonte {
    background: transparent !important;
    border: none !important;
    color: #FFFFFF !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    padding: 6px 8px !important;
    min-width: 32px !important;
    height: auto !important;
    border-radius: 3px !important;
    transition: all .2s ease !important;
}

/* Ícones */

#btnAltoContraste i,
#btnAumentarFonte i,
#btnDiminuirFonte i,
#botaoAltoContraste i,
#botaoAumentarFonte i,
#botaoDiminuirFonte i,
#btnAltoContraste .fa,
#btnAumentarFonte .fa,
#btnDiminuirFonte .fa,
#botaoAltoContraste .fa,
#botaoAumentarFonte .fa,
#botaoDiminuirFonte .fa {
    color: #FFFFFF !important;
    font-size: 15px !important;
}

/* Hover */

#btnAltoContraste:hover,
#btnAumentarFonte:hover,
#btnDiminuirFonte:hover,
#botaoAltoContraste:hover,
#botaoAumentarFonte:hover,
#botaoDiminuirFonte:hover {
    background: #FFFFFF !important;
    color: var(--stf-green) !important;
}

/* Hover dos ícones */

#btnAltoContraste:hover i,
#btnAumentarFonte:hover i,
#btnDiminuirFonte:hover i,
#botaoAltoContraste:hover i,
#botaoAumentarFonte:hover i,
#botaoDiminuirFonte:hover i,
#btnAltoContraste:hover .fa,
#btnAumentarFonte:hover .fa,
#btnDiminuirFonte:hover .fa,
#botaoAltoContraste:hover .fa,
#botaoAumentarFonte:hover .fa,
#botaoDiminuirFonte:hover .fa {
    color: var(--stf-green) !important;
}

/* Estado ativo */

#btnAltoContraste:active,
#btnAumentarFonte:active,
#btnDiminuirFonte:active,
#botaoAltoContraste:active,
#botaoAumentarFonte:active,
#botaoDiminuirFonte:active,
#btnAltoContraste:focus,
#btnAumentarFonte:focus,
#btnDiminuirFonte:focus,
#botaoAltoContraste:focus,
#botaoAumentarFonte:focus,
#botaoDiminuirFonte:focus {
    background: #EAF6EE !important;
    color: var(--stf-green-hover) !important;
}

/* Mobile */

@media (max-width: 768px) {

    .btnTopBarAcessibilidade {
        margin-left: 8px !important;
        padding: 2px 4px !important;
    }

    #btnAltoContraste,
    #btnAumentarFonte,
    #btnDiminuirFonte,
    #botaoAltoContraste,
    #botaoAumentarFonte,
    #botaoDiminuirFonte {
        font-size: 13px !important;
        padding: 4px 6px !important;
        min-width: 28px !important;
    }

    #btnAltoContraste i,
    #btnAumentarFonte i,
    #btnDiminuirFonte i,
    #botaoAltoContraste i,
    #botaoAumentarFonte i,
    #botaoDiminuirFonte i {
        font-size: 13px !important;
    }
}