:root {
  --color-primary: #1E2548;
  --color-info: #50A7CE;
}

/* ===== text ===== */
.text-primary {
  color: var(--color-primary) !important;
}

.text-info {
  color: var(--color-info) !important;
}

/* ===== backgrounds ===== */
.bg-primary {
  background-color: var(--color-primary) !important;
}

.bg-info {
  background-color: var(--color-info) !important;
}

.bg-electric {
  background: rgb(159,151,1);
  background: -moz-linear-gradient(90deg, rgba(159,151,1,1) 0%, rgba(217,206,2,1) 53%);
  background: -webkit-linear-gradient(90deg, rgba(159,151,1,1) 0%, rgba(217,206,2,1) 53%);
  background: linear-gradient(90deg, rgba(159,151,1,1) 0%, rgba(217,206,2,1) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#9f9701",endColorstr="#d9ce02",GradientType=1);
  /*#9F9701 - #D9CE02*/
}

.bg-firefighting {
  background: rgb(229,30,0);
  background: -moz-linear-gradient(90deg, rgba(229,30,0,1) 0%, rgba(224,83,70,1) 53%);
  background: -webkit-linear-gradient(90deg, rgba(229,30,0,1) 0%, rgba(224,83,70,1) 53%);
  background: linear-gradient(90deg, rgba(229,30,0,1) 0%, rgba(224,83,70,1) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e51e00",endColorstr="#e05346",GradientType=1);
  /*#E51E00 - #E05346*/
}

.bg-medical {
  background: rgb(157,88,229);
  background: -moz-linear-gradient(90deg, rgba(157,88,229,1) 0%, rgba(214,143,254,1) 53%);
  background: -webkit-linear-gradient(90deg, rgba(157,88,229,1) 0%, rgba(214,143,254,1) 53%);
  background: linear-gradient(90deg, rgba(157,88,229,1) 0%, rgba(214,143,254,1) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#9d58e5",endColorstr="#d68ffe",GradientType=1);
  /*#9D58E5 - #D68FFE*/
}

.bg-metal {
  background: rgb(147,147,147);
  background: -moz-linear-gradient(90deg, rgba(147,147,147,1) 0%, rgba(175,175,175,1) 53%);
  background: -webkit-linear-gradient(90deg, rgba(147,147,147,1) 0%, rgba(175,175,175,1) 53%);
  background: linear-gradient(90deg, rgba(147,147,147,1) 0%, rgba(175,175,175,1) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#939393",endColorstr="#afafaf",GradientType=1);
  /*#939393 - #AFAFAF*/
}

.bg-fastners {
  background: rgb(4,4,4);
  background: -moz-linear-gradient(90deg, rgba(4,4,4,1) 0%, rgba(62,60,60,1) 53%);
  background: -webkit-linear-gradient(90deg, rgba(4,4,4,1) 0%, rgba(62,60,60,1) 53%);
  background: linear-gradient(90deg, rgba(4,4,4,1) 0%, rgba(62,60,60,1) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#040404",endColorstr="#3E3C3C",GradientType=1);
  /*#040404 - #3E3C3C*/
}

/* ===== buttons ===== */
.btn-primary {
  color: #fff;
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}
.btn-primary:hover {
  opacity: 0.9;
  color: #fff;
  background-color: #000;
  border-color: #000;
}

/* ===== home styles ===== */
#home-wrapper {
  background: url('../images/backgrounds/home-bg.png') center center no-repeat;
  background-size: cover;
}
.home-logo {
  max-width: 320px;
  width: 100%;
}
.home-subtitle {
  font-size: 20px;
  margin-top: 12px;
}
.home-card {
  border-radius: 15px;
  background: white;
  position: relative;
  display: flex;
  align-items: flex-end;
  transition: 0.4s ease-out;
  align-items: center;
  justify-content: center;
  height: 200px;
  margin-bottom: 30px;
  border: none;
  padding: 15px;
  box-shadow: 0 0 30px rgb(0 0 0 / 15%);
}
.home-card:hover:before {
  opacity: 1;
}
.home-card:hover .info {
  opacity: 1;
  transform: translateY(0px);
}
.home-card:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: rgba(51, 148, 193, 0.95);
  z-index: 2;
  transition: 0.5s;
  opacity: 0;
}
.electric-card:before {
  background: rgb(159,151,1);
  background: -moz-linear-gradient(90deg, rgba(159,151,1,0.95) 0%, rgba(217,206,2,0.95) 53%);
  background: -webkit-linear-gradient(90deg, rgba(159,151,1,0.95) 0%, rgba(217,206,2,0.95) 53%);
  background: linear-gradient(90deg, rgba(159,151,1,0.95) 0%, rgba(217,206,2,0.95) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#9f9701",endColorstr="#d9ce02",GradientType=1);
}
.firefighting-card:before {
  background: rgb(229,30,0);
  background: -moz-linear-gradient(90deg, rgba(229,30,0,0.95) 0%, rgba(224,83,70,0.95) 53%);
  background: -webkit-linear-gradient(90deg, rgba(229,30,0,0.95) 0%, rgba(224,83,70,0.95) 53%);
  background: linear-gradient(90deg, rgba(229,30,0,0.95) 0%, rgba(224,83,70,0.95) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e51e00",endColorstr="#e05346",GradientType=1);
}
.medical-card:before {
  background: rgb(157,88,229);
  background: -moz-linear-gradient(90deg, rgba(157,88,229,0.95) 0%, rgba(214,143,254,0.95) 53%);
  background: -webkit-linear-gradient(90deg, rgba(157,88,229,0.95) 0%, rgba(214,143,254,0.95) 53%);
  background: linear-gradient(90deg, rgba(157,88,229,0.95) 0%, rgba(214,143,254,0.95) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#9d58e5",endColorstr="#d68ffe",GradientType=1);
}
.metal-card:before {
  background: rgb(147,147,147);
  background: -moz-linear-gradient(90deg, rgba(147,147,147,0.95) 0%, rgba(175,175,175,0.95) 53%);
  background: -webkit-linear-gradient(90deg, rgba(147,147,147,0.95) 0%, rgba(175,175,175,0.95) 53%);
  background: linear-gradient(90deg, rgba(147,147,147,0.95) 0%, rgba(175,175,175,0.95) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#939393",endColorstr="#afafaf",GradientType=1);
}
.fastners-card:before {
  background: rgb(4,4,4);
  background: -moz-linear-gradient(90deg, rgba(4,4,4,0.95) 0%, rgba(62,60,60,0.95) 53%);
  background: -webkit-linear-gradient(90deg, rgba(4,4,4,0.95) 0%, rgba(62,60,60,0.95) 53%);
  background: linear-gradient(90deg, rgba(4,4,4,0.95) 0%, rgba(62,60,60,0.95) 53%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#040404",endColorstr="#3E3C3C",GradientType=1);
}
.home-card img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 15px;
  padding: 15px;
}
.home-card .info {
  position: relative;
  z-index: 3;
  color: #fff;
  opacity: 0;
  transform: translateY(30px);
  transition: 0.5s;
  text-align: center;
}
.home-card .info p {
  color: #fff;
  margin-bottom: 15px;
  text-shadow: 0 0 5px rgb(0 0 0 / 30%);
}
.home-social {
  height: 40px;
  width: 40px;
  padding: 6px;
  transition: 0.4s ease-out;
}
.home-social:hover {
  opacity: 0.8;
}

@media screen and (min-width: 991px) {
  .home-card:hover {
    transform: translateY(10px);
  }
}

@media screen and (max-width: 991px) {
  .home-card {
    height: 160px;
  }
  .home-card .info p {
    margin-bottom: 12px;
    font-size: 14px;
    line-height: 20px;
  }
}