/* GLOBAL STYLES
-------------------------------------------------- */
body, html {
   padding: 0;
   margin: 0;
   overflow-x: hidden;
}
body {
   background-color: #f8f9fa;
   font-size: 100%;
}
html {
   position: relative;
   min-height: 100%;
}
.blackFont {
   color: #000000;
}
.blackFont:hover {
   text-decoration: none;
   color: #868e96;
}
.mutedFont {
   color: #868e96;
}
.mutedFont:hover {
   text-decoration: none;
   color: #000000;
}
.container {
   padding: 25px 0px 75px 0px;
}

/* HOME PAGE
-------------------------------------------------- */
.productAdvertisement {
   margin: 0;
   padding: 0;
   height: 20rem;
}
.productAdvertisement img {
   object-fit: cover; /* Do not scale the image */
   object-position: center; /* Center the image within the element */
   width: 100%;
   height: 100%;
   transition: 1s ease;
   backface-visibility: hidden;
   filter: brightness(70%);
}
.productAdvertisement:hover img {
   filter: brightness(100%);
}
.productAdvertisementContent {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   -ms-transform: translate(-50%, -50%);
   margin: 0;
   padding: 30px;      
   width: 100%;
}

/* FAQ PAGE
-------------------------------------------------- */
.faqLink {
   display: inline-block;
   white-space: pre-wrap;       /* css-3 */
   white-space: -moz-pre-wrap;  /* Mozilla, since 1999 */
   white-space: -pre-wrap;      /* Opera 4-6 */
   white-space: -o-pre-wrap;    /* Opera 7 */
   word-wrap: break-word;       /* Internet Explorer 5.5+ */
   width: auto;
   text-align: left;
}

/* FOOTER
-------------------------------------------------- */
footer {
   position: absolute;
   bottom: 0;
   width: 100%;
   padding-top: 10px;
   margin: 0;
}

/* MAP
-------------------------------------------------- */
#map {
   width: 100%;
}

/* PRODUCTS PAGE
-------------------------------------------------- */
.cardLink {
   color: #000000;
}
.cardLink:hover {
   text-decoration: none;
   color: #868e96;
}
.cardLink img {
   object-fit: cover; /* Do not scale the image */
   object-position: center; /* Center the image within the element */
   height: 15rem;
   width: auto;
}
.fixedButton {
   position: fixed;
   bottom: 55px;
}
.productCategoryCard a img {
   object-fit: cover; /* Do not scale the image */
   object-position: center; /* Center the image within the element */
   height: 15rem;
   width: auto;
}

/* RESPONSIVE CSS
-------------------------------------------------- */
/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {   
   .container {
      padding-left: 10px;
      padding-right: 10px;
   }
   
   /* PRODUCTS PAGE */
   .fixedButton {
      right: 15px; 
   }
   
   /* MAP */
   #map {
      height: 325px;
   }
   
   /* NAVBAR */
   #navbarBrand {
      height: 50px;
   }
   .nav-link {
      font-size: 18px;
   }
   
   /* FONTS */
   .display-1 {
      font-size: 2.73rem;
   }
   .display-2 {
      font-size: 2.5rem;
   }
   .display-3 {
      font-size: 2.25rem;
   }
   h1, .display-4 {
      font-size: 2.0rem;
   }
   h2 {
      font-size: 1.75rem;
   }
   h3 {
      font-size: 1.5rem;
   }
   h4 {
      font-size: 1.25rem;
   }
   h5, p, .lead {
      font-size: 1.0rem;
   }
   .blackFont {
      font-size: 0.9rem;
   }
   .serviceIcon{
      font-size: 6rem;
   }
} 

/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {
   .container {
      padding-left: 15px;
      padding-right: 15px;
   }
   
   /* PRODUCTS PAGE */
   .fixedButton {
      right: 20px; 
   }
   
   /* MAP */
   #map {
      height: 400px;
   }
   
   /* NAVBAR */
   #navbarBrand {
      height: 100px;
   }
   .nav-link {
      font-size: 20px;
   }
   
   /* FONTS */
   .display-1 {
      font-size: 3.0rem;
   }
   .display-2 {
      font-size: 2.75rem;
   }
   .display-3 {
      font-size: 2.5rem;
   }
   h1, .display-4 {
      font-size: 2.25rem;
   }
   h2 {
      font-size: 1.75rem;
   }
   h3 {
      font-size: 1.5rem;
   }
   h4 {
      font-size: 1.25rem;
   }
   h5, p, .lead {
      font-size: 1.15rem;
   }
   .serviceIcon{
      font-size: 10rem;
   }
} 

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
   .container {
      padding-left: 20px;
      padding-right: 20px;
   }
   
   /* PRODUCTS PAGE */
   .fixedButton {
      right: 40px; 
   }
   
   /* MAP */
   #map {
      height: 500px;
   }
   
   /* NAVBAR */
   #navbarBrand {
      height: 100px;
   }
   .nav-link {
      font-size: 22px;
   }
   
   /* FONTS */  
   .display-1 {
      font-size: 5rem;
   }
   .display-2 {
      font-size: 4.5rem;
   }
   .display-3 {
      font-size: 4rem;
   }
   h1, .display-4 {
      font-size: 3rem;
   }
   h2 {
      font-size: 2.5rem;
   }
   h3 {
      font-size: 2.0rem;
   }
   h4 {
      font-size: 1.5rem;
   }
   h5, p, .lead {
      font-size: 1.35rem;
   }
   .serviceIcon{
      font-size: 15rem;
   }
}