/* by vitorgga */
a {
    xcolor: #333333;
    color: inherit;
    text-decoration: none;
}
a:hover {
    opacity: 0.9;
    text-decoration: underline;
    cursor: pointer; cursor: hand;
}

body {
    background: #FFFFFF;
    color: #222222;
}
table, input, textarea, select, button {
	xcolor: #222222;
    color: inherit;
    font-family: inherit;
    line-height: inherit;
}

div#fancy_div {
	background: #FFFFFF !important;
	color: #222222 !important;
	overflow-y: scroll !important;
}

hr {
	clear: both;
	border: none;
	border-bottom: 1px solid #999999;
	height: 1px;
    opacity: 0.2;
}

input, select, textarea {
	background: #F2F2F2;
	border: transparent;
    border-bottom: 1px solid #DDDDDD;
	color: #000000;
	padding: 4px 8px;
	box-shadow: none;
    max-width: 100%;    
    font-size: medium;
    outline: none;
    vertical-align: middle;
    
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;    
    
    border-radius: 6px;
    line-height: 1.45;	
}
input:hover, select:hover, textarea:hover,
input:active, select:active, textarea:active {
    border-bottom: 1px solid #17a2e0;
}
input[type=checkbox], input[type=radio] {
	width: 18px !important;
    height: 18px !important;
    background: none;
	border: 0px solid;
    vertical-align: middle;
}
button, .button {
	background: #777777;
	border: none;
	color: #FFFFFF;
	font-weight: bold;
    line-height: 1.45;
    padding: 4.5px 8px;
    font-size: medium;
    vertical-align: middle;
    border-radius: 4px;
}
.button, .button:link, .button:visited, .button:active {
	display: inline-block;
	color: #FFFFFF;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}
button:hover, .button:hover {
	color: #FFFFFF;
}

h1 a.button {
	xmargin: -8px 0 0 0;
}

button.button_bloco, .button.button_bloco {
    display: block;
    width: 100%;
    box-sizing: border-box;
}
button.button_amarelo, .button.button_amarelo {
	color: #FFFFFF;
	background-color: #C39C00;
}
button.button_azul, .button.button_azul {
	color: #FFFFFF;
	background-color: #3C547F;
}
button.button_branco, .button.button_branco {
	background-color: #FFFFFF;
}
button.button_verde, .button.button_verde {
	color: #FFFFFF;
	background-color: #009B00;
}
button.button_vermelho, .button.button_vermelho {
	color: #FFFFFF;
	background-color: #9D0000;
}
button.button_preto, .button.button_preto {
	color: #FFFFFF;
	background-color: #000000;
}

.curvas {
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	-khtml-border-radius: 15px;
	border-radius: 15px;   
}

.tooltip span { display:none; } 
.tooltip:hover span, .tooltip:focus span {
	font-size: 8pt;
	display: inline;
	position: absolute;
    max-width: 200px;
	background: #FFFFFF;
	border: 1px solid #CCCCCC;
	color: #6c6c6c;
	padding: 6px;
    z-index: 80;
    opacity: 0.9;
}

#conteudo {
	padding: 0px;
}

h1, h2, h3, h4 {
    xclear: both;
    margin: 0;
    padding: 0; 
}
h1 {
	font-weight: bold;
	font-size: 22pt;
	padding: 5px 0;
	margin: 0 0 4px 0;
	color: inherit;
}
h1 a {
    color: inherit;
}
h2 {
    font-weight: bold;
    font-size: 16pt;
    color: inherit;
    padding: 5px 0;
}
h2 a {
    color: inherit;
}
h3 {
    color: inherit;
    font-weight: bold;
    font-size: 12pt;
    padding: 5px 0;
    margin: 0;
}
h3 a {
    color: inherit;
}
h4 {
    font-weight: bold;
    font-size: 10pt;
    color: inherit;
    padding: 2px 0;
}
h4 a {
    color: inherit;
}

p {
    xtext-align: justify;
    padding: 5px 0;
    text-indent: 0;
}

