:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;color:#1d1d1f;background:#f5f5f7;font-size:16px;--ink:#1d1d1f;--muted:#626269;--blue:#0069d9;--ease:cubic-bezier(.2,.75,.25,1);scroll-behavior:smooth;scroll-padding-top:110px}
*{box-sizing:border-box}body{margin:0;line-height:1.55}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.06;letter-spacing:-.05em}a:focus-visible{outline:3px solid #007aff;outline-offset:6px}a{-webkit-tap-highlight-color:transparent}svg,img{display:block;max-width:100%}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.skip{position:fixed;left:15px;top:-100px;background:white;border-radius:12px;padding:1rem;z-index:100}.skip:focus{top:15px}
.header{position:fixed;top:20px;left:0;right:0;z-index:10;padding-inline:24px}.nav-shell{max-width:1120px;margin:auto;border:1px solid #ffffffa3;background:#ffffffb8;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-radius:100px;box-shadow:0 3px 6px #17171f03,0 12px 45px #17171f08;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:11px 14px 11px 27px}.brand{font-size:.94rem;font-weight:650;letter-spacing:-.02em;white-space:nowrap}.brand span{display:none}.header nav{display:flex;align-items:center;gap:28px;font-size:.875rem}.header nav a{transition:color .2s}.header nav a:hover{color:var(--blue)}.header nav .current{color:var(--blue)}.nav-contact{background:#1d1d1f;color:white;padding:.58rem 1.1rem;border-radius:100px}.header nav .nav-contact:hover{background:#36363a;color:white}
.intro{padding:174px 0 78px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:.75rem;font-weight:600;letter-spacing:.12em;color:var(--muted);margin-bottom:30px}.signal{width:8px;height:8px;border-radius:50%;background:#007aff;box-shadow:0 0 0 5px #007aff0d}.intro h1{font-size:clamp(5rem,10.2vw,9rem);font-weight:650;letter-spacing:-.075em;line-height:.97}.intro h1>span{color:#0071e3}.intro-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-top:34px}.intro-bottom>p{max-width:630px;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.42;color:#6a6a72;letter-spacing:-.03em}.explore-link{display:inline-flex;align-items:center;gap:10px;font-size:.875rem;white-space:nowrap;color:#0069d9;padding-bottom:5px}.explore-link:hover{text-decoration:underline}.explore-link svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.5}
.experiences{padding-bottom:64px}.section-label{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d9d9df;padding-top:24px;margin-bottom:29px;gap:20px}.section-label h2{font-size:1rem;letter-spacing:-.015em;font-weight:550}.section-label>span{font-size:.8rem;color:#74747d}.project-card{border:1px solid #e0e3e9;border-radius:32px;background:white;box-shadow:0 20px 60px #1c325408;overflow:hidden;transition:box-shadow .5s var(--ease),transform .5s var(--ease)}.project-card:hover{transform:translateY(-4px);box-shadow:0 28px 70px #1c325414}.project-link{display:grid;grid-template-columns:1.06fr 1fr;min-width:0}.project-link:focus-visible{outline-offset:-5px;border-radius:32px}.project-visual{position:relative;isolation:isolate;min-height:488px;background:radial-gradient(ellipse at 50% 34%,#243a56,#0c1626 60%,#090f19);overflow:hidden}.visual-grid{position:absolute;inset:0;z-index:-1;opacity:.09;background-image:linear-gradient(#90aedf 1px,transparent 1px),linear-gradient(90deg,#90aedf 1px,transparent 1px);background-size:45px 45px;mask-image:linear-gradient(transparent,#000)}.preview-fallback{position:absolute;width:100%;height:100%;object-fit:contain;padding:20px;filter:drop-shadow(0 28px 20px #0005);transition:transform .8s var(--ease)}.project-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#0c1422;opacity:0;transition:opacity .3s,transform .8s var(--ease)}.project-visual.has-preview .project-preview{opacity:1}.project-visual.has-preview .preview-fallback{visibility:hidden}.project-card:hover .project-preview,.project-card:hover .preview-fallback{transform:scale(1.035)}.visual-caption{position:absolute;left:28px;bottom:25px;right:28px;display:flex;justify-content:space-between;align-items:center;color:#c8d5e7;font-size:.68rem;letter-spacing:.12em;font-weight:550;pointer-events:none}.visual-caption>span{font-size:1.4rem;line-height:1;letter-spacing:0}.project-copy{padding:49px 45px 43px;display:flex;flex-direction:column;min-width:0}.project-number{font-size:.68rem;font-weight:600;letter-spacing:.11em;color:#727981;margin-bottom:24px}.project-number>span{margin-inline:7px;color:#afb6bf}.project-copy h3{font-size:clamp(2.4rem,4.5vw,4rem);font-weight:600;letter-spacing:-.055em;line-height:1.06}.project-copy h3>span{color:#0071e3}.project-copy>p:not(.project-number){color:#696972;font-size:1rem;line-height:1.65;margin-top:24px;max-width:390px}.project-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:25px 0 0;padding:0}.project-tags li{font-size:.7rem;line-height:1.5;white-space:nowrap;color:#607083;border:1px solid #e0e5eb;border-radius:100px;padding:6px 11px}.project-action{align-self:flex-start;display:inline-flex;gap:22px;align-items:center;background:#0071e3;color:#fff;padding:12px 19px;border-radius:100px;font-size:.875rem;font-weight:500;margin-top:32px;transition:background .3s}.project-card:hover .project-action{background:#007af0}.project-action svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}.coming-next{display:flex;align-items:center;gap:15px;padding-top:32px;font-size:.875rem;color:#73737d}.coming-next>span{display:grid;place-items:center;border:1px solid #dcdce3;border-radius:50%;width:30px;height:30px;font-size:1.2rem;font-weight:300;flex:none}.footer{border-top:1px solid #d9d9df;padding-block:27px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.8rem;color:#777781}.footer a:hover{color:#0069d9}.footer a>span{margin-left:8px}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.intro{padding-top:156px}.project-copy{padding:40px 32px}.project-copy h3{font-size:3rem}.project-visual{min-height:480px}.project-tags{gap:6px}.project-tags li{font-size:.68rem;padding-inline:9px}}
@media(max-width:700px){:root{scroll-padding-top:95px}.wrap{width:calc(100% - 40px)}.header{top:12px;padding-inline:12px}.nav-shell{padding:10px 10px 10px 18px;gap:12px}.brand{font-size:.84rem}.header nav{gap:17px;font-size:.8rem}.nav-contact{padding:.5rem .85rem}.intro{padding:130px 0 45px}.eyebrow{font-size:.65rem;letter-spacing:.1em;margin-bottom:25px;gap:9px}.intro h1{font-size:clamp(4.6rem,18vw,7rem)}.intro-bottom{align-items:flex-start;flex-direction:column;gap:24px;margin-top:25px}.intro-bottom>p{font-size:1.3rem;max-width:450px}.desktop-break{display:none}.explore-link{font-size:.85rem}.section-label{padding-top:21px;margin-bottom:23px}.section-label h2{font-size:.9rem}.section-label>span{font-size:.75rem}.project-card,.project-link:focus-visible{border-radius:25px}.project-link{grid-template-columns:minmax(0,1fr)}.project-visual{min-height:0;height:auto;aspect-ratio:1.16}.preview-fallback{padding:15px}.project-copy{padding:30px 26px 32px}.project-number{margin-bottom:21px}.project-copy h3{font-size:clamp(2.5rem,11vw,3.8rem)}.project-copy h3 br{display:none}.project-copy>p:not(.project-number){font-size:.96rem;margin-top:20px;max-width:100%}.project-tags{margin-top:21px;gap:8px}.project-tags li{font-size:.7rem;padding:6px 10px}.project-action{margin-top:27px}.visual-caption{left:24px;right:24px;bottom:22px}.coming-next{padding-top:25px;font-size:.8rem;line-height:1.6;gap:12px}.experiences{padding-bottom:45px}.footer{font-size:.75rem;padding-block:24px}}
@media(max-width:420px){.brand{font-size:0}.brand span{display:block;font-size:1rem}.header nav{gap:18px}.intro h1{font-size:4.7rem}.intro-bottom>p{font-size:1.2rem}.project-copy{padding:28px 23px}.project-copy h3{font-size:2.7rem}.footer{gap:15px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.project-card:hover,.project-card:hover .project-preview,.project-card:hover .preview-fallback{transform:none}}

#project-catalog{display:grid;gap:32px}
