/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Italiana&family=Julius+Sans+One&family=Quicksand:wght@300..700&display=swap');

/* Variáveis de Fonts */
:root {
    --fonte-menu: "Italiana", sans-serif;
    --fonte-título: "Julius Sans One", sans-serif;
    --fonte-subtítulo: "Quicksand", sans-serif;
}

/* Variáveis de cores */
/* Tema dark */
:root,
:root[data-theme='dark'] {

    --cor-fundo: #000000;
    --cor-fundo-secundaria: #27282c;

    --cor-txt-menu: #8383838b;
    --cor-destaque: #e5e5e6;
    --icone-tema: #20447a;
    --cor-h1: #ffffff;
    --cor-textos: #ffffff;
    --destaque-icones: #063896;
    --cor-borda: #c9bebea2;
    --cor-icone: #b90101;
    --icone-menu-mobile: #fff
}




/* Tema Claro */
:root[data-theme='light'] {

    --cor-fundo: #dbc0c0;
    --cor-fundo-secundaria: #ffffff;

    --cor-txt-menu: #0e0606c7;
    --cor-destaque: #000000;
    --icone-tema: #e2dbdb;
    --cor-h1: #000000;
    --icone-menu-mobile: #000;
}

/*Filtro Cor Logo */
html[data-theme='dark'] .logo {
    filter: invert(1);
    /* para img preto */
}


/* Fontes Utilizadas */

/* Converter REM em PX */
html {
    font-size: 62.5%;
}




/* Reset CSS = Padronizar os navegadores */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    scrollbar-width: thin;
    scrollbar-color: transparent;
}




/* TODA A ESTRUTURA DO SITE ou HTML */
body {
    background-color: var(--cor-fundo-secundaria);
}

/* Cabeçalho */
header {
    background: var(--cor-fundo);
    width: 100%;
    /* Largura */
    /* Responsivas */
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    z-index: 200;
    padding: 0.5rem 1rem;
    border-bottom: 1px solid var(--cor-borda)
}


.menu-desktop {
    display: none;
    justify-content: center;
    align-items: center;
}

/* Menu UL */

.menu {
    display: flex;
    list-style: none;
    gap: 16px;
}

/* A Href = menu = meu link*/
.menu-link {
    text-decoration: none;
}

.menu-link {
    text-decoration: none;
}

.menu-texto {
    color: var(--cor-txt-menu);

    text-transform: capitalize;
    font-size: 1.8rem;
    /* 18px */
    font-family: var(--fonte-menu);
    font-weight: 600;
}

/* Menu Mobile */
.btn-menu-mobile {
    background: transparent;
    color: var(--icone-menu-mobile);
    border: none;
    font-size: 1.8rem;
    padding: 1rem;
    margin-left: 1rem;
    align-items: center;
}

/* Menu mobile (estilo e animação) */
.menu-mobile {
    /* NAV */
    top: 0;
    right: 0;
    position: fixed;
    opacity: 0;
    background: var(--cor-fundo-secundaria);
    z-index: 100;
    transform: translateX(100%);
    display: flex;
    flex-direction: column;
    padding-top: 6.5rem;
    border-left: 1px solid var(--cor-borda);
    height: 100vh;
    width: 35%;
    transition: ease-in-out 0.3;
}

.menu-mobile .active {
    /* Ela volta ara o original */
    transform: translateX(0%);
}

.menu-mobile .menu-lista {
    width: 100%;
    padding-top: 5rem;
    text-align: center;
    padding: 0;
    margin: 0;
}



.logo img {
    width: 25rem;
    height: 5rem;
}



h1 {
    font-size: 32px;
    text-align: center;
    background-color: rgb(0, 0, 0);
    color: rgb(177, 177, 177);
    font-family: var(--fonte-menu);
}

h2 {
    font-size: 30px;
    text-align: center;
    background-color: rgb(0, 0, 0);
    color: rgb(230, 230, 230);
    font-family: var(--fonte-título);
}

/* Herança */

.menu-link.active .menu-texto,
.menu-link:hover .menu-texto {
    color: var(--cor-destaque);

}

.header-toggle {
    cursor: pointer;
    font-size: 1.8rem;
    color: var()
}


/* Hero = HOME */
h1 {
    color: var(--cor-h1);
    font-size: 8.0rem;
    font-family: var(--fonte-título);
    font-weight: 100;
}

/* Tamanho do Texto */

strong {
    font-size: 2.5rem;
    font-family: var(--fonte-menu);
}

p {
    color: var(--cor-textos);
    font-size: 3.8rem;
    font-family: var(--fonte-menu);
}

