@font-face{font-family:"Gmarket Sans";src:url("assets/fonts/GmarketSansTTFMedium.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Gmarket Sans";src:url("assets/fonts/GmarketSansTTFBold.woff2") format("woff2");font-weight:700;font-display:swap}
:root{color-scheme:light;--ink:#342923;--paper:#fff8e8;--price-orange:#ee742b;--detail-image-paper:#f8edda;--brick:#9a3828;--serif:var(--sans);--sans:"Gmarket Sans","Malgun Gothic","Nanum Gothic","Noto Sans",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.75;word-break:keep-all}
figure,p,h1,h2,h3{margin:0}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #f4ae58;outline-offset:5px}
.skip{position:fixed;z-index:20;top:12px;left:80px;background:#fff;padding:10px;transform:translateY(-150%)}
.skip:focus{transform:none}
.round{display:grid;place-content:center;width:48px;height:48px;border:0;border-radius:50%;background:#3e2b23;color:white}
.menu-button,.quick,.signature{position:fixed;z-index:5}
.menu-button{left:24px;top:24px;gap:4px}
.menu-button span{display:block;width:18px;height:1px;background:currentColor}
.quick{right:25px;top:26px;background:#241813;color:white;padding:8px 17px;border-radius:30px;font-size:.82rem}
.signature{bottom:29px;left:29px;display:flex;align-items:center;gap:10px;writing-mode:vertical-rl;background:#fffaf0;color:var(--ink);padding:11px 7px;font-family:var(--serif)}
.signature small{font-size:.72rem;letter-spacing:.17em}.signature strong{font-size:1.4rem;letter-spacing:.12em}
#navigation{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:25px;border:0;background:#f4ecde;color:var(--ink)}
#navigation[open]{display:grid;place-items:center}
.close{position:absolute;top:24px;left:24px;font-size:1.65rem}
#navigation nav{display:grid;width:min(100%,480px);padding:65px 0 24px}
#navigation nav a{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 10px;border-bottom:1px solid #ccbbaa;font-family:var(--serif);font-size:clamp(1.2rem,4vw,2.05rem)}
#navigation nav a:hover,nav a:focus-visible{color:var(--brick)}
#navigation nav small,.eyebrow{font-family:var(--sans);font-size:.78rem;letter-spacing:.16em}
.hero{position:relative;isolation:isolate;display:grid;place-items:center;min-height:100svh;overflow:hidden;background:#57311e;color:white}
.hero-motion{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;z-index:-2;opacity:0}
.hero-motion.ready{opacity:1}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#180c0826,transparent 62%,#180c0855)}
.intro{position:absolute;z-index:1;inset:0;pointer-events:none;background:#fffaf0;animation:reveal 1.25s .15s both}
.intro i{position:absolute;aspect-ratio:1;border-radius:50%;background:#c99a47;animation:drift 1.4s ease-out both}
@keyframes drift{from{transform:translateY(-22px)}to{transform:translateY(24px)}}
@keyframes reveal{to{opacity:0;visibility:hidden}}
.opening{position:relative;display:grid;grid-template-columns:minmax(0,1fr)}
.hero,.opening>#menu,.opening-title{grid-column:1}
.hero{grid-row:1}
.opening>#menu{grid-row:2}
.opening-title{grid-row:1 / span 2;position:sticky;top:0;align-self:start;height:100svh;display:grid;place-items:center;pointer-events:none;z-index:2}
.hero-title{position:relative;writing-mode:vertical-rl;color:white}
h1{background:var(--brick);padding:18px 10px 16px;font:400 clamp(1.75rem,3.1vw,2.7rem)/1.1 var(--serif);letter-spacing:.23em}
.hero-title>span{position:absolute;top:0;right:-24px;font: .72rem var(--sans);letter-spacing:.10em}
.scroll{position:absolute;bottom:27px;left:50%;transform:translateX(-50%);display:grid;place-items:center;gap:4px;font: .72rem var(--sans);letter-spacing:.18em;padding:8px;background:#241813bf}
.scroll span{font-size:1.15rem}.motion-button{position:absolute;bottom:24px;right:24px}
.wrap{width:min(1120px,calc(100% - 128px));margin-inline:auto}
.story,.menu{display:grid;grid-template-columns:1.16fr .84fr;align-items:center;gap:clamp(30px,7vw,104px);padding-block:clamp(65px,12vw,155px)}
.story img,.menu img{display:block;width:100%;height:auto;aspect-ratio:5/4;object-fit:cover}
.story img{object-position:47% center}.menu img{object-position:62% 58%;aspect-ratio:4/3}
.story.wrap{width:100%;max-width:none;padding-top:0;background:var(--paper)}
.story-gallery{grid-column:1/-1;position:relative;min-height:100svh;overflow:hidden}
.story-gallery>div{position:absolute;background-size:cover}
.gallery-wide{width:34%;height:42%;left:0;bottom:3%;background-position:50% 80%}
.gallery-detail{width:15%;aspect-ratio:1;left:26%;top:35%;z-index:1;background-size:310%!important;background-position:55% 45%}
.gallery-tall{width:24%;height:59%;right:13%;top:25%;background-position:55% center}
.story>figure{margin-left:max(22px,calc((100vw - 1120px)/2))}
.story-copy{margin-right:max(22px,calc((100vw - 1120px)/2))}
.opening-title{height:100svh}
.eyebrow{color:#793a28;margin-bottom:12px;text-transform:uppercase}
h2,h3{font-family:var(--serif);font-weight:500;line-height:1.45}
h2{font-size:clamp(2rem,4.3vw,3.8rem);margin-bottom:22px}
h3{font-size:1.36rem;margin-bottom:8px}
.link{display:inline-flex;align-items:center;gap:24px;margin-top:24px;border-bottom:1px solid;padding-block:5px}
.link:hover{color:var(--brick)}
.news{background:#efe5d6}.news-inner{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:32px;padding-block:68px}
.news h2{margin-bottom:0}.empty{padding:17px 0;border-block:1px solid #aa9785}
.menu{grid-template-columns:.8fr 1.2fr}
.note{margin-top:20px;color:#63534a;font-size:.83rem}
.visit{background:#e9dac8}.visit-inner{padding-block:clamp(65px,10vw,120px);text-align:center}
footer{padding-block:24px;display:flex;justify-content:space-between;gap:18px;font-size:.78rem}
@media(max-width:720px){
  .wrap{width:calc(100% - 44px)}
  .menu-button,.close{left:16px;top:16px}.quick{right:16px;top:19px}
  .signature{left:16px;bottom:20px}
  .hero,.hero-motion{background-position:center;object-position:center}
  .motion-button{right:16px;bottom:20px}
  .story,.menu,.news-inner{grid-template-columns:1fr;gap:28px}
  .story-copy{grid-row:2;margin-inline:22px}
  .story>figure{margin-inline:22px}
  .gallery-wide{width:43%;height:29%;bottom:15%}
  .gallery-detail{width:24%;left:10%;top:23%}
  .gallery-tall{width:38%;height:43%;right:0;top:31%}
  .news-inner{padding-block:54px}
  footer{padding-left:37px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.intro{display:none}}
.inner-page{padding-top:95px;min-height:calc(100svh - 80px)}
.inner-page .story{width:min(1120px,calc(100% - 44px));padding-block:65px;background:none}
.inner-page .story>figure,.inner-page .story-copy{margin:0}
@media(prefers-reduced-motion:reduce){.page-transition{display:none}}
.products-page{background:var(--paper)}
.product-heading{padding:30px 0 24px}
.product-heading h1{background:none;padding:0;color:var(--ink);font-size:clamp(2rem,4vw,3.6rem);letter-spacing:0}
.product-heading .eyebrow{margin-bottom:5px}
.product-banner{background:#352015;overflow:hidden}
.product-banner img{display:block;width:100%;height:clamp(250px,38vw,510px);object-fit:cover;object-position:50% 62%}
.product-catalog{padding-block:clamp(90px,12vw,155px)}
.catalog-heading{display:flex;justify-content:flex-end;gap:8px;min-height:190px}
.catalog-heading h2,.catalog-heading span{writing-mode:vertical-rl}
.catalog-heading h2{margin:0;font-size:clamp(1.55rem,3vw,2.7rem)}
.catalog-heading span{font-family:var(--sans);color:#793a28;letter-spacing:.12em}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,42px)}
.product-card{display:flex;flex-direction:column;justify-content:space-between;align-items:center;min-height:clamp(268px,44vw,520px);padding-top:24px;background:#f3efe3;overflow:hidden}
.product-card:nth-child(even){transform:translateY(36px)}
.product-card h3{writing-mode:vertical-rl;font-size:clamp(1rem,2vw,1.45rem);margin:0 0 24px}
.product-card img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.product-placeholder p{font-size:.75rem;padding:12px;text-align:center;color:#655347}
.product-catalog .note{margin-top:58px}
.story-gallery>div{transform:translateY(var(--gallery-shift,0px))}
.gallery-motion .story-gallery>div{clip-path:inset(0 0 100% 0);transition:clip-path .85s cubic-bezier(.2,.7,.25,1)}
.gallery-motion .story-gallery>div.visible{clip-path:inset(0)}
@media(max-width:720px){
  footer{padding-left:58px;min-height:82px}
  .signature{bottom:10px;left:10px;padding-inline:5px}
}

.language{position:fixed;top:26px;right:145px;z-index:5;max-width:120px;padding:8px 10px;border:1px solid #b59d87;border-radius:24px;background:#fffaf0;color:#241813;font:inherit;font-size:.82rem}
.quick{max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.visit-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.visit-actions .link{margin:0}
.product-card,.product-card:nth-child(even){min-height:0;transform:none;display:grid;grid-template-rows:1fr auto auto;align-items:start;justify-content:stretch;padding:12px;text-align:center}
.product-card h3{writing-mode:horizontal-tb;margin:0 0 8px;overflow-wrap:anywhere}
.product-card img{display:block;aspect-ratio:1;object-fit:contain;background:#fff}
.product-card .price{margin:8px 0 0}
.catalog-heading h2{writing-mode:horizontal-tb}
.product-banner img{object-fit:contain;background:#f3efe3}
@media(max-width:720px){.language{top:19px;right:130px}}
html[lang="th"] .hero-title,html[lang="vi"] .hero-title{writing-mode:horizontal-tb}

.visit-actions{justify-content:center}
html[lang="th"] .hero-title>span,html[lang="vi"] .hero-title>span{position:static;display:block;text-align:center;margin-top:8px}

.story-gallery>div{background-image:none}
.story-gallery img{display:block;width:100%;height:100%;object-fit:cover}
.story-gallery .gallery-detail img,.story-gallery .gallery-tall img{object-fit:contain;background:#f3efe3}
.home-visit{margin-bottom:clamp(32px,7vw,100px)}
.visit-photo{margin:0}
.visit-photo img{display:block;width:100%;height:clamp(230px,46vw,580px);object-fit:cover}
.category-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding-block:28px}
.link,.category-links .link{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:8px 18px;border:1px solid #9f7b62;border-radius:0;margin-top:0;text-decoration:none;color:var(--ink);background:transparent}
.link:hover,.link:focus-visible{background:var(--ink);color:var(--paper)}
.product-catalog{scroll-margin-top:76px}
.product-grid{align-items:stretch}
.product-card{background:transparent;padding:0 0 16px}
.product-card h3{padding-inline:8px}
.product-trigger{display:block;width:100%;padding:0;border:0;background:#fff;overflow:hidden;cursor:pointer}
.product-trigger img{width:100%;transform:scale(var(--product-size,1));transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.product-trigger:hover img,.product-trigger:focus-visible img{transform:scale(calc(var(--product-size,1) * 1.07))}
.product-detail{width:min(580px,calc(100% - 32px));max-height:calc(100% - 32px);border:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}
.product-detail[open]{animation:product-enter .35s ease-out}
.product-detail::backdrop{background:#21160fbb}
.product-detail img{width:100%;max-height:60vh;display:block;object-fit:contain;background:transparent;mix-blend-mode:multiply}
.product-detail>div{padding:12px 22px;text-align:center}
.product-detail h2{margin:0}
.detail-close{position:absolute;right:10px;top:10px;width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:#3e2b23;color:#fff;cursor:pointer;z-index:1}
.detail-close::before{content:"";width:17px;height:1px;background:currentColor}
.detail-close:focus-visible{outline:2px solid currentColor;outline-offset:-5px}
@keyframes product-enter{from{opacity:0;transform:translateY(16px)}}
@media(prefers-reduced-motion:reduce){.product-detail[open]{animation:none}.product-trigger img{transition:none}}

.product-detail{height:auto;margin:auto}
.category-links .link{font-size:.95rem}

.story-gallery>div{clip-path:polygon(0 0,100% 0,100% 82%,85% 100%,0 100%)}
.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,2.3vw,32px);padding-bottom:0}
.product-card h3{font-size:clamp(.75rem,2.6vw,1.2rem);padding-inline:2px}
.product-card .price{font-size:clamp(.72rem,2.5vw,1rem)}
.product-trigger{aspect-ratio:1;clip-path:polygon(0 0,100% 0,100% 85%,85% 100%,0 100%)}
.product-trigger:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}
.product-trigger img{height:100%;width:100%;object-fit:contain}
.product-visible,.product-reveal:focus-visible{opacity:1;transform:none}
.product-detail[open]{display:block}
body:has(.product-detail[open]){overflow:hidden}
.quick,.language{min-height:40px;display:flex;align-items:center;padding:7px 13px;border:1px solid #9f7b62;background:#fffaf0;color:var(--ink);border-radius:0}
@media(max-width:720px){.products-page .wrap{width:calc(100% - 28px)}.product-card{padding-bottom:8px}}
@media(prefers-reduced-motion:reduce){.product-reveal{opacity:1;transform:none;transition:none}}
.product-card:nth-child(even){padding:0 0 16px}
@media(max-width:720px){.product-card:nth-child(even){padding-bottom:8px}body:has(.products-page) .signature{display:none}}
@media(max-width:720px){
  .product-detail{width:100%;height:100%;max-width:none;max-height:none;margin:0;overscroll-behavior:contain}
  .product-detail img{height:min(100vw,55vh);max-height:none}
  .product-detail>div{padding:28px 24px;text-align:left}
}

.quick,.language,.category-links .link{border:0}
.quick:hover,.language:hover{background:#eee3d5;color:var(--ink)}
#category-links .link:hover{background:transparent;color:var(--ink)}
.category-links{padding-block:14px}
.product-card,.product-card:nth-child(even){grid-template-rows:auto 1fr}
.product-caption{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px;padding-top:7px;text-align:left}
.product-caption h3,.product-caption .price{margin:0;padding:0}
.product-caption .price{white-space:nowrap;font-variant-numeric:tabular-nums}
.product-reveal{transition-duration:.85s}
.gallery-wide,.gallery-tall{background:none}
.story-gallery .gallery-tall img{object-fit:cover}
.reels-section{padding-block:48px}
.reels-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px}
.reels-grid iframe{display:block;width:100%;max-width:350px;aspect-ratio:9/16;border:0;background:#fff}
.reels-grid .link{margin-top:12px}
.home-visit .visit-actions{justify-content:flex-start}
.store-hours{display:grid;grid-template-columns:auto 1fr;gap:8px 16px}
.store-hours dd{margin:0}
@media(max-width:480px){.product-caption h3,.product-caption .price{font-size:.68rem}.product-caption{gap:2px}}

@supports (animation-timeline:view()){
  @media(prefers-reduced-motion:no-preference){
  }
}
.quick,.language,.quick:hover,.language:hover{background:transparent}
.product-caption{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;justify-items:center;gap:4px;text-align:center}
.product-caption h3{overflow-wrap:anywhere;text-align:center}
.product-caption .price{white-space:nowrap}
.product-reveal{transition-delay:var(--stagger,0ms)}
@supports (animation-timeline:view()){
 @media(prefers-reduced-motion:no-preference){
 }
}
.commitment-heading{padding-block:22px 30px}
.commitment-heading h1{background:none;color:var(--ink);letter-spacing:0;padding:0;margin:.25em 0 0}
.commitment-hero{margin:0}
.commitment-hero img{width:100%;height:clamp(250px,48vw,640px);object-fit:cover}
.commitment-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:center;gap:clamp(25px,8vw,125px);padding-block:clamp(45px,10vw,130px)}
.commitment-section:nth-of-type(2){grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.commitment-section:nth-of-type(2) .commitment-feature{order:-1}
.commitment-copy h2{font-size:clamp(1.5rem,3.5vw,2.7rem);margin:0 0 18px}
.commitment-copy{min-width:0}
.commitment-copy :is(h2,p){overflow-wrap:anywhere;word-break:keep-all}
.commitment-copy p{max-width:54ch;margin:0}
.commitment-copy p+p{margin-top:1em}
.commitment-feature,.commitment-gallery figure{margin:0}
.commitment-feature img,.commitment-gallery img{width:100%;display:block;object-fit:cover;clip-path:polygon(0 0,100% 0,100% 83%,87% 100%,0 100%)}
.commitment-feature img{aspect-ratio:4/3}
.commitment-city{padding-bottom:clamp(50px,10vw,130px)}
.commitment-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,4vw,48px);margin-top:30px}
.commitment-gallery img{aspect-ratio:4/3}
.commitment-gallery figcaption{margin-top:8px;font-size:.92rem}
@media(max-width:720px){
 .commitment-section,.commitment-section:nth-of-type(2){grid-template-columns:1fr}
 .commitment-section:nth-of-type(2) .commitment-feature{order:0}
}

.commitment-hero img{display:block;clip-path:polygon(0 0,100% 0,100% 80%,88% 100%,0 100%)}
.commitment-pair{position:relative;padding-right:15%;padding-bottom:8%}
.commitment-pair .commitment-inset{width:32%;position:absolute;right:0;bottom:0;background:var(--paper)}
.commitment-inset img{aspect-ratio:1;object-fit:contain}
.commitment-gallery figure:nth-child(even){margin-top:clamp(16px,5vw,64px)}
@media(min-width:900px) and (min-height:500px){
}
@supports (animation-timeline:view()){
 @media(prefers-reduced-motion:no-preference){
  .commitment-feature img,.commitment-gallery img{animation:story-reveal linear both;animation-timeline:view();animation-range:entry 10% cover 43%}
 }
}
@keyframes story-reveal{from{opacity:0;transform:translateY(25px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}

.page-transition{position:fixed;inset:0;z-index:30;pointer-events:none;overflow:hidden;display:grid;place-items:center}
.page-transition img{display:block;width:145vmax;max-width:none;grid-area:1/1;justify-self:center;align-self:center;animation:bingsu-spin 1.8s linear both,bingsu-shrink 1.8s cubic-bezier(.52,.04,.36,1) both}
@keyframes bingsu-spin{0%{rotate:0deg} 55%{rotate:150deg} 80%{rotate:450deg} 100%{rotate:1170deg}}
@keyframes bingsu-shrink{
 0%{scale:1;opacity:.2}
 35%{scale:.94;opacity:.2}
 100%{scale:0;opacity:0;visibility:hidden}
}
@media(prefers-reduced-motion:reduce){.page-transition{display:none}}
.reels-grid{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;padding-bottom:12px}
.reels-grid iframe{flex:0 0 min(75vw,300px);min-width:0;width:100%;aspect-ratio:9/16;scroll-snap-align:start;margin:0}
#menu figure img{object-fit:contain;object-position:center}
#visit.home-visit{grid-template-columns:1fr}
#story .story-gallery{min-height:clamp(300px,63svh,660px)}
#story .gallery-wide{width:43%;height:61%;top:9%;bottom:auto}

#story .gallery-tall{width:31%;height:83%;right:0;top:3%}
.gallery-motion #story .story-gallery>div{opacity:var(--gallery-opacity,0);clip-path:polygon(0 0,100% 0,100% 82%,85% 100%,0 100%);transition:opacity .12s linear,transform .12s linear}
@media(max-width:720px){
 #story .gallery-wide{width:52%;height:56%}

 #story .gallery-tall{width:43%;height:72%;top:7%}
}
.page-transition{grid-template: minmax(0,1fr) / minmax(0,1fr)}

main .link:not(.category-links .link){
 border:2px solid transparent;border-radius:999px;padding:8px clamp(16px,3vw,30px);
 background:linear-gradient(#fff,#fff) padding-box,linear-gradient(100deg,#ac784a,#633b27) border-box;
 color:var(--ink);text-decoration:none;gap:10px
}
main .link:not(.category-links .link)::before{
 content:"";width:.48em;height:.48em;flex:none;border-radius:50%;background:#744631
}
main .link:not(.category-links .link):hover,main .link:not(.category-links .link):focus-visible{
 background:linear-gradient(#f6eadb,#f6eadb) padding-box,linear-gradient(100deg,#ac784a,#633b27) border-box;
 color:var(--ink)
}
#visit.home-visit{gap:0;padding-block:clamp(48px,8vw,100px)}
.home-visit .menu-copy{width:100%;margin:0}
.home-visit h2{margin:0 0 20px}
.store-details{display:grid;justify-items:start;gap:20px;text-align:left}
.store-details p,.store-details dl{margin:0}
.home-visit .visit-actions{margin:0 0 24px}
#story .gallery-wide{width:52%;height:68%;top:12%}
#story .gallery-tall{width:36%;height:85%;top:1%}
@media(max-width:620px){.store-details{grid-template-columns:1fr}.home-visit .store-hours{justify-content:start;grid-template-columns:max-content max-content}}

.center-reveal,.center-reveal .scroll-glyph{opacity:var(--center-opacity,1)}
.center-reveal:is(:focus-visible,:focus-within),.center-reveal:is(:focus-visible,:focus-within) .scroll-glyph{opacity:1}
@media(prefers-reduced-motion:reduce){.center-reveal,.center-reveal .scroll-glyph{opacity:1}}
.story-gallery>.center-reveal img{transform:translateY(var(--center-shift,0px))}

#story .story-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:clamp(10px,2vw,26px);min-height:0;padding-block:clamp(12px,4vw,45px)}
#story .story-gallery>div{position:relative;aspect-ratio:4/3}
#story .story-gallery>div:nth-child(1){grid-column:1/6}
#story .story-gallery>div:nth-child(2){grid-column:6/9;margin-top:clamp(20px,8vw,100px)}
#story .story-gallery>div:nth-child(3){grid-column:9/13;aspect-ratio:4/5}
#story .story-gallery>div:nth-child(4){grid-column:2/6;aspect-ratio:4/5}
#story .story-gallery>div:nth-child(5){grid-column:6/10;margin-top:clamp(18px,5vw,65px)}
#story .story-gallery>div:nth-child(6){grid-column:10/13;aspect-ratio:4/5}
@media(max-width:620px){
 #story .story-gallery{grid-template-columns:repeat(2,minmax(0,1fr));padding-inline:12px}
 #story .story-gallery>div:nth-child(n){grid-column:auto;aspect-ratio:4/3;margin-top:0}
 #story .story-gallery>div:nth-child(even){margin-top:16px}
}
#navigation .close span{display:block;width:18px;height:1px;background:currentColor}
.menu-button span{transition:transform .2s ease,opacity .2s ease}
@media(hover:hover){
 .menu-button:hover span:first-child{transform:translateY(5px);opacity:0}
 .menu-button:hover span:last-child{transform:translateY(-5px);opacity:0}
}
@media(prefers-reduced-motion:reduce){.menu-button span{transition:none}}

.header-actions{position:fixed;z-index:5;top:24px;right:24px;display:flex;align-items:center;gap:clamp(1px,1.2vw,14px);font:inherit;font-size:.82rem;line-height:1.4;mix-blend-mode:difference}
.header-actions :is(.quick,.language,.header-menu,.header-review,.header-directions){position:static;min-height:40px;display:flex;align-items:center;max-width:none;white-space:nowrap;border:0;border-radius:0;padding:4px clamp(5px,1vw,13px);background:transparent;color:#fff;font:inherit;letter-spacing:inherit;text-transform:none}
.header-actions :is(.quick,.language,.header-menu,.header-review,.header-directions):hover{background:transparent;text-decoration:underline}
header:has(.home-store-name) .header-actions > select.language{box-sizing:border-box;inline-size:6.6em;flex:none;padding-inline:3px}
.header-actions .language option{background:#fff;color:#241813}
.header-actions :focus-visible{outline:2px solid currentColor;outline-offset:-3px}
@media(max-width:720px){.header-actions{top:16px;right:12px}}
main .link:not(.category-links .link){border-color:#875839;background:transparent}
main .link:not(.category-links .link):is(:hover,:focus-visible){border-color:transparent;background:linear-gradient(#f6eadb,#f6eadb) padding-box,linear-gradient(100deg,#ac784a,#633b27) border-box}
#visit .visit-actions{justify-content:flex-start}
.motion-button span{display:block;width:0;height:0;border-block:7px solid transparent;border-left:11px solid currentColor;margin-left:2px}
.motion-button.is-playing span{box-sizing:border-box;width:13px;height:14px;border:0;border-inline:4px solid currentColor;margin-left:0}
.story-gallery>.center-reveal{overflow:hidden}
.story-gallery>.center-reveal img{transform:translateY(var(--center-shift,0px)) scale(1.16);will-change:transform}
@media(prefers-reduced-motion:reduce){.story-gallery>.center-reveal img{transform:none}}

.reels-grid .social-card{flex:0 0 clamp(145px,28vw,250px);aspect-ratio:1;overflow:hidden;scroll-snap-align:start;background:#f3e8d9}
.reels-grid .social-card img{width:100%;height:100%;display:block;object-fit:contain}
/* The first photographs enter while the end of the opening image is still visible. */
#story .story-gallery{position:relative;z-index:1;margin-top:calc(-1 * clamp(48px,11svh,110px))}
.story-gallery>.center-reveal img{
 clip-path:inset(0 0 calc((1 - var(--center-opacity,1)) * 100%) 0);
}
@supports (animation-timeline:view()){
 @media(prefers-reduced-motion:no-preference){
 }
}
.product-reveal:focus-within{clip-path:none}
@media(prefers-reduced-motion:reduce){
 #story .story-gallery{margin-top:0}
 .story-gallery>.center-reveal img{clip-path:none}
}

#story .story-gallery{pointer-events:none}
#home .motion-button{z-index:3}


#story > .story-copy,
#story > figure{margin:0;grid-row:auto}
#news .reels-section{display:grid;align-items:center}
:is(#story,#menu,#news,#visit.home-visit) h2{margin-block:0 clamp(16px,2.4vw,26px)}
:is(#story,#menu,#news) .link{margin-top:0}
#news .reels-grid{container-type:inline-size;gap:0;margin-bottom:-12px}

#news.news{background:transparent}
#story .story-gallery{margin-top:0;row-gap:clamp(4px,1vw,10px)}
#story .story-gallery>div:nth-child(3){width:78%;justify-self:end}
@media(min-width:721px){
  #story .story-gallery>div:nth-child(4){grid-column:1/5}
}

/* Scroll position drives both edges, so reversing scroll reverses the fade. */
.commitment-gallery figure{display:grid;align-items:center;aspect-ratio:4/3}
.commitment-gallery figure>*{grid-area:1/1}
.commitment-gallery figcaption{margin:0;text-align:center;font-size:clamp(2.6rem,8vw,6rem);line-height:1.08;overflow-wrap:anywhere}
.edge-fades .scroll-photo img{
  animation:none;
  opacity:var(--photo-opacity,1);
  translate:0 var(--photo-shift,0px);
}
.edge-fades .scroll-photo figcaption{opacity:calc(1 - var(--photo-opacity,1))}
.edge-fades .product-reveal:focus-within img{opacity:1;translate:none}

#story,#menu,#news .reels-section{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(6px,1.3vw,18px)}
#story.wrap{width:min(1120px,calc(100% - 128px))}
#story>figure,#menu>figure{margin:0}
#story>figure img,#menu>figure img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
@media(max-width:720px){
  #story.wrap{width:calc(100% - 44px)}
  #story,#menu,#news .reels-section{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.product-reveal img{opacity:1;transition:none}}
@supports not (animation-timeline:view()){
  .commitment-gallery figure{aspect-ratio:auto}
  .commitment-gallery figure>*{grid-area:auto}
}
@media(prefers-reduced-motion:reduce){
  .commitment-gallery figure{aspect-ratio:auto}
  .commitment-gallery figure>*{grid-area:auto}
}

.edge-fades .commitment-gallery .scroll-photo{aspect-ratio:4/3}
.edge-fades .commitment-gallery .scroll-photo>*{grid-area:1/1}

#news .reels-grid .social-card{
  flex:0 0 auto;
  height:75cqw;
  aspect-ratio:auto;
  background:transparent;
}
#news .reels-grid .social-card img{width:auto;height:100%;max-width:none}
.commitment-section:nth-of-type(2) .commitment-sequence{order:-1}
.edge-fades .commitment-sequence{min-width:0}
.edge-fades .commitment-sequence::after{content:"";display:block;height:clamp(500px,95vh,1000px)}
.edge-fades .sequence-frame{display:grid;grid-template: minmax(0,1fr) / minmax(0,1fr);width:100%;aspect-ratio:4/3;position:sticky;top:25vh}
.edge-fades .sequence-frame img{grid-area:1/1;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;opacity:calc(var(--photo-opacity,1) * var(--slide-opacity,0))}
@media(max-width:720px){.commitment-section:nth-of-type(2) .commitment-sequence{order:0}}
 
.edge-fades .interior-sequence{width:100%;aspect-ratio:4/3;overflow:hidden}
.edge-fades :is(.interior-sequence,.city-sequence) img{width:100%;height:100%;min-height:0;object-fit:cover;clip-path:none}

.city-slideshow{display:grid;isolation:isolate}
.city-slideshow img{
  grid-area:1/1;
  opacity:0;
  transition:none;
  animation:none;
  clip-path:none;
  object-fit:contain;
  background:var(--paper);
}
.city-slideshow img.is-previous{animation:city-fade-out 2s ease-in-out both;mix-blend-mode:plus-lighter}
.city-slideshow img.is-current{opacity:1;z-index:1}
.city-slideshow img.is-current.is-entering{animation:city-fade-in 2s ease-in-out both;mix-blend-mode:plus-lighter}
@keyframes city-fade-in{from{opacity:0}to{opacity:1}}
@keyframes city-fade-out{from{opacity:1}to{opacity:0}}
@media(prefers-reduced-motion:reduce){.city-slideshow img:is(.is-current.is-entering,.is-previous){animation:none;mix-blend-mode:normal}}

html[lang="ja"]{--sans:"Noto Sans JP","Yu Gothic","Meiryo",sans-serif}
html[lang="zh-Hans"]{--sans:"Gmarket Sans","Noto Sans SC","Microsoft YaHei",sans-serif}
html[lang="zh-Hant"]{--sans:"Gmarket Sans","Noto Sans TC","Microsoft JhengHei",sans-serif}
html[lang="th"]{--sans:"Gmarket Sans","Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif}
html[lang="vi"]{--sans:"Segoe UI","Noto Sans",sans-serif}
.product-detail .detail-price{margin:.4em 0;color:var(--price-orange);font-weight:700}
.product-detail .detail-taste,.product-detail .detail-ingredients{margin:.45em 0}
.product-detail .detail-ingredients{font-size:.92rem}

#menu > figure,#story > .home-story-collage,#news .reels-grid{width:100%;max-width:586px;aspect-ratio:586/440;justify-self:center}
#menu > figure:has(> img[src="assets/bingsu-menu-grid-1448.png"]){background:var(--paper);isolation:isolate}
#menu > figure > img[src="assets/bingsu-menu-grid-1448.png"]{mix-blend-mode:multiply;height:100%}

#menu,#story,#news .reels-section{padding-block:clamp(40px,7vw,100px)}
#news .reels-grid{min-width:0;margin-bottom:0;padding-bottom:0}
#news .reels-grid .social-card{height:100%;min-height:0}

.home-store-name{position:absolute;z-index:5;left:82px;top:24px;height:48px;display:flex;align-items:center;color:var(--ink);font:600 1.176rem/1.15 "Gmarket Sans",var(--sans)}
.home-store-name-en,html:not(:lang(ko)) .home-store-name-ko{display:none}
html:not(:lang(ko)) .home-store-name-en,.home-store-name small{display:block}
.home-store-name small{margin-top:3px;font-size:.69em;font-weight:400}
@media(max-width:720px){.home-store-name{left:74px;top:16px;height:48px;font-size:1.008rem}}

:is(#menu,#story,#news,#visit.home-visit) .eyebrow{font-family:var(--sans);font-weight:600;color:#793a28}


.commitment-hero.city-slideshow,.interior-sequence{border-radius:18px;overflow:hidden}
.city-slideshow img,.interior-sequence img,.commitment-gallery img{border-radius:18px;clip-path:none}
#catalog .product-trigger{background:var(--paper);isolation:isolate}
#catalog .product-trigger img{mix-blend-mode:multiply}
#catalog .product-trigger img:is([src$="/7438.webp"],[src$="/7438-hd.png"]){--product-size:.999}
#catalog .product-trigger img[src$="/7449.webp"]{--product-size:1.008}
#catalog .product-trigger img[src$="/injeolmi-original.webp"]{--product-size:.995}
:is(.interior-sequence,.city-sequence) img{scale:1.1}
.commitment-feature.sequence-frame:not(.interior-sequence) img{scale:1.22}

@media(min-width:721px){.edge-fades .commitment-section > .commitment-copy{display:flow-root;align-self:start;position:sticky;top:calc(25vh + max(0px,var(--sequence-copy-offset,0px)));margin-block:max(0px,var(--sequence-copy-offset,0px))}}

.city-sequence img{border-radius:18px;clip-path:none}
.edge-fades .city-sequence img{object-fit:cover}
.commitment-feature.sequence-frame.city-sequence img{scale:1.1}

.edge-fades .city-sequence{overflow:hidden;border-radius:18px}

#visit .store-parking{margin-top:8px}

.header-actions:has(.header-menu){gap:clamp(0px,.65vw,10px)}



::highlight(scroll-fade-0){color:color-mix(in srgb,currentColor 0%,transparent)}
::highlight(scroll-fade-1){color:color-mix(in srgb,currentColor 10%,transparent)}
::highlight(scroll-fade-2){color:color-mix(in srgb,currentColor 20%,transparent)}
::highlight(scroll-fade-3){color:color-mix(in srgb,currentColor 30%,transparent)}
::highlight(scroll-fade-4){color:color-mix(in srgb,currentColor 40%,transparent)}
::highlight(scroll-fade-5){color:color-mix(in srgb,currentColor 50%,transparent)}
::highlight(scroll-fade-6){color:color-mix(in srgb,currentColor 60%,transparent)}
::highlight(scroll-fade-7){color:color-mix(in srgb,currentColor 70%,transparent)}
::highlight(scroll-fade-8){color:color-mix(in srgb,currentColor 80%,transparent)}
::highlight(scroll-fade-9){color:color-mix(in srgb,currentColor 90%,transparent)}


@media(min-width:721px){
 .edge-fades .commitment-sequence{padding-block:max(0px,calc(-1 * var(--sequence-copy-offset,0px)))}
 .edge-fades .sequence-frame{top:calc(25vh + max(0px,calc(-1 * var(--sequence-copy-offset,0px))))}
}

.products-page .product-catalog:first-child{padding-top:clamp(16px,3vw,36px)}

html[lang="ja"] :is(#menu-title,#story-title){word-break:normal;overflow-wrap:anywhere}

.product-detail{background:var(--detail-image-paper);isolation:isolate}
.product-detail > div{background:var(--paper)}

.home-visit .store-schedule{width:100%;max-width:600px;min-width:0;color:#604a3e}
.store-schedule h3{margin:0 0 1.15em;color:#702a35;font-size:clamp(1.15rem,2vw,1.85rem);font-weight:700}
.home-visit .store-schedule .store-hours{display:block;margin:0}
.store-schedule .store-hours > div{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.2em 1em;padding:.65em 0;border-bottom:1px solid #dfc9af;font-size:clamp(.95rem,1.8vw,1.65rem)}
.store-schedule .store-hours dd{margin-inline-start:auto;color:#702a35;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.store-schedule-note{margin-top:2em;color:#816b5e}
.store-schedule-note p{margin:0 0 .35em}

#home .hero-headline{position:relative;z-index:2;justify-self:start;margin:0 5.5%;padding:0;background:none;color:#481c20;font:700 clamp(48px,5.2vw,79px)/1.2 var(--sans);letter-spacing:-.075em;text-shadow:0 0 16px #fff8e8,0 0 32px #fff8e8}
#home .hero-headline em{color:#ee742b;font-style:normal}
@media(max-width:760px){
 #home .hero-headline{font-size:clamp(37px,10vw,46px);line-height:1.24}
 #home .hero-headline br:first-of-type{display:none}
}

html[lang="vi"] #home .hero-headline{letter-spacing:-.035em}

body{font-weight:600}
:is(h1,h2,h3){font-weight:700}
.eyebrow,.home-store-name small{font-weight:600}

#menu:has(.home-art-link),#story:has(.home-art-link){display:block;width:100%;max-width:none;padding:0;background:var(--paper)}
.home-art-link{display:grid;isolation:isolate;place-items:center;position:relative;text-align:center;background:var(--paper)}
.home-art-link>*{grid-area:1/1}
.home-art-link img{display:block;width:100%;height:auto;mix-blend-mode:multiply;filter:brightness(1.10)}
.home-art-link h2{position:relative;color:#342923;font-size:clamp(1.5rem,4vw,4rem);padding:.75em 1.4em;isolation:isolate}
:is(#menu,#story) .home-art-link h2{margin:0;overflow-wrap:anywhere}
.home-art-link h2::before{content:"";position:absolute;inset:-15% -20%;z-index:-1;background:radial-gradient(ellipse,var(--paper) 30%,transparent 72%)}
.home-art-link h2::after{content:"";display:block;width:1em;height:1px;margin:.16em auto 0;background:currentColor;transition:width .2s ease}
.home-art-link:is(:hover,:focus-visible) h2::after{width:2em}
#news .reels-section{width:100%;grid-template-columns:minmax(0,1fr)}
#news .reels-grid{max-width:none;height:min(45.05vw,505px);aspect-ratio:auto}

#menu .home-art-link h2{font-size:clamp(3rem,12vw,12rem);padding:.15em .3em}
#menu .home-art-link h2::after{content:none}

/* Align the visible dish, including cards that still use the older thumbnails. */
#catalog .product-trigger img{
  transform:translateY(var(--dish-offset,0%)) scale(var(--product-size,1));
}
#catalog .product-trigger:is(:hover,:focus-visible) img{
  transform:translateY(var(--dish-offset,0%)) scale(calc(var(--product-size,1) * 1.07));
}
#catalog .product-trigger img:is(
  [src$="/7471.webp"], [src$="/7473.webp"], [src$="/7445.webp"],
  [src$="/7475.webp"], [src$="/7476.webp"]
){
  --dish-offset:-14%;
}
#catalog .product-trigger img[src$="/7474-custard-photo.png"]{
  --dish-offset:5.5%;
}

.instagram-news{padding-block:3rem}
.instagram-news section{margin-block:2rem}
.instagram-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:1rem}
.instagram-post{display:block;aspect-ratio:4/5;background:#efe5d6;text-decoration:none}
.instagram-post img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.instagram-post img[hidden]{display:none}

header:has(.home-store-name) .header-actions{
  mix-blend-mode:normal;
  font:600 .85rem/1.4 var(--sans);
  gap:clamp(6px,1vw,14px);
}
header:has(.home-store-name) .header-actions > :is(a,select){
  min-height:44px;
  padding-inline:6px;
  color:var(--ink);
}
@media(max-width:560px){
  header:has(.home-store-name) .header-actions{
    top:70px;
    inset-inline:8px;
    justify-content:space-between;
    gap:2px;
    flex-wrap:nowrap;
    overflow-x:auto;
    font-size:clamp(.68rem,3.2vw,.85rem);
  }
  header:has(.home-store-name) .header-actions > :is(a,select){
    flex:none;
    padding-inline:2px;
  }
}

html:is(:lang(ja),:lang(zh-Hant),:lang(th),:lang(vi)) header:has(.home-store-name) .header-actions{
  font-weight:700;
}
