:root{--g:#1d3a2a;--y:#f5d94a}
*{box-sizing:border-box}body{margin:0;font:17px/1.6 Helvetica,Arial,sans-serif;color:#111;background:#fff}
a{color:inherit}header{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:baseline;padding:1.5rem 2rem}
.mark{display:block;line-height:0}.mark img{height:34px;width:auto;display:block}nav a{margin-left:1.5rem;text-decoration:none;letter-spacing:.1em;font-size:.9rem;text-transform:uppercase}nav a.on,nav a:hover{background:var(--y)}
main{max-width:1100px;margin:0 auto;padding:1rem 2rem 4rem}mark{background:var(--y);padding:0 .2em}
.about{display:grid;grid-template-columns:1fr 1.3fr;gap:3rem;align-items:start}@media(max-width:800px){.about{grid-template-columns:1fr}}
.portrait,.wide{width:100%;height:auto}.about .portrait{grid-column:1;grid-row:1/span 6}.about .txt{grid-column:2}@media(max-width:800px){.about .txt{grid-column:1}.about .portrait{grid-row:auto}}.label{letter-spacing:.2em;font-weight:700;margin-top:2rem}
.proj{margin:0 0 3rem}main:has(.proj){max-width:none;background:#000;padding:1.5rem max(1rem,calc((100% - 1100px)/2)) 3rem}main:has(.proj) .small{color:#aaa}.proj .cap{color:var(--y);padding:.8rem .3rem .6rem}.proj .cap a{color:var(--y)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.5rem}.grid img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#000}
.cap{margin-top:.8rem}.small{font-size:.8rem;color:#555}
.year{display:grid;grid-template-columns:100px 1fr;gap:2rem;border-top:1px solid #ddd;padding:1.2rem 0}.year h3{text-align:right;margin:0}.year p{margin:.2rem 0}
.c{text-align:center}.c h1{letter-spacing:.3em;font-weight:300;font-size:3rem}.marquee{overflow:hidden;white-space:nowrap;background:var(--y);padding:.5rem 0}.marquee span{display:inline-block;animation:m 25s linear infinite}@keyframes m{to{transform:translateX(-50%)}}
nav a{white-space:nowrap}@media(max-width:600px){header{padding:1rem;gap:.8rem}.mark img{height:26px}nav{width:100%;display:flex;justify-content:space-between}nav a{margin:0;font-size:.72rem;letter-spacing:.05em;padding:.1rem .2rem}main{padding:1rem 1rem 3rem}.year{grid-template-columns:60px 1fr;gap:1rem}}footer .green{background:var(--g);height:90px}footer .yellow{background:var(--y);padding:2rem;text-align:center}footer p{margin:0}