:root {
    --cor-azul: #034ea2;
    --cor-preto: #231f20;
    --cor-cinza: #464547;
}

.page-login-v2 {
    height: 100%;
    overflow-x: hidden;
}

.page-login-v2:before {
    background-image: url("../../img/bg-login.jpeg");
}

.page-login-v2.page-dark.layout-full:after {
    background-color: rgba(38, 50, 56, .6);
}

.page-login-v2 .page-brand-info {
    margin: 220px 100px 0 90px;
}

.page-login-v2 .page-brand-info .brand-img {
    vertical-align: middle;
}

.page-login-v2 .page-brand-info .brand-text {
    display: inline-block;
    vertical-align: middle;
    margin: 11px 0 11px 20px;
}

.page-login-v2 .page-brand-info .img-logo-2 {
    height: 140px;
    margin-left: 60px;
    display: inline-block;
    vertical-align: middle;
}

.page-login-v2 .page-brand-info p {
    opacity: .6;
    max-width: 650px;
}

.page-login-v2 .page-login-main {
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    height: auto;
    min-height: 100%;
    padding: 150px 60px 180px;
    color: #76838f;
    background: #fff;
}

.page-login-v2 .page-login-main .brand {
    margin-bottom: 60px;
}

.page-login-v2 .page-login-main .brand-img {
    vertical-align: middle;
}

.page-login-v2 .page-login-main .brand-text {
    display: inline-block;
    vertical-align: middle;
    margin: 11px 0 11px 20px;
    color: #62a8ea;
}

.page-login-v2 form {
    width: 350px;
    margin: 45px 0 20px;
}

.page-login-v2 form > button {
    margin-top: 38px;
}

.page-login-v2 form a {
    margin-left: 20px;
}

.page-login-v2 footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 50px 60px;
    text-align: center;
}

.page-login-v2 .social .icon, .page-login-v2 .social .icon:hover, .page-login-v2 .social .icon:active {
    color: #fff;
}

@media (min-width: 992px) {
    .page-login-v2 .page-content {
        padding-right: 500px;
    }
}

