/* Portafolio / Portfolio — Impulsa Local. Usa las variables de color del sitio. */
.pf-section{padding:70px 0 20px}
.pf-head{margin-bottom:28px}
.pf-head .tag{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--mint);letter-spacing:.08em;text-transform:uppercase}
.pf-head h2{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(26px,3.4vw,36px);margin-top:10px;line-height:1.15}
.pf-head p{margin-top:12px;font-size:16px;color:rgba(250,247,242,.65);max-width:640px;line-height:1.6}
.pf-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pf-mini{display:block;text-decoration:none;color:var(--paper);background:rgba(250,247,242,.04);border:1px solid rgba(250,247,242,.1);border-radius:12px;overflow:hidden;transition:border-color .15s ease,transform .15s ease}
.pf-mini:hover{border-color:rgba(242,193,78,.55);transform:translateY(-2px)}
.pf-mini img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;background:#180F22}
.pf-mini span{display:block;padding:10px 12px 2px;font-weight:600;font-size:13px;line-height:1.3}
.pf-mini small{display:block;padding:0 12px 12px;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:rgba(250,247,242,.5)}
.pf-more{margin-top:24px}
.pf-grid{display:grid;grid-template-columns:1fr;gap:22px;padding:10px 0 40px}
.pf-card{background:rgba(250,247,242,.04);border:1px solid rgba(250,247,242,.1);border-radius:16px;padding:20px;scroll-margin-top:24px;display:grid;grid-template-columns:1.15fr 1fr;gap:26px;align-items:center}
.pf-cover{margin:0}
.pf-cover img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;border-radius:10px;border:1px solid rgba(250,247,242,.12);background:#180F22}
.pf-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.pf-card h2{font-family:'Fraunces',serif;font-weight:600;font-size:24px;line-height:1.15}
.pf-chip{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;border-radius:100px;padding:5px 11px;border:1px solid rgba(111,207,151,.5);color:var(--mint)}
.pf-chip.own{border-color:rgba(242,193,78,.5);color:var(--gold)}
.pf-kind{font-size:14px;color:rgba(250,247,242,.6);margin-bottom:16px}
.pf-shots{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pf-shots img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;border-radius:10px;border:1px solid rgba(250,247,242,.12);background:#180F22}
.pf-shots figure{margin:0}
.pf-shots figcaption{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:rgba(250,247,242,.45);margin-top:6px}
.pf-card ul{margin:4px 0 0 18px;display:grid;gap:7px;font-size:14.5px;line-height:1.55;color:rgba(250,247,242,.82)}
.pf-visit{display:inline-block;margin-top:18px;font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--paper);text-decoration:none;border-bottom:1px solid rgba(250,247,242,.35);padding-bottom:3px}
.pf-visit:hover{border-color:var(--gold);color:var(--gold)}
.pf-note{font-size:13px;color:rgba(250,247,242,.5);line-height:1.6;max-width:760px;padding:6px 0 30px}
.pf-cta{margin:20px 0 70px;padding:34px;border-radius:16px;background:rgba(242,193,78,.07);border:1px solid rgba(242,193,78,.28)}
.pf-cta h3{font-family:'Fraunces',serif;font-weight:600;font-size:24px}
.pf-cta p{margin:10px 0 18px;font-size:15px;color:rgba(250,247,242,.7);max-width:560px;line-height:1.6}
.pf-cta a{font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.03em;font-weight:600;color:var(--plum);background:var(--gold);padding:13px 22px;border-radius:8px;text-decoration:none;display:inline-block}
@media (max-width:860px){.pf-strip{grid-template-columns:repeat(2,1fr)}.pf-card{grid-template-columns:1fr;padding:16px;gap:16px}}

.pf-chip.draft{border-color:rgba(255,90,95,.55);color:var(--coral)}
.pf-draftnote{margin-top:16px;font-family:'IBM Plex Mono',monospace;font-size:12px;line-height:1.6;color:rgba(250,247,242,.5)}
