/* =============== GERAL ======================*/

html,
body,
* {
    font-family: Raleway, Arial, sans-serif;
}

html,
body {
    font-weight: 500;
    font-size: 14px;
}

*:active,
*:focus,
a:focus {
    text-decoration: none !important;
    outline: none;
}

@media (min-width: 1200px) {
    .menu ul.level-1 {
        width: 1140px;
        left: calc(50% - 570px);
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .menu ul.level-1 {
        width: 940px;
        left: calc(50% - 470px);
    }
    .menu .logo img {
        height: 70px !important;
        margin-top: 5px;
    }
    .menu.fixed .logo img {
        height: 58px !important;
        margin-top: 0;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .topo .social {
        display: none;
    }
    .menu ul.level-0 {
        display: block;
        margin: 0 auto !important;
        float: none !important;
    }
    .menu ul.level-1 {
        width: 720px;
        left: calc(50% - 360px);
    }
    .menu .logo {
        text-align: center !important;
        margin: 0 auto;
        float: none !important;
        display: block !important;
    }
    .menu .logo img {
        height: 80px;
    }
}

@media (max-width: 767px) {
    .topo .social,
    .topo .busca {
        display: none;
    }
    .fixed .navbar-toggle {
        margin-top: -4px;
    }
    .menu ul.level-0 {
        float: none !important;
        display: block;
    }
    .menu ul.level-1 {
        position: inherit !important;
        display: block;
    }
    .menu ul.level-0 li,
    .menu ul.level-1 li,
    .menu ul.level-2 li {
        width: 100% !important;
        float: none !important;
        display: block !important;
    }
    .footer .copy {
        margin: 15px 0 !important;
    }
}

@media (max-width: 480px) {
    .menu .logo img {
        height: 75px !important;
    }
    .navbar-toggle {
        margin-top: 4px !important;
    }
    .fixed .navbar-toggle {
        margin-top: -6px !important;
    }
    .menu-footer ul.level-0 li {
        width: 100% !important;
    }
    .menu-footer ul.level-1 {
        margin-bottom: 25px;
    }
    .tool-bar-superior .text-right {
        display: none !important;
    }
}

@media (max-width: 360px) {
    .menu .logo img {
        height: 70px !important;
    }
    .navbar-toggle {
        margin-top: 1px !important;
    }
    .fixed .navbar-toggle {
        margin-top: -6px !important;
    }
    .topo {
        height: 3px !important;
    }
}


/*========== GERAL ==========================*/

.mais {
    color: #e30614;
    font-weight: bold;
    text-transform: uppercase;
}

.mais:hover {
    color: #003368;
}

.rede {
    margin-top: 50px;
}

.no-padding {
    padding: 0;
}

.no-margin {
    margin: 0;
}

.no-float {
    float: none;
    display: block;
}

.no-float-left {
    clear: left;
}

.divider {
    border-bottom: 1px dotted #ddd;
    margin: 30px 0;
}


/* =============== TOPO ======================*/

.topo {
    background-color: #003368;
    padding: 0;
    position: relative;
    overflow: hidden;
    height: 47px;
    z-index: 101;
}

.topo .casas {
    margin: 11px 0;
    overflow: hidden;
}

.topo .casas li {
    float: left;
    display: inline-block;
    margin-right: 12px;
}

.topo .casas li a {
    opacity: 0.5;
}

.topo .casas li a:hover,
.topo .casas li a.active {
    opacity: 1;
}

.topo .social {
    margin: 0;
    overflow: hidden;
}

.topo .social li {
    float: left;
    display: inline-block;
    border-left: 1px solid #27527f;
}

.topo .social li a {
    padding: 8px 10px;
    color: #fff;
    font-size: 1.6em;
    display: block;
    text-align: center;
}

.topo .social li a i {
    width: 22px;
    text-align: center;
}

.topo .social li a:hover {
    color: #9fb3c9;
    background-color: #002e60;
}

.topo .busca {
    margin: 6px 18px 6px 0;
    position: relative;
}

.topo .busca input {
    border-radius: 18px;
    border: 1px solid #2d5d91;
    background-color: #003368;
    padding: 6px 12px;
    color: #9fb3c9;
    width: 180px;
    transition: width .4s;
    transition-timing-function: ease-out;
}

.topo .busca input:focus {
    width: 250px;
    transition: width .4s;
    transition-timing-function: ease-out;
}

.topo .busca button {
    background: none;
    border: none;
    position: absolute;
    top: 3px;
    right: 0;
}

.topo .busca button i {
    color: #fff;
    font-size: 1.4em;
}


/* =============== MENU ======================*/

#navbar-collapse-1 {
    padding: 0;
}

.menu {
    background-color: #f8f8f8;
    padding: 0;
    margin: 0;
    box-shadow: 0 -5px 10px 0 #000;
    border-radius: 0;
    border: none;
    z-index: 100;
}

.menu .logo {
    float: left;
    display: inline-block;
    text-align: left;
}

.menu .logo a {
    display: inline-block;
}

.menu .logo img {
    padding: 16px 0;
    height: 80px;
    transition: all .4s;
}

.menu.fixed .logo img {
    padding: 7px 0;
    height: 58px;
    transition: all .4s;
}

.menu .navbar-header {
    margin: 16px 0 0;
}

.menu.fixed {
    position: fixed;
    width: 100%;
    top: 0;
    border-top: 4px #003468 solid;
}

.menu-placeholder {
    height: 0;
}


/*========== NIVEL 0 ================*/

.menu ul.level-0 {
    float: right;
    margin: 0;
    padding: 0;
    padding-top: 7px;
}

.menu ul.level-0 li {
    float: left;
    display: inline-block;
    overflow: hidden;
}

.menu ul.level-0 li a.link-0 {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.1em;
    padding: 20px 14px 28px;
    /*padding: 1.15em 1em 1.2em;*/
    display: block;
    color: #003468;
    transition: padding .4s;
}

.menu ul.level-0 li:hover a.link-0 {
    color: #e30614;
    text-decoration: none;
}

.menu ul.level-0 li::before {
    content: "";
    display: block;
    background-color: #e30614;
    position: relative;
    top: 70px;
    width: 0;
    height: 3px;
    transition: top .4s;
}

.menu ul.level-0 li:hover::before {
    width: 100%;
    transition: width .3s;
    transition-timing-function: ease-out;
}

.menu ul.level-1 li::before,
.menu ul.level-2 li::before,
.menu ul.level-3 li::before {
    content: "";
    display: block;
    background: none;
    position: relative;
    top: 0;
    width: 0;
    height: 0;
}

.menu.fixed ul.level-0 li a.link-0 {
    padding: 8px 14px 20px;
    transition: padding .4s;
}

.menu.fixed ul.level-0 li::before {
    top: 50px;
    transition: all .4s;
}


/*========== NIVEL 1 ================*/

.menu ul.level-1 {
    display: block;
    position: absolute;
    background: url(../images/submenu_back.png);
    overflow: hidden;
    padding: 0 25px;
    height: 0;
    z-index: 11;
}

.menu ul.level-1 li {
    float: left;
    display: inline-block;
    width: 22%;
    padding: 10px 0 0;
    margin: 0 1.5% 0;
}

.menu ul.level-1 li a.link-1 {
    display: block;
    width: 100%;
    padding: 10px 0;
    margin: 0 1.5% 5px;
    text-transform: uppercase;
    color: #e30614;
    font-weight: 900;
    font-size: 1.2em;
}

.menu ul.level-1 li a.link-1:hover {
    text-decoration: none;
}

.menu ul.level-0 li:hover ul.level-1 {
    height: auto;
    padding: 20px 25px 30px;
    border-bottom: 3px solid #e30614;
    transition: height .5s, padding .5s;
}


/*========== NIVEL 2 ================*/

.menu ul.level-2 {
    padding: 0;
    overflow: hidden;
}

.menu ul.level-2 li {
    display: block;
    padding: 0;
    width: 100% !important;
}

.menu ul.level-2 li a.link-2 {
    display: block;
    float: none;
    padding: 8px 0;
    color: #000;
    border-bottom: 1px dotted #e30614;
}

.menu ul.level-2 li a.link-2:hover {
    text-decoration: none;
    color: #e30614;
}


/*========== NIVEL 3 ================*/

.menu ul.level-3 {
    padding: 0;
    overflow: hidden;
    list-style: circle inside;
}

.menu ul.level-3 li:first-child {
    padding-top: 6px;
}

.menu ul.level-3 li a {
    display: block;
    float: none;
    padding: 3px 0;
    color: #e30614;
}

.menu ul.level-3 li a:hover {
    text-decoration: none;
    color: #2d5d91;
}


/*============================================== HOME ======================================*/

.home .banner {
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.page-header {
    margin: 60px 0 30px;
    border-bottom: 1px dotted #aaa;
    padding: 0;
}

.page-header h2 {
    font-size: 2.4em;
    text-transform: uppercase;
    font-weight: 700;
    color: #003368;
    display: inline-block;
    padding: 0 0 5px;
    margin: 0 0 -1px;
    border-bottom: 5px solid #e30614;
}

.page-header a {
    font-size: 1em;
    font-weight: 700;
    padding: 0;
    margin: 0;
}

.page-header a:hover {
    color: #003368;
    text-decoration: none;
}

.page-header.inverse {
    border-bottom: 1px dotted #fff;
}

.page-header.inverse a {
    color: #fff;
    border-bottom: 5px solid #e30614;
}

.page-header .mais {
    top: 25px;
    position: relative;
}


/* =============== TURMAS ======================*/

.home .turmas {
    background: #f7f7f7 url(../images/shadow.png) no-repeat top center;
    padding-bottom: 70px;
}

.home .turmas .turma-img {
    text-align: center;
    line-height: 8.8em;
    background: #e30614;
    border-radius: 50%;
    height: 128px;
    width: 128px;
    float: left;
    margin-right: 15px;
    -webkit-transform: rotate3d(0, 1, 0, 0deg);
    transform: rotate3d(0, 1, 0, 0deg);
    transition: transform .4s;
}

.home .turmas .turma:hover .turma-img {
    -webkit-transform: rotate3d(0, 1, 0, 180deg);
    transform: rotate3d(0, 1, 0, 180deg);
    background: #003468;
    transition: transform .4s, background .4s;
}

.home .turmas .turma-img img {
    width: 65%;
}

.home .turmas .turma-content {
    float: left;
    display: inline-block;
    width: calc(100% - 143px);
}

.home .turmas .turma-content h2 {
    color: #e30614;
    font-weight: 700;
    margin: 0;
}

.home .turmas .turma:hover .turma-content h2 {
    color: #003468;
}

.home .turmas .turma-content h4 {
    margin: 5px 0;
    color: #003468;
}

.home .turmas .turma-content p {
    color: #555;
}

.home .turmas .turma-border {
    padding: 0 10px 20px 0;
    margin: 22px 0 0;
    overflow: hidden;
    display: block;
}

.home .turmas #proximas .border-curso {
    border-bottom: 1px dotted #ccc;
    overflow: hidden;
}

@media (max-width: 480px) {
    .home .turmas .turma-border .turma-img {
        float: none;
        display: block;
        margin: 0 auto 15px;
    }
    .home .turmas .turma-border .turma-content {
        text-align: center;
    }
    .home .turmas .turma-content {
        display: block;
        width: 100%;
        text-align: center;
    }
}


/*========== EM DESTAQUE ================*/

.destaque-home {
    overflow: hidden;
    padding-bottom: 45px;
}

.destaque-home .destaque-img::before {
    content: "";
    top: 0;
    left: 0;
    background: #003368;
    position: absolute;
    display: block;
    margin: 0;
    height: 0;
    z-index: 2;
    opacity: .6;
    width: 100%;
}

.destaque-home a:hover .destaque-img::before {
    height: 100%;
    transition: height .4s;
}

.destaque-home .destaque-img {
    display: block;
    overflow: hidden;
    z-index: 1;
    border: 1px solid #eee;
}

.destaque-home .destaque-caption {
    background: #003368;
    color: #fff;
    text-align: center;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0;
    position: absolute;
    z-index: 2;
}

.destaque-home .destaque-caption h3 {
    padding: 10px;
    margin: 0;
    font-size: 1.3em;
    font-weight: 700;
    z-index: 3;
    position: relative;
    overflow: hidden;
}

.destaque-home .destaque-caption .text {
    font-size: 1em;
    z-index: 3;
    position: relative;
    width: 100%;
    padding: 0 10px;
    height: 0;
    opacity: 0;
    overflow: hidden;
}

.destaque-home .destaque-item a:hover .destaque-caption .text {
    margin: -5px 0 10px;
    height: 100%;
    opacity: 1;
    transition: opacity .4s, height .4s;
}

.destaque-home .destaque-caption .text p {
    margin: 10px 0 0 !important;
}

.destaque-home .destaque-item .destaque-anima-back {
    background: #e30614;
    bottom: 0;
    height: 0;
    width: 100%;
    position: absolute;
    z-index: 0;
    transition: height .4s;
}

.destaque-home .destaque-item a:hover .destaque-anima-back {
    height: 100%;
    transition: height .4s;
}

.destaque-home iframe {
    position: absolute;
    top: 0;
    bottom: 0;
    width: calc(100% - 30px);
    height: 100%;
}

.destaque-home .shadow {
    width: 93%;
}


/* =============== NOTICIA HOME ======================*/

.noticias-home {
    background: #e5eaf0;
    padding-bottom: 40px;
    overflow: hidden;
}

.noticias-home .item {
    margin-bottom: 30px;
}

.noticias-home .row a {
    color: #003468;
}

.noticias-home .row a:hover {
    color: #fff;
    text-decoration: none;
}

.noticias-home .item-container {
    background: #fff;
}

.noticias-home .row a .noticia-img img {
    position: relative;
    z-index: 1;
}

.noticias-home .row a .noticia-img {
    position: relative;
    overflow: hidden;
    height: 100%;
    width: 100%;
}

.noticias-home .row a .noticia-img:before {
    content: "";
    background: #003468;
    position: absolute;
    margin: 0;
    left: 0;
    right: 0;
    top: 0;
    bottom: 100%;
    opacity: .6;
    z-index: 5;
    transition: bottom .4s;
}

.noticias-home .row a:hover .noticia-img:before {
    bottom: 0;
    transition: bottom .4s;
}

.noticias-home .row a .lupa {
    top: 40%;
    left: calc(50% - 30px);
    position: absolute;
    z-index: 6;
    margin: 0 auto;
    opacity: 0;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #9eb5cc;
    padding: 6px;
    transition: opacity .6s;
}

.noticias-home .lupa-dentro {
    opacity: .8;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #003468;
    text-align: center;
    font-size: 1.7em;
    line-height: 200%;
}

.noticias-home .lupa-dentro i {
    color: #9eb5cc;
}

.noticias-home .row a:hover .lupa {
    opacity: .7;
    transition: opacity .6s;
}

.noticias-home a .noticia-content::before {
    content: "";
    background: #e30614;
    position: absolute;
    margin: 0;
    left: 0;
    right: 0;
    top: 100%;
    bottom: 0;
    z-index: 1;
    transition: top .4s;
}

.noticias-home .row a:hover .noticia-content::before {
    top: 0;
    transition: top .4s;
}

.noticias-home .noticia-content {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.noticias-home .noticia-content p {
    position: relative;
    text-align: center;
    font-size: 1.2em;
    line-height: 1.5em;
    padding: 12px 15px;
    margin: 0;
    z-index: 5;
}


/* ========================= DESTAQUE E NOTICIAS ======================================= */

.noticias-home .slick-arrow,
.destaque-home .slick-arrow {
    padding: 20px 15px;
    position: absolute;
    z-index: 99;
    background: #fff;
    border: none;
    opacity: 0;
    top: 35%;
    transition: opacity .4s;
}

.noticias-home:hover .slick-arrow,
.destaque-home:hover .slick-arrow {
    opacity: .7;
}

.noticias-home .slick-arrow:hover,
.destaque-home .slick-arrow:hover {
    opacity: .9;
}

.noticias-home .slick-prev,
.destaque-home .slick-prev {
    margin-left: 15px;
}

.noticias-home .slick-next,
.destaque-home .slick-next {
    right: 0;
    margin-right: 13px;
}

.noticias-home .slick-list,
.destaque-home .slick-list {
    padding: 15px 0;
    margin: -15px 0 0;
}


/*========== FOOTER ================*/

.footer {
    background-color: #003368;
    border-top: 3px #e30614 solid;
    padding: 60px 0 0;
}

.menu-footer {
    overflow: hidden;
    margin-bottom: 60px;
    color: #fff;
}

.menu-footer ul {
    padding: 0;
    list-style: none;
}

.menu-footer ul a {
    color: #fff;
}

.menu-footer ul.level-0 li {
    width: 31%;
    display: inline-block;
    float: left;
    margin-right: 2.3%;
}

.menu-footer ul.level-0 li:last-child {
    margin: 15px 15px 0 0;
    float: right;
}

.menu-footer ul.level-0 a {
    font-weight: 700;
    font-size: 1.2em;
    text-transform: uppercase;
}

.menu-footer ul.level-1 li {
    display: block;
    float: none;
    width: 100%;
    overflow: hidden;
}

.menu-footer ul.level-1 a {
    font-weight: normal;
    text-transform: uppercase;
    font-size: 1em;
    border-bottom: 1px #9eb5cc dotted;
    display: block;
    margin: 15px 0 3px;
}

.menu-footer ul.level-2 {
    list-style: disc outside !important;
}

.menu-footer ul.level-2 li {
    display: list-item;
    margin-left: 15px !important;
    overflow: visible;
    width: 90%;
    float: none !important;
}

.menu-footer ul.level-2 a {
    text-transform: none;
    font-size: .9em;
    border: none;
    margin: 3px 0;
    display: inline;
}

.menu-footer ul.level-2 a:hover {
    color: #9eb5cc;
}

.menu-footer ul.level-3 {
    list-style: square inside !important;
}

.menu-footer ul.level-3 li {
    display: list-item;
    margin-left: 0 !important;
    width: auto;
    float: none !important;
}

.menu-footer ul.level-3 a {
    color: #9eb5cc;
}

.menu-footer ul.level-1 li:last-child,
.menu-footer ul.level-2 li:last-child,
.menu-footer ul.level-3 li:last-child {
    margin: 0;
}

.footer .copyright {
    background-color: #071f38;
    border-top: 3px #e30614 solid;
    padding: 40px 0;
    color: #fff;
}

.footer .copyright img {
    display: block;
    float: none;
    height: 37px;
}

.footer .copyright .nome {
    clear: both;
    display: block !important;
    float: none;
    margin: 5px 0 0 !important;
}

.footer .copyright .copy {
    text-align: right;
    font-size: .9em;
}

.footer .copyright .copy a {
    font-size: .9em;
    color: #9eb5cc;
}


/*========== NEWSLETTER FORM ================*/

#nletter {
    margin-bottom: 30px;
    background-color: #0d3e70;
    overflow: hidden;
    padding: 15px;
}

#nletter h2 {
    margin: 0 0 5px;
    font-size: 1.7em;
    color: #fff;
}

