:root{--cream:#f8f5f0;--paper:#fffdf9;--ink:#2d342c;--muted:#777971;--sage:#576b59;--sage-dark:#334839;--gold:#b99e75;--line:#e5e1d9;--sans:'DM Sans','Noto Sans KR',sans-serif;--content:1160px;--header:76px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);font-weight:400;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}button,a{ -webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:auto}svg{flex:none}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.045em}h2{font-size:clamp(29px,4vw,49px);font-weight:500;line-height:1.42}h2 em,h1 em{font-style:normal;font-weight:400}p{line-height:1.8}.content-wrap{width:min(calc(100% - 80px),var(--content));margin-inline:auto}.skip-link{position:fixed;top:-70px;left:10px;z-index:1000;background:white;padding:12px}.skip-link:focus{top:8px}.site-header{height:var(--header);background:rgba(250,248,244,.97);z-index:120;position:relative;border-bottom:1px solid rgba(222,217,206,.6)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.wordmark{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand-symbol{stroke:var(--gold);stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.wordmark span{font-family:Georgia,'Times New Roman',serif;font-size:21px;letter-spacing:.1em;line-height:1.02;font-weight:500}.wordmark strong{font-weight:400}.wordmark small{display:block;font-family:var(--sans);font-size:7px;font-weight:600;letter-spacing:.26em;margin-top:6px;color:#92836f}.desktop-navigation{display:flex;align-items:center;gap:25px;margin-left:auto}.desktop-navigation a{font-size:11px;letter-spacing:.1em;font-weight:600;position:relative;white-space:nowrap;padding-block:27px}.desktop-navigation a:after{content:'';height:1px;position:absolute;bottom:21px;left:0;right:100%;background:var(--sage);transition:right .2s ease}.desktop-navigation a:hover:after,.desktop-navigation a.is-active:after{right:0}.header-tools{display:flex;gap:16px;align-items:center}.locale-indicator{display:flex;align-items:center;gap:3px;white-space:nowrap;font-weight:600;font-size:11px;letter-spacing:.08em;color:#626960}.header-contact{background:var(--sage);color:white;padding:13px 16px;display:flex;align-items:center;gap:14px;font-size:12px;font-weight:600;border-radius:2px;white-space:nowrap}.header-contact:hover{background:var(--sage-dark)}.menu-toggle{display:none;padding:10px 5px;background:transparent;border:0;cursor:pointer;min-height:42px;min-width:42px;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{width:22px;height:1.5px;background:var(--ink);display:block;transition:transform .2s,opacity .2s}.mobile-menu{display:none}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:700;color:#8d7657}.eyebrow-light{color:#e3cfaa}.section{padding-top:104px;padding-bottom:100px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px}.section-mini{font-size:10px;letter-spacing:.15em;color:#a39e93}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:35px}.section-heading h2{margin-bottom:15px}.section-heading p{font-size:14px;color:var(--muted)}.text-link{display:inline-flex;gap:24px;align-items:center;padding:8px 0;border-bottom:1px solid var(--gold);font-size:13px;font-weight:600;white-space:nowrap}.text-link span{font-size:17px;font-weight:400}.btn{min-height:47px;display:inline-flex;justify-content:center;align-items:center;gap:24px;padding:0 24px;font-size:13px;font-weight:600;letter-spacing:.02em;transition:transform .2s,background .2s;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-light{background:var(--paper);color:var(--sage-dark)}.btn span{font-size:19px;font-weight:400}.footer{background:#eeebe4;border-top:1px solid var(--line)}.footer-content{padding-top:55px;display:grid;grid-template-columns:1fr 1fr;gap:20px 80px}.footer-logo{font-family:Georgia,serif;font-size:25px;letter-spacing:.09em}.footer-main p{margin-top:14px;font-size:13px;color:#74766e}.footer-info{justify-self:end}.footer-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:15px;font-size:11px;font-weight:700;letter-spacing:.06em}.footer-links a:hover{color:var(--sage)}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #d9d6ce;padding:22px 0;margin-top:40px;font-size:10px;color:#8d8e88;letter-spacing:.09em}.bottom-navigation{display:none}
@media(max-width:900px){:root{--header:66px}.desktop-navigation{display:none}.menu-toggle{display:flex}.header-contact{display:none}.mobile-menu{display:block;visibility:hidden;opacity:0;pointer-events:none;position:fixed;z-index:110;inset:var(--header) 0 0;background:var(--cream);padding:33px 6vw 110px;overflow-y:auto;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility .2s}.menu-open .mobile-menu{visibility:visible;opacity:1;pointer-events:auto;transform:none}.mobile-menu-heading{font-size:10px;color:var(--gold);letter-spacing:.2em;margin:0 0 18px}.mobile-menu-item{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:17px 2px;font-size:22px;font-family:Georgia,serif;letter-spacing:.06em}.mobile-menu-item small{font-family:var(--sans);font-size:11px;color:var(--muted);display:inline;margin-left:12px}.mobile-menu-item>span:last-child{font-family:var(--sans);font-size:19px;color:var(--sage)}.mobile-menu p{font-size:10px;color:#a19a90;letter-spacing:.08em;padding-top:26px}.menu-open .menu-toggle span:first-child{transform:translateY(6.5px) rotate(45deg)}.menu-open .menu-toggle span:nth-child(2){opacity:0}.menu-open .menu-toggle span:last-child{transform:translateY(-6.5px) rotate(-45deg)}.bottom-navigation{position:fixed;bottom:0;left:0;right:0;z-index:100;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--sage-dark);padding-bottom:env(safe-area-inset-bottom);height:calc(65px + env(safe-area-inset-bottom));box-shadow:0 -4px 18px #0000001a}.bottom-navigation a{color:#d8e0d5;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:10px;letter-spacing:-.02em}.bottom-navigation a.current{background:rgba(255,255,255,.13);color:white}.bottom-navigation a svg{width:21px;height:21px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;fill:none}.footer{padding-bottom:calc(65px + env(safe-area-inset-bottom))}}
@media(max-width:600px){:root{--header:61px}.content-wrap{width:calc(100% - 36px)}.wordmark{gap:6px}.brand-symbol{width:23px;height:24px}.wordmark span{font-size:17px}.wordmark small{font-size:6px;letter-spacing:.22em;margin-top:4px}.header-tools{gap:10px}.locale-indicator{font-size:10px}.menu-toggle{min-width:35px}.section{padding-top:64px;padding-bottom:64px}.section-top{margin-bottom:19px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:clamp(27px,7.1vw,34px);line-height:1.38;margin-bottom:12px}.section-heading p{font-size:12px}.eyebrow{font-size:10px}.section-mini{font-size:8px}.desktop-only{display:none!important}.footer-content{grid-template-columns:1fr;gap:30px;padding-top:43px}.footer-info{justify-self:start}.footer-bottom{display:block;margin-top:7px;font-size:9px;line-height:2}.footer-bottom span{display:block}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Known business information / Korean master */
.footer-address{font-style:normal;margin-top:16px;font-size:12px;line-height:1.7}.footer-address strong{display:block;font-weight:600}.footer-address span{display:block;color:#777971;margin-top:4px}.footer-hours{margin-top:11px;font-size:12px;color:#777971}.footer-hours strong{color:var(--ink);font-size:13px;margin-left:5px}.footer-map-link{display:inline-block;margin-top:12px;font-size:12px;color:var(--sage-dark);border-bottom:1px solid var(--gold);padding-bottom:4px}.footer-info{max-width:410px}.footer-links{margin-top:24px}
@media(max-width:600px){.footer-info{max-width:100%}.footer-address{font-size:12px}.footer-links{gap:15px}}

/* Anchor navigation while secondary pages are being developed */
section[id]{scroll-margin-top:24px}
