@font-face {
  font-family: "SourceSansPro-Bold";
  font-weight: normal;
  src: url("../assets/fonts/SourceSansPro-Bold.woff2") format("woff2"), 
  url("assets/fonts/SourceSansPro-Bold.woff") format("woff"), 
  url("assets/fonts/SourceSansPro-Bold.ttf") format("truetype"); 
}
@font-face {
  font-family: "SourceSansPro-Regular";
  font-weight: normal;
  src: url("../assets/fonts/SourceSansPro-Regular.woff2") format("woff2"), 
  url("assets/fonts/SourceSansPro-Regular.woff") format("woff"), 
  url("assets/fonts/SourceSansPro-Regular.ttf") format("truetype"); 
}
@font-face {
  font-family: "SourceSansPro-SemiBold";
  font-weight: normal;
  src: url("../assets/fonts/SourceSansPro-SemiBold.woff2") format("woff2"), 
  url("assets/fonts/SourceSansPro-SemiBold.woff") format("woff"), 
  url("assets/fonts/SourceSansPro-SemiBold.ttf") format("truetype"); 
}

body{
	font-family: "SourceSansPro-Regular";
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	margin-bottom: 0rem;
	font-family: "SourceSansPro-Bold";
	font-weight: 700;
	line-height: 1.2;
	color: #333333
}

h5, .h5 {
  font-size: 1rem;
}

a, a:hover {
  color: #000000;
  text-decoration: none;
}

#mainNav {
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid #ccc;
  background-color: #ffffff;
  transition: padding-top 0.3s ease-in-out, padding-bottom 0.3s ease-in-out;
  box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.2);
}

#mainNav .navbar-brand img {
  height: 4rem !important;
}

#mainNav.navbar-shrink {
  background-color: #ffffff;
}

#mainNav .navbar-nav .nav-item .nav-link,
#mainNav .navbar-nav .nav-item .nav-link.active, 
#mainNav .navbar-nav .nav-item .nav-link:hover {
  border: 1px solid;
  border-radius: 20px;
  font-size: 14px;
  color: #f05623;
  font-family: "SourceSansPro-Bold";
  padding: 5px 25px;  
}

.chosen-container-single .chosen-single {
  border-radius: 0px !important;
  height: 38px !important;
  border: 1px solid #ced4da !important;
  font-size: 16px !important;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px #ced4da !important;
}

header.masthead {
  padding-top: 7rem;
  padding-bottom: 1rem;
  background-color: #cccccc !important;
  background-image: none;
  min-height: 350px;
}

.page-section h2.section-heading {
  font-size: 1.5rem;
  margin-top: 0;
  margin-bottom: 1.5rem;
}

.page-section {
  padding: 10rem 0 0 0;
  min-height: 800px;
}

.fa-stack {
	display: inline-block;
	vertical-align: middle;
	height: 1.5em;
	position: relative;
	width: 2.5em;
}

.text-default{
	color: #333333;
	margin-bottom: 0px;
}

.text-default-left{
  color: #333333;
  margin-bottom: 0px;
  text-align: left;
}

.text-bold{
	font-weight: bold;
	color: #333333;
	margin: 10px 0px;
}

.text-alert{
  font-weight: normal;
  background: #F05623;
  padding: 5px;
  color: #fff;
  border-radius: 5px;
  font-size: 14px;
}

.text-center{
  text-align: center !important;
  justify-content: center;
}

