@media screen and (min-width:480px){

	/* geral */
    .titulo h1 { font-size: 58px; }
    .titulo-com-fundo.grande h2 { padding: 16px 42px; font-size: 22px; }
    .titulo-com-fundo.medio h2 { padding: 10px 42px; font-size: 20px; }
    .titulo-com-fundo.pequeno h3 { padding: 8px 20px; font-size: 16px; }
    .titulo-compartilhe-sua-memoria h2 { font-size: 22px; }
    .titulo-faq { max-width: 304px; }
    .titulo-faq h2 { font-size: 35px; }

    .redes-sociais figure { gap: 15px; }

    /* index */
    #castelo { margin-top: -35px; }

    /* rodape */
    #castelo .logo { bottom: 30px; max-width: 216px; }

}

@media screen and (min-width:600px){

	/* reset css */
	html { --column-count-lista: 2; }

	/* geral */
	.editor :is(h1, h2, h3, h4, h5, h6),
	.editor :is(h1, h2, h3, h4, h5, h6) * { font-size: 24px !important; }

    .titulo h1 { font-size: 78px; }
    .titulo-com-fundo.grande h2 { padding: 18px 62px; font-size: 26px; }
    .titulo-com-fundo.medio h2 { padding: 12px 62px; font-size: 24px; }
    .titulo-com-fundo.pequeno h3 { padding: 10px 20px; font-size: 18px; }
    .titulo-compartilhe-sua-memoria h2 { font-size: 28px; }
    .titulo-faq { max-width: 324px; }
    .titulo-faq h2 { font-size: 40px; }

    /* index */
    #caixa .conteudo { gap: 20px; }
    #caixa .conteudo .imagem { flex: 1.94; }
    #caixa .conteudo .breve { flex: 2; }
    #caixa .breve { font-size: 20px; text-align: left; }

    #memorias .campanha { max-width: 520px; }
	#memorias .campanha .breve h2 { font-size: 24px; padding: 20px 0 0 0;}

	#faq .breve { font-size: 20px; }
	#faq .faq .abre-fecha { padding: 16px 49px 16px 20px; font-size: 20px; }

	#castelo { margin-top: -45px; }

}

@media screen and (min-width:768px){

	/* geral */
	.redes-sociais figure { gap: 20px; }
	.redes-sociais figure a { max-width: 26px; }
	.redes-sociais figure img { max-height: 26px; }

	/* rodape */
    #castelo .logo { bottom: 40px; max-width: 276px; }

}

@media screen and (min-width:960px){

	/* geral */
	.editor :is(h1, h2, h3, h4, h5, h6),
	.editor :is(h1, h2, h3, h4, h5, h6) * { font-size: 28px !important; }

    .titulo h1 { font-size: 82px; }
    .titulo-com-fundo.grande h2 { padding: 21px 82px; font-size: 30px; }
    .titulo-com-fundo.medio h2 { padding: 13px 122px; font-size: 26px; }
    .titulo-com-fundo.pequeno h3 { padding: 10px 20px; font-size: 22px; }
    .titulo-compartilhe-sua-memoria h2 { font-size: 36px; }
    .titulo-faq { max-width: none; }
    .titulo-faq:before { margin-top: -8px; left: 30px; width: 348px; height: 17px; background: url('../img/detalhe-faq-left.webp') top left no-repeat; background-size: 348px 17px; }
	.titulo-faq:after { margin-top: -8px; right: 30px; width: 348px; height: 17px; background: url('../img/detalhe-faq-right.webp') top right no-repeat; background-size: 348px 17px; }
    .titulo-faq h2 { font-size: 50px; }

	/* formulario */
	.formulario form .tres-colunas { gap: 10px; }
	.formulario form .tres-colunas > div { flex: 1; max-width: calc(33.33% - 5px); }
	.formulario form .tres-colunas .campo + .campo { margin-top: 0px; }
	.formulario form .duas-colunas { gap: 10px; }
	.formulario form .duas-colunas > div { flex: 1; max-width: calc(50% - 5px); }
	.formulario form .duas-colunas .campo + .campo { margin-top: 0px; }
	.formulario form .campo.enviar input[type="submit"] { padding: 9px 20px; font-size: 18px; }
	.formulario form .captcha-envio .captcha { zoom: 100%; }

	/* index */
	#slides .imagem,
	#slides .imagem picture { height: auto; }
	#slides .imagem picture img { position: relative; left: 0px; margin-left: 0px; width: 100%; max-width: none; height: auto; }
	#slides .imagem .cycle-slideshow { aspect-ratio: 1920 / 936; }

	#caixa .breve { font-size: 22px; }

	#memorias .campanha { max-width: 620px; padding: 20px 0 0 0;}
	#memorias .campanha .breve h2 { font-size: 26px; }

	.modal .imagens .modal .bloco { flex: 1; max-width: 33.33%; }

	#escreva-sua-historia .captcha-envio { gap: 40px; }
	#escreva-sua-historia .captcha-envio > div { flex: 1; }
	#escreva-sua-historia .captcha-envio .imagens p { padding-top: 0px; }

	#faq .breve { padding: 25px 35px 35px 35px; font-size: 24px; }
	#faq .faq .abre-fecha { padding: 20px 110px 20px 35px; font-size: 24px; background-position: center right 35px; background-size: 40px 23px; }
	#faq .faq .abre-fecha.ativo { background-position: center right 35px; background-size: 40px 23px; }
	#faq .faq .abre-fecha.ativo + .texto.exposicao { padding-top: 20px; }
	#faq .faq .texto { padding: 0px 35px; }
	#faq .faq .texto.exposicao { padding: 35px; }

	#castelo { margin-top: -50px; }

	/* rodape */
	footer .contatos .conteudo * { display: inline-block; vertical-align: middle; }
	footer .contatos span { display: inline-block; vertical-align: middle; margin: 0px 5px; font-weight: 100; }

}

