:root{--ink: #000000;--paper: #ffffff;--accent: #253551;--zoom-ease: cubic-bezier(.22, .61, .36, 1);--fade-duration: .2s;--entrance-duration: .6s;--pulse-ms: .18s}*,*:before,*:after{box-sizing:border-box}html{scrollbar-gutter:stable;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--font-size, 16px)/1.5 "Hanken Grotesk",system-ui,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.site-header{position:relative;z-index:15;display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:minmax(var(--header-h, 150px),auto);align-items:center;padding:0 16px 0 32px;gap:12px 16px;transition:opacity var(--dim-duration, .3s)}html.is-image-zoom .site-header{opacity:0;pointer-events:none}html.is-image-zoom .site-header:focus-within{opacity:1}.header-left{grid-column:1;grid-row:1;align-self:start;padding-top:max(0px,calc((var(--header-h, 150px) - 1.5em) / 2));display:flex;flex-direction:column;align-items:flex-start;min-width:0}.site-nav{position:relative;display:flex;gap:24px}.site-logo{grid-column:2;grid-row:1}.site-nav a{font-weight:400;white-space:nowrap;display:inline-block;transform-origin:left center;transition:transform .15s}.site-nav a:hover{text-decoration:none;transform:scale(1.05)}.site-nav a.is-active{font-weight:500}.nav-bar{position:absolute;top:calc(100% + 3px);left:0;width:0;height:1px;background:currentColor;pointer-events:none;transition:left .3s var(--zoom-ease),width .3s var(--zoom-ease)}@keyframes nav-bar-pulse{50%{transform:scaleX(1.25)}}@keyframes nav-link-pulse{50%{transform:scale(1.06)}}.nav-bar.is-pulse{transform-origin:center;animation:nav-bar-pulse var(--pulse-ms, .18s) var(--zoom-ease)}.site-nav a.is-pulse{animation:nav-link-pulse var(--pulse-ms, .18s) var(--zoom-ease)}.site-filters{position:relative;max-width:100%;margin-top:12px;display:flex;flex-wrap:nowrap;align-items:center;gap:20px;padding-bottom:8px;font-size:14px;overflow-x:auto;scrollbar-width:thin;transition:transform .25s var(--zoom-ease),opacity .25s,visibility .25s}.site-filter{flex:0 0 auto;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:400;line-height:1.5;white-space:nowrap;cursor:pointer;transform-origin:left center;transition:transform .15s}.site-filter:hover{transform:scale(1.05)}.site-filter.is-active{font-weight:500}.filters-bar{position:absolute;top:calc(100% - 5px);left:0;width:0;height:1px;background:currentColor;pointer-events:none;transition:left .3s var(--zoom-ease),width .3s var(--zoom-ease)}.site-filters.is-away{transform:translate(-24px);opacity:0;visibility:hidden}.site-filters.is-entrant{transform:translate(24px);opacity:0;transition:none}.site-subfilters{max-width:100%;max-height:0;overflow:hidden;visibility:hidden;transition:max-height .25s var(--zoom-ease),transform .25s var(--zoom-ease),opacity .25s,visibility .25s}.site-subfilters.is-shown{max-height:48px;visibility:visible}.subfilters-row{position:relative;display:flex;flex-wrap:nowrap;align-items:center;gap:20px;padding:4px 0 8px;font-size:14px;overflow-x:auto;scrollbar-width:thin;transform:translate(-24px);opacity:0;transition:transform .25s var(--zoom-ease),opacity .25s}.site-subfilters.is-shown .subfilters-row{transform:none;opacity:1}.subfilters-bar{position:absolute;top:calc(100% - 5px);left:0;width:0;height:1px;background:currentColor;pointer-events:none;transition:left .3s var(--zoom-ease),width .3s var(--zoom-ease)}.site-subfilters.is-away{transform:translate(-24px);opacity:0;visibility:hidden}.site-subfilters.is-entrant{transform:translate(24px);opacity:0;transition:none}.site-logo{display:block;line-height:0;justify-self:center}.site-logo:hover{text-decoration:none}.site-header a,.site-header button,.site-logo,#logo,.site-nav a,.tile-front,.zoom-arrow,.zoom-close,.to-top{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.site-logo:active,.site-logo:focus{background:transparent}.site-logo:focus:not(:focus-visible){outline:none}#logo{width:var(--logo-size, 124px);height:var(--logo-size, 124px);display:block}.logo-fallback{display:block;width:var(--logo-size, 124px);height:var(--logo-size, 124px)}#logo[hidden],.logo-fallback[hidden]{display:none}.btn{display:inline-block;padding:14px 60px;border:1px solid var(--accent);border-radius:300px;color:var(--accent);background:transparent;font:inherit;text-align:center;cursor:pointer;transition:background-color .15s,color .15s}.btn:hover{background:var(--accent);color:var(--paper);text-decoration:none}@media(max-width:639px){.site-header{gap:0 8px;padding:0 16px 18px}.header-left,.site-nav{display:contents}.site-nav a:first-of-type{grid-column:1;grid-row:1;justify-self:start;align-self:end}.site-nav a:last-of-type{grid-column:3;grid-row:1;justify-self:end;align-self:end;transform-origin:right center}.site-filters{grid-column:1 / -1;margin-top:8px}.site-subfilters{grid-column:1 / -1}.site-nav a.is-active{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}.nav-bar{display:none}.btn{padding:12px 24px}}.to-top{position:fixed;right:16px;bottom:16px;z-index:30;display:none;width:40px;height:40px;padding:0;border:1px solid var(--accent);border-radius:50%;background:var(--paper);color:var(--accent);font:inherit;line-height:1;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}@media(max-width:639px){.to-top{display:block}}.to-top.is-visible{opacity:1;visibility:visible}.to-top[hidden]{display:none}html.zoom-lock .to-top{opacity:0;visibility:hidden}main{padding:8px 40px 60px}main.gallery{padding:0 0 60px}.grid{margin:0;padding:0;max-width:none}.grid:not(.is-masonry){display:grid;grid-template-columns:repeat(2,1fr);gap:0}@media(min-width:2160px){.grid:not(.is-masonry){grid-template-columns:repeat(3,1fr)}}@media(max-width:639px){.grid:not(.is-masonry){grid-template-columns:1fr}main{padding:8px 20px 40px}}.grid.is-masonry{display:flex;align-items:flex-start;gap:0}.col{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:0}.cell{margin:0;transition:opacity var(--dim-duration, .3s)}.cell.is-filtering-out,.cell.is-filtering-in{opacity:0}.cell.is-filtered-out{display:none}.grid.is-entering .cell{opacity:0;transform:translateY(24px);transition:opacity var(--entrance-duration) var(--zoom-ease),transform var(--entrance-duration) var(--zoom-ease)}.grid.is-entering.is-entered .cell{opacity:1;transform:none}.tile{display:block;position:relative;width:100%;color:inherit;transition:visibility var(--dim-duration, .3s)}.tile-front{position:relative;aspect-ratio:var(--ar, 4 / 3);overflow:hidden;display:block;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}@media(hover:hover)and (pointer:fine){.cell:hover .tile:not(.is-fixed) .tile-front picture,.cell:hover .tile:not(.is-fixed) .tile-front canvas,.cell:hover .tile:not(.is-fixed) .tile-front .tile-3d,.cell:hover .tile:not(.is-fixed) .tile-front video{transform:scale(var(--hover-scale, 1.015))}}.grid.is-pulse .tile-front picture,.grid.is-pulse .tile-front canvas,.grid.is-pulse .tile-front .tile-3d,.grid.is-pulse .tile-front video{transform:scale(var(--hover-scale, 1.015))}.tile.is-fixed .tile-front{backface-visibility:hidden}.tile picture,.tile img,.tile video{display:block;width:100%;height:auto}.tile-front picture{position:absolute;inset:-1px;width:auto;height:auto;transform-origin:center;transition:transform var(--hover-ms, .3s) var(--zoom-ease)}.tile-front img{width:100%;height:100%;object-fit:cover}.tile-front video{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);object-fit:cover;transform-origin:center;transition:transform var(--hover-ms, .3s) var(--zoom-ease)}.tile-front canvas{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);display:block;transform-origin:center;touch-action:pan-y;user-select:none;-webkit-user-select:none;opacity:0;transition:opacity var(--thumb-fade, .5s) ease-out,transform var(--hover-ms, .3s) var(--zoom-ease)}.tile-front canvas.is-ready{opacity:1}.tile-front .tile-3d{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);display:block;transform-origin:center;touch-action:pan-y;user-select:none;-webkit-user-select:none;opacity:0;transition:opacity var(--thumb-fade, .5s) ease-out,transform var(--hover-ms, .3s) var(--zoom-ease)}.tile-front .tile-3d.is-ready{opacity:1}.tile-front canvas.tile-pano{cursor:grab}.tile-front canvas.tile-pano.is-dragging{cursor:grabbing}.pano-badge{position:absolute;right:8px;bottom:8px;display:flex;padding:4px;border-radius:999px;background:#0006;color:var(--paper);line-height:0;opacity:.85;pointer-events:none;transition:opacity var(--dim-duration, .3s)}.pano-badge svg{display:block}.pano-badge text{font-family:Hanken Grotesk,system-ui,sans-serif;font-weight:500}.tile.is-fixed .pano-badge{opacity:0}.tile-front img,.tile-front video{opacity:0;transition:opacity var(--thumb-fade, .5s) ease-out}.tile-front img.is-loaded,.tile-front video.is-loaded{opacity:1}.tile .tile-hd{backface-visibility:hidden}.tile-front:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tile .tile-hd{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity var(--hd-fade, .15s);pointer-events:none}.tile .tile-hd.is-ready{opacity:1}.tile.is-fixed .tile-hd{object-fit:contain}.grid.is-zoomed .cell:not(.is-open){opacity:0;pointer-events:none}.grid.is-zoomed .cell:not(.is-open) .tile{visibility:hidden}.tile.is-fixed{position:fixed;z-index:20;cursor:pointer;transform-style:preserve-3d;will-change:transform;transition:transform var(--zoom-duration, .65s) var(--zoom-ease),opacity var(--dim-duration, .3s)}.tile.is-fixed .tile-front{height:100%;aspect-ratio:auto}.tile.is-fixed .tile-front picture,.tile.is-fixed .tile-front video{inset:0;transform:none}.tile.is-fixed .tile-front canvas{inset:0;transform:none;width:100%;height:100%;touch-action:none}.tile.is-fixed .tile-front .tile-3d{inset:0;transform:none;width:100%;height:100%;touch-action:none}.tile.is-fixed picture,.tile.is-fixed img,.tile.is-fixed video{width:100%;height:100%;object-fit:contain}.tile.is-fixed video{width:100%;height:100%}.tile.is-fading{opacity:0}.tile.is-fixed.is-morphing{transition:left var(--dim-duration, .3s) var(--zoom-ease),top var(--dim-duration, .3s) var(--zoom-ease),width var(--dim-duration, .3s) var(--zoom-ease),height var(--dim-duration, .3s) var(--zoom-ease),transform var(--zoom-duration, .65s) var(--zoom-ease),opacity var(--dim-duration, .3s)}.tile.is-fixed.is-morphing picture,.tile.is-fixed.is-morphing img,.tile.is-fixed.is-morphing video,.tile.is-fixed.is-morphing .tile-hd{object-fit:cover}.tile.is-fixed.is-boxing{transition:left var(--zoom-duration, .65s) var(--zoom-ease),top var(--zoom-duration, .65s) var(--zoom-ease),width var(--zoom-duration, .65s) var(--zoom-ease),height var(--zoom-duration, .65s) var(--zoom-ease),opacity var(--dim-duration, .3s)}.zoom-close{position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;padding:0;border:0;border-radius:999px;background:none;color:var(--ink);cursor:pointer;opacity:0;transition:opacity var(--meta-duration, .5s) var(--zoom-ease),transform .15s}html[data-os=mac] .zoom-close{left:12px;right:auto}.zoom-close.is-in{opacity:1}.zoom-close:before,.zoom-close:after{content:"";position:absolute;top:50%;left:50%;width:18px;height:1px;background:currentColor}.zoom-close:before{transform:translate(-50%,-50%) rotate(45deg)}.zoom-close:after{transform:translate(-50%,-50%) rotate(-45deg)}.zoom-close:hover{transform:scale(1.12)}.zoom-close--pano{background:#0006;color:var(--paper)}.tile-back .zoom-close{top:16px;right:16px}html[data-os=mac] .tile-back .zoom-close{left:16px;right:auto}.tile-back h2{padding-right:48px}html[data-os=mac] .tile-back h2{padding-right:0;padding-left:48px;text-align:right}.zoom-backdrop{position:fixed;inset:0;z-index:10;cursor:pointer;background:transparent}html.zoom-lock{overflow:hidden}.zoom-meta{position:fixed;z-index:20;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;pointer-events:none;transition:opacity var(--dim-duration, .3s)}.zoom-meta.is-out{opacity:0}.zoom-caption{margin:0;min-width:0;font-size:var(--font-size, 16px);font-weight:400;color:var(--ink);text-align:left;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.zoom-logo{justify-self:end;height:40px;width:auto;object-fit:contain}.zoom-logo[hidden]{display:none}.zoom-caption,.zoom-logo{opacity:0;transition:opacity var(--meta-duration, .5s) var(--zoom-ease),transform var(--meta-duration, .5s) var(--zoom-ease)}.zoom-caption{transform:translate(-24px)}.zoom-logo{transform:translate(24px)}.zoom-meta.is-in .zoom-caption,.zoom-meta.is-in .zoom-logo{opacity:1;transform:none}.zoom-meta.is-swap .zoom-caption,.zoom-meta.is-swap .zoom-logo{transform:none;transition:opacity var(--fade-duration)}.zoom-meta.is-in.is-stepping .zoom-caption,.zoom-meta.is-in.is-stepping .zoom-logo{opacity:0;transform:none;transition:opacity var(--fade-duration)}.zoom-arrows{display:flex;align-items:center;justify-content:center;gap:16px}.zoom-arrow{position:relative;width:36px;height:36px;padding:0;border:0;background:none;color:var(--ink);cursor:pointer;opacity:.55;pointer-events:auto;transition:opacity .15s,transform .15s}.zoom-arrow:hover{opacity:1;transform:scale(1.12)}.zoom-arrow:before{content:"";position:absolute;top:50%;left:50%;width:12px;height:12px;border-left:1px solid currentColor;border-bottom:1px solid currentColor}.zoom-arrow--prev:before{transform:translate(-40%,-50%) rotate(45deg)}.zoom-arrow--next:before{transform:translate(-60%,-50%) rotate(-135deg)}@media(prefers-reduced-motion:reduce){:root:root{--zoom-duration: 0ms;--flip-duration: 0ms;--dim-duration: 0ms;--fade-duration: 0ms;--relayout-duration: 0ms;--entrance-duration: 0ms;--hover-ms: 0ms;--hd-fade: 0ms;--thumb-fade: 0ms;--pulse-ms: 0ms}.site-nav a.is-pulse,.nav-bar.is-pulse{animation:none}.tile.is-fixed.is-flipped.is-pulsing.is-pulse{transform:perspective(1400px) rotateY(180deg)}.tile .tile-hd{transition-duration:0ms}.tile-front img,.tile-front video{transition-duration:0ms}.tile-front picture,.tile-front video{transition-duration:0ms}.tile-front canvas,.tile-front .tile-3d{transition-duration:0ms}.tile,.to-top,.site-nav a{transition-duration:0ms}.site-nav a:hover{transform:none}.nav-bar,.site-filter{transition-duration:0ms}.site-filter:hover{transform:none}.filters-bar,.site-filters{transition-duration:0ms}.site-filters.is-away,.site-filters.is-entrant{transform:none}.site-subfilters,.subfilters-row,.subfilters-bar{transition-duration:0ms}.subfilters-row,.site-subfilters.is-away,.site-subfilters.is-entrant{transform:none}.zoom-meta .zoom-caption,.zoom-meta .zoom-logo{transform:none;transition:opacity var(--meta-duration, .5s)}.zoom-arrow{transition-duration:0ms}.zoom-arrow:hover{transform:none}.zoom-close{transition-duration:0ms}.zoom-close:hover{transform:none}}.tile.is-flipped{transform:perspective(1400px) rotateY(180deg)}.tile.is-fixed.is-flipped{transition:transform var(--flip-duration, .9s) var(--zoom-ease),opacity var(--fade-duration)}.tile.is-fixed.is-flipped.is-pulsing{transition:transform var(--pulse-ms, .18s) var(--zoom-ease),opacity var(--fade-duration)}.tile.is-fixed.is-flipped.is-pulsing.is-pulse{transform:perspective(1400px) rotateY(180deg) scale(1.015)}.tile.is-fixed.is-flipped.is-turning{transform:perspective(1400px) rotateY(540deg);transition:transform var(--flip-duration, .9s) var(--zoom-ease),opacity var(--fade-duration)}.tile-back{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotateY(180deg);width:min(560px,92vw);height:auto;min-height:min(640px,88vh);max-height:88vh;backface-visibility:hidden;background:var(--paper);overflow:auto;padding:24px;box-shadow:0 10px 40px #00000026;text-align:left;cursor:auto}.tile-back[data-sent]{display:flex;flex-direction:column}.tile-sent{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center}.tile-sent p{margin:0;font-size:20px}.tile-sent:focus{outline:none}.tile-back h2{margin:0;font-size:22px;font-weight:500}.tile-back .contact-form{margin-top:12px;gap:8px}.tile-back .contact-form label{line-height:1.25}.tile-back .contact-form input,.tile-back .contact-form textarea{margin-top:4px;padding:6px 10px}.tile-back .btn-submit{padding:8px 32px}.tile-back .form-success{font-size:var(--font-size, 16px);margin-top:12px}.contact{max-width:1100px;margin:40px auto 0;display:grid;grid-template-columns:1fr 2fr;gap:48px}.contact h1{margin:0;font-size:clamp(40px,6vw,64px);font-weight:400;line-height:1.05}.contact-body p{margin:0 0 16px}.contact-body a{text-decoration:underline}@media(max-width:639px){.contact{grid-template-columns:1fr;gap:24px;margin-top:16px}}.contact-form{margin-top:24px;display:grid;gap:20px}.contact-form label{display:block;font-weight:500}.contact-form .req{font-weight:400;opacity:.6;font-size:14px}.contact-form input[type=text],.contact-form input[type=email],.contact-form input[type=tel],.contact-form textarea{display:block;width:100%;margin-top:6px;padding:10px 12px;border:1px solid #bbb;border-radius:4px;font:inherit;color:inherit;background:var(--paper);transition:box-shadow .15s,border-color .15s}.contact-form textarea{resize:none;overflow:hidden}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#555;box-shadow:0 0 0 4px #0000000f,0 2px 12px #0000001f}.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.btn-submit{justify-self:start}.btn-submit:disabled,.contact-form.is-busy .btn-submit{opacity:.5;cursor:progress}.form-error{color:#9b1c1c;margin:0}.form-success{font-size:20px;margin-top:24px}.site-footer{text-align:center;padding:80px 20px 40px}.site-footer p{margin:0}
