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

	/* index*/
	#produtos-lista .lista .bloco { width: calc(33.33% - 30px); }
	#produtos-lista .lista .bloco:nth-child(2n) ~ .bloco { margin-top: 0px; }
	#produtos-lista .lista .bloco:nth-child(3n) ~ .bloco { margin-top: 30px; }

	/* produto detalhes */
	#detalhes .conteudo { overflow-x: hidden; }
	#detalhes .conteudo .superior { display: flex; flex-wrap: wrap; margin-right: -30px; width: auto; }
	#detalhes .conteudo .superior > div { margin-right: 30px; width: calc(50% - 30px); }
	#detalhes .conteudo .superior .esq { order: 1; }
	#detalhes .conteudo .superior .dir { order: 2; }
	#detalhes .galeria { margin-top: 0px; }

	/* representantes */
	#bloco-representantes { display: flex; justify-content: center; align-items: flex-start; }
	#mapa-representantes { flex: none; order: 1; margin-right: 30px; height: 520px; width: 50%; }
	#bloco-lista-representantes { position: relative; flex: none; order: 2; margin-top: 0px; height: 520px; width: 50%; min-width: 340px; text-align:left; overflow: auto; }
	#lista-representantes { position:relative; }
	#lista-representantes:empty::before { content: 'clique ao lado para ver os representantes correspondentes.'; display:block; margin-top:20px; }
	
	/* footer */
	footer .superior { overflow-x: hidden; }
	footer .superior .conteudo { display: flex; flex-wrap: wrap; justify-content:space-between; }
	footer .superior .conteudo .bloco { flex:none; width: 33%; max-width:385px; }
	footer .superior .conteudo .bloco:nth-child(2n) { padding: 0px 15px; }
	footer .superior .bloco + .bloco { margin-top: 0px;/* margin-left: 30px;*/ }
}

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

	/* geral */
	main { padding-top: 212px; }

	/* topo */
	header { position: fixed; top: 0px; left: 0px; display: block; padding: 0px; width: 100%; z-index: 2; }
	/*
	header.topo-fixo { position: fixed; top: 0px; left: 0px; width: 100%; }
	header.topo-fixo + main { padding-top: 204px; }
	*/
	header .superior { padding: 44px 0px; transition: all .30s linear; }
	header .superior .central { display: flex; align-items: center; justify-content: space-between; }
	header .superior .logo { max-width: 297px; transition: all .30s linear; }
	header .superior .busca { display: block; margin: 0px auto; width: 100%; max-width: 415px; }
	header .superior .busca form { position: relative; }
	header .superior .busca form input[type="text"] {  padding: 0px 41px 0px 0px; width: 100%; height: 32px; font-size: 12px; line-height: 1; letter-spacing: 1px; font-weight: 500; border-bottom: 2px solid #ed1c24; }
	header .superior .busca form input[type="submit"] { position: absolute; top: 4px; right: 10px; width: 21px; height: 22px; background: transparent url('../img/ico-busca.png') center center no-repeat; background-size: 21px 22px; }
	header .superior .redes-sociais { display: flex; align-items: center; justify-content: space-between; width: 100%; max-width: 118px; }
	header .superior .redes-sociais figure + figure { margin-left: 11px; }
	header .superior .redes-sociais figure img { width: 100%; max-width: 32px; }
	header .menu { background-color: #000000; }
	header .menu .sanduiche { display: none; }
	header .menu .desktop { position: relative; width: 100%; height: auto; text-align: center; transform: none; transition: none; background-color: transparent; }
	header .menu .desktop nav { display: flex; align-items: center; justify-content: space-between; width: 100%; }
	header .menu .desktop nav a { padding: 23px 26px 21px; font-size: 16px; line-height: 24px; border-bottom: 0px; }
	header .menu .desktop nav a:hover { background-color: #ed1c24; }
	header .menu .desktop nav a.ativo { background-color: #ed1c24; }
	header .menu .desktop .fechar { display: none; }

	/* submenu nivel um */
	header .menu .desktop nav .submenu { position: relative; }
	header .menu .desktop nav .submenu .submenu-titulo { padding: 23px 56px 21px 36px; border-bottom: 0px; } 
	header .menu .desktop nav .submenu .submenu-titulo::after { background-position: top 27px right 20px; }
	header .menu .desktop nav .submenu .submenu-itens { position: absolute; display: none; top: 60px; left: 0px; width: 100%; text-align: left; border-top: 10px solid #ed1c24; }
	header .menu .desktop nav .submenu .submenu-itens a { white-space: nowrap; border-bottom: 1px solid #ffffff; }
	header .menu .desktop nav .submenu .submenu-itens a:last-child { border-bottom: 0px; }
	header .menu .desktop nav .submenu:hover .submenu-titulo { background-color: #ed1c24; }
	header .menu .desktop nav .submenu:hover .submenu-itens { display: block; background-color: #ed1c24; }
	header .menu .desktop nav .submenu:hover .submenu-itens a { color: #ffffff; }
	header .menu .desktop nav .submenu:hover .submenu-itens a:hover { background-color: #000000; }
	header .menu .desktop nav .submenu.submenu-clicado .submenu-titulo { background-color: #ed1c24; }
	header .menu .desktop nav .submenu.submenu-clicado .submenu-itens { border-bottom: 0px; }

	/* submenu nivel dois */
	header .menu .desktop nav .sub-submenu { position: relative; }
	header .menu .desktop nav .sub-submenu .sub-submenu-titulo { text-align: left; }
	header .menu .desktop nav .sub-submenu .sub-submenu-titulo::after { background: url('../img/ico-seta-sub-submenu-desktop.png') top 12px right 21px no-repeat; background-size: 6px 10px; }
	header .menu .desktop nav .sub-submenu .sub-submenu-itens { position: absolute; top: 0px; left: 100%; margin-left: 6px; width: auto; min-width: 228px; }
	header .menu .desktop nav .sub-submenu .sub-submenu-itens a { white-space: nowrap; }
	header .menu .desktop nav .sub-submenu:hover .sub-submenu-titulo { background-color: #000000; }
	header .menu .desktop nav .sub-submenu:hover .sub-submenu-itens { display: block; background-color: #ed1c24; }
	header .menu .desktop nav .sub-submenu:last-child .sub-submenu-titulo { border-bottom: 0px; }
	header .menu .desktop nav .sub-submenu.sub-submenu-clicado .sub-submenu-itens { background-color: #ed1c24; }

	/* topo reduzido */
	header.topo-reduzido .superior { padding: 22px 0px; transition: all .30s linear; }
	header.topo-reduzido .logo { max-width: 215px; transition: all .30s linear; }

	/* index */
	#chamadas .central { display: flex; align-items: center; justify-content: space-between; }
	#chamadas .chamada { width: 30.45%; }
	#chamadas .chamada + .chamada { margin: 0px 0px 0px 4.325%; }

	/* catalogos */
	#catalogo { overflow-x: hidden; }
	#catalogo .conteudo { display: flex; flex-wrap: wrap; margin-right: -30px; }
	#catalogo .conteudo .catalogo { margin-right: 30px; width: calc(37% - 30px); }
	#catalogo .conteudo .catalogo figure { margin: 25px 0px 0px 0px; }
	#catalogo .conteudo .formulario { margin: 0px 30px 0px 0px; padding: 30px; width: calc(63% - 30px); }

	/* contatos */
	#contato { overflow-x: hidden; }
	#contato .conteudo { display: flex; flex-wrap: wrap; margin-right: -30px; }
	#contato .conteudo > div { margin-right: 30px; }
	#contato .conteudo .formulario { width: calc(57% - 30px); }
	#contato .conteudo .formas-de-contato { padding-right: 49px; width: calc(43% - 30px); }

	/* rodape */
	footer .superior .conteudo { margin-right: 0px !important; }

}

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

	/* reset css */
	html, body { font-size: 16px; line-height: 24px; }
	input, button, select, option, optgroup, textarea { font-size: 16px; line-height: 24px; }
	ul, ol { margin-left: 20px; list-style-position: outside; }

	/* geral */
	.titulo { padding: 0px 20px; }
	.titulo h2 { font-size: 30px; line-height: 34px; }
	.titulo h2::after { margin: 30px 0px 40px; }
	.titulo h3 { font-size: 24px; }

	main > section { margin: 50px 0px; }

	#banners { height: 506px; }
	#banners .banner .texto { padding: 50px; }
	#banners .banner .texto h1 { font-size: 36px; line-height: 40px; }
	#banners .banner .texto h1::after { margin: 30px auto; }
	#banners .banner .texto .botao { margin-top: 50px; }
	#banners .banner .texto .botao a { padding: 20px 69px; }

	#banner-prev { margin-top: -23px; left: 20px; width: 28px; height: 47px; background-size: 28px 47px; }
	#banner-next { margin-top: -23px; right: 20px; width: 28px; height: 47px; background-size: 28px 47px; }

	#chamadas { padding: 50px 0 30px; }
	#chamadas .chamada .imagem { max-width: 75px; }
	#chamadas .chamada .texto h2 { font-size: 18px; }

	#produtos-lista { margin: 50px 0px; }
	#produtos-lista aside { margin-top: 0px; width: 23.134%; float: left; }
	#produtos-lista .conteudo { display: block; overflow-x: hidden; }
	#produtos-lista.outros-produtos .lista { margin-top: 50px; }
	#produtos-lista.outros-produtos .lista .bloco { width: calc(25% - 30px); }
	#produtos-lista.outros-produtos .lista .bloco:nth-child(3n) ~ .bloco { margin-top: 0px; }
	#produtos-lista.outros-produtos .lista .bloco:nth-child(4n) ~ .bloco { margin-top: 50px; }

	#index #produtos-lista .lista .bloco { width: calc(25% - 30px); }
	#index #produtos-lista .lista .bloco:nth-child(3n) ~ .bloco { margin-top: 0px; }
	#index #produtos-lista .lista .bloco:nth-child(4n) ~ .bloco { margin-top: 50px; }
	
	#produtos #produtos-lista .lista { width: 76.866%; float: right; }

	#videos-lista { margin: 50px 0px; }
	#videos-lista .lista .texto h2 { font-size: 18px; } 
	#videos-lista .lista .bloco:nth-child(2n) ~ .bloco { margin-top: 50px; }

	/* produto detalhes */
	#detalhes { margin: 50px 0px; }
	#detalhes .titulo h2::after { margin: 30px auto 40px; }
	#detalhes .conteudo .titulo h2::after { margin: 30px 0px 40px; }
	#detalhes .conteudo .superior { margin-top: 50px; }
	#detalhes .conteudo .bloco { margin-top: 50px; }
	#detalhes .galeria .miniaturas .item figure { width: 100px; height: 100px; }
	#detalhes .galeria .miniaturas .item figure img { width: 100px; height: 100px; }

	#cotacao { margin-top: 50px; padding: 50px 0px; }

	/* catalogo */
	#catalogo .conteudo { margin-right: -70px; }
	#catalogo .conteudo .catalogo { margin-right: 70px; width: calc(37% - 70px); }
	#catalogo .conteudo .formulario { margin-right: 70px; padding: 30px; width: calc(63% - 70px); }

	/* formularios */
	.formulario { margin: 50px auto 0px; }
	.formulario > p::after { margin: 30px auto 40px; }
	.formulario form .campo label { line-height: 22px; }
	.formulario form .campo.checkbox input[type="checkbox"] + label { line-height: 22px; }
	.formulario form .campo.enviar input[type="submit"] { padding: 20px 69px; }
	.formulario form .campo.obter-catalogo input[type="submit"] { padding: 20px 69px; }

	/* contatos */
	#contato .conteudo { margin-right: -70px; }
	#contato .conteudo > div { margin-right: 70px; }
	#contato .conteudo .formulario { width: calc(62% - 50px); }
	#contato .conteudo .formas-de-contato { margin-top: 30px; padding-right: 30px; width: calc(38% - 30px); }
	#contato .conteudo .formas-de-contato .bloco { padding: 30px; }

	#endereco { margin: 50px 0px; }

	/* representantes */
	#bloco-representantes { margin: 50px 0px; }

	#mapa-representantes { margin-right: 70px; }

	#lista-representantes .titulo { margin: 50px 0px 15px; }

	/* voltar paginacao */
	.voltar-paginacao { margin-top: 50px; }

	/* rodape */
	footer .superior { padding: 80px 0px; }
	footer .superior .bloco .logo { margin: 0px auto; }
	footer .superior .bloco .redes-sociais { margin: 50px auto 0px; max-width: 98px; }
	footer .superior .bloco .redes-sociais figure img { max-width: 39px; }
	footer .inferior { display: flex; align-items: center; justify-content: space-between; width: 100%; }
	footer .inferior .menu nav { text-align: left; }
	footer .inferior .logo { margin: 0px; }
	footer .whatsapp-fixo { bottom: 40px; right: 40px; }
	footer .whatsapp-fixo figure img { max-width: 88px; }

}

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

	/* index */
	#banners { height: 1012px; }

}