.form-spinner {
	Display: none;
    position: fixed;
    z-index: 999999999999;
    left: 0;
    top: 0;
    width: 100dvw;
    height: 100dvh;
    align-items: center;
    justify-content: center;
    background: #001e363b;
}

.form-spinner--active {
	Display: flex;
}

.form-spinner--loader {
    width: 48px;
	height: 48px;
	border-radius: 50%;
	display: inline-block;
	position: relative;
	border: 10px solid;
	border-color: rgba(255, 255, 255, 0.15) rgba(255, 255, 255, 0.25) rgba(255, 255, 255, 0.35) rgba(255, 255, 255, 0.5);
	box-sizing: border-box;
	animation: rotation-spinner--loader 1s linear infinite;
}

@keyframes rotation-spinner--loader {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
} 

.is-invalid-privacidad {
	background: #D9534F17;
	-webkit-animation: shake-top 0.8s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
	animation: shake-top 0.8s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
	transition: background-color 0.85s ease-in-out;
}

@-webkit-keyframes shake-top{0%,100%{-webkit-transform:rotate(0deg);transform:rotate(0deg);-webkit-transform-origin:50% 0;transform-origin:50% 0}10%{-webkit-transform:rotate(2deg);transform:rotate(2deg)}20%,40%,60%{-webkit-transform:rotate(-4deg);transform:rotate(-4deg)}30%,50%,70%{-webkit-transform:rotate(4deg);transform:rotate(4deg)}80%{-webkit-transform:rotate(-2deg);transform:rotate(-2deg)}90%{-webkit-transform:rotate(2deg);transform:rotate(2deg)}}@keyframes shake-top{0%,100%{-webkit-transform:rotate(0deg);transform:rotate(0deg);-webkit-transform-origin:50% 0;transform-origin:50% 0}10%{-webkit-transform:rotate(2deg);transform:rotate(2deg)}20%,40%,60%{-webkit-transform:rotate(-4deg);transform:rotate(-4deg)}30%,50%,70%{-webkit-transform:rotate(4deg);transform:rotate(4deg)}80%{-webkit-transform:rotate(-2deg);transform:rotate(-2deg)}90%{-webkit-transform:rotate(2deg);transform:rotate(2deg)}}

input.is-invalid,
select.is-invalid {
  border-color: #D9534F;
  background-color: #D9534F17;
  transition: border-color 0.3s ease-in-out, background-color 0.6s ease-in-out;
}

.mensaje-usr-error {
	color: red;
	text-align: center;
	margin-top: 1em;
}

.mensaje-usr-success {
	color: green;
}

.form_sent_successfully {
	display: none;
	position: fixed;
	z-index: 9999999999999;
	left: 0;
	top: 0;
	width: 100dvw;
	height: 100dvh;
	align-items: center;
	justify-content: center;
    background: #001e363b;
}

.form_sent_successfully--active {
	display: flex;
}

.form_sent_successfully .form_sent_successfully--content {
	position: relative;
	display: flex;
	flex-direction: column;
    color: var(--bs-modal-color);
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.175);
    border-radius: 0.5rem;
    padding: 1rem;
}

.form_sent_successfully .form_sent_successfully--content .form_sent_successfully--close_x {
	position: absolute;
    top: 5px;
    right: 5px;
}