/* HEADER */
header {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    overflow: hidden;
    background-color: var(--rose);
}

header img {
    position: relative;
    width: auto;
    height: 35vw;
    z-index: 0;
    object-fit: contain;
    object-position: center center;
}

header .containerTexts {
    position: absolute;
    align-items: flex-end;
    gap: 1vw;
    top: 50%;
    left: 20%;
    width: 28vw;
    z-index: 1;
    transform: translate(-50%, -50%);
}

header .containerTexts h1,
header .containerTexts p {
    width: 100%;
    text-align: right;
}

header .containerTexts h1 {
    text-transform: uppercase;
}

/* MAIN */
main {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
}

/* SECTIONS */
section {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4vw;
    width: 100%;
    height: auto;
    overflow: hidden;
    padding: 7.5vw 0 1vw 0;
}

section h1 {
    padding-bottom: 1vw;
    font-family: 'baskervilleBoldItalic', Arial, Helvetica, sans-serif;
}

section .box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 3vw;
    height: auto;
    padding: 7vw 0;
    border: .6vw solid var(--rose-boxes);
}

/* Linha das sections */
section.line {
    gap: 0;
    padding: 0;
}

section.line::after,
section.line::before {
    position: relative;
    content: '';
    width: .2vw;
    height: 9vw;
    background-color: var(--rose-boxes);
}

/* SECTION - Quem Sou */
#quem-sou {
    padding: 7.5vw 0;
}

#quem-sou p {
    width: 42vw;
}

/* SECTION - Serviços */
#servicos .box {
    width: 60vw;
}

#servicos .box p {
    width: 69%;
}

/* SECTION - Contactar */
#contactar::before {
    display: none;
}

#contactar .box {
    width: 50vw;
}

#contactar .box p {
    width: 40%;
}

#contactar .social-icons {
    width: 90%;
    height: auto;
    margin: 0 auto;
}

#contactar ul {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    justify-self: center;
    gap: 2vw;
    width: 100%;
    height: auto;
}

#contactar ul li a,
#contactar ul li img {
    display: inline-block;
    position: relative;
    width: 100%;
    height: auto;
}

#contactar ul li {
    width: 6%;
}

#contactar ul li:hover {
    filter: saturate(0.5);
}

/* Formulário de Contato */
.contact-form {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 1vw;
    width: 60%;
    height: auto;
}

.form-group {
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* Estilos dos inputs e textarea */
.form-group input,
.form-group textarea {
    width: 100%;
    height: 3vw;
    outline: none;
    font-size: 1vw;
    padding: 0 1vw;
    color: var(--brown);
    -webkit-user-select: text;
    background-color: var(--white);
    border: 1.5px solid var(--almost-black);
    font-family: 'futuraLT', Arial, Helvetica, sans-serif;
}

#form-message {
    position: relative;
    font-size: 1vw;
    text-align: left;
    color: var(--brown);
    font-family: 'futuraLT', Arial, Helvetica, sans-serif;
}

.form-group input:focus,
.form-group textarea:focus {
    border-color: var(--brown);
}

/* Container para Nome e Sobrenome lado a lado */
.contact-form>.form-group:nth-child(1),
.contact-form>.form-group:nth-child(2) {
    width: 48%;
    display: inline-block;
    vertical-align: top;
    margin-right: 4%;
}

.contact-form>.form-group:nth-child(2) {
    position: absolute;
    right: 0;
    margin-right: 0;
}

/* Campo Email */
.contact-form>.form-group:nth-child(3) {
    clear: both;
}

.form-group textarea {
    height: 10vw;
    resize: vertical;
}

/* Botão Enviar */
.contact-form .button-submit {
    width: 100%;
}

/* Remover labels visuais para seguir exatamente a imagem (mas mantidos no HTML para SEO/acessibilidade) */
.form-group label {
    display: none;
}

/* Placeholder (texto cinza dentro do campo) */
::placeholder {
    opacity: 1;
    color: var(--brown);
}

/* SECTIONS - O Poder da Relação e Publicações */
#o-poder-da-relacao p,
#publicacoes p {
    width: 41vw;
}

#o-poder-da-relacao img,
#publicacoes img {
    position: relative;
    width: 35vw;
    height: auto;
}