#nletter p {
    margin: 10px 0 0;
    color: #fff;
}

#nletter .newsletter-info p {
    color: #9eb5cc;
}

#nletter .help-block {
    color: #9eb5cc;
}

#nletter .fv-icon-no-label {
    margin-right: 15px;
}

#nletter .fa-check {
    color: #00CC00;
}

#nletter .fa-times {
    color: #e30614;
}


/* ========================= CONTATO FOOTER ===================================*/

#contato-footer {
    margin-bottom: 30px;
    background-color: #0d3e70;
    overflow: hidden;
    padding: 15px;
    color: #fff;
}

#contato-footer a {
    color: #c9d1e8;
}

#contato-footer a:hover {
    color: #fff;
}

#contato-footer h2:first-child,
#contato-footer h3:first-child,
#contato-footer h4:first-child {
    margin-top: 0;
}

#contato-footer h2,
#contato-footer h3,
#contato-footer h4 {
    margin-bottom: 0;
}

#contato-footer h4 {
    margin: 0;
}


/*============================================== INTERNO ======================================*/


/*========== TITLE ================*/

.interno .title {
    background: #003368 url(../images/shadow.png) top center no-repeat;
    color: #fff;
}

.interno .title h1 {
    margin: 30px 0;
    font-size: 2.5em;
    font-weight: 900;
}


