@import url(https://fonts.googleapis.com/css?family=Jost:100,200,300,400,500,600,700,800,900,100i,200i,300i,400i,500i,600i,700i,800i,900i&display=swap);
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-decoration: none;
}

body,
html,
.rodape,
.cabecalho,
.textos {
    font-size: 100%;
    scroll-behavior: smooth;
}

html {
    background: #1d2125;
}

body {
    background: radial-gradient(circle, rgb(117, 93, 90), #1d2125);
}

#homebody {
    background-image: url(assets/images/IMG_1112.JPEG);
    background-size: cover;
    background-position: right;
    background-repeat: no-repeat;
    height: 100vh;
}

.cabecalho {
    height: 70px;
    display: flex;
    position: fixed;
    flex-direction: row;
    align-items: center;
    justify-content: left;
    padding: 32px;
}

.cabecalho-imagem {
    height: 40px;
    margin-right: 32px;
}

.cabecalho-menu-item {
    font-family: 'Jost', sans-serif;
    color: rgb(255, 142, 66);
    font-weight: 100;
    font-size: 15px;
}

main {
    display: flex;
    flex-direction: row;
    justify-content: start;
    align-items: start;
    width: 100%;
    padding: 20px 0px 0px 0px;
}

.conteudo {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: max-content;
    margin-left: 5%;
    margin-top: 7vw;
}

.conteudo-principal {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding-top: 2%;
    padding-bottom: 4%;
    justify-content: space-around;
    -webkit-backdrop-filter: blur(30px);
    backdrop-filter: blur(30px);
    border: 2px solid rgb(255, 142, 66);
}

.conteudo-principal-escrito {
    text-align: center;
    text-shadow: 2px 1px 2px black;
    font-family: 'Jost', sans-serif;
    color: rgb(255, 142, 66);
}

.conteudo-principal-escrito-titulo {
    font-weight: 800;
    font-size: 3vw;
}

.conteudo-principal-escrito-texto {
    font-weight: 300;
    font-size: 1.5vw;
}

.botoes {
    margin-top: 5%;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 10%;
}

.botao-menu {
    font-family: 'Jost', sans-serif;
    display: inline-block;
    padding: 1vh 2vh;
    font-size: 1vw;
    font-weight: 300;
    text-decoration: none;
    text-shadow: 2px 1px 2px black;
    color: rgb(255, 142, 66);
    border: 2px solid rgb(255, 142, 66);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    transition: background-color 0.3s, color 0.3s, border-color 0.3s;
}
  
.botao-menu:hover {
    background-color: rgb(255, 142, 66);
    text-shadow: 0px 0px 0px black;
    color: black;
}

#botao-linguagem {
    font-family: 'Jost', sans-serif;
    display: inline-block;
    padding: 1vh 2vh;
    margin: 2%;
    font-size: 0.8vw;
    font-weight: 300;
    text-decoration: none;
    color: rgb(255, 142, 66);
    border: 2px solid rgb(255, 142, 66);
    text-shadow: 2px 1px 2px black;
    position: fixed;
    bottom: 1%;
    left: 1%;
    margin-bottom: 2%;
    margin-left: 2%;
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    transition: background-color 0.3s, color 0.3s, border-color 0.3s;
}
  
#botao-linguagem:hover {
    background-color: rgb(255, 142, 66);
    text-shadow: 0px 0px 0px black;
    color: black;
}

/* AQUI COMEÇA A GALERIA. */

.galeria-nome {
    padding-top: 7vh;
    padding-bottom: 7vh;
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 2vw;
    color: rgb(255, 142, 66);
    pointer-events: none;
}

#gallerybody {
    background-size: cover;
    background-position: center;
    background-repeat: repeat;
}

.img {
    aspect-ratio: 3/4;
}

.overlay-text {
    position: absolute;
    color: rgb(255, 142, 66);
    top: 6%;
    right: -96%;
    transform: rotate(30deg);
    font-family: 'Jost', sans-serif;
    font-weight: 200;
    font-size: 2vw;
    background-color: rgb(22, 22, 22);
    padding: 5px 100%;
    pointer-events: none;
}

.gallery {
    display: grid;
    gap: calc(2vw);
    width: 80%;
    --gap: 2%;
    --num-cols: 4;
    --row-height: 40vw;
    grid-template-columns: repeat(var(--num-cols), 1fr);
}

.links-galeria,
.main,
.conteudo-principal-escrito {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.links-galeria {
    padding: 7vh;
}

.doublecolumn {
    aspect-ratio: 4/3;
    grid-column: span 2;
}

.triplecolumn {
    aspect-ratio: 4/2;
    grid-column: span 3;
}

.twobytwo {
    grid-column: span 2;
    grid-row: span 2;
}