.icon {
height: 2rem;
width: 2rem;
border-radius: 0;
display: inline-block;
background-position: center;
background-size: contain;
background-repeat: no-repeat;
}


.icon--igiene-ambientale{
	background-image:url('/themes/mapo/images/igiene-ambientale.svg');
}

.icon--produzione-di-energia{
	background-image:url('/themes/mapo/images/produzione-di-energia.svg');
}

.icon--servizi-urbani-collettivi{
	background-image:url('/themes/mapo/images/servizi-urbani-collettivi.svg');
}

.icon--servizio-idrico-integrato{
	background-image:url('/themes/mapo/images/servizio-idrico.svg');
}

.icon--info{
	background-image:url('/themes/mapo/images/icons/ico-info.svg');
}

.icon--servizi-utenza{
	background-image:url('/themes/mapo/images/icons/ico-utenza.svg');
}

.icon--servizo-igiene-urbana{
	background-image:url('/themes/mapo/images/icons/ico-scopa.svg');
}

.icon--prenotazione-asporto-rifiuti-ingombranti{
	background-image:url('/themes/mapo/images/icons/ico-divano.svg');
}

.icon--rifiuti-speciali{
	background-image:url('/themes/mapo/images/icons/ico-amianto.svg');
}

.icon--guasti-rete-idrica-e-fognaria{
	background-image:url('/themes/mapo/images/icons/ico-tubo.svg');
}

.icon--autolettura-contatore-idrico{
	background-image:url('/themes/mapo/images/icons/ico-goccia.svg');
}

.icon--contatore{
	background-image:url('/themes/mapo/images/icons/ico-contatore.svg');
}

.icon--guasti-illuminazione-pubblica{
	background-image:url('/themes/mapo/images/icons/ico-lampadina.svg');
}

.icon--manutenzione-urbana{
	background-image:url('/themes/mapo/images/icons/ico-urbana.svg');
}

.icon--vetro{
	background-image:url('/themes/mapo/images/icons/ico-vetro.svg');
}

.icon--carta{
	background-image:url('/themes/mapo/images/icons/ico-carta.svg');
}
.icon--lattina{
	background-image:url('/themes/mapo/images/icons/ico-lattina.svg');
}

.icon--spazzatura{
	background-image:url('/themes/mapo/images/icons/ico-spazzatura.svg');
}
.icon--biomasse{
	background-image:url('/themes/mapo/images/icons/ico-biomasse.svg');
}

.icon--compost{
	background-image:url('/themes/mapo/images/icons/ico-compost.svg');
}

.icon--detersivo{
	background-image:url('/themes/mapo/images/icons/ico-detersivo.svg');
}

.icon--cestino{
	background-image:url('/themes/mapo/images/icons/ico-cestino.svg');
}

.icon--portafoglio{
	background-image:url('/themes/mapo/images/icons/ico-portafoglio.svg');
}

.icon--ecocentri{
	background-image:url('/themes/mapo/images/icons/ico-ecocentri.svg');
}

.icon--surface{
	background-image:url('/themes/mapo/images/icons/ico-surface.svg');
}

.icon--abitanti{
	background-image:url('/themes/mapo/images/icons/ico-abitanti.svg');
}

.icon--pin{
	background-image:url('/themes/mapo/images/icons/ico-pin.svg');
}

.icon--login{
	background-image:url('/themes/mapo/images/icons/ico-login.svg');
}

.icon--book{
	background-image:url('/themes/mapo/images/icons/ico-book.svg');
}
.icon--book-closed{
	background-image:url('/themes/mapo/images/icons/ico-book-closed.svg');
}
.icon--pen{
	background-image:url('/themes/mapo/images/icons/ico-pen.svg');
}
.icon--registration{
	background-image:url('/themes/mapo/images/icons/ico-registration.svg');
}

.icon--legge{
	background-image:url('/themes/mapo/images/icons/ico-legge.svg');
}

.icon--modulo{
	background-image:url('/themes/mapo/images/icons/ico-modulo.svg');
}

.icon--megaphone{
	background-image:url('/themes/mapo/images/icons/ico-megaphone.svg');
}

.icon--pergamena{
	background-image:url('/themes/mapo/images/icons/ico-pergamena.svg');
}


.icon--plastic{
	background-image:url('/themes/mapo/images/icons/ico-plastic.svg');
}

