
.bg-gray {
  background-color: #F2F3F5;
}

.bg-white {
  background-color: #FFFFFF;
}

.box-shadow {
  -webkit-box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
  box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

.border-bottom-gris {
  border-bottom: 2px solid #ddd !important; 
}

.border-bottom-verde {
  border-bottom: 2px solid #00AAA1 !important;
}

.border-bottom-azul {
  border-bottom: 2px solid #0667B0 !important;
}

.border-bottom-rojo {
  border-bottom: 2px solid #ED1C24 !important;
}

.section-title {
  margin-top: 15px;
}

.small {
  font-size: 80;
}

.mr-5 {
  margin-right: 5px;
}

.btn-informacion {
  background-color: #FFFF00;
  float:right;
}

.btn-informacion:hover {
  background-color: #FFFF00;
  float:right;
}

.btn-informacion a:hover {
  background-color: #FFFF00;
}


.section-title-sd {
margin-top: 5px;
/*margin-bottom: 20px;*/
padding-bottom: 0;
position:relative;
font-size:24px;
/* text-transform:capitalize; */
color:#525b6e;
font-weight:600;
}

.section-title-sd:before {
/*width:50px;*/
z-index:1;
}

.section-title-sd:after {
right:0;
/*background-color:#e6e6e8;*/
}

.section-title-sd:before, 
.section-title-sd:after {
position:absolute;
content:"";
bottom:-12px;
left:0;
height:2px;
} 

.section-title-sd.title {
/*margin-bottom:45px;*/
margin-bottom:25px;
}


.section-title-sd {
  margin-top: 2px;
}


.catagory {
top:35px;
}

.oculto {
      display: none;
}

.img-responsive-banner {
height: 100%;
width: 100%;
}


.text-muted {
text-decoration: none !important;
}

.text-muted {
color: #6c757d !important;
}

.text-min {
font-size: 14px !important;
}

.img-gray-scale {
-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
filter: grayscale(100%);
}
.img-gray-scale:hover {
-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
filter: grayscale(0%);
}



/* BOTON SUBIR (UP) */
.boton-subir{
      display: none;
      background: #6E6E6E;
      /*background: #00974B;*/
      /*background: #C9C9C9;*/
      /*border: thin solid #fff;*/ 
      border-radius: 50%;
      position: fixed;
      right: 15px;
      bottom:2px;
      z-index: 999999999;
}

/*evento hover*/
.boton-subir:hover{
      -webkit-box-shadow: 0 0 10px 0 rgba(0,0,0,.10);
      box-shadow: 0 0 10px 0 rgba(0,0,0,.10);	
      opacity:0.5;
}

/*estilos para el tag i*/
.boton-subir i{
      color: #fff;
      font-size: 1.5em;
      padding: 10px 10px 10px 10px;
      /*transform: rotate(-45deg); */
      /*-ms-transform: rotate(-45deg); /* IE 9 */
      /*-webkit-transform: rotate(-45deg); /* Chrome, Safari, Opera */
      /*-moz-transform: rotate(-45deg); /* Chrome, Safari, Opera */
}

/* FIN BOTON SUBIR (UP) */




	/* BARRA FLOTANTE SERVICIOS */
  .social-hv1 {
      position: fixed; /* Hacemos que la posición en pantalla sea fija para que siempre se muestre en pantalla*/
      left: 5; /* Establecemos la barra en la izquierda */
      top: 250px; /* Bajamos la barra 200px de arriba a abajo */
      z-index: 2000; /* Utilizamos la propiedad z-index para que no se superponga algún otro elemento como sliders, galerías, etc */
  }


  .social-hv {
      width: 50px;
      border: 1px solid #d9d9d9;
      border-left-color: rgb(217, 217, 217);
      border-left-style: solid;
      border-left-width: 1px;
      border-left: none;
      background-color: #fff;
      position: fixed; /* Hacemos que la posición en pantalla sea fija para que siempre se muestre en pantalla*/
      left: 5; /* Establecemos la barra en la izquierda */
      top: 250px; /* Bajamos la barra 200px de arriba a abajo */
      z-index: 2000; /* Utilizamos la propiedad z-index para que no se superponga algún otro elemento como sliders, galerías, etc */
  }

  .social-hv ul {
      list-style: none;
      padding: 5px;
  }

  .social-hv ul li a {
    display: inline-block;
    /* background: #000; */

    width: 50px;
height: 50px;
    padding: 15px 10px;
    text-decoration: none;
    -webkit-transition:all 500ms ease;
    -o-transition:all 500ms ease;
    transition:all 500ms ease; /* Establecemos una transición a todas las propiedades */
  }

  .social-hv ul li .icon-facebook {background:#3b5998;} /* Establecemos los colores de cada red social, aprovechando su class */
  .social-hv ul li .icon-twitter {background: #00abf0;}
  .social-hv ul li .icon-googleplus {background: #d95232;}
  .social-hv ul li .icon-pinterest {background: #ae181f;}
  .social-hv ul li .icon-mail {background: #666666;}


.social-hv ul li .blue {background-color:#0072bc;}

.social-hv ul li .dark-blue {background-color:#134e90;}

.social-hv ul li .green {background-color:#6b962f;}
.social-hv ul li .orange {background-color:#f7941d;}
.social-hv ul li .red {background-color:#ed1c24;}
.social-hv ul li .brown {background-color:#744a3b;}
.social-hv ul li .pink {background-color:#ed145b;}
.social-hv ul li .gray {background-color:#979292;}
.social-hv ul li .dark-gray {background-color:#2f2f2f;}
.social-hv ul li .purple {background-color:#b388ff;}

  .social-hv ul li a:hover {
    background: #000; /* Cambiamos el fondo cuando el usuario pase el mouse */
    color:#fff; 
    background: #fff; 
    padding: 15px 30px; /* Hacemos mas grande el espacio cuando el usuario pase el mouse */

border: 1px solid #d9d9d9;
    border-left-color: rgb(217, 217, 217);
    border-left-style: solid;
    border-left-width: 1px;
  }

.social-hv i{
  font-size: 1.2em;
  /*transform: rotate(-45deg); */
  /*-ms-transform: rotate(-45deg); /* IE 9 */
  /*-webkit-transform: rotate(-45deg); /* Chrome, Safari, Opera */
  /*-moz-transform: rotate(-45deg); /* Chrome, Safari, Opera */
}

.icono-serv {
  border: thin solid #fff; 
  border-radius: 3px;
  bottom:10px; 
  padding: 2px; 
  /* top:15px; */
  /* left: 5px; */
  z-index:2;
}

.icono-serv i{
  color: #fff;
}

/* FIN BARRA FLOTANTE SERVICIOS */






/* Nuevas Clases Cards */
/* === card component ====== 
* Variation of the panel component
* version 2018.10.30
* https://codepen.io/jstneg/pen/EVKYZj
*/
.card{ background-color: #fff; /*border: 1px solid transparent; border-radius: 6px;*/ }
.card > .card-link{ color: #333; }
.card > .card-link:hover{  text-decoration: none; }
.card > .card-link .card-img img{ border-radius: 6px 6px 0 0; }
.card .card-img{ position: relative; padding: 0; display: table; }
.card .card-img .card-caption{
position: absolute;
right: 0;
bottom: 5px; 
left: 0;
}
.card .card-body{ display: table; width: 100%; padding: 12px; }
.card .card-header{ border-radius: 6px 6px 0 0; padding: 8px; }
.card .card-footer{ border-radius: 0 0 6px 6px; padding: 8px; }
.card .card-left{ position: relative; float: left; padding: 0 0 8px 0; }
.card .card-right{ position: relative; float: left; padding: 8px 0 0 0; }
.card .card-body h1:first-child,
.card .card-body h2:first-child,
.card .card-body h3:first-child, 
.card .card-body h4:first-child,
.card .card-body .h1,
.card .card-body .h2,
.card .card-body .h3, 
.card .card-body .h4{ margin-top: 0; }
.card .card-body .heading{ display: block;  }
.card .card-body .heading:last-child{ margin-bottom: 0; }

.card .card-body .lead{ text-align: center; }

@media( min-width: 768px ){
.card .card-left{ float: left; padding: 0 8px 0 0; }
.card .card-right{ float: left; padding: 0 0 0 8px; }
  
.card .card-4-8 .card-left{ width: 33.33333333%; }
.card .card-4-8 .card-right{ width: 66.66666667%; }

.card .card-5-7 .card-left{ width: 41.66666667%; }
.card .card-5-7 .card-right{ width: 58.33333333%; }

.card .card-6-6 .card-left{ width: 50%; }
.card .card-6-6 .card-right{ width: 50%; }

.card .card-7-5 .card-left{ width: 58.33333333%; }
.card .card-7-5 .card-right{ width: 41.66666667%; }

.card .card-8-4 .card-left{ width: 66.66666667%; }
.card .card-8-4 .card-right{ width: 33.33333333%; }
}

/* -- default theme ------ */
.card-default{ 
border-color: #ddd;
background-color: #fff;
margin-bottom: 24px;
}
.card-default > .card-header,
.card-default > .card-footer{ color: #333; background-color: #ddd; }
.card-default > .card-header{ border-bottom: 1px solid #ddd; padding: 8px; }
.card-default > .card-footer{ border-top: 1px solid #ddd; padding: 8px; }
.card-default > .card-body{  }
.card-default > .card-img:first-child img{ border-radius: 6px 6px 0 0; }
.card-default > .card-left{ padding-right: 4px; }
.card-default > .card-right{ padding-left: 4px; }
.card-default p:last-child{ margin-bottom: 0; }
.card-default .card-caption { color: #fff; text-align: center; /*text-transform: uppercase;*/ }


/* -- price theme ------ */
.card-price{ border-color: #999; background-color: #ededed; margin-bottom: 24px; }
.card-price > .card-heading,
.card-price > .card-footer{ color: #333; background-color: #fdfdfd; }
.card-price > .card-heading{ border-bottom: 1px solid #ddd; padding: 8px; }
.card-price > .card-footer{ border-top: 1px solid #ddd; padding: 8px; }
.card-price > .card-img:first-child img{ border-radius: 6px 6px 0 0; }
.card-price > .card-left{ padding-right: 4px; }
.card-price > .card-right{ padding-left: 4px; }
.card-price .card-caption { color: #fff; text-align: center; /*text-transform: uppercase;*/ }
.card-price p:last-child{ margin-bottom: 0; }

.card-price .price{ 
text-align: center; 
color: #337ab7; 
font-size: 3em; 
text-transform: uppercase;
line-height: 0.7em; 
margin: 24px 0 16px;
}
.card-price .price small{ font-size: 0.4em; color: #66a5da; }
.card-price .details{ list-style: none; margin-bottom: 24px; padding: 0 18px; }
.card-price .details li{ text-align: center; margin-bottom: 8px; }
.card-price .buy-now{ text-transform: uppercase; }
.card-price table .price{ font-size: 1.2em; font-weight: 700; text-align: left; }
.card-price table .note{ color: #666; font-size: 0.8em; }


.card .card-price {
width: 100%;
height: auto;
overflow:hidden;
}

.catagory.blue {
position:absolute;
}


/* REDEFINICION ESTILOS */
  /* nav-bar archivo main.css redefinicion */
  .navbar {
    margin-bottom:0px;
  }


  /* top-add archivo main.css redefinicion */
  .top-add {
    margin:0px;
  }

  /* Section-Title archivo main.css redefinicion */
  .section-title {
    margin-top: 5px;
    margin-bottom: 10px;
    padding-bottom: 0;
    position:relative;
    font-size:20px;
    /*text-transform:capitalize;*/
    color:#525b6e;
    font-weight:600;
  }

  .section-title:before {
    width:50px;
    z-index:1;
  }

  .section-title:after {
    right:0;
    background-color:#e6e6e8;
  }

  .section-title:before, 
  .section-title:after {
    position:absolute;
    content:"";
    bottom:-5px;
    left:0;
    height:2px;
  } 

  .section-title.title {
    /*margin-bottom:45px;*/
    margin-bottom:25px;
  }

  .navbar {
    /*margin-bottom: 0px;*/
    /* min-height:0px;*/
    margin-bottom: 5px, 0px;
  }


  .transparente {
    width: 100%;
  }
/* FIN REDEFINICION ESTILOS */



/* NUEVAS CLASES */
  .mb-25 {
    margin-bottom: 25px;
  }

  .mt-25 {
    margin-top: 25px;
  }
  .pb-25 {
    padding-bottom: 25px;
  }

  .pt-25 {
    padding-top: 25px;
  }


  /* CSS Carousel */
  .carousel {
    position: relative;
  }

  .img-responsive-banner {
    height: 100%;
    width: 100%;
  }

  .carousel.pointer-event {
    -ms-touch-action: pan-y;
    touch-action: pan-y;
  }

  .carousel-inner {
    position: relative;
    width: 100%;
    overflow: hidden;
  }

  .carousel-inner::after {
    display: block;
    clear: both;
    content: "";
  }

  .carousel-item {
    position: relative;
    display: none;
    float: left;
    width: 100%;
    margin-right: -100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: -webkit-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
  }

  @media (prefers-reduced-motion: reduce) {
    .carousel-item {
      transition: none;
    }
  }

  .carousel-item.active,
  .carousel-item-next,
  .carousel-item-prev {
    display: block;
  }

  .carousel-item-next:not(.carousel-item-left),
  .active.carousel-item-right {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }

  .carousel-item-prev:not(.carousel-item-right),
  .active.carousel-item-left {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }

  .carousel-fade .carousel-item {
    opacity: 0;
    transition-property: opacity;
    -webkit-transform: none;
    transform: none;
  }

  .carousel-fade .carousel-item.active,
  .carousel-fade .carousel-item-next.carousel-item-left,
  .carousel-fade .carousel-item-prev.carousel-item-right {
    z-index: 1;
    opacity: 1;
  }

  .carousel-fade .active.carousel-item-left,
  .carousel-fade .active.carousel-item-right {
    z-index: 0;
    opacity: 0;
    transition: 0s 0.6s opacity;
  }

  @media (prefers-reduced-motion: reduce) {
    .carousel-fade .active.carousel-item-left,
    .carousel-fade .active.carousel-item-right {
      transition: none;
    }
  }


  .carousel-control-prev,
  .carousel-control-next {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 15%;
    color: #fff;
    text-align: center;
    opacity: 0.5;
    transition: opacity 0.15s ease;
  }

  @media (prefers-reduced-motion: reduce) {
    .carousel-control-prev,
    .carousel-control-next {
      transition: none;
    }
  }

  .carousel-control-prev:hover, .carousel-control-prev:focus,
  .carousel-control-next:hover,
  .carousel-control-next:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: 0.9;
  }

  .carousel-control-prev {
    left: 0;
  }

  .carousel-control-next {
    right: 0;
  }

  .carousel-control-prev-icon,
  .carousel-control-next-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: no-repeat 50% / 100% 100%;
  }

  .carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e");
  }

  .carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e");
  }



  @-webkit-keyframes spinner-border {
    to {
      -webkit-transform: rotate(360deg);
      transform: rotate(360deg);
    }
  }

  @keyframes spinner-border {
    to {
      -webkit-transform: rotate(360deg);
      transform: rotate(360deg);
    }
  }

  .spinner-border {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: text-bottom;
    border: 0.25em solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    -webkit-animation: spinner-border .75s linear infinite;
    animation: spinner-border .75s linear infinite;
  }

  .spinner-border-sm {
    width: 1rem;
    height: 1rem;
    border-width: 0.2em;
  }

  @-webkit-keyframes spinner-grow {
    0% {
      -webkit-transform: scale(0);
      transform: scale(0);
    }
    50% {
      opacity: 1;
    }
  }

  @keyframes spinner-grow {
    0% {
      -webkit-transform: scale(0);
      transform: scale(0);
    }
    50% {
      opacity: 1;
    }
  }

  .spinner-grow {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: text-bottom;
    background-color: currentColor;
    border-radius: 50%;
    opacity: 0;
    -webkit-animation: spinner-grow .75s linear infinite;
    animation: spinner-grow .75s linear infinite;
  }

  .spinner-grow-sm {
    width: 1rem;
    height: 1rem;
  }

  small {
    font-size: 80%;
  }


  /* Personalizar el Carousel */

    #myCarousel {
      /* margin-bottom: 50px; */
    }

    /* Make the images wide and responsive. */
    
    .carousel-inner img {
      height: auto;
      width: 100%;
    }

    .carousel-indicators li {
      background-color: #B1CDE8;
      opacity: 0.75;
    }

    .carousel-indicators li.active {
      background-color: #6DA7DA;
    }

    .carousel-caption {
      background-color: rgba(41,23,1,0.5);
      bottom:0px;
      left: 0px;
      width: 100%;
      text-align: left;
      padding: 0px, 20px;
    }

    .carousel-caption h2 {
      font-size: 18px;
      text-decoration:;
    }
  
    .carousel-caption p {
      padding: 15px;
      font-size: 20px;
      line-height: 22px;
    }

    .carousel-caption p a{
      color: #fff;
    }

    .carousel-container {
        width: 90% !important;
        padding-left: 10%;
        margin-top: 15px;
    }
     
     .carousel-caption {
          padding: 15px;
          text-align: left;
     }
     
     .carousel-caption h4 { font-size: 30px }
     
     .carousel-caption p {
          margin-top: 10px;
          margin-bottom: -10px;
     }


    .carousel-caption {
      background-color: rgba(41,23,1,0.5);
      bottom:0px;
      left: 0px;
      width: 100%;
      text-align: left;
      padding: 0px, 20px;
    }

    .carousel-caption h2 {
      font-size: 18px;
      text-decoration:;
    }
  
    .carousel-caption p {
      padding: 15px;
      font-size: 20px;
      line-height: 22px;
    }

    .carousel-caption p a{
      color: #fff;
    }

    .carousel-container {
        width: 90% !important;
        padding-left: 10%;
        margin-top: 15px;
    }
     
     .carousel-caption {
          padding: 15px;
          text-align: left;
     }
     
     .carousel-caption h4 { font-size: 30px }
     
     .carousel-caption p {
          margin-top: 10px;
          margin-bottom: -10px;
     }


    /* Carousel con Fade. */
    .carousel-fade .carousel-inner .item {
        opacity: 0;
        -webkit-transition-property: opacity;
        -moz-transition-property: opacity;
        -o-transition-property: opacity;
        transition-property: opacity;
    }
    .carousel-fade .carousel-inner .active { opacity: .75 }
    .carousel-fade .carousel-inner .active.left,
    .carousel-fade .carousel-inner .active.right {
        left: 0;
        opacity: 0;
        z-index: 1;
    }
    .carousel-fade .carousel-inner .next.left,
    .carousel-fade .carousel-inner .prev.right { opacity: .75 }
    .carousel-fade .carousel-control { z-index: 2 }
    /* Fin Carousel con Fade. */



    /* NOVEDADES JUDICIALES */

    .novedades-caption {
      background-color: rgba(41,23,1,0.5);
      bottom:0px;
      left: 0px;
      width: 100%;
      text-align: left;
      padding: 0px, 20px;
    }

    .novedades-caption h2 {
      font-size: 18px;
      text-decoration:;
    }
  
    .novedades-caption p {
      padding: 15px;
      font-size: 20px;
      line-height: 22px;
    }

    .novedades-caption p a{
      color: #fff;
    }

    .novedades-container {
        width: 90% !important;
        padding-left: 10%;
        margin-top: 15px;
    }
     
     .novedades-caption {
          padding: 15px;
          text-align: left;
     }
     
     .novedades-caption h4 { font-size: 30px }
     
     .novedades-caption p {
          margin-top: 10px;
          margin-bottom: -10px;
     }

    /* FIN NOVEDADES JUDICIALES */


  /* Fin Personalizar el Carousel */



  /* Style Bootstrap 4 CARD */
  .card {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    /* border: 1px solid rgba(0, 0, 0, 0.125); */
    border-radius: 0.25rem;
  }

  .card > hr {
    margin-right: 0;
    margin-left: 0;
  }

  .card > .list-group:first-child .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
  }

  .card > .list-group:last-child .list-group-item:last-child {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }

  .card-body {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 1.25rem;
  }

  .card-title {
    margin-bottom: 0.75rem;
  }

  .card-subtitle {
    margin-top: -0.375rem;
    margin-bottom: 0;
  }

  .card-text:last-child {
    margin-bottom: 0;
  }

  .card-link:hover {
    text-decoration: none;
  }

  .card-link + .card-link {
    margin-left: 1.25rem;
  }

  .card-header {
    padding: 0.75rem 1.25rem;
    margin-bottom: 0;
    background-color: rgba(0, 0, 0, 0.03);
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
  }

  .card-header:first-child {
    border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
  }

  .card-header + .list-group .list-group-item:first-child {
    border-top: 0;
  }

  .card-footer {
    padding: 0.75rem 1.25rem;
    background-color: rgba(0, 0, 0, 0.03);
    border-top: 1px solid rgba(0, 0, 0, 0.125);
  }

  .card-footer:last-child {
    border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
  }

  .card-header-tabs {
    margin-right: -0.625rem;
    margin-bottom: -0.75rem;
    margin-left: -0.625rem;
    border-bottom: 0;
  }

  .card-header-pills {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
  }

  .card-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1.25rem;
  }

  .card-img {
    width: 100%;
    border-radius: calc(0.25rem - 1px);
  }

  .card-img-top {
    width: 100%;
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
  }

  .card-img-bottom {
    width: 100%;
    border-bottom-right-radius: calc(0.25rem - 1px);
    border-bottom-left-radius: calc(0.25rem - 1px);
  }

  .card-deck {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .card-deck .card {
    margin-bottom: 15px;
  }

  @media (min-width: 576px) {
    .card-deck {
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      margin-right: -15px;
      margin-left: -15px;
    }
    .card-deck .card {
      display: -ms-flexbox;
      display: flex;
      -ms-flex: 1 0 0%;
      flex: 1 0 0%;
      -ms-flex-direction: column;
      flex-direction: column;
      margin-right: 15px;
      margin-bottom: 0;
      margin-left: 15px;
    }
  }

  .card-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .card-group > .card {
    margin-bottom: 15px;
  }

  @media (min-width: 576px) {
    .card-group {
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
    }
    .card-group > .card {
      -ms-flex: 1 0 0%;
      flex: 1 0 0%;
      margin-bottom: 0;
    }
    .card-group > .card + .card {
      margin-left: 0;
      border-left: 0;
    }
    .card-group > .card:not(:last-child) {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
    }
    .card-group > .card:not(:last-child) .card-img-top,
    .card-group > .card:not(:last-child) .card-header {
      border-top-right-radius: 0;
    }
    .card-group > .card:not(:last-child) .card-img-bottom,
    .card-group > .card:not(:last-child) .card-footer {
      border-bottom-right-radius: 0;
    }
    .card-group > .card:not(:first-child) {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
    }
    .card-group > .card:not(:first-child) .card-img-top,
    .card-group > .card:not(:first-child) .card-header {
      border-top-left-radius: 0;
    }
    .card-group > .card:not(:first-child) .card-img-bottom,
    .card-group > .card:not(:first-child) .card-footer {
      border-bottom-left-radius: 0;
    }
  }

  .card-columns .card {
    margin-bottom: 0.75rem;
  }

  @media (min-width: 576px) {
    .card-columns {
      -webkit-column-count: 3;
      -moz-column-count: 3;
      column-count: 3;
      -webkit-column-gap: 1.25rem;
      -moz-column-gap: 1.25rem;
      column-gap: 1.25rem;
      orphans: 1;
      widows: 1;
    }
    .card-columns .card {
      display: inline-block;
      width: 100%;
    }
  } 

/* FIN NUEVAS CLASES */

/* Clases de B4 validacion de campos de Formularios */


.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .form-control:valid ~ .valid-feedback,
.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,
.form-control.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .custom-select:valid ~ .valid-feedback,
.was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback,
.custom-select.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control-file:valid ~ .valid-feedback,
.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,
.form-control-file.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745;
}

.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-control-input:valid ~ .valid-feedback,
.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,
.custom-control-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .valid-feedback,
.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback,
.custom-file-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-control:invalid ~ .invalid-feedback,
.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,
.form-control.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .custom-select:invalid ~ .invalid-feedback,
.was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback,
.custom-select.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control-file:invalid ~ .invalid-feedback,
.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,
.form-control-file.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545;
}

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-control-input:invalid ~ .invalid-feedback,
.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,
.custom-control-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .invalid-feedback,
.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback,
.custom-file-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.form-group.has-error .help-block {
    color: #dd4b39 !important;
}

.form-group.is-invalid .help-block {
  color: #dd4b39 !important;
}


/* Fin clases B4 validacion de campos de Formularios */


/* FIN NUEVAS CLASES */


