.site-header[data-astro-cid-fzpbxy5g]{z-index:20;backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);background:#11100eb8;position:fixed;inset:0 0 auto}.inner[data-astro-cid-fzpbxy5g]{justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 0;display:flex}.brand[data-astro-cid-fzpbxy5g]{font-family:var(--font-display);letter-spacing:.08em;align-items:baseline;gap:.35rem;text-decoration:none;display:inline-flex}.brand__mark[data-astro-cid-fzpbxy5g]{color:var(--color-paper);font-size:1.45rem;line-height:1}.brand__sub[data-astro-cid-fzpbxy5g]{color:var(--color-rust);font-size:.86rem}nav[data-astro-cid-fzpbxy5g]{text-transform:uppercase;letter-spacing:.06em;flex-wrap:wrap;gap:.9rem;font-size:.8rem;display:flex}nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]{color:#eee9dfcc;font-weight:600;text-decoration:none}nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]:hover{color:var(--color-acid)}.cms-link[data-astro-cid-fzpbxy5g]{letter-spacing:.06em;text-transform:uppercase;background:var(--color-acid);color:var(--color-ink);border:1px solid #eee9df47;padding:.5rem .7rem;font-size:.78rem;text-decoration:none}@media (width<=820px){.inner[data-astro-cid-fzpbxy5g]{flex-wrap:wrap}nav[data-astro-cid-fzpbxy5g]{order:3;justify-content:space-between;width:100%}}.site-footer[data-astro-cid-nns7i3if]{border-top:1px solid var(--color-border);background:var(--color-ink);margin-top:4rem}.site-footer[data-astro-cid-nns7i3if] .container[data-astro-cid-nns7i3if]{color:#eee9dfb8;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;padding:1.8rem 0 2.3rem;font-size:.9rem;display:grid}.site-footer__kicker[data-astro-cid-nns7i3if]{color:var(--color-acid);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.site-footer[data-astro-cid-nns7i3if] p[data-astro-cid-nns7i3if]{margin:0 0 .3rem}.site-footer[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]{color:inherit;text-decoration:none}@media (width<=720px){.site-footer[data-astro-cid-nns7i3if] .container[data-astro-cid-nns7i3if]{grid-template-columns:1fr}}:root{--color-ink:#11100e;--color-paper:#eee9df;--color-acid:#e8ff3d;--color-rust:#c65d3a;--color-wine:#5d1f27;--color-sand:#f6f0e6;--color-gray-900:#1a1916;--color-gray-700:#3d3a33;--color-gray-500:#5f5b52;--color-gray-300:#a39f96;--color-gray-100:#e8e6e0;--color-border:#11100e38;--color-border-strong:#11100e61;--container:min(1260px, 92vw);--font-display:"Bebas Neue", "Arial Narrow", sans-serif;--font-serif:"Cormorant Garamond", Georgia, serif;--font-body:"IBM Plex Sans", "Avenir Next", "Segoe UI", sans-serif;--shadow-soft:0 20px 50px #11100e14;--shadow-lift:0 28px 80px #11100e24}*{box-sizing:border-box}html,body{min-height:100%;color:var(--color-ink);background:radial-gradient(1200px 700px at -10% -20%, #f7f2e6 0%, transparent 60%), radial-gradient(900px 540px at 110% 0%, #c65d3a33 0%, transparent 50%), linear-gradient(180deg, #ffffff29, transparent 22%), linear-gradient(90deg, #11100e08 1px, transparent 1px), var(--color-paper);font-family:var(--font-body);background-size:auto,auto,auto,28px 28px,auto;margin:0;line-height:1.5}body:before{content:"";pointer-events:none;background:linear-gradient(#11100e08,#0000 20% 80%,#11100e0a);position:fixed;inset:0}a{color:inherit}main{padding-top:4.9rem}.container{width:var(--container);margin:0 auto}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--color-gray-500);font-size:.75rem;display:inline-block}.h1,.h2,.h3{font-family:var(--font-display);letter-spacing:-.04em;margin:0}.h1{font-size:clamp(2.9rem,7vw,7rem);line-height:.92}.h2{font-size:clamp(2rem,4.4vw,3.4rem);line-height:.94}.h3{font-size:clamp(1.2rem,2.2vw,1.8rem);line-height:1.1}.lead{color:var(--color-gray-700);max-width:65ch;font-size:clamp(1.05rem,1.5vw,1.3rem)}.btn{border:1px solid var(--color-ink);background:var(--color-ink);color:var(--color-paper);letter-spacing:.06em;text-transform:uppercase;padding:.82rem 1.25rem;font-size:.82rem;font-weight:700;text-decoration:none;transition:transform .18s,background .18s,color .18s,box-shadow .18s;display:inline-block}.btn.alt{color:var(--color-ink);background:0 0}.btn:hover{box-shadow:var(--shadow-lift);transform:translateY(-2px)}.section{padding:4rem 0}.card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.card{border:1px solid var(--color-border);box-shadow:var(--shadow-soft);background:#ffffff9e;padding:1.2rem}.badge{background:var(--color-acid);border:1px solid var(--color-ink);padding:.15rem .5rem;font-size:.75rem;display:inline-block}.project-card{border:1px solid var(--color-border);box-shadow:var(--shadow-soft);background:#ffffff8a;gap:0;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-lift);border-color:var(--color-border-strong);transform:translateY(-4px)}.project-card__media{aspect-ratio:16/9;background:linear-gradient(135deg, var(--color-gray-900), var(--color-wine));display:block;position:relative}.project-card__badge{text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink);background:#e8ff3deb;border:1px solid #11100ed9;padding:.2rem .55rem;font-size:.72rem;position:absolute;bottom:.9rem;left:.9rem}.project-card__media img{object-fit:cover;width:100%;height:100%;transition:transform .24s;display:block}.project-card:hover .project-card__media img{transform:scale(1.03)}.project-card__fallback{background:linear-gradient(135deg,#11100eeb,#5d1f27db);width:100%;height:100%}.project-card__body{padding:1.2rem}.project-card__kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--color-gray-500);margin:0 0 .5rem;font-size:.72rem}.project-card__headline-row{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.project-card__title{font-size:clamp(1.5rem,2vw,2rem)}.project-card__title a{text-decoration:none}.project-card__year{letter-spacing:.08em;text-transform:uppercase;color:var(--color-gray-500);font-size:.78rem}.project-card__teaser{color:var(--color-gray-700)}.project-card__meta,.project-card__actions{flex-wrap:wrap;gap:.75rem 1rem;display:flex}.project-card__meta{color:var(--color-gray-500);font-size:.85rem}.project-card__actions{margin-top:1rem}.project-card__link,.project-card__external{text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;font-weight:700;text-decoration:none}.project-card__link{color:var(--color-ink)}.project-card__external{color:var(--color-rust)}.project-card--compact .project-card__body{padding:1rem}.controls{flex-wrap:wrap;gap:.6rem;margin:1rem 0 1.4rem;display:flex}.controls button{border:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:#ffffffb8;padding:.55rem .85rem;font-size:.78rem;transition:transform .18s,background .18s,border-color .18s}.controls button:hover,.controls button.active{background:var(--color-acid);border-color:var(--color-ink);transform:translateY(-2px)}.poster-filter{gap:1rem;display:grid}.poster-filter__controls{z-index:8;backdrop-filter:blur(12px);background:linear-gradient(#eee9dff0,#eee9dfd6);border-bottom:1px solid #11100e14;margin:0;padding:.85rem 0;position:sticky;top:4.95rem}.poster-filter__list{gap:1rem;display:grid}.poster-filter__row{border:1px solid var(--color-border-strong);background:var(--color-ink);min-height:70vh;color:inherit;box-shadow:var(--shadow-lift);grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);text-decoration:none;display:grid;position:relative;overflow:hidden}.poster-filter__row:hover{transform:translateY(-4px)}.poster-row__media{background:linear-gradient(135deg, var(--color-gray-900), var(--color-wine));min-height:100%;position:relative}.poster-row__media video,.poster-row__media img,.poster-row__media .project-card__fallback{object-fit:cover;filter:saturate(.86)contrast(1.08)brightness(.9);width:100%;height:100%;transition:transform .5s,filter .5s;display:block}.poster-filter__row:hover .poster-row__media video,.poster-filter__row:hover .poster-row__media img,.poster-filter__row:hover .poster-row__media .project-card__fallback{filter:saturate()contrast(1.12)brightness(.98);transform:scale(1.03)}.poster-row__body{background:radial-gradient(circle at 0 0,#e8ff3d1a,#0000 30%),linear-gradient(#11100e1a,#11100ee0);align-content:end;gap:1rem;padding:clamp(1.25rem,3vw,2.4rem);display:grid;position:relative}.poster-row__index{font-family:var(--font-display);color:#eee9df94;letter-spacing:.08em;font-size:.9rem;position:absolute;top:1.25rem;right:1.25rem}.poster-row__text{gap:.45rem;max-width:28rem;display:grid}.poster-row__title{font-family:var(--font-display);letter-spacing:-.04em;color:var(--color-paper);margin:0;font-size:clamp(2.4rem,5vw,5.4rem);line-height:.88}.poster-row__teaser{color:#eee9dfd1;max-width:32ch;margin:0;font-size:1rem}.poster-row__meta{text-transform:uppercase;letter-spacing:.08em;color:#eee9dfb3;flex-wrap:wrap;gap:.5rem 1rem;margin-top:.5rem;font-size:.8rem;display:flex}.poster-row__meta span:not(:last-child):after{content:"•";color:var(--color-acid);margin-left:1rem}.poster-row .project-card__badge{bottom:1rem;left:auto;right:1rem}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem;display:grid}.tile-card{border:1px solid var(--color-border);box-shadow:var(--shadow-soft);background:#ffffffbd;transition:transform .18s,box-shadow .18s,border-color .18s;overflow:hidden}.tile-card:hover{box-shadow:var(--shadow-lift);border-color:var(--color-border-strong);transform:translateY(-5px)}.tile-card__media{background:linear-gradient(135deg, var(--color-gray-900), var(--color-wine));aspect-ratio:16/9;display:block;position:relative}.tile-card__media video,.tile-card__media img{object-fit:cover;width:100%;height:100%;display:block}.tile-card__body{padding:1.15rem 1.15rem 1.2rem}.tile-card .project-card__title{font-size:clamp(1.8rem,3vw,2.55rem)}.tile-card .project-card__teaser{margin-bottom:.8rem}@media (width<=720px){main{padding-top:6.8rem}.section{padding:3rem 0}.filter-grid,.tile-grid,.motion-grid{grid-template-columns:1fr}.poster-filter__controls{top:6.2rem}.poster-filter__row{grid-template-columns:1fr;min-height:62vh}}@media (width>=1120px){.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
