*{box-sizing:border-box}body{margin:0;background:#fff;color:#111;font-family:Helvetica,Arial,sans-serif;letter-spacing:-.035em}a{color:inherit;text-decoration:none} .site-name{position:fixed;top:9px;left:50%;transform:translateX(-50%);font-size:20px;font-weight:500;z-index:100}main{padding:158px 24px 100px;max-width:1800px;margin:auto}h1{font-size:24px;font-weight:500;text-align:center;margin:0 0 52px}h2{font-size:22px;font-weight:500;margin:18px 0 6px}p{font-size:17px;line-height:1.4;margin:0}.project-grid,.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 24px}.project-card{min-width:0}.project-card figure,.project-gallery figure{position:relative;margin:0;width:100%;aspect-ratio:4/5;overflow:hidden;border-radius:5% / 4%}.project-card img,.project-gallery img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;background:white}.project-meta{display:flex;align-items:start;justify-content:space-between;gap:16px}.project-type{color:#777}.project-open{display:inline-block;margin-top:14px;border-radius:30px;background:#f3f3f3;padding:10px 16px;font-size:14px}.project-open:hover{background:#dedede}.project-description{max-width:720px;margin:0 auto 54px;text-align:center;font-size:22px;line-height:1.4}.back{display:inline-block;margin-bottom:32px;font-size:15px;color:#777}footer{padding:48px 24px;border-top:1px solid #eee;display:flex;justify-content:space-between;gap:24px;font-size:14px}footer .social{display:flex;gap:24px}.confidential{margin:24px 0 70px;text-align:center;color:#777}@media(max-width:900px){.project-grid,.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 16px}}@media(max-width:550px){main{padding:145px 16px 70px}.project-grid,.project-gallery{grid-template-columns:1fr}footer{flex-wrap:wrap}.project-description{font-size:20px}h1{margin-bottom:32px}}

.project-placeholder-label{position:absolute;inset:0;display:grid;place-items:center;color:#999;font-size:15px;pointer-events:none}figure:has(img[src*="/assets/uploads/"]) .project-placeholder-label,figure:has(video) .project-placeholder-label{display:none}.project-on-request{background:none;padding-left:0;color:#777}

.project-card-link{display:block}.project-card-link:hover .project-open{background:#dedede}.project-pagination{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:15px;margin-bottom:32px}.project-pagination a{background:#f4f4f4;color:#777;border-radius:10px;padding:10px 14px}.project-pagination a:hover{background:#e9e9e9;color:#111}.project-pagination.Bottom{justify-content:center;margin:60px 0 90px}.project-details{display:grid;grid-template-columns:2fr 1fr .5fr;gap:40px;margin-bottom:60px}.project-details h2{font-size:16px;margin:0 0 20px}.project-details p{font-size:16px;color:#888;line-height:1.5}@media(max-width:650px){.project-details{grid-template-columns:1fr;gap:28px}.project-pagination.Bottom{margin-bottom:55px}}

.project-pdf-slides{display:grid;grid-template-columns:1fr;gap:48px;margin-bottom:48px}.project-pdf-slide{position:relative;margin:0;overflow:hidden;width:100%;border-radius:0}.project-pdf-slide img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain}@media(max-width:900px){.project-pdf-slides{gap:32px;margin-bottom:32px}}

.project-pagination.Top{position:sticky;top:65px;z-index:90;height:40px;flex-wrap:nowrap;width:max-content;max-width:100%}.project-current-name{display:block;padding:10px 14px;border-radius:10px;background:#f4f4f4;color:#777;white-space:nowrap}.project-pagination.Top.project-scrolled>a{display:none}.project-pagination.Top.project-scrolled .project-current-name{background:rgba(255,255,255,.94);box-shadow:0 2px 12px #0000000d;backdrop-filter:blur(8px)}@media(max-width:850px){.project-pagination.Top{top:120px}}@media(prefers-reduced-motion:no-preference){.project-current-name{transition:background .2s,box-shadow .2s}}

/* Keep the project identifier visible while its neighbours smoothly collapse. */
.project-prefix{color:#111;font-weight:500;white-space:nowrap;margin-right:6px}.project-pagination.Top{gap:0}.project-pagination.Top>a{display:block!important;max-width:190px;opacity:1;overflow:hidden;white-space:nowrap;margin-left:10px;padding:10px 14px;transition:max-width .55s cubic-bezier(.22,1,.36,1),padding .55s cubic-bezier(.22,1,.36,1),margin .55s cubic-bezier(.22,1,.36,1),opacity .3s ease}.project-current-name{margin-left:10px;transition:margin .55s cubic-bezier(.22,1,.36,1),background .55s ease,box-shadow .55s ease}.project-pagination.Top.project-scrolled>a{max-width:0;opacity:0;padding-left:0;padding-right:0;margin-left:0;pointer-events:none}.project-pagination.Top.project-scrolled .project-current-name{margin-left:0}
/* Same circular corner radius as the homepage: five percent of frame width. */
.project-pdf-slide{border-radius:5% / 7.071%!important;overflow:hidden!important}.project-pdf-slide img,.project-pdf-slide video{border-radius:inherit!important}.project-card figure,.project-gallery figure{border-radius:5% / 4%!important;overflow:hidden!important}.project-card img,.project-gallery img,.project-card video,.project-gallery video{border-radius:inherit!important}@media(prefers-reduced-motion:reduce){.project-pagination.Top>a,.project-current-name{transition:none!important}}

.work-selected-note{margin-top:90px;max-width:850px}.work-selected-note h2{font-size:16px;font-weight:500;margin:0 0 20px}.work-selected-note p{font-size:16px;line-height:1.5;color:#888}@media(max-width:550px){.work-selected-note{margin-top:60px}}

/* Give linked and non-linked cards identical text rhythm. */
.project-card h2{margin-top:18px;margin-bottom:6px;line-height:1.2}.project-card .project-type{line-height:1.4;min-height:24px}.project-card .project-open{margin-top:14px;padding:10px 16px;line-height:20px}.project-card .project-on-request,.project-card .project-on-request:hover{background:transparent!important;box-shadow:none!important;border:0;color:#777;cursor:default;padding-left:0;padding-right:0}
