html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym,
address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i,
center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, section, button {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

#loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100vw;
  height: 100vh;
  display: -ms-grid;
  display: grid;
  background: #fff url(../images/loading-logo.png) center center no-repeat;
  background-size: 35% auto; }
  .webp #loading-screen {
    background: #fff url("../images/loading-logo.webp") center center no-repeat; }
  #loading-screen .loading-screen__progress {
    --path: #605c5d;
    --dot: #605c5d;
    --duration: 3s;
    margin: auto;
    position: relative;
    top: 150px;
    z-index: 100;
    overflow: hidden;
    width: 44px;
    height: 44px; }
    #loading-screen .loading-screen__progress:before {
      content: '';
      width: 6px;
      height: 6px;
      border-radius: 50%;
      position: absolute;
      display: block;
      background: var(--dot);
      top: 37px;
      left: 19px;
      -webkit-transform: translate(-18px, -18px);
              transform: translate(-18px, -18px);
      -webkit-animation: dotRect var(--duration) cubic-bezier(0.785, 0.135, 0.15, 0.86) infinite;
              animation: dotRect var(--duration) cubic-bezier(0.785, 0.135, 0.15, 0.86) infinite; }
    #loading-screen .loading-screen__progress svg {
      display: block;
      width: 100%;
      height: 100%; }
      #loading-screen .loading-screen__progress svg rect,
      #loading-screen .loading-screen__progress svg polygon,
      #loading-screen .loading-screen__progress svg circle {
        fill: none;
        stroke: var(--path);
        stroke-width: 10px;
        stroke-linejoin: round;
        stroke-linecap: round;
        stroke-dasharray: 150 50 150 50;
        stroke-dashoffset: 75;
        -webkit-animation: pathCircle var(--duration) cubic-bezier(0.785, 0.135, 0.15, 0.86) infinite;
                animation: pathCircle var(--duration) cubic-bezier(0.785, 0.135, 0.15, 0.86) infinite; }

.page-loading--hide #loading-screen {
  -webkit-animation: loading-progress-hide-animation 0.5s cubic-bezier(0.61, 0, 0.35, 1.01);
          animation: loading-progress-hide-animation 0.5s cubic-bezier(0.61, 0, 0.35, 1.01);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards; }

@-webkit-keyframes pathCircle {
  25% {
    stroke-dashoffset: 125; }
  50% {
    stroke-dashoffset: 175; }
  75% {
    stroke-dashoffset: 225; }
  100% {
    stroke-dashoffset: 275; } }

@keyframes pathCircle {
  25% {
    stroke-dashoffset: 125; }
  50% {
    stroke-dashoffset: 175; }
  75% {
    stroke-dashoffset: 225; }
  100% {
    stroke-dashoffset: 275; } }

@-webkit-keyframes dotRect {
  25% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(18px, -18px);
            transform: translate(18px, -18px); }
  75% {
    -webkit-transform: translate(0, -36px);
            transform: translate(0, -36px); }
  100% {
    -webkit-transform: translate(-18px, -18px);
            transform: translate(-18px, -18px); } }

@keyframes dotRect {
  25% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(18px, -18px);
            transform: translate(18px, -18px); }
  75% {
    -webkit-transform: translate(0, -36px);
            transform: translate(0, -36px); }
  100% {
    -webkit-transform: translate(-18px, -18px);
            transform: translate(-18px, -18px); } }

@-webkit-keyframes loading-progress-hide-animation {
  from {
    height: 100vh; }
  to {
    height: 0; } }

@keyframes loading-progress-hide-animation {
  from {
    height: 100vh; }
  to {
    height: 0; } }

