:root{--paper:#efefed;--ink:#20211e;--line:#c9cac5;--glass:rgba(114,117,111,.48)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,summary{font:inherit}button{color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #b7ef54;outline-offset:5px}img{display:block;max-width:100%;height:auto}button{border:0}h1,h2,p{margin:0}h1,h2{font-weight:400}::selection{background:#ccff66;color:#20211e}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.glass,.site-header details,.menu-toggle,.card-tags span{background:var(--glass);border:1px solid #ffffff55;box-shadow:0 8px 20px #0000000c;color:white;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:7px}.site-header{position:fixed;z-index:20;left:50%;top:28px;transform:translateX(-50%);width:min(444px,calc(100vw - 40px))}.site-header details{overflow:hidden}.site-header summary{display:flex;align-items:center;justify-content:space-between;padding:12px 22px;font-size:20px;cursor:pointer;list-style:none}.site-header summary::-webkit-details-marker{display:none}.search-icon{width:21px;height:21px;border:1.5px solid white;border-radius:50%;position:relative;margin-right:5px}.search-icon:after{content:'';width:9px;height:1.5px;position:absolute;right:-6px;bottom:-3px;background:white;transform:rotate(48deg)}.site-header nav{border-top:1px solid #ffffff65;display:grid;gap:0;padding:13px 25px 20px}.site-header nav a{display:block;padding:8px 10px;font-size:16px;border-radius:4px}.site-header nav a:hover,.site-header nav a:focus-visible{background:#ffffff20}.site-header nav a[aria-current=page]{color:#e0ffa9}.menu-toggle{display:block;margin:10px auto 0;width:140px;height:18px;line-height:12px;font-size:13px}.project-grid{display:grid;grid-template-columns:1fr 1fr}.project-card{position:relative;aspect-ratio:1.43;overflow:hidden;background:#ddd;isolation:isolate}.project-card>img{width:100%;height:100%;object-fit:cover;transition:opacity .3s}.card-tags{position:absolute;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;gap:3px;padding-right:8%}.card-tags span{min-height:42px;display:flex;align-items:center;padding:10px 9px;font-size:clamp(11px,1.12vw,17px);line-height:1.25}.card-arrow{position:absolute;right:20px;bottom:12px;color:white;font-size:28px;opacity:0;transition:opacity .2s}.project-card:hover .card-arrow{opacity:1}.card-2{background:#8ccaff}.card-2>img{object-fit:contain;background:linear-gradient(130deg,#cbbcff,#63c8ff)}.little-card{background:#181a17}.little-composition{height:100%;display:flex;align-items:center;justify-content:center;padding:45px 26px 70px;gap:12px}.little-composition img{width:30%;height:100%;object-fit:contain}.little-composition img:nth-child(2){transform:translateY(15px)}footer{border-top:1px solid var(--line);padding:28px 4%;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:13px}.project-hero{height:min(900px,90svh);min-height:560px;position:relative;background:#e1e1dc;overflow:hidden}.hero-slideshow{width:100%;height:100%}.hero-slideshow img{width:100%;height:100%;object-fit:cover}.portrait{background:linear-gradient(130deg,#142c62,#86a4ca)}.portrait .hero-slideshow{padding:88px 20px 58px}.portrait .hero-slideshow img{object-fit:contain}.back-link{position:absolute;top:28px;left:28px;z-index:4;padding:12px 18px;font-size:14px}.project-label{position:absolute;top:28px;right:28px;z-index:3;padding:12px 16px;max-width:270px;font-size:13px;line-height:1.4}.project-label span{display:block;margin-top:6px;font-size:12px;opacity:.8}.hero-caption{position:absolute;bottom:26px;left:28px;font-size:10px;letter-spacing:.12em;color:white;text-shadow:0 1px 4px #555}.motion-control{position:absolute;bottom:22px;right:28px;width:40px;height:34px;font-size:15px}.project-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;padding:90px 6% 110px}.project-intro h1{font-size:clamp(42px,5.8vw,84px);letter-spacing:-.055em;line-height:1}.project-intro p{font-size:16px;line-height:1.6;margin-bottom:20px;max-width:540px}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:14px;margin-top:14px}.project-section{padding:0 6% 95px}.project-section h2{font-size:12px;letter-spacing:.04em;border-top:1px solid var(--line);padding:15px 0 26px}.image-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:start}.image-button{background:transparent;padding:0;display:block;width:100%;cursor:zoom-in}.image-button img{width:100%;height:auto}.image-grid .image-button:nth-child(3n+1){grid-column:1/-1}.next-project{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 3fr auto;align-items:center;gap:20px;padding:55px 6%}.next-project>span:first-child{font-size:12px}.next-project strong{font-size:clamp(25px,3vw,50px);font-weight:400;letter-spacing:-.04em}.next-project>span:last-child{font-size:40px}dialog{border:0;padding:60px;max-width:none;max-height:none;width:100vw;height:100svh;background:#121311f5;color:white;overflow:hidden}dialog::backdrop{background:#000c}dialog[open]{display:flex;align-items:center;justify-content:center}dialog img{max-width:calc(100vw - 170px);max-height:calc(100svh - 120px);width:auto;height:auto;object-fit:contain}dialog button{background:#ffffff15;border:1px solid #ffffff35;border-radius:50%;color:white;width:42px;height:42px;font-size:23px;position:absolute;z-index:2}.viewer-close{top:20px;right:24px}.viewer-prev{left:20px;top:50%}.viewer-next{right:20px;top:50%}.viewer-count{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);font-size:12px}.about-page,.contact-page{min-height:90svh;padding:180px 7% 100px;position:relative;overflow:hidden}.eyebrow{font-size:11px;letter-spacing:.12em;display:block;margin-bottom:40px}.about-page h1,.contact-page h1{font-size:clamp(60px,9vw,150px);line-height:.97;letter-spacing:-.065em;position:relative;z-index:1}.about-page em,.contact-page em{font-family:Georgia,serif;font-weight:400}.about-copy{margin:50px 0 0 45%;max-width:480px;position:relative;z-index:1}.about-copy p{font-size:20px;line-height:1.5;margin-bottom:20px}.about-mark{position:absolute;right:3%;top:190px;line-height:.65;font-family:Georgia,serif;font-size:38vw;color:#c6d4b9;letter-spacing:-.18em;opacity:.5;transform:rotate(-8deg);pointer-events:none}.about-mark span{font-style:italic}.contact-page{background:#dce9ce}.email-link{font-size:clamp(24px,4vw,60px);letter-spacing:-.04em;border-bottom:1px solid #20211e66;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0;max-width:900px;margin-top:60px}.contact-page>p{margin-top:25px;font-size:13px}.contact-page>.text-link{margin-top:55px}.gallery-page{background:#111;color:#eee;min-height:90svh;position:relative;padding:145px 5% 45px}.gallery-title{display:flex;justify-content:space-between;gap:20px;font-size:12px;margin-bottom:40px}.poster-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;align-items:center;min-height:50vh}.poster-gallery img{max-height:68vh;object-fit:contain}.gallery-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff30;padding-top:20px;margin-top:50px;font-size:11px}.gallery footer{background:#111;color:#ddd;border-color:#333}@media(min-width:1700px){.project-card{aspect-ratio:1.55}}@media(max-width:1000px){.site-header{width:350px}.site-header summary{font-size:17px;padding:12px 18px}.project-label{top:96px;right:20px;max-width:230px}.project-intro{gap:8%;padding-top:65px}.card-tags{padding-right:0}.card-arrow{display:none}.image-grid{gap:15px}.project-intro p{font-size:15px}}@media(max-width:700px){.site-header{width:min(330px,calc(100vw - 110px));top:18px}.site-header summary{font-size:15px;padding:11px 15px}.search-icon{width:17px;height:17px}.menu-toggle{width:100px;height:16px;margin-top:7px}.site-header nav{padding:9px 15px 15px}.site-header nav a{font-size:14px;padding:10px}.project-grid{grid-template-columns:1fr}.project-card{aspect-ratio:1.05}.card-tags{gap:2px}.card-tags span{font-size:11px;min-height:44px;padding:10px}.project-hero{height:78svh;min-height:500px}.back-link{left:12px;top:19px;width:35px;height:36px;font-size:0;padding:0;display:grid;place-items:center}.back-link:before{content:'←';font-size:17px}.project-label{right:15px;top:100px;max-width:210px;font-size:11px}.project-label span{font-size:10px}.portrait .hero-slideshow{padding:160px 15px 60px}.hero-caption{left:16px;font-size:9px}.motion-control{right:16px}.project-intro{grid-template-columns:1fr;gap:30px;padding:55px 6% 60px}.project-intro h1{max-width:90%}.project-intro p{font-size:16px}.project-section{padding-bottom:50px}.image-grid{grid-template-columns:1fr;gap:15px}.image-grid .image-button:nth-child(3n+1){grid-column:auto}.next-project{grid-template-columns:1fr auto;padding:35px 6%}.next-project>span:first-child{grid-column:1/-1}.next-project strong{font-size:25px}footer{font-size:11px;flex-wrap:wrap;padding:23px 6%}footer>span{display:none}dialog{padding:50px 12px}dialog img{max-width:calc(100vw - 24px);max-height:calc(100svh - 130px)}dialog .viewer-prev,dialog .viewer-next{top:auto;bottom:15px}.about-page,.contact-page{padding:145px 6% 65px;min-height:90svh}.about-copy{margin:40px 0 0 13%;max-width:90%}.about-copy p{font-size:17px}.about-mark{top:250px;font-size:60vw;right:0}.email-link{margin-top:45px}.gallery-page{padding:125px 5% 35px}.gallery-title{font-size:10px;margin-bottom:30px}.poster-gallery{grid-template-columns:1fr;gap:35px}.poster-gallery img{max-height:none}.gallery-bottom{flex-direction:column;line-height:1.5}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.gallery-controls{display:flex;justify-content:space-between;align-items:center;margin-top:30px;gap:20px}.gallery-controls button{padding:10px 18px;font-size:13px}.group-count{font-size:12px}.type-gallery{display:grid;gap:40px}.type-gallery[hidden],.poster-gallery[hidden]{display:none}.type-gallery img{max-height:65vh;object-fit:contain}
/* iOS-like tactile feedback: a short, springy press without changing the editorial layout. */
:root{--spring:cubic-bezier(.22,1,.36,1);--press:cubic-bezier(.2,.9,.2,1)}
button,summary,a{-webkit-tap-highlight-color:transparent}.is-pressable{transform-origin:center;transition:transform .36s var(--spring),filter .36s ease,opacity .28s ease,background-color .28s ease,box-shadow .36s var(--spring)}.is-pressable.is-pressed{transform:scale(.972);filter:brightness(.96)}.project-card.is-pressable{transition:transform .42s var(--spring),border-radius .42s var(--spring),box-shadow .42s var(--spring)}.project-card.is-pressable:hover{transform:scale(1.008);box-shadow:0 16px 38px #13131324;z-index:2}.project-card.is-pressable.is-pressed{transform:scale(.986);border-radius:12px;box-shadow:0 7px 18px #13131326}.image-button.is-pressable{border-radius:7px;overflow:hidden}.image-button.is-pressable.is-pressed{transform:scale(.985)}.site-header summary.is-pressable{transition:background-color .3s ease,transform .38s var(--spring)}.site-header nav a.is-pressable:hover{transform:translateX(4px);background:#ffffff2b}.site-header nav a.is-pressable.is-pressed{transform:translateX(2px) scale(.985)}.menu-toggle.is-pressable,.motion-control.is-pressable,dialog button.is-pressable,.gallery-controls button.is-pressable{transition:transform .35s var(--spring),background-color .28s ease,box-shadow .35s var(--spring)}.menu-toggle.is-pressable:hover,.motion-control.is-pressable:hover,dialog button.is-pressable:hover,.gallery-controls button.is-pressable:hover{background:#ffffff2a;box-shadow:0 9px 22px #0002}.menu-toggle.is-pressable.is-pressed,.motion-control.is-pressable.is-pressed,dialog button.is-pressable.is-pressed,.gallery-controls button.is-pressable.is-pressed{transform:scale(.88)}.text-link.is-pressable,.email-link.is-pressable,footer a.is-pressable{transition:transform .35s var(--spring),color .25s ease,opacity .25s ease}.text-link.is-pressable:hover,.email-link.is-pressable:hover,footer a.is-pressable:hover{transform:translateY(-2px);opacity:.65}.text-link.is-pressable.is-pressed,.email-link.is-pressable.is-pressed,footer a.is-pressable.is-pressed{transform:translateY(1px) scale(.985);opacity:.55}.site-header details[open] .search-icon{transform:rotate(90deg) scale(.9)}.search-icon{transition:transform .42s var(--spring)}
@media(prefers-reduced-motion:reduce){.is-pressable,.project-card.is-pressable,.menu-toggle.is-pressable,.motion-control.is-pressable,dialog button.is-pressable,.gallery-controls button.is-pressable{transition:none}.is-pressable.is-pressed{transform:none}}
/* Spacious project pacing and the original split introduction. */
.detail .project-intro{padding:110px 8% 150px;grid-template-columns:1fr 1fr;gap:15%}.detail .project-section{max-width:1160px;margin:auto;padding:0 7% 140px}.detail .image-grid{display:flex;flex-direction:column;gap:95px;align-items:flex-end}.detail .image-grid .image-button{width:62%;max-width:650px}.detail .image-grid .image-button:nth-child(4n+2){width:74%;max-width:760px;align-self:center}.detail .image-grid img{max-height:740px;object-fit:contain}.detail .project-section h2{margin-bottom:50px}.detail .project-hero{height:78svh;min-height:500px}.detail .hero-slideshow{padding:95px 8% 65px}.detail .hero-slideshow img{object-fit:contain}.original-intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:170px 8% 100px;min-height:100svh;align-items:start}.letter-stage{position:sticky;top:40vh;padding-top:105px}.interactive-name{display:flex;align-items:center;justify-content:center}.letter{background:none;padding:0;font:clamp(55px,8.2vw,130px)/1 Georgia,serif;letter-spacing:-.08em;min-width:.5em;transition:transform .65s cubic-bezier(.22,1,.36,1),color .4s}.letter span{display:inline-block;transition:transform .65s cubic-bezier(.22,1,.36,1)}.letter:hover{transform:translateY(-15px) rotate(-5deg);color:#56793a}.letter:nth-child(even):hover{transform:translateY(12px) rotate(6deg)}.letter[data-style="1"]{font-family:Arial,sans-serif;font-weight:700}.letter[data-style="2"]{font-family:Georgia,serif;font-style:italic;font-weight:400}.letter[data-style="3"]{font-family:monospace;font-weight:300}.letter-hint{display:block;text-align:center;font-size:9px;letter-spacing:.12em;color:#8a8b84;margin-top:35px}.original-copy p{font-size:clamp(25px,3.8vw,56px);line-height:1.22;letter-spacing:-.045em;margin-bottom:65px}.original-copy p+p{font-size:clamp(21px,2.6vw,38px);line-height:1.35;color:#707269}.reveal{opacity:0;transform:translateY(24px);transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}.reveal.is-visible{opacity:1;transform:none}.project-card>img{transition:opacity .55s ease,filter .5s ease}.image-button img{transition:transform .8s cubic-bezier(.22,1,.36,1)}.image-button:hover img{transform:scale(1.015)}.site-header nav{animation:menu-in .35s cubic-bezier(.22,1,.36,1)}@keyframes menu-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media(max-width:700px){.original-intro{grid-template-columns:1fr;gap:65px;padding:150px 8% 70px}.letter-stage{position:relative;top:auto;padding-top:20px}.letter{font-size:18vw}.original-copy p{font-size:32px;margin-bottom:45px}.original-copy p+p{font-size:23px}.detail .project-intro{grid-template-columns:1fr;gap:35px;padding:65px 8% 90px}.detail .project-section{padding:0 8% 85px}.detail .image-grid{gap:60px}.detail .image-grid .image-button{width:85%}.detail .image-grid .image-button:nth-child(4n+2){width:100%}.detail .project-section h2{margin-bottom:25px}.detail .hero-slideshow{padding:140px 7% 60px}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.letter:hover{transform:none}}
