/* AIPIA Custom CSS — POTATURA PASS 3 (GN57, 23/08/2026).
 * Cadute le sole regole scope-ate a pagine ORMAI A CODICE (GIRO ROTTA,
 * legali, trasparenza, statiche...) coi selettori morti su ogni
 * superficie e stato: i widget Elementor di quei layout non esistono
 * piu'. Misura: querySelector su 22 URL x 2 viewport, pseudo
 * normalizzate. ESCLUSIONI/honeypot/596 CONSERVATI. Originale
 * byte-exact: repo docs/allegati/wp-custom-css-backup-2026-08-23.css
 * (sha e87482e0f164...) + option aipia_csspota3_backup + revision. */

/*
=============================================
   AIPIA — Customizer Additional CSS FINALE v6
   Versione: 11/05/2026
   
   v6 NOVITA' rispetto a v5:
   - Aggiunto :not(:has(> img)) a tutte le regole default
   - Esclude automaticamente TUTTI i link contenenti immagine
     (logo header, logo footer, immagini cliccabili)
   - Senza bisogno di esclusioni separate per specificita
   
   STRUTTURA:
   1. PMPro Payment Buttons
   2. Verifica Socio
   3. Member Mobile / Banner Luglio / Corso Section Top
   4. Fix Contrasto Pattern Globali
   5. Fix Link Contrasto Universale
=============================================
*/
/* ============================================
   1. AIPIA PMPro — Pulsanti Metodo Pagamento & Submit
   ============================================ */
#aipia-payment-toggle label {
	background-color: #ffffff !important;
	color: #1a1a1a !important;
	border: 2px solid #0d6b7a !important;
	border-radius: 8px !important;
	padding: 14px 28px !important;
	font-weight: 600 !important;
	font-size: 15px !important;
	cursor: pointer !important;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
	text-shadow: none !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	line-height: 1.4 !important;
	box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
}

#aipia-payment-toggle label:hover {
	background-color: #e6f4f7 !important;
	border-color: #095563 !important;
	color: #1a1a1a !important;
	box-shadow: 0 2px 6px rgba(13,107,122,0.15) !important;
}

#aipia-payment-toggle label:has(input[type="radio"]:checked) {
	background-color: #0d6b7a !important;
	color: #ffffff !important;
	border-color: #0d6b7a !important;
	box-shadow: 0 2px 8px rgba(13,107,122,0.3) !important;
}

#aipia-payment-toggle label:has(input[type="radio"]:checked):hover {
	background-color: #095563 !important;
	color: #ffffff !important;
	border-color: #095563 !important;
}

#aipia-payment-toggle label input[type="radio"] {
	accent-color: #0d6b7a !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	margin: 0 !important;
	cursor: pointer !important;
	flex-shrink: 0 !important;
}

#aipia-payment-toggle label:has(input[type="radio"]:checked) input[type="radio"] {
	accent-color: #ffffff !important;
}

#pmpro_form input#pmpro_btn-submit,
#pmpro_form input.pmpro_btn-submit-checkout,
#pmpro_form .pmpro_btn-submit-checkout,
form.pmpro_form input[type="submit"]#pmpro_btn-submit {
	background-color: #0d6b7a !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 8px !important;
	padding: 16px 44px !important;
	font-weight: 600 !important;
	font-size: 17px !important;
	cursor: pointer !important;
	transition: background-color 0.2s ease, box-shadow 0.2s ease !important;
	text-shadow: none !important;
	letter-spacing: 0.3px !important;
	box-shadow: 0 2px 8px rgba(13,107,122,0.25) !important;
	line-height: 1.4 !important;
}

#pmpro_form input#pmpro_btn-submit:hover,
#pmpro_form input.pmpro_btn-submit-checkout:hover,
form.pmpro_form input[type="submit"]#pmpro_btn-submit:hover {
	background-color: #095563 !important;
	color: #ffffff !important;
	box-shadow: 0 4px 12px rgba(13,107,122,0.35) !important;
}

#pmpro_form input#pmpro_btn-submit:focus,
#pmpro_form input.pmpro_btn-submit-checkout:focus,
form.pmpro_form input[type="submit"]#pmpro_btn-submit:focus {
	background-color: #095563 !important;
	color: #ffffff !important;
	outline: 2px solid #0d6b7a !important;
	outline-offset: 2px !important;
}

#pmpro_form input#pmpro_btn-submit:active,
#pmpro_form input.pmpro_btn-submit-checkout:active,
form.pmpro_form input[type="submit"]#pmpro_btn-submit:active {
	background-color: #074a56 !important;
	color: #ffffff !important;
	box-shadow: 0 1px 4px rgba(13,107,122,0.2) !important;
}

/* ============================================
   3. Member Mobile / Banner Luglio / Corso Section
   ============================================ */
.elementor-element-subcnt03 .elementor-widget-container,
.elementor-element-subcnt03 p {
	word-wrap: break-word;
	overflow-wrap: break-word;
	white-space: normal;
	hyphens: auto;
}

