/* Arquivo com estilos específicos do site 
    Todas as classes utilizam o prefixo "s" para diferenciação de classes do Bootstap
*/

/* Fonts */

@font-face {
  font-family: Montserrat;
  src: url(../fonts/Montserrat-VariableFont_wght.ttf);
}

@font-face {
  font-family: Montserrat italic;
  src: url(../fonts/Montserrat-Italic-VariableFont_wght.ttf);
}

@font-face {
  font-family: Montserrat Bold;
  src: url(../fonts/static/Montserrat-Bold.ttf);
}

/* Root */

:root {
  font-size: 62.5%;
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

body {
  font-family: "Montserrat";
  margin: auto;

  background-color: rgba(204, 213, 224, 0.8);
}

/* Header */

.s-header {
  background-color: white;
}

.s-header__image-container--size {
  width: 240px;

  margin: 0.4rem 0 0 0.3rem;
}

/* Navbar */

.s-navbar-container {
  display: flex;

  width: fit-content;
}

/* Toggle Menu Hambúrguer */
.s-navbar__menu-toggle {
  display: flex;
  justify-content: center;
  flex-direction: column;

  width: 50px;
  height: 50px;
}

/* Itens do menu hambúrguer */
.s-navbar__one,
.s-navbar__two,
.s-navbar__three {
  background-color: rgba(40, 42, 43, 1);

  width: 70%;
  height: 4px;

  border-radius: 0.2rem;
  margin: 3px auto;

  transition-duration: 0.3s;
}

/* Menu fechado */
.s-navbar__menu {
  display: none;
}

/* Config para menu aberto */
.s-navbar-container--full {
  background-color: rgba(71, 80, 255, 1);

  display: block;
  position: absolute;
  top: 0;
  left: 0;

  width: 100vw;
  height: 100vh;

  z-index: 10;
}

/* Toggle menu aberto */
.s-navbar-container--full .s-navbar__menu-toggle {
  position: absolute;
  top: 2%;
  left: calc(100% - 60px);
}

.s-navbar-container--full .s-navbar__one {
  transform: rotate(45deg) translate(5px, 6px);
}

.s-navbar-container--full .s-navbar__two {
  opacity: 0;
}

.s-navbar-container--full .s-navbar__three {
  transform: rotate(-45deg) translate(8px, -9px);
}

/* Menu aberto */
.s-navbar-container--full .s-navbar__menu {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;

  width: 70%;

  padding: 0;
  margin: 0;

  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  list-style: none;
}

/* Estilização dos itens da nav */
.s-navbar__menu-item {
  display: block;

  margin: 1rem;
}

.s-navbar__menu-item a {
  font-size: 2.4rem;
  color: white;
  text-decoration: none;
}

/* Social Media Nav */

.s-navbar__menu-media {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  gap: 10px;

  width: fit-content;

  font-size: 2.4rem;

  padding: 0.5em;
}

/* Todas as seções */

.s-residential,
.s-commercial,
.s-industrial,
.s-architecture {
  font-size: 1.6rem;
  text-align: center;

  display: flex;
  flex-flow: column nowrap;
  justify-content: space-evenly;
  align-items: center;

  width: 100%;

  padding: 0.8em;
}

/* Comercial e Arquitetônico */
.s-commercial,
.s-architecture {
  color: white;

  background-image: url(../assets/home/BG.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

/* Títulos */
.s-residential__title,
.s-commercial__title,
.s-industrial__title,
.s-architecture__title {
  font-size: 2.4rem;
  font-weight: bold;

  width: fit-content;

  padding: 0.3em;
  margin: 1rem auto;
}

/* Outros Containers de Conteúdo */
.s-commercial__content,
.s-industrial__content,
.s-architecture__content {
  display: block;

  width: 100%;

  padding: 0.5em;
  margin-right: auto;
}

/* Parágrafos */
.s-commercial__paragraph,
.s-industrial__paragraph,
.s-architecture__paragraph {
  text-align: justify;
  font-weight: 500;

  display: block;

  width: 25ch;
  margin: 1rem auto;

  padding: 0.5em;
}

/* Residencial */

.s-residential__content {
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-around;
  align-items: center;

  gap: 2rem;

  width: 100%;

  padding: 0.5em;
  margin: 2rem auto 0;
}

.s-residential__step {
  display: flex;
  flex-flow: column nowrap;
}

.s-residential__step img {
  width: 7rem;
  height: 7rem;

  display: block;
  margin: 0 auto 2rem;
}

.s-residential__step-title {
  color: black;
  font-size: 2.4rem;
  font-weight: 600;

  display: block;

  width: fit-content;

  margin: 0.7rem auto;
}

.s-residential__step-paragraph {
  text-align: justify;
  font-weight: 500;

  display: block;

  width: 25ch;

  padding: 0.5em;
  margin: 0;
}

.s-residential__step-paragraph a {
  color: black;
}

.s-residential__step-paragraph a:hover {
  color: rgba(71, 80, 255, 1);
}

/* Botão de Retorno */

.s-services__r-button {
  display: none;
}
