.elementor-kit-7{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.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:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --calce:#f1f0ef; --lino:#e8e6e3; --pietra:#dfddd9; --bianco:#ffffff; --nebbia:#f5f5f5; --notte:#1d2120; --grafite:#3b3f3e; --muschio:#545a58; --tufo:#ceccc2; --cenere:#9aa19e; --salvia:#53644d; --mattone:#8e4c4f; --ferro:#242222; --focus-ring:#53644d; --display:Instrument Serif; --serif:Cormorant Garamond; --sans:Barlow; --space-2:8px; --space-3:16px; --space-4:24px; --space-5:32px; --space-6:64px; --space-7:80px; --space-8:160px; --container:1280px; --text-col:400px; --text-wide:550px; --card-w:488px; --header-h:72px; --section-h:1080px; }
/* Start custom CSS *//* === Villa Lecci — design system globale === */
body { background-color: var(--calce); }

/* space-7: margine laterale pagina, 20px su mobile */
@media (max-width: 767px) { html:root { --space-7: 20px; } }

/* Selezione testo */
::selection { background-color: var(--salvia); color: var(--calce); }

/* Focus di default (specificità 0: le Classes lo sovrascrivono) */
:where(a, button, [role="button"], summary, .elementor-nav-menu a, .e-n-menu-title, .e-n-menu-toggle, .elementor-menu-toggle):focus-visible {
  outline: 2px solid var(--focus-ring);
  outline-offset: 2px;
}
:where(input, select, textarea):focus-visible { outline: none; }

/* Reveal: dissolvenza + 24px verso l'alto, 0.6s ease, allo scroll */
.reveal { transition: opacity 0.6s ease, transform 0.6s ease; }
html.vl-reveal-ready .reveal:not(.is-revealed) { opacity: 0; transform: translateY(24px); }

/* Nessun movimento con prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
  html.vl-reveal-ready .reveal:not(.is-revealed) { opacity: 1; transform: none; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    animation-delay: 0s !important;
    transition-duration: 0.01ms !important;
    transition-delay: 0s !important;
    scroll-behavior: auto !important;
  }
}/* End custom CSS */