::-webkit-scrollbar {
	 width: 							8px;
	 height: 							10px;
}

::-webkit-scrollbar-thumb {
     background:                        linear-gradient(13deg, #334b85 14%,#106aa2 64%);
}

::-webkit-scrollbar-thumb:hover{
     background:                        linear-gradient(13deg, #334b85 14%,#106aa2 64%);
}

::-webkit-scrollbar-track{
    background: 						#01a6ac;
    box-shadow: 						inset 7px 10px 12px #01a6ac;
}
	
body {
	background-image: 					url("../../assets/img/fundo.jpg");
	background-position: 				center center;
	background-repeat:  				no-repeat;
	background-attachment: 				fixed;
	background-size:  					cover;
	padding: 							0;
	margin: 							0;
	overflow-x: 						hidden;
	color: 								#232323;
	font-family: 						"Plus Jakarta Sans", sans-serif;
}

.plus-jakarta-sans-600 {
  font-family: 							"Plus Jakarta Sans", sans-serif;
  font-optical-sizing: 					auto;
  font-weight: 							800;
}

.plus-jakarta-sans-500 {
  font-family: 							"Plus Jakarta Sans", sans-serif;
  font-optical-sizing: 					auto;
  font-weight: 							500;
}

.plus-jakarta-sans-400 {
  font-family: 							"Plus Jakarta Sans", sans-serif;
  font-optical-sizing: 					auto;
  font-weight: 							400;
}

.plus-jakarta-sans-300 {
  font-family: 							"Plus Jakarta Sans", sans-serif;
  font-optical-sizing: 					auto;
  font-weight: 							300;
}

.font-text {
	font-size: 							13px;
}

.font-text-modal {
	font-size: 							15px;
}

.text-azul {
	color: 								#334b85 !important;	
}

.text-verde {
	color: 								#5da5ab !important;	
}

.text-cinza {
	color: 								#575757 !important;	
}


.video-fixo {
	position: fixed;
	top: 50%;
	right: -90%; 
	transform: translateY(-50%);
	width: 300px;
	max-width: 90vw;
	transition: right 0.6s ease;
	z-index: 999999 !important;
	box-shadow: 0 0 10px rgba(0,0,0,0.4);
	animation: pulse2 2s infinite;
	cursor: pointer;
}

.video-fixo.mostrar {
	right: 50%;
	transform: translate(50%, -50%);
	animation: none;
}

.video-fixo iframe {
	width: 100%;
	height: 500px;
	border: none;
}

@keyframes pulse2 {
	0% { transform: translateY(-50%) scale(1); }
	50% { transform: translateY(-50%) scale(1.05); }
	100% { transform: translateY(-50%) scale(1); }
}

@media (max-width: 576px) {
	.video-fixo iframe {
		height: 180px;
	}
}

@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.2);
    opacity: 0.8;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}  

/* CUSTOMIZAÇÃO FORM */
form {
	width: 								100%;
	height: 							80vh;
	overflow-y: 						auto;
	padding: 							20px 20px 40px 20px;
	border: 							1px solid #c5cef1;
	border-top-left-radius: 			10px;
	border-bottom-left-radius: 			10px;
	box-sizing: 						border-box;
}

.font-form {
	font-size: 							15px;
}

.termo_aceite {
	font-weight: 						600;
	color: 								#787b82;
	font-size: 							12px;
}

.termo_aceitar {
	color: 								#EA2027;
}

.termo_aceite.checked {
	color: 								#5da5aa;
}

.i_excl {
	font-size: 							20px !important; 
}

.form-group {
	margin-bottom: 						20px;
}
	
.form-group label {
	display: 							block;
	margin-bottom: 						5px;
}
	
.form-group input {
	font-size: 							14px;
	font-weight: 						500;
	color: 								#5da5ab !important;
	padding: 							8px;
	box-sizing: 						border-box;
	border: 							1px solid #c5cef1;
	border-radius: 						10px;
}

.form-group select {
	font-size: 							14px;
	font-weight: 						500;
	color: 								#5da5ab !important;
	padding: 							8px;
	box-sizing: 						border-box;
	border: 							1px solid #c5cef1;
	border-radius: 						10px;
}

.form-group input:invalid:not(:placeholder-shown),
.form-group select:invalid:not(:placeholder-shown) {
	border-color: 						#c10044;
}

.form-group input:valid,
.form-group select:valid {
	border-color: 						#2c859b;
}

select {
	border-color: #ced4da;
}

select:focus {
	border-color: #80bdff;
}

.modal-dialog {
	max-width: 							65%;
	margin: 							1.75rem auto;
	border: 							0 !important;
	border-radius: 						0;
}

.modal-content {
	border: 							0 !important;
	border-radius: 						0 !important;
}
	
.modal-header {
	background-color: 					#FFF;
	border-radius: 						0 !important;
}	
	
.modal-title {
	font-size: 							16px !important;
}

#bus {
	position: 							fixed;
	bottom: 							0px;
	left: 								0;
	width: 								100px;
	height: 							auto;
	transition: 						left 0.5s;
	z-index: 							2;
}
	
.fixed-video {
	z-index: 							2;
	position: 							fixed;
	top: 								50%;
	right: 								0;
	transform: 							translateY(-50%);
}

.fixed-video .rodape-imagem {
    position: absolute;
    top: 50%;
    right: 50px;
    transform: translateY(-50%);
    animation: pulse 0.6s infinite;
}

