/* Variáveis de cor definidas e utilizadas em todo o site */
:root {
    --cor-branco: #f8f8f8;
    --cor-cinza-medio: #555555;
    --cor-rosa-claro: #F0E1D2;
    --cor-rosa-medio:#f5d0cf;
    --cor-rosa-medio-logo: #ffb9b9;

    --cor-rosa-escuro:#e96c8c;
    --cor-marrom-escuro: #6E3C1E;

}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: Arial, sans-serif;
    background-color: var(--cor-branco);
    color: var(--cor-texto);
    display: flex;                             /* Transforma o body em um container vertical — nav, section e footer empilhados um abaixo do outro */
    flex-direction: column;                    /* Define a direção do empilhamento como coluna (de cima para baixo) */
    min-height: 100vh
}

nav ul {
    display: flex;
    list-style: none;
    background:var(--cor-rosa-escuro);
    justify-content: center;
    flex-wrap: wrap;                           /* Em telas pequenas, os links conseguem se mover para próxima linha */
    gap: 30px;
}

nav ul li a {
    color: var(--cor-branco);
    padding: 15px;
    display: block;
    text-decoration: none;
}

nav ul li a:hover {
    background: var(--cor-rosa-claro);
    color:var(--cor-marrom-escuro);
}

.titulo {
    padding: 20px;
    /*border: 2px solid red;*/
}

.titulo h1 {
    margin: 0;
    color: var(--cor-marrom-escuro);
}


/* PÁGINA: index.html */

.container-principal-index{
    display: grid;
    grid-template-rows: 1fr 1fr;                       
}

.imagem-coracao-cacau{
    display:flex;
    justify-content: center;
    background-color: var(--cor-rosa-medio-logo);
}

.imagem-coracao-cacau img{
    width:350px;
}

.informacoes-gerais p {
    text-align: justify;
    background-color: var(--cor-branco);
    color: var(--cor-marrom-escuro);
    font-size: 30px;
    padding: 80px 300px;
}

/* PÁGINA: sobre.html */

.titulo-sobre {
    padding: 20px;
    /*border: 2px solid blue;*/
}
.subtitulo-sobre{
    padding: 15px;
}

.p-sobre{
    text-align: justify;
    background-color: var(--cor-rosa-claro);
    font-size: 20px;
    padding: 80px;
    /*border: 2px solid red*/
}

.p-sobre p{
    margin: 20px
}


.titulo-sobre h1 {
    margin: 0;
    color: var(--cor-marrom-escuro);
    background-color: var(--cor-branco);
    font-size: 30px;
}

.subtitulo-sobre {
    display:flex;
    justify-content: center;
    padding: 25px;
}

.texto-fundadora{
    text-align: center;
    padding: 25px;
}

.texto-fundadora p{
    padding: 8px;
}

.imagem-foto-fundadora{
    display:flex;
    justify-content: center;
}

.imagem-foto-fundadora img{
    border-radius:8px;
}


/* PÁGINA: produtos.html */
.container-principal{
    display: grid;
    grid-template-rows: 1fr 1fr;                       
}

#container-produtos{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap:30px;
    background-color: var(--cor-rosa-medio);
    justify-items: center;   
    padding: 40px;                /* Centraliza os cards */
    /*border: 2px solid red;*/
    }

.item{
    text-align: center;
    background-color: var(--cor-branco);
    width: 220px 300px;
    padding: 15px;
    border: 1px solid var(--cor-branco);
    border-radius: 20px;
    font-size: 18px;
}

.item img{
    width: 100%;
    height: 180px;
    object-fit: cover;            /* Mantém a proporção */
    border-radius: 10px;
}

.item p{
font-weight: bold;
}

.container-orcamento{
    width: 500px;
    margin: 50px auto;           /* Centraliza na tela */
    padding: 40px;
    background: var(--cor-branco);
    border-radius: 20px;
    border: 5px solid var(--cor-rosa-escuro)
}

.container-orcamento div {
    display: flex;
    flex-direction: column;
    margin: 30px;
    margin-bottom:12px;
}

input {
    width: 100%;
    padding: 5px;
    margin-top: 5px;
}

button {
    width: 100%;
    margin-top: 15px;
    padding: 10px;
    background-color: var(--cor-rosa-medio);
    color: var(--cor-marrom-escuro);
    border: 10px;
    cursor: pointer;
    font-size: 15px;
    margin-bottom:12px;
}

button:hover {
    background: var(--cor-rosa-escuro);
    color: var(--cor-branco);
}

#resultado {
    margin-top: 15px;
    font-weight: bold;
    text-align: center;
}


/* PÁGINA: novidades.html */
.imagem-trufa-receita{
    display:flex;
    justify-content: center;
}

.imagem-trufa-receita img{
    border-radius:8px;
    margin: 5px;
}

.receita-trufa{
    background-color: var(--cor-rosa-claro);
    padding: 45px;
}

.receita-trufa p {
    padding: 15px;
}

.receita-trufa h3 {
    padding: 5px;
}
.ingredientes{
    padding: 15px;
}

.preparo{
    padding: 15px;
}
/* PÁGINA: contato.html */
.form-section{
    padding: 50px;
    background-color: var(--cor-branco);
}

.form{
    margin: 0 auto;                             /* auto = margem calculada pelo navegador */
    display: block;
    width: 400px;
    padding: 30px;
    border: 1px solid var(--cor-rosa-medio);
    background-color: var(--cor-rosa-medio);
    border-radius: 8px;
}

.form-row{
    width: 100%;
    margin: 15px 0;
}

.radio-option-2{
    border:none;                                   /* Remove a borda do fieldset */
    display: flex;                                /* Coloca o radio button um ao lado do outro */
    gap: 3px;                                     /* Controla o espaço entre os radio buttons */
    padding: 1px;
}

input[type="text"],
input[type="email"],
textarea{
    width: 100%;
    padding-left: 10px;
    height: 30px;
    line-height: 30px;
    border-radius: 8px;
    border: 1px solid var(--cor-cinza-medio);
}

textarea{
    line-height: 20px;
    padding: 10px;
    height: 90px;
    resize: none;
}

/* Botões: Enviar e Limpar */
input[type=submit],
input[type=reset]{
    display:inline;
    background-color: var(--cor-rosa-escuro);
    color: var(--cor-branco);
    border-radius:15px;
    border: 1px solid var(--cor-rosa-escuro);
    height: 35px;
    width: 100px;
    text-align: center;
    cursor: pointer;
}

input[type=reset]{
    background-color: var(--cor-branco);
    border-color: var(--cor-rosa-escuro);
    color: var(--cor-rosa-escuro);
}

input[type=radio]{
    accent-color: var(--cor-rosa-escuro);                /* Modifica a cor de dentro do radio e do checkbox */
    cursor: pointer;
}

.instagram-button-section{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 5px;
    background-color: var(--cor-rosa-medio);
    /*border: 2px solid blue;*/
}

/* RODAPÉ */
footer{
    background-color: var(--cor-rosa-escuro);
    color: var(--cor-branco);
    padding: 10px; 
    text-align: center;
}

/* Adiciona o layout responsivo */
@media (max-width: 600px) {
    nav, article {width: 100%; height: auto;}
}