@charset "UTF-8";
/* Geral */
body {
  padding-top: 100px;
  background-color: #f2f2f2;
  font-family: 'Rubik', sans-serif;
  -webkit-transition-timing-function: ease;
       -o-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: .35s;
       -o-transition-duration: .35s;
          transition-duration: .35s;
  -webkit-transition-property: padding-top;
       -o-transition-property: padding-top;
          transition-property: padding-top;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Oswald', sans-serif;
  color: #181174;
}

.navbar a {
  font-family: 'Heebo', sans-serif;
}

.section-padding {
  padding-top: 50px;
  padding-bottom: 50px;
}

.header p {
  font-size: 18px;
}

.navbar-shadow {
  box-shadow: 0 5px 15px 0 #111;
  -moz-box-shadow: 0 5px 15px 0 #111;
  -webkit-box-shadow: 0 5px 15px 0 #111;
}

.loading-shell {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1030;
}

.loading-shell .spinner-grow {
  width: 2.5rem;
  height: 2.5rem;
}

.scroll-top {
  position: fixed;
  bottom: 25px;
  right: 25px;
  opacity: 0;
  visibility: hidden;
  height: 75px;
  width: 75px;
  border-radius: 50%;
  z-index: 1029;
  -webkit-transition-timing-function: ease;
       -o-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: .35s;
       -o-transition-duration: .35s;
          transition-duration: .35s;
  -webkit-transition-property: all;
       -o-transition-property: all;
          transition-property: all;
}

@media (max-width: 319.98px) {
  .scroll-top {
    display: none;
  }
}

/* Navbar */
.mynav {
  min-height: 100px;
}

.mynav .navbar-brand {
  text-shadow: 3px 3px 5px #111;
}

.mynav ul li a {
  color: #fff;
}

.mynav .user-menu-toggler {
  background: transparent;
  border: none;
  outline: none;
  color: #fff;
}

.mynav .user-menu {
  position: fixed;
  height: calc(100vh - 100px);
  width: 300px;
  transform: translateX(100%);
  max-width: 100%;
  top: 100px;
  right: 0;
  transition: 0.5s ease;
  z-index: 1030;
  overflow: auto;
}

.mynav .user-menu .dropdown-menu {
  position: relative;
  width: 100%;
  padding: 0 5px;
}

.mynav .user-menu-active {
  transform: translateX(0);
}

.mynav .user-menu p {
  font-size: 1.125rem;
  color: #fff;
  padding-left: 22px;
}

.mynav .user-menu ul {
  padding: 0;
}

.mynav .user-menu ul li {
  padding: 0;
}

@media (max-width: 339.98px) {
  .mynav .navbar-brand {
    font-size: 18px;
  }
}

@media (max-width: 991.98px) {
  .mynav .nav-link, .mynav .collapse .dropdown-item {
    text-align: center;
  }

  .mynav ul {
    padding-top: 20px;
  }
}

@media (min-width: 992px) {
  .mynav ul {
    margin-left: auto;
    margin-right: auto;
  }

  .mynav ul li {
    padding-left: 15px;
    padding-right: 15px;
  }

  .mynav .navbar-nav .active .nav-link {
    border-bottom: 2px solid #fff;
  }

  .mynav .user-menu-toggler {
    order: 1;
  }
}

@media (min-width: 1200px) {
  .mynav ul li {
    padding-left: 20px;
    padding-right: 20px;
  }

  .mynav #nav-home {
    margin-left: -100px;
  }

  #propaganda-modal .modal-xl {
    max-width: 910px;
  }
}

.mynav #logo-nav {
  height: 74px;
  margin-right: 20px;
}

@media (max-width: 439.98px) {
  .mynav {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .mynav #logo-nav {
    display: none;
  }
}

/* Home */
.carousel-home .carousel-item {
  height: 600px;
  background: no-repeat center center scroll;
  background-size: cover;
}

.carousel-home .carousel-inner > p {
  font-size: 0.875rem;
  position: absolute;
  left: 50%;
  bottom: 30px;
  transform: translateX(-50%);
}

.carousel-home .carousel-indicators li {
  height: 14px;
  width: 14px;
  border-radius: 100%;
}

.carousel-home .carousel-caption {
  bottom: 50%;
  transform: translateY(50%);
}

.carousel-home .carousel-caption h2 {
  font-size: 1.5rem;
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.carousel-home .carousel-caption h2, .carousel-home .carousel-caption p {
  text-shadow: 5px 5px 5px #111;
}

.carousel-home .carousel-caption .btn {
  color: white;
  text-shadow: 5px 5px 5px #111;
  border-color: white;
}

.carousel-home .carousel-caption .btn:hover {
  text-shadow: none;
  border-color: #007bff;
}

@media (min-width: 200px) {
  .carousel-home .carousel-caption h2 {
    font-size: 2rem;
  }
}

@media (min-width: 300px) {
  .carousel-home .carousel-caption h2 {
    font-size: 3rem;
  }
}

@media (min-width: 576px) {
  .carousel-home .carousel-inner > p {
    font-size: 1rem;
  }

  .carousel-home .carousel-caption h2 {
    font-size: 3.25rem;
  }

  .carousel-home .carousel-caption p {
    font-size: 1.25rem;
  }
}

@media (min-width: 768px) {
  .carousel-home .carousel-caption h2 {
    font-size: 3.5rem;
  }

  .carousel-home .carousel-caption p {
    font-size: 1.5rem;
  }
}

@media (min-width: 992px) {
  .carousel-home .carousel-caption h2 {
    font-size: 3.75rem;
  }
}

@media (min-width: 1200px) {
  .carousel-home .carousel-caption h2 {
    font-size: 4rem;
  }
}

.importacao-home {
  background: linear-gradient(rgba(17,17,17,0.6), rgba(17,17,17,0.6)), url(/imagens/imported-rifle-o.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  text-shadow: 5px 5px 5px #111;
}

.importacao-home p:nth-of-type(1n+2) {
  font-size: 17px;
}

/* Serviços */
.main-servicos ul {
  padding-left: 1.25rem;
}

.main-servicos .center-image {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
}

@media (min-width: 768px) {
  .main-servicos .center-image {
    -ms-flex-align: center;
    align-items: center;
  }
}

.main-servicos .center-image img {
  max-height: 200px;
}

/* Contato */
.main-contato #contato-enviar {
  font-size: 1rem;
}

@media (max-width: 427.98px) {
  .main-contato .form-inline {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 575.98px) {
  #contato-interesse-pf-label {
    margin-right: 10px;
  }
}

@media (max-width: 767.98px) {
  .main-contato .row > .col-md-6 {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .main-contato .row > .col-md-6:first-of-type {
    border-bottom: 2px solid #111;
  }

  .main-contato #contato-enviar {
    width: 100%;
  }

  .main-contato .row > .col-md-6:nth-of-type(2) {
    text-align: center;
  }

  .main-contato .row > .col-md-6:nth-of-type(2) p:first-of-type::after {
    content: "Envie-nos uma mensagem através do formulário acima, ou se preferir entre em contato com a nossa equipe através dos meios de contato abaixo:";
  }
}

@media (min-width: 768px) {
  .main-contato .row > .col-md-6:nth-of-type(2) p:first-of-type::after {
    content: "Envie-nos uma mensagem através do formulário ao lado, ou se preferir entre em contato com a nossa equipe através dos meios de contato abaixo:";
  }
}

@media (min-width: 768px) AND (max-width: 991.98px) {
  .main-contato .form-inline {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Footer */
.footer {
  background: rgba(0,0,0,0.9);
}

.footer img {
  height: 20px;
}