@media screen and (min-width:1044px){

	/* reset css */
	html, body { font-size: 18px; }
	html { --column-count-lista: 3; }
	.central { padding: 0px 35px; }

	/* geral */
	.editor * { font-size: 18px !important; }
	.editor :is(h1, h2, h3, h4, h5, h6),
	.editor :is(h1, h2, h3, h4, h5, h6),
	.editor :is(h1, h2, h3, h4, h5, h6) * { /* usar important */ }

	.titulo h1 { padding-right: 32px; }
	.titulo-com-fundo { margin: 15px 0px 40px; }

	/* internas */
	.internas .fundo { padding: 261px 0px 50px; }
	.internas .titulo { margin-bottom: 50px; }

	/* topo */
	header .inferior .container { padding: 55px 0px; }
	header .inferior .logo { max-width: 325px; }
	header .inferior .menu { max-width: none; }
	header .inferior .menu .mobile { top: 91px; right: calc((100% - 932px) / 2); }
	header .inferior .menu .mobile .mais { width: 46px; height: 29px; }
	header .inferior .menu .mobile .mais.fechado span:nth-child(2) { top: 13px; }
	header .inferior .menu .mobile .mais.fechado span:nth-child(3) { top: 26px; }
	header .inferior .menu .mobile .mais.aberto span:nth-child(1) { top: 1px; right: 5px; transform: rotate(-38deg); }
	header .inferior .menu .mobile .mais.aberto span:nth-child(3) { top: 29px; right: 5px; transform: rotate(38deg); }
	
	/* topo reduzido */
	header.topo-reduzido .inferior .container { padding: 15px 0px; }
	header.topo-reduzido .inferior .logo { max-width: 220px; }
	header.topo-reduzido .inferior .menu .mobile { top: 35px; }

	/* index */
	#slides .imagem picture .moldura { top: 16px; left: 16px; right: 16px; bottom: 16px; width: calc(100% - 32px); height: calc(100% - 32px); }
	#slides .imagem picture .moldura-parte-um:before { background-size: 27px, 27px; }
	#slides .imagem picture .moldura-parte-um:after { background-size: 37px, 37px; }
	#slides .imagem picture .moldura-parte-dois:before { left: 27px; width: calc(100% - 64px); background-size: 1px 2px; }
	#slides .imagem picture .moldura-parte-dois:after { right: 27px; width: calc(100% - 64px); background-size: 1px 2px; }
	#slides .imagem picture .moldura-parte-tres:before { top: 27px;height: calc(100% - 64px); background-size: 3px 1px; }
	#slides .imagem picture .moldura-parte-tres:after { bottom: 27px; height: calc(100% - 64px); background-size: 3px 1px; }
	#slides .setas > :is(.anterior, .proximo) { margin-top: -20px; width: 22px; height: 40px; }
	#slides .setas > :is(.anterior, .proximo) figure { height: 40px; }
	#slides .setas > :is(.anterior, .proximo) figure img { max-height: 40px; }
	#slides .setas .anterior { left: calc((100% - 932px) / 2); }
	#slides .setas .proximo { right: calc((100% - 932px) / 2); }

	/* index */
	#caixa .conteudo { gap: 40px; padding: 10px 40px; }

	#memorias { padding-top: 30px; }
	#memorias .container { padding: 0px 35px 25px 35px; }
	#memorias .campanha .autorizacao { margin-top: 15px; }
	#memorias .detalhe-parte-um:before,
	#memorias .detalhe-parte-um:after { top: 30px; }
	#memorias .detalhe-parte-dois:before,
	#memorias .detalhe-parte-dois:after { top: 82px; }
	#memorias .detalhe-parte-dois:before,
	#memorias .detalhe-parte-dois:after { height: calc(100% - 103px); }

	#caixa .central { padding: 0px 54px; }

	#memorias-compartilhadas .titulo-com-fundo { padding: 35px 0px; }
	#memorias-compartilhadas .owl-carousel .bloco .conteudo { padding-bottom: 40px; }
	#memorias-compartilhadas .owl-carousel .bloco h3 { padding: 20px 10px 15px 10px; font-size: 33px; }

	.modal h3 { padding: 20px 10px 15px 10px; font-size: 33px; }

	#regulamento h2 { padding: 20px 10px 15px 10px; font-size: 33px; }

	#escreva-sua-historia { padding-top: 50px; }
	#escreva-sua-historia .titulo-com-fundo { padding-top: 50px; }
	#escreva-sua-historia .container { padding: 50px; }

	#faq { padding-top: 50px; }
	#faq .breve { padding: 35px; }

	#castelo { margin-top: -135px; }

	/* rodape */
	footer .whatsapp-fixo { bottom: 30px; right: 30px; }
    footer .whatsapp-fixo figure img { width: 60px; }

}

