/* ── Override Elementor / WordPress reset ── */
.elementor-widget-container { padding: 0 !important; }
.elementor-section { margin: 0 !important; }
.elementor-widget-html img { height: revert !important; max-width: revert !important; }
.elementor-widget-html p { margin: 0 !important; }
.elementor-widget-html a { color: inherit; }
.wp-block-group, .entry-content { padding: 0 !important; }
.elementor-section.elementor-section-boxed { background: transparent; }
/* Ensure full-width sections stretch properly */
.elementor-section.elementor-section-full_width { width: 100vw; margin-left: calc(-50vw + 50%); }
/* Fix column wrapping — Elementor rows with columns totaling >100% must wrap */
.elementor-row, .elementor-container { flex-wrap: wrap !important; margin: 0 !important; }
.elementor-row > .elementor-column, .elementor-container > .elementor-column {
  flex-shrink: 0 !important;
}
/* Ensure images are responsive */
.elementor-widget-image img { max-width: 100%; height: auto; }
/* Gallery/image grid: enforce equal heights when images are in multi-column sections */
.elementor-section .elementor-row .elementor-column .elementor-widget-image img,
.elementor-section .elementor-container .elementor-column .elementor-widget-image img {
  width: 100%; object-fit: cover;
}
/* Fix icon-box alignment */
.elementor-icon-box-wrapper { text-align: inherit; }
/* Counter widget number sizing */
.elementor-counter .elementor-counter-number-wrapper { display: block; }
/* Testimonial widget spacing */
.elementor-testimonial-wrapper { padding: 0; }
/* Accordion/tabs borders */
.elementor-accordion .elementor-accordion-item { border-color: #e5e7eb; }
.elementor-tab-title { cursor: pointer; }


/* ── Override sezioni Elementor via data-id (no cache required) ── */
.elementor-section { margin: 0 !important; }
.elementor-section-boxed > .elementor-container { max-width: none !important; }
.elementor-widget-container { padding: 0 !important; }
[data-id="s1"] { background-image: linear-gradient(rgba(27,79,138,0.65), rgba(27,79,138,0.65)), url('https://images.unsplash.com/photo-1613395877344-13d4a8e0d49e?w=1600&q=85') !important; background-size: cover !important; background-position: center center !important; background-repeat: no-repeat !important; padding: 0px 0px 0px 0px !important; }
[data-id="s1"] .elementor-heading-title { color: #fff !important; }
[data-id="s1"] .elementor-counter-number, [data-id="s1"] .elementor-counter-title { color: #fff !important; }
[data-id="s1"] .elementor-widget-text-editor { color: #fff !important; }
[data-id="s1"] .elementor-icon-box-title, [data-id="s1"] .elementor-icon-box-description { color: #fff !important; }
[data-id="s1"] .elementor-testimonial-content, [data-id="s1"] .elementor-testimonial-name { color: #fff !important; }
[data-id="s1"] .elementor-icon-list-text { color: #fff !important; }
[data-id="c1_1"] > .elementor-column-wrap, [data-id="c1_1"] > .elementor-widget-wrap { padding: 120px 40px 120px 40px !important; }
[data-id="w1"] .elementor-widget-container { color: #F5E6C8 !important; }
[data-id="w2"] .elementor-heading-title { color: #ffffff !important; font-size: 64px !important; font-weight: 700 !important; line-height: 1.15em !important; font-family: 'Playfair Display', sans-serif !important; }
[data-id="w3"] .elementor-widget-container { color: #E8F4FD !important; font-size: 20px !important; line-height: 1.7em !important; }
[data-id="w5"] .elementor-widget-container { color: #E8F4FD !important; }
[data-id="s2"] { background-color: #E8F4FD !important; padding: 70px 20px 70px 20px !important; }
[data-id="c2_1"] > .elementor-column-wrap, [data-id="c2_1"] > .elementor-widget-wrap { padding: 0px 0px 0px 0px !important; }
[data-id="w6"] .elementor-heading-title { color: #1B4F8A !important; font-size: 36px !important; font-weight: 700 !important; font-family: 'Playfair Display', sans-serif !important; }
[data-id="w7"] .elementor-widget-container { color: #6B7280 !important; font-size: 16px !important; }
[data-id="s3"] { background-color: #FAFAF8 !important; padding: 80px 20px 80px 20px !important; }
[data-id="c3_1"] > .elementor-column-wrap, [data-id="c3_1"] > .elementor-widget-wrap { padding: 0px 0px 0px 0px !important; }
[data-id="w10"] .elementor-heading-title { color: #1A1A2E !important; font-size: 48px !important; font-weight: 700 !important; font-family: 'Playfair Display', sans-serif !important; }
[data-id="w11"] .elementor-widget-container { color: #6B7280 !important; font-size: 18px !important; line-height: 1.7em !important; }
[data-id="s4"] { background-color: #FAFAF8 !important; padding: 80px 20px 80px 20px !important; }
[data-id="c4_1"] > .elementor-column-wrap, [data-id="c4_1"] > .elementor-widget-wrap { padding: 0px 12px 24px 12px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 20px 0px rgba(27,79,138,0.08) !important; }
[data-id="c4_2"] > .elementor-column-wrap, [data-id="c4_2"] > .elementor-widget-wrap { padding: 0px 12px 24px 12px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 20px 0px rgba(27,79,138,0.08) !important; }
[data-id="c4_3"] > .elementor-column-wrap, [data-id="c4_3"] > .elementor-widget-wrap { padding: 0px 12px 24px 12px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 20px 0px rgba(27,79,138,0.08) !important; }
[data-id="s5"] { background-color: #FAFAF8 !important; padding: 80px 20px 80px 20px !important; }
[data-id="c5_1"] > .elementor-column-wrap, [data-id="c5_1"] > .elementor-widget-wrap { padding: 0px 12px 24px 12px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 20px 0px rgba(27,79,138,0.08) !important; }
[data-id="c5_2"] > .elementor-column-wrap, [data-id="c5_2"] > .elementor-widget-wrap { padding: 0px 12px 24px 12px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 20px 0px rgba(27,79,138,0.08) !important; }
[data-id="c5_3"] > .elementor-column-wrap, [data-id="c5_3"] > .elementor-widget-wrap { padding: 0px 12px 24px 12px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 20px 0px rgba(27,79,138,0.08) !important; }
[data-id="s6"] { background-color: #FAFAF8 !important; padding: 80px 20px 80px 20px !important; }
[data-id="c6_1"] > .elementor-column-wrap, [data-id="c6_1"] > .elementor-widget-wrap { padding: 0px 0px 0px 0px !important; }
[data-id="w18"] .elementor-button { background-color: #1B4F8A !important; color: #ffffff !important; border-radius: 9999px 9999px 9999px 9999px !important; padding: 16px 40px 16px 40px !important; font-size: 16px !important; font-weight: 600 !important; }
[data-id="s7"] { background: linear-gradient(135deg, #1B4F8A, #2E86C1) !important; padding: 80px 20px 80px 20px !important; }
[data-id="s7"] .elementor-heading-title { color: #fff !important; }
[data-id="s7"] .elementor-counter-number, [data-id="s7"] .elementor-counter-title { color: #fff !important; }
[data-id="s7"] .elementor-widget-text-editor { color: #fff !important; }
[data-id="s7"] .elementor-icon-box-title, [data-id="s7"] .elementor-icon-box-description { color: #fff !important; }
[data-id="s7"] .elementor-testimonial-content, [data-id="s7"] .elementor-testimonial-name { color: #fff !important; }
[data-id="s7"] .elementor-icon-list-text { color: #fff !important; }
[data-id="c7_1"] > .elementor-column-wrap, [data-id="c7_1"] > .elementor-widget-wrap { padding: 0px 0px 0px 0px !important; }
[data-id="w20"] .elementor-heading-title { color: #ffffff !important; font-size: 48px !important; font-weight: 700 !important; font-family: 'Playfair Display', sans-serif !important; }
[data-id="w21"] .elementor-widget-container { color: #E8F4FD !important; font-size: 18px !important; line-height: 1.7em !important; }
[data-id="s8"] { background: linear-gradient(135deg, #1B4F8A, #2E86C1) !important; padding: 0px 20px 80px 20px !important; }
[data-id="s8"] .elementor-heading-title { color: #fff !important; }
[data-id="s8"] .elementor-counter-number, [data-id="s8"] .elementor-counter-title { color: #fff !important; }
[data-id="s8"] .elementor-widget-text-editor { color: #fff !important; }
[data-id="s8"] .elementor-icon-box-title, [data-id="s8"] .elementor-icon-box-description { color: #fff !important; }
[data-id="s8"] .elementor-testimonial-content, [data-id="s8"] .elementor-testimonial-name { color: #fff !important; }
[data-id="s8"] .elementor-icon-list-text { color: #fff !important; }
[data-id="c8_1"] > .elementor-column-wrap, [data-id="c8_1"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border-radius: 16px 16px 16px 16px !important; }
[data-id="c8_2"] > .elementor-column-wrap, [data-id="c8_2"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border-radius: 16px 16px 16px 16px !important; }
[data-id="c8_3"] > .elementor-column-wrap, [data-id="c8_3"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border-radius: 16px 16px 16px 16px !important; }
[data-id="c8_4"] > .elementor-column-wrap, [data-id="c8_4"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border-radius: 16px 16px 16px 16px !important; }
[data-id="s9"] { background: linear-gradient(135deg, #1B4F8A, #2E86C1) !important; padding: 0px 20px 80px 20px !important; }
[data-id="s9"] .elementor-heading-title { color: #fff !important; }
[data-id="s9"] .elementor-counter-number, [data-id="s9"] .elementor-counter-title { color: #fff !important; }
[data-id="s9"] .elementor-widget-text-editor { color: #fff !important; }
[data-id="s9"] .elementor-icon-box-title, [data-id="s9"] .elementor-icon-box-description { color: #fff !important; }
[data-id="s9"] .elementor-testimonial-content, [data-id="s9"] .elementor-testimonial-name { color: #fff !important; }
[data-id="s9"] .elementor-icon-list-text { color: #fff !important; }
[data-id="c9_1"] > .elementor-column-wrap, [data-id="c9_1"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border-radius: 16px 16px 16px 16px !important; }
[data-id="c9_2"] > .elementor-column-wrap, [data-id="c9_2"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border-radius: 16px 16px 16px 16px !important; }
[data-id="c9_3"] > .elementor-column-wrap, [data-id="c9_3"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border-radius: 16px 16px 16px 16px !important; }
[data-id="c9_4"] > .elementor-column-wrap, [data-id="c9_4"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border-radius: 16px 16px 16px 16px !important; }
[data-id="s10"] { background-color: #FAFAF8 !important; padding: 80px 20px 30px 20px !important; }
[data-id="c10_1"] > .elementor-column-wrap, [data-id="c10_1"] > .elementor-widget-wrap { padding: 0px 0px 0px 0px !important; }
[data-id="w31"] .elementor-heading-title { color: #1A1A2E !important; font-size: 48px !important; font-weight: 700 !important; font-family: 'Playfair Display', sans-serif !important; }
[data-id="w32"] .elementor-widget-container { color: #6B7280 !important; font-size: 18px !important; line-height: 1.7em !important; }
[data-id="s11"] { background-color: #FAFAF8 !important; padding: 0px 20px 20px 20px !important; }
[data-id="c11_1"] > .elementor-column-wrap, [data-id="c11_1"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 16px 0px rgba(27,79,138,0.08) !important; }
[data-id="c11_2"] > .elementor-column-wrap, [data-id="c11_2"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 16px 0px rgba(27,79,138,0.08) !important; }
[data-id="c11_3"] > .elementor-column-wrap, [data-id="c11_3"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 16px 0px rgba(27,79,138,0.08) !important; }
[data-id="c11_4"] > .elementor-column-wrap, [data-id="c11_4"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 16px 0px rgba(27,79,138,0.08) !important; }
[data-id="s12"] { background-color: #FAFAF8 !important; padding: 0px 20px 80px 20px !important; }
[data-id="c12_1"] > .elementor-column-wrap, [data-id="c12_1"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 16px 0px rgba(27,79,138,0.08) !important; }
[data-id="c12_2"] > .elementor-column-wrap, [data-id="c12_2"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 16px 0px rgba(27,79,138,0.08) !important; }
[data-id="c12_3"] > .elementor-column-wrap, [data-id="c12_3"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 16px 0px rgba(27,79,138,0.08) !important; }
[data-id="c12_4"] > .elementor-column-wrap, [data-id="c12_4"] > .elementor-widget-wrap { padding: 0px 10px 20px 10px !important; border: 1px solid #E5E7EB !important; border-radius: 16px 16px 16px 16px !important; box-shadow: 0px 4px 16px 0px rgba(27,79,138,0.08) !important; }
[data-id="s13"] { background-color: #F5E6C8 !important; padding: 80px 20px 80px 20px !important; }
[data-id="c13_1"] > .elementor-column-wrap, [data-id="c13_1"] > .elementor-widget-wrap { padding: 0px 0px 0px 0px !important; }
[data-id="w42"] .elementor-heading-title { color: #1A1A2E !important; font-size: 48px !important; font-weight: 700 !important; font-family: 'Playfair Display', sans-serif !important; }
[data-id="w43"] .elementor-widget-container { color: #6B7280 !important; font-size: 18px !important; line-height: 1.7em !important; }
[data-id="s14"] { background-color: #FAFAF8 !important; padding: 80px 20px 30px 20px !important; }
[data-id="c14_1"] > .elementor-column-wrap, [data-id="c14_1"] > .elementor-widget-wrap { padding: 0px 0px 0px 0px !important; }
[data-id="w46"] .elementor-heading-title { color: #1A1A2E !important; font-size: 48px !important; font-weight: 700 !important; font-family: 'Playfair Display', sans-serif !important; }
[data-id="w47"] .elementor-widget-container { color: #6B7280 !important; font-size: 18px !important; line-height: 1.7em !important; }
[data-id="s15"] { background-color: #FAFAF8 !important; padding: 0px 20px 80px 20px !important; }
[data-id="c15_1"] > .elementor-column-wrap, [data-id="c15_1"] > .elementor-widget-wrap { padding: 0px 15px 30px 15px !important; border: 1px solid #E5E7EB !important; border-radius: 20px 20px 20px 20px !important; box-shadow: 0px 4px 20px 0px rgba(27,79,138,0.08) !important; }
[data-id="w48"] img { border-radius: 12px 12px 0px 0px !important; }
[data-id="c15_2"] > .elementor-column-wrap, [data-id="c15_2"] > .elementor-widget-wrap { padding: 0px 15px 30px 15px !important; border: 1px solid #E5E7EB !important; border-radius: 20px 20px 20px 20px !important; box-shadow: 0px 4px 20px 0px rgba(27,79,138,0.08) !important; }
[data-id="w50"] img { border-radius: 12px 12px 0px 0px !important; }