@font-face{font-family:'Archivo Black';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/ArchivoBlack-Regular.woff2') format('woff2')}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url('../fonts/JetBrainsMono-Variable.woff2') format('woff2')}.pf{--paper:#EFEEEA;--paper-2:#E4E2DC;--rule:#E9E8E3;--rule-major:#E2E0DA;--ink:#0D0D0D;--fg:#0D0D0D;--fg-invert:#F4F3EF;--fg-mute:#6E6A62;--card-face:#FAF9F6;--line:rgba(13, 13, 13, .17);--line-strong:rgba(13, 13, 13, .29);--accent:#C8293E;--card-lift:2px 2px 8px rgba(13, 13, 13, .02);--card-lift-hover:4px 6px 28px rgba(13, 13, 13, .024);--r-card:6px;--f-display:'Archivo Black','Helvetica Neue',Impact,sans-serif;--f-micro:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;--f-text:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--t-xl:clamp(2.4rem, 6vw, 5rem);--tr-xl:-.035em;--lh-disp:.86;--t-micro:.6875rem;--tr-micro:.16em;--t-body:clamp(1rem, 1.05vw, 1.0625rem);--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s6:48px;--s8:64px;--s12:96px;--page-max:1440px;--gutter:clamp(20px, 5vw, 72px);--cell:24px;--cell-major:120px;--ease-out:cubic-bezier(.16, 1, .3, 1);--d-fast:180ms;--d-base:320ms;--d-slow:620ms;position:relative;background-color:var(--paper);background-image:linear-gradient(var(--rule) 1px,transparent 1px),linear-gradient(90deg,var(--rule) 1px,transparent 1px),linear-gradient(var(--rule-major) 1px,transparent 1px),linear-gradient(90deg,var(--rule-major) 1px,transparent 1px);background-size:var(--cell) var(--cell),var(--cell) var(--cell),var(--cell-major) var(--cell-major),var(--cell-major) var(--cell-major);color:var(--fg);font-family:var(--f-text);font-size:var(--t-body);line-height:1.55;padding:calc(var(--nav-h,68px) + var(--s8)) 0 var(--s12)}.pf::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.035;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}.pf-wrap{position:relative;z-index:1;width:100%;max-width:var(--page-max);margin-inline:auto;padding-inline:var(--gutter)}.pf-display{font-family:var(--f-display);font-weight:400;font-size:var(--t-xl);text-transform:uppercase;letter-spacing:var(--tr-xl);line-height:var(--lh-disp);text-wrap:balance;margin-top:var(--nav-h)}.pf-display .pf-accent{color:var(--accent)}.pf-micro{font-family:var(--f-micro);font-size:var(--t-micro);font-weight:400;text-transform:uppercase;letter-spacing:var(--tr-micro);color:var(--fg-mute);line-height:1.4;margin:0}.pf-sechead{display:flex;flex-direction:column;gap:var(--s2);min-width:0}.pf-meta{display:flex;align-items:center;gap:var(--s2)}.pf-meta::after{content:'';flex:1;height:1px;background:var(--line);min-width:48px}.pf-lead{max-width:56ch;color:var(--fg-mute);margin:0;margin-top:var(--s6)}.pf-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s8)}.pf-filters{display:flex;flex-wrap:wrap;gap:var(--s1);max-width:100%}.pf-chip{display:inline-block;padding:6px 12px;border:1px solid var(--line-strong);border-radius:calc(var(--r-card) * .66);background:0 0;color:var(--fg-mute);font-family:var(--f-micro);font-size:var(--t-micro);font-weight:500;text-transform:uppercase;letter-spacing:var(--tr-micro);line-height:1.4;cursor:pointer;white-space:nowrap;transition:background var(--d-fast) var(--ease-out),color var(--d-fast) var(--ease-out),border-color var(--d-fast) var(--ease-out)}.pf-chip:hover{border-color:var(--accent);color:var(--accent)}.pf-chip.is-active,.pf-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--paper)}.pf-chip:focus-visible{outline:2px solid currentColor;outline-offset:3px}.pf-btn{display:inline-flex;align-items:center;gap:var(--s1);padding:18px 34px;border:1px solid transparent;border-radius:var(--r-card);background:var(--ink);color:var(--fg-invert);font-family:var(--f-micro);font-size:var(--t-micro);font-weight:500;text-transform:uppercase;letter-spacing:var(--tr-micro);text-decoration:none;cursor:pointer;transition:background var(--d-base) var(--ease-out),color var(--d-base) var(--ease-out),border-color var(--d-base) var(--ease-out),transform var(--d-base) var(--ease-out)}.pf-btn:hover{background:var(--accent);color:var(--fg-invert);transform:translateY(-4px)}.pf-btn--ghost{background:0 0;border-color:currentColor;color:inherit}.pf-btn--ghost:hover{background:0 0;border-color:var(--accent);color:var(--accent)}.pf-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.pf-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--s3);margin-top:var(--s12)}.pf-wrap{container-type:inline-size}.pf-grid{--pf-cols:10;--pf-gap:16px;--pf-col:calc((100cqw - (var(--pf-cols) - 1) * var(--pf-gap)) / var(--pf-cols));display:grid;grid-template-columns:repeat(var(--pf-cols),minmax(0,1fr));grid-auto-rows:var(--pf-col);grid-auto-flow:dense;gap:var(--pf-gap)}.pf-tile--d{grid-column:span 4;grid-row:span 3}.pf-tile--p{grid-column:span 2;grid-row:span 4}.pf-tile--q{grid-column:span 2;grid-row:span 2}.pf-tile--l{grid-column:span 2;grid-row:span 1}.pf-tile--c{grid-column:span 2;grid-row:span 2}.pf-empty{text-align:center;padding:var(--s8) 0}.pf-empty[hidden]{display:none}.pf-tile{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;container-type:size;border:1px solid var(--line-strong);border-radius:var(--r-card);background:var(--card-face);box-shadow:var(--card-lift);overflow:hidden;transition:box-shadow var(--d-base) var(--ease-out),border-color var(--d-base) var(--ease-out),transform var(--d-base) var(--ease-out)}.pf-tile[hidden]{display:none}.pf-tile:hover{border-color:var(--accent);box-shadow:var(--card-lift-hover);transform:translateY(-3px)}.pf-tile::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform var(--d-base) var(--ease-out);z-index:3;pointer-events:none}.pf-tile:hover::after{transform:scaleX(1)}.pf-tile__link{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;color:inherit;text-decoration:none}.pf-tile__link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pf-tile__frame{position:relative;flex:0 0 auto;overflow:hidden;background:var(--paper-2)}.pf-tile--d .pf-tile__frame{aspect-ratio:16/9;border-bottom:1px solid var(--line)}.pf-tile--p .pf-tile__frame{aspect-ratio:9/16;border-bottom:1px solid var(--line)}.pf-tile--l .pf-tile__frame,.pf-tile--q .pf-tile__frame{flex:1 1 auto;min-height:0}.pf-tile__frame picture{display:block;width:100%;height:100%}.pf-media{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform var(--d-slow) var(--ease-out)}.pf-tile:hover .pf-media{transform:scale(1.03)}.pf-tile--l .pf-tile__frame,.pf-tile--p .pf-tile__frame{background:color-mix(in srgb,var(--c,var(--accent)) 10%,var(--card-face))}.pf-tile--l .pf-media,.pf-tile--p .pf-media{object-fit:contain;object-position:center}.pf-tile--p .pf-media{padding:10px 10px 0;box-sizing:border-box;object-position:center bottom}.pf-tile--q .pf-media{object-position:center}.pf-initials{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:8px;text-align:center;background:linear-gradient(var(--rule) 1px,transparent 1px),linear-gradient(90deg,var(--rule) 1px,transparent 1px),linear-gradient(135deg,color-mix(in srgb,var(--c,var(--accent)) 14%,var(--card-face)) 0,var(--card-face) 100%);background-size:var(--cell) var(--cell),var(--cell) var(--cell),100% 100%;transition:transform var(--d-slow) var(--ease-out)}.pf-tile:hover .pf-initials{transform:scale(1.03)}.pf-initials span{display:inline-flex;align-items:center;justify-content:center;width:clamp(44px,24cqw,96px);height:clamp(44px,24cqw,96px);background:var(--c,var(--accent));color:var(--fg-invert);font-family:var(--f-display);font-size:clamp(1.1rem, 9cqw, 2.25rem);letter-spacing:-.03em;line-height:1;text-transform:uppercase;box-shadow:4px 4px 0 rgba(13,13,13,.12);border-radius:calc(var(--r-card) * .5)}.pf-initials em{font-style:normal;font-family:var(--f-micro);font-size:clamp(.5rem, 3.6cqw, var(--t-micro));font-weight:500;text-transform:uppercase;letter-spacing:var(--tr-micro);color:var(--fg-mute);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-tile__tl,.pf-tile__tr{position:absolute;top:8px;z-index:2;padding:3px 7px;background:var(--ink);color:var(--fg-invert);font-family:var(--f-micro);font-size:clamp(.5rem, 3.2cqw, var(--t-micro));font-weight:500;text-transform:uppercase;letter-spacing:var(--tr-micro);line-height:1.3;border-radius:calc(var(--r-card) * .5);pointer-events:none;white-space:nowrap;max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis}.pf-tile__tl{left:8px}.pf-tile__tr{right:8px;background:var(--card-face);color:var(--fg-mute);border:1px solid var(--line)}.pf-tile--l .pf-tile__tl,.pf-tile--l .pf-tile__tr,.pf-tile--q .pf-tile__tr{display:none}.pf-tile__cap{display:flex;flex:1 1 auto;min-height:0;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px}.pf-tile__cap>div{min-width:0;flex:1 1 auto}.pf-tile__title{font-family:var(--f-text);font-size:clamp(.8125rem, 3.2cqw, .9375rem);font-weight:700;line-height:1.25;letter-spacing:-.01em;margin:0 0 2px;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pf-tile__cap .pf-micro{font-size:clamp(.5rem, 2.4cqw, var(--t-micro));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pf-tile__cap .pf-link{flex:0 0 auto;color:var(--accent);font-size:.75rem;font-weight:600;white-space:nowrap;transition:transform var(--d-fast) var(--ease-out)}.pf-tile:hover .pf-link{transform:translateX(3px)}.pf-tile--p .pf-tile__cap{flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:6px 10px}.pf-tile--p .pf-tile__title{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(.75rem, 5cqw, .875rem)}.pf-tile--p .pf-tile__cap .pf-link{font-size:.6875rem}.pf-tile--c{background:var(--ink);border-color:var(--ink);color:var(--fg-invert);box-shadow:none}.pf-tile--c .pf-cta{display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:clamp(10px,7cqw,18px);gap:10px}.pf-tile--c .pf-cta h2{font-family:var(--f-display);font-size:clamp(.9rem, 9cqw, 1.5rem);text-transform:uppercase;letter-spacing:-.02em;line-height:.92;margin:0}.pf-tile--c .pf-cta h2 span{color:var(--accent)}.pf-tile--c .pf-cta a{display:block;padding:8px 10px;border:1px solid rgba(244,243,239,.3);border-radius:calc(var(--r-card) * .66);color:var(--fg-invert);font-family:var(--f-micro);font-size:clamp(.5rem, 3.8cqw, var(--t-micro));text-transform:uppercase;letter-spacing:var(--tr-micro);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background var(--d-fast) var(--ease-out),border-color var(--d-fast) var(--ease-out)}.pf-tile--c .pf-cta a+a{margin-top:6px}.pf-tile--c .pf-cta a:first-of-type,.pf-tile--c .pf-cta a:hover{background:var(--accent);border-color:var(--accent)}.pf-tile--c:hover{transform:none;border-color:var(--accent)}.pf-tile--c::after{display:none}.pf .reveal{transition-delay:var(--reveal-delay, 0ms)}@media (max-width:1024px){.pf-grid{--pf-cols:8}}@media (max-width:768px){.pf{--cell:16px;--cell-major:80px;padding-top:calc(var(--nav-h,60px) + var(--s6));padding-bottom:var(--s8)}.pf-head{margin-bottom:var(--s6)}.pf-filters{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);padding-bottom:4px;width:calc(100% + 2 * var(--gutter));max-width:none}.pf-filters::-webkit-scrollbar{display:none}.pf-chip{flex:0 0 auto}}@media (max-width:700px){.pf-grid{--pf-cols:4;--pf-gap:12px}}@media (prefers-reduced-motion:reduce){.pf-btn,.pf-chip,.pf-initials,.pf-media,.pf-tile,.pf-tile::after{transition:none}.pf-btn:hover,.pf-tile:hover,.pf-tile:hover .pf-initials,.pf-tile:hover .pf-media{transform:none}}