@font-face{font-family:Stack Sans Notch;src:url(/fonts/StackSansNotch-ExtraLight.ttf)format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Notch;src:url(/fonts/StackSansNotch-Light.ttf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Notch;src:url(/fonts/StackSansNotch-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Notch;src:url(/fonts/StackSansNotch-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Notch;src:url(/fonts/StackSansNotch-SemiBold.ttf)format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Notch;src:url(/fonts/StackSansNotch-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Text;src:url(/fonts/StackSansText-ExtraLight.ttf)format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Text;src:url(/fonts/StackSansText-Light.ttf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Text;src:url(/fonts/StackSansText-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Text;src:url(/fonts/StackSansText-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Text;src:url(/fonts/StackSansText-SemiBold.ttf)format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Stack Sans Text;src:url(/fonts/StackSansText-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}:root{--text:#444;--text-h:#111;--text-muted:#d3d3d3;--text--lessmuted:#979797;--bg:#fff;--card-bg:#fff;--card-img-bg:#f0f0f0;--border:#c8c8c8;--sans:"Stack Sans Text", system-ui, sans-serif;--heading:"Stack Sans Notch", system-ui, sans-serif;font-family:var(--sans);-webkit-font-smoothing:antialiased;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);width:100vw;height:100vh;overflow:hidden}#root{width:100vw;height:100vh;position:relative;overflow:hidden}h1,h2{font-family:var(--heading)}.mobile-block{display:none}@media (width<=768px){.mobile-block{z-index:9999;color:#fff;text-align:center;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:32px;display:flex;position:fixed;inset:0}.mobile-block p{max-width:320px;font-family:Stack Sans Notch;font-size:1.5rem;font-weight:200;line-height:1.6}.mobile-logo{width:48px}}.home{grid-template-rows:1fr 3fr .5fr;width:100vw;height:100vh;display:grid;position:relative;overflow:hidden}.home-logo{width:28px;position:absolute;top:32px;right:40px}.home-headline{font-size:2.5rem;font-family:var(--heading);text-transform:uppercase;color:var(--text-h);letter-spacing:-.5px;will-change:transform, opacity;padding:36px 40px 0;font-weight:500}.home-legal{will-change:transform, opacity;justify-content:flex-end;align-self:end;align-items:flex-end;gap:24px;padding:0 40px 32px;display:flex}.legal-link{cursor:pointer;font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);background:0 0;border:none;padding:0;font-size:12px;font-weight:500;transition:color .15s}.legal-link:hover{color:var(--text-h)}.cards-row{box-sizing:border-box;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--border) transparent;cursor:grab;gap:12px;width:100%;height:100%;padding:0 40px 22px;display:flex;overflow:auto hidden}.cards-row.dragging{cursor:grabbing;scroll-behavior:auto;-webkit-user-select:none;user-select:none}.cards-row::-webkit-scrollbar{height:6px}.cards-row::-webkit-scrollbar-track{background:0 0}.cards-row::-webkit-scrollbar-thumb{background:var(--border)}.card{cursor:pointer;border:1px solid var(--border);will-change:transform, opacity;flex-direction:column;flex:0 0 calc(20% - 9.6px);min-width:220px;transition:border-color .2s;display:flex;overflow:hidden}.card:hover{border-color:#999}.card-image{background:var(--card-img-bg);flex:1;width:100%;overflow:hidden}.card-image img{object-fit:cover;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;transform-origin:50%;width:100%;height:100%;transition:transform .35s;display:block}.card:hover .card-image img{transform:scale(1.08)}.card-body{border-top:1px solid var(--border);box-sizing:border-box;flex-shrink:0;height:115px;padding:14px 16px 18px}.card-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--text--lessmuted);margin-bottom:6px;font-size:11px;font-weight:500;display:block}.card-title{color:var(--text-h);letter-spacing:-.2px;margin:0 0 6px;font-size:16px;font-weight:500;line-height:1.3}.card-desc{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}:root{--gridGap:1rem}.project-page{background:var(--bg);will-change:transform;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.project-inner{width:100%}.back-btn{z-index:10;border:1px solid var(--text);color:var(--text);cursor:pointer;font-size:12px;font-family:var(--sans);letter-spacing:.04em;background:0 0;padding:8px 16px;font-weight:500;position:fixed;top:24px;left:28px}.back-btn-notfall{color:#fff;border-color:#fff}.last-grid-block{position:relative}.cv-table{border-collapse:collapse;width:100%;margin-top:1rem;font-size:16px}.cv-table td{border-bottom:1px solid var(--border);color:var(--text);padding:10px 12px 10px 0}.cv-table tr:last-child td{border-bottom:none}.cv-table td:last-child{text-align:right;white-space:nowrap}.back-btn-end{z-index:10;border:1px solid var(--text);color:var(--text);cursor:pointer;font-size:12px;font-family:var(--sans);letter-spacing:.04em;background:0 0;padding:8px 16px;font-weight:500;position:absolute;bottom:0;right:0}.project-page-horizontal{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--border) transparent;overflow:auto hidden}.project-page-horizontal::-webkit-scrollbar{height:6px}.project-page-horizontal::-webkit-scrollbar-track{background:0 0}.project-page-horizontal::-webkit-scrollbar-thumb{background:var(--border)}.project-page-horizontal.dragging{scroll-behavior:auto;-webkit-user-select:none;user-select:none}.project-inner-horizontal{width:max-content;height:100%;display:flex;position:relative}.scroll-cta{z-index:5;border:1.5px solid var(--text-h);background:var(--bg);width:80px;height:26px;color:var(--text-h);cursor:pointer;border-radius:15px;justify-content:center;align-items:center;font-size:20px;display:flex;position:absolute;bottom:40px;left:50vw;transform:translate(-50%)}.scroll-cta-arrow{display:inline-block;transform:translateY(-2px)}.project-section{flex:0 0 100vw;width:100vw;height:100%;overflow:hidden}.project-section-grid{flex:none;height:100%;overflow:hidden}.project-section-grid .project-grid{grid-template-rows:repeat(4,1fr);grid-template-columns:none;grid-auto-flow:column;grid-auto-rows:unset;border-top:none;border-left:1px solid var(--border);grid-auto-columns:360px;width:max-content;height:100%;padding:60px}.project-hero{background:var(--card-img-bg);justify-content:center;align-items:center;width:100%;height:52vh;display:flex}.project-hero img{object-fit:contain;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;max-width:100%;max-height:100%}.project-info-row{gap:var(--gridGap);grid-template-columns:repeat(4,1fr);margin:52px 60px;padding:52px 0;display:grid}.project-main{grid-column:span 3}.project-main h1{color:var(--text-h);letter-spacing:-1px;margin:0 0 20px;font-size:clamp(28px,3.5vw,48px);font-weight:500;line-height:1.1}.project-desc{color:var(--text);max-width:540px;font-size:15px;line-height:1.3}.project-sidebar{flex-direction:column;gap:24px;padding-top:8px;display:flex}.sidebar-item{flex-direction:column;gap:4px;display:flex}.sidebar-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-less-muted);font-size:10px;font-weight:500}.sidebar-value{color:var(--text-h);font-size:14px}.project-grid{gap:var(--gridGap);border-top:1px solid var(--border);background:#fff;grid-auto-rows:360px;padding:0 60px 60px;display:grid}.grid-block{overflow:hidden}.subpage-grid .grid-block>h2{margin-bottom:1rem}.subpage-grid .grid-block>p{margin-top:1rem}.subpage-grid .grid-block ul{margin:0 2rem;padding-left:1rem}.grid-block img{object-fit:cover;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.grid-2x1{grid-column:span 2}.grid-1x2{grid-row:span 2}.grid-3x1{grid-column:span 3}.grid-1x3{grid-row:span 3}.grid-4x1{grid-column:span 4}.grid-1x4{grid-row:span 4}.grid-2x2{grid-area:span 2/span 2}.grid-2x3{grid-area:span 3/span 2}.grid-3x2{grid-area:span 2/span 3}.grid-4x3{grid-area:span 3/span 4}.grid-3x4{grid-area:span 4/span 3}.grid-3x3{grid-area:span 3/span 3}.grid-4x4{grid-area:span 4/span 4}.grid-2x4{grid-area:span 4/span 2}.grid-4x2{grid-area:span 2/span 4}.legal-page{background:var(--bg);will-change:transform;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.legal-inner{width:100%}.underline{text-decoration:underline}.legal-back-btn{z-index:10;border:1px solid var(--border);color:var(--text);cursor:pointer;font-size:12px;font-family:var(--sans);letter-spacing:.04em;background:0 0;padding:8px 16px;font-weight:500;transition:color .15s,border-color .15s;position:fixed;top:24px;left:28px}.legal-back-btn:hover{color:var(--text-h);border-color:#999}.legal-content{max-width:720px;padding:100px 60px}.legal-content h1{color:var(--text-h);letter-spacing:-1px;margin-bottom:48px;font-size:2.5rem;font-weight:500}.legal-content h2{color:var(--text-h);letter-spacing:0;margin:36px 0 8px;font-size:1rem;font-weight:600}.legal-content p{color:var(--text);margin-bottom:12px;font-size:14px;line-height:1.75}.legal-content a{color:var(--text-h);text-underline-offset:3px;text-decoration:underline}.legal-placeholder{color:#aaa;background:#f0f0f0;border-radius:3px;padding:0 6px;font-style:italic;display:inline-block}.legal-masked{color:var(--text-muted);letter-spacing:.15em;-webkit-user-select:none;user-select:none;display:inline-block}.legal-reveal-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;font-family:var(--sans);letter-spacing:.04em;background:0 0;margin:4px 0 12px;padding:8px 16px;font-size:12px;font-weight:500;transition:color .15s,border-color .15s;display:inline-block}.legal-reveal-btn:hover{color:var(--text-h);border-color:#999}.legal-reveal-btn:disabled{cursor:default;opacity:.5}
