@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,500;1,300&family=Jost:wght@300;400;500&display=swap');

:root{
  --oliva-1:#3E4A30; --oliva-2:#556040; --oliva-3:#7A8C62; --oliva-4:#C8D4B4;
  --grafite-1:#252520; --grafite-2:#3A3A34; --grafite-3:#5C5C54; --grafite-4:#9A9A90;
  --azul-1:#1B3A6B; --azul-2:#2A5298;
  --terra-1:#8B4535; --terra-2:#A85C44;
  --dourado-1:#A07820; --dourado-2:#C49A30; --dourado-3:#D4AA48;
  --areia-1:#C8B898; --areia-2:#DED0B8; --areia-3:#F0EAE0; --areia-4:#FAFAF6;
}
*{box-sizing:border-box;}
body{margin:0; background:var(--areia-4); color:var(--grafite-1); font-family:'Jost',sans-serif; font-weight:300; line-height:1.75; -webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:'Cormorant Garamond',serif; font-weight:300; color:var(--grafite-1); margin:0;}
a{color:inherit;}
.wrap{max-width:760px; margin:0 auto; padding:0 24px;}
.eyebrow{font-family:'Jost',sans-serif; font-weight:500; font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--terra-2); margin:0 0 10px;}

/* NAV: logo em cima, menu embaixo, tudo centralizado */
nav.topo{border-bottom:1px solid var(--areia-2); padding:26px 0 20px;}
nav.topo .wrap{max-width:1180px; display:flex; flex-direction:column; align-items:center; gap:16px;}
.logo{font-size:16px; font-weight:500; letter-spacing:0.24em; color:var(--oliva-1); text-transform:uppercase; text-decoration:none;}
.navlinks{display:flex; flex-wrap:wrap; gap:26px; align-items:center; justify-content:center;}
.navlinks a{font-size:12.5px; color:var(--grafite-3); text-decoration:none; letter-spacing:0.02em;}
.navlinks a:hover{color:var(--oliva-1);}
.navlinks .cta-nav{background:var(--oliva-1); color:var(--areia-4); padding:9px 18px; border-radius:2px; font-size:12px;}
@media (max-width:640px){
  nav.topo .wrap{gap:14px;}
  .navlinks{gap:16px;}
}

/* SECTIONS */
section{padding:64px 0;}
section.tight{padding:44px 0;}
section.escura{background:var(--oliva-1); color:var(--areia-4);}
section.clara-alt{background:var(--areia-3);}
.rule{width:52px; height:1px; background:var(--dourado-2); margin:28px auto;}

/* HERO */
.hero{text-align:center;}
.hero h1{font-size:42px; font-style:italic; max-width:560px; margin:16px auto 0;}
.hero p.sub{font-size:16px; color:var(--grafite-3); max-width:440px; margin:18px auto 0;}
.hero-actions{margin-top:30px; display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}

/* BUTTONS */
a.btn-primary, button.btn-primary{background:var(--oliva-1); color:var(--areia-4); text-decoration:none; padding:14px 28px; border-radius:2px; font-size:14px; border:none; cursor:pointer; display:inline-block;}
a.btn-primary:hover, button.btn-primary:hover{background:var(--oliva-2);}
a.btn-outline, button.btn-outline{border:1px solid var(--oliva-1); color:var(--oliva-1); text-decoration:none; padding:13px 27px; border-radius:2px; font-size:14px; background:transparent; cursor:pointer; display:inline-block;}
a.btn-outline:hover, button.btn-outline:hover{background:var(--oliva-1); color:var(--areia-4);}
a.btn-outline-dark, button.btn-outline-dark{background:transparent; border:1px solid var(--dourado-3); color:var(--dourado-3); text-decoration:none; padding:14px 28px; border-radius:2px; font-size:14px; cursor:pointer; display:inline-block;}
a.btn-outline-dark:hover, button.btn-outline-dark:hover{background:var(--dourado-3); color:var(--oliva-1);}
a.btn-text{color:var(--oliva-1); text-decoration:none; font-size:13.5px; border-bottom:1px solid var(--oliva-3);}

/* MANIFESTO / QUOTE BLOCKS */
.manifesto{background:var(--oliva-1); color:var(--areia-4); text-align:center; border-radius:2px; padding:36px 28px;}
.manifesto p{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:20px; color:var(--areia-3); max-width:560px; margin:0 auto;}

/* GENERIC TEXT BLOCKS */
.centro{text-align:center;}
h2.titulo-secao{font-size:30px; font-style:italic; margin-bottom:14px;}
p.lead{font-size:15px; color:var(--grafite-3); max-width:520px; margin:0 auto 8px;}

/* CARDS */
.cards{display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:28px;}
.cards.tres{grid-template-columns:1fr 1fr 1fr;}
@media (max-width:640px){ .cards, .cards.tres{grid-template-columns:1fr;} }
.card{background:var(--areia-4); border:1px solid var(--areia-2); border-radius:2px; padding:26px 24px;}
.card h3{font-size:19px; font-style:italic; margin-bottom:8px;}
.card p{font-size:13.5px; color:var(--grafite-3); margin:0 0 14px;}

/* LISTS */
ul.lista-simples{list-style:none; margin:0; padding:0;}
ul.lista-simples li{font-size:14.5px; color:var(--grafite-3); padding:10px 0 10px 20px; position:relative; border-bottom:1px solid var(--areia-2);}
ul.lista-simples li:last-child{border-bottom:none;}
ul.lista-simples li::before{content:"·"; position:absolute; left:6px; color:var(--dourado-1);}