/* Redes sociais */
.menu-social {
    /* UL */
    display: flex;
    list-style: none;
    gap: 1.2rem;
    padding: 0%;
}

.menu-social .social-icon {
    color: var(--cor-h1);
    color: #000;
    font-size: 2rem;
    background: #3f3d3a;
    padding: 5px 10px;
    border-radius: 25%;
}

.menu-social .social-icon:hover {
    color: var(--destaque-icones);
    transition: 0.3s ease-out;
}

/* Carousel */

/* Estrutura dos 3 slides */

/* Altura do Hero em Tela Cheia */
.carousel .carousel-item {
    height: 40vh;
    /* ViewPort Hight */
    min-height: 400px;
}

/* tamanho das imagens */
.carousel .carousel-item img,
.carousel .carousel-item .ratio {
    height: 100%;
    object-fit: cover;
    object-position: center;
    /* Bloquear açoes Click Direito Mouse */
    pointer-events: none;
    border-radius: 5rem 5rem 5rem 5rem;
}

/* Filtro ou Overlay escuro Sutil acima dos slides */

/* Pseudo-Elemento */
.carousel .carousel-item::before {
    content: "";
    background: #000000a4;
    position: absolute;
    inset: 0;
    border-radius: 5rem 5rem 5rem 5rem;
}

.carousel .carousel-caption {
    position: absolute;
    inset: 150px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.carousel h5 {
    font-size: 5rem;
    font-weight: 800;
}

.carousel p {
    font-size: 2.2rem;
    color: #fff;
}

.carousel h5,
.carousel p {
    text-shadow: 0 2px 14px rgba(0, 0, 0, 0.725);

}

/* Centralizar Objeto */
.video {
    display: flex;
    justify-content: center;
    align-items: center;
}

.video iframe {
    aspect-ratio: 16/9;
    width: 95%;
    box-shadow: 0 15px 15px -2px #fff;
}

.complemento {
    display: flex;
    background: var(--cor-fundo);
    padding: 6rem 1rem 2rem;
    margin-top: -5rem;
    justify-content: center;
    background-color: #00000000;
    font-family: var(--fonte-subtítulo);
    color: var(--cor-textos);
}

.complemento h2 {
    font-size: 2rem;
    text-transform: none;
    letter-spacing: normal;
    font-weight: 500;
    font-family: var(--fonte-padrao);
    color: var(--cor-titulo);
    margin-top: 20px;
    background-color: #00000000;
}


/* Seção Geral */
/* Vamos ir atualizando essa parte */


#home,
.pecas {
    padding: 4rem 2rem;
}

/* Peças */

.pecas {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    /* Voltar */
    scroll-margin-top: 150px;
}

.pecas h2 {
    text-align: center;
    font-size: 3rem;
    font-family: var(--fonte-menu);
    color: #fff;
    font-weight: 400;
    text-transform: uppercase;
}

/* Conjuntos */
.conjuntos {
    
    display: flex;
    flex-direction: column;
    gap: 2rem;
    /* Voltar */
    scroll-margin-top: 150px;
    color: red
}

.conjuntos h2 {
    text-align: center;
    font-size: 3rem;
    font-family: var(--fonte-menu);
    color: #fff;
    font-weight: 400;
    text-transform: uppercase;
}


.main-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2rem;
    /* Empurra o video */
    margin-bottom: 5rem;
}

/* Cards */