.icon--coccarda{
	background-image:url('/themes/mapo/images/icons/ico-coccarda.svg');
}

.icon--world{
	background-image:url('/themes/mapo/images/icons/ico-world.svg');
}

.icon--gender{
	background-image:url('/themes/mapo/images/icons/ico-gender.svg');
}

.icon--sign{
	background-image:url('data:image/svg+xml,<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_15188_78)"><path d="M28.1098 7.96433C30.6443 8.55413 31.7184 11.961 31.9867 12.9809C32.031 13.1479 31.9626 13.3248 31.8158 13.4184C29.1926 15.0863 28.8126 16.7089 28.4672 17.9604C28.2795 18.642 27.3511 21.9472 27.3402 21.9819C27.1454 22.5425 26.9027 23.2073 26.599 23.6616C25.2994 25.6104 23.2398 26.6242 23.1537 26.6723C22.6932 26.9238 22.1174 26.7549 21.8656 26.2944C21.6142 25.8351 21.7827 25.26 22.2406 25.0083C22.2495 25.0032 22.6863 24.7603 23.2494 24.3237C23.8125 23.8871 24.5541 23.3328 25.0717 22.5571C25.1855 22.3863 25.2893 22.1926 25.3842 21.9839C24.8249 22.6912 24.1169 23.3009 23.4096 23.7514C21.4355 25.0089 19.1736 25.2654 19.0697 25.2749C18.5471 25.3192 18.0877 24.932 18.0434 24.4106C18.0041 23.9539 18.2593 23.7082 18.7426 23.5083C18.8691 23.4564 19.0013 23.4185 19.1342 23.3882C19.319 23.3464 19.647 23.2691 20.0834 23.1616C20.7236 23.0021 21.4749 22.6943 22.2162 22.2553C22.191 22.2642 22.167 22.2705 22.143 22.2768C19.5299 22.9627 17.419 22.0958 17.3305 22.0591C16.8486 21.8552 16.621 21.3002 16.8246 20.8169C17.0271 20.3347 17.5459 20.1775 18.0268 20.3774C18.0621 20.3907 19.3592 21.0997 21.2387 20.5356C20.8287 20.5344 20.4399 20.5037 20.0932 20.4341C17.1258 19.8368 16.726 17.3666 16.726 16.9692C16.7262 16.4469 17.1497 16.0221 17.6732 16.0219C18.1604 16.0219 18.5299 16.3965 18.6146 16.8647C18.9296 18.5927 20.9216 18.7259 21.31 18.726C21.6225 18.726 21.9233 18.6765 22.2055 18.5854C23.377 18.2082 24.226 17.1082 24.226 15.81C24.2259 15.3736 24.1295 14.9583 23.9574 14.5864C23.4107 13.4086 22.0964 12.7979 20.8236 13.0571C19.8443 13.257 18.753 13.5971 18.5238 14.8774C18.4922 15.0546 18.486 15.81 17.5775 15.81C17.0537 15.81 16.6293 15.3864 16.6293 14.8637C16.6293 14.8033 16.6405 14.7303 16.6469 14.686C17.0884 12.009 19.5464 11.0996 19.5502 11.0991C21.0763 10.5183 22.3611 10.5412 24.6312 10.4184C25.9003 10.3499 27.4069 9.35655 27.7992 8.14695C27.8435 8.01028 27.982 7.93396 28.1098 7.96433ZM8.85488 4.68991C9.31549 4.43809 9.89115 4.60625 10.143 5.06687C10.3948 5.52618 10.2269 6.1021 9.76894 6.35398C9.76008 6.35904 9.32327 6.60196 8.76015 7.03855C8.19704 7.47513 7.45543 8.02944 6.93789 8.80515C6.82403 8.97595 6.72027 9.16964 6.62539 9.37839C7.18459 8.67115 7.8918 8.06129 8.59902 7.61081C10.5756 6.35168 12.8411 6.09526 12.9398 6.0864C13.4623 6.04219 13.9217 6.42951 13.9662 6.95066C14.0054 7.40749 13.7494 7.65306 13.266 7.853C13.1396 7.90483 13.0081 7.94276 12.8754 7.97312C12.6907 8.01487 12.3627 8.09213 11.9262 8.19968C11.2859 8.35913 10.5339 8.66681 9.79238 9.10593C9.81757 9.09711 9.8417 9.09074 9.86562 9.08445C12.4759 8.39929 14.5854 9.2638 14.6781 9.30222C15.1602 9.50596 15.3887 10.062 15.185 10.5454C14.9825 11.0273 14.4635 11.1836 13.9828 10.9839C13.9486 10.9712 12.6512 10.2613 10.7709 10.8257C11.1809 10.8269 11.5697 10.8576 11.9164 10.9272C14.8835 11.5247 15.2836 13.9947 15.2836 14.3921C15.2835 14.9146 14.8592 15.3393 14.3353 15.3393C13.8482 15.3392 13.4787 14.9647 13.3939 14.4966C13.0786 12.7683 11.0858 12.6352 10.6986 12.6352C10.3861 12.6352 10.0862 12.6848 9.8041 12.7759C8.63232 13.153 7.78359 14.2529 7.78359 15.5512C7.78361 15.9878 7.8791 16.4029 8.05117 16.7749C8.59783 17.953 9.91293 18.5646 11.1859 18.3051C12.1653 18.1052 13.2557 17.7644 13.4848 16.4839C13.5164 16.3067 13.5235 15.5512 14.432 15.5512C14.9557 15.5514 15.3792 15.9751 15.3793 16.4975C15.3793 16.5583 15.368 16.632 15.3617 16.6762H15.3607C14.9191 19.3539 12.46 20.2622 12.4574 20.2622C10.9315 20.843 9.64721 20.8201 7.37734 20.9428C6.10826 21.0112 4.60088 22.0047 4.2084 23.2143C4.16411 23.351 4.02566 23.4273 3.89785 23.3969C1.33063 22.8006 0.26138 19.3093 0.0121067 18.3413C-0.0257409 18.1959 0.0351151 18.0431 0.161521 17.9634C2.81385 16.2891 3.19468 14.6575 3.5414 13.4009C3.73009 12.7158 4.6668 9.38443 4.66933 9.37937C4.86415 8.81893 5.10697 8.1549 5.41054 7.70066C6.70926 5.75316 8.76623 4.73927 8.85488 4.68991Z" fill="%2323293B"/></g><defs><clipPath id="clip0_15188_78"><rect width="32" height="32" fill="white"/></clipPath></defs></svg>');
}

