*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#eadbda;color:#2b2725;font-family:Georgia,"Times New Roman",serif}
body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
.site-header{position:sticky;top:0;z-index:20;height:78px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(234,219,218,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(92,76,72,.20)}
.brand{display:inline-block;text-align:center;font-size:16px;letter-spacing:.20em;font-weight:400}.brand span{display:block;margin-top:6px;font-size:9px;letter-spacing:.48em}
nav{display:flex;gap:28px;font-size:11px;letter-spacing:.22em}nav a.active{border-bottom:1px solid #2b2725;padding-bottom:6px}
.work-intro{padding:11vh 7vw 7vh;text-align:center}.work-intro h1{font-size:clamp(48px,6vw,76px);line-height:.95;font-weight:400;letter-spacing:.02em;margin:0}
.projects{display:grid;grid-template-columns:repeat(2,270px);justify-content:center;gap:5.5vw;padding:1vh 5vw 14vh;align-items:start}.project-card:nth-child(3){grid-column:1 / span 2;justify-self:center;width:270px}.project-card{display:flex;flex-direction:column;align-items:center;width:270px;padding:0;border:0;background:none;cursor:pointer;text-align:center;color:#2b2725}.project-card img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;box-shadow:0 10px 28px rgba(60,45,42,.08);transition:transform .6s ease,box-shadow .6s ease}.project-card:hover img{transform:translateY(-3px);box-shadow:0 15px 34px rgba(60,45,42,.13)}.project-card span{margin-top:19px;font-size:13px;letter-spacing:.28em;font-weight:400}
.site-footer{padding:0 5vw 42px}.footer-line{height:1px;background:rgba(92,76,72,.42);margin-bottom:24px}.footer-row{display:flex;gap:28px;align-items:center;flex-wrap:wrap;font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:#665d59}.footer-row span:last-child{margin-left:auto}.footer-instagram{display:block;width:27px;height:27px;color:#665d59;margin:28px auto 0;opacity:.95}.footer-instagram img{display:block;width:100%;height:100%}
.album-window{position:fixed;inset:0;background:rgba(35,28,27,.72);backdrop-filter:blur(7px);z-index:40;display:none;padding:5vh 4vw}.album-window.open{display:flex;align-items:center;justify-content:center}.album-panel{width:min(1180px,94vw);height:min(88vh,980px);overflow:auto;background:#f7f3ef;box-shadow:0 25px 80px rgba(0,0,0,.28);padding:0 4vw 5vw}.album-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;padding:28px 0 20px;background:rgba(247,243,239,.97);border-bottom:1px solid #d7d0c7}.album-toolbar h2{margin:0;font-size:clamp(30px,4vw,54px);font-weight:400;letter-spacing:.04em}.album-toolbar .count{display:block;margin-top:7px;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#777}.album-close{border:0;background:none;color:#1b1b1b;font-size:34px;line-height:1;cursor:pointer;padding:4px 0 0 20px}.album-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:24px}.album-grid figure{margin:0;background:#e8e4dd;overflow:hidden;cursor:pointer}.album-grid img{display:block;width:100%;height:auto;transition:transform .5s ease}.album-grid figure:hover img{transform:scale(1.012)}
.album-end{padding:9vh 0 2vh;text-align:center}.album-end .album-note{margin:0;font-size:15px;line-height:1.6;letter-spacing:.02em;color:#4e4844}.album-end .album-instagram{display:block;width:32px;height:32px;margin:27px auto;color:#665d59}.album-end .album-instagram img{display:block;width:100%;height:100%}.album-end .album-note-en{margin:0;font-size:15px;line-height:1.6;letter-spacing:.02em;color:#4e4844}
.lightbox{position:fixed;inset:0;background:rgba(12,12,12,.95);z-index:60;display:none;align-items:center;justify-content:center;padding:4vw}.lightbox.open{display:flex}.lightbox img{max-width:94vw;max-height:90vh;object-fit:contain}.lightbox button{border:0;background:none;color:white;cursor:pointer}.close{position:absolute;top:18px;right:25px;font-size:32px}.prev,.next{position:absolute;top:50%;transform:translateY(-50%);font-size:38px;padding:20px}.prev{left:8px}.next{right:8px}
@media(max-width:800px){.project-card:nth-child(3){grid-column:1 / span 2;justify-self:center;width:calc((100% - 12px)/2)}.site-header{height:68px;padding:0 20px}.brand{display:inline-block;text-align:center;font-size:13px}.brand span{font-size:7px}.work-intro{padding:9vh 20px 6vh}.projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px;padding:0 20px 12vh}.project-card{width:100%;max-width:none}.project-card span{margin-top:14px;font-size:11px}.album-window{padding:0}.album-panel{width:100%;height:100%;padding:0 20px 35px}.album-toolbar{padding-top:20px}.album-grid{grid-template-columns:1fr;gap:10px}nav{gap:15px;font-size:8px}.site-header{overflow-x:auto}.site-header nav{white-space:nowrap}.footer-row{gap:16px}.footer-row span:last-child{margin-left:0}}
@media(max-width:480px){.projects{display:grid;grid-template-columns:1fr 1fr;gap:22px 12px}.project-card{width:100%}.project-card span{font-size:10px;letter-spacing:.20em}.album-end{padding-top:7vh}.album-end .album-note,.album-end .album-note-en{font-size:14px}}

/* Discourage casual image selection/dragging; not a guarantee against saving. */
.album-grid img,.project-card img,.lightbox img{ -webkit-user-drag:none; user-select:none; -webkit-user-select:none; -webkit-touch-callout:none; }
