.table_noborder { border-top: none!important; }
.round { border-radius: 20px!important; }
#btnVerMas {
  margin-top: -100px;
}

.caja_titulo {
  background-color:#B5F200;
  border-radius: 20px 20px 0px 0px!important;
  padding: 20px;
  box-shadow: 0 0 10px rgba(0,0,0,0.3);
}

.same_size {
  position: relative;
  float: left;
  width: 280px;
  height: 280px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
}

.custom_link { color: #B5F200!important; }
.custom_link:hover { color: #FFA300!important; }
.w100 { width: 100%!important; }
.green { color: #B5F200!important; }
.darkblue { color: #00203D!important; }
.orange { color: #FFA300!important; }
.red { color: #E60026!important; }
.black { color: black; }
.white { color: white; }
.bold { font-weight: bold; }
.nav-custom { font-size: 20px; }
.fright { float: right!important; }
.m0 { margin: 0!important; }
.mt-10 { margin-top: 10px; }
.mt-20 { margin-top: 20px; }
.mt-40 { margin-top: 40px; }
.mt-60 { margin-top: 60px; }
.mb-10 { margin-bottom: 10px; }
.mb-20 { margin-bottom: 20px; }
.responsive_auth { display: none!important; }
.thick { font-weight: bold!important; }
.pt0 { padding-top: 0px; }
.round_corn { border-radius: 20px; box-shadow: 0 0 10px rgba(0,0,0,0.3); }
#row_cajas {
  margin-top:-90px;
}

.search_btn {
  top: 7px;
  bottom: unset;
}

.icono-tarjeta {
  max-width: 50%!important;
}

.req {
    font-weight: bold;
}

.req:after{ 
    content:'*'; 
    color:red; 
    padding-left:3px;
}

.bubble_color1 { background-color: lightblue; }
.bubble_color2 { background-color: lightgreen; }


/* CSS talk bubble */
.talk-bubble {
  margin: 20px;
  display: inline-block;
  position: relative;
  width: 100%;
  height: auto;
}
/* talk bubble contents */
.talktext{
  padding: 1em;
  text-align: left;
  line-height: 1.5em;
}
.talktext p{
  /* remove webkit p margins */
  -webkit-margin-before: 0em;
  -webkit-margin-after: 0em;
}
/* Right triangle placed top left flush. */
.tri-right.border.left-top:before {
  content: ' ';
  position: absolute;
  width: 0;
  height: 0;
  left: -40px;
  right: auto;
  top: -8px;
  bottom: auto;
  border: 32px solid;
  border-color: #666 transparent transparent transparent;
}
.tri-right.left-top:after{
  content: ' ';
  position: absolute;
  width: 0;
  height: 0;
  left: -20px;
  right: auto;
  top: 0px;
  bottom: auto;
  border: 22px solid;
  border-color: lightblue transparent transparent transparent;
}
/* Right triangle placed top right flush. */
.tri-right.border.right-top:before {
  content: ' ';
  position: absolute;
  width: 0;
  height: 0;
  left: auto;
  right: -40px;
  top: -8px;
  bottom: auto;
  border: 32px solid;
  border-color: #666 transparent transparent transparent;
}
.tri-right.right-top:after{
  content: ' ';
  position: absolute;
  width: 0;
  height: 0;
  left: auto;
  right: -20px;
  top: 0px;
  bottom: auto;
  border: 20px solid;
  border-color: lightgreen transparent transparent transparent;
}

.AClass{
    right:25px;
    position: absolute;
}

.modal_image {
  width:100%;
  height:500px;
  object-fit: contain;
 }

 .cursor { cursor: pointer; }

.imagen_fondo {
    position: relative;
    float: right;
    width:  80px;
    height: 80px;
    background-position: 50% 50%;
    background-repeat:   no-repeat;
    background-size:     contain;
    border: 1px solid #d9f0f8;
}

.foto_local {
    position: relative;
    float: left;
    width:  120px;
    height: 120px;
    background-position: 50% 50%;
    background-repeat:   no-repeat;
    background-size:     contain;
    border: 1px solid #d9f0f8;
}

.foto_servicio {
    position: relative;
    float: left;
    width:  140px;
    height: 140px;
    background-position: 50% 50%;
    background-repeat:   no-repeat;
    background-size:     contain;
}

form.example input[type=text] {
  padding: 10px;
  font-size: 15px;
  border: 1px solid grey;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  float: left;
  width: 80%;
  background: #f1f1f1;
}

form.example button {
  float: left;
  width: 20%;
  padding: 10px;
  background: grey;
  color: white;
  font-size: 15px;
  border: 1px solid grey;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  border-left: none;
  cursor: pointer;
}

form.example button:hover {
  background: #0b7dda;
}

form.example::after {
  content: "";
  clear: both;
  display: table;
}

@media only screen and (max-width: 420px) {
  .product_search_form { display: contents!important; }
  .responsive_auth { display: block!important; }
  .mt-r { margin-top: 10px; }
  .mt-r2 { margin-top: 40px; }
  #row_cajas {
    margin-top:-50px;
  }
  .w100-r { width:100%; }

  #btnVerMas {
    margin-top: -50px;
  }
}