﻿:root {
    --black: #1f1f1f;
    --darkgrey: #5b5b5b;
    --grey: #999898;
    --lightgrey: #eeeeee;
    --whitegrey: #f1f1f1;
    --white: #ffffff;
    --primary-black: #080a2d;
    --primary-blue: #3f6593;
    --primary-orange: #e63023;
    --warning: #d8411b;
    --darkblue: #0d728c;
    --blue: #44a3bb;
    --green: #89a437;
    --yellow: #ffc600;
    --mint: #32b198;
    --pink: #d12275;
    --purple: #9b2bcf;
    --deepblue: #3e6dda;
    --salmon: #f66b4a;
    --lilac: #ad54f8;
}

body {
    margin: 0;
    padding: 0;
    font-family: Roboto, sans-serif;
}
.left{float:left}
.right{float:right}

.right0{right: 0px;}
.right8{right: 8px;}
.clear {clear: both;}

.portal {
    position: relative;
}

.portal a {
    color: var(--black);
    text-decoration: none;
    font-size: 0.75rem;
}

.portal h1,
.portal h2,
.portal h3,
.portal h4,
.portal h5,
.portal h6,
.portal p {
    font-family: Roboto, sans-serif;
}

.portal h1,
.portal h2,
.portal h3,
.portal h4,
.portal h5,
.portal h6 {
    font-weight: bold;
}
.portal h1{
    font-weight: normal;
    color: black;
    font-size: 1.6rem;
    padding: 15px 0 25px 0;
}

