/*** Global ****************************************************/
@font-face {
	font-family: "Noto Sans", sans-serif;
	src: url('https://ddkv5x3lftljy.cloudfront.net/master/public/fonts/museo700-regular.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
}
h1, .h1 {
	color: #445F6F
}
h2, .h2 {
	color: #c5c5c5;
}


main { margin-bottom: 30px;}
section.row {	padding-bottom: 25px;}
.list-unstyled.links-topo.navbar-right {margin: 0;}

.tooltip > .tooltip-inner {
	background-color: #ffffff;
	color: #000000;
	border: 1px solid #343434;
	padding: 15px;
	font-size: 20px;
}
.tooltip.top .tooltip-arrow {
	border-top-color: #848484;
}
.fa-1-5x {
	font-size: 1.5em;
}
/**************************************************** Global ***/

.pace{
	z-index: 5000;
}

/**** Bootstrap Fix ********************************************************/
@media (min-width: 767px){
	.col-sm-1:nth-child(12n+1), .col-sm-2:nth-child(6n+1), .col-sm-3:nth-child(4n+1), .col-sm-4:nth-child(3n+1), .col-sm-6:nth-child(2n+1) {
		clear: initial;
	}
}
.has-error .radio label {
	padding-bottom: 3px;
	border-bottom: 2px #a94442 solid;
}
.form-group {
	margin-bottom: 5px;
}
/************************************************** Bootstrap Fix **********/


/**** Dados Acesso (area do usuario) ******************************/
[data-show-area-user="display"] #logged-area {
	display: flex;
	gap: 12px;
	flex-direction: column;
}
#logged-area >*:first-child {
	margin-right:10px;
}
[data-area-user="display"],  [data-area-user="inputs"]  {
	display:none;
}
[data-show-area-user="display"] [data-area-user="display"],
[data-show-area-user="inputs"] [data-area-user="inputs"] {
	display:block;
}
/******************************* Dados Acesso (area do usuario) ***/



/**** Cep ******************************/
#cep-msg > *:first-child{
	padding: 7px;
	display: inline-block;
}
/******************************* Cep ***/



/*** HTML5 Fix *********************************/
input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input[type="date"]::-webkit-input-placeholder{
	visibility: hidden !important;
}
input::-webkit-calendar-picker-indicator{
	display: none;
}
input[type=number] {
-moz-appearance: textfield;
}
/********************************* HTML5 Fix ***/

#page-carrinho-checkout hr {
	border-top: 1px solid #e6e6e6;
	margin-top: 15px;
	margin-bottom: 5px;
}
#page-carrinho-checkout  h2 {
	color: #000000;
	margin-top: 10px;
}

#page-carrinho-checkout  h3 {
	color: #000000;
	margin-top: 0px;
	font-size: 19px;
	font-weight: bold;
}

#page-carrinho-checkout .form-group {
	width: 100%; margin: 0px;
}
#page-carrinho-checkout .form-group label{margin-bottom: 2px;}
#page-carrinho-checkout .form-group label input[type=radio]{margin: 0 3px 0 0;}

#cep-msg{margin-bottom:8px;}
#page-carrinho-checkout .flexFormBox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
#page-carrinho-checkout .flexFormBox.access .form-group:last-of-type{
	margin-right: 0px;
}
#page-carrinho-checkout .flexFormBox.access .form-group{
	margin-right: 10px;
}

.alertify {
	z-index: 1051;
}

.alertify-logs {
	z-index: 1100;
}


.parsley-errors-list.filled{
	padding: 0px;
	list-style: none;
	color: #7b0202;
	font-size: 12px;
    margin-top: 2px;
	min-width: 85px;
}

.blockUI.blockMsg.blockPage {
	border: none !important;
	background: initial !important;
	color: #ffffff !important;
	font-size: 25px;
	font-weight: bold;
}

.text-loading{
	color: #326dab !important;
	font-size: 25px !important;
	font-weight: bold;
	text-shadow: 1.2px 0 0 #d7e8ff, -1.2px 0 0 #d7e8ff, 0 1.2px 0 #d7e8ff, 0 -1.2px 0 #d7e8ff, 1px 1px #d7e8ff, -1px -1px 0 #bad4f9, 1px -1px 0 #bad4f9, -1px 1px 0 #bad4f9;
}

#form-items + #form-servicos{
	margin-top: 40px;
}


