.cards > ul {
    list-style: none;
	padding-left:0px; 
}

.card + .card {
    margin-top: 1.5rem;
}

.cards > ul li {
display: block;
overflow: hidden;
height: auto;
width: auto;
}

@supports (display: grid) {
    
	.cards > ul {
        display: grid;
		grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr));
        grid-column-gap: 0.7rem;
        grid-row-gap:0.7rem;
    }
	
    .cards_col_1 > ul {
        display: grid;
        grid-template-columns: 1fr;
        grid-column-gap: 0.7rem;
        grid-row-gap:0.7rem;
    }
    
	.cards_col_2 > ul {
        display: grid;
		grid-template-columns: repeat(auto-fill, minmax(30rem, 1fr));
        grid-column-gap: 0.7rem;
        grid-row-gap:0.7rem;
    }

	.cards_col_3 > ul {
        display: grid;
		grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr));
        grid-column-gap: 0.9rem;
        grid-row-gap:0.9rem;
    }
	
	.cards_col_4 > ul {
        display: grid;
		grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
        grid-column-gap: 0.7rem;
        grid-row-gap:0.7rem;
    }
	
    
    .cards_col_servizi > ul {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr));
        grid-column-gap: 4rem;
        grid-row-gap:0.9rem;
    }


    .card + .card {
        margin-top: 0;
    }

}

/*@media (max-width: 400px) {
        .cards > ul {
            grid-gap: 4.5rem;
        }
    }*/


.card {
    display: flex;
    flex-direction: column;
    position: relative;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.card .card_text {padding:0.5rem; box-sizing:border-box; flex: 1 0 auto; display: flex; flex-direction: column;}
.card .card_text h3 {padding-top:10px; margin: 0px !important; display: block; overflow: hidden; color:var(--gray); font-weight:500; font-size:1.2em; max-height:40px; min-height:40px;}
.card .card_text p {padding: 0px; display: block; overflow: hidden; font-weight:500; display: block;}
.card .card_text .data_news  {font-weight: 700; color: var(--blue); padding-top:10px; padding-bottom:10px; text-transform: uppercase;}
.card .card_text .desc_news {padding:0px; max-height:40px; min-height:40px; display: block;}


.card_data{font-style: italic; font-weight: bold; }
.card_column{float:left; width:80%; text-align: left;}
.card_column_img{float:left; width:20%; text-align: left;}


.doc_icona_normal {
  max-width: 100px !important;
  padding: 10px;
  float: left;
  border: 2px solid  var(--light_gray);
  margin-right: 10px;
  margin-bottom: 0px !important;
  margin-left: 0px !important; 
  border-radius: 5px;
}


.card_img {
    height:15rem;
    text-align: center;
}

.card_img img {
    width: auto;
    height: 100%;
    padding: 0.5rem;
    box-sizing: border-box; 
    object-fit: cover; 

}

.card_lista {
    height:15rem;
    text-align: center;
}

.card_lista img {
    width: auto;
    height: 100%;
    padding: 0.5rem;
    box-sizing: border-box; 
    object-fit: cover; 
}
.card a {
    outline: none;
}

.card h3 {
	padding-top:10px;
/*	order:3;*/
}

.card h3 a {
    text-decoration: none;
}

/*
.card h3 a::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}
*/

.card h3 a:focus {
    outline: none!important;
    text-decoration: none;
}

.card h3 a:hover {    
    text-decoration: underline;
}

.card:hover {
    /*box-shadow: 0 0 0 0.25rem;*/
}

.card_text {
/*    border:3px solid var(--white);	*/
}

.card_text:focus-within {
    border:3px solid var(--black);	
}

.card:focus-within h3 a:focus {
    text-decoration: none;
	box-sizing: border-box;		
}

.card_text a:focus {
  border-color: var(--focus) !important;
  box-shadow: 0 0 0 0px var(--focus) !important;
  outline: none !important;	
}


.card small {
    display: block;
}

.card small a {
    position: relative;
    padding: 0.5rem 0.5rem 0.5rem 0;
}

.card small a:hover,
.card small a:focus {
    font-weight: bold;
}

.card .card_text > * + * {
    margin-top: 0.75rem;
}

.card .card_text  {
    margin-top: 0px;
}

.card .data_news {
    margin-top:0px	;
}

/*CARD DA DEMO*/
.card_img_box {height:30rem;border: 0px; padding: 0px !important;}
.card:nth-child(odd) .card_img_box { order:-1;  /* sposta immagine in alto */}
.card_img_box img {width: 100%; height: 100%;box-sizing: border-box; object-fit: cover;}

.card_linkable {cursor:pointer;}


.card_servizi {padding:0px; text-align: center; display: grid; grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr));}
.card_servizi img{width: 100%; padding:0px; margin:0px; border:2px solid  var(--light_gray); display:block; height:20rem }
.card_servizi .card_text {padding-top: 5rem !important; }
.card_servizi .card_text h3 {text-transform: uppercase; font-weight:700; max-height:20px; min-height:20px; padding-top:10px; margin: 0px; ;}
.card_servizi .card_text p {padding-top:0px!important; font-size:1em !important;}
.card_servizi .card_text .desc_news {padding:0px; display: block; ba}

