/* PALETA */
:root {
	--color-transparent: transparent;
	--color-text-default: #000000;
	--color-text-heading: #263238;
	--color-text-inverse: #ffffff;
	--color-text-muted: #9e9e9e;
	--color-text-card: #424242;
	--color-surface-light: #fbebe6;
	--color-surface-light-alt: #f2eee7;
	--color-text-soft-dark: #5f5b54;
	--color-accent: #651010;
	--color-accent-strong: #8b1014;
	--color-accent-divider: rgb(121, 12, 7);
	--color-overlay-dark: rgba(255, 254, 254, 0.7);
	--color-surface-card: #eeeeee;
	--color-surface-form: #ffffff;
	--color-social: #410a0a;
	--color-border-none: transparent;
}

/* HEIGH 100% */
html,body {height: 100%;}
.bloco{min-height: 100%; padding-top: 94px;}

/* UTILITARIOS DE TEMA */
.is-text-default{color: var(--color-text-default);}
.is-text-heading{color: var(--color-text-heading);}
.is-text-inverse{color: var(--color-text-inverse);}
.is-text-muted{color: var(--color-text-muted);}
.is-text-card{color: var(--color-text-card);}
.is-surface-card{background-color: var(--color-surface-card);}
.is-btn-primary{background-color: var(--color-accent-strong) !important; color: var(--color-text-inverse) !important;}
.is-btn-social{background-color: var(--color-social) !important; color: var(--color-text-inverse) !important;}

/* LOGO */
.logo_text{font-size: 0; margin: 0;}
.logo_img{width: 120px; margin-top: 15px; }

/* MENU*/
.navbar{background-color: var(--color-transparent);}
.navbar ul a{color: var(--color-text-default);}
.navbar ul a:hover{background-color: var(--color-transparent); color: var(--color-accent);}
.nav-color{background-color: var(--color-overlay-dark); transition: background 0.5s linear;}
.nav-color ul a{color: var(--color-text-default);}


/* HOME */
.home{background-image: url('../img/bg.png'); background-repeat: no-repeat; background-size: cover;margin-top: -64px;}
.banner h2{font-size: 2.5rem; font-weight: 900; text-transform: uppercase;}
.banner p{ font-size: 1.2rem; line-height: 1.8rem; }


/* TITULO E PARAGRAFO */
.titulo{font-size: 2rem; text-transform: uppercase;}
.titulo::after{content: ''; display: block; width:100px; border-top: 1px solid var(--color-accent-divider); margin:15px auto;}
.paragrafo{line-height: 1.8rem;}
.carousel-item img{padding-top: 18px; margin-top: 10px;}

