:root {
  --font-primary: "Roboto", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;

  --container-width: 100%;

  --menu-width: min(19.2rem, 48vw);
  --header-height: 7.2rem;

  --color-1: #f5f5f5;
  --color-2: #fdfdfd;
  --color-3: #ffffff;
  --color-4: #121212;
  --color-5: #0040ff;
  --color-6: #545454;

  --gradient-bg: linear-gradient(180deg, var(--color-3) 0%, var(--color-1) 100%);
  --overlay-bg: rgba(0, 0, 0, 0.20);

  --border: 0.05rem;
  --radius-sm: 0.8rem;
  --radius-md: 1.8rem;
  --radius-lg: 2rem;

  --duration: 300ms;
  --ease: cubic-bezier(0.4, 0, 0.2, 1);

  /* ===== ICONS ===== */
  --icon-mini: clamp(1.6rem, calc(1.2rem + 0.6vw), 2.0rem);
  --icon-standart: clamp(2.8rem, calc(2.0rem + 1.2vw), 4.0rem);
  --icon-medium: clamp(4.0rem, calc(2.8rem + 1.8vw), 8.0rem);
  --icon-big: clamp(6.4rem, calc(4.0rem + 3.6vw), 12.0rem);

  /* ===== TYPOGRAPHY ===== */
  --text-xs: clamp(1.1rem, calc(0.9rem + 0.3vw), 1.4rem);
  --text-sm: clamp(1.2rem, calc(1.0rem + 0.3vw), 1.5rem);
  --text-base: clamp(1.3rem, calc(1.1rem + 0.3vw), 1.6rem);
  --text-md: clamp(1.4rem, calc(1.2rem + 0.3vw), 1.7rem);
  --text-lg: clamp(1.6rem, calc(1.3rem + 0.5vw), 2.0rem);
  --text-xl: clamp(1.8rem, calc(1.5rem + 0.5vw), 2.3rem);
  --text-2xl: clamp(2.0rem, calc(1.6rem + 0.6vw), 2.6rem);
  --text-3xl: clamp(2.2rem, calc(1.8rem + 0.6vw), 3.0rem);
  --text-4xl: clamp(2.6rem, calc(2.0rem + 1.0vw), 3.8rem);

  --weight-light: 300;
  --weight-normal: 400;
  --weight-medium: 500;
  --weight-bold: 700;

  --line-tight: 1.1;
  --line-base: 1.2;
  --line-normal: 1.4;
  --line-loose: 1.5;

  /* ===== SPACING (мелкие — rem, крупные — clamp) ===== */
  --space-xxs: 0.4rem;
  --space-xs: 0.6rem;
  --space-sm: 1.2rem;
  --space-md: 1.6rem;
  --space-lg: 2.0rem;
  --space-xl: 2.4rem;

  /* Крупные отступы — с плавным сжатием на мобильных */
  --space-2xl: clamp(2.4rem, 4vw, 3.2rem);
  --space-3xl: clamp(3.2rem, 5vw, 4.0rem);
  --space-4xl: clamp(3.6rem, 6vw, 4.8rem);
  --space-5xl: clamp(4.0rem, 7vw, 6.4rem);
  --space-6xl: clamp(4.8rem, 8vw, 8.0rem);
  --space-7xl: clamp(6.4rem, 10vw, 9.6rem);
  --space-8xl: clamp(8.0rem, 12vw, 12.8rem);

  --z-default: 1;
  --z-header: 100;
  --z-menu: 1000;
  --modal-overlay-z-index: 1050;
  --modal-z-index: 1060;
  --scroll-top-z-index: 1070;

/* Modal sizes - desktop first (only vw/vh) */
--modal-mini-width: 40vw;
--modal-mini-height: 50vh;

--modal-default-width: 60vw;
--modal-default-height: 70vh;

--modal-large-width: 80vw;
--modal-large-height: 85vh;
}