@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&family=Titillium+Web:ital,wght@0,200;0,300;0,400;0,600;0,700;0,900;1,200;1,300;1,400;1,600;1,700&display=swap');

.titillium-web-light {
  font-family: "Titillium Web", serif;
  font-weight: 100 !important;
  font-style: normal;
}
.titillium-web-regular {
  font-family: "Titillium Web", serif;
  font-weight: 400;
  font-style: normal;
}
.titillium-web-semibold {
  font-family: "Titillium Web", serif;
  font-weight: 600;
  font-style: normal;
}
.titillium-web-bold {
  font-family: "Titillium Web", serif;
  font-weight: 700;
  font-style: normal;
}
.titillium-web-black {
  font-family: "Titillium Web", serif;
  font-weight: 900;
  font-style: normal;
}

/* LOADER */
/* Absolute Center Spinner */
.loading {
  position: fixed;
  z-index: 99999999;
  height: 2em;
  width: 2em;
  overflow: show;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/* Transparent Overlay */
.loading:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(rgba(255, 255, 255,.9), rgba(255, 255, 255, .9));
  background: -webkit-radial-gradient(rgba(255, 255, 255,.9), rgba(255, 255, 255,.9));
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required) {
  /* hide "loading..." text */
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.loading:not(:required):after {
  content: '';
  display: block;
  font-size: 10px;
  width: 1em;
  height: 1em;
  margin-top: -0.5em;
  -webkit-animation: spinner 150ms infinite linear;
  -moz-animation: spinner 150ms infinite linear;
  -ms-animation: spinner 150ms infinite linear;
  -o-animation: spinner 150ms infinite linear;
  animation: spinner 150ms infinite linear;
  border-radius: 0.5em;
  -webkit-box-shadow: rgba(151,127,114, 0.75) 1.5em 0 0 0, rgba(151,127,114, 0.75) 1.1em 1.1em 0 0, rgba(151,127,114, 0.75) 0 1.5em 0 0, rgba(151,127,114, 0.75) -1.1em 1.1em 0 0, rgba(151,127,114, 0.75) -1.5em 0 0 0, rgba(151,127,114, 0.75) -1.1em -1.1em 0 0, rgba(151,127,114, 0.75) 0 -1.5em 0 0, rgba(151,127,114, 0.75) 1.1em -1.1em 0 0;
box-shadow: rgba(151,127,114, 0.75) 1.5em 0 0 0, rgba(151,127,114, 0.75) 1.1em 1.1em 0 0, rgba(151,127,114, 0.75) 0 1.5em 0 0, rgba(151,127,114, 0.75) -1.1em 1.1em 0 0, rgba(151,127,114, 0.75) -1.5em 0 0 0, rgba(151,127,114, 0.75) -1.1em -1.1em 0 0, rgba(151,127,114, 0.75) 0 -1.5em 0 0, rgba(151,127,114, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */

@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-moz-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-o-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

html, body {
  width: 100% !important;
  height: 100% !important;
  font-family: "Titillium Web", serif;
  font-weight: 400;
  font-style: normal;
}

.jf-color {
  color: #A4896F !important;
}

.jf-color-black {
  color: #000000 !important;
}

.jf-color-lightgray {
  color: #F4F1ED !important;
}

.jf-color-secondary {
  color: #A4896F !important;
}
.jf-color-tertiary {
  color: #A4896F !important;
}
.jf-bg {
  background-color: #A4896F !important;
}
.jf-logo {
  max-height: 80px;
}

.framed-element-black {
  outline: 2px solid #000000;
  outline-offset: -10px;
}

.framed-element-white {
  outline: 2px solid #F4F1ED;
  outline-offset: -10px;
}

.font-skinny {
  font-weight: 250;
}

.nav-item {
  padding: 0 0.7rem;
  border-bottom: 5px solid #A4896F !important;
}
.nav-item:hover {
  border-bottom: 5px dotted #A4896F !important;
}
.nav-item:last-child  {
  padding: 0 0 0 0.7rem;
}

.btn-jf {
  background-color: #A4896F !important;
  border-color: #A4896F !important;
  color: #fff !important;
  border-radius: 0 !important;
  text-transform: uppercase !important;
}
.btn-jf:hover {
  background-color: #A4896F !important;
  border-color: #A4896F !important;
  color: #fff !important;
}

.btn-outlined{
  border: 2px solid #F4F1ED;
  color: #F4F1ED;
  background-color: transparent;
  padding: 10px 30px; 
  font-weight: bold;
  text-align: center;
  border-radius: 0;
  text-decoration: none; 
}

.btn-outlined:hover {
  background-color: #F4F1ED; 
  color: #000000;
}

.categories {
  position: relative;
  margin-top: 0px;
  z-index: 1000;
}
.categories-span {
  font-size: 1.5rem;
  text-shadow: 0px 1px 18px #000000;
}
.bg-sinterizada {
  background-image: url('../images/sinterizada.jpg');
  background-size: 100% auto;
  background-position: center;
}
.bg-granito {
  background-image: url('../images/granito.jpg');
  background-size: 100% auto;
  background-position: center;
}
.bg-marmol {
  background-image: url('../images/marmol.jpg');
  background-size: 100% auto;
  background-position: center;
}
.bg-cuarzo {
  background-image: url('../images/cuarzo.jpg');
  background-size: 100% auto;
  background-position: center;
}
.box-catalogo {
  height: 124px;
  max-height: 124px;
}
.bg-catalogo {
  background-image: url('../images/bg_banner_left.jpg');
  background-size: 100% auto;
  background-position: center;
}
.jf-icon-catalogo {
  height: 80px;
  max-height: 80px;
  width: auto;
  margin-left: 15px;
  margin-right: 30px;
}
.jf-border-bottom {
  width: 75%;
  border-bottom: 10px solid #A4896F !important;
}

@media (max-width: 992px) {
  .banner-section {
    height: 125px;
  }
}

@media (min-width: 993px) {
  .banner-section {
    height: 250px;
  }

  .banner-section-text-top {
    margin-top: -60px
  }

  .banner-section-text-bottom {
    margin-top: 60px
  }
}

.bg-banner-left {
  background-image: url('../images/bg_banner_left.jpg');
  background-size: 100% auto;
  background-position: center;
}
.bg-banner-right {
  background-image: url('../images/bg_banner_right.jpg');
  background-size: 100% auto;
  background-position: center;
}

@media (min-width: 576px) {
  .zoom {
    transition: transform .2s; /* Animation */
    cursor: pointer;
  }
  .zoom:hover {
    transform: scale(1.1); /* (150% zoom - Note: if the zoom is too large, it will go outside of the viewport) */
  }
}

.zoom img {
  width: 100%;
  height: 100%;
}
.modal-backdrop {
  opacity:0.9 !important;
}
.list-group-flush {
  background-color: none !important;
}
.list-group-item {
  background-color: #A4896F !important;
  color: #fff !important;
}
.list-group-item a {
  text-decoration: none !important;
  color: #fff !important;
}
.list-group-item a:hover {
  color: #dccca9 !important;
}

.toppage {
  background-image: url('../images/top_page.jpg');
  background-size: 100% auto;
  background-position: center;
}

@media (max-width: 992px) {
  .sticky-mobile {
    position: sticky;
    top: 0;
    z-index: 1050 !important;
    background-color: white;
  }
}

@media (max-width: 576px) {
  .img-items {
    max-width: 80%;
    margin: 0 auto;
    display: block;
  }
}

@media (max-width: 576px) {
  .mobile-margin {
    margin-left: 3rem;
  }
}