/*FORMULÁRIOS*/
  
  .form-control-geekr{
    display: block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;  
  }

  .tooltip{
    background: #666;
    padding: 0px 10px;
    color: #fff;
    font-size: 12px;
    display: initial;
    width: auto;
    border: 1px solid #CAD5E0;
    padding: 4px 10px;
    position: absolute;
  }

  .tooltip:after {
    content: '';
    display: block;
    position: absolute;
    top: 8px;
    left: -5px;
    width: 10px;
    height: 10px; 
    background: #666;
    -moz-transform:rotate(-45deg);
    -webkit-transform:rotate(-45deg);
  }

  .inner-addon {
    position: relative;
  }

  .inner-addon .glyphicon {
    position: absolute;
    padding: 10px;
    pointer-events: none;
  }

  .password__wrapper .toggle-password {
    color: #F05623;
    display: inline-block;
    width: 24px;
    height: 18px;
    position: absolute;
    right: 12px;
    top: 10px;
    cursor: pointer;
    z-index: 1;
  }

  .form-control{
    border-radius: 0;
  }

  .form-control-check{
    height: 25px;
    width: 25px;
    margin: 0px 10px 10px 0px;
    border: 1px solid;
  }

  .form-control-inline{
    display: flex;
  }

  .label-checkbox{
    color: #f05623;
    padding: 0px 10px 0px 0px;
  }

  .msg-erro{
    color: red;
  }

  .caracteres_box{
    border: 0px;
    width: 100%;
    display: block;
    text-align: right;
    color: #999;
    margin-top: -15px;
  }

  /* Customize the label (the label-checkbox) */
  .label-checkbox {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 16px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }

  /* Hide the browser's default checkbox */
  .label-checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
  }

  /* Create a custom checkbox */
  .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #FFF;
    border: 1px solid #ccc;
  }

  /* On mouse-over, add a grey background color */
  .label-checkbox:hover input ~ .checkmark {
    background-color: #FFFFFF;
  }

  /* When the checkbox is checked, add a blue background */
  .label-checkbox input:checked ~ .checkmark {
    background-color: #FFFFFF;
  }

  /* Create the checkmark/indicator (hidden when not checked) */
  .checkmark:after {
    content: "";
    position: absolute;
    display: none;
  }

  /* Show the checkmark when checked */
  .label-checkbox input:checked ~ .checkmark:after {
    display: block;
  }

  /* Style the checkmark/indicator */
  .label-checkbox .checkmark:after {
    left: 7px;
    top: 5px;
    width: 10px;
    height: 10px;
    border: solid #f05623;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }

/*CONTADOR DE PASSOS*/
  .contador-passos-active{
    border: 1px solid #ccc;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    padding: 9px;
    line-height: 1;
    display: inline-block;
    color: #ffffff;
    background-color: #F05623;
    margin: 0px 10px;
    cursor: pointer !important;
  }

  .contador-passos{
    border: 1px solid #ccc;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    padding: 9px;
    line-height: 1;
    display: inline-block;
    color: #F05623;
    margin: 0px 10px;
    cursor: pointer !important;
  }

/*BOTÕES*/
  .btn-white {
    color: #fff;
    background-color: #187645;
    border-color: #187645;
  }

  .btn-passo{
    border-radius: 20px;
    margin: 10px 0px;
  }

  .btn-indicacao{
    border-radius: 20px;
    margin: 10px 0px;
  }

  .btn-footer{
    border-radius: 20px;
    margin: 10px 0px;
    font-size: 14px;
  }

  .btn-gravar{
    border-radius: 20px;
    margin: 10px 0px;
  }

  .btn-cupom{
    border-radius: 20px;
    margin: 10px 0px;
  }

  .btn-acao{
    border-radius: 20px;
    margin: 10px 0px;
  }

  .btn-login{
    border-radius: 20px;
    margin: 10px 0px;
  }

  .btn-pagar{
    border-radius: 20px;
    margin: 10px 0px;
  }

  .btn-remover{
    background-color: #cccccc;
  }

  .btn-adicionar-leitor{
    border-radius: 20px;
    margin: 10px 0px;
    background-color: #cccccc;
    border-color: #cccccc;
    color: #000000;
  }

/*ÍCONES*/
  .icone-color-orange{
    color: #F05623;
  }

/*PRODUTO*/
  .linha-produto{
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    justify-content: center;
    /*align-items: center;*/
  }

  .box-produto{
    border: 1px solid #F2F2F2;
    min-height: 500px;
    border-left: 5px solid #F2F2F2;
    box-shadow: 3px 3px 3px #F2F2F2;
    margin: 0px 10px;
    max-width: 250px;
  }

  .titulo-produto{
    font-weight: 200;
    line-height: 1.2;
    text-transform: uppercase;
    min-height: 70px;
  }

  .text-descritivo{
    min-height: 375px;
  }
/*QUANTIDADE*/
  .linha-quantidade{
    width: 250px;
    margin: 0 auto;
  }

  .box-quantidade{
    border: 1px solid #F2F2F2;
    border-left: 5px solid #F2F2F2;
    box-shadow: 3px 3px 3px #F2F2F2;
    margin: 0px 10px;
    max-width: 350px;
  }

  .select-quantidade{
    border-radius: 20px;
    border: 2px solid #F05623;
    margin: 10px;
  }

  .select-quantidade-produto{
    border-radius: 20px;
    border: 2px solid #F05623;
  }

  .titulo-quantidade{
    font-weight: 200;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 10px 0px;
  }

/*RESPONSAVEL*/
  .linha-left{
    width: 100%;
    text-align: left;
    margin: 10px 0px;
  }

  .linha-right{
    width: 100%;
    text-align: right;
    margin: 10px 0px;
  }

/*LEITORES*/
  .dados-leitor{
    width: 100%;
    text-align: left;
    margin: 10px 0px;
    height: 20px;
    font-size: 15px;
  }

  .remover-leitor{
    padding: 0px;
    margin: 0px;
    border: 0px;
    font-weight: bold;
    height: 20px;
    font-size: 15px;
    line-height: initial;
    text-align: right;
    width: 100%;
    background-color: #dddddd;
  }

/*FINALIZAÇÃO*/
  .box-finalizacao{
    border: 1px solid #F2F2F2;
    min-height: 500px;
    border-left: 5px solid #F2F2F2;
    box-shadow: 3px 3px 3px #F2F2F2;
    margin: 0px 10px;
    max-width: 300px;
  }

  .box-finalizacao-text{
    display: flex;
    width: 80%;
    text-align: center;
    margin: 0 auto;
  }

  .text-left{
    color: #333333;
    margin-bottom: 0px;
    text-align: left !important;
    width: auto;
    white-space: nowrap;
  }

  .text-right{
    color: #333333;
    margin-bottom: 0px;
    text-align: right !important;
    width: 100%;
    font-weight: bold;
  }

  .bandeira{
    width: 15%;
  }

  .img-bandeira{
    width: 100%;
    padding: 0px 3px;
    filter: grayscale(100%);
  }

  .resposta_pagamento{
    color: red;
    font-weight: bold;
    padding: 10px;
    display: block;
  }

/*CONFIRMAÇÃO*/
  .codigo_pix{
    word-break: break-all;
  }

/*FOOTER*/
  .footer {
    background-image: url(https://www.jornaljoca.com.br/wp-content/themes/understrap-child/images/footer/background.svg);
    background-size: cover;
    background-position: -228px top;
    background-repeat: no-repeat;
  }

  .footer {
    width: 100%;
    padding: 250px 0 130px;
    position: relative;
  }

  .sub-footer{
    background-color: #187645;
    bottom: 0;
    left: 0;
    width: 100%;
    margin-top: 20px;
    color: #000000;
    font-family: "SourceSansPro-Bold";
  }

  .lista {
    list-style-type: none;
    margin-bottom: 0;
    padding-left: 0;
  }

  .btn-social {
    height: 1.5rem;
    width: 1.5rem;
    padding: 12px;
    border-radius: 100%;
    border: 1px solid;
  }

  .span-social{
    margin-left: 5px;
    font-size: 11px;
  }

  h1.h1_footer{
    color: #FFFFFF;
  }

  h2.h2_footer{
    color: #FFFFFF;
  }

  p.p_footer{
    color: #FFFFFF;
  }

  .span_footer{
    font-size: 14px;
    display: block;
  }

  .img_footer{
    width: 300px;
    margin-top: -300px;
    position: absolute;
    right: 0;
  }

  @media (max-width: 465px){
    .linha-produto{
      display: block;
    }

    .box-produto{
      margin: 0 auto;
      min-height: auto;
      margin-top: 20px;
    }

    .img_footer{
      display: none;
    }
  }

  @media (max-width: 465px){
    .img_footer{
      display: none;
    }
  }

/*RESUMO*/
  .resumo-flutuante {
    width: 200px;
    position: fixed;
    z-index: 2000;
    bottom: 50%;
    right: 0px;
    padding: 5px;
    border: 1px solid #F2F2F2;
    border-left: 5px solid #F2F2F2;
    box-shadow: 3px 3px 3px #F2F2F2;
    min-height: 200px;
    font-size: 20px;
    background: #fff;
  }