 :root{--ink:#111;--muted:#666;--paper:#f7f7f5;--white:#fff;--soft:#ececeb;--line:#ddd;--accent:#888;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif;line-height:1.8}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}.narrow{width:min(820px,calc(100% - 40px));margin:0 auto}.center{text-align:center}.site-header{position:sticky;top:0;z-index:50;background:rgba(247,247,245,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;flex-direction:column;line-height:1.2}.brand strong{font-family:Georgia,serif;letter-spacing:.12em;font-size:20px}.brand span{margin-top:5px;color:var(--muted);font-size:11px;letter-spacing:.1em}.site-nav{display:flex;align-items:center;gap:24px}.menu{list-style:none;display:flex;gap:20px;margin:0;padding:0}.phone-link{border:1px solid var(--ink);border-radius:999px;padding:9px 16px;font-weight:700}.menu-toggle{display:none;border:0;background:transparent;font-weight:700}.hero{position:relative;min-height:calc(100vh - 78px);display:flex;align-items:center;overflow:hidden}.hero-bg,.closing-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-bg{object-position:center top}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,247,245,.98),rgba(247,247,245,.74) 44%,rgba(247,247,245,.06) 76%)}.hero-content{position:relative;z-index:2}.eyebrow{color:var(--accent);font-weight:800;font-size:12px;letter-spacing:.18em}.hero h1,h2,.page-header h1{font-family:Georgia,"Noto Serif KR",serif;letter-spacing:-.04em}.hero h1{font-size:clamp(54px,7vw,96px);line-height:1.05;margin:18px 0 26px;max-width:800px}.hero-text{max-width:650px;color:#4f4f4f;font-size:19px}.buttons{display:flex;gap:12px;margin-top:32px}.button{display:inline-flex;min-height:50px;padding:0 24px;border-radius:999px;align-items:center;justify-content:center;font-weight:800}.button.dark{background:var(--ink);color:#fff}.button.light{background:rgba(255,255,255,.82);border:1px solid var(--line)}.section{padding:112px 0}.intro h2,.section-head h2,.section-title h2,.dark-section h2,.philosophy h2,.soft-section h2,.closing h2{font-size:clamp(36px,5vw,62px);line-height:1.18;margin:12px 0 28px}.intro p{color:#555;font-size:18px}.portfolio{background:#fff}.section-head{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end;margin-bottom:50px}.section-head>p{color:var(--muted)}.gallery{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.gallery figure{margin:0;overflow:hidden;border-radius:var(--radius);background:var(--soft)}.gallery img{width:100%;height:100%;object-fit:cover}.gallery .tall{grid-row:span 2}.gallery .tall img{aspect-ratio:3/5}.gallery figure:not(.tall):not(.wide) img{aspect-ratio:4/3}.gallery .wide{grid-column:1/-1}.gallery .wide img{aspect-ratio:16/7;object-position:center 35%}.dark-section{background:#111;color:#f5f5f5}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.dark-section p{color:#c9c9c9}.dark-section blockquote{margin:28px 0;border-left:3px solid #999;background:rgba(255,255,255,.05);padding:20px 24px;font-size:20px}.rounded{border-radius:var(--radius)}.philosophy{background:#f0f0ee}.split-text{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}.split-text p{color:#555;font-size:18px}.experience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}.experience-grid>div{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;min-height:240px}.experience-grid strong{display:block;font-size:20px;margin-bottom:12px}.experience-grid p{color:var(--muted)}.soft-section{background:linear-gradient(135deg,#e8e8e6,#fafafa)}.text-grid{align-items:start}.lines{border-top:1px solid #ccc}.lines>div{display:grid;grid-template-columns:190px 1fr;gap:25px;padding:22px 0;border-bottom:1px solid #ccc}.lines p{margin:0;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-weight:800;font-size:18px}details p{color:var(--muted)}.closing{position:relative;min-height:760px;display:flex;align-items:center;overflow:hidden}.closing-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,247,245,.97),rgba(247,247,245,.68) 52%,rgba(247,247,245,.04))}.closing-content{position:relative;z-index:2}.closing-content p{max-width:650px;color:#555;font-size:18px}.site-footer{padding:58px 0 24px;background:#111;color:#e8e8e8}.footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer-inner>div:last-child{text-align:right}.content-page{padding:80px 0 110px}.page-header{text-align:center;padding-bottom:40px}.page-header h1{font-size:clamp(42px,6vw,70px);line-height:1.15}.page-content{font-size:18px}@media(max-width:900px){.section-head,.two-column,.split-text{grid-template-columns:1fr}.experience-grid{grid-template-columns:1fr 1fr}.menu{display:none}.menu-toggle{display:block}.phone-link{display:none}.site-nav.open .menu{display:flex;position:absolute;top:78px;left:0;right:0;padding:24px 20px;flex-direction:column;background:var(--paper);border-bottom:1px solid var(--line)}}@media(max-width:640px){.wrap,.narrow{width:min(100% - 28px,1180px)}.hero{min-height:720px;align-items:end;padding-bottom:52px}.hero-bg{object-position:58% top}.hero-shade{background:linear-gradient(0deg,rgba(247,247,245,.98),rgba(247,247,245,.86) 42%,rgba(247,247,245,.04) 82%)}.hero h1{font-size:48px}.gallery{grid-template-columns:1fr}.gallery .tall,.gallery .wide{grid-row:auto;grid-column:auto}.gallery .wide img{aspect-ratio:4/5}.experience-grid{grid-template-columns:1fr}.lines>div{grid-template-columns:1fr;gap:6px}.closing{min-height:700px;align-items:end;padding-bottom:58px}.closing-shade{background:linear-gradient(0deg,rgba(247,247,245,.98),rgba(247,247,245,.75) 52%,rgba(247,247,245,.03))}.footer-inner{grid-template-columns:1fr}.footer-inner>div:last-child{text-align:left}}