@import url('https://fonts.googleapis.com/css2?family=Lora:ital@1&family=Montserrat:wght@400;700&display=swap');

@font-face {
  font-family: 'Metropolis Regular';
  src: url('./fontes/Metropolis-Regular.otf') format('opentype');
}

@font-face {
  font-family: 'Metropolis Bold';
  src: url('./fontes/Metropolis-Bold.otf');
}

h1,
h2,
h3,
h4,
h5,
h6,
b,
.text-bold,
strong {
  font-family: 'Metropolis Bold', 'Montserrat', sans-serif !important;
  font-weight: bold;
}

p {
  font-family: 'Metropolis Regular', 'Montserrat', sans-serif !important;
  font-size: 1rem;
  line-height: 1.2;
}

h1 {
  font-size: 2.5rem;
  line-height: 1.2;
}

h2 {
  font-size: 2rem;
  line-height: 1.2;
}

h3 {
  font-size: 1.75rem;
  line-height: 1.2;
}

h4 {
  font-size: 1.5rem;
  line-height: 1.2;
}

h5 {
  font-size: 1.25rem;
  line-height: 1.2;
}

h6 {
  font-size: 1rem;
  line-height: 1.2;
}

.display-1 {
  font-size: 3.5rem;
  line-height: 1.2;
}

.display-2 {
  font-size: 3rem;
  line-height: 1.2;
}

.display-3 {
  font-size: 2.5rem;
  line-height: 1.2;
}

.display-4 {
  font-size: 2.25rem;
  line-height: 1.2;
}

.sz-4 {
  font-size: 4rem;
  line-height: 1.2;
}

.sz-3-5 {
  font-size: 3.5rem;
  line-height: 1.2;
}

.sz-3 {
  font-size: 3rem;
  line-height: 1.2;
}

.sz-2-5 {
  font-size: 2.5rem;
  line-height: 1.2;
}

.sz-2 {
  font-size: 2rem;
  line-height: 1.2;
}

.sz-1-5 {
  font-size: 1.5rem;
  line-height: 1.2;
}

.citacao .texto-citacao {
  font-family: 'Lora', 'Times New Romam', serif !important;
  font-size: 2rem;
  line-height: 1.2;
}

.logo-navbar {
  max-height: 50px;
}

.bg-principal {
  background: var(--principal);
}

.bg-branco {
  background: var(--branco);
}

.texto-branco {
  color: var(--branco);
}

.texto-principal {
  color: var(--principal);
}

a.nav-link {
  color: var(--branco);
  font-family: 'Metropolis Bold', 'Montserrat', sans-serif !important;
  font-weight: bold;
}

a.nav-link:hover,
a.nav-link:focus {
  background: var(--branco);
  color: var(--principal);
}

.navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.btn {
  font-family: 'Metropolis Bold', 'Montserrat', sans-serif !important;
  font-weight: bold;
}

.btn-primary {
  color: var(--branco);
  background: var(--principal);
  border: 3px solid var(--principal);
}

.btn-primary:hover,
.btn-primary:focus {
  color: var(--principal);
  background: var(--branco);
  border: 3px solid var(--branco);
}

.btn-light {
  color: var(--principal);
  background: var(--branco);
  border: 3px solid var(--branco);
}

.btn-light:hover,
.btn-light:focus {
  color: var(--branco);
  background: transparent;
  border: 3px solid var(--branco);
}

.hero {
  background-image: url('./imagens/hero-mac-elevadores.webp');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
}

.call-to-action {
  min-height: 100vh;
}

.call-to-action h1 {
  max-width: 20ch;
}

.call-to-action h1,
.call-to-action p.sz-1-5 {
  text-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5);
}

.clientes,
.servicos {
  background-image: url('./imagens/pattern.webp');
  background-size: 75px;

}

.icone {
  max-height: 75px;
}

#servicos,
#sobre,
#parceiros,
#clientes,
#contato {
  min-height: 0px;
  top: -70px;
  position: relative;
}

.logo-rodape {
  max-height: 150px;
}

.logo-thf {
  max-height: 1rem;
}

footer a {
  color: var(--branco);
  text-decoration: none;
}

footer a:hover,
footer a:focus {
  text-decoration: underline;
}

@media (min-width: 641px) and (max-width: 820px) {
  .hero {
    background-position-y: top;
    background-position-x: -450px
  }

  .call-to-action {
    min-height: 85vh;
  }

  .call-to-action h1 {
    font-size: 3rem;
    line-height: 1.2;
  }
}

@media screen and (max-width: 640px) {

  .hero {
    background-image: url('./imagens/hero-mobile.webp');
  }

  .call-to-action {
    min-height: 90vh;
  }

  .call-to-action h1 {
    margin: 200px auto 0;
    max-width: 15ch;
    font-size: 2rem;
    line-height: 1.2;
    text-align: center;
  }

  .call-to-action p.sz-1-5 {
    font-size: 1rem;
    line-height: 1.2;
    max-width: 25ch;
  }

  .call-to-action p {
    margin: 0 auto;
    text-align: center;
  }

  .call-to-action .btn{
    margin-right: 0px !important;
    min-width: 80%;
  }

  .servicos .horizontal-scroll {
    display: grid !important;
    grid-template-columns: repeat(6, 80vw);
    gap: 16px;
    overflow-x: scroll;
  }

  .contato h1,
  .clientes h1,
  .parceiros h1,
  .servicos h1 {
    font-size: 2rem;
    line-height: 1.2;
  }

  .contato h2,
  .clientes h2,
  .parceiros h2,
  .servicos h2 {
    font-size: 1.4rem;
    line-height: 1.2;
  }

  .sobre h2 {
    font-size: 1.4rem;
    line-height: 1.2;
    text-align: center;
    margin-bottom: 1.25rem;
  }

  .sobre .img-sobre {
    margin-bottom: 1.25rem;
    max-width: 60vw;
  }

  .citacao .texto-citacao {
    font-size: 1.4rem;
    line-height: 1.2;
  }

  .parceiros .horizontal-scroll {
    display: grid !important;
    grid-template-columns: repeat(3, 60vw);
    gap: 16px;
    overflow-x: scroll;
    margin-bottom: 20px;
  }

  .clientes .horizontal-scroll {
    display: grid !important;
    grid-template-columns: repeat(6, 60vw);
    gap: 16px;
    overflow-x: scroll;
    margin-bottom: 20px;
  }

  .clientes img,
  .parceiros img {
    border: 4px solid var(--principal);
  }
}

:root {
  --principal: #1D4289;
  --branco: #ffffff;
  --preto: #000000;
}