blockquote {
    border-left: 5px solid rgba(0,0,0,0.1);
    margin: 10px 0;
    padding: 5px 0 5px 20px;    
}

pre {
    white-space: normal;
}

.d_banner {
    position: relative;
    text-align: center;
}
.d_banner img, .d_banner embed,  .d_banner object, .d_banner iframe {
    display: block;
}
.d_banner > div {
    width: 100%;
}

.banners img, .banners embed, .banners object {
    margin: 5px;
}

.banners_vertical img, .banners_vertical embed, .banners_vertical object {
	margin: 0 0 15px 0;
	clear: both;
	display: block !important;
	text-align: center;
}

.banners_lateral {
    padding: 0 0 0 20px;
    max-width: 260px;
}
.banners_lateral ins {
    xdisplay: block;
    width: 240px;
}
.banners_lateral img, .banners_lateral embed, .banners_lateral object, .banners_lateral iframe {
	margin: 15px 0 0 0 !important;
}

.banners_multiplos .d_banner > div {
    display: none;
}
.banners_multiplos .d_banner > div:first-child {
    display: block;
}

.banners_link {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
}

.off {
	filter:alpha(opacity=25);
	-moz-opacity:.25;
	opacity:.25;
}
.off_hover:hover, .off_hover:hover * {
	filter:alpha(opacity=75);
	-moz-opacity:.75;
	opacity:.75;
}
.off_reverso:hover {
	filter:alpha(opacity=100);
	-moz-opacity:1;
	opacity:1;
}

.dfix {
 content: '.'; clear: both; display: inline-block;
}

#tinymce {
    margin: 10px;
}

#tinymce p, #tinymce div, .rte_documento, .rte_documento p, .rte_documento div {
	margin: 5px 0;
	text-align: justify;
	line-height: 1.8;
}

#tinymce table p, #tinymce table div, .rte_documento table p, .rte_documento table div {
    margin: 0 5px;
}

.rte_documento.semespaco, .rte_documento.semespaco p, .rte_documento.semespaco div {
	margin: 0;
    text-align: inherit;
}

#tinymce a, .rte_documento a {
    text-decoration: underline;
}

.rte_documento h1, .rte_documento h2, .rte_documento h3 {
    line-height: 1.2;
}

/*
#tinymce > img, .rte_documento > img, .rte_documento > p > img, .rte_documento > p > span > img, .rte_documento > p > p > img, .rte_documento > div > img, .rte_documento > div > div > img {
*/
#tinymce img, .rte_documento img {
    max-width: 100% !important;
}
#tinymce table img, .rte_documento table img {
    max-width: none;
}

#tinymce > iframe, .rte_documento > iframe, .rte_documento > p > iframe {
    max-width: 100%;
}

body.mceContentBody {
   background: #FFFFFF;
   padding: 5px 10px;
   box-sizing: border-box;
}

.ui-datepicker-trigger {
	display: inline-block;
	background: url('imagens/icones/1day.gif');
	width: 16px;
	height: 16px;
	vertical-align: middle;
	padding: 0;
	margin: 0 5px;
    cursor: pointer; cursor: hand;
}

.transparente, .transparente:hover {
    padding: 0 !important;
	background: none !important;
	border: none !important;
    box-shadow: none;
}

/*//////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////*/

.inputAlert {
	border: 1px solid red;
}

.error, .info, .login {
    position: relative;
    padding: 5px 10px 5px 45px;
    margin: 10px 2px;
    line-height: 2.5;
    border-radius: 2px;
    overflow: hidden;
}
.error:before, .info:before, .login:before {
    position: absolute;
    left: 0;
    font-family: "FontAwesome";
    float: left;
    margin: 2px 10px;
    font-size: 22pt;
    line-height: 100%;
}
.error {
	box-shadow: 0 0 3px #FFCC00;
}
.error:before {
    content: "\f071";
}
.info {
	box-shadow: 0 0 3px #3366FF;
}
.info:before {
    content: "\f05a";
}
.login {
	box-shadow: 0 0 3px #CCCCCC;
}
.login:before {
    content: "\f007";
}

