:root{--ink:#1d1d1f;--muted:#5f6065;--bg:#fff;--line:#dedee0;--accent:#0066cc;--width:1240px;--pad:clamp(20px,5vw,72px);--section:clamp(64px,9vw,132px);font-family:"Pretendard","Apple SD Gothic Neo","Noto Sans KR",system-ui,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #2379ef;outline-offset:4px}img{width:100%;height:100%;display:block;object-fit:cover}figure{margin:0}h1,h2,h3,p{margin:0;word-break:keep-all;overflow-wrap:anywhere}h1,h2,h3{text-wrap:balance}h1{font-size:clamp(3rem,7.8vw,7rem);line-height:1.02;letter-spacing:-.075em}h2{font-size:clamp(1.8rem,4.3vw,3.4rem);line-height:1.14;letter-spacing:-.065em}h3{font-size:clamp(1.2rem,2.35vw,1.75rem);line-height:1.25;letter-spacing:-.045em}p,li{line-height:1.7}section,article{scroll-margin-top:20px}.wrap{width:min(100%,var(--width));padding-inline:var(--pad);margin-inline:auto}.bar{border-bottom:1px solid var(--line)}.bar .wrap,footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px}.bar .wrap{min-height:66px}.wordmark{font-size:1.12rem;font-weight:800;letter-spacing:-.05em}.bar nav{display:flex;gap:clamp(12px,3.5vw,40px)}.bar a{min-height:44px;display:inline-flex;align-items:center}.bar a:hover{text-decoration:underline;text-underline-offset:.25em}.kicker{font-size:.88rem;letter-spacing:.06em;font-weight:700;margin-bottom:18px}.lead{font-size:clamp(1rem,2vw,1.32rem);margin-top:20px;color:var(--muted)}.action{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--accent);color:white;padding:10px 20px;border-radius:99px;font-weight:700;margin-top:24px}.action:hover{text-decoration:underline;text-underline-offset:.18em}.about,.work,.contact{padding-block:var(--section)}.about .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(20px,6vw,100px);align-items:start}.about p{margin-top:20px;color:var(--muted);max-width:54ch}.strengths{padding-inline-start:1.7em;margin:0}.strengths li{padding:14px 0;border-top:1px solid var(--line)}.strengths li::marker{font-weight:700}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}.work-card img{aspect-ratio:4/3;height:auto}.card-copy{padding:18px 0}.card-copy p{margin-top:8px;color:var(--muted)}.contact{background:#f5f5f7;--section:clamp(44px,6vw,86px)}.contact p:first-of-type{margin-top:18px}.contact p span,.contact p:last-child{color:var(--muted);font-size:.9rem}.contact code{font-size:1em;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding-block:20px;color:var(--muted);font-size:.83rem}.skip{position:absolute;z-index:10;top:8px;left:8px;background:#fff;color:#111;padding:12px;transform:translateY(-150%)}.skip:focus{transform:none}@media(max-width:680px){.gallery,.about .wrap{grid-template-columns:1fr}.gallery{gap:24px}footer .wrap{align-items:flex-start;flex-direction:column}}

body.claude{background:#faf9f5;--line:#e6dfd8;--ink:#181715;--muted:#615a51;--accent:#93492f}.claude h1,.claude h2,.claude h3{font-family:"Nanum Myeongjo","AppleMyungjo","Noto Serif KR",Georgia,serif;font-weight:700;letter-spacing:-.06em}.claude .hero{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(28px,6vw,86px);padding-block:var(--section);align-items:center}.claude h1{font-size:clamp(2.9rem,6vw,6.1rem);line-height:1.12}.claude .lead{font-size:1.08rem;max-width:48ch}.claude .kicker,.claude figcaption{color:var(--accent)}.claude .hero figure{background:#efe9de;padding:12px;border:1px solid #e0d5c9;border-radius:3px;transform:rotate(2deg)}.claude .hero img{aspect-ratio:4/4.3;height:auto}.claude figcaption{padding:10px 3px 2px;font-size:.86rem}.claude .action{border-radius:9px}.claude .work{background:#181715;color:#faf9f5}.claude .work .card-copy p{color:#d5cbbd}.claude .work-card{padding:10px 20px;border:1px solid #514a43;border-radius:10px;background:#252320}.claude .principles{padding-block:var(--section);display:grid;grid-template-columns:1fr 1fr;gap:36px}.claude .contact{background:#efe9de}@media(max-width:680px){.claude .hero,.claude .principles{grid-template-columns:1fr}.claude .hero figure{transform:none}.claude .hero img{aspect-ratio:1.55}}