/************************** Custom Bootstrap *******/
.btn{
	border: 0;
	border-radius: 0;
	-webkit-transition: .35s;
	transition: .35s;
}
.btn-green{
	background: #7A9F82;
	color: #fff;
}
.btn-green:hover{
	background: #698A70;
}
.btn-blue{
	background: #445F6F;
	color: #fff;
}
.btn-blue:hover{
	background: #324753;
}
.btn-orange{
	background: #fb9b6f;
	color: #fff;
}
.btn-orange:hover{
	background: #F4773D;
}
[class*='btn-']:hover,
[class*='btn-']:focus{
	color: #fff;
}
label {
	font-weight: normal;
}

#tipo-cartao img {
	max-height: 40px;
}

#tipo-pagamento img {
	max-height: 70px;
	max-width: 207px;
}

.loading-animation {
	width: 60px;
	height: 60px;
	border: 4px solid rgba(255, 255, 255, 0.2);
	border-top-color: #ffffff;
	border-radius: 50%;
	animation: spin 1s linear infinite;
	justify-self: center;
    margin-bottom: 10px;
  }
  
  @keyframes spin {
	to {
	  transform: rotate(360deg);
	}
  }
  
.centered-input .input-number input[type="number"] {
	text-align: center;
	width: 20px;
}
#tipo-cartao{
    display:none;
}

.alertify .alert>div, .alertify .dialog>div {
	overflow: auto;
	max-height: 90vh;
	border-radius: 10px;
}

.alertify .alert nav, .alertify .dialog nav {
	overflow: auto;
	max-height: 90vh;
	text-transform: capitalize !important;
	display: flex !important;
    justify-content: space-between !important;
}

.alertify .alert nav:has(button:only-child),
.alertify .dialog nav:has(button:only-child) {
	justify-content: flex-end !important;
}


.alertify .alert nav button, .alertify .dialog nav button {
	overflow: auto;
	max-height: 90vh;
	border-radius: 7px !important;
	color: #FFFFFF !important;
	text-transform: capitalize !important;
	background-color: #69B02A !important;
	margin: 0 5px 0 0 !important;
}

.alertify .alert nav button.cancel, .alertify .dialog nav button.cancel {
	background-color: #FFFFFF !important;
	color: #333 !important;
}

#parceled-price{
	display:none;
}

/**** Botoes (comprar mais / concluir compra) *********/
.cart-nav-btns{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 0;
	padding-top: 0px;
}
.cart-nav-btns div{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
.cart-nav-btns div:last-child{
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}
.cart-nav-btns.extra-btns {
	margin-bottom: 0px;
}


/**** Carrinho ****************************************/
.step-control{opacity:0.5; pointer-events: none;}
#cpf-titular-cartao.step-control,
#cartao_token_area.step-control,
#boleto_mensagem.step-control,
#parcelamento.step-control{display: none;}
#dados-cartao.step-control{height: 0;overflow: hidden;}
.timeline-carrinho{display:-webkit-box;display:-ms-flexbox;display:flex; margin:30px auto 30px; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;padding: 0;}
.timeline-carrinho li{list-style: none; font-size: 18px; position: relative; padding: 5px 4%; -webkit-box-flex:1; -ms-flex:1 1 auto; flex:1 1 auto; text-align: center;}
.timeline-carrinho li:after{content:''; height: 5px; background: rgba(0,0,0,.15); position: absolute; left: 0; bottom: 18px;z-index: 1}
.timeline-carrinho li:nth-child(2)::after,
.timeline-carrinho li:last-child::after {
  width: 100%;
  left: -50%;
}
.timeline-carrinho .bullet{width: 20px; height: 20px; border-radius: 50%; margin:0 auto; position: relative; display:block; z-index:2; border:4px solid #ffffff; background-color:#ccc; -webkit-box-sizing: content-box; box-sizing: content-box;}

.navbar-header .noticias-aprova {
	display: none;
}

#dLabel {
	background-color: #2F4659;
	color: #FFFFFF;
	border-radius: 5px;
	padding: 8px 10px;
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 7px;

}
#dLabel .icon-user {
	background-color: #ffffff;
	border-radius: 30px;
	padding: 1px 7px;
	color: #2F4659;
	height: auto;
	width: fit-content;
}

#dLabel .name-user {
	text-align: center;
}

.timeline-carrinho li span {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: white;
	color: #2F4659; 
	border: 1px solid #2F4659;
	transition: color 0.3s ease, background-color 0.3s ease;
	z-index: 2;
  }
  
  .timeline-carrinho li.active span {
	background-color: #2F4659;
	color: white;
  }

  .timeline-carrinho li.active:after {
	background-color: #2F4659;
  }
	
