.menu_mobile{
	display: none;
}
.menu_mobile_aberto{
    display: block;
}
.bt_atendimento{
	display: none;
}
.calendario_agendamento{

}
section{
    position: relative;
    overflow-x: hidden;
}
@media (max-height: 900px) {
	#modal_cronograma .topo_modal .ovelha{
		display: none;
	}
}
@media (max-height: 700px) {
	#modal_cronograma .texto_intro{
		font-size: 15px;
		line-height: 22px;
	}
	#modal_cronograma .titulo_atividades{
		font-size: 18px;
	}
	#modal_cronograma .lista_horarios{
	    grid-template-columns: repeat(5, 1fr);
	    row-gap: 10px;
	    column-gap: 20px;
	    padding-top: 20px;		
	}
	#modal_cronograma .modal_janela{
		width: 1325px;
	}
	#modal_cronograma .lista_horarios .moldura_horario {
	    width: 230px;
	    height: 43px;
	    background: url('../imagens/modal_cronograma_moldura_horario.png') center no-repeat;
	    background-size: 100% 100%;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	}
	#modal_cronograma .lista_horarios .moldura_horario span {
	    font-family: 'Century Gothic Bold';
	    color: #236b48;
	    font-size: 14px;
	    letter-spacing: 0;
	}
	#modal_cronograma .bt_fechar {
	    width: 40px;
	    height: 40px;
	    background: url('../imagens/modal_cronograma_bt_fechar.png') center no-repeat;
	    background-size: contain;
	    position: absolute;
	    top: -60px;
	    left: 50%;
	    transform: translateX(-50%);
	    cursor: pointer;
	    text-indent: -20000px;
	}
	#modal_cronograma .rodape_modal{
		bottom: -85px;
	}	
	#modal_cronograma .rodape_modal .valor span{
		font-size: 28px;
	}
	#modal_cronograma .texto_intro{
		padding-left: 25px;
		padding-right: 25px;
	}
}
/* #######################################################
   #### RESPONSIVO – TABLET (≤1024px)
######################################################## */
@media (max-width: 1024px) {
    .aviso_imagem{
        width: 100%;
        left: 5%;
        margin-left: 0;     
    }
    .aviso_imagem img{
        display: block;
        width: 90%;
    }
    .aviso_imagem .bt_fechar{
        right: 50%;
    }    
    header.header_site.ativo{
        padding: 20px;
    }   
    header.header_site h1{
        width: 130px;
        height: 48px;
        background: url("../imagens/h1.png") no-repeat center;
        background-size: 130px 48px;
        top: 13px !important;
        margin-left: -66px;       
    }
    header.header_site.ativo h1{
        width: 130px;
        height: 48px;
        background: url("../imagens/h1.png") no-repeat center;
        background-size: 130px 48px;
        top: 13px !important;
        margin-left: -66px;
    }
    header.header_site .bt_mobile{
        position: relative;
        left: -12px;
        top: -3px;
    }
    header.header_site nav ul {
        gap: 30px;
    }

    header.header_site nav ul li:nth-child(3) {
        padding-right: 0;
    }
    #main_banner .passadores a{
        width: 54px;
    }
    #barra_compra {
        left: auto;
        top: none;
        bottom: 0;
        margin: 0 auto;
        width: 90%;
    }
    #main_banner .redes_sociais{
        left: 30px;
    }
    #barra_compra .center {
        grid-template-columns: 1fr;
        text-align: center;
        row-gap: 10px;
        position: relative;
    }
    #barra_compra .subbarra_compra{
        font-size: 13px;
        justify-content: left;
        text-indent: 17px;
        letter-spacing: -0.2px;
    }
    #sobre_o_parque{
        background: none;
    }
    #sobre_o_parque .center {
        grid-template-columns: 1fr;
    }
    #sobre_o_parque .imagem {
        width: calc(100% - 40px);
        background: url("../imagens/sobre_o_parque_img.png") no-repeat center;
        background-size: 100% auto;
        left: 20px;
        position: relative; 
        height: 500px;
        margin-top: -40px;      
    }
    #ingressos{
        margin-top: -120px;
    }
    #ingressos.margem_recuada{
        margin-top: -20px;
    }    
    #ingressos h2{
        font-size: 46px;
        line-height: 40px;
    }
    #ingressos .cards {
        grid-template-columns: 1fr 1fr;
        padding-left: 15px;
        padding-right: 15px;
    }
    #ingressos .cards .card:nth-child(3){
        background: #1a5036;
    }
    #atracoes .cards {
        grid-template-columns: 1fr 1fr;
    }
    #atracoes{
        margin-top: -120px;
    }
    #atracoes .moldura_titulo{
        margin: 0 auto;
    }
    #atracoes h2{
        font-size: 46px;
        line-height: 40px;
        text-align: center;        
    }
    #atracoes .cards{
        padding-left: 25px;
        padding-right: 25px;        
    }
    #atracoes .horarios .texto{
        font-size: 13px;
    }
    #atracoes .passadores{
        display: none;
    }
    #atracoes .linha_cronogama{
        background: none;
        display: flex;
        align-items: center;
        padding: 0;
    }
    #atracoes .linha_cronogama .bt_cronograma{
        margin-top: 20px;
    }
    #mapa_interativo{
        margin-top: 0;
        background: #274e3b;
        border-top-right-radius: 24px;
        border-top-left-radius: 24px;        
    }
    #mapa_interativo .conteudo{
        position: static;
        padding-top: 145px;
    }
    #mapa_interativo .mapa_moldura{
        left: 0;
    }
    #mapa_interativo h2{
        font-size: 48px;
        line-height: 44px;
    }
    #mapa_interativo .mapa_container {
        width: 100%;
        height: 100%;
        min-height: 500px;
        margin-top: -85px;
        overflow: hidden;
        background: url("../imagens/mapa_interativo_fundo.jpg") -310px top no-repeat;
        background-size: 960px auto;
        border-top-right-radius: 24px;
        border-top-left-radius: 24px;
    }
    #mapa_interativo .mapa_container .mapa_interativo_curva{
        display: none;
    }


    #footer .center {
        grid-template-columns: 1fr 1fr;
        row-gap: 40px;
    }    
}

