:root,
[data-bs-theme=light],
[data-bs-theme=dark] {

    /* -----------------------------------------------------
       PALETTE PRINCIPALE OFFICINA225
       ----------------------------------------------------- */

    --bs-black: #1a1a1a;

    --bs-primary: #9c7f69;
    --bs-secondary: #b9c1ab;
    --bs-success: #b9c1ab;
    --bs-info: #6fc1bf;
    --bs-warning: #9c7f69;
    --bs-danger: #C74B42;
    --bs-light: #f6f2ea;
    --bs-dark: #212529;
    --bs-hero: #6e5a4e;

    /* RGB */
    --bs-primary-rgb: 156, 127, 105;
    --bs-secondary-rgb: 185, 193, 171;
    --bs-success-rgb: 185, 193, 171;
    --bs-info-rgb: 111, 193, 191;
    --bs-warning-rgb: 156, 127, 105;
    --bs-danger-rgb: 199, 75, 66;
    --bs-light-rgb: 246, 242, 234;
    --bs-dark-rgb: 33, 37, 41;
    --bs-hero-rgb: 110 90 78;

    /* -----------------------------------------------------
       GRAYS → allineo tutto alla tua palette calda
       ----------------------------------------------------- */
    --bs-gray: #8a8a8a;
    --bs-gray-dark: var(--bs-dark);

    --bs-gray-100: #f6f2ea;
    --bs-gray-200: #eae5dd;
    --bs-gray-300: #d8d3cc;
    --bs-gray-400: #c5beb7;
    --bs-gray-500: #a9a29a;
    --bs-gray-600: #7d756d;
    --bs-gray-700: #6b635c;
    --bs-gray-800: #5b534d;
    --bs-gray-900: #4a433e;

    /* -----------------------------------------------------
       BODY
       ----------------------------------------------------- */
    --bs-body-color: var(--bs-dark);
    --bs-body-color-rgb: var(--bs-dark-rgb);

    --bs-body-bg: #f6f2ea;
    --bs-body-bg-variant-1: #fdfbf6;
    --bs-body-bg-rgb: 246, 242, 234;

    --bs-heading-color: var(--bs-dark);

    /* -----------------------------------------------------
       LINKS
       ----------------------------------------------------- */
    --bs-link-color: #9c7f69;
    --bs-link-color-rgb: var(--bs-body-color-rgb);

    --bs-link-hover-color: #8a6f5d;
    --bs-link-hover-color-rgb: 138, 111, 93;

    /* -----------------------------------------------------
       STATE COLORS (Bootstrap uses these internally)
       ----------------------------------------------------- */
    --bs-primary-text-emphasis: #7b6353;
    --bs-secondary-text-emphasis: var(--bs-gray-100);

    --bs-success-text-emphasis: #7e9163;
    --bs-info-text-emphasis: #7b6353;
    --bs-warning-text-emphasis: #7b6353;
    --bs-danger-text-emphasis: #3a3a3a;

    /* subtle backgrounds */
    --bs-primary-bg-subtle: #e7dfd9;
    --bs-secondary-bg-subtle: #e4e7e0;
    --bs-success-bg-subtle: #e4e7e0;
    --bs-info-bg-subtle: #e7dfd9;
    --bs-warning-bg-subtle: #e7dfd9;
    --bs-danger-bg-subtle: #DB4437;

    /* subtle borders */
    --bs-primary-border-subtle: #d6c8bf;
    --bs-secondary-border-subtle: #d2d6ce;
    --bs-success-border-subtle: #d2d6ce;
    --bs-info-border-subtle: #d6c8bf;
    --bs-warning-border-subtle: #d6c8bf;
    --bs-danger-border-subtle: #c8c8c8;

    /* -----------------------------------------------------
       FONTS
       ----------------------------------------------------- */
    --bs-body-font-family: var(--body-font-family);
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;

    /* -----------------------------------------------------
       BORDERS
       ----------------------------------------------------- */
    --bs-border-color: #d6d2cd;
    --bs-border-color-translucent: rgba(var(--bs-dark-rgb), 0.15);

    --bs-border-radius: 0rem;
    --bs-border-radius-sm: 0rem;
    --bs-border-radius-lg: 0rem;
    --bs-border-radius-xl: 0rem;
    --bs-border-radius-xxl: 0rem;

    /* -----------------------------------------------------
       SHADOWS
       ----------------------------------------------------- */
    --bs-box-shadow: 0 0.5rem 1rem rgba(var(--bs-dark-rgb), 0.15);
    --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(var(--bs-dark-rgb), 0.075);
    --bs-box-shadow-lg: 0 1rem 3rem rgba(var(--bs-dark-rgb), 0.2);

    /* -----------------------------------------------------
       FOCUS RING
       ----------------------------------------------------- */
    --bs-focus-ring-color: rgba(156, 127, 105, 0.25);

    /* -----------------------------------------------------
       FORMS
       ----------------------------------------------------- */
    --placeholder-color: #b9c1ab;
    --placeholder-color-rgba: rgba(185, 193, 171, 0.89);

    --bs-form-valid-color: #b9c1ab;
    --bs-form-valid-border-color: #b9c1ab;
    --bs-form-invalid-color: var(--bs-dark);
    --bs-form-invalid-border-color: var(--bs-dark);

    /* === BODY TYPOGRAPHY VARIABLES === */
    --body-font-family: "Plus Jakarta Sans", Roboto, "Helvetica Neue", Arial, sans-serif;

    --body-font-size: 16px;
    --body-font-weight: 300; /* lighter => 300 */
    --body-text-color: var(--bs-body-color);
    --body-letter-spacing: 0.1em;
    --body-line-height: 1.8em;

    /* rendering & quality */
    --body-text-rendering: optimizeLegibility;
    --body-text-adjust: 100%;

    /* layout defaults */
    --body-flex-direction: column;

    /* FONT FAMILY TITLES */
    --heading-font-family: "Josefin Sans", Roboto, "Helvetica Neue", Arial, sans-serif;
    --heading-font-weight: 400;
    --heading-text-transform: uppercase;
    --heading-line-height: 1.33em;
    --heading-letter-spacing: 0;
    --heading-color: var(--bs-primary);

    /* Font-size dedicati (override Bootstrap) */
    --heading-h1-size: 2rem;
    --heading-h2-size: 1.8rem;
    --heading-h3-size: 1.6rem;
    --heading-h4-size: 1.5rem;
    --heading-h5-size: 1.4rem;
    --heading-h6-size: var(--bs-body-font-size);


    /* FONT FAMILY PARAGRAPH */
    --paragraph-font-size: 1rem;
    --paragraph-line-height: 1.6;
    --paragraph-opacity: .9;

    /* FONT FAMILY SCRIPT */
    --font-script: "The Gwathmey", serif;

    --bs-carousel-indicator-active-bg: var(--bs-dark);

    /* ACCORDION */
    --bs-accordion-active-bg: transparent !important;



    /* -----------------------------------------------------
   BACKGROUNDS
   ----------------------------------------------------- */
    --bs-primary-bg: var(--bs-primary);
    --bs-secondary-bg: var(--bs-secondary);
    --bs-success-bg: var(--bs-success);
    --bs-info-bg: var(--bs-info);
    --bs-warning-bg: var(--bs-warning);
    --bs-danger-bg: var(--bs-danger);
    --bs-light-bg: var(--bs-light);
    --bs-dark-bg: var(--bs-dark);

    /* Background utilities personalizzate */
    --bs-bg-primary: var(--bs-primary);
    --bs-bg-secondary: var(--bs-secondary);
    --bs-bg-success: var(--bs-success);
    --bs-bg-info: var(--bs-info);
    --bs-bg-warning: var(--bs-warning);
    --bs-bg-danger: var(--bs-danger);
    --bs-bg-light: var(--bs-light);
    --bs-bg-dark: var(--bs-dark);

    /* Versioni subtle già allineate alla palette */
    --bs-bg-primary-subtle: var(--bs-primary-bg-subtle);
    --bs-bg-secondary-subtle: var(--bs-secondary-bg-subtle);
    --bs-bg-success-subtle: var(--bs-success-bg-subtle);
    --bs-bg-info-subtle: var(--bs-info-bg-subtle);
    --bs-bg-warning-subtle: var(--bs-warning-bg-subtle);
    --bs-bg-danger-subtle: var(--bs-danger-bg-subtle);

    /* Border subtle */
    --bs-border-primary-subtle: var(--bs-primary-border-subtle);
    --bs-border-secondary-subtle: var(--bs-secondary-border-subtle);
    --bs-border-success-subtle: var(--bs-success-border-subtle);
    --bs-border-info-subtle: var(--bs-info-border-subtle);
    --bs-border-warning-subtle: var(--bs-warning-border-subtle);
    --bs-border-danger-subtle: var(--bs-danger-border-subtle);

    --bs-accordion-btn-focus-box-shadow: 0 !important;
}
