*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#151515;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.4;letter-spacing:-.035em}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,.gallery:focus-visible{outline:2px solid #111;outline-offset:5px}.skip{position:fixed;top:-100px;padding:12px;background:#111;color:white;z-index:50}.skip:focus{top:8px}.header{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;padding:18px 24px;background:#fff;position:relative;z-index:10;gap:20px;font-size:13px;letter-spacing:-.03em}.brand{white-space:nowrap}.header nav{display:flex;justify-content:center;gap:12px}.social{display:flex;justify-content:flex-end;gap:12px}.tag{display:inline-block;padding:1px 6px;background:#efefed;font-size:12px;line-height:1.45;letter-spacing:-.025em;transition:background .18s,color .18s}.tag:hover,.tag.active{background:#151515;color:#fff}main{padding:0 24px;min-height:calc(100svh - 140px)}h1,h2,p{margin:0;font-weight:400}h1{font-size:32px;line-height:1.18;letter-spacing:-.055em}h2{font-size:inherit}ul{list-style:none;padding:0;margin:0}li{margin-top:10px}.muted{color:#777}.small{font-size:13px}.work-head{padding:70px 0 42px;display:flex;align-items:baseline;justify-content:space-between;gap:24px}.work-head p{color:#777;font-size:14px}.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.project-card{min-width:0}.cover{background:#f5f5f3;aspect-ratio:4/5;overflow:hidden}.cover img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .45s}.project-card:hover .cover img{transform:scale(1.018)}.card-caption{background:#f7f7f5;padding:12px;display:flex;gap:10px;justify-content:space-between;align-items:start;font-size:14px;min-height:64px}.category{background:#fff;padding:1px 4px;color:#777;font-size:12px;max-width:64%;text-align:right}.index-note{display:grid;grid-template-columns:1fr 2fr 1fr;gap:32px;border-top:1px solid #eee;margin-top:90px;padding-top:18px}.index-note>span{color:#777;font-size:13px}.index-note p{font-size:26px;line-height:1.2;max-width:550px;letter-spacing:-.045em}.index-note>.tag{justify-self:end;align-self:start}.contact-line{display:flex;justify-content:space-between;align-items:baseline;margin:110px 0 70px;border-top:1px solid #eee;padding-top:18px;font-size:26px;letter-spacing:-.045em}.contact-line>a:hover{text-decoration:underline}.about-intro{padding:70px 0 50px;max-width:1020px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:80px}.about-film video{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;background:#f4f4f2}.about-film>p{margin-top:12px}.about-info{display:grid;grid-template-columns:1fr 1fr;gap:45px 40px}.list-block{border-top:1px solid #eee;padding-top:15px}.list-block h2{color:#777;margin-bottom:12px;font-size:15px}.list-block p{max-width:30ch}.text-link{display:block;margin-top:10px}.text-link:hover{text-decoration:underline}.contact-intro{padding:70px 0 80px}.contact-intro h1{font-size:clamp(42px,6vw,88px);margin:25px 0 45px;line-height:1.04;max-width:1100px}.email-address{font-size:clamp(18px,3vw,38px);text-decoration:underline;text-underline-offset:6px;overflow-wrap:anywhere}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:650px;margin-bottom:70px}.project-head{padding:65px 0 35px;display:grid;grid-template-columns:1fr 2fr 1fr;align-items:start;gap:20px}.project-head>.tag{justify-self:start}.project-head>span{justify-self:end}.project-head p{margin-top:8px}.gallery{max-width:600px;margin:0 auto 70px}.track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.track::-webkit-scrollbar{display:none}.slide{flex:0 0 100%;aspect-ratio:4/5;scroll-snap-align:start;background:#fafaf8;min-width:0}.slide img{display:block;width:100%;height:100%;object-fit:contain}.gallery-controls{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.gallery-controls button{min-width:44px;min-height:30px}.counter{font-size:12px;font-variant-numeric:tabular-nums;color:#777;letter-spacing:0}.dots{display:flex;justify-content:center;gap:8px;margin:10px 0;flex-wrap:wrap}.dots button{width:20px;height:20px;background:transparent;position:relative;padding:0}.dots button:after{content:'';position:absolute;width:4px;height:4px;border-radius:50%;background:#ddd;left:8px;top:8px}.dots button[aria-current=true]:after{background:#111}.next-project{border-top:1px solid #eee;padding:20px 0 45px;display:flex;justify-content:space-between;gap:20px}.next-project>span:last-child{font-size:32px;letter-spacing:-.05em}footer{display:flex;justify-content:space-between;gap:20px;padding:20px 24px;font-size:12px;color:#777;border-top:1px solid #eee}footer>a:hover{color:#111}@media(min-width:1500px){.work-head,.about-intro,.contact-intro{padding-top:100px}.cover{aspect-ratio:4/5}}@media(max-width:1000px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-info{gap:32px 24px}.social{gap:6px}.header nav{gap:6px}}@media(max-width:700px){.header{padding:18px 20px;grid-template-columns:1fr auto;gap:22px 10px}.header nav{grid-column:2;grid-row:1;gap:6px}.social{grid-column:1/-1;justify-content:flex-start;gap:10px}.brand{font-size:12px}main{padding:0 20px}h1{font-size:29px}.work-head{padding:40px 0 28px;display:block}.work-head p{margin-top:12px}.work-grid{gap:24px 10px}.card-caption{padding:8px;display:block;min-height:70px;font-size:14px}.category{display:inline-block;max-width:100%;text-align:left;margin-top:5px;font-size:11px}.index-note{grid-template-columns:1fr;margin-top:60px;gap:16px}.index-note p{font-size:25px}.index-note>.tag{justify-self:start}.contact-line{margin:65px 0 45px;font-size:23px;gap:25px}.about-intro{padding:40px 0 35px}.about-grid{grid-template-columns:1fr;gap:35px}.about-info{gap:35px 20px}.contact-intro{padding:40px 0 60px}.contact-intro h1{font-size:45px}.project-head{padding:35px 0 25px;grid-template-columns:1fr auto;gap:22px}.project-head>.tag{grid-column:1/-1}.project-head>div{grid-column:1}.gallery{margin-bottom:50px}.next-project>span:last-child{font-size:26px}footer{padding:20px;flex-wrap:wrap;gap:12px}footer>span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html,.track{scroll-behavior:auto}.cover img,.tag{transition:none}}
/* Floating project index */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.home{overflow-x:hidden}.home .header{position:absolute;left:0;right:0;top:0}.home footer{border:0;position:relative;background:#fff}.floating-main{padding:0;min-height:0}.floating-gallery{position:relative;height:calc(100svh - 57px);min-height:570px;overflow:hidden;outline-offset:-4px}.floating-scene{position:absolute;inset:0;touch-action:pan-y;--card-width:clamp(300px,34vw,520px)}.float-card{position:absolute;left:50%;top:50%;width:var(--card-width);transform:translate(-50%,-50%) translate(var(--x,0px),var(--y,0px)) scale(var(--scale,0));opacity:0;z-index:var(--layer,0);transition:transform .8s cubic-bezier(.22,.8,.24,1),opacity .5s;will-change:transform;transform-origin:center;pointer-events:none;background:#efefed}.float-card.is-visible{opacity:1;pointer-events:auto}.float-caption{display:flex;justify-content:space-between;gap:12px;padding:5px 7px;align-items:center;font-size:16px;line-height:1.1;border-bottom:1px solid white}.view-case{background:#111;color:white;padding:1px 4px;font-size:14px}.float-photo{aspect-ratio:4/5;background:#f5f5f3}.float-photo img{width:100%;height:100%;display:block;object-fit:contain}.float-card:not(.is-current) .float-caption{visibility:hidden}.float-card:not(.is-current){cursor:pointer}.float-card.is-current:hover .view-case{background:#555}.floating-controls{position:absolute;bottom:37px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:20px;z-index:20}.floating-controls button{min-width:35px;min-height:26px}.floating-count{font-size:11px;color:#777;font-variant-numeric:tabular-nums;letter-spacing:0}.floating-hint{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:11px;color:#888;letter-spacing:-.02em}.float-card:focus-visible{outline:2px solid #111;outline-offset:5px}@media(max-width:700px){.floating-gallery{min-height:560px;height:calc(100svh - 54px)}.floating-scene{--card-width:min(72vw,360px)}.float-caption{font-size:14px}.view-case{font-size:12px}.floating-controls{bottom:40px}.floating-hint{bottom:14px;font-size:10px}.home footer{font-size:10px}.float-card{top:52%}}@media(prefers-reduced-motion:reduce){.float-card{transition:none}}
.float-card:not(.is-current) .float-caption{display:none}