@keyframes pulse {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
    }
}
	
 .circle {
	position: relative;
	width: 122px;
	height: 122px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	margin: 10px;
	cursor: pointer;
	transition: background 0.3s ease;
}

 .circle::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	padding: 3px;
	background: linear-gradient(to top right, #5da5aa, #67bac0);
	transition: background 0.3s ease;
}

.circle:hover::before {
	background: linear-gradient(to top right, #f0c543, #fbcf4b);
}

.circle img {
	position: relative;
	border-radius: 50%;
}

.circle i {
	font-size: 22px;
}

.circle-title {
	font-size: 14px;
	text-align: center;
	color: #FFF;
	line-height: 20px;
	z-index: 9;
}

.pulse-animation {
	display: 							block;
	animation: 							pulse 1s infinite;
}

@keyframes pulse {
	0% {
		transform: 						scale(1);
	}
	50% {
		transform: 						scale(1.1);
	}
	100% {
		transform: 						scale(1);
	}
}

.pulse-animation-1 {
	animation-delay: 					0.3s;
}

.pulse-animation-2 {
	animation-delay: 					0.6s;
}

.pulse-animation-3 {
	animation-delay: 					0.9s;
}

.pulse-animation-4 {
	animation-delay: 					1.2s;
}

#sign .badge-warning {
	background-color: 					#f0c543;
	color: 								#FFF;
	font-size: 							14px;
}

#sign .badge-light {
	background-color: 					#01a6ac;
	color: 								#FFF;
	font-weight: 						600;
	font-size: 							13px;
}

.modal-body .badge-primary {
	font-size: 13px;
	font-weight: 400;
	background-color: #2c859b;
}

.close {
	opacity: 							1 !important;
	color: 								#3c4d95 !important;
}
	
.close:hover {
	color: 								#2c859b !important;
}

.btn-primary {
	background-color: 					#f0c543 !important;
	border: 							#f0c543 !important;
	color: 								#FFF !important;
	border-bottom: 						3px solid #dfb740 !important;
	font-size: 							18px !important;
}
	
.btn-primary:hover {
	background-color: 					#dfb740 !important;
	border: 							#dfb740  !important;
	border-bottom: 						3px solid #cca83c !important;
}

.texto_inicial {
	font-family: 						'Open Sans', sans-serif;
	font-weight: 						700;
	color: 								#361aba;
	font-size: 							22px;
	line-height: 						30px;
	text-shadow: 						1px 1px 0px #FFF;
}

.text-label {
	font-size: 							15px;
	font-weight: 						500;
	color: 								#d748b1;
}

::placeholder {
    color: 								#adadad !important;
	font-weight: 						400 !important;
}

/* RET - FORM */
#flash {
	position: 							fixed;
	z-index: 							99999;
	display: 							block;
	background-color: 					rgba(40, 167, 69, 0.98); 
	width: 								100%;
	height: 							100%;
	text-align: 						center;
}

.negado {
	padding: 							10px;
	color: 								#FFF;
	display: 							inline-block;
	margin: 							0;
	border-radius: 						4px;
	-webkit-border-radius: 				4px;
	-moz-border-radius: 				4px;
	font-size: 							14px;
	font-weight: 						500;
	width:								100%;
}

#resultado-sign {
	font-size: 							12px;
	font-weight: 						500;
}

.salvando {
	padding: 							10px;
	color: 								#FFF;
	display: 							inline-block;
	margin: 							0 0 20px 0;
	border-radius: 						4px;
	-webkit-border-radius: 				4px;
	-moz-border-radius: 				4px;
	font-size: 							16px;
	font-weight: 						500;
	width:								100%;
	background: 						#dc3545 !important;
}

.negado {
	background: 						#dc3545 !important;
}

.sucesso {
	width: 								100%;
	height: 							100%;
	padding: 							20%;
	color: 								#FFF;
	font-size: 							20px;
	text-align: 						center;
	vertical-align: 					middle;
}

.is-invalid {
    border: 1px solid #f5c6cb !important;
}

.cookieConsent h1 {
	color: 								#FFF !important;
	padding: 							5px;
	font-size: 							18px;
	font-weight: 						600;
	line-height: 						20px;
	display: 							block;
	text-align: 						center;
}

.cookieConsent {
	z-index: 							9;
	width: 								100%;
	min-height: 						20px;
	box-sizing: 						border-box;
	padding: 							10px;
	background: 						#272727;
	color: 								#FFF;
	font-size: 							13px;
	text-align: 						center;
	margin: 							0 auto;
}

#carregando {
	position: 							fixed;
	top: 								0;
  	left: 								0;
  	right: 								0;
  	bottom: 							0;
  	background-color: 					#FFF;
  	z-index: 							99;
}

#circulo {
	width: 								100px;
  	height: 							90px;
  	position: 							absolute;
  	left: 								50%;
  	top: 								45%;
  	background-image: 					url(../../assets/img/carregando.gif);
  	background-repeat: 					no-repeat;
  	background-position: 				center;
	margin-left: 						-46px;
}

@media only screen
and (max-width : 768px) {
	body {
		overflow: 							hidden;
		overflow-y: 						scroll !important;
		overflow-x: 						hidden !important;
	}

	form {
		width: 								100%;
		height: inherit;
		overflow-y: 						auto;
	}

	.modal-dialog {
		max-width: 							95% !important;
		margin: 							1rem auto;
		border: 							0 !important;
		border-radius: 						0;
	}	

	.texto_inicial {
		font-size: 							18px;
		line-height: 						26px;
	}

	.texto_cadastrado {
		font-size: 							18px;
		line-height: 						26px;
	}

	.jovem {
		opacity: 							0.15;
	}

	.btn-primary {
		font-size: 							16px !important;
	}			
	
}
