:root{
  --container-width: 1720px;
  --color-bg: #F8F5F1;
  --color-bg-soft: #FFFDFC;
  --color-text: #171717;
  --color-muted: rgba(23, 23, 23, 0.64);
  --color-line: rgba(23, 23, 23, 0.12);
  --color-white: #ffffff;

  --brand-red: #E5110E;
  --brand-red-dark: #C70D0B;
  --brand-green: #008F32;
  --brand-green-dark: #03752B;

  --shadow-soft: 0 18px 50px rgba(0,0,0,0.06);
  --radius-lg: 32px;
  --radius-md: 24px;
  --radius-sm: 18px;

  --fy-header-offset: 0px;
}

*,
*::before,
*::after{
  box-sizing: border-box;
}

html{
  scroll-behavior: smooth;
}

body{
  margin: 0;
  min-width: 320px;
  background: var(--color-bg);
  color: var(--color-text);
  font-family: 'Evolventa', Arial, sans-serif;
  font-weight: 400;
  line-height: 1.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

body.menu-open,
body.popup-open{
  overflow: hidden;
}

img{
  display: block;
  max-width: 100%;
  height: auto;
}

a{
  color: inherit;
  text-decoration: none;
}

button,
input,
textarea,
select{
  font: inherit;
}

button{
  cursor: pointer;
}

.container{
  width: min(100% - 64px, var(--container-width));
  margin: 0 auto;
}

.site-main{
  display: block;
  overflow: hidden;
}

h1, h2, h3, h4, h5, h6,
.heading-font,
.site-header__logo,
.site-footer__logo,
.site-footer__brand-name{
  font-family: 'Shnobel', Arial, sans-serif;
  font-weight: 400;
  letter-spacing: 0.01em;
}

p, span, a, li, label, input, textarea, button{
  font-family: 'Evolventa', Arial, sans-serif;
}

@media (max-width: 767px){
  .container{
    width: min(100% - 32px, var(--container-width));
  }
}