/* Partilha EL2 — só o que a página pública acrescenta à build de «next» (contacto sem formulário, data da
   disponibilidade, 404). Tokens e .btn vêm de Base.css. */
.disp-data{display:block;margin-top:4px;color:var(--taupe);letter-spacing:0;font-size:.8rem;font-weight:500;line-height:1.3}
.contacto-acoes{display:grid;gap:12px;align-content:start;background:var(--cal);border-top:3px solid var(--terracota-escuro);padding:clamp(20px,2.6vw,36px)}
.contacto-acoes .btn{justify-content:space-between;width:100%;min-height:56px;text-align:left}
.contacto-acoes .btn span{color:inherit;font-weight:500;overflow-wrap:anywhere}
.contacto-acoes .btn-secundario{color:var(--grafite);border-color:var(--grafite)}
.contacto-acoes .btn-secundario:hover{background:var(--grafite);color:var(--cal)}
.contacto-acoes :focus-visible{outline-color:var(--grafite)}
@media (width>=600px){.contacto-acoes .btn{font-size:1.06rem}}
/* «O projeto · imagens ilustrativas» (2/11 19:21) */
.projeto .pj-h2-sub{color:var(--taupe);font-size:.5em;font-weight:500;letter-spacing:-.01em;white-space:nowrap}
.pj-sub{font-size:var(--t-h3);letter-spacing:-.01em;margin:var(--e-6) 0 var(--e-3);padding-top:var(--e-2);border-top:2px solid var(--grafite)}
.cab-secao + .pj-sub{margin-top:0}
.pj-grelha{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:1fr}
@media (width>=600px){.pj-grelha{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (width>=1024px){.pj-grelha{gap:20px}.pj-exteriores{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (width>=600px) and (width<1024px){.pj-exteriores li:first-child{grid-column:1/-1}}
.pj-item{display:block;width:100%;padding:0;border:0;background:0 0;cursor:zoom-in;font:inherit;color:inherit}
.pj-item .fig{aspect-ratio:3/2}
.pj-interiores .pj-item .fig{aspect-ratio:3/2}
.pj-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.pj-item:hover img{transform:scale(1.03)}
.pj-item:focus-visible{outline:3px solid var(--grafite);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.pj-item img{transition:none}.pj-item:hover img{transform:none}}
.pj-video{margin:0;display:grid;gap:10px}
.pj-video video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:var(--grafite);border-radius:var(--raio)}
.pj-video figcaption{margin:0}
.pj-oculto{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.p404{display:grid;place-items:center;min-height:100svh;margin:0;background:#f4f1ea;color:#23262a;font:400 1.0625rem/1.6 system-ui,sans-serif;padding:16px}
.p404 a{color:#af5335}