.d_logo {
	xdisplay: table;
	xwidth: 100%;
}
.topo div {
    display: table;
    width: 100%;
}
.topo div span {
	display: table-cell;
	vertical-align: middle;
} 

.a_logo {
	margin: 10px 0;
	display: inline-block;
	vertical-align: middle;
}
.a_logo img {
	max-width: 100%;
	max-height: 500px;
    display: block;
}

.a_titulo {
	font-size: 20pt;
	text-align: left;
}

.a_desenvolvido {
	width: 80px;
	height: 22px;
	background: url('design/desenv_vigo.png') no-repeat;
	border: 0px solid;
	display: inline-block;
	margin: 20px 0;
}

#rd-topo-meio, #rd-conteudo-meio, #rd-rodape-meio {
	xwidth: 980px;
	margin: auto;
}

#rd-conteudo-meio {
	text-align: center;
}
#rd-conteudo-meio > div {
	xdisplay: inline-block;
	text-align: left;
	vertical-align: top;
}

#pagina {
    width: auto;
    max-width: 100%;    
}
.pg-index #pagina {
    padding: 0;
}

.rd-geral-maior #rd-conteudo-meio {
    white-space: nowrap;
}
.rd-geral-maior #rd-conteudo-meio > div {
    display: inline-block;
    white-space: normal;
}

#rd-rodape {
	clear: both;
}

.d_rodape_links a {
	display: inline-block;
	padding: 0 0 0 10px;
}

.d_rodape_rede {
    text-align: center;
    padding: 20px 0;
}
.d_rodape_rede small {
    opacity: 0.6;
    font-size: 6.5pt;
}
.d_rodape_rede a {
	display: inline-block;
	vertical-align: middle;
}
.d_rodape_rede a img {
    height: 25px;
    display: block;
}
.d_rodape_rede a.partner {
    position: absolute;
    right: 10px;
}
.d_rodape_rede a.partner img {
    width: 25px;
    height: 25px;
}
.d_rodape_rede a.hidden {
    display: none;
}

.paginas a {
	display: inline-block;
	padding: 4px 10px;
	font-size: 12pt;
	font-weight: bold;
}

.d_topo_barra {
	width: 100%;
}

.d_menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.d_menu ul li {
    display: inline-block;
    zoom: 1;
    *display: inline;
}
.d_menu ul ul {
    position: absolute;
    display: none;
    z-index: 20;
    xbackground: #FFFFFF;
}

.d_menu {

}
.d_menu a { 
	display: inline-block;
}

.d_menu_lateral {
	text-align: center;
}
.d_menu_lateral a {
	display: inline-block;
	padding: 10px 4px
}

nav.mobile > a {
    display: none;
}

.topo * {
	vertical-align: middle;
}

.cat {
    padding: 0 0 10px 10px;
}
.cat a {
	clear: both;
	display: block;
}
.cat .cat_titulo {
	background: url('design/menu_ico.jpg') no-repeat left center;
	padding: 3px 20px;
	font-size: 10pt;
}

.d_chave {
    font-size: 8pt;
    display: block;
}
.d_chave_linha {
    display: inline-block;
}

.d_arquivos > section,
.d_comentarios > section,
.d_formularios > section,
.d_compartilhado > section,
.d_compartilhar > section,
.d_relacionadas > section {
	display: block;
	
	padding: 5px;
	margin: 5px 0;
	border: 1px solid rgba(130,130,130,0.2);
	
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -khtml-border-radius: 5px;
    border-radius: 5px;  
}
.d_comentarios, .d_videos, .d_resumos {
    clear: both;
}

section .login {
    box-shadow: none;
}

.d_comentarios .d_comentario {
	clear: both;
    padding: 10px;
}


