@font-face{font-family:Suisse Intl;src:url(/fonts/SuisseIntl-Regular.otf)format("opentype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Suisse Intl;src:url(/fonts/SuisseIntl-Medium.otf)format("opentype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Suisse Intl;src:url(/fonts/SuisseIntl-SemiBold.otf)format("opentype");font-style:normal;font-weight:600;font-display:swap}:root{--ink:#11110f;--muted:#656560;--canvas:#f7f7f5;--card:#fff;--line:#11110f1f}*{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);margin:0;font-family:Suisse Intl,Arial,sans-serif}a{color:inherit;text-decoration:none}main{width:min(100%,1600px);margin:0 auto;padding:0 48px}.catalog{scroll-margin-top:80px}.catalog-bar{z-index:5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f7f5ed;align-items:center;gap:28px;min-height:82px;padding:14px 0;display:flex;position:sticky;top:0}.catalog-bar p{margin:0;font-size:16px}.catalog-bar ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.catalog-bar li{display:flex}.catalog-bar button{appearance:none;border:1px solid var(--line);color:#40403c;font:inherit;cursor:pointer;background:#fff;border-radius:8px;padding:9px 12px;font-size:14px;transition:background .2s,border-color .2s,color .2s;box-shadow:0 3px 10px #00000006}.catalog-bar button:hover,.catalog-bar button:focus-visible{border-color:#11110f47;outline:none}.catalog-bar button.is-active{color:#fff;border-color:var(--ink);background:var(--ink)}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:72px 24px;padding:24px 0 112px;display:grid}.project-card{background:var(--card);border-radius:24px;flex-direction:column;min-width:0;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s;display:flex;overflow:hidden;box-shadow:0 10px 34px #1a19160e}.project-card:hover,.project-card:focus-visible{outline:none;transform:translateY(-7px);box-shadow:0 23px 55px #1a19161c}.project-preview{aspect-ratio:4/3;background:#e6e5e1;position:relative;overflow:hidden}.project-preview>img{object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1)}.project-card:hover .project-preview>img,.project-card:focus-visible .project-preview>img{transform:scale(1.035)}.open-button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:2;background:#ffffffeb;border-radius:50%;place-items:center;width:48px;height:48px;transition:background .3s,color .3s,transform .35s;display:grid;position:absolute;top:18px;right:18px;box-shadow:0 5px 20px #0000001a}.open-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px}.project-card:hover .open-button,.project-card:focus-visible .open-button{color:#fff;background:var(--ink);transform:rotate(-4deg)}.project-content{flex-direction:column;flex:1;padding:24px 26px 26px;display:flex}.project-eyebrow{color:var(--muted);margin:0 0 12px;font-size:13px}.project-summary{color:#4f4f4b;letter-spacing:-.015em;max-width:690px;margin:0 0 24px;font-size:clamp(17px,1.25vw,20px);line-height:1.38}.project-summary strong{color:var(--ink);font-weight:600}.tag-list{color:var(--muted);flex-wrap:wrap;gap:14px;margin:auto 0 0;padding:0;font-size:13px;list-style:none;display:flex}.tag-list li+li:before{content:"·";color:#aaa9a3;margin-right:14px}footer{border-top:1px solid var(--line);min-height:150px;color:var(--muted);grid-template-columns:1fr auto;align-items:center;gap:48px;font-size:13px;display:grid}footer p{margin:0}.case-shell{background:#fff;width:100%;max-width:none;height:100dvh;padding:0;position:fixed;inset:0;overflow:hidden}.case-frame{background:#fff;border:0;width:100%;height:100%;display:block}@media (width<=900px){main{padding:0 28px}.project-grid{gap:48px 18px}.project-card{border-radius:20px}}@media (width<=680px){main{padding:0 16px}.catalog-bar{flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;min-height:100px}.catalog-bar button{padding:7px 9px;font-size:12px}.project-grid{grid-template-columns:1fr;gap:30px;padding-top:16px;padding-bottom:72px}.project-card{border-radius:18px}.project-content{padding:21px 20px 22px}.open-button{width:44px;height:44px;top:14px;right:14px}footer{gap:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
