:root {
    --input-padding-x: 1.5rem;
    --input-padding-y: .75rem;
  }
  
  .card-signin {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.1);
  }
  
  .card-signin .card-title {
    margin-bottom: 2rem;
    font-weight: 300;
    font-size: 1.5rem;
  }
  
  .card-signin .card-body {
    padding: 2rem;
  }
  
  .form-signin {
    width: 100%;
  }
  
  .form-signin .btn {
    font-size: 80%;
    border-radius: 5rem;
    letter-spacing: .1rem;
    font-weight: bold;
    padding: 1rem;
    transition: all 0.2s;
  }
  
  .form-label-group {
    position: relative;
    margin-bottom: 1rem;
  }
  
  .form-label-group input {
    height: auto;
    border-radius: 2rem;
  }
  
  .form-label-group>input,
  .form-label-group>label {
    padding: var(--input-padding-y) var(--input-padding-x);
  }
  
  .form-label-group>label {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    margin-bottom: 0;
    /* Override default `<label>` margin */
    line-height: 1.5;
    color: #495057;
    border: 1px solid transparent;
    border-radius: .25rem;
    transition: all .1s ease-in-out;
  }
  
  .form-label-group input::-webkit-input-placeholder {
    color: transparent;
  }
  
  .form-label-group input:-ms-input-placeholder {
    color: transparent;
  }
  
  .form-label-group input::-ms-input-placeholder {
    color: transparent;
  }
  
  .form-label-group input::-moz-placeholder {
    color: transparent;
  }
  
  .form-label-group input::placeholder {
    color: transparent;
  }
  
  .form-label-group input:not(:placeholder-shown) {
    padding-top: calc(var(--input-padding-y) + var(--input-padding-y) * (2 / 3));
    padding-bottom: calc(var(--input-padding-y) / 3);
  }
  
  .form-label-group input:not(:placeholder-shown)~label {
    padding-top: calc(var(--input-padding-y) / 3);
    padding-bottom: calc(var(--input-padding-y) / 3);
    font-size: 12px;
    color: #777;
  }
  
  /* Fallback for Edge
  -------------------------------------------------- */
  
  @supports (-ms-ime-align: auto) {
    .form-label-group>label {
      display: none;
    }
    .form-label-group input::-ms-input-placeholder {
      color: #777;
    }
  }
  
  /* Fallback for IE
  -------------------------------------------------- */
  
  @media all and (-ms-high-contrast: none), 
  (-ms-high-contrast: active) {
    .form-label-group>label {
      display: none;
    }
    .form-label-group input:-ms-input-placeholder {
      color: #777;
    }
  }
  .btn-cadastro {
    color: white;
    background-color: #ea4335;
  }

  .centralizarImagem { 
    display:         flex;
    display: -webkit-flex; /* Garante compatibilidade com navegador Safari. */
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: auto;
    height: 350px;
    background-color: rgb(210, 210, 210, 0.1);
}
.divImagemCentralizada{
    display:         flex;
    display: -webkit-flex; /* Garante compatibilidade com navegador Safari. */
    justify-content: center;
    align-items: center;
}
.divImagemCentralizada img{
  height: auto;
  width: auto;
}

.zoom { 
	overflow: hidden;
}

.zoom {
  animation: spin 3s linear infinite;
 }

@keyframes spin {
  0% {
    -moz-transform: scale(3);
    -webkit-transform: scale(3);
    transform: scale(3);
  }
  100% {
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
    
  }
 }

 .imagem-cesta {
    vertical-align: middle;
    max-height: 180px;
    margin-top: 3px;
    margin-left: 5px;
  }
  .card-img-produto-cesta{
    /*background-color: rgb(245, 245, 245);*/
    width: 200px;
    height: 150px;
    text-align: left;
  
  }
@media(max-width: 760px) {
   /* MOBILE */
  .imagem-cesta {
    max-width: 100%;
    max-height: 100%;
  }
  .card-img-produto-cesta{
    width: 100%;
    height: auto;
    text-align: center;
  }
  .centralizarImagem { 
    height: 450px;
  }
  .shop_sidebar_area{
    display: none;
  }
  .btn-search-smartphone{
    display: block;
  }
  .section-padding-80{
    padding: 10px;
  }
}
@media(min-width: 760px) {
  /* DESKTOP */
  .imagem-cesta {
    max-width: 185px;
  }
  .shop_sidebar_area{
    display: block;
  }
  .btn-search-smartphone{
    display: none;
  }
}

