/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 01 2026 | 15:18:54 */
a:focus {
	outline: none!important;
}
a {
	text-decoration: none;
}
a:hover, a:focus {
	text-decoration: underline;
}

.page-id-461 footer #form, .page-id-255 footer #form {
	display: none;
}
 
.custom-icon-form img {
  	max-width: 40px !important;
}

/* Card */
.custom-card .wp-block-cover {
    position: relative;
    overflow: hidden;
}

/* Contenitore interno */
.custom-card .wp-block-cover__inner-container {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
}

/* Titolo e descrizione */
.custom-card .wp-block-cover__inner-container > p {
    position: relative;
    z-index: 2;
    transition: transform 0.35s ease;
}

/* Il pulsante non occupa spazio */
.custom-card .wp-block-cover .wp-block-buttons {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;

    margin: 0;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform: translateY(15px);

    transition:
        opacity 0.35s ease,
        transform 0.35s ease,
        visibility 0.35s ease;
}

/* Desktop */
@media (hover: hover) and (pointer: fine) {

    /* Il testo sale per creare lo spazio al pulsante */
    .custom-card .wp-block-cover:hover .wp-block-cover__inner-container > p {
        transform: translateY(-65px);
    }

    /* Comparsa del pulsante */
    .custom-card .wp-block-cover:hover .wp-block-buttons {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }
}

.calendar-icon {
  display: flex;
}
.align-center-calendar {
  max-width: max-content !important;
}

.wp-block-columns .column-arrow {
    position: relative;
}

.wp-block-columns .column-arrow + .column-arrow::before {
    content: "➜";
    position: absolute;
    left: -40px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
    color: #1f7a4d;
}

.page-id-2 header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	background: rgba(255, 255, 255, 0.89);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}
.page-id-2 body {
	padding-top: 80px;
}

.wp-block-navigation-item.current-menu-item.wp-block-navigation-link {
	color: #A4C738 !important;
	position: relative;
}

.wp-block-navigation-item.current-menu-item.wp-block-navigation-link::after {
	content: "";
	position: absolute;
	bottom: -6px;
	left: 50%;
	transform: translateX(-50%);
	width: 20px;
	height: 5px;
	background-color: #A4C738;
	border-radius: 2px;
}
.arrow-hero {
	background-color: #A4C738;
	padding: 10px;
	border-radius: 100%;
	transform: rotate(180deg);
	cursor: pointer;
}
.arrow-hero:hover {
	background-color: #A4C738;
}
.maps-link {
	cursor: pointer;
}
.hero-img {
	transition: min-height 0.4s ease;
}
.green-bottom strong {
	position: relative;
	display: inline-block;
	z-index: 1;
	color: #393939 !important;
}
.green-number {
	cursor: pointer;
}

.page-id-219, .page-id-242 {
	#form {
		display: none;
	}
}
.uagb-tabs-list.uagb-tabs__icon-position-left {
	text-decoration: none;
}
.uagb-tabs-list[aria-selected="true"] div {
	padding: 5px 20px;
}
.green-bottom strong::after {
	content: '';
	position: absolute;
	left: -20px;
	right: -20px;
	bottom: -4px;
	height: 50%;
	background-color: #A4C738;
	border-radius: 30px;
	z-index: -1;
}
.shadow-sm {
	box-shadow: 1px 1px 12px #00000017;
	margin: 10px !important;
}

.stazione-value {
	display: flex;
	align-items: center;
}
.stazione-value:has(a.stazione-posizione) {
	justify-content: center;
	a {
		width: 100%;
		text-align: center;
	}
}

.wpforms-container .wpforms-field {
	padding: 10px 0;
}

.wp-block-post-excerpt__more-link {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-weight: 700;
    text-decoration: none;
}

.wp-block-post-excerpt__more-link::after {
    content: "→";
    font-size: 1.1em;
    transition: transform .25s ease;
}

.wp-block-post-excerpt__more-link:hover::after {
    transform: translateX(4px);
}

.numero-verde {
	min-width: 350px;
}

@media (max-width: 768px) {
	
	.wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay) {
		padding-top: 35px !important;
	}
	
	.card-reassicurance {
		min-height: max-content !important;
	}
	
	.molinaro-map-block {
		border-radius: 20px;
		border: 0;
	}
	
	.grid-mobile {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 16px;
    }

    .grid-mobile > .wp-block-column {
        flex: 0 0 calc(50% - 8px) !important;
        max-width: calc(50% - 8px) !important;
        margin: 0 !important;
    }

    .grid-mobile .wp-block-group {
        height: 100%;
    }
	

    .grid-mobile.thirth > .wp-block-column:last-child {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
	
	.wp-block-image.size-full.small-mobile {
		  max-height: 150px;
		display:flex;
		justify-content: center;
		img {
			width: auto;
			max-height: 130px;
		}
	}
	
	.stazione-value {
		min-height: 25px;
	}
	
	.title-page {
		z-index: 99999;
		position: relative;
		text-shadow: 0 2px 4px rgba(220, 220, 220, 0.05);
		margin-bottom: -5px !important;
		font-size: 36px !important;
	}
	
	.mobile-banner {
        display: grid !important;
        grid-template-columns: 80px 1fr;
        gap: 20px;
        align-items: center;
    }

    .mobile-banner > .wp-block-column:nth-child(1) {
        grid-column: 1;
        grid-row: 1;
    }

    .mobile-banner > .wp-block-column:nth-child(2) {
        grid-column: 2;
        grid-row: 1;
    }

    .mobile-banner > .wp-block-column:nth-child(3) {
        grid-column: 1 / -1;
        grid-row: 2;
        margin-top: 10px;
    }

    .mobile-banner .wp-block-buttons {
        justify-content: center;
    }

    .mobile-banner img {
        max-width: 70px;
        height: auto;
    }
	
	.wp-block-columns .column-arrow + .column-arrow::before {
        display: none;
    }
	
	.servizi-swiper {
		height: 265px !important;
	}
	.row-reverse-mobile {
		flex-direction: row-reverse;
	}
	.signal-btn {
		font-size: 14px;
		width: max-content;
	}
}

@media (min-width: 769px) {
	.servizi-carousel-frontend .servizi-swiper {
		height: 300px;
	}
}
