/* Stili globali - Pedrali Group */

/* Font predefinito Museo Sans (Adobe Fonts) */
body,
.wp-site-blocks,
.editor-styles-wrapper {
	font-family: "museo-sans", sans-serif;
}

/* h6 come paragrafo: stessi stili di p (font size XL, weight 300, line-height 1) e link come in p */
h6 {
	margin: 0;
	font-size: var(--wp--preset--font-size--xl, 18px);
	font-weight: 300;
	line-height: 1;
}

h6 a {
	color: #ffffff !important;
	text-decoration: none !important;
}

h6 a:hover {
	text-decoration: underline !important;
}

/* Classe posizionamento assoluto – pseudo-elementi ::before e ::after */

.pedrali-absolute-full::before,
.pedrali-absolute-full::after {
	pointer-events: none;
	position: fixed;
	content: '';
	display: block;
	height: 600px;
	width: 600px;
	border-radius: 600px;
	background: rgba(74, 90, 236, 0.16);
	filter: blur(139.89999389648438px);
	z-index: 2;
}

.pedrali-absolute-full::before {
	left: 0;
	top: 50%;
	transform: translate(-50%, -50%);
}

.pedrali-absolute-full::after {
	left: 100%;
	top: 50%;
	transform: translate(-50%, -50%);
}

/* Blocco Cover: contenuto sopra lo sfondo */
.wp-block-cover__inner-container {
	z-index: 3 !important;
}

/* Header: sticky in alto, sopra gli altri contenuti */
.header,
header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 10;
}

/* Menu fullscreen: nascosto sopra la viewport, si anima a top 0 al click su .openMenu */
.menuContainer {
	position: fixed;
	top: -100vh;
	left: 0;
	width: 100vw;
	height: 100vh;
	overflow: auto;
	transition: top 0.3s ease-out;
	z-index: 100;
}

.menuContainer.is-open {
	top: 0;
}

.openMenu,
.closeMenu {
	cursor: pointer;
}

/* In editor: menuContainer senza fixed/fullscreen (solo in front-end) */
.editor-styles-wrapper .menuContainer,
.editor-styles-wrapper .menuContainer.is-open {
	position: relative;
	top: auto;
	left: auto;
	width: auto;
	height: auto;
	transition: none;
	z-index: auto;
}

/* Blocco Colonne: altezza uguale per tutte le colonne */
.pedrali-columns-equal-height {
	align-items: stretch;
}

.pedrali-columns-equal-height .wp-block-column {
	height: 100%;
}

/* hAnim: bagliore come fonte luminosa riflessa sul tilt (oltre al tilt) */
.hAnim {
	position: relative;
	overflow: hidden;
}

.hAnim::after {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(
		circle at var(--hanim-reflect-x, 50%) var(--hanim-reflect-y, 50%),
		rgba(255, 255, 255, 0.06) 0%,
		rgba(255, 255, 255, 0.025) 35%,
		transparent 65%
	);
	opacity: 0;
	transition: opacity 0.25s ease-out;
	pointer-events: none;
}

.hAnim:hover::after {
	opacity: 1;
}

