: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.notion{--accent:#5645d4;--ink:#1a1a1a;--line:#e5e3df}.notion .hero{background-color:#0a1530;background-image:radial-gradient(#415078 1px,transparent 1px);background-size:27px 27px;color:white;padding-block:var(--section)}.notion .workspace-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,5vw,65px)}.notion h1{font-size:clamp(2.9rem,5.5vw,5.7rem);font-weight:760}.notion .kicker{color:#d6b6f6}.notion .lead{color:#dadff0}.notion .window{padding:0;background:white;color:#1a1a1a;border:1px solid #b4aed3;border-radius:14px;box-shadow:0 20px 52px #0005;min-width:0}.notion .window:target{outline:3px solid #d6b6f6;outline-offset:6px}.notion .window-top{padding:13px 18px;border-bottom:1px solid var(--line);background:#f6f5f4;border-radius:13px 13px 0 0;font-size:.85rem}.notion .window-top span{margin-inline:4px;color:#696861}.notion .window-body{padding:22px 17px}.notion .window h2{font-size:1.85rem;margin-bottom:18px}.notion details{border-top:1px solid var(--line)}.notion details p{font-size:.93rem;padding:0 10px 14px;color:#5d5b54}.notion summary{padding:13px 4px;cursor:pointer;min-height:52px}.notion summary:hover{background:#fafaf9}.notion summary strong{font-size:.94rem}.notion .pill{display:inline-block;padding:1px 6px;border-radius:4px;font-size:.78rem;margin:0 6px 0 3px;white-space:nowrap}.notion .p0{background:#ffe8d4}.notion .p1{background:#d9f3e1}.notion .p2{background:#e6e0f5}.notion .contact{background:#e6e0f5}@media(max-width:760px){.notion .workspace-layout{grid-template-columns:1fr}}
