/* Portfólio público — Portal Geo */

.pgeo-pf { --pf-linha:#e3e5e8; --pf-acento:#0f766e; --pf-mudo:#6b7280;
	max-width:1180px; margin:0 auto; font-size:16px; line-height:1.6 }

.pgeo-pf-vazio { text-align:center; color:var(--pf-mudo); padding:50px 20px }

/* filtros de categoria */
.pgeo-pf-filtros { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:24px }
.pgeo-pf-filtros button { background:none; border:1px solid var(--pf-linha); border-radius:999px;
	padding:6px 16px; cursor:pointer; font-size:14px; color:var(--pf-mudo); font-family:inherit }
.pgeo-pf-filtros button:hover { border-color:var(--pf-acento); color:var(--pf-acento) }
.pgeo-pf-filtros button.on { background:var(--pf-acento); border-color:var(--pf-acento); color:#fff }

/* grade */
.pgeo-pf-grade { display:grid; gap:22px; grid-template-columns:repeat(3,1fr) }
.pgeo-pf[data-colunas="2"] .pgeo-pf-grade { grid-template-columns:repeat(2,1fr) }
.pgeo-pf[data-colunas="4"] .pgeo-pf-grade { grid-template-columns:repeat(4,1fr) }
@media (max-width:900px){ .pgeo-pf-grade,
	.pgeo-pf[data-colunas="2"] .pgeo-pf-grade,
	.pgeo-pf[data-colunas="4"] .pgeo-pf-grade { grid-template-columns:repeat(2,1fr) } }
@media (max-width:560px){ .pgeo-pf-grade,
	.pgeo-pf[data-colunas="2"] .pgeo-pf-grade,
	.pgeo-pf[data-colunas="4"] .pgeo-pf-grade { grid-template-columns:1fr } }

/* cartão */
.pgeo-pf-card { display:block; text-decoration:none; color:inherit; border:1px solid var(--pf-linha);
	border-radius:12px; overflow:hidden; background:#fff; transition:border-color .18s, transform .18s }
a.pgeo-pf-card:hover { border-color:var(--pf-acento); transform:translateY(-3px) }
.pgeo-pf-card.oculto { display:none }

.pgeo-pf-capa { position:relative; aspect-ratio:16/10; background:#eef0f2; overflow:hidden }
.pgeo-pf-capa img { width:100%; height:100%; object-fit:cover; display:block }
.pgeo-pf-card.fechado .pgeo-pf-capa img { filter:grayscale(.7) blur(2px); opacity:.65 }

.pgeo-pf-selo { position:absolute; top:10px; left:10px; font-size:11px; font-weight:600;
	letter-spacing:.06em; text-transform:uppercase; color:#fff; background:rgba(15,118,110,.92);
	padding:4px 10px; border-radius:999px }
.pgeo-pf-selo.fechado { background:rgba(18,22,28,.75) }

.pgeo-pf-txt { padding:16px 18px 20px }
.pgeo-pf-tipo { display:inline-block; font-size:11px; font-weight:600; letter-spacing:.06em;
	text-transform:uppercase; color:var(--pf-acento); margin-bottom:6px }
.pgeo-pf-txt h3 { margin:0 0 6px; font-size:1.08em; line-height:1.35 }
.pgeo-pf-txt p { margin:0 0 10px; font-size:.9em; color:var(--pf-mudo) }
.pgeo-pf-acao { font-size:.86em; font-weight:600; color:var(--pf-acento) }
.pgeo-pf-acao.fechado { color:var(--pf-mudo); font-weight:400 }

/* página de uma obra */
.pgeo-pf-volta { margin:0 0 14px }
.pgeo-pf-volta a { font-size:.9em; color:var(--pf-mudo); text-decoration:none }
.pgeo-pf-volta a:hover { color:var(--pf-acento) }
.pgeo-pf-cabeca { margin-bottom:18px }
.pgeo-pf-cabeca h2 { margin:.1em 0 .3em; font-size:1.6em; line-height:1.25 }
.pgeo-pf-cabeca p { margin:0; color:var(--pf-mudo); max-width:70ch }

@media (prefers-reduced-motion:reduce){ .pgeo-pf-card { transition:none } }

/* Ficha técnica */
.pgeo-ficha { margin-top:22px; border:1px solid var(--pf-linha,#e3e5e8); border-radius:10px; padding:18px 20px; background:#fff }
.pgeo-ficha h3 { margin:0 0 12px; font-size:.8em; text-transform:uppercase; letter-spacing:.06em; color:#6b7280 }
.pgeo-ficha dl { margin:0; display:grid; gap:0; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)) }
.pgeo-ficha dl > div { padding:9px 0; border-bottom:1px solid #f0f0f1; padding-right:20px }
.pgeo-ficha dt { font-size:.78em; text-transform:uppercase; letter-spacing:.04em; color:#6b7280; margin-bottom:2px }
.pgeo-ficha dd { margin:0; font-weight:500 }