/* QUADROS */
.quadros{display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:24px;}
.quadro{padding:30px; border-radius:2px; background:var(--areia-3);}
.quadro.sim{border-left:3px solid var(--oliva-3);}
.quadro.nao{border-left:3px solid var(--terra-2);}
.quadro h3{font-size:19px; font-style:italic; margin-bottom:14px;}
@media (max-width:640px){ .quadros{grid-template-columns:1fr;} }

/* EMPTY STATE */
.empty-state{text-align:center; padding:40px 24px; border:1px dashed var(--areia-1); border-radius:2px; color:var(--grafite-4); font-size:13.5px; font-style:italic;}

/* ROTA DAS SEIS ETAPAS */
.rota{display:flex; gap:8px; flex-wrap:wrap; justify-content:center; margin:32px auto; max-width:530px;}
.rota .passo{background:var(--areia-3); border:1px solid var(--areia-2); border-radius:2px; padding:16px 20px; min-width:130px; text-align:center;}
.rota .passo .num{font-family:'Cormorant Garamond',serif; font-size:22px; color:var(--dourado-1);}
.rota .passo .nome{font-size:13px; margin-top:4px;}
.rota .seta{align-self:center; color:var(--grafite-4); font-size:18px;}
@media (min-width:641px){ .rota .seta:nth-of-type(3){visibility:hidden;} }
@media (max-width:640px){ .rota{flex-direction:column; align-items:center;} .rota .seta{transform:rotate(90deg);} }

/* SOBRE / FOTO */
.sobre-flex{display:flex; gap:36px; align-items:flex-start;}
.retrato{flex-shrink:0; width:260px; border-radius:2px; overflow:hidden; background:var(--areia-3);}
.retrato img{display:block; width:100%; height:auto;}
.foto-elisandra{flex-shrink:0; width:260px; height:325px; background-size:cover; background-position:center top; border-radius:2px; background-color:var(--areia-3);}
@media (max-width:640px){
  .sobre-flex{flex-direction:column;}
  .retrato, .foto-elisandra{width:100%; max-width:300px; margin:0 auto;}
  .foto-elisandra{height:340px;}
}

/* FOOTER */
footer.rodape{text-align:center; padding:44px 0; font-size:11px; color:var(--grafite-4); letter-spacing:0.04em; border-top:1px solid var(--areia-2); margin-top:40px;}

/* FORMS */
input, textarea, select{font-family:'Jost',sans-serif; font-size:15px; width:100%; padding:12px 14px; border:1px solid var(--areia-2); border-radius:2px; background:var(--areia-4); color:var(--grafite-1);}
label{font-size:12px; letter-spacing:0.04em; color:var(--grafite-3); text-transform:uppercase; display:block; margin-bottom:6px;}
.field{margin-bottom:16px;}
.erro{display:none; color:var(--terra-1); font-size:13px; margin:0 0 12px;}

/* ARTIGOS (Conteúdos) */
.artigo-hero{padding:56px 0 8px; text-align:center;}
.artigo-hero h1{font-size:38px; font-style:italic; max-width:600px; margin:14px auto 0; line-height:1.2;}
.artigo-meta{font-size:11px; letter-spacing:0.12em; text-transform:uppercase; color:var(--grafite-4); margin-top:18px;}
.artigo{padding:24px 0 64px;}
.artigo .wrap{max-width:640px;}
.artigo p{font-size:17px; line-height:1.85; color:var(--grafite-2); margin:0 0 14px;}
.artigo p.destaque{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:23px; line-height:1.45; color:var(--oliva-1); margin:34px 0;}
.artigo p:last-child{margin-bottom:0;}
.artigo-fim{border-top:1px solid var(--areia-2); margin-top:48px; padding-top:32px; text-align:center;}
.artigo-fim p{font-size:14.5px; color:var(--grafite-3); margin:0 0 20px;}
.voltar{display:inline-block; font-size:13px; color:var(--grafite-3); text-decoration:none; margin-bottom:8px;}
.voltar:hover{color:var(--oliva-1);}

/* LISTA DE ARTIGOS */
section.lista-secao{padding-top:8px;}
.lista-artigos{margin-top:0;}
.artigo-item{display:block; text-decoration:none; padding:28px 0; border-bottom:1px solid var(--areia-2);}
.artigo-item:first-child{border-top:1px solid var(--areia-2);}
.artigo-item h2{font-size:25px; font-style:italic; margin-bottom:8px; transition:color .2s;}
.artigo-item:hover h2{color:var(--oliva-2);}
.artigo-item p{font-size:14.5px; color:var(--grafite-3); margin:0;}

/* FORMULÁRIO EM DESTAQUE */
.destaque-form{background:var(--areia-3); border-top:1px solid var(--areia-2);}
.destaque-form .wrap{background:var(--areia-4); border:1px solid var(--areia-2); border-radius:3px; padding:36px 32px;}
.destaque-form button.btn-primary{padding:16px 34px; font-size:15px;}

@media (max-width:640px){
  .artigo-hero h1{font-size:30px;}
  .artigo p{font-size:16.5px;}
  .artigo p.destaque{font-size:20px;}
  .artigo-item h2{font-size:21px;}
}