.timeline-carrinho li.active .bullet{background-color:#445F6F;}
.col-step{position: relative;}
.col-step + .col-step:before{content:''; width: 1px; height: 100%; position: absolute;left: 0; bottom: 0;}
#page-carrinho-checkout h3.step{font-size: 22px;margin-bottom: 20px;}
#page-carrinho-checkout #passo-3 h3.step{margin-bottom: 10px;}
#page-carrinho-checkout h3:not(.step){margin-top: 20px;}
.nav-tabs > li{-webkit-box-flex: 1;-ms-flex: 1 1 auto;flex: 1 1 auto;}
.nav-tabs > li a{width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; text-align: center;}

.item-detail > div:before{content:''; width: 100%; height: 1px; background: #ddd; display: block; margin:10px auto 0 auto;}

.item-detail > div:nth-of-type(2)::before {
	margin: 0 auto 10px auto; /* margem diferente só para a segunda */
}

.item-detail strong{color:#445f6f;}

.input-number input {
  border: none;
  background: transparent;
  pointer-events: none;
  width: auto;
  padding: 0;
  appearance: none;
}

.input-number, .input-number input {
	font-size: 14px;
}

.carrinho table{
	width: 100%;
	border-collapse: separate;
	border-spacing:0 10px;
}
.carrinho table td,
.carrinho table th{
	vertical-align: middle;
}
.carrinho table td.text-center span {
	display: block;
}
.carrinho table tfoot td {
	text-align: right !important;
}

.carrinho table tr button:focus{
	border: solid 1px;
	border-radius: 5px;
	border-color: #0093ff;
}
.carrinho table tr button{
	padding: 0px;
	margin: 0px 2px 0px 2px;
	border: none;
    background-color: inherit;
}

#no-item-msg td {text-align: center !important; font-weight: bold; height: 5em;}

.carrinho table h4 {
	/* font-size: 1.1em; */
	margin: 0;
}
.carrinho table input[type="number"] {
	display: inline-block;
	text-align: end;
	box-shadow: none;
	-moz-appearance:textfield;
}
.carrinho table input[type=number]::-webkit-inner-spin-button,
.carrinho table input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.carrinho table a .fa-2x:hover {color: #999;}
.carrinho table a .fa-times-circle {color: #912d2d;}
.carrinho table a .fa-times-circle:hover {color: #c23e3e;}
.carrinho table thead {color: #fff;}
[data-carrinho-btn-action="remover-produto"]{
	color: #79747E;
}
.carrinho table .item-name{
	color: #000000;
	font-size: 16px;
	font-weight: 700;
    line-height: 20px;
	word-break: break-word;
}
.carrinho table .price{
	white-space: nowrap;
}

.carrinho table [id*='total-price'] .price{
	color: #445F6F;
	font-size: 25px;
	font-weight: 700;
}

.carrinho .table-product-title{
	font-size: 18px;
}
.carrinho .table-packs thead{
	background: #445F6F;
}
.carrinho .table-services thead{
	background: #7A9F82;
}
.carrinho .table-item-detail td{padding:0}
.cart-label{
	margin-top: 20px;
	padding: 15px 0;
	border: dashed #ccc;
	border-width: 1px 0;
	text-align: center;
}
.cart-label h3{
	margin: 0;
}
.cart-label h3 + p{
	margin: 5px 0 0;
}
#cart-load{
	margin-bottom: 20px;
}
#cart-empty{
	display: none;
}

.tip .text{font-size: 12px; color: #777777; line-height: normal; display: block; margin-bottom: 10px;}

@media (min-width: 576px){
	.dropdown-menu .noticias-aprova {
		display: none;
	}
	.navbar-header .noticias-aprova {
        position: relative;
        display: inline-block;
        font-weight: bold;
        font-size: 16px;
        color: #2F4659;
        height: 42px;
        margin-top: 19px;
        align-items: center;
        padding-left: 60px;
	}
	.noticias-aprova:after {
		content: '';
		width: 8px;
		height: 8px;
		background-color: #22B200;
		border-radius: 50%;
		position: absolute;
		top: 0.2em;
		right: -1em;
	}
}


/************************************** Carrinho ******/

#dados-callcenter {
	margin-top: 10px;
}

#carrinho-finalizar-compra {
	margin-top: 10px;
}

.input-com-erro {
	margin-bottom: 0 !important;
}

.mensagem-erro {
	color: #7b0202;
	font-size: 12px;
	margin-top: 2px;
}

/**** Servicos ****************************************/
#form-carrinho-pacotes{
	margin-bottom: 5px;
}
#form-carrinho-pacotes,
#form-carrinho-servicos{
	display: none;
}
#form-carrinho-servicos.gratis .price-moeda{
	text-decoration: line-through;
}
#form-carrinho-servicos.gratis #total-price-service .price-box:after {
    content: 'R$ 0,00';
    display: block;
    font-size: 30px;
    text-decoration: none;
    font-weight: bold;
    color: #3c763d;
}
#form-carrinho-servicos.gratis .price{font-size: 15px; text-decoration: line-through;}
#servicos{
	display: none;
	margin-top: 40px;
}
.services-list .wrapper{
	margin-bottom: 20px;
}
.services-list .item{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-top: 20px;
	-webkit-box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.10);
	        box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.10)
}
.services-list .item .col .service-name{
	position: relative;
	margin: 0;
	color: #fff !important;
	font-size: 20px;
	text-transform: uppercase;
	text-shadow: 2px 2px 0 rgba(0,0,0,.15);
}
.services-list .item .col .service-name:after{
	display: block;
	position: absolute;
	top: 3px;
	left: -15px;
	border: solid transparent;
	border-width: 7px 0 7px 7px;
	border-left-color: #445F6F;
	content: '';
}
.services-list .item .col .service-description{
	margin: 5px 0 0;
	color: #fff;
}
.services-list .item .col .service-description p{
	margin: 0;
}
.services-list .item .col{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 20px;
}
.services-list .item .col-alpha{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	position: relative;
	padding-left: 25px;
	background: #7A9F82;
}
.services-list .item .col-alpha:before{
	display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    height: 100%;
    background: #445F6F;
    content: '';
}
.services-list .item .col-bravo{
	position: relative;
	background: #EEEEEE;
	text-align: center;
	overflow: hidden;
}
.services-list .item .col-bravo:before{
	display: block;
	position: absolute;
	top: 0;
	left: -26px;
	width: 30px;
	height: 100%;
	background: rgba(0, 0, 0, .1);
	-webkit-transform: skew(-3deg);
	        transform: skew(-3deg);
	content: '';
}
.services-list .item .col-bravo strong{
	margin-bottom: 15px;
	color: #7A9F82;
	font-size: 25px;
}