/*========== CONTENT ================*/

.content {
    /*background: #fff;*/
    padding: 0;
    margin: 0;
}

.content .conteudo {
    padding: 50px 15px;
    min-height: 350px;
}

.content .conteudo p {
    text-align: justify;
}

.content .conteudo .content-border {
    background-color: #fcfcfc;
    border: 1px solid #ddd;
    padding: 25px;
    overflow: hidden;
}

.content .conteudo .content-border .img-responsive {
    border: 1px solid #ddd;
}


/*========== TOOL-BAR LISTAS ================*/

.tool-bar-superior {
    background: none;
    border: none;
    border-bottom: 1px dotted #aaa;
    overflow: hidden;
    padding: 6px 0;
    margin: 0 0 30px;
    color: #666;
    min-height: 35px;
}

.tool-bar-superior .total-list,
.tool-bar-superior .per-page span {
    font-size: .9em !important;
}

.tool-bar-superior .text-right {
    float: right;
    display: inline-block;
    padding-right: 10px;
}

.list-view-option {
    float: right;
    position: relative;
    border-bottom: 1px dotted #aaa;
    background-color: #E5E5E5;
    padding: 5px;
    top: -4px;
}

.list-view-option a {
    font-size: 1.4em;
    margin: 8px;
    color: #aaa;
}