@media (max-width: 767px) {
	.elementor-element-subcnt03 {
		padding-left: 14px !important;
		padding-right: 14px !important;
		box-sizing: border-box;
	}

	.elementor-element-subcnt03 p {
		font-size: 12px !important;
		line-height: 1.4 !important;
		text-align: center !important;
		margin: 0 !important;
		padding: 0 4px !important;
		max-width: 100% !important;
	}

}

@media (max-width: 420px) {
	.elementor-element-subcnt03 p {
		font-size: 11px !important;
		letter-spacing: 0 !important;
	}

}

.aipia-banner-luglio-wrap {
	margin-top: 4px !important;
	margin-bottom: 28px !important;
}

.elementor-element.elementor-element-32t9xuj {
	padding-top: 40px !important;
}

/* ============================================
   4. Fix Contrasto Pattern Globali
   ============================================ */
.elementor-element-95c0ff3 a:hover {
	color: #ffffff !important;
}

.elementor-element-hty3nzb .elementor-social-icon {
	color: #ffffff !important;
}

.aipia-check {
	color: #003366 !important;
	background-color: rgba(255, 255, 255, 0.90) !important;
	padding: 0 4px;
	border-radius: 3px;
}

/* ============================================
   5. Fix Link Contrasto Universale (Opzione A v6)
   
   PATTERN :not() include:
   - .elementor-button / .elementor-button-link
   - .elementor-item / .elementor-sub-item (menu)
   - .elementor-social-icon / .elementor-icon
   - [class*="button"] / [role="button"]
   - :has(> img)  -- esclude link con immagine (logo)
   ============================================ */
/* DEFAULT — Link nelle sezioni del body content */
.elementor-section a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)),
.elementor-section a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):visited,
.e-con a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)),
.e-con a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):visited {
	padding: 2px 6px !important;
	border-radius: 3px !important;
	text-decoration: none !important;
	transition: background-color 0.2s ease !important;
}

.elementor-section a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):hover,
.elementor-section a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):focus,
.e-con a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):hover,
.e-con a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):focus {
	background-color: rgba(245, 245, 248, 0.90) !important;
}

/* HEADING — Link dentro h1/h2/h3/h4/h5/h6 (padding ridotto) */
.elementor-section h1 a:not(:has(> img)), .elementor-section h2 a:not(:has(> img)), .elementor-section h3 a:not(:has(> img)), .elementor-section h4 a:not(:has(> img)), .elementor-section h5 a:not(:has(> img)), .elementor-section h6 a:not(:has(> img)),
.e-con h1 a:not(:has(> img)), .e-con h2 a:not(:has(> img)), .e-con h3 a:not(:has(> img)), .e-con h4 a:not(:has(> img)), .e-con h5 a:not(:has(> img)), .e-con h6 a:not(:has(> img)) {
	padding: 0 3px !important;
	border-radius: 2px !important;
}

/* ============================================
   ESCLUSIONE FOOTER — Specificita' alzata con :not()
   ============================================ */
.elementor-location-footer a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)),
.elementor-location-footer a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):visited,
.elementor-location-footer .e-con a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)),
.elementor-location-footer .e-con a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):visited {
	background-color: transparent !important;
	padding: 0 !important;
	border-radius: 0 !important;
}

/* Hover footer: bianco soft + underline */
.elementor-location-footer a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):hover,
.elementor-location-footer .e-con a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):hover {
	color: #ffffff !important;
	text-decoration: underline !important;
}

/* ESCLUSIONE Form PMPro */
.pmpro_form a,
.pmpro_form a:visited,
.pmpro_form a:hover,
.pmpro_form a:focus,
form.pmpro_form a,
#pmpro_form a {
	background-color: transparent !important;
	padding: 0 1px !important;
	border-radius: 0 !important;
	border-bottom: 1px solid currentColor !important;
	color: inherit !important;
}

/* ESCLUSIONE Card PMPro */
.pmpro_card a,
.pmpro_card a:visited,
.pmpro_card a:hover {
	background-color: transparent !important;
	padding: 0 !important;
	border-radius: 0 !important;
}

/* ESCLUSIONE Sticky CTA + Banner */
#aipia-sticky-cta,
#aipia-sticky-cta:hover,
.aipia-banner-luglio-wrap a,
.aipia-banner-luglio-wrap a:hover {
	background-color: inherit !important;
	padding: inherit !important;
	border-radius: inherit !important;
}

/* OVERRIDE sezioni .has-dark-bg — sfondo bianco pieno */
.elementor-section.has-dark-bg a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)),
.e-con.has-dark-bg a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)) {
	background-color: rgba(255, 255, 255, 0.85) !important;
	color: #01609F !important; /* v0.26 5d: era #0170B9, 4,24:1 sulla chip in banda blu */
	padding: 2px 6px !important;
	border-radius: 3px !important;
	text-decoration: none !important;
}

.elementor-section.has-dark-bg a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):hover,
.e-con.has-dark-bg a:not(.elementor-button):not(.elementor-button-link):not(.elementor-item):not(.elementor-sub-item):not(.elementor-social-icon):not(.elementor-icon):not([class*="button"]):not([role="button"]):not(:has(> img)):hover {
	background-color: #ffffff !important;
}