@media screen and (min-width:1360px){

	/* geral */
	.redes-sociais figure a { max-width: 31px; }
	.redes-sociais figure img { max-height: 31px; }
		
	/* index */
	#castelo .logo { bottom: 50px; max-width: 316px; }

	/* rodape */
	footer { padding: 30px 0px; }
	footer .contatos { margin-top: 30px; }

}

@media screen and (min-width:1920px){

	/* geral */
	html, body { font-size: 22px; }
	input, button, select, option, optgroup, textarea { font-size: 18px; }

	.editor * { font-size: 22px !important; }
	.editor :is(h1, h2, h3, h4, h5, h6),
	.editor :is(h1, h2, h3, h4, h5, h6) * { font-size: 34px !important; }

	.titulo h1 { font-size: 118px; }
	.titulo-com-fundo { margin: 20px 0px 60px; }
	.titulo-com-fundo.grande h2 { padding: 26px 92px; font-size: 40px; }
	.titulo-com-fundo.medio h2 { padding: 19px 122px; font-size: 34px; }
	.titulo-com-fundo.pequeno h3 { padding: 11px 20px; font-size: 30px; }
	.titulo-compartilhe-sua-memoria h2 { font-size: 40px; }
	.titulo-faq h2 { font-size: 60px; }

	.formulario form * { font-size: 18px; }
	.formulario form .campo.enviar input[type="submit"] { padding: 11px 22px; font-size: 20px; }

	.redes-sociais figure { gap: 25px; }
	.redes-sociais figure a { max-width: 36px; }
	.redes-sociais figure img { max-height: 36px; }

	/* index */
	#caixa .breve { font-size: 28px; }

	#memorias .campanha { max-width: 740px; }
	#memorias .campanha .breve h2 { font-size: 34px; }
	#memorias .campanha .autorizacao { margin-top: 20px; }
	#memorias .detalhe-parte-um:before,
	#memorias .detalhe-parte-um:after { top: 50px; }
	#memorias .detalhe-parte-dois:before,
	#memorias .detalhe-parte-dois:after { top: 102px; }
	#memorias .detalhe-parte-dois:before,
	#memorias .detalhe-parte-dois:after { height: calc(100% - 123px); }

	#memorias-compartilhadas .owl-carousel .bloco .breve { font-size: 20px; }
	#memorias-compartilhadas .owl-carousel .bloco h3 { font-size: 38px; }

	.modal h3 { font-size: 38px; }
	.modal .breve { font-size: 20px; }

	#regulamento h2 { font-size: 38px; }
	#regulamento .breve { font-size: 20px; }

	#faq .breve { font-size: 30px; }
	#faq .faq .abre-fecha { padding: 25px 120px 25px 35px; font-size: 30px; background-size: 50px 29px; }
	#faq .faq .abre-fecha.ativo { background-size: 50px 29px; }

	#castelo { margin-top: -160px; }
	#castelo .logo { bottom: 60px; max-width: 376px; }

}