:root{--ink:#241e1b;--paper:#f3efe7;--text:#302822;--muted:#695b4e;--line:#d8cfc2;--accent:#c5ab80;--sans:'Apple SD Gothic Neo','Noto Sans KR','Malgun Gothic',sans-serif;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.75;word-break:keep-all;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}figure,blockquote,p,h1,h2,h3{margin:0}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #ad8651;outline-offset:6px}h1,h2,h3{font-weight:400;line-height:1.4;letter-spacing:-.05em}h2{font-size:36px}h3{font-size:24px}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.eyebrow{font:10px/1.5 Arial,sans-serif;letter-spacing:.19em;font-weight:500}.skip-link{position:absolute;top:-100px;left:16px;background:var(--paper);padding:12px;z-index:20}.skip-link:focus{top:10px}.site-header{height:104px;padding:0 56px;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font:17px/1.1 Arial,sans-serif;letter-spacing:.22em}.wordmark span{font-weight:600}.wordmark small{display:block;font:8px/1.6 Arial,sans-serif;letter-spacing:.18em;margin-top:9px;color:#c5b8a6}.desktop-nav{display:flex;gap:42px;font-size:13px;color:#e2d8cb}.header-contact{font-size:13px;padding-bottom:6px;border-bottom:1px solid #756858;display:flex;gap:28px}.hero{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:39% 61%;padding:0 0 32px 56px;min-height:628px}.hero-copy{padding:70px 28px 48px 0;align-self:center}.hero-copy .eyebrow{color:#bda88b;margin-bottom:26px}.hero h1{font-size:clamp(34px,3.05vw,50px);line-height:1.46;letter-spacing:-.055em}.hero-description{color:#c1b6aa;font-size:15px;line-height:1.9;margin-top:26px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:16px 23px;font-size:14px;min-height:54px;transition:background .2s,color .2s}.button.light{background:var(--paper);color:var(--ink)}.button.light:hover{background:#e3d8c8}.button.outline{border:1px solid #746759;color:var(--paper)}.button.outline:hover{background:#392e28}.hero .button{margin-top:36px}.hero-note{font-size:11px;color:#b19f89;letter-spacing:.05em;margin-top:23px}.hero-image{position:relative;min-height:590px;overflow:hidden}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:48% 50%}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(21,16,12,.6));padding:60px 30px 22px;display:flex;justify-content:space-between;gap:12px;color:#fff;font:10px Arial,sans-serif;letter-spacing:.11em}.hero-image figcaption span:first-child{font-size:12px}.intro{display:grid;grid-template-columns:1fr 2.8fr 1.15fr;gap:30px;padding-block:100px 106px;align-items:start;border-bottom:1px solid var(--line)}.intro>.eyebrow{padding-top:10px;color:var(--muted)}.intro h2{font-size:29px;margin-bottom:20px}.intro p:not(.eyebrow){font-size:15px;line-height:1.9;color:var(--muted)}.intro-signature{font:21px/1.5 var(--serif);color:#83715d;align-self:end}.work-section{padding-block:104px 112px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:42px}.section-head .eyebrow{color:var(--muted);margin-bottom:16px}.section-head>p{font-size:13px;color:var(--muted);padding-bottom:6px}.featured{display:grid;grid-template-columns:1.8fr 1fr;background:#e9e2d8}.featured-image img{width:100%;height:100%;object-fit:cover}.project-story{padding:56px 38px;align-self:center}.project-story>.eyebrow{color:#715f4e;font-size:9px}.project-story h3{font-family:var(--serif);font-size:37px;letter-spacing:.02em;margin:16px 0 6px}.project-category{font:9px/1.5 Arial,sans-serif;letter-spacing:.12em;color:#715f4e}.project-story>p:not([class]){font-size:19px;line-height:1.9;margin-top:38px}.project-detail{display:grid;margin-top:30px;gap:5px;font-size:12px;color:var(--muted)}.mockup-note{color:var(--muted);font-size:10px;margin-top:14px}.text-link{border:0;border-bottom:1px solid #bcad9c;background:transparent;color:inherit;font-size:12px;display:inline-flex;justify-content:space-between;gap:24px;padding:4px 0}.project-story .text-link{margin-top:42px}.cards-heading{display:flex;justify-content:space-between;align-items:end;margin:70px 0 25px;gap:20px}.cards-heading h3{font-size:25px}.cards-heading p{font:11px var(--serif);color:var(--muted);letter-spacing:.05em}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.portfolio-grid figure{min-width:0}.portfolio-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.portfolio-grid figcaption,.selected-card figcaption{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-top:15px;font-size:14px}.portfolio-grid figcaption small,.selected-card figcaption small{font-size:11px;color:var(--muted)}.portfolio-grid.secondary{margin-top:45px}.selected-card{margin-bottom:42px}.selected-card img{width:100%;aspect-ratio:1.8;object-fit:cover}.reviews-section{background:#eae3d9;padding-block:104px}.quotes{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbbfae;border-bottom:1px solid #cbbfae}.quote{padding:28px 28px 30px 0;display:flex;flex-direction:column}.quote+.quote{border-left:1px solid #cbbfae;padding-left:30px}.quote-mark{font:48px/1 var(--serif);color:#a18766;height:42px}.quote blockquote{font-size:19px;line-height:1.7;letter-spacing:-.03em;flex:1;margin:8px 0 38px}.quote-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:13px}.quote-foot small{font-size:10px;color:var(--muted);margin-left:10px}.quote-foot .text-link{font-size:10px;gap:8px;white-space:nowrap}.video-heading{display:flex;justify-content:space-between;align-items:center;margin:68px 0 24px;gap:20px}.video-heading h3{font-size:24px}.video-frame{aspect-ratio:16/9;background:var(--ink);position:relative;overflow:hidden}.video-play{border:0;padding:0;display:block;width:100%;height:100%;background:var(--ink);text-align:left;color:var(--paper)}.video-play>img{width:100%;height:100%;object-fit:cover}.video-overlay{position:absolute;inset:0;padding:7%;display:flex;flex-direction:column;align-items:flex-start;background:linear-gradient(90deg,rgba(32,25,20,.92),rgba(32,25,20,.53) 45%,rgba(32,25,20,.08));justify-content:center}.video-overlay>.eyebrow{color:#dbc6a5;font-size:9px}.video-title{font-size:clamp(26px,3.3vw,48px);line-height:1.5;letter-spacing:-.05em;margin:24px 0 32px}.play-label{display:flex;align-items:center;gap:16px;font-size:13px}.play-circle{width:51px;height:51px;border:1px solid #b3a28c;display:grid;place-items:center;border-radius:50%;font-size:12px;padding-left:2px;transition:background .2s}.video-play:hover .play-circle{background:var(--paper);color:var(--ink)}.video-frame iframe{width:100%;height:100%;border:0;position:absolute;inset:0}.video-note{font-size:11px;color:var(--muted);margin-top:15px}.process-section{padding-block:105px}.process{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.process li{border-top:1px solid var(--line);padding-top:22px}.step{font:24px var(--serif);color:#998266}.process h3{font-size:21px;margin:18px 0 17px}.process p{font-size:13px;line-height:1.9;color:var(--muted)}.faq{margin-top:66px;border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:23px 0;display:flex;justify-content:space-between;cursor:pointer;font-size:15px;gap:24px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:20px;line-height:1}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:14px;color:var(--muted);max-width:780px;padding-bottom:24px;line-height:1.9}.contact-section{background:var(--ink);color:var(--paper);padding-block:100px}.contact-inner{text-align:center}.contact-inner .eyebrow{color:#b59f80}.contact-inner h2{font-size:44px;line-height:1.5;margin:25px 0 22px}.contact-inner>p:not(.eyebrow){font-size:15px;color:#bcafa0;line-height:1.9}.contact-actions{display:flex;justify-content:center;gap:12px;margin-top:35px}.contact-actions .button{min-width:240px}.email-link{display:inline-block;font:12px Arial,sans-serif;color:#cbb89e;margin-top:26px}.site-footer{padding-block:45px 28px}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:35px}.wordmark.dark{font-size:15px}.wordmark.dark small{color:var(--muted);font-family:var(--sans);font-size:10px;letter-spacing:.02em;margin-top:10px}.social{display:flex;gap:24px;flex-wrap:wrap;font-size:11px;align-items:start}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.mobile-contact{display:none}dialog{border:0;background:var(--paper);padding:28px;width:min(1000px,calc(100% - 32px));color:var(--text);max-height:85vh;overflow:auto}dialog::backdrop{background:rgba(22,16,11,.75)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:18px}.dialog-head h2{font-size:20px}.dialog-head button{border:1px solid var(--line);background:transparent;padding:8px 14px;font-size:12px}.dialog-head+img{width:100%;height:auto}dialog>p{font-size:11px;color:var(--muted);margin-top:20px}
@media(min-width:1600px){.site-header{padding-inline:max(56px,calc((100vw - 1440px)/2))}.hero{padding-left:max(56px,calc((100vw - 1440px)/2));grid-template-columns:38% 62%}.hero-image{max-height:790px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.site-header{padding-inline:32px;height:88px}.desktop-nav{gap:24px}.hero{padding-left:32px;grid-template-columns:43% 57%;min-height:550px}.hero-copy{padding-block:45px}.hero-image{min-height:520px}.hero h1{font-size:35px}.intro{grid-template-columns:1fr 3fr;padding-block:70px}.intro-signature{display:none}.project-story{padding:36px 28px}.project-story h3{font-size:30px}.project-story>p:not([class]){font-size:17px;margin-top:24px}.project-story .text-link{margin-top:25px}.quote{padding-right:20px}.quote+.quote{padding-left:20px}.quote blockquote{font-size:17px}.quote-foot{align-items:start;flex-direction:column;gap:12px}.process{gap:24px}.social{gap:18px}}
@media(max-width:700px){html{scroll-padding-top:20px}body{font-size:15px;padding-bottom:68px}.wrap{width:calc(100% - 40px)}h2{font-size:28px}.site-header{height:83px;padding:0 20px;gap:12px}.wordmark{font-size:14px;letter-spacing:.17em}.wordmark small{font-size:7px;letter-spacing:.1em;margin-top:7px}.desktop-nav{display:none}.header-contact{font-size:11px;gap:12px;white-space:nowrap}.hero{display:flex;flex-direction:column;padding:0 0 20px;min-height:0}.hero-copy{padding:37px 24px 32px}.hero-copy .eyebrow{font-size:9px;margin-bottom:20px}.hero h1{font-size:35px;line-height:1.48}.hero-description{font-size:13px;margin-top:21px;line-height:1.85}.hero-description br:nth-of-type(2){display:none}.hero .button{margin-top:24px;min-height:48px;padding:13px 20px;font-size:12px;gap:33px}.hero-note{font-size:9px;margin-top:18px}.hero-image{margin-left:20px;min-height:0;aspect-ratio:1.22}.hero-image img{object-position:center}.hero-image figcaption{padding:38px 16px 15px;font-size:8px;letter-spacing:.03em}.hero-image figcaption span:first-child{font-size:10px}.intro{display:block;padding-block:60px}.intro>.eyebrow{padding:0;margin-bottom:22px;font-size:9px}.intro h2{font-size:26px;margin-bottom:18px}.intro p:not(.eyebrow){font-size:14px}.desktop-only{display:none}.work-section{padding-block:61px 66px}.section-head{display:block;margin-bottom:28px}.section-head .eyebrow{font-size:9px;margin-bottom:13px}.section-head>p{font-size:12px;margin-top:14px}.featured{display:flex;flex-direction:column}.featured-image{aspect-ratio:1.12;overflow:hidden}.featured-image img{object-fit:cover;object-position:50% 48%}.project-story{padding:30px 25px 35px;align-self:stretch}.project-story h3{font-size:32px;margin-top:12px}.project-category{font-size:8px}.project-story>p:not([class]){font-size:17px;margin-top:24px}.project-story>p:not([class]) br{display:none}.project-detail{font-size:11px;margin-top:22px}.mockup-note{font-size:10px}.project-story .text-link{font-size:11px;margin-top:23px}.cards-heading{display:block;margin:42px 0 22px}.cards-heading h3{font-size:23px}.cards-heading p{font-size:11px;margin-top:9px}.portfolio-grid{display:block}.portfolio-grid figure+figure{margin-top:30px}.portfolio-grid img{aspect-ratio:4/3}.portfolio-grid figcaption,.selected-card figcaption{font-size:13px;padding-top:12px;gap:12px}.portfolio-grid figcaption small,.selected-card figcaption small{font-size:9px}.portfolio-grid.secondary{margin-top:30px}.selected-card{margin-bottom:30px}.selected-card img{aspect-ratio:1.45}.reviews-section{padding-block:61px}.quotes{display:block}.quote{padding:24px 0 26px}.quote+.quote{padding:24px 0 26px;border-left:0;border-top:1px solid #cbbfae}.quote-mark{height:31px;font-size:40px}.quote blockquote{font-size:20px;margin:10px 0 24px}.quote-foot{flex-direction:row;align-items:center;font-size:12px}.quote-foot .text-link{font-size:11px}.video-heading{display:block;margin:40px 0 20px}.video-heading h3{font-size:22px}.video-heading .text-link{margin-top:10px;font-size:11px}.video-overlay{padding:23px}.video-overlay>.eyebrow{font-size:7px;letter-spacing:.08em}.video-title{font-size:26px;margin:12px 0 15px;line-height:1.4}.play-circle{width:32px;height:32px;font-size:8px}.play-label{font-size:10px;gap:10px}.video-note{font-size:10px;line-height:1.7}.process-section{padding-block:61px}.process{display:block}.process li{padding:24px 0 29px;display:grid;grid-template-columns:40px 1fr;column-gap:12px}.step{grid-row:1/3;font-size:22px;padding-top:1px}.process h3{margin:0 0 12px;font-size:21px}.process p{grid-column:2;font-size:13px}.process p br{display:none}.faq{margin-top:16px}.faq summary{font-size:14px;padding-block:21px}.faq details p{font-size:13px}.contact-section{padding-block:64px}.contact-inner .eyebrow{font-size:8px}.contact-inner h2{font-size:32px;margin-top:22px}.contact-inner>p:not(.eyebrow){font-size:13px}.contact-actions{flex-direction:column;gap:10px;margin-top:29px}.contact-actions .button{font-size:13px;min-height:52px;padding:14px 19px;text-align:left}.email-link{font-size:11px;margin-top:25px}.site-footer{padding-block:32px 24px}.footer-top{display:block;padding-bottom:24px}.social{gap:18px;margin-top:30px;font-size:10px}.footer-bottom{flex-wrap:wrap;gap:11px;font-size:9px}.footer-bottom span:first-child{width:100%}.footer-bottom a{margin-left:auto}.mobile-contact{display:grid;grid-template-columns:1.5fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:8;background:var(--ink);color:var(--paper);box-shadow:0 -2px 12px #241e1b18;padding:10px 14px max(10px,env(safe-area-inset-bottom));gap:10px;align-items:center}.mobile-contact a{font-size:12px;min-height:42px;display:flex;align-items:center;justify-content:center;gap:20px}.mobile-contact a:first-child{background:#e7dccb;color:var(--ink)}.mobile-contact a:last-child{border:1px solid #726251}dialog{padding:20px}.dialog-head h2{font-size:16px}.dialog-head button{padding:6px 10px;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.brand-link{display:block;flex-shrink:0}.brand-link img{width:auto;height:67px}@media(max-width:700px){.brand-link img{height:55px}}

#review-image-link{margin-top:16px}

#review-transcript{font-size:15px;line-height:1.9;white-space:pre-line;color:var(--text);margin:0 0 28px}

.selected-card img{aspect-ratio:auto;width:100%;height:auto}

/* Feedback update: one persistent consultation entry across desktop and mobile. */
.mobile-cards-link{display:none}.floating-kakao{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:30;display:flex;align-items:center;justify-content:center;gap:10px;min-width:150px;min-height:56px;padding:14px 18px;border-radius:32px;background:#fee500;color:#251d16;font-size:13px;font-weight:600;box-shadow:0 4px 20px #241e1b33;line-height:1}.floating-kakao:hover{background:#ffe943}.floating-kakao svg{flex:none}.site-footer{padding-bottom:105px}.single-project{grid-template-columns:1fr}.single-project img{aspect-ratio:16/9;object-fit:cover;object-position:center}.video-note a{text-decoration:underline;text-underline-offset:3px}.video-play{position:relative}
@media(max-width:700px){body{padding-bottom:0}.mobile-cards-link{display:inline-flex;font-size:11px;white-space:nowrap;margin-left:auto}.site-header{gap:16px}.header-contact{font-size:10px;gap:6px}.header-contact span{display:none}.floating-kakao{right:16px;bottom:max(16px,env(safe-area-inset-bottom));min-width:140px;min-height:56px;padding:14px 16px;font-size:12px}.site-footer{padding-bottom:104px}.cards-heading .text-link{margin-top:12px}.single-project img{aspect-ratio:4/3}.brand-link img{height:50px}}

/* The background extension is a generated bitmap; the original sign pixels are preserved in it. */
.hero{position:relative;isolation:isolate;display:flex;padding:0 56px;min-height:660px;overflow:hidden}.hero-copy{position:relative;z-index:1;width:41%;padding:66px 12px 66px 0}.hero-image{position:absolute;inset:0;z-index:-1;min-height:0;max-height:none;margin:0;overflow:hidden}.hero-image picture{display:block;width:100%;height:100%}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-image figcaption{left:53%;padding:60px 28px 22px;background:linear-gradient(transparent,rgba(21,16,12,.5))}.hero-copy .hero-description{color:#e1d6c7}.hero-copy .hero-note{color:#d5c0a5}.hero-copy .eyebrow{color:#d5c0a5}
@media(min-width:1600px){.hero{padding-left:max(56px,calc((100vw - 1440px)/2));min-height:740px}.hero-copy{width:42%}}
@media(min-width:701px) and (max-width:1050px){.hero{padding-inline:32px;min-height:620px}.hero-copy{width:44%}.hero h1{font-size:33px}.hero-description{font-size:14px}}
@media(max-width:700px){.hero{display:flex;flex-direction:column;padding:0 0 20px;min-height:0;overflow:visible}.hero-copy{width:100%;padding:37px 24px 32px}.hero-image{position:relative;inset:auto;z-index:auto;margin-left:20px;min-height:0;max-height:none;aspect-ratio:1.22}.hero-image img{object-position:48% 50%}.hero-image figcaption{left:0;padding:38px 16px 15px}.hero-copy .hero-description{color:#c1b6aa}}


/* 2026-10-10: Increase sans-serif title weight only. */
.hero h1,
.intro h2,
.section-head h2,
.cards-heading h3,
.video-heading h3,
.video-title,
.process h3,
.contact-inner h2,
.cards-page h1,
.cards-page h2,
.cards-page h3 {
  font-weight:600;
}
