/* ============================================
   PIZZERIA AVALON — Design Tokens
   Fonte unica di verità per stili e variabili
   ============================================ */

:root {

  /* --- Primary --- */
  --color-red:        #B12C16;   
  --color-green:      #3F6833;   
  --color-brown:      #2D1D1D;   


  /* --- Secondary --- */
  --color-lightRed:           #FFF0EE;  
  --color-lightGreen:         #BDEDAA;  
  --color-lightBrown:         #5A413C;  
  
  /* --- BG --- */
  --color-bg:            #FFF;
  --color-crema:           #FDF6EE;
  --color-bg3:           #F2F4F5;

  /* --- Tipografia --- */
--font-body:  'Aleo', Georgia, serif;        /* titoli hero */
--font-heading:  'Source Serif 4', Georgia, serif; /* intestazioni sezioni */
--font-heading2:     'Epilogue', system-ui, sans-serif; /* corpo testo, UI, bottoni */

  /* Scala tipografica */
  --text-xs:   0.75rem;   /*  12px */
  --text-sm: 0.875rem;  /* 14px */
  --text-base: 1rem;      /*  16px */
  --text-lg:   1.25rem;   /*  20px */
  --text-xl:   1.5rem;    /*  24px */
  --text-2xl:  2rem;      /*  32px */
  --text-3xl:  2.5rem;    /*  40px */
  --text-4xl:  3.25rem;   /*  52px */
  --text-5xl:  4rem;      /*  64px */

  /* Peso font */
  --weight-regular: 400;
  --weight-medium:  500;
  --weight-bold:    700;


  /* --- Spaziature --- */
  --space-1:   0.25rem;   /*  4px */
  --space-2:   0.5rem;    /*  8px */
  --space-3:   0.75rem;   /* 12px */
  --space-4:   1rem;      /* 16px */
  --space-5:   1.25rem;   /* 20px */
  --space-6:   1.5rem;    /* 24px */
  --space-8:   2rem;      /* 32px */
  --space-10:  2.5rem;    /* 40px */
  --space-12:  3rem;      /* 48px */
  --space-16:  4rem;      /* 64px */
  --space-20:  5rem;      /* 80px */
  --space-24:  6rem;      /* 96px */

  /* --- Bordi e raggi --- */
  --radius-sm:   6px;
  --radius-md:   12px;
  --radius-lg:   20px;
  --radius-xl:   32px;
  --radius-full: 9999px;

  /* --- Ombre --- */
  --shadow-sm:  0 1px 3px rgba(26,16,8,.08), 0 1px 2px rgba(26,16,8,.06);
  --shadow-md:  0 4px 12px rgba(26,16,8,.10), 0 2px 4px rgba(26,16,8,.06);
  --shadow-lg:  0 12px 32px rgba(26,16,8,.12), 0 4px 8px rgba(26,16,8,.06);
  --shadow-xl:  0 24px 48px rgba(26,16,8,.15), 0 8px 16px rgba(26,16,8,.08);

  /* --- Transizioni --- */
  --transition-fast:   150ms ease;
  --transition-normal: 250ms ease;
  --transition-slow:   400ms ease;

  /* --- Layout --- */
  --bp-md: 768px;
  --bp-lg: 1024px;
  --bp-xl: 1280px;
  --layout-mobile-max: 480px; /* larghezza di riferimento card menu (mobile) */
  --container-max: min(100%, 480px);
  --container-pad:   var(--space-5);
  --nav-height-desktop: 4rem;

  /* --- Z-index --- */
  --z-base:    0;
  --z-raised:  10;
  --z-overlay: 100;
  --z-modal:   200;
  --z-nav:     300;
  --z-toast:   400;
}

@media (min-width: 768px) {
  :root {
    --container-max: 900px;
  }
}

@media (min-width: 1024px) {
  :root {
    --container-max: 960px;
  }
}

@media (min-width: 1280px) {
  :root {
    --container-max: 1120px;
    --container-pad: var(--space-6);
  }
}