@media (max-width: 991px) {
    .page-login-v2 .page-login-main {
        padding-top: 60px;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .page-login-v2 .page-login-main {
        padding-top: 80px;
    }
    .page-login-v2 .page-brand-info {
        margin: 160px 0 0 35px;
    }
    .page-login-v2 .page-brand-info > p {
        opacity: 0;
        color: transparent;
    }
}

@media (max-width: 767px) {
    .page-login-v2 .page-login-main {
        padding-top: 60px;
        width: 100%;
    }
    .page-login-v2 form {
        width: auto;
    }
}

@media (max-width: 479px) {
    .page-login-v2 .page-brand-info {
        margin: 220px 0 0;
    }
    .page-login-v2 .page-login-main {
        padding: 50px 30px 180px;
    }
    .page-login-v2 form {
        width: auto;
    }
    .page-login-v2 footer {
        margin: 50px 30px;
    }
}

.loading-layer {
    background-color: rgba(255, 255, 255, .4);
    display: none;
    position: absolute;
    top: 66px;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.loading-layer .progress-loading {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    border-radius: 0;
}

.brand-icon,
.brand-text-page {
    display: inline-block;
    vertical-align: baseline;
}

.brand-icon {
    color: #62A8EA;
    font-size: 40px;
    margin-right: 15px;
}

.brand-text-page {
    color: #fff;
    font-size: 18px;
}

@media (max-width: 768px) {
    .brand-text-page {
        color: #575757;
    }
}

.form-control.invalid {
    border-color: #f96868;
}

.page-copyright .social .icon {
    color: #FFF;
}

.ff-verdana,
.ff-verdana *,
.ff-verdana *:after,
.ff-verdana *:before {
    font-family: 'Verdana', sans-serif !important;
}

.main-page-header {
    background-color: #FFF;
    display: block;
    position: relative;
}

.main-page-header > .header-container {
    max-width: 1200px!important;
    display: flex;
    position: relative;
    justify-content: flex-end;
    border: 1px solid #444;
    margin-top: 30px;
}

.main-page-footer {
    background-color: #FFF;
    display: block;
    position: relative;
}

.main-page-footer > .container {
    max-width: 1200px;
    margin: auto;
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
}

.main-page-footer .logo-rodape {
    margin-left: 35px;
    min-height: 91px;
    display: flex;
    align-items: flex-end;
    padding-bottom: 17px;
}

.main-page-footer .logo-rodape img {
    height: 49px;
}

.main-page-footer .footer-menu {
    min-height: 91px;
    display: flex;
    align-items: flex-end;
    padding-bottom: 20px;
}

.main-page-footer ul {
    padding-left: 15px;
    padding-right: 15px;
    display: flex;
    margin-bottom: 0;
}

.main-page-footer ul li {
    display: block;
    padding-left: 25px;
    padding-right: 25px;
    position: relative;
}

.main-page-footer ul li a {
    display: inline-block;
    padding-left: 10px;
    padding-right: 10px;
    color: var(--cor-cinza);
}

.main-page-footer ul li a:hover {
    color: var(--cor-preto);
}

.main-page-footer ul li a:after {
    display: block;
    width: 1px;
    height: 16px;
    top: 50%;
    margin-top: -8px;
    left: 100%;
    background-color: var(--cor-cinza);
    content: " ";
    position: absolute;
}

.main-page-footer ul li:last-child a:after {
    display: none
}

@media (max-width: 1440px) and (min-width: 1200px) {
    .page-login-v2 .page {
        min-height: calc(100% + 36px);
    }
}

@media (max-width: 1200px) {
    .page-login-v2 .page-login-main {
        padding: 50px 30px 70px;
    }

    .main-page-footer {
        width: 100%;
        overflow: hidden
    }

    .main-page-footer .logo-rodape {
        margin-left: 0px;
        width: 128px
    }

    .main-page-footer .logo-rodape img {
        max-width: 100%
    }

    .main-page-footer .footer-menu {
        width: calc(100% - 128px)
    }

    .main-page-footer .footer-menu ul {
        padding-left: 0px;
        padding-right: 0px
    }

    .main-page-footer .footer-menu ul li {
        padding-left: 3px;
        padding-right: 3px
    }

    .main-page-footer .footer-menu ul li a {
        padding-left: 3px;
        padding-right: 3px
    }
}

@media (max-width: 991px) {

    .page {
        height: calc(100% - 91px);
    }

}

@media (max-width: 425px) {
    .main-page-footer {
        margin-top: 30px;
    }
}

@media (max-width: 340px) {
    .main-page-footer .logo-rodape {
        min-height:125px;
        align-items: center
    }

    .main-page-footer .footer-menu {
        min-height: 125px;
        align-items: center
    }

    .main-page-footer .footer-menu ul {
        flex-direction: column
    }

    .main-page-footer .footer-menu ul li {
        padding-bottom: 8px;
        margin-bottom: 8px
    }

    .main-page-footer .footer-menu ul li:after {
        width: 50px;
        height: 1px;
        top: 100%;
        left: 15px;
        margin-top: 0px
    }
}


/* Layout do cabeçalho */

.page-dark.layout-full::before {
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    content: "";
    background-position: center 30px;
    -webkit-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
}

.page-dark.layout-full::after {
    top: 30px;
}

.main-page-header-portal {
    color: #fff
}

.main-page-azul-default {
    background: #034ea2
}

.main-page-preto-default {
    background: #231f20
}

.main-page-cinza-default {
    background: #464547
}

.main-page-branco-default {
    background: #fff
}

img.main-page-header-social-icon {
    margin-left: 4px
}

img.main-page-header-social-icon:hover {
    filter: drop-shadow(1);
    box-shadow: inset 0 0 0 20px #111;
    border-radius: 3px
}

.header-link:hover {
    background: #444!important;
    color: #fff;
    border-color: #444;
    text-decoration: none!important
}

::-moz-selection {
    background: #666;
    text-shadow: none;
    color: #fff
}

::selection {
    background: #666;
    text-shadow: none;
    color: #fff
}

.header-link {
    font-size: 10px;
    color: #444;
    border: 3px solid;
    border-radius: 16px;
    padding: 6px 10px;
    margin-right: 40px;
    text-decoration: none
}

@media only screen {
    #MainPageHeader {
        width: 100%;
        display: block;
        box-sizing: border-box;
        z-index: 9999999;
        position: relative
    }

    #MainPageHeader * {
        box-sizing: border-box;
        font-family: Verdana,Arial,Sans-serif
    }

    #MainPageHeader.main-page-header {
        background-color: #fff
    }

    #MainPageHeader.gre-y {
        background-color: #ccc
    }

    #MainPageHeader.yello-w {
        background-color: #fc0
    }

    #MainPageHeader.re-d {
        background-color: red
    }

    #MainPageHeader.blac-k {
        background-color: #231f20
    }

    #MainPageHeader #MainPageTopbar {
        width: 100%;
        max-width: 968px;
        margin: auto;
        font-size: 0;
        text-align: right
    }

    #MainPageHeader #MainPageTopbarLink {
        font-size: 20px;
        font-weight: 700;
        width: auto;
        text-align: left
    }

    #MainPageHeader #MainPageTopbarLink a {
        text-decoration: none;
        padding: 5px
    }

    #MainPageHeader #MainPageTopbarLink a:active,#MainPageHeader #MainPageTopbarLink a:visited {
        color: inherit
    }

    #MainPageHeader #MainPageTopbarLink a:hover {
        cursor: pointer;
        text-decoration: underline
    }

    #MainPageHeader.blac-k #MainPageTopbarLink a,#MainPageHeader.main-page-header #MainPageTopbarLink a,#MainPageHeader.re-d #MainPageTopbarLink a {
        color: #fff
    }

    #MainPageHeader.blac-k #MainPageTopbarLink a,#MainPageHeader.gre-y #MainPageTopbarLink a,#MainPageHeader.re-d #MainPageTopbarLink a,#MainPageHeader.whit-e #MainPageTopbarLink a,#MainPageHeader.yello-w #MainPageTopbarLink a {
        color: #231f20
    }

    #MainPageHeader #topbarMenu,#MainPageHeader #topbarOpen {
        font-size: 13px;
        color: #fff;
        padding: 0;
        margin: 0
    }

    #MainPageHeader #topbarMenu li,#MainPageHeader #topbarOpen li {
        display: block
    }

    #MainPageHeader #topbarMenu br+li,#MainPageHeader #topbarOpen br+li {
        padding: 4px 8px;
        margin-top: -8px;
        cursor: default;
        font-weight: 700
    }

    #MainPageHeader #topbarMenu a,#MainPageHeader #topbarOpen a {
        display: block;
        width: 100%;
        color: #fff;
        text-decoration: none;
        line-height: 1.3;
        padding: 4px 8px
    }

    #MainPageHeader #topbarMenu a:hover,#MainPageHeader #topbarOpen a:hover {
        background-color: rgba(166,166,166,.6)
    }

    #MainPageHeader #topbarOpen>li {
        position: relative;
        margin: 0 10px 0 0
    }

    #MainPageHeader #topbarOpen>li span {
        font-size: 22px;
        line-height: 0;
        font-weight: 400;
        display: inline-block;
        vertical-align: text-top;
        margin-top: 4px;
        width: 13px
    }

    #MainPageHeader #topbarOpen.topbarOpening #topbarMenu {
        display: block!important
    }

    #MainPageHeader #topbarMenu {
        margin-left: 0;
        overflow-y: auto;
        position: absolute;
        left: 0;
        height: 450px;
        width: 350px;
        text-align: left;
        background-color: #999;
        background: -webkit-gradient(linear,left top,left bottom,from(#999),to(#231f20));
        background: -webkit-linear-gradient(top,#999,#231f20);
        background: -moz-linear-gradient(top,#999,#231f20);
        background: -ms-linear-gradient(top,#999,#231f20);
        background: -o-linear-gradient(top,#999,#231f20);
        background: linear-gradient(to bottom,#999,#231f20);
        filter: progid: DXImageTransform.Microsoft.gradient(GradientType=0, StartColorStr='#999', EndColorStr='#231f20');
        border-radius: 0 10px 10px 0
    }

    #MainPageHeader #topbarMenu::-webkit-scrollbar-track {
        -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
        border-radius: 10px;
        background-color: #a6a6a6
    }

    #MainPageHeader #topbarMenu::-webkit-scrollbar {
        width: 10px;
        border-radius: 10px;
        background-color: #f2f2f2
    }

    #MainPageHeader #topbarMenu::-webkit-scrollbar-thumb {
        background-color: #d9d9d9
    }
}

.main-page-header-iconmd,.main-page-header-iconmd.main-page-header-active {
    box-shadow: 0 .1px .1px 0 rgba(0,0,0,.16),0 .1px .3px 0 rgba(0,0,0,.12)
}

@media only screen and (max-width: 968px) {
    #MainPageHeader #topbarMenu {
        left:inherit;
        right: 0
    }

    #MainPageHeader #MainPageTopbarLink {
        width: 47%
    }
}

