.preloader {
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	z-index: 999999;
	background-color: #fff;
	opacity: 1;
	text-align: center;
	animation-name: PreloaderControlAnimation;
	animation-duration: 3.5s;
}

html.loaded .preloader {
	z-index: -999999;
	opacity: 0;
	animation-name: PreloaderOutAnimation;
	animation-duration: 1.5s;
	animation-iteration-count: 1;
}

@keyframes PreloaderOutAnimation {
	0% {
		z-index: 999999;
		opacity: 1;
	}
	99% {
		z-index: 999999;
		opacity: 0.01;
	}
	100%{
		z-index: -999999;
		opacity: 0;
	}
}



@keyframes PreloaderControlAnimation {
	0% {
		text-align: center;
	}
	100% {
		text-align: center;
	}
}
.preloader .preloader-rialogo {
	display: inline-block;
	width: 15%;
	height: auto;
	position: relative;
}

.preloader-rialogo-border,
.preloader-rialogo-r,
.preloader-rialogo-i-rect,
.preloader-rialogo-i-dot,
.preloader-rialogo-a {
	animation-timing-function: linear;
	animation-fill-mode: forwards;
	animation-iteration-count: 1;
	animation-delay: 0s;
	animation-duration: 2s;
	stroke-dasharray: 1000;
	stroke-dashoffset: 0;
}

.preloader-rialogo-r,
.preloader-rialogo-i-rect,
.preloader-rialogo-i-dot,
.preloader-rialogo-a {
	fill: #771921;
}

html:not(.loaded) .preloader-rialogo-border {
	animation-name: PreloaderOutlineAnimation;
}

html:not(.loaded) .preloader-rialogo-r,
html:not(.loaded) .preloader-rialogo-i-rect,
html:not(.loaded) .preloader-rialogo-i-dot,
html:not(.loaded) .preloader-rialogo-a {
	animation-name: PreloaderLetterAnimation;
	animation-duration: 3s;
}

.preloader-dots {
	display: inline-block;
	text-align: center;
	width: 50%;
	animation-name: PreloaderDotsWrapperAnimation;
	animation-duration: 4.5s;
}

html.loaded .preloader-dots {
	animation: none !important;
	opacity: 0 !important;
}

@keyframes PreloaderDotsWrapperAnimation {
	0%, 98% {
		visibility: hidden;
	}
	100% {
		visibility: visible;
	}
}

.preloader-dots-dot {
	display: inline-block;
	width: 10px;
	height: 10px;
	border: 0px solid transparent;
	border-radius: 50%;
	background-color: #771921;
	margin: 5px;
	animation-name: PreloaderDotsAnimation;
	animation-delay: 0s;
	animation-duration: 1.4s;
	animation-timing-function: ease-in-out;
	animation-fill-mode: both;
	animation-iteration-count: infinite;
}

.preloader-dots-dot:nth-child(1) { 
	-webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.preloader-dots-dot:nth-child(2) {
	-webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

@keyframes PreloaderDotsAnimation {
	0%, 80%, 100% { -webkit-transform: scale(0); transform: scale(0); }
	40% { -webkit-transform: scale(1.0); transform: scale(1); }
}

@keyframes PreloaderOutlineAnimation {
	0% {
		stroke-dashoffset: 1000;
	}
	100% {
		stroke-dashoffset: 0;
	}
}

@keyframes PreloaderLetterAnimation {
	0% {
		fill: #fff;
		stroke-dashoffset: 1000;
	}
	75% {
		fill: #fff;
		stroke-dashoffset: 1000;
	}
	85% {
		fill: #fff;
	}
	95% {
		stroke-dashoffset: 0;
	}
	100% {
		fill: #771921;
		stroke-dashoffset: 0;
	}
}