.list-view-option a.active {
    color: #003368;
}

.list-view-option a:hover {
    color: #e30614;
}

.list-categoria {
    border-bottom: 1px dotted #aaa;
    background-color: #E5E5E5;
    padding: 4px 5px;
    height: 30px;
    top: -4px;
}

.list-categoria select {
    max-width: 200px;
}

.list-categoria .busca {
    margin-right: 10px;
    width: 180px;
}


/*================= LISTA DE CURSOS ============================================ */

#curso .item-list .texto {
    margin-bottom: 30px;
}

.item-list .detalhes {
    display: block;
    border-top: 1px #CACACA dotted;
    padding: 10px 0 0;
    position: absolute;
    overflow: hidden;
    z-index: 2;
    bottom: 0;
    width: calc(100% - 30px);
    margin: 10px 0;
}

#curso .modalidade h2 {
    margin-top: 0;
}

#curso .modalidade-desc {
    background: #fafafa;
    border: 1px #E5E5E5 solid;
    padding: 15px;
    margin: 0 0 30px;
}


/*========== CONTEUDO ================*/

.legenda {
    padding: 5px;
    display: block;
    background-color: #f5f5f5;
    color: #666;
    font-size: .9em;
}

.conteudo p a {
    color: #e30614;
}

.conteudo p a:hover {
    color: #a50613;
    text-decoration: underline;
}