/* =====================================================================
   AIPIA Header Mobile Compact - aggiunto 2026-05-11 (v2 - higher specificity)
   v2: aggiunto prefisso body per battere lo stylesheet inline Elementor
   che viene emesso dopo wp-custom-css con stessa specificita.
   ===================================================================== */
@media (max-width: 768px) {
	body .elementor-526 .elementor-element.elementor-element-3c94d72 img {
		max-width: 150px;
		height: auto;
	}

	body .elementor-526 .elementor-element.elementor-element-3c94d72 > .elementor-widget-container {
		margin-bottom: 8px;
	}

	body .elementor-526 .elementor-element.elementor-element-1ae1a92 {
		padding-top: 10px;
		padding-bottom: 10px;
	}

}

/* ===== 6t NEWS page (Elementor 909) desktop + mobile ===== */
/* Hero section: add top/bottom padding for breathing room from header and grid */
.elementor-909 > .elementor-section.elementor-top-section.elementor-element-49a8a5e {
	padding-top:40px !important;
	padding-bottom:8px !important;
	margin-bottom:24px !important;
}

/* H1 title size to match site hierarchy (34px) */
.elementor-909 .elementor-element-bd92afb h1.elementor-heading-title {
	font-size:34px !important;
	line-height:1.25 !important;
	margin:0 !important;
}

.elementor-909 .elementor-element-bd92afb > .elementor-widget-container {
	margin-top:0 !important;
	margin-bottom:16px !important;
}

.elementor-909 .elementor-element-bd92afb {
	margin-bottom:0 !important;
}

/* Subtitle paragraph: tighten spacing and consistent body size */
.elementor-909 .elementor-element-666f90b p {
	font-size:18px !important;
	line-height:1.55 !important;
	margin:0 !important;
}

.elementor-909 .elementor-element-666f90b {
	margin-bottom:0 !important;
}

/* Categories section: add proper vertical padding */
.elementor-909 > .elementor-section.elementor-top-section.elementor-element-eed6d6d {
	padding-top:8px !important;
	padding-bottom:40px !important;
}

/* CATEGORIE ARTICOLI heading: bigger and consistent kicker style */
.elementor-909 .elementor-element-eed6d6d h2 {
	font-size:14px !important;
	font-weight:700 !important;
	letter-spacing:0.06em !important;
	margin-bottom:16px !important;
}

/* Categories sidebar links spacing */
.elementor-909 .elementor-element-eed6d6d .elementor-widget-text-editor ul,
.elementor-909 .elementor-element-eed6d6d .elementor-widget-text-editor ol {
	padding-left:0 !important;
	margin:0 !important;
	list-style:none !important;
}

/* Article post cards: title smaller, tighter spacing */
.elementor-909 .elementor-post__title {
	font-size:20px !important;
	line-height:1.35 !important;
	margin-bottom:14px !important;
}

.elementor-909 .elementor-post__title a {
	font-size:20px !important;
}

.elementor-909 .elementor-post__excerpt {
	margin-bottom:14px !important;
}

.elementor-909 .elementor-post__excerpt p {
	font-size:16px !important;
	line-height:1.55 !important;
	margin:0 !important;
}

.elementor-909 .elementor-post__read-more {
	font-size:14px !important;
	margin:0 0 12px 0 !important;
	display:inline-block !important;
}

.elementor-909 .elementor-post__meta-data {
	padding-top:10px !important;
	font-size:12px !important;
}

.elementor-909 .elementor-post__card {
	padding:18px 20px !important;
}

/* Posts grid: a bit smaller gap */
.elementor-909 .elementor-posts-container {
	gap:24px !important;
}

/* MOBILE 767 */
@media (max-width: 767px) {
	.elementor-909 > .elementor-section.elementor-top-section.elementor-element-49a8a5e {
		padding-top:28px !important;
		padding-bottom:8px !important;
		margin-bottom:16px !important;
		padding-left:16px !important;
		padding-right:16px !important;
	}

	.elementor-909 .elementor-element-bd92afb h1.elementor-heading-title {
		font-size:26px !important;
		line-height:1.25 !important;
	}

	.elementor-909 .elementor-element-666f90b p {
		font-size:16px !important;
		line-height:1.55 !important;
	}

	.elementor-909 > .elementor-section.elementor-top-section.elementor-element-eed6d6d {
		padding-top:8px !important;
		padding-bottom:28px !important;
		padding-left:16px !important;
		padding-right:16px !important;
	}

	.elementor-909 .elementor-post__title,
  .elementor-909 .elementor-post__title a {
		font-size:18px !important;
		line-height:1.3 !important;
	}

	.elementor-909 .elementor-post__excerpt p {
		font-size:15px !important;
	}

	.elementor-909 .elementor-posts-container {
		gap:18px !important;
	}

}