/* Fundo textura sobre as seções claras — overlay claro mantém legibilidade do texto escuro. */
.sobre, .edicoes{	background-image: url('../img/textura1.png');}
.sobre p{line-height: 2rem; text-align: justify;}
.sobre .datas-importantes{padding: 20px 0; margin-top: 35px;}
.sobre .datas-importantes .icon{color: var(--color-text-inverse);}
.sobre .datas-importantes h3{font-size: 1.5rem; color: var(--color-text-inverse); text-transform: uppercase;}
.sobre .datas-importantes p{color: var(--color-text-inverse); padding: 4%;}
.documentos {background-image: url('../img/office.png');}
.documentos p{line-height: 1.8rem; text-align: justify; }
.documentos .documentos-intro{margin: 8px 0 22px;}
.download-list{margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;}
.download-item{margin-bottom: 0;}
.download-link{	display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px;	border-radius: 10px; background-color: rgba(0, 0, 0, 0.38); border: 1px solid rgba(255, 255, 255, 0.14); 	text-decoration: none; 	transition: background-color .2s ease, border-color .2s ease; }
.download-link:hover, .download-link:focus{ background-color: rgba(0, 0, 0, 0.5); border-color: rgba(255, 255, 255, 0.28); }
.download-info{flex: 1; min-width: 0;}
.download-title{ margin: 0 0 6px; font-size: 1.08rem; font-weight: 700; color: var(--color-text-inverse); word-break: break-word; }
.download-description{ margin: 0; font-size: 0.95rem; line-height: 1.45rem; color: #d4d4d4; text-align: left !important; }
.download-icon{ flex-shrink: 0; font-size: 2rem; color: var(--color-text-inverse); }

/* FAQ */
.faq-page{background-image: url('../img/textura1.png');}
.faq-page .faq-intro{max-width: 900px; margin: 10px auto 24px; text-align: center; line-height: 1.7rem; color: var(--color-text-soft-dark);}
.faq-accordion{margin-top: 16px; border-top: 1px solid rgba(101, 16, 16, 0.2); border-bottom: 1px solid rgba(101, 16, 16, 0.2);}
.faq-accordion .collapsible-header{font-weight: 600; color: var(--color-text-heading); line-height: 1.6rem; padding: 16px 18px;}
.faq-accordion .collapsible-header i{color: var(--color-accent-strong);}
.faq-accordion .collapsible-body{background-color: rgba(255, 255, 255, 0.85);}
.faq-answer{margin: 0; color: var(--color-text-card); line-height: 1.8rem;}
.faq-answer p{margin: 0 0 10px;}
.faq-answer p:last-child{margin-bottom: 0;}
.faq-answer ul{margin: 8px 0 8px 18px;}
.faq-answer li{list-style-type: disc; margin-bottom: 6px;}

/* EDICOES */
.edicoes{background-image: url('../img/textura1.png');}
.edicoes article p{line-height: 1.8rem;}
.edicoes-grid{padding-bottom: 16px;}
.edicao-card{border-radius: 10px; overflow: hidden;}
.edicao-card .card-image img{height: 220px; object-fit: cover;}
.edicao-card .card-title{ width: calc(100% - 72px); font-size: 1.2rem; font-weight: 700; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
.edicao-modal{max-height: 85%;}
.edicao-modal h4{margin-top: 0;}
.edicao-modal-description{margin-bottom: 18px;}
.edicao-modal-links{display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 18px;}
.edicao-modal .modal-footer{padding: 4px 20px;}
.work-collapsible{margin-top: 10px;}
.work-header{display: flex; align-items: center; gap: 10px;}
.work-meta{flex: 1; min-width: 0;}
.work-title{display: block; font-weight: 600; color: #212121;}
.work-authors{display: block; font-size: 0.78rem; color: #757575; line-height: 1.2rem;}
.work-download-btn{padding: 0 8px !important; min-width: auto !important; color: var(--color-accent-strong);}
.work-course{margin: 0 0 8px; font-size: 0.95rem; color: #616161;}

/* DEPOIMENTOS */
.apoiadores{padding-top: 4%; padding-bottom: 3%;background-image:url('../img/office.png');}
.apoiadores .titulo::after{border-color: var(--color-text-inverse);}
.apoiadores img{width: 100px;}
.apoiadores h4{font-size: 1.2rem; font-weight: 900;}
.logos-apoiadores{padding-bottom: 4%;}
.apoiadores-text{ text-align: justify;}
.logo-apoiadores{padding-bottom: 4%;}
.nav-login-link { display: flex; align-items: center; gap: 4px; }
.icon-login { line-height: 1; }
.contato{ background-color: var(--color-accent-strong); padding-bottom: 15px;}
.contato h4{font-size: 1.2rem; text-transform: uppercase;; font-weight: 900;}
.contato .mapa{min-height: 560px;}
.contato .mapa iframe{width: 100%; min-height: 560px; border: none; }
.contato .informacoes{ color: var(--color-text-inverse); min-height: 560px; padding:30px;}
.contato .formulario {background-color: var(--color-surface-form); background-image: none; color: var(--color-text-default); min-height: 560px; padding: 30px; }
.documentos a{color: var(--color-text-inverse);}
.edicoes .titulo{color: var(--color-text-default);}
.edicoes .paragrafo{color: var(--color-text-soft-dark);}
.formulario input,
.formulario textarea{color: var(--color-text-default);}
.formulario label{color: var(--color-text-card);}
.formulario input:focus + label,
.formulario textarea:focus + label{color: var(--color-accent-strong) !important;}
.formulario input:focus,
.formulario textarea:focus{border-bottom: 1px solid var(--color-accent-strong) !important; box-shadow: 0 1px 0 0 var(--color-accent-strong) !important;}

/* RODAPÉ */

.rodape{ background-color: var(--color-accent-strong); padding:10px 0;}
.row {margin-bottom: 0;}

/* PERSONALIZA TABELA*/
.intervalo{font-weight: 600; text-align: center;}

/* MEDIA TYPE */

@media only screen and (max-width: 480px) {
.card-image-horizontal{display: none;}
.download-link{padding: 14px;}
.download-title{font-size: 1rem;}
.download-description{font-size: 0.9rem; line-height: 1.35rem;}
.edicao-card .card-image img{height: 180px;}
.edicao-modal-links .btn{width: 100%;}
.download-list{grid-template-columns: 1fr;}
}
  
/* Responsivo downloads: 2 colunas em tablet */
@media only screen and (min-width: 601px) and (max-width: 992px) {
.download-list{grid-template-columns: repeat(2, 1fr);}
}
  
@media only screen and (min-width: 601px) {
.banner{ padding-top: 4.5rem;} 
.banner h2 {font-size: 4rem;}
.container{width: 85%;} 
}

@media only screen and (min-width: 993px) {
.banner{ padding-top: 5rem;} 
.banner h2 {font-size: 5rem;}
.container{width: 90%;}
}