/* Sfondo globale default pagine */
body,
.wp-site-blocks {
	background: linear-gradient(195deg, #F6F7F9 1.89%, #FFF 86.38%);
	background-attachment: fixed;
	min-height: 100vh;
}

/* Sfondo nero e testo bianco solo per la home */
body.home,
body.home .wp-site-blocks {
	background: #000;
	background-attachment: fixed;
}

body.home,
body.home .wp-site-blocks,
body.home .wp-site-blocks * {
	color: #fff;
}

body.home .wp-site-blocks {
	opacity: 0.9;
}

/* Blocco Cover: sfondo fisso durante lo scroll */
.wp-block-cover.has-fixed-background {
	position: relative;
}

.wp-block-cover.has-fixed-background .wp-block-cover__background {
	background-attachment: fixed;
}

.wp-block-cover.has-fixed-background>.wp-block-cover__image-background,
.wp-block-cover.has-fixed-background>.wp-block-cover__video-background,
.wp-block-cover.has-fixed-background>video.wp-block-cover__video-background {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
}

.wp-block-cover.has-fixed-background .wp-block-cover__image-background {
	z-index: 0;
}

.wp-block-cover.has-fixed-background .wp-block-cover__inner-container {
	position: relative;
	z-index: 1;
}

/* Blocco Pulsante: stile default */
.wp-block-button .wp-block-button__link {
	position: relative;
	overflow: hidden;
	border-radius: 0;
	padding: 14px 24px;
	background-color: transparent;
}

/* Cerchio hover: parte dal cursore (opacità .5), si espande fino a coprire (opacità 1) */
.wp-block-button .wp-block-button__link::after {
	content: '';
	position: absolute;
	left: var(--btn-hover-x, 50%);
	top: var(--btn-hover-y, 50%);
	width: 300px;
	height: 300px;
	border-radius: 50%;
	background-color: #666666;
	opacity: 0;
	transform: translate(-50%, -50%) scale(0);
	transition: opacity 0.25s ease-out;
	z-index: 0;
	pointer-events: none;
}

/* Contenuto del pulsante sopra il ripple (::after a z-index: 0) */
.wp-block-button .wp-block-button__link > .pedrali-btn-inner {
	position: relative;
	z-index: 1;
}

.wp-block-button .wp-block-button__link:hover::after {
	animation: pedrali-btn-ripple 1s ease-out forwards;
}

@keyframes pedrali-btn-ripple {
	0% {
		opacity: 0.5;
		transform: translate(-50%, -50%) scale(0);
	}
	100% {
		opacity: 1;
		transform: translate(-50%, -50%) scale(4);
	}
}

body.home .wp-block-button .wp-block-button__link::after {
	background-color: #ffffff;
}

/* Blocco Pulsante: icona prima del testo */
.wp-block-button .wp-block-button__link::before {
	position: relative;
	z-index: 1;
	content: '';
	display: inline-block;
	width: 18px;
	height: 15px;
	margin-right: 0.5em;
	vertical-align: middle;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23666666'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23666666'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

/* Pulsante con testo S (non home): icona 10x10 */
.wp-block-button__link.has-small-font-size::before {
	width: 10px;
	height: 10px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M4.36542 0.353505L8.74392 4.732L4.36542 9.1106' stroke='%23666666'/%3E%3Cline x1='8.74396' y1='5.23206' x2='0' y2='5.23206' stroke='%23666666'/%3E%3C/svg%3E");
}

/* Blocco Pulsante sulla home: testo, bordo e icona in text-home con opacità 0.9 */
body.home .wp-block-button .wp-block-button__link {
	color: rgba(255, 255, 255, 0.9);
	border-color: rgba(255, 255, 255, 0.9);
}

body.home .wp-block-button .wp-block-button__link::before {
	opacity: 0.9;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23ffffff'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23ffffff'/%3E%3C/svg%3E");
}

/* Blocco Pulsante home con has-small-font-size: icona 10x10 */
body.home .wp-block-button__link.has-small-font-size::before {
	width: 10px;
	height: 10px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M4.36542 0.353505L8.74392 4.732L4.36542 9.1106' stroke='%23ffffff'/%3E%3Cline x1='8.74396' y1='5.23206' x2='0' y2='5.23206' stroke='%23ffffff'/%3E%3C/svg%3E");
}

/* Blocco Pulsante: hover (pagine non home) – stesso effetto del pallino che si ingrandisce dal cursore (colore gray-medium), testo e SVG bianchi */
.wp-block-button .wp-block-button__link:hover {
	color: #ffffff !important;
	border-color: #666666 !important;
}

.wp-block-button .wp-block-button__link:hover * {
	color: inherit !important;
}

.wp-block-button .wp-block-button__link:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23ffffff'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23ffffff'/%3E%3C/svg%3E");
}

.wp-block-button__link.has-small-font-size:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M4.36542 0.353505L8.74392 4.732L4.36542 9.1106' stroke='%23ffffff'/%3E%3Cline x1='8.74396' y1='5.23206' x2='0' y2='5.23206' stroke='%23ffffff'/%3E%3C/svg%3E");
}

/* Blocco Pulsante in home: hover – fondo dal cerchio (text-home), testo e SVG nero */
body.home .wp-block-button .wp-block-button__link:hover {
	color: #000000 !important;
	border-color: #ffffff !important;
}

body.home .wp-block-button .wp-block-button__link:hover * {
	color: inherit !important;
}

body.home .wp-block-button .wp-block-button__link:hover::before {
	opacity: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23000000'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23000000'/%3E%3C/svg%3E");
}