/* ===== 6u GLOBAL pagine interne (rev2): solo H1 + H2 NON-kicker + sezioni ===== */
/* Esclude home (427) e iscriviti (2633). I kicker (widget__width-initial o uppercase) NON vengono toccati */
/* H1: 34px desktop / 26px mobile */
body:not(.elementor-page-427):not(.elementor-page-2633) .elementor-widget-heading h1.elementor-heading-title {
	font-size:34px !important;
	line-height:1.2 !important;
	font-weight:700 !important;
}

/* SEZIONI: padding verticale 40px */
body:not(.elementor-page-427):not(.elementor-page-2633) .elementor-section.elementor-top-section {
	padding-top:40px !important;
	padding-bottom:40px !important;
}

/* MOBILE 767 */
@media (max-width: 767px) {
	body:not(.elementor-page-427):not(.elementor-page-2633) .elementor-widget-heading h1.elementor-heading-title {
		font-size:26px !important;
		line-height:1.25 !important;
	}

	body:not(.elementor-page-427):not(.elementor-page-2633) .elementor-section.elementor-top-section {
		padding-top:28px !important;
		padding-bottom:28px !important;
		padding-left:16px !important;
		padding-right:16px !important;
	}

}

/* JS-less detection: heading uppercase via inline style (Elementor a volte usa inline) */
.elementor-widget-heading h1.elementor-heading-title[style*="text-transform"],
.elementor-widget-heading h2.elementor-heading-title[style*="text-transform"],
.elementor-widget-heading h3.elementor-heading-title[style*="text-transform"] {
	font-size:14px !important;
	line-height:1.4 !important;
	letter-spacing:0.06em !important;
	font-weight:700 !important;
}

/* Pages using Elementor template 1062 (Canvas) but with WP/plugin body content */
/* /profili-professionali-ai-uni-11621-8/ (3192), /membership-account/ (596), /convenzioni-soci/ (2030), /risorse-utili/ (1393), /privacy-policy/ (3), /cookie-policy/ (696) */
body.elementor-page-1062 .elementor-widget-theme-post-content h1,
body.elementor-page-1062 .elementor-widget-theme-post-content h2,
body.elementor-page-1062 .elementor-widget-theme-post-content h3,
body.elementor-page-1062 .pmpro_account h1,
body.elementor-page-1062 .pmpro_account h2,
body.elementor-page-1062 .pmpro_account h3,
body.elementor-page-1062 article.page h1,
body.elementor-page-1062 article.page h2,
body.elementor-page-1062 article.page h3 {
	font-family:inherit;
}

body.elementor-page-1062 .elementor-widget-theme-post-content h2,
body.elementor-page-1062 .pmpro_account h2,
body.elementor-page-1062 article.page h2 {
	font-size:24px !important;
	line-height:1.3 !important;
	margin-top:32px !important;
	margin-bottom:12px !important;
	font-weight:700 !important;
}

body.elementor-page-1062 .elementor-widget-theme-post-content h3,
body.elementor-page-1062 .pmpro_account h3,
body.elementor-page-1062 article.page h3 {
	font-size:20px !important;
	line-height:1.3 !important;
	margin-top:24px !important;
	margin-bottom:10px !important;
	font-weight:700 !important;
}

body.elementor-page-1062 .elementor-widget-theme-post-content h4,
body.elementor-page-1062 .pmpro_account h4,
body.elementor-page-1062 article.page h4 {
	font-size:18px !important;
	line-height:1.3 !important;
	margin-top:20px !important;
	margin-bottom:8px !important;
	font-weight:700 !important;
}

body.elementor-page-1062 .elementor-widget-theme-post-content p,
body.elementor-page-1062 .elementor-widget-theme-post-content li,
body.elementor-page-1062 .pmpro_account p,
body.elementor-page-1062 .pmpro_account li {
	font-size:17px !important;
	line-height:1.6 !important;
}

/* Mobile */
@media (max-width: 767px) {
	body.elementor-page-1062 .elementor-widget-theme-post-content h2,
  body.elementor-page-1062 .pmpro_account h2,
  body.elementor-page-1062 article.page h2 {
		font-size:20px !important;
	}

	body.elementor-page-1062 .elementor-widget-theme-post-content h3,
  body.elementor-page-1062 .pmpro_account h3,
  body.elementor-page-1062 article.page h3 {
		font-size:18px !important;
	}

}

/* === 6v2 footer pages - additional selectors === */
/* /stampa/loghi/ has bare H1/H2 directly under DIV - need to exclude only header/footer */
body.page-id-2283 h1 {
	font-size:34px !important;
	line-height:1.2 !important;
	margin-bottom:24px !important;
	margin-top:24px !important;
}

body.page-id-2283 h2:not(.elementor-heading-title) {
	font-size:24px !important;
	line-height:1.3 !important;
	margin-top:32px !important;
	margin-bottom:12px !important;
}

body.page-id-2283 h3:not(.elementor-heading-title) {
	font-size:18px !important;
	line-height:1.3 !important;
	margin-top:20px !important;
	margin-bottom:8px !important;
}

