@font-face {
  font-family: "Made-Tommy-Regular";
  src: url("../fonts/Made-Tommy-Regular.otf");
  font-display: swap;
}

@font-face {
  font-family: "Made-Tommy-Bold";
  src: url("../fonts/Made-Tommy-Bold.otf");
  font-display: swap;
}

@font-face {
  font-family: "Metropolis-Regular";
  src: url("../fonts/Metropolis-Regular.otf");
  font-display: swap;
}

@font-face {
  font-family: "Metropolis-SemiBold";
  src: url("../fonts/Metropolis-SemiBold.otf");
  font-display: swap;
}

@font-face {
  font-family: "Righteous-Regular";
  src: url("../fonts/Righteous-Regular.ttf");
  font-display: swap;
}

/* ============================================ */
/*   GENERALES   */
/* ============================================ */

html {
  scroll-behavior: smooth;
  scroll-padding-top: 62px;
}

.color-primario {
  color: #2e9737;
}

hr {
  background-color: #2e9737;
}

h1,
h2,
.swal2-title {
  font-family: "Metropolis-SemiBold";
  letter-spacing: 0.68px;
  font-size: 2rem;
}

h3 {
  font-family: "Metropolis-SemiBold";
  text-transform: uppercase;
  letter-spacing: 0.68px;
}

h5 {
  font-family: "Metropolis-SemiBold";
  margin-bottom: 0px;
  letter-spacing: 0.68px;
}

h6 {
  font-family: "Metropolis-SemiBold";
  margin-bottom: 0px;
  letter-spacing: 0.68px;
}

a,
p,
label,
li,
.swal2-html-container,
.form-control {
  font-family: "Metropolis-Regular";
  font-size: 10pt;
  letter-spacing: 0px;
  color: #333333;
}

@media (min-width: 0px) and (max-width: 768px) {
  h1,
  h2 {
    font-size: 1.75rem;
  }

  h3 {
    font-size: calc(1rem + 0.6vw);
  }

  h5 {
    font-size: 1.15rem;
  }

  h6 {
    font-size: 0.8rem;
  }
}

ol,
ul {
  padding-left: 1rem;
}

.btn,
.swal2-confirm {
  font-family: "Metropolis-Regular";
  height: 30px;
  padding: 0.1rem 1.5rem;
  border-radius: 8px;
  font-size: 10pt;
  line-height: 0;
  border-radius: 30px !important;
}

.btn-primary,
.swal2-confirm {
  background-color: #2e9737 !important;
  border-color: #2e9737;
}

button.swal2-confirm {
  text-transform: capitalize !important;
  font-family: "Metropolis-Regular";
  padding: 0.1rem 3rem;
}

.btn-primary:hover {
  background-color: #36b040;
  border-color: #36b040;
}

.btn-primary:focus,
.btn-primary.focus {
  background-color: #36b040;
  border-color: #36b040;
  box-shadow: 0 0 0 0.2rem rgba(54, 176, 64, 0.5);
}

.btn-primary.disabled,
.btn-primary:disabled {
  background-color: #2e9737;
  border-color: #2e9737;
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  background-color: #36b040;
  border-color: #36b040;
}

.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(54, 176, 64, 0.5);
}

section {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}

.d-desktop {
  display: block;
}

.d-mobile {
  display: none;
}

@media (min-width: 0px) and (max-width: 768px) {
  .d-desktop {
    display: none;
  }

  .d-mobile {
    display: block;
  }

  .d-mobile {
    display: block !important;
  }
}

.bg-grey {
  background-color: #f5f5f5;
}

header {
  background-image: url("../img/banner-01.jpg");
  -o-background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  text-align: center;
  height: 100vh !important;
  display: flex;
  align-items: center;
  position: relative;
}

header .header-information {
  border-top-left-radius: 5rem;
  border-bottom-right-radius: 5rem;
  box-shadow: inset 0px 5px 7px #00000021;
  padding: 3rem;
  background-color: #fff;
  position: absolute;
  left: 1rem;
  max-width: 500px;
  width: 100%;
  color: #484a47 !important;
}

header .header-information img {
  height: 100px;
  width: 100px;
}

header .header-information .header-text {
  width: calc(100% - 60px);
  padding-left: 2rem;
}

@media (min-width: 0px) and (max-width: 768px) {
  header {
    background-image: url("../img/banner-01-mobile.jpg");
    -o-background-size: cover;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    text-align: center;
    height: 100vh !important;
    display: flex;
    align-items: center;
    position: relative;
  }

  header .header-information {
    max-width: 500px;
    width: calc(100% - 2rem);
  }

  header .header-information img {
    height: 70px;
    width: 70px;
  }

  header .header-information .header-text {
    width: calc(100% - 80px);
    padding-left: 1rem;
  }
}

.navbar-brand {
  padding: 0px !important;
}

.nav-item {
  display: flex;
  align-items: center;
  padding-left: 1rem;
  padding-right: 1rem;
}

.nav-link {
  font-family: "Metropolis-SemiBold" !important;
  color: #1d1d1d;
}

.container-quienes-somos {
  background: #ffffff 0% 0% no-repeat padding-box;
  box-shadow: 0px 3px 6px #c0dee6;
  height: 110px;
  width: 110px;
  border-radius: 55px;
  opacity: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0.5rem;
}

.container-quienes-somos img {
  height: 60px;
  width: 60px;
}