.d_comentario span {
     float: right;
     text-align: right;
     font-size: 8pt;
     margin: 5px;
}
.d_comentario img {
    xborder: 1px solid rgba(127,127,127,0.1);
    float: left;
    margin: 0 10px 0 0;
}
.d_comentario p {
    background: rgba(127,127,127,0.05);
    border: 1px solid rgba(127,127,127,0.1);
    padding: 17px 15px;
    margin: 0 0 0 60px;
}
.d_comentario strong {
    display: block;
    padding: 0 0 5px 0;
}
.d_comentario textarea {
    width: 100%;
    height: 60px;
    xmax-width: 400px;
    resize: none;
}

/* D_FORMULARIOS */

.d_formularios > div {
	xpadding: 10px 0;
}
.d_formularios > div > div {
	padding: 5px;
	xcolor: #666666;
}
.d_formularios span {
	display: block !important;
	padding: 10px !important;
}

.d_formularios_inline > div {
	padding: 10px 0;
}
.d_formularios_inline > div > div {
	padding: 5px;
	xcolor: #666666;
}
.d_formularios_inline span {
	display: inline-block !important;
	padding: 10px !important;
	vertical-align: middle !important;
}

/* D_ARQUIVOS */

.d_arquivos a {
    display: inline-block;
    margin: 5px;
    min-width: 180px;
    border: 1px solid rgba(128,128,128,0.1);
    background: rgba(128,128,128,0.02);
    
    max-width: 280px;
    overflow: hidden;
}
.d_arquivos a i {
    margin: 10px 60px;
    font-size: 48pt;
    opacity: 0.7;
}
.d_arquivos a strong {
    display: block;
    text-align: left;
    padding: 6px 10px;
    background: rgba(128,128,128,0.1);
    font-weight: normal;
    
}

/* D_AUDIOS */

.d_audios > div {
	margin: 5px;
    background: url('design/background_audio.png') no-repeat center bottom;
    border-bottom: 2px solid #DDDDDD;
    padding: 30px 20px;
    
}
.d_audios > div span {
    display: inline-block;
}
.d_audios > div strong {
    display: block;
    font-weight: normal;
}

/* F_CADASTRO */

.f_cadastro input, .f_cadastro textarea, .f_cadastro select {
    xwidth: 100%;    
}
.f_cadastro > span {
	display: inline-block;
    padding: 20px 10px;
    vertical-align: top;
}
.f_cadastro > span:hover {
	xbackground: rgba(127,127,127,0.05);
}
.f_cadastro > span > label {
    display: block;
    font-weight: bold;
	xopacity:.75;
}
.f_cadastro > span > span * {
    xwidth: auto;
}

/* F_LOGIN */

.f_login {
    box-sizing: border-box;
    background: #FFFFFF;
    padding: 100px 100px 100px 55%;
    position: relative;
}
.f_login:before {
    content: "";
    background: #17a2e0 url('design/login.jpg') no-repeat center center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    box-shadow: 0 0 10px #CCC;
}
.f_login > span {
    display: block;
    padding: 15px 10px;
    max-width: 300px;
    margin: auto;
}
.f_login > span > label {
    display: block;
}
.f_login > span input[type="text"] {
    width: 100%;
}

.f_login.full {
    padding: 200px 100px 200px 35%;
}
.f_login.full:before {
    width: 30%;
}

/* FRM */

.frm > span {
	display: inline-block;
    padding: 5px 10px;
    vertical-align: top;
    box-sizing: border-box;
}
.frm > span:hover {
    opacity: 0.9;
}
.frm > span > label {
    display: block;
    xfont-weight: bold;
}
.frm_inline > span > label {
    display: inline-block;
    vertical-align: middle;
}
.frm_linha > span {
    display: block !important;
}

/*
.frm_login {
    padding: 40px;
    margin: 20px auto;
    max-width: 400px;
    border-radius: 10px;
    box-sizing: border-box;
}
.frm_login > span {
    padding: 10px;
}
.frm_login > span input[type="text"] {
    width: 100%;
}
*/

#f_contato.frm input, #f_contato.frm textarea {
    width: 100%;
    max-width: 100%;
}

.botaozao {
	font-size: 13pt;
    font-weight: bold;
}
.botaozao i {
    font-size: 24pt !important;
    vertical-align: middle;
}

