.pf-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin:1.5rem 0 0;display:grid}@media (max-width:720px){.pf-grid{grid-template-columns:1fr}}.pf-card{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:18px;flex-direction:column;text-decoration:none;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;overflow:hidden}.pf-card:hover{border-color:var(--border-hover-2);transform:translateY(-5px)}@media (prefers-reduced-motion:no-preference){.pf-card:hover{box-shadow:0 22px 50px -26px rgba(var(--accent-rgb), .5)}}.pf-thumb{aspect-ratio:16/10;background:var(--surface-2);overflow:hidden}.pf-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1);display:block}.pf-card:hover .pf-thumb img{transform:scale(1.03)}.pf-body{flex-direction:column;flex:1;padding:1.4rem 1.5rem 1.6rem;display:flex}.pf-meta{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.6rem;display:flex}.pf-cat{letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:800}.pf-year{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:.78rem}.pf-card h3{letter-spacing:-.01em;margin-bottom:.5rem;font-size:1.18rem;font-weight:800}.pf-card p{color:var(--text-mut);margin-bottom:1rem;font-size:.92rem;line-height:1.6}.pf-link{gap:.35rem;margin-top:auto;font-size:.85rem;font-weight:700;transition:gap .2s;display:inline-flex}.pf-card:hover .pf-link{gap:.6rem}.pf-tag{z-index:2;letter-spacing:.08em;text-transform:uppercase;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080a0e99;border:1px solid #fff3;border-radius:50px;padding:.25rem .6rem;font-size:.62rem;font-weight:800;position:absolute;top:.7rem;right:.7rem}.pf-thumb-wrap{position:relative}.pf-cs-hero{grid-template-columns:1fr 1fr;align-items:start;gap:2.75rem;margin:.5rem 0 2.75rem;display:grid}@media (max-width:820px){.pf-cs-hero{grid-template-columns:1fr;gap:1.75rem}}.pf-cs-cat{letter-spacing:.08em;text-transform:uppercase;margin-bottom:.85rem;font-size:.72rem;font-weight:800;display:block}.pf-cs-hero h1{letter-spacing:-.025em;margin-bottom:1rem;font-size:clamp(1.9rem,4vw,2.8rem);font-weight:900;line-height:1.1}.pf-cs-tagline{color:var(--text-mut);margin-bottom:1.75rem;font-size:1.05rem;line-height:1.7}.pf-cs-cover{border:1px solid var(--border);aspect-ratio:4/3;border-radius:18px;overflow:hidden}.pf-cs-cover img{object-fit:cover;width:100%;height:100%;display:block}.pf-cs-story{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2.75rem;display:grid}@media (max-width:820px){.pf-cs-story{grid-template-columns:1fr}}.pf-cs-story-box{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--border);border-radius:14px;padding:1.4rem 1.5rem}.pf-cs-story-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);margin-bottom:.75rem;font-size:.68rem;font-weight:800;display:block}.pf-cs-story-box p{color:var(--text-soft);margin:0;font-size:.9rem;line-height:1.7}.pf-cs-scope{background:var(--surface);border:1px solid var(--border);border-radius:16px;margin-bottom:2.75rem;padding:1.6rem 1.75rem}.pf-cs-scope-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);margin-bottom:1rem;font-size:.68rem;font-weight:800;display:block}.pf-cs-chips{flex-wrap:wrap;gap:.6rem;display:flex}.pf-chip{background:var(--surface-2);border:1px solid var(--border);color:var(--text-soft);border-radius:50px;align-items:center;gap:.45rem;padding:.4rem .85rem;font-size:.85rem;display:inline-flex}.pf-gallery-grid{grid-template-columns:repeat(4,1fr);gap:.75rem;margin:0 0 2.75rem;display:grid}@media (max-width:900px){.pf-gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:600px){.pf-gallery-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}}.pf-gallery-cell{border:1px solid var(--border);background:var(--surface-2);aspect-ratio:4/3;cursor:pointer;border-radius:12px;width:100%;padding:0;transition:transform .2s,border-color .2s;display:block;position:relative;overflow:hidden}.pf-gallery-cell:hover{border-color:var(--accent-border);transform:scale(1.02)}.pf-gallery-cell img{object-fit:cover;width:100%;height:100%;transition:opacity .2s;display:block}.pf-gallery-cell:hover img{opacity:.88}.pf-gallery-zoom{color:#fff;opacity:0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;background:#00000040;border-radius:12px;justify-content:center;align-items:center;font-size:1.6rem;transition:opacity .2s;display:flex;position:absolute;inset:0}.pf-gallery-cell:hover .pf-gallery-zoom{opacity:1}.pf-lb-backdrop{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000eb;justify-content:center;align-items:center;animation:.18s lb-in;display:flex;position:fixed;inset:0}@keyframes lb-in{0%{opacity:0}to{opacity:1}}.pf-lb-img-wrap{justify-content:center;align-items:center;max-width:min(90vw,1100px);max-height:85vh;display:flex}.pf-lb-img{object-fit:contain;border-radius:10px;max-width:100%;max-height:85vh;animation:.2s lb-img-in;box-shadow:0 32px 80px #0009}@keyframes lb-img-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.pf-lb-close{z-index:10000;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1f;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.2rem;line-height:1;transition:background .15s;display:flex;position:fixed;top:1.25rem;right:1.5rem}.pf-lb-close:hover{background:#ffffff40}.pf-lb-arrow{z-index:10000;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1f;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:2.2rem;line-height:1;transition:background .15s;display:flex;position:fixed;top:50%;transform:translateY(-50%)}.pf-lb-arrow:hover{background:#ffffff40}.pf-lb-prev{left:1rem}.pf-lb-next{right:1rem}.pf-lb-counter{color:#fffc;letter-spacing:.05em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000080;border:1px solid #ffffff26;border-radius:50px;padding:.3rem .9rem;font-size:.8rem;font-weight:600;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}