#casos-de-exito .card {
  margin-top: 1rem;
  margin-bottom: 1rem;
  box-shadow: 0px 0px 15px #a5a6a4;
  border: 1px solid rgba(165, 166, 164, 0.1);
  min-height: 300px;
}

#casos-de-exito .row {
  height: 100%;
}

#casos-de-exito .col-md-5 {
  -o-background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  background-size: cover;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

#casos-de-exito .col-md-5 {
  min-height: 300px;
}

#casos-de-exito .row {
  border-radius: 0.25rem;
}

#casos-de-exito .leaf {
  background-color: #83b12f;
  color: #fff !important;
  text-align: center !important;
  border-top-left-radius: 2.5rem;
  border-bottom-right-radius: 2.5rem;
  padding: 2rem;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

#casos-de-exito .leaf p,
#casos-de-exito .leaf h6 {
  color: #fff;
}

.owl-nav {
  display: flex !important;
  justify-content: space-between;
}

.owl-prev {
  position: absolute;
  top: 40%;
  left: -0px;
}

.owl-next {
  position: absolute;
  top: 40%;
  right: -0px;
}

.owl-prev span,
.owl-next span {
  font-size: 40px;
  color: #2e9737;
}

.owl-theme .owl-nav [class*="owl-"]:hover {
  background: transparent;
  text-decoration: none;
}

.nos-recomiendan-carousel .owl-dots {
  display: block !important;
}

/* ============================================ */
/*   FOOTER   */
/* ============================================ */

footer {
  background-image: url("../img/background-footer.png");
  -o-background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  background-size: cover;
  min-height: 100vh;
  height: 100%;
  display: flex;
  align-items: center;
}

footer .col-md-12,
footer .col-md-6 {
  padding-left: 0px;
}

footer .col-md-8 {
  display: flex;
  justify-content: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
  padding-left: 3rem;
  border-left: 1px solid #d90a26;
}

footer .col-md-8 > div {
  max-width: 600px;
  width: 100%;
}

.input-group-text,
.form-select,
.form-control {
  background-color: transparent;
  font-family: "Metropolis-Regular";
  font-size: 10pt;
  border: 1px solid #484a47;
  margin-bottom: 1rem;
  color: #000;
}

.form-control.input-group-input {
  border-left: none !important;
}

.input-group-text {
  border-right: none !important;
  height: 33.98px !important;
  background-color: transparent;
}

.form-select {
  height: 33.98px !important;
}

.form-control:focus {
  background-color: transparent;
}

.form-control::-moz-placeholder {
  color: #b3b3b3;
  opacity: 1;
}
.form-control::placeholder {
  color: #b3b3b3;
  opacity: 1;
}

/* .form-control::-moz-placeholder {
  background-color: #faf6f3;
}
.form-control::placeholder {
  background-color: #faf6f3;
} */

@media (min-width: 0px) and (max-width: 768px) {
  footer {
    padding-top: 4rem !important;
  }

  footer .col-md-12,
  footer .col-md-6 {
    padding-right: 0px;
  }

  footer .col-md-8 {
    border-left: none !important;
    padding-top: 2rem;
    padding-left: 12px;
  }
}

footer a {
  text-decoration: none;
}

footer .contain-icon {
  display: inline-flex;
  align-items: center;
  height: 36px;
  width: 30px;
  vertical-align: middle;
}

/* ============================================ */
/*   MADE BY   */
/* ============================================ */

#made-by {
  background-color: #000;
  color: #fff;
  padding: 15px 5px 15px 5px !important;
  display: flex;
  justify-content: center;
}

#nos-recomiendan img {
  height: 210px;
  width: 210px !important;
}

@media (min-width: 0px) and (max-width: 768px) {
  #casos-de-exito .container,
  #nos-recomiendan .container {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }

  #casos-de-exito .owl-prev,
  #nos-recomiendan .owl-prev {
    left: -2rem;
  }

  #casos-de-exito .owl-next,
  #nos-recomiendan .owl-next {
    right: -2rem;
  }

  #casos-de-exito .item,
  #nos-recomiendan .item {
    padding-left: 12px;
    padding-right: 12px;
  }

  #nos-recomiendan img {
    height: 100px;
    width: 100px !important;
  }
}

#servicios .card-body {
  min-height: 230px;
}

@media (min-width: 0px) and (max-width: 768px) {
  #servicios .card-body {
    min-height: 0px;
  }
}

#servicios .owl-prev span,
#servicios .owl-next span {
  font-size: 40px;
  color: #fff !important;
  opacity: 0.7;
}

.whatsapp-follow {
  position: fixed;
  bottom: calc(224px + 1rem);
  right: 1rem;
  padding: 1rem;
  z-index: 1900;
}

#gracias .whatsapp-follow,
.whatsapp-follow.going-down {
  bottom: 1rem;
}

.whatsapp-follow img {
  height: 70px;
  width: 70px;
  transition: width 1s, height 1s;
}

.whatsapp-follow img:hover {
  cursor: pointer;
  height: 80px;
  width: 80px;
}

@media (min-width: 0px) and (max-width: 768px) {
  .whatsapp-follow {
    bottom: 0.25rem !important;
    right: 0.25rem !important;
  }

  .whatsapp-follow img:hover,
  .whatsapp-follow img {
    height: 60px;
    width: 60px;
  }

  .mb-mobile {
    margin-bottom: 2rem;
  }
}