/******************************* Lista dos Servicos nao dicionados ***/

#hidden-dados.collapse.in {
	-webkit-animation: blink 3.0s;
	        animation: blink 3.0s;
}

@-webkit-keyframes blink {
	30% {
		background: transparent;
	}

	45% {
		background: #ccead3;
	}

	60% {
		background: transparent;
	}

	75% {
		background: #ccead3;
	}

	90% {
		background: transparent;
	}
}

@keyframes blink {
	30% {
		background: transparent;
	}

	45% {
		background: #ccead3;
	}

	60% {
		background: transparent;
	}

	75% {
		background: #ccead3;
	}

	90% {
		background: transparent;
	}
}

.col-step{width: 100%;}
.col-step + .col-step{margin-top:15px}

@media (max-width: 767px) {
	.container>.navbar-header {
		margin-right: 0px;
		margin-left: 0px;
		float: left;
	}

	.navbar-right {
		float: right;
	}

	#page-carrinho-checkout h2 {
		font-size: 22px;
	}

	.carrinho table td,
	.carrinho table th {
		padding: 5px 5px 0 5px;
	}

	.carrinho table th.text-center,
	.carrinho table td.text-center {
		border-right: solid 1px #eeeeee;
    	border-left: solid 1px #eeeeee;
	}

	.services-list .item {
		display: block;
	}

	.services-list.open .service-description {
		max-height: 500px;
		overflow: initial;
	}

	.services-list.open .service-description:after {
		display: none;
	}

	.services-list .service-description {
		max-height: 64px;
		overflow: hidden;
		position: relative;
		-webkit-transition: max-height 0.6s;
    			transition: max-height 0.6s;
	}

	.services-list .service-description:after {
		content: '';
		width: 100%;
		height: 45px;
		position: absolute;
		bottom: 0px;
		background: -webkit-gradient(linear, left bottom, left top, color-stop(5%, #7a9f82), to(transparent));
		background: linear-gradient(-0deg, #7a9f82 5%, transparent);
	}
}

@media (max-width: 480px) {
	.cart-nav-btns {
		display: block;
	}

	.cart-nav-btns div:last-child .btn {
		margin-top: 10px;
	}

	.cart-nav-btns .btn {
		width: 100%;
	}

	.nav-tabs>li>a {
		padding: 10px 10px;
		font-size: 12px;
	}
	.timeline-carrinho li{font-size: 14px; padding-bottom:30px}
	.timeline-carrinho .bullet{position: absolute; bottom:5px; left: calc(50% - 13px);}
}