/* /profili-professionali-ai-uni-11621-8/ - H2 stuck at 34px under widget bf453e7 */
body.page-id-3192 .elementor-element-bf453e7 h2 {
	font-size:24px !important;
	line-height:1.3 !important;
	margin-top:32px !important;
	margin-bottom:12px !important;
	font-weight:700 !important;
}

body.page-id-3192 .elementor-element-bf453e7 h3 {
	font-size:20px !important;
	line-height:1.3 !important;
	margin-top:24px !important;
	margin-bottom:10px !important;
	font-weight:700 !important;
}

/* /membership-account/ */
body.page-id-596 .elementor-widget-theme-post-content h1,
body.page-id-596 .elementor-widget-text-editor h1,
body.page-id-596 #pmpro_account h1,
body.page-id-596 .pmpro_account h1 {
	font-size:28px !important;
}

body.page-id-596 .elementor-widget-theme-post-content h2,
body.page-id-596 .elementor-widget-text-editor h2,
body.page-id-596 #pmpro_account h2,
body.page-id-596 .pmpro_account h2 {
	font-size:22px !important;
	margin-top:28px !important;
	margin-bottom:12px !important;
}

/* Mobile */
@media (max-width: 767px) {
	body.page-id-2283 h1 {
		font-size:26px !important;
	}

	body.page-id-2283 h2 {
		font-size:20px !important;
	}

	body.page-id-3192 .elementor-element-bf453e7 h2 {
		font-size:20px !important;
	}

	body.page-id-3192 .elementor-element-bf453e7 h3 {
		font-size:18px !important;
	}

	body.page-id-596 .elementor-widget-theme-post-content h2,
  body.page-id-596 .pmpro_account h2 {
		font-size:20px !important;
	}

}

/* =====================================================
   FIX MOBILE ISCRIVITI CONTATORI - 11/05/2026
   Risolve overflow orizzontale su iPhone (Chrome/Safari)
   per la sezione contatori (45e121c) e la barra
   accreditamenti (subcnt01) in pagina /iscriviti/
   ===================================================== */
@media (max-width: 767px) {
/* Sezione contatori: layout 2x2 invece di 4 in fila */
	.elementor-element-45e121c {
		overflow: hidden !important;
		box-sizing: border-box !important;
		max-width: 100% !important;
		margin-left: 10px !important;
		margin-right: 10px !important;
		padding: 24px 12px 12px !important;
	}

	.elementor-element-45e121c > .elementor-container {
		flex-wrap: wrap !important;
		max-width: 100% !important;
	}

	.elementor-element-45e121c .elementor-column.elementor-col-25 {
		width: 50% !important;
		flex: 0 0 50% !important;
		border-right: none !important;
		padding: 10px 6px !important;
		box-sizing: border-box !important;
	}

	.elementor-element-45e121c .elementor-counter-number-wrapper {
		font-size: 30px !important;
		line-height: 1.1 !important;
	}

	.elementor-element-45e121c .elementor-counter-title {
		font-size: 12px !important;
		line-height: 1.3 !important;
	}

/* Barra accreditamenti: a capo corretto, non tagliata */
	.elementor-element-subcnt01 {
		overflow: hidden !important;
		box-sizing: border-box !important;
		max-width: 100% !important;
		margin-left: 10px !important;
		margin-right: 10px !important;
		padding: 10px 12px !important;
	}

	.elementor-element-subcnt03,
  .elementor-element-subcnt03 .elementor-widget-container,
  .elementor-element-subcnt03 p {
		max-width: 100% !important;
		overflow-wrap: break-word !important;
		word-break: normal !important;
		white-space: normal !important;
		hyphens: auto !important;
		box-sizing: border-box !important;
	}

	.elementor-element-subcnt03 p {
		font-size: 11px !important;
		line-height: 1.45 !important;
		padding: 0 4px !important;
		text-align: center !important;
	}

}

/* Su iPhone molto piccoli (SE/mini ~320px) riduco ulteriormente */
@media (max-width: 374px) {
	.elementor-element-45e121c .elementor-column.elementor-col-25 {
		width: 100% !important;
		flex: 0 0 100% !important;
	}

	.elementor-element-45e121c .elementor-counter-number-wrapper {
		font-size: 32px !important;
	}

}

/* =====================================================
   FIX BUTTONS OVERFLOW MOBILE - 11/05/2026
   Bottoni elementor che sforano su iPhone perché
   white-space:nowrap o testi piu' larghi della colonna
   ===================================================== */
