
:root {
    --inox-primary: #a10412;
    --inox-primary-action: #dc3935;
    --inox-primary-container: #c42727;
    --inox-on-primary: #ffffff;
    --inox-secondary: #9e403a;
    --inox-secondary-container: #fd8a80;
    --inox-on-secondary: #ffffff;
    --inox-tertiary: #00547b;
    --inox-tertiary-container: #006d9e;
    --inox-on-tertiary: #ffffff;
    --inox-bg: #fff8f7;
    --inox-surface: #fff8f7;
    --inox-surface-low: #fff0ee;
    --inox-surface-container: #ffe9e6;
    --inox-surface-high: #ffe2de;
    --inox-surface-highest: #f9dcd8;
    --inox-surface-white: #ffffff;
    --inox-surface-dim: #f0d4d0;
    --inox-surface-dark: #3e2c2a;
    --inox-text: #271816;
    --inox-text-muted: #5b403d;
    --inox-text-on-dark: #ffedea;
    --inox-outline: #8f706c;
    --inox-outline-variant: #e3beba;
    --inox-font-head: "Hanken Grotesk", sans-serif;
    --inox-font-body: "Inter", sans-serif;
    --inox-radius-sm: 0.25rem;
    --inox-radius: 0.5rem;
    --inox-radius-md: 0.75rem;
    --inox-radius-lg: 1rem;
    --inox-radius-xl: 1.5rem;
    --inox-radius-full: 9999px;
    --inox-shadow-card: 0px 10px 30px rgba(137,114,111,0.08);
    --inox-shadow-hover: 0px 20px 50px rgba(137,114,111,0.16);
    --inox-container-max: 1200px;
    --inox-container-wide: 1400px;
    --inox-container-narrow: 860px;
}
.inox-widget { box-sizing: border-box; }
.inox-widget *, .inox-widget *::before, .inox-widget *::after { box-sizing: inherit; }
.inox-headline-md { font-family: var(--inox-font-head); font-size: clamp(24px,3.5vw,40px); font-weight:800; line-height:1.1; color:var(--inox-text); }
.inox-headline-sm { font-family: var(--inox-font-head); font-size: clamp(18px,2.5vw,28px); font-weight:700; line-height:1.2; color:var(--inox-text); }
.inox-label-caps  { font-family: var(--inox-font-body); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--inox-primary-action); }

/* Override Elementor flexbox */
.elementor-widget-catpro_product_detail,
.elementor-widget-catpro_product_specs,
.elementor-widget-catpro_product_related,
.elementor-widget-catpro_product_comparatore,
.elementor .e-flexbox-base:has(.inox-pd-inner),
.elementor .e-flexbox-base:has(.inox-ps-wrap),
.elementor .e-flexbox-base:has(.inox-rp-inner),
.elementor .e-flexbox-base:has(.inox-co-inner) {
    display: block !important;
    padding: 0 !important;
}
/* Rimuove eventuale padding orizzontale enorme impostato per errore nel tab Avanzate
   di Elementor sul contenitore del widget (es. 400px sx/dx che restringe il layout
   a una colonna stretta con enormi margini bianchi). Il padding interno è già
   gestito dai widget stessi (.inox-pd-inner, .inox-rp-inner, ecc). */
.elementor-widget-catpro_product_detail > .elementor-widget-container,
.elementor-widget-catpro_product_specs > .elementor-widget-container,
.elementor-widget-catpro_product_related > .elementor-widget-container,
.elementor-widget-catpro_product_comparatore > .elementor-widget-container {
    padding: 0 !important;
}