@media only screen and (min-width: 769px) {
    #MainPageHeader {
        padding:0
    }

    #MainPageHeader #MainPageTopbar {
        min-width: 84px;
        min-height: 70px
    }

    #MainPageHeader #MainPageTopbarLink,#MainPageHeader #topbarLogo,#MainPageHeader #topbarOpen {
        display: inline-block;
        vertical-align: middle
    }

    #MainPageHeader #topbarLogo {
        background-repeat: no-repeat;
        min-width: 84px;
        min-height: 60px;
        background-position: center right;
        padding: 16.5px 0;
        width: 18%
    }
}

@media only screen and (max-width: 480px) {
    #MainPageHeader #MainPageTopbarLink.main-page-azul-default {
        padding:20px 16px 0 2%!important
    }
}

@media only screen and (max-width: 460px) {
    a.header-link {
        margin-right:30px
    }

    a.header-link:hover {
        background: #444!important;
        text-decoration: none!important
    }

    p.main-page-header-social-link {
        display: none
    }
}

@media only screen and (max-width: 400px) {
    a.header-link {
        margin-left:10px;
        margin-right: 20px
    }

    a.header-link:hover {
        background: #444!important;
        text-decoration: none!important
    }

    .main-page-header-portal {
        font-size: 16px;
        margin-top: 4px
    }

    p.main-page-header-dr {
        font-size: 16px!important;
        width: 190px!important
    }
}