/* #######################################################
   #### RESPONSIVO – MOBILE (≤768px)
######################################################## */
@media (max-width: 768px) {
    .vinco_inrgesso_1,
    .vinco_inrgesso_2{
        display: block;
        position: absolute;
        top: 50%;
        margin-top: -20px;
        width: 22px;
        height: 41px;
    }
    .vinco_inrgesso_1{
        background: url(../imagens/vinco_inrgesso_1.png) center center no-repeat;
        right: 0;
    }
    .vinco_inrgesso_2{
        background: url(../imagens/vinco_inrgesso_2.png) center center no-repeat;
        left: 0;
    }    
    header.header_site {
        padding: 20px;
    }
    header.header_site nav {
        display: none;
    }
    header.header_site .bt_mobile {
        display: block;
    }
    #main_banner {
        height: 70vh;
    }
    #barra_compra {
        background: #0d7526;
        overflow: unset;
        border-radius: 16px;
        width: calc(100% - 30px);
        max-height: 102px;
        bottom:auto;
        top: calc(100% - 165px);
    }
    #barra_compra .center h2 {
        font-size: 18px;
        margin-top: -12px;
        max-width: none;
        text-align: center;
    }
    #barra_compra .center p{
        font-size: 14px;
        padding-right: 20px;
        margin-top: -7px;
        line-height: 14px;
        display: none;
    }
    #barra_infos{
        padding-top: 0;
        margin-top: 0;
        margin-top: -90px;
    }
    #barra_infos .center {
        flex-direction: column;
        gap: 30px;
        padding: 0 20px;
    }
    #barra_compra .center a {
        background: #fffbcc url("../imagens/barra_compra_bt_carrinho.png") calc(100% - 19px) center no-repeat;
        background-size: 20px 20px, auto;
        height: 40px;
        padding-bottom: 2px;
        margin: 0 auto;
        width: 210px;
    }
    #barra_compra .center a:hover{
        background: #ebac3b url("../imagens/barra_compra_bt_carrinho.png") calc(100% - 15px) center no-repeat;
        background-size: 24px 24px, auto;    
    }
    #barra_infos .info {
        width: 100%;
        max-width: none;
    }
    #sobre_o_parque h2{
        font-size: 48px;
        line-height: 42px;
        text-align: center;
    }
    #sobre_o_parque p{
        text-align: center;
    }
    #sobre_o_parque .bt_comprar{
        left: 50%;
        margin-left: -119px;
    }
    #sobre_o_parque .conteudo .moldura_titulo{
        left: 0;
        margin: 0 auto;
    }
    #ingressos .cards {
        grid-template-columns: 1fr;
    }
    #atracoes .cards {
        grid-template-columns: 1fr;
    }
    #newsletter {
        height: auto;
        padding-bottom: 40px;
    }
    #newsletter .logo_central {
        position: relative;
        margin: 0 auto;
        top: 25px;
        left: 0;
    }
    #newsletter .form_newsletter input{
        width: 100%;
    }
    #newsletter .form_newsletter .optin{
        position: relative;
        top: 4px;
    }
    #newsletter .form_newsletter .optin input{
        width: 15px;
        margin-left: 21px;
    }
    #newsletter .texto_aviso,
    #newsletter .form_newsletter {
        padding-left: 20px;
        padding-right: 20px;
        text-align: center;
    }
    #newsletter .form_newsletter {
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }
    #footer {
        padding: 60px 20px;
    }
    #footer .center {
        grid-template-columns: 1fr;
        text-align: center;
    }
    #footer .social{
        justify-content: center;
        position: relative;
        top: 10px;
    }
    #pag_modal_compra .centro{
        width: calc(100% - 20px);
    }
    #pag_modal_compra .barra_footer{
        padding: 10px 15px;
        position: fixed;
        width: 100%;
        margin-left: 0;
        border-radius: 18px 18px 0 0;
    }
    #pag_modal_compra .passos_compra .conteudo .calendario{
        width: 100%;
    }
    #pag_modal_compra .passos_compra .conteudo h5.aviso{
        width: calc(100% - 20px);
    }
    .calendario_agendamento #calendario ul.titulos li{
        font-size: 14px;
    }
    #pag_modal_compra form{
        max-width: calc(100% - 30px);
    }
    #pag_modal_compra .passos_compra .conteudo{
        width: 100%;
        margin: 0;
        max-width: none;
    }
    #pag_modal_compra .passos_compra .top h3{
        font-size: 14px;
    }
    #pag_modal_compra .centro{
        max-height: calc(100vh - 200px);
    }
    #pag_modal_compra .passos_compra{
        max-height: calc(100% - 100px);
    }
    #pag_modal_compra .barra_footer .direita{
        display: block;
    }
    #pag_modal_compra .barra_footer button{
        width: 100%;
        text-align: center;
    }
    #pag_modal_compra .barra_footer .esquerda{
        top: 10px;
        position: relative;
    }
    #modal_cronograma .topo_modal{
        margin-top: 15px;
    }
    #modal_cronograma .modal_janela{
        max-width: calc(100% - 30px);
    }
    #modal_cronograma .texto_intro{
        font-size: 14px;
        line-height: 20px;
        padding-left: 15px;
        padding-right: 15px;
        margin-top: 5px;
    }
    #modal_cronograma .topo_modal .ovelha{
        display: none;
    }
    #modal_cronograma .topo_modal h2{
        font-size: 28px;
        line-height: 32px;
    }
    #modal_cronograma .titulo_atividades{
        font-size: 15px;
        letter-spacing: 1px;
    }
    #modal_cronograma .texto_final{
        font-size: 15px;
    }
    #modal_cronograma .lista_horarios{
        grid-template-columns: repeat(2, 1fr);
        column-gap: 5px;
    }
    #modal_cronograma .lista_horarios .moldura_horario{
        width: 100%;
        height: 45px;
    }
    #modal_cronograma .lista_horarios .moldura_horario span{
        font-size: 11px;
        letter-spacing: 0;
    }
    #modal_cronograma .lista_horarios{
        padding-left: 15px;
        padding-right: 15px;
    }
    #modal_cronograma .rodape_modal .valor{
        display: none;
    }
    #modal_cronograma .rodape_modal{
        bottom: -75px;
    }
    #modal_cronograma .bt_fechar {
        width: 40px;
        height: 40px;
        background: url('../imagens/modal_cronograma_bt_fechar.png') center no-repeat;
        background-size: contain;
        position: absolute;
        top: -60px;
        left: 50%;
        transform: translateX(-50%);
        cursor: pointer;
        text-indent: -20000px;
    }    
    #barra_infos .info{
        background: none;
    }
    #barra_infos .center .linha{
        display: none;
    }
    #atracao_topo{
        padding-top: 90px;
    }
    #atracao_topo .bt_voltar{
        left: 20px;
    }
    #atracao_topo .texto{
        width: auto;
    }
    #atracao_topo .center{
        width: 100%;
    }
    #atracao_topo .conteudo{
        padding: 0;
        width: calc(100% - 30px);
        margin: 0 auto;
    }
    #atracao_topo h2{
        font-size: 42px;
        line-height: 38px;
        margin-top: -30px;
    }
    #atracao_topo p{
        font-size: 16px;
        line-height: 26px;
        margin-top: -20px;
    }
    #atracao_topo ul.redes_sociais{
        display: none;
    }
    #atracao_topo .conteudo{
        display: block;
    }
    #atracao_topo .imagem_moldura{
        top: 0;
        width: 100%;
        height: auto;
    }
    #atracao_topo .imagem_moldura .moldura_verde{
        position: static;
        width: auto;
        height: auto;
        border-top-left-radius: 75px;
        border-top-right-radius: 303px;
        border-bottom-right-radius: 303px;        
        border-bottom-left-radius: 75px; 
    }
    #atracao_topo .imagem_moldura .moldura_verde img{
        width: 100%;
    }
    #atracao_topo ol{
        display: block;
    }
    #atracao_topo ol li{
        margin-bottom: 10px;
    }
    #atracao_body .center{
        width: calc(100% - 30px);
    }
    #atracao_body .frufru_esq, #atracao_body .frufru_dir{
        display: none;
    }
    #faq_topo{
        padding-top: 120px;
    }
    #faq_topo .center{
        width: calc(100% - 30px);
    }
    #faq_topo .center h2{
        font-size: 32px;
        line-height: 32px;
        top: -100px;
    }
    #faq_topo .center h2 .coruja{
        background: url(../imagens/faq_topo_coruja.png) left top no-repeat;
        background-size: 100% auto;
        display: block;
        width: 40px;
        height: 71px;
        position: absolute;
        top: 0px;
        left: 50%;
        margin-left: 120px;
    }
    #faq_topo .center ul.perguntas{
        padding: 20px;
    }
    #faq_topo .center ul.perguntas li h3{
        font-size: 15px;
    }
    #faq_topo .center ul.perguntas li.aberto p{
        font-size: 15px;
        line-height: 20px;
    }
    #faq_topo ul.redes_sociais{
        display: none;
    }
    section#dados.contato{
        padding-top: 0;
    }
    section#dados .center .esquerda h2{
        font-size: 42px;
    }
    section#dados.contato .center{
        max-width: calc(100% - 40px);
    }
    section#dados .center .esquerda{
        width: 100%;
        padding-bottom: 30px;
    }
    section#dados .center .esquerda .formulario input[type=text]{
      width: 100%;
    } 
    section#dados .center .esquerda .formulario input[type=text].p2{
      width: 100%;
    }
    section#dados .center .esquerda .formulario input[name=email]{
      margin-right: 6px;
    }
    section#dados .center .esquerda .formulario input[type=text].p3{
      width: 100%;
    }
    section#dados .center .esquerda .formulario input[type=text].p4{
      width: 100%;
      left: -2px;
    }
    section#dados .center .esquerda .formulario textarea {
        width: 100%; 
    }
    section#dados .center .direita{
        width: 100%;
        float: none;
        clear: both;
        margin-top: 0;
    }
    #pag_grupos #grupos_topo .center{
        display: block;
        max-width: calc(100% - 40px);
    }
    #pag_grupos #grupos_topo{
        padding-top: 110px;
    }
    #grupos_topo .esquerda h2{
        font-size: 48px;
    }
    #grupos_topo .esquerda ul li{
        font-size: 17px;
    }
    #grupos_topo .direita{
        margin-top: 45px;
        border-radius: 16px;
    }
    #grupos_topo form label.meio{
        width: 100%;
    }
    #grupos_topo form label.terco{
        width: 100%;
    }
    #grupos_topo form label.terco.terco_full{
        width: 100%;
    }
}





































