/* Cid Freitas • site — estilos comuns (home e /portugal). v2 (28/10): sóbrio, mais respiro, menos cartões.
   Legibilidade: corpo >= 18px; corpo #2B3A4E sobre branco/papel e #C9D2DD sobre marinho; sem animação automática. */
*{box-sizing:border-box}
body{margin:0;font-family:var(--sans);font-size:19px;line-height:1.7;color:var(--marinho);background:var(--branco);-webkit-font-smoothing:antialiased;font-weight:400}
a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}
a:focus-visible{outline:2px solid var(--cobre-escuro);outline-offset:4px}
.w{max-width:1180px;margin:0 auto;padding:0 64px}
h1,h2,h3{font-family:var(--serif);font-weight:300;letter-spacing:-.012em;margin:0;color:inherit}
h3{font-weight:400}
em{font-style:italic;color:var(--cobre-escuro)}
p{margin:0;color:var(--texto-claro)}
.escuro{background:var(--marinho);color:var(--branco)} .escuro em{color:var(--cobre)}
.escuro p,.escuro dd,.escuro li p{color:var(--nevoa)}
.rot{display:flex;align-items:center;gap:18px;font-size:14px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--grafite);margin:0 0 28px}
.escuro .rot{color:var(--nevoa)}
.rot .ponte{flex:none;--w:44px;--dot:4px;--esp:1px;--cor:var(--cobre-escuro)} .escuro .rot .ponte{--cor:var(--cobre)}
section{padding:144px 0}
.papel{background:var(--papel)}
.sec-h{max-width:780px;margin-bottom:72px}
.sec-h h2{font-size:50px;line-height:1.1}
.sec-h p{margin-top:24px}
/* faixa de teste: discreta */
.faixa{background:var(--marinho);color:var(--nevoa);font-size:13px;letter-spacing:.18em;text-transform:uppercase;text-align:center;padding:8px 16px;border-bottom:1px solid var(--marinho-2)}
/* marcações de prévia: visíveis só com ?previa */
.so-previa{display:none!important}
.pend-cid{display:none}
.previa .so-previa{display:revert!important}
.previa .pend-cid{display:inline-block;font-size:18px;font-style:italic;font-family:var(--sans);color:#9F1D22;border:1.5px dashed #9F1D22;padding:2px 8px;border-radius:3px;margin-top:10px;line-height:1.4}
.previa .escuro .pend-cid{color:#FFB4B4;border-color:#FFB4B4}
.previa .aguarda{background:#FBEFD9;box-shadow:0 0 0 4px #FBEFD9}
.previa [data-prov]{outline:2px dashed rgba(196,40,46,.75);outline-offset:6px}
.nota{font-size:16px;font-style:italic;color:#9F1D22} .escuro .nota{color:#FFB4B4}
/* cabeçalho */
header{background:#fff;border-bottom:1px solid var(--linha)}
header .w{display:flex;align-items:center;justify-content:space-between;min-height:96px;gap:24px;flex-wrap:wrap}
.marca{text-decoration:none;display:flex;flex-direction:column;line-height:1}
.marca b{font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:.01em}
.marca span{font-size:13px;letter-spacing:.26em;text-transform:uppercase;color:var(--cobre-escuro);font-weight:500;margin-top:8px}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:36px;flex-wrap:wrap}
nav a{text-decoration:none;font-size:18px;color:var(--marinho)} nav a:hover{color:var(--cobre-escuro)}
/* foto placeholder */
.foto{aspect-ratio:4/5;background:linear-gradient(160deg,#E9ECF0,#F6F7F9);display:flex;align-items:flex-end;padding:22px;font-size:16px;color:var(--grafite)}
.foto b{display:block;font-weight:500;letter-spacing:.16em;text-transform:uppercase;font-size:13px;color:var(--cobre-escuro);margin-bottom:4px}
/* abertura */
.abertura{padding:128px 0 144px;background:var(--papel)}
.abertura .w{display:grid;grid-template-columns:1.25fr .75fr;gap:96px;align-items:center}
.abertura h1{font-size:68px;line-height:1.06}
.abertura .lead{font-size:21px;max-width:560px;margin-top:36px}
.acoes{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:48px}
.botao{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 36px;background:var(--marinho);color:#fff;font-size:17px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-radius:0}
.botao:hover{background:#1A2B42}
.assin{margin-top:28px;font-family:var(--serif);font-size:22px;font-style:italic;font-weight:300;color:var(--marinho)}
/* listas com régua (substituem cartões) */
.regua{list-style:none;margin:0;padding:0;display:grid;gap:0 80px}
.r2{grid-template-columns:1fr 1fr} .r3{grid-template-columns:repeat(3,1fr);gap:0 56px}
.regua li{border-top:1px solid var(--linha);padding:36px 0 44px;display:flex;flex-direction:column;gap:14px}
.escuro .regua li{border-top-color:var(--marinho-2)}
.regua h3{font-size:30px;line-height:1.2}
.mais{color:var(--cobre-escuro);white-space:nowrap}
.escuro .mais{color:var(--cobre)}
/* perfis: 4 blocos de forma igual; link do 4º no pé, tamanho do corpo */
.regua.perfis{grid-auto-rows:1fr}
.regua.perfis .pe{margin-top:auto;white-space:normal}
.regua.perfis .pe .mais{white-space:normal;color:var(--nevoa);text-decoration-color:rgba(201,210,221,.4);text-underline-offset:4px}
/* definições (instrumentos / imóvel) */
.defs{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 80px}
.defs.d3{grid-template-columns:repeat(3,1fr);gap:0 56px}
.defs div{border-top:1px solid var(--linha);padding:32px 0 40px}
.papel .defs div{border-top-color:#DCE1E7}
.defs dt{font-family:var(--serif);font-size:28px;font-weight:400;margin-bottom:12px}
.defs dd{margin:0;color:var(--texto-claro)}
/* método */
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--linha);list-style:none;margin:0;padding:0}
.passos li{padding:40px 40px 0 0;margin-right:40px;border-right:1px solid var(--linha)}
.passos li:last-child{border-right:0;margin-right:0}
.passos .n{font-family:var(--serif);font-size:20px;letter-spacing:.06em;color:var(--cobre-escuro)}
.passos h3{font-size:30px;margin:18px 0 12px}
.metodo-t span:not(:last-child){white-space:nowrap}
/* sobre */
.sobre .w{display:grid;grid-template-columns:360px 1fr;gap:96px;align-items:center}
.sobre h2{font-size:46px;margin-bottom:28px}
.sobre p{max-width:620px} .sobre p+p{margin-top:16px}
/* publicações */
.pubs{list-style:none;margin:0;padding:0;border-bottom:1px solid #DCE1E7}
.pubs li{display:flex;justify-content:space-between;align-items:baseline;gap:24px;border-top:1px solid #DCE1E7;padding:26px 0;font-family:var(--serif);font-size:26px;font-weight:300}
.pubs small{font-family:var(--sans);font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:var(--grafite);white-space:nowrap}
/* contatos */
.contatos .w{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:start}
.contatos h2{font-size:50px;line-height:1.1}
.contatos .assin{color:var(--nevoa)}
dl.cont{margin:0}
.cont div{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:22px 0;border-top:1px solid var(--marinho-2);font-size:20px}
.cont div:last-child{border-bottom:1px solid var(--marinho-2)}
.cont dt{font-size:14px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--nevoa);padding-top:6px}
.cont dd{margin:0;color:#fff}
.pend{border:1.5px dashed var(--cobre);padding:0 8px;font-style:italic;color:var(--nevoa)}
.contatos .obs{margin-top:24px;font-size:18px}
/* perguntas */
.faq .w{display:grid;grid-template-columns:.8fr 1.2fr;gap:96px}
.faq h2{font-size:46px;line-height:1.1}
details{border-top:1px solid var(--linha)}
details:last-child{border-bottom:1px solid var(--linha)}
summary{cursor:pointer;list-style:none;font-family:var(--serif);font-size:22px;font-weight:400;display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:72px;padding:20px 0}
summary:hover{color:var(--cobre-escuro)}
summary:focus-visible{outline:2px solid var(--cobre-escuro);outline-offset:2px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--cobre-escuro);font-family:var(--sans);font-weight:300;font-size:26px;line-height:1}
details[open] summary::after{content:"–"}
details p{margin:0;padding:0 0 26px;max-width:660px}
.fim-pt{padding:0 0 112px}
/* rodapé */
footer{background:#0A1522;color:var(--nevoa);font-size:17px;padding:72px 0 44px}
footer .w{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}
.f-nome{font-family:var(--serif);font-size:24px;font-weight:400;color:#fff}
footer a{color:var(--nevoa);text-decoration:none} footer a:hover{color:#fff}
footer ul{list-style:none;margin:0;padding:0;line-height:2}
.legal{grid-column:1/-1;border-top:1px solid var(--marinho-2);padding-top:24px;margin-top:16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:15px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
@media (max-width:960px){
 body{font-size:18px}
 .w{padding:0 24px} section{padding:88px 0}
 header .w{padding-top:18px;padding-bottom:18px;min-height:0}
 nav ul{gap:10px 22px}
 .abertura{padding:56px 0 80px}
 .abertura .w,.sobre .w,.faq .w,.contatos .w,footer .w{grid-template-columns:1fr;gap:40px}
 .abertura h1{font-size:40px;line-height:1.1} .abertura .lead{font-size:19px;margin-top:24px}
 .abertura .foto{order:-1;width:100%;aspect-ratio:4/3;padding:14px}
 .acoes{margin-top:36px} .botao{width:100%}
 .sec-h{margin-bottom:44px} .sec-h h2,.sobre h2,.faq h2,.contatos h2{font-size:34px}
 .r2,.r3,.defs,.defs.d3{grid-template-columns:1fr}
 .regua h3{font-size:26px} .defs dt{font-size:24px}
 .passos{grid-template-columns:1fr}
 .passos li{border-right:0;margin-right:0;border-bottom:1px solid var(--linha);padding:28px 0}
 .sobre .foto{max-width:280px}
 .pubs li{flex-direction:column;gap:6px;font-size:22px}
 .cont div{grid-template-columns:1fr;gap:4px;font-size:19px}
 summary{font-size:20px;min-height:60px}
 .fim-pt{padding:0 0 72px}
}