body.home .wp-block-button__link.has-small-font-size:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M4.36542 0.353505L8.74392 4.732L4.36542 9.1106' stroke='%23000000'/%3E%3Cline x1='8.74396' y1='5.23206' x2='0' y2='5.23206' stroke='%23000000'/%3E%3C/svg%3E");
}

/* Pulsante con contenuto in <strong> */
.wp-block-button .wp-block-button__link strong {
	font-weight: 600;
	letter-spacing: 1.2px;
}

/* Blocco Pulsante: larghezza 100% su mobile */
@media (max-width: 767px) {
	.wp-block-button,
	.wp-block-button .wp-block-button__link {
		width: 100%;
	}
}

/* Blocco Pulsante: disattiva effetto hover (controllo in editor) */
.wp-block-button.pedrali-no-hover .wp-block-button__link:hover::after {
	animation: none;
	opacity: 0;
}

.wp-block-button.pedrali-no-hover .wp-block-button__link:hover {
	color: inherit !important;
	border-color: inherit !important;
}

.wp-block-button.pedrali-no-hover .wp-block-button__link:hover * {
	color: inherit !important;
}

/* Default (non home): hover = come stato normale, icona grigia */
.wp-block-button.pedrali-no-hover .wp-block-button__link:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23666666'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23666666'/%3E%3C/svg%3E");
}

.wp-block-button.pedrali-no-hover .wp-block-button__link.has-small-font-size:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M4.36542 0.353505L8.74392 4.732L4.36542 9.1106' stroke='%23666666'/%3E%3Cline x1='8.74396' y1='5.23206' x2='0' y2='5.23206' stroke='%23666666'/%3E%3C/svg%3E");
}

body.home .wp-block-button.pedrali-no-hover .wp-block-button__link:hover {
	color: rgba(255, 255, 255, 0.9) !important;
	border-color: rgba(255, 255, 255, 0.9) !important;
}

body.home .wp-block-button.pedrali-no-hover .wp-block-button__link:hover::before {
	opacity: 0.9;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23ffffff'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23ffffff'/%3E%3C/svg%3E");
}

body.home .wp-block-button.pedrali-no-hover .wp-block-button__link.has-small-font-size:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3E%3Cpath d='M4.36542 0.353505L8.74392 4.732L4.36542 9.1106' stroke='%23ffffff'/%3E%3Cline x1='8.74396' y1='5.23206' x2='0' y2='5.23206' stroke='%23ffffff'/%3E%3C/svg%3E");
}

/* Classe pedrali-no-arrow: nasconde l'icona freccia sui pulsanti solo su mobile */
@media (max-width: 781px) {
	.wp-block-button.pedrali-no-arrow .wp-block-button__link::before {
		display: none !important;
		content: none !important;
		width: 0 !important;
		height: 0 !important;
		margin: 0 !important;
		background-image: none !important;
	}
}