.conteudo a.btn-danger,
.conteudo a.btn-primary {
    color: #fff;
}

.conteudo a.btn-danger:hover,
.conteudo a.btn-primary:hover {
    color: #fff;
    opacity: .7;
    text-decoration: none;
}

.conteudo h1 {
    color: #003368;
}

.conteudo h2 {
    color: #e30614;
}

.conteudo h3,
.conteudo h4,
.conteudo h5 {
    color: #002a80;
}

.modal-title {
    color: #fff !important;
}


/*========== PAGINAS LEITURA :: PROGRAMAS | NOTICIAS | SERVICOS ================*/

.leitura h1 {
    font-weight: 700;
    margin: 0 0 15px;
}

.leitura .data {
    font-size: .9em;
    font-weight: lighter;
    margin-bottom: 15px;
    display: block;
}

.leitura h2 {
    font-size: 1.5em;
    color: #999;
    margin: 0 0 20px;
}

.leitura .thumbnail {
    margin: 0;
    border-bottom: none;
}

.leitura .thumbnail a:hover {
    border-color: #ddd !important;
    opacity: .85;
}

.leitura .texto {
    line-height: 1.7em;
    background-color: #fcfcfc;
    border: 1px solid #ddd;
    padding: 25px;
}

.leitura .fonte {
    line-height: 1.7em;
    background-color: #f2f2f2;
    border: 1px solid #ddd;
    border-top: none;
    padding: 20px 25px;
    margin: 0 0 10px;
}

.leitura .fonte span {
    color: #666;
    font-style: italic;
}

.leitura .galeria,
.leitura .contato {
    line-height: 1.7em;
    background-color: #f2f2f2;
    border: 1px solid #ddd;
    border-top: none;
    padding: 20px 25px;
    overflow: hidden;
    position: relative;
}

.leitura .galeria {
    padding: 15px;
    margin-bottom: 20px;
}

.leitura .galeria h3 {
    font-weight: 700;
    text-transform: uppercase;
    border-bottom: 1px dotted #888;
    padding: 3px 0;
}

.leitura .media-list {
    margin: 0;
}

.leitura .media-list li {
    margin: 5px;
}

.leitura .media-list .thumbnail {
    margin: 0;
}

.leitura .contato h3 {
    margin: 0;
}

.leitura .contato .investe {
    background-color: #83d307;
    right: 0;
    top: 0;
}


/*================= DETALHES CURSO ============================================ */

.leitura .turmas {
    line-height: 1.7em;
    background-color: #F6F6F6;
    border: 1px solid #ddd;
    border-top: none;
    padding: 20px 25px;
    overflow: hidden;
    background: none;
}

.leitura .turmas .page-header {
    margin-top: 15px;
}

.leitura .turmas h2 {
    margin: 0 0 -1px;
}

.leitura .turmas .table {
    background: #FFF;
}

.leitura.curso .texto {
    position: relative;
}

.leitura .turmas .table th {
    font-weight: bold;
}

.leitura .turmas .table td {
    vertical-align: middle;
}

.leitura .turmas .table a {
    font-size: 1.5em;
}

.leitura .info {
    font-size: 12px;
    margin: 20px 0 0;
    color: #888;
    font-style: italic;
}

@media (max-width: 640px) {
    .leitura .info-turma {
        margin-top: 160px;
    }
}

.leitura .investe {
    position: absolute;
    top: 0;
    right: 0;
    background: #83d307;
    padding: 15px 15px 18px;
    text-align: center;
    color: #fff;
    font-weight: 900;
    font-size: 1.5em;
    line-height: 1.1em;
    max-width: 290px;
    border-bottom-left-radius: 20px;
}

.leitura .investe span {
    font-size: 0.85em;
    display: block;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #c9e79a;
}

.leitura .investe small {
    font-size: 14px;
    display: block;
    line-height: 1.2em;
    margin-top: 10px;
    padding-top: 10px;
    font-weight: 500;
    border-top: 1px dotted #c9e79a;
}

.leitura .table thead th {
    background: #003468;
    color: #fff;
}

.leitura .table ul {
    padding: 0;
    margin: 0;
    list-style: inside;
}

.leitura .table ul li.level-2 {
    margin-left: 27px;
    list-style: square;
}

.leitura .table ul li.level-3 {
    margin-left: 42px;
    list-style: circle;
}


/*========== PAGINAS DE LISTAS :: PROGRAMAS | NOTICIAS | SERVICOS ================*/

.item-list {
    margin-bottom: 30px !important;
    position: relative;
}

.item-list:hover h3,
.item-list:hover a,
.item-list:hover .mais,
.item-list:hover .data,
.item-list:hover .detalhes,
.item-list:hover {
    color: #fff;
    border-color: #fff;
}

.item-list:hover .anima-back {
    height: 100%;
    transition: height .4s;
}