@media only screen and (min-width: 769px) {
    .main-page-header-mbmenu {
        display:none
    }

    div#MainPageHeader div#MainPageTopbar {
        max-width: 1200px!important;
        display: flex;
        position: relative;
        justify-content: flex-end;
        border: 1px solid #444;
        margin-top: 30px
    }

    div#MainPageHeader div#MainPageTopbar #MainPageTopbarLink {
        background-image: url('../../../s3modnew/img/flag-sp.png');
        background-repeat: no-repeat;
        background-position: right;
        position: absolute;
        width: 350px;
        height: 68px;
        top: 0;
        left: 0
    }

    .main-page-header-portal {
        margin-top: 14px;
        margin-left: 30px
    }
}

@media only screen and (max-width: 768px) {
    #MainPageHeader #MainPageTopbar {
        height:67px
    }

    ul.main-page-header-left-links {
        display: inline-flex;
        margin-top: 4px;
        padding-left: 6px;
        margin-right: 14px
    }

    a.main-page-header-links {
        font-size: 10px;
        padding-left: 8px
    }

    li.main-page-header-link-portal {
        font-size: 10px;
        height: 15px
    }

    ul.main-page-header-links {
        display: none!important
    }

    div#main-page-header-redes-sociais,img.main-page-header-logo {
        display: none
    }

    p.main-page-header-dr {
        margin-top: 0!important
    }

    .main-page-header-social-link {
        margin-top: 0;
        margin-right: 2px
    }

    p.main-page-header-social-link {
        margin-top: 22px;
        margin-left: 2px
    }

    .header-link {
        font-size: 10px;
        color: #444;
        border: 3px solid;
        border-radius: 16px;
        padding: 6px 10px;
        margin-top: 10px;
        margin-left: 20px;
        margin-right: 100px
    }

    #MainPageHeader #MainPageTopbarLink.main-page-preto-default,#MainPageHeader #MainPageTopbarLink.main-page-azul-default,#MainPageHeader #MainPageTopbarLink.main-page-cinza-default,#MainPageHeader #MainPageTopbarLink.main-page-branco-default {
        width: 66%;
        text-align: left;
        height: 67px;
        padding: 20px 16px 0 2%
    }

    div#MainPageHeader {
        border-bottom: solid 3px #444
    }

    #MainPageHeader #MainPageTopbarLink.main-page-azul-default {
        background: url('../../../s3modnew/img/flag-sp.png') right no-repeat #034ea2
    }

    #MainPageHeader #MainPageTopbarLink.main-page-preto-default {
        background: url('../../../s3modnew/img/flag-sp.png') right no-repeat #231f20
    }

    #MainPageHeader #MainPageTopbarLink.main-page-cinza-default {
        background: url('../../../s3modnew/img/flag-sp.png') right no-repeat #464547
    }

    #MainPageHeader #MainPageTopbarLink.main-page-branco-default {
        background: url('../../../s3modnew/img/flag-sp.png') right no-repeat #fff
    }

    .main-page-header-mbmenu {
        cursor: pointer;
        position: absolute;
        display: inline-block;
        box-sizing: border-box;
        padding: 0;
        float: right;
        top: 20px;
        right: 30px;
        width: 7px;
        height: 26px
    }

    .main-page-header-mbmenu.main-page-header-active {
        display: -webkit-box;
        top: 28px;
        margin-right: 10px
    }
}