/* Classe imgCard: proporzione 768/266, larghezza 100%, contenuto centrato */
.imgCard {
	aspect-ratio: 768/266;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Blocco Dettagli (Details): stile di default */
.wp-block-details {
	border: 1px solid var(--wp--preset--color--gray-light, #E3E7EE);
}

.wp-block-details > div {
	padding: 0 34px 19px 34px;
}

.wp-block-details summary {
	font-size: var(--wp--preset--font-size--xl, 18px);
	padding: 19px 34px;
	list-style: none;
	position: relative;
	padding-right: 60px;
}

.wp-block-details summary::-webkit-details-marker {
	display: none;
}

.wp-block-details summary:active,
.wp-block-details summary:focus {
	border: none;
	outline: none;
}

.wp-block-details summary::after {
	content: '';
	position: absolute;
	right: 34px;
	top: 50%;
	transform: translateY(-50%);
	width: 25px;
	height: 25px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='25' viewBox='0 0 25 25' fill='none'%3E%3Cpath d='M12.304 4.10156V20.5069' stroke='%23E3E7EE' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M4.10135 12.3042H20.5067' stroke='%23E3E7EE' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	pointer-events: none;
}

.wp-block-details[open] summary::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='25' viewBox='0 0 25 25' fill='none'%3E%3Cpath d='M4.10135 12.3042H20.5067' stroke='%23E3E7EE' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Link e focus per accessibilità */
a {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.1em;
}

:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

.h100 {
	height: 100%;
}

/* Sfondo sfocato (backdrop) */
.pedrali-backdrop-blur {
	backdrop-filter: blur(8.895000457763672px);
}

/* Classe utility: position sticky (es. colonna destra in blocco Colonne) */
.pedrali-sticky {
	position: sticky;
	top: 100px;
}

/* In un blocco Colonne, la colonna sticky deve allinearsi in alto per funzionare */
.wp-block-columns .wp-block-column.pedrali-sticky {
	align-self: flex-start;
}

/* Classe utility: nasconde l'elemento solo su mobile (visibile da tablet in su, 782px) */
.pedrali-hide-on-mobile {
	display: none !important;
}
@media (min-width: 782px) {
	.pedrali-hide-on-mobile {
		display: revert !important;
	}
}
.pedrali-hide-on-desktop {
	display: none !important;
}
@media (max-width: 781px) {
	.pedrali-hide-on-desktop {
		display: revert !important;
	}
}

.wp-block-post-featured-image, .imgShdw {
	box-shadow: 0 10px 32px 0 rgba(0, 0, 0, 0.12);
}

/* Blocco Nome CPT del post: bianco, bold, dimensione L */
.wp-block-pedrali-group-post-cpt-name {
	color: #ffffff;
	font-weight: 700;
	font-size: var(--wp--preset--font-size--large, 16px);
}

/* Blocco Breadcrumb: colore text-pages, dimensione M; freccia e "Home page" sono link */
.wp-block-pedrali-group-breadcrumb {
	color: var(--wp--preset--color--text-pages, #616161);
	font-size: var(--wp--preset--font-size--medium, 14px);
}

.wp-block-pedrali-group-breadcrumb .pedrali-breadcrumb-home {
	color: var(--wp--preset--color--text-pages, #616161);
	text-decoration: none;
}

.wp-block-pedrali-group-breadcrumb .pedrali-breadcrumb-home:hover {
	text-decoration: underline;
}

.wp-block-pedrali-group-breadcrumb .pedrali-breadcrumb-arrow {
	display: inline-block;
	vertical-align: middle;
	margin-right: 0.25em;
}

.wp-block-pedrali-group-breadcrumb .pedrali-breadcrumb-sep {
	opacity: 0.7;
}

/* Blocco Google Map: larghezza e altezza 100% */
.wp-block-pedrali-group-google-map {
	width: 100%;
	height: 100%;
	min-height: 300px;
}

/* Blocco Carosello immagini: 16/9, gap 20px, 5 visibili desktop, 2 mobile, scroll-linked */
.wp-block-pedrali-group-image-carousel.pedrali-image-carousel {
	width: 100%;
}

.pedrali-image-carousel__viewport {
	overflow: hidden;
	width: 100%;
}

.pedrali-image-carousel__track {
	display: flex;
	gap: 20px;
	will-change: transform;
}

.pedrali-image-carousel__item {
	flex: 0 0 calc((100vw - 80px) / 5);
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

.pedrali-image-carousel__item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

@media (max-width: 781px) {
	.pedrali-image-carousel__item {
		flex: 0 0 calc((100vw - 20px) / 2);
	}
}

/* In editor il carosello è solo placeholder */
.wp-block-pedrali-group-image-carousel.is-editor .pedrali-image-carousel__viewport {
	display: none;
}

.wp-block-post.current {
	display: none;
	background-color: var(--wp--preset--color--blue-light, #EDF4FF);
}

/* Link nel loop (Query / Post Template): colore text-pages e sottolineati */
.wp-block-query a {
	color: var(--wp--preset--color--text-pages, #616161);
	text-decoration: underline;
}
.wp-block-query a:hover {
	text-decoration: underline;
}

.wp-block-cover, .wp-block-cover-image{
	padding: 0px;
}


.mLi{
	margin-left: 0 !important;
}

/* Modale policy Iubenda (link nei Gravity Form) */
.pedrali-iubenda-modal {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 100000;
	align-items: center;
	justify-content: center;
	padding: 20px;
	box-sizing: border-box;
}

.pedrali-iubenda-modal--open {
	display: flex;
}

.pedrali-iubenda-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
	cursor: pointer;
}

.pedrali-iubenda-modal__box {
	position: relative;
	width: 100%;
	max-width: 900px;
	max-height: 90vh;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
	overflow: hidden;
	z-index: 1;
}

.pedrali-iubenda-modal__close {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 40px;
	height: 40px;
	padding: 0;
	border: none;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	z-index: 2;
	color: #333;
}

.pedrali-iubenda-modal__close:hover {
	background: #f5f5f5;
}

.pedrali-iubenda-modal__iframe {
	display: block;
	width: 100%;
	height: 80vh;
	min-height: 400px;
	border: none;
}

/* Gravity Forms: stile input e textarea */
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="search"],
.gform_wrapper select,
.gform_wrapper textarea {
	border: 1px solid var(--wp--preset--color--gray-light, #E3E7EE) !important;
	border-radius: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	padding: 14px 18px !important;
}

.gform_wrapper input[type="checkbox"],
.gform_wrapper input[type="radio"] {
	border: 1px solid var(--wp--preset--color--gray-light, #E3E7EE) !important;
	border-radius: 0 !important;
	outline: none !important;
	box-shadow: none !important;
}

.gform_wrapper input:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus {
	outline: none !important;
	box-shadow: none !important;
}

/* Gravity Forms: bordo rosso sui campi in errore */
.gform_wrapper .gfield_error input[type="text"],
.gform_wrapper .gfield_error input[type="email"],
.gform_wrapper .gfield_error input[type="url"],
.gform_wrapper .gfield_error input[type="tel"],
.gform_wrapper .gfield_error input[type="number"],
.gform_wrapper .gfield_error input[type="password"],
.gform_wrapper .gfield_error input[type="search"],
.gform_wrapper .gfield_error input[type="checkbox"],
.gform_wrapper .gfield_error input[type="radio"],
.gform_wrapper .gfield_error select,
.gform_wrapper .gfield_error textarea {
	border-color: #b32d2e !important;
}

/* Gravity Forms: nasconde legenda campi obbligatori; asterisco stesso colore del testo */
.gform_wrapper .gform_required_legend {
	display: none;
}

.gform_wrapper .gfield_required {
	color: inherit !important;
}

/* Gravity Forms: submit centrato orizzontalmente */
.gform_wrapper .gform_footer {
	text-align: center;
}

@media (max-width: 767px) {
	.gform_wrapper input[type="submit"],
	.gform_wrapper button[type="submit"],
	.gform_wrapper .pedrali-gf-submit-wrap {
		width: 100%;
	}
}

/* Gravity Forms: submit come blocco nativo Pulsante (freccia + ripple) */
.gform_wrapper input[type="submit"],
.gform_wrapper button[type="submit"] {
	display: inline-block;
	position: relative;
	overflow: hidden;
	border: 1px solid var(--wp--preset--color--gray-medium, #666666) !important;
	border-radius: 0 !important;
	padding: 14px 24px !important;
	background-color: transparent !important;
	font-size: var(--wp--preset--font-size--xl, 18px) !important;
	color: var(--wp--preset--color--text-pages, #616161) !important;
	outline: none !important;
	box-shadow: none !important;
	cursor: pointer;
}

.gform_wrapper button[type="submit"] > .pedrali-btn-inner {
	position: relative;
	z-index: 1;
}

/* Ripple (cerchio che si ingrandisce) sul submit GF */
.gform_wrapper input[type="submit"]::after,
.gform_wrapper button[type="submit"]::after {
	content: '';
	position: absolute;
	left: var(--btn-hover-x, 50%);
	top: var(--btn-hover-y, 50%);
	width: 300px;
	height: 300px;
	border-radius: 50%;
	background-color: #666666;
	opacity: 0;
	transform: translate(-50%, -50%) scale(0);
	transition: opacity 0.25s ease-out;
	z-index: 0;
	pointer-events: none;
}

.gform_wrapper input[type="submit"]:hover::after,
.gform_wrapper button[type="submit"]:hover::after {
	animation: pedrali-btn-ripple 1s ease-out forwards;
}

.gform_wrapper input[type="submit"]:hover,
.gform_wrapper button[type="submit"]:hover {
	background-color: transparent !important;
	color: #ffffff !important;
	border-color: var(--wp--preset--color--gray-medium, #666666) !important;
}

.gform_wrapper button[type="submit"]::before {
	position: relative;
	z-index: 1;
	content: '';
	display: inline-block;
	width: 18px;
	height: 15px;
	margin-right: 10px;
	vertical-align: middle;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23666666'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23666666'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.gform_wrapper button[type="submit"]:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23ffffff'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23ffffff'/%3E%3C/svg%3E");
}

/* Wrapper per input[type="submit"]: freccia + ripple (input non supporta ::before) */
.gform_wrapper .pedrali-gf-submit-wrap {
	display: inline-block;
	position: relative;
	overflow: hidden;
	border: 1px solid var(--wp--preset--color--gray-medium, #666666) !important;
	border-radius: 0 !important;
	padding: 14px 24px !important;
	padding-left: 52px !important; /* 24px (left) + 18px (freccia) + 10px (spazio) */
	background-color: transparent !important;
	outline: none !important;
	box-shadow: none !important;
	cursor: pointer;
}

.gform_wrapper .pedrali-gf-submit-wrap::before {
	content: '';
	position: absolute;
	left: 24px;
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
	height: 15px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23666666'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23666666'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 1;
	pointer-events: none;
}

.gform_wrapper .pedrali-gf-submit-wrap:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23ffffff'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23ffffff'/%3E%3C/svg%3E");
}

.gform_wrapper .pedrali-gf-submit-wrap::after {
	content: '';
	position: absolute;
	left: var(--btn-hover-x, 50%);
	top: var(--btn-hover-y, 50%);
	width: 300px;
	height: 300px;
	border-radius: 50%;
	background-color: #666666;
	opacity: 0;
	transform: translate(-50%, -50%) scale(0);
	transition: opacity 0.25s ease-out;
	z-index: 0;
	pointer-events: none;
}

.gform_wrapper .pedrali-gf-submit-wrap:hover::after {
	animation: pedrali-btn-ripple 1s ease-out forwards;
}

.gform_wrapper .pedrali-gf-submit-wrap input[type="submit"] {
	position: relative;
	z-index: 1;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	font-size: var(--wp--preset--font-size--xl, 18px) !important;
	color: var(--wp--preset--color--text-pages, #616161) !important;
	cursor: pointer;
	min-width: 0;
	min-height: 0 !important;
}

.gform_wrapper .pedrali-gf-submit-wrap input[type="submit"]::after {
	display: none !important;
}

.gform_wrapper .pedrali-gf-submit-wrap:hover input[type="submit"] {
	color: #ffffff !important;
}

body.home .gform_wrapper .pedrali-gf-submit-wrap {
	border-color: rgba(255, 255, 255, 0.9) !important;
}

body.home .gform_wrapper .pedrali-gf-submit-wrap::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23ffffff'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23ffffff'/%3E%3C/svg%3E");
}

body.home .gform_wrapper .pedrali-gf-submit-wrap:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23000000'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23000000'/%3E%3C/svg%3E");
}

body.home .gform_wrapper .pedrali-gf-submit-wrap::after {
	background-color: #ffffff;
}

body.home .gform_wrapper .pedrali-gf-submit-wrap input[type="submit"] {
	color: rgba(255, 255, 255, 0.9) !important;
}

body.home .gform_wrapper .pedrali-gf-submit-wrap:hover input[type="submit"] {
	color: #000000 !important;
}

/* Submit non wrappato (prima dell'inizializzazione JS) e button */
body.home .gform_wrapper input[type="submit"],
body.home .gform_wrapper button[type="submit"] {
	color: rgba(255, 255, 255, 0.9) !important;
	border-color: rgba(255, 255, 255, 0.9) !important;
}

body.home .gform_wrapper input[type="submit"]:hover,
body.home .gform_wrapper button[type="submit"]:hover {
	background-color: transparent !important;
	color: #000000 !important;
	border-color: #ffffff !important;
}

body.home .gform_wrapper button[type="submit"]::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23ffffff'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23ffffff'/%3E%3C/svg%3E");
}

body.home .gform_wrapper input[type="submit"]::after,
body.home .gform_wrapper button[type="submit"]::after {
	background-color: #ffffff;
}

body.home .gform_wrapper button[type="submit"]:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='15' viewBox='0 0 18 15' fill='none'%3E%3Cpath d='M9.74414 0.353638L16.5041 7.11364L9.74414 13.8738' stroke='%23000000'/%3E%3Cline x1='16' y1='7.35376' y2='7.35376' stroke='%23000000'/%3E%3C/svg%3E");
}


.opacity{ opacity: .3 !important; }

.menuEsteso{
	width: 100%;
	max-width: 1400px;
}