@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(manrope-400.woff2) format('woff2')}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(manrope-500.woff2) format('woff2')}
[hidden]{display:none!important}.icon{display:inline-block;flex-shrink:0;vertical-align:middle;max-width:none;object-fit:contain}.news-image>.icon{position:absolute;right:20px;bottom:20px;width:32px;height:32px;background:#fff;border-radius:50%;padding:4px}.news-years a{padding-bottom:5px;border-bottom:1px solid transparent}.news-years a[aria-current=page]{border-color:#141414}.email-link>.icon{width:1em;height:1em}.menu-overlay .icon{filter:brightness(0)}.content-body>p{white-space:pre-line}.search-results>a{display:flex;align-items:center;gap:25px;border-top:1px solid #ccc;padding:22px 0;font-size:22px}.search-results>a>img:not(.icon){width:110px;height:80px;object-fit:cover}.search-results>a>.bilingual{flex:1}.search-results>a .bilingual>[lang=en]{font-size:.7em}.no-js .reveal{opacity:1;transform:none}@media(max-width:650px){.search-results>a{font-size:16px;gap:14px}.search-results>a>img:not(.icon){width:75px;height:60px}}

.company-feature{display:block;margin:0 0 7vw}.company-feature .about-feature-image{aspect-ratio:auto;display:flex;justify-content:center;background:#f6f6f4}.company-feature .about-feature-image img{width:100%;height:auto;max-height:850px;object-fit:contain;transform:none}.company-feature:hover .about-feature-image img{transform:none}.company-feature .about-feature-caption{cursor:default}@media(max-width:650px){.company-feature .about-feature-image img{max-height:none}}
.news-image>.icon{opacity:0;transition:opacity .25s}.news-image:hover>.icon,.news-image:focus-visible>.icon{opacity:1}

.menu-links a:nth-child(5){animation-delay:240ms}

/* Never animate an empty alternate image over the primary artwork. */
.alternate-cover:not(.alternate-ready){visibility:hidden;animation:none!important}

/* Keep normal page scrolling, links and text selection; protect only media. */
.protected-image{display:block}
.project-media,.news-image,.protected-image,.search-results img:not(.icon){-webkit-touch-callout:none}
.project-card img:not(.icon),.news-card img:not(.icon),.content-body img,.search-results img:not(.icon){-webkit-user-drag:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}

button.protected-image{width:100%;padding:0;border:0;border-radius:0;background:transparent;text-align:inherit;cursor:zoom-in}
.protected-image:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.image-viewer{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#fff;color:#111;overflow:hidden}
.image-viewer::backdrop{background:rgba(0,0,0,.7)}
.image-viewer-stage{position:absolute;inset:0;overflow:hidden;touch-action:none;user-select:none}
.image-viewer-stage img{position:absolute;left:50%;top:50%;display:block;margin:0;max-width:none;max-height:none;object-fit:contain;transform-origin:center;-webkit-user-drag:none;-webkit-touch-callout:none;user-select:none}
.image-viewer-stage.can-pan{cursor:grab}.image-viewer-stage.is-dragging{cursor:grabbing}
.image-viewer-status{position:absolute;inset:45% 16px auto;text-align:center;color:#777;font-size:15px}
.image-viewer-toolbar{position:absolute;z-index:2;left:50%;bottom:max(20px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:8px 12px;background:rgba(245,245,245,.78);border:1px solid rgba(0,0,0,.08);border-radius:40px;box-shadow:0 4px 24px #00000012;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.image-viewer-toolbar button{display:grid;place-items:center;width:44px;height:44px;padding:8px;border:0;border-radius:50%;background:transparent;color:#222;cursor:pointer;flex-shrink:0}
.image-viewer-toolbar button:hover{background:#0000000c}.image-viewer-toolbar button:focus-visible{outline:2px solid #222;outline-offset:1px}.image-viewer-toolbar button:disabled{opacity:.25;cursor:default}
.image-viewer-toolbar output{min-width:50px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.viewer-separator{width:1px;height:20px;margin:0 6px;background:#00000020}
@media(max-width:600px){.image-viewer-toolbar{padding:6px 8px;gap:2px;bottom:max(14px,env(safe-area-inset-bottom))}}
