/*----classes helper-----*/
.no-padding {padding:0!important;}
.no-overflow{overflow:hidden!important;}
.display-table{display:table!important;}
.full-width{width:100%!important;}
.center{text-align:center!important;}
.cleaner,.cleared,.clr {clear: both;height: 1px;margin: 0px;padding: 0px;}
.left {float:left!important;}
.right {float:right!important;}
.bold {font-weight: 600!important;}
.hidden{display:none;}
.pointer{cursor:pointer;}
.inline{overflow: hidden;text-overflow: ellipsis;width: 100%;white-space: nowrap;}
.m-auto{margin:auto;}
/*------margin-----*/
.m-0{margin:0!important;}
.m-10{margin:10px!important;}
.m-15{margin:15px!important;}
.m-20{margin:20px!important;}
.m-30{margin:30px!important;}
.m-40{margin:40px!important;}
.m-50{margin:50px!important;}
/*----margin top----*/
.mt-0{margin-top:0!important;}
.mt-10{margin-top:10px!important;}
.mt-15{margin-top:15px!important;}
.mt-20{margin-top:20px!important;}
.mt-30{margin-top:30px!important;}
.mt-37{margin-top:37px!important;}
.mt-40{margin-top:40px!important;}
.mt-50{margin-top:50px!important;}
/*----margin bottom----*/
.mb-0{margin-bottom:0!important;}
.mb-10{margin-bottom:10px!important;}
.mb-15{margin-bottom:15px!important;}
.mb-20{margin-bottom:20px!important;}
.mb-30{margin-bottom:30px!important;}
.mb-40{margin-bottom:40px!important;}
.mb-50{margin-bottom:50px!important;}
/*----margin left----*/
.ml-0{margin-left:0!important;}
.ml-10{margin-left:10px!important;}
.ml-15{margin-left:15px!important;}
.ml-20{margin-left:20px!important;}
.ml-30{margin-left:30px!important;}
.ml-40{margin-left:40px!important;}
.ml-50{margin-left:50px!important;}
/*----margin right----*/
.mr-0{margin-right:0!important;}
.mr-15{margin-right:15px!important;}
.mr-20{margin-right:20px!important;}
.mr-30{margin-right:30px!important;}
.mr-40{margin-right:40px!important;}
.mr-50{margin-right:50px!important;}
/*----float----*/
.font16{font-size:16px;}
.float-left{float:left!important;}
.float-right{float:right!important;}
/*helpers and global */
.pointer{
    cursor:pointer;
}
#overlay {
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
    font-style: normal;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    z-index: 10000;
}
#overlay_content{
	position:absolute;
	min-width:100px;
	min-height:100px;
	margin:20px;
    background-color: #ffffff;
    /*-webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;*/
    box-shadow: 1px 2px 6px rgba(0,0,0, 0.5);
    -moz-box-shadow: 1px 2px 6px rgba(0,0,0, 0.5);
    -webkit-box-shadow: 1px 2px 6px rgba(0,0,0, 0.5);
    max-width:800px;
    max-height:calc(100% - 40px);
    overflow-y:auto;
}
#overlay_content div{
    margin:0px;
}
#overlay_content a.close_popup{
    position: absolute;
    top: 0;
    right: 0;
    font-size: 22px;
    color: #000000;
}
#overlay_content div article{
    padding:10px;
}
#overlay_content div img{
    width:100%;
}
#overlay_content div article p{
    margin-bottom:10px;
}
/*sections hp*/
section .section_header{
    text-align: center;padding: 45px 0 15px 0;
}
section .section_header .section_title{
    font-size: 27px;color: #48bcbd;margin-right: 15px;
}
section .section_header .section_title a{
    text-decoration:overline;
}
section .section_header span a{
    font-size: 13px;color: #404040;text-decoration: none;
}
/*section comum*/
section .hprow, section .destaquesrow, section .loadmore, section .row2{
    max-width:1024px;margin:auto;
}
#agendahp{
    background-color:#000;border-top:1px solid #fff;padding: 10px;
}
#agendahp .hprow{
    padding:35px 0 35px 0;color:#ffffff;font-size:24px;line-height: 0.9em;
}
#destaques{
    padding-bottom:30px;
}
#destaques .boxtitle{
    margin:15px 15px 0 15px;
    height:155px;
    background-color:#eeeeee;
    background-position: center;
    background-size: cover;
}
#destaques .boxtext{
    margin:15px 15px 0 15px;
    height:75px;
    font-size:15px;
}
#destaques .boxlongt{
    display:none;
}
#actividades{
    margin-bottom:50px;
}
#actividades .actbox{
    background-position:center;
    background-size:cover;
    background-color: #41b5b5;
    background-blend-mode: overlay;
    height:225px;
    width:100%;
    cursor:pointer;
} 
#actividades .actbox .actboxtext{
    display: table;
    font-size:24px;
    font-weight:600;
    color:#fff;
    margin:20px;
    height: calc(100% - 40px);
    width: calc(100% - 40px);
    text-align:center;
    border:1px solid #fff;
}
#actividades .actbox .actboxtext span{
    display: table-cell;
    vertical-align: middle;
    text-transform: uppercase;
    text-shadow: 2px 2px 5px #000;
}
#actividades .actbox:hover{
    background-blend-mode: normal;
}
#msaude{
    background-color:#EEEEEE;
    padding-bottom:30px;
    padding: 10px;
}
#msaude .hprow h2{
    font-size:20px;
    color:#000000;
    margin-bottom:20px;
}
#msaude .hprow .box1{
    background-color:#ffffff;
    padding:20px;
    border:1px solid #e0e0e0;
}
#msaude .hprow .box2 table{
    width:100%;background-color:#ffffff;border:1px solid #e0e0e0;border-spacing: 0;
}
#msaude .hprow .box2 table thead tr td{
    color:#48bcbd;
    font-weight: 800;
}
#msaude .hprow .box2 table tr td{
    padding:8px;
    border-bottom:1px solid #e0e0e0;
}
#msaude .boxtitle{
    max-width:311px;font-weight:800;margin-bottom:10px;
}
#msaude .boxtext{
   max-width:311px;
}
#menufooter{
    background-color:#fbfbfb;
    padding:30px;
    margin-top:40px;
}
#menufooter a,
#menufooter a:visited,
#menufooter a:hover,
#menufooter a:active{
    text-decoration: none;
    color: #404040;
}
#horarios .box_horario{
    background: #f3f2f2;
    padding:10px;
    margin: 5px 0;
}
.loadmore{
    text-align: center;
}
/*grids*/
.grid{
    display: grid;
}
.hprow1 {
    grid-template-columns: 0.5fr 1.0fr 1fr 1fr 0.2fr;
    grid-gap: 20px;
}
.contactosrow {
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    grid-gap: 20px;
}
.row2 {
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px;
}
.hprow2 {
    grid-template-columns: 0.5fr 1.0fr 1fr 1fr 0.2fr;
    grid-gap: 20px;
}
.hprow3 {
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));;
    grid-gap: 45px;     
}
.hprow4 {
    grid-template-columns: repeat(auto-fill, minmax(236px, 1fr));;
    grid-gap: 10px;     
}
.hprow7 {
    grid-template-columns: repeat(auto-fill, minmax(128.5px, 1fr));;
    grid-gap: 10px;     
}
.destaquesrow {
    grid-template-columns: repeat(auto-fill, minmax(311px, 1fr));;
    grid-gap: 0px;     
}
.poprow {
    grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));;
    grid-gap: 0px;     
}
/*botoes*/
.btn-1{
    font-size: 14px;
    border: 1px solid #ffffff;
    padding: 10px 15px;
    display: table;
    text-align: center;
    color: #ffffff;
    text-decoration: none;
    background-color: #48BCBD;
}
/*form elements*/
.select-hp1 {
	position: relative;	
}

