*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f7f7f4;--text:#111;--muted:#7c7c7c;--line:#e5e5e5}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Inter,Helvetica,Arial,sans-serif}a{color:inherit;text-decoration:none}.app{width:min(1440px,100% - 120px);margin:0 auto}.hero{width:100%;height:100vh;position:relative;overflow:hidden}.hero picture{width:100%;height:100%;position:absolute;inset:0}.hero-image{object-fit:cover;object-position:center center;width:100%;height:100%;display:block}.hero-content{z-index:2;position:absolute;inset:0}.hero h1{letter-spacing:.3em;text-transform:uppercase;color:#111;margin:0;font-family:inherit;font-size:26px;font-weight:500;line-height:1.15;position:absolute;top:36%;left:64px;transform:translateY(-50%)}@media (width<=768px){.hero h1{letter-spacing:.24em;text-transform:capitalize;color:#000000b8;font-size:22px;line-height:1.12;top:34%;left:28px}}.hero-scroll{color:#ffffffeb;text-shadow:0 2px 14px #0000004d;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;bottom:32px;right:32px}.hero-scroll span{letter-spacing:.28em;text-transform:uppercase;font-size:11px}.section{border-top:1px solid var(--line);grid-template-columns:220px 1fr;column-gap:80px;padding:170px 0;display:grid}.section-label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:13px}.section-content h2{letter-spacing:-.04em;max-width:900px;font-size:clamp(42px,5vw,72px);font-weight:600;line-height:1.05}.section-content p{color:#555;max-width:620px;margin-top:36px;font-size:19px;line-height:1.9}.projects{flex-direction:column;display:flex}.project{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr;gap:40px;padding:42px 0;transition:all .3s;display:grid}.project:hover{transform:translate(10px)}.project span{color:var(--muted);font-size:14px}.project h3{letter-spacing:-.03em;margin-bottom:10px;font-size:34px;font-weight:500}.project p{color:#666;max-width:520px;line-height:1.75}.contact{border-top:1px solid var(--line);padding:220px 0}.contact h2{letter-spacing:-.05em;margin-bottom:54px;font-size:clamp(60px,8vw,126px);line-height:.92}.contact a{font-size:30px;transition:all .25s}.contact a:hover{opacity:.55}@media (width<=900px){.app{width:calc(100% - 48px)}.navbar{height:88px}.logo img{height:48px}.nav-right{display:none}.hero{width:100%;height:100vh;position:relative;overflow:hidden}.hero-content{padding:28px}.hero-bg{opacity:.1;background-size:220%}.hero-inner{width:100%;padding-left:0}.hero h1{font-size:68px}.hero p{max-width:100%;margin-top:36px;font-size:18px}.section{grid-template-columns:1fr;gap:42px;padding:120px 0}.project{grid-template-columns:1fr;gap:18px}.contact{padding:140px 0}.contact h2{font-size:64px}.contact a{font-size:24px}.project-link{color:inherit;text-decoration:none;transition:all .25s;display:inline-block}.project-link:hover{opacity:.6}.case-showcase{margin-bottom:120px}.case-showcase img{border:1px solid #ececec;border-radius:18px;width:100%;display:block;box-shadow:0 40px 90px #0000000f}@media (width<=768px){.hero-content{padding:0 2rem}.hero h1{letter-spacing:.03em;font-size:clamp(2.8rem,9vw,3.8rem);font-weight:400;line-height:1.05;top:30%;left:2rem;transform:translateY(-50%)}}}.navbar{z-index:10000;-webkit-backdrop-filter:none;background:0 0;border:none;position:fixed;inset:0 0 auto}.navbar-inner{justify-content:space-between;align-items:center;width:min(1600px,100% - 64px);height:84px;margin:0 auto;display:flex;position:relative}.logo{flex-shrink:0;align-items:center;text-decoration:none;display:flex}.logo-text{letter-spacing:.28em;text-transform:uppercase;color:#111;white-space:nowrap;align-items:center;gap:16px;font-size:12px;font-weight:500;transition:opacity .25s;display:flex}.logo:hover .logo-text{opacity:.55}.nav-right{align-items:center;gap:56px;display:flex}.nav-right a{letter-spacing:.28em;text-transform:uppercase;color:#111;white-space:nowrap;font-size:12px;font-weight:500;text-decoration:none;transition:opacity .25s,transform .25s;position:relative}.nav-right a:hover{opacity:.6;transform:translateY(-1px)}.menu-button{cursor:pointer;min-width:56px;height:40px;font:inherit;letter-spacing:.24em;text-transform:uppercase;color:#111;white-space:nowrap;background:0 0;border:none;outline:none;justify-content:center;align-items:center;padding:0;font-size:11px;font-weight:500;transition:opacity .25s,transform .25s;display:none}.menu-button span{justify-content:center;align-items:center;line-height:1;transition:opacity .25s,transform .3s;display:inline-flex}.menu-button:not(.open) span{letter-spacing:.24em}.menu-button.open span{letter-spacing:0;font-size:20px;font-weight:300;transform:none}.menu-button:hover{opacity:.65}.menu-button:active{transform:scale(.97)}.menu-button:focus-visible{outline-offset:6px;outline:2px solid #00000026}.mobile-menu{-webkit-backdrop-filter:blur(24px);overscroll-behavior:contain;opacity:0;visibility:hidden;pointer-events:none;z-index:9999;background:#f6f5f2;flex-direction:column;align-items:flex-start;padding:96px 36px 32px;transition:opacity .35s,transform .45s cubic-bezier(.22,1,.36,1),visibility .35s;display:flex;position:fixed;inset:0;overflow-y:auto;transform:translateY(-8px)}.mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.mobile-menu a{color:#111;text-decoration:none;transition:opacity .25s,transform .25s}.mobile-menu a:hover{opacity:.72;transform:translate(4px)}@media (width<=900px){.navbar-inner{width:calc(100% - 32px);height:72px}.logo-text{letter-spacing:.2em;gap:12px;font-size:11px}}@media (width<=768px){.nav-right{display:none}.menu-button{justify-content:center;align-items:center;height:40px;display:flex}}@media (width>=769px){.mobile-menu{display:none}}.mobile-links{flex-direction:column;align-items:flex-start;gap:10px;width:100%;display:flex}.mobile-link{opacity:0;align-items:flex-start;gap:22px;width:100%;text-decoration:none;transition:opacity .45s,transform .45s cubic-bezier(.22,1,.36,1);display:flex;transform:translateY(20px)}.mobile-menu.open .mobile-link{opacity:1;transform:translateY(0)}.mobile-number{letter-spacing:.22em;text-transform:uppercase;color:#0006;-webkit-user-select:none;user-select:none;flex-shrink:0;width:42px;padding-top:10px;font-size:11px;font-weight:500}.mobile-title{letter-spacing:-.02em;color:#111;font-size:clamp(50px,10vw,64px);font-weight:300;line-height:.96;transition:transform .25s,opacity .25s}.mobile-link:hover .mobile-title{transform:translate(4px)}.mobile-link:hover .mobile-number{opacity:.7}.mobile-footer{opacity:0;border-top:1px solid #00000014;justify-content:space-between;align-items:center;width:100%;margin-top:clamp(56px,10vh,120px);padding-top:28px;padding-bottom:8px;transition:opacity .45s .28s,transform .45s .28s;display:flex;transform:translateY(10px)}.mobile-menu.open .mobile-footer{opacity:1;transform:translateY(0)}.footer-label{letter-spacing:.3em;text-transform:uppercase;color:#0000006b;-webkit-user-select:none;user-select:none;font-size:10px;font-weight:500}.footer-year{letter-spacing:.2em;color:#00000052;-webkit-user-select:none;user-select:none;font-size:10px;font-weight:400}.case-study{width:min(1120px,100% - 120px);margin:0 auto;padding:120px 0 260px}.case-hero{margin-bottom:100px}.case-label{letter-spacing:.18em;text-transform:uppercase;color:#8b8b8b;margin-bottom:24px;font-size:12px;display:block}.case-hero h1{letter-spacing:-.07em;margin-bottom:38px;font-size:clamp(68px,9vw,138px);font-weight:600;line-height:.9}.intro{color:#555;max-width:760px;font-size:22px;line-height:1.8}.case-showcase{margin:90px 0 150px}.case-showcase img{border:1px solid #ececec;border-radius:22px;width:110%;margin-left:-5%;display:block;box-shadow:0 50px 120px #00000014}.case-grid{border-top:1px solid #ececec;border-bottom:1px solid #ececec;grid-template-columns:repeat(3,1fr);gap:70px;margin-bottom:140px;padding:60px 0;display:grid}.case-grid h4{letter-spacing:.18em;text-transform:uppercase;color:#8b8b8b;margin-bottom:18px;font-size:12px}.case-grid p{color:#333;font-size:17px;line-height:1.9}.case-text{max-width:760px;margin-bottom:110px}.case-text h2{letter-spacing:-.04em;margin-bottom:34px;font-size:46px;line-height:1.05}.case-text p{color:#555;margin-bottom:28px;font-size:20px;line-height:1.9}.case-image{margin:120px 0 140px}.case-image img{border:1px solid #ececec;border-radius:20px;width:100%;display:block;box-shadow:0 30px 80px #0000000f}.case-quote{text-align:center;max-width:980px;margin:180px auto}.case-quote p{letter-spacing:-.06em;color:#111;font-size:clamp(42px,5vw,68px);font-weight:500;line-height:1.12}.next-project{border-top:1px solid #ececec;margin-top:180px;padding-top:70px}.next-project span{letter-spacing:.18em;text-transform:uppercase;color:#888;margin-bottom:24px;font-size:12px;display:block}.next-project a{letter-spacing:-.05em;color:#111;font-size:64px;line-height:1;text-decoration:none;transition:all .3s;display:inline-block}.next-project a:hover{opacity:.55;transform:translate(10px)}@media (width<=900px){.case-study{width:calc(100% - 48px);padding:80px 0 160px}.case-showcase img{width:100%;margin-left:0}.case-grid{grid-template-columns:1fr;gap:36px;margin-bottom:90px}.case-text{margin-bottom:80px}.case-text h2{font-size:34px}.case-text p,.intro{font-size:18px}.case-image{margin:80px 0}.case-quote{margin:120px auto}.case-quote p{font-size:34px;line-height:1.25}.next-project{margin-top:120px}.next-project a{font-size:42px}}html,body,#root{width:100%;min-height:100%}body{color:#111;background:#f7f7f4;margin:0;overflow-x:hidden}img{max-width:100%;display:block}button,input,textarea{font:inherit}::selection{color:#fff;background:#111}