.icon--veritas{
	background: url('/themes/mapo/images/icons/ico-veritas.svg')  no-repeat;
background-size: contain;
background-position: center;
}

.background-profilo{
	background-image:url('/themes/mapo/images/profilo.svg');
	background-position: bottom right;
	background-repeat:no-repeat;
}


.basic-card-row{
	--bs-gutter-y: 1.5rem;
}

/* BASIC CARD WHITE */

.basic-card-white{
	aspect-ratio: 1;
align-items: center;
justify-content: center;
text-align:center;
color: var(--colors-primary-mid-blue);
position:relative;
	font-size:16px;
	background-color:transparent;
	padding:5px;
}

.bk-primary-mid-blue .basic-card-white{
	color:white;
}

.basic-card-white{
	border:solid 1px var(--colors-neutral-mid-light);
}

.bk-primary-mid-blue .basic-card-white{
	border:solid 1px white;
}

.card.basic-card-white:hover {
	border:solid 1px var(--colors-neutral-medium);
}

.bk-primary-mid-blue .card.basic-card-white:hover {
	border:solid 1px white;
}


.basic-card-white a {
	color: var(--colors-primary-mid-blue);
	text-decoration:none;
}
.bk-primary-mid-blue .basic-card-white a {
	color: white;
	text-decoration:none;
}

.basic-card-white a:before{
	content:"";
	position:absolute;
	top:0px;
	bottom:0px;
	left:0px;
	right:0px;
}

.basic-card-white:has(.basic-card__header) {
display: flex;
flex-direction: column;
align-items: start;
justify-content: space-between;
gap: .5rem;
}


.has-hover-gray-200 {
    transition:background-color .3s linear
}

.has-hover-gray-200:hover {
    background-color:#e5e5e5 !important
}

.has-hover-text-light-blue {
    transition:color .3s linear
}

.has-hover-text-light-blue:hover {
    color:#98b2bd !important
}

.has-hover-text-blue {
    transition:color .3s linear
}

.has-hover-text-blue:hover {
    color:#527483 !important
}


/* BASIC CARD */

.basic-card:has(.basic-card__header) {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: space-between;
    gap:.5rem
}