@media only screen and (max-width: 1000px) {
  /* For smathphones: */
  .desktop{
    display:none;
  }
  .smathphone{
    display:block;
  }
  #img-logo-cliente{
    max-width: 100px;;
  }
}
@media only screen and (min-width: 1000px) {
  /* For desktop: */
  .smathphone{
    display:none;
  }
  .desktop{
    display:block;
  }
  #img-logo-cliente{
    min-width: 150px;;
  }
}
/* BOTOES FINALIZAÇÂO DE COMPRA */

/* Botão pesquisar e Mais Botões */
.btnFinalizar, .btnVoltar{ 
  position: fixed;
  float: bottom;
  bottom: 0px;
  z-index: 100;
}

.btnFinalizar{
  right: 0px;
  width:100%;
  padding:0px;
  margin: 0px;
}

.btnVoltar{
  left: 0px;
}
.btnVoltarBtn{
  display: inline-block;
}

.btnFinalizarBtn{
  display: inline-block;
  width:100%;
}

.btnPrincipal{
  font-size: 16px;
  padding: 10px;
  border-radius: 0px;
}

.color-btn-finalizar{
  background-color: #D10024;
  color: #FFF;
}
.product_size
{
	margin-top: 43px;
}
.product_size_title
{
	font-size: 18px;
	font-weight: 700;
	color: #4a4a4a;
}
.product_size ul
{
	margin-top: 22px;
}
.regular_radio
{
	display: none;
  font-size: 1vw;
}
.regular_radio:checked + label
{
	color: #2fce98;
	border-color: #2fce98;
}
.regular_radio + label
{
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	width: 26px;
	height: 26px;
	background: transparent;
	border: solid 2px #4a4a4a;
	color: #4a4a4a;
	cursor: pointer;
	margin-right: 4px;
	font-weight: 600;
}
.regular_radio[disabled] + label
{
	border: solid 2px #969696;
	color: #969696;
	cursor: default;
}

.reservado .regular_radio + label{
	border: solid 2px #e7e1e1;
	color: #cac3c3;
  text-decoration: line-through;
}

.reservado .regular_radio:checked + label{
	color: #2fce98;
	border-color: #2fce98;
}

.display-none{
  display: none;
}

.carousel-item-custom{
  background-color: rgba(196, 189, 189, 0.5);
}

@media(min-width:768px) {
  .carousel-item-custom{
    height: 500px;
    margin: 0 auto;
    line-height: 500px;
  }
  .carouselExampleIndicators{
    margin-top: -20px;
  }
  .img-banner{
    max-height: 500px;
  }  
  .carousel-control-prev-icon, .carousel-control-next-icon{
    width: 30px;
    height: 30px;
  }
}
@media(max-width:767px) {
  .carousel-item-custom{
    height: 250px;
    margin: 0 auto;
    line-height: 250px;
  }
  .img-banner{
    max-height: 250px;
  }
  .carousel-control-prev-icon, .carousel-control-next-icon{
    width: 20px;
    height: 20px;
  }
}
.carousel-item-custom{
  vertical-align: middle;
}
.carousel-control-prev-icon, .carousel-control-next-icon{
  background-color: rgba(17, 16, 16, 0.1);
  border-radius: 50%;
}

.fullscreenOnClick:-webkit-full-screen img {
  max-width: 100%;
  max-height: 100%;
  margin-top:10%;
}

.fullscreenOnClick:hover{
  cursor:zoom-in;
}


.absolute{
  position: absolute;
  z-index: 1000;

}
.fab{
  position: fixed;
  bottom:10px;
  right:10px;
}

.fab button{
  cursor: pointer;
  width: 48px;
  height: 48px;
  border-radius: 30px;
  background-color: rgba(209,0,36); 
  border: none;
  box-shadow: 0 1px 5px rgba(0,0,0,.4);
  font-size: 40px;
  color: white;
  -webkit-transition: .2s ease-out;
  -moz-transition: .2s ease-out;
  transition: .2s ease-out;
}

.fab button.main{
  position: absolute;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  background-color: rgb(58, 192, 80);
  right: 0;
  bottom: 0;
  z-index: 20;
}