@media (max-width: 767px) {
	.elementor-widget-button .elementor-button-wrapper,
  .elementor-widget-button .elementor-button {
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	.elementor-widget-button .elementor-button {
		white-space: normal !important;
		word-break: break-word !important;
		overflow-wrap: break-word !important;
		display: inline-block !important;
		max-width: 100% !important;
		padding-left: 12px !important;
		padding-right: 12px !important;
	}

/* Sezione 4 bottoni "Iscriviti / Diventa socio / Scopri i piani / Proponi partnership" */
	.elementor-element-3789b6c .elementor-column.elementor-col-25 {
		width: 50% !important;
		flex: 0 0 50% !important;
		padding: 6px !important;
		box-sizing: border-box !important;
	}

	.elementor-element-3789b6c .elementor-button {
		font-size: 13px !important;
		width: 100% !important;
		text-align: center !important;
	}

/* Container generale: previeni overflow orizzontale */
	body {
		overflow-x: hidden !important;
	}

}

@media (max-width: 374px) {
	.elementor-element-3789b6c .elementor-column.elementor-col-25 {
		width: 100% !important;
		flex: 0 0 100% !important;
	}

	.elementor-element-3789b6c .elementor-button {
		font-size: 14px !important;
	}

}

/* =====================================================
   FIX ALIGN SUBCNT - 11/05/2026
   Allinea la barra accreditamenti (subcnt01) alla stessa
   larghezza del box contatori (45e121c) su mobile
   per evitare effetto "testo tagliato ai lati"
   ===================================================== */
@media (max-width: 767px) {
	section.elementor-element.elementor-element-subcnt01 {
		width: calc(100% - 32px) !important;
		max-width: calc(100% - 32px) !important;
		margin-left: 16px !important;
		margin-right: 16px !important;
		box-sizing: border-box !important;
		border-top-left-radius: 0 !important;
		border-top-right-radius: 0 !important;
		border-bottom-left-radius: 12px !important;
		border-bottom-right-radius: 12px !important;
		padding: 10px 8px !important;
	}

	section.elementor-element.elementor-element-45e121c {
		border-bottom-left-radius: 0 !important;
		border-bottom-right-radius: 0 !important;
		margin-bottom: 0 !important;
	}

	.elementor-element-subcnt03 p {
		font-size: 11px !important;
		line-height: 1.4 !important;
		margin: 0 !important;
		padding: 0 6px !important;
		text-align: center !important;
		overflow-wrap: break-word !important;
		word-wrap: break-word !important;
		word-break: normal !important;
		hyphens: auto !important;
	}

}

/* =====================================================
   HIDE SUBCNT MOBILE - 11/05/2026
   Nasconde barra accreditamenti su mobile (testo tagliato)
   Riduce spazi sotto contatori
   ===================================================== */
@media (max-width: 767px) {
	section.elementor-element.elementor-element-subcnt01 {
		display: none !important;
	}

	section.elementor-element.elementor-element-45e121c {
		border-radius: 12px !important;
		margin-bottom: 16px !important;
		padding-top: 20px !important;
		padding-bottom: 16px !important;
	}

	section.elementor-element.elementor-element-45e121c .elementor-column.elementor-col-25 {
		padding: 8px 6px !important;
	}

}

/* === END FIX FORMAZIONE HUB === */
/* =========================================================
   AIPIA — FORMAZIONE HUB REDESIGN 2026
   Scope: sezioni Elementor m7sm6pf6, idpk06nb, ltd0d21z
   Sostituisce il vecchio blocco "FIX FORMAZIONE HUB"
   ========================================================= */
/* Variabili locali */
.elementor-element-m7sm6pf6,
.elementor-element-idpk06nb,
.elementor-element-ltd0d21z {
	--aipia-navy: #0a2540;
	--aipia-navy-soft: rgba(10,37,64,0.55);
	--aipia-navy-line: rgba(10,37,64,0.08);
	--aipia-text: #4a5568;
	--aipia-accent: #f5b800;
}

/* ---------- CARD CONTAINER ---------- */
.elementor-element-m7sm6pf6 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
.elementor-element-idpk06nb .elementor-column > .elementor-widget-wrap.elementor-element-populated,
.elementor-element-ltd0d21z .elementor-column > .elementor-widget-wrap.elementor-element-populated {
	background: #ffffff !important;
	border: 1px solid var(--aipia-navy-line) !important;
	border-radius: 16px !important;
	padding: 32px !important;
	box-shadow:
	0 1px 2px rgba(10,37,64,0.04),
	0 4px 16px rgba(10,37,64,0.06) !important;
	transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease !important;
}

.elementor-element-m7sm6pf6 .elementor-column > .elementor-widget-wrap.elementor-element-populated:hover,
.elementor-element-idpk06nb .elementor-column > .elementor-widget-wrap.elementor-element-populated:hover,
.elementor-element-ltd0d21z .elementor-column > .elementor-widget-wrap.elementor-element-populated:hover {
	transform: translateY(-3px) !important;
	box-shadow:
	0 2px 4px rgba(10,37,64,0.05),
	0 12px 32px rgba(10,37,64,0.10) !important;
	border-color: rgba(10,37,64,0.14) !important;
}

/* Card "Percorso Completo" — distinta per autorità con bordo navy */
.elementor-element-mx0fyyup > .elementor-widget-wrap.elementor-element-populated {
	background: #ffffff !important;
	border: 1.5px solid var(--aipia-navy) !important;
	position: relative !important;
	box-shadow:
	0 1px 2px rgba(10,37,64,0.05),
	0 8px 24px rgba(10,37,64,0.10) !important;
}

/* ---------- BODY TEXT ---------- */
.elementor-element-m7sm6pf6 .elementor-widget-text-editor,
.elementor-element-idpk06nb .elementor-widget-text-editor,
.elementor-element-ltd0d21z .elementor-widget-text-editor,
.elementor-element-m7sm6pf6 .elementor-widget-text-editor p,
.elementor-element-idpk06nb .elementor-widget-text-editor p,
.elementor-element-ltd0d21z .elementor-widget-text-editor p {
	color: #4a5568 !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
}

/* Link credenziali europea — sottile underline navy */
.elementor-element-m7sm6pf6 .elementor-widget-text-editor a,
.elementor-element-idpk06nb .elementor-widget-text-editor a,
.elementor-element-ltd0d21z .elementor-widget-text-editor a {
	color: #0a2540 !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(10,37,64,0.25) !important;
	transition: border-color 180ms ease !important;
}

.elementor-element-m7sm6pf6 .elementor-widget-text-editor a:hover,
.elementor-element-idpk06nb .elementor-widget-text-editor a:hover,
.elementor-element-ltd0d21z .elementor-widget-text-editor a:hover {
	border-bottom-color: #0a2540 !important;
}

/* ---------- SPAZIATURA SEZIONI ---------- */
.elementor-element-m7sm6pf6,
.elementor-element-idpk06nb,
.elementor-element-ltd0d21z {
	padding-top: 18px !important;
	padding-bottom: 18px !important;
}

/* Badge "Fonti Preferite Google" — articoli */
body.single .aipia-gps {
	text-align: center; margin: 2.5rem 0;
}

body.single .aipia-gps a {
	display: inline-block;
	background: #fff;
	padding: 14px 26px;
	border: 1px solid #e2e8f0;     /* cornice sottile */
	border-radius: 16px;           /* arrotondato */
	box-shadow: 0 4px 14px rgba(0,0,0,.08);   /* ombra */
	line-height: 0;
	transition: transform .15s ease, box-shadow .15s ease;
}

body.single .aipia-gps a:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(0,0,0,.12);
}

