/* GENERATO da scripts/genera-theme-json.py: non si modifica a mano, si rigenera. */
:root {
  --color-primary-500: #007FAE;
  --color-secondary-500: #FAB922;
  --color-accent-500: #6717FB;
  --color-neutral-500: #002E3D;
  --space-2xs: clamp(0.5000rem, 0.4560rem + 0.1878vw, 0.6250rem);
  --space-xs: clamp(0.7500rem, 0.6840rem + 0.2817vw, 0.9375rem);
  --space-s: clamp(1.0000rem, 0.9120rem + 0.3756vw, 1.2500rem);
  --space-m: clamp(1.5000rem, 1.3680rem + 0.5634vw, 1.8750rem);
  --space-l: clamp(2.0000rem, 1.8239rem + 0.7512vw, 2.5000rem);
  --space-xl: clamp(3.0000rem, 2.7359rem + 1.1268vw, 3.7500rem);
  --space-2xl: clamp(4.0000rem, 3.6479rem + 1.5023vw, 5.0000rem);
  --space-3xl: clamp(6.0000rem, 5.4718rem + 2.2535vw, 7.5000rem);
  --heading-lh: 1.1;
  --body-lh: 1.5;
  --text-4xl: clamp(3.0000rem, 1.9438rem + 4.5070vw, 6.0000rem);
  --text-3xl: clamp(2.5000rem, 1.8836rem + 2.6291vw, 4.2500rem);
  --text-2xl: clamp(2.0000rem, 1.6479rem + 1.5023vw, 3.0000rem);
  --text-xl: clamp(1.6875rem, 1.4014rem + 1.2207vw, 2.5000rem);
  --text-l: clamp(1.3750rem, 1.1989rem + 0.7512vw, 1.8750rem);
  --text-m: 1.25rem;
  --text-s: 1.00rem;
  --text-xs: clamp(0.7500rem, 0.7060rem + 0.1878vw, 0.8750rem);
  --color-white: #FFFFFF;
  --color-primary-100: color-mix(in oklch, var(--color-primary-500), white 90%);
  --color-primary-400: color-mix(in oklch, var(--color-primary-500), white 30%);
  --color-primary-600: color-mix(in oklch, var(--color-primary-500), black 20%);
  --color-primary-900: color-mix(in oklch, var(--color-primary-500), black 50%);
  --color-primary-700: color-mix(in oklch, var(--color-primary-500), black 35%);
  --color-primary-200: color-mix(in oklch, var(--color-primary-500), white 75%);
  --color-primary-300: color-mix(in oklch, var(--color-primary-500), white 50%);
  --color-primary-800: color-mix(in oklch, var(--color-primary-500), black 50%);
  --color-primary-950: color-mix(in oklch, var(--color-primary-500), black 80%);
  --color-secondary-100: color-mix(in oklch, var(--color-secondary-500), white 80%);
  --color-secondary-900: color-mix(in oklch, var(--color-secondary-500), black 50%);
  --color-accent-100: color-mix(in oklch, var(--color-accent-500), white 80%);
  --radius-none: 0px;
  --radius-s: 4px;
  --radius-m: 16px;
  --radius-l: 16px;
  --radius-full: 9999px;
  --shadow-soft: 0 1px 2px rgb(0 0 0 / 0.06), 0 2px 8px rgb(0 0 0 / 0.06);
  --shadow-raised: 0 2px 4px rgb(0 0 0 / 0.08), 0 8px 24px rgb(0 0 0 / 0.10);
  --grid-1: repeat(1, minmax(0, 1fr));
  --grid-2: repeat(2, minmax(0, 1fr));
  --grid-3: repeat(3, minmax(0, 1fr));
  --grid-4: repeat(4, minmax(0, 1fr));
  --grid-5: repeat(5, minmax(0, 1fr));
  --grid-6: repeat(6, minmax(0, 1fr));
  --grid-7: repeat(7, minmax(0, 1fr));
  --grid-8: repeat(8, minmax(0, 1fr));
  --grid-9: repeat(9, minmax(0, 1fr));
  --grid-10: repeat(10, minmax(0, 1fr));
  --grid-11: repeat(11, minmax(0, 1fr));
  --grid-12: repeat(12, minmax(0, 1fr));
  --grid-min: 18rem;
  --mw-tight: 35rem;
  --mw-normal: 60rem;
  --mw-wide: 82rem;
  --mw-full: 100%;
  --ratio-square: 1 / 1;
  --ratio-landscape: 4 / 3;
  --ratio-portrait: 3 / 4;
  --ratio-classic: 3 / 2;
  --ratio-classic-portrait: 2 / 3;
  --ratio-widescreen: 16 / 9;
  --ratio-ultrawide: 21 / 9;
  --ls-tight: -0.04em;
  --ls-normal: 0px;
  --ls-wide: 0.04em;
  --gradient-primary: linear-gradient(var(--gradient-primary-angle), var(--gradient-primary-step-1), var(--gradient-primary-step-2));
  --gradient-secondary: linear-gradient(var(--gradient-secondary-angle), var(--gradient-secondary-step-1), var(--gradient-secondary-step-2));
  --gradient-primary-step-1: var(--color-primary-500);
  --gradient-primary-step-2: var(--color-primary-100);
  --gradient-secondary-step-1: var(--color-secondary-500);
  --gradient-secondary-step-2: var(--color-secondary-100);
  --gradient-primary-angle: 90deg;
  --gradient-secondary-angle: 90deg;
  --text-color: var(--color-neutral-500);
  --text-color-white: var(--color-white);
  --text-color-primary: var(--color-primary-600);
  --text-color-on-primary: var(--color-white);
  --border-color-light: var(--color-primary-200);
  --border-color: var(--color-neutral-200);
  --icon-color-light: var(--color-secondary-500);
  --border-color-dark: var(--color-primary-900);
  --button-padding-lg: var(--space-xs) var(--space-l);
  --button-padding-md: var(--space-2xs) var(--space-m);
  --surface-light: var(--color-primary-100);
  --surface-dark: var(--color-primary-500);
  --bg-light: var(--color-primary-100);
  --bg-dark: var(--color-primary-500);
  --section-vertical: var(--space-2xl);
  --section-horizontal: var(--space-m);
  --container-horizontal: var(--space-m);
  --container-vertical: var(--space-xl);
  --container-gap: var(--space-xl);
  --grid-gap: var(--space-s);
  --content-gap: var(--space-s);
  --content-padding-l: var(--space-l);
  --content-padding-m: var(--space-m);
  --content-padding-s: var(--space-s);
  --button-secondary-bg: var(--color-secondary-500);
  --button-primary-bg: var(--color-primary-500);
  --duration-fast: 200ms;
  --duration-normal: 250ms;
  --duration-slow: 600ms;
  --ease-out: cubic-bezier(0.33, 1, 0.68, 1);
  --ease-entrance: cubic-bezier(0.22, 1, 0.36, 1);
  --z-below: -1;
  --z-base: 0;
  --z-raised: 10;
  --z-overlay: 100;
  --z-sticky: 500;
  --z-modal: 1000;
  --icon-size-small: 1.5rem;
  --icon-size-medium: 2rem;
  --icon-size-large: 3rem;
  --button-radius: var(--radius-m);
  --button-border-size: 1px;
  --button-border-color: var(--color-primary-500);
  --icon-color-dark: var(--color-primary-900);
  --icon-container-size: calc(var(--icon-size-small) * 1.0001);
  --span-1: span 1;
  --span-2: span 2;
  --span-3: span 3;
  --span-4: span 4;
  --color-accent-900: color-mix(in oklch, var(--color-accent-500), black 50%);
  --color-neutral-100: color-mix(in oklch, var(--color-neutral-500), white 80%);
  --color-neutral-200: color-mix(in oklch, var(--color-neutral-500), white 60%);
  --color-neutral-300: color-mix(in oklch, var(--color-neutral-500), white 15%);
  --color-neutral-900: color-mix(in oklch, var(--color-neutral-500), black 50%);
  --color-secondary-200: color-mix(in oklch, var(--color-secondary-500), white 75%);
  --color-secondary-300: color-mix(in oklch, var(--color-secondary-500), white 50%);
  --color-secondary-400: color-mix(in oklch, var(--color-secondary-500), white 30%);
  --color-secondary-700: color-mix(in oklch, var(--color-secondary-500), black 35%);
  --color-secondary-800: color-mix(in oklch, var(--color-secondary-500), black 50%);
  --color-secondary-950: color-mix(in oklch, var(--color-secondary-500), black 80%);
  --color-accent-200: color-mix(in oklch, var(--color-accent-500), white 75%);
  --color-accent-300: color-mix(in oklch, var(--color-accent-500), white 50%);
  --color-accent-400: color-mix(in oklch, var(--color-accent-500), white 30%);
  --color-accent-700: color-mix(in oklch, var(--color-accent-500), black 35%);
  --color-accent-800: color-mix(in oklch, var(--color-accent-500), black 50%);
  --color-accent-950: color-mix(in oklch, var(--color-accent-500), black 80%);
  --color-neutral-400: color-mix(in oklch, var(--color-neutral-500), white 25%);
  --color-neutral-700: color-mix(in oklch, var(--color-neutral-500), black 40%);
  --color-neutral-800: color-mix(in oklch, var(--color-neutral-500), black 60%);
  --color-neutral-950: color-mix(in oklch, var(--color-neutral-500), black 90%);
  --icon-container-padding: calc(var(--icon-size-small) * 0.5);
  --icon-container-color-light: var(--color-primary-100);
  --text-color-secondary: var(--color-secondary-500);
  --icon-container-color-dark: var(--color-secondary-500);
  --card-bg-dark: var(--color-primary-600);
  --card-bg-light: var(--color-white);
  --button-primary-bg-hover: var(--color-secondary-700);
  --button-bg-light: var(--color-white);
  --border-size: 1px;
  --surface-radius: var(--radius-m);
  --container-max-width: 85rem;
  --bg-darker: var(--color-primary-700);
  --mw-section-header: 40rem;
  --bg-image-primary: url("../wp-content/uploads/2026/08/dinsi-pattern-bianco.png");
  --bg-image-secondary: url();
  --bg-lighter: var(--color-white);
  --surface-lighter: var(--color-white);
  --surface-darker: var(--color-primary-700);
  --gradient-fade-primary: linear-gradient(90deg, var(--gradient-fade-primary-step-1) 30%, transparent 80%);
  --gradient-fade-secondary: linear-gradient(90deg, var(--gradient-fade-secondary-step-1) 60%, transparent 100%);
  --gradient-fade-opacity: .8;
  --gradient-fade-primary-step-1: var(--color-neutral-950);
  --gradient-fade-primary-step-2: ;
  --gradient-fade-secondary-step-1: var(--color-white);
  --gradient-fade-secondary-step-2: ;
  --icon-container-radius: var(--radius-full);
  --gradient-fade-opacity-thick: 1;
  --mw-extra-tight: 20rem;
  --bg-image-position: top 10% right 10%;
}