.fab i{
  color: rgba(255, 255, 255);
}

.fab:hover{
  transition: .2s ease-out;
  transform: scale(1.1);
}

@media(max-width:767px) {
  .fab button{
    width: 30px;
    height: 30px;
    font-size: 25px;
  }
  .fab button.main{
    width: 40px;
    height: 40px;
  }
}

@media(max-width:1100px) {
  #modal_exibicao_produto{
    min-width: 99%;
  }
}

.card_info_pesquisa{
  background-color: rgb(255, 254, 251);
  margin-left: 10px;
  margin-top: 5px;
  width: 10%;
  font-size: 10px;
  padding-left: 2px;
  box-shadow: 0 0 1em rgb(105, 105, 104);
  min-width: 65px;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  display: inline-block;
  white-space: nowrap;
  overflow: hidden !important;
  text-overflow: ellipsis;
}
.card_info_pesquisa_geral{
  background-color: rgb(247, 247, 247);
  padding: 10px;
}
.card_info_pesquisa .btn{
  font-size: 10px;
}
.icone_remover_filtro{
  margin-top: -15px;
  margin-right: 5px;
}

.filtro_pesquisa{
  width: 250px;
}
.btn_filtro_pesquisa{
  min-width: 140px;
  margin-top:10px;
}
.card_produto{
  padding: 1%;
}
@media screen and (min-width: 0px) and (max-width: 640px){
  .card_produto{
    width: 100%;
  }
}
@media screen and (min-width: 641px) and (max-width: 800px){
  .card_produto{
    width: 50%;
  }
}
@media screen and (min-width: 801px) and (max-width: 1100px){
  .card_produto{
    width: 33%;
  }
}
@media screen and (min-width: 1101px) and (max-width: 1300px){
  .card_produto{
    width: 25%;
  }
}
@media screen and (min-width: 1301px) and (max-width: 5000px){
  .card_produto{
    width: 20%;
  }
}

/* cadastro cartão de credito */
.mainscreen
{
width: 100%;
display: flex;
  flex-direction: column;
  background-color: #DFDBE5;
  background-image: url("https://wallpaperaccess.com/full/3063067.png");
  color:#963E7B;
}

.rightside {
  background-color: #ffffff;
  border-bottom-right-radius: 1.5rem;
  border-top-right-radius: 1.5rem;
  padding: 1rem 2rem 3rem 3rem;
}

p{
  display:block;
  font-size: 1.1rem;
  font-weight: 400;
}

.inputbox
{
  color:#030303; 
  width: 100%;
  padding: 0.5rem;
  border: none;
  border-bottom: 1.5px solid #ccc !important;
  margin-bottom: 1rem;
  border-radius: 0.3rem;
  font-family: 'Roboto', sans-serif;
  color: #615a5a;
  font-size: 1.1rem;
  font-weight: 500;
  outline:none;
  text-transform: uppercase;
}

.buttoncc{
  background: rgba(0, 0, 0, 0.747);
  padding: 15px;
  border: none;
  border-radius: 50px;
  color: rgb(255, 248, 248);
  font-weight: 400;
  font-size: 1.2rem;
  margin-top: 10px;
  width:100%;
  letter-spacing: .11rem;
  outline:none;
}

.buttoncc:hover
{
  transform: scale(1.05) translateY(-3px);
  box-shadow: 3px 3px 6px #38373785;
}

@media only screen and (max-width: 1000px) {
  .card{
      flex-direction: column;
      width: auto;
    
  }

  .rightside{
      width:auto;
      border-bottom-left-radius: 1.5rem;
      padding:0.5rem 3rem 3rem 2rem;
      border-radius:0;
  }
} 

.lds-dual-ring {
  display: inline-block;
  width: 10px;
  height: 10px;
}
.lds-dual-ring:after {
  content: " ";
  display: block;
  width: 20px;
  height: 20px;
  margin: 0px;
  border-radius: 50%;
  border: 6px solid #fff;
  border-color: #fff transparent #fff transparent;
  animation: lds-dual-ring 1.2s linear infinite;
}
@keyframes lds-dual-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.scrollable-icons {
  max-height: 170px; /* Altura máxima */
  overflow-y: auto; /* Adiciona rolagem vertical */
  display: block; /* Itens um abaixo do outro */
  margin-bottom: 8px; /* Espaçamento entre os itens */
}