.portal input,
.portal textarea,
.portal button,
.portal select,
.portal div,
.portal a {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.portal .container {
    max-width: 1240px;
    margin: 0 auto;
}

.portal .header {
    border-bottom: 1px solid #d9dde2;
    height: 80px;
    box-shadow: 0 0 3rem 0 rgba(0, 0, 0, 0.1);
}

    .portal .header .top-container {
        background: url(../img/grid.png)rgb(30 75 131 / 90%);
        width: 100%;
    }

    .portal .header .top {
        height: 40px;
        display: flex;
        align-items: center;
        max-width: 1240px;
        margin: 0 auto;
    }

        .portal .header .top ul {
            margin: 0;
            padding: 0;
            list-style: none;
        }

            .portal .header .top ul li {
                display: inline-block;
                color: white;
                padding: 0 15px;
            }

        /********** Top links list **********/

        .portal .header .top .list {
            flex: 1;
            display: flex;
            justify-content: flex-end;
            height: 100%;
            position: relative;
        }

            .portal .header .top .list a,
            .portal .header .list span,
            .portal .header .top .list .search {
                font-size: 1rem;
                letter-spacing: .05em;
                color: white;
                display: inline-block;
                vertical-align: middle;
                line-height: 39px;
            }

            .portal .header .top .list .links a {
                font-size: .8rem;
                background: white;
                color: #152c48;
                padding: 0 15px;
                margin: 5px 0;
                line-height: 30px;
                border-radius: 20px;
                font-weight: 600;
                border: none;
                z-index: 1003;
                position: relative;
            }

            .portal .header .top .list ul.social {
                margin-right: 20px;
            }

            .portal .header .links a {
                font-size: .8rem;
                background: #589eda;
                color: white;
                padding: 0 15px;
                margin: 5px 0;
                line-height: 30px;
                border-radius: 20px;
                /* font-weight: 600; */
                border: none;
                z-index: 3;
                position: relative;
                /* height: 31px; */
                padding: 5px 20px !important;
                margin: 20px 0 !important;
            }
            .portal .header .links a:hover{
                color: white!important;
            }

.image-content {
    border: 5px solid #f5f8fd;
    width: 100%;
}


.grid-container {
    display: grid;
    grid-template-columns: 1fr;
}

.grid-item {
    grid-column: span 1;
}

@media (min-width: 720px) {
    .grid-container {
        grid-template-columns: 1fr 1fr;
    }
}

@media (min-width: 1020px) {
    .grid-container {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

/* ========================================================= FOOTER ====================================================== */

.footer{ width: 100%; background-color: #000; background-image:url(../img/footer_bg.png); padding:15px 0 15px;border-top:1px solid #5d5d5d; color: grey; font-size: 11pt;  }
.footer a {color:#ccc!important;}
.footer a:hover {color:#fff;}
.footer p{margin-bottom: 0px!important;}
.footer img{width: 70%; padding-top: 6px; float: right;}
.footer .footer-top {padding: 10px 20px 0px 20px; text-transform: uppercase; font-size: 0.9rem; align-items: center; justify-content: space-between;}
.footer .footer-top .left{text-transform: none; /*margin-bottom: 10px;*/}
.footer .footer-top .left span{color: white;}
.footer .footer-top a {margin: 5px 0 5px 8px; white-space: nowrap; display: inline-block;}
.footer .footer-top a.last {margin-left: 10px;}
.footer .footer-top a i {font-size: 14pt; position:relative; top:3px}
.footer .footer-top.right{padding-top: 0px}

.footer .footer-bottom {padding: 0px 20px 20px 20px; justify-content: space-between;}
.footer .footer-bottom p {font-size: 0.9rem; margin-top: 0; line-height: 1.5;}
.footer .footer-bottom .right {display: flex; align-items: center; justify-content: center;}
.footer .footer-bottom .right img {width: 70%; padding-top: 6px;}
.footer .footer-bottom .right.governo img {width: 80%;}

.footer hr.black { border: solid #5d5d5d!important; border-width: 1px 0 0!important; clear: both; margin: 15px 20px!important; height: 0; }

@media screen and (max-width: 768px) {
    .footer {
        text-align: center
    }
}

.container-center {
    min-height: 400px;
    /*display: flex;*/
    padding: 20px;
}

.content-center {
    background-color: var(--white);
    width: calc(100% - 400px);
    padding: 20px 40px 40px 20px;
}

    .content-center h1 {
        font-weight: 400;
        margin: 10px 0 10px 0;
        font-size: 1.5rem;
        text-align: left;
        color: var(--black);
    }

.content-center {
    text-align: justify;
    /* font-weight: 300; */
    font-size: 0.9rem;
    line-height: 1.5;
}



.conteudo {
    padding-top: 10px;
}

    .conteudo a {
        border-bottom: 1px dotted var(--black);
        color: black;
        font-size: 1em;
    }

        .conteudo a:hover {
            text-decoration: none;
            border-bottom-style: solid;
        }

    .conteudo h2 {
        width: 100%;
        font-weight: 500;
        color: var(--black);
        font-size: 1.1rem;
        /* padding-top: 20px; */
        display: flex;
        align-items: center;
        /* letter-spacing: -1px; */
        margin: 20px 0 20px 0;
    }

    .conteudo h3 {
        padding: 5px 0 15px 0;
        font-size: 1rem;
    }


    .conteudo ul,
    .conteudo ol {
        padding-left: 30px
    }

        .conteudo ul li {
            padding-bottom: 5px
        }

.content-center strong {
    font-weight: 600;
}


.btn {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.42857143;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px;
    font-size: 0.8rem;
    text-transform: uppercase;
    line-height: 2.29;
    text-align: left;
    color: #373636;
    border-radius: 29.5px;
    background-color: transparent;
    border: solid 1px #373636;
    padding: 5px 20px;
    margin-left: 20px;
    background-size: 200% 100%;
    background-image: linear-gradient(to right, transparent 50%, rgb(49 67 110) 50%);
    transition: background-position .3s cubic-bezier(0.19, 1, 0.22, 1) .1s, color .5s ease 0s, background-color .5s ease;
}

.btn-auth {
    background-color: #009FE0;
    color: white;
    border: none;
    padding-left: 25px;
    font-weight: 400;
    margin-left: 0px;
    background-image: linear-gradient(to right, transparent 50%,rgb(67 140 219) 50%) !important;
    transition: background-position .3s cubic-bezier(0.19, 1, 0.22, 1) .1s, color .5s ease 0s, background-color .5s ease !important;
}

    .btn-auth:hover {
        background-color: #009FE0;
        border-color: #009FE0;
        background-position: -100% 100%;
    }

    .btn-auth img {
        position: relative !important;
        top: 5px !important;
        left: -5px !important;
        width: 20px !important;
    }

.btn.more {
    margin-left: 0px;
    color: white;
    border-color: white;
}

.btn-white {
    background-image: linear-gradient(to right, transparent 50%,rgb(255 255 255) 50%) !important;
    transition: background-position .3s cubic-bezier(0.19, 1, 0.22, 1) .1s, color .5s ease 0s, background-color .5s ease !important;
}

    .btn-white:hover {
        background-color: white !important;
        border-color: white !important;
        background-position: -100% 100% !important;
        color: black !important;
    }

.btn:hover {
    color: rgba(255, 255, 255, 1);
    background-color: rgb(49 67 110);
    border-color: rgb(49 67 110);
    background-position: -100% 100%;
}

/* Modal
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.modalDialog {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 99999;
    opacity: 1;
    -webkit-transition: opacity 400ms ease-in;
    -moz-transition: opacity 400ms ease-in;
    transition: opacity 400ms ease-in;
    pointer-events: auto;
    display: none;
    overflow-y: auto;
}

.modalDialogHidden {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 99999;
    opacity: 0;
    -webkit-transition: opacity 400ms ease-in;
    -moz-transition: opacity 400ms ease-in;
    transition: opacity 400ms ease-in;
    pointer-events: none;
}

.modalDialog > div {
    max-width: 1000px;
    position: relative;
    margin: 5% auto;
    background: #fff;
    text-align: center;
    box-shadow: 0 1px 1px 0 rgb(0 0 0 / 1%), 0 1px 5px 6px rgb(0 0 0 / 10%);
    border-radius: 10px;
    z-index: 11;
}

.modalDialog .modal-content {
    display: flex;
}

.modalDialog .block {
    flex: 1;
    padding: 40px;
}

    .modalDialog .block.left {
        background-image: linear-gradient(to bottom right, #1b4774, #2b6096);
        color: white;
        border-top-left-radius: 10px;
        border-bottom-left-radius: 10px;
    }

        .modalDialog .block.left .titulo,
        .modalDialog .conteudo h2 {
            color: white;
        }

.modalDialog h4 {
    font-size: 40pt;
    color: #aaa;
}

.modalDialog p.titulo {
    font-size: 16pt;
    margin-bottom: 20px;
    color: #0A243E;
}

.modalDialog .descricao {
    margin-bottom: 10px;
}

    .modalDialog .descricao p {
        font-size: 10.5pt;
        line-height: 1.3;
        margin-bottom: 10px;
        text-align: left;
    }

.portal .modalDialog .button.medium {
    padding: 9px 22px 8px !important
}

.portal .modalDialog .button.gray {
    box-shadow: none !important;
    border: 1px solid #eae7e7 !important;
    color: #777;
}


@media (max-width: 1000px) {
    .content-center {
        padding-right: 20px;
    }
}

/* Progress ---------------------- */
.progress-wrapper {
    position: fixed;
    background-color: #FAFAFA;
    z-index: 2147483647 !important;
    opacity: 0.8;
    overflow: hidden;
    text-align: center;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    padding-top: 20%;
}

.progress {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    right: 0;
    left: 0;
    z-index: 9999999;
    background-color: #ffffff;
    opacity: 0.8;
}



.modalAutenticar .block {
    flex: 1;
    padding: 20px;
}

.modalAutenticar .titulo {
    margin-top: 10px !important;
    margin-bottom: 20px !important;
    display: flex;
    justify-content: center;
    text-transform: uppercase;
    font-size: 14pt !important;
}

.modalAutenticar .autenticar {
    padding: 15px;
    border-top: 10px solid white;
    background-color: white;
}

.modalAutenticar > div {
    max-width: 490px;
    /* Apenas isto para aparecer à esquerda */
    margin: 0;
    border-radius: 0px;
    height: 100%;
    overflow-y: auto;
}
.modalAutenticar .autenticar .btn.encontrar {
    padding: 5px 20px 3px 20px;
    margin-top: 20px;
    width: calc(100% - 40px);
    text-align: center;
}

.modalAutenticar .item {
    margin: 15px 0;
}

    .modalAutenticar .item .label {
        font-weight: bold;
    }




    /********** Navigation **********/
.toggleMenu {
    display: none;
    padding: 20px 10px 10px 0;
    color: var(--primary-blue);
    display: inline-block;
    cursor: pointer;
    position: absolute;
    top: 5px;
    z-index: 10;
    right: 10px;
    font-size: 19pt;
}

.portal .header-scrolled .toggleMenu {
    top: -5px;
}

.portal .header .nav {
    height: 80px;
    margin: 0 20px;
    display: flex;
    align-items: center;
    transition: all .2s ease-in-out;
}

.portal .header .nav h1 {
    font-weight:normal;
}

    .portal .header .nav img {
        width: 50px;
        margin-right: 10px;
    }

    .portal .header .nav .logo {
        display: flex;
    }

    .portal .header .nav .logo a {
        font-size: 20pt;
        /*display: flex;*/
        align-items: center;
        color: var(--primary-blue);
    }

    .portal .header .nav > a {
        display: block;
        height: 100%;
        position: relative;
        transition: all .2s ease-in-out;
        flex: 1;
    }

    .portal .header .nav > ul {
        flex: 1;
        display: flex;
        justify-content: flex-end;
        align-items: flex-end;
        font-size: 1rem;
        padding: 0;
        /* margin-right: -20px; */
        transition: all .2s ease-in-out;
        list-style: none;
    }

        .portal .header .nav > ul li {
            margin: 0;
            font-size: .1rem;
            color: var(--black);
            font-weight: 400;
        }

.portal .header .top-menu .links a {
    font-size: 0.9rem;
    display: flex;
    align-items: center;
}

.portal .header .top-menu .links a i {
    font-size: 9pt;
    display: inline-block;
    margin-right: 10px;
}

            .portal .header .nav > ul li:hover,
            .portal .header .nav > ul li:focus,
            .portal .header .nav > ul li.active {
                color: var(--primary-orange);
            }

            .portal .header .nav > ul li a {
                padding: 0 20px;
                display: inline-block;
                font-size: 0.9rem;
            }

        .portal .header .nav > ul > li > a {
            padding: 31px 20px;
            font-size: 1rem;
        }

.portal .header-scrolled .nav > ul > li > a {
    padding: 21px 20px;
}

/* @media screen and (max-width:900px){
    .sidebar .nav{display: none;}
} */


.portal .header .nav > ul > li > ul {
    position: absolute;
    top: 85px;
    border-top: 3px solid #23dbdb;
    visibility: hidden;
    padding: 0px;
    z-index: 100;
}

.portal .header .nav li a:hover {
    color: #3f6593;
}

.portal .header .nav > ul > li.hover > ul,
.portal .header .nav > ul > li:focus-within > ul {
    top: 80px;
    background-color: white;
    visibility: visible;
    border: 1px solid #e0e0e0;
}

.portal .header-scrolled .nav > ul > li.hover > ul {
    top: 60px;
}

.portal .header .nav ul ul li {
    width: 250px;
    display: list-item;
    position: relative;
    border-top: none;
    background-color: white;
    border-bottom: 1px solid rgb(230, 227, 227);
}

    .portal .header .nav ul ul li a {
        line-height: 45px;
        padding: 0 20px;
        display: block;
    }

.top-menu > li > .parent {
    background-image: url("../img/downArrow.png");
    background-repeat: no-repeat;
    background-position: right;
}

@media screen and (max-width: 1000px) {
    /* .active {
        display: block;
    } */
    .portal .header .nav > ul {
        border-bottom: 1px solid #002060;
        margin-bottom: 10px;
        position: absolute;
        top: 65px;
        width: 100%;
        background-color: white;
        display: block;
        z-index: 11;
        left: 0px;
    }

    .portal .header-scrolled .nav > ul {
        top: 44px;
    }

    .portal .header .nav > ul a {
        color: black;
    }

    .portal .header .nav > ul > li {
        float: none;
        /* padding: 0 20px; */
    }

    .portal .header .nav > ul li.hide {
        display: none;
    }

    .portal .header .nav > ul li li a.hover,
    .portal .header .nav > ul li li li a.hover {
        background-color: transparent;
    }

    .portal .header .nav > ul li.hover > a.parent {
        background-image: url("../img/upArrow.png");
        background-repeat: no-repeat;
        background-position: 95% 50%;
        background-color: transparent;
    }

    .portal .header .nav > ul li li.hover > a.parent {
        background-image: url("../img/upArrow.png");
        background-repeat: no-repeat;
        background-position: 95% 50%;
        background-color: transparent;
    }

    .portal .header .nav > ul > li > .parent {
        background-position: 95% 50%;
    }

    .portal .header .nav > ul li li .parent {
        background-image: url("../img/downArrow.png");
        background-repeat: no-repeat;
        background-position: 95% 50%;
    }

    .portal .header .nav > ul ul {
        /* display: block; */
        width: 100%;
        border: none;
    }

    .portal .header .nav ul ul li {
        width: 100%;
    }

    .portal .header .nav > ul > li > a {
        border-top: 1px solid #dae3f3;
        line-height: 1;
        display: block;
        padding: 20px;
    }

    .portal .header .nav > ul > li.hover > ul,
    .portal .header .nav > ul > li li.hover ul {
        position: static;
        width: 100%;
        border: none;
    }

        .portal .header .nav > ul > li.hover > ul > li.hover > ul {
            width: 100%;
        }

    .portal .header .nav > ul li li a {
        background: white;
        /* border-top: 1px solid #dae3f3; */
        color: #002060;
        font-size: 10pt;
        padding-left: 40px;
    }

    .portal .header .nav > ul li li li a {
        background: white;
        border-top: 1px solid #dae3f3;
        padding-left: 60px;
    }

    .portal .header .nav > ul li li {
        background-color: white;
    }

        .portal .header .nav > ul li li.hover {
            background-color: white;
        }
    /* .fa-xmark{
        min-width: 22px;
    } */
    #search-icon, #search-mini-icon {
        background-image: url(../img/toggle-menu-buttons.png);
        background-position: -92px -6px;
        width: 30px;
        height: 30px;
        float: right;
    }

    #menu-icon, #menu-mini-icon {
        background-image: url(../img/toggle-menu-buttons.png);
        background-position: -8px -6px;
        width: 26px;
        height: 30px;
        float: right;
        margin-left: 10px;
    }

        #menu-icon.active, #menu-mini-icon.active {
            background-image: url(../img/toggle-menu-buttons.png);
            background-position: -51px -6px;
        }

        #menu-mini-icon.active {
            margin-right: 0px;
        }
}

@media screen and (max-width: 425px) {
    .portal .header .nav img {
        width: 40px;
        margin-right: 10px;
    }

    .portal .header .nav .logo a {
        font-size: 16pt;
        display: flex;
        align-items: center;
        color: var(--primary-blue);
    }
}


/** LOGIN **/

.login {
    background: #fff;
    margin: 30px auto 0 auto;
    padding: 20px;
    overflow: hidden;
    text-align: center;
    border-radius: 5px;
    max-width: 400px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.login .button{width:100%; margin-top: 15px;}
.login .label{text-align:left;}
.login .ouAuthGOV{border-top:1px solid #DADADA;margin-top: 20px;}
.login .ouAuthGOV span{display:block; margin-top:-12px; background:white; width:50px; margin:-10px auto 20px auto; font-size:11pt}
.login .tituloAuthGOV{font-size: 11pt;}
.login .btnAuthGOV {
    background: #009FE0 url(../img/logo_autenticacao_gov.png) center no-repeat;
    margin: 20px 0 0;
    width: 100%;
    height: 40px;
    display: block;
    text-align: center;
    border: none;
    border-radius: 50px;
    max-width: 220px;
}
    .login .btnAuthGOV:hover {
        background-color: #589eda;
        cursor: pointer
    }


/* Alertas Home */
.alert {padding: 10px 15px; color: #fefefe; position: relative; margin: 10px 0; }
.alert .msg { padding: 0 20px 0 40px;}
.alert .msg a { text-decoration: underline; color: white;}
.alert p { margin: 5px 0; color: white; font-size: 10pt;}
.alert .toggle-alert {position: absolute; top: 7px; right: 10px; display: block; text-indent: -10000px; width: 20px; height: 20px; border-radius: 10px;
	-webkit-box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.1), 1px 1px 1px rgba(255, 255, 255, 0.1);
	-moz-box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.1), 1px 1px 1px rgba(255, 255, 255, 0.1);
	box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.1), 1px 1px 1px rgba(255, 255, 255, 0.1);
	background: rgba(0, 0, 0, 0.08) url("../img/alert-icons/alert.png") no-repeat 6px 6px;
}
.info-box {		background: #2fa9f6 url("../img/alert-icons/info.png") no-repeat 14px 10px;}
.success-box {	background: #7EB62E url("../img/alert-icons/success.png") no-repeat 14px 10px;}
.error-box {	background: #f64b2f url("../img/alert-icons/error.png") no-repeat 14px 10px;}
.notice-box {	background: #ff9800 url("../img/alert-icons/notice.png") no-repeat 14px 10px;}
.download-box {	background: #a555ca url("../img/alert-icons/download.png") no-repeat 14px 10px;} 


#suiteBarDelta{display:none}
#s4-ribbonrow{display:none}