/* Responsive rem scaling */
:root {
  --font-from-0: 11;
  --font-to-0: 13;
  --vw-from-0: calc(1 / 100);
  --vw-to-0: calc(479 / 100);
  --coefficient-0: calc((var(--font-to-0) - var(--font-from-0)) / (var(--vw-to-0) - var(--vw-from-0)));
  --base-0: calc((var(--font-from-0) - var(--vw-from-0) * var(--coefficient-0)) / 16);

  --font-from-1: 13;
  --font-to-1: 14;
  --vw-from-1: calc(479 / 100);
  --vw-to-1: calc(767 / 100);
  --coefficient-1: calc((var(--font-to-1) - var(--font-from-1)) / (var(--vw-to-1) - var(--vw-from-1)));
  --base-1: calc((var(--font-from-1) - var(--vw-from-1) * var(--coefficient-1)) / 16);

  --font-from-2: 14;
  --font-to-2: 15;
  --vw-from-2: calc(767 / 100);
  --vw-to-2: calc(991 / 100);
  --coefficient-2: calc((var(--font-to-2) - var(--font-from-2)) / (var(--vw-to-2) - var(--vw-from-2)));
  --base-2: calc((var(--font-from-2) - var(--vw-from-2) * var(--coefficient-2)) / 16);

  --font-from-3: 15;
  --font-to-3: 16;
  --vw-from-3: calc(991 / 100);
  --vw-to-3: calc(1920 / 100);
  --coefficient-3: calc((var(--font-to-3) - var(--font-from-3)) / (var(--vw-to-3) - var(--vw-from-3)));
  --base-3: calc((var(--font-from-3) - var(--vw-from-3) * var(--coefficient-3)) / 16);

  --font-from-4: 16;
  --font-to-4: 18;
  --vw-from-4: calc(1920 / 100);
  --vw-to-4: calc(2849 / 100);
  --coefficient-4: calc((var(--font-to-4) - var(--font-from-4)) / (var(--vw-to-4) - var(--vw-from-4)));
  --base-4: calc((var(--font-from-4) - var(--vw-from-4) * var(--coefficient-4)) / 16);
}

html { font-size: calc(var(--base-4) * 1rem + var(--coefficient-4) * 1vw); }
@media screen and (max-width:1920px) { html { font-size: calc(var(--base-3) * 1rem + var(--coefficient-3) * 1vw); } }
@media screen and (max-width:991px) { html { font-size: calc(var(--base-2) * 1rem + var(--coefficient-2) * 1vw); } }
@media screen and (max-width:767px) { html { font-size: calc(var(--base-1) * 1rem + var(--coefficient-1) * 1vw); } }
@media screen and (max-width:479px) { html { font-size: calc(var(--base-0) * 1rem + var(--coefficient-0) * 1vw); } }