.item-list:hover .shadow {
    opacity: .4;
    transition: opacity .4s;
}

.item-list h3 {
    margin: 0 0 7px;
    font-weight: 700;
}

.item-list h3 a {
    font-size: 1em;
    font-weight: 700 !important;
}

.item-list .item-container {
    border: 1px #E5E5E5 solid;
    background-color: #fafafa;
}

.item-list .content-text {
    display: block;
    padding: 15px;
    position: relative;
    z-index: 2;
}

.item-list .texto {
    margin-bottom: 15px;
}

.item-list .texto .tipo {
    color: #e30614;
}

.item-list:hover .texto .tipo {
    color: #fff;
}

.item-list .data {
    display: block;
    color: #888;
    font-size: .9em;
    margin: 4px 0;
}

.item-list .texto,
.item-list .titulo,
.item-list .data,
.item-list .info,
.item-list .mais {
    position: relative;
    z-index: 1;
}

.item-list h3 a:hover,
.item-list .mais:hover {
    opacity: .8;
    color: #fff;
}

.item-list .thumbnail {
    border: none;
    width: inherit;
    margin: 0;
}

.item-list .area-icon {
    text-align: center;
    background-color: #e30614;
    padding: 50px 0;
    transition: background .4s;
}

.item-list:hover .area-icon {
    text-align: center;
    background-color: #003368;
    padding: 50px 0;
    transition: background .4s;
}


/* =============== ANIMACOES ======================*/

.item .item-container,
.item-list .item-container {
    position: relative;
    height: 100%;
    top: 0;
    bottom: 0;
    z-index: 0;
    overflow: hidden;
    transition: top .4s;
}

.item:hover .item-container,
.item-list:hover .item-container {
    top: -15px;
    transition: top .4s;
}

.item .shadow,
.item-list .shadow {
    content: "";
    background: #888;
    width: 95%;
    height: 2px;
    border-radius: 50%;
    opacity: 0;
    box-shadow: 0 0 3px #000;
    bottom: 0;
    margin: 0 auto;
}

.item:hover .shadow,
.item-list:hover .shadow {
    opacity: .3;
    transition: opacity .4s;
}

.item .anima-back,
.item-list .anima-back {
    background-color: #e30614;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    z-index: 0;
    transition: height .4s;
}


/*========== PAGINAS LISTA GRID ================*/

.grid .item-list .thumbnail {
    display: block;
    margin: 0;
}

.grid .item-list .thumbnail img {
    width: 100%;
}


/*========== PAGINAS LISTA LIST ================*/

.list .item-list .thumbnail {
    display: inline-block;
    float: left;
    margin: 0;
    position: relative;
    z-index: 3;
    top: 0;
    width: auto;
}

.list .item-list .content {
    border: 1px #d7d8d7 solid;
    overflow: hidden;
}

@media (max-width: 768px) {
    .list .item-list .thumbnail {
        margin-bottom: 15px;
    }
    .list .item-list .thumbnail,
    .list .item-list .thumbnail img {
        width: 100%;
    }
}


/*========== PAGINAS SERVICOS | CURSOS================*/

#servico .tool-bar-superior .form-group,
#curso .tool-bar-superior .form-group {
    margin-bottom: 3px;
}

.categoria-desc {
    overflow: hidden;
}

.categoria-desc h2 {
    margin-top: 0;
}

.categoria-desc .categoria-desc-text {
    padding-bottom: 15px;
    border-bottom: 1px dotted #aaa;
    margin-bottom: 30px;
}


/*========== PAGINA DE CONTATO ================*/

#contato {
    padding: 50px 0 0;
}

#contato .contact-form {
    display: block;
    padding: 0 0 30px;
}

.map-contato {
    min-height: 800px;
    margin-top: 30px;
    border-top: 3px solid #e30614;
}

#contato .form-control {
    z-index: 1;
}

#contato-modal #texto_g p {
    padding-left: 15px;
}

.form-control-feedback {
    margin: 4px 0 0;
    font-size: 1.2em;
}

.feedback {
    position: fixed;
    background: #e30614;
    padding: 6px 10px;
    font-size: 12px;
    color: #fdfdfd;
    bottom: 0;
    right: 0;
    border-top-left-radius: 6px;
    z-index: 99;
}

.feedback:hover {
    color: #ededed;
    background: #ed5565;
}

.form-control {
    padding-right: 10px !important;
}

@media (max-width: 767px) {
    .feedback {
        position: relative;
        display: block;
        padding: 15px;
        border-radius: 0;
        text-align: center;
    }
}


/*========== PAGINA DE TRANSPARENCIA ================*/

.menu-transparencia {
    padding-top: 5px;
}

.menu-transparencia ul li {
    margin: 10px 0;
}

.transparencia .cat-descricao {
    margin-bottom: 30px;
}

.transparencia .page-header.first {
    margin-top: 0;
}

.line {
    border-bottom: 1px dotted #d7d8d7;
    overflow: hidden;
}

.transparencia .container .line:last-child {
    display: none;
}

.list-transparencia li {
    margin: 10px 0;
}

.list-transparencia li a,
.menu-transparencia li a {
    color: #e30614;
}

.list-transparencia li a:hover,
.menu-transparencia li a:hover {
    color: #003468;
}

.doc {
    padding-bottom: 30px;
    margin-top: 30px;
    overflow: hidden;
}

.doc .icon {
    width: 22%;
    float: left;
    display: inline-block;
    overflow: hidden;
}

.col-md-12.doc .icon {
    width: 10%;
}

.doc .icon img {
    width: 90%;
    border-radius: 50%;
    margin-right: 10px;
}

