@font-face{font-family:"Instrument Serif";src:url(assets/instrument-serif.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(assets/instrument-serif-italic.woff2) format("woff2");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"DM Sans";src:url(assets/dm-sans.woff2) format("woff2");font-style:normal;font-weight:400 700;font-display:swap}
@font-face{font-family:Geist;src:url(assets/geist.woff2) format("woff2");font-style:normal;font-weight:400 800;font-display:swap}
/* Local subsets of Pretendard and Noto Sans CJK SC. */
@font-face{font-family:"DANLE Korean";src:url(assets/danle-korean.woff2) format("woff2");font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:"DANLE Chinese";src:url(assets/danle-chinese-regular.woff2) format("woff2");font-style:normal;font-weight:400 599;font-display:swap}
@font-face{font-family:"DANLE Chinese";src:url(assets/danle-chinese-bold.woff2) format("woff2");font-style:normal;font-weight:600 800;font-display:swap}
:root{color-scheme:light;--paper:#f6f3eb;--paper-light:#fffdf7;--ink:#211b17;--muted:#61574f;--line:#ded7ca;--red:#ba0716;--red-deep:#910613;--type:"DM Sans",Arial,sans-serif;--display:"Instrument Serif",Georgia,serif}
html:lang(ko){--type:Geist,"DANLE Korean","Apple SD Gothic Neo","Malgun Gothic",sans-serif}
html:lang(zh-CN){--type:Geist,"DANLE Chinese","PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--type);line-height:1.6}
button{font:inherit}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:auto}
figure,h1,h2,p{margin:0}
button:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:5px}
.wrap{width:min(calc(100% - 96px),1480px);margin-inline:auto}
.skip{position:absolute;left:1rem;top:1rem;z-index:4;padding:1rem;background:white;transform:translateY(-180%)}
.skip:focus{transform:none}
.site-head{border-bottom:1px solid var(--line)}
.head-inner{height:112px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:18px}
.logo{justify-self:start;width:78px;display:block}
.logo img{aspect-ratio:1;object-fit:cover}
.head-note{justify-self:center;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-align:center}
.nav{display:flex;justify-content:flex-end;align-items:center;gap:24px;font-size:.89rem;font-weight:600;white-space:nowrap}
.nav a{padding:.56rem 0}
.nav a:hover{color:var(--red)}
.nav .nav-catalog{padding:.6rem .8rem;border-bottom:1px solid var(--red);color:var(--red)}
.arrow{font-family:var(--type);line-height:1}
.hero{min-height:clamp(565px,55vw,770px);position:relative;display:grid;grid-template-columns:36% 64%;overflow:hidden;background:var(--red);isolation:isolate}
.hero-media{grid-column:2;grid-row:1;position:relative;overflow:hidden;min-width:0;background:#9d9282}
.hero-media img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 46%;animation:photo-in .65s ease both}
.hero-media img[data-scene="kitchen"]{object-position:center 53%}
@keyframes photo-in{from{opacity:.45;transform:scale(1.025)}to{opacity:1;transform:none}}
.hero-copy{grid-column:1;grid-row:1;align-self:stretch;position:relative;z-index:1;color:#fff8e9;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(27px,4vw,66px)}
.hero-copy::before{content:"";position:absolute;inset:0 -3vw 0 0;background:var(--red);transform:skewX(-4deg);transform-origin:bottom left;z-index:-1}
.kicker{font-size:.71rem;letter-spacing:.12em;font-weight:650;text-transform:uppercase}
.hero-copy .kicker{color:#ffe5dc}
.hero h1{font:760 clamp(4.3rem,7.15vw,8.5rem)/.93 var(--type);letter-spacing:-.095em;margin:1.15rem 0 1.55rem}
.hero h1 span,.hero h1 em{display:block;white-space:nowrap}
.hero h1 em{font-style:normal;font-weight:550;letter-spacing:-.075em}
.hero-intro{max-width:24em;line-height:1.65;font-size:clamp(.94rem,1.12vw,1.12rem);color:#fff3e9}
.primary{display:inline-flex;gap:1.35rem;align-items:center;margin-top:1.5rem;padding:.8rem 1rem;background:var(--paper-light);color:var(--red);font-size:.84rem;font-weight:700;transition:background .2s ease,transform .2s ease}
.primary:hover{background:#f1ddcb;transform:translateY(-2px)}
.hero-meta{position:absolute;z-index:1;right:18px;bottom:18px;background:#1e1a16df;color:#fff9ed;display:flex;align-items:center;gap:.7rem;padding:.48rem;backdrop-filter:blur(8px)}
.hero-meta button{border:1px solid transparent;background:none;color:inherit;padding:.5rem .68rem;font-size:.72rem;cursor:pointer}
.hero-meta button[aria-pressed="true"]{border-color:#f4dcd1}
.hero-meta button:focus-visible{outline-color:#fff9ed}
.catalog{padding-block:clamp(62px,8.4vw,132px)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;padding-bottom:1.05rem;border-bottom:1px solid var(--line)}
.section-head h2,.brand h2{font:690 clamp(2.45rem,4.75vw,5.2rem)/1.02 var(--type);letter-spacing:-.075em}
.section-head .kicker{color:var(--red);margin-bottom:.6rem}
.section-head>p{font-size:.9rem;color:var(--muted);max-width:21em}
.filters{display:flex;flex-wrap:wrap;gap:0;margin:0 0 1.9rem;border-bottom:1px solid var(--line)}
.filter{border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);padding:.9rem 1.1rem;font-size:.88rem;font-weight:600;cursor:pointer}
.filter:hover{color:var(--red)}
.filter[aria-pressed="true"]{color:var(--red);border-bottom-color:var(--red)}
.products{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:2.1rem 1.2rem}
.product{grid-column:span 4}
.products[data-filter="all"] .product:nth-child(-n+2){grid-column:span 6}
.product[hidden]{display:none}
.product-button{display:block;width:100%;background:none;text-align:left;border:0;padding:0;color:inherit;cursor:pointer}
.photo{display:block;overflow:hidden;background:#eae2d6;aspect-ratio:1.12}
.products[data-filter="all"] .product:nth-child(-n+2) .photo{aspect-ratio:1.32}
.photo img{height:100%;object-fit:cover;object-position:center 47%;transition:transform .55s cubic-bezier(.2,.65,.25,1)}
.photo img.studio{object-fit:contain;background:#fff}
.product-button:hover .photo img,.product-button:focus-visible .photo img{transform:scale(1.047)}
.card-info{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem 0 .85rem;border-bottom:1px solid var(--line)}
.card-category{display:block;color:var(--red);font-size:.68rem;text-transform:uppercase;font-weight:650;letter-spacing:.09em;margin-bottom:.27rem}
.card-title{display:block;font-size:clamp(.98rem,1.36vw,1.17rem);line-height:1.35;font-weight:620;letter-spacing:-.025em}
.card-arrow{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:34px;height:34px;flex:none;transition:background .2s,color .2s,border-color .2s}
.product-button:hover .card-arrow{background:var(--red);border-color:var(--red);color:white}
.brand{display:grid;grid-template-columns:1.12fr .88fr;background:#eae2d4;margin-bottom:clamp(62px,8.4vw,120px)}
.brand-image{min-height:430px;position:relative}
.brand-image img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 46%}
.brand-copy{padding:clamp(28px,5vw,75px);align-self:center}
.brand .kicker{color:var(--red);margin-bottom:1rem}
.brand h2{font-size:clamp(2.35rem,4.2vw,4.55rem);max-width:12ch;text-wrap:balance}
.brand-copy>p:not(.kicker){max-width:27em;color:var(--muted);line-height:1.7;margin-top:1.25rem}
.brand strong{font-size:.8rem;display:block;margin-top:1.2rem}
.site-foot{background:#241d19;color:#faf4ea;border-top:3px solid var(--red)}
.footer-grid{display:grid;grid-template-columns:1.34fr .82fr 1.15fr 1fr;gap:clamp(1.25rem,3.2vw,3rem);padding-block:clamp(2.5rem,5vw,4.65rem)}
.footer-brand,.footer-links{min-width:0}
.footer-logo{display:block;width:72px;margin-bottom:1rem}
.footer-logo img{aspect-ratio:1;object-fit:cover}
.footer-brand p,.footer-contact p,.footer-policies details p{font-size:.82rem;color:#d4c8bb;line-height:1.55}
.footer-brand .footer-company{font-weight:650;color:#faf4ea;margin-bottom:.35rem}
.footer-links h2{font-size:.78rem;font-weight:650;letter-spacing:.075em;text-transform:uppercase;margin:0 0 .9rem;color:#f1aaad}
.footer-links>a,.footer-policies summary{display:block;padding:.22rem 0;color:#faf4ea;font-size:.87rem}
.footer-links>a:hover,.footer-policies summary:hover,.footer-bottom>a:hover{color:#f1aaad}
.footer-policies details{margin:0}
.footer-policies summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:.5rem}
.footer-policies summary::-webkit-details-marker{display:none}
.footer-policies summary::after{content:"+";color:#f1aaad}
.footer-policies details[open] summary::after{content:"−"}
.footer-policies details p{padding:.15rem 0 .6rem}
.footer-links .footer-about{display:inline-flex;align-items:center;gap:.45rem;margin-top:.65rem;font-weight:650}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid #514039;padding:1rem 0 1.15rem;font-size:.75rem;color:#d4c8bb}
.footer-bottom>a{white-space:nowrap;color:#faf4ea}
.site-foot a:focus-visible,.site-foot summary:focus-visible{outline:2px solid #f1aaad;outline-offset:4px}
@media(max-width:900px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:490px){.footer-grid{gap:1.35rem}.footer-brand{grid-column:1/-1}.footer-contact{grid-column:1/-1}.footer-logo{width:60px}.footer-bottom{gap:.5rem;font-size:.7rem}}
dialog{width:min(910px,calc(100% - 32px));max-height:calc(100% - 32px);padding:0;border:0;background:var(--paper);color:var(--ink);overflow:auto}
dialog::backdrop{background:#211a15e5}
.modal-layout{display:grid;grid-template-columns:1.15fr .85fr}
.modal-photo{background:#fff;aspect-ratio:1}
.modal-photo img{height:100%;object-fit:contain}
.modal-info{padding:3.35rem 1.85rem 1.8rem;position:relative}
.modal-info h2{font:680 clamp(1.9rem,3.2vw,3.05rem)/1.08 var(--type);letter-spacing:-.06em;margin:.65rem 0 1rem;text-wrap:balance}
.modal-info .kicker{color:var(--red)}
.modal-info p:not(.kicker){color:var(--muted)}
.close{background:var(--paper);border:1px solid var(--line);color:var(--ink);position:absolute;right:1rem;top:1rem;width:38px;height:38px;cursor:pointer;font-size:1.35rem;line-height:1}
.modal-tabs[hidden]{display:none}
.modal-tabs{display:flex;gap:.65rem;margin-top:1.3rem}
.modal-tabs button{width:61px;height:61px;padding:0;background:#fff;border:1px solid var(--line);cursor:pointer}
.modal-tabs button[aria-pressed="true"]{border:2px solid var(--red)}
.modal-tabs img{height:100%;object-fit:cover}
@media(max-width:1100px){
 .wrap{width:calc(100% - 60px)}
 .head-inner{height:98px}
 .hero{min-height:530px;grid-template-columns:39% 61%}
 .hero-copy{padding:32px}
 .hero h1{font-size:clamp(3.8rem,7.35vw,6.1rem)}
}
@media(max-width:760px){
 .wrap{width:calc(100% - 32px)}
 .head-inner{height:80px;grid-template-columns:auto 1fr}
 .logo{width:60px}
 .head-note{display:none}
 .nav{gap:14px;font-size:.82rem}
 .nav .nav-catalog{padding:.43rem 0}
 .hero{display:flex;flex-direction:column;min-height:0}
 .hero-copy{padding:1.65rem 1.35rem 1.5rem}
 .hero-copy::before{display:none}
 .hero h1{font-size:clamp(3.75rem,13.8vw,6.15rem);margin:.8rem 0 .95rem}
 .hero-intro{font-size:.93rem}
 .primary{margin-top:1.1rem}
 .hero-media{aspect-ratio:1.12;order:-1}
 .hero-meta{right:10px;bottom:10px}
 .section-head{display:block}
 .section-head>p{margin-top:.65rem;font-size:.83rem}
 .filters{margin-bottom:1.1rem}
 .filter{padding:.72rem .5rem;font-size:.75rem}
 .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem .75rem}
 .product,.products[data-filter="all"] .product:nth-child(-n+2){grid-column:span 1}
 .products[data-filter="all"] .product:nth-child(-n+2) .photo{aspect-ratio:1.12}
 .card-title{font-size:.85rem}
 .card-info{gap:.35rem;padding:.55rem 0 .6rem}
 .card-arrow{width:25px;height:25px}
 .brand{grid-template-columns:1fr}
 .brand-image{min-height:0;aspect-ratio:1.16}
 .brand-copy{padding:1.5rem}
 .modal-layout{display:flex;flex-direction:column}
 .modal-photo{aspect-ratio:1.22}
 .modal-info{position:static;padding:1.2rem}
}
@media(max-width:365px){.nav{gap:9px;font-size:.77rem}.filter{font-size:.7rem;padding-inline:.4rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.site-tools{display:flex;align-items:center;justify-content:flex-end;gap:20px}
.site-settings{display:flex;gap:8px}
.site-settings select,.quote-info select{font:inherit;color:var(--ink);background:var(--paper-light);border:1px solid var(--line);border-radius:0;padding:.4rem .45rem;max-width:100%}
.site-settings select{font-size:.77rem}
select:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.quote-info{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .85rem;margin-top:1.15rem;padding-top:.85rem;border-top:1px solid var(--line);font-size:.83rem}
.modal-info .quote-info #detail-price{width:100%;font-weight:700;color:var(--red)}
.quote-info label{display:flex;align-items:center;gap:.45rem}
.quote-info button{border:1px solid var(--red);background:transparent;color:var(--red);font-weight:650;padding:.4rem .65rem;cursor:pointer}
.quote-info button:hover{background:var(--red);color:white}
.quote-info #copy-status{width:100%}
.quote-info #copy-status:empty{display:none}
:is(html:lang(ko),html:lang(zh-CN)) .hero h1{font-size:clamp(2.55rem,4.55vw,4.8rem);line-height:1.12;letter-spacing:-.052em}
:is(html:lang(ko),html:lang(zh-CN)) .hero h1 span,:is(html:lang(ko),html:lang(zh-CN)) .hero h1 em{white-space:normal;letter-spacing:inherit;font-weight:730}
:is(html:lang(ko),html:lang(zh-CN)) .section-head h2,:is(html:lang(ko),html:lang(zh-CN)) .brand h2{font-size:clamp(2.05rem,3.75vw,4.05rem);line-height:1.18;letter-spacing:-.045em}
:is(html:lang(ko),html:lang(zh-CN)) .brand h2{max-width:13ch}
:is(html:lang(ko),html:lang(zh-CN)) .modal-info h2{font-size:clamp(1.6rem,2.7vw,2.35rem);line-height:1.25;letter-spacing:-.035em}
:is(html:lang(ko),html:lang(zh-CN)) :is(.kicker,.head-note,.card-category,.footer-links h2){letter-spacing:.02em}
html:lang(ko) :is(.hero-copy,.section-head,.brand-copy,.modal-info,.footer-links){word-break:keep-all;overflow-wrap:anywhere}
@media(max-width:1100px){.head-inner{grid-template-columns:auto 1fr}.head-note{display:none}}
@media(max-width:600px){
 .head-inner{height:auto;min-height:80px;padding-block:10px}
 .site-tools{flex-wrap:wrap;gap:6px 12px}
 .site-settings{gap:5px}
 .site-settings select{font-size:.74rem;padding:.35rem .3rem}
 .nav{gap:12px}
}

/* Original typography for the English edition. */
html:lang(en) body{line-height:1.5}
html:lang(en) .head-note{font-size:.7rem;font-weight:700;letter-spacing:.18em}
html:lang(en) .arrow{font-family:Arial,sans-serif}
html:lang(en) .kicker{font-size:.68rem;font-weight:700;letter-spacing:.16em}
html:lang(en) .hero h1{font:400 clamp(4.55rem,7.45vw,9rem)/.87 var(--display);letter-spacing:-.04em;margin:1.15rem 0 1.5rem}
html:lang(en) .hero h1 em{font-style:italic;font-weight:400;letter-spacing:inherit}
html:lang(en) .hero-intro{max-width:22em;line-height:1.55;font-size:clamp(.92rem,1.12vw,1.11rem)}
html:lang(en) :is(.section-head h2,.brand h2){font:400 clamp(3.15rem,6.6vw,6.8rem)/.91 var(--display);letter-spacing:-.035em}
html:lang(en) .brand h2{font-size:clamp(3rem,5vw,5.35rem);max-width:9ch;text-wrap:wrap}
html:lang(en) .card-category{font-size:.65rem;font-weight:700;letter-spacing:.12em}
html:lang(en) .card-title{font-size:clamp(.98rem,1.5vw,1.22rem);line-height:1.25;font-weight:650;letter-spacing:normal}
html:lang(en) .footer-links h2{font-size:.77rem;font-weight:700;letter-spacing:.12em}
html:lang(en) .modal-info h2{font:400 clamp(2.5rem,4vw,4rem)/.96 var(--display);letter-spacing:normal;text-wrap:wrap}
@media(max-width:1100px){
 html:lang(en) .hero h1{font-size:clamp(4.3rem,8.3vw,6.2rem)}
}
@media(max-width:760px){
 html:lang(en) .hero h1{font-size:clamp(4.15rem,15vw,6.45rem);margin:.8rem 0 .95rem}
 html:lang(en) .hero-intro{font-size:.93rem}
 html:lang(en) .card-title{font-size:.85rem}
}
