:root{--line:#ffffff40;--max:1440px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#000;color:#fff;font-family:Inter,"Helvetica Neue","Yu Gothic",YuGothic,Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}img,video{display:block;width:100%}.site-header{height:88px;background:#fff;color:#000;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,80px);position:sticky;top:0;z-index:20;border-bottom:1px solid #bbb}.brand{display:flex;align-items:center;gap:12px;font-weight:650}.brand img{width:40px;height:40px;object-fit:cover}.site-header nav{display:flex;gap:clamp(22px,4vw,64px)}.site-header nav a,.back-link{border-bottom:1px solid transparent}.site-header nav a:hover,.back-link:hover{border-color:currentColor}.eyebrow{font-size:.75rem;letter-spacing:.2em;color:#aaa;margin:0 0 24px}.hero{min-height:calc(100vh - 88px);max-width:var(--max);margin:auto;padding:clamp(64px,8vw,120px) clamp(24px,5vw,80px);display:grid;grid-template-columns:1fr minmax(280px,480px);gap:8vw;align-items:center}.hero h1,.section-head h2,.contact h2,.detail-title h1{font-size:clamp(3.4rem,7vw,7.5rem);font-weight:500;line-height:.95;letter-spacing:-.06em;margin:0}.hero h1 span{color:#888;font-size:.76em}.lead{color:#ccc;max-width:650px;margin-top:42px}.profile-icon{aspect-ratio:1;object-fit:cover;background:#fff}.works{max-width:var(--max);margin:auto;padding:110px clamp(24px,5vw,80px);border-top:1px solid var(--line)}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:84px}.section-head>p{color:#aaa;font-size:.8rem}.work-card{display:grid;grid-template-columns:.42fr 1fr;gap:5vw;padding:64px 0;border-top:1px solid var(--line)}.work-title{position:sticky;top:130px;align-self:start}.work-title p{color:#888;font-size:.75rem}.work-title h3{font-size:clamp(3rem,6vw,6rem);line-height:1;letter-spacing:-.06em;margin:28px 0}.work-title span{display:inline-block;border-bottom:1px solid #777;padding-bottom:6px}.work-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.work-pair figure{margin:0;background:#222}.work-pair img{height:620px;object-fit:contain;transition:transform .5s}.work-card:hover .work-pair img{transform:scale(1.015)}figcaption{padding:10px 14px;border-top:1px solid var(--line);font-size:.75rem;color:#aaa}.contact{background:#fff;color:#000;padding:120px clamp(24px,7vw,112px)}.contact .eyebrow{color:#666}.contact-links{margin-top:70px}.contact-links a{display:grid;grid-template-columns:120px 1fr auto;align-items:center;padding:22px 0;border-top:1px solid #000}.contact-links a:last-child{border-bottom:1px solid #000}.contact-links strong,.contact-links b{font-weight:400}footer{background:#fff;color:#000;display:flex;justify-content:space-between;padding:28px clamp(24px,7vw,112px);font-size:.75rem}.detail-header .brand{margin-right:auto}.detail-header .back-link{margin-right:40px}.detail-main{max-width:var(--max);margin:auto;padding:80px clamp(24px,5vw,80px) 130px}.detail-title{display:flex;align-items:end;justify-content:space-between;padding:20px 0 70px}.detail-title p{color:#aaa;max-width:400px}.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-hero figure,.gallery figure{margin:0;background:#222}.detail-hero img{height:min(72vh,780px);object-fit:contain}.detail-section{padding:100px 0;border-top:1px solid var(--line);margin-top:100px}.detail-section h2{font-size:clamp(2.5rem,5vw,5rem);line-height:1;margin:0 0 50px;letter-spacing:-.05em}.overview-stack{display:grid;gap:16px}.overview-stack img{background:#fff}.turntable{background:#222}.turntable video{max-height:820px;object-fit:contain}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery img{aspect-ratio:1;object-fit:cover}.texture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#333}.texture-grid figure{margin:0;background:#111}.texture-grid img{aspect-ratio:1;object-fit:contain;background:#fff}.next-project{display:flex;justify-content:space-between;align-items:center;padding:38px 0;border-top:1px solid #fff;border-bottom:1px solid #fff;font-size:clamp(1.5rem,4vw,4rem)}
@media(max-width:900px){.site-header{height:72px}.hero{grid-template-columns:1fr;min-height:auto}.profile-icon{width:min(100%,480px)}.work-card{grid-template-columns:1fr}.work-title{position:static}.work-pair img{height:500px}.detail-title{display:block}.detail-title p{margin-top:30px}.detail-hero{grid-template-columns:1fr}.gallery,.texture-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.brand span{display:none}.site-header nav{gap:16px}.hero h1{font-size:3rem}.works{padding-top:80px}.section-head>p{display:none}.work-pair{grid-template-columns:1fr 1fr}.work-pair img{height:auto;aspect-ratio:3/4}.contact-links a{grid-template-columns:58px 1fr auto;font-size:.84rem}.contact-links strong{overflow-wrap:anywhere}.detail-header nav{display:none}.detail-header .back-link{margin-right:0}.detail-main{padding-top:45px}.detail-hero img{height:auto}.gallery,.texture-grid{grid-template-columns:1fr}.detail-section{padding-top:70px;margin-top:70px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.links-main{max-width:var(--max);margin:auto;min-height:calc(100vh - 88px);padding:clamp(72px,9vw,140px) clamp(24px,7vw,112px)}.links-title{display:grid;grid-template-columns:.4fr 1fr;align-items:end;padding-bottom:70px}.links-title .eyebrow{margin:0 0 12px}.links-title h1{font-size:clamp(4.5rem,11vw,10rem);font-weight:500;line-height:.8;letter-spacing:-.07em;margin:0}.link-list{border-top:1px solid #fff}.link-list a{display:grid;grid-template-columns:72px 1fr 1fr auto;gap:28px;align-items:center;padding:24px 4px;border-bottom:1px solid var(--line);transition:background .2s,color .2s,padding .2s}.link-list a:hover,.link-list a:focus-visible{background:#fff;color:#000;padding-left:18px;padding-right:18px}.link-list strong{font-size:clamp(1.4rem,3vw,2.5rem);font-weight:500;letter-spacing:-.03em}.link-no,.link-id{color:#999;font-size:.8rem}.link-list a:hover .link-no,.link-list a:hover .link-id{color:#555}.site-header [aria-current="page"]{border-color:currentColor}@media(max-width:600px){.links-main{min-height:calc(100vh - 72px);padding-top:80px}.links-title{display:block}.links-title .eyebrow{margin-bottom:30px}.link-list a{grid-template-columns:42px 1fr auto;gap:12px}.link-id{display:none}.link-list strong{font-size:1.35rem}}