.doc .icon img:hover {
    opacity: .8;
}

.doc h2 {
    font-size: 1.6em;
    font-weight: 700;
    margin: 0 0 5px;
}

.doc .content {
    float: left;
    width: 78%;
}

.col-md-12.doc .content {
    width: 90%;
}

.doc .texto {
    margin: 5px 0 10px;
}

.line .doc img {
    opacity: 1;
    -webkit-transform: rotate3d(0, 1, 0, 0deg);
    transform: rotate3d(0, 1, 0, 0deg);
    transition: transform .4s, opacity .4s;
}

.line .doc:hover img {
    opacity: .7;
    -webkit-transform: rotate3d(0, 1, 0, 180deg);
    transform: rotate3d(0, 1, 0, 180deg);
    transition: transform .4s, opacity .4s;
}


/*========== PAGINA DE UNIDADE ================*/

.area-atuacao .panel-group {
    margin: 0 0 5px;
}

.area-atuacao .panel {
    border-radius: 0;
}

.area-atuacao .panel-heading {
    padding: 0;
}

.area-atuacao .panel-heading a {
    display: block;
    padding: 12px;
    font-size: 1em;
    font-weight: 700;
}

.area-atuacao .panel-heading a:active {
    text-decoration: none;
}

.area-atuacao .panel-body h4 {
    margin: 15px 0 5px;
    font-weight: 700;
    font-size: 1.1em;
}


/*========== MODAL ================*/

.modal-header {
    background-color: #003368;
    color: #fff;
}

.modal-header h3 {
    font-weight: 900;
}

.modal-header button {
    opacity: 1;
    font-size: 14px;
}

.modal-header button i {
    color: #fff;
    font-size: 1.8em;
    line-height: 1.4em;
    font-weight: 300;
}

.modal-body {
    overflow: hidden;
}


/*========== EVENTO ================*/

#evento .table-responsive {
    clear: both;
}

.evento-table {
    width: 100%;
    border-collapse: inherit;
    border: 1px solid #E5E5E5;
    border-top: none;
}

.evento-table th {
    border: 1px solid #E5E5E5;
    border-left: none;
    border-bottom: none;
    text-align: center;
    vertical-align: middle;
    padding: 5px;
}

.evento-table th.mes {
    font-weight: 900;
    font-size: 1.6em;
}

.evento-table th .navega {
    font-size: 2em;
}

.evento-table th:last-child {
    border-right: none;
}

.evento-table td {
    position: relative;
    border: 1px solid #E5E5E5;
    border-left: none;
    border-bottom: none;
    width: 14.2%;
    height: 120px;
    text-align: right;
    vertical-align: top;
    padding: 5px;
}

.evento-table td:last-child {
    border-right: none;
}

.evento-table .hoje {
    background-color: #e6eef7;
}

.evento-table .dia {
    color: #aaa;
    font-size: 1.6em;
    font-weight: 300;
}

.evento-table .cont-atividade {
    position: absolute;
    bottom: 0;
    display: block;
}

.evento-table .dia-vazio,
.evento-table .cel-domingo,
.evento-table .domingo {
    background-color: #fafafa;
}

.evento-table .eventos {
    position: absolute;
    bottom: 0;
    text-align: left;
}

.evento-table .evento {
    display: inline-block;
    background-color: #e30614;
    width: 30px;
    height: 30px;
    padding: 5px;
    margin: 3px;
    color: #fff;
    border-radius: 50%;
    text-align: center;
}

.evento-table .evento:hover {
    background-color: #003468;
}

#evento-modal .modal-body {
    min-height: 150px;
}

#evento-modal .modal-body .image {
    margin-bottom: 25px;
}

#evento-modal .modal-body .texto p {
    padding-left: 0;
}


/*========================== TEMPLATE SIDEBAR LEFT ==========================*/

.content-sidebar-left {
    border: 1px solid #ddd;
    background-color: #fcfcfc;
    padding: 25px;
}

.menu-sidebar-left ul {
    padding: 0;
    list-style: none;
    overflow: hidden;
}

.menu-sidebar-left ul a {
    padding: 5px 0;
    display: block;
}

.menu-sidebar-left ul ul a span {
    display: inline-block;
    width: calc(100% - 24px);
    vertical-align: top;
}

.menu-sidebar-left ul ul a i {
    position: relative;
    left: 0;
    transition: all .3s;
}

.menu-sidebar-left ul ul a:hover i {
    left: 6px;
    transition: all .3s;
}

.menu-sidebar-left ul li.active a {
    color: #e30614;
}

.menu-sidebar-left ul .link-0 {
    font-size: 1.3em;
    font-weight: 900;
    text-transform: uppercase;
    padding: 5px 0;
    margin: 0 0 10px;
    border-bottom: 1px solid #ccc;
    cursor: default;
}

.menu-sidebar-left ul .link-0 span {
    padding: 0 0 5px;
    border-bottom: 3px solid #e30614;
}

.menu-sidebar-left ul .link-0:hover {
    color: #0a3159;
}


/*========== CATEGORIAS DOCS =============*/

@media (max-width: 768px) {
    #docs .categoria {
        display: none;
    }
}

#docs .doc-content {
    border-left: 1px dotted #ccc;
    min-height: 1300px;
}

#docs .list-categoria-left {
    padding: 0;
    margin: 0;
    list-style: none;
}

#docs .list-categoria-left li {
    border-top: 1px dotted #ccc;
    display: block;
    padding: 6px 7px;
    font-size: 13px;
    overflow: hidden;
}

#docs .list-categoria-left li a span {
    display: inline-block;
    width: calc(100% - 19px);
}

#docs .list-categoria-left li a:first-child {
    display: inline-block;
    max-width: 100%;
}