/* Articles dos projetos */
.projeto-card {
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

/* Classes das IMGs */
.card-cover {
    width: 50%;
    object-fit: cover;
    border-radius: 5rem 5rem;
}

.card-body {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 2rem;
    margin-top: 2rem;
    text-align: justify;
}

.card-reverse .card-body {
    align-items: flex-end;
    justify-content: flex-start;
    text-align: end;
    margin-top: 10px;
    gap: 2rem;
}

/* Título do produto */
.card-body .card-title {
    color: var(--cor-h1);
    font-size: 3rem;
    font-family: var(--fonte-subtítulo);
    font-weight: 700;
}

/* Parágrafo do produto */
.card-body .card-description {
    font-family: var(--fonte-subtítulo);
    color: var(--cor-textos);
    font-size: 1.8rem;
    letter-spacing: 1px;

}



.card-lista {
    background-color: rgba(255, 0, 0, 0);
    list-style: none;
    padding: 0%;
}

.card-item {
    color: var(--cor-txt-menu);
    font-size: 1.8rem;
    font-family: var(--fonte-subtítulo);
    margin-bottom: 10px;
}

/* icone da lista */
.card-item i {
    color: var(--cor-textos);
    font-size: 2.2rem;
    margin-right: 10px;
}

.card-item i:hover {
    color: var(--icone-tema);
    transition: 0.3s ease-out;
}
/* Final da sec projetos */

/* Sobre */

/* Contato */
   .contato {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1.8rem;
  border-top: 1px solid var(--cor-borda);
  border-bottom: 1px solid var(--cor-borda);
}

.contato h2 {
  color: var(--cor-titulo);
  font-size: 3rem;
  font-weight: 600;
  font-family: var(--fonte-subtítulo);
  text-transform: uppercase;
}

.contato .menu-social li {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 5px;
}

.contato span {
  color: var(--cor-icones);
  font-size: 2.2rem;
  margin-left: 5px;
  font-family: var(--fonte-menu);
}

/* Grid CSS */
.contato-grid {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: 2rem;
  width: 100%;
  margin-top: 5rem;
}

.contato-formulario,
.contato-mapa {
  width: 100%;
  display: flex;

}

.contato-mapa iframe {
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 1rem;
  display: flex;
}

.form-contato {
display: flex;
flex-direction: column;
gap: 1.5rem;
}

/* Inputs */
.form-contato input,
.form-contato textarea {
  width: 100%;
  /* Cor fundo secundaria */
  background-color: var(--cor-fundo);
  font-size: 1.8rem;
  /* aumenta a distancia interna */
  padding: 0.75rem 1rem;
  border: 0;
  border-radius: 0.5rem;
  color: var(--cor-textos);
}

/* Pseudo elemento */
.form-contato input::placeholder,
.form-contato textarea::placeholder {
  /* Cor com Transparencia */
  color: #8686867b;
  font-size: 1.8rem;
}


.form-contato button {
  border: 0;
  background-color: var(--cor-fundo);
  align-items: center;
  /* Adapta ao Conteudo */
  align-self: flex-start;
  gap: 2rem;
  display: flex;
  border-radius: 0.5rem;
  padding: 0.5rem 1.5rem;
  box-shadow: 5px 5px 5px #b3b3b36b;
}

.form-contato button i, 
.form-contato button span {
  color: var(--cor-título);
} 

.form-contato button:hover {
  filter: brightness(1.5);
  transition: ease-in-out 0.3s;
  background-color: #7a81858f;
  transform: scale(1.03);
}

.form-contato button i {
  font-size: 2rem;
}


/* Footer // Rodapé */

footer {
    display: flex;
    justify-content: center;
}

footer p {
    padding: 2rem 0;
    font-size: 1.6rem;
    font-family: var(--fonte-padrao);
}

footer a {
    text-decoration: none;
    color: var(--cor-textos);
    margin-left: 5px;
}

footer a:hover {
    color: red;
    transition: ease-in-out 0.4s;
}



/* Responsivo */

@media (max-width: 1199px) {
    .contato-grid {
        grid-template-columns: 1fr ;
    }
}

/* Largura ate */
@media (max-width: 768px) {
    .carousel .carousel-inner {
        margin-top: -2rem;
          grid-template-columns: 1fr
    }

    #home {
        padding-top: 6rem;
    }

}



/* Telas a partir de 992 */
@media (min-width: 992px) {

    .projeto-card {
        flex-direction: row;
    }

    .cover-pecas {
        width: 35%;
        object-fit: cover;
        border-radius: 5rem 5rem;
        margin: 10rem;
    }

    .card-reverse {
        /* Reverso/modo espelho */
        flex-direction: row-reverse;
    }
}


/* A partir de Telas Grandes */
@media (min-width:768px) {

    .btn-menu-mobile {
        display: none;
    }

    header {
        padding: 1rem 10rem;
        justify-content: flex-start;
        gap: 2rem;
    }

    .menu-desktop {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    .logo {
        margin-right: auto;
    }

    .carousel .carousel-inner {
        margin-top: -4.2rem;
        padding-top: 7rem;
    }

    /* Voltar Aqui */
    #home {
        padding: 4rem 10rem;
    }

    .main-content {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    h1 {
        font-size: 5rem;
    }

}

/* Telas maiores que 1200 */
@media (min-width: 1200px) {

    .projetos h2 {
        font-size: 4rem;
    }

}

/* Telas maiores que 1400px */
@media (min-width: 1400px) {
    h1 {
        font-size: 6.5rem;
    }

    .complemento {
        padding: 5rem 7rem 4rem;
        margin-top: -7rem;
    }

    /* Voltar aqui */
    .pecas {
        padding: 5rem 7rem 4rem;
        margin-top: -7rem;
        color: #cdcfcf;
    }

    .complemento h2 {
        font-size: 4.5rem;
    }
}