.botaozin {
    font-size: 7pt;
    font-weight: bold;
}

.ui-effects-transfer {
    border: 2px dashed #CCCCCC;
}

#ui-datepicker-div {
	display: none;
}

.blockUI .ui-dialog-titlebar {
	display: none;
}
.blockUI .ui-dialog-content h1 {
	background: none;
	text-align: center;
}

.box_mask {
    background: rgba(127,127,127,0.1);
    padding: 15px;
}
.box_border {
	border: 1px solid #EEEEEE;
	padding: 15px;
	
	-moz-box-shadow: 0 0 2px #DDDDDD;
	-webkit-box-shadow: 0 0 2px #DDDDDD;
	box-shadow: 0 0 2px #DDDDDD;
	
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    -khtml-border-radius: 2px;
    border-radius: 2px;
}

.rte_documento .d_imagem {
	float: left;
	text-align: center;
    max-width: 350px;
    margin: 10px 10px 2px 0
}
.rte_documento .d_imagem a img {
	max-width: 100%;
}
.rte_documento .d_imagem a small {
	display: block;
	padding: 5px;
	text-align: center;
	line-height: normal;
}
.rte_documento .d_imagem.full {
    float: inherit;
    max-width: 100%;
    margin: 10px 0;
}

#d_adm {
	position: fixed;
	z-index: 200;
	margin: 5px;
	bottom: 0;
	right: 0;
    font-size: 8pt;
}
#d_adm a span {
    display: none;
}

.c_busca {
    background-image: url('design/ico_search.png');
    background-position: 99% center;
    background-repeat: no-repeat;    
}

.c_zoom {
    position: relative;
}
.c_zoom:before {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 15px;
    font-family: "FontAwesome";
    content: "\f00e";
    color: rgba(127,127,127,0.8);
    font-size: 38pt;
}
.c_zoom:hover:before {
    background: rgba(127,127,127,0.3);
    color: rgba(127,127,127,1);
}
.c_zoom img {
    display: block;
}

/* LISTAGEM */

.d_listagem {
    padding: 10px 0;
}
.d_listagem .item {
    padding: 10px;
    xmargin: 10px 0;
    border-bottom: 1px solid rgba(130,130,130,0.05);
}
.d_listagem .item img {
    max-width: 100%;
}

.d_listagem .item:hover {
    background: rgba(130,130,130,0.05);
}
.d_listagem .item a:hover {
    text-decoration: none;
}

.conteudo_modelo_listagem_apresentacao .d_listagem p {
    line-height: 2;
}

/* LISTAGEM BOX */

.d_listagembox {
    padding: 20px;
}
.d_listagembox .item {
    display: block;
    xpadding: 0 0 10px 0;
    margin: 20px 0;
    text-align: center;
    
    background: rgba(130,130,130,0.05);
}
.d_listagembox .item img {
    max-width: 100%;
}
.d_listagembox .item div {
    padding: 20px;
}

/* LISTAGEM TABLE */

.t_listagem {
    border-collapse: separate;
    xborder-spacing: 0 5px;
}
.t_listagem input, .t_listagem select {
	padding: 1px;
}
.t_listagem thead tr td {
	font-weight: bold;
    border-spacing: 0;
    border-bottom: 1px solid #CCCCCC;
    opacity: 0.6;
}
.t_listagem tfoot tr td {
	font-weight: bold;
    border-spacing: 0;
}
.t_listagem tfoot tr:last-child td {
    border-bottom: 1px solid #CCCCCC;        
}
.t_listagem tbody tr td {
    border: none;
    border-bottom: 1px solid #CCCCCC;
	margin: 0;
    padding: 10px 5px;
    line-height: 1.7;
}
.t_listagem tbody tr td .button, .t_listagem tbody tr td select {
    opacity: 0.6;
    font-size: small;
    padding: 2px 8px;    
}
.t_listagem tbody tr td .button i {
    font-size: 10pt;
}
.t_listagem tbody tr:hover td {
	background: rgba(127,127,127,0.1);
}
.t_listagem tbody tr:hover td .button, .t_listagem tbody tr:hover td select {
    opacity: 1;
}
.t_listagem tbody tr td.td_destaque {
	background: rgba(127,127,127,0.1);
	font-weight: bold;
}