.select-hp1:after {
	font-family: 'Font Awesome\ 5 Free';
  	content: '\f107';
  	font-size: 28px;
  	position: absolute;
  	top: 12px;
  	right: 20px;
  	color: #434B67;
  	pointer-events: none;
    font-weight:900;
}
.select-hp1 select {
	background: #FFF;
	border: 0;
	width: 100%;
	padding: 12px;
	font-size: 17px;
	color: #000;

	/* Here's the code we need */
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	 -o-appearance: none;
		appearance: none;
}

@media (min-width: 1024px) {
    .nold{
        display:none;
    }
}
@media (max-width: 1024px) {
    .section1 .hprow{
        padding:15px 5px;
    }
    .nomd{
        display:none;
    }
}
@media (max-width: 800px) {
    .hprow1 {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));;
        grid-gap: 15px;   
    }
    .btn-1{
        width:calc(100% - 30px);
    }   
}
@media (max-width: 720px) {
    .section1 .hprow{
        padding:15px 5px;
    }
    .nosd{
        display:none;
    }
    .sd{
        display:block;
    }
    .hprow1 {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));;
        grid-gap: 15px;   
    }
    .btn-1{
        width:calc(100% - 30px);
    }
    #horarios .hprow{
        padding:0 10px;
    }
    
}
/**overrides**/
.responsive .art-header{
    min-height: 70px !important;
}
.responsive nav.art-nav, .responsive .art-nav-inner{
    margin-top:-15px;
}
#imc_form select{
    padding:6px;
    width:100%!important;
    margin-bottom:5px;
}
#imc_form button,#imc_result button{
    background-color: #efefef;
    padding: 6px;
    border: 1px solid #cccccc;
    width: 100%;
    font-family: Montserrat, sans-serif;
    margin-bottom:5px;
}
#imc_form button.active{
    background-color: #48bcbd;
    color: #fff;
}
#imc_result_txt{
    font-size:48px;
}
.loading{
    background-image:url(../images/loading.gif);
    background-position:center;
    background-repeat:no-repeat;
}