
/* reset css */
html {
	--cor-primaria:#fab91c;
	--cor-secundaria:#ccc;
	--cor-terciaria:#333;
	--cor-quartenaria:#4d4d4d;
	--cor-quinquenaria:#808080;

	--cor-rodape1:#2c2c2c;
	--cor-rodape2:#242424;

	--cor-branco:#fff;
	--cor-preto:#000;

	--gap-lista:30px;
	--column-count-lista:1;
}

* { position:relative; box-sizing:border-box; }
html, body { margin:0 auto; padding:0; width:100%; max-width:1920px; font:500 16px/24px 'Poppins',sans-serif; text-size-adjust:none; overflow-x:hidden; }
header, main, section, div, article, aside, form, fieldset, footer { display:block; margin:0; padding:0; border:none; }
h1, h2, h3, h4, h5, h6, p { margin:0; padding:0; }
ul, ol { margin:0 0 0 20px; padding:0; list-style-position:outside; }
img, figure, iframe, embed, object, video { display:block; margin:0; padding:0; max-width:100%; border:none; }
input[type="submit"], [type="button"], input[type="file"] { cursor:pointer; }
input, button, select, option, optgroup, textarea { 
	display:block;
	margin:0; 
	padding:0; 
	font:300 16px/24px 'Poppins',sans-serif; 
	font-weight:normal;
	text-size-adjust:none; 
	color:var(--cor-preto); 
	outline:none; 
	border:none; 
}
img { width:auto; height:auto; }
a { color:var(--cor-preto); }

input:focus::-moz-placeholder { opacity:0 !important; }
input:focus:-moz-placeholder { opacity:0 !important; }
input:focus:-ms-input-placeholder { opacity:0 !important; }
input:focus::-webkit-input-placeholder { opacity:0 !important; }

textarea:focus:-moz-placeholder { opacity:0 !important; }
textarea:focus::-moz-placeholder { opacity:0 !important; }
textarea:focus:-ms-input-placeholder { opacity:0 !important; }
textarea:focus::-webkit-input-placeholder { opacity:0 !important; }