body.single .aipia-gps img {
	width: 210px;                  /* unica leva dimensione */
	max-width: 100%;
	height: auto;
	display: block;
}

/* ============================================
   Risorse utili (ID 1393) - stacco blocco Area soci + spazio ridotto prima della Newsletter
   ============================================ */
body.page-id-1393 .elementor-1062 .elementor-element.elementor-element-8572252 {
	padding-bottom:8px !important
}

body.page-id-1393 .elementor-1062 .elementor-element.elementor-element-459f212 {
	padding-top:8px !important;padding-bottom:8px !important;min-height:0 !important
}

/* AIPIA-RISORSE-TITLE-CENTER - titolo Risorse utili centrato (override) */
body.page-id-1393 .elementor-1062 .elementor-element.elementor-element-77ebbe3 .elementor-heading-title {
	text-align:center !important
}

/* ================================== */
/* 6. FOOTER RESTYLING 07/2026        */
/* ================================== */
/* 6a. Badge riconoscimenti: stop al troncamento */
.elementor-location-footer .aipia-trust-strip a.trust-badge strong, .elementor-location-footer .aipia-trust-strip a.trust-badge span {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	line-height: 1.3 !important;
}

/* 6b. Riga SEGUICI: label e icone allineate al centro, riga centrata */
.elementor-location-footer .elementor-social-icons-wrapper {
	gap: 10px !important;
}

/* =============================================
   7. PAGAMENTO & SUBMIT — PALETTE BLU 07/2026
   Override del blocco 1 (stessi selettori, viene dopo = vince)
   ============================================= */
#aipia-payment-toggle label {
	border: 2px solid #cbd5e1 !important;
	color: #334155 !important;
	padding: 11px 20px !important;
	font-size: 14px !important;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;
}

#aipia-payment-toggle label:hover {
	background-color: #f0f7ff !important;
	border-color: #0170B9 !important;
	color: #0a2540 !important;
	box-shadow: 0 2px 6px rgba(1,112,185,0.15) !important;
}

#aipia-payment-toggle label:has(input[type="radio"]:checked) {
	background-color: #0170B9 !important;
	color: #ffffff !important;
	border-color: #0170B9 !important;
	box-shadow: 0 2px 8px rgba(1,112,185,0.3) !important;
}

#aipia-payment-toggle label:has(input[type="radio"]:checked):hover {
	background-color: #005a94 !important;
	border-color: #005a94 !important;
	color: #ffffff !important;
}

#aipia-payment-toggle label input[type="radio"] {
	accent-color: #0170B9 !important;
}

#aipia-payment-toggle label:has(input[type="radio"]:checked) input[type="radio"] {
	accent-color: #ffffff !important;
}

#pmpro_form input#pmpro_btn-submit,
#pmpro_form input.pmpro_btn-submit-checkout,
#pmpro_form .pmpro_btn-submit-checkout,
form.pmpro_form input[type="submit"]#pmpro_btn-submit {
	background-color: #0170B9 !important;
	padding: 13px 36px !important;
	font-size: 16px !important;
	box-shadow: 0 3px 10px rgba(1,112,185,0.25) !important;
}

