.elementor-kit-91308{--e-global-color-primary:#111827;--e-global-color-secondary:#54595F;--e-global-color-text:#4B5563;--e-global-color-accent:#BF2734;--e-global-color-b382210:#111827;--e-global-color-413ca34:#54595F;--e-global-color-67dabeb:#4B5563;--e-global-color-c3e6b7c:#BF2734;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Barlow Condensed";--e-global-typography-accent-font-weight:700;color:var( --e-global-color-text );font-family:"Inter", Sans-serif;font-size:1.0625rem;font-weight:400;line-height:1.65em;}.elementor-kit-91308 e-page-transition{background-color:#FFBC7D;}.elementor-kit-91308 p{margin-block-end:38px;}.elementor-kit-91308 a{color:var( --e-global-color-accent );font-family:"Inter", Sans-serif;font-size:1.0625rem;font-weight:400;line-height:1.65em;}.elementor-kit-91308 h1{color:var( --e-global-color-b382210 );font-family:"Barlow Condensed", Sans-serif;font-size:3.5rem;font-weight:700;line-height:1.1em;letter-spacing:-0.01em;}.elementor-kit-91308 h2{color:var( --e-global-color-b382210 );font-family:"Barlow Condensed", Sans-serif;font-size:2.75rem;font-weight:700;line-height:1.15em;letter-spacing:-0.01em;}.elementor-kit-91308 h3{color:var( --e-global-color-b382210 );font-family:"Inter", Sans-serif;font-size:1.875rem;font-weight:700;line-height:1.25em;letter-spacing:-0.01em;}.elementor-kit-91308 h4{color:var( --e-global-color-b382210 );font-family:"Inter", Sans-serif;font-size:1.5rem;font-weight:700;line-height:1.3em;}.elementor-kit-91308 h5{color:var( --e-global-color-b382210 );font-family:"Inter", Sans-serif;font-size:1.25rem;font-weight:700;line-height:1.35em;}.elementor-kit-91308 h6{color:var( --e-global-color-b382210 );font-family:"Inter", Sans-serif;font-size:1.0625rem;font-weight:700;line-height:1.4em;}.elementor-kit-91308 button,.elementor-kit-91308 input[type="button"],.elementor-kit-91308 input[type="submit"],.elementor-kit-91308 .elementor-button{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-b382210 );border-radius:4px 4px 4px 4px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-91308 h1{font-size:2.75rem;}.elementor-kit-91308 h2{font-size:2.25rem;}.elementor-kit-91308 h3{font-size:1.625rem;}.elementor-kit-91308 h4{font-size:1.375rem;}.elementor-kit-91308 h5{font-size:1.125rem;}.elementor-kit-91308 h6{font-size:1.0625rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:860px;}.e-con{--container-max-width:860px;}}@media(max-width:767px){.elementor-kit-91308 h1{font-size:2.25rem;}.elementor-kit-91308 h2{font-size:1.875rem;}.elementor-kit-91308 h3{font-size:1.5rem;}.elementor-kit-91308 h4{font-size:1.25rem;}.elementor-kit-91308 h5{font-size:1.125rem;}.elementor-kit-91308 h6{font-size:1.0625rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:680px;}.e-con{--container-max-width:680px;}}:root { --wec-font-sans:Inter; --wec-font-display:Barlow Condensed; --wec-leading-none:1em; --wec-leading-tight:1.2em; --wec-leading-snug:1.35em; --wec-leading-normal:1.5em; --wec-leading-relaxed:1.7em; --wec-leading-loose:2em; --wec-leading-4:16px; --wec-leading-5:20px; --wec-leading-6:24px; --wec-leading-7:28px; --wec-leading-8:32px; --wec-leading-9:36px; --wec-leading-heading-none:60px; --wec-font-weight-normal:px; --wec-font-weight-medium:px; --wec-font-weight-semibold:px; --wec-font-weight-bold:px; --wec-text-xs:0.75rem; --wec-text-xs--line-height:1.3333em; --wec-text-sm:0.875rem; --wec-text-sm--line-height:1.4286em; --wec-text-base:1rem; --wec-text-base--line-height:1.5em; --wec-text-lg:1.125rem; --wec-text-lg--line-height:1.5556em; --wec-text-xl:1.25rem; --wec-text-xl--line-height:1.4em; --wec-text-2xl:1.5rem; --wec-text-2xl--line-height:1.3333em; --wec-text-3xl:1.875rem; --wec-text-3xl--line-height:1.2em; --wec-text-4xl:2.25rem; --wec-text-4xl--line-height:1.1111em; --wec-text-5xl:3rem; --wec-text-5xl--line-height:1em; --wec-color-primary-50:#f6f6f6; --wec-color-primary-100:#e4e4e4; --wec-color-primary-200:#c1c0c0; --wec-color-primary-300:#959393; --wec-color-primary-400:#656262; --wec-color-primary-500:#3d393a; --wec-color-primary-600:#231f20; --wec-color-primary-700:#1f1b1d; --wec-color-primary-800:#1a181a; --wec-color-primary-900:#171518; --wec-color-primary-950:#141317; --wec-color-accent-50:#fef6f7; --wec-color-accent-100:#fce5e7; --wec-color-accent-200:#f9c4c8; --wec-color-accent-300:#f59aa1; --wec-color-accent-400:#f16c76; --wec-color-accent-500:#ee4753; --wec-color-accent-600:#ec2e3c; --wec-color-accent-700:#bf2734; --wec-color-accent-800:#8f202b; --wec-color-accent-900:#671b24; --wec-color-accent-950:#48171e; --wec-color-fg-brand-subtle:#c1c0c0; --wec-color-fg-brand:#1f1b1d; --wec-color-fg-brand-strong:#171518; --wec-color-brand-softer:#f6f6f6; --wec-color-brand-soft:#e4e4e4; --wec-color-brand:#1f1b1d; --wec-color-brand-medium:#c1c0c0; --wec-color-brand-strong:#1a181a; --wec-color-brand-subtle:#c1c0c0; --wec-color-brand-light:#231f20; --wec-color-fg-brand-accent-subtle:#f9c4c8; --wec-color-fg-brand-accent:#bf2734; --wec-color-fg-brand-accent-strong:#671b24; --wec-color-brand-accent-softer:#fef6f7; --wec-color-brand-accent-soft:#fce5e7; --wec-color-brand-accent:#bf2734; --wec-color-brand-accent-medium:#f9c4c8; --wec-color-brand-accent-strong:#8f202b; --wec-color-brand-accent-subtle:#f9c4c8; --wec-color-brand-accent-light:#ec2e3c; --wec-color-body:#4b5563; --wec-color-body-subtle:#6b7280; --wec-color-heading:#111827; --wec-color-default:#e5e7eb; --wec-color-default-medium:#e5e7eb; --wec-color-muted:#f9fafb; --wec-color-light:#f3f4f6; --wec-color-neutral-primary:#fff; --wec-color-neutral-primary-soft:#fff; --wec-color-neutral-secondary:#f9fafb; --wec-color-neutral-secondary-soft:#f9fafb; --wec-color-neutral-secondary-medium:#f9fafb; --wec-color-neutral-tertiary:#f3f4f6; --wec-color-neutral-tertiary-soft:#f3f4f6; --wec-color-neutral-tertiary-medium:#f3f4f6; --wec-color-neutral-quaternary:#e5e7eb; --wec-color-success:#047857; --wec-color-success-soft:#ecfdf5; --wec-color-success-medium:#d1fae5; --wec-color-success-strong:#065f46; --wec-color-danger:#be123c; --wec-color-danger-soft:#fff1f2; --wec-color-danger-medium:#ffe4e6; --wec-color-danger-strong:#9f1239; --wec-color-warning:#f97316; --wec-color-warning-soft:#fff7ed; --wec-color-warning-medium:#ffedd5; --wec-color-warning-strong:#c2410c; --wec-spacing-xs:0.25rem; --wec-spacing-sm:0.5rem; --wec-spacing-md:0.75rem; --wec-spacing-lg:1.25rem; --wec-spacing-xl:2rem; --wec-spacing-2xl:3rem; --wec-radius-xs:1px; --wec-radius-sm:2px; --wec-radius-md:3px; --wec-radius-lg:4px; --wec-radius-xl:4px; --wec-radius-2xl:6px; --wec-radius-control:4px; --wec-radius-surface:6px; --wec-topbar-visible:px; --wec-color-surface-header:#ffffff; --wec-color-text-header:#111827; --wec-color-border-header:#e5e7eb; --wec-color-surface-header-megamenu:#f9fafb; --wec-color-surface-header-hover:#f9fafb; --wec-color-text-header-hover:#111827; --wec-color-surface-header-active:#e4e4e4; --wec-color-text-header-active:#1f1b1d; --wec-color-focus-header:#1f1b1d; --wec-color-surface-footer:#1a181a; --wec-color-text-footer:#ffffff; --wec-color-surface-footer-hover:#1f1b1d; --wec-color-text-footer-hover:#ffffff; --wec-color-focus-footer:#ffffff; }
/* Start custom CSS *//* ================================================================
   MOLIX.COM - CSS Custom v3.0
   Elementor PRO v4 Atomic Editor
   Pro Tackles S.r.l. - RSoft - Maggio 2026

   NOTA IMPORTANTE - Selettori v4 Atomic:
   In Elementor v4 gli elementi usano classi proprie:
     h1.e-heading-base     (non dentro .elementor-widget-text-editor)
     p.e-paragraph-base
     button.e-button-base
     .e-con, .e-flexbox-base  (container)
   I selettori v3 (.elementor-widget-text-editor h1) non funzionano.
   ================================================================ */

/* ----------------------------------------------------------------
   SHADOW VARIABLES
   Non gestibili nel Variables Manager Elementor.
   ---------------------------------------------------------------- */
:root {
  --wec-shadow-xs:      0 1px 2px 0 rgb(0 0 0 / 0.05);
  --wec-shadow-sm:      0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --wec-shadow-md:      0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --wec-shadow-lg:      0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --wec-shadow-xl:      0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --wec-shadow-card:    0 10px 25px rgb(15 23 42 / 0.08);
  --wec-shadow-overlay: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --wec-shadow-control: 0 1px 2px 0 rgb(0 0 0 / 0.05);
}

/* ----------------------------------------------------------------
   DARK MODE
   Attivata dalla classe .dark applicata da webExpress.
   ---------------------------------------------------------------- */
.dark {
  --wec-color-body: #9ca3af;
  --wec-color-body-subtle: #9ca3af;
  --wec-color-heading: #ffffff;
  --wec-color-brand: #231f20;
  --wec-color-brand-strong: #1f1b1d;
  --wec-color-brand-softer: #141317;
  --wec-color-brand-soft: #171518;
  --wec-color-brand-medium: #171518;
  --wec-color-fg-brand: #3d393a;
  --wec-color-fg-brand-strong: #656262;
  --wec-color-brand-accent: #ec2e3c;
  --wec-color-brand-accent-strong: #bf2734;
  --wec-color-neutral-primary: #030712;
  --wec-color-neutral-secondary-medium: #1f2937;
  --wec-color-neutral-tertiary: #1f2937;
  --wec-color-default: #1f2937;
  --wec-color-default-medium: #374151;
  --wec-color-surface-header: #e5e7eb;
  --wec-color-text-header: #ffffff;
  --wec-color-surface-footer: #1a181a;
  --wec-color-text-footer: #ffffff;
  --wec-color-surface-footer-hover: #1a181a;
  --wec-color-text-footer-hover: #ffffff;
}

/* ----------------------------------------------------------------
   BASE FONT-SIZE - scala rem allineata a Tailwind (1rem = 16px)
   ---------------------------------------------------------------- */
html { font-size: 16px; }
@media (max-width: 1024px) { html { font-size: 15px; } }
@media (max-width: 767px)  { html { font-size: 15px; } }

/* ----------------------------------------------------------------
   SMOOTH SCROLL + FOCUS WCAG 2.1 AA
   ---------------------------------------------------------------- */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

*:focus-visible {
  outline: 3px solid var(--wec-color-brand-accent, #bf2734);
  outline-offset: 2px;
  border-radius: var(--wec-radius-sm, 2px);
}

/* ----------------------------------------------------------------
   TIPOGRAFIA - Elementor v4 Atomic
   Selettori corretti per il DOM generato da Elementor v4:
     h1.e-heading-base, h2.e-heading-base, ecc.
     p.e-paragraph-base
   Il Theme Style imposta font, size e colore base.
   Qui gestiamo spaziatura verticale e override necessari.
   ---------------------------------------------------------------- */

/* Headings - spaziatura verticale */
/* FIX BUG-006 Elementor v4 - stesso pattern di BUG-001
   Elementor azzera tutti i margini degli Atomic Elements con:
   .elementor .e-heading-base { margin: 0px }
   Forziamo con stessa specificita + !important.
   Rimuovere !important quando Elementor rilascia la fix ufficiale. */
.elementor h1.e-heading-base,
 .elementor h1.elementor-heading-title 
{
  margin-top: 0 !important;
  margin-bottom: 1.5rem !important;
}

.elementor h2.e-heading-base,
 .elementor h2.elementor-heading-title  {
  margin-bottom: 1rem !important;
}

.elementor h3.e-heading-base,
 .elementor h3.elementor-heading-title  {
  margin-bottom: 0.75rem !important;
}

.elementor h4.e-heading-base,
 .elementor h4.elementor-heading-title  {
  margin-bottom: 0.5rem !important;
}

.elementor h5.e-heading-base,
.elementor h6.e-heading-base,
 .elementor h5.elementor-heading-title,
 .elementor h6.elementor-heading-title   {
  margin-bottom: 0.5rem !important;
}

/* Heading consecutivi: riduci spazio sopra */
.elementor h1.e-heading-base + h2.e-heading-base,
.elementor h2.e-heading-base + h3.e-heading-base,
.elementor h3.e-heading-base + h4.e-heading-base {
  margin-top: 0.5rem !important;
}

/* Paragrafi */
/* FIX BUG Elementor v4 - GitHub Issue #33477
   Elementor azzera i margini con .elementor .e-paragraph-base { margin: 0px }
   e poi non applica correttamente i margini custom sul frontend.
   Forziamo con specificita maggiore (.elementor .e-paragraph-base) + !important */
.elementor p.e-paragraph-base  {
  margin-top: 0 !important;
  margin-bottom: 1.25rem !important;
}

.elementor p.e-paragraph-base:last-child {
  margin-bottom: 0 !important;
}

/* Selettore senza !important come fallback per contesti fuori .elementor */
p.e-paragraph-base {
  margin-top: 0;
  margin-bottom: 1.25rem;
}

p.e-paragraph-base:last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
   HEADING v3 LEGACY - .elementor-heading-title
   Classe applicata da Elementor ai widget Heading v3.
   Presente nelle pagine che usano ancora widget v3 o template
   importati da versioni precedenti di Elementor.
   ---------------------------------------------------------------- */


/* Spaziatura tra widget Heading v3 consecutivi */
.elementor .elementor-widget-heading {
  margin-bottom: 0.5rem;
}

.elementor .elementor-widget-heading + .elementor-widget-heading {
  margin-top: 0;
}

/* ----------------------------------------------------------------
   SPAZIATURA AREE HTML LIBERE - v3 legacy e blog
   Necessario per widget Text Editor v3, Post Content, WooCommerce.
   Elementor v4 usa .e-heading-base (sopra), ma alcuni widget
   vecchi e plugin terzi usano ancora il markup HTML semplice
   dentro questi wrapper.
   ---------------------------------------------------------------- */
.elementor-widget-text-editor h1,
.entry-content h1 { margin-top: 0;      margin-bottom: 1.5rem; }

.elementor-widget-text-editor h2,
.entry-content h2 {  margin-bottom: 1rem; }

.elementor-widget-text-editor h3,
.entry-content h3 {margin-bottom: 0.75rem; }

.elementor-widget-text-editor h4,
.entry-content h4 {margin-bottom: 0.5rem; }

.elementor-widget-text-editor h5,
.elementor-widget-text-editor h6,
.entry-content h5,
.entry-content h6  { margin-bottom: 0.5rem; }

.elementor-widget-text-editor h1 + h2,
.elementor-widget-text-editor h2 + h3,
.entry-content h1 + h2,
.entry-content h2 + h3 { margin-top: 0.5rem; }

.elementor-widget-text-editor p,
.entry-content p { margin-top: 0; margin-bottom: 1.25rem !important; }

.elementor-widget-text-editor p:last-child,
.entry-content p:last-child { margin-bottom: 0; }

.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol,
.entry-content ul,
.entry-content ol {
  margin-top: 0;
  margin-bottom: 1.25rem;
  padding-left: 1.5em;
}

.elementor-widget-text-editor li,
.entry-content li { margin-bottom: 0.4rem; }

.elementor-widget-text-editor li:last-child,
.entry-content li:last-child { margin-bottom: 0; }

.elementor-widget-text-editor blockquote,
.entry-content blockquote {
  margin: 1.5rem 0;
  padding: 1rem 1.5rem;
  border-left: 3px solid var(--wec-color-brand-accent-light, #ec2e3c);
  background: var(--wec-color-brand-accent-softer, #fef6f7);
  color: var(--wec-color-body, #4b5563);
  font-style: italic;
  border-radius: 0 var(--wec-radius-lg, 4px) var(--wec-radius-lg, 4px) 0;
}

.elementor-widget-text-editor hr,
.entry-content hr {
  margin: 2rem 0;
  border: none;
  border-top: 1px solid var(--wec-color-default, #e5e7eb);
}

/* ----------------------------------------------------------------
   FIX BADGE + EYEBROW
   Elementor impone max-width sui widget che rompe il pill pattern.
   ---------------------------------------------------------------- */
.wec-badge,
.wec-eyebrow.pill {
  max-width: fit-content !important;
}

/* ----------------------------------------------------------------
   CONTAINER v4 - gap di default
   I container e-con e e-flexbox-base in Elementor v4 Atomic
   non hanno gap di default. Lo impostiamo qui come base.
   Sovrascrivibile con classi v-section-* e v-layout-*.
   ---------------------------------------------------------------- */
.e-con.e-flexbox-base > *,
.e-con > * {
  margin-bottom: 0; /* il gap è gestito da flex gap, non margin */
}/* End custom CSS */