:root{--paper:#f4f3eb;--ink:#20251e;--red:#943a2d;--lime:#e4e9bb;--line:#cccec1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'Apple SD Gothic Neo','Noto Sans KR',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:5px}header{height:86px;display:flex;align-items:center;justify-content:space-between;margin:0 4%;border-bottom:1px solid var(--line)}.brand{font-size:29px;font-weight:950;font-style:italic;letter-spacing:-2px}.brand span{font-size:13px;font-style:normal;letter-spacing:-1px;margin-left:9px;vertical-align:top;display:inline-block;padding-top:5px}nav{display:flex;gap:32px;font-size:13px}nav sup{font-size:9px;padding-left:3px}.header-note,.eyebrow,.card-meta,.caption,.filters,#result-count,footer,.photo-top,.photo-bottom a,.stats span,.closing>span{font-family:'Courier New',monospace;font-size:11px;letter-spacing:.04em}.hero,.archive{margin:0 4%}.hero-title{position:relative;padding:50px 0 32px}.eyebrow{display:block}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:8px}h1{font-size:clamp(50px,6.9vw,104px);line-height:.99;letter-spacing:-.065em;font-weight:500;margin:27px 0 0}h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.06em;color:var(--red)}.hero-side{position:absolute;right:0;bottom:36px;display:flex;align-items:flex-end;gap:50px;font-size:13px;line-height:1.7}.hero-side>a{font-size:50px;line-height:1}.hero-photo{height:520px;position:relative;overflow:hidden;color:white;background:#252c26}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 48%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0004,transparent 40%,#0008)}.photo-top,.photo-bottom{position:absolute;left:28px;right:28px;z-index:1;display:flex;justify-content:space-between}.photo-top{top:24px}.photo-bottom{bottom:30px;align-items:flex-end}.photo-bottom>span{font-size:26px;line-height:1.4;letter-spacing:-.04em}.photo-bottom a{padding-bottom:8px;border-bottom:1px solid #fff7}.photo-bottom b{font-size:25px;margin-left:22px}.caption{display:flex;justify-content:space-between;padding:14px 0;color:#73776b}.archive{padding:90px 0 85px}.section-head{display:flex;justify-content:space-between;align-items:end}.section-head h2{font-size:58px;letter-spacing:-3px;font-weight:500;margin:18px 0 30px}.section-head h2 span{font-size:15px;letter-spacing:-.03em;margin-left:20px;color:#727669}.section-head p{font-size:13px;line-height:1.8;margin-bottom:34px;color:#676d60}.filters{display:flex;gap:7px;border-top:1px solid var(--ink);padding:18px 0 28px;align-items:center}.filters button{border:1px solid var(--line);background:transparent;border-radius:30px;padding:10px 18px;font-size:12px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.filters sup{font-size:8px}#result-count{margin-left:auto;color:#73776b}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px 24px}.card{text-align:left;padding:0;background:none;border:0;min-width:0}.card-image{aspect-ratio:4/4.5;overflow:hidden;position:relative;background:#e5e5dd}.card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover img{transform:scale(1.035)}.card-arrow{position:absolute;bottom:15px;right:15px;border-radius:50%;background:var(--paper);width:35px;height:35px;display:grid;place-items:center;font-size:21px}.card-meta{display:flex;justify-content:space-between;margin-top:17px;color:#707567;font-size:9px}.card h3{font-size:21px;font-weight:500;letter-spacing:-.045em;margin:12px 0 8px}.card p{font-size:12px;margin:0;line-height:1.7;color:#73776b}.about{background:var(--lime);padding:48px 4% 40px}.about-body{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;padding:22px 0 40px}.about h2{font-size:clamp(35px,4.1vw,62px);font-weight:500;letter-spacing:-.06em;line-height:1.25;margin:12px 0}.about h2 em{font-style:normal;color:var(--red)}.about p{line-height:1.8;font-size:18px}.about p.muted{font-size:13px;color:#62674f}.text-link{display:inline-block;border-bottom:1px solid;padding:10px 0 6px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #b9c095;padding-top:25px}.stats span{display:block;margin-bottom:12px}.stats strong{font-size:clamp(19px,2.2vw,32px);font-weight:400;letter-spacing:-1px}.closing{padding:66px 4%;position:relative}.closing p{font-size:clamp(35px,6vw,80px);font-weight:500;letter-spacing:-.07em;margin:18px 0 0}.closing>a{position:absolute;right:4%;top:80px;font-size:40px}footer{margin:0 4%;padding:26px 0 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:9px}footer .brand{font-family:Arial,sans-serif;font-size:23px}dialog{border:0;background:var(--paper);padding:0;width:min(900px,92vw);max-height:90vh;color:var(--ink)}dialog::backdrop{background:#10180bd9;backdrop-filter:blur(5px)}.close{position:sticky;top:15px;float:right;z-index:2;margin:15px;background:var(--paper);border:1px solid var(--line);border-radius:30px;padding:10px 16px}.detail-image{width:100%;max-height:65vh;object-fit:contain;background:#dedfd6;display:block}.detail-copy{padding:32px}.detail-copy h2{font-size:32px;letter-spacing:-1px}.detail-copy p{font-size:15px;line-height:1.9}.modal-open{overflow:hidden}.skip{position:absolute;top:-100px}.skip:focus{top:5px;left:5px;z-index:10;background:white;padding:15px}@media(min-width:1600px){header,.hero,.archive,footer{max-width:1500px;margin-left:auto;margin-right:auto}}@media(max-width:760px){header{height:72px}.brand{font-size:24px}.header-note{display:none}nav{gap:17px;font-size:11px}.hero-title{padding-top:32px}h1{font-size:clamp(43px,8.9vw,67px);margin-top:22px}.hero-side{position:static;margin-top:25px;justify-content:space-between;font-size:12px}.hero-side>span br{display:none}.hero-side>a{font-size:32px}.hero-photo{height:430px}.photo-top{font-size:8px;left:16px;right:16px}.photo-top span:last-child{display:none}.photo-bottom{left:16px;right:16px;bottom:22px}.photo-bottom>span{font-size:22px}.photo-bottom a{font-size:8px}.photo-bottom b{margin-left:8px}.caption{font-size:8px}.archive{padding:55px 0}.section-head h2{font-size:43px;margin-bottom:23px}.section-head p{display:none}.filters{gap:5px;flex-wrap:wrap;padding:16px 0 24px}.filters button{padding:9px 12px;font-size:10px}#result-count{font-size:8px}.grid{grid-template-columns:repeat(2,1fr);gap:30px 13px}.card-meta{font-size:7px;gap:4px;flex-wrap:wrap}.card h3{font-size:17px;line-height:1.35}.card p{font-size:11px}.card-arrow{width:28px;height:28px;font-size:18px;bottom:10px;right:10px}.about{padding-top:34px}.about-body{grid-template-columns:1fr;gap:10px}.about p{font-size:16px}.about p.muted{font-size:12px}.stats{gap:14px}.stats strong{font-size:17px;letter-spacing:-.6px}.stats span{font-size:9px}.closing{padding:45px 4%}.closing>a{top:55px}footer{flex-wrap:wrap;gap:20px}footer>span{order:3;width:100%}.detail-copy{padding:24px}.detail-copy h2{font-size:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card img{transition:none}}

.records-empty{grid-column:1/-1;padding:40px 0;color:#73776b;font-size:14px}.project{border-bottom:1px solid var(--line)}#project-count{margin-left:auto}

.filters{flex-wrap:wrap}.group-count{margin-left:auto;color:#73776b}

.post-photo{margin:30px 0}.post-photo img{display:block;width:100%;height:auto}

/* Full-screen article reader. */
#record{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;border:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:0 0 90px}
#record>.close{position:sticky;top:16px;float:none;display:block;width:max-content;margin:16px 24px 0 auto;z-index:3;max-width:calc(100% - 48px)}
.reading-article{width:min(1120px,92%);margin:48px auto 0;overflow-wrap:anywhere}
.reading-heading,.reading-body,.reading-end{width:min(740px,100%);margin-left:auto;margin-right:auto}
.reading-heading{margin-bottom:48px}.reading-heading .eyebrow{line-height:1.8;opacity:.65}.reading-heading h2{font-size:clamp(30px,4.5vw,58px);line-height:1.2;letter-spacing:-.045em;font-weight:500;margin:22px 0}
.reading-cover{margin:0 0 56px}.reading-cover .detail-image{width:100%;height:auto;max-height:none;object-fit:contain;background:transparent}
.reading-body{font-size:17px;line-height:2;word-break:keep-all}.reading-body p{margin:0 0 28px}
.reading-photos .post-photo{margin:48px 0}.reading-photos img{display:block;width:100%;height:auto;max-height:none}
.reading-end{margin-top:50px}.reading-end .text-link{font-size:14px}
@media(max-width:760px){#record{padding-bottom:60px}#record>.close{top:12px;margin:12px 16px 0 auto}.reading-article{width:100%;margin-top:32px}.reading-heading,.reading-body,.reading-end{width:calc(100% - 40px)}.reading-heading{margin-bottom:30px}.reading-heading h2{font-size:32px}.reading-body{font-size:16px;line-height:1.95}.reading-cover{margin-bottom:32px}.reading-photos .post-photo{margin:24px 0}}

/* Journal layout: centered introduction and edge-to-edge photo pairs. */
#record{background:var(--paper);padding-bottom:80px}
.reading-brand{position:absolute;top:22px;left:3%;z-index:2;max-width:170px}.reading-brand img{max-width:100%}
.reading-article{width:94%;max-width:none;margin:65px auto 0}
.reading-heading{width:min(1100px,94%);text-align:center;margin:0 auto 65px}
.reading-heading h2{font-size:clamp(25px,2.7vw,44px);font-weight:700;letter-spacing:-.035em;line-height:1.4;margin:20px 0 32px}
.reading-heading .eyebrow{font-size:10px;letter-spacing:.08em}
.reading-summary{font-size:clamp(16px,1.5vw,23px);line-height:1.8;margin:0;white-space:pre-line}
.journal-photo-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0 0 40px;align-items:start}
.journal-photo-row.single{grid-template-columns:1fr}.journal-photo-row figure{min-width:0;margin:0}.journal-photo-row img{width:100%;height:auto;display:block}
.journal-photo-row figcaption{text-align:center;font-size:15px;line-height:1.9;padding:18px 24px 0;overflow-wrap:anywhere}
.reading-body{width:min(1100px,94%);text-align:center;font-size:17px;line-height:2;margin:36px auto 55px}.reading-end{text-align:center}
@media(max-width:760px){.reading-brand{top:20px;left:20px;max-width:110px}.reading-article{width:100%;margin-top:55px}.reading-heading{width:calc(100% - 40px);margin-bottom:34px}.reading-heading h2{font-size:26px;margin-bottom:22px}.reading-summary{font-size:15px}.journal-photo-row{grid-template-columns:1fr;margin-bottom:24px;gap:22px}.journal-photo-row figcaption{font-size:13px;padding:14px 20px 0}.reading-body{width:calc(100% - 40px);font-size:15px;text-align:left;margin:28px auto 36px}}

.reading-partners{font-size:12px;letter-spacing:.08em;line-height:1.8;margin:26px 0 0;white-space:pre-line}
.journal-photo-row.pair{grid-template-columns:var(--photo-columns,repeat(2,minmax(0,1fr)));column-gap:16px;row-gap:32px}
.journal-photo-row.split-pair{grid-template-columns:1fr}.journal-photo-row.single .portrait-photo,.journal-photo-row.split-pair .portrait-photo{width:min(820px,100%);margin-left:auto;margin-right:auto}
@media(max-width:760px){.journal-photo-row.pair{grid-template-columns:1fr;gap:24px}.reading-partners{font-size:11px;padding:0 8px}}

/* Keep cropped and uncropped logos inside the same compact mobile footprint. */
@media(max-width:760px){
 header .brand,.reading-brand{display:block;width:max-content;max-width:100px;font-size:28px;letter-spacing:-1px;flex-shrink:0}
 header .brand>img,#record .reading-brand>img{max-width:100%;max-height:40px}
 header .brand .logo-crop,.reading-brand .logo-crop{max-width:100%}
}
/* The article heading receives initial dialog focus; links retain keyboard rings. */
#record-title:focus{outline:none}