.basic-card__header + .basic-card__content {
    padding-top: 0;
    height:auto
}

.card--bg-blur {
    background: #ffffffbf;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    color:#23293b !important
}

.card--outline-gray {
    border: 1px solid #CCCCCC;
    color: #23293b !important;
    padding:1.25rem
}

.basic-card.no-border{border:none}

@media (min-width: 768px) {
    .card--outline-gray {
        padding:0
    }
}

.card--outline-white {
    border:1px solid #fff
}

.card--outline-white .basic-card__content {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap:.5rem
}

.col:has(.card--has-min-width) {
    min-width: 231px;
    flex-shrink:0
}

.basic-card {
    position: relative;
    border-radius: .5rem;
    overflow: hidden;
    color:#fff
}

.basic-card__bg-image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index:-1
}

.basic-card__bg-image:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background:linear-gradient(180deg, #0000, #00000080)
}

.basic-card__bg-image img {
    height: 100%;
    width: 100%;
    border-radius: 0;
    object-fit: cover;
    object-position:center
}

.basic-card__mask-image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index:0
}

.basic-card__mask-image img {
    height: 100%;
    width: 100%;
    border-radius: 0;
    object-fit: cover;
    object-position:center
}

.basic-card__header {
    width: 100%;
    padding:.75rem .75rem 0
}

@media (max-width: 1199px) {}
    .basic-card__header {
        padding:2rem 2rem 0
    }


@media (min-width:1200px){
.squared-card{aspect-ratio:1}

}
.-squared-card .basic-card__header{ padding:2rem;}

.basic-card__content {
    position: relative;
    z-index: 0;
    height: 100%;
    display: flex;
    align-items: end;
    padding:.75rem
}

.basic-card__content h5{
	font-size: clamp(18px,1.5vw,21px);
}



@media (min-width: 768px) {
    .basic-card__content {
        padding:2rem
    }
}

.squared-card .basic-card__content{ padding:2rem;}

.bg-mask-image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index:0
}

.bg-mask-image img {
    height: 100%;
    width: 100%;
    border-radius: 0;
    object-fit: cover;
    object-position:top center
}

.card-news {
    position:relative
}

.card-news__image {
    border-radius: .25rem;
    overflow: hidden;
    width: 100%;
    aspect-ratio:2.5
}

.card-news__image img {
    height: 100%;
    width: 100%;
    border-radius: 0;
    object-fit: cover;
    object-position:center
}

.card-news__description {
    color:#555
}

@media (min-width: 768px) {
    .card-news__image {
        aspect-ratio:3
    }
}

.bg-gray-100 {
background-color: #f3f3f3!important;
}

.has-hover-gray-200 {
    transition:background-color .3s linear
}

.has-hover-gray-200:hover {
    background-color:#e5e5e5 !important
}




/* STANDARD CARD */

.standard-card {
position: relative;
border-radius: .5rem;
overflow: hidden;
color: #fff;
display:flex;
flex-direction:column;
}

.aspect-ratio-1 {
width: 100%;
aspect-ratio: 1.1;
}


.standard-card__bg-image {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: -1;
}

.standard-card__mask-image {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 0;
}

.standard-card__mask-image.veletta{
background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.50) 100%);
}
.standard-card__mask-image.veletta img,
.standard-card__bg-image img { width:100%;height:100%}

.standard-card__content {
_position: absolute;
z-index: 1;
height: 100%;
display: flex;
align-items: end;
padding: .75rem;
top:0px;
width:100%;
}

@media (min-width: 768px){
.standard-card__content {
padding: 2rem;
}
}

.stretched-link::after {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
content: "";
}


/* STICKY SECTION ARROW */
/*.sticky-section__arrow {
    height: 2rem;
    width: 2rem;
    border-radius: 50%;
    position: relative;
    transition: background-color .4s linear;
    overflow: hidden;
    flex-shrink:0
}

.sticky-section__arrow:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: url(/themes/mapo/images/arrow-right-16.svg);
    background-size: contain;
    transition:transform .3s ease-out
}

.sticky-section__arrow:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-100%, -50%);
    height: 1.25rem;
    width: 1.25rem;
    border-radius: 0;
    background-image: url(/themes/mapo/images/arrow-right-16w.svg);
    background-size: contain;
    transition:transform .3s ease-out .1s
}*/