.card_img .tipo_news {color: var(--white); display: block; position: absolute; top:10px; right: 0px; background-color: var(--gray); border-radius: 5px 0px 0px 5px; padding: 5px 20px 5px 20px;}

.card_document{/*border: 2px solid var(--green);border-radius: 5px;*/padding: 0px; background-color: #fff; /* box-shadow: 0px 0px 2px 2px  var(--light_gray); */border: 2px solid  var(--light_gray); border-radius: 5px;  }
.card_document img{ border-right:2px solid  var(--light_gray) ;}
.card_lista .tipo_news_lista {color: var(--white); display: block; position: absolute; width: fit-content; top:10px; left: 0px; background-color: var(--green); border-radius: 0px 5px 5px 0px; padding: 5px 20px 5px 20px;}

.card_news{padding:0px; background-color: #fff; /*box-shadow: 0px 0px 2px 2px  var(--light_gray); */ border:2px solid  var(--light_gray); border-radius: 5px; box-sizing: border-box; overflow: hidden;}
.card_news h3{padding:0px !important; margin-top:10px !important;}
.card_news img{width: 100%; padding:0px; margin:0px; border-bottom: 1px solid  var(--light_gray); display:block; }
.card_news_img{height: 20rem; padding: 0px;}

.card_news .card_text {box-sizing: border-box; flex: 1 0 auto; display: grid; flex-direction: column;}
.card_news .card_text > * + * {margin-top: 0rem;}
.card_news .card_text h3{order:0!important}

.card_divided {width: 40%; float: left  !important; }
.card_divided h1 {text-align:left; }

.card_divided p {padding-top:20px!important;}
.card_img_divided {width:55%; float: right !important; background-image:url(/images/fondo_img.jpg); background-repeat:no-repeat; background-position:left bottom; }
.card_img_divided img {width:90%; float:right; padding-bottom: 50px; padding-left: 30px; box-sizing: border-box;}

.card_divided_bottom {width: 40%; float: right; }
.card_divided_bottom h2 {text-transform: uppercase; text-align: right; font-size:2em; margin-top:40px; margin-bottom:10px; font-weight: 700;}
.card_divided_bottom p {padding-top:20px!important;}
.card_img_divided_bottom {width:55%; float: left !important; background-image:url(/images/fondo_img_blu.jpg); background-repeat:no-repeat; background-position:right bottom; }
.card_img_divided_bottom img {width:90%; float:left; padding-bottom: 50px; padding-right: 30px; box-sizing: border-box;}


@media (max-width: 768px) {

    .cards_col_2 > ul{
        grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr));
    }

    .card_Rivista .card_img img{    
        position: absolute;
        top: 0px !important;
        height: 100% !important;
    }
    .card:nth-child(2n+1) .card_img_box{order: 0}
    
    .card .card_text{padding:0.5rem; margin-top: 0px;clear: both; width:100% }
    .card .card_text .desc_news {padding:0px; max-height:fit-content!important; min-height:fit-content!important; display: block; font-size: 1em;}
    .card_img_box {clear: both;}

    .card .card_text h3 {max-height: fit-content !important; font-size:1em; padding-top: 5px;}
    .card_servizi .card_text h3{font-size: 1.4em; text-align: center}
/*   .card{display: contents;}*/


    .card_black{clear: both; width: 100%}
    .card_img_black{clear: both; width: 100%}

    .card_divided {clear: both; display: block; width: 95% !important; margin: 0 auto; float: none !important;}
    .card_divided p {padding-top:10px!important; float: none !important;}
    .card_img_divided {clear: both; width: 95%;  margin: 0 auto; background-size: 30%; text-align:center !important; float: none !important;}
    .card_img_divided img{display: block; width: 100% !important; margin: 0 auto; padding: 0px; float: none !important;}

    .card_divided_bottom {clear: both; display: block; width: 95% !important; margin: 0 auto; float: none !important;}
    .card_divided_bottom h2 {text-align: center; font-size:1.4em; margin-top:10px; margin-bottom:5px; float: none !important;}
    .card_divided_bottom p {padding-top:10px!important; text-align: center !important; float: none !important;}
    .card_img_divided_bottom  {clear: both; width: 95%;  margin: 0 auto; background-size: 30%; text-align:center !important; float: none !important;}    
    .card_img_divided_bottom img{display: block; width: 100% !important; margin: 0 auto; padding: 0px; float: none !important;}

    .card_column{clear: both; width:100% !important;}
    .card_column_img{clear: both; width:100%;}

    .card{display: block; width:95% !important; margin: 0 auto;}
    .card_document img{width: 100%; border: none; border-bottom:2px solid  var(--light_gray) ;}
    .card_servizi .card_text p {font-size:1.1em !important;}

    .titolocolorato{font-size:2em !important;}

    .card_lista {height:12rem;}
    .card_img {height:15rem !important;}
    .card_img_box{height:12rem !important;}
}