.main-page-header-mbmenu figure {
    width: 6px;
    height: 6px;
    border-radius: 5px;
    background: #444;
    margin: 3px 0
}

.main-page-header-iconmd {
    transform: scale(1);
    position: relative;
    -webkit-filter: blur(.1px);
    filter: blur(.1px)
}

.main-page-header-iconmd.main-page-header-active {
    margin-left: 3px;
    margin-right: 3px;
    padding-left: 3px;
    padding-right: 3px
}

.main-page-header-iconcs {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%) scale(0);
    margin-top: -1px;
    font-family: Nunito,sans-serif;
    color: #fff;
    transition: all .2s cubic-bezier(.72,1.2,.71,.72);
    font-size: 22px;
    user-select: none
}

.main-page-header-iconcs.main-page-header-active {
    transform: translate(-50%,-50%) scale(1);
    transition: all .15s cubic-bezier(.32,2.04,.85,.54)
}

.main-page-header-dropmenu {
    position: fixed;
    width: 100%;
    left: 0;
    top: 70px;
    padding: 0 0 10px;
    border-bottom: solid 1px #444;
    transform: scale(0)
}

.main-page-header-dropmenu li {
    display: block
}

.main-page-header-dropmenu li a {
    display: inline-block;
    white-space: pre;
    box-sizing: border-box
}

.main-page-header-dropmenu li a:hover {
    background: #ebebeb
}

.main-page-header-dropmenu:hover ul {
    transform: scale(1)
}

.main-page-header-dropmenu.main-page-header-active {
    position: fixed;
    display: inline-flex;
    transform: scale(1);
    transition: all .25s cubic-bezier(.5,1.8,.9,.8);
    background: #fff
}

body,section.section-top {
    margin: 0
}

ul.main-page-header-dropmenu.main-page-header-active.hide-dropdown {
    display: none
}

ul.main-page-header-links-redes-sociais {
    display: inline-flex
}

ul.main-page-header-links-redes-sociais>li {
    list-style: none
}

p.main-page-header-social-link {
    width: 82px;
    color: #444;
    font-size: 10px;
    font-family: Verdana;
    margin-top: 7px;
    height: 0;
    padding-right: 20px;
    margin-left: 0
}

div#main-page-header-redes-sociais {
    margin-top: -26px;
    position: absolute
}

p.main-page-header-dr {
    margin-top: 0;
    width: 190px;
    font-size: 18px
}

