.elementor-kit-6{--e-global-color-primary:#38221F;--e-global-color-secondary:#07556F;--e-global-color-text:#38221FCC;--e-global-color-accent:#F4C94A;--e-global-color-mfcream:#FFF8EA;--e-global-color-mfwarmwhite:#FCFAF4;--e-global-color-mfblue:#1688B5;--e-global-color-mfturquoise:#49B7C5;--e-global-color-mfcoral:#E98C91;--e-global-color-mfbrown64:#38221FA3;--e-global-color-mfbrown12:#38221F1F;--e-global-color-mfbrown06:#38221F0F;--e-global-color-mfblue10:#1688B51A;--e-global-color-mfsky:#E6F3F7;--e-global-color-mflemonsoft:#FCEFC7;--e-global-color-mflemonhover:#EDBB2E;--e-global-color-mfdeephover:#05465C;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-size:clamp(2.125rem, 1.73rem + 1.69vw, 3.25rem);--e-global-typography-primary-font-weight:500;--e-global-typography-primary-line-height:1.08em;--e-global-typography-primary-letter-spacing:-0.005em;--e-global-typography-secondary-font-family:"Manrope";--e-global-typography-secondary-font-size:clamp(0.75rem, 0.73rem + 0.09vw, 0.8125rem);--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-line-height:1.4em;--e-global-typography-secondary-letter-spacing:0.24em;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-size:clamp(1rem, 0.98rem + 0.09vw, 1.0625rem);--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-size:0.875rem;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0.06em;--e-global-typography-mfdisplay-font-family:"Cormorant Garamond";--e-global-typography-mfdisplay-font-size:clamp(3rem, 2.12rem + 3.76vw, 5.5rem);--e-global-typography-mfdisplay-font-weight:500;--e-global-typography-mfdisplay-line-height:1.02em;--e-global-typography-mfdisplay-letter-spacing:-0.015em;--e-global-typography-mfh1-font-family:"Cormorant Garamond";--e-global-typography-mfh1-font-size:clamp(2.625rem, 1.97rem + 2.82vw, 4.5rem);--e-global-typography-mfh1-font-weight:500;--e-global-typography-mfh1-line-height:1.04em;--e-global-typography-mfh1-letter-spacing:-0.01em;--e-global-typography-mfh3-font-family:"Cormorant Garamond";--e-global-typography-mfh3-font-size:clamp(1.625rem, 1.49rem + 0.56vw, 2rem);--e-global-typography-mfh3-font-weight:600;--e-global-typography-mfh3-line-height:1.15em;--e-global-typography-mfh4-font-family:"Manrope";--e-global-typography-mfh4-font-size:clamp(1.125rem, 1.08rem + 0.19vw, 1.25rem);--e-global-typography-mfh4-font-weight:600;--e-global-typography-mfh4-line-height:1.3em;--e-global-typography-mflead-font-family:"Manrope";--e-global-typography-mflead-font-size:clamp(1.125rem, 1.08rem + 0.19vw, 1.25rem);--e-global-typography-mflead-font-weight:400;--e-global-typography-mflead-line-height:1.6em;--e-global-typography-mfsmall-font-family:"Manrope";--e-global-typography-mfsmall-font-size:0.875rem;--e-global-typography-mfsmall-font-weight:400;--e-global-typography-mfsmall-line-height:1.55em;--e-global-typography-mflabel-font-family:"Manrope";--e-global-typography-mflabel-font-size:0.875rem;--e-global-typography-mflabel-font-weight:600;--e-global-typography-mflabel-line-height:1.4em;--e-global-typography-mfnav-font-family:"Manrope";--e-global-typography-mfnav-font-size:0.9375rem;--e-global-typography-mfnav-font-weight:500;--e-global-typography-mfnav-line-height:1.4em;--e-global-typography-mfquote-font-family:"Cormorant Garamond";--e-global-typography-mfquote-font-size:clamp(1.375rem, 1.23rem + 0.63vw, 1.75rem);--e-global-typography-mfquote-font-weight:500;--e-global-typography-mfquote-font-style:italic;--e-global-typography-mfquote-line-height:1.35em;background-color:var( --e-global-color-mfcream );color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-primary );border-style:solid;border-width:1.5px 1.5px 1.5px 1.5px;border-color:var( --e-global-color-accent );border-radius:4px 4px 4px 4px;padding:16px 24px 16px 24px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:var( --e-global-color-mflemonhover );color:var( --e-global-color-primary );box-shadow:0px 6px 16px 0px rgba(56,34,31,0.07);border-style:solid;border-width:1.5px 1.5px 1.5px 1.5px;border-color:var( --e-global-color-mflemonhover );border-radius:4px 4px 4px 4px;}.elementor-kit-6 e-page-transition{background-color:var( --e-global-color-mfcream );}.elementor-kit-6 a{color:var( --e-global-color-secondary );}.elementor-kit-6 a:hover{color:var( --e-global-color-mfdeephover );}.elementor-kit-6 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-mfh1-font-family ), Sans-serif;font-size:var( --e-global-typography-mfh1-font-size );font-weight:var( --e-global-typography-mfh1-font-weight );line-height:var( --e-global-typography-mfh1-line-height );letter-spacing:var( --e-global-typography-mfh1-letter-spacing );}.elementor-kit-6 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-mfh3-font-family ), Sans-serif;font-size:var( --e-global-typography-mfh3-font-size );font-weight:var( --e-global-typography-mfh3-font-weight );line-height:var( --e-global-typography-mfh3-line-height );}.elementor-kit-6 h4{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-mfh4-font-family ), Sans-serif;font-size:var( --e-global-typography-mfh4-font-size );font-weight:var( --e-global-typography-mfh4-font-weight );line-height:var( --e-global-typography-mfh4-line-height );}.elementor-kit-6 h5{color:var( --e-global-color-primary );font-family:var( --e-global-typography-mfh4-font-family ), Sans-serif;font-size:var( --e-global-typography-mfh4-font-size );font-weight:var( --e-global-typography-mfh4-font-weight );line-height:var( --e-global-typography-mfh4-line-height );}.elementor-kit-6 h6{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-6 img{border-radius:0px 0px 0px 0px;opacity:1;transition-duration:0.6s;}.elementor-kit-6 img:hover{opacity:1;}.elementor-kit-6 label{color:var( --e-global-color-primary );font-family:var( --e-global-typography-mflabel-font-family ), Sans-serif;font-size:var( --e-global-typography-mflabel-font-size );font-weight:var( --e-global-typography-mflabel-font-weight );line-height:var( --e-global-typography-mflabel-line-height );}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-primary );accent-color:var( --e-global-color-secondary );background-color:var( --e-global-color-mfwarmwhite );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-mfbrown12 );border-radius:2px 2px 2px 2px;transition:150ms;padding:14px 16px 14px 16px;}.elementor-kit-6 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea:focus,.elementor-kit-6 .elementor-field-textual:focus{color:var( --e-global-color-primary );accent-color:var( --e-global-color-secondary );background-color:var( --e-global-color-mfwarmwhite );box-shadow:0px 0px 0px 3px rgba(22,136,181,0.10);border-style:solid;border-width:1.5px 1.5px 1.5px 1.5px;border-color:var( --e-global-color-mfblue );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--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:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title, .wp-block-post-title{display:var(--page-title-display);}.elementor-lightbox{background-color:var( --e-global-color-mfcream );--lightbox-ui-color:var( --e-global-color-primary );--lightbox-ui-color-hover:var( --e-global-color-secondary );--lightbox-text-color:var( --e-global-color-primary );}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1279px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 h1{font-size:var( --e-global-typography-mfh1-font-size );line-height:var( --e-global-typography-mfh1-line-height );letter-spacing:var( --e-global-typography-mfh1-letter-spacing );}.elementor-kit-6 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h3{font-size:var( --e-global-typography-mfh3-font-size );line-height:var( --e-global-typography-mfh3-line-height );}.elementor-kit-6 h4{font-size:var( --e-global-typography-mfh4-font-size );line-height:var( --e-global-typography-mfh4-line-height );}.elementor-kit-6 h5{font-size:var( --e-global-typography-mfh4-font-size );line-height:var( --e-global-typography-mfh4-line-height );}.elementor-kit-6 h6{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-6 label{font-size:var( --e-global-typography-mflabel-font-size );line-height:var( --e-global-typography-mflabel-line-height );}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:1023px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 h1{font-size:var( --e-global-typography-mfh1-font-size );line-height:var( --e-global-typography-mfh1-line-height );letter-spacing:var( --e-global-typography-mfh1-letter-spacing );}.elementor-kit-6 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h3{font-size:var( --e-global-typography-mfh3-font-size );line-height:var( --e-global-typography-mfh3-line-height );}.elementor-kit-6 h4{font-size:var( --e-global-typography-mfh4-font-size );line-height:var( --e-global-typography-mfh4-line-height );}.elementor-kit-6 h5{font-size:var( --e-global-typography-mfh4-font-size );line-height:var( --e-global-typography-mfh4-line-height );}.elementor-kit-6 h6{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-6 label{font-size:var( --e-global-typography-mflabel-font-size );line-height:var( --e-global-typography-mflabel-line-height );}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 h1{font-size:var( --e-global-typography-mfh1-font-size );line-height:var( --e-global-typography-mfh1-line-height );letter-spacing:var( --e-global-typography-mfh1-letter-spacing );}.elementor-kit-6 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h3{font-size:var( --e-global-typography-mfh3-font-size );line-height:var( --e-global-typography-mfh3-line-height );}.elementor-kit-6 h4{font-size:var( --e-global-typography-mfh4-font-size );line-height:var( --e-global-typography-mfh4-line-height );}.elementor-kit-6 h5{font-size:var( --e-global-typography-mfh4-font-size );line-height:var( --e-global-typography-mfh4-line-height );}.elementor-kit-6 h6{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-6 label{font-size:var( --e-global-typography-mflabel-font-size );line-height:var( --e-global-typography-mflabel-line-height );}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ===============================================================
   Ristorante Mustafà · Design System v1.0 (design-system.md)
   Solo ciò che Elementor non gestisce nativamente.
   Colori: sempre var(--e-global-color-*) del Kit, mai HEX.
   Tipografia: sempre Global Fonts del Kit.
   ========================================================= */

/* 1 · Token non disponibili come controlli nativi (§5, §6, §7, §8, §16) */
:root {
  --mf-gutter: clamp(1rem, 0.5rem + 2.5vw, 2.5rem);
  --mf-container-narrow: 760px;
  --mf-container-wide: 1440px;

  --mf-space-1: 0.25rem;
  --mf-space-2: 0.5rem;
  --mf-space-3: 0.75rem;
  --mf-space-4: 1rem;
  --mf-space-5: 1.5rem;
  --mf-space-6: 2rem;
  --mf-space-7: 3rem;
  --mf-space-8: 4rem;
  --mf-space-9: 6rem;
  --mf-space-10: 8rem;
  --mf-space-11: 10rem;
  --mf-section-y: clamp(4rem, 2.8rem + 5vw, 8rem);
  --mf-section-y-sm: clamp(3rem, 2.4rem + 2.5vw, 5rem);
  --mf-section-y-lg: clamp(5rem, 3.6rem + 6vw, 10rem);

  --mf-radius-xs: 2px;
  --mf-radius-sm: 4px;
  --mf-radius-md: 8px;
  --mf-radius-lg: 16px;
  --mf-radius-pill: 999px;

  --mf-shadow-xs: 0 1px 2px rgba(56, 34, 31, 0.05);
  --mf-shadow-sm: 0 2px 4px rgba(56, 34, 31, 0.05), 0 6px 16px rgba(56, 34, 31, 0.07);
  --mf-shadow-md: 0 4px 8px rgba(56, 34, 31, 0.05), 0 16px 32px rgba(56, 34, 31, 0.08);
  --mf-focus-ring: 0 0 0 3px var(--e-global-color-mfcream), 0 0 0 5px var(--e-global-color-secondary);

  --mf-dur-fast: 150ms;
  --mf-dur-base: 250ms;
  --mf-dur-slow: 600ms;
  --mf-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* 2 · Gutter laterale solo sui container di primo livello (§5).
   Il padding di default del Kit è 0, così i container annidati non sommano margini. */
.e-con.e-parent {
  --container-default-padding-left: var(--mf-gutter);
  --container-default-padding-right: var(--mf-gutter);
}

/* 3 · Selezione testo e focus da tastiera (§3.3, §4) */
::selection { background: var(--e-global-color-accent); color: var(--e-global-color-primary); }
a:focus-visible,
.elementor-button:focus-visible { outline: none; box-shadow: var(--mf-focus-ring); border-radius: var(--mf-radius-xs); }

/* 4 · Link nel testo corrente (§4) */
.elementor-widget-text-editor a {
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: var(--e-global-color-mfblue);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25em;
  transition: text-decoration-thickness var(--mf-dur-fast) var(--mf-ease);
}
.elementor-widget-text-editor a:hover { text-decoration-thickness: 2px; }

/* 5 · Bottoni: il Kit definisce la variante Primary (giallo).
   Varianti da assegnare al widget Pulsante in Avanzate > Classi CSS (§3.1, §3.2). */
.elementor-button { transition: background-color var(--mf-dur-base) var(--mf-ease), border-color var(--mf-dur-base) var(--mf-ease), color var(--mf-dur-base) var(--mf-ease), box-shadow var(--mf-dur-base) var(--mf-ease), transform var(--mf-dur-base) var(--mf-ease); }
.elementor-button:hover { transform: translateY(-1px); }
.elementor-button:active { transform: translateY(0); box-shadow: none; }
.elementor-button .elementor-button-icon svg { fill: currentColor; }
.elementor-button .elementor-button-icon { transition: transform var(--mf-dur-base) var(--mf-ease); }
.elementor-button:hover .elementor-button-icon { transform: translateX(4px); }

.mf-btn--secondary .elementor-button { background-color: var(--e-global-color-secondary); border-color: var(--e-global-color-secondary); color: var(--e-global-color-mfcream); }
.mf-btn--secondary .elementor-button:hover,
.mf-btn--secondary .elementor-button:focus { background-color: var(--e-global-color-mfdeephover); border-color: var(--e-global-color-mfdeephover); color: var(--e-global-color-mfcream); }

.mf-btn--outline .elementor-button { background-color: transparent; border-color: var(--e-global-color-mfblue); color: var(--e-global-color-secondary); }
.mf-btn--outline .elementor-button:hover,
.mf-btn--outline .elementor-button:focus { background-color: var(--e-global-color-mfblue10); border-color: var(--e-global-color-secondary); color: var(--e-global-color-secondary); box-shadow: none; transform: none; }

.mf-btn--outline-light .elementor-button { background-color: transparent; border-color: var(--e-global-color-mfcream); color: var(--e-global-color-mfcream); }
.mf-btn--outline-light .elementor-button:hover,
.mf-btn--outline-light .elementor-button:focus { background-color: var(--e-global-color-mfcream); border-color: var(--e-global-color-mfcream); color: var(--e-global-color-secondary); box-shadow: none; transform: none; }

.mf-btn--text .elementor-button { background-color: transparent; border-color: transparent; color: var(--e-global-color-secondary); padding: var(--mf-space-1) 0; border-radius: 0; box-shadow: none; }
.mf-btn--text .elementor-button:hover,
.mf-btn--text .elementor-button:focus { background-color: transparent; border-color: transparent; color: var(--e-global-color-secondary); box-shadow: inset 0 -2px 0 var(--e-global-color-accent); transform: none; }

.mf-btn--sm .elementor-button { padding: 12px 18px; }
.mf-btn--lg .elementor-button { padding: 20px 32px; }
.mf-btn--block .elementor-button { width: 100%; }

/* 6 · Immagini: zoom leggero su card e gallery (§9, §17). Classe sul widget o sul container */
.mf-img-zoom { overflow: hidden; }
.mf-img-zoom img { transition: transform var(--mf-dur-slow) var(--mf-ease); }
.mf-img-zoom:hover img { transform: scale(1.03); }

/* 7 · Dispositivi touch e movimento ridotto (§16, §17) */
@media (hover: none) {
  .elementor-button:hover, .mf-img-zoom:hover img { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}


/* 8 · Componente riutilizzabile: Annuncio stagionale (template 'Annuncio stagionale').
   Per cambiare stato basta sostituire la classe del container principale:
   mf-season--open (apertura) oppure mf-season--closed (chiusura). */
.mf-season--open .mf-season__closed,
.mf-season--closed .mf-season__open { display: none !important; }

/* 9 · Decorazione onde (HTML widget con SVG, colori dal Kit) */
.mf-waves-deco { pointer-events: none; }
.mf-waves-deco svg { display: block; width: 100%; height: auto; }

/* 10 · Animazioni d'ingresso leggere (Motion effects di Elementor: Fade In / Fade In Up, durata "Veloce") */
@keyframes mfFadeUp { from { opacity: 0; transform: translate3d(0, 24px, 0); } to { opacity: 1; transform: none; } }
.elementor-element.animated.fadeInUp { animation-name: mfFadeUp; }
.elementor-element.animated.animated-fast { animation-duration: calc(var(--mf-dur-base) * 2); animation-timing-function: var(--mf-ease); }

/* 11 · Ancore: spazio per l'header sticky */
.e-con[id] { scroll-margin-top: 136px; }
@media (max-width: 1023px) { .e-con[id] { scroll-margin-top: 96px; } }

/* 13 · Form (widget Modulo di Elementor Pro, classe mf-form): focus visibile e checkbox piu grande */
.mf-form .elementor-field-group .elementor-field:focus,
.mf-form .elementor-field-group .elementor-field:focus-visible { outline: none; border-color: var(--e-global-color-secondary); box-shadow: var(--mf-focus-ring); }
.mf-form .elementor-field-type-acceptance input[type=checkbox] { width: 20px; height: 20px; accent-color: var(--e-global-color-secondary); margin-top: 2px; flex-shrink: 0; }
.mf-form .elementor-field-type-acceptance .elementor-field-option { display: flex; gap: 10px; align-items: flex-start; }
.mf-form .elementor-field-textual { min-height: 48px; }
.mf-form .mf-form-note { margin: 0; }

/* 14 · Pagine legali (classe mf-legal sul widget Testo) */
.mf-legal h2 { font-family: var(--e-global-typography-mfh3-font-family), serif; font-size: var(--e-global-typography-mfh3-font-size); font-weight: var(--e-global-typography-mfh3-font-weight); line-height: 1.25; color: var(--e-global-color-secondary); margin: 2.25rem 0 0.75rem; }
.mf-legal ul { padding-left: 1.25rem; }

/* 15 · Selettore lingua (widget Polylang, classe mf-lang): bandiere IT/EN nell'header */
.mf-lang .cpel-switcher__lang a { font-family: var(--e-global-typography-mfnav-font-family), sans-serif; font-size: 0.8125rem; font-weight: 600; letter-spacing: 0.04em; opacity: 0.55; transition: opacity 0.2s ease; }
.mf-lang .cpel-switcher__lang a:hover, .mf-lang .cpel-switcher__lang a:focus-visible, .mf-lang .cpel-switcher__lang--active a { opacity: 1; }
.mf-lang .cpel-switcher__flag img { border-radius: 2px; box-shadow: 0 0 0 1px rgba(56,34,31,0.12); }
@media (max-width: 767px) { .mf-lang .cpel-switcher__code { display: none; } }
@media (max-width: 420px) { .mf-lang .cpel-switcher__lang--active { display: none; } }/* End custom CSS */