#docs .list-categoria-left li a.plus {
    display: none;
}

#docs .list-categoria-left li:hover a.plus {
    display: block;
}

#docs .list-categoria-left li a.active {
    color: #e30614;
    font-weight: 700;
}


/*=========================== AREA DO CLIENTE ==============================*/

.cliente-data {
    margin-top: 30px;
    display: inline-block;
    float: right;
}

.cliente-data ul {
    padding: 0;
    list-style: none;
}

.cliente-data li {
    display: inline-block;
    margin-right: 15px;
    text-align: right;
}

.cliente-data li span {
    font-size: 11px;
    color: #bababa;
}

.cliente-data a {
    color: #fff;
}

.cliente-data a:hover {
    color: #e30614;
}

.overlay-pago {
    background-color: #fff;
    opacity: .9;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1001;
}

.preload-pago {
    width: 70px;
    height: 70px;
    font-size: 50px;
    position: absolute;
    left: calc(50% - 35px);
    top: calc(45% - 35px);
    animation-name: spin;
    animation-duration: 1000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

.overlay-pago .aguarde {
    text-align: center;
    width: 240px;
    position: fixed;
    left: calc(50% - 120px);
    top: calc(45% + 30px);
    height: 40px;
}

.pagamento .btn-save i {
    width: 20px;
    height: 20px;
    position: absolute;
    animation-name: spin;
    animation-duration: 1000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

.pagamento .btn-save span {
    margin-left: 25px;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}


/* AREA DO CLIENTE :: PAGAMENTO ==============================*/

.pagamento .tab-pane {
    background-color: #fff;
    border: 1px solid #ddd;
    border-top: none;
}

.pagamento .form-control-feedback {
    margin-right: -30px;
}

.pagamento #card-img {
    position: absolute;
    right: 16px;
    top: 32px;
}

.pagamento #result-card {
    color: red;
}

.pagamento #bandeira ul,
.pagamento #tef-container ul {
    list-style: none;
    padding: 0;
}

.pagamento #bandeira ul li,
.pagamento #tef-container ul li {
    margin: 0 0 30px;
    float: left;
    text-align: center;
}

.pagamento #bandeira ul li .nome,
.pagamento #tef-container ul li .nome {
    font-size: 11px;
}

.pagamento #bandeira .divider {
    margin: 0 0 15px;
}

.pagamento #boleto-container {
    margin: 30px 0 30px -15px;
    float: left;
}

.pagamento #tef-container ul li.active {
    border: 2px solid #00f200;
}

.pagamento #tef-container {
    margin: 10px 0 0;
}


/* FIM PAGAMENTO =========*/

.fimpagamento h2 {
    margin-top: 0;
}

.fimpagamento h3,
.fimpagamento h4 {
    margin: 20px 0 0;
}


/* ============================== DEPOIMENTOS ====================================*/

#depoimento {
    background-color: #e5eaf0;
}

#depoimento #depoimento-centainer {
    overflow: hidden;
}

#depoimento #depoimento-centainer h4 {
    margin-top: 0;
}

#depoimento #depoimento-centainer h5 {
    color: #0a3159;
    font-weight: bold;
}

#depoimento #depoimento-centainer img {
    border-radius: 50%;
    border: 1px solid #ddd;
    padding: 5px;
    background-color: #fff;
}

#depoimento #depoimento-centainer p i {
    color: #aaa;
}


/* ========================= TABELA TRANSPARÊNCIA (INFRAESTRUTURA E CONTRATOS) ========================= */

.docs-table {
    border: none;
    border-collapse: separate;
    border-spacing: 0 10px;
    margin: 16px 0;
    background: #f0f0f0;
    padding: 0 10px;
    border-radius: 5px;
}

.docs-table thead tr {
    border-radius: 5px;
    background: #bdddf7;
    border: none;
}

.docs-table thead tr {
    border-bottom: none !important;
}

.docs-table thead tr th,
.docs-table tbody tr td {
    padding: 10px;
    position: relative;
    text-align: center;
    border: none !important;
}

.docs-table thead tr th:first-child,
.docs-table tbody tr td:first-child {
    border-radius: 5px 0 0 5px;
}

.docs-table thead tr th:last-child,
.docs-table tbody tr td:last-child {
    border-radius: 0 5px 5px 0;
}

.docs-table tbody tr {
    background: #fff;
    margin: 5px 0;
}

.docs-table tbody tr:nth-child(2n+0) {
    background: #dfdfdf;
}

.docs-table tbody tr a.a-icon {
    position: absolute;
    width: 100%;
    height: 100%;
    background: transparent;
    top: 0;
    left: 0;
    transition: 0.3s;
}

.docs-table tbody tr a.a-icon::before {
    font-family: 'fontello';
    width: 15px;
    height: 15px;
    background: #ccc;
    position: absolute;
    bottom: 0px;
    right: 0px;
    content: "\e84d";
    color: #003368;
    text-align: center;
    line-height: 16px;
    font-size: 0.7em;
    border-radius: 2px;
}

.docs-table tbody tr a:hover {
    background: #003368;
    opacity: 0.2;
    cursor: pointer;
}

#m-tb,
#tabela-contratos,
#tabela-convenios {
    width: 100% !important;
}

#myModal div.modal-dialog {
    width: 90%;
}

.cursorPointer {
    cursor: pointer;
}

.title-row {
    background: #b3b2b3 !important;
}

.text-left {
    text-align: left !important;
    padding-left: 25px !important;
}

.btn-default {
    background-color: #003368;
    color: #fff;
}

.btn-default:hover {
    background-color: #e30614;
    color: #fff;
}

.content-center {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}