*{box-sizing:border-box}body{margin:0;background:#f1efe9;color:#111;font-family:Arial,"Noto Sans KR",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{padding:28px 4vw;display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid #ccc8bf;font-size:12px}.brand b{font-size:15px}.brand em{font-size:11px}main{padding:80px 4vw 100px;min-height:80vh}.intro h1{font-size:clamp(64px,10vw,140px);letter-spacing:-.07em;line-height:.95;margin:0 0 30px;white-space:pre-line}.intro p{color:#666;line-height:1.7;white-space:pre-line}nav{display:flex;flex-wrap:wrap;gap:10px;margin:55px 0 40px}nav button,#retry{background:transparent;border:1px solid #b6b2a9;border-radius:24px;padding:12px 24px}nav button[aria-pressed=true]{background:#111;color:#fff;border-color:#111}.works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 24px}.thumb{display:block;position:relative;width:100%;padding:0;border:0;background:#ddd;aspect-ratio:16/9;overflow:hidden}.thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.thumb:hover img{transform:scale(1.03)}.thumb span{position:absolute;bottom:12px;left:12px;background:#f1efe9;padding:8px 11px;font-size:10px;letter-spacing:.12em}.thumb:disabled{cursor:default}.work small{display:block;border-top:1px solid #777;padding-top:12px;margin-top:14px;color:#666}.work h2{font-size:22px;letter-spacing:-.03em;line-height:1.3;margin:10px 0}.work p{color:#666;font-size:13px;line-height:1.65;margin:0}.work h2,.work p{white-space:pre-line;overflow-wrap:anywhere}footer{padding:30px 4vw;border-top:1px solid #ccc8bf;font-size:11px}dialog{width:min(1200px,94vw);border:0;background:#111;color:white;padding:16px}dialog::backdrop{background:#000d}dialog form{text-align:right;margin-bottom:12px}dialog button{background:none;border:0;color:white;padding:8px}dialog iframe{display:block;width:100%;aspect-ratio:16/9;border:0}body:has(dialog[open]){overflow:hidden}:focus-visible{outline:3px solid #946b35;outline-offset:4px}@media(max-width:1000px){.works{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){main{padding:55px 20px 70px}header{padding:22px 20px}.works{grid-template-columns:1fr;gap:38px}nav{gap:8px;margin-top:35px}nav button{padding:10px 16px}.intro h1{font-size:64px}dialog{width:100vw;padding:8px;max-width:100vw}}