#pmpro_form input#pmpro_btn-submit:hover,
#pmpro_form input.pmpro_btn-submit-checkout:hover,
form.pmpro_form input[type="submit"]#pmpro_btn-submit:hover {
	background-color: #005a94 !important;
	box-shadow: 0 4px 12px rgba(1,112,185,0.35) !important;
}

#pmpro_form input#pmpro_btn-submit:focus,
#pmpro_form input.pmpro_btn-submit-checkout:focus,
form.pmpro_form input[type="submit"]#pmpro_btn-submit:focus {
	background-color: #005a94 !important;
	outline: 2px solid #0170B9 !important;
	outline-offset: 2px !important;
}

#pmpro_form input#pmpro_btn-submit:active,
#pmpro_form input.pmpro_btn-submit-checkout:active,
form.pmpro_form input[type="submit"]#pmpro_btn-submit:active {
	background-color: #004a7a !important;
}

/* AIPIA pagine testo v1 */
body.page-id-4118 .elementor-widget-theme-post-content .elementor-widget-container,
body.page-id-4116 .elementor-widget-theme-post-content .elementor-widget-container {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}

body.page-id-4118 .elementor-widget-theme-post-content h2,
body.page-id-4116 .elementor-widget-theme-post-content h2 {
	color: #003366;
	font-size: 24px;
	margin-top: 28px !important;
	margin-bottom: 10px !important;
	border-bottom: 2px solid #f0f7ff;
	padding-bottom: 6px;
}

body.page-id-4118 .elementor-widget-theme-post-content h3,
body.page-id-4116 .elementor-widget-theme-post-content h3 {
	color: #0170B9;
	font-size: 18px !important;
}

body.page-id-4118 .elementor-widget-theme-post-content p,
body.page-id-4116 .elementor-widget-theme-post-content p {
	font-size: 17px;
	line-height: 1.7 !important;
	color: #333333;
}

body.page-id-4118 .elementor-widget-theme-post-content strong,
body.page-id-4116 .elementor-widget-theme-post-content strong {
	color: #003366;
}

/* end AIPIA pagine testo v1 */
/* AIPIA honeypot v1 */
body.page-id-2633 .aipia-fnl__hp {
	position: absolute;
	left: -9999px;
	height: 0;
	overflow: hidden;
}

/* end AIPIA honeypot v1 */
/* AIPIA honeypot fix — Chrome-FIX-1 */
body.elementor-page-2633 .aipia-fnl__hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

/* AIPIA - Nascondi titolo pagina Accesso (login) */
body.page-id-603 .elementor-widget-theme-post-title {
	display: none !important;
}

/* end AIPIA nascondi titolo login (graffa orfana dell'originale RIMOSSA nel pass 3: 403 aperte vs 404 chiuse, gate css-sintassi) */

/* AIPIA Claude - Testata spazi ridotti 50%: la regola top-level era
   INERTE sul vivo (vittima della graffa orfana: il parser CSS la
   scartava) e la testata Elementor non renderizza piu' — rimossa nel
   pass 3 per fedelta' al comportamento servito. Le varianti @media qui
   sotto erano gia' parse-abili e restano (selettore comunque morto). */

@media (max-width: 767px) {
	.elementor-element-1ae1a92.elementor-top-section {
		padding-top: 14px !important;
		padding-bottom: 14px !important;
	}

}

/* end AIPIA Claude - Testata spazi ridotti */
/* === 6. AIPIA — Rimozione righette divider v1 — 02/08/2026 === */
/* Nasconde i widget Divider usati come filetto sotto gli occhielli in tutte le
   pagine. Variante unica sul sito: --view-line (verificata su 70 URL, 127 widget).
   !important giustificato: batte le regole per-ID generate da Elementor.
   Esclusi: editor Elementor (widget restano selezionabili) e template Footer. */
body:not(.elementor-editor-active) .elementor-widget-divider {
	display: none !important;
}

/* === END 6. Rimozione righette divider === */
/* === A2 (GIRO ULTRA SEGUITO, 13/08/2026) — APPIATTIMENTO HEADER ===
 * La regola +40px delle sezioni top-level (sezione 5, scritta per il
 * CONTENUTO) cattura anche la sezione dell'header del theme builder:
 * misurato 13/08, header 216px su home e /iscriviti/ (le due pagine
 * ESCLUSE dalla regola) contro 256px ovunque, e 150px contro 196px a
 * 390px (con 16px laterali in piu'). Qui l'header torna ai valori del
 * TEMPLATE su OGNI pagina. Rollback: one-shot customcss-header-piatto-off.
 */
body:not(#aipia-mai) .elementor-location-header .elementor-section.elementor-top-section {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

@media (max-width: 767px) {
	body:not(#aipia-mai) .elementor-location-header .elementor-section.elementor-top-section {
		padding-top: 6px !important;
		padding-bottom: 4px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

}