ul.main-page-header-links>li {
    text-decoration: none;
    list-style: none;
    font-family: Verdana;
    font-size: 10px;
    margin-right: 10px
}

div#main-page-header-links {
    position: absolute;
    float: left!important
}

img.main-page-header-logo {
    width: 118px;
    height: 45px;
    margin-top: 10px;
    margin-right: 10px
}

ul.main-page-header-links {
    position: absolute;
    float: left;
    display: inline-flex;
    margin-top: -20px;
    left: 0;
    margin-left: -9px
}

a.main-page-header-links {
    text-decoration: none;
    color: #444
}

li.main-page-header-link-portal {
    border-right: 1px solid #444;
    padding-right: 10px
}

.main-page-header-portal.g-white {
    color: #231f20
}

p.main-page-header-dr.main-page-header-logo-link {
    margin-top: 20px
}

img.main-page-header-acessibilidade {
    margin: 6px 0 0 4px
}

.main-page-header-logo {
    background: url('../../../s3modnew/img/logo-governo-estado-sao-paulo.png') no-repeat;
    width: 140px;
    margin-top: 7px;
    background-size: contain;
    margin-right: 10px;
}

.contrast, .contrast nav, .contrast div, .contrast li, .contrast ol, .contrast header, .contrast footer, .contrast section, .contrast main, .contrast aside, .contrast article {
    background: black !important;
    color: white !important;
}

.contrast h1, .contrast h2, .contrast h3, .contrast h4, .contrast h5, .contrast h6, .contrast p, .contrast label, .contrast strong, .contrast em, .contrast cite, .contrast q, .contrast i, .contrast b, .contrast u, .contrast a, .contrast span {
    color: white !important;
}

.contrast button, .contrast input[type=button], .contrast input[type=reset], .contrast input[type=submit] {
    background: black !important;
    color: yellow !important;
    border: none !important;
}

.contrast img.on-contrast-force-gray {
    filter: grayscale(100%) contrast(120%);
}

.contrast img.on-contrast-force-white {
    filter: brightness(0) invert(1);
}

.contrast input[type=text], .contrast input[type=password], .contrast input[type=url], .contrast input[type=search], .contrast input[type=email], .contrast input[type=tel], .contrast input[type=date], .contrast input[type=month], .contrast input[type=week], .contrast input[type=datetime], .contrast input[type=datetime-local], .contrast textarea, .contrast input[type=number] {
    background: black !important;
    border: 1px solid white !important;
    color: white !important;
}

.contrast div#MainPageTopbarLink {
    background: #fff!important;
}

.contrast .main-page-header-portal {
    background: #fff!important;
}

.contrast #govsp-MainPageTopbar.main-page-header #MainPageTopbarLink a {
    color: #111!important;
}

@media only screen and (min-width: 769px) {
    .contrast div#govsp-MainPageTopbar div#MainPageTopbar #MainPageTopbarLink {
        background-image: url('../../../s3modnew/img/flag-contrast-sp.png')!important;
        background-repeat: no-repeat!important;
        background-position: right!important;
    }
}

@media only screen and (min-width: 769px) {
    .contrast div#govsp-MainPageTopbar div#MainPageTopbar {
        border-bottom: solid 3px #fff!important;
    }
}

.contrast .govsp-link {
    color: #fff!important;
    border: 1px solid;
}

.contrast img.govsp-icon-social {
    filter: brightness(100);
}

.contrast img.govsp-icon-social:hover {
    box-shadow: none;
}

.contrast img.main-page-header-acessibilidade {
    filter: brightness(100);
}

.contrast .main-page-header-portal {
    width: 200px!important;
}

.contrast a.main-page-header-links {
    color: #fff;
}

.contrast img.main-page-header-social-icon {
    filter: brightness(100);
}

.contrast p.main-page-header-dr {
    background: #fff!important;
    color: #111!important;
    width: 320px;
    padding-right: 130px;
    padding-top: 14px;
    padding-bottom: 0px;
    margin-top: -14px;
    height: 68px;
    background-image: url('../../../s3modnew/img/flag-contrast-sp.png')!important;
    background-repeat: no-repeat!important;
    background-position: right!important;
}