:-moz-placeholder { opacity:1 !important; color:#000; }
::-moz-placeholder { opacity:1 !important; color:#000; }
:-ms-input-placeholder { opacity:1 !important; color:#000; }
::-webkit-input-placeholder { opacity:1 !important; color:#000; }

/* geral */
.fancybox-container * { position:static; }
.central { width:100%; max-width:1200px; margin:0 auto; padding:0 20px; }
.clear { clear:both; }

.editor {
	--ck-image-style-spacing:1.5em;

	& .image {
		margin-left:auto; margin-right:auto; text-align:center;
		&.image-style-block-align-left, &.image-style-block-align-right { max-width:calc(100% - var(--ck-image-style-spacing)); }
		&.image-style-align-left, &.image-style-align-right { clear:none; }
		&.image-style-side { margin-left:var(--ck-image-style-spacing); max-width:50%; float:right; }
		&.image-style-align-left { margin-right:var(--ck-image-style-spacing); float:left; }
		&.image-style-align-right { margin-left:var(--ck-image-style-spacing); float:right; }
		&.image-style-block-align-right { margin-left:auto; margin-right:0px; text-align:right; }
		&.image-style-block-align-left { margin-left:0px; margin-right:auto; text-align:left; }
	}

	& .image-style-align-center { margin-left:auto; margin-right:auto; text-align:center; }
	& .image-style-align-left { margin-right:var(--ck-image-style-spacing); text-align:left; float:left; }
	& .image-style-align-right { margin-left:var(--ck-image-style-spacing); text-align:right; float:right; }

	& p + .image.image-style-align-left, & p + .image.image-style-align-right, & p + .image.image-style-side { margin-top:0px; }

	& .image-inline {
		&.image-style-align-left, &.image-style-align-right { margin-top:var(--ck-inline-image-style-spacing); margin-bottom:var(--ck-inline-image-style-spacing); }
		&.image-style-align-left { margin-right:var(--ck-inline-image-style-spacing); }
		&.image-style-align-right { margin-left:var(--ck-inline-image-style-spacing); }
	}
}
.editor > * { padding-top:30px; }
.editor > :first-child { margin-top:0px; padding-top:0px; } 
.editor > :last-child { margin-bottom:0px; }
.editor > table { padding-top:0px; margin-top:30px; }
.editor a { text-decoration:underline; }
.editor h1,
.editor h2,
.editor h3 { font-size:18px; }
.editor ul li + li { padding-top:5px; }
.editor img { display:inline-block !important; vertical-align:top !important; max-width:100%; }
.editor blockquote { margin-bottom:0px; margin-left:0px; margin-right:0px; padding:0px 0px 0px 10px; font-style:italic; color:inherit; border-left:3px solid var(--cor-primaria); }
.editor hr { margin:30px 0px 0px 0px; padding:0px; height:1px; border:0px; background-color:var(--cor-primaria); }
.editor .table {
	display:table; margin:0.9em auto;

	& table {
		width:100%; height:100%; border:1px double hsl(0, 0%, 70%); border-collapse:collapse; border-spacing:0px;
		& td, & th { padding:.4em; min-width:2em; border:1px solid hsl(0, 0%, 75%); }
		& th { font-weight:700; background:hsla(0, 0%, 0%, 5%); }
	}
}

.video-mp4 .container, 
.video-iframe .container { aspect-ratio:16 / 9; }
.video-mp4 .container video,
.video-iframe .container iframe { width:100%; height:100%; object-fit:cover; }

.lista { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: flex-start; gap: var(--gap-lista); }
.lista .bloco { position: relative; flex: none; width: calc((100% - (var(--gap-lista) * (var(--column-count-lista) - 1))) / var(--column-count-lista)); }
.lista .bloco figure { z-index: 1; overflow: hidden; }
.lista .bloco figure img { width: 100%; transform: scale(1); transition: all .30s linear; }
.lista .bloco:hover figure img { transform: scale(1.1); transition: all .30s linear; }

.titulo-home h2 { font-size: 30px; line-height: 38px; font-weight: 700; }
.titulo-home h2 span { font-weight: 500; font-size: 30px; line-height: 38px; }
.titulo-home.branco h2 span { color: #ffffff; }
.titulo-home.azul h2 span { color: #1499ba; }

.internas { padding-top:85px; }

/* abre menu sanduiche */
.sanduiche-aberto header nav { display:block; overflow-x:hidden; overflow-y:auto; transform:translateX(0); transition:all .30s linear; z-index:2; }
.sanduiche-aberto { overflow: hidden; }

/* validacao formulario */
.sucesso { font-weight:700; color:#060;  }
.retorno { margin-top:10px; font-weight:500; color:#c00; text-align:center; }
.retorno.erro { color:#c00 !important; }
.retorno.sucesso { color:#060 !important; }
.retorno:empty { display:none !important; }
.erro:focus { border:1px solid #c00 !important; }

/* topo */
header { position:fixed; width:100%; top:10px; left:0; z-index:3; }
header * { transition:all 0.3s; }
header .miolo { display:flex; padding:10px 20px; border-radius:35px; background:var(--cor-preto); flex-wrap:wrap; justify-content:space-between; }

header .logo { /*width:221px;*/ width:auto; height:auto;  }
header .logo img { max-width:100%; /*height:52px;*/ height:45px; }

header a.sanduiche { width:26px; height:auto; align-self:center; }

header nav { display:none; position:fixed; width:100%; height:100%; top:0; right:0; background:var(--cor-preto); }
header nav a.fechar { position:absolute; top:20px; right:15px; font-size:50px; color:var(--cor-branco); text-decoration:none; z-index:1; }
header nav .links { display:flex; align-items:center; width:100%; padding:50px 40px; flex-flow:column; gap:10px; }
header nav .links a { font-size:18px; color:#fff; text-decoration:none; font-weight:400; }
header nav .links a:hover,
header nav .links a.ativo { color:var(--cor-primaria); }
header nav .links a.sou-aluno { margin-top:5px; padding:10px 20px; color:var(--cor-primaria); border:2px solid var(--cor-primaria); border-radius:50px; }
header nav .links a.sou-aluno:hover { color:var(--cor-branco); background-color:var(--cor-primaria); }

/* topo reduzido */
header.topo-reduzido .miolo { padding:8px 20px; }

/* index */
#slides { position:relative; z-index:1; }

#slides .video-slide .mobile { display:block; z-index:1; }
/*
#slides .video-slide .mobile .lista-videos { width:auto; height:100vh; }
#slides .video-slide .mobile .lista-videos .container { position:absolute; width:100%; height:100vh; top:0; left:0; overflow:hidden; z-index:0; }
#slides .video-slide .mobile .lista-videos .container:first-child { z-index:1; }
#slides .video-slide .mobile .lista-videos .container video { width:100%; height:100vh; object-fit:cover; }
*/
#slides .video-slide .mobile .lista-videos { width:auto; height:auto; }
#slides .video-slide .mobile .lista-videos .container { position:absolute; width:100%; height:auto; top:0; left:0; overflow:hidden; z-index:0; }
#slides .video-slide .mobile .lista-videos .container:first-child { z-index:1; }
#slides .video-slide .mobile .lista-videos .container video { width:100%; height:auto; }

#slides .video-slide .desktop { display:none; z-index:1; }
#slides .video-slide .desktop .lista-videos { width:auto; height:100vh; }
#slides .video-slide .desktop .lista-videos .container { position:absolute; width:100%; height:100vh; top:0; left:0; overflow:hidden; z-index:0; }
#slides .video-slide .desktop .lista-videos .container:first-child { z-index:1; }
#slides .video-slide .desktop .lista-videos .container video { width:100%; height:100vh; object-fit:cover; }

#slides .video-slide .setas { position:absolute; width:100%; height:100vh; top:0; left:0; z-index:999999; }
#slides .video-slide .setas .anterior { position:absolute; display:block; width:30px; height:50px; top:50%; margin-top:-25px; left:10px; z-index:2; cursor:pointer; }
#slides .video-slide .setas .proximo { position:absolute; display:block; width:30px; height:50px; top:50%; margin-top:-25px; right:10px; z-index:2; cursor:pointer; }

#slides .imagem { position:relative; height:425px; overflow:hidden; z-index:1; }
#slides .imagem picture { position:relative; display:block; width:100%; height:425px; }
#slides .imagem picture img { position:absolute; top:0; left:50%; margin-left:-480px; width:auto; max-width:960px; height:425px; }

#slides .imagem .texto { position:absolute; display:flex; width:100%; height:100%; top:0; left:0; flex-wrap:wrap; align-items:center; justify-content:center; z-index:1; }
#slides .imagem .texto > div { flex: none; width: 100%; }
#slides .imagem .texto h1 { font-family:'MuseoModerno',sans-serif; /*font-size:45px;*/ font-size:25px; color:var(--cor-branco); line-height:1.1; font-weight:500; text-shadow:2px 2px 3px #000; }
#slides .imagem .texto h1 strong { font-weight:500; color:var(--cor-primaria); }
#slides .imagem .texto h2 { font-family:'MuseoModerno',sans-serif; font-size:20px; color:var(--cor-branco); line-height:1.1; font-weight:400; text-shadow:2px 2px 3px #000; margin-top:5px; }

#slides .imagem .texto:has(h2) h1 span { display:inline-block; vertical-align:middle; padding-bottom:10px; margin-bottom:15px; border-bottom:1px solid var(--cor-primaria); }
#slides .imagem .texto.esquerda { text-align:left; }
#slides .imagem .texto.esquerda .limita { margin:0; }
#slides .imagem .texto.centro { text-align:center; }
#slides .imagem .texto.centro .limita { margin:0 auto; }
#slides .imagem .texto.direita { text-align:right; }
#slides .imagem .texto.direita .limita { margin:0 0 0 auto; }
#slides .imagem .limita { width:100%; max-width:585px; }

#slides .imagem picture a.link { position:absolute; width:100%; height:100%; top:0; left:0; z-index:1; }

#slides .paginacao-slides { position:absolute; bottom:25px; left:0; right:0; margin:0 auto; padding:0 10px; width:100%; max-width:1200px; height:13px; text-align:center; z-index:2; }
#slides .paginacao-slides span { display:inline-block; vertical-align:top; margin:0 5px; width:15px; height:15px; font-size:0; border-radius:50%; background-color:var(--cor-branco); cursor:pointer; overflow:hidden; }
#slides .paginacao-slides span.cycle-pager-active { background-color:var(--cor-primaria); cursor:default; }

/* beneficios */
#beneficios { padding:25px 0; background:url(../img/fundo-beneficios.png) top center no-repeat; background-size:cover; }
#beneficios .central { display:flex; flex-flow:column; gap:25px; }
#beneficios h2 { font-family:'MuseoModerno',sans-serif; font-size:30px; color:var(--cor-primaria); line-height:1.1; font-weight:500; }
#beneficios .lista { padding:25px; gap:0; border-radius:20px; background-color:rgba(255,255,255,0.8); overflow:hidden; }
#beneficios .lista .bloco { font-size:19px; font-weight:bold; text-align:center; transition:all 0.3s; }
#beneficios .lista .bloco:hover { color:#fff; background:rgba(249,185,29,0.8); transition:all 0.3s; }
#beneficios .lista .bloco + .bloco { padding-top:20px; }

/* cursos */
#cursos { padding:25px 0; background:var(--cor-branco); }
#cursos .central { display:flex; flex-flow:column; gap:25px; }
#cursos h2 { font-family:'MuseoModerno',sans-serif; font-size:30px; color:var(--cor-primaria); line-height:1.1; font-weight:500; }

#cursos .filtros { display:flex; width:100%; flex-wrap:wrap; justify-content:flex-start; gap:10px; }
#cursos .filtros a { /*font-size:16px;*/ font-size:14px; color:var(--cor-preto); line-height:1; font-weight:500; text-decoration:none; border:var(--cor-primaria) 1px solid; /*padding:10px 15px;*/ padding:8px 12px; border-radius:10px; transition:all 0.3s; }
#cursos .filtros a:hover,
#cursos .filtros a.ativo { background:var(--cor-primaria); color:var(--cor-branco); transition:all 0.3s; }

#cursos .lista { --column-count-lista: 2; --gap-lista:15px; }
#cursos .lista .bloco { /*padding:20px;*/ background:var(--cor-preto); border-radius:20px; }
#cursos .lista .bloco figure { border-radius:20px; overflow:hidden; }
#cursos .lista .bloco figure img { max-width:100%; height:auto; }
#cursos .lista .bloco .dados { display:flex; flex-flow:column; padding:15px; gap:10px; }
#cursos .lista .bloco .dados h1 { font-size:15px; color:var(--cor-primaria); line-height:1.1; font-weight:600; }
#cursos .lista .bloco .dados .breve { font-size:13px; color:#fff; line-height:1.5; font-weight:300; }

/* como funciona */
#como-funciona {  padding:50px 0; background-color:var(--cor-terciaria); background-image:url(../img/fundo-textos.png); background-position:center; background-size:277px 289px; background-repeat:no-repeat; }
#como-funciona .duas-colunas { display:flex; flex-flow:column; gap:50px; }
#como-funciona .duas-colunas > div { display:flex; flex-flow:column; gap:10px; text-align:center; }
#como-funciona .duas-colunas > div h2 { font-size:24px; color:var(--cor-primaria); line-height:1.1; font-weight:bold; }
#como-funciona .duas-colunas > div > div { font-size:16px; color:var(--cor-branco); line-height:1.5; }

/* faq */
#faq { padding:25px 0; background:var(--cor-quinquenaria); }
#faq .central { display:flex; flex-flow:column; gap:25px; }
#faq h2 { /*font-size:35px;*/ font-size:24px; color:var(--cor-primaria); line-height:1.1; font-weight:bold; }

#faq .lista { gap:0; }
#faq .lista .bloco { display:flex; padding-bottom:15px; margin-bottom:15px; border-bottom:#646464 1px solid; flex-flow:column; gap:10px; }
#faq .lista .bloco .pergunta { padding-right:25px; /*font-size:18px;*/ font-size:17px; color:var(--cor-branco); line-height:1.4; font-weight:bold; cursor:pointer; }
#faq .lista .bloco .pergunta::after { position:absolute; content:'>'; top:2px; right:0; font-size:30px; line-height:0.7; font-weight:normal; transition:all 0.3s; }
#faq .lista .bloco .resposta { display:none; /*font-size:17px;*/ font-size:16px; color:var(--cor-branco); font-weight:300; }
#faq .lista .bloco .resposta a { color:#fff; text-decoration:underline; }
#faq .lista .bloco:first-child .resposta { display:block; }

#faq .lista .bloco.aberto .pergunta::after { transform:rotate(90deg); transition:all 0.3s; }

/* cadastro */
#cadastro { padding:25px 0 0 0; background:var(--cor-terciaria); }
#cadastro .central { /*display:flex; flex-flow:column; gap:25px;*/ }
#cadastro h2 { position:relative; max-width:530px; font-family:'MuseoModerno',sans-serif; /*font-size:35px;*/ font-size:24px; color:var(--cor-branco); line-height:1.1; font-weight:500; text-align:center; padding:15px 20px; margin:0 auto; background:var(--cor-preto); border-radius:50px; z-index:2; }

#cadastro form { position:relative; display:flex; flex-flow:column; gap:10px; padding:50px 25px 25px 25px; background:var(--cor-primaria); margin-top:-25px; /*border-radius:50px;*/ border-top-left-radius:50px; border-top-right-radius:50px; z-index:1; }
#cadastro form .campos { display:flex; flex-flow:column; gap:10px; }
#cadastro form span {  }
#cadastro form span label { display:block; font-size:16px; font-weight:normal; line-height:1.2; margin-bottom:5px; }
#cadastro form span input[type=text] { width:100%; padding:5px 10px; background:var(--cor-primaria); border:var(--cor-preto) 1px solid; border-radius:5px; }
#cadastro form span select { width:100%; padding:5px 10px; background:var(--cor-primaria); border:var(--cor-preto) 1px solid; border-radius:5px; }

#cadastro form .concordo { display:flex; }
#cadastro form .concordo input { margin:2px 8px 0 0; align-self:flex-start; accent-color:var(--cor-preto); }
#cadastro form .concordo label { font-size:14px; color:var(--cor-preto); line-height:1.3; font-weight:normal; }
#cadastro form .concordo label a { color:var(--cor-preto); }

#cadastro form .campo.enviar { display:flex; justify-content:center; }
#cadastro form .campo.enviar input { /*height:70px;*/ height:45px; font-family:'MuseoModerno',sans-serif; /*font-size:30px;*/ font-size:25px; padding:0 30px; background:var(--cor-branco); /*border-radius:25px;*/ border-radius:20px; transition:all 0.3s; }
#cadastro form .campo.enviar input:hover { background:var(--cor-preto); color:var(--cor-branco); transition:all 0.3s; }

/* erro 404 */
#erro-404 { padding:50px 0; text-align:center; }
#erro-404 .central { display:flex; flex-flow:column; gap:20px; }

#erro-404 .titulo-internas {  }
#erro-404 .titulo-internas h1 { font-size:35px; font-weight:600; line-height:1; }
#erro-404 .titulo-internas h2 { font-size:24px; font-weight:600; line-height:1; margin-top:10px; }

/* politicas */
#politicas { padding:50px 0; }
#politicas .central { display:flex; flex-flow:column; gap:20px; }

#politicas .titulo-internas h1 { font-size:35px; font-weight:600; line-height:1; }
#politicas .titulo-internas time { display:block; margin-top:10px; }


/* requisicao cookie */
#requisicao-remocao { padding:50px 0; }
#requisicao-remocao .central { display:flex; flex-flow:column; gap:20px; }


#requisicao-remocao .titulo-internas h1 { font-size:35px; font-weight:600; line-height:1; }


/* rodape */
footer .superior { padding:35px 0; background:var(--cor-rodape1); }
footer .superior .central { display:flex; flex-flow:column; gap:20px; }

footer .superior figure {  }
footer .superior figure a {  }
footer .superior figure img { max-width:240px; margin:0 auto; }

footer .superior .midias-sociais { display:flex; width:100%; justify-content:center; gap:15px; }
footer .superior .midias-sociais a { width:auto; height:37px; }
footer .superior .midias-sociais a img { height:37px; }

footer .superior .telefones { display:flex; width:100%; flex-flow:column; justify-content:center; text-align:center; gap:15px; }
footer .superior .telefones span { height:44px; }
footer .superior .telefones a { display:inline-flex; padding-left:55px; background-size:44px; font-size:15px; color:var(--cor-branco); font-weight:normal; text-decoration:none; line-height:44px; }
footer .superior .telefones a:hover { text-decoration:underline; }
footer .superior .telefones a.telefone { background:url(../img/ico-telefone.svg) no-repeat; }
footer .superior .telefones a.whatsapp { background:url(../img/ico-whatsapp.svg) no-repeat; }

footer .copyright { padding:20px 0; background:var(--cor-rodape2); }
footer .copyright .central { display:flex; flex-flow:column; justify-content:center; text-align:center; }
footer .copyright .central p { font-size:14px; color:var(--cor-branco); font-weight:normal; }
footer .copyright .central p a { color:var(--cor-branco); text-decoration:none; }
footer .copyright .central p a:hover { text-decoration:underline; }