:root{--fg: var(--sbm-fg);--bg: var(--sbm-bg);--page-bg: var(--bg);--content-bg: var(--sbm-content-bg);--muted: var(--sbm-muted);--title-color: var(--sbm-title-color);--body-color: var(--sbm-body-color);--rule-color: var(--sbm-rule-color);--cursor-bg: var(--fg);--cursor-fg: var(--bg);--logo-size: var(--sbm-logo-size);--menu-size: var(--sbm-menu-size);--page-title-size: var(--sbm-title-size);--body-text-size: var(--sbm-body-size);--small-text-size: var(--sbm-small-size);--footer-text-size: var(--sbm-footer-size);--landing-text-size: var(--sbm-intro-size);--bar-h: var(--sbm-header-height);--pad: var(--sbm-pad);--info-top: 240px;--footer-bottom: 80px;--back-button-h: var(--sbm-control-height);--overlay-content-offset: var(--sbm-overlay-content-offset);--logo-aspect: var(--sbm-logo-aspect);--logo-height: var(--sbm-logo-height);--page-grid-width: var(--sbm-page-width);--page-column-width: min(100%, var(--page-grid-width))}@media(min-width:641px)and (max-width:1023px){:root{--info-top: 200px}}@media(max-width:640px){:root{--pad: var(--sbm-pad);--info-top: 100px;--footer-bottom: 66px}}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--sbm-font-family);font-size:var(--sbm-base-size);line-height:var(--sbm-line-height);-webkit-font-smoothing:antialiased}a{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}.site{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg);transition:background-color .35s ease}.site>.grid{flex:1 0 auto;width:100%}.site>.site-footer{flex:0 0 auto;margin-top:24px}.bar .studio-keywords{position:relative;display:grid;align-items:baseline;flex:0 0 auto;width:4.75em;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--fg);font:inherit;font-size:var(--brand-word-size);line-height:1;text-align:left;cursor:default;pointer-events:none;user-select:none;-webkit-user-select:none}.studio-keywords span{grid-area:1 / 1}@media(max-width:640px){.bar-brand{gap:var(--sbm-brand-gap)}}@media(max-width:360px){.bar-brand{gap:var(--sbm-brand-gap)}}.site--with-intro{overflow-anchor:none}.site.site--overview>.home-intro{height:var(--bar-h);min-height:var(--bar-h);padding:0;visibility:hidden;overflow:hidden}.bar{position:fixed;inset:0 0 auto;height:var(--bar-h);display:flex;align-items:center;justify-content:space-between;padding-block:0;z-index:200;background:transparent;opacity:1;transition:background-color .35s ease,opacity .45s ease;color:var(--fg)}.bar--before-site{opacity:0;pointer-events:none}.bar--intro-reveal{transition:background-color .35s ease,opacity 1.8s ease-in-out}.bar button{pointer-events:auto;background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:0}.bar .logo{line-height:0;user-select:none;-webkit-user-select:none}.logo-img{user-select:none;-webkit-user-drag:none;-webkit-user-select:none}.nav{display:flex;gap:18px;font-size:var(--menu-size)}.nav-link:hover{text-decoration:underline}.home-intro{position:relative;flex:0 0 auto;min-height:min(68vh,calc(100vh - 220px),720px);min-height:min(68svh,calc(100svh - 220px),720px);display:grid;place-items:center;text-align:center;padding:40px var(--pad)}.home-intro-text{position:absolute;top:min(50vh,calc(100% - 64px));top:min(50svh,calc(100% - 64px));left:var(--pad);right:var(--pad);transform:translateY(-50%);max-width:820px;font-size:var(--landing-text-size);line-height:1.2;font-weight:var(--sbm-font-weight);letter-spacing:-.01em;margin:0 auto;text-wrap:balance;animation:intro-text-in .7s cubic-bezier(.22,1,.36,1) both}@keyframes intro-text-in{0%{opacity:0;transform:translateY(calc(-50% + 10px))}to{opacity:1;transform:translateY(-50%)}}.site--with-intro>.grid{padding-top:var(--pad)}@media(max-width:640px){.home-intro{min-height:64vh;min-height:64svh}.home-intro-text{font-size:min(var(--landing-text-size),clamp(26px,7vw,36px))}}@media(max-height:500px)and (orientation:landscape){.home-intro{min-height:min(68vh,calc(100vh - 220px));min-height:min(68svh,calc(100svh - 220px))}.home-intro-text{font-size:min(var(--landing-text-size),28px)}}@media(prefers-reduced-motion:reduce){.bar,.home-intro-text,.site--with-intro>.grid{transition:none}}.cursor-label{position:fixed;z-index:150;pointer-events:none;transform:translate(14px,14px);background:var(--cursor-bg);color:var(--cursor-fg);padding:5px 11px;border-radius:999px;font-size:var(--small-text-size);letter-spacing:.01em;white-space:nowrap;opacity:0;transition:opacity .18s ease}.cursor-label.show{opacity:1}.grid{display:grid;padding:calc(var(--bar-h) + var(--pad)) var(--pad) var(--pad);max-width:none;margin:0 auto;transition:transform .2s cubic-bezier(.33,1,.68,1);transform-origin:50% 0}.tile{margin:0;overflow:hidden;background:#ddd9d2;cursor:pointer}.tile--entering{animation:home-project-reveal 1.8s ease-in-out var(--reveal-delay, 1.3s) both}@keyframes home-project-reveal{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.home-intro-text,.tile--entering{animation:none}}.tile img{transition:filter .22s ease}.grid--free{display:block}.grid--free .tile{width:100%;margin:0 0 10px;break-inside:avoid;height:auto}.grid--free .tile img{position:static;height:auto!important;object-fit:contain}.grid--random{display:block;position:relative;width:100%}.grid--random .tile{position:absolute}.grid--random .tile img{height:100%;object-fit:cover}.fx-mono .tile img,.fx-tint .tile img{filter:grayscale(1)}.fx-mono .tile:hover img,.fx-tint .tile:hover img{filter:none}.fx-tint .tile{position:relative}.tint-layer{position:absolute;inset:0;background:var(--tint);mix-blend-mode:color;pointer-events:none;transition:opacity .18s ease}.fx-tint .tile:hover .tint-layer{opacity:0}.overlay{position:fixed;inset:0;z-index:100}.overlay-scroll{position:absolute;inset:0;display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:calc(var(--bar-h) + var(--overlay-content-offset)) var(--pad) 0;transition:transform .2s cubic-bezier(.33,1,.68,1);transform-origin:50% 0}.overlay-body{position:relative;flex:1 0 auto;display:grid;grid-template-columns:minmax(0,1fr)}.overlay-body>.overlay-back,.overlay-body>.overlay-content{grid-area:1 / 1}.overlay-content{flex:1 0 auto;width:100%;padding-bottom:56px}.overlay-back{position:sticky;bottom:max(var(--pad),env(safe-area-inset-bottom));align-self:flex-start;flex-shrink:0;margin:0 0 var(--sbm-space-medium);z-index:230;min-height:var(--back-button-h);display:inline-flex;align-items:center;gap:7px;border:0;border-radius:0;background:transparent;color:var(--fg);font:inherit;font-size:var(--small-text-size);line-height:1.2;padding:0;cursor:pointer;transition:opacity .18s ease}.overlay-back:focus-visible{outline:2px solid var(--fg);outline-offset:4px}.overlay-back:hover{color:var(--fg)}.overlay-back-icon{display:inline-flex;line-height:1}.overlay-back .navigation-icon{width:1.35em;height:1.35em}.overlay-back .navigation-icon path{vector-effect:non-scaling-stroke}.overlay-back-text{line-height:1}.project-close-icon{display:none}.hero-wrap{min-height:auto;display:flex;align-items:flex-start;justify-content:center;width:var(--page-column-width);max-width:none;margin:0 auto;padding:0 0 var(--sbm-space-large)}.hero{margin:0;width:100%;overflow:hidden}.hero--portrait{width:min(100%,calc((100vh - var(--bar-h) - var(--overlay-content-offset) - 72px) * var(--hero-aspect, 1)))}@media(max-width:640px){.hero--portrait{width:100%}}.hero img{width:100%;height:100%;object-fit:cover}.morph-frame{position:fixed;z-index:140;margin:0;overflow:hidden;background:#ddd9d2;pointer-events:none;max-width:none;will-change:left,top,width,height}.morph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.morph-tint-layer{position:absolute;inset:0;background:var(--morph-tint);mix-blend-mode:color;pointer-events:none}.article-head{width:var(--page-column-width);max-width:none;margin:var(--sbm-space-medium) auto var(--sbm-space-large);text-align:left}.article-head h1,.contact-inner h1,.info-inner h1{font-size:var(--page-title-size);font-weight:var(--sbm-heading-weight);color:var(--title-color);line-height:var(--sbm-title-line-height);margin:0 0 var(--sbm-space-medium);text-align:left}.lead{font-size:var(--body-text-size);line-height:var(--sbm-reading-line-height);color:var(--body-color);margin:0 0 var(--sbm-space-medium);max-width:none}.lead-more{white-space:pre-line}.read-more-wrap{text-align:left;margin:0 0 56px}.read-more{font:inherit;font-size:var(--body-text-size);line-height:var(--sbm-reading-line-height);color:var(--title-color);text-decoration:underline;text-underline-offset:3px;background:none;border:0;padding:4px 0;cursor:pointer}.read-more:hover{text-decoration-thickness:2px}.specs{display:grid;grid-template-columns:max-content 1fr;column-gap:0;margin:0;font-size:var(--small-text-size);line-height:1.4;border-top:1px solid var(--rule-color)}.spec-row{display:contents}.specs dt{flex:0 0 auto;text-transform:uppercase;letter-spacing:.02em;font-weight:var(--sbm-heading-weight);color:var(--fg);padding:9px 28px 9px 0;border-bottom:1px solid var(--rule-color)}.specs dd{margin:0;color:var(--body-color);white-space:pre-line;padding:9px 0;border-bottom:1px solid var(--rule-color)}@media(max-width:520px){.specs dt{padding-right:16px}}.article-media{display:flex;flex-direction:column;gap:14px;align-items:stretch;width:var(--page-column-width);max-width:none;margin:0 auto}.article-fig{margin:0;width:100%;max-width:none;overflow:hidden}.article-fig img{height:auto}.article-fig figcaption{font-size:var(--small-text-size);color:var(--muted);padding:6px 2px 0}.contact-layout{min-height:auto;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;width:var(--page-column-width);max-width:none;margin:0 auto}.contact-inner{text-align:left;width:100%;max-width:none;margin:0 0 72px}.contact-inner address,.contact-inner .contact-links,.contact-inner .muted{font-size:var(--body-text-size);line-height:var(--sbm-reading-line-height);color:var(--body-color);margin:0 0 var(--sbm-space-medium)}.contact-inner address{font-style:normal}.contact-inner .muted{color:var(--body-color)}.contact-inner a:hover{text-decoration:underline}.site-footer{background:var(--bg);color:var(--fg);padding:22px var(--pad);padding-bottom:calc(var(--footer-bottom) + env(safe-area-inset-bottom))}.site-footer--page{background:var(--content-bg)}.overlay-scroll .site-footer{flex-shrink:0;margin:0 calc(var(--pad) * -1) 0}.overlay--contact .overlay-scroll,.info-overlay .overlay-scroll{padding-top:var(--info-top)}@media(max-width:1023px){.overlay-body{display:flex;flex-direction:column}}@media(max-width:1023px){.overlay-back--project{position:sticky;align-self:center;left:auto;bottom:max(var(--pad),env(safe-area-inset-bottom));transform:none;width:44px;height:44px;min-height:var(--sbm-control-height);margin:0 0 var(--sbm-space-medium);justify-content:center;border-radius:50%;background:var(--fg);color:var(--bg);transition:opacity .18s ease,background-color .16s ease}.overlay-back--project:hover,.overlay-back--project:focus-visible{background:#343434;color:var(--bg)}.overlay-back--project:active{background:#0a0a0a}.overlay-back--project .overlay-back-icon,.overlay-back--project .overlay-back-text{display:none}.project-close-icon{display:block;width:18px;height:18px}}.footer-inner{display:flex;flex-direction:column;align-items:flex-start;gap:4px;font-size:var(--footer-text-size)}.footer-inner a{text-decoration:none}.footer-copy{color:inherit}.menu-grid-toggle{display:flex;align-items:center;justify-content:flex-end;gap:10px}.menu-grid-toggle button{background:none;border:0;padding:0;display:inline-flex;color:var(--muted);cursor:pointer;transition:color .18s ease}.menu-grid-toggle button svg{width:17px;height:17px;display:block;fill:currentColor}.menu-grid-toggle button:hover,.menu-grid-toggle button.on{color:var(--fg)}.info-overlay{background:var(--content-bg)}.info-inner{width:var(--page-column-width);max-width:none;margin:0 auto}.press-section{margin:0 0 var(--sbm-space-section);text-align:left;max-width:none}.press-section h2{font-size:var(--body-text-size);font-weight:var(--sbm-font-weight);color:var(--fg);line-height:var(--sbm-reading-line-height);margin:0 0 var(--sbm-space-medium)}.press-list{list-style:none;margin:0;padding:0}.press-list li{margin:0 0 var(--sbm-space-medium);font-size:var(--body-text-size);color:var(--body-color);line-height:var(--sbm-reading-line-height)}.press-title{display:block;font-weight:var(--sbm-font-weight);color:var(--title-color)}.press-meta{display:block;color:var(--fg);font-size:inherit;line-height:var(--sbm-reading-line-height)}.press-list a{color:inherit;text-decoration:none;text-underline-offset:3px}.press-list a:hover,.press-list a:focus-visible{text-decoration:underline}.related-wrap{width:var(--page-column-width);max-width:none;margin:90px auto 0;padding-top:12px;border-top:1px solid var(--rule-color)}.related-head{font-size:var(--small-text-size);font-weight:var(--sbm-heading-weight);text-transform:uppercase;letter-spacing:.02em;line-height:1.4;color:var(--fg);text-align:left;margin:0 0 22px}.related-scatter{position:relative;width:100%}.related-tile{position:absolute;margin:0;overflow:hidden;background:#ddd9d2;cursor:pointer}.related-tile img{width:100%;height:100%;object-fit:cover}.site{font-family:var(--site-font, var(--sbm-font-family));line-height:var(--site-line-height, var(--sbm-line-height))}.bar{background:var(--header-desktop-bg, transparent)}.bar .logo--text{width:auto;height:auto;line-height:1;font-size:var(--logo-size)}.tile--entering{animation-duration:var(--grid-reveal-duration, 1.8s)}.site--no-motion *,.site--no-motion{animation:none!important;transition:none!important;scroll-behavior:auto!important}.footer-note{white-space:pre-line}.project-downloads{display:flex;flex-direction:column;gap:8px;margin:20px 0;font-size:var(--body-text-size)}.custom-page-image{width:100%;height:auto;margin:var(--sbm-space-medium) 0}.preview-banner{position:fixed;z-index:10000;left:50%;bottom:12px;transform:translate(-50%);padding:10px 18px;background:var(--sbm-content-bg);color:var(--sbm-fg);font:var(--sbm-small-size) var(--sbm-font-family);border:1px solid #3333;border-radius:0;white-space:nowrap}.preview-banner a{margin-left:20px}.not-found{max-width:600px;padding:15vh 24px;margin:auto}.notice-card{position:fixed;z-index:900;right:24px;bottom:24px;width:min(365px,calc(100vw - 32px));max-height:min(75vh,600px);overflow:auto;border:1px solid #3333;box-shadow:none;font-family:var(--sbm-font-family)}.notice-content{padding:22px 26px 26px}.notice-label{font-size:13px}.notice-card h2{font-size:26px;font-weight:var(--sbm-font-weight);line-height:var(--sbm-title-line-height);margin:12px 0;padding-right:12px}.notice-card p{white-space:pre-line;font-size:var(--sbm-base-size);line-height:var(--sbm-line-height)}.notice-card a{display:inline-block;font-size:14px;margin-top:8px;text-underline-offset:4px}.notice-image{width:100%;height:180px;object-fit:cover}.notice-close{position:absolute;right:8px;top:8px;width:36px;height:36px;border:0;background:transparent;color:inherit;cursor:pointer;font:26px var(--sbm-font-family);border-radius:0}.notice-reopen{position:fixed;z-index:900;bottom:18px;right:18px;padding:11px 18px;background:#fff;color:var(--sbm-fg);border:1px solid #3333;border-radius:0;cursor:pointer;font:var(--sbm-small-size) var(--sbm-font-family)}@media(max-width:1023px){.bar{background:var(--bar-bg, transparent)}}@media(max-width:640px){.notice-card{right:16px;bottom:16px}.notice-image{height:130px}.preview-banner{max-width:calc(100vw - 20px);white-space:normal}}.footer-newsletter{display:flex;align-items:baseline;gap:12px;width:100%;max-width:100%;min-height:1.45em;height:auto;line-height:1.45}.footer-newsletter button,.footer-newsletter input{box-sizing:border-box;font:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;background:transparent;border:0;border-radius:0;padding:0;margin:0;min-height:0;height:1.45em}.footer-newsletter button{cursor:pointer;flex:none}.footer-newsletter-toggle{text-align:left}.footer-newsletter-form{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;flex:1;min-width:0;margin:0}.footer-newsletter-form input{width:100%;min-width:0;border-bottom:1px solid currentColor;outline-offset:2px;padding-inline-end:8px;text-indent:0;text-align:left}.footer-newsletter-field{position:relative;overflow:hidden;display:block;width:8.5em;flex:0 0 auto;max-width:100%;min-width:0;margin:0}.footer-newsletter-measure{position:absolute;left:0;top:0;width:max-content;max-width:none;visibility:hidden;pointer-events:none;white-space:pre;padding:0;margin:0}.footer-newsletter-email{width:12.5em}.footer-newsletter-form button .navigation-icon{display:block;width:18px;height:18px}.footer-newsletter-form input::placeholder{color:inherit;opacity:.65}.footer-newsletter-form button{width:18px}.footer-newsletter-form .footer-newsletter-trap{position:absolute;left:-10000px;width:1px;height:1px}.footer-newsletter--complete{height:auto}.footer-newsletter-status{white-space:normal;overflow-wrap:anywhere}.footer-newsletter-error{position:absolute;bottom:calc(100% + 4px);left:0;font:inherit;white-space:nowrap}.footer-newsletter button:focus-visible{outline:1px solid currentColor;outline-offset:3px}.footer-newsletter-form input:focus-visible{outline:none;box-shadow:0 1px 0 currentColor}.footer-newsletter-form>button{align-self:center;display:flex;align-items:center;justify-content:center}.footer-newsletter-form input:focus-visible{border-bottom-width:2px;box-shadow:none}.info-overlay .overlay-scroll.info--message{padding-top:calc(var(--bar-h) + var(--sbm-space-medium))}.info--message .overlay-content{display:flex;align-items:center;justify-content:center;padding-bottom:var(--sbm-space-medium)}.info--message .info-inner{text-align:center}.info--message .info-inner h1{text-align:center;font-size:var(--body-text-size);font-weight:var(--sbm-font-weight);line-height:var(--sbm-reading-line-height);margin:0 0 var(--sbm-space-small);color:var(--body-color)}.info--message .lead{margin-bottom:var(--sbm-space-small)}.info--message .lead a{text-decoration:underline;text-underline-offset:3px}.page-action{margin-top:var(--sbm-space-medium)}.page-action button{min-height:var(--sbm-control-height)}.info-inner:has(>.page-action--auto)>:not(.page-action--auto){display:none}.page-action--auto{margin:0}.footer-newsletter-email{max-width:calc(100% - 28px)}@media(max-width:640px){.footer-newsletter{flex-wrap:wrap;width:100%;gap:4px 12px}.footer-newsletter-form{flex:0 0 100%}.footer-newsletter-field{font-size:max(16px,var(--footer-text-size))}}.page-signup{width:min(100%,440px);margin:var(--sbm-space-medium) auto 0;text-align:left;font-size:var(--body-text-size);line-height:var(--sbm-reading-line-height)}.page-signup label{display:block;margin-bottom:var(--sbm-space-medium)}.page-signup input{display:block;width:100%;min-height:var(--sbm-control-height);font:inherit;font-size:max(16px,var(--body-text-size));color:var(--body-color);background:transparent;border:0;border-bottom:1px solid var(--sbm-rule-color);border-radius:0;padding:var(--sbm-space-small) 0}.page-signup .page-signup-trap{position:absolute;left:-10000px;width:1px;height:1px}.page-signup .page-signup-consent{font-size:var(--small-text-size);margin-bottom:var(--sbm-space-medium)}.page-signup a,.info-inner .lead a{text-decoration:underline;text-underline-offset:3px}.page-signup input:focus-visible{outline:none;border-bottom-width:2px}.page-signup button{min-height:var(--sbm-control-height)}.emergency-site{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:var(--sbm-content-bg)}.emergency-main{flex:1;display:grid;place-items:center;padding:calc(var(--bar-h) + var(--sbm-space-medium)) var(--pad) var(--sbm-space-medium)}.emergency-main .info-inner{text-align:center}.tile-link{display:block;width:100%;height:100%;color:inherit;-webkit-user-drag:none}.grid--free .tile-link{height:auto}.tile-link:focus-visible{outline:2px solid var(--fg);outline-offset:-2px}