.contrast div#MainPageHeader div#MainPageTopbar {
    border: 1px solid #fff;
}

.contrast .main-page-header-logo {
    background-image: url('../../../s3modnew/img/logo-rodape-negativo.png')!important;
    background-repeat: no-repeat!important;
    background-size: contain !important;
}

.contrast .main-page-header-logo-link {
    padding-top: 20px!important;
}



/* Cabeçalho - Rodapé Governo SP */


.header-governosp {
    background-color: #FFF;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .15);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
}

.header-governosp-link {
    font-family: Verdana, sans-serif;
    font-size: 21px;
    font-weight: bold;
    margin-left: 20px;
    color: #FFF;
    margin-top: 18px;
    vertical-align: middle;
    display: inline-block;
}

.header-governosp-link:hover {
    color: #FFF;
}

.ul-header-social {
    list-style-type: none;
    display: inline-block;
    vertical-align: middle;
    margin: 0;
}

.ul-header-social > li {
    display: inline-block;
    vertical-align: middle;
    background-color: #231f20;
    border-radius: 4px;
    cursor: pointer;
    width: 26px;
    height: 26px;
    margin-left: 1px;
    text-align: center;
}

.ul-header-social > li a.link-header-social {
    text-decoration: none;
    display: block;
    width: 100%;
    height: 100%;
}

.ul-header-social > li:hover {
    background-color: #464547;
}

.ul-header-social > li img {
    width: 15px;
    height: 15px;
}

.text-governosp {
    display: inline-block;
    vertical-align: middle;
    margin-left: 5px;
    font-family: Helvetica, sans-serif;
    font-size: 15px;
    color: #231f20;
    margin-right: 30px;
}

.col-social-default {
    text-align: right;
    padding-top: 19px;
}

.col-social-mobile {
    display: none;
    text-align: right;
}

@media (max-width: 767px) {
    .col-social-mobile {
        display: block;
        padding: 10px;
    }

    .col-social-mobile .text-governosp {
        margin-right: 15px;
    }

    .col-social-default {
        display: none;
    }
}

@media (max-width: 325px) {
    .ul-header-social {
        margin-right: auto;
        margin-left: auto;
        width: 100%;
        text-align: center;
    }

    .text-governosp {
        display: none;
    }
}

.footer-governosp {
    background-color: #FFF;
    -webkit-box-shadow: 0 0 4px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, .15);
    width: 100%;
    padding: 10px 30px 20px;
    text-align: right;
    position: relative;
}

.footer-governosp-menu {
    display: inline-block;
    vertical-align: bottom;
    list-style-type: none;
    margin: 0;
}

.footer-governosp-menu li {
    display: inline-block;
    vertical-align: middle;
    padding: 3px 15px;
    font-family: Helvetica, sans-serif;
    position: relative;
}

.footer-governosp-menu li a {
    color: #464547;
}

.footer-governosp-menu li a:hover {
    color: #231f20;
}

.footer-governosp-menu li ~ li:after {
    display: block;
    width: 1px;
    height: 16px;
    top: 50%;
    margin-top: -8px;
    right: 100%;
    background-color: #464547;
    content: " ";
    position: absolute;
}

.logo-rodape {
    display: inline-block;
    vertical-align: middle;
    margin-left: 30px;
}

.logo-rodape img {
    height: 46px;
}

.footer-governosp-border {
    border: 4px solid #231f20;
    border-bottom-right-radius: 10px;
    border-color: #231f20;
    position: absolute;
    bottom: 0px;
    left: 0;
    right: 10px;
    z-index: 1;
}


@media (max-width: 767px) {
    .footer-governosp-menu {
        padding: 0;
    }

    .footer-governosp-menu li {
        padding: 3px 10px;
    }

    .logo-rodape {
        margin: 0;
    }

    .logo-rodape img {
        height: 26px;
    }
}

@media (max-width: 325px) {
    .footer-governosp-menu li {
        padding: 3px 8px;
        font-size: 10px;
    }
}