.t_listagemm tbody tr td {
    padding: 0 5px;
}

/* CONFIRMER */

#confirmer {
    display: none;
}

.d_confirmer {
    box-sizing: border-box;
    position: fixed;
    left: 0;
    top: 35%;
    background: rgba(0, 0, 0, 0.9);
    padding: 20px;
    width: 100%;
    z-index: 1000;
    
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;        
}
.d_confirmer::before {
    content: "";
}

.d_confirmer.danger, .d_confirmer.excluir {
    background: rgba(182, 70, 69, 0.9);
}
.d_confirmer.danger i::before, .d_confirmer.excluir i::before {
    content: "\f12a";
}

.d_confirmer.info {
    background: rgba(63, 186, 228, 0.9);
}

.d_confirmer.warning {
    background: rgba(254, 162, 35, 0.9);
}

.d_confirmer > div {
    max-width: 900px;
    margin: auto;
    text-align: right;
    color: #FFFFFF;
}
.d_confirmer > div > i {
    display: block;
    text-align: left;
    font-size: 48px;
    margin: 0 10px;
}
.d_confirmer > div > p {
    text-align: left;
    padding: 10px;
    font-size: larger;
}
.d_confirmer > div > button {
    background: #FFFFFF;
    color: #000000;
    padding: 15px 20px;
    margin: 0 10px;
}

/* DIALOG */

.ui-dialog {
	margin: 20px;
    z-index: 2000;
}
.ui-dialog .ui-dialog-titlebar {
	display: none;
}

.mobile_yes {
    display: none;
}

.d_paginacao {
    font-weight: bold;
    padding: 10px 5px 5px 5px;
    text-align: center;
}
.d_paginacao * {
    vertical-align: middle;
}

.titulo {
    font-size: 12pt;
    font-weight: bold;
}

.d_box {
    
}

.cycle-slideshow {
    z-index: 0;
}

.d_grupo {
    display: flex;
}
.d_grupo label {
    position: relative;
    cursor: pointer;
    font-weight: normal;
}
.d_grupo label * {
    xcolor: gray;
    cursor: pointer;
}
.d_grupo label input {
    xdisplay: none;
    position: absolute;
    zoom: 0.5;
    top: 0;
    left: 0;      
    opacity: 0.1;      
}
.d_grupo label input:checked + * {
    color: green;
    border-bottom: 1px solid green;
}

.d_infomensagem {
    background: #009B00; /* #999999 */
    color: #FFFFFF;
    border: none;
    xmargin: 50px 0 0 0;
    cursor: pointer;
    
    position: fixed;
    bottom: 20px;
    right: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 0;
    padding: 15px 20px;
    border-radius: 10px;
    box-sizing: border-box;
    max-width: 100%;
    min-width: 180px;    
    text-align: center;
}

.flatpickr-calendar {
    display: none;
}

.d_scroll::-webkit-scrollbar {
    width: 12px;
}
 
.d_scroll::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 
    border-radius: 10px;
}
 
.d_scroll::-webkit-scrollbar-thumb {
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
}

@media all and (max-width: 500px) and (min-width: 0px) {
    
    input, select, textarea {
        max-width: 100%;
    }
    
    .f_login {
        background: none;
        padding: 20px !important;
    }
    
    nav.mobile > a {
        display: block;
    }
    nav.mobile > ul {
        display: none;
        xposition: absolute;
    }
    nav.mobile.on > ul {
        display: block;
    }
    
    .t_responsivo td {
        display: block;
        clear: both;
    }
    .t_responsivo td > a > img, .t_responsivo td > img {
        width: 100%;
        height: auto;
    }
        
    #tinymce img, .rte_documento img {
        height: auto !important;
    }    
    
    .f_login:before {
        